首页
社区
课程
招聘
[旧帖] [求助]请问如何才能用代码判断一个地址是带基址的固定地址? 0.00雪花
发表于: 2011-5-16 15:00 1419

[旧帖] [求助]请问如何才能用代码判断一个地址是带基址的固定地址? 0.00雪花

2011-5-16 15:00
1419
请教一下论坛中的各位达人

用Cheat Engine很容易搜索到进程中的具体数据,并且对于带基址的地址会给出相应的偏移,比如基地址0x100000 + 偏移0xee0a这样的内容。

假如我自己想要编写一个游戏修改器,比如使用ReadProcessMemory遍历进程中的地址,找到几个对应数据的地址,这几个地址从程序来看就是几个DWORD值而已,请问我该如何才能知道这几个地址是带基址的,还是动态会变的?从程序的角度是如何判断这个问题,实现这一步的呢?

比如一个程序基址为0x40000的典型进程,那么0x40200的肯定是带基址的,可这是我们人用经验判断的,程序该如何做到?如果找到的是一个类似0x9F8B00这样的,又该如何判断?

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 0
支持
分享
最新回复 (2)
雪    币: 143
活跃值: (61)
能力值: ( LV5,RANK:70 )
在线值:
发帖
回帖
粉丝
2
CE有很强大的算法,这个算法我还不知道…
理论上只得到内存地址是无法做出判断的。
2011-5-16 15:05
0
雪    币: 22
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
我自己乱想的哈,如果说错了各位达人请别见怪

是不是PE文件载入,创建进程后,系统会给它按照预先文件的设置在内存中划分一个范围,比如堆栈段代码段之类的,在这个范围内的都是带基址的?

如果是这样的话,该去哪里寻找这个划分呢?
2011-5-16 15:18
0
游客
登录 | 注册 方可回帖
返回
//