@neo thats good to know - thanks.
Also, I just downloaded and installed a trial version of Preemptive Solution's Dotfustcator Pro and I was able to obfuscate my code and when I tried to decompile with ildasm.exe the ildasm crashed hard!
That is an interesting step forward.
ILDASM with no obfuscation
// Microsoft (R) .NET Framework IL Disassembler. Version 1.1.4322.573
// Copyright (C) Microsoft Corporation 1998-2002. All rights reserved.
// PE Header:
// Subsystem: 00000002
// Native entry point address: 00003b2e
// Image base: 11000000
// Section alignment: 00002000
// File alignment: 00000200
// Stack reserve size: 00100000
// Stack commit size: 00001000
// Directories: 00000010
// 0 [0 ] address [size] of Export Directory:
// 3add [4e ] address [size] of Import Directory:
// 4000 [888 ] address [size] of Resource Directory:
// 0 [0 ] address [size] of Exception Directory:
// 0 [0 ] address [size] of Security Directory:
// 6000 [c ] address [size] of Base Relocation Table:
// 0 [0 ] address [size] of Debug Directory:
// 0 [0 ] address [size] of Architecture Specific:
// 0 [0 ] address [size] of Global Pointer:
// 0 [0 ] address [size] of TLS Directory:
// 0 [0 ] address [size] of Load Config Directory:
// 0 [0 ] address [size] of Bound Import Directory:
// 2000 [8 ] address [size] of Import Address Table:
// 0 [0 ] address [size] of Delay Load IAT:
// 2008 [48 ] address [size] of CLR Header:
// Import Address Table
// mscoree.dll
// 00002000 Import Address Table
// 00003b1e Import Name Table
// 0 time date stamp
// 0 Index of first forwarder reference
//
// 0 _CorExeMain
// Delay Load Import Address Table
// No data.
// CLR Header:
// 72 Header Size
// 2 Major Runtime Version
// 0 Minor Runtime Version
// 1 Flags
// 6000004 Entrypoint Token
// 21fc [9f0 ] address [size] of Metadata Directory:
// 2bec [ef1 ] address [size] of Resources Directory:
// 0 [0 ] address [size] of Strong Name Signature:
// 0 [0 ] address [size] of CodeManager Table:
// 0 [0 ] address [size] of VTableFixups Directory:
// 0 [0 ] address [size] of Export Address Table:
// 0 [0 ] address [size] of Precompile Header:
// Code Manager Table:
// default
// Export Address Table Jumps:
// No data.
.assembly extern /*23000001*/ mscorlib
{
.publickeytoken = (B7 7A 5C 56 19 34 E0 89 ) // .z\V.4..
.ver 1:0:5000:0
}
.assembly extern /*23000002*/ Microsoft.VisualBasic
{
.publickeytoken = (B0 3F 5F 7F 11 D5 0A 3A ) // .?_....:
.ver 7:0:5000:0
}
.assembly extern /*23000003*/ System
{
.publickeytoken = (B7 7A 5C 56 19 34 E0 89 ) // .z\V.4..
.ver 1:0:5000:0
}
.assembly extern /*23000004*/ System.Data
{
.publickeytoken = (B7 7A 5C 56 19 34 E0 89 ) // .z\V.4..
.ver 1:0:5000:0
}
.assembly extern /*23000005*/ System.Drawing
{
.publickeytoken = (B0 3F 5F 7F 11 D5 0A 3A ) // .?_....:
.ver 1:0:5000:0
}
.assembly extern /*23000006*/ System.Windows.Forms
{
.publickeytoken = (B7 7A 5C 56 19 34 E0 89 ) // .z\V.4..
.ver 1:0:5000:0
}
.assembly extern /*23000007*/ System.Xml
{
.publickeytoken = (B7 7A 5C 56 19 34 E0 89 ) // .z\V.4..
.ver 1:0:5000:0
}
.assembly /*20000001*/ WindowsApplication1
{
.custom /*0C000001:0A000001*/ instance void [mscorlib/* 23000001 */]System.CLSCompliantAttribute/* 01000001 */::.ctor(bool) /* 0A000001 */ = ( 01 00 01 00 00 )
.custom /*0C000002:0A000003*/ instance void [mscorlib/* 23000001 */]System.Reflection.AssemblyProductAttribute/* 01000003 */::.ctor(string) /* 0A000003 */ = ( 01 00 00 00 00 )
.custom /*0C000003:0A000004*/ instance void [mscorlib/* 23000001 */]System.Reflection.AssemblyTitleAttribute/* 01000004 */::.ctor(string) /* 0A000004 */ = ( 01 00 65 20 4F 62 66 75 73 63 61 74 65 64 20 77 // ..e Obfuscated w
69 74 68 20 44 6F 74 66 75 73 63 61 74 6F 72 20 // ith Dotfuscator
50 72 6F 66 65 73 73 69 6F 6E 61 6C 20 45 76 61 // Professional Eva
6C 75 61 74 69 6F 6E 2E 20 49 6C 6C 65 67 61 6C // luation. Illegal
20 74 6F 20 75 73 65 20 6F 6E 20 73 6F 66 74 77 // to use on softw
61 72 65 20 66 6F 72 20 67 65 6E 65 72 61 6C 20 // are for general
72 65 6C 65 61 73 65 2E 00 00 ) // release...
.custom /*0C000004:0A000005*/ instance void [mscorlib/* 23000001 */]System.Reflection.AssemblyCopyrightAttribute/* 01000005 */::.ctor(string) /* 0A000005 */ = ( 01 00 00 00 00 )
.custom /*0C000005:0A000006*/ instance void [mscorlib/* 23000001 */]System.Reflection.AssemblyTrademarkAttribute/* 01000006 */::.ctor(string) /* 0A000006 */ = ( 01 00 00 00 00 )
.custom /*0C000006:0A000007*/ instance void [mscorlib/* 23000001 */]System.Reflection.AssemblyCompanyAttribute/* 01000007 */::.ctor(string) /* 0A000007 */ = ( 01 00 00 00 00 )
.custom /*0C000007:0A000008*/ instance void [mscorlib/* 23000001 */]System.Reflection.AssemblyDescriptionAttribute/* 01000008 */::.ctor(string) /* 0A000008 */ = ( 01 00 00 00 00 )
.custom /*0C000008:0A000009*/ instance void DotfuscatorAttribute/* 01000009 */::.ctor(string,
bool) /* 0A000009 */ = ( 01 00 15 38 39 35 33 3A 31 3A 32 2E 30 2E 31 34 // ...8953:1:2.0.14
38 32 2E 32 33 33 33 39 01 ) // 82.23339.
.custom /*0C000009:0A000002*/ instance void [mscorlib/* 23000001 */]System.Runtime.InteropServices.GuidAttribute/* 01000002 */::.ctor(string) /* 0A000002 */ = ( 01 00 24 33 45 34 43 46 33 35 41 2D 38 35 37 36 // ..$3E4CF35A-8576
2D 34 33 32 46 2D 41 31 44 44 2D 34 33 43 38 41 // -432F-A1DD-43C8A
33 31 38 31 32 46 36 00 00 ) // 31812F6..
.hash algorithm 0x00008004
.ver 1:0:1525:18434
}
.mresource /*28000001*/ public WindowsApplication1.Form1.resources
{
// WARNING: managed resource file WindowsApplication1.Form1.resources created
}
.module WindowsApplication1.exe
// MVID: {7E9A0643-6CD8-46E2-ABE5-C79688172FA5}
.imagebase 0x11000000
.subsystem 0x00000002
.file alignment 512
.corflags 0x00000001
// Image base: 0x07ab0000
//
// ============== CLASS STRUCTURE DECLARATION ==================
//
.class /*02000002*/ public auto ansi sealed beforefieldinit DotfuscatorAttribute
extends [mscorlib/* 23000001 */]System.Attribute/* 0100000B */
{
} // end of class DotfuscatorAttribute
.namespace WindowsApplication1
{
.class /*02000003*/ public auto ansi Form1
extends [System.Windows.Forms/* 23000006 */]System.Windows.Forms.Form/* 0100000C */
{
} // end of class Form1
} // end of namespace WindowsApplication1
// =============================================================
// =============== GLOBAL FIELDS AND METHODS ===================
// =============================================================
// =============== CLASS MEMBERS DECLARATION ===================
// note that class flags, 'extends' and 'implements' clauses
// are provided here for information only
.class /*02000002*/ public auto ansi sealed beforefieldinit DotfuscatorAttribute
extends [mscorlib/* 23000001 */]System.Attribute/* 0100000B */
{
.custom /*0C00000A:0A00000B*/ instance void [mscorlib/* 23000001 */]System.AttributeUsageAttribute/* 0100000E */::.ctor(valuetype [mscorlib/* 23000001 */]System.AttributeTargets/* 0100000D */) /* 0A00000B */ = ( 01 00 01 00 00 00 00 00 )
.field /*04000001*/ private string a
.field /*04000002*/ private bool b
.method /*06000001*/ public hidebysig specialname rtspecialname
instance void .ctor(string a,
bool b) cil managed
// SIG: 20 02 01 0E 02
{
// Method begins at RVA 0x2050
// Code size 21 (0x15)
.maxstack 2
IL_0000: /* 02 | */ ldarg.0
IL_0001: /* 25 | */ dup
IL_0002: /* 28 | (0A)00000C */ call instance void [mscorlib/* 23000001 */]System.Attribute/* 0100000B */::.ctor() /* 0A00000C */
IL_0007: /* 03 | */ ldarg.1
IL_0008: /* 7D | (04)000001 */ stfld string DotfuscatorAttribute/* 02000002 */::a /* 04000001 */
IL_000d: /* 02 | */ ldarg.0
IL_000e: /* 04 | */ ldarg.2
IL_000f: /* 7D | (04)000002 */ stfld bool DotfuscatorAttribute/* 02000002 */::b /* 04000002 */
IL_0014: /* 2A | */ ret
} // end of method DotfuscatorAttribute::.ctor
.method /*06000002*/ public hidebysig instance string
a() cil managed
// SIG: 20 00 0E
{
// Method begins at RVA 0x2074
// Code size 7 (0x7)
.maxstack 1
IL_0000: /* 02 | */ ldarg.0
IL_0001: /* 7B | (04)000001 */ ldfld string DotfuscatorAttribute/* 02000002 */::a /* 04000001 */
IL_0006: /* 2A | */ ret
} // end of method DotfuscatorAttribute::a
.method /*06000003*/ public hidebysig instance bool
b() cil managed
// SIG: 20 00 02
{
// Method begins at RVA 0x2088
// Code size 7 (0x7)
.maxstack 1
IL_0000: /* 02 | */ ldarg.0
IL_0001: /* 7B | (04)000002 */ ldfld bool DotfuscatorAttribute/* 02000002 */::b /* 04000002 */
IL_0006: /* 2A | */ ret
} // end of method DotfuscatorAttribute::b
.property /*17000001*/ instance string A()
{
.get /*06000002*/ instance string DotfuscatorAttribute/* 02000002 */::a() /* 06000002 */
} // end of property DotfuscatorAttribute::A
.property /*17000002*/ instance bool B()
{
.get /*06000003*/ instance bool DotfuscatorAttribute/* 02000002 */::b() /* 06000003 */
} // end of property DotfuscatorAttribute::B
} // end of class DotfuscatorAttribute
.namespace WindowsApplication1
{
.class /*02000003*/ public auto ansi Form1
extends [System.Windows.Forms/* 23000006 */]System.Windows.Forms.Form/* 0100000C */
{
.field /*04000003*/ private class [System.Windows.Forms/* 23000006 */]System.Windows.Forms.Label/* 0100000F */ _Label1
.custom /*0C00000B:0A00000D*/ instance void [mscorlib/* 23000001 */]System.Runtime.CompilerServices.AccessedThroughPropertyAttribute/* 01000010 */::.ctor(string) /* 0A00000D */ = ( 01 00 06 4C 61 62 65 6C 31 00 00 ) // ...Label1..
.field /*04000004*/ private class [System/* 23000003 */]System.ComponentModel.IContainer/* 01000011 */ components
.method /*06000004*/ public hidebysig static
void Main() cil managed
// SIG: 00 00 01
{
.entrypoint
.custom /*0C00000C:0A00000E*/ instance void [mscorlib/* 23000001 */]System.STAThreadAttribute/* 01000012 */::.ctor() /* 0A00000E */ = ( 01 00 00 00 )
// Method begins at RVA 0x209b
// Code size 14 (0xe)
.maxstack 8
IL_0000: /* 00 | */ nop
IL_0001: /* 73 | (06)000005 */ newobj instance void WindowsApplication1.Form1/* 02000003 */::.ctor() /* 06000005 */
IL_0006: /* 28 | (0A)00000F */ call void [System.Windows.Forms/* 23000006 */]System.Windows.Forms.Application/* 01000013 */::Run(class [System.Windows.Forms/* 23000006 */]System.Windows.Forms.Form/* 0100000C */) /* 0A00000F */
IL_000b: /* 00 | */ nop
IL_000c: /* 00 | */ nop
IL_000d: /* 2A | */ ret
} // end of method Form1::Main
.method /*06000005*/ public specialname rtspecialname
instance void .ctor() cil managed
// SIG: 20 00 01
{
// Method begins at RVA 0x20aa
// Code size 17 (0x11)
.maxstack 8
IL_0000: /* 00 | */ nop
IL_0001: /* 02 | */ ldarg.0
IL_0002: /* 28 | (0A)000010 */ call instance void [System.Windows.Forms/* 23000006 */]System.Windows.Forms.Form/* 0100000C */::.ctor() /* 0A000010 */
IL_0007: /* 00 | */ nop
IL_0008: /* 02 | */ ldarg.0
IL_0009: /* 6F | (06)000009 */ callvirt instance void WindowsApplication1.Form1/* 02000003 */::InitializeComponent() /* 06000009 */
IL_000e: /* 00 | */ nop
IL_000f: /* 00 | */ nop
IL_0010: /* 2A | */ ret
} // end of method Form1::.ctor
.method /*06000006*/ family hidebysig strict virtual
instance void Dispose(bool disposing) cil managed
// SIG: 20 01 01 02
{
// Method begins at RVA 0x20bc
// Code size 36 (0x24)
.maxstack 8
IL_0000: /* 00 | */ nop
IL_0001: /* 03 | */ ldarg.1
IL_0002: /* 2C | 15 */ brfalse.s IL_0019
IL_0004: /* 02 | */ ldarg.0
IL_0005: /* 7B | (04)000004 */ ldfld class [System/* 23000003 */]System.ComponentModel.IContainer/* 01000011 */ WindowsApplication1.Form1/* 02000003 */::components /* 04000004 */
IL_000a: /* 2C | 0C */ brfalse.s IL_0018
IL_000c: /* 02 | */ ldarg.0
IL_000d: /* 7B | (04)000004 */ ldfld class [System/* 23000003 */]System.ComponentModel.IContainer/* 01000011 */ WindowsApplication1.Form1/* 02000003 */::components /* 04000004 */
IL_0012: /* 6F | (0A)000011 */ callvirt instance void [mscorlib/* 23000001 */]System.IDisposable/* 01000014 */::Dispose() /* 0A000011 */
IL_0017: /* 00 | */ nop
IL_0018: /* 00 | */ nop
IL_0019: /* 00 | */ nop
IL_001a: /* 02 | */ ldarg.0
IL_001b: /* 03 | */ ldarg.1
IL_001c: /* 28 | (0A)000012 */ call instance void [System.Windows.Forms/* 23000006 */]System.Windows.Forms.Form/* 0100000C */::Dispose(bool) /* 0A000012 */
IL_0021: /* 00 | */ nop
IL_0022: /* 00 | */ nop
IL_0023: /* 2A | */ ret
} // end of method Form1::Dispose
.method /*06000007*/ assembly newslot specialname strict virtual
instance class [System.Windows.Forms/* 23000006 */]System.Windows.Forms.Label/* 0100000F */
get_Label1() cil managed
// SIG: 20 00 12 3D
{
// Method begins at RVA 0x20e4
// Code size 11 (0xb)
.maxstack 1
.locals /*11000001*/ init (class [System.Windows.Forms/* 23000006 */]System.Windows.Forms.Label/* 0100000F */ V_0)
IL_0000: /* 02 | */ ldarg.0
IL_0001: /* 7B | (04)000003 */ ldfld class [System.Windows.Forms/* 23000006 */]System.Windows.Forms.Label/* 0100000F */ WindowsApplication1.Form1/* 02000003 */::_Label1 /* 04000003 */
IL_0006: /* 0A | */ stloc.0
IL_0007: /* 2B | 00 */ br.s IL_0009
IL_0009: /* 06 | */ ldloc.0
IL_000a: /* 2A | */ ret
} // end of method Form1::get_Label1
.method /*06000008*/ assembly newslot specialname strict virtual
instance void set_Label1(class [System.Windows.Forms/* 23000006 */]System.Windows.Forms.Label/* 0100000F */ WithEventsValue) cil managed synchronized
// SIG: 20 01 01 12 3D
{
// Method begins at RVA 0x20fb
// Code size 27 (0x1b)
.maxstack 8
IL_0000: /* 02 | */ ldarg.0
IL_0001: /* 7B | (04)000003 */ ldfld class [System.Windows.Forms/* 23000006 */]System.Windows.Forms.Label/* 0100000F */ WindowsApplication1.Form1/* 02000003 */::_Label1 /* 04000003 */
IL_0006: /* 2C | 00 */ brfalse.s IL_0008
IL_0008: /* 00 | */ nop
IL_0009: /* 02 | */ ldarg.0
IL_000a: /* 03 | */ ldarg.1
IL_000b: /* 7D | (04)000003 */ stfld class [System.Windows.Forms/* 23000006 */]System.Windows.Forms.Label/* 0100000F */ WindowsApplication1.Form1/* 02000003 */::_Label1 /* 04000003 */
IL_0010: /* 02 | */ ldarg.0
IL_0011: /* 7B | (04)000003 */ ldfld class [System.Windows.Forms/* 23000006 */]System.Windows.Forms.Label/* 0100000F */ WindowsApplication1.Form1/* 02000003 */::_Label1 /* 04000003 */
IL_0016: /* 2C | 00 */ brfalse.s IL_0018
IL_0018: /* 00 | */ nop
IL_0019: /* 00 | */ nop
IL_001a: /* 2A | */ ret
} // end of method Form1::set_Label1
.method /*06000009*/ private instance void
InitializeComponent() cil managed
// SIG: 20 00 01
{
.custom /*0C00000D:0A000013*/ instance void [mscorlib/* 23000001 */]System.Diagnostics.DebuggerStepThroughAttribute/* 01000015 */::.ctor() /* 0A000013 */ = ( 01 00 00 00 )
// Method begins at RVA 0x2118
// Code size 214 (0xd6)
.maxstack 4
.locals /*11000002*/ init (valuetype [System.Drawing/* 23000005 */]System.Drawing.Size/* 01000016 */ V_0,
valuetype [System.Drawing/* 23000005 */]System.Drawing.Point/* 01000017 */ V_1)
IL_0000: /* 00 | */ nop
IL_0001: /* 02 | */ ldarg.0
IL_0002: /* 73 | (0A)000014 */ newobj instance void [System.Windows.Forms/* 23000006 */]System.Windows.Forms.Label/* 0100000F */::.ctor() /* 0A000014 */
IL_0007: /* 6F | (06)000008 */ callvirt instance void WindowsApplication1.Form1/* 02000003 */::set_Label1(class [System.Windows.Forms/* 23000006 */]System.Windows.Forms.Label/* 0100000F */) /* 06000008 */
IL_000c: /* 00 | */ nop
IL_000d: /* 02 | */ ldarg.0
IL_000e: /* 6F | (0A)000015 */ callvirt instance void [System.Windows.Forms/* 23000006 */]System.Windows.Forms.Control/* 01000018 */::SuspendLayout() /* 0A000015 */
IL_0013: /* 00 | */ nop
IL_0014: /* 02 | */ ldarg.0
IL_0015: /* 6F | (06)000007 */ callvirt instance class [System.Windows.Forms/* 23000006 */]System.Windows.Forms.Label/* 0100000F */ WindowsApplication1.Form1/* 02000003 */::get_Label1() /* 06000007 */
IL_001a: /* 12 | 01 */ ldloca.s V_1
IL_001c: /* 1F | 48 */ ldc.i4.s 72
IL_001e: /* 1F | 1C */ ldc.i4.s 28
IL_0020: /* 28 | (0A)000016 */ call instance void [System.Drawing/* 23000005 */]System.Drawing.Point/* 01000017 */::.ctor(int32,
int32) /* 0A000016 */
IL_0025: /* 00 | */ nop
IL_0026: /* 07 | */ ldloc.1
IL_0027: /* 6F | (0A)000017 */ callvirt instance void [System.Windows.Forms/* 23000006 */]System.Windows.Forms.Control/* 01000018 */::set_Location(valuetype [System.Drawing/* 23000005 */]System.Drawing.Point/* 01000017 */) /* 0A000017 */
IL_002c: /* 00 | */ nop
IL_002d: /* 02 | */ ldarg.0
IL_002e: /* 6F | (06)000007 */ callvirt instance class [System.Windows.Forms/* 23000006 */]System.Windows.Forms.Label/* 0100000F */ WindowsApplication1.Form1/* 02000003 */::get_Label1() /* 06000007 */
IL_0033: /* 72 | (70)000001 */ ldstr "Label1" /* 70000001 */
IL_0038: /* 6F | (0A)000018 */ callvirt instance void [System.Windows.Forms/* 23000006 */]System.Windows.Forms.Control/* 01000018 */::set_Name(string) /* 0A000018 */
IL_003d: /* 00 | */ nop
IL_003e: /* 02 | */ ldarg.0
IL_003f: /* 6F | (06)000007 */ callvirt instance class [System.Windows.Forms/* 23000006 */]System.Windows.Forms.Label/* 0100000F */ WindowsApplication1.Form1/* 02000003 */::get_Label1() /* 06000007 */
IL_0044: /* 12 | 00 */ ldloca.s V_0
IL_0046: /* 20 | A4000000 */ ldc.i4 0xa4
IL_004b: /* 1F | 14 */ ldc.i4.s 20
IL_004d: /* 28 | (0A)000019 */ call instance void [System.Drawing/* 23000005 */]System.Drawing.Size/* 01000016 */::.ctor(int32,
int32) /* 0A000019 */
IL_0052: /* 00 | */ nop
IL_0053: /* 06 | */ ldloc.0
IL_0054: /* 6F | (0A)00001A */ callvirt instance void [System.Windows.Forms/* 23000006 */]System.Windows.Forms.Control/* 01000018 */::set_Size(valuetype [System.Drawing/* 23000005 */]System.Drawing.Size/* 01000016 */) /* 0A00001A */
IL_0059: /* 00 | */ nop
IL_005a: /* 02 | */ ldarg.0
IL_005b: /* 6F | (06)000007 */ callvirt instance class [System.Windows.Forms/* 23000006 */]System.Windows.Forms.Label/* 0100000F */ WindowsApplication1.Form1/* 02000003 */::get_Label1() /* 06000007 */
IL_0060: /* 16 | */ ldc.i4.0
IL_0061: /* 6F | (0A)00001B */ callvirt instance void [System.Windows.Forms/* 23000006 */]System.Windows.Forms.Control/* 01000018 */::set_TabIndex(int32) /* 0A00001B */
IL_0066: /* 00 | */ nop
IL_0067: /* 02 | */ ldarg.0
IL_0068: /* 6F | (06)000007 */ callvirt instance class [System.Windows.Forms/* 23000006 */]System.Windows.Forms.Label/* 0100000F */ WindowsApplication1.Form1/* 02000003 */::get_Label1() /* 06000007 */
IL_006d: /* 72 | (70)00000F */ ldstr "hello" /* 7000000F */
IL_0072: /* 6F | (0A)00001C */ callvirt instance void [System.Windows.Forms/* 23000006 */]System.Windows.Forms.Control/* 01000018 */::set_Text(string) /* 0A00001C */
IL_0077: /* 00 | */ nop
IL_0078: /* 02 | */ ldarg.0
IL_0079: /* 12 | 00 */ ldloca.s V_0
IL_007b: /* 1B | */ ldc.i4.5
IL_007c: /* 1F | 0D */ ldc.i4.s 13
IL_007e: /* 28 | (0A)000019 */ call instance void [System.Drawing/* 23000005 */]System.Drawing.Size/* 01000016 */::.ctor(int32,
int32) /* 0A000019 */
IL_0083: /* 00 | */ nop
IL_0084: /* 06 | */ ldloc.0
IL_0085: /* 6F | (0A)00001D */ callvirt instance void [System.Windows.Forms/* 23000006 */]System.Windows.Forms.Form/* 0100000C */::set_AutoScaleBaseSize(valuetype [System.Drawing/* 23000005 */]System.Drawing.Size/* 01000016 */) /* 0A00001D */
IL_008a: /* 00 | */ nop
IL_008b: /* 02 | */ ldarg.0
IL_008c: /* 12 | 00 */ ldloca.s V_0
IL_008e: /* 20 | 24010000 */ ldc.i4 0x124
IL_0093: /* 1F | 6D */ ldc.i4.s 109
IL_0095: /* 28 | (0A)000019 */ call instance void [System.Drawing/* 23000005 */]System.Drawing.Size/* 01000016 */::.ctor(int32,
int32) /* 0A000019 */
IL_009a: /* 00 | */ nop
IL_009b: /* 06 | */ ldloc.0
IL_009c: /* 6F | (0A)00001E */ callvirt instance void [System.Windows.Forms/* 23000006 */]System.Windows.Forms.Form/* 0100000C */::set_ClientSize(valuetype [System.Drawing/* 23000005 */]System.Drawing.Size/* 01000016 */) /* 0A00001E */
IL_00a1: /* 00 | */ nop
IL_00a2: /* 02 | */ ldarg.0
IL_00a3: /* 6F | (0A)00001F */ callvirt instance class [System.Windows.Forms/* 23000006 */]System.Windows.Forms.Control/* 01000018 *//ControlCollection/* 01000019 */ [System.Windows.Forms/* 23000006 */]System.Windows.Forms.Control/* 01000018 */::get_Controls() /* 0A00001F */
IL_00a8: /* 02 | */ ldarg.0
IL_00a9: /* 6F | (06)000007 */ callvirt instance class [System.Windows.Forms/* 23000006 */]System.Windows.Forms.Label/* 0100000F */ WindowsApplication1.Form1/* 02000003 */::get_Label1() /* 06000007 */
IL_00ae: /* 6F | (0A)000020 */ callvirt instance void [System.Windows.Forms/* 23000006 */]System.Windows.Forms.Control/* 01000018 *//ControlCollection/* 01000019 */::Add(class [System.Windows.Forms/* 23000006 */]System.Windows.Forms.Control/* 01000018 */) /* 0A000020 */
IL_00b3: /* 00 | */ nop
IL_00b4: /* 02 | */ ldarg.0
IL_00b5: /* 72 | (70)00001B */ ldstr "Form1" /* 7000001B */
IL_00ba: /* 6F | (0A)000018 */ callvirt instance void [System.Windows.Forms/* 23000006 */]System.Windows.Forms.Control/* 01000018 */::set_Name(string) /* 0A000018 */
IL_00bf: /* 00 | */ nop
IL_00c0: /* 02 | */ ldarg.0
IL_00c1: /* 72 | (70)000027 */ ldstr "WinApp1" /* 70000027 */
IL_00c6: /* 6F | (0A)00001C */ callvirt instance void [System.Windows.Forms/* 23000006 */]System.Windows.Forms.Control/* 01000018 */::set_Text(string) /* 0A00001C */
IL_00cb: /* 00 | */ nop
IL_00cc: /* 02 | */ ldarg.0
IL_00cd: /* 16 | */ ldc.i4.0
IL_00ce: /* 6F | (0A)000021 */ callvirt instance void [System.Windows.Forms/* 23000006 */]System.Windows.Forms.Control/* 01000018 */::ResumeLayout(bool) /* 0A000021 */
IL_00d3: /* 00 | */ nop
IL_00d4: /* 00 | */ nop
IL_00d5: /* 2A | */ ret
} // end of method Form1::InitializeComponent
.property /*17000003*/ instance class [System.Windows.Forms/* 23000006 */]System.Windows.Forms.Label/* 0100000F */
Label1()
{
.get /*06000007*/ instance class [System.Windows.Forms/* 23000006 */]System.Windows.Forms.Label/* 0100000F */ WindowsApplication1.Form1/* 02000003 */::get_Label1() /* 06000007 */
.set /*06000008*/ instance void WindowsApplication1.Form1/* 02000003 */::set_Label1(class [System.Windows.Forms/* 23000006 */]System.Windows.Forms.Label/* 0100000F */) /* 06000008 */
} // end of property Form1::Label1
} // end of class Form1
ILDASM With Obfuscation - allowing ildasm
// Microsoft (R) .NET Framework IL Disassembler. Version 1.1.4322.573
// Copyright (C) Microsoft Corporation 1998-2002. All rights reserved.
.assembly extern /*23000001*/ mscorlib
{
.publickeytoken = (B7 7A 5C 56 19 34 E0 89 ) // .z\V.4..
.ver 1:0:5000:0
}
.assembly extern /*23000002*/ Microsoft.VisualBasic
{
.publickeytoken = (B0 3F 5F 7F 11 D5 0A 3A ) // .?_....:
.ver 7:0:5000:0
}
.assembly extern /*23000003*/ System
{
.publickeytoken = (B7 7A 5C 56 19 34 E0 89 ) // .z\V.4..
.ver 1:0:5000:0
}
.assembly extern /*23000004*/ System.Data
{
.publickeytoken = (B7 7A 5C 56 19 34 E0 89 ) // .z\V.4..
.ver 1:0:5000:0
}
.assembly extern /*23000005*/ System.Drawing
{
.publickeytoken = (B0 3F 5F 7F 11 D5 0A 3A ) // .?_....:
.ver 1:0:5000:0
}
.assembly extern /*23000006*/ System.Windows.Forms
{
.publickeytoken = (B7 7A 5C 56 19 34 E0 89 ) // .z\V.4..
.ver 1:0:5000:0
}
.assembly extern /*23000007*/ System.Xml
{
.publickeytoken = (B7 7A 5C 56 19 34 E0 89 ) // .z\V.4..
.ver 1:0:5000:0
}
.assembly /*20000001*/ WindowsApplication1
{
.custom /*0C000001:0A000001*/ instance void [mscorlib/* 23000001 */]System.CLSCompliantAttribute/* 01000001 */::.ctor(bool) /* 0A000001 */ = ( 01 00 01 00 00 )
.custom /*0C000002:0A000003*/ instance void [mscorlib/* 23000001 */]System.Reflection.AssemblyProductAttribute/* 01000003 */::.ctor(string) /* 0A000003 */ = ( 01 00 00 00 00 )
.custom /*0C000003:0A000004*/ instance void [mscorlib/* 23000001 */]System.Reflection.AssemblyTitleAttribute/* 01000004 */::.ctor(string) /* 0A000004 */ = ( 01 00 65 20 4F 62 66 75 73 63 61 74 65 64 20 77 // ..e Obfuscated w
69 74 68 20 44 6F 74 66 75 73 63 61 74 6F 72 20 // ith Dotfuscator
50 72 6F 66 65 73 73 69 6F 6E 61 6C 20 45 76 61 // Professional Eva
6C 75 61 74 69 6F 6E 2E 20 49 6C 6C 65 67 61 6C // luation. Illegal
20 74 6F 20 75 73 65 20 6F 6E 20 73 6F 66 74 77 // to use on softw
61 72 65 20 66 6F 72 20 67 65 6E 65 72 61 6C 20 // are for general
72 65 6C 65 61 73 65 2E 00 00 ) // release...
.custom /*0C000004:0A000005*/ instance void [mscorlib/* 23000001 */]System.Reflection.AssemblyCopyrightAttribute/* 01000005 */::.ctor(string) /* 0A000005 */ = ( 01 00 00 00 00 )
.custom /*0C000005:0A000006*/ instance void [mscorlib/* 23000001 */]System.Reflection.AssemblyTrademarkAttribute/* 01000006 */::.ctor(string) /* 0A000006 */ = ( 01 00 00 00 00 )
.custom /*0C000006:0A000007*/ instance void [mscorlib/* 23000001 */]System.Reflection.AssemblyCompanyAttribute/* 01000007 */::.ctor(string) /* 0A000007 */ = ( 01 00 00 00 00 )
.custom /*0C000007:0A000008*/ instance void [mscorlib/* 23000001 */]System.Reflection.AssemblyDescriptionAttribute/* 01000008 */::.ctor(string) /* 0A000008 */ = ( 01 00 00 00 00 )
.custom /*0C000008:0A000009*/ instance void DotfuscatorAttribute/* 01000009 */::.ctor(string,
bool) /* 0A000009 */ = ( 01 00 15 38 39 35 33 3A 31 3A 32 2E 30 2E 31 34 // ...8953:1:2.0.14
38 32 2E 32 33 33 33 39 01 ) // 82.23339.
.custom /*0C000009:0A000002*/ instance void [mscorlib/* 23000001 */]System.Runtime.InteropServices.GuidAttribute/* 01000002 */::.ctor(string) /* 0A000002 */ = ( 01 00 24 33 45 34 43 46 33 35 41 2D 38 35 37 36 // ..$3E4CF35A-8576
2D 34 33 32 46 2D 41 31 44 44 2D 34 33 43 38 41 // -432F-A1DD-43C8A
33 31 38 31 32 46 36 00 00 ) // 31812F6..
.hash algorithm 0x00008004
.ver 1:0:1525:18434
}
.mresource /*28000001*/ public WindowsApplication1.Form1.resources
{
// WARNING: managed resource file WindowsApplication1.Form1.resources created
}
.module WindowsApplication1.exe
// MVID: {056BB60C-62E4-45A4-9D85-A94572A00A52}
.imagebase 0x11000000
.subsystem 0x00000002
.file alignment 512
.corflags 0x00000001
// Image base: 0x07ab0000
//
// ============== CLASS STRUCTURE DECLARATION ==================
//
.class /*02000002*/ public auto ansi sealed beforefieldinit DotfuscatorAttribute
extends [mscorlib/* 23000001 */]System.Attribute/* 0100000B */
{
} // end of class DotfuscatorAttribute
.namespace WindowsApplication1
{
.class /*02000003*/ public auto ansi Form1
extends [System.Windows.Forms/* 23000006 */]System.Windows.Forms.Form/* 0100000C */
{
} // end of class Form1
} // end of namespace WindowsApplication1
// =============================================================
// =============== GLOBAL FIELDS AND METHODS ===================
//Global fields
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.field /*04000001*/ private static specialname rtspecialname int32 _Deleted /* ILLEGAL CONSTANT type:0x01, size:418232 bytes, blob: (23 9E 0B 00 F0 FF FF 7F 15 9E 0B 00 42 00 00 00 // #...........B...
42 00 00 00 F4 6B 06 00 B4 F0 4F 7C C3 16 6D 27 // B....k....O|..m'
00 6C 06 00 C3 82 42 00 01 00 00 04 D8 9D 0B 00 // .l....B.........
48 B5 38 7C 01 00 00 00 00 00 00 00 34 31 40 00 // H.8|........41@.
00 00 00 00 00 00 00 00 02 00 00 00 9B 0B AB 07
01 00 00 00 11 86 00 00 F0 69 06 00 D8 9D 0B 00 // .........i......
CE 47 F8 77 1C B9 0B 00 00 00 00 00 2C B9 0B 00 // .G.w........,...
00 00 00 00 24 00 26 00 98 B8 0A 00 50 61 06 00 // ....$.&.....Pa..
80 B8 0A 00 B0 F9 06 00 91 81 F9 77 10 49 F8 77 // ...........w.I.w
FF FF FF FF 2C 62 06 00 A3 48 F8 77 00 00 00 00 // ....,b...H.w....
08 B9 0B 00 00 00 00 00 4C 62 06 00 54 57 F9 77 // ........Lb..TW.w
1C B9 0B 00 00 00 00 00 49 E9 4F 7C 1C B9 0B 00 // ........I.O|....
9B 10 F9 77 B0 69 06 00 1C 65 06 00 D4 CB 4E 7C // ...w.i...e....N|
80 01 00 00 00 00 00 00 04 01 00 00 94 67 06 00 // .............g..
00 00 00 00 A0 0B 00 00 A0 A1 12 3A CC 02 C4 01 // ...........:....
00 08 38 B6 6E 02 C4 01 00 3F 05 3B CC 02 C4 01 // ..8.n....?.;....
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 10 00 00 00 24 00 00 00 // ............$...
00 00 00 00 10 00 57 00 49 00 4E 00 41 00 50 00 // ......W.I.N.A.P.
50 00 7E 00 31 00 00 00 00 00 00 00 00 00 57 00 // P.~.1.........W.
69 00 6E 00 41 00 70 00 70 00 31 00 5F 00 57 00 // i.n.A.p.p.1._.W.
69 00 74 00 68 00 5F 00 4F 00 62 00 66 00 75 00 // i.t.h._.O.b.f.u.
73 00 36 7C 01 00 00 04 10 63 06 00 28 A6 40 00 // s.6|.....c..(.@.
58 76 0A 00 E4 01 0B 00 E0 62 06 00 FA D7 6D 27 // Xv.......b....m'
5C 6D 06 00 B4 F0 4F 7C 38 C4 4F 7C FF FF FF FF // \m....O|8.O|....
68 6D 06 00 BB 6D F8 77 94 01 00 00 00 00 00 00 // hm...m.w........
00 00 00 00 00 00 00 00 4C 63 06 00 28 00 09 00 // ........Lc..(...
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 04 4C 2F 78 40 EE 09 00 7C 63 06 00 // .....L/x@...|c..
AF 4B 2F 78 40 EE 09 00 B8 4B 2F 78 B8 02 41 78 // .K/x@....K/x..Ax
00 00 00 00 08 B9 0B 00 FC 46 2F 78 7C 63 06 00 // .........F/x|c..
C4 69 06 00 08 B9 0B 00 44 00 69 00 72 00 65 00 // .i......D.i.r.e.
63 00 74 00 6F 00 72 00 79 00 00 00 3A 00 00 00 // c.t.o.r.y...:...
02 00 00 00 00 00 00 00 00 00 00 00 FF FF FF FF
A2 F9 34 7C FF FF FF FF 40 00 00 00 35 01 35 7C // ..4|....@...5.5|
0B FC 34 7C 00 00 00 00 74 66 06 00 84 01 35 7C // ..4|....tf....5|
03 00 00 00 00 00 00 00 74 00 08 02 00 00 00 00 // ........t.......
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 11 00 00 00 01 00 00 00 0B 66 06 00 // .............f..
FF FF FF FF 40 00 00 00 91 81 F9 77 58 1C F9 77 // ....@......wX..w
FF FF FF FF CC 66 06 00 1A 02 00 00 EF 5D F9 77 // .....f.......].w
B8 64 06 00 77 C2 F8 77 70 F1 FC 77 5C 1B F9 77 // .d..w..wp..w\..w
...truncated for length...
00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
40 0C 2B 07 20 00 00 00 00 00 00 00 00 00 00 00 // @.+. ...........
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 0
ILDASM with obfuscation and disallow ildasm = ildasm.exe crashed
-RUST-
"What the... Moooooooo!"