mycsy 发表于 2009-8-9 21:45

Armadillo V4.0-V4.42.CopyMem-II.DeCode

/////////////////////////////////////////////////////////////
// FileName    :Armadillo V4.0-V4.42.CopyMem-II.DeCode.osc
// Comment   :Armadillo V4.X CopyMem-II.DeCode
// Environment :WinXP SP2,OllyDbg V1.10,OllyScript V0.92
// Author      :fly
// WebSite   :http://www.unpack.cn
// Date      :2006-04-11 12:00
/////////////////////////////////////////////////////////////
#log
dbh

var T0
var T1
var Temp
var OEP
var XXX
var DeCodeStart
var DeCodeOver
var WaitForDebugEvent


MSGYN "Script Needs Win2K/XP.Plz Clear All BreakPointsAndSet Debugging Option Ignore All Excepions OptionsAndAdd C000001D..C000001E in custom exceptions !"
cmp $RESULT, 0
je TryAgain


//OutputDebugStringA棗棗棗棗棗棗棗棗棗棗棗棗棗棗棗棗

gpa "OutputDebugStringA", "KERNEL32.dll"
mov [$RESULT], #C20400#


//WaitForDebugEvent棗棗棗棗棗棗棗棗棗棗棗棗棗棗棗棗

gpa "WaitForDebugEvent", "KERNEL32.dll"
find $RESULT,#C9C20800#
add $RESULT,1
mov WaitForDebugEvent,$RESULT
eob WaitForDebugEvent
bp WaitForDebugEvent

esto
GoOn0:
esto

WaitForDebugEvent:
cmp eip,WaitForDebugEvent
jne GoOn0

bc WaitForDebugEvent
sti

mov Temp,esp
sub Temp,8
mov OEP,
log OEP


//XXX棗棗棗棗棗棗棗棗棗棗棗棗棗棗棗棗

/*
0057B89A   83BD CCF5FFFF 00   cmp dword ptr ss:,0
0057B8A1   0F8C A8020000      jl 0057BB4F
0057B8A7   8B8D CCF5FFFF      mov ecx,dword ptr ss:
0057B8AD   3B0D 24645B00      cmp ecx,dword ptr ds:
0057B8B3   0F8D 96020000      jge 0057BB4F
0057B8B9   8B95 40F6FFFF      mov edx,dword ptr ss:
0057B8BF   81E2 FF000000      and edx,0FF
0057B8C5   85D2               test edx,edx
0057B8C7   0F84 AD000000      je 0057B97A
0057B8CD   6A 00            push 0
*/


find eip,#83BD????????000F8C????????8B8D????????3B0D????????0F8D????????8B95????????81E2????????????0F84????????6A00#
cmp $RESULT,0
je NoFind
mov XXX,$RESULT
eob XXX
bp XXX

esto
GoOn1:
esto

XXX:
cmp eip,XXX
jne GoOn1
bc XXX

mov Temp,XXX
log ebp
mov T0,ebp
add Temp,2
mov T1,
add T0,T1
mov ,0

add Temp,7
mov T1,
add T1,Temp
add T1,4
mov DeCodeOver,T1

add Temp,C
mov T1,
add T1,4


//DeCode棗棗棗棗棗棗棗棗棗棗棗棗棗棗棗棗

/*
0057B96A   83C4 0C            add esp,0C
0057B96D   25 FF000000      and eax,0FF
0057B972   85C0               test eax,eax
0057B974   0F84 D5010000      je 0057BB4F
0057B97A   837D D8 00         cmp dword ptr ss:,0
0057B97E   75 27            jnz short 0057B9A7
*/

find XXX,#25FF00000085C0#
cmp $RESULT,0
je NoFind
mov DeCodeStart,$RESULT

eval "inc dword ptr ss:[{T0}]"
log $RESULT
asm DeCodeStart, $RESULT
mov Temp,DeCodeStart
add Temp,$RESULT
eval "mov dword ptr ss:[{T1}],1"
asm Temp, $RESULT
add Temp,$RESULT
eval "jmp {XXX}"
asm Temp, $RESULT


//DeCodeOver棗棗棗棗棗棗棗棗棗棗棗棗棗棗棗棗

eob DeCodeOver
bp DeCodeOver

esto
GoOn2:
esto

DeCodeOver:
cmp eip,DeCodeOver
jne GoOn2
bc DeCodeOver


//OEP棗棗棗棗棗棗棗棗棗棗棗棗棗棗棗棗

/*
0012ED7C01 00 00 00 0C 09 00 00 DC 08 00 00 01 00 00 80
0012ED8C00 00 00 00 00 00 00 00 78 D6 50 00 02 00 00 00
0012ED9C00 00 00 00 78 D6 50 00 78 D6 50 00 01 00 00 00
*/

add OEP,18
mov OEP,
eval " Child Process OEP={OEP}!   "
MSG $RESULT


//GameOver棗棗棗棗棗棗棗棗棗棗棗棗棗棗棗棗

log eip
cmt eip, "DeCode Over !By : fly "                                                                  
MSG "DeCode Over !Plz Dump Child Process and Continue Fix.Good Luck   "
ret                     

NoFind:
MSG "Error! Don't find. Mabye It's not Armadillo V4.0-V4.42.CopyMem-II    "
ret

TryAgain:
MSG " PlzTryAgain   !   "
ret
页: [1]
查看完整版本: Armadillo V4.0-V4.42.CopyMem-II.DeCode