Изучаю понемногу формат PE-файлов, пишу простейший дампер PE-файлов. С "правильными" PE, созданными по стандарту, всё ОК, но тут я наткнулся на упакованный (вроде бы как upack'ом), и начались вопросы. Во-первых, DATA_DIRECTORY странным образом искажена (кроме того, в этом exe она имеет лишь 10 элементов): Адреса и размеры почти всех элементов DATA_DIRECTORY выходят далеко за пределы секций (в именах секций, кстати, тоже непонятно что): Code: Section name: PSяХ«лзГ Section read: [executable] [readable] [writeable] [RVA: 00001000 RVA+RawSize: 000011F0, RAW address: 00000010] Section name: Section read: [executable] [readable] [writeable] [RVA: 00012000 RVA+RawSize: 00017404, RAW address: 00000200] Section name: FA Section read: [executable] [readable] [writeable] [RVA: 0001A000 RVA+RawSize: 0001A1F0, RAW address: 00000010] (а у первой и последней секций еще и адреса совпадают физические.) Единственная попадающая внутрь последней секции таблица импорта (в DATA_DIRECTORY элемент 1) тоже искажена: Тут вообще ни один из адресов не является правильным. Отсюда три вопроса: 1. Как вообще работать с таким exe? 2. Имеет ли он таблицу импорта? 2. Получается, системному загрузчику можно скармливать всё что угодно, и это будет загружаться и работать? Ссылка на сам exe (это не вирус, он просто играет музыку): http://www.sendspace.com/file/hoxejc
ну типо вот https://cracklab.ru/f/index.php?action=vthread&topic=4611&forum=1&page=-1 отсюда и сырбор. Импорт должен быть. Loadlibrary и GetProcAddress. системному загрузчику можно скармливать всё что он проглотит)