Я пытаюсь прочитать адреса памяти из исполняемого файла, работающего в памяти, а затем использовать эти адреса памяти для обхода структуры PE.
У меня возникли проблемы, потому что я не уверен, как преобразовать 4-байтовый массив символов в его int-эквивалент.
Вот мой код:
char buffer[4];
int e_lfanew = 60;
if(!ReadProcessMemory(pHandle, (me32.modBaseAddr + e_lfanew), buffer, 4, NULL))
{
printf("ReadProcessMemory @ %x Failed (%d)\n", me32.modBaseAddr, GetLastError());
}
Адрес, по которому я читаю, в данном случае 0xE0000000, является смещением PE-заголовка. Я хочу взять адрес памяти, который я только что прочитал, и использовать его как смещение для повторного считывания из памяти процесса, но я не могу понять, как правильно преобразовать его в тип int.
Любая помощь будет принята с благодарностью.