首页
论坛
课程
招聘
dotNetSafe
雪    币: 19
活跃值: 活跃值 (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
19
回帖
139
粉丝
0

[.NET平台] [原创].NET IL语言直接操作线性地址。

2009-11-17 17:42 5143

[.NET平台] [原创].NET IL语言直接操作线性地址。

2009-11-17 17:42
5143
偶然间发现的, 原本是想用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
}


[看雪官方培训]《安卓高级研修班(网课)》9月班开始招生!挑战极限、工资翻倍!

最新回复 (2)
dreamzgj
雪    币: 1108
活跃值: 活跃值 (10)
能力值: ( LV7,RANK:100 )
在线值:
发帖
24
回帖
413
粉丝
0
dreamzgj 活跃值 2 2009-11-17 18:01
2
0
先占着沙发在学习

```````````````````
用IL直接把地址赋给指针,然后取指针的值
学习啦!!呵呵,蛮有意思的!
tease
雪    币: 86
活跃值: 活跃值 (10)
能力值: ( LV3,RANK:20 )
在线值:
发帖
13
回帖
336
粉丝
0
tease 活跃值 2009-11-17 19:56
3
0
这样也行?!!!学习了。
游客
登录 | 注册 方可回帖
返回