I am reverse engineering this program. Before I start, I would like to make it clear I own the program legally and do not plan to "crack" it for the purpose of redistribution.
Said program makes use quite a lot of antidebug techniques "from the book". I decided to hook GetProcAddress and log all APIs, later identifying those that might be used for Antidebugging. After using the code from this tutorial http://www.codeproject.com/Articles/30140/API-Hooking-with-MS-Detours the program eventually crashes from stack corruption. I googled and found that other people also get stack corruption when hooking GetProcAddress https://easyhook.codeplex.com/discussions/55039
My question is if hooking GetProcAddress leads to stack corruption or the program's antidebug techniques detect meddling and cause the stack corruption themselves?