2.1.4 基本操作(2)
只要4011F5句不跳转即可注册成功在调试过程中当执行到4011F5句时有几种思路方法可以验证判断
在OllyDbg寄存器面板用鼠标单击标志寄存器ZF(即“Z”)单击次ZF值取反如果原来是1执行后为0如图2.18所示
=fit-image _disibledevent=>498)this.style.width=498;" border=0>
图2.18 改变标志寄存器值
在4011F5行双击鼠标或单击空格键输入指令:“NOP”这个指令机器码是90如图2.19所示此处用“9090”取代“7437”
=fit-image _disibledevent=>498)this.style.width=498;" border=0>
图2.19 键入汇编代码
修改好后代码如下:
004011E5 E8 56010000 call 00401340
004011EA 8B3D BC404000 mov edi, [<&USER32.GetDlgItem>]
004011F0 83C4 0C add esp, 0C
004011F3 85C0 test eax, eax
004011F5 90 nop ; 这里
004011F6 90 nop ; 这里
现在随意输入姓名和序列号这个CrackMe都会提示注册成功目前修改是内存中498)this.style.width=498;" border=0>
(点击查看大图)图2.24 数据窗口查看序列号
这样个就分析完了读者感兴趣可以写出这段代码逆算法写出注册机
最新评论