|
楼主 |
发表于 2011-6-12 09:29:46
|
显示全部楼层
本帖最后由 银河漫步 于 2011-6-12 09:31 编辑 2 T+ `' B: A ?; U0 Z
* l' P O2 K) z6 G1 Z就好像CE的那种指针
3 O0 |8 w; i% J! H- r1 L$ E一个数据的地址是变动的6 [ P M/ P: r" U. o, f) j
但是相对一个A地址的偏移量是不变的
( }" d6 Y2 \1 c X# B" i. A那么就需要定位这个A地址" c( Q' N- w* b0 ]& v) e
而指向A地址的总是一段代码
( `# P; B5 P }JMP类的4 W. s9 ^2 q# w
那么这个代码的地址B就是一个指针
: T x. H& L& g* q- v4 d" y* ]就和模拟器的基地址是一个道理3 r7 H9 E' }$ b* ^ o! x
( Q( b _; R; k: V
只是PC游戏通常不是一级指针( }, e6 r3 t& W6 O1 L9 a
是多级的
+ {7 g6 N- D6 P! B. f. C也就是代码地址B也不是固定的
- D) L' D* Y1 [3 a8 I" W! p5 E7 J! }: i那么就需要寻址到指向这个代码地址B的的上一级JMP类代码地址C
$ Y, H; Y& H3 J2 s1 i如此循环
V/ C& T& H5 L; }' R" b2 q一直找到一个固定的JMP类代码为止3 y/ e9 `# X, @( `) c
/ J) E1 P# e$ t$ B3 f: H7 L+ }# z
目前我遇到过的最BT的游戏也就4级指针
1 V1 }' s) k# [再多级的暂时还没看到过 |
|