dnSpyとは
dnSpyとは、.NETアプリケーションを「解析・デバッグ・編集」できるツールで、アセンブリ(.exeや.dll)からソースコードの編集が可能です。
入手~実行まで
以下のリンクより取得可能です。
Releasesよりzipファイルをダウンロードします。

zipファイルを展開します。

展開されたファイル内のexe実行することでdnSpyが起動します。

使用方法等
メニューバーの「File」-「Open」から、解析対象となるファイルを選択します。
選択すると画面の左側にツリーが表示されます。

画面の見方
画面左のツリーは「Assembly Explorer」という名称で、dnSpyで読み込んだアセンブリの構造がツリー形式で表示されます。

PE(Portable Executable)
Windowsの実行ファイル(.exeや.dll)のフォーマットのことです。
PEノードを開くと、ファイルの構造(ヘッダー情報やセクション)をバイナリレベルで確認できます。
Type References
外部ライブラリのクラスを使用している場合、その型がここにリストアップされます。
ルートノード
読み込んだアセンブリファイルの名前が表示されている部分です。
上記の例では「CaspCrypt.dll」の部分にあたります。
Namespace(名前空間)
アセンブリ内のコードが分類されてるフォルダのようなものです。
「{}」のマークがついている部分にあたります。
.NETのNamespaceは、クラス等を管理する仕組みです。
SystemやSyste.IOのように、usingで利用することが可能です。

クラス
名前空間の中に含まれるものです。
上記の例ではCryptoクラスが選択されていて、右側にソースコードが表示されています。
また、クラスの中には関数(メソッド)や変数(フィールド)が含まれています。
デバッグ機能
dnSpy上で開いたアセンブリはデバッグすることが可能です。
実行時に引数やブレークポイントの設定が可能です。

