能力值:
(RANK:350 )
|
-
-
2 楼
这样不行的。
最初由 DonQuixote 发布 http://bbs.pediy.com/showthread.php?s=&threadid=30446
为什么非要在OEP呢?因为在OEP时全局变量没有被动过,这是非常重要的 举个例子,以上在binkw32.dll中断所DUMP的文件,即使把OEP,IAT修复还是会出错,这个错误出在EnterCriticalSection,因为VC的启动代码会初始化一个临界区全局变量,就是mlock.c中的PCRITICAL_SECTION _locktable[_TOTAL_LOCKS],而上面所DUMP文件中这个量并非为0,因此启动代码会认为已经初始化,从而跳过初始化过程,所以EnterCriticalSection时传递的就是无效临界区 程序一旦经历了后面的代码,全局变量也就不同了,人一旦经历了有些事,也就不再是原来那个人了,现在的尔玛再回山里放羊又焉能心境淡远如初?所以这么DUMP是不行的,就算可以把引起异常的变量都一一修复掉,那些不会引起异常的逻辑错误又怎么办?有些内在的东西一旦变了,不是那么容易就能变回去的
|
能力值:
( LV2,RANK:10 )
|
-
-
3 楼
谢谢看雪哥哥
|
|
|