首页
社区
课程
招聘
[求助]动态地址如[EDI+578]如何找到固定的地址呢?
发表于: 2011-5-21 23:11 6756

[求助]动态地址如[EDI+578]如何找到固定的地址呢?

2011-5-21 23:11
6756
   别见笑,最近才开始学调试,想改改植物大战僵尸的阳光数,找到存放阳光的地址后,发现是个动态的地址,每次进入游戏都会变  (版本是植物大战僵尸年度版)

0044BA42  |> \8B7E 04       MOV EDI,DWORD PTR DS:[ESI+4]            
0044BA45  |.  0187 78550000 ADD DWORD PTR DS:[EDI+5578],EAX

EDI+5578的地址是 1D9FABB8(阳光的动态地址),这个地址每次进游戏都会变化,5578就是偏移嘛,往上一层一层跟踪,眼睛都看花了,还是找不到基址,断点也不行啊,每次地址都变了,断不下来(可能我没掌握断点的技巧),这里的EDI也是每次进游戏都变的 1D9F5640,此处还有 ASCII码
"0Zr",不知道是什么意思,这个ASCII码不会变

请高手教育,对付这种动态的地址,如何去找基址呢,感激不尽!

我的目的就是可以编程实现修改,用WriteProcessMemory改数据,其0044BA45下面有个跳转,修改了可以阳光变9000,我想要只是找到基址,以后找数据就方便了,请会的人指点下,谢谢啦

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

收藏
免费 0
支持
分享
最新回复 (14)
雪    币: 565
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
唉,我老是学不会。
2011-5-21 23:15
0
雪    币: 159
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
来个人啊!!
2011-5-22 00:39
0
雪    币: 180
活跃值: (12)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
OD回溯,或者CE找Edi的值,然后继续搜索。找视频教程吧,很多的。
2011-5-22 00:54
0
雪    币: 278
活跃值: (709)
能力值: ( LV15,RANK:520 )
在线值:
发帖
回帖
粉丝
5
先再这句之前读取EDI的地址,再加上5578,这样依次读取就能取到地址了
2011-5-22 08:00
0
雪    币: 2533
活跃值: (1508)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
CE 最方便了!
2011-5-22 08:46
0
雪    币: 159
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
EDI的地址也是动态的=。=,传给EDI的值还是动态的,不然就没这么麻烦了
2011-5-22 13:59
0
雪    币: 65
活跃值: (171)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
动态就动态,你写数据也可以用动态的,这个有什么关系
2011-5-22 14:24
0
雪    币: 159
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
9
请问该怎么写呢? 我不会
2011-5-22 14:45
0
雪    币: 278
活跃值: (709)
能力值: ( LV15,RANK:520 )
在线值:
发帖
回帖
粉丝
10
楼主,思路都告诉你了,EDI的值再动态不可能是随机值吧
2011-5-22 15:41
0
雪    币: 159
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
11
就是没找到才上来求助
2011-5-22 17:22
0
雪    币: 65
活跃值: (171)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
12
楼主的思路有问题,根本不用管EDI的值是多少,你只需将[EDI+5578]的初值给为9000不就行了吗?
找一下空的地址,patch一下就可以了,你想改多少就多少。
mov dword ptr ds:[edi+5578],2328
2011-5-22 20:23
0
雪    币: 278
活跃值: (709)
能力值: ( LV15,RANK:520 )
在线值:
发帖
回帖
粉丝
13
先要得到ESI+4的值,在EDI+5578,会了不
2011-5-22 23:03
0
雪    币: 159
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
14
跟了2次,还是没找到,如果有空的话,可以帮我找吗?谢谢啦
2011-5-23 04:59
0
雪    币: 278
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
15
Probable base pointer =0338B750

00487293 - cmp eax,[edi+28]
00487296 - jle 004872ac
00487298 - mov [edi+24],00000000
0048729f - mov byte ptr [edi+49],00
004872a3 - mov byte ptr [edi+48],01 //冷却时间完成~

访问冷却时候完成
_____________________________________
EAX=0338B6D8
EBX=00000000
ECX=0012F9C8
EDX=00000000
ESI=001299B4
EDI=0012FAD8
EBP=0B7330F8
ESP=00129850
EIP=0041A223

Probable base pointer =0B7330F8

0041a215 - call 00489630
0041a21a - fld dword ptr [edi+08]
0041a21d - mov eax,[ebp+00000144]  //这里访问冷却时间EBP的值由00F784C0传入
0041a223 - fisub [eax+08]
0041a226 - fstp dword ptr [edi+08]
上传的附件:
2011-6-8 05:36
0
游客
登录 | 注册 方可回帖
返回
//