#include "Game.h" #pragma region offsets DWORD offLocalPlayer; DWORD offEntityList; const DWORD offEntityTeam = 0xF0; DWORD offGlow; #pragma endregion #pragma region globalVars PModule modClient; PMemory mem; #pragma endregion [junk_enable /] [enc_string_enable /] #pragma region hotKeys int whichKeyIsPressed() { while (true) { for (int i = 1; i < 255; i++) { if (GetAsyncKeyState(i) & 0x8000) { while (GetAsyncKeyState(i) & 0x8000) { Sleep(50); } return i; } } Sleep(10); } } int keyGlowToggle = VK_INSERT; #pragma endregion bool isDormantCheck(int dorm) { if (dorm != 1) { return false; } else { return true; } } void ReadData(Player* p, bool isLocalPlayer) { if (isLocalPlayer) { p->team = mem.Read(p->dwBase + offEntityTeam); } else { p->team = mem.Read(p->dwBase + offEntityTeam); p->Dormant = mem.Read(p->dwBase + 0xE9); p->isDormant = isDormantCheck(p->Dormant); } } int main() { std::cout << "PolyGlowESP V1.1 - Made by Merccy\n\n"; std::cout << "Waiting for csgo.exe..."; while (!mem.Attach("csgo.exe")) { std::cout << "."; Sleep(500); } modClient = mem.GetModule("client.dll"); std::cout << "\nFound\n\n"; std::cout << "Getting offsets..."; // Glow offset DWORD gpStart = mem.FindPatternArr(modClient.dwBase, modClient.dwSize, "xx????x????xxx????xx????xx", 27, 0x8D, 0x8F, 0, 0, 0, 0, 0xA1, 0, 0, 0, 0, 0xC7, 0x4, 0x2, 0, 0, 0, 0, 0x89, 0x35, 0x0, 0x0, 0x0, 0x0, 0x8B, 0x51); offGlow = mem.Read(gpStart + 7) - modClient.dwBase; // Entity list DWORD elStart = mem.FindPatternArr(modClient.dwBase, modClient.dwSize, "x????xx?xxx", 11, 0x5, 0x0, 0x0, 0x0, 0x0, 0xC1, 0xE9, 0x0, 0x39, 0x48, 0x4); DWORD elP1 = mem.Read(elStart + 1); BYTE elP2 = mem.Read(elStart + 7); offEntityList = (elP1 + elP2) - modClient.dwBase; // Local player DWORD lpStart = mem.FindPatternArr(modClient.dwBase, modClient.dwSize, "xxx????xx????xxxxx?", 19, 0x8D, 0x34, 0x85, 0x0, 0x0, 0x0, 0x0, 0x89, 0x15, 0x0, 0x0, 0x0, 0x0, 0x8B, 0x41, 0x8, 0x8B, 0x48, 0x0); DWORD lpP1 = mem.Read(lpStart + 3); BYTE lpP2 = mem.Read(lpStart + 18); offLocalPlayer = (lpP1 + lpP2) - modClient.dwBase; std::cout << "\nDone\n\n"; /*std::cout << "Hotkeys: \n"; std::cout << "Toggle glow: "; keyGlowToggle = whichKeyIsPressed(); std::cout << keyGlowToggle << "\n"; std::cout << "\n";*/ bool glowEnabled = false; Player me; Player players[64]; while (!GetAsyncKeyState(VK_END)) { if (GetAsyncKeyState(keyGlowToggle) & 0x8000) { while (GetAsyncKeyState(keyGlowToggle) & 0x8000) { Sleep(50); } glowEnabled = !glowEnabled; std::cout << "Glow ESP is now "; if (glowEnabled) { std::cout << "enabled\n"; } else { std::cout << "disabled\n"; } } if (glowEnabled) { me.dwBase = mem.Read(modClient.dwBase + offLocalPlayer); ReadData(&me, true); for (int i = 1; i < 64; i++) { players[i].dwBase = mem.Read(modClient.dwBase + offEntityList + i * 0x10); ReadData(&players[i], false); } DWORD pointerGlow = mem.Read(modClient.dwBase + offGlow); int objectCount = mem.Read(modClient.dwBase + offGlow + 0x4); if (pointerGlow != NULL) { for (int i = 0; i < objectCount; i++) { DWORD mObj = pointerGlow + i * sizeof(GlowObjectDefinition_t); GlowObjectDefinition_t glowObj = mem.Read(mObj); if (glowObj.pEntity != NULL) { int f_i = -1; for (int j = 1; j < 64; j++) { if (!players[j].isDormant) { if (glowObj.pEntity == players[j].dwBase) { int r = 255, g = 0, b = 0; if (players[j].team == me.team) { r = 0; b = 255; } mem.Write(mObj + 0x4, r / 255); mem.Write(mObj + 0x8, g / 255); mem.Write(mObj + 0xC, b / 255); mem.Write(mObj + 0x10, 1.0f); mem.Write(mObj + 0x24, true); mem.Write(mObj + 0x25, false); } } } // For j loop } } } } } return 0; }