Code:
#include <windows.h>
#include <stdio.h>
#include <d3dx9.h>
#pragma comment( lib, "d3dx9.lib" )
#define WeaponMgr 0xA69FB0
#define NoRecoil1 0x1938
#define NoRecoil2 0x193C
#define NoRecoil3 0x1948
#define NoRecoil4 0x1944
#define NoRecoil5 0x1B18
#define NoRecoil6 0x1B1C
#define NoRecoil7 0x2270
#define NoRecoil8 0x2108
#define NoRecoil9 0x2528
#define NoRecoil10 0x259C
#define NoRecoil11 0x2594
#define NoRecoil12 0x1B14
#define NoRecoil13 0x51C
#define NoRecoil14 0x684
#define NoRecoil15 0x1FA0
bool NoRecoil = true;
void Main(void)
{
while(1)
{
DWORD CShell = (DWORD)GetModuleHandleA("CShell.dll");
DWORD pWeaponMgr = *(DWORD*)(CShell + WeaponMgr);
if (NoRecoil)
{
if (pWeaponMgr)
{
for(int i=0; i<577; i++)
{
if((*(DWORD*)((*(DWORD*)(CShell+WeaponMgr))+(4*i))) != NULL)
{
DWORD pNoRecoil = *(DWORD*)(pWeaponMgr + (4*i));
for(int y=0; y<9; y++)
{
if(pNoRecoil)
{
*(float*)(pNoRecoil + (NoRecoil1 + (4*y))) = 0.0f;
*(float*)(pNoRecoil + (NoRecoil2 + (4*y))) = 0.0f;
*(float*)(pNoRecoil + (NoRecoil3 + (4*y))) = 0.0f;
*(float*)(pNoRecoil + (NoRecoil4 + (4*y))) = 0.0f;
*(float*)(pNoRecoil + (NoRecoil5 + (4*y))) = 0.0f;
*(float*)(pNoRecoil + (NoRecoil6 + (4*y))) = 0.0f;
*(float*)(pNoRecoil + (NoRecoil7 + (4*y))) = 0.0f;
*(float*)(pNoRecoil + (NoRecoil8 + (4*y))) = 0.0f;
*(float*)(pNoRecoil + (NoRecoil9 + (4*y))) = 0.0f;
*(float*)(pNoRecoil + (NoRecoil10 + (4*y))) = 0.0f;
*(float*)(pNoRecoil + (NoRecoil11 + (4*y))) = 0.0f;
*(float*)(pNoRecoil + (NoRecoil12 + (4*y))) = 0.0f;
*(float*)(pNoRecoil + (NoRecoil13 + (4*y))) = 0.0f;
*(float*)(pNoRecoil + (NoRecoil14 + (4*y))) = 0.0f;
*(float*)(pNoRecoil + (NoRecoil15 + (4*y))) = 0.0f;
}
}
}
}
}
}
}
}
extern "C" int WINAPI DllMain(__in HINSTANCE hinstDLL, __in DWORD fdwReason, __in LPVOID lpvReserved)
{
switch(fdwReason) {
case DLL_PROCESS_ATTACH:
Beep(562, 100);
DisableThreadLibraryCalls(hinstDLL);
return true;
while(GetModuleHandleA("CShell.dll") == 0)
Sleep(50);
Main(NULL);
return 1;
CreateThread(0,0,(LPTHREAD_START_ROUTINE)Main,0,0,0);
break;
}
}