www.pudn.com > API_VC_HOOK-.rar > Patcher.c


#if _MSC_VER > 1000 
#pragma once 
#endif 
 
#define WIN32_LEAN_AND_MEAN 
 
#include  
#include "ApiHooks.h" 
 
 
#define PatchRVA  0x103f 
#define PatchSize 1 
 
BYTE OrigValues[PatchSize] = {'X'}; 
BYTE WantedValues[PatchSize] = {'u'}; 
 
 
BOOL APIENTRY DllMain( HANDLE hModule,  
                       DWORD  ul_reason_for_call,  
                       LPVOID lpReserved 
					 ) 
{    
	if(ul_reason_for_call == DLL_PROCESS_ATTACH) { 
		HMODULE main_module; 
		ULONG OldAttr; 
		DWORD i, j; 
		if(main_module = GetModuleHandle(NULL)) { 
			LPBYTE dest = (LPBYTE)main_module+PatchRVA; 
			if(VirtualProtect(dest, PatchSize, PAGE_READWRITE, &OldAttr)) { 
				for(i=0, j=0; i