Доброго времени суток!
Нужно дизассемблировать исполняемый, нативный файл в исходный код какого-нибудь ассемблера, чтоб можно было потом скомпилировать его. Пробовал objdump(круто, что он Intel синтаксис знает), но он выдает свои комментарии, адрес где комманда и т.д., а как это убрать я не нашел.
Дизассемблирование
Модератор: Модераторы разделов
-
- Администратор
- Сообщения: 13939
- Статус: oel ngati kameie
- ОС: GNU
Re: Дизассемблирование
grep/sed/awk/etc?
Писать безграмотно - значит посягать на время людей, к которым мы адресуемся, а потому совершенно недопустимо в правильно организованном обществе. © Щерба Л. В., 1957
при сбоях форума см.блог
при сбоях форума см.блог
-
- Сообщения: 812
- ОС: Slackware64
Re: Дизассемблирование
Ну да, только учитывая что адреса разные, комментарии на адреса не похожи, короче grep'нуть никак. Да и потом, мне код компилируемый нужен, а там допустим объявления секций не через ".section" и дальше код, а опять-же комментарием.
nm не дизассемблер, он просто символы читает, коих в strip'нутом фале и в помине нет.
-
- Администратор
- Сообщения: 13939
- Статус: oel ngati kameie
- ОС: GNU
Re: Дизассемблирование
BratSinot
да, правильно формализовать искомое — непростая задача·
но гораздо чаще выполнимая, нежели невыполнимая·
да, правильно формализовать искомое — непростая задача·
но гораздо чаще выполнимая, нежели невыполнимая·
Писать безграмотно - значит посягать на время людей, к которым мы адресуемся, а потому совершенно недопустимо в правильно организованном обществе. © Щерба Л. В., 1957
при сбоях форума см.блог
при сбоях форума см.блог
-
- Бывший модератор
- Сообщения: 8259
- Статус: Маньяк
- ОС: Arch, Fedora, Ubuntu
Re: Дизассемблирование
BratSinot
Лучше IDA Pro ещё, кажется, ничего не придумали. У него есть версия для Linux и старые версии, кажется, бесплатны.
Лучше IDA Pro ещё, кажется, ничего не придумали. У него есть версия для Linux и старые версии, кажется, бесплатны.
-
- Сообщения: 1319
Re: Дизассемблирование
старые полные версии только под nt, новые demo-версии для gnu/macos/nt кастрированы чуть более чем полностью (80x86 & arm). а новые full-версии для физ.лица даже купить-то не так уж и просто.
:wq
-
- Сообщения: 812
- ОС: Slackware64
-
- Сообщения: 1445
- ОС: Debian Squeeze
Re: Дизассемблирование
Пока лучше всего таки IDA. Суть в том, что дизассемблирование - не такая простая штука. Так вот, интерактивность IDA дает в этом плане огромный плюс: в процессе вы можете переименовывать метки, переделывать числа в смещения и наоборот и прочие преобразования, которые были бы полезны для получения читабельного и компилябельного кода.
Из свободных есть lida и bastard, но оба на деле малопригодны.
Если осилите - выкладывайте, будет интересно посмотреть. Если всерьез решили заняться - советую посмотреть на distorm - годный движок дизассемблера (то есть, умеет просто парсить последовательный блок комманд и выдает удобно обрабатываемую структуру). Если займетесь и у меня будет свободное время - помогу.