看流星社区

 找回密码
 注册账号
查看: 2894|回复: 7

这个CALL调用总是错误

[复制链接]

该用户从未签到

发表于 2012-3-25 00:10:05 | 显示全部楼层 |阅读模式
原型 .版本 2

' MOV EAX, [0A591E0]
' MOV ECX,[EAX+20]
' PUSH "4447CE15"
' ADD ECX,0EC
' CALL 00632150
代码
.版本 2

asm_置代码 ()
asm_mov_eax_常数 (十六到十 (“0A591E0”))
asm_mov_ecx_ptr_eax_add (十六到十 (“20”))
asm_push (十六到十 (“4447CE15”))
asm_add_ecx_常数 (十六到十 (“0EC”))
asm_mov_ebx_常数 (十六到十 (“00632150”))
asm_call_ebx ()
asm_ret ()
asm_调用函数 (进程ID, asm_取代码 ())
不知道错在那里原型CALL
MOV EAX, [0A591E0]
MOV ECX,[EAX+20]
PUSH 00E23830
ADD ECX,0EC
CALL 00632150

该用户从未签到

发表于 2012-3-25 08:56:19 | 显示全部楼层
asm_mov_eax_常数 (十六到十 (“0A591E0”))
修改成
asm_mov_eax_ptr (十六到十 (“0A591E0”))

该用户从未签到

 楼主| 发表于 2012-3-25 17:05:35 | 显示全部楼层
MOV EAX, [0A591E0]
MOV ECX,[EAX+20]
PUSH EDI
ADD ECX,0EC
CALL 00632150
上面是原型CALL
EDI取值 "0E23540"

用注入器注入可正常使用
MOV EAX, [0A591E0]
MOV ECX,[EAX+20]
PUSH  0E23540
ADD ECX,0EC
CALL 00632150

在易语言中写代码如下
.版本 2

asm_置代码 ()
asm_mov_eax_ptr (十六到十 (“0A591E0”))
asm_mov_ecx_ptr_eax_add (十六到十 (“20”))
asm_push (ID)
asm_add_ecx_常数 (十六到十 (“0EC”))
asm_mov_ebx_常数 (十六到十 (“00632150”))
asm_call_ebx ()
asm_ret ()
asm_调用函数 (进程ID, asm_取代码 ())

调用CALL   选中人物call (十六到十 (“0E23540”))

不知道错在那里.一调用游戏直接报错,但可以正常执行call

该用户从未签到

发表于 2012-3-25 18:19:28 | 显示全部楼层
调用后如果有效果,说明没有堆栈平衡~~~

该用户从未签到

发表于 2012-3-25 22:44:16 | 显示全部楼层
小小思维,高人哪

该用户从未签到

发表于 2012-3-25 22:46:04 | 显示全部楼层
小小思维,高人哪

该用户从未签到

 楼主| 发表于 2012-3-26 18:13:37 | 显示全部楼层
那如何能让堆栈平衡呢

该用户从未签到

 楼主| 发表于 2012-3-26 18:29:09 | 显示全部楼层
我试了我这段程序里只PUSH一个参数是4字节我把程序改成下面
.版本 2

asm_置代码 ()
asm_mov_eax_ptr (十六到十 (“0A591E0”))
asm_mov_ecx_ptr_eax_add (十六到十 (“20”))
asm_push (ID)
asm_add_ecx_常数 (十六到十 (“0EC”))
asm_mov_ebx_常数 (十六到十 (“00632150”))
asm_add_esp_常数 (十六到十 (“4”))
asm_call_ebx ()
asm_ret ()
asm_调用函数 (进程ID, asm_取代码 ())
编制完程序后一运行就错误.
在注入过程中的时候就是不加堆栈平衡也不报错
点击按钮快速添加回复内容: 支持 高兴 激动 给力 加油 苦寻 生气 回帖 路过 感恩
您需要登录后才可以回帖 登录 | 注册账号

本版积分规则

小黑屋|手机版|Archiver|看流星社区 |网站地图

GMT+8, 2024-4-29 04:34

Powered by Kanliuxing X3.4

© 2010-2019 kanliuxing.com

快速回复 返回顶部 返回列表