Untitled

 avatar
unknown
c_cpp
4 years ago
8.9 kB
5
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...