Code:
#include <windows.h>
#include <stdio.h>
#define ADR_Playerpointer 0x00A903E
#define ADR_Serverpointer 0x00A8F39
#define ADR_WeaponGlobal1 0x00AAE498
#define ADR_WeaponGlobal2 0x00B024E0
DWORD *ingame = (DWORD*)ADR_Playerpointer;
DWORD *outgame = (DWORD*)ADR_Serverpointer;
class CWeaponInformations
{
public:
char padd1[132]; <-------------------- how to get that?
DWORD dwDamage; // 0x84
DWORD dwDefence; //0x88
DWORD dwRange; // 0x8C
DWORD dwAmmoNum; //0x90
DWORD dwMagazineNum; //0x94
DWORD dwEffectRange; //0x98
DWORD dwParabola; // 0x9C
char padd2[12];
DWORD dwShotSpeed; //0xAC
DWORD dwWeight; //0xB0
};
CWeaponInformations* getWeaponInfo(int index, DWORD ptr)
{
DWORD dwPtrToWeapons = *(DWORD *)(ptr + 0x40);
if(!dwPtrToWeapons)
return 0;
DWORD dwPtrToDesiredWeapon = *(DWORD *)(dwPtrToWeapons + index);
if(!dwPtrToDesiredWeapon)
return 0;
return (CWeaponInformations*)(dwPtrToDesiredWeapon);
}
// Initialize Class
CWeaponInformations* weaponInformations = getWeaponInfo(66, ADR_WeaponGlobal1);
CWeaponInformations* weaponInformations2 = getWeaponInfo(66, ADR_WeaponGlobal2);
// How To Use
void AMMO()
{
weaponInformations->dwAmmoNum = 9;
weaponInformations->dwRange = 9000000;
weaponInformations->dwEffectRange = 90000;
}
void HackThread()
{
for(;; )
{
if(*ingame)
{
AMMO();
}
if(*outgame)
{
}
Sleep(200);
}
}
BOOL WINAPI DllMain(HINSTANCE hModule, DWORD dwReason, LPVOID lpvReserved)
{
if(dwReason == DLL_PROCESS_ATTACH)
{
MessageBoxA(NULL, "Testing Lang xD", "Made by: ME", MB_OK);
CreateThread(0, 0, (LPTHREAD_START_ROUTINE)HackThread , 0, 0, 0);
}
return TRUE;
}