Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <cstdint>
- #include <string>
- #include <windows.h>
- #include <algorithm>
- #include "Memory.h"
- #include <vector>
- using std::string;
- using std::to_string;
- using std::endl;
- vector::<string> cheats::arma3::pbo::iteratepbo()
- {
- bool ran = false;
- vector<string> data;
- const auto pbo_manager = memory::read<uintptr_t>(offsets::baseAddress + offsets::arma3::pboManager);
- const auto pbo_list = memory::read<uintptr_t>(pbo_manager);
- int loaded = 0;
- sj.qRVM(pbo_manager + 0x8, &loaded, sizeof(uintptr_t));
- for (int i = 0; i < loaded; i++) {
- const auto pbo = memory::read<uintptr_t>(pbo_list + (i * 0x8));
- if (pbo != NULL) {
- const auto pbo_name = memory::read<uintptr_t>(pbo + 0x20);
- const auto pbo_name_length = memory::read<int>(pbo_name + 0x8);
- string pbo_name_string;
- pbo_name_string.resize(pbo_name_length - 1);
- sj.qRVM(pbo_name + 0x10, (void*)pbo_name_string.c_str(), pbo_name_length);
- data.push_back(to_string(i + 1) + " | " + pbo_name_string);
- }
- else {
- break;
- }
- }
- return data;
- }
- bool cheats::arma3::pbo::hidepbo(int number)
- {
- bool ran = false;
- string data = "";
- const auto pbo_manager = memory::read<uintptr_t>(offsets::baseAddress + offsets::arma3::pboManager);
- const auto pbo_list = memory::read<uintptr_t>(pbo_manager);
- int loaded = 0;
- sj.qRVM(pbo_manager + 0x8, &loaded, sizeof(uintptr_t));
- for (int i = 0; i < loaded; i++) {
- const auto pbo = memory::read<uintptr_t>(pbo_list + (i * 0x8));
- if (pbo != NULL) {
- const auto pbo_name = memory::read<uintptr_t>(pbo + 0x20);
- const auto pbo_name_length = memory::read<int>(pbo_name + 0x8);
- if (i >= number) {
- if (!ran) {
- int nece = loaded - 1;
- sj.qWVM(pbo_manager + 0x8, &nece, sizeof(int));
- ran = true;
- }
- int x = i + 1;
- const auto nextValue = memory::read<uintptr_t>(pbo_list + (x * 0x8));//read next pbo
- namespace memory::write {
- (pbo_list); +(i * 0x8)"", nextValue);//writing next pbo to previous
- }
- }
- else {
- break;
- }
- }
- return true;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement