gcc-arm-none-eabi disassembilieren?

Du hast Probleme mit Deinem eMail-Programm, Webbrowser oder Textprogramm? Dein Lieblingsprogramm streikt?
Antworten
Joe58

gcc-arm-none-eabi disassembilieren?

Beitrag von Joe58 » 29.04.2017 13:26:53

Hallo Liebe Community,

ich möchte ganz gerne den ersten 512 Byte großen Sector von mein Tablet in Assembler zurück disassembilieren, Edit: das ist falsch:
'dieser Bereich ist der MBR'
und dieser zeigt mir dann wo ucl, ist ein Algoritmus der mit dann das Archiv meines U-Boot Bootloaders entpackt und mehr Strings zu tage bringt.

Habe nun also gcc-arm-none-eabi heruntergeladen, welcher Bare Metal Code compiliert und kann somit non-efl (also die Binaries ohne EFL Kopf) erhalten, Edit: das ist ebenfalls falsch:
'so wie mein MBR.'
Weiß jemand wie ich das Paket gcc-arm-none-eabi benutze um eine bestehende Bare Metal Code für mein ARM Cortex A9 in Assemblersprache zurück entwickle?? Reverse engineering??

Hier ist noch die Bootloader.img von meinem Tablet: https://www.dropbox.com/s/3nehxk8udwqks ... r.img?dl=0

Ich brauche den Edit: das ist ebenfalls falsch:
'MBR'
in Assembler Sprache, um zu sehen wo ucl ist der das Edit: ist falsch es gibt kein Archiv sondern eine komprimierte Binary wo U-Boot ist:
'Archiv'
wo U-Boot drin ist, ist. Um dann U-Boot mit einem neueren U-Boot für mein Tablet zu ersetzten.

Danke für eure Hilfe,

mit freundlichen Grüßen,

Joe58
Zuletzt geändert von Joe58 am 23.09.2017 21:28:23, insgesamt 6-mal geändert.

cosmac
Beiträge: 4573
Registriert: 28.03.2005 22:24:30

Re: gcc-arm-none-eabi disassembilieren?

Beitrag von cosmac » 29.04.2017 17:28:59

hi,

einen ersten Überblick (z.B. UCL ab Adresse 0x8000) liefert:

Code: Alles auswählen

hexdump -C bootloader.img | more
einen Disassembler gibt's im Paket Debianbinutils-arm-none-eabi. Das sollte mit dem gcc zusammen automatisch installiert worden sein. Damit kannst du so anfangen:

Code: Alles auswählen

arm-none-eabi-objdump -D -m arm -b binary bootloader.img | more
evt. gibt es ein besseres Ergebnis, wenn du die Optionen -m und -M genauer an deinen Prozessor anpasst. objdump hat noch jede Menge mehr Optionen, vielleicht kannst du damit noch mehr raus holen. Aber es wird nie etwas raus kommen, das du wieder übersetzen kannst...
Beware of programmers who carry screwdrivers.

Joe58

Re: gcc-arm-none-eabi disassembilieren?

Beitrag von Joe58 » 29.04.2017 17:58:56

Okay, ich bedanke mich herzlich für deine Antwort, mir geht es insbesondere darum das Programm zu analysieren und zu sehen wo jetzt das Archiv ist, wenn ich dann erstmal genug Kenntnisse habe, kann ich den MBR mir ja so ziemlich nach programmieren/implementieren. MBR wird bestimmt sogut wie 100% sein, und wenige Änderungen brauchen, aber bei dem anderen Rest werde ich U-Boot durch open source U-Boot ersetzten.

Nochmals danke, für deine Antwort. :)

:THX:

Joe58

Re: gcc-arm-none-eabi disassembilieren?

Beitrag von Joe58 » 29.04.2017 19:02:07

Das Paket binutlis-arm-none-eabi war bereits installiert, aber die Ausführbaren Dateien waren nicht im /usr/bin --> habe mein Cross Compiler in /usr/bin intigriert und diese dann gelöscht, und jetzt geht es, super. :)

Joe58

Joe58

Re: gcc-arm-none-eabi disassembilieren?

Beitrag von Joe58 » 29.04.2017 19:23:31

Das alles ist falsch:
'Habe den Bootsector erstmal raus genommen und jetzt bisschen den Kopf kürzer gemacht:

Code: Alles auswählen

Hitachi SH big-endian COFF object, not stripped
Hitachi SH big-endian COFF executable, stripped
SysEx File -
Mal sehen ob dann ein Archiv kommt. :mrgreen:'
Es gibt kein Archiv, es gibt "nur" eine komprimierte Binary 0x8000

;)
Zuletzt geändert von Joe58 am 23.09.2017 21:24:27, insgesamt 2-mal geändert.

Antworten