134 lines
3.3 KiB
Plaintext
134 lines
3.3 KiB
Plaintext
|
.assembly 'goto' { }
|
||
|
.assembly extern 'mscorlib' {
|
||
|
.ver 1:0:5000:0
|
||
|
.publickeytoken = ( b7 7a 5c 56 19 34 e0 89 )
|
||
|
}
|
||
|
.assembly extern 'system.drawing' {
|
||
|
.ver 1:0:5000:0
|
||
|
.publickeytoken = ( b0 3f 5f 7f 11 d5 0a 3a )
|
||
|
}
|
||
|
.class public 'A'
|
||
|
extends [mscorlib]System.Object
|
||
|
{
|
||
|
.method hidebysig public static void 'Main'() {
|
||
|
.entrypoint
|
||
|
.locals init ([0]class [mscorlib]System.Collections.ArrayList 't0')
|
||
|
newobj instance void [mscorlib]System.Collections.ArrayList::.ctor()
|
||
|
stloc 0 // x
|
||
|
.locals init ([1]string 't1')
|
||
|
.locals init ([2]class [mscorlib]System.Collections.IEnumerator 't2')
|
||
|
ldloc 0 // x
|
||
|
callvirt instance class [mscorlib]System.Collections.IEnumerator [mscorlib]System.Collections.ArrayList::'GetEnumerator'()
|
||
|
stloc 2 // t2
|
||
|
.try {
|
||
|
br $2
|
||
|
$1:
|
||
|
ldloc 2 // t2
|
||
|
callvirt instance object [mscorlib]System.Collections.IEnumerator::'get_Current'()
|
||
|
castclass string
|
||
|
stloc 1 // a
|
||
|
ldloc 1 // a
|
||
|
call void [mscorlib]System.Console::'WriteLine'(string)
|
||
|
leave $6
|
||
|
$2:
|
||
|
ldloc 2 // t2
|
||
|
callvirt instance bool [mscorlib]System.Collections.IEnumerator::'MoveNext'()
|
||
|
brtrue $1
|
||
|
$3:
|
||
|
leave $5
|
||
|
}
|
||
|
finally {
|
||
|
ldloc 2 // t2
|
||
|
.locals init ([3]class [mscorlib]System.IDisposable 't3')
|
||
|
isinst class [mscorlib]System.IDisposable
|
||
|
stloc 3 // t3
|
||
|
ldloc 3 // t3
|
||
|
brfalse $7
|
||
|
ldloc 3 // t3
|
||
|
callvirt instance void [mscorlib]System.IDisposable::'Dispose'()
|
||
|
$7:
|
||
|
endfinally
|
||
|
} // end .try
|
||
|
$5:
|
||
|
$4:
|
||
|
$6:
|
||
|
ldstr "done"
|
||
|
call void [mscorlib]System.Console::'WriteLine'(string)
|
||
|
.locals init ([4]int32 't4')
|
||
|
.locals init ([5]class [mscorlib]System.Collections.IEnumerator 't5')
|
||
|
ldloc 0 // x
|
||
|
callvirt instance class [mscorlib]System.Collections.IEnumerator [mscorlib]System.Collections.ArrayList::'GetEnumerator'()
|
||
|
stloc 5 // t5
|
||
|
.try {
|
||
|
br $9
|
||
|
$8:
|
||
|
ldloc 5 // t5
|
||
|
callvirt instance object [mscorlib]System.Collections.IEnumerator::'get_Current'()
|
||
|
unbox int32
|
||
|
ldind.i4
|
||
|
stloc 4 // a
|
||
|
$9:
|
||
|
ldloc 5 // t5
|
||
|
callvirt instance bool [mscorlib]System.Collections.IEnumerator::'MoveNext'()
|
||
|
brtrue $8
|
||
|
$10:
|
||
|
leave $12
|
||
|
}
|
||
|
finally {
|
||
|
ldloc 5 // t5
|
||
|
.locals init ([6]class [mscorlib]System.IDisposable 't6')
|
||
|
isinst class [mscorlib]System.IDisposable
|
||
|
stloc 6 // t6
|
||
|
ldloc 6 // t6
|
||
|
brfalse $13
|
||
|
ldloc 6 // t6
|
||
|
callvirt instance void [mscorlib]System.IDisposable::'Dispose'()
|
||
|
$13:
|
||
|
endfinally
|
||
|
} // end .try
|
||
|
$12:
|
||
|
$11:
|
||
|
.locals init ([7]value class [system.drawing]System.Drawing.Point[] 't7')
|
||
|
ldc.i4 5
|
||
|
newarr value class [system.drawing]System.Drawing.Point
|
||
|
stloc 7 // y
|
||
|
.locals init ([8]value class [system.drawing]System.Drawing.Point 't8')
|
||
|
.locals init ([9]int32 't9')
|
||
|
.locals init ([10]value class [system.drawing]System.Drawing.Point[] 't10')
|
||
|
ldloc 7 // y
|
||
|
stloc 10 // t10
|
||
|
ldc.i4.0
|
||
|
stloc 9 // t9
|
||
|
br $17
|
||
|
$14:
|
||
|
ldloc 10 // t10
|
||
|
ldloc 9 // t9
|
||
|
ldelema value class [system.drawing]System.Drawing.Point
|
||
|
ldobj value class [system.drawing]System.Drawing.Point
|
||
|
stloc 8 // a
|
||
|
ldloca 8 // a
|
||
|
call instance int32 [system.drawing]System.Drawing.Point::'get_X'()
|
||
|
call void [mscorlib]System.Console::'WriteLine'(int32)
|
||
|
$15:
|
||
|
ldloc 9 // t9
|
||
|
ldc.i4.1
|
||
|
add
|
||
|
stloc 9 // t9
|
||
|
$17:
|
||
|
ldloc 9 // t9
|
||
|
ldloc 10 // t10
|
||
|
ldlen
|
||
|
conv.i4
|
||
|
blt $14
|
||
|
$16:
|
||
|
ret
|
||
|
.maxstack 2
|
||
|
} // end of method A.Main
|
||
|
.method hidebysig specialname rtspecialname public void .ctor() {
|
||
|
ldarg.0
|
||
|
call instance void [mscorlib]System.Object::.ctor()
|
||
|
ret
|
||
|
.maxstack 1
|
||
|
} // end of constructor A.A
|
||
|
} // end of class A
|