内容

逆コンパイル

以下の逆コンパイルのオプションが利用可能です:

VB Decompiler 逆コンパイルオプション

デバッグ命令を表示 オプションは、クラシック Visual Basic の P コード専用であり、セマンティック ロードなしで関数やコマンドを表示することもできます。これは、Visual Basic のコンパイラとデバッガの内部目的のために設計されていますが、バイナリ ファイルに存在します。 これが分析に役立つことはほとんどありませんが、調査中のプログラムの最も完全な全体像を作成できます。 ほとんどの場合、このオプションを無効にすることをお勧めします。

If ... End Ifブロックを処理 (ネイティブコード) (ネイティブ コード) オプションは、プロシージャ内の条件付きジャンプを If...End If ブロックに変換するように設計されています。 逆コンパイラが特定のプロシージャを誤って処理するというまれなケースにのみ、このオプションを無効にすることをお勧めします。 それ以外の状況では、この機能を常に有効にする必要があります。

'Else'ブロックを処理は、前のオプションの操作を改善します。 逆コンパイラは、ヒューリスティックを使用して、条件付き Else 演算子を、ネストされた If...End If ブロックおよび GoTo 演算子から区別しようとします。 残念ながら、場合によってはこの機能が正しく動作しない場合があるため、この機能を手動で無効にできるようにしました。 ほとんどの場合、前のオプションと同様に、これを有効にする必要があります。

高速逆コンパイルモードが有効になっている場合、ユーザーが特定のプロシージャを開いたときにのみコードが逆コンパイルされます。 これにより、逆コンパイルされたコードの品質にいくつかの制限が課されます。 この場合、コンパイラによってバイナリ ファイルに明示的に残されていない限り、逆コンパイラは、特定のプロシージャまたは関数のプロトタイプを知ることはできません。 これらの目的のために、各プロシージャのコードのヒューリスティック分析が使用され、それに基づいてプロトタイプが生成されます。 このプロトタイプは、コード内で処理される引数の数と、対象のプロシージャが何かを返すかどうか (つまり、関数として機能するかどうか) についての仮定に基づいています。

残念ながら、完全な逆コンパイルには時間がかかり、後でその場でオプションを変更することができないため、高速逆コンパイル モードを無効にすることが常に便利であるとは限りません。 ここで、プロトタイプの分析オプションが役に立ちます。 高速逆コンパイルを有効にすると、マシンコードのみに依存した表面レベルのヒューリスティック分析が可能になり、より高速に実行され、将来的にその場でオプションを変更できる可能性が残ります。

アドレスを追加オプションは、コードを分析する場合に非常に役立ちます。 逆コンパイルされた各行の左側に仮想アドレスが追加されるため、逆アセンブラ または HEXエディター で、どのマシンまたは疑似コードが逆コンパイルされたコードに対応するかを常に確認できるようになります。 アドレスを知っていると、バイナリ ファイル内の変更が必要なコードの特定の部分を見つけるのも簡単になります。

このオプションは、取得したコードを深く調査する予定がなく、結果をプロジェクトに保存してプログラミング言語 IDE で直接開くことが目的である場合にのみ無効にしてください。 また、このオプションを無効にすると、コンテキスト メニューを右クリックして 逆アセンブラにコピー を選択して、逆コンパイルされたコードと逆アセンブルされたコードを結合する機能が失われます。 アドレスがわからないと、逆コンパイラーはコードをマージできません。

VB Decompiler 逆アセンブラにコピーする

VB Decompiler 逆アセンブルおよび逆コンパイルされたコード



Main     News     Products     Documentation     Articles     Download     Order now     About us    

Privacy policy