Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей.
Здесь обсуждаются безопасность, программирование, технологии и многое другое.
Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
 |

03.08.2007, 17:58
|
|
Новичок
Регистрация: 30.07.2007
Сообщений: 20
Провел на форуме: 69606
Репутация:
2
|
|
Разбор EXE-header
Нужен совет, а точнее код для Дельфей, результатом которого будет определен есть ли оверлей у экзешника или нет...ведь можно как то узнать размер экзешника через его заголовок, а потом уже после этого размера может быть искомый оверлей...
|
|
|

03.08.2007, 21:51
|
|
Green member - Level 3
Регистрация: 08.10.2005
Сообщений: 396
Провел на форуме: 400609
Репутация:
239
|
|
Apocalypse
Вам на wasm.ru, раздел "Статьи"
__________________
Никому нельзя верить...
|
|
|

04.08.2007, 15:33
|
|
Новичок
Регистрация: 30.07.2007
Сообщений: 20
Провел на форуме: 69606
Репутация:
2
|
|
Я конечно все понимаю, но там все на асме =(
В котором я даже образно ничего не представляю...
|
|
|

04.08.2007, 15:49
|
|
Постоянный
Регистрация: 09.11.2006
Сообщений: 639
Провел на форуме: 1917742
Репутация:
541
|
|
Windows.pas :
IMAGE_FILE_RELOCS_STRIPPED
IMAGE_DIRECTORY_ENTRY_BASERELOC
|
|
|

05.08.2007, 16:13
|
|
Новичок
Регистрация: 30.07.2007
Сообщений: 20
Провел на форуме: 69606
Репутация:
2
|
|
хм...не совсем ясно, хочется увидеть готовый исходник либо ссылку на него...интересует мнение хорошего эксперта в этой области, может кто-то уже занимался подобным?
|
|
|

05.08.2007, 16:50
|
|
Постоянный
Регистрация: 29.04.2007
Сообщений: 496
Провел на форуме: 2715445
Репутация:
588
|
|
кури док по пеформату)))
Код:
PE:=CreateFile(PChar(F_PEFilePath),GENERIC_READ,FILE_SHARE_READ or FILE_SHARE_WRITE,nil,OPEN_EXISTING,FILE_ATTRIBUTE_NORMAL,0);
MEMSZ:=GetFileSize(PE,nil);
FM:=CreateFileMapping(PE, nil,PAGE_READONLY, 0, MEMSZ, nil);
MEMPTR:=MapViewOfFile(FM,FILE_MAP_READ, 0, 0, MEMSZ);
...
Secmax:=nt.FileHeader.NumberOfSections;
Sec:=PSection(SectionList[Secmax]); - посл. секция
Sec.physical_size + Sec.physical_offs - получаем конец файла =)))
...
If MEMSZ>(Sec.physical_size + Sec.physical_offs) then
попали сюда, значит есть оверлей, делаем что нада)))
>> Windows.pas :
>> IMAGE_FILE_RELOCS_STRIPPED
>> IMAGE_DIRECTORY_ENTRY_BASERELOC
чел про оверлей спрашивал, а не про релоки...
з.ы. пример простой, тут не учитывается выравнивание файла, нету проверок, нет получения
секция, но общий смысл должен быть ясен...
|
|
|
|
 |
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|