Как да конвертирате машинен код в четимо асемблиране (без IDA)

Трябва да конвертирам много шестнадесетичен машинен код в асемблиране. Използвам безплатната версия на IDA. Убеден съм, че може да направи това, но всеки път, когато въвеждам машинния код във формати raw, bin, hex, exe, dmp, той се отваря така:

seg000:00010  32 34 35 32 20 33 31 35  30 20 65...      2452 3150 e0ff 3

Но аз искам нещо като:

seg000:00010   2452 3150 e0ff 3...moreHex           f..b...%..3k..

Тези въпроси са близки, но не достатъчно конкретни за мен. Как да конвертирате машинен код в код за асемблиране?
Как мога да конвертирам машинен код Intel 80386 в асемблиране Език?


person Ponyisasquare    schedule 05.09.2015    source източник
comment
Вие въвеждате ли байтовете в IDA? Или зареждане на файл? Нямате нужда от IDA само за да разглобявате неща. Ако имате обикновен Windows exe, можете да използвате objdump, наличен в Linux с apt-get binutils и в Windows с cygwin. Ако имате необработен bin файл с x86 код, можете да използвате ndisasm, наличен в Linux с apt-get ndisasm или в Windows с cygwin.   -  person mattypiper    schedule 05.09.2015
comment
Примерният изход, който искате, не е асемблиране, така че въпросът ви е неясен.   -  person Dwayne Towell    schedule 05.09.2015


Отговори (1)


Въпросът ви е неясен и не знам каква операционна система използвате, но ще направя всичко възможно.

Изтеглете шестнадесетичен редактор за Windows. Добър безплатен инструмент е HxD.

Създайте нов файл и въведете вашите байтове в лявата област. ASCII представянето ще се покаже от дясната страна, което може или не може да означава нищо. Запазете файла си като нещо като code.bin. След това отворете този файл в IDA Free и посочете „Binary File“ като тип на файла и изберете типа процесор, който предполагам, че ще бъде един от вариантите на Intel x86, напр. Intel Pentium 4. След като файлът бъде зареден, IDA ще спечели наистина не правя нищо, тъй като това е необработен файл, така че трябва да посочите къде е кодът, като изберете адрес 0 и след това натиснете клавиша "c", за да конвертирате байтовете в код.

person mattypiper    schedule 05.09.2015
comment
Добър отговор. Всъщност имам ли нужда от ЦЯЛАТА програма? Какъв е недостатъкът на показването само на една функция? Извинете невежеството ми, аз съм доста нов в тези неща от ниско ниво. (Преди се опитвах да го запазя като bin с текстов редактор) - person Ponyisasquare; 05.09.2015