SHARE
TWEET

Untitled

a guest Mar 26th, 2020 58 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. #include "main.h"
  2. #include "DriverManager.h"
  3. #include "encypt.h"
  4.  
  5. using namespace std;
  6.  
  7. std::unique_ptr<DriverManager> driver = std::make_unique<DriverManager>("\\\\.\\NTIOLib_MB");
  8.  
  9. #define offset_game_manager 0x53c1670
  10. #define offset_fov_manager 0x53c1668
  11. #define offset_entity_list 0xC8
  12. #define offset_entity_count 0xD0
  13. #define offset_round_manager 0x53B0F40
  14. #define weapon_recoil_Enabler 0x168
  15. #define weapon_recoil_x 0x014C
  16. #define weapon_recoil_y 0x015C
  17. #define weapon_crosshair_gap 0x20
  18. #define offset_v_table 0x3a83e58
  19. #define offset_glow_manager 0x607aa50
  20. #define offset_glow_base 0xB8
  21. #define offset_glow_color 0x110
  22. #define offset_glow_distance 0x130
  23. #define offset_glow_opacity 0x13C
  24. #define offset_profile_manager 0x53ae810
  25. #define offset_glow_manager 0x607aa50
  26.  
  27. #define ADDRESS_GAMEMANAGER 0x53c1670
  28. #define OFFSET_GAMEMANAGER_ENTITYLIST 0xC8
  29. #define OFFSET_GAMEMANAGER_ENTITY_COUNT 0xD0
  30. #define ADDRESS_VTMARKER 0x3a83e58
  31.  
  32. uintptr_t base_address;
  33. uintptr_t game_manager;
  34. uintptr_t round_manager;
  35. uintptr_t entity_list;
  36. int       entity_count;
  37.  
  38.  
  39. bool ESP(uint64_t Base)
  40. {
  41.     uintptr_t GameManager = driver->ReadMemory<uintptr_t>(Base + ADDRESS_GAMEMANAGER);
  42.  
  43.     if (!GameManager)
  44.     {
  45.         return false;
  46.     }
  47.  
  48.     uintptr_t EntityList = driver->ReadMemory<uintptr_t>(GameManager + OFFSET_GAMEMANAGER_ENTITYLIST);
  49.  
  50.     if (!EntityList)
  51.     {
  52.         return false;
  53.     }
  54.  
  55.     int EntityCount = driver->ReadMemory<DWORD>(GameManager + OFFSET_GAMEMANAGER_ENTITY_COUNT) & 0x3fffffff;
  56.  
  57.     if (!EntityCount)
  58.     {
  59.         return false;
  60.     }
  61.  
  62.     for (int i = 0; i < EntityCount; i++)
  63.     {
  64.         uintptr_t EntityObject = driver->ReadMemory<uintptr_t>(EntityList + i * 0x8);
  65.  
  66.         if (!EntityObject)
  67.         {
  68.             continue;
  69.         }
  70.  
  71.         uintptr_t PtrChain1 = driver->ReadMemory<uintptr_t>(EntityObject + 0x28); if (!PtrChain1) continue;
  72.         uintptr_t PtrChain2 = driver->ReadMemory<uintptr_t>(PtrChain1 + 0xD8); if (!PtrChain2) continue;
  73.  
  74.         for (auto Component = 0x80; Component < 0xf0; Component += sizeof(uintptr_t))
  75.         {
  76.             uintptr_t PtrChain3 = driver->ReadMemory<uintptr_t>(PtrChain2 + Component);
  77.  
  78.             if (!PtrChain3)
  79.             {
  80.                 continue;
  81.             }
  82.  
  83.             if (driver->ReadMemory<uintptr_t>(PtrChain3) != (Base + ADDRESS_VTMARKER))
  84.             {
  85.                 continue;
  86.             }
  87.  
  88.             driver->WriteMemory<BYTE>(PtrChain3 + 0x552, true);
  89.             driver->WriteMemory<BYTE>(PtrChain3 + 0x554, true);
  90.         }
  91.     }
  92. }
  93.  
  94.  
  95. int main() {
  96.     std::cout << _xor_("Launch Rainbow Retarded Coon").c_str() << std::endl;
  97.  
  98.  
  99.     // this loops until rainbow is open and gets the pid.
  100.     // sleeps for 1 sec.
  101.     while (!driver->GetProcessID(_xor_("RainbowSix.exe").c_str()))
  102.         std::this_thread::sleep_for(std::chrono::seconds(30));
  103.  
  104.     // clears screen
  105.     std::system("cls");
  106.  
  107.     // 5 seconds sleep
  108.     std::this_thread::sleep_for(std::chrono::seconds(15));
  109.  
  110.     std::cout << _xor_("[+] Initializing...").c_str() << std::endl;
  111.  
  112.     // get base address
  113.     base_address = driver->GetModuleBaseAddr(_xor_("RainbowSix.exe").c_str());
  114.  
  115.     std::cout << "[+] Found " << _xor_("base_address").c_str() << " : " << std::hex << "0x" << base_address << std::endl;
  116.  
  117.     // get game manager
  118.     game_manager = driver->ReadMemory<uintptr_t>(base_address + offset_game_manager);
  119.     std::cout << "[+] Found " << _xor_ ("game_manager").c_str() << " : " << std::hex << "0x" << game_manager << std::endl;
  120.  
  121.     // get round manager
  122.     round_manager = driver->ReadMemory<uintptr_t>(base_address + offset_round_manager);
  123.     std::cout << "[+] Found " << _xor_("round_manager").c_str() << " : " << std::hex << "0x" << round_manager << std::endl;
  124.  
  125.     // get entity list
  126.     entity_list = driver->ReadMemory<uintptr_t>(base_address + offset_game_manager + offset_entity_list);
  127.     std::cout << "[+] Found " << _xor_("entity_list").c_str() << " : " << std::hex << "0x" << entity_list << std::endl;
  128.  
  129.     // get entity count
  130.     entity_count = driver->ReadMemory<DWORD>(base_address + offset_game_manager + offset_entity_count) & 0x3fffffff;
  131.     std::cout << "[+] Found " << _xor_("entity_count").c_str() << " : " << std::hex << "0x" << entity_count << std::endl;
  132.  
  133.     std::cout << _xor_("[+] Initialized.").c_str() << std::endl;
  134.  
  135.     while(true)
  136.  
  137.     ESP(base_address);
  138.  
  139.     std::cin.get();
  140.  
  141. }
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
Top