本帖最后由 shane007 于 2023-8-23 15:32 编辑 6 @/ O/ X7 I# t
4 ]7 V: y* p2 @ ~: Z本分析使用的是GOG版本。* g, L9 g8 [# B. u
这个游戏用dxwnd.exe可以进行窗口化,然后我采用ollyice附加进程的方式进行调试。经过查看,是directx9的游戏。
, r. k0 p" T- h' ?6 m- .text:004042D8 push 20h ; SDKVersion
5 M: R7 B$ r( b. k. F; O - .text:004042DA call Direct3DCreate9
复制代码
) h2 W+ n' L% c! D' N. A5 E5 @! B4 a5 m8 }8 L9 Z. T
在游戏画面查找一句对话bought it to look, 点击物品后触发,断点代码如下8 s. R E3 E7 t2 L. V
- 0069DEDA F3:A5 rep movs dword ptr es:[edi], dword p>
复制代码
- M+ N& `, e; h1 {, B/ u在ida pro中查看,发现是memcpy函数,查看调用处,有好多20-30个。
7 j2 Y% n% e" K0 j, k这个得做个资料,一个一个进行排查了。但是显示函数一定就在其中。
% \, }% N5 _$ P1 B: q2 I- void *__cdecl memcpy(void *Dst, const void *Src, size_t Size)
复制代码
- z! W" B! d+ H( x, B% c我尝试了其中第一个,在函数开头设置断点,能断下来,说不定,这就是& O2 ?. |6 s" w/ ?1 b
显示函数其中之一,等以后继续分析。
) b3 c2 L% s4 o! B4 ~- int __cdecl sub_408AD0(int a1, int *a2, int a3, int *a4)
复制代码 1 @. F# c9 \, _
1 j# c7 D: O" k
+ }3 I6 B- ~1 n* m: g
( P `" f$ U$ a% _! U* D+ ?' L4 o U
|