Вход на хостинг
IT-новости
20.04.2016 iPhone 2017 года поместят в водонепроницаемый корпус из стекла
Линейка iPhone в новом году серьезно поменяется. В этом уверен аналитический исследователь Мин Чи Ку......
30.07.2015 Ищем уникальный контент для сайта
Ищем уникальный контент для сайта Без уникального контента Ваш сайт обречен на то, что его страницы......
В некоторых случаях стартовые функции передают бразды правления libc_start_main и заканчиваются по hlt без ret. Это вполне нормальное явление. «Вполне» потому что очень многие вирусы, написанные на ассемблере, получают в «подарок» от линкера такой же стартовый код. Поэтому присутствие стартового кода в исследуемом файле, не дает нам никаких оснований считать его здоровым.
Листинг 16. Альтернативный пример нормальной стартовой функции
.text:08048330 public start
.text:08048330 start proc near
.text:08048330 xor ebp, ebp
.text:08048332 pop esi
.text:08048333 mov ecx, esp
.text:08048335 and esp, 0FFFFFFF8h
.text:08048338 push eax
.text:08048339 push esp
.text:0804833A push edx
.text:0804833B push offset sub_804859C
.text:08048340 push offset sub_80482BC
.text:08048345 push ecx
.text:08048346 push esi
.text:08048347 push offset loc_8048430
.text:0804834C call ___libc_start_main
.text:08048351 hlt
.text:08048352 nop