Closer isn't working yet but I can now easily inject the DLL.

Inject console application (needs to be run as administrator)
PHP Code:
#include <stdio.h>
#include <windows.h>
#include <tlhelp32.h>

void EnableDebugPriv() {
    
HANDLE hToken;
    
LUID luid;
    
TOKEN_PRIVILEGES tkp;

    
OpenProcessTokenGetCurrentProcess(), TOKEN_ADJUST_PRIVILEGES TOKEN_QUERY, &hToken );

    
LookupPrivilegeValueNULLSE_DEBUG_NAME, &luid );

    
tkp.PrivilegeCount 1;
    
tkp.Privileges[0].Luid luid;
    
tkp.Privileges[0].Attributes SE_PRIVILEGE_ENABLED;

    
AdjustTokenPrivilegeshTokenfalse, &tkpsizeoftkp ), NULLNULL );

    
CloseHandlehToken );
}

int mainintchar *[] ) {
    
PROCESSENTRY32 entry;
    
entry.dwSize sizeofPROCESSENTRY32 );

    
HANDLE snapshot CreateToolhelp32SnapshotTH32CS_SNAPPROCESSNULL );

    if ( 
Process32Firstsnapshot, &entry ) == TRUE ) {
        while ( 
Process32Nextsnapshot, &entry ) == TRUE ) {
            if ( 
stricmpentry.szExeFile"CoD2MP_s.exe" ) == ) {
                
EnableDebugPriv();

                
char dirPath[MAX_PATH];
                
char fullPath[MAX_PATH];

                
GetCurrentDirectoryMAX_PATHdirPath );

                
snprintf fullPathMAX_PATH"%s\\libcod_win.dll"dirPath );

                
HANDLE hProcess OpenProcessPROCESS_CREATE_THREAD PROCESS_VM_OPERATION PROCESS_VM_WRITEFALSEentry.th32ProcessID );
                
LPVOID libAddr = (LPVOID)GetProcAddressGetModuleHandle"kernel32.dll" ), "LoadLibraryA" );
                
LPVOID llParam = (LPVOID)VirtualAllocExhProcessNULLstrlenfullPath ), MEM_RESERVE MEM_COMMITPAGE_READWRITE );

                
WriteProcessMemoryhProcessllParamfullPathstrlenfullPath ), NULL );
                
CreateRemoteThreadhProcessNULLNULL, (LPTHREAD_START_ROUTINE)libAddrllParamNULLNULL );
                
CloseHandlehProcess );
            }
        }
    }

    
CloseHandlesnapshot );

    return 
0;

(Credits goes to http://stackoverflow.com/a/873659)

DLL
PHP Code:
#include "main.h"

int cdecl_injected_closer()
{
    
MessageBoxANULL"CLOSER""libcod"MB_OK );
    return 
1337;
}

void init()
{
    
int *addressToCloserPointer = (int *)0x0070955B;
    *
addressToCloserPointer = (int) cdecl_injected_closer;
}

extern "C" DLL_EXPORT BOOL APIENTRY DllMain(HINSTANCE hinstDLLDWORD fdwReasonLPVOID lpvReserved)
{
    switch (
fdwReason)
    {
        case 
DLL_PROCESS_ATTACH:
            
MessageBoxANULL"[PLUGIN LOADED]""libcod"MB_OK );
            
init();
            break;

        case 
DLL_PROCESS_DETACH:
            
// detach from process
            
break;

        case 
DLL_THREAD_ATTACH:
            
// attach to thread
            
break;

        case 
DLL_THREAD_DETACH:
            
// detach from thread
            
break;
    }
    return 
TRUE// succesful

header
PHP Code:
#ifndef __MAIN_H__
#define __MAIN_H__

#include <windows.h>

/*  To use this exported function of dll, include this header
 *  in your project.
 */

#ifdef BUILD_DLL
    #define DLL_EXPORT __declspec(dllexport)
#else
    #define DLL_EXPORT __declspec(dllimport)
#endif


#ifdef __cplusplus
extern "C"
{
#endif

#ifdef __cplusplus
}
#endif

#endif // __MAIN_H__