Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- DWORD FinalVida(){
- DWORD Address = (int)GetModuleHandle(L"Torchlight.exe") + 0x00A2B6A4; // soma o endereço estatico
- printf("0x%X \n", Address);// o local desse endereço aponta pra outro endereço
- Address = *(DWORD*)Address; //faço a leitura do endereço dinamico que está no estatico
- printf("0x%X \n", Address); //primeira parte do endereço dinamico
- Address = *(DWORD*)(Address + 0x1c);//soma o endereço dinamico + um offset,
- //que vai ser lido nesse ponto que obtem outro endereço para outro ponto dinamico o segundo no caso
- printf("0x%X \n", Address); //segundo endereço dinamico
- Address = (Address + 0x394);//soma esse nedereço dinamico mais outro offset para pegar o endereço
- //observe que eu não fiz a leitura só a soma, por que é o endereço final
- printf("0x%X \n", Address); //'ENDEREÇO' final
- return Address;
- }
- DWORD vidaAddress = 0;
- bool ativaVida = false;
- DWORD WINAPI IniComds(LPVOID blabla) {
- bool vidastatus; // STATUS DE LIGADO OU DESLIGADO
- bool goldStatus;
- int timeSinceLastUpdate = clock(); //força status de update a cada x segundos
- int GameAvailTMR = clock();
- int OnePressTMR;//usando o limite de keys inserida para apenas 1 ou x ms
- UpdateOnNextRun = true;
- string sGoldStatus;
- string sHealthStatus;
- sGoldStatus = "OFF";
- sHealthStatus = "OFF";
- while (!GetAsyncKeyState(VK_INSERT))// SE A TECLA INSERT NAO FOR USADA ABRE O MENU! SE APERTA FECHA O JOGO
- {
- system("cls");
- cout << "----------------------------------------------------" << "\n";
- cout << " DLL HACKER PARA TORCHLIGHT " << "\n";
- cout << "----------------------------------------------------" << "\n\n";
- cout << "GAME STATUS:" << GameStatus << " " << "\n\n";
- cout << "[F1] GOLD INFINITO -> " << sGoldStatus << " <-" << "\n\n";
- cout << "[F2] VIDA INIFNITA ->" << sHealthStatus << "<-" << "\n\n";
- cout << "[INSERT] FECHAR" << "\n";
- while (true) {
- if (GetAsyncKeyState(VK_F2) & 1) {
- if (vidaAddress == 0){
- vidaAddress = FinalVida();
- }
- ativaVida = !ativaVida;
- printf("Valor? %f \n", *(FLOAT*)vidaAddress); // ler em float
- cout << "ativado\n";
- }
- if (ativaVida && vidaAddress != 0){
- *(FLOAT*)vidaAddress = 9999;
- }
- }
- }
- return 0
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement