декомпілятор приймає в якості вхідних виконуваний файл, і намагається створити високий рівень, компільований, можливо, навіть у супроводі вихідного файлу, що робить те ж саме.
Тому протилежність компілятор, який приймає вихідний файл і робить виконуваний файл. Тим не менш, загальна декомпілятор НЕ розкривати кожну дію декомпілятор, а це перетворює вхідний програми до тих пір, результат не вихідний код високого рівня. Це, отже, не буде відтворити початковий файл; ні, ймовірно, нічого подібного.
Це не має значення, якщо виконуваний файл має символи чи ні, був складений з будь-якого конкретного мови. (Проте, декларативні мови як ML не розглядаються.)
Метою є створення пере направляється декомпілятор (тобто той, який може декомпілювати файли різних типів машинного коду за допомогою скромних зусиль, наприклад, X86-вікна, SPARC Solaris-і т.д.). Було також призначено, щоб бути модульним, так що різні частини декомпілятор можна замінити експериментальних модулів. Він був призначений для зрештою стати інтерактивним, ла IDA Pro, тому що деякі речі (не тільки імена змінних і коментарі, хоча ці, очевидно, дуже важливо) вимагають експертної втручання. Будь належить інтерактивність в декомпілятор або в окремий інструмент, залишається неясним.
При перетворенні семантики окремих інструкцій, і, використовуючи потужні методи, такі, як Static Single аналізу потоку даних Призначення, Бумеранг має бути (в основному) залежить від точного поведінки компілятора, що сталося бути використані. Оптимізація не повинні впливати на результати. Отже, мета взагалі декомпілятор.
Обмеження:
· У випадку, якщо ви хочете, щоб спробувати Бумеранг, як це в декомпілятор (на відміну від експериментування з ним, або його поліпшення), бути в курсі його серйозних обмежень. Станом на початок 2004 року, Бумеранг буде тільки декомпілювати X86 (Linux / X86 або Windows PE), SPARC Solaris (або імовірно на базі Linux / SPARC), або Power PC програм (/ X Mac OS Linux / PPC або). Зокрема, зверніть увагу, що це не буде декомпілювати програми DOS або NE (Windows 3.1). Додавання ще одного процесора великий (кілька місяців) зобов'язання.
· Це буде генерувати тільки C, а не C ++. Це буде декомпілювати C ++ програми, звичайно, (і будь-які види програм, у тому числі асемблера). Ви можете бути в змозі передати редагувати деякі програми C ++ в корисну C ++ коду. Для MSVC складених програм, в даний час у вас є, щоб spoonfeed декомпілятор і сказати йому, що є один параметр регістр (thiscall угоду про виклики). Перемикачі впоратися з цим складні; см за допомогою -sF перемикач.
Дані програми:
Версія: alpha 0.3
Дата завантаження: 3 Jun 15
Ліцензія: Безкоштовно
Популярність: 182
Коментар не знайдено