yjxaep 发表于 2011-11-23 22:15:48

小小思维教授 战斗中的一个call 如何调试

0047239D    8B6C24 48       MOV EBP,DWORD PTR SS:            ; 堆栈 SS:=000381EF esp=12f874
004723A1    50            PUSH EAX                                 ; EAX=0012F88C
004723A2    56            PUSH ESI                                 ; ESI=00000000
004723A3    53            PUSH EBX                                 ; EBX=00000002 2为普通攻击? 3为第一个技能
004723A4    55            PUSH EBP                                 ; EBP=0003CACC目标ID
004723A5    57            PUSH EDI                                 ; EDI=000248D8出击者ID   前面找到了一个 mov edi,esp=12f874
004723A6    68 60178900   PUSH asktao.00891760                     ; ASCII "id = %d, victim_id = %d, action = %d, para = %d, skill_talk = %s"
004723AB    68 02320000   PUSH 3202
004723B0    E8 CB6D1500   CALL asktao.005C9180
004723B5    83C4 1C         ADD ESP,1C

我找到的这个是问道里面的战斗出击call,我想请问一下这个call 如何调试.

果粒 发表于 2011-11-24 01:24:23

下断找到个参数的数据,代入即可测试

小小思维 发表于 2011-11-24 09:06:18

你这个无法直接测试,需要遍历出怪物ID,因为每次遇到的怪物都是不同的ID的~~~
PUSH EAX                                 ; EAX=0012F88C
这个是堆栈数据,需要自己创建内存地址,写入0012F88C里面的数据~~~

yjxaep 发表于 2011-11-24 09:10:35

谢谢版主!我去试试

yjxaep 发表于 2011-11-24 15:45:48

回复 3# 小小思维


    请问一下老师,要怎么样才能遍历出怪物的ID

小小思维 发表于 2011-11-25 10:53:24

要找到怪物数组才行~~

hyde05 发表于 2012-4-18 20:01:31

dd [[+24c+4]+index*4]+8这是怪物ID

qqyxtg 发表于 2012-5-15 22:28:59

回复 1# yjxaep


    这个用CE找的还是用OD呀?

cooby 发表于 2013-9-28 09:33:49

呵呵看看 就 OK 不下啦~。~辛苦了。
页: [1]
查看完整版本: 小小思维教授 战斗中的一个call 如何调试