All pastes #907980 Raw Edit

ouis

public text v1 · immutable
·published 2008-02-18 01:17 UTC
rendered paste body
typedef char *( *PBHook_t)( signed int a, char *Str, int a3, int a4 );
PBHook_t orig_PBHook;
char *PBHook( signed int a, char *Str, int a3, int a4 )
{
	_asm pushad

	unsigned int Kick;
	_asm mov Kick, ebx;

	if( Kick == 81 ||
		Kick == 46 ||
		Kick == 7 ||
		Kick == 6 ||
		Kick == 5 )
		Kick = (unsigned int)"";

	Log( "\nKick_Number = %i\n", Kick );

	_asm mov ebx, Kick;
	_asm popad

	return orig_PBHook( a, Str, a3, a4 );
}


HMODULE (__stdcall *orig_LoadLibraryA)( LPCSTR lpFileName );
HMODULE __stdcall  LoadLibraryA_Hook( LPCSTR lpFileName )
{
	HMODULE hModule = orig_LoadLibraryA( lpFileName );
	DWORD Base = (DWORD)GetModuleHandleA( lpFileName );

	if( strstr( lpFileName, "pbcl.dll" ) )
	{
		orig_PBHook = (PBHook_t)DetourFunction((PBYTE)Base + 0x1F1E4, (PBYTE)PBHook );
	}

	return hModule;
}