Win32 в машинных кодах


Исполняемые файлы Windows - часть 4


48h2Старшая версия подсистемы4

4Ah2Младшая версия подсистемы0

4Ch4Зарезервировано0

50h4Размер загруженного файла в памяти-

54h4Размер всех заголовков в файле-

58h4Контрольная сумма0

5Ch2Подсистема2 или 3

5Eh2Флаги dll0

60h4Зарезервированный размер стека100000h

64h4Выделенный размер стека1000h

68h4Зарезервированный размер кучи100000h

6Ch4Выделенный размер кучи1000h

70h4Устарело0

74h4Число элементов в каталоге смещений10h

Далее в PE-заголовке следует каталог размещения вспомогательных таблиц: первые 4 байта для каждого элемента являются смещением начала соответствующих данных относительно базового адреса загрузки, следующие 4 байта - размером этих данных. Хотя число элементов в каталоге указывается в поле PE-заголовка, Windows 9* не допускает значения, меньшего 10h. Структура каталога фиксирована; указатели на соответствующие данные должны следовать в следующем порядке:

  1. таблица экспорта;
  2. таблица импорта;
  3. таблица ресурсов;
  4. таблица исключений;
  5. таблица сертификатов;
  6. таблица настроек;
  7. отладочные данные;
  8. специфичные для архитектуры данные;
  9. глобальный указатель;
  10. таблица локального хранилища потоков (TLS);
  11. таблица конфигурирования загрузки;
  12. таблица связанного импорта;
  13. таблица импортируемых адресов (IAT);
  14. дескриптор отложенного импорта;
  15. зарезервировано;
  16. зарезервировано.

Это не значит, что все перечисленные данные должны присутствовать. Если те или иные данные отсутствуют, соответствующие поля каталога содержат нули. Мы будем рассматривать эти структуры по мере того, как начнем с ними работать.

Таблица секций следует непосредственно после PE-заголовка (после каталога смещений). Каждый вход таблицы имееет следующий формат (см. табл. 2).

Таблица 2. Строка таблицы секций

СмещениеРазмер, байтПоле

08Произвольное имя секции

84Размер секции в памяти

0Ch4Смещение секции в памяти относительно адреса загрузки

10h4Размер данных секции в файле

14h4Смещение начала данных секции в файле

18h12Используется лишь в объектных файлах




Начало  Назад  Вперед



Книжный магазин