本帖最后由 shane007 于 2023-8-23 15:32 编辑 * u4 f* m$ L) p+ w7 n' ]5 k
+ ?. y, d6 S4 [$ j _$ z本分析使用的是GOG版本。
; y8 r% ?& F* r9 ?4 {/ r9 K这个游戏用dxwnd.exe可以进行窗口化,然后我采用ollyice附加进程的方式进行调试。经过查看,是directx9的游戏。) A. d! r- g$ |
- .text:004042D8 push 20h ; SDKVersion
3 q" I E q; F) j+ ~ - .text:004042DA call Direct3DCreate9
复制代码
- Q0 W( ]- x; g/ b
+ F8 w9 C- R/ e在游戏画面查找一句对话bought it to look, 点击物品后触发,断点代码如下, }5 @7 O9 f& [; b1 F% b, O& ^* h
- 0069DEDA F3:A5 rep movs dword ptr es:[edi], dword p>
复制代码
0 w+ F+ _! D: f% S! g4 y在ida pro中查看,发现是memcpy函数,查看调用处,有好多20-30个。. B* Q) t4 J$ b, H) M8 } F
这个得做个资料,一个一个进行排查了。但是显示函数一定就在其中。) v8 h$ ^- u L$ f
- void *__cdecl memcpy(void *Dst, const void *Src, size_t Size)
复制代码
! ?. F. J! |/ K* `+ G* j6 @我尝试了其中第一个,在函数开头设置断点,能断下来,说不定,这就是
8 K% t3 L/ R# k显示函数其中之一,等以后继续分析。* h$ z r2 Z+ V* z8 @
- int __cdecl sub_408AD0(int a1, int *a2, int a3, int *a4)
复制代码 - R9 j( k3 n: |4 b
" }. D9 ]8 F R& P' C! d8 A+ Q& Y! r( S @
$ s1 b4 f& P9 b# m
2 t0 l2 H. W; Q; V, |
|