偶然间发现的, 原本是想用IL直接到线性地址去取数值,没想到真的可以。IL指令是我HEX手动改的。  挺有意思的,放出来和兄弟们分享下。

以下这段指令输出PE 文件的头的4个字节的值。 

代码:
.method /*06000001*/ private hidebysig static 
        int32  SquarePtrParam() cil managed
// SIG: 00 00 08
{
  // 方法在 RVA 0x2050 处开始
  // 代码大小       18 (0x12)
  .maxstack  2
  .locals /*11000001*/ init ([0] int32 t,
           [1] int32* p,
           [2] int32 CS$1$0000)
  IL_0000:  /* 00   |                  */ nop
  IL_0001:  /* 20   | 00004000         */ ldc.i4     0x400000
  IL_0006:  /* E0   |                  */ conv.u
  IL_0007:  /* 0B   |                  */ stloc.1
  IL_0008:  /* 07   |                  */ ldloc.1
  IL_0009:  /* 4A   |                  */ ldind.i4
  IL_000a:  /* 0C   |                  */ stloc.2
  IL_000b:  /* 08   |                  */ ldloc.2
  IL_000c:  /* 00   |                  */ nop
  IL_000d:  /* 00   |                  */ nop
  IL_000e:  /* 00   |                  */ nop
  IL_000f:  /* 00   |                  */ nop
  IL_0010:  /* 00   |                  */ nop
  IL_0011:  /* 2A   |                  */ ret
}