////////////////////////////////////////////////////////////////////////////////////////////
文件名称:解决OD载入DLL后无法停在入口处的问题
目标程序:被NPACK加壳的DLL组件文件
操作环境:Windows XP-SP2
使用工具:Ollydbg 1.10版
编写作者:Coderui
编写时间:2008年03月24日
联系方式:coderui@163.com
作者博客:http://hi.baidu.com/coderui
////////////////////////////////////////////////////////////////////////////////////////////

---------------------------------------------------------------------------------------------
前言:
  很久以前的东西了,今天大概整理下发上来,算是为了自己今后查找资料方便吧,如果有需要这种技术的朋友就也多看看吧,呵呵。如果哪位朋友有更简洁的方法不防发上来,大家一起分享下,谢谢!
---------------------------------------------------------------------------------------------
OD设置:(OD设置为不忽略任何异常。[F2]:下软断点、[F4]:执行到当前代码处、[F7]:单步步入、[F8]单步步过、[F9]运行。)
按照顺序查看注解:(01)、(02)、(03)……(07)。

方法:
  (01):选种“调试选项”中的“中断于新模块(DLL)”,其它设置默认。
  (02):打开DLL组件文件,然后经过N次[F9]以后,就会加载到您调试的DLL组件文件。
  (03):在加载后的DLL组件上点击右键,选择“跟随入口(F)”,然后在当前入口处下硬件断点。
  (04):使用[Ctrl+F2]重新打开需要调试的DLL组件文件,然后经过N次[F9]以后,就会停在这个DLL的入口处了。
  (05):开始脱壳,在快到DLL组件所加壳的结尾处时,EIP会跳出这个DLL组件的领空,继续去加载其它系统DLL组件。
  (06):我们需要在DLL组件壳结尾处的大跳上设置断点,然后经过N次[F9]以后,其它系统DLL组件加载完毕就会停在这个大跳上。
  (07):[F8]跳,就可以看到我们所调试的DLL组件的真实代码了,这样就自己继续跟踪动态调试DLL组件的功能了。
---------------------------------------------------------------------------------------------
////////////////////////////////////////////////////////////////////////////////////////////