inject client ,but crossfire close
this is source code:
#include <windows.h>
#include <iostream>
using namespace std;
void __cdecl PushToConsole(char* szVal ) {
DWORD dwCShell = (DWORD)GetModuleHandleA("CShell.dll");
if( dwCShell != NULL )
{
DWORD *LTClient = ( DWORD* )( (dwCShell + 0x318AD8) );
void* CONoff = ( void* )*( DWORD* )( *LTClient + 0x5A0);
_asm
{
push szVal;
call CONoff;
add esp, 4;
}
}
}
DWORD WINAPI Main(LPVOID) {
while(GetModuleHandleA("CShell.dll") == NULL ) {
Sleep(150);
}
OutputDebugString("CShellBase ok!!!!!!!!!!!!!!!!\n");
bool boxes = true;
for(;
{
__asm pushad;
if(GetAsyncKeyState(VK_NUMPAD1)&1) {
boxes = !boxes;
}
if (boxes) {
PushToConsole("ModelDebug_DrawBoxes 1");
}
else {
PushToConsole("ModelDebug_DrawBoxes 0");
}
Sleep(100);
__asm popad;
}
return TRUE;
}
BOOL WINAPI DllMain ( HMODULE hDll, DWORD dwReason, LPVOID lpReserved )
{
DisableThreadLibraryCalls(hDll);
if ( dwReason == DLL_PROCESS_ATTACH )
{
CreateThread(NULL, NULL,Main, NULL, NULL, NULL);
}
return TRUE;
}
#include <windows.h>
#include <iostream>
using namespace std;
void __cdecl PushToConsole(char* szVal ) {
DWORD dwCShell = (DWORD)GetModuleHandleA("CShell.dll");
if( dwCShell != NULL )
{
DWORD *LTClient = ( DWORD* )( (dwCShell + 0x318AD8) );
void* CONoff = ( void* )*( DWORD* )( *LTClient + 0x5A0);
_asm
{
push szVal;
call CONoff;
add esp, 4;
}
}
}
DWORD WINAPI Main(LPVOID) {
while(GetModuleHandleA("CShell.dll") == NULL ) {
Sleep(150);
}
OutputDebugString("CShellBase ok!!!!!!!!!!!!!!!!\n");
bool boxes = true;
for(;

{
__asm pushad;
if(GetAsyncKeyState(VK_NUMPAD1)&1) {
boxes = !boxes;
}
if (boxes) {
PushToConsole("ModelDebug_DrawBoxes 1");
}
else {
PushToConsole("ModelDebug_DrawBoxes 0");
}
Sleep(100);
__asm popad;
}
return TRUE;
}
BOOL WINAPI DllMain ( HMODULE hDll, DWORD dwReason, LPVOID lpReserved )
{
DisableThreadLibraryCalls(hDll);
if ( dwReason == DLL_PROCESS_ATTACH )
{
CreateThread(NULL, NULL,Main, NULL, NULL, NULL);
}
return TRUE;
}