最近在看private exe protector这个壳
发现汉化版的主程序加的壳是个很陌生的壳(至少我不认识它)
用PEID扫描检测,显示为Goat's PE Mutilator 1.6
用OD跟了下,发现是个很简单的加密壳
花了几分钟时间写了个脱壳脚本
//goat's pe mutilator,fix iat
//code by skylly
#log
msg "忽略所有异常,确保断在system break point处再执行我"
esto
//到EP了
gpa "LoadLibraryA","kernel32.dll"
cmp $RESULT,0
je err
bp $RESULT
esto
bc $RESULT
var temp
mov temp,[esp]
bp temp
esto
bc temp
find eip,#744583BD#
cmp $RESULT,0
je err
var magic
mov magic,$RESULT
mov [magic],#EB# //fix magic jmp
find eip,#837E????0F85#
cmp $RESULT,0
je err
add $RESULT,A
bp $RESULT
esto
bc $RESULT
msg "iat 处理完毕,都是有效的了"
mov [magic],#74# //还原修改的地方,不管壳检不检测,好习惯一定要养成
gpa "IsDebuggerPresent","kernel32.dll"
cmp $RESULT,0
je err
bp $RESULT
esto
bc $RESULT
rtu
mov eax,0 //isdebuggerpresent检测
msg "在code段下f2断点,shift + f9,然后修正image size后dump"