This is example code. This is not my code. The intention of this code is to provoke thought by bot programmers and people who purchase bots.
// {2D64B439-6CAF-4f6b-B688-E5D0F4FAA7D7}
static const GUID ELS_GUID_SCRIPT_DETECTION =
{ 0x2D64B439, 0x6CAF, 0x4F6B, { 0xB6, 0x88, 0xE5, 0xD0, 0xF4, 0xFA, 0xA7, 0xD7 } };
If your bot programmer doesn't understand this concept, the bot is at risk.
The ban hammer hasn't crushed bad bots because blizz cannot afford to take the financial hit.
As you read Nemu5's story, he gets a few bans here and there but blizz hasn't shut him down. They just slow him down a little due to my aforementioned reason. I think Nemu5 has stated which bot program he uses and it doesn't pass this test.
I overlooked this concept when writing my first bot, however, I feel this is the most important thing that should be addressed when coding a bot.
Look beyond the obvious script detection but for something else (this isn't about hiding the process of your script).