.NET 元数据解密!

Each metadata table holds information about the elements of your program. For example, one metadata table describes the classes in your code, another table describes the fields, and so on.
Each row of each metadata table is uniquely identified in the MSIL portion of the PE file by a metadata token. Metadata tokens are conceptually similar to pointers, persisted in MSIL, that reference a particular metadata table.

.method public hidebysig static int32 Main() cil managed

{

.entrypoint

// Code size 36 (0x24)

.maxstack 3

.locals init ([0] int32 ValueOne,

[1] int32 ValueTwo,

[2] int32 CS$1$0000)

IL_0000: nop

IL_0001: ldc.i4.s 10

IL_0003: stloc.0

IL_0004: ldc.i4.s 20

IL_0006: stloc.1

IL_0007: ldstr "The Value is: {0}"

IL_000c: ldloc.0

IL_000d: ldloc.1

IL_000e: call int32 MyApp::Add(int32,

int32)

IL_0013: box [mscorlib]System.Int32

IL_0018: call void [mscorlib]System.Console::WriteLine(string,

object)

IL_001d: nop

IL_001e: ldc.i4.0

IL_001f: stloc.2

IL_0020: br.s IL_0022

IL_0022: ldloc.2

IL_0023: ret

} // end of method MyApp::Main

 

posted @ 2008-06-10 14:38  许晓光  阅读(355)  评论(0编辑  收藏  举报