哇,终于有人回帖了,谢谢笨笨雄.
其实很简单,第一次试时,是在407138处中断,因为这时OD已经看到了提示信息
这时我用一个最简单的脚本
bc eip
gapi eip
msg $RESULT
ret
这时因为EIP=407138
对应的汇编语句是
00407138 . FF50 1C call dword ptr [eax+1C] ; kernel32.GlobalAlloc
最右边的kernel32.GlobalAlloc只有在运行到这句时才可以在OD中出现,
但是我用上面的脚本得不到"kernel32.GlobalAlloc"这个提示
我上传一个附件,里面有试验用的脚本和一个加petite23壳的VC6自动生成的一个程序
版主也可以用petite23自己加个程序试试.附件的脚本是
cmp $VERSION, "1.52" //比较是否大于 1.52版
ja version_above_152
ret
version_above_152:
var x
findcmd 407000, "call dword ptr[eax+1C]"
mov x,$RESULT
cmp x,0
je EXIT_LABLE
bp x
ai
bc eip
gapi eip
msg $RESULT
EXIT_LABLE:
ret
麻烦版主看看,谢谢!