-
-
[旧帖]
[转帖]完整内存资料的取得办法
0.00雪花
-
发表于:
2010-5-7 23:30
1243
-
[旧帖] [转帖]完整内存资料的取得办法
0.00雪花
取得MXD客户端完整的内存资料,对以后的研究很有帮助,我自己是把内存保存下来了。不过太大,MAPLESTORY占用的主要内存,保存下来是122M,而它所使用的完整内存,保存不下来,总是到80%就结束,不知道是不是我的机子的问题。
如果你们也想把MXD现在在内存的情况保存下来,以备在对下一个版本的研究时做些参考,你可以用这样的办法:
找个WINHEX,我手头上有好几个版本,我现在用的是10.75,最新的12版反而不太好用。
先运行MXD,登录进去后走到一个安全的地方,然后切换出来,开WINHEX,在开始的时候会有一个打开文件的选项,在这个对话框上有个OPEN RAM的按钮,点了之后会象CE或GM8一样让你选择进程,选择MAPLESTORY,点了之后下面会有一些选择,其中PRIMARY MEMORY是MXD使用的主要内存,ENTRY MEMRY是完整的内存(反正选哪一个都一样,结果能保存下来的都是122M)。下面还有一些MXD使用的模块,这个一般不用管,我想把PRIMARY保存下来已经足够我们以后研究了。
打开了之后,会象游戏修改工具一样看到MXD内存的数据,左边是十六进制,右边是ASCII,WINHEX上面的工具栏上有一个向右箭头的图标,那个是“GOTO OFFSET”,点了之后,输入一些以前我们熟悉的地址如6147ED,会看到熟悉的40 9F 40等数据,说明我们保存的内存确实没错。好了不用多看,保存下来再说,点“FILE”菜单上的SAVE AS,保存,定一下名字,这样就OK了。
另外要注意的是,内存中MXD占用内存的定位是从00400000开始的,如果重新打开你刚才保存的内存映像,以后它是从00000000开始的,所以如果你在打开来的映像上去到6147ED,看到的是另外的数据。就是因为偏移量不同,所以在看保存的映像的时候,偏移量要减去400000,即原来的6147ED,现在是2147ED。
好了,想在下一个版本的分析研究上抢先人家一步的话,现在就动手吧。
[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)