でありcortex-m3サポートthumb2は可変長命令ですが、最初から始めて、可変長命令セットを逆アセンブルすることはできません。簡単に同期が取れなくなり、出力がゴミになって永遠に残ることがあります。この場合はそうではないかもしれませんが、エラーが発生することが予想されます。ディスアセンブラを混乱させるような項目を追加することも可能です。あなたはここで多くのデータを持つことができ、またはそれは、コード、または誰が他に何を知っているを圧縮することができる
も...
単語の最初のチャンクのCortex-Mは、ベクタテーブルではありませんので、このコードは何ですか? gnuツールを使ったやり方で出力を調べると、実際のコードと同じようには見えないので、おそらく暗号化や圧縮などのように見えます。スタックフレームが構築されているのを見て、リンクレジスタを含むポップ(ldmia)で終わっている関数があります。その後、いくつかの静的な単語があると、次の関数の開始点のように見えますか?コンパイルされたコードはすべてではないかもしれませんが、コンパイルされたコードのように見えるものがあります。
ファームウェアをハックしようとしている場合は、これがどのように/どこにロードされているか把握し、命令セットシミュレータを作成/使用する必要があります。しかし、ベクトルテーブルがなくても、楽しい時間を過ごせます。あなたの解体をした
方法は、あなたは、アドレスコンテンツ
S123110001BE8110204D5401BE96102452...
0x1100 : 0x01BE
0x1102 : 0x8110
0x1104 : 0x204D
0x1108 : 0x5401
0x110C : 0xBE96
0x110E : 0x1024
を失ったように、おそらくそれかは、あなたがそのSRECを取り、プログラム作成することができ
0x1100 : 0xBE01
0x1102 : 0x1081
をbyteswapped:
を
.hword 0xbe01
.hword 0x1081
項目の連続したアドレス範囲ごとに1つ、アドレスジャンプが新しい項目を開始するときファイルを作成し、各セクションの開始アドレスをカバーするリンカスクリプトを作成し、アセンブルして_startラベルを作成し、スクリプトとリンクして、あなたが解体できるエルフを持っていれば、それでも問題はあると思いますが、相対的なアドレッシングは意味があり、絶対的なアドレッシングになります。
はまた、それが本当であることがあることを前提とする理由がないと仮定すると
S903189351
あなたのエントリポイントに注意してください。
[リバースエンジニアリング](http://reverseengineering.stackexchange.com/)サイトでこれを尋ねます –