-
Автор темы
- #1
не могу понять, где находится в винапи InLoadOrderModuleList.
не то, мне из 64 битного нужноПожалуйста, авторизуйтесь для просмотра ссылки.
Ты просто прочитал тайтл, правда же? Тебе нужно разжевывать !страшную! информацию со стековерфлова на !английском языке!?не то, мне из 64 битного нужно
ебать, мне нахуй не сдалось из 32 битного читать 64 битную память, мне нужно из 64 битов читать 64 битаТы просто прочитал тайтл, правда же? Тебе нужно разжевывать !страшную! информацию со стековерфлова на !английском языке!?
Пожалуйста, авторизуйтесь для просмотра ссылки.Посмотреть вложение 217741
Оно не находится в WinAPI как таковом, это вендовые интерналсы мемные, у венды есть структуране могу понять, где находится в винапи InLoadOrderModuleList.
_PEB_LDR_DATA
, в которой есть полеInLoadOrderModuleList
, которое принадлежит _LIST_ENTRY
:typedef struct _PEB_LDR_DATA {
ULONG Length;
BOOLEAN Initialized;
HANDLE SsHandle;
LIST_ENTRY InLoadOrderModuleList;
LIST_ENTRY InMemoryOrderModuleList;
LIST_ENTRY InInitializationOrderModuleList;
PVOID EntryInProgress;
} PEB_LDR_DATA, * PPEB_LDR_DATA;
// Ищем PEB
PEB = (PPEB64)__readgsqword(0x60);
/* Для x86 нужно обращаться по шлюзу FS с адресом 0x30, это можно делать как интриксом:
PEB = (PPEB32)__readfsdword(0x30);
Так и асм-вставкой (только для x86, ибо микромягкие их выпилили из x64):
PPEB32 PEB;
__asm {
mov eax, fs:[0x30]
mov PEB, eax
}
*/
// Инициализируем данные "загрузчика"
PPEB_LDR_DATA LdrData = PEB->Ldr;
LIST_ENTRY List = LdrData->InLoadOrderModuleList;
Проект предоставляет различный материал, относящийся к сфере киберспорта, программирования, ПО для игр, а также позволяет его участникам общаться на многие другие темы. Почта для жалоб: admin@yougame.biz