Xl Туполевские чтения : всероссийская (с международным участием) молодежная научная конференция. Казань, 8-10 октября 2003 г., тезисы докладов. Т. 3
Реализации декодировании двоичного машинного кода команд на язык ассемблера Д.Ю. Васильев Научный руководитель: И.В. Аникин, к.т.н., доцент Ка:1апский государственный технический университет им. А. Н, Туполева Н настоящее время для анализа и обработки исконного двоичного мапшпного кода программ применяется много различных мегодов, одним H i самых важных и широко используемых является преобразование ма шинного кода на язык, понятный для человека (на язык Ассемблера или язык более вг.1с0к0го уровня). Хо1Я, на гекуншй момент существует огромный выбор программно го обеспечения п|1ед11азпаченн010 специально для днзассемблирования, каждый из них обладает рядом недостатком. 1 i рабо ге была н1)оизведена попытка объединения большинства дос- •10ИИС111 сушесгнующих средств дизассемблирования а также исключения их недосгатков. Реализована программа - дизассемблер. Главным ее плюсом являет ся скорость преобразования двоичнош кода,что позволяет дешифровывать об1,емпый код программы досгаточно быстро (сравнимо со скоростью за писи па жесткий диск ПК). Достоинсгвом программы является то, что в ней используется база знаний кодов команд, которую можно постоянно пополнять. Эта система нозволяе! заносить в базу команды с любым количеством (в пределах ра- зумгюго) раз1шчных операндов. 11редусмо|рена возможность расширения алгоритма анализа кода. Анализирующие моду)ш программы Moiyi с легкостью быть перенесены в более обьемные проекты, где дизассемблирование является одной из функций главной программы. Для максима)1ьно1о бысгродействия, для написания программы бьш выбран собсгвешю сам язык Ассемблера, код программы был в дальней шем оптимизирован. Работа нро| раммы-дизассемблера была исследована на реальных программах малого и бо;н,шого объема. В отдельных случаях она показала лучншс результаты, чем существующие про|раммы такого рода. 38
Made with FlippingBook
RkJQdWJsaXNoZXIy MTY0OTYy