PDA

Просмотр полной версии : Как работает AsPack ???


KIR@PRO
28.01.2008, 00:24
Всем дарова! меня долго мучал вопрос как же работет не мало известная программа AsPack.

И решил наконец задать вопрос обьяснит ктонить....

Я догадываюсь то что он просто сжимает exeшник по своему алгоритму и в начале файла дописывает расшифровщик.... дак как же этот расшифровщик потом запускает файл из этой же дириктории с этим же названием.... Возможно ли программно запустить exe'шник не сначала файла а допустим с середины (какбудто у нас в одном файле записано 2 вподряд...)




не обращайте внимания я просто спятил... ;)

Kaimi
28.01.2008, 00:30
Расшифровывает, грузит в память и передает управление. Наверное так

Slip
28.01.2008, 00:38
Упаковщик сжимает программу и дописывает в нее свой код. При запуске этот код распаковывает все на место, проделывает все, что должна была бы проделать операционная система и передает управление программе.

Самое лучше, что есть на русском языке на эту тему (по моему мнению):
http://wasm.ru/article.php?article=packlast01
http://wasm.ru/article.php?article=packers2

De-visible
28.01.2008, 11:43
Алгоритм работы ASPACK'а:
1)Весь код программы сжимается архиватором.(Используется оптимизированный
архиватор - для сжатия двоичного кода)
2)В конец сжатого кода, добавляется код разархиватора.(Он при старте
будет разжимать программу обратно)
3)Изменяет заголовок файла так, что при исполнении сначала сзапускается
разархиватор.
-------------------------------
Когда ты запустишь файл сжатый ASPacko'м, сначала заработает разархиватор,
(который в дальнейшем разожмет код твоей проги и разместит его в памяти
компа) далее при окончании этого процесса разархиватор передаст управление
твоей проге!
-------------------------------

ProTeuS
28.01.2008, 11:47
[QUOTE=KIR@PRO] Возможно ли программно запустить exe'шник не сначала файла а допустим с середины (какбудто у нас в одном файле записано 2 вподряд...)

возможно, заинлайнив

PUSHAD
.....
трейсим до POPAD
JMP SEREDINA_FAILA

KIR@PRO
02.02.2008, 21:25
а поконкретней можно.... примером какимнибудь ..... я так понял это ассэмблер я его плоховато знаю точнее вообще не знаю ((((((