《第五课》F7进CALL跑飞,破解文件不能执行(已解决)
本帖最后由 蓝色贝雷帽 于 2017-10-28 15:10 编辑图一: 关键CALL的截图(后补)
图二:F7进CALL会跑飞
问题:参见图二,按照恒大老师的视频教程,F7进第一张图示的CALL后跑飞,EIP指针就停在地址0051E409(而不是正确的地址0050BA88)。很怪异。
不论从第一行还是第二行开始输入下列数值,逆向后的程序都不能执行或出错,!!!请大神指导,谢谢谢谢!!
mov eax,1
retn
【原课件程序运行正常】
@Shark恒 老大,帮忙看下这是什么情况,谢谢!! 本帖最后由 蓝色贝雷帽 于 2017-10-28 15:12 编辑
如下图,再三实验,很奇怪,关键CALL处单机ENTER键跟随进CALL,则跟恒大的结果相同,到达正确地址0050BA88;而F7进CALL则跑飞到了一楼的错误地址0051E409。
现在已知恒大用的是 吾爱破解OD,我用的是 吾爱汇编论坛OD。@Shark恒
我换了吾爱破解OD也证实同样的结果。 此处只能用ENTER跟随才能有正确结果。是不是恒大讲错了???@Shark恒
那么,请教各位大神们:
是不是某些地方不能使用F7进CALL???? (会跑飞)
本帖最后由 蓝色贝雷帽 于 2017-10-28 15:17 编辑
结论:ENTER进CALL(鼠标右键有提示)
但,为什么不能用F7,暂时无解。
先下断再进CALL,试一下,我也遇到过这种情况,应该是程序执行到别的地方了,我也是新手,不知道对不对。 8837126 发表于 2017-11-5 10:47
先下断再进CALL,试一下,我也遇到过这种情况,应该是程序执行到别的地方了,我也是新手,不知道对不对。
你说的没错!
已经断下了 经过我的分析,楼主你是没把程序运行起来就想按F7进CALL(此时程序的EIP指针其实就是OEP的下一行地址),这样的步骤是错的,你需要先将程序运行到关键CALL,在F7进CALL或者在关键CALL的断首设F2断电后在运行(但对于部分程序,此法可能也会进错关键CALL1) haier8917 发表于 2017-11-20 11:04
经过我的分析,楼主你是没把程序运行起来就想按F7进CALL(此时程序的EIP指针其实就是OEP的下一行地址),这 ...
大神你说到关键点上了,感谢指点,以前确实没理解透彻。需要程序跑起来才能F7 学习了,难怪修改后一直内存错误呢!~
页:
[1]
2