Не удается найти базовый адрес функции с IDA PRO (скомпилировано с vs2015)

Привет, я просто пытался изучить реверс-инжиниринг, и когда я открываю свою программу в IDA pro, я нахожу этот адрес sub_11330 (переназначен на 0) https://gyazo.com/1c34d2c31f29583f05d0dd4d956d6f74 однако, когда я пытаюсь подключить эту функцию, адрес GetModuleHandle(NULL) + 0x11330 не работает, поэтому я просто попытался напечатать базовый адрес функции с помощью callme std::cout << (DWORD) - (DWORD)GetModuleHandle(NULL), и когда я пробую этот адрес, он работает (0x1128a) почему я не могу найти его с помощью IDA? извините, если я не понял, если вы не можете понять, что я пытаюсь объяснить, я напишу свой пост.

вот как я это ловлю

int WINAPI DllMain(HINSTANCE hInstance, DWORD dwReason, LPVOID lpReserved)
{

    if (dwReason == DLL_PROCESS_ATTACH)
    {
        std::cout << "injected" << std::endl;
        Detour((PBYTE)GetModuleHandle(NULL) + 0x1128a, (PBYTE)&func);
    }

    return true;
}

Мой обход функции только изменяет первые 5 байт функции, и этот работает, я компилирую с vs2015 в режиме отладки, моя программа - консольное приложение, написанное на C++

0 ответов

Другие вопросы по тегам