Cool Tool FoxThree, nice implementation. Editable signature plugin in the works?
Thanks too for providing the anti-antibpm cpp source ;-) I've been trying to compile the HookSTCDLL.cpp source with Borland C++ Builder and I'm having a weird linker problem. It compiles without error and I can load the dll from ASM, but it seems to give an incorrect ExportAddressTable RVA for the _ApiHookChain exported function. When I GetProcAddress on this function it doesn't give me a valid address for the function start, pointing to the .data section instead of a proc in the .text section.
This is the first time I've tried to compile APIHooks and I may have a linker setting wrong. There's an example that matches the external declaration you used, in Ah56\Examples\C-ApiWorks\C\CapConsole. You're supposed to use __EXPORT and deffile in order to export ApiHookChain, GetApiHookChain and other functions instead of __declspec(dllexport).
Basically I'm just compiling your code with the default dll linker options. There's probably something I'm missing because my C experience is limited, but I just can't figure out what it is. I haven't tried the command line BCC compiler, just hoping to get it working from C++ Builder. Just wondering if you had an idea on how to compile it properly. I'd like to add the code to an existing C++ module as breakpoint protection (and maybe as a skeleton for other API hooking ;-)
Cheers,
Kayaker