Перейти к содержанию
    

Помогите дизассемблировать

Есть программа которая загружается в RAM перед стартом для микропроцессора в виде последовательности hex байт. Boot loader . Программа небольшая. Нужно перевести в код ассемблера. Как это сделать? и возможно ли вообще такое? пробывал IDA PRO безрезультатно. Че то не так сделал наверное. Опыта дизасма нет. С асмом немного знаком. Что можете подсказать?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

coolibin

Просто загрузить область памяти в симуляторе процессора и установить РС на начало.

Среда сама переведёт hex в мнемонический вид (ассемблер).

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

coolibin

Просто загрузить область памяти в симуляторе процессора и установить РС на начало.

Среда сама переведёт hex в мнемонический вид (ассемблер).

где взять симулятор? он есть в IDA? проц Fujitsu

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

coolibin

А что за контроллер-то?

Скорее всего, для него есть бесплатная среда.

Среды нет. А можно как то без симулятора найти начало?

Изменено пользователем coolibin

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

coolibin

Строго говоря, для сферического коня в вакууме (процессора) - никак.

Но у каждого процессора есть особенности. Зная их можно и без стимулятор найти точку входа.

Удобно по таблице векторов прерываний. Она сразу выделятся на общем фоне.

Так что за процессор-то?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Можно конечно. Вы же сами написали, что есть последовательность, которая загружается в RAM. Это могут быть переменные и код. Ищите команду возврата из подпрограммы, бесконечного цикла и т.п. Так сможете выделить потенциальные блоки кода. Ну а дальше дело техники )

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

А в "прямом ли виде" программа загружается? Может там в Bootloader'е криптовальщик какой стоит...

И точка входа - как ее узнать... Да и, как уже говорили, - процессор-то какой :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Есть программа которая загружается в RAM перед стартом для микропроцессора в виде последовательности hex байт. Boot loader . Программа небольшая. Нужно перевести в код ассемблера. Как это сделать?

Как обычно. Ишещь описание на opcode или instruction set этого микропроцессора и по-байтно дизассемблируешь.

Например ARM architecture

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

"Рация на бронетранспортере!" ;)

И что? У Fujitsu были 8-, 16- и 32-битные с собственным ядром, а также с ядром ARM.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

И что? У Fujitsu были 8-, 16- и 32-битные с собственным ядром, а также с ядром ARM.
Именно. А как из процитированного ответа автора темы вы смогли понять, какой именно из них?

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Именно. А как из процитированного ответа автора темы вы смогли понять, какой именно из них?

Никак. К сожалению, я не телепат.

Из того что понял - автор просто не имеет представления как программа превращается в байты прошивки и наоборот.

Я привёл пример как это может выглядеть, ARM был под рукой ;).

А микроконтроллеры Fujitsu теперь Spansion http://www.spansion.com/Products/microcont...es/default.aspx

Плюс сам Fujitsu еще выпускает SoC на ARM.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

проц фуджик F2MC-16FX family, какой именно не знаю

opcode или instruction set я не нашел, но где то видел что совпадает с F2MC-16FL

в IDA есть поддержка F2MC-16FL. по идеи должна дизасмить? или этого мало?

я так понял нужно найти начало программы

могу выложить загрузчик если это поможет.

криптованный или нет. не знаю

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...