SMC 代码重定位

 

改成这样:

push edx                                                                      //保护一下
call $+5                                                                       //机器码为E8 00 就是call它下面的一条指令
pop edx                                                                       //把刚push进去的eip弹出至edx. edx存放该指令地址.
sub edx, [(edx - 目标地址) = 偏移地址]                             //得到差值.

mov      dword ptr [edx], 909090    要修改的字符              //加差值即为重定位后值.
pop   edx                                                                       //恢复现场.

即可解决重定位的问题。

 

posted on 2014-08-09 18:45  coffeesoft  阅读(179)  评论(0)    收藏  举报

导航