Untitled
unknown
c_cpp
4 years ago
8.9 kB
8
Indexable
#include <iostream>
#include <Windows.h>
#include <TlHelp32.h>
#include "Offsets.hpp"
#include <stdint.h>
#include <stdio.h>
#include <string>
#include <thread>
using namespace std;
using namespace hazedumper::netvars;
using namespace hazedumper::signatures;
DWORD GetPid() {
HWND hwP = FindWindowA(NULL, "Counter-Strike: Global Offensive");
if (!hwP) return 0;
DWORD ret = 0;
GetWindowThreadProcessId(hwP, &ret);
return ret;
}
struct Color
{
uint8_t r{ }, g{ }, b{ };
};
enum AllWeaponsIDs
{
WEAPON_AWP = 9,
WEAPON_G3SG1 = 11,
WEAPON_SCAR20 = 38,
WEAPON_SSG = 40,
WEAPON_AK47 = 7,
WEAPON_AUG = 8,
WEAPON_FAMAS = 10,
WEAPON_GALILAR = 13,
WEAPON_M4A1 = 60,
WEAPON_M4A4 = 16,
WEAPON_SG553 = 39,
WEAPON_USP = 61,
WEAPON_REVOLVER = 64,
WEAPON_CZ75 = 63,
WEAPON_DEAGLE = 1,
WEAPON_BERETTAS = 2,
WEAPON_FIVESEVEN = 3,
WEAPON_GLOCK = 4,
WEAPON_P2000 = 32,
WEAPON_P250 = 36,
WEAPON_TEC9 = 30,
WEAPON_MAC10 = 17,
WEAPON_MP7 = 33,
WEAPON_MP9 = 34,
WEAPON_MP5 = 23,
WEAPON_PPBIZON = 26,
WEAPON_P90 = 19,
WEAPON_UMP45 = 24,
WEAPON_MAG7 = 27,
WEAPON_NOVA = 35,
WEAPON_SAWEDOFF = 29,
WEAPON_XM1014 = 25,
WEAPON_M249 = 14,
WEAPON_NEGEV = 28,
WEAPON_KNIFE_T = 59,
WEAPON_KNIFE_CT = 42,
WEAPON_KNIFE_KARAM = 507,
WEAPON_KNIFE_BAYONET = 500,
WEAPON_KNIFE_CLASSIC = 503,
WEAPON_KNIFE_FLIP = 505,
WEAPON_KNIFE_GUT = 506,
WEAPON_KNIFE_M9 = 508,
WEAPON_KNIFE_HUNTSMAN = 509,
WEAPON_KNIFE_FALCHION = 512,
WEAPON_KNIFE_BOWIE = 514,
WEAPON_KNIFE_BUTTERFLY = 515,
WEAPON_KNIFE_DAGGERS = 516,
WEAPON_KNIFE_PARACORD = 517,
WEAPON_KNIFE_SURVIVAL = 518,
WEAPON_KNIFE_URSUS = 519,
WEAPON_KNIFE_NAVAJA = 520,
WEAPON_KNIFE_NOMAD = 521,
WEAPON_KNIFE_STILETTO = 522,
WEAPON_KNIFE_TALON = 523,
WEAPON_KNIFE_SKELETON = 525,
};
constexpr const auto enemyColor = Color{ 0, 255, 255 };
constexpr const auto teamcolor = Color{ 255, 255, 255 };
#pragma warning(disable:4996)
uintptr_t BaseEngine;
uintptr_t BaseDLL;
DWORD procId;
HWND hwnd;
HANDLE hProcess;
string r;
string g;
string b;
// TOGGLES | develop soon...
bool triggerbotp = false;
bool radarp = false;
bool noFlashp = false;
bool Thp = false;
bool bhp = false;
bool whp = false;
// TOGGLES | develop soon...
uintptr_t GetBaseDLLAddress(const char* modName) {
HANDLE hSnap = CreateToolhelp32Snapshot(TH32CS_SNAPMODULE | TH32CS_SNAPMODULE32, procId);
if (hSnap != INVALID_HANDLE_VALUE) {
MODULEENTRY32 modentityRadarry;
modentityRadarry.dwSize = sizeof(modentityRadarry);
if (Module32First(hSnap, &modentityRadarry)) {
do {
if (!strcmp(modentityRadarry.szModule, modName)) {
CloseHandle(hSnap);
return (uintptr_t)modentityRadarry.modBaseAddr;
}
} while (Module32Next(hSnap, &modentityRadarry));
}
}
}
template<typename T> T RPM(SIZE_T address) { // Read Proces Memory
T buffer;
ReadProcessMemory(hProcess, (LPCVOID)address, &buffer, sizeof(T), NULL);
return buffer;
}
template<typename T> void WPM(SIZE_T address, T buffer) { // Write Process Memory
WriteProcessMemory(hProcess, (LPVOID)address, &buffer, sizeof(buffer), NULL);
}
uintptr_t getLocalPlayer() {
return RPM<uintptr_t>(BaseDLL + dwLocalPlayer);
}
struct glowStructEnemy {
float red = 1.f;
float green = 0.f;
float blue = 0.f;
float alpha = 1.f;
uint8_t padding[8];
float unknown = 1.f;
uint8_t padding2[4];
BYTE renderOccluded = true;
BYTE renderUnoccluded = true;
BYTE fullBloom = false;
}glowEnm;
struct glowStructLocal {
float red = 0.f;
float green = 0.f;
float blue = 0.f;
float alpha = 1.f;
uint8_t padding[8];
float unknown = 1.f;
uint8_t padding2[4];
BYTE renderOccluded = false;
BYTE renderUnoccluded = false;
BYTE fullBloom = false;
}glowLocal;
uintptr_t getPlayer(int index) {
//Each player in the game has an index.
return RPM< uintptr_t>(BaseDLL + dwEntityList + index * 0x10); // We use index times 0x10 because the distance between each player 0x10.
}
int getTeam(uintptr_t player) {
return RPM<int>(player + m_iTeamNum);
}
int getCrosshairID(uintptr_t player) {
return RPM<int>(player + m_iCrosshairId);
}
void ExterTi()
{
while (!GetAsyncKeyState(VK_END) & 1) // END KEY FOR END PROCESS
{
this_thread::sleep_for(std::chrono::milliseconds(1));
const auto localPlayer = RPM<uintptr_t>(BaseDLL + dwLocalPlayer);
for (int i = 0; i < 8; i++)
{
//const auto weapon =RPM<int>(localPlayer + m_hMyWeapons + i * 0x4) & 0xFFFF;
//const auto weaponEnt = RPM<int>(BaseDLL + dwEntityList + (weapon -1 ) * 0x10);
//const auto weaponID = RPM<short>(weaponEnt + m_iItemDefinitionIndex);
const auto my_weapons = RPM<int>(localPlayer + m_hMyWeapons + (i - 1) * 0x4) & 0xFFF;
const auto weaponaddr = RPM<int>(BaseDLL + dwEntityList + (my_weapons - 1) * 0x10);
if (weaponaddr)
{
const auto weaponid = RPM<short>(weaponaddr + m_iItemDefinitionIndex);
if (weaponid == AllWeaponsIDs::WEAPON_AK47)
{
WPM<int>(weaponaddr + m_nFallbackPaintKit, 180);
}
}
}
const auto locp = RPM<uintptr_t>(BaseDLL + dwLocalPlayer);
const auto glowobj = RPM<uintptr_t>(BaseDLL + dwGlowObjectManager);
for (auto i = 0; i < 64; i++) {
const auto ent = RPM<uintptr_t>(BaseDLL + dwEntityList + i * 0x10);
bool detect = RPM<bool>(ent + m_bSpotted);
const auto teamdtc = RPM<int32_t>(ent + m_iTeamNum) == RPM<int32_t>(localPlayer + m_iTeamNum);
if (!teamdtc)
{
WPM<Color>(ent + m_clrRender, enemyColor);
}
auto brightness = 25.f;
const auto _this = static_cast<uintptr_t>(BaseEngine + model_ambient_min - 0x2c);
WPM<int32_t>(BaseEngine + model_ambient_min, *reinterpret_cast<uintptr_t*>(&brightness) ^ _this);
// if (!detect) continue;
const auto glowi = RPM<int32_t>(ent + m_iGlowIndex);
const auto detectGlows = RPM<uintptr_t>(ent + m_iTeamNum) != RPM<uintptr_t>(locp + m_iTeamNum);
if (detectGlows)
{
WPM<float>(glowobj + (glowi * 0x38) + 0x8, 1.f); // r
WPM<float>(glowobj + (glowi * 0x38) + 0xC, 0.f); // g
WPM<float>(glowobj + (glowi * 0x38) + 0x10, 0.f); // b
WPM<float>(glowobj + (glowi * 0x38) + 0x14, 1.f); // a
WPM<bool>(glowobj + (glowi * 0x38) + 0x27, true);
WPM<bool>(glowobj + (glowi * 0x38) + 0x28, true);
}
else {
WPM<float>(glowobj + (glowi * 0x38) + 0x8, 1.f); // r
WPM<float>(glowobj + (glowi * 0x38) + 0xC, 1.f); // g
WPM<float>(glowobj + (glowi * 0x38) + 0x10, 1.f); // b
WPM<float>(glowobj + (glowi * 0x38) + 0x14, 1.f); // a
WPM<bool>(glowobj + (glowi * 0x38) + 0x27, true);
WPM<bool>(glowobj + (glowi * 0x38) + 0x28, true);
}
}
DWORD ProcesssID2 = GetPid();
// When csgo closed
if (!ProcesssID2)
{
system("taskkill /IM kanot.exe /F ");
}
else continue;
// Killing Process*
}
}
int main() {
DWORD ProcesssID = GetPid();
if (!ProcesssID) {
Sleep(300);
system("color 4"); // system(color xy) x means backcolor, y means FontColor
cout << "[-] Please Run csgo and try again!" << endl;
cout << "\n\n Closing in 1second..." << endl;
char* msg;
MessageBox(0, "PLEASE RUN CSGO!", "CSGO IS NOT RUNNING!!", MB_OK | MB_ICONERROR);
Sleep(200);
return 0;
}
else {
void passWithColor(); {
system("color 2"); // system(color xy) x means backcolor, y means FontColor
}
SetConsoleTitle("ExterTi");
hwnd = FindWindowA(NULL, "Counter-Strike: Global Offensive");
GetWindowThreadProcessId(hwnd, &procId);
BaseDLL = GetBaseDLLAddress("client.dll");
BaseEngine = GetBaseDLLAddress("engine.dll");
hProcess = OpenProcess(PROCESS_ALL_ACCESS, NULL, procId);
cout << "[+] Cheat Activated" << endl;
cout << "\n" << endl;
system("color 6");
cout << "[*] Toggle F6 For Active" << endl;
cout << "[*] Toggle END For DeActive\n" << endl;
cout << "[*] BaseClient -> " << hex << BaseDLL << endl;
cout << "[*] BaseEngine -> " << hex << BaseEngine << endl;
Sleep(300);
while (true)
{
if (GetAsyncKeyState(VK_F6))
{
const auto LocalP_2 = RPM<int>(BaseDLL + dwLocalPlayer);
system("cls");
system("color a");
cout << "\n[+] Active" << endl;
cout << "\n______________________" << endl;
cout << "[#] Chams: Active" << endl;
ExterTi();
system("cls");
system("color 4");
cout << "\n[!] Disable" << endl;
cout << "\n______________________" << endl;
cout << "[#] Chams: DeActive" << endl;
}
}
}
}
Editor is loading...