随着整个程序设计领域对逆向工程研究的日益深入,各式各样的动态调试工具越来越多,其中有专门配套自己的编译器而发售的Debugger——如微软的Visual Studio Debugger、WinDbg;英特尔的Intel Debugger For Windows;FSF自由软件基金会的GNU Debugger等。也有作为专门的Debug工具而单独出品的——如Compuware公司的大名鼎鼎的Soft-ice;IDA4.5版以后自带的IDA Debugger;作为免费软件发布的OllyDbg等。这些形形色色的Debugger软件为我们提供了从源代码到汇编语言全方位的调试工具,给所有的程序员和逆向工程者带来了极大的方便。可所有的这些工具毕竟都是“通用型”调试工具,虽然在完成一些日常的、普通的调试工作完全可以满足要求,但是一旦我们需要自己定义一些“特殊过程”(写脱壳机、内存注册机,程序运行时监控等),这些通用型的调试软件就不能给我们多少帮助了,这时候我们就需要自己动手,丰衣足食,利用操作系统提供给我们的调试接口,打造自己的DebuRger调试程序。