|
5精币
以下为源代码,能成功HOOK到我需要的值,但关闭后就会造成目标程序崩溃,应该是HOOK造成堆栈不平衡引起的,但看相关的教程里就没有说过要处理堆栈的情况,请问下这种情况问题出在哪?我看了很多贴子,都有类似的问题,都没有提出解决办法。有高手帮看看吗?
.版本 2
进程ID = 进程_进程名取ID (“xyd00.exe”)
.如果真 (进程ID > 0)
进程句柄 = 进程_打开进程 (进程ID)
.如果真结束
.如果真 (进程句柄 > 0)
' ========怪物数据的内存地址代码==================================
' 00573FF1 |. 8955 E8 |mov dword ptr ss:[ebp-0x18],edx
' 00573FF4 |. 837D E8 00 |cmp dword ptr ss:[ebp-0x18],0x0
怪物 = 超级HOOK.开始HOOK (进程句柄, 进制_十六到十 (“00573FF1”), &处理接口, 7, 到字节集 (原指令), , 2)
.版本 2
.支持库 spec
.子程序 __启动窗口_将被销毁
超级HOOK.卸载HOOK ()
.子程序 处理接口
.局部变量 怪物信息, 整数型
' ========数据的内存地址代 码==================================
.计次循环首 (2, )
怪物信息 = 超级HOOK.读HOOK值 (怪物).EDX
延迟 (2000)
调试输出 (怪物信息)
.计次循环尾 ()
|
|