Как найти localplayer с помощью pymem?

Новичок
Статус
Оффлайн
Регистрация
8 Авг 2024
Сообщения
1
Реакции[?]
0
Поинты[?]
0
У меня есть pointer в Cheat Engine "mono-2.0-bdwgc.dll +004A8438" с оффсетами "0x220", "E40".

Вот кусок кода:

client = pymem.process.module_from_name(pm.process_handle, "mono-2.0-bdwgc.dll").lpBaseOfDll

localPlayerInt = pm.read_longlong(client + 0x4A8438)
b = pm.read_longlong(localPlayerInt + 0xE40)
с = pm.read_longlong(b + 0x220)
 
Новичок
Статус
Оффлайн
Регистрация
5 Июл 2024
Сообщения
1
Реакции[?]
0
Поинты[?]
0
ну ты дебаж. в чем трабла не пойму. Я хоть сам с 0 опыта, но когда учился чисто с итереса реверсить и хукать в своей проге свою функу, наделал много ошибок, и пол дня дебажил и перероверял сначало правильно ли нашел базовый адрес, потом какой адрес он щас имеет.
Я думаю тебе подойдет метод вывести адрес куда то. и в калькуляторе отнять от адреса локалплеера что виден в се(правельного) - свой адрес. увидеть на сколько далеко ты отьехал от своей функи. У меня вот решение проблемы было это
C++:
            // Получение базового адреса модуля
        uintptr_t baseAddress = (uintptr_t)GetModuleHandle(L"revme.exe");
        if (baseAddress == 0) {
            return; // Ошибка при получении базового адреса
        }

        // Смещение функции
        uintptr_t funcOffset = 0x141A6; // Смещение функции

        [B]void* pTarget = (void*)(baseAddress + funcOffset + 0x1000);[/B]
        std::cout << "adress " << pTarget <<  std::endl;
        std::cin.get();
Ввобщем добавления смещения 0x1000
отдебаж и все будет гуд
 
Сверху Снизу