Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <Windows.h>
- #include <iostream>
- #include <string>
- #include <vector>
- class WoWObject
- {
- public:
- WoWObject()
- {
- Guid = 0;
- SummonedBy = 0;
- XPos = 0;
- YPos = 0;
- ZPos = 0;
- Rotation = 0;
- BaseAddress = 0;
- UnitFieldsAddress = 0;
- Type = 0;
- Name = "";
- CurrentHealth = 0;
- }
- long long int* Guid;
- long long int SummonedBy;
- float* XPos;
- float YPos;
- float ZPos;
- float Rotation;
- int* BaseAddress;
- int* UnitFieldsAddress;
- int16_t Type;
- std::string Name;
- int* CurrentHealth;
- };
- WoWObject* LocalPlayer = new WoWObject();
- WoWObject* TempObject = new WoWObject();
- DWORD* currentManager_Pre = (DWORD*)(0x00D43318);
- int* currentManager = (int*)(*currentManager_Pre + 0x2218);
- int GetObjectBaseByGuid(long long int* Guid)
- {
- //int* nextObject = (int*)(*currentManager + 0xAC);
- std::cout << "Current manager: " << *currentManager << std::endl;
- TempObject->BaseAddress = (int*)(*currentManager + 0xAC);
- while (*TempObject->BaseAddress != NULL)
- {
- std::cout << "Object: " << *TempObject->BaseAddress << std::endl;
- TempObject->Guid = (long long int*)(*TempObject->BaseAddress + 0x30);
- if (TempObject->Guid == Guid)
- {
- std::cout << "Reached!" << std::endl;
- return *TempObject->BaseAddress;
- }
- TempObject->BaseAddress = (int*)(TempObject->BaseAddress + 0x3C);
- }
- std::cout << "Outside Loop!" << std::endl;
- }
- DWORD WINAPI hackthread(LPVOID param)
- {
- FILE *pFile = nullptr;
- AllocConsole();
- freopen_s(&pFile, "CONOUT$", "w", stdout);
- std::cout << "------------------------------------------"
- << std::endl;
- LocalPlayer->Guid = (long long int*)(*currentManager + 0xC0);
- std::cout << "GUID " << *LocalPlayer->Guid << std::endl;
- if (*LocalPlayer->Guid == 0)
- std::cout << "Something went wrong!" << std::endl;
- std::cout << *LocalPlayer->Guid << std::endl;
- LocalPlayer->BaseAddress = (int*)GetObjectBaseByGuid(LocalPlayer->Guid);
- LocalPlayer->XPos = (float*)(*LocalPlayer->BaseAddress + 0xBF0);
- std::cout << LocalPlayer->XPos << std::endl;
- FreeLibraryAndExitThread((HMODULE)param, NULL);
- return NULL;
- }
- BOOL WINAPI DllMain(HINSTANCE hModule, DWORD dwReason, LPVOID lpReserved)
- {
- switch (dwReason)
- {
- case DLL_PROCESS_ATTACH:
- CreateThread(0, 0, hackthread, hModule, 0, 0); // Added hModule to be passed to hackthread
- break;
- case DLL_PROCESS_DETACH:
- break;
- }
- return TRUE;
- }
Advertisement
Add Comment
Please, Sign In to add comment