Opensource Win32 Debugger:-
It supports a number of features, including:
* Full encapsulation of the Win32 debug API
* PE file format parsing (.exe, .dll files)
* Codeview, COFF and FPO debug symbol support (no PDB yet)
* Single-shot soft breakpoints and automatic restore of original code
* Single stepping
* Disassembly using a libdisasm Windows port, including jump prediction
* Handling of exceptions, breakpoints and other important stuff either by specification of call-back functions or by overloading virtual prototypes provided in the class in case you prefer to inherit the functionality
Requirement, somewhat a good knowledge about programming and win32 api functions call.