2010-05-07 5 views
0

Я ищу (желательно бесплатный) инструмент, который может создать «правильный» список разборки из (не. NET) файла PE Windows (* .exe или * .dll).Диссобатор Windows: поиск инструмента

Важное требование: должно быть возможно запустить листинг через ассемблер окон (nasm, masm или что-то еще) и снова получить рабочий exe (не обязательно идентичный оригиналу, но он должен вести себя одинаково).

Предполагаемое использование добавляет новые подпрограммы в существующий код, когда источник недоступен.

В идеале, инструмент должен быть в состоянии обнаружить границы функции/сегмента, вызовы API, а также создавать собственные метки для прыжков (я могу жить без меток для петель/скачек, хотя, но обнаружение граничной функции будет хорошо), и сохранить программные ресурсы/сегменты.

Я уже знаю IdaPRO (не бесплатно), OllyDBG (полезный для хакера на месте, не генерирует листинг, AFAIK), ndisasm (выход не подходит для ассемблера), dumpbin (полезный, но AFAIK, выход не подходит для ассемблера) и «proxy dll».

Идеи? Или, может быть, есть книга/учебник, в котором объясняется какой-то альтернативный подход?

ответ

1

Вы говорите, что знаете IdaPRO, но знаете ли вы об IdaFree?

+0

Вы говорите о версии бесплатной версии IDA PRO 4.9 или о каком-то другом программном обеспечении? – SigTerm

+0

Нет, это тот, о котором я говорю. –

+0

Не решение, которое я искал, но я буду отмечать его как принятое. – SigTerm

0

Я не уверен, что он делает именно то, что вы хотите, но попробовали ли вы PEiD?

+0

Похоже, он не делает то, что я хочу. PEiD дает вам много информации о файле PE, но не позволяет разделить его и превратить в кучу списков asm. Есть встроенный дизассемблер, конечно, но похоже, что это не совсем то, что я искал ... – SigTerm

2

Кроме того, проверьте Масло. Это довольно аккуратное приложение и очень интуитивно понятное. Вы можете разобрать и изменить hex. Идеально подходит для небольших и средних проектов.

+0

Вы имеете в виду OllyDbg? Я согласен, это здорово. Даже позволяет вводить новые инструкции и сохранять двоичные файлы ... если вы занимаетесь такими вещами. – Eric