Вопросы к Поиску с Алисой
Дизассемблирование машинного кода — это формирование из исполняемого кода программы кода на языке ассемблера. spravochnick.ru
Процесс начинается с первого байта в сегменте кода и последовательно продвигается, обрабатывая команды одну за другой, пока не будет достигнут конец сегмента. seckey.filumena.ru books.ifmo.ru
Основная трудность при работе дизассемблера — отличить данные от машинного кода. ru.wikipedia.org Поэтому на первых проходах автоматически или интерактивно собирается информация о границах процедур и функций, а на последнем проходе формируется итоговый листинг. spravochnick.ru ru.wikipedia.org
Во время процесса дизассемблирования может использоваться указатель для отметки начала команды, а также вычисляется длина каждой команды, что используется для определения местонахождения следующей команды, подлежащей анализу. seckey.filumena.ru
Чаще всего дизассемблер используют для анализа программы (или её части), исходный текст которой неизвестен — с целью модификации, копирования или взлома. ru.wikipedia.org Реже — для поиска ошибок (багов) в программах и компиляторах, а также для анализа и оптимизации создаваемого компилятором машинного кода. ru.wikipedia.org