Example 7 Step 1b
From SkullSecurity
| Assembly Language Tutorial | |
|---|---|
Please choose a tutorial page:
| |
You may find this function useful. I won't be using function pointers since they're a little more confusing.
#include <stdio.h>
#include <windows.h>
typedef void (__fastcall *fcnShowMessage) (const char* message, int unk, int intDisplayUntil, int unk0);
static const fcnShowMessage ShowMessage = (fcnShowMessage) 0x00469380;
BOOL APIENTRY DllMain(HMODULE hModule, DWORD ul_reason_for_call, LPVOID lpReserved)
{
switch(ul_reason_for_call)
{
case DLL_PROCESS_ATTACH:
ShowMessage("\x03Loading test plugin v2", 0, GetTickCount() + 30000, 0);
break;
case DLL_PROCESS_DETACH:
ShowMessage("\x03Loading test plugin v2", 0, GetTickCount() + 30000, 0);
break;
}
return TRUE;
}