#include "windows.h"
#define WeaponMgr 0xA69120
#define BasicPlyrIf 0xA02398
#define wallclass 0xA6910C
#define NoRecoil1 0x26A4
#define NoRecoil2 0x20FC
#define NoRecoil3 0x258C
#define NoRecoil4 0x1B00
#define NoRecoil5 0x211C
#define NoRecoil6 0x1F94
#define NoRecoil7 0x2470
#define NoReload 0x269C
#define NoWeight 0x2454
void Hacks(){
DWORD CShell = (DWORD)GetModuleHandleA("CShell.dll");
DWORD pBasicPlayerInfo = *(DWORD*)(CShell + BasicPlyrIf);
DWORD pWeaponMgr = *(DWORD*)(CShell + WeaponMgr);
DWORD pWallClass = *(DWORD*)(CShell + wallclass);
if(pWallClass) {
for(int i = 0;i<64;i++) {
*(float*)(pWallClass+(i*0x04F4)+0x4E8) = true;
*(float*)(pWallClass+(i*0x04F4)+0x4EC) = true;
*(float*)(pWallClass+(i*0x04F4)+0x4F0) = true;
}
}
if(pBasicPlayerInfo){ // Crouch Speed
*(float*)(pBasicPlayerInfo+0x0C) = 1.5f;
}
if (pWeaponMgr){
for(int i=0; i<577; i++){
if((*(DWORD*)((*(DWORD*)(CShell+WeaponMgr))+(4*i)) ) != NULL){
*(float*)((*(DWORD*)((*(DWORD*)(CShell+WeaponMgr)) +(4*i))) + NoReload) = 100.0f;
}
}
}
if (pWeaponMgr){
for(int i=0; i<577; i++){
if((*(DWORD*)((*(DWORD*)(CShell+WeaponMgr))+(4*i)) ) != NULL){
*(float*)((*(DWORD*)((*(DWORD*)(CShell+WeaponMgr)) +(4*i))) + NoWeight) = 0.0f;
}
}
}
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;
}
}
}
}
}
}
void HackEngine(){
DWORD CShell = NULL;
do{CShell = (DWORD)GetModuleHandleA("CShell.dll"); Sleep(100);} while (CShell == NULL);
while(1){Hacks(); Sleep(100); }
}
extern "C" __declspec(dllexport) BOOL APIENTRY DllMain(HINSTANCE hinstDLL, DWORD fdwReason, LPVOID lpvReserved){
if(fdwReason == DLL_PROCESS_ATTACH){
DisableThreadLibraryCalls(hinstDLL);
CreateThread(NULL, NULL, (LPTHREAD_START_ROUTINE)HackEngine, NULL, NULL, NULL);
return true;
}
return false;
}