首页
社区
课程
招聘
[求助](原型+图+源码)热血传奇购药CALL调用成功,但总会弹出一对话框?
发表于: 2010-11-12 09:52 6064

[求助](原型+图+源码)热血传奇购药CALL调用成功,但总会弹出一对话框?

2010-11-12 09:52
6064
下图是点击购买物品时的结果,药品购买成功,但总会跳出如上面的一个错误框,点确定后才会显示:金创药(小量被发现),怎样才能使下面这个错误框不出现呢?详细CALL我取图上来了,大家看看我写得有哪儿不对或者缺少什么?



而详细的购买药品CALL如下:


分析了一下,大家看购买药品CALL在那个JMP内,所以分析一下JMP内的CALL即可.于是,我写了以下的调用:
asm
pushad
push ebp;  //保存原始EBP
mov ebp,esp; //原始ESP保存进EBP里
lea eax,[ebp-$10]//创建一个临时变量
mov esi,$63E834
mov esi,[esi]
add esi,$0f8
mov esi,[esi]
add esi,4
mov esi,[esi]
add esi,0
mov esi,[esi]
mov edx,esi
mov ebx,$00404dd8
call ebx//调用这个CALL后,临时变量赋了值
mov eax,[ebp-$10]//然后将这个临时变量传给EAX

push eax
mov ecx,[esi+$18]
mov edx,$5f6620
mov edx,[edx]
mov edx,[edx]
mov eax,$006400BC
mov eax,[eax]
mov ebx,$0055c940
call ebx//购买物品CALL

mov esp,ebp
pop ebp
popad
end;

以上调用时,总是会弹出一个如第一张图所示的错误框,点确认,才显示购买药品成功.以上写得有哪儿不对或者考虑不周全,请路过的兄弟帮忙看看,提示一下即可.
此处能否不加入
push ebp;  //保存原始EBP
mov ebp,esp; //原始ESP保存进EBP里

mov esp,ebp
pop ebp
popad
但测试时,如果不加堆栈平横的语句,购买物品不成功,请大家分析一下,为什么呢?

主要想弄明白原理,期待大家的回复,不管对错,主要是思路

[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)

收藏
免费 0
支持
分享
最新回复 (4)
雪    币: 656
活跃值: (448)
能力值: ( LV12,RANK:360 )
在线值:
发帖
回帖
粉丝
2
看一下那个错误地址试试?
2010-11-12 10:16
0
雪    币: 190
活跃值: (22)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
如果有哪位兄弟按装热血传奇后,直接跳到那儿跟一下就万分感激了
2010-11-12 10:27
0
雪    币: 111
活跃值: (35)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
你这个是官方还是私服
2010-11-12 10:39
0
雪    币: 23
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
哇...写外挂的哦。。学习
2010-11-20 13:13
0
游客
登录 | 注册 方可回帖
返回
//