видимо я сегодня переработался,что то туплю: вот как именно исполняются файлы pe в windows? то есть понятно что процессором ну,а конкретно,какой именно компонент венды выполняет экзэшник?
тут в две строки не ответиш тебе на масм форум асм - крякеры где _ttp://www.burlakovmb.narod.ru/Articles/FileFormats/PE/header.htm
напомнил былинную стори. сидит парень в трёх шагах у компа и начинает мрачнеть. не слышно его дроби по клавиатуре над прогой чертёжников eplan. спрашивает, "у тебя прога запускается?" "да" - отвечаю ему. а у него - нет. в чём была трабла? в том, что в регистре было вирусом переписан загрузчик .exe .com .bat на другое. решилось быстро. тот ключ регистра переписали с незаражённой машины, загрузившись с дискетты.
В ближайшем рассмотрении exe запускает та программа, из под которой по нему кликнули / нажали на кнопку / сработал таймер и т.д. Запуск происходит вызовом WinAPI функции CreateProcess в kernel32.dll родительской программой (другие API запуска, такие как ShellExecute, WinExec банально упрощенно используют CreateProcess). Но на самом деле в kernel32 значительная часть экспортируемых функций реимпортируются из других модулей, более "ядерных", такие функции это т.н. Native API, и там, глубже скрыт истинный механизм запуска. Далее реверсеры и зерорингеры в помощь .
это как спросить - какое море заставляет корабль плыть? конечно, есть ветер, волны, приливы, отливы, но таки странный вопрос.
Лаунчером является API-функция CreateProcess, в kernel32.dll, она в свою очередь использует NtCreateProcess из ntdll.dll, он в свой очередь ZwCreateProcess из ntoskrnl.exe А проводник только вызывает эту API функцию, передавая ей параметры и путь к ехе файлу.. вместо него может быть любая программа.
Во-первых, что значит "поехавший"?, во-вторых: мы не знакомы, чтобы говорить на "ты". Соблюдайте правила приличия. А все это я пишу к тому, что сама программа, которая вызывает API-функцию ничем не интересна. Это только промежуточное действие.