继续运行run trace。现在数值显示很迅速,20秒内OllyDbg报告错误:

检查这个错误,打开Run trace(在标题栏前端有'...'的)并把滚动条拉到底部:

现在我们看到跳转到00620061的命令是CALL EAX在004011AF,并且无效的地址由call前的指令计算得到。双击这行在Disassembler里可以看到寄存器和信息都变灰色以强调他们不是实际上的值而是跟踪后的值(编者:也就是说它记录下了当时寄存器的情况):

地址常量0040A128指向3个固定容量的函数地址f1, f2 and f3。当这条命令最后一次执行EAX的值是3,超过数组边界。前面两条指令应该是执行边界检查的,但EAX大于3时条件是无效的,跳转依然执行。正确的条件应该是“大于等于“,双击无效的指令修正它。

当你汇编了一条指令后,这条指令变红,意味着它是被更改的。再次选择它在右键菜单里选择强大的工具"Copy to executable file"。这样你的更改就会直接应用到程序里(编者:天!以前我居然不知道,汗!):

现在你唯一要做的就是存盘(用不同的名字,of course(为什么?我喜欢覆盖不行呀?!))然后检查。现在程序运行的乱爽,是不是很简单!
| 另类破解鸽子连接密码 | 03-21 | |
| 教菜鸟写注册机 | 12-27 | |
| QQ聊天记录察看器 5.2算法分析 | 12-04 | |
| 如何汉化一个软件 | 12-02 | |
| 扭曲变换加密 【目前防止软件被破 | 11-02 | |
| 破解利器Olldbg脚本教学(二)- | 10-31 | |
| 破解利器Olldbg脚本教学(一)- | 10-30 | |
| 破解|利器|ollydbg|教学|Run tra | 10-28 | |
| 破解WebEasyMail v3.6.2.1 企业版 | 10-24 | |
| 破解利器OllyDBG入门系列(五)- | 10-18 | |
| 破解利器OllyDBG入门系列(四)- | 10-17 | |
| 揭开高级游戏黑客的面纱,轻松打 | 10-17 | |