Beispiel #1
0
bool MUtil::findEntityList(DWORD clientDll, DWORD clientDllSize)
{
	DWORD addr = this->findPattern(XorStr("\x05\x00\x00\x00\x00\xC1\xE9\x00\x39\x48\x04"), XorStr("x????xx?xxx"), clientDll, clientDll + clientDllSize, 0);

	if (addr)
	{
		entityList = *(DWORD*)(addr + 1) + *(char*)(addr + 7) - clientDll;

		return true;
	}
	return false;
}
Beispiel #2
0
bool MUtil::findLocalPlayer(DWORD clientDll, DWORD clientDllSize)
{
	DWORD addr = this->findPattern(XorStr("\x8D\x34\x85\x00\x00\x00\x00\x89\x15\x00\x00\x00\x00\x8B\x41\x08\x8B\x48\x00"), XorStr("xxx????xx????xxxxx?"), clientDll, clientDll + clientDllSize, 0);

	if (addr)
	{
		localPlayer = *(DWORD*)(addr + 3) + *(char*)(addr + 18) - clientDll;

		return true;
	}
	return false;
}
Beispiel #3
0
void MUtil::init()
{
	do
	{
		hClientDll = GetModuleHandleA(XorStr("client.dll"));
		hEngineDll = GetModuleHandleA(XorStr("engine.dll"));

	} while (hClientDll == NULL && hEngineDll == NULL);

	GetModuleInformation(GetCurrentProcess(), hClientDll, &modClientDll, sizeof(MODULEINFO));
	GetModuleInformation(GetCurrentProcess(), hEngineDll, &modEngineDll, sizeof(MODULEINFO));

	dClientDll = (DWORD)modClientDll.lpBaseOfDll;
	dEngineDll = (DWORD)modEngineDll.lpBaseOfDll;
	dClientDllSize = modClientDll.SizeOfImage;
	dEngineDllSize = modEngineDll.SizeOfImage;

	netMngr = new NetvarManager::Manager();
	netMngr->init();

	this->getOffsets(dClientDll, dClientDllSize, dEngineDll, dEngineDllSize);
}
Beispiel #4
0
T* Interfaces::Grab( const char * module, const char * szinterface )
{
	tCreateInterface fn = ( tCreateInterface ) GetProcAddress( GetModuleHandle( module ), XorStr( "CreateInterface" ) );
	return ( T* ) fn( szinterface, nullptr );
}
Beispiel #5
0
T* Interfaces::BruteForce( const char * module, const char * szinterface )
{
	tCreateInterface fn = ( tCreateInterface ) GetProcAddress( GetModuleHandle( module ), XorStr( "CreateInterface" ) );

	char tmp [ 128 ];

	for ( int i = 0; i < 100; i++ )
	{
		sprintf_s( tmp, sizeof( tmp ), "%s0%i", szinterface, i );

		T* return_ = ( T* ) fn( tmp, nullptr );
		if ( return_ ) return return_;

		sprintf_s( tmp, sizeof( tmp ), "%s00%i", szinterface, i );

		return_ = ( T* ) fn( tmp, nullptr );
		if ( return_ ) return return_;
	}

	return nullptr;
}
Beispiel #6
0
void MUtil::getOffsets(DWORD clientDll, DWORD clientDllSize, DWORD engineDll, DWORD engineDllSize)
{
	bool offsetsComplete = true;

	firedShots = netMngr->getOffs(XorStr("CCSPlayer"), XorStr("m_iShotsFired"));
	flashDur = netMngr->getOffs(XorStr("CCSPlayer"), XorStr("m_flFlashDuration"));
	compRank = netMngr->getOffs(XorStr("CCSPlayerResource"), XorStr("m_iCompetitiveRanking"));
	compWins = netMngr->getOffs(XorStr("CCSPlayerResource"), XorStr("m_iCompetitiveWins"));
	bone = netMngr->getOffs(XorStr("CBaseAnimating"), XorStr("m_nForceBone"));
	bone += 0x1C;
	life = netMngr->getOffs(XorStr("CBasePlayer"), XorStr("m_iHealth"));
	flags = netMngr->getOffs(XorStr("CBasePlayer"), XorStr("m_fFlags"));
	lifeSt = netMngr->getOffs(XorStr("CBasePlayer"), XorStr("m_lifeState"));
	viewOrigin = netMngr->getOffs(XorStr("CBaseEntity"), XorStr("m_vecOrigin"));
	entTeam = netMngr->getOffs(XorStr("CBaseEntity"), XorStr("m_iTeamNum"));
	vecAngle = netMngr->getOffs(XorStr("CBasePlayer"), XorStr("m_vecViewOffset[0]"));
	activWeap = netMngr->getOffs(XorStr("CBasePlayer"), XorStr("m_hActiveWeapon"));
	itmDI = netMngr->getOffs(XorStr("CBaseCombatWeapon"), XorStr("m_iItemDefinitionIndex"));
	c4Time = netMngr->getOffs(XorStr("CPlantedC4"), XorStr("m_flC4Blow"));
	c4Tick = netMngr->getOffs(XorStr("CPlantedC4"), XorStr("m_bBombTicking"));
	c4Def = netMngr->getOffs(XorStr("CPlantedC4"), XorStr("m_bBombDefused"));
	coll = netMngr->getOffs(XorStr("CBasePlayer"), XorStr("m_Collision"));
	collGrp = netMngr->getOffs(XorStr("CBasePlayer"), XorStr("m_CollisionGroup"));

	rgflCoordinateFrame = collGrp - 0x30;
	
	entGlowIndex = flashDur + 0x18;

	if (!this->findLocalPlayer(clientDll, clientDllSize))
		offsetsComplete = false;

	if (!this->findEntityList(clientDll, clientDllSize))
		offsetsComplete = false;

	if (!this->findOffset(clientDll, clientDllSize, XorStr("\xE8\x00\x00\x00\x00\x83\xC4\x04\xB8\x00\x00\x00\x00\xC3\xCC"), XorStr("x????xxxx????xx"), 9, XorStr("glowObjectBase"), &glowObjectBase, true))
		offsetsComplete = false;

	if (!this->findOffset(clientDll, clientDllSize, XorStr("\x89\x15\x00\x00\x00\x00\x8B\x15\x00\x00\x00\x00\xF6\xC2\x03\x74\x03\x83\xCE\x04\xA8\x04\xBF"), XorStr("xx????xx????xxxxxxxxxxx"), 2, XorStr("attackBtn"), &attackBtn, true))
		offsetsComplete = false;

	if (!this->findOffset(clientDll, clientDllSize, XorStr("\x56\x57\x8B\xF9\xC7\x87\x00\x00\x00\x00\x00\x00\x00\x00\x8B\x0D"), XorStr("xxxxxx????xx"), 6, XorStr("inCross"), &inCross))
		offsetsComplete = false;

	if (!this->findOffset(clientDll, clientDllSize, XorStr("\x0F\x7E\x82\x00\x00\x00\x00\x8B\x82\x00\x00\x00\x00\x66\x0F\xD6\x45\xD0\xF3"), XorStr("xxx????xx????xxxxxx"), 3, XorStr("vecPunch"), &vecPunch))
		offsetsComplete = false;

	if (!this->findOffset(engineDll, engineDllSize, XorStr("\xF3\x0F\x5C\xC1\xF3\x0F\x10\x15\x00\x00\x00\x00\x0F\x2F\xD0\x76\x04\xF3\x0F\x58\xC1\xA1\x00\x00\x00\x00\xF3\x0F\x11\x80\x00\x00\x00\x00\xD9\x46\x04"), XorStr("xxxxxxxx????xxxxxxxxxx????xxxx????xxx"), 22, XorStr("engPtr"), &engPtr, true))
		offsetsComplete = false;

	if (!this->findOffset(clientDll, clientDllSize, XorStr("\x8B\x3D\x00\x00\x00\x00\x85\xFF\x0F\x84\x00\x00\x00\x00\x81\xC7"), XorStr("xx????xxxx????xx"), 2, XorStr("gameRes"), &gameRes, true))
		offsetsComplete = false;

	if (!this->findOffset(clientDll, clientDllSize, XorStr("\xA1\x00\x00\x00\x00\x8B\x0C\xB0\x8B\x01\xFF\x50\x00\x46\x3B\x35\x00\x00\x00\x00\x7C\xEA\x8B\x0D"), XorStr("x????xxxxxxx?xxx????xxxx"), 1, XorStr("radar"), &radar, true))
		offsetsComplete = false;
}
Beispiel #7
0
DWORD MUtil::getGlobalVars()
{
	return this->findPattern(XorStr("\xA1\x00\x00\x00\x00\x5F\x8B\x40\x10"), XorStr("x????xxxx"), dClientDll, dClientDll + dClientDllSize, 0);
}
Beispiel #8
0
DWORD MUtil::getIsRdy()
{
	return this->findPattern(XorStr("\x55\x8B\xEC\x51\x56\x8B\x35\x00\x00\x00\x00\x80\x7E\x58\x00"), XorStr("xxxxxxx????xxxx"), dClientDll, dClientDll + dClientDllSize, 0);
}
Beispiel #9
0
DWORD MUtil::getClientMode()
{
	return this->findPattern(XorStr("\x8B\x35\x00\x00\x00\x00\x85\xFF\x74\x73"), XorStr("xx????xxxx"), dClientDll, dClientDll + dClientDllSize, 2);
}
Beispiel #10
0
void CGlow::Act()
{


	/* Start Deklaration für Glow */

	std::uintptr_t entity = 0x0;
	size_t entity_team = 0;
	size_t entity_health = 0;
	size_t local_team = 0;
	std::uintptr_t local = 0x0;
	size_t classID = 0;
	size_t glowObjects = 0;
	GlowObject_t glowObject;
	std::uintptr_t glowObjectManager = 0x0;



	/* Ende Deklaration für Glow */

	Sleep(50);
	g_pColor->printColor(XorStr(" [>| Glow wurde erfolgreich geladen. "), CC_RED, CC_WHITE);


	
		while (true) {


			if (g_pChecker->GetGlow() && g_pLocalplayer->fullload() )

			{

				local = g_pLocalplayer->getLocal();

				local_team = g_pLocalplayer->LocalPlayerTeam();

				glowObjectManager = g_pLocalplayer->getGlowObjectManager();

				if (!glowObjectManager) {

					Sleep(1);

					continue;
				}

				glowObjects = g_pMemory->Read< int >(g_pMemory->getClientAddress() + Offsets::signatures::dwGlowObjectManager + 0xC);


				if (!glowObjects || glowObjects <= 0) {

					Sleep(1);

					continue;


				}


				for (int i = 1; i <= glowObjects; i++) {

					glowObject = g_pMemory->Read< GlowObject_t >(glowObjectManager + i * sizeof(GlowObject_t));

					entity = glowObject.pEntity;

					if (!entity || entity == local) {

						continue;
					}


					classID = g_pEntity->getClassID(entity);
					

					if (classID == CPlantedC4 || classID == CC4) {

						g_pEntity->setGlow(i, 2.f, 0.1f, 2.4f, 1.f, true, false);

						continue;
					}
					
					if (classID == 9 || classID == 41 || classID == 98 || classID == 130 || classID == 134 || classID == 66 && g_pChecker->getNadeglow() == true) { //Nades


						g_pEntity->setGlow(i, g_pChecker->nadeglowvalues(0), g_pChecker->nadeglowvalues(1), g_pChecker->nadeglowvalues(2), g_pChecker->nadeglowvalues(3), true, false);

						continue;

					}

					
					
					if (classID == 1 || classID == 39 || (classID >= 204 && classID <= 244) && g_pChecker->getWeaponglow() == true ) { //Waffen

						g_pEntity->setGlow(i, g_pChecker->weaponglowvalues(0), g_pChecker->weaponglowvalues(1), g_pChecker->weaponglowvalues(2), g_pChecker->weaponglowvalues(3), true, false);

						continue;
					}
					
					

					entity_health = g_pEntity->getHealth(entity);

					if (!entity_health || entity_health <= 0) {

						continue;
					}


					entity_team = g_pEntity->getTeam(entity);

					if (entity_team != local_team  && g_pChecker->getEnemyglow() == true) {

						g_pEntity->setGlow(i, g_pChecker->enemyglowvalues(0), g_pChecker->enemyglowvalues(1), g_pChecker->enemyglowvalues(2), g_pChecker->enemyglowvalues(3), true, false);
					}


					if (entity_team == local_team && g_pChecker->getFriendglow() == true) {

						g_pEntity->setGlow(i, g_pChecker->friendglowvalues(0), g_pChecker->friendglowvalues(1), g_pChecker->friendglowvalues(2), g_pChecker->friendglowvalues(3), true, false);
					}


					





				}
			}

			std::this_thread::sleep_for(std::chrono::milliseconds(1));

		}
}