Вывод из помойки, смысл?

Если я сделаю что-то вроде этого:

dumpbin myexe.exe

Я получил вывод, похожий на:

Dump of file myexe.exe

Тип файла: ИСПОЛНЯЕМОЕ ИЗОБРАЖЕНИЕ

Резюме

   21000 .data
    1000 .gfids
  3C9000 .rdata
   4F000 .reloc
   B4000 .rsrc
  325000 .text
    1000 .tls

Второй столбец (.data, .gfids, .rdata...) представляет имя раздела. Но что такое первый столбец? Размер раздела?


person Klik Kliković    schedule 02.02.2017    source источник


Ответы (1)


Это значение на самом деле является размером раздела aligned.

Если вы сделаете dumpbin /headers myexe.exe, вы получите более подробный вывод. Например, dumpbin C:\Windows\explorer.exe в моей системе выдает:

Dump of file c:\Windows\explorer.exe

File Type: EXECUTABLE IMAGE

Summary

    4000 .data
    1000 .didat
    1000 .imrsiv
   18000 .pdata
   7B000 .rdata
    6000 .reloc
  1EA000 .rsrc
  1C5000 .text

dumpbin /headers C:\Windows\explorer.exe, содержит вывод для раздела .text следующим образом (... = строки пропущены):

...
SECTION HEADER #1
   .text name
  1C4737 virtual size
    1000 virtual address (0000000140001000 to 00000001401C5736)
  1C4800 size of raw data
     400 file pointer to raw data (00000400 to 001C4BFF)
       0 file pointer to relocation table
       0 file pointer to line numbers
       0 number of relocations
       0 number of line numbers
60000020 flags
         Code
         Execute Read
...

Это также дает 1000 section alignment в разделе OPTIONAL HEADER VALUES.

Как видите, размер раздела .text на самом деле равен 1C4737, при выравнивании он становится 1C5000, как сообщается в /summary (это параметр по умолчанию для дампа).

person MuertoExcobito    schedule 02.02.2017