Example 7 Step 1b

From SkullSecurity
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.
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;
}