Jump to content

    
Sign in to follow this  
aleksis33

перевод ассемблерного кода на язык C

Recommended Posts

Требуется создать компилируемый С код на основе дизассемблированного слитого с STM32F103.

Есть желающие взяться?

Код приложен, там большая часть таблицы.

 

Asm.rar

Share this post


Link to post
Share on other sites
1 час назад, aleksis33 сказал:

Требуется создать компилируемый С код на основе дизассемблированного слитого с STM32F103.

Есть желающие взяться?

Сколько денех дадите?

И можно ли использовать в работе си-шный оператор asm()   :wink:

Цитата

Код приложен, там большая часть таблицы.

Ну да - или неправильно дизассемблировали....

Share this post


Link to post
Share on other sites
1 час назад, aleksis33 сказал:

Код приложен, там большая часть таблицы.

Asm.rar

Глянул. Можете смело отправлять сей "код" в корзину.

 

PS: И на будущее: В дизассемблировании самое главное - не уметь запустить IDA, а изучить систему команд ядра.

Share this post


Link to post
Share on other sites
1 hour ago, aleksis33 said:

Требуется создать компилируемый С код на основе дизассемблированного слитого с STM32F103.

Есть желающие взяться?

Код приложен, там большая часть таблицы.

 

Asm.rar

Может проще, быстрее и дешевле новый код на Си написать? Что он (код) делать должен известно?

Или там какой-то уникальный, никому не известный алгоритм?

Share this post


Link to post
Share on other sites
2 часа назад, aleksis33 сказал:

Есть желающие взяться?

Выложите исходник - бинарник кода. И, поясните, как получили сам бинарник (hex). Возможно, что это зашифрованный загружаемый код или фрагмент кода. 

Share this post


Link to post
Share on other sites
33 minutes ago, bzx said:

Выложите исходник - бинарник кода. И, поясните, как получили сам бинарник (hex). Возможно, что это зашифрованный загружаемый код или фрагмент кода. 

Исходник весь выложен. Там добавлять нечего.  
Программа примитивная. 
Похоже на STM32F105RCT или STM32F103RCT
Вангую, это - https://ru.aliexpress.com/item/NBM280-multi-function-pulse-gas-protection-control-panel-2PCS/32828588949.html

ТС-у, больше 300 евро исполнителю не предлагать. Здесь на пару недель работы студенту. 

Share this post


Link to post
Share on other sites
25 минут назад, AlexandrY сказал:

Программа примитивная. 
Похоже на STM32F105RCT или STM32F103RCT

Автор, судя по всему, дизассемблировал фрагмент swap-файла своей винды, а Вы по нему уже и МК и даже девайс определили???! :shok:

Снимаю шляпу перед вашим мастерством!:hi:  

:biggrin::biggrin::biggrin::biggrin::biggrin:

Share this post


Link to post
Share on other sites

За 300 евро считайте что договорились...

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

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

 

work.rar

Share this post


Link to post
Share on other sites
20 hours ago, AlexandrY said:

......

ТС-у, больше 300 евро исполнителю не предлагать. Здесь на пару недель работы студенту. 

А лучше сразу на цепь к батарее привязать, пусть за еду работает.

Share this post


Link to post
Share on other sites
10 минут назад, aleksis33 сказал:

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

Интересно - как Вы можете утверждать что он правильно дизассемблирован, даже не зная системы команд Cortex-M3???

Share this post


Link to post
Share on other sites
17 minutes ago, jcxz said:

Интересно - как Вы можете утверждать что он правильно дизассемблирован, даже не зная системы команд Cortex-M3???

Он обратно компилируется и работает на реальном девайсе.

Share this post


Link to post
Share on other sites
24 минуты назад, aleksis33 сказал:

Он обратно компилируется и работает на реальном девайсе.

И что? Я могу всю область кода объявить как массив констант (с содержимым == опкодам), скомпилить это и это тоже будет работать на реальном девайсе.

Тогда видимо Вам вполне подойдёт исходник на си состоящий из одного большого массива:

char const code[] = {... /* опкоды */} @ ".text";

Он тоже будет прекрасно компилироваться и работать на вашем девайсе. Советую исполнителю, который подпишется на эту работу, именно так и сделать  :biggrin:

Share this post


Link to post
Share on other sites

Тогда в качестве исходного файла к задаче будем считать бинарник приложенный ранее.

Тип процессора также обозначен. За char const code[] и прочие фокусы могу заплатить 1 руб.

Нужна программа которая хорошо структурирована, в которой понятен алгоритм работы,

и которую можно дальше сопровождать.

Share this post


Link to post
Share on other sites
1 час назад, aleksis33 сказал:

Нужна программа которая хорошо структурирована, в которой понятен алгоритм работы,

и которую можно дальше сопровождать.

Вы так и не ответили на вопрос - как Вы получили прошивку для STM32F103? Можете шепнуть на ушко...

Share this post


Link to post
Share on other sites

для ТС:

буквально на днях NSA открыла свою ghidra

это дизассемблер и декомпилятор(!), предназначавшийся для их внутреннего использования. очень крутой

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this