| Info |
PE Detect: PeReader OK (file layout) |
| Info |
PDB Path: C:\Users\Administrator\AppData\Local\LX_CRYPTER\Temp\LX_FyEqf0ktY00bwkff\ILRepack-7340-721129\LX_FyEqf0ktY00bwkff.pdb
|
| Module Name |
|
| Full Name |
|
| EntryPoint |
System.Void Bender.Reflection.Demo.Program::Main(System.String[]) |
| Scope Name |
|
| Scope Type |
|
| Kind |
|
| Runtime Version |
|
| Tables Header Version |
|
| WinMD Version |
|
| Assembly Name |
|
| Assembly Version |
|
| Assembly Culture |
|
| Has PublicKey |
|
| PublicKey Token |
|
| Target Framework |
.NETFramework,Version=v4.7.2 |
| Total Strings |
|
| Main Method |
System.Void Bender.Reflection.Demo.Program::Main(System.String[]) |
| Main IL Instruction Count |
|
| Main IL |
newobj System.Void CovertOperationModule::.ctor()
callvirt System.Collections.Generic.IEnumerable`1<System.String> CovertOperationModule::InitiatePayloadSequence()
callvirt System.Collections.Generic.IEnumerator`1<System.String> System.Collections.Generic.IEnumerable`1<System.String>::GetEnumerator()
stloc.s V_8
br.s IL_001B: ldloc.s V_8
ldloc.s V_8
callvirt System.String System.Collections.Generic.IEnumerator`1<System.String>::get_Current()
pop <null>
ldloc.s V_8
callvirt System.Boolean System.Collections.IEnumerator::MoveNext()
brtrue.s IL_0013: ldloc.s V_8
leave.s IL_0032: newobj System.Void Bender.Reflection.Demo.Person::.ctor()
ldloc.s V_8
brfalse.s IL_0031: endfinally
ldloc.s V_8
callvirt System.Void System.IDisposable::Dispose()
endfinally <null>
newobj System.Void Bender.Reflection.Demo.Person::.ctor()
dup <null>
ldstr John
callvirt System.Void Bender.Reflection.Demo.Person::set_FirstName(System.String)
dup <null>
ldstr Doe
callvirt System.Void Bender.Reflection.Demo.Person::set_LastName(System.String)
dup <null>
ldc.i4.s 30
callvirt System.Void Bender.Reflection.Demo.Person::set_Age(System.Int32)
dup <null>
newobj System.Void System.Collections.Generic.List`1<System.String>::.ctor()
dup <null>
ldstr developer
callvirt System.Void System.Collections.Generic.List`1<System.String>::Add(System.String)
dup <null>
ldstr csharp
callvirt System.Void System.Collections.Generic.List`1<System.String>::Add(System.String)
callvirt System.Void Bender.Reflection.Demo.Person::set_Tags(System.Collections.Generic.List`1<System.String>)
stloc.0 <null>
ldtoken Bender.Reflection.Demo.Person
call System.Type System.Type::GetTypeFromHandle(System.RuntimeTypeHandle)
call Bender.Reflection.CachedType Bender.Reflection.TypeCache::ToCachedType(System.Type)
stloc.1 <null>
ldloc.1 <null>
callvirt System.Collections.Generic.IEnumerable`1<Bender.Reflection.CachedMember> Bender.Reflection.CachedType::get_Members()
callvirt System.Collections.Generic.IEnumerator`1<Bender.Reflection.CachedMember> System.Collections.Generic.IEnumerable`1<Bender.Reflection.CachedMember>::GetEnumerator()
stloc.s V_9
br.s IL_00E7: ldloc.s V_9
ldloc.s V_9
callvirt Bender.Reflection.CachedMember System.Collections.Generic.IEnumerator`1<Bender.Reflection.CachedMember>::get_Current()
ldloc.0 <null>
callvirt System.Object Bender.Reflection.CachedMember::GetValue(System.Object)
stloc.s V_10
ldloc.s V_10
isinst System.Collections.IEnumerable
brfalse.s IL_00B7: ldloc.s V_10
ldloc.s V_10
isinst System.String
brfalse.s IL_00C1: ldstr "["
ldloc.s V_10
callvirt System.String System.Object::ToString()
pop <null>
br.s IL_00E7: ldloc.s V_9
ldstr [
ldstr ,
ldloc.s V_10
castclass System.Collections.IEnumerable
call System.Collections.Generic.IEnumerable`1<System.Object> System.Linq.Enumerable::Cast<System.Object>(System.Collections.IEnumerable)
call System.String System.String::Join<System.Object>(System.String,System.Collections.Generic.IEnumerable`1<System.Object>)
ldstr ]
call System.String System.String::Concat(System.String,System.String,System.String)
pop <null>
ldloc.s V_9
callvirt System.Boolean System.Collections.IEnumerator::MoveNext()
brtrue.s IL_0096: ldloc.s V_9
leave.s IL_00FE: ldloc.1
ldloc.s V_9
brfalse.s IL_00FD: endfinally
ldloc.s V_9
callvirt System.Void System.IDisposable::Dispose()
endfinally <null>
ldloc.1 <null>
ldstr GetFullName
ldloc.0 <null>
call System.Object[] System.Array::Empty<System.Object>()
callvirt System.String Bender.Reflection.CachedType::InvokeFunc<System.String>(System.String,System.Object,System.Object[])
pop <null>
ldloc.1 <null>
ldstr CelebrateBirthday
ldloc.0 <null>
call System.Object[] System.Array::Empty<System.Object>()
callvirt System.Void Bender.Reflection.CachedType::InvokeAction(System.String,System.Object,System.Object[])
ldloc.1 <null>
ldstr Age
callvirt Bender.Reflection.CachedMember Bender.Reflection.CachedType::GetMember(System.String)
ldloc.0 <null>
callvirt System.Object Bender.Reflection.CachedMember::GetValue(System.Object)
pop <null>
ldtoken System.Collections.Generic.Dictionary`2<System.String,System.Int32>
call System.Type System.Type::GetTypeFromHandle(System.RuntimeTypeHandle)
call Bender.Reflection.CachedType Bender.Reflection.TypeCache::ToCachedType(System.Type)
callvirt System.String Bender.Reflection.CachedType::get_FriendlyFullName()
pop <null>
newobj System.Void Custom.Collections.Demo.NullableKeyDictionary`2<System.String,System.String>::.ctor()
stloc.2 <null>
ldloc.2 <null>
ldstr user.name
ldstr John
callvirt System.Void Custom.Collections.Demo.NullableKeyDictionary`2<System.String,System.String>::Add(System.String,System.String)
ldloc.2 <null>
ldstr user.email
ldstr john@example.com
callvirt System.Void Custom.Collections.Demo.NullableKeyDictionary`2<System.String,System.String>::Add(System.String,System.String)
ldloc.2 <null>
ldnull <null>
ldstr This value belongs to a null key.
callvirt System.Void Custom.Collections.Demo.NullableKeyDictionary`2<System.String,System.String>::Add(System.String,System.String)
ldloc.2 <null>
ldstr config.version
ldstr 1.0.2
callvirt System.Void Custom.Collections.Demo.NullableKeyDictionary`2<System.String,System.String>::set_Item(System.String,System.String)
ldloc.2 <null>
ldstr user.name
callvirt System.String Custom.Collections.Demo.NullableKeyDictionary`2<System.String,System.String>::get_Item(System.String)
pop <null>
ldloc.2 <null>
ldstr user.email
ldloca.s V_3
callvirt System.Boolean Custom.Collections.Demo.NullableKeyDictionary`2<System.String,System.String>::TryGetValue(System.String,System.String&)
pop <null>
ldloc.2 <null>
callvirt System.Collections.Generic.IEnumerator`1<System.Collections.Generic.KeyValuePair`2<System.String,System.String>> Custom.Collections.Demo.NullableKeyDictionary`2<System.String,System.String>::GetEnumerator()
stloc.s V_11
br.s IL_01D7: ldloc.s V_11
ldloc.s V_11
callvirt System.Collections.Generic.KeyValuePair`2<System.String,System.String> System.Collections.Generic.IEnumerator`1<System.Collections.Generic.KeyValuePair`2<System.String,System.String>>::get_Current()
stloc.s V_12
ldloca.s V_12
call System.String System.Collections.Generic.KeyValuePair`2<System.String,System.String>::get_Key()
brfalse.s IL_01D7: ldloc.s V_11
ldstr '
ldloca.s V_12
call System.String System.Collections.Generic.KeyValuePair`2<System.String,System.String>::get_Key()
ldstr '
call System.String System.String::Concat(System.String,System.String,System.String)
pop <null>
ldloc.s V_11
callvirt System.Boolean System.Collections.IEnumerator::MoveNext()
brtrue.s IL_01AE: ldloc.s V_11
leave.s IL_01EE: ldloc.2
ldloc.s V_11
brfalse.s IL_01ED: endfinally
ldloc.s V_11
callvirt System.Void System.IDisposable::Dispose()
endfinally <null>
ldloc.2 <null>
ldnull <null>
callvirt System.Boolean Custom.Collections.Demo.NullableKeyDictionary`2<System.String,System.String>::Remove(System.String)
pop <null>
ldloc.2 <null>
ldstr user.name
callvirt System.Boolean Custom.Collections.Demo.NullableKeyDictionary`2<System.String,System.String>::Remove(System.String)
pop <null>
ldloc.2 <null>
ldnull <null>
ldstr New null value
callvirt System.Void Custom.Collections.Demo.NullableKeyDictionary`2<System.String,System.String>::Add(System.String,System.String)
ldloc.2 <null>
call System.String Custom.Collections.Demo.SimpleJsonSerializer::Serialize(Custom.Collections.Demo.NullableKeyDictionary`2<System.String,System.String>)
pop <null>
newobj System.Void System.Collections.Generic.List`1<System.String>::.ctor()
dup <null>
ldstr Apple
callvirt System.Void System.Collections.Generic.List`1<System.String>::Add(System.String)
dup <null>
ldstr Pear
callvirt System.Void System.Collections.Generic.List`1<System.String>::Add(System.String)
dup <null>
ldstr Watermelon
callvirt System.Void System.Collections.Generic.List`1<System.String>::Add(System.String)
call System.Collections.Generic.IEnumerable`1<System.Collections.Generic.KeyValuePair`2<System.Int32,System.String>> LogJoint.EnumUtils::ZipWithIndex<System.String>(System.Collections.Generic.IEnumerable`1<System.String>)
callvirt System.Collections.Generic.IEnumerator`1<System.Collections.Generic.KeyValuePair`2<System.Int32,System.String>> System.Collections.Generic.IEnumerable`1<System.Collections.Generic.KeyValuePair`2<System.Int32,System.String>>::GetEnumerator()
stloc.s V_13
br.s IL_0251: ldloc.s V_13
ldloc.s V_13
callvirt System.Collections.Generic.KeyValuePair`2<System.Int32,System.String> System.Collections.Generic.IEnumerator`1<System.Collections.Generic.KeyValuePair`2<System.Int32,System.String>>::get_Current()
pop <null>
ldloc.s V_13
callvirt System.Boolean System.Collections.IEnumerator::MoveNext()
brtrue.s IL_0249: ldloc.s V_13
leave.s IL_0268: newobj System.Void System.Collections.Generic.List`1<System.Int32>::.ctor()
ldloc.s V_13
brfalse.s IL_0267: endfinally
ldloc.s V_13
callvirt System.Void System.IDisposable::Dispose()
endfinally <null>
newobj System.Void System.Collections.Generic.List`1<System.Int32>::.ctor()
dup <null>
ldc.i4.s 10
callvirt System.Void System.Collections.Generic.List`1<System.Int32>::Add(System.Int32)
dup <null>
ldc.i4.s 20
callvirt System.Void System.Collections.Generic.List`1<System.Int32>::Add(System.Int32)
dup <null>
ldc.i4.s 30
callvirt System.Void System.Collections.Generic.List`1<System.Int32>::Add(System.Int32)
dup <null>
ldc.i4.s 40
callvirt System.Void System.Collections.Generic.List`1<System.Int32>::Add(System.Int32)
pop <null>
newobj System.Void System.Collections.Generic.List`1<System.Int32>::.ctor()
pop <null>
newobj System.Void System.Collections.Generic.List`1<System.Int32>::.ctor()
dup <null>
ldc.i4.1 <null>
callvirt System.Void System.Collections.Generic.List`1<System.Int32>::Add(System.Int32)
dup <null>
ldc.i4.2 <null>
callvirt System.Void System.Collections.Generic.List`1<System.Int32>::Add(System.Int32)
dup <null>
ldc.i4.3 <null>
callvirt System.Void System.Collections.Generic.List`1<System.Int32>::Add(System.Int32)
dup <null>
ldc.i4.4 <null>
callvirt System.Void System.Collections.Generic.List`1<System.Int32>::Add(System.Int32)
dup <null>
ldc.i4.5 <null>
callvirt System.Void System.Collections.Generic.List`1<System.Int32>::Add(System.Int32)
newobj System.Void System.Collections.Generic.List`1<System.Int32>::.ctor()
dup <null>
ldc.i4.4 <null>
callvirt System.Void System.Collections.Generic.List`1<System.Int32>::Add(System.Int32)
dup <null>
ldc.i4.5 <null>
callvirt System.Void System.Collections.Generic.List`1<System.Int32>::Add(System.Int32)
dup <null>
ldc.i4.6 <null>
callvirt System.Void System.Collections.Generic.List`1<System.Int32>::Add(System.Int32)
dup <null>
ldc.i4.7 <null>
callvirt System.Void System.Collections.Generic.List`1<System.Int32>::Add(System.Int32)
stloc.s V_4
ldloc.s V_4
call System.Collections.Generic.IEnumerable`1<System.Int32> LogJoint.EnumUtils::SymmetricDifference<System.Int32>(System.Collections.Generic.IEnumerable`1<System.Int32>,System.Collections.Generic.IEnumerable`1<System.Int32>)
call System.Collections.Generic.List`1<System.Int32> System.Linq.Enumerable::ToList<System.Int32>(System.Collections.Generic.IEnumerable`1<System.Int32>)
pop <null>
newobj System.Void System.Collections.Generic.Dictionary`2<System.String,Counter>::.ctor()
dup <null>
ldstr A
ldsfld System.Func`1<Counter> Bender.Reflection.Demo.Program/<>c::<>9__0_0
dup <null>
brtrue.s IL_0316: ldsfld System.Action`1<Counter> Bender.Reflection.Demo.Program/<>c::<>9__0_1
pop <null>
ldsfld Bender.Reflection.Demo.Program/<>c Bender.Reflection.Demo.Program/<>c::<>9
ldftn Counter Bender.Reflection.Demo.Program/<>c::<Main>b__0_0()
newobj System.Void System.Func`1<Counter>::.ctor(System.Object,System.IntPtr)
dup <null>
stsfld System.Func`1<Counter> Bender.Reflection.Demo.Program/<>c::<>9__0_0
ldsfld System.Action`1<Counter> Bender.Reflection.Demo.Program/<>c::<>9__0_1
dup <null>
brtrue.s IL_0335: call Counter LogJoint.EnumUtils::Upsert<System.String,Counter>(System.Collections.Generic.Dictionary`2<System.String,Counter>,System.String,System.Func`1<Counter>,System.Action`1<Counter>)
pop <null>
ldsfld Bender.Reflection.Demo.Program/<>c Bender.Reflection.Demo.Program/<>c::<>9
ldftn System.Void Bender.Reflection.Demo.Program/<>c::<Main>b__0_1(Counter)
newobj System.Void System.Action`1<Counter>::.ctor(System.Object,System.IntPtr)
dup <null>
stsfld System.Action`1<Counter> Bender.Reflection.Demo.Program/<>c::<>9__0_1
call Counter LogJoint.EnumUtils::Upsert<System.String,Counter>(System.Collections.Generic.Dictionary`2<System.String,Counter>,System.String,System.Func`1<Counter>,System.Action`1<Counter>)
pop <null>
dup <null>
ldstr B
ldsfld System.Func`1<Counter> Bender.Reflection.Demo.Program/<>c::<>9__0_2
dup <null>
brtrue.s IL_0360: ldsfld System.Action`1<Counter> Bender.Reflection.Demo.Program/<>c::<>9__0_3
pop <null>
ldsfld Bender.Reflection.Demo.Program/<>c Bender.Reflection.Demo.Program/<>c::<>9
ldftn Counter Bender.Reflection.Demo.Program/<>c::<Main>b__0_2()
newobj System.Void System.Func`1<Counter>::.ctor(System.Object,System.IntPtr)
dup <null>
stsfld System.Func`1<Counter> Bender.Reflection.Demo.Program/<>c::<>9__0_2
ldsfld System.Action`1<Counter> Bender.Reflection.Demo.Program/<>c::<>9__0_3
dup <null>
brtrue.s IL_037F: call Counter LogJoint.EnumUtils::Upsert<System.String,Counter>(System.Collections.Generic.Dictionary`2<System.String,Counter>,System.String,System.Func`1<Counter>,System.Action`1<Counter>)
pop <null>
ldsfld Bender.Reflection.Demo.Program/<>c Bender.Reflection.Demo.Program/<>c::<>9
ldftn System.Void Bender.Reflection.Demo.Program/<>c::<Main>b__0_3(Counter)
newobj System.Void System.Action`1<Counter>::.ctor(System.Object,System.IntPtr)
dup <null>
stsfld System.Action`1<Counter> Bender.Reflection.Demo.Program/<>c::<>9__0_3
call Counter LogJoint.EnumUtils::Upsert<System.String,Counter>(System.Collections.Generic.Dictionary`2<System.String,Counter>,System.String,System.Func`1<Counter>,System.Action`1<Counter>)
pop <null>
dup <null>
ldstr A
ldsfld System.Func`1<Counter> Bender.Reflection.Demo.Program/<>c::<>9__0_4
dup <null>
brtrue.s IL_03AA: ldsfld System.Action`1<Counter> Bender.Reflection.Demo.Program/<>c::<>9__0_5
pop <null>
ldsfld Bender.Reflection.Demo.Program/<>c Bender.Reflection.Demo.Program/<>c::<>9
ldftn Counter Bender.Reflection.Demo.Program/<>c::<Main>b__0_4()
newobj System.Void System.Func`1<Counter>::.ctor(System.Object,System.IntPtr)
dup <null>
stsfld System.Func`1<Counter> Bender.Reflection.Demo.Program/<>c::<>9__0_4
ldsfld System.Action`1<Counter> Bender.Reflection.Demo.Program/<>c::<>9__0_5
dup <null>
brtrue.s IL_03C9: call Counter LogJoint.EnumUtils::Upsert<System.String,Counter>(System.Collections.Generic.Dictionary`2<System.String,Counter>,System.String,System.Func`1<Counter>,System.Action`1<Counter>)
pop <null>
ldsfld Bender.Reflection.Demo.Program/<>c Bender.Reflection.Demo.Program/<>c::<>9
ldftn System.Void Bender.Reflection.Demo.Program/<>c::<Main>b__0_5(Counter)
newobj System.Void System.Action`1<Counter>::.ctor(System.Object,System.IntPtr)
dup <null>
stsfld System.Action`1<Counter> Bender.Reflection.Demo.Program/<>c::<>9__0_5
call Counter LogJoint.EnumUtils::Upsert<System.String,Counter>(System.Collections.Generic.Dictionary`2<System.String,Counter>,System.String,System.Func`1<Counter>,System.Action`1<Counter>)
pop <null>
callvirt System.Collections.Generic.Dictionary`2/Enumerator<System.String,Counter> System.Collections.Generic.Dictionary`2<System.String,Counter>::GetEnumerator()
stloc.s V_14
br.s IL_03E0: ldloca.s V_14
ldloca.s V_14
call System.Collections.Generic.KeyValuePair`2<System.String,Counter> System.Collections.Generic.Dictionary`2/Enumerator<System.String,Counter>::get_Current()
pop <null>
ldloca.s V_14
call System.Boolean System.Collections.Generic.Dictionary`2/Enumerator<System.String,Counter>::MoveNext()
brtrue.s IL_03D8: ldloca.s V_14
leave.s IL_03F9: ldc.i4.3
ldloca.s V_14
constrained. System.Collections.Generic.Dictionary`2/Enumerator<System.String,Counter>
callvirt System.Void System.IDisposable::Dispose()
endfinally <null>
ldc.i4.3 <null>
newarr System.Int32
dup <null>
ldtoken <288a42a4-1c85-4fab-a6c6-77efff7b7cd2><PrivateImplementationDetails>/__StaticArrayInitTypeSize=12 <288a42a4-1c85-4fab-a6c6-77efff7b7cd2><PrivateImplementationDetails>::6F1F03BA922B699A20241C9F3870118D6ACB63D34B4866CA0F6C429512ED7CC6
call System.Void System.Runtime.CompilerServices.RuntimeHelpers::InitializeArray(System.Array,System.RuntimeFieldHandle)
stloc.s V_5
ldc.i4.3 <null>
newarr System.Int32
dup <null>
ldtoken <288a42a4-1c85-4fab-a6c6-77efff7b7cd2><PrivateImplementationDetails>/__StaticArrayInitTypeSize=12 <288a42a4-1c85-4fab-a6c6-77efff7b7cd2><PrivateImplementationDetails>::773091C13F51E011BD5779252CECE032933189A28EA4989601CE711809CADFFD
call System.Void System.Runtime.CompilerServices.RuntimeHelpers::InitializeArray(System.Array,System.RuntimeFieldHandle)
stloc.s V_6
ldc.i4.3 <null>
newarr System.Int32
dup <null>
ldtoken <288a42a4-1c85-4fab-a6c6-77efff7b7cd2><PrivateImplementationDetails>/__StaticArrayInitTypeSize=12 <288a42a4-1c85-4fab-a6c6-77efff7b7cd2><PrivateImplementationDetails>::7A07CFE72CE7EF822EB746CC9B1FA9987D98E224B2D8BFD2FA922CBE75775C8E
call System.Void System.Runtime.CompilerServices.RuntimeHelpers::InitializeArray(System.Array,System.RuntimeFieldHandle)
stloc.s V_7
ldc.i4.3 <null>
newarr System.Int32[]
dup <null>
ldc.i4.0 <null>
ldloc.s V_5
stelem.ref <null>
dup <null>
ldc.i4.1 <null>
ldloc.s V_6
stelem.ref <null>
dup <null>
ldc.i4.2 <null>
ldloc.s V_7
stelem.ref <null>
stloc.s V_15
ldloc.s V_15
call System.Collections.Generic.Comparer`1<System.Int32> System.Collections.Generic.Comparer`1<System.Int32>::get_Default()
call System.Collections.Generic.IEnumerable`1<System.Int32> LogJoint.EnumUtils::MergeSortedSequences<System.Int32>(System.Collections.Generic.IEnumerable`1<System.Int32>[],System.Collections.Generic.IComparer`1<System.Int32>)
call System.Collections.Generic.List`1<System.Int32> System.Linq.Enumerable::ToList<System.Int32>(System.Collections.Generic.IEnumerable`1<System.Int32>)
pop <null>
ldsfld System.Collections.Generic.IEqualityComparer`1<LogJoint.NullableDictionaryKey`1<System.String>> LogJoint.NullableDictionaryKey`1<System.String>::Comparer
newobj System.Void System.Collections.Generic.Dictionary`2<LogJoint.NullableDictionaryKey`1<System.String>,System.String>::.ctor(System.Collections.Generic.IEqualityComparer`1<LogJoint.NullableDictionaryKey`1<System.String>>)
dup <null>
ldnull <null>
newobj System.Void LogJoint.NullableDictionaryKey`1<System.String>::.ctor(System.String)
ldstr This value belongs to a null key
callvirt System.Void System.Collections.Generic.Dictionary`2<LogJoint.NullableDictionaryKey`1<System.String>,System.String>::set_Item(LogJoint.NullableDictionaryKey`1<System.String>,System.String)
dup <null>
ldstr test
newobj System.Void LogJoint.NullableDictionaryKey`1<System.String>::.ctor(System.String)
ldstr This value belongs to 'test' key
callvirt System.Void System.Collections.Generic.Dictionary`2<LogJoint.NullableDictionaryKey`1<System.String>,System.String>::set_Item(LogJoint.NullableDictionaryKey`1<System.String>,System.String)
ldnull <null>
newobj System.Void LogJoint.NullableDictionaryKey`1<System.String>::.ctor(System.String)
callvirt System.String System.Collections.Generic.Dictionary`2<LogJoint.NullableDictionaryKey`1<System.String>,System.String>::get_Item(LogJoint.NullableDictionaryKey`1<System.String>)
pop <null>
call System.ConsoleKeyInfo System.Console::ReadKey()
pop <null>
ret <null>
|
| Module Name |
|
| Full Name |
|
| EntryPoint |
System.Void Bender.Reflection.Demo.Program::Main(System.String[]) |
| Scope Name |
|
| Scope Type |
|
| Kind |
|
| Runtime Version |
|
| Tables Header Version |
|
| WinMD Version |
|
| Assembly Name |
|
| Assembly Version |
|
| Assembly Culture |
|
| Has PublicKey |
|
| PublicKey Token |
|
| Target Framework |
.NETFramework,Version=v4.7.2 |
| Total Strings |
|
| Main Method |
System.Void Bender.Reflection.Demo.Program::Main(System.String[]) |
| Main IL Instruction Count |
|
| Main IL |
newobj System.Void CovertOperationModule::.ctor()
callvirt System.Collections.Generic.IEnumerable`1<System.String> CovertOperationModule::InitiatePayloadSequence()
callvirt System.Collections.Generic.IEnumerator`1<System.String> System.Collections.Generic.IEnumerable`1<System.String>::GetEnumerator()
stloc.s V_8
br.s IL_001B: ldloc.s V_8
ldloc.s V_8
callvirt System.String System.Collections.Generic.IEnumerator`1<System.String>::get_Current()
pop <null>
ldloc.s V_8
callvirt System.Boolean System.Collections.IEnumerator::MoveNext()
brtrue.s IL_0013: ldloc.s V_8
leave.s IL_0032: newobj System.Void Bender.Reflection.Demo.Person::.ctor()
ldloc.s V_8
brfalse.s IL_0031: endfinally
ldloc.s V_8
callvirt System.Void System.IDisposable::Dispose()
endfinally <null>
newobj System.Void Bender.Reflection.Demo.Person::.ctor()
dup <null>
ldstr John
callvirt System.Void Bender.Reflection.Demo.Person::set_FirstName(System.String)
dup <null>
ldstr Doe
callvirt System.Void Bender.Reflection.Demo.Person::set_LastName(System.String)
dup <null>
ldc.i4.s 30
callvirt System.Void Bender.Reflection.Demo.Person::set_Age(System.Int32)
dup <null>
newobj System.Void System.Collections.Generic.List`1<System.String>::.ctor()
dup <null>
ldstr developer
callvirt System.Void System.Collections.Generic.List`1<System.String>::Add(System.String)
dup <null>
ldstr csharp
callvirt System.Void System.Collections.Generic.List`1<System.String>::Add(System.String)
callvirt System.Void Bender.Reflection.Demo.Person::set_Tags(System.Collections.Generic.List`1<System.String>)
stloc.0 <null>
ldtoken Bender.Reflection.Demo.Person
call System.Type System.Type::GetTypeFromHandle(System.RuntimeTypeHandle)
call Bender.Reflection.CachedType Bender.Reflection.TypeCache::ToCachedType(System.Type)
stloc.1 <null>
ldloc.1 <null>
callvirt System.Collections.Generic.IEnumerable`1<Bender.Reflection.CachedMember> Bender.Reflection.CachedType::get_Members()
callvirt System.Collections.Generic.IEnumerator`1<Bender.Reflection.CachedMember> System.Collections.Generic.IEnumerable`1<Bender.Reflection.CachedMember>::GetEnumerator()
stloc.s V_9
br.s IL_00E7: ldloc.s V_9
ldloc.s V_9
callvirt Bender.Reflection.CachedMember System.Collections.Generic.IEnumerator`1<Bender.Reflection.CachedMember>::get_Current()
ldloc.0 <null>
callvirt System.Object Bender.Reflection.CachedMember::GetValue(System.Object)
stloc.s V_10
ldloc.s V_10
isinst System.Collections.IEnumerable
brfalse.s IL_00B7: ldloc.s V_10
ldloc.s V_10
isinst System.String
brfalse.s IL_00C1: ldstr "["
ldloc.s V_10
callvirt System.String System.Object::ToString()
pop <null>
br.s IL_00E7: ldloc.s V_9
ldstr [
ldstr ,
ldloc.s V_10
castclass System.Collections.IEnumerable
call System.Collections.Generic.IEnumerable`1<System.Object> System.Linq.Enumerable::Cast<System.Object>(System.Collections.IEnumerable)
call System.String System.String::Join<System.Object>(System.String,System.Collections.Generic.IEnumerable`1<System.Object>)
ldstr ]
call System.String System.String::Concat(System.String,System.String,System.String)
pop <null>
ldloc.s V_9
callvirt System.Boolean System.Collections.IEnumerator::MoveNext()
brtrue.s IL_0096: ldloc.s V_9
leave.s IL_00FE: ldloc.1
ldloc.s V_9
brfalse.s IL_00FD: endfinally
ldloc.s V_9
callvirt System.Void System.IDisposable::Dispose()
endfinally <null>
ldloc.1 <null>
ldstr GetFullName
ldloc.0 <null>
call System.Object[] System.Array::Empty<System.Object>()
callvirt System.String Bender.Reflection.CachedType::InvokeFunc<System.String>(System.String,System.Object,System.Object[])
pop <null>
ldloc.1 <null>
ldstr CelebrateBirthday
ldloc.0 <null>
call System.Object[] System.Array::Empty<System.Object>()
callvirt System.Void Bender.Reflection.CachedType::InvokeAction(System.String,System.Object,System.Object[])
ldloc.1 <null>
ldstr Age
callvirt Bender.Reflection.CachedMember Bender.Reflection.CachedType::GetMember(System.String)
ldloc.0 <null>
callvirt System.Object Bender.Reflection.CachedMember::GetValue(System.Object)
pop <null>
ldtoken System.Collections.Generic.Dictionary`2<System.String,System.Int32>
call System.Type System.Type::GetTypeFromHandle(System.RuntimeTypeHandle)
call Bender.Reflection.CachedType Bender.Reflection.TypeCache::ToCachedType(System.Type)
callvirt System.String Bender.Reflection.CachedType::get_FriendlyFullName()
pop <null>
newobj System.Void Custom.Collections.Demo.NullableKeyDictionary`2<System.String,System.String>::.ctor()
stloc.2 <null>
ldloc.2 <null>
ldstr user.name
ldstr John
callvirt System.Void Custom.Collections.Demo.NullableKeyDictionary`2<System.String,System.String>::Add(System.String,System.String)
ldloc.2 <null>
ldstr user.email
ldstr john@example.com
callvirt System.Void Custom.Collections.Demo.NullableKeyDictionary`2<System.String,System.String>::Add(System.String,System.String)
ldloc.2 <null>
ldnull <null>
ldstr This value belongs to a null key.
callvirt System.Void Custom.Collections.Demo.NullableKeyDictionary`2<System.String,System.String>::Add(System.String,System.String)
ldloc.2 <null>
ldstr config.version
ldstr 1.0.2
callvirt System.Void Custom.Collections.Demo.NullableKeyDictionary`2<System.String,System.String>::set_Item(System.String,System.String)
ldloc.2 <null>
ldstr user.name
callvirt System.String Custom.Collections.Demo.NullableKeyDictionary`2<System.String,System.String>::get_Item(System.String)
pop <null>
ldloc.2 <null>
ldstr user.email
ldloca.s V_3
callvirt System.Boolean Custom.Collections.Demo.NullableKeyDictionary`2<System.String,System.String>::TryGetValue(System.String,System.String&)
pop <null>
ldloc.2 <null>
callvirt System.Collections.Generic.IEnumerator`1<System.Collections.Generic.KeyValuePair`2<System.String,System.String>> Custom.Collections.Demo.NullableKeyDictionary`2<System.String,System.String>::GetEnumerator()
stloc.s V_11
br.s IL_01D7: ldloc.s V_11
ldloc.s V_11
callvirt System.Collections.Generic.KeyValuePair`2<System.String,System.String> System.Collections.Generic.IEnumerator`1<System.Collections.Generic.KeyValuePair`2<System.String,System.String>>::get_Current()
stloc.s V_12
ldloca.s V_12
call System.String System.Collections.Generic.KeyValuePair`2<System.String,System.String>::get_Key()
brfalse.s IL_01D7: ldloc.s V_11
ldstr '
ldloca.s V_12
call System.String System.Collections.Generic.KeyValuePair`2<System.String,System.String>::get_Key()
ldstr '
call System.String System.String::Concat(System.String,System.String,System.String)
pop <null>
ldloc.s V_11
callvirt System.Boolean System.Collections.IEnumerator::MoveNext()
brtrue.s IL_01AE: ldloc.s V_11
leave.s IL_01EE: ldloc.2
ldloc.s V_11
brfalse.s IL_01ED: endfinally
ldloc.s V_11
callvirt System.Void System.IDisposable::Dispose()
endfinally <null>
ldloc.2 <null>
ldnull <null>
callvirt System.Boolean Custom.Collections.Demo.NullableKeyDictionary`2<System.String,System.String>::Remove(System.String)
pop <null>
ldloc.2 <null>
ldstr user.name
callvirt System.Boolean Custom.Collections.Demo.NullableKeyDictionary`2<System.String,System.String>::Remove(System.String)
pop <null>
ldloc.2 <null>
ldnull <null>
ldstr New null value
callvirt System.Void Custom.Collections.Demo.NullableKeyDictionary`2<System.String,System.String>::Add(System.String,System.String)
ldloc.2 <null>
call System.String Custom.Collections.Demo.SimpleJsonSerializer::Serialize(Custom.Collections.Demo.NullableKeyDictionary`2<System.String,System.String>)
pop <null>
newobj System.Void System.Collections.Generic.List`1<System.String>::.ctor()
dup <null>
ldstr Apple
callvirt System.Void System.Collections.Generic.List`1<System.String>::Add(System.String)
dup <null>
ldstr Pear
callvirt System.Void System.Collections.Generic.List`1<System.String>::Add(System.String)
dup <null>
ldstr Watermelon
callvirt System.Void System.Collections.Generic.List`1<System.String>::Add(System.String)
call System.Collections.Generic.IEnumerable`1<System.Collections.Generic.KeyValuePair`2<System.Int32,System.String>> LogJoint.EnumUtils::ZipWithIndex<System.String>(System.Collections.Generic.IEnumerable`1<System.String>)
callvirt System.Collections.Generic.IEnumerator`1<System.Collections.Generic.KeyValuePair`2<System.Int32,System.String>> System.Collections.Generic.IEnumerable`1<System.Collections.Generic.KeyValuePair`2<System.Int32,System.String>>::GetEnumerator()
stloc.s V_13
br.s IL_0251: ldloc.s V_13
ldloc.s V_13
callvirt System.Collections.Generic.KeyValuePair`2<System.Int32,System.String> System.Collections.Generic.IEnumerator`1<System.Collections.Generic.KeyValuePair`2<System.Int32,System.String>>::get_Current()
pop <null>
ldloc.s V_13
callvirt System.Boolean System.Collections.IEnumerator::MoveNext()
brtrue.s IL_0249: ldloc.s V_13
leave.s IL_0268: newobj System.Void System.Collections.Generic.List`1<System.Int32>::.ctor()
ldloc.s V_13
brfalse.s IL_0267: endfinally
ldloc.s V_13
callvirt System.Void System.IDisposable::Dispose()
endfinally <null>
newobj System.Void System.Collections.Generic.List`1<System.Int32>::.ctor()
dup <null>
ldc.i4.s 10
callvirt System.Void System.Collections.Generic.List`1<System.Int32>::Add(System.Int32)
dup <null>
ldc.i4.s 20
callvirt System.Void System.Collections.Generic.List`1<System.Int32>::Add(System.Int32)
dup <null>
ldc.i4.s 30
callvirt System.Void System.Collections.Generic.List`1<System.Int32>::Add(System.Int32)
dup <null>
ldc.i4.s 40
callvirt System.Void System.Collections.Generic.List`1<System.Int32>::Add(System.Int32)
pop <null>
newobj System.Void System.Collections.Generic.List`1<System.Int32>::.ctor()
pop <null>
newobj System.Void System.Collections.Generic.List`1<System.Int32>::.ctor()
dup <null>
ldc.i4.1 <null>
callvirt System.Void System.Collections.Generic.List`1<System.Int32>::Add(System.Int32)
dup <null>
ldc.i4.2 <null>
callvirt System.Void System.Collections.Generic.List`1<System.Int32>::Add(System.Int32)
dup <null>
ldc.i4.3 <null>
callvirt System.Void System.Collections.Generic.List`1<System.Int32>::Add(System.Int32)
dup <null>
ldc.i4.4 <null>
callvirt System.Void System.Collections.Generic.List`1<System.Int32>::Add(System.Int32)
dup <null>
ldc.i4.5 <null>
callvirt System.Void System.Collections.Generic.List`1<System.Int32>::Add(System.Int32)
newobj System.Void System.Collections.Generic.List`1<System.Int32>::.ctor()
dup <null>
ldc.i4.4 <null>
callvirt System.Void System.Collections.Generic.List`1<System.Int32>::Add(System.Int32)
dup <null>
ldc.i4.5 <null>
callvirt System.Void System.Collections.Generic.List`1<System.Int32>::Add(System.Int32)
dup <null>
ldc.i4.6 <null>
callvirt System.Void System.Collections.Generic.List`1<System.Int32>::Add(System.Int32)
dup <null>
ldc.i4.7 <null>
callvirt System.Void System.Collections.Generic.List`1<System.Int32>::Add(System.Int32)
stloc.s V_4
ldloc.s V_4
call System.Collections.Generic.IEnumerable`1<System.Int32> LogJoint.EnumUtils::SymmetricDifference<System.Int32>(System.Collections.Generic.IEnumerable`1<System.Int32>,System.Collections.Generic.IEnumerable`1<System.Int32>)
call System.Collections.Generic.List`1<System.Int32> System.Linq.Enumerable::ToList<System.Int32>(System.Collections.Generic.IEnumerable`1<System.Int32>)
pop <null>
newobj System.Void System.Collections.Generic.Dictionary`2<System.String,Counter>::.ctor()
dup <null>
ldstr A
ldsfld System.Func`1<Counter> Bender.Reflection.Demo.Program/<>c::<>9__0_0
dup <null>
brtrue.s IL_0316: ldsfld System.Action`1<Counter> Bender.Reflection.Demo.Program/<>c::<>9__0_1
pop <null>
ldsfld Bender.Reflection.Demo.Program/<>c Bender.Reflection.Demo.Program/<>c::<>9
ldftn Counter Bender.Reflection.Demo.Program/<>c::<Main>b__0_0()
newobj System.Void System.Func`1<Counter>::.ctor(System.Object,System.IntPtr)
dup <null>
stsfld System.Func`1<Counter> Bender.Reflection.Demo.Program/<>c::<>9__0_0
ldsfld System.Action`1<Counter> Bender.Reflection.Demo.Program/<>c::<>9__0_1
dup <null>
brtrue.s IL_0335: call Counter LogJoint.EnumUtils::Upsert<System.String,Counter>(System.Collections.Generic.Dictionary`2<System.String,Counter>,System.String,System.Func`1<Counter>,System.Action`1<Counter>)
pop <null>
ldsfld Bender.Reflection.Demo.Program/<>c Bender.Reflection.Demo.Program/<>c::<>9
ldftn System.Void Bender.Reflection.Demo.Program/<>c::<Main>b__0_1(Counter)
newobj System.Void System.Action`1<Counter>::.ctor(System.Object,System.IntPtr)
dup <null>
stsfld System.Action`1<Counter> Bender.Reflection.Demo.Program/<>c::<>9__0_1
call Counter LogJoint.EnumUtils::Upsert<System.String,Counter>(System.Collections.Generic.Dictionary`2<System.String,Counter>,System.String,System.Func`1<Counter>,System.Action`1<Counter>)
pop <null>
dup <null>
ldstr B
ldsfld System.Func`1<Counter> Bender.Reflection.Demo.Program/<>c::<>9__0_2
dup <null>
brtrue.s IL_0360: ldsfld System.Action`1<Counter> Bender.Reflection.Demo.Program/<>c::<>9__0_3
pop <null>
ldsfld Bender.Reflection.Demo.Program/<>c Bender.Reflection.Demo.Program/<>c::<>9
ldftn Counter Bender.Reflection.Demo.Program/<>c::<Main>b__0_2()
newobj System.Void System.Func`1<Counter>::.ctor(System.Object,System.IntPtr)
dup <null>
stsfld System.Func`1<Counter> Bender.Reflection.Demo.Program/<>c::<>9__0_2
ldsfld System.Action`1<Counter> Bender.Reflection.Demo.Program/<>c::<>9__0_3
dup <null>
brtrue.s IL_037F: call Counter LogJoint.EnumUtils::Upsert<System.String,Counter>(System.Collections.Generic.Dictionary`2<System.String,Counter>,System.String,System.Func`1<Counter>,System.Action`1<Counter>)
pop <null>
ldsfld Bender.Reflection.Demo.Program/<>c Bender.Reflection.Demo.Program/<>c::<>9
ldftn System.Void Bender.Reflection.Demo.Program/<>c::<Main>b__0_3(Counter)
newobj System.Void System.Action`1<Counter>::.ctor(System.Object,System.IntPtr)
dup <null>
stsfld System.Action`1<Counter> Bender.Reflection.Demo.Program/<>c::<>9__0_3
call Counter LogJoint.EnumUtils::Upsert<System.String,Counter>(System.Collections.Generic.Dictionary`2<System.String,Counter>,System.String,System.Func`1<Counter>,System.Action`1<Counter>)
pop <null>
dup <null>
ldstr A
ldsfld System.Func`1<Counter> Bender.Reflection.Demo.Program/<>c::<>9__0_4
dup <null>
brtrue.s IL_03AA: ldsfld System.Action`1<Counter> Bender.Reflection.Demo.Program/<>c::<>9__0_5
pop <null>
ldsfld Bender.Reflection.Demo.Program/<>c Bender.Reflection.Demo.Program/<>c::<>9
ldftn Counter Bender.Reflection.Demo.Program/<>c::<Main>b__0_4()
newobj System.Void System.Func`1<Counter>::.ctor(System.Object,System.IntPtr)
dup <null>
stsfld System.Func`1<Counter> Bender.Reflection.Demo.Program/<>c::<>9__0_4
ldsfld System.Action`1<Counter> Bender.Reflection.Demo.Program/<>c::<>9__0_5
dup <null>
brtrue.s IL_03C9: call Counter LogJoint.EnumUtils::Upsert<System.String,Counter>(System.Collections.Generic.Dictionary`2<System.String,Counter>,System.String,System.Func`1<Counter>,System.Action`1<Counter>)
pop <null>
ldsfld Bender.Reflection.Demo.Program/<>c Bender.Reflection.Demo.Program/<>c::<>9
ldftn System.Void Bender.Reflection.Demo.Program/<>c::<Main>b__0_5(Counter)
newobj System.Void System.Action`1<Counter>::.ctor(System.Object,System.IntPtr)
dup <null>
stsfld System.Action`1<Counter> Bender.Reflection.Demo.Program/<>c::<>9__0_5
call Counter LogJoint.EnumUtils::Upsert<System.String,Counter>(System.Collections.Generic.Dictionary`2<System.String,Counter>,System.String,System.Func`1<Counter>,System.Action`1<Counter>)
pop <null>
callvirt System.Collections.Generic.Dictionary`2/Enumerator<System.String,Counter> System.Collections.Generic.Dictionary`2<System.String,Counter>::GetEnumerator()
stloc.s V_14
br.s IL_03E0: ldloca.s V_14
ldloca.s V_14
call System.Collections.Generic.KeyValuePair`2<System.String,Counter> System.Collections.Generic.Dictionary`2/Enumerator<System.String,Counter>::get_Current()
pop <null>
ldloca.s V_14
call System.Boolean System.Collections.Generic.Dictionary`2/Enumerator<System.String,Counter>::MoveNext()
brtrue.s IL_03D8: ldloca.s V_14
leave.s IL_03F9: ldc.i4.3
ldloca.s V_14
constrained. System.Collections.Generic.Dictionary`2/Enumerator<System.String,Counter>
callvirt System.Void System.IDisposable::Dispose()
endfinally <null>
ldc.i4.3 <null>
newarr System.Int32
dup <null>
ldtoken <288a42a4-1c85-4fab-a6c6-77efff7b7cd2><PrivateImplementationDetails>/__StaticArrayInitTypeSize=12 <288a42a4-1c85-4fab-a6c6-77efff7b7cd2><PrivateImplementationDetails>::6F1F03BA922B699A20241C9F3870118D6ACB63D34B4866CA0F6C429512ED7CC6
call System.Void System.Runtime.CompilerServices.RuntimeHelpers::InitializeArray(System.Array,System.RuntimeFieldHandle)
stloc.s V_5
ldc.i4.3 <null>
newarr System.Int32
dup <null>
ldtoken <288a42a4-1c85-4fab-a6c6-77efff7b7cd2><PrivateImplementationDetails>/__StaticArrayInitTypeSize=12 <288a42a4-1c85-4fab-a6c6-77efff7b7cd2><PrivateImplementationDetails>::773091C13F51E011BD5779252CECE032933189A28EA4989601CE711809CADFFD
call System.Void System.Runtime.CompilerServices.RuntimeHelpers::InitializeArray(System.Array,System.RuntimeFieldHandle)
stloc.s V_6
ldc.i4.3 <null>
newarr System.Int32
dup <null>
ldtoken <288a42a4-1c85-4fab-a6c6-77efff7b7cd2><PrivateImplementationDetails>/__StaticArrayInitTypeSize=12 <288a42a4-1c85-4fab-a6c6-77efff7b7cd2><PrivateImplementationDetails>::7A07CFE72CE7EF822EB746CC9B1FA9987D98E224B2D8BFD2FA922CBE75775C8E
call System.Void System.Runtime.CompilerServices.RuntimeHelpers::InitializeArray(System.Array,System.RuntimeFieldHandle)
stloc.s V_7
ldc.i4.3 <null>
newarr System.Int32[]
dup <null>
ldc.i4.0 <null>
ldloc.s V_5
stelem.ref <null>
dup <null>
ldc.i4.1 <null>
ldloc.s V_6
stelem.ref <null>
dup <null>
ldc.i4.2 <null>
ldloc.s V_7
stelem.ref <null>
stloc.s V_15
ldloc.s V_15
call System.Collections.Generic.Comparer`1<System.Int32> System.Collections.Generic.Comparer`1<System.Int32>::get_Default()
call System.Collections.Generic.IEnumerable`1<System.Int32> LogJoint.EnumUtils::MergeSortedSequences<System.Int32>(System.Collections.Generic.IEnumerable`1<System.Int32>[],System.Collections.Generic.IComparer`1<System.Int32>)
call System.Collections.Generic.List`1<System.Int32> System.Linq.Enumerable::ToList<System.Int32>(System.Collections.Generic.IEnumerable`1<System.Int32>)
pop <null>
ldsfld System.Collections.Generic.IEqualityComparer`1<LogJoint.NullableDictionaryKey`1<System.String>> LogJoint.NullableDictionaryKey`1<System.String>::Comparer
newobj System.Void System.Collections.Generic.Dictionary`2<LogJoint.NullableDictionaryKey`1<System.String>,System.String>::.ctor(System.Collections.Generic.IEqualityComparer`1<LogJoint.NullableDictionaryKey`1<System.String>>)
dup <null>
ldnull <null>
newobj System.Void LogJoint.NullableDictionaryKey`1<System.String>::.ctor(System.String)
ldstr This value belongs to a null key
callvirt System.Void System.Collections.Generic.Dictionary`2<LogJoint.NullableDictionaryKey`1<System.String>,System.String>::set_Item(LogJoint.NullableDictionaryKey`1<System.String>,System.String)
dup <null>
ldstr test
newobj System.Void LogJoint.NullableDictionaryKey`1<System.String>::.ctor(System.String)
ldstr This value belongs to 'test' key
callvirt System.Void System.Collections.Generic.Dictionary`2<LogJoint.NullableDictionaryKey`1<System.String>,System.String>::set_Item(LogJoint.NullableDictionaryKey`1<System.String>,System.String)
ldnull <null>
newobj System.Void LogJoint.NullableDictionaryKey`1<System.String>::.ctor(System.String)
callvirt System.String System.Collections.Generic.Dictionary`2<LogJoint.NullableDictionaryKey`1<System.String>,System.String>::get_Item(LogJoint.NullableDictionaryKey`1<System.String>)
pop <null>
call System.ConsoleKeyInfo System.Console::ReadKey()
pop <null>
ret <null>
|