В данной статье мне хочется рассказать о дизассемблировании большой
программы (графического редактора). Не будучи знатоком ассемблера, не
зная до сих пор, как использовать большинство возможностей своего дизас-
семблера(DisDoc 2.3), я все же решился написать эту статью, так как пре-
красно помню, в какой кромешной тьме начинал заниматься дизассемблирова-
нием.
Тогда, год назад, я попробовал дизассемблировать простенькую програм-
му и был страшно удивлен тем, что дизассемблер делает это неправильно, и
при повторном ассеблировании программа не работала так, как надо. Тогда же
мне удалось поговорить со знающим человеком и, хотя я чувствовал себя на-
ивным дурачком, мне удалось выяснить главное: ПОЛНОЕ,АВТОМАТИЧЕСКОЕ
ДИЗАССЕМБЛИРОВАНИЕ НЕВОЗМОЖНО, над тем текстом, который выдает
дизассемблер, нужно довольно долго работать, прежде чем ассемблирование
этого текста даст работоспособную программу.
В дальнейшем я постараюсь рассказать о тех приемах, которые превращают
"плохой" текст в "хороший" , т.е. в текст, который не только дает корректно
работающую программу при ассемблировании, но и позволяет себя изменить,
чтобы усовершенствовать исходную программу.
|