From 5f26b2d6f07acfc2de3f04229e1f9a8dba975b4f Mon Sep 17 00:00:00 2001 From: Katy Coe Date: Mon, 21 Oct 2019 00:28:52 +0200 Subject: [PATCH] Add NUnit test chassis and Powershelll test generator scripts --- Il2CppInspector.sln | 17 +- Il2CppTests/Il2CppTests.csproj | 40 + .../GameAssembly-Generics.cs | 37247 +++++++++++++++ .../GameAssembly-Methods.cs | 37249 ++++++++++++++++ Il2CppTests/TestExpectedResults/Generics.cs | 37247 +++++++++++++++ Il2CppTests/TestExpectedResults/Methods.cs | 37249 ++++++++++++++++ Il2CppTests/TestRunner.cs | 53 + Il2CppTests/TestSources/Generics.cs | 15 + Il2CppTests/TestSources/Methods.cs | 22 + Il2CppTests/generate-binaries.ps1 | 100 + Il2CppTests/generate-tests.ps1 | 33 + 11 files changed, 149268 insertions(+), 4 deletions(-) create mode 100644 Il2CppTests/Il2CppTests.csproj create mode 100644 Il2CppTests/TestExpectedResults/GameAssembly-Generics.cs create mode 100644 Il2CppTests/TestExpectedResults/GameAssembly-Methods.cs create mode 100644 Il2CppTests/TestExpectedResults/Generics.cs create mode 100644 Il2CppTests/TestExpectedResults/Methods.cs create mode 100644 Il2CppTests/TestRunner.cs create mode 100644 Il2CppTests/TestSources/Generics.cs create mode 100644 Il2CppTests/TestSources/Methods.cs create mode 100644 Il2CppTests/generate-binaries.ps1 create mode 100644 Il2CppTests/generate-tests.ps1 diff --git a/Il2CppInspector.sln b/Il2CppInspector.sln index c3236dd..318a753 100644 --- a/Il2CppInspector.sln +++ b/Il2CppInspector.sln @@ -1,13 +1,15 @@  Microsoft Visual Studio Solution File, Format Version 12.00 -# Visual Studio 15 -VisualStudioVersion = 15.0.26228.9 +# Visual Studio Version 16 +VisualStudioVersion = 16.0.29409.12 MinimumVisualStudioVersion = 10.0.40219.1 Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Bin2Object", "Bin2Object\Bin2Object\Bin2Object.csproj", "{55382D6C-01B6-4AFD-850C-7A79DAB6F270}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Il2CppInspector", "Il2CppInspector\Il2CppInspector.csproj", "{E4721466-CC6F-47EB-AD48-F4DE70D77E5C}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Il2CppInspector", "Il2CppInspector\Il2CppInspector.csproj", "{E4721466-CC6F-47EB-AD48-F4DE70D77E5C}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Il2CppDumper", "Il2CppDumper\Il2CppDumper.csproj", "{EA4C27DF-4640-48DF-8CAF-5587884CAF30}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Il2CppDumper", "Il2CppDumper\Il2CppDumper.csproj", "{EA4C27DF-4640-48DF-8CAF-5587884CAF30}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Il2CppTests", "Il2CppTests\Il2CppTests.csproj", "{389E4BDF-A749-4554-848B-32B3B6EE5684}" EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution @@ -27,8 +29,15 @@ Global {EA4C27DF-4640-48DF-8CAF-5587884CAF30}.Debug|Any CPU.Build.0 = Debug|Any CPU {EA4C27DF-4640-48DF-8CAF-5587884CAF30}.Release|Any CPU.ActiveCfg = Release|Any CPU {EA4C27DF-4640-48DF-8CAF-5587884CAF30}.Release|Any CPU.Build.0 = Release|Any CPU + {389E4BDF-A749-4554-848B-32B3B6EE5684}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {389E4BDF-A749-4554-848B-32B3B6EE5684}.Debug|Any CPU.Build.0 = Debug|Any CPU + {389E4BDF-A749-4554-848B-32B3B6EE5684}.Release|Any CPU.ActiveCfg = Release|Any CPU + {389E4BDF-A749-4554-848B-32B3B6EE5684}.Release|Any CPU.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE EndGlobalSection + GlobalSection(ExtensibilityGlobals) = postSolution + SolutionGuid = {A2F9DB35-5C65-4A94-8DD8-36FF9F3590C7} + EndGlobalSection EndGlobal diff --git a/Il2CppTests/Il2CppTests.csproj b/Il2CppTests/Il2CppTests.csproj new file mode 100644 index 0000000..0e84117 --- /dev/null +++ b/Il2CppTests/Il2CppTests.csproj @@ -0,0 +1,40 @@ + + + + netcoreapp3.0 + + false + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Il2CppTests/TestExpectedResults/GameAssembly-Generics.cs b/Il2CppTests/TestExpectedResults/GameAssembly-Generics.cs new file mode 100644 index 0000000..862fc51 --- /dev/null +++ b/Il2CppTests/TestExpectedResults/GameAssembly-Generics.cs @@ -0,0 +1,37247 @@ +// Image 0: mscorlib.dll - 0 +// Image 1: Generics.dll - 1810 + +// Namespace: +internal class // TypeDefIndex: 0 +{ +} + +// Namespace: System +[Serializable] +public class Object // TypeDefIndex: 1 +{ + // Methods + public void .ctor(); // 0x100C5530 + public virtual bool Equals(object obj); // 0x100F8860 + public static bool Equals(object objA, object objB); // 0x100F8820 + protected override void Finalize(); // 0x100C5530 + public virtual int GetHashCode(); // 0x100F8870 + public Type GetType(); // 0x100ED2B0 + protected object MemberwiseClone(); // 0x100F8880 + public virtual string ToString(); // 0x100F8890 + public static bool ReferenceEquals(object objA, object objB); // 0x100F8860 + internal static int InternalGetHashCode(object o); // 0x100F8870 + internal IntPtr obj_address(); // 0x100F88D0 + private void FieldGetter(string typeName, string fieldName, object val); // 0x100C5530 + private void FieldSetter(string typeName, string fieldName, object val); // 0x100C5530 +} + +// Namespace: System +[Serializable] +public abstract class ValueType // TypeDefIndex: 2 +{ + // Methods + protected void .ctor(); // 0x100BF000 + private static bool InternalEquals(object o1, object o2, out object[] fields); // 0x1034A220 + internal static bool DefaultEquals(object o1, object o2); // 0x1034A0F0 + public override bool Equals(object obj); // 0x1034A0F0 + internal static int InternalGetHashCode(object o, out object[] fields); // 0x1034A240 + public override int GetHashCode(); // 0x1034A190 + public override string ToString(); // 0x1034A260 +} + +// Namespace: System +[Serializable] +public abstract class Attribute : _Attribute // TypeDefIndex: 3 +{ + // Properties + public virtual object TypeId { get; } // 0x1015CD60 + + // Methods + protected void .ctor(); // 0x100BF000 + private void System.Runtime.InteropServices._Attribute.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x10311FE0 + private void System.Runtime.InteropServices._Attribute.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x10312080 + private void System.Runtime.InteropServices._Attribute.GetTypeInfoCount(out uint pcTInfo); // 0x10312030 + private void System.Runtime.InteropServices._Attribute.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x103120D0 + private static void CheckParameters(object element, Type attributeType); // 0x10310D50 + private static Attribute FindAttribute(object[] attributes); // 0x10310EE0 + public static Attribute GetCustomAttribute(ParameterInfo element, Type attributeType); // 0x10310F80 + public static Attribute GetCustomAttribute(MemberInfo element, Type attributeType); // 0x10311110 + public static Attribute GetCustomAttribute(Assembly element, Type attributeType); // 0x10311020 + public static Attribute GetCustomAttribute(Module element, Type attributeType); // 0x10311070 + public static Attribute GetCustomAttribute(Module element, Type attributeType, bool inherit); // 0x10310FD0 + public static Attribute GetCustomAttribute(Assembly element, Type attributeType, bool inherit); // 0x103110C0 + public static Attribute GetCustomAttribute(ParameterInfo element, Type attributeType, bool inherit); // 0x10311180 + public static Attribute GetCustomAttribute(MemberInfo element, Type attributeType, bool inherit); // 0x103111D0 + public static Attribute[] GetCustomAttributes(Assembly element); // 0x10311AA0 + public static Attribute[] GetCustomAttributes(ParameterInfo element); // 0x103116E0 + public static Attribute[] GetCustomAttributes(MemberInfo element); // 0x10311A80 + public static Attribute[] GetCustomAttributes(Module element); // 0x10311230 + public static Attribute[] GetCustomAttributes(Assembly element, Type attributeType); // 0x10311650 + public static Attribute[] GetCustomAttributes(Module element, Type attributeType); // 0x10311840 + public static Attribute[] GetCustomAttributes(ParameterInfo element, Type attributeType); // 0x103119F0 + public static Attribute[] GetCustomAttributes(MemberInfo element, Type type); // 0x10311370 + public static Attribute[] GetCustomAttributes(Assembly element, Type attributeType, bool inherit); // 0x103112E0 + public static Attribute[] GetCustomAttributes(ParameterInfo element, Type attributeType, bool inherit); // 0x103115C0 + public static Attribute[] GetCustomAttributes(Module element, Type attributeType, bool inherit); // 0x10311530 + public static Attribute[] GetCustomAttributes(MemberInfo element, Type type, bool inherit); // 0x10311460 + public static Attribute[] GetCustomAttributes(Module element, bool inherit); // 0x10311B50 + public static Attribute[] GetCustomAttributes(Assembly element, bool inherit); // 0x10311C00 + public static Attribute[] GetCustomAttributes(MemberInfo element, bool inherit); // 0x103118D0 + public static Attribute[] GetCustomAttributes(ParameterInfo element, bool inherit); // 0x10311790 + public override int GetHashCode(); // 0x102110E0 + public virtual bool IsDefaultAttribute(); // 0x100EFBF0 + public static bool IsDefined(Module element, Type attributeType); // 0x10311E60 + public static bool IsDefined(ParameterInfo element, Type attributeType); // 0x10311F50 + public static bool IsDefined(MemberInfo element, Type attributeType); // 0x10311E00 + public static bool IsDefined(Assembly element, Type attributeType); // 0x10311E20 + public static bool IsDefined(MemberInfo element, Type attributeType, bool inherit); // 0x10311CF0 + public static bool IsDefined(Assembly element, Type attributeType, bool inherit); // 0x10311CB0 + public static bool IsDefined(Module element, Type attributeType, bool inherit); // 0x10311F10 + public static bool IsDefined(ParameterInfo element, Type attributeType, bool inherit); // 0x10311EA0 + public virtual bool Match(object obj); // 0x10311FC0 + public override bool Equals(object obj); // 0x10310E60 +} + +// Namespace: System.Runtime.InteropServices +public interface _Attribute // TypeDefIndex: 4 +{ + // Methods + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); +} + +// Namespace: System +[Serializable] +public struct Int32 : IFormattable, IConvertible, IComparable, IComparable`1, IEquatable`1 // TypeDefIndex: 5 +{ + // Fields + public const int MaxValue = 2147483647; // 0x00 + public const int MinValue = -2147483648; // 0x00 + internal int m_value; // 0x08 + + // Methods + private bool System.IConvertible.ToBoolean(IFormatProvider provider); // 0x10004860 + private byte System.IConvertible.ToByte(IFormatProvider provider); // 0x100048C0 + private char System.IConvertible.ToChar(IFormatProvider provider); // 0x10004920 + private DateTime System.IConvertible.ToDateTime(IFormatProvider provider); // 0x10004980 + private Decimal System.IConvertible.ToDecimal(IFormatProvider provider); // 0x100049F0 + private double System.IConvertible.ToDouble(IFormatProvider provider); // 0x10004A60 + private short System.IConvertible.ToInt16(IFormatProvider provider); // 0x10004AC0 + private int System.IConvertible.ToInt32(IFormatProvider provider); // 0x10003A80 + private long System.IConvertible.ToInt64(IFormatProvider provider); // 0x10004B20 + private sbyte System.IConvertible.ToSByte(IFormatProvider provider); // 0x10004B80 + private float System.IConvertible.ToSingle(IFormatProvider provider); // 0x10004BE0 + private object System.IConvertible.ToType(Type targetType, IFormatProvider provider); // 0x10004C40 + private ushort System.IConvertible.ToUInt16(IFormatProvider provider); // 0x10004CF0 + private uint System.IConvertible.ToUInt32(IFormatProvider provider); // 0x10004D50 + private ulong System.IConvertible.ToUInt64(IFormatProvider provider); // 0x10004DB0 + public int CompareTo(object value); // 0x100046F0 + public override bool Equals(object obj); // 0x100047C0 + public override int GetHashCode(); // 0x10003A80 + public int CompareTo(int value); // 0x100047A0 + public bool Equals(int obj); // 0x10004830 + internal static bool ProcessTrailingWhitespace(bool tryParse, string s, int position, Exception exc); // 0x100FB5B0 + internal static bool Parse(string s, bool tryParse, out int result, out Exception exc); // 0x100FA7E0 + public static int Parse(string s, IFormatProvider provider); // 0x100FA7C0 + public static int Parse(string s, NumberStyles style); // 0x100FB4B0 + internal static bool CheckStyle(NumberStyles style, bool tryParse, Exception exc); // 0x100F9F50 + internal static bool JumpOverWhite(int pos, string s, bool reportError, bool tryParse, Exception exc); // 0x100FA6D0 + internal static void FindSign(int pos, string s, NumberFormatInfo nfi, bool foundSign, bool negative); // 0x100FA5B0 + internal static void FindCurrency(int pos, string s, NumberFormatInfo nfi, bool foundCurrency); // 0x100FA150 + internal static bool FindExponent(int pos, string s, int exponent, bool tryParse, Exception exc); // 0x100FA200 + internal static bool FindOther(int pos, string s, string other); // 0x100FA510 + internal static bool ValidDigit(char e, bool allowHex); // 0x100FB870 + internal static Exception GetFormatException(); // 0x100FA670 + internal static bool Parse(string s, NumberStyles style, IFormatProvider fp, bool tryParse, out int result, out Exception exc); // 0x100FAA10 + public static int Parse(string s); // 0x100FB540 + public static int Parse(string s, NumberStyles style, IFormatProvider provider); // 0x100FB4D0 + public static bool TryParse(string s, out int result); // 0x100FB7E0 + public static bool TryParse(string s, NumberStyles style, IFormatProvider provider, out int result); // 0x100FB820 + public override string ToString(); // 0x10004ED0 + public string ToString(IFormatProvider provider); // 0x10004F30 + public string ToString(string format); // 0x10004E70 + public string ToString(string format, IFormatProvider provider); // 0x10004E10 + public TypeCode GetTypeCode(); // 0x10004850 +} + +// Namespace: System +public interface IFormattable // TypeDefIndex: 6 +{ + // Methods + string ToString(string format, IFormatProvider formatProvider); +} + +// Namespace: System +public interface IConvertible // TypeDefIndex: 7 +{ + // Methods + TypeCode GetTypeCode(); + bool ToBoolean(IFormatProvider provider); + byte ToByte(IFormatProvider provider); + char ToChar(IFormatProvider provider); + DateTime ToDateTime(IFormatProvider provider); + Decimal ToDecimal(IFormatProvider provider); + double ToDouble(IFormatProvider provider); + short ToInt16(IFormatProvider provider); + int ToInt32(IFormatProvider provider); + long ToInt64(IFormatProvider provider); + sbyte ToSByte(IFormatProvider provider); + float ToSingle(IFormatProvider provider); + string ToString(IFormatProvider provider); + object ToType(Type conversionType, IFormatProvider provider); + ushort ToUInt16(IFormatProvider provider); + uint ToUInt32(IFormatProvider provider); + ulong ToUInt64(IFormatProvider provider); +} + +// Namespace: System +public interface IComparable // TypeDefIndex: 8 +{ + // Methods + int CompareTo(object obj); +} + +// Namespace: System +public interface IComparable`1 // TypeDefIndex: 9 +{ + // Methods + int CompareTo(T other); +} + +// Namespace: System +public sealed class SerializableAttribute : Attribute // TypeDefIndex: 10 +{ + // Methods + public void .ctor(); // 0x100C5970 +} + +// Namespace: System +[Serializable] +public sealed class AttributeUsageAttribute : Attribute // TypeDefIndex: 11 +{ + // Fields + private AttributeTargets valid_on; // 0x08 + private bool allow_multiple; // 0x0C + private bool inherited; // 0x0D + + // Properties + public bool AllowMultiple { get; set; } // 0x100F8910 0x1016CBD0 + public bool Inherited { get; set; } // 0x10298460 0x10298470 + public AttributeTargets ValidOn { get; } // 0x100BF0C0 + + // Methods + public void .ctor(AttributeTargets validOn); // 0x10310D30 +} + +// Namespace: System.Runtime.InteropServices +public sealed class ComVisibleAttribute : Attribute // TypeDefIndex: 12 +{ + // Fields + private bool Visible; // 0x08 + + // Properties + public bool Value { get; } // 0x100EA020 + + // Methods + public void .ctor(bool visibility); // 0x100EA000 +} + +// Namespace: System +public interface IEquatable`1 // TypeDefIndex: 13 +{ + // Methods + bool Equals(T other); +} + +// Namespace: System +[Serializable] +public struct Int64 : IFormattable, IConvertible, IComparable, IComparable`1, IEquatable`1 // TypeDefIndex: 14 +{ + // Fields + public const long MaxValue = 9223372036854775807; // 0x00 + public const long MinValue = -9223372036854775808; // 0x00 + internal long m_value; // 0x08 + + // Methods + private bool System.IConvertible.ToBoolean(IFormatProvider provider); // 0x10005160 + private byte System.IConvertible.ToByte(IFormatProvider provider); // 0x100051C0 + private char System.IConvertible.ToChar(IFormatProvider provider); // 0x10005220 + private DateTime System.IConvertible.ToDateTime(IFormatProvider provider); // 0x10005280 + private Decimal System.IConvertible.ToDecimal(IFormatProvider provider); // 0x100052F0 + private double System.IConvertible.ToDouble(IFormatProvider provider); // 0x10005360 + private short System.IConvertible.ToInt16(IFormatProvider provider); // 0x100053C0 + private int System.IConvertible.ToInt32(IFormatProvider provider); // 0x10005420 + private long System.IConvertible.ToInt64(IFormatProvider provider); // 0x10005480 + private sbyte System.IConvertible.ToSByte(IFormatProvider provider); // 0x100054E0 + private float System.IConvertible.ToSingle(IFormatProvider provider); // 0x10005540 + private object System.IConvertible.ToType(Type targetType, IFormatProvider provider); // 0x100055A0 + private ushort System.IConvertible.ToUInt16(IFormatProvider provider); // 0x10005660 + private uint System.IConvertible.ToUInt32(IFormatProvider provider); // 0x100056C0 + private ulong System.IConvertible.ToUInt64(IFormatProvider provider); // 0x10005720 + public int CompareTo(object value); // 0x10004F90 + public override bool Equals(object obj); // 0x100050A0 + public override int GetHashCode(); // 0x10005140 + public int CompareTo(long value); // 0x10005060 + public bool Equals(long obj); // 0x10005120 + internal static bool Parse(string s, bool tryParse, out long result, out Exception exc); // 0x100FC880 + public static long Parse(string s, IFormatProvider provider); // 0x100FBA40 + public static long Parse(string s, NumberStyles style); // 0x100FB9B0 + internal static bool Parse(string s, NumberStyles style, IFormatProvider fp, bool tryParse, out long result, out Exception exc); // 0x100FBAD0 + public static long Parse(string s); // 0x100FB9D0 + public static long Parse(string s, NumberStyles style, IFormatProvider provider); // 0x100FBA60 + public static bool TryParse(string s, out long result); // 0x100FCD10 + public static bool TryParse(string s, NumberStyles style, IFormatProvider provider, out long result); // 0x100FCCC0 + public override string ToString(); // 0x10005780 + public string ToString(IFormatProvider provider); // 0x10005800 + public string ToString(string format); // 0x100057E0 + public string ToString(string format, IFormatProvider provider); // 0x100057F0 + public TypeCode GetTypeCode(); // 0x10005150 +} + +// Namespace: System +[Serializable] +public struct UInt32 : IFormattable, IConvertible, IComparable, IComparable`1, IEquatable`1 // TypeDefIndex: 15 +{ + // Fields + public const uint MaxValue = 4294967295; // 0x00 + public const uint MinValue = 0; // 0x00 + internal uint m_value; // 0x08 + + // Methods + private bool System.IConvertible.ToBoolean(IFormatProvider provider); // 0x1001A5B0 + private byte System.IConvertible.ToByte(IFormatProvider provider); // 0x1001A610 + private char System.IConvertible.ToChar(IFormatProvider provider); // 0x1001A670 + private DateTime System.IConvertible.ToDateTime(IFormatProvider provider); // 0x1001A6D0 + private Decimal System.IConvertible.ToDecimal(IFormatProvider provider); // 0x1001A740 + private double System.IConvertible.ToDouble(IFormatProvider provider); // 0x1001A7B0 + private short System.IConvertible.ToInt16(IFormatProvider provider); // 0x1001A810 + private int System.IConvertible.ToInt32(IFormatProvider provider); // 0x1001A870 + private long System.IConvertible.ToInt64(IFormatProvider provider); // 0x1001A8D0 + private sbyte System.IConvertible.ToSByte(IFormatProvider provider); // 0x1001A930 + private float System.IConvertible.ToSingle(IFormatProvider provider); // 0x1001A990 + private object System.IConvertible.ToType(Type targetType, IFormatProvider provider); // 0x1001A9F0 + private ushort System.IConvertible.ToUInt16(IFormatProvider provider); // 0x1001AAA0 + private uint System.IConvertible.ToUInt32(IFormatProvider provider); // 0x10003A80 + private ulong System.IConvertible.ToUInt64(IFormatProvider provider); // 0x1001AB00 + public int CompareTo(object value); // 0x1001A480 + public override bool Equals(object obj); // 0x1001A530 + public override int GetHashCode(); // 0x10003A80 + public int CompareTo(uint value); // 0x1001A460 + public bool Equals(uint obj); // 0x10004830 + internal static bool Parse(string s, bool tryParse, out uint result, out Exception exc); // 0x10284480 + internal static bool Parse(string s, NumberStyles style, IFormatProvider provider, bool tryParse, out uint result, out Exception exc); // 0x102839C0 + public static uint Parse(string s); // 0x10284410 + public static uint Parse(string s, NumberStyles style, IFormatProvider provider); // 0x102843A0 + public static uint Parse(string s, IFormatProvider provider); // 0x102839A0 + public static uint Parse(string s, NumberStyles style); // 0x10284380 + public static bool TryParse(string s, out uint result); // 0x10284830 + public static bool TryParse(string s, NumberStyles style, IFormatProvider provider, out uint result); // 0x102847E0 + public override string ToString(); // 0x1001AC80 + public string ToString(IFormatProvider provider); // 0x1001AC20 + public string ToString(string format); // 0x1001ABC0 + public string ToString(string format, IFormatProvider provider); // 0x1001AB60 + public TypeCode GetTypeCode(); // 0x1001A5A0 +} + +// Namespace: System +[Serializable] +public sealed class CLSCompliantAttribute : Attribute // TypeDefIndex: 16 +{ + // Fields + private bool is_compliant; // 0x08 + + // Properties + public bool IsCompliant { get; } // 0x100EA020 + + // Methods + public void .ctor(bool isCompliant); // 0x10315760 +} + +// Namespace: System +[Serializable] +public struct UInt64 : IFormattable, IConvertible, IComparable, IComparable`1, IEquatable`1 // TypeDefIndex: 17 +{ + // Fields + public const ulong MaxValue = 18446744073709551615; // 0x00 + public const ulong MinValue = 0; // 0x00 + internal ulong m_value; // 0x08 + + // Methods + private bool System.IConvertible.ToBoolean(IFormatProvider provider); // 0x1001AE80 + private byte System.IConvertible.ToByte(IFormatProvider provider); // 0x1001AEE0 + private char System.IConvertible.ToChar(IFormatProvider provider); // 0x1001AF40 + private DateTime System.IConvertible.ToDateTime(IFormatProvider provider); // 0x1001AFA0 + private Decimal System.IConvertible.ToDecimal(IFormatProvider provider); // 0x1001B010 + private double System.IConvertible.ToDouble(IFormatProvider provider); // 0x1001B080 + private short System.IConvertible.ToInt16(IFormatProvider provider); // 0x1001B0E0 + private int System.IConvertible.ToInt32(IFormatProvider provider); // 0x1001B140 + private long System.IConvertible.ToInt64(IFormatProvider provider); // 0x1001B1A0 + private sbyte System.IConvertible.ToSByte(IFormatProvider provider); // 0x1001B200 + private float System.IConvertible.ToSingle(IFormatProvider provider); // 0x1001B260 + private object System.IConvertible.ToType(Type targetType, IFormatProvider provider); // 0x1001B2C0 + private ushort System.IConvertible.ToUInt16(IFormatProvider provider); // 0x1001B380 + private uint System.IConvertible.ToUInt32(IFormatProvider provider); // 0x1001B3E0 + private ulong System.IConvertible.ToUInt64(IFormatProvider provider); // 0x10019A10 + public int CompareTo(object value); // 0x1001ACE0 + public override bool Equals(object obj); // 0x1001ADF0 + public override int GetHashCode(); // 0x10005140 + public int CompareTo(ulong value); // 0x1001ADB0 + public bool Equals(ulong obj); // 0x10005120 + public static ulong Parse(string s); // 0x102848F0 + public static ulong Parse(string s, IFormatProvider provider); // 0x10285470 + public static ulong Parse(string s, NumberStyles style); // 0x10284910 + internal static bool Parse(string s, NumberStyles style, IFormatProvider provider, bool tryParse, out ulong result, out Exception exc); // 0x102849A0 + public static ulong Parse(string s, NumberStyles style, IFormatProvider provider); // 0x10284930 + public static bool TryParse(string s, out ulong result); // 0x10285660 + public static bool TryParse(string s, NumberStyles style, IFormatProvider provider, out ulong result); // 0x10285610 + public override string ToString(); // 0x1001B510 + public string ToString(IFormatProvider provider); // 0x1001B4A0 + public string ToString(string format); // 0x1001B440 + public string ToString(string format, IFormatProvider provider); // 0x1001B500 + public TypeCode GetTypeCode(); // 0x1001AE70 +} + +// Namespace: System +[Serializable] +public struct Byte : IFormattable, IConvertible, IComparable, IComparable`1, IEquatable`1 // TypeDefIndex: 18 +{ + // Fields + public const byte MinValue = 0; // 0x00 + public const byte MaxValue = 255; // 0x00 + internal byte m_value; // 0x08 + + // Methods + private object System.IConvertible.ToType(Type targetType, IFormatProvider provider); // 0x1001FBB0 + private bool System.IConvertible.ToBoolean(IFormatProvider provider); // 0x1001F820 + private byte System.IConvertible.ToByte(IFormatProvider provider); // 0x10007100 + private char System.IConvertible.ToChar(IFormatProvider provider); // 0x1001F880 + private DateTime System.IConvertible.ToDateTime(IFormatProvider provider); // 0x1001F8E0 + private Decimal System.IConvertible.ToDecimal(IFormatProvider provider); // 0x1001F900 + private double System.IConvertible.ToDouble(IFormatProvider provider); // 0x1001F970 + private short System.IConvertible.ToInt16(IFormatProvider provider); // 0x1001F9D0 + private int System.IConvertible.ToInt32(IFormatProvider provider); // 0x1001FA30 + private long System.IConvertible.ToInt64(IFormatProvider provider); // 0x1001FA90 + private sbyte System.IConvertible.ToSByte(IFormatProvider provider); // 0x1001FAF0 + private float System.IConvertible.ToSingle(IFormatProvider provider); // 0x1001FB50 + private ushort System.IConvertible.ToUInt16(IFormatProvider provider); // 0x1001FC60 + private uint System.IConvertible.ToUInt32(IFormatProvider provider); // 0x1001FCC0 + private ulong System.IConvertible.ToUInt64(IFormatProvider provider); // 0x1001FD20 + public int CompareTo(object value); // 0x1001F690 + public override bool Equals(object obj); // 0x1001F790 + public override int GetHashCode(); // 0x1001F800 + public int CompareTo(byte value); // 0x1001F750 + public bool Equals(byte obj); // 0x1001F770 + public static byte Parse(string s, IFormatProvider provider); // 0x10315450 + public static byte Parse(string s, NumberStyles style); // 0x10315410 + public static byte Parse(string s, NumberStyles style, IFormatProvider provider); // 0x10315470 + public static byte Parse(string s); // 0x10315430 + public static bool TryParse(string s, out byte result); // 0x10315710 + public static bool TryParse(string s, NumberStyles style, IFormatProvider provider, out byte result); // 0x103156C0 + public override string ToString(); // 0x1001FE40 + public string ToString(string format); // 0x1001FD80 + public string ToString(IFormatProvider provider); // 0x1001FDE0 + public string ToString(string format, IFormatProvider provider); // 0x1001FEA0 + public TypeCode GetTypeCode(); // 0x1001F810 +} + +// Namespace: System +[Serializable] +public struct SByte : IFormattable, IConvertible, IComparable, IComparable`1, IEquatable`1 // TypeDefIndex: 19 +{ + // Fields + public const sbyte MinValue = 128; // 0x00 + public const sbyte MaxValue = 127; // 0x00 + internal sbyte m_value; // 0x08 + + // Methods + private bool System.IConvertible.ToBoolean(IFormatProvider provider); // 0x10006D80 + private byte System.IConvertible.ToByte(IFormatProvider provider); // 0x10006DE0 + private char System.IConvertible.ToChar(IFormatProvider provider); // 0x10006E40 + private DateTime System.IConvertible.ToDateTime(IFormatProvider provider); // 0x10006EA0 + private Decimal System.IConvertible.ToDecimal(IFormatProvider provider); // 0x10006F10 + private double System.IConvertible.ToDouble(IFormatProvider provider); // 0x10006F80 + private short System.IConvertible.ToInt16(IFormatProvider provider); // 0x10006FE0 + private int System.IConvertible.ToInt32(IFormatProvider provider); // 0x10007040 + private long System.IConvertible.ToInt64(IFormatProvider provider); // 0x100070A0 + private sbyte System.IConvertible.ToSByte(IFormatProvider provider); // 0x10007100 + private float System.IConvertible.ToSingle(IFormatProvider provider); // 0x10007110 + private object System.IConvertible.ToType(Type targetType, IFormatProvider provider); // 0x10007170 + private ushort System.IConvertible.ToUInt16(IFormatProvider provider); // 0x10007220 + private uint System.IConvertible.ToUInt32(IFormatProvider provider); // 0x10007280 + private ulong System.IConvertible.ToUInt64(IFormatProvider provider); // 0x100072E0 + public int CompareTo(object obj); // 0x10006C00 + public override bool Equals(object obj); // 0x10006CF0 + public override int GetHashCode(); // 0x10006D60 + public int CompareTo(sbyte value); // 0x10006CB0 + public bool Equals(sbyte obj); // 0x10006CD0 + internal static bool Parse(string s, bool tryParse, out sbyte result, out Exception exc); // 0x10123C00 + public static sbyte Parse(string s, IFormatProvider provider); // 0x10123BE0 + public static sbyte Parse(string s, NumberStyles style); // 0x10123B50 + public static sbyte Parse(string s, NumberStyles style, IFormatProvider provider); // 0x10123EE0 + public static sbyte Parse(string s); // 0x10123B70 + public static bool TryParse(string s, out sbyte result); // 0x10124080 + public static bool TryParse(string s, NumberStyles style, IFormatProvider provider, out sbyte result); // 0x101240C0 + public override string ToString(); // 0x10007340 + public string ToString(IFormatProvider provider); // 0x10007400 + public string ToString(string format); // 0x10007460 + public string ToString(string format, IFormatProvider provider); // 0x100073A0 + public TypeCode GetTypeCode(); // 0x10006D70 +} + +// Namespace: System +[Serializable] +public struct Int16 : IFormattable, IConvertible, IComparable, IComparable`1, IEquatable`1 // TypeDefIndex: 20 +{ + // Fields + public const short MaxValue = 32767; // 0x00 + public const short MinValue = -32768; // 0x00 + internal short m_value; // 0x08 + + // Methods + private bool System.IConvertible.ToBoolean(IFormatProvider provider); // 0x10003FF0 + private byte System.IConvertible.ToByte(IFormatProvider provider); // 0x10004050 + private char System.IConvertible.ToChar(IFormatProvider provider); // 0x100040B0 + private DateTime System.IConvertible.ToDateTime(IFormatProvider provider); // 0x10004110 + private Decimal System.IConvertible.ToDecimal(IFormatProvider provider); // 0x10004180 + private double System.IConvertible.ToDouble(IFormatProvider provider); // 0x100041F0 + private short System.IConvertible.ToInt16(IFormatProvider provider); // 0x10004250 + private int System.IConvertible.ToInt32(IFormatProvider provider); // 0x100042B0 + private long System.IConvertible.ToInt64(IFormatProvider provider); // 0x10004310 + private sbyte System.IConvertible.ToSByte(IFormatProvider provider); // 0x10004370 + private float System.IConvertible.ToSingle(IFormatProvider provider); // 0x100043D0 + private object System.IConvertible.ToType(Type targetType, IFormatProvider provider); // 0x10004430 + private ushort System.IConvertible.ToUInt16(IFormatProvider provider); // 0x100044E0 + private uint System.IConvertible.ToUInt32(IFormatProvider provider); // 0x10004540 + private ulong System.IConvertible.ToUInt64(IFormatProvider provider); // 0x100045A0 + public int CompareTo(object value); // 0x10003E80 + public override bool Equals(object obj); // 0x10003F60 + public override int GetHashCode(); // 0x10003FD0 + public int CompareTo(short value); // 0x10003E50 + public bool Equals(short obj); // 0x10003F40 + internal static bool Parse(string s, bool tryParse, out short result, out Exception exc); // 0x100F9960 + public static short Parse(string s, IFormatProvider provider); // 0x100F9940 + public static short Parse(string s, NumberStyles style); // 0x100F9BB0 + public static short Parse(string s, NumberStyles style, IFormatProvider provider); // 0x100F9BD0 + public static short Parse(string s); // 0x100F9C50 + public static bool TryParse(string s, out short result); // 0x100F9F10 + public static bool TryParse(string s, NumberStyles style, IFormatProvider provider, out short result); // 0x100F9EB0 + public override string ToString(); // 0x10004690 + public string ToString(IFormatProvider provider); // 0x10004600 + public string ToString(string format); // 0x10004660 + public string ToString(string format, IFormatProvider provider); // 0x10004680 + public TypeCode GetTypeCode(); // 0x10003FE0 +} + +// Namespace: System +[Serializable] +public struct UInt16 : IFormattable, IConvertible, IComparable, IComparable`1, IEquatable`1 // TypeDefIndex: 21 +{ + // Fields + public const ushort MaxValue = 65535; // 0x00 + public const ushort MinValue = 0; // 0x00 + internal ushort m_value; // 0x08 + + // Methods + private bool System.IConvertible.ToBoolean(IFormatProvider provider); // 0x10019D20 + private byte System.IConvertible.ToByte(IFormatProvider provider); // 0x10019D80 + private char System.IConvertible.ToChar(IFormatProvider provider); // 0x10019DE0 + private DateTime System.IConvertible.ToDateTime(IFormatProvider provider); // 0x10019E40 + private Decimal System.IConvertible.ToDecimal(IFormatProvider provider); // 0x10019EB0 + private double System.IConvertible.ToDouble(IFormatProvider provider); // 0x10019F20 + private short System.IConvertible.ToInt16(IFormatProvider provider); // 0x10019F80 + private int System.IConvertible.ToInt32(IFormatProvider provider); // 0x10019FE0 + private long System.IConvertible.ToInt64(IFormatProvider provider); // 0x1001A040 + private sbyte System.IConvertible.ToSByte(IFormatProvider provider); // 0x1001A0A0 + private float System.IConvertible.ToSingle(IFormatProvider provider); // 0x1001A100 + private object System.IConvertible.ToType(Type targetType, IFormatProvider provider); // 0x1001A160 + private ushort System.IConvertible.ToUInt16(IFormatProvider provider); // 0x1001A210 + private uint System.IConvertible.ToUInt32(IFormatProvider provider); // 0x1001A220 + private ulong System.IConvertible.ToUInt64(IFormatProvider provider); // 0x1001A280 + public int CompareTo(object value); // 0x10019BE0 + public override bool Equals(object obj); // 0x10019C90 + public override int GetHashCode(); // 0x10019D00 + public int CompareTo(ushort value); // 0x10019BC0 + public bool Equals(ushort obj); // 0x10003F40 + public static ushort Parse(string s, IFormatProvider provider); // 0x102836C0 + public static ushort Parse(string s, NumberStyles style); // 0x102836A0 + public static ushort Parse(string s, NumberStyles style, IFormatProvider provider); // 0x102836E0 + public static ushort Parse(string s); // 0x10283680 + public static bool TryParse(string s, out ushort result); // 0x102838E0 + public static bool TryParse(string s, NumberStyles style, IFormatProvider provider, out ushort result); // 0x10283880 + public override string ToString(); // 0x1001A400 + public string ToString(IFormatProvider provider); // 0x1001A340 + public string ToString(string format); // 0x1001A3A0 + public string ToString(string format, IFormatProvider provider); // 0x1001A2E0 + public TypeCode GetTypeCode(); // 0x10019D10 +} + +// Namespace: System.Collections +public interface IEnumerator // TypeDefIndex: 22 +{ + // Properties + object Current { get; } + + // Methods + bool MoveNext(); + void Reset(); +} + +// Namespace: System.Collections +public interface IEnumerable // TypeDefIndex: 23 +{ + // Methods + IEnumerator GetEnumerator(); +} + +// Namespace: System +public interface IDisposable // TypeDefIndex: 24 +{ + // Methods + void Dispose(); +} + +// Namespace: System.Collections.Generic +public interface IEnumerator`1 : IEnumerator, IDisposable // TypeDefIndex: 25 +{ + // Properties + T Current { get; } + +} + +// Namespace: System +[Serializable] +public struct Char : IConvertible, IComparable, IComparable`1, IEquatable`1 // TypeDefIndex: 26 +{ + // Fields + public const char MaxValue = '\xffff'; // 0x00 + public const char MinValue = '\x0000'; // 0x00 + internal char m_value; // 0x08 + private static readonly void * category_data; // 0x00 + private static readonly void * numeric_data; // 0x04 + private static readonly void * numeric_data_values; // 0x08 + private static readonly void * to_lower_data_low; // 0x0C + private static readonly void * to_lower_data_high; // 0x10 + private static readonly void * to_upper_data_low; // 0x14 + private static readonly void * to_upper_data_high; // 0x18 + + // Methods + private static void .cctor(); // 0x10317C80 + private object System.IConvertible.ToType(Type targetType, IFormatProvider provider); // 0x10020310 + private bool System.IConvertible.ToBoolean(IFormatProvider provider); // 0x10020090 + private byte System.IConvertible.ToByte(IFormatProvider provider); // 0x100200B0 + private char System.IConvertible.ToChar(IFormatProvider provider); // 0x1001A210 + private DateTime System.IConvertible.ToDateTime(IFormatProvider provider); // 0x10020110 + private Decimal System.IConvertible.ToDecimal(IFormatProvider provider); // 0x10020130 + private double System.IConvertible.ToDouble(IFormatProvider provider); // 0x10020150 + private short System.IConvertible.ToInt16(IFormatProvider provider); // 0x10020170 + private int System.IConvertible.ToInt32(IFormatProvider provider); // 0x100201D0 + private long System.IConvertible.ToInt64(IFormatProvider provider); // 0x10020230 + private sbyte System.IConvertible.ToSByte(IFormatProvider provider); // 0x10020290 + private float System.IConvertible.ToSingle(IFormatProvider provider); // 0x100202F0 + private ushort System.IConvertible.ToUInt16(IFormatProvider provider); // 0x100203C0 + private uint System.IConvertible.ToUInt32(IFormatProvider provider); // 0x10020420 + private ulong System.IConvertible.ToUInt64(IFormatProvider provider); // 0x10020480 + private static void GetDataTablePointers(out void * category_data, out void * numeric_data, out void * numeric_data_values, out void * to_lower_data_low, out void * to_lower_data_high, out void * to_upper_data_low, out void * to_upper_data_high); // 0x10316020 + public int CompareTo(object value); // 0x1001FF00 + public override bool Equals(object obj); // 0x10020010 + public int CompareTo(char value); // 0x1001FFC0 + public static string ConvertFromUtf32(int utf32); // 0x10315AE0 + public static int ConvertToUtf32(char highSurrogate, char lowSurrogate); // 0x10315EF0 + public static int ConvertToUtf32(string s, int index); // 0x10315C30 + public bool Equals(char obj); // 0x1001FFF0 + public static bool IsSurrogatePair(char highSurrogate, char lowSurrogate); // 0x10316E30 + public static bool IsSurrogatePair(string s, int index); // 0x10316E70 + public override int GetHashCode(); // 0x10019D00 + public static double GetNumericValue(char c); // 0x10316190 + public static double GetNumericValue(string s, int index); // 0x10316060 + public static UnicodeCategory GetUnicodeCategory(char c); // 0x10316300 + public static UnicodeCategory GetUnicodeCategory(string s, int index); // 0x10316240 + public static bool IsControl(char c); // 0x10316360 + public static bool IsControl(string s, int index); // 0x103163C0 + public static bool IsDigit(char c); // 0x10316480 + public static bool IsDigit(string s, int index); // 0x103164E0 + public static bool IsHighSurrogate(char c); // 0x10316630 + public static bool IsHighSurrogate(string s, int index); // 0x103165A0 + public static bool IsLetter(char c); // 0x10316860 + public static bool IsLetter(string s, int index); // 0x103167A0 + public static bool IsLetterOrDigit(char c); // 0x10316730 + public static bool IsLetterOrDigit(string s, int index); // 0x10316660 + public static bool IsLower(char c); // 0x10316A40 + public static bool IsLower(string s, int index); // 0x10316980 + public static bool IsLowSurrogate(char c); // 0x103168C0 + public static bool IsLowSurrogate(string s, int index); // 0x103168F0 + public static bool IsNumber(char c); // 0x10316AA0 + public static bool IsNumber(string s, int index); // 0x10316B00 + public static bool IsPunctuation(char c); // 0x10316CA0 + public static bool IsPunctuation(string s, int index); // 0x10316BD0 + public static bool IsSeparator(char c); // 0x10316D00 + public static bool IsSeparator(string s, int index); // 0x10316D60 + public static bool IsSurrogate(char c); // 0x10317000 + public static bool IsSurrogate(string s, int index); // 0x10316F40 + public static bool IsSymbol(char c); // 0x10317130 + public static bool IsSymbol(string s, int index); // 0x10317060 + public static bool IsUpper(char c); // 0x10317250 + public static bool IsUpper(string s, int index); // 0x10317190 + public static bool IsWhiteSpace(char c); // 0x103172B0 + public static bool IsWhiteSpace(string s, int index); // 0x10317340 + private static void CheckParameter(string s, int index); // 0x10315A40 + public static bool TryParse(string s, out char result); // 0x10317C40 + public static char Parse(string s); // 0x10317440 + public static char ToLower(char c); // 0x103178B0 + public static char ToLowerInvariant(char c); // 0x10317680 + public static char ToLower(char c, CultureInfo culture); // 0x10317730 + public static char ToUpper(char c); // 0x10317BB0 + public static char ToUpperInvariant(char c); // 0x10317980 + public static char ToUpper(char c, CultureInfo culture); // 0x10317A30 + public override string ToString(); // 0x100204E0 + public static string ToString(char c); // 0x10317960 + public string ToString(IFormatProvider provider); // 0x100204E0 + public TypeCode GetTypeCode(); // 0x10020080 +} + +// Namespace: System +[Serializable] +public sealed class String : IConvertible, IComparable, IEnumerable, ICloneable, IComparable`1, IEquatable`1, IEnumerable`1 // TypeDefIndex: 27 +{ + // Fields + [NonSerialized] private int length; // 0x08 + [NonSerialized] private char start_char; // 0x0C + public static readonly string Empty; // 0x00 + private static readonly char[] WhiteChars; // 0x04 + + // Properties + public char Chars { get; } // 0x10153D10 + public int Length { get; } // 0x100BF0C0 + + // Methods + public void .ctor(void * value); // 0x10153C90 + public void .ctor(void * value, int startIndex, int length); // 0x10153CD0 + public void .ctor(void * value); // 0x10153C90 + public void .ctor(void * value, int startIndex, int length); // 0x10153CD0 + public void .ctor(void * value, int startIndex, int length, Encoding enc); // 0x10153CF0 + public void .ctor(char[] value, int startIndex, int length); // 0x10153CD0 + public void .ctor(char[] value); // 0x10153C90 + public void .ctor(char c, int count); // 0x10153CB0 + private static void .cctor(); // 0x10153C30 + private bool System.IConvertible.ToBoolean(IFormatProvider provider); // 0x10152B40 + private byte System.IConvertible.ToByte(IFormatProvider provider); // 0x10152B90 + private char System.IConvertible.ToChar(IFormatProvider provider); // 0x10152BE0 + private DateTime System.IConvertible.ToDateTime(IFormatProvider provider); // 0x10152C30 + private Decimal System.IConvertible.ToDecimal(IFormatProvider provider); // 0x10152CA0 + private double System.IConvertible.ToDouble(IFormatProvider provider); // 0x10152D10 + private short System.IConvertible.ToInt16(IFormatProvider provider); // 0x10152D60 + private int System.IConvertible.ToInt32(IFormatProvider provider); // 0x10152DB0 + private long System.IConvertible.ToInt64(IFormatProvider provider); // 0x10152E00 + private sbyte System.IConvertible.ToSByte(IFormatProvider provider); // 0x10152E50 + private float System.IConvertible.ToSingle(IFormatProvider provider); // 0x10152EA0 + private object System.IConvertible.ToType(Type targetType, IFormatProvider provider); // 0x10152EF0 + private ushort System.IConvertible.ToUInt16(IFormatProvider provider); // 0x10152F80 + private uint System.IConvertible.ToUInt32(IFormatProvider provider); // 0x10152FD0 + private ulong System.IConvertible.ToUInt64(IFormatProvider provider); // 0x10153020 + private IEnumerator`1 System.Collections.Generic.IEnumerable.GetEnumerator(); // 0x10152AA0 + private IEnumerator System.Collections.IEnumerable.GetEnumerator(); // 0x10152AF0 + public static bool Equals(string a, string b); // 0x1014D090 + public override bool Equals(object obj); // 0x1014D020 + public bool Equals(string value); // 0x1014CF70 + public object Clone(); // 0x100F7810 + public TypeCode GetTypeCode(); // 0x1014DD10 + public void CopyTo(int sourceIndex, char[] destination, int destinationIndex, int count); // 0x1014BF20 + public char[] ToCharArray(); // 0x101531A0 + public char[] ToCharArray(int startIndex, int length); // 0x10153070 + public string[] Split(char[] separator); // 0x10151D60 + public string[] Split(char[] separator, int count); // 0x101521A0 + public string[] Split(char[] separator, int count, StringSplitOptions options); // 0x101522F0 + public string[] Split(string[] separator, int count, StringSplitOptions options); // 0x10151DD0 + public string[] Split(char[] separator, StringSplitOptions options); // 0x101522D0 + public string[] Split(string[] separator, StringSplitOptions options); // 0x101522B0 + public string Substring(int startIndex); // 0x10152A20 + public string Substring(int startIndex, int length); // 0x10152930 + internal string SubstringUnchecked(int startIndex, int length); // 0x10152880 + public string Trim(); // 0x10153B50 + public string Trim(char[] trimChars); // 0x101539B0 + public string TrimStart(char[] trimChars); // 0x10153900 + public string TrimEnd(char[] trimChars); // 0x10153850 + private int FindNotWhiteSpace(int pos, int target, int change); // 0x1014D1D0 + private int FindNotInTable(int pos, int target, int change, char[] table); // 0x1014D150 + public static int Compare(string strA, string strB); // 0x1014AF40 + public static int Compare(string strA, string strB, bool ignoreCase); // 0x1014A6B0 + public static int Compare(string strA, string strB, bool ignoreCase, CultureInfo culture); // 0x1014A4B0 + public static int Compare(string strA, int indexA, string strB, int indexB, int length); // 0x1014A420 + public static int Compare(string strA, int indexA, string strB, int indexB, int length, bool ignoreCase); // 0x1014A620 + public static int Compare(string strA, int indexA, string strB, int indexB, int length, bool ignoreCase, CultureInfo culture); // 0x1014A750 + public static int Compare(string strA, string strB, StringComparison comparisonType); // 0x1014ACE0 + public static int Compare(string strA, int indexA, string strB, int indexB, int length, StringComparison comparisonType); // 0x1014A930 + public static bool Equals(string a, string b, StringComparison comparisonType); // 0x1014CF10 + public bool Equals(string value, StringComparison comparisonType); // 0x1014CFC0 + public static int Compare(string strA, string strB, CultureInfo culture, CompareOptions options); // 0x1014A890 + public static int Compare(string strA, int indexA, string strB, int indexB, int length, CultureInfo culture, CompareOptions options); // 0x1014A550 + public int CompareTo(object value); // 0x1014A310 + public int CompareTo(string strB); // 0x1014A3C0 + public static int CompareOrdinal(string strA, string strB); // 0x1014A2B0 + public static int CompareOrdinal(string strA, int indexA, string strB, int indexB, int length); // 0x1014A1F0 + internal static int CompareOrdinalCaseInsensitive(string strA, int indexA, string strB, int indexB, int length); // 0x1014A040 + internal static int CompareOrdinalUnchecked(string strA, int indexA, int lenA, string strB, int indexB, int lenB); // 0x1014A100 + internal static int CompareOrdinalCaseInsensitiveUnchecked(string strA, int indexA, int lenA, string strB, int indexB, int lenB); // 0x10149EE0 + public bool EndsWith(string value); // 0x1014CB80 + public bool EndsWith(string value, bool ignoreCase, CultureInfo culture); // 0x1014CAB0 + public int IndexOfAny(char[] anyOf); // 0x1014DF10 + public int IndexOfAny(char[] anyOf, int startIndex); // 0x1014DF90 + public int IndexOfAny(char[] anyOf, int startIndex, int count); // 0x1014DE30 + private int IndexOfAnyUnchecked(char[] anyOf, int startIndex, int count); // 0x1014DD20 + public int IndexOf(string value, StringComparison comparisonType); // 0x1014E870 + public int IndexOf(string value, int startIndex, StringComparison comparisonType); // 0x1014EDD0 + public int IndexOf(string value, int startIndex, int count, StringComparison comparisonType); // 0x1014E890 + internal int IndexOfOrdinal(string value, int startIndex, int count, CompareOptions options); // 0x1014E370 + internal int IndexOfOrdinalUnchecked(string value, int startIndex, int count); // 0x1014E220 + internal int IndexOfOrdinalIgnoreCaseUnchecked(string value, int startIndex, int count); // 0x1014E030 + public int LastIndexOf(string value, StringComparison comparisonType); // 0x10150440 + public int LastIndexOf(string value, int startIndex, StringComparison comparisonType); // 0x101506C0 + public int LastIndexOf(string value, int startIndex, int count, StringComparison comparisonType); // 0x101506E0 + internal int LastIndexOfOrdinal(string value, int startIndex, int count, CompareOptions options); // 0x1014FE10 + internal int LastIndexOfOrdinalUnchecked(string value, int startIndex, int count); // 0x1014FCC0 + internal int LastIndexOfOrdinalIgnoreCaseUnchecked(string value, int startIndex, int count); // 0x1014FAD0 + public int IndexOf(char value); // 0x1014EAB0 + public int IndexOf(char value, int startIndex); // 0x1014EBD0 + public int IndexOf(char value, int startIndex, int count); // 0x1014E640 + internal int IndexOfUnchecked(char value, int startIndex, int count); // 0x1014E550 + internal int IndexOfOrdinalIgnoreCase(char value, int startIndex, int count); // 0x1014E160 + public int IndexOf(string value); // 0x1014EAE0 + public int IndexOf(string value, int startIndex); // 0x1014E720 + public int IndexOf(string value, int startIndex, int count); // 0x1014EC80 + public int LastIndexOfAny(char[] anyOf); // 0x1014FA60 + public int LastIndexOfAny(char[] anyOf, int startIndex); // 0x1014F9A0 + public int LastIndexOfAny(char[] anyOf, int startIndex, int count); // 0x1014F890 + private int LastIndexOfAnyUnchecked(char[] anyOf, int startIndex, int count); // 0x1014F7E0 + public int LastIndexOf(char value); // 0x101503E0 + public int LastIndexOf(char value, int startIndex); // 0x10150510 + public int LastIndexOf(char value, int startIndex, int count); // 0x101505D0 + internal int LastIndexOfUnchecked(char value, int startIndex, int count); // 0x10150110 + internal int LastIndexOfOrdinalIgnoreCase(char value, int startIndex, int count); // 0x1014FC00 + public int LastIndexOf(string value); // 0x101503A0 + public int LastIndexOf(string value, int startIndex); // 0x10150410 + public int LastIndexOf(string value, int startIndex, int count); // 0x10150210 + public bool Contains(string value); // 0x1014BF00 + public static bool IsNullOrEmpty(string value); // 0x1014F320 + public string Normalize(); // 0x10150900 + public string Normalize(NormalizationForm normalizationForm); // 0x10150950 + public bool IsNormalized(); // 0x1014F2D0 + public bool IsNormalized(NormalizationForm normalizationForm); // 0x1014F1C0 + public string Remove(int startIndex); // 0x101514A0 + public string PadLeft(int totalWidth); // 0x10150A60 + public string PadLeft(int totalWidth, char paddingChar); // 0x10150B80 + public string PadRight(int totalWidth); // 0x10150DC0 + public string PadRight(int totalWidth, char paddingChar); // 0x10150CA0 + public bool StartsWith(string value); // 0x101524F0 + public bool StartsWith(string value, StringComparison comparisonType); // 0x101525C0 + public bool EndsWith(string value, StringComparison comparisonType); // 0x1014CC50 + public bool StartsWith(string value, bool ignoreCase, CultureInfo culture); // 0x10152450 + public string Replace(char oldChar, char newChar); // 0x10151B40 + public string Replace(string oldValue, string newValue); // 0x10151C80 + private string ReplaceUnchecked(string oldValue, string newValue); // 0x10151730 + private string ReplaceFallback(string oldValue, string newValue, int testedCount); // 0x10151620 + public string Remove(int startIndex, int count); // 0x10151370 + public string ToLower(); // 0x10153390 + public string ToLower(CultureInfo culture); // 0x101533F0 + public string ToLowerInvariant(); // 0x101532A0 + public string ToUpper(); // 0x10153750 + public string ToUpper(CultureInfo culture); // 0x10153690 + public string ToUpperInvariant(); // 0x101535A0 + public override string ToString(); // 0x100F7810 + public string ToString(IFormatProvider provider); // 0x100F7810 + public static string Format(string format, object arg0); // 0x1014D7F0 + public static string Format(string format, object arg0, object arg1); // 0x1014D910 + public static string Format(string format, object arg0, object arg1, object arg2); // 0x1014DA10 + public static string Format(string format, object[] args); // 0x1014D8B0 + public static string Format(IFormatProvider provider, string format, object[] args); // 0x1014D780 + internal static StringBuilder FormatHelper(StringBuilder result, IFormatProvider provider, string format, object[] args); // 0x1014D300 + public static string Copy(string str); // 0x1014C0C0 + public static string Concat(object arg0); // 0x1014BB90 + public static string Concat(object arg0, object arg1); // 0x1014B1E0 + public static string Concat(object arg0, object arg1, object arg2); // 0x1014B850 + public static string Concat(object arg0, object arg1, object arg2, object arg3); // 0x1014B980 + public static string Concat(string str0, string str1); // 0x1014B400 + public static string Concat(string str0, string str1, string str2); // 0x1014BC00 + public static string Concat(string str0, string str1, string str2, string str3); // 0x1014B510 + public static string Concat(object[] args); // 0x1014B280 + public static string Concat(string[] values); // 0x1014B120 + private static string ConcatInternal(string[] values, int length); // 0x1014AFD0 + public string Insert(int startIndex, string value); // 0x1014EE00 + public static string Intern(string str); // 0x1014EF70 + public static string IsInterned(string str); // 0x1014F140 + public static string Join(string separator, string[] value); // 0x1014F5B0 + public static string Join(string separator, string[] value, int startIndex, int count); // 0x1014F670 + private static string JoinUnchecked(string separator, string[] value, int startIndex, int count); // 0x1014F340 + public CharEnumerator GetEnumerator(); // 0x1014DC60 + private static void ParseFormatSpecifier(string str, int ptr, out int n, out int width, out bool left_align, out string format); // 0x10150FA0 + private static int ParseDecimal(string str, int ptr); // 0x10150EE0 + internal void InternalSetChar(int idx, char val); // 0x1014F020 + internal void InternalSetLength(int newLength); // 0x1014F090 + public override int GetHashCode(); // 0x1014DCB0 + internal int GetCaseInsensitiveHashCode(); // 0x1014DB60 + private string CreateString(void * value); // 0x1014C810 + private string CreateString(void * value, int startIndex, int length); // 0x1014C660 + private string CreateString(void * value, int startIndex, int length, Encoding enc); // 0x1014C280 + private string CreateString(void * value); // 0x1014C1A0 + private string CreateString(void * value, int startIndex, int length); // 0x1014C990 + private string CreateString(char[] val, int startIndex, int length); // 0x1014C680 + private string CreateString(char[] val); // 0x1014C8A0 + private string CreateString(char c, int count); // 0x1014C570 + internal static void memset(void * dest, int val, int len); // 0x101540B0 + private static void memcpy4(void * dest, void * src, int size); // 0x10153E90 + private static void memcpy2(void * dest, void * src, int size); // 0x10153E10 + private static void memcpy1(void * dest, void * src, int size); // 0x10153D70 + internal static void memcpy(void * dest, void * src, int size); // 0x10153F20 + internal static void CharCopy(void * dest, void * src, int count); // 0x10149DA0 + internal static void CharCopyReverse(void * dest, void * src, int count); // 0x10149CE0 + internal static void CharCopy(string target, int targetIndex, string source, int sourceIndex, int count); // 0x10149E60 + internal static void CharCopy(string target, int targetIndex, char[] source, int sourceIndex, int count); // 0x10149D10 + internal static void CharCopyReverse(string target, int targetIndex, string source, int sourceIndex, int count); // 0x10149C50 + private string[] InternalSplit(char[] separator, int count, int options); // 0x1014F120 + internal static string InternalAllocateStr(int length); // 0x1014EFF0 + private static string InternalIntern(string str); // 0x1014F000 + private static string InternalIsInterned(string str); // 0x1014F010 + public static bool op_Equality(string a, string b); // 0x10154170 + public static bool op_Inequality(string a, string b); // 0x101541C0 +} + +// Namespace: System +public interface ICloneable // TypeDefIndex: 28 +{ + // Methods + object Clone(); +} + +// Namespace: System.Collections.Generic +public interface IEnumerable`1 : IEnumerable // TypeDefIndex: 29 +{ + // Methods + IEnumerator`1 GetEnumerator(); +} + +// Namespace: System +[Serializable] +public struct Single : IFormattable, IConvertible, IComparable, IComparable`1, IEquatable`1 // TypeDefIndex: 30 +{ + // Fields + public const float Epsilon = 1E-45; // 0x00 + public const float MaxValue = 3.4028235E+38; // 0x00 + public const float MinValue = -3.4028235E+38; // 0x00 + public const float NaN = NaN; // 0x00 + public const float PositiveInfinity = ∞; // 0x00 + public const float NegativeInfinity = -∞; // 0x00 + private const double MaxValueEpsilon = 3.6147112457961776E+29; // 0x00 + internal float m_value; // 0x08 + + // Methods + private bool System.IConvertible.ToBoolean(IFormatProvider provider); // 0x100082F0 + private byte System.IConvertible.ToByte(IFormatProvider provider); // 0x10008360 + private char System.IConvertible.ToChar(IFormatProvider provider); // 0x100083D0 + private DateTime System.IConvertible.ToDateTime(IFormatProvider provider); // 0x10008440 + private Decimal System.IConvertible.ToDecimal(IFormatProvider provider); // 0x100084C0 + private double System.IConvertible.ToDouble(IFormatProvider provider); // 0x10008540 + private short System.IConvertible.ToInt16(IFormatProvider provider); // 0x100085B0 + private int System.IConvertible.ToInt32(IFormatProvider provider); // 0x10008620 + private long System.IConvertible.ToInt64(IFormatProvider provider); // 0x10008690 + private sbyte System.IConvertible.ToSByte(IFormatProvider provider); // 0x10008700 + private float System.IConvertible.ToSingle(IFormatProvider provider); // 0x10008770 + private object System.IConvertible.ToType(Type targetType, IFormatProvider provider); // 0x100087E0 + private ushort System.IConvertible.ToUInt16(IFormatProvider provider); // 0x10008890 + private uint System.IConvertible.ToUInt32(IFormatProvider provider); // 0x10008900 + private ulong System.IConvertible.ToUInt64(IFormatProvider provider); // 0x10008970 + public int CompareTo(object value); // 0x10008090 + public override bool Equals(object obj); // 0x10008220 + public int CompareTo(float value); // 0x100080A0 + public bool Equals(float obj); // 0x100081D0 + public override int GetHashCode(); // 0x100082C0 + public static bool IsInfinity(float f); // 0x10149680 + public static bool IsNaN(float f); // 0x101496B0 + public static bool IsNegativeInfinity(float f); // 0x101496D0 + public static bool IsPositiveInfinity(float f); // 0x10149710 + public static float Parse(string s); // 0x10149750 + public static float Parse(string s, IFormatProvider provider); // 0x101498B0 + public static float Parse(string s, NumberStyles style); // 0x10149960 + public static float Parse(string s, NumberStyles style, IFormatProvider provider); // 0x10149800 + public static bool TryParse(string s, NumberStyles style, IFormatProvider provider, out float result); // 0x10149AF0 + public static bool TryParse(string s, out float result); // 0x10149B80 + public override string ToString(); // 0x10008AC0 + public string ToString(IFormatProvider provider); // 0x10008B30 + public string ToString(string format); // 0x10008A50 + public string ToString(string format, IFormatProvider provider); // 0x100089E0 + public TypeCode GetTypeCode(); // 0x100082E0 +} + +// Namespace: System +[Serializable] +public struct Double : IFormattable, IConvertible, IComparable, IComparable`1, IEquatable`1 // TypeDefIndex: 31 +{ + // Fields + public const double Epsilon = 5E-324; // 0x00 + public const double MaxValue = 1.7976931348623157E+308; // 0x00 + public const double MinValue = -1.7976931348623157E+308; // 0x00 + public const double NaN = NaN; // 0x00 + public const double NegativeInfinity = -∞; // 0x00 + public const double PositiveInfinity = ∞; // 0x00 + private const int State_AllowSign = 1; // 0x00 + private const int State_Digits = 2; // 0x00 + private const int State_Decimal = 3; // 0x00 + private const int State_ExponentSign = 4; // 0x00 + private const int State_Exponent = 5; // 0x00 + private const int State_ConsumeWhiteSpace = 6; // 0x00 + private const int State_Exit = 7; // 0x00 + internal double m_value; // 0x08 + + // Methods + private object System.IConvertible.ToType(Type targetType, IFormatProvider provider); // 0x1000A170 + private bool System.IConvertible.ToBoolean(IFormatProvider provider); // 0x10009D30 + private byte System.IConvertible.ToByte(IFormatProvider provider); // 0x10009DA0 + private char System.IConvertible.ToChar(IFormatProvider provider); // 0x10009E10 + private DateTime System.IConvertible.ToDateTime(IFormatProvider provider); // 0x10009E30 + private Decimal System.IConvertible.ToDecimal(IFormatProvider provider); // 0x10009E50 + private double System.IConvertible.ToDouble(IFormatProvider provider); // 0x10009ED0 + private short System.IConvertible.ToInt16(IFormatProvider provider); // 0x10009F40 + private int System.IConvertible.ToInt32(IFormatProvider provider); // 0x10009FB0 + private long System.IConvertible.ToInt64(IFormatProvider provider); // 0x1000A020 + private sbyte System.IConvertible.ToSByte(IFormatProvider provider); // 0x1000A090 + private float System.IConvertible.ToSingle(IFormatProvider provider); // 0x1000A100 + private ushort System.IConvertible.ToUInt16(IFormatProvider provider); // 0x1000A220 + private uint System.IConvertible.ToUInt32(IFormatProvider provider); // 0x1000A290 + private ulong System.IConvertible.ToUInt64(IFormatProvider provider); // 0x1000A300 + public int CompareTo(object value); // 0x10009AC0 + public override bool Equals(object obj); // 0x10009C60 + public int CompareTo(double value); // 0x10009AD0 + public bool Equals(double obj); // 0x10009C10 + public override int GetHashCode(); // 0x10009D00 + public static bool IsInfinity(double d); // 0x101BDDA0 + public static bool IsNaN(double d); // 0x101BDDD0 + public static bool IsNegativeInfinity(double d); // 0x101BDDF0 + public static bool IsPositiveInfinity(double d); // 0x101BDE30 + public static double Parse(string s); // 0x101BDEB0 + public static double Parse(string s, IFormatProvider provider); // 0x101BDE90 + public static double Parse(string s, NumberStyles style); // 0x101BEB40 + public static double Parse(string s, NumberStyles style, IFormatProvider provider); // 0x101BEAD0 + internal static bool Parse(string s, NumberStyles style, IFormatProvider provider, bool tryParse, out double result, out Exception exc); // 0x101BDED0 + private static bool TryParseStringConstant(string format, string s, int start, int end); // 0x101BECE0 + private static bool ParseImpl(void * byte_ptr, out double value); // 0x101BDE70 + public static bool TryParse(string s, NumberStyles style, IFormatProvider provider, out double result); // 0x101BED60 + public static bool TryParse(string s, out double result); // 0x101BEDB0 + public override string ToString(); // 0x1000A4D0 + public string ToString(IFormatProvider provider); // 0x1000A3E0 + public string ToString(string format); // 0x1000A370 + public string ToString(string format, IFormatProvider provider); // 0x1000A450 + public TypeCode GetTypeCode(); // 0x10009D20 +} + +// Namespace: System +[Serializable] +public struct Decimal : IFormattable, IConvertible, IComparable, IComparable`1, IEquatable`1 // TypeDefIndex: 32 +{ + // Fields + public static readonly Decimal MinValue; // 0x00 + public static readonly Decimal MaxValue; // 0x10 + public static readonly Decimal MinusOne; // 0x20 + public static readonly Decimal One; // 0x30 + public static readonly Decimal Zero; // 0x40 + private const int DECIMAL_DIVIDE_BY_ZERO = 5; // 0x00 + private const uint MAX_SCALE = 28; // 0x00 + private const int iMAX_SCALE = 28; // 0x00 + private const uint SIGN_FLAG = 2147483648; // 0x00 + private const uint SCALE_MASK = 16711680; // 0x00 + private const int SCALE_SHIFT = 16; // 0x00 + private const uint RESERVED_SS32_BITS = 2130771967; // 0x00 + private static readonly Decimal MaxValueDiv10; // 0x50 + private uint flags; // 0x08 + private uint hi; // 0x0C + private uint lo; // 0x10 + private uint mid; // 0x14 + + // Methods + public void .ctor(int lo, int mid, int hi, bool isNegative, byte scale); // 0x1001EDE0 + public void .ctor(int value); // 0x1001ED80 + public void .ctor(uint value); // 0x1001EE70 + public void .ctor(long value); // 0x1001EE20 + public void .ctor(ulong value); // 0x1001EEB0 + public void .ctor(float value); // 0x1001EDF0 + public void .ctor(double value); // 0x1001EDB0 + public void .ctor(int[] bits); // 0x1001EEA0 + private static void .cctor(); // 0x102EF620 + private object System.IConvertible.ToType(Type targetType, IFormatProvider provider); // 0x1001EAD0 + private bool System.IConvertible.ToBoolean(IFormatProvider provider); // 0x1001E710 + private byte System.IConvertible.ToByte(IFormatProvider provider); // 0x1001E780 + private char System.IConvertible.ToChar(IFormatProvider provider); // 0x1001E7F0 + private DateTime System.IConvertible.ToDateTime(IFormatProvider provider); // 0x1001E810 + private Decimal System.IConvertible.ToDecimal(IFormatProvider provider); // 0x1001DA80 + private double System.IConvertible.ToDouble(IFormatProvider provider); // 0x1001E830 + private short System.IConvertible.ToInt16(IFormatProvider provider); // 0x1001E8A0 + private int System.IConvertible.ToInt32(IFormatProvider provider); // 0x1001E910 + private long System.IConvertible.ToInt64(IFormatProvider provider); // 0x1001E980 + private sbyte System.IConvertible.ToSByte(IFormatProvider provider); // 0x1001E9F0 + private float System.IConvertible.ToSingle(IFormatProvider provider); // 0x1001EA60 + private ushort System.IConvertible.ToUInt16(IFormatProvider provider); // 0x1001EB80 + private uint System.IConvertible.ToUInt32(IFormatProvider provider); // 0x1001EBF0 + private ulong System.IConvertible.ToUInt64(IFormatProvider provider); // 0x1001EC60 + public static Decimal FromOACurrency(long cy); // 0x102ECEE0 + public static int[] GetBits(Decimal d); // 0x102ECFB0 + public static Decimal Negate(Decimal d); // 0x102ED130 + public static Decimal Add(Decimal d1, Decimal d2); // 0x102ECAF0 + public static Decimal Subtract(Decimal d1, Decimal d2); // 0x102EE0A0 + public override int GetHashCode(); // 0x1001E6B0 + private static ulong u64(Decimal value); // 0x102F1950 + private static long s64(Decimal value); // 0x102F0FA0 + public static bool Equals(Decimal d1, Decimal d2); // 0x102ECD20 + public override bool Equals(object value); // 0x1001E570 + private bool IsZero(); // 0x1001E6F0 + private bool IsNegative(); // 0x1001E6E0 + public static Decimal Floor(Decimal d); // 0x102ECE80 + public static Decimal Truncate(Decimal d); // 0x102EF4B0 + public static Decimal Round(Decimal d, int decimals); // 0x102EDAA0 + public static Decimal Round(Decimal d, int decimals, MidpointRounding mode); // 0x102EDB40 + public static Decimal Round(Decimal d); // 0x102EDB10 + public static Decimal Round(Decimal d, MidpointRounding mode); // 0x102EDA70 + public static Decimal Multiply(Decimal d1, Decimal d2); // 0x102ED060 + public static Decimal Divide(Decimal d1, Decimal d2); // 0x102ECC10 + public static Decimal Remainder(Decimal d1, Decimal d2); // 0x102ED790 + public static int Compare(Decimal d1, Decimal d2); // 0x102ECBC0 + public int CompareTo(object value); // 0x1001E480 + public int CompareTo(Decimal value); // 0x1001E3C0 + public bool Equals(Decimal value); // 0x1001E630 + public static Decimal Ceiling(Decimal d); // 0x102ECB90 + public static Decimal Parse(string s); // 0x102ED310 + public static Decimal Parse(string s, NumberStyles style); // 0x102ED230 + public static Decimal Parse(string s, IFormatProvider provider); // 0x102ED2A0 + private static void ThrowAtPos(int pos); // 0x102EE230 + private static void ThrowInvalidExp(); // 0x102EE2D0 + private static string stripStyles(string s, NumberStyles style, NumberFormatInfo nfi, out int decPos, out bool isNegative, out bool expFlag, out int exp, bool throwex); // 0x102F1060 + public static Decimal Parse(string s, NumberStyles style, IFormatProvider provider); // 0x102ED150 + public static bool TryParse(string s, out Decimal result); // 0x102EF510 + public static bool TryParse(string s, NumberStyles style, IFormatProvider provider, out Decimal result); // 0x102EF590 + private static bool PerformParse(string s, NumberStyles style, IFormatProvider provider, out Decimal res, bool throwex); // 0x102ED380 + public TypeCode GetTypeCode(); // 0x1001E6D0 + public static byte ToByte(Decimal value); // 0x102EE330 + public static double ToDouble(Decimal d); // 0x102EE510 + public static short ToInt16(Decimal value); // 0x102EE570 + public static int ToInt32(Decimal d); // 0x102EE750 + public static long ToInt64(Decimal d); // 0x102EE930 + public static long ToOACurrency(Decimal value); // 0x102EEAE0 + public static sbyte ToSByte(Decimal value); // 0x102EEBC0 + public static float ToSingle(Decimal d); // 0x102EEDA0 + public static ushort ToUInt16(Decimal value); // 0x102EEEF0 + public static uint ToUInt32(Decimal d); // 0x102EF0D0 + public static ulong ToUInt64(Decimal d); // 0x102EF2D0 + public string ToString(string format, IFormatProvider provider); // 0x1001ED30 + public override string ToString(); // 0x1001ED40 + public string ToString(string format); // 0x1001ECD0 + public string ToString(IFormatProvider provider); // 0x1001ECF0 + private static int decimal2UInt64(Decimal val, out ulong result); // 0x102EFD30 + private static int decimal2Int64(Decimal val, out long result); // 0x102EFD10 + private static int decimalIncr(Decimal d1, Decimal d2); // 0x102EFDF0 + internal static int decimal2string(Decimal val, int digits, int decimals, char[] bufDigits, int bufSize, out int decPos, out int sign); // 0x102EFD60 + internal static int string2decimal(out Decimal val, string sDigits, uint decPos, int sign); // 0x102F1040 + internal static int decimalSetExponent(Decimal val, int exp); // 0x102EFE50 + private static double decimal2double(Decimal val); // 0x102EFD50 + private static void decimalFloorAndTrunc(Decimal val, int floorFlag); // 0x102EFDD0 + private static int decimalMult(Decimal pd1, Decimal pd2); // 0x102EFE30 + private static int decimalDiv(out Decimal pc, Decimal pa, Decimal pb); // 0x102EFDB0 + private static int decimalIntDiv(out Decimal pc, Decimal pa, Decimal pb); // 0x102EFE10 + private static int decimalCompare(Decimal d1, Decimal d2); // 0x102EFD90 + public static Decimal op_Addition(Decimal d1, Decimal d2); // 0x102EFE70 + public static Decimal op_Decrement(Decimal d); // 0x102EFEE0 + public static Decimal op_Increment(Decimal d); // 0x102F0A00 + public static Decimal op_Subtraction(Decimal d1, Decimal d2); // 0x102F0E00 + public static Decimal op_UnaryNegation(Decimal d); // 0x102F0F40 + public static Decimal op_UnaryPlus(Decimal d); // 0x1021D800 + public static Decimal op_Multiply(Decimal d1, Decimal d2); // 0x102F0CD0 + public static Decimal op_Division(Decimal d1, Decimal d2); // 0x102EFF70 + public static Decimal op_Modulus(Decimal d1, Decimal d2); // 0x102F0C60 + public static byte op_Explicit(Decimal value); // 0x102F0140 + public static sbyte op_Explicit(Decimal value); // 0x102F02F0 + public static char op_Explicit(Decimal value); // 0x102F04A0 + public static short op_Explicit(Decimal value); // 0x102F05D0 + public static ushort op_Explicit(Decimal value); // 0x102F0220 + public static int op_Explicit(Decimal value); // 0x102F0650 + public static uint op_Explicit(Decimal value); // 0x102F0550 + public static long op_Explicit(Decimal value); // 0x102F0440 + public static ulong op_Explicit(Decimal value); // 0x102F01C0 + public static Decimal op_Implicit(byte value); // 0x102F0900 + public static Decimal op_Implicit(sbyte value); // 0x102F08C0 + public static Decimal op_Implicit(short value); // 0x102F0880 + public static Decimal op_Implicit(ushort value); // 0x102F09A0 + public static Decimal op_Implicit(char value); // 0x102F09A0 + public static Decimal op_Implicit(int value); // 0x102F0930 + public static Decimal op_Implicit(uint value); // 0x102F09D0 + public static Decimal op_Implicit(long value); // 0x102F0830 + public static Decimal op_Implicit(ulong value); // 0x102F0970 + public static Decimal op_Explicit(float value); // 0x102F0410 + public static Decimal op_Explicit(double value); // 0x102F0520 + public static float op_Explicit(Decimal value); // 0x102F0370 + public static double op_Explicit(Decimal value); // 0x102F02A0 + public static bool op_Inequality(Decimal d1, Decimal d2); // 0x102F0A90 + public static bool op_Equality(Decimal d1, Decimal d2); // 0x102F00D0 + public static bool op_GreaterThan(Decimal d1, Decimal d2); // 0x102F0780 + public static bool op_GreaterThanOrEqual(Decimal d1, Decimal d2); // 0x102F06D0 + public static bool op_LessThan(Decimal d1, Decimal d2); // 0x102F0BB0 + public static bool op_LessThanOrEqual(Decimal d1, Decimal d2); // 0x102F0B00 +} + +// Namespace: System +[Serializable] +public struct Boolean : IConvertible, IComparable, IComparable`1, IEquatable`1 // TypeDefIndex: 33 +{ + // Fields + public static readonly string FalseString; // 0x00 + public static readonly string TrueString; // 0x04 + internal bool m_value; // 0x08 + + // Methods + private static void .cctor(); // 0x10314F70 + private object System.IConvertible.ToType(Type targetType, IFormatProvider provider); // 0x1001F490 + private bool System.IConvertible.ToBoolean(IFormatProvider provider); // 0x1001F130 + private byte System.IConvertible.ToByte(IFormatProvider provider); // 0x1001F140 + private char System.IConvertible.ToChar(IFormatProvider provider); // 0x1001F1A0 + private DateTime System.IConvertible.ToDateTime(IFormatProvider provider); // 0x1001F1C0 + private Decimal System.IConvertible.ToDecimal(IFormatProvider provider); // 0x1001F1E0 + private double System.IConvertible.ToDouble(IFormatProvider provider); // 0x1001F250 + private short System.IConvertible.ToInt16(IFormatProvider provider); // 0x1001F2B0 + private int System.IConvertible.ToInt32(IFormatProvider provider); // 0x1001F310 + private long System.IConvertible.ToInt64(IFormatProvider provider); // 0x1001F370 + private sbyte System.IConvertible.ToSByte(IFormatProvider provider); // 0x1001F3D0 + private float System.IConvertible.ToSingle(IFormatProvider provider); // 0x1001F430 + private ushort System.IConvertible.ToUInt16(IFormatProvider provider); // 0x1001F540 + private uint System.IConvertible.ToUInt32(IFormatProvider provider); // 0x1001F5A0 + private ulong System.IConvertible.ToUInt64(IFormatProvider provider); // 0x1001F600 + public int CompareTo(object obj); // 0x1001EFA0 + public override bool Equals(object obj); // 0x1001F060 + public int CompareTo(bool value); // 0x1001EF70 + public bool Equals(bool obj); // 0x1001F0F0 + public override int GetHashCode(); // 0x1001F110 + public static bool Parse(string value); // 0x10314B20 + public static bool TryParse(string value, out bool result); // 0x10314E00 + public override string ToString(); // 0x1001F680 + public TypeCode GetTypeCode(); // 0x1001F120 + public string ToString(IFormatProvider provider); // 0x1001F660 +} + +// Namespace: System +[Serializable] +public struct IntPtr : ISerializable // TypeDefIndex: 34 +{ + // Fields + private void * m_value; // 0x08 + public static readonly IntPtr Zero; // 0x00 + + // Properties + public static int Size { get; } // 0x100FCEA0 + + // Methods + public void .ctor(int value); // 0x10005950 + public void .ctor(long value); // 0x10005950 + public void .ctor(void * value); // 0x10005950 + private void .ctor(SerializationInfo info, StreamingContext context); // 0x10005960 + private void System.Runtime.Serialization.ISerializable.GetObjectData(SerializationInfo info, StreamingContext context); // 0x10005880 + public override bool Equals(object obj); // 0x10005810 + public override int GetHashCode(); // 0x10003A80 + public int ToInt32(); // 0x10003A80 + public long ToInt64(); // 0x10005900 + public void * ToPointer(); // 0x10003A80 + public override string ToString(); // 0x10005930 + public string ToString(string format); // 0x10005910 + public static bool op_Equality(IntPtr value1, IntPtr value2); // 0x100F8860 + public static bool op_Inequality(IntPtr value1, IntPtr value2); // 0x100FCEC0 + public static IntPtr op_Explicit(int value); // 0x100F7810 + public static IntPtr op_Explicit(long value); // 0x100F7810 + public static IntPtr op_Explicit(void * value); // 0x100F7810 + public static int op_Explicit(IntPtr value); // 0x100F7810 + public static long op_Explicit(IntPtr value); // 0x100FCEB0 + public static void * op_Explicit(IntPtr value); // 0x100F7810 +} + +// Namespace: System.Runtime.Serialization +public interface ISerializable // TypeDefIndex: 35 +{ + // Methods + void GetObjectData(SerializationInfo info, StreamingContext context); +} + +// Namespace: System +[Serializable] +public struct UIntPtr : ISerializable // TypeDefIndex: 36 +{ + // Fields + public static readonly UIntPtr Zero; // 0x00 + private void * _pointer; // 0x08 + + // Properties + public static int Size { get; } // 0x100FCEA0 + + // Methods + public void .ctor(ulong value); // 0x100307E0 + public void .ctor(uint value); // 0x10005950 + public void .ctor(void * value); // 0x10005950 + private static void .cctor(); // 0x103499A0 + private void System.Runtime.Serialization.ISerializable.GetObjectData(SerializationInfo info, StreamingContext context); // 0x10030730 + public override bool Equals(object obj); // 0x100306C0 + public override int GetHashCode(); // 0x10003A80 + public uint ToUInt32(); // 0x10003A80 + public ulong ToUInt64(); // 0x100307D0 + public void * ToPointer(); // 0x10003A80 + public override string ToString(); // 0x100307B0 + public static bool op_Equality(UIntPtr value1, UIntPtr value2); // 0x100F8860 + public static bool op_Inequality(UIntPtr value1, UIntPtr value2); // 0x100FCEC0 + public static ulong op_Explicit(UIntPtr value); // 0x1021FB60 + public static uint op_Explicit(UIntPtr value); // 0x100F7810 + public static UIntPtr op_Explicit(ulong value); // 0x10349A50 + public static UIntPtr op_Explicit(void * value); // 0x100F7810 + public static void * op_Explicit(UIntPtr value); // 0x100F7810 + public static UIntPtr op_Explicit(uint value); // 0x100F7810 +} + +// Namespace: System +[Serializable] +public abstract class MulticastDelegate : Delegate // TypeDefIndex: 37 +{ + // Fields + private MulticastDelegate prev; // 0x2C + private MulticastDelegate kpm_next; // 0x30 + + // Methods + protected void .ctor(object target, string method); // 0x101052B0 + protected void .ctor(Type target, string method); // 0x10105280 + public override void GetObjectData(SerializationInfo info, StreamingContext context); // 0x10104EE0 + protected sealed override object DynamicInvokeImpl(object[] args); // 0x10104B70 + public sealed override bool Equals(object obj); // 0x10104BA0 + public sealed override int GetHashCode(); // 0x10104C40 + public sealed override Delegate[] GetInvocationList(); // 0x10104C50 + protected sealed override Delegate CombineImpl(Delegate follow); // 0x101048A0 + private bool BaseEquals(MulticastDelegate value); // 0x10104890 + private static MulticastDelegate KPM(MulticastDelegate needle, MulticastDelegate haystack, out MulticastDelegate tail); // 0x10104F00 + protected sealed override Delegate RemoveImpl(Delegate value); // 0x10104FF0 + public static bool op_Equality(MulticastDelegate d1, MulticastDelegate d2); // 0x101052E0 + public static bool op_Inequality(MulticastDelegate d1, MulticastDelegate d2); // 0x10105310 +} + +// Namespace: System +[Serializable] +public abstract class Delegate : ICloneable, ISerializable // TypeDefIndex: 38 +{ + // Fields + private IntPtr method_ptr; // 0x08 + private IntPtr invoke_impl; // 0x0C + private object m_target; // 0x10 + private IntPtr method; // 0x14 + private IntPtr delegate_trampoline; // 0x18 + private IntPtr method_code; // 0x1C + private MethodInfo method_info; // 0x20 + private MethodInfo original_method_info; // 0x24 + private DelegateData data; // 0x28 + + // Properties + public MethodInfo Method { get; } // 0x102F3B30 + public object Target { get; } // 0x100BFC20 + + // Methods + protected void .ctor(object target, string method); // 0x102F3A10 + protected void .ctor(Type target, string method); // 0x102F3950 + internal static Delegate CreateDelegate_internal(Type type, object target, MethodInfo info, bool throwOnBindFailure); // 0x102F2460 + internal void SetMulticastInvoke(); // 0x102F3940 + private static bool arg_type_match(Type delArgType, Type argType); // 0x102F3AD0 + private static bool return_type_match(Type delReturnType, Type returnType); // 0x102F3C10 + public static Delegate CreateDelegate(Type type, object firstArgument, MethodInfo method, bool throwOnBindFailure); // 0x102F2720 + public static Delegate CreateDelegate(Type type, object firstArgument, MethodInfo method); // 0x102F2FA0 + public static Delegate CreateDelegate(Type type, MethodInfo method, bool throwOnBindFailure); // 0x102F2F80 + public static Delegate CreateDelegate(Type type, MethodInfo method); // 0x102F2650 + public static Delegate CreateDelegate(Type type, object target, string method); // 0x102F2670 + private static MethodInfo GetCandidateMethod(Type type, Type target, string method, BindingFlags bflags, bool ignoreCase, bool throwOnBindFailure); // 0x102F3480 + public static Delegate CreateDelegate(Type type, Type target, string method, bool ignoreCase, bool throwOnBindFailure); // 0x102F2520 + public static Delegate CreateDelegate(Type type, Type target, string method); // 0x102F2700 + public static Delegate CreateDelegate(Type type, Type target, string method, bool ignoreCase); // 0x102F2F60 + public static Delegate CreateDelegate(Type type, object target, string method, bool ignoreCase, bool throwOnBindFailure); // 0x102F2480 + public static Delegate CreateDelegate(Type type, object target, string method, bool ignoreCase); // 0x102F25B0 + public object DynamicInvoke(object[] args); // 0x102F3380 + protected virtual object DynamicInvokeImpl(object[] args); // 0x102F2FC0 + public virtual object Clone(); // 0x10216010 + public override bool Equals(object obj); // 0x102F33A0 + public override int GetHashCode(); // 0x102F3770 + protected virtual MethodInfo GetMethodImpl(); // 0x102F3850 + public virtual void GetObjectData(SerializationInfo info, StreamingContext context); // 0x102F3860 + public virtual Delegate[] GetInvocationList(); // 0x102F37C0 + public static Delegate Combine(Delegate a, Delegate b); // 0x102F22A0 + public static Delegate Combine(Delegate[] delegates); // 0x102F2350 + protected virtual Delegate CombineImpl(Delegate d); // 0x102F2220 + public static Delegate Remove(Delegate source, Delegate value); // 0x102F3910 + protected virtual Delegate RemoveImpl(Delegate d); // 0x102F38E0 + public static Delegate RemoveAll(Delegate source, Delegate value); // 0x102F3880 + public static bool op_Equality(Delegate d1, Delegate d2); // 0x102F3B90 + public static bool op_Inequality(Delegate d1, Delegate d2); // 0x102F3BD0 +} + +// Namespace: System +[Serializable] +public abstract struct Enum : IFormattable, IConvertible, IComparable // TypeDefIndex: 39 +{ + // Fields + private static char[] split_char; // 0x00 + + // Properties + private object Value { get; } // 0x101C27B0 + + // Methods + protected void .ctor(); // 0x100C5970 + private static void .cctor(); // 0x101C2720 + private bool System.IConvertible.ToBoolean(IFormatProvider provider); // 0x101C1960 + private byte System.IConvertible.ToByte(IFormatProvider provider); // 0x101C19C0 + private char System.IConvertible.ToChar(IFormatProvider provider); // 0x101C1A20 + private DateTime System.IConvertible.ToDateTime(IFormatProvider provider); // 0x101C1A80 + private Decimal System.IConvertible.ToDecimal(IFormatProvider provider); // 0x101C1AF0 + private double System.IConvertible.ToDouble(IFormatProvider provider); // 0x101C1B60 + private short System.IConvertible.ToInt16(IFormatProvider provider); // 0x101C1BC0 + private int System.IConvertible.ToInt32(IFormatProvider provider); // 0x101C1C20 + private long System.IConvertible.ToInt64(IFormatProvider provider); // 0x101C1C80 + private sbyte System.IConvertible.ToSByte(IFormatProvider provider); // 0x101C1CE0 + private float System.IConvertible.ToSingle(IFormatProvider provider); // 0x101C1D40 + private object System.IConvertible.ToType(Type targetType, IFormatProvider provider); // 0x101C1DA0 + private ushort System.IConvertible.ToUInt16(IFormatProvider provider); // 0x101C1F40 + private uint System.IConvertible.ToUInt32(IFormatProvider provider); // 0x101C1FA0 + private ulong System.IConvertible.ToUInt64(IFormatProvider provider); // 0x101C2000 + public TypeCode GetTypeCode(); // 0x101C0B80 + private object get_value(); // 0x101C27B0 + public static Array GetValues(Type enumType); // 0x101C0E10 + public static string[] GetNames(Type enumType); // 0x101C0A70 + private static int FindPosition(object value, Array values); // 0x101BF210 + public static string GetName(Type enumType, object value); // 0x101C0910 + public static bool IsDefined(Type enumType, object value); // 0x101C0F10 + private static Type get_underlying_type(Type enumType); // 0x101C27C0 + public static Type GetUnderlyingType(Type enumType); // 0x101C0C10 + public static object Parse(Type enumType, string value); // 0x101C1160 + private static int FindName(Hashtable name_hash, string[] names, string name, bool ignoreCase); // 0x101BF080 + private static ulong GetValue(object value, TypeCode typeCode); // 0x101C0CD0 + public static object Parse(Type enumType, string value, bool ignoreCase); // 0x101C11C0 + private int compare_value_to(object other); // 0x101C2790 + public int CompareTo(object target); // 0x101BEFA0 + public override string ToString(); // 0x101C24D0 + public string ToString(IFormatProvider provider); // 0x101C2650 + public string ToString(string format); // 0x101C25A0 + public string ToString(string format, IFormatProvider provider); // 0x101C2420 + public static object ToObject(Type enumType, byte value); // 0x101C2170 + public static object ToObject(Type enumType, short value); // 0x101C2250 + public static object ToObject(Type enumType, int value); // 0x101C21E0 + public static object ToObject(Type enumType, long value); // 0x101C2060 + public static object ToObject(Type enumType, object value); // 0x101C2150 + public static object ToObject(Type enumType, sbyte value); // 0x101C20E0 + public static object ToObject(Type enumType, ushort value); // 0x101C22C0 + public static object ToObject(Type enumType, uint value); // 0x101C23B0 + public static object ToObject(Type enumType, ulong value); // 0x101C2330 + public override bool Equals(object obj); // 0x101BF070 + private int get_hashcode(); // 0x101C0900 + public override int GetHashCode(); // 0x101C0900 + private static string FormatSpecifier_X(Type enumType, object value, bool upper); // 0x101C00D0 + private static string FormatFlags(Type enumType, object value); // 0x101BF3E0 + public static string Format(Type enumType, object value, string format); // 0x101C0350 +} + +// Namespace: System +[Serializable] +public abstract class Array : IEnumerable, ICloneable, ICollection, IList // TypeDefIndex: 40 +{ + // Properties + private object System.Collections.IList.Item { get; set; } // 0x1030FDA0 0x1030FE90 + private int System.Collections.ICollection.Count { get; } // 0x1030E370 + public int Length { get; } // 0x1030E370 + public long LongLength { get; } // 0x10310480 + public int Rank { get; } // 0x1030DA60 + public bool IsSynchronized { get; } // 0x100EFBF0 + public object SyncRoot { get; } // 0x100F7810 + public bool IsFixedSize { get; } // 0x100E5880 + public bool IsReadOnly { get; } // 0x100EFBF0 + + // Methods + private void .ctor(); // 0x100BF000 + private int System.Collections.IList.Add(object value); // 0x1030FA90 + private void System.Collections.IList.Clear(); // 0x1030FAE0 + private bool System.Collections.IList.Contains(object value); // 0x1030FB40 + private int System.Collections.IList.IndexOf(object value); // 0x1030FBF0 + private void System.Collections.IList.Insert(int index, object value); // 0x1030FCB0 + private void System.Collections.IList.Remove(object value); // 0x1030FD50 + private void System.Collections.IList.RemoveAt(int index); // 0x1030FD00 + internal int InternalArray__ICollection_get_Count(); // 0x1030E370 + internal bool InternalArray__ICollection_get_IsReadOnly(); // 0x100E5880 + internal IEnumerator`1 InternalArray__IEnumerable_GetEnumerator(); + internal void InternalArray__ICollection_Clear(); // 0x1030E320 + internal void InternalArray__ICollection_Add(T item); + internal bool InternalArray__ICollection_Remove(T item); + internal bool InternalArray__ICollection_Contains(T item); + internal void InternalArray__ICollection_CopyTo(T[] array, int index); + internal void InternalArray__Insert(int index, T item); + internal void InternalArray__RemoveAt(int index); // 0x1030E3C0 + internal int InternalArray__IndexOf(T item); + internal T InternalArray__get_Item(int index); + internal void InternalArray__set_Item(int index, T item); + internal void GetGenericValueImpl(int pos, out T value); + internal void SetGenericValueImpl(int pos, T value); + private int GetRank(); // 0x1030DA60 + public int GetLength(int dimension); // 0x1030DA00 + public long GetLongLength(int dimension); // 0x1030DA20 + public int GetLowerBound(int dimension); // 0x1030DA40 + public object GetValue(int[] indices); // 0x1030DCF0 + public void SetValue(object value, int[] indices); // 0x1030ECA0 + internal object GetValueImpl(int pos); // 0x1030DAA0 + internal void SetValueImpl(object value, int pos); // 0x1030EB40 + internal static bool FastCopy(Array source, int source_idx, Array dest, int dest_idx, int length); // 0x1030D840 + internal static Array CreateInstanceImpl(Type elementType, int[] lengths, int[] bounds); // 0x1030CF70 + public IEnumerator GetEnumerator(); // 0x1030D860 + public int GetUpperBound(int dimension); // 0x1030DA70 + public object GetValue(int index); // 0x1030DD80 + public object GetValue(int index1, int index2); // 0x1030DAC0 + public object GetValue(int index1, int index2, int index3); // 0x1030DE70 + public object GetValue(long index); // 0x1030E040 + public object GetValue(long index1, long index2); // 0x1030DF10 + public object GetValue(long index1, long index2, long index3); // 0x1030DB50 + public void SetValue(object value, long index); // 0x1030EB60 + public void SetValue(object value, long index1, long index2); // 0x1030ECC0 + public void SetValue(object value, long index1, long index2, long index3); // 0x1030EE40 + public void SetValue(object value, int index); // 0x1030F070 + public void SetValue(object value, int index1, int index2); // 0x1030EFE0 + public void SetValue(object value, int index1, int index2, int index3); // 0x1030EC00 + public static Array CreateInstance(Type elementType, int length); // 0x1030D090 + public static Array CreateInstance(Type elementType, int length1, int length2); // 0x1030CF90 + public static Array CreateInstance(Type elementType, int length1, int length2, int length3); // 0x1030D100 + public static Array CreateInstance(Type elementType, int[] lengths); // 0x1030D1A0 + public static Array CreateInstance(Type elementType, int[] lengths, int[] lowerBounds); // 0x1030D340 + private static int[] GetIntArray(long[] values); // 0x1030D910 + public static Array CreateInstance(Type elementType, long[] lengths); // 0x1030D010 + public object GetValue(long[] indices); // 0x1030DD10 + public void SetValue(object value, long[] indices); // 0x1030EDD0 + public static int BinarySearch(Array array, object value); // 0x1030C0E0 + public static int BinarySearch(Array array, object value, IComparer comparer); // 0x1030C210 + public static int BinarySearch(Array array, int index, int length, object value); // 0x1030BEF0 + public static int BinarySearch(Array array, int index, int length, object value, IComparer comparer); // 0x1030BCE0 + private static int DoBinarySearch(Array array, int index, int length, object value, IComparer comparer); // 0x1030D6A0 + public static void Clear(Array array, int index, int length); // 0x1030C370 + private static void ClearInternal(Array a, int index, int count); // 0x1030C350 + public object Clone(); // 0x1030C450 + public static void Copy(Array sourceArray, Array destinationArray, int length); // 0x1030CED0 + public static void Copy(Array sourceArray, int sourceIndex, Array destinationArray, int destinationIndex, int length); // 0x1030C850 + public static void Copy(Array sourceArray, long sourceIndex, Array destinationArray, long destinationIndex, long length); // 0x1030C690 + public static void Copy(Array sourceArray, Array destinationArray, long length); // 0x1030CE30 + public static int IndexOf(Array array, object value); // 0x1030E220 + public static int IndexOf(Array array, object value, int startIndex); // 0x1030E2A0 + public static int IndexOf(Array array, object value, int startIndex, int count); // 0x1030E0D0 + public void Initialize(); // 0x100C5530 + public static int LastIndexOf(Array array, object value); // 0x1030E410 + public static int LastIndexOf(Array array, object value, int startIndex); // 0x1030E600 + public static int LastIndexOf(Array array, object value, int startIndex, int count); // 0x1030E4A0 + private static Swapper get_swapper(Array array); // 0x103104D0 + private static Swapper get_swapper(T[] array); + public static void Reverse(Array array); // 0x1030EAC0 + public static void Reverse(Array array, int index, int length); // 0x1030E780 + public static void Sort(Array array); // 0x1030F950 + public static void Sort(Array keys, Array items); // 0x1030F8D0 + public static void Sort(Array array, IComparer comparer); // 0x1030F180 + public static void Sort(Array array, int index, int length); // 0x1030F160 + public static void Sort(Array keys, Array items, IComparer comparer); // 0x1030F9D0 + public static void Sort(Array keys, Array items, int index, int length); // 0x1030FA50 + public static void Sort(Array array, int index, int length, IComparer comparer); // 0x1030FA70 + public static void Sort(Array keys, Array items, int index, int length, IComparer comparer); // 0x1030F200 + private void int_swapper(int i, int j); // 0x103105C0 + private void obj_swapper(int i, int j); // 0x103106A0 + private void slow_swapper(int i, int j); // 0x10310910 + private void double_swapper(int i, int j); // 0x103103E0 + private static int new_gap(int gap); // 0x10310660 + private static void combsort(double[] array, int start, int size, Swapper swap_items); // 0x103100B0 + private static void combsort(int[] array, int start, int size, Swapper swap_items); // 0x10310200 + private static void combsort(char[] array, int start, int size, Swapper swap_items); // 0x1030FF80 + private static void qsort(Array keys, Array items, int low0, int high0, IComparer comparer); // 0x103107B0 + private static void swap(Array keys, Array items, int i, int j); // 0x10310950 + private static int compare(object value1, object value2, IComparer comparer); // 0x10310330 + public static void Sort(T[] array); + public static void Sort(T[] keys, T[] items); + public static void Sort(T[] array, IComparer`1 comparer); + public static void Sort(T[] keys, T[] items, IComparer`1 comparer); + public static void Sort(T[] array, int index, int length); + public static void Sort(T[] keys, T[] items, int index, int length); + public static void Sort(T[] array, int index, int length, IComparer`1 comparer); + public static void Sort(T[] keys, T[] items, int index, int length, IComparer`1 comparer); + public static void Sort(T[] array, Comparison`1 comparison); + internal static void Sort(T[] array, int length, Comparison`1 comparison); + private static void qsort(T[] keys, T[] items, int low0, int high0, IComparer`1 comparer); + private static int compare(T value1, T value2, IComparer`1 comparer); + private static void qsort(T[] array, int low0, int high0, Comparison`1 comparison); + private static void swap(T[] keys, T[] items, int i, int j); + private static void swap(T[] array, int i, int j); + public void CopyTo(Array array, int index); // 0x1030C470 + public void CopyTo(Array array, long index); // 0x1030C5F0 + public static void Resize(T[] array, int newSize); + internal static void Resize(T[] array, int length, int newSize); + public static bool TrueForAll(T[] array, Predicate`1 match); + public static void ForEach(T[] array, Action`1 action); + public static T[] ConvertAll(T[] array, Converter`2 converter); + public static int FindLastIndex(T[] array, Predicate`1 match); + public static int FindLastIndex(T[] array, int startIndex, Predicate`1 match); + public static int FindLastIndex(T[] array, int startIndex, int count, Predicate`1 match); + public static int FindIndex(T[] array, Predicate`1 match); + public static int FindIndex(T[] array, int startIndex, Predicate`1 match); + public static int FindIndex(T[] array, int startIndex, int count, Predicate`1 match); + public static int BinarySearch(T[] array, T value); + public static int BinarySearch(T[] array, T value, IComparer`1 comparer); + public static int BinarySearch(T[] array, int index, int length, T value); + public static int BinarySearch(T[] array, int index, int length, T value, IComparer`1 comparer); + public static int IndexOf(T[] array, T value); + public static int IndexOf(T[] array, T value, int startIndex); + public static int IndexOf(T[] array, T value, int startIndex, int count); + public static int LastIndexOf(T[] array, T value); + public static int LastIndexOf(T[] array, T value, int startIndex); + public static int LastIndexOf(T[] array, T value, int startIndex, int count); + public static T[] FindAll(T[] array, Predicate`1 match); + public static bool Exists(T[] array, Predicate`1 match); + public static ReadOnlyCollection`1 AsReadOnly(T[] array); + public static T Find(T[] array, Predicate`1 match); + public static T FindLast(T[] array, Predicate`1 match); + public static void ConstrainedCopy(Array sourceArray, int sourceIndex, Array destinationArray, int destinationIndex, int length); // 0x1030C460 +} + +// Namespace: +internal struct InternalEnumerator`1 : IEnumerator, IDisposable, IEnumerator`1 // TypeDefIndex: 41 +{ + // Fields + private const int NOT_STARTED = -2; // 0x00 + private const int FINISHED = -1; // 0x00 + private Array array; // 0x00 + private int idx; // 0x00 + + // Properties + private object System.Collections.IEnumerator.Current { get; } + public T Current { get; } + + // Methods + internal void .ctor(Array array); + private void System.Collections.IEnumerator.Reset(); + public void Dispose(); + public bool MoveNext(); +} + +// Namespace: +internal class SimpleEnumerator : IEnumerator, ICloneable // TypeDefIndex: 42 +{ + // Fields + private Array enumeratee; // 0x08 + private int currentpos; // 0x0C + private int length; // 0x10 + + // Properties + public object Current { get; } // 0x1031AC40 + + // Methods + public void .ctor(Array arrayToEnumerate); // 0x1031AAA0 + public bool MoveNext(); // 0x1031A990 + public void Reset(); // 0x10113480 + public object Clone(); // 0x10216010 +} + +// Namespace: +private class ArrayReadOnlyList`1 : IEnumerable, IList`1, ICollection`1, IEnumerable`1 // TypeDefIndex: 43 +{ + // Fields + private T[] array; // 0x00 + + // Properties + public T Item { get; set; } + public int Count { get; } + public bool IsReadOnly { get; } + + // Methods + public void .ctor(T[] array); + private IEnumerator System.Collections.IEnumerable.GetEnumerator(); + public void Add(T item); + public void Clear(); + public bool Contains(T item); + public void CopyTo(T[] array, int index); + public IEnumerator`1 GetEnumerator(); + public int IndexOf(T item); + public void Insert(int index, T item); + public bool Remove(T item); + public void RemoveAt(int index); + private static Exception ReadOnlyError(); +} + +// Namespace: +private sealed class c__Iterator0 : IEnumerator, IDisposable, IEnumerator`1 // TypeDefIndex: 44 +{ + // Fields + internal int __0; // 0x00 + internal int $PC; // 0x00 + internal T $current; // 0x00 + internal ArrayReadOnlyList`1 <>f__this; // 0x00 + + // Properties + private T System.Collections.Generic.IEnumerator.Current { get; } + private object System.Collections.IEnumerator.Current { get; } + + // Methods + public void .ctor(); + public bool MoveNext(); + public void Dispose(); + public void Reset(); +} + +// Namespace: +private delegate void Swapper(int i, int j); // TypeDefIndex: 45; 0x1031AD70 + +// Namespace: System.Collections +public interface ICollection : IEnumerable // TypeDefIndex: 46 +{ + // Properties + int Count { get; } + bool IsSynchronized { get; } + object SyncRoot { get; } + + // Methods + void CopyTo(Array array, int index); +} + +// Namespace: System.Collections +public interface IList : IEnumerable, ICollection // TypeDefIndex: 47 +{ + // Properties + bool IsFixedSize { get; } + bool IsReadOnly { get; } + object Item { get; set; } + + // Methods + int Add(object value); + void Clear(); + bool Contains(object value); + int IndexOf(object value); + void Insert(int index, object value); + void Remove(object value); + void RemoveAt(int index); +} + +// Namespace: System.Collections.Generic +public interface IList`1 : IEnumerable, ICollection`1, IEnumerable`1 // TypeDefIndex: 48 +{ + // Properties + T Item { get; set; } + + // Methods + int IndexOf(T item); + void Insert(int index, T item); + void RemoveAt(int index); +} + +// Namespace: System.Collections.Generic +public interface ICollection`1 : IEnumerable, IEnumerable`1 // TypeDefIndex: 49 +{ + // Properties + int Count { get; } + bool IsReadOnly { get; } + + // Methods + void Add(T item); + void Clear(); + bool Contains(T item); + void CopyTo(T[] array, int arrayIndex); + bool Remove(T item); +} + +// Namespace: System +[Serializable] +public struct Void // TypeDefIndex: 50 +{ +} + +// Namespace: System +[Serializable] +public abstract class Type : MemberInfo, IReflect, _Type // TypeDefIndex: 51 +{ + // Fields + internal const BindingFlags DefaultBindingFlags = 28; // 0x00 + internal RuntimeTypeHandle _impl; // 0x08 + public static readonly char Delimiter; // 0x00 + public static readonly Type[] EmptyTypes; // 0x04 + public static readonly MemberFilter FilterAttribute; // 0x08 + public static readonly MemberFilter FilterName; // 0x0C + public static readonly MemberFilter FilterNameIgnoreCase; // 0x10 + public static readonly object Missing; // 0x14 + + // Properties + public abstract Assembly Assembly { get; } + public abstract string AssemblyQualifiedName { get; } + public TypeAttributes Attributes { get; } // 0x10282700 + public abstract Type BaseType { get; } + public override Type DeclaringType { get; } // 0x100C5600 + public static Binder DefaultBinder { get; } // 0x10282720 + public abstract string FullName { get; } + public abstract Guid GUID { get; } + public bool HasElementType { get; } // 0x10282880 + public bool IsAbstract { get; } // 0x102828A0 + public bool IsAnsiClass { get; } // 0x102828D0 + public bool IsArray { get; } // 0x10282900 + public bool IsAutoClass { get; } // 0x10282920 + public bool IsAutoLayout { get; } // 0x10282950 + public bool IsByRef { get; } // 0x10282980 + public bool IsClass { get; } // 0x102829C0 + public bool IsCOMObject { get; } // 0x102829A0 + public bool IsContextful { get; } // 0x10282A10 + public bool IsEnum { get; } // 0x10282A30 + public bool IsExplicitLayout { get; } // 0x10282AA0 + public bool IsImport { get; } // 0x10282AF0 + public bool IsInterface { get; } // 0x10282B20 + public bool IsLayoutSequential { get; } // 0x10282B50 + public bool IsMarshalByRef { get; } // 0x10282B80 + public bool IsNestedAssembly { get; } // 0x10282BA0 + public bool IsNestedFamANDAssem { get; } // 0x10282BD0 + public bool IsNestedFamily { get; } // 0x10282C30 + public bool IsNestedFamORAssem { get; } // 0x10282C00 + public bool IsNestedPrivate { get; } // 0x10282C60 + public bool IsNestedPublic { get; } // 0x10282C90 + public bool IsNotPublic { get; } // 0x10282CF0 + public bool IsPointer { get; } // 0x10282D20 + public bool IsPrimitive { get; } // 0x10282D40 + public bool IsPublic { get; } // 0x10282D60 + public bool IsSealed { get; } // 0x10282D90 + public bool IsSerializable { get; } // 0x10282DC0 + public bool IsSpecialName { get; } // 0x10282F70 + public bool IsUnicodeClass { get; } // 0x10282FE0 + public bool IsValueType { get; } // 0x10283130 + public override MemberTypes MemberType { get; } // 0x102831C0 + public abstract Module Module { get; } + public abstract string Namespace { get; } + public override Type ReflectedType { get; } // 0x100C5600 + public virtual RuntimeTypeHandle TypeHandle { get; } // 0x100C5600 + public ConstructorInfo TypeInitializer { get; } // 0x102832D0 + public abstract Type UnderlyingSystemType { get; } + internal bool IsSystemType { get; } // 0x10282FA0 + public virtual bool ContainsGenericParameters { get; } // 0x100EFBF0 + public virtual bool IsGenericTypeDefinition { get; } // 0x10282AD0 + public virtual bool IsGenericType { get; } // 0x10282AE0 + public virtual bool IsGenericParameter { get; } // 0x100EFBF0 + public bool IsNested { get; } // 0x10282CC0 + public bool IsVisible { get; } // 0x10283150 + public virtual int GenericParameterPosition { get; } // 0x10282820 + public virtual GenericParameterAttributes GenericParameterAttributes { get; } // 0x102827B0 + public virtual MethodBase DeclaringMethod { get; } // 0x100C5600 + public virtual StructLayoutAttribute StructLayoutAttribute { get; } // 0x102831D0 + internal bool IsUserType { get; } // 0x10283010 + + // Methods + protected void .ctor(); // 0x100C5970 + private static void .cctor(); // 0x10282600 + private void System.Runtime.InteropServices._Type.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x102824A0 + private void System.Runtime.InteropServices._Type.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x10282540 + private void System.Runtime.InteropServices._Type.GetTypeInfoCount(out uint pcTInfo); // 0x102824F0 + private void System.Runtime.InteropServices._Type.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x10282590 + private static bool FilterName_impl(MemberInfo m, object filterCriteria); // 0x1027F940 + private static bool FilterNameIgnoreCase_impl(MemberInfo m, object filterCriteria); // 0x1027F7C0 + private static bool FilterAttribute_impl(MemberInfo m, object filterCriteria); // 0x1027F520 + public override bool Equals(object o); // 0x1027F440 + public bool Equals(Type o); // 0x1027F4C0 + internal bool EqualsInternal(Type type); // 0x1027F420 + private static Type internal_from_handle(IntPtr handle); // 0x10283340 + private static Type internal_from_name(string name, bool throwOnError, bool ignoreCase); // 0x10283350 + public static Type GetType(string typeName); // 0x10281A60 + public static Type GetType(string typeName, bool throwOnError); // 0x10281880 + public static Type GetType(string typeName, bool throwOnError, bool ignoreCase); // 0x10281970 + public static Type[] GetTypeArray(object[] args); // 0x102812F0 + internal static TypeCode GetTypeCodeInternal(Type type); // 0x10281410 + public static TypeCode GetTypeCode(Type type); // 0x10281420 + public static Type GetTypeFromCLSID(Guid clsid); // 0x10281600 + public static Type GetTypeFromCLSID(Guid clsid, bool throwOnError); // 0x10281560 + public static Type GetTypeFromCLSID(Guid clsid, string server); // 0x10281510 + public static Type GetTypeFromCLSID(Guid clsid, string server, bool throwOnError); // 0x102815B0 + public static Type GetTypeFromHandle(RuntimeTypeHandle handle); // 0x10281650 + public static Type GetTypeFromProgID(string progID); // 0x10281710 + public static Type GetTypeFromProgID(string progID, bool throwOnError); // 0x102817B0 + public static Type GetTypeFromProgID(string progID, string server); // 0x102816C0 + public static Type GetTypeFromProgID(string progID, string server, bool throwOnError); // 0x10281760 + public static RuntimeTypeHandle GetTypeHandle(object o); // 0x10281800 + internal static bool type_is_subtype_of(Type a, Type b, bool check_interfaces); // 0x102833B0 + internal static bool type_is_assignable_from(Type a, Type b); // 0x10283390 + public Type GetType(); // 0x1015CD60 + public virtual bool IsSubclassOf(Type c); // 0x10281DD0 + public virtual Type[] FindInterfaces(TypeFilter filter, object filterCriteria); // 0x1027FA70 + public Type GetInterface(string name); // 0x10280920 + public abstract Type GetInterface(string name, bool ignoreCase); + internal static void GetInterfaceMapData(Type t, Type iface, out MethodInfo[] targets, out MethodInfo[] methods); // 0x10280770 + public virtual InterfaceMapping GetInterfaceMap(Type interfaceType); // 0x10280790 + public abstract Type[] GetInterfaces(); + public virtual bool IsAssignableFrom(Type c); // 0x10281B80 + public virtual bool IsInstanceOfType(object o); // 0x10281D30 + public virtual int GetArrayRank(); // 0x10280260 + public abstract Type GetElementType(); + public EventInfo GetEvent(string name); // 0x102804E0 + public abstract EventInfo GetEvent(string name, BindingFlags bindingAttr); + public virtual EventInfo[] GetEvents(); // 0x10280510 + public abstract EventInfo[] GetEvents(BindingFlags bindingAttr); + public FieldInfo GetField(string name); // 0x10280580 + public abstract FieldInfo GetField(string name, BindingFlags bindingAttr); + public FieldInfo[] GetFields(); // 0x102805B0 + public abstract FieldInfo[] GetFields(BindingFlags bindingAttr); + public override int GetHashCode(); // 0x10280720 + public MemberInfo[] GetMember(string name); // 0x10280A40 + public virtual MemberInfo[] GetMember(string name, BindingFlags bindingAttr); // 0x10280A70 + public virtual MemberInfo[] GetMember(string name, MemberTypes type, BindingFlags bindingAttr); // 0x10280950 + public MemberInfo[] GetMembers(); // 0x10280AA0 + public abstract MemberInfo[] GetMembers(BindingFlags bindingAttr); + public MethodInfo GetMethod(string name); // 0x10280AF0 + public MethodInfo GetMethod(string name, BindingFlags bindingAttr); // 0x10280B70 + public MethodInfo GetMethod(string name, Type[] types); // 0x10280BF0 + public MethodInfo GetMethod(string name, Type[] types, ParameterModifier[] modifiers); // 0x10280C90 + public MethodInfo GetMethod(string name, BindingFlags bindingAttr, Binder binder, Type[] types, ParameterModifier[] modifiers); // 0x10280C10 + public MethodInfo GetMethod(string name, BindingFlags bindingAttr, Binder binder, CallingConventions callConvention, Type[] types, ParameterModifier[] modifiers); // 0x10280CC0 + protected abstract MethodInfo GetMethodImpl(string name, BindingFlags bindingAttr, Binder binder, CallingConventions callConvention, Type[] types, ParameterModifier[] modifiers); + internal MethodInfo GetMethodImplInternal(string name, BindingFlags bindingAttr, Binder binder, CallingConventions callConvention, Type[] types, ParameterModifier[] modifiers); // 0x10280AC0 + internal virtual MethodInfo GetMethod(MethodInfo fromNoninstanciated); // 0x10280C40 + internal virtual ConstructorInfo GetConstructor(ConstructorInfo fromNoninstanciated); // 0x102802B0 + internal virtual FieldInfo GetField(FieldInfo fromNoninstanciated); // 0x10280530 + public MethodInfo[] GetMethods(); // 0x10280DA0 + public abstract MethodInfo[] GetMethods(BindingFlags bindingAttr); + public Type GetNestedType(string name); // 0x10280DC0 + public abstract Type GetNestedType(string name, BindingFlags bindingAttr); + public Type[] GetNestedTypes(); // 0x10280DF0 + public abstract Type[] GetNestedTypes(BindingFlags bindingAttr); + public PropertyInfo[] GetProperties(); // 0x10280E30 + public abstract PropertyInfo[] GetProperties(BindingFlags bindingAttr); + public PropertyInfo GetProperty(string name); // 0x10280EB0 + public PropertyInfo GetProperty(string name, BindingFlags bindingAttr); // 0x102810B0 + public PropertyInfo GetProperty(string name, Type returnType); // 0x10281030 + public PropertyInfo GetProperty(string name, Type[] types); // 0x10281010 + public PropertyInfo GetProperty(string name, Type returnType, Type[] types); // 0x10281130 + public PropertyInfo GetProperty(string name, Type returnType, Type[] types, ParameterModifier[] modifiers); // 0x10280E80 + public PropertyInfo GetProperty(string name, BindingFlags bindingAttr, Binder binder, Type returnType, Type[] types, ParameterModifier[] modifiers); // 0x10280F30 + protected abstract PropertyInfo GetPropertyImpl(string name, BindingFlags bindingAttr, Binder binder, Type returnType, Type[] types, ParameterModifier[] modifiers); + internal PropertyInfo GetPropertyImplInternal(string name, BindingFlags bindingAttr, Binder binder, Type returnType, Type[] types, ParameterModifier[] modifiers); // 0x10280E50 + protected abstract ConstructorInfo GetConstructorImpl(BindingFlags bindingAttr, Binder binder, CallingConventions callConvention, Type[] types, ParameterModifier[] modifiers); + protected abstract TypeAttributes GetAttributeFlagsImpl(); + protected abstract bool HasElementTypeImpl(); + protected abstract bool IsArrayImpl(); + protected abstract bool IsByRefImpl(); + protected abstract bool IsCOMObjectImpl(); + protected abstract bool IsPointerImpl(); + protected abstract bool IsPrimitiveImpl(); + internal static bool IsArrayImpl(Type type); // 0x10281B70 + protected virtual bool IsValueTypeImpl(); // 0x10281EC0 + protected virtual bool IsContextfulImpl(); // 0x10281CB0 + protected virtual bool IsMarshalByRefImpl(); // 0x10281D50 + public ConstructorInfo GetConstructor(Type[] types); // 0x10280300 + public ConstructorInfo GetConstructor(BindingFlags bindingAttr, Binder binder, Type[] types, ParameterModifier[] modifiers); // 0x10280320 + public ConstructorInfo GetConstructor(BindingFlags bindingAttr, Binder binder, CallingConventions callConvention, Type[] types, ParameterModifier[] modifiers); // 0x10280340 + public ConstructorInfo[] GetConstructors(); // 0x102803F0 + public abstract ConstructorInfo[] GetConstructors(BindingFlags bindingAttr); + public virtual MemberInfo[] GetDefaultMembers(); // 0x10280410 + public virtual MemberInfo[] FindMembers(MemberTypes memberType, BindingFlags bindingAttr, MemberFilter filter, object filterCriteria); // 0x1027FC50 + public object InvokeMember(string name, BindingFlags invokeAttr, Binder binder, object target, object[] args); // 0x10281AF0 + public object InvokeMember(string name, BindingFlags invokeAttr, Binder binder, object target, object[] args, CultureInfo culture); // 0x10281B30 + public abstract object InvokeMember(string name, BindingFlags invokeAttr, Binder binder, object target, object[] args, ParameterModifier[] modifiers, CultureInfo culture, string[] namedParameters); + public override string ToString(); // 0x102825E0 + public virtual Type[] GetGenericArguments(); // 0x102805D0 + internal Type GetGenericTypeDefinition_impl(); // 0x102806C0 + public virtual Type GetGenericTypeDefinition(); // 0x102806D0 + private static Type MakeGenericType(Type gt, Type[] types); // 0x10282020 + public virtual Type MakeGenericType(Type[] typeArguments); // 0x10282040 + private int GetGenericParameterPosition(); // 0x102806B0 + private GenericParameterAttributes GetGenericParameterAttributes(); // 0x10280620 + private Type[] GetGenericParameterConstraints_impl(); // 0x10280630 + public virtual Type[] GetGenericParameterConstraints(); // 0x10280640 + private Type make_array_type(int rank); // 0x10283370 + public virtual Type MakeArrayType(); // 0x10282000 + public virtual Type MakeArrayType(int rank); // 0x10281FA0 + private Type make_byref_type(); // 0x10282010 + public virtual Type MakeByRefType(); // 0x10282010 + public virtual Type MakePointerType(); // 0x102822E0 + public static Type ReflectionOnlyGetType(string typeName, bool throwIfNotFound, bool ignoreCase); // 0x102822F0 + private void GetPacking(out int packing, out int size); // 0x10280E10 + internal object[] GetPseudoCustomAttributes(); // 0x10281160 +} + +// Namespace: System.Reflection +[Serializable] +public abstract class MemberInfo : ICustomAttributeProvider, _MemberInfo // TypeDefIndex: 52 +{ + // Properties + public abstract Type DeclaringType { get; } + public abstract MemberTypes MemberType { get; } + public abstract string Name { get; } + public abstract Type ReflectedType { get; } + public virtual Module Module { get; } // 0x101711F0 + public virtual int MetadataToken { get; } // 0x101711E0 + + // Methods + protected void .ctor(); // 0x100BF000 + private void System.Runtime.InteropServices._MemberInfo.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x101710A0 + private void System.Runtime.InteropServices._MemberInfo.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x10171140 + private void System.Runtime.InteropServices._MemberInfo.GetTypeInfoCount(out uint pcTInfo); // 0x101710F0 + private void System.Runtime.InteropServices._MemberInfo.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x10171190 + public abstract bool IsDefined(Type attributeType, bool inherit); + public abstract object[] GetCustomAttributes(bool inherit); + public abstract object[] GetCustomAttributes(Type attributeType, bool inherit); + virtual Type System.Runtime.InteropServices._MemberInfo.GetType(); // 0x1015CD60 +} + +// Namespace: System.Reflection +public interface ICustomAttributeProvider // TypeDefIndex: 53 +{ + // Methods + object[] GetCustomAttributes(bool inherit); + object[] GetCustomAttributes(Type attributeType, bool inherit); + bool IsDefined(Type attributeType, bool inherit); +} + +// Namespace: System.Runtime.InteropServices +public interface _MemberInfo // TypeDefIndex: 54 +{ + // Properties + Type DeclaringType { get; } + MemberTypes MemberType { get; } + string Name { get; } + Type ReflectedType { get; } + + // Methods + bool Equals(object other); + object[] GetCustomAttributes(bool inherit); + object[] GetCustomAttributes(Type attributeType, bool inherit); + int GetHashCode(); + Type GetType(); + bool IsDefined(Type attributeType, bool inherit); + string ToString(); + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); +} + +// Namespace: System.Reflection +public interface IReflect // TypeDefIndex: 55 +{ + // Properties + Type UnderlyingSystemType { get; } + + // Methods + FieldInfo GetField(string name, BindingFlags bindingAttr); + FieldInfo[] GetFields(BindingFlags bindingAttr); + MemberInfo[] GetMember(string name, BindingFlags bindingAttr); + MemberInfo[] GetMembers(BindingFlags bindingAttr); + MethodInfo GetMethod(string name, BindingFlags bindingAttr); + MethodInfo GetMethod(string name, BindingFlags bindingAttr, Binder binder, Type[] types, ParameterModifier[] modifiers); + MethodInfo[] GetMethods(BindingFlags bindingAttr); + PropertyInfo[] GetProperties(BindingFlags bindingAttr); + PropertyInfo GetProperty(string name, BindingFlags bindingAttr); + PropertyInfo GetProperty(string name, BindingFlags bindingAttr, Binder binder, Type returnType, Type[] types, ParameterModifier[] modifiers); + object InvokeMember(string name, BindingFlags invokeAttr, Binder binder, object target, object[] args, ParameterModifier[] modifiers, CultureInfo culture, string[] namedParameters); +} + +// Namespace: System.Runtime.InteropServices +public interface _Type // TypeDefIndex: 56 +{ + // Properties + Assembly Assembly { get; } + string AssemblyQualifiedName { get; } + TypeAttributes Attributes { get; } + Type BaseType { get; } + Type DeclaringType { get; } + string FullName { get; } + Guid GUID { get; } + bool HasElementType { get; } + bool IsAbstract { get; } + bool IsAnsiClass { get; } + bool IsArray { get; } + bool IsAutoClass { get; } + bool IsAutoLayout { get; } + bool IsByRef { get; } + bool IsClass { get; } + bool IsCOMObject { get; } + bool IsContextful { get; } + bool IsEnum { get; } + bool IsExplicitLayout { get; } + bool IsImport { get; } + bool IsInterface { get; } + bool IsLayoutSequential { get; } + bool IsMarshalByRef { get; } + bool IsNestedAssembly { get; } + bool IsNestedFamANDAssem { get; } + bool IsNestedFamily { get; } + bool IsNestedFamORAssem { get; } + bool IsNestedPrivate { get; } + bool IsNestedPublic { get; } + bool IsNotPublic { get; } + bool IsPointer { get; } + bool IsPrimitive { get; } + bool IsPublic { get; } + bool IsSealed { get; } + bool IsSerializable { get; } + bool IsSpecialName { get; } + bool IsUnicodeClass { get; } + bool IsValueType { get; } + MemberTypes MemberType { get; } + Module Module { get; } + string Name { get; } + string Namespace { get; } + Type ReflectedType { get; } + RuntimeTypeHandle TypeHandle { get; } + ConstructorInfo TypeInitializer { get; } + Type UnderlyingSystemType { get; } + + // Methods + bool Equals(object other); + bool Equals(Type o); + Type[] FindInterfaces(TypeFilter filter, object filterCriteria); + MemberInfo[] FindMembers(MemberTypes memberType, BindingFlags bindingAttr, MemberFilter filter, object filterCriteria); + int GetArrayRank(); + ConstructorInfo GetConstructor(Type[] types); + ConstructorInfo GetConstructor(BindingFlags bindingAttr, Binder binder, Type[] types, ParameterModifier[] modifiers); + ConstructorInfo GetConstructor(BindingFlags bindingAttr, Binder binder, CallingConventions callConvention, Type[] types, ParameterModifier[] modifiers); + ConstructorInfo[] GetConstructors(); + ConstructorInfo[] GetConstructors(BindingFlags bindingAttr); + object[] GetCustomAttributes(bool inherit); + object[] GetCustomAttributes(Type attributeType, bool inherit); + MemberInfo[] GetDefaultMembers(); + Type GetElementType(); + EventInfo GetEvent(string name); + EventInfo GetEvent(string name, BindingFlags bindingAttr); + EventInfo[] GetEvents(); + EventInfo[] GetEvents(BindingFlags bindingAttr); + FieldInfo GetField(string name); + FieldInfo GetField(string name, BindingFlags bindingAttr); + FieldInfo[] GetFields(); + FieldInfo[] GetFields(BindingFlags bindingAttr); + int GetHashCode(); + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); + Type GetInterface(string name); + Type GetInterface(string name, bool ignoreCase); + InterfaceMapping GetInterfaceMap(Type interfaceType); + Type[] GetInterfaces(); + MemberInfo[] GetMember(string name); + MemberInfo[] GetMember(string name, MemberTypes type, BindingFlags bindingAttr); + MemberInfo[] GetMember(string name, BindingFlags bindingAttr); + MemberInfo[] GetMembers(); + MemberInfo[] GetMembers(BindingFlags bindingAttr); + MethodInfo GetMethod(string name); + MethodInfo GetMethod(string name, BindingFlags bindingAttr); + MethodInfo GetMethod(string name, Type[] types); + MethodInfo GetMethod(string name, Type[] types, ParameterModifier[] modifiers); + MethodInfo GetMethod(string name, BindingFlags bindingAttr, Binder binder, Type[] types, ParameterModifier[] modifiers); + MethodInfo GetMethod(string name, BindingFlags bindingAttr, Binder binder, CallingConventions callConvention, Type[] types, ParameterModifier[] modifiers); + MethodInfo[] GetMethods(); + MethodInfo[] GetMethods(BindingFlags bindingAttr); + Type GetNestedType(string name); + Type GetNestedType(string name, BindingFlags bindingAttr); + Type[] GetNestedTypes(); + Type[] GetNestedTypes(BindingFlags bindingAttr); + PropertyInfo[] GetProperties(); + PropertyInfo[] GetProperties(BindingFlags bindingAttr); + PropertyInfo GetProperty(string name); + PropertyInfo GetProperty(string name, BindingFlags bindingAttr); + PropertyInfo GetProperty(string name, Type returnType); + PropertyInfo GetProperty(string name, Type[] types); + PropertyInfo GetProperty(string name, Type returnType, Type[] types); + PropertyInfo GetProperty(string name, Type returnType, Type[] types, ParameterModifier[] modifiers); + PropertyInfo GetProperty(string name, BindingFlags bindingAttr, Binder binder, Type returnType, Type[] types, ParameterModifier[] modifiers); + Type GetType(); + object InvokeMember(string name, BindingFlags invokeAttr, Binder binder, object target, object[] args); + object InvokeMember(string name, BindingFlags invokeAttr, Binder binder, object target, object[] args, CultureInfo culture); + object InvokeMember(string name, BindingFlags invokeAttr, Binder binder, object target, object[] args, ParameterModifier[] modifiers, CultureInfo culture, string[] namedParameters); + bool IsAssignableFrom(Type c); + bool IsDefined(Type attributeType, bool inherit); + bool IsInstanceOfType(object o); + bool IsSubclassOf(Type c); + string ToString(); +} + +// Namespace: System +[Serializable] +public class Exception : ISerializable, _Exception // TypeDefIndex: 57 +{ + // Fields + private IntPtr[] trace_ips; // 0x08 + private Exception inner_exception; // 0x0C + internal string message; // 0x10 + private string help_link; // 0x14 + private string class_name; // 0x18 + private string stack_trace; // 0x1C + private string _remoteStackTraceString; // 0x20 + private int remote_stack_index; // 0x24 + internal int hresult; // 0x28 + private string source; // 0x2C + private IDictionary _data; // 0x30 + + // Properties + public Exception InnerException { get; } // 0x100C5B30 + public virtual string HelpLink { get; set; } // 0x100EF0C0 0x10127B00 + protected int HResult { get; set; } // 0x100EB040 0x100EB250 + private string ClassName { get; } // 0x101C5200 + public virtual string Message { get; } // 0x101C5290 + public virtual string Source { get; set; } // 0x101C5340 0x100EB260 + public virtual string StackTrace { get; } // 0x101C5450 + public MethodBase TargetSite { get; } // 0x101C5720 + public virtual IDictionary Data { get; } // 0x101C5240 + + // Methods + public void .ctor(); // 0x101C51B0 + public void .ctor(string message); // 0x101C51D0 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x101C4F40 + public void .ctor(string message, Exception innerException); // 0x101C4F10 + internal void SetMessage(string s); // 0x100C5B40 + internal void SetStackTrace(string s); // 0x10113F50 + public virtual Exception GetBaseException(); // 0x101C48C0 + public virtual void GetObjectData(SerializationInfo info, StreamingContext context); // 0x101C4BC0 + public override string ToString(); // 0x101C4D70 + internal Exception FixRemotingException(); // 0x101C47F0 + internal void GetFullNameForStackTrace(StringBuilder sb, MethodBase mi); // 0x101C48F0 + public Type GetType(); // 0x1015CD60 +} + +// Namespace: System.Runtime.InteropServices +public interface _Exception // TypeDefIndex: 58 +{ + // Properties + string HelpLink { get; set; } + Exception InnerException { get; } + string Message { get; } + string Source { get; set; } + string StackTrace { get; } + MethodBase TargetSite { get; } + + // Methods + bool Equals(object obj); + Exception GetBaseException(); + int GetHashCode(); + void GetObjectData(SerializationInfo info, StreamingContext context); + Type GetType(); + string ToString(); +} + +// Namespace: System +[Serializable] +public struct RuntimeFieldHandle : ISerializable // TypeDefIndex: 59 +{ + // Fields + private IntPtr value; // 0x08 + + // Properties + public IntPtr Value { get; } // 0x10003A80 + + // Methods + internal void .ctor(IntPtr v); // 0x10005950 + private void .ctor(SerializationInfo info, StreamingContext context); // 0x10006390 + public void GetObjectData(SerializationInfo info, StreamingContext context); // 0x10006280 + public override bool Equals(object obj); // 0x100061B0 + public bool Equals(RuntimeFieldHandle handle); // 0x10006190 + public override int GetHashCode(); // 0x10006260 + public static bool op_Equality(RuntimeFieldHandle left, RuntimeFieldHandle right); // 0x10123830 + public static bool op_Inequality(RuntimeFieldHandle left, RuntimeFieldHandle right); // 0x10123840 +} + +// Namespace: System +[Serializable] +public struct RuntimeTypeHandle : ISerializable // TypeDefIndex: 60 +{ + // Fields + private IntPtr value; // 0x08 + + // Properties + public IntPtr Value { get; } // 0x10003A80 + + // Methods + internal void .ctor(IntPtr val); // 0x10005950 + private void .ctor(SerializationInfo info, StreamingContext context); // 0x10006AB0 + public void GetObjectData(SerializationInfo info, StreamingContext context); // 0x10006990 + public override bool Equals(object obj); // 0x10006810 + public bool Equals(RuntimeTypeHandle handle); // 0x10006190 + public override int GetHashCode(); // 0x10006260 + public ModuleHandle GetModuleHandle(); // 0x100068C0 + public static bool op_Equality(RuntimeTypeHandle left, object right); // 0x10123970 + public static bool op_Inequality(RuntimeTypeHandle left, object right); // 0x101239E0 + public static bool op_Equality(object left, RuntimeTypeHandle right); // 0x10123900 + public static bool op_Inequality(object left, RuntimeTypeHandle right); // 0x10123A60 +} + +// Namespace: System +public sealed class ParamArrayAttribute : Attribute // TypeDefIndex: 61 +{ + // Methods + public void .ctor(); // 0x100C5970 +} + +// Namespace: System.Runtime.InteropServices +public sealed class OutAttribute : Attribute // TypeDefIndex: 62 +{ + // Methods + public void .ctor(); // 0x100C5970 +} + +// Namespace: System +[Serializable] +public sealed class ObsoleteAttribute : Attribute // TypeDefIndex: 63 +{ + // Fields + private string _message; // 0x08 + private bool _error; // 0x0C + + // Properties + public string Message { get; } // 0x100BF0C0 + public bool IsError { get; } // 0x100F8910 + + // Methods + public void .ctor(); // 0x100C5970 + public void .ctor(string message); // 0x100E5940 + public void .ctor(string message, bool error); // 0x100F88E0 +} + +// Namespace: System.Runtime.InteropServices +public sealed class DllImportAttribute : Attribute // TypeDefIndex: 64 +{ + // Fields + public CallingConvention CallingConvention; // 0x08 + public CharSet CharSet; // 0x0C + private string Dll; // 0x10 + public string EntryPoint; // 0x14 + public bool ExactSpelling; // 0x18 + public bool PreserveSig; // 0x00 + public bool SetLastError; // 0x00 + public bool BestFitMapping; // 0x00 + public bool ThrowOnUnmappableChar; // 0x00 + + // Properties + public string Value { get; } // 0x100BFC20 + + // Methods + public void .ctor(string dllName); // 0x101A2F30 +} + +// Namespace: System.Runtime.CompilerServices +[Serializable] +public sealed class MethodImplAttribute : Attribute // TypeDefIndex: 65 +{ + // Fields + private MethodImplOptions _val; // 0x08 + public MethodCodeType MethodCodeType; // 0x0C + + // Properties + public MethodImplOptions Value { get; } // 0x100BF0C0 + + // Methods + public void .ctor(); // 0x100C5970 + public void .ctor(short value); // 0x101A3760 + public void .ctor(MethodImplOptions methodImplOptions); // 0x100E5940 +} + +// Namespace: System.Runtime.InteropServices +public sealed class MarshalAsAttribute : Attribute // TypeDefIndex: 66 +{ + // Fields + private UnmanagedType utype; // 0x08 + public UnmanagedType ArraySubType; // 0x0C + public string MarshalCookie; // 0x10 + public string MarshalType; // 0x14 + public Type MarshalTypeRef; // 0x18 + public VarEnum SafeArraySubType; // 0x1C + public int SizeConst; // 0x20 + public short SizeParamIndex; // 0x24 + public Type SafeArrayUserDefinedSubType; // 0x28 + public int IidParameterIndex; // 0x2C + + // Properties + public UnmanagedType Value { get; } // 0x100BF0C0 + + // Methods + public void .ctor(short unmanagedType); // 0x101A3760 + public void .ctor(UnmanagedType unmanagedType); // 0x100E5940 +} + +// Namespace: System.Runtime.InteropServices +public sealed class InAttribute : Attribute // TypeDefIndex: 67 +{ + // Methods + public void .ctor(); // 0x100C5970 +} + +// Namespace: System.Runtime.CompilerServices +[Serializable] +public sealed class IndexerNameAttribute : Attribute // TypeDefIndex: 68 +{ + // Methods + public void .ctor(string indexerName); // 0x10207B10 +} + +// Namespace: System.Diagnostics +[Serializable] +public sealed class ConditionalAttribute : Attribute // TypeDefIndex: 69 +{ + // Fields + private string myCondition; // 0x08 + + // Properties + public string ConditionString { get; } // 0x100BF0C0 + + // Methods + public void .ctor(string conditionString); // 0x100E5940 +} + +// Namespace: System.Security.Permissions +[Serializable] +public abstract class SecurityAttribute : Attribute // TypeDefIndex: 70 +{ + // Fields + private SecurityAction m_Action; // 0x08 + private bool m_Unrestricted; // 0x0C + + // Properties + public bool Unrestricted { get; set; } // 0x100F8910 0x1016CBD0 + public SecurityAction Action { get; set; } // 0x100BF0C0 0x100EB270 + + // Methods + protected void .ctor(SecurityAction action); // 0x100E5940 + public abstract IPermission CreatePermission(); +} + +// Namespace: System.Runtime.CompilerServices +[Serializable] +public sealed class RequiredAttributeAttribute : Attribute // TypeDefIndex: 71 +{ + // Properties + public Type RequiredContract { get; } // 0x10209380 + + // Methods + public void .ctor(Type requiredContract); // 0x10207B10 +} + +// Namespace: System.Runtime.InteropServices +public sealed class GuidAttribute : Attribute // TypeDefIndex: 72 +{ + // Fields + private string guidValue; // 0x08 + + // Properties + public string Value { get; } // 0x100BF0C0 + + // Methods + public void .ctor(string guid); // 0x100E5940 +} + +// Namespace: System.Reflection +public sealed class AssemblyCultureAttribute : Attribute // TypeDefIndex: 73 +{ + // Fields + private string name; // 0x08 + + // Properties + public string Culture { get; } // 0x100BF0C0 + + // Methods + public void .ctor(string culture); // 0x100E5940 +} + +// Namespace: System.Reflection +public sealed class AssemblyVersionAttribute : Attribute // TypeDefIndex: 74 +{ + // Fields + private string name; // 0x08 + + // Properties + public string Version { get; } // 0x100BF0C0 + + // Methods + public void .ctor(string version); // 0x100E5940 +} + +// Namespace: System.Runtime.InteropServices +public sealed class ComImportAttribute : Attribute // TypeDefIndex: 75 +{ + // Methods + public void .ctor(); // 0x100C5970 +} + +// Namespace: System.Runtime.InteropServices +public sealed class CoClassAttribute : Attribute // TypeDefIndex: 76 +{ + // Fields + private Type klass; // 0x08 + + // Properties + public Type CoClass { get; } // 0x100BF0C0 + + // Methods + public void .ctor(Type coClass); // 0x100E5940 +} + +// Namespace: System.Runtime.InteropServices +public sealed class OptionalAttribute : Attribute // TypeDefIndex: 77 +{ + // Methods + public void .ctor(); // 0x100C5970 +} + +// Namespace: System.Runtime.InteropServices +public sealed class DefaultCharSetAttribute : Attribute // TypeDefIndex: 78 +{ + // Fields + private CharSet _set; // 0x08 + + // Properties + public CharSet CharSet { get; } // 0x100BF0C0 + + // Methods + public void .ctor(CharSet charSet); // 0x100E5940 +} + +// Namespace: System.Runtime.CompilerServices +public sealed class TypeForwardedToAttribute : Attribute // TypeDefIndex: 79 +{ + // Fields + private Type destination; // 0x08 + + // Properties + public Type Destination { get; } // 0x100BF0C0 + + // Methods + public void .ctor(Type destination); // 0x100E5940 +} + +// Namespace: System.Runtime.CompilerServices +public sealed class FixedBufferAttribute : Attribute // TypeDefIndex: 80 +{ + // Fields + private Type elementType; // 0x08 + private int length; // 0x0C + + // Properties + public Type ElementType { get; } // 0x100BF0C0 + public int Length { get; } // 0x100C5B30 + + // Methods + public void .ctor(Type elementType, int length); // 0x101237E0 +} + +// Namespace: System.Runtime.CompilerServices +[Serializable] +public sealed class CompilerGeneratedAttribute : Attribute // TypeDefIndex: 81 +{ + // Methods + public void .ctor(); // 0x100C5970 +} + +// Namespace: System.Runtime.CompilerServices +public sealed class InternalsVisibleToAttribute : Attribute // TypeDefIndex: 82 +{ + // Fields + private string assemblyName; // 0x08 + private bool all_visible; // 0x0C + + // Properties + public string AssemblyName { get; } // 0x100BF0C0 + public bool AllInternalsVisible { get; set; } // 0x100F8910 0x1016CBD0 + + // Methods + public void .ctor(string assemblyName); // 0x10207B30 +} + +// Namespace: System.Runtime.CompilerServices +[Serializable] +public sealed class RuntimeCompatibilityAttribute : Attribute // TypeDefIndex: 83 +{ + // Fields + private bool wrap_non_exception_throws; // 0x08 + + // Properties + public bool WrapNonExceptionThrows { get; set; } // 0x100EA020 0x10155000 + + // Methods + public void .ctor(); // 0x100C5970 +} + +// Namespace: System.Diagnostics +[Serializable] +public sealed class DebuggerHiddenAttribute : Attribute // TypeDefIndex: 84 +{ + // Methods + public void .ctor(); // 0x100C5970 +} + +// Namespace: System.Runtime.CompilerServices +[Serializable] +public sealed class UnsafeValueTypeAttribute : Attribute // TypeDefIndex: 85 +{ + // Methods + public void .ctor(); // 0x100C5970 +} + +// Namespace: System.Reflection +[Serializable] +public sealed class DefaultMemberAttribute : Attribute // TypeDefIndex: 86 +{ + // Fields + private string member_name; // 0x08 + + // Properties + public string MemberName { get; } // 0x100BF0C0 + + // Methods + public void .ctor(string memberName); // 0x100E5940 +} + +// Namespace: System.Runtime.CompilerServices +[Serializable] +public sealed class DecimalConstantAttribute : Attribute // TypeDefIndex: 87 +{ + // Fields + private byte scale; // 0x08 + private bool sign; // 0x09 + private int hi; // 0x0C + private int mid; // 0x10 + private int low; // 0x14 + + // Properties + public Decimal Value { get; } // 0x10203460 + + // Methods + public void .ctor(byte scale, byte sign, uint hi, uint mid, uint low); // 0x102033E0 + public void .ctor(byte scale, byte sign, int hi, int mid, int low); // 0x10203360 +} + +// Namespace: System.Runtime.InteropServices +public sealed class StructLayoutAttribute : Attribute // TypeDefIndex: 88 +{ + // Fields + public CharSet CharSet; // 0x08 + public int Pack; // 0x0C + public int Size; // 0x10 + private LayoutKind lkind; // 0x14 + + // Properties + public LayoutKind Value { get; } // 0x100EF0C0 + + // Methods + public void .ctor(short layoutKind); // 0x101AA4D0 + public void .ctor(LayoutKind layoutKind); // 0x101AA4A0 +} + +// Namespace: System.Runtime.InteropServices +public sealed class FieldOffsetAttribute : Attribute // TypeDefIndex: 89 +{ + // Fields + private int val; // 0x08 + + // Properties + public int Value { get; } // 0x100BF0C0 + + // Methods + public void .ctor(int offset); // 0x100E5940 +} + +// Namespace: System +public struct RuntimeArgumentHandle // TypeDefIndex: 90 +{ + // Fields + internal IntPtr args; // 0x08 + +} + +// Namespace: System +[Serializable] +public delegate void AsyncCallback(IAsyncResult ar); // TypeDefIndex: 91; 0x10310A30 + +// Namespace: System +public interface IAsyncResult // TypeDefIndex: 92 +{ + // Properties + object AsyncState { get; } + WaitHandle AsyncWaitHandle { get; } + bool CompletedSynchronously { get; } + bool IsCompleted { get; } + +} + +// Namespace: System +public struct TypedReference // TypeDefIndex: 93 +{ + // Fields + private RuntimeTypeHandle type; // 0x08 + private IntPtr value; // 0x0C + private IntPtr klass; // 0x10 + + // Methods + public override bool Equals(object o); // 0x10019B10 + public override int GetHashCode(); // 0x10019B30 + public static Type GetTargetType(TypedReference value); // 0x10283430 + public static TypedReference MakeTypedReference(object target, FieldInfo[] flds); // 0x10283480 + public static void SetTypedReference(TypedReference target, object value); // 0x10283560 + public static RuntimeTypeHandle TargetTypeToken(TypedReference value); // 0x100F7810 + public static object ToObject(TypedReference value); // 0x102835E0 +} + +// Namespace: System +public struct ArgIterator // TypeDefIndex: 94 +{ + // Fields + private IntPtr sig; // 0x08 + private IntPtr args; // 0x0C + private int next_arg; // 0x10 + private int num_args; // 0x14 + + // Methods + public void .ctor(RuntimeArgumentHandle arglist); // 0x10008F40 + public void .ctor(RuntimeArgumentHandle arglist, void * ptr); // 0x10008FA0 + private void Setup(IntPtr argsp, IntPtr start); // 0x10008F20 + public void End(); // 0x10008C90 + public override bool Equals(object o); // 0x10008CA0 + public override int GetHashCode(); // 0x10006260 + public TypedReference GetNextArg(); // 0x10008DE0 + private TypedReference IntGetNextArg(); // 0x10008EB0 + public TypedReference GetNextArg(RuntimeTypeHandle rth); // 0x10008D40 + private TypedReference IntGetNextArg(IntPtr rth); // 0x10008EE0 + public RuntimeTypeHandle GetNextArgType(); // 0x10008CC0 + private IntPtr IntGetNextArgType(); // 0x10008E90 + public int GetRemainingCount(); // 0x10008E80 +} + +// Namespace: System +[Serializable] +public abstract class MarshalByRefObject // TypeDefIndex: 95 +{ + // Fields + [NonSerialized] private ServerIdentity _identity; // 0x08 + + // Properties + internal ServerIdentity ObjectIdentity { get; set; } // 0x100BF0C0 0x100EB270 + + // Methods + protected void .ctor(); // 0x100BF000 + internal Identity GetObjectIdentity(MarshalByRefObject obj, out bool IsClient); // 0x100FD7F0 + public virtual ObjRef CreateObjRef(Type requestedType); // 0x100FD750 + public object GetLifetimeService(); // 0x100FD7D0 + public virtual object InitializeLifetimeService(); // 0x100FD8A0 + protected MarshalByRefObject MemberwiseClone(bool cloneIdentity); // 0x100FD8F0 +} + +// Namespace: System +[Serializable] +public struct Nullable`1 // TypeDefIndex: 96 +{ + // Fields + internal T value; // 0x00 + internal bool has_value; // 0x00 + + // Properties + public bool HasValue { get; } + public T Value { get; } + + // Methods + public void .ctor(T value); + public override bool Equals(object other); + private bool Equals(Nullable`1 other); + public override int GetHashCode(); + public T GetValueOrDefault(); + public T GetValueOrDefault(T defaultValue); + public override string ToString(); + private static object Box(Nullable`1 o); + private static Nullable`1 Unbox(object o); + public static Nullable`1 op_Implicit(T value); + public static T op_Explicit(Nullable`1 value); +} + +// Namespace: System.Runtime.CompilerServices +public static class RuntimeHelpers // TypeDefIndex: 97 +{ + // Properties + public static int OffsetToStringData { get; } // 0x10211340 + + // Methods + private static void InitializeArray(Array array, IntPtr fldHandle); // 0x10211180 + public static void InitializeArray(Array array, RuntimeFieldHandle fldHandle); // 0x10211100 + public static int GetHashCode(object o); // 0x102110E0 + public static bool Equals(object o1, object o2); // 0x10211070 + public static object GetObjectValue(object obj); // 0x102110F0 + private static void RunClassConstructor(IntPtr type); // 0x10211280 + public static void RunClassConstructor(RuntimeTypeHandle type); // 0x10211200 + public static void ExecuteCodeWithGuaranteedCleanup(TryCode code, CleanupCode backoutCode, object userData); // 0x100C5530 + public static void PrepareConstrainedRegions(); // 0x100C5530 + public static void PrepareConstrainedRegionsNoOP(); // 0x100C5530 + public static void ProbeForSufficientStack(); // 0x100C5530 + public static void PrepareDelegate(Delegate d); // 0x102111A0 + public static void PrepareMethod(RuntimeMethodHandle method); // 0x100C5530 + public static void PrepareMethod(RuntimeMethodHandle method, RuntimeTypeHandle[] instantiation); // 0x100C5530 + public static void RunModuleConstructor(ModuleHandle module); // 0x102112A0 + public static void RunModuleConstructor(IntPtr module); // 0x10211290 +} + +// Namespace: +public delegate void TryCode(object userData); // TypeDefIndex: 98; 0x1015A4E0 + +// Namespace: +public delegate void CleanupCode(object userData, bool exceptionThrown); // TypeDefIndex: 99; 0x10202CA0 + +// Namespace: +internal static class Consts // TypeDefIndex: 100 +{ + // Fields + public const string MonoVersion = "2.6.5.0"; // 0x00 + public const string MonoCompany = "MONO development team"; // 0x00 + public const string MonoProduct = "MONO Common language infrastructure"; // 0x00 + public const string MonoCopyright = "(c) various MONO Authors"; // 0x00 + public const string FxVersion = "2.0.0.0"; // 0x00 + public const string VsVersion = "8.0.0.0"; // 0x00 + public const string FxFileVersion = "2.0.50727.1433"; // 0x00 + public const string VsFileVersion = "8.0.50727.1433"; // 0x00 + public const string AssemblyI18N = "I18N, Version=2.0.0.0, Culture=neutral, PublicKeyToken=0738eb9f132ed756"; // 0x00 + public const string AssemblyMicrosoft_VisualStudio = "Microsoft.VisualStudio, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + public const string AssemblyMicrosoft_VisualStudio_Web = "Microsoft.VisualStudio.Web, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + public const string AssemblyMicrosoft_VSDesigner = "Microsoft.VSDesigner, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + public const string AssemblyMono_Http = "Mono.Http, Version=2.0.0.0, Culture=neutral, PublicKeyToken=0738eb9f132ed756"; // 0x00 + public const string AssemblyMono_Posix = "Mono.Posix, Version=2.0.0.0, Culture=neutral, PublicKeyToken=0738eb9f132ed756"; // 0x00 + public const string AssemblyMono_Security = "Mono.Security, Version=2.0.0.0, Culture=neutral, PublicKeyToken=0738eb9f132ed756"; // 0x00 + public const string AssemblyMono_Messaging_RabbitMQ = "Mono.Messaging.RabbitMQ, Version=2.0.0.0, Culture=neutral, PublicKeyToken=0738eb9f132ed756"; // 0x00 + public const string AssemblyCorlib = "mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"; // 0x00 + public const string AssemblySystem = "System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"; // 0x00 + public const string AssemblySystem_Data = "System.Data, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"; // 0x00 + public const string AssemblySystem_Design = "System.Design, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + public const string AssemblySystem_DirectoryServices = "System.DirectoryServices, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + public const string AssemblySystem_Drawing = "System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + public const string AssemblySystem_Drawing_Design = "System.Drawing.Design, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + public const string AssemblySystem_Messaging = "System.Messaging, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + public const string AssemblySystem_Security = "System.Security, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + public const string AssemblySystem_ServiceProcess = "System.ServiceProcess, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + public const string AssemblySystem_Web = "System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + public const string AssemblySystem_Windows_Forms = "System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"; // 0x00 + public const string AssemblySystem_Core = "System.Core, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"; // 0x00 + +} + +// Namespace: +internal sealed class Locale // TypeDefIndex: 101 +{ + // Methods + private void .ctor(); // 0x100BF000 + public static string GetText(string msg); // 0x100F7810 + public static string GetText(string fmt, object[] args); // 0x10261460 +} + +// Namespace: System +internal class MonoTODOAttribute : Attribute // TypeDefIndex: 102 +{ + // Fields + private string comment; // 0x08 + + // Properties + public string Comment { get; } // 0x100BF0C0 + + // Methods + public void .ctor(); // 0x100C5970 + public void .ctor(string comment); // 0x100E5940 +} + +// Namespace: System +internal class MonoDocumentationNoteAttribute : MonoTODOAttribute // TypeDefIndex: 103 +{ + // Methods + public void .ctor(string comment); // 0x100E5940 +} + +// Namespace: System +internal class MonoExtensionAttribute : MonoTODOAttribute // TypeDefIndex: 104 +{ + // Methods + public void .ctor(string comment); // 0x100E5940 +} + +// Namespace: System +internal class MonoInternalNoteAttribute : MonoTODOAttribute // TypeDefIndex: 105 +{ + // Methods + public void .ctor(string comment); // 0x100E5940 +} + +// Namespace: System +internal class MonoLimitationAttribute : MonoTODOAttribute // TypeDefIndex: 106 +{ + // Methods + public void .ctor(string comment); // 0x100E5940 +} + +// Namespace: System +internal class MonoNotSupportedAttribute : MonoTODOAttribute // TypeDefIndex: 107 +{ + // Methods + public void .ctor(string comment); // 0x100E5940 +} + +// Namespace: Microsoft.Win32.SafeHandles +public abstract class CriticalHandleMinusOneIsInvalid : CriticalHandle, IDisposable // TypeDefIndex: 108 +{ + // Properties + public override bool IsInvalid { get; } // 0x1025BBF0 + + // Methods + protected void .ctor(); // 0x1025BBD0 +} + +// Namespace: Microsoft.Win32.SafeHandles +public abstract class CriticalHandleZeroOrMinusOneIsInvalid : CriticalHandle, IDisposable // TypeDefIndex: 109 +{ + // Properties + public override bool IsInvalid { get; } // 0x1025BC20 + + // Methods + protected void .ctor(); // 0x1025BBD0 +} + +// Namespace: Microsoft.Win32.SafeHandles +public sealed class SafeFileHandle : SafeHandleZeroOrMinusOneIsInvalid // TypeDefIndex: 110 +{ + // Methods + public void .ctor(IntPtr preexistingHandle, bool ownsHandle); // 0x102689D0 + internal void .ctor(); // 0x10268A00 + protected override bool ReleaseHandle(); // 0x10268960 +} + +// Namespace: Microsoft.Win32.SafeHandles +public abstract class SafeHandleMinusOneIsInvalid : SafeHandle, IDisposable // TypeDefIndex: 111 +{ + // Properties + public override bool IsInvalid { get; } // 0x1025BBF0 + + // Methods + protected void .ctor(bool ownsHandle); // 0x10268A20 +} + +// Namespace: Microsoft.Win32.SafeHandles +public abstract class SafeHandleZeroOrMinusOneIsInvalid : SafeHandle, IDisposable // TypeDefIndex: 112 +{ + // Properties + public override bool IsInvalid { get; } // 0x10268A40 + + // Methods + protected void .ctor(bool ownsHandle); // 0x10268A20 +} + +// Namespace: Microsoft.Win32.SafeHandles +public sealed class SafeWaitHandle : SafeHandleZeroOrMinusOneIsInvalid // TypeDefIndex: 113 +{ + // Methods + public void .ctor(IntPtr existingHandle, bool ownsHandle); // 0x102689D0 + protected override bool ReleaseHandle(); // 0x10268A90 +} + +// Namespace: Microsoft.Win32 +internal interface IRegistryApi // TypeDefIndex: 114 +{ + // Methods + RegistryKey CreateSubKey(RegistryKey rkey, string keyname); + RegistryKey OpenRemoteBaseKey(RegistryHive hKey, string machineName); + RegistryKey OpenSubKey(RegistryKey rkey, string keyname, bool writtable); + void Flush(RegistryKey rkey); + void Close(RegistryKey rkey); + object GetValue(RegistryKey rkey, string name, object default_value, RegistryValueOptions options); + void SetValue(RegistryKey rkey, string name, object value); + int SubKeyCount(RegistryKey rkey); + int ValueCount(RegistryKey rkey); + void DeleteValue(RegistryKey rkey, string value, bool throw_if_missing); + void DeleteKey(RegistryKey rkey, string keyName, bool throw_if_missing); + string[] GetSubKeyNames(RegistryKey rkey); + string[] GetValueNames(RegistryKey rkey); + string ToString(RegistryKey rkey); + void SetValue(RegistryKey rkey, string name, object value, RegistryValueKind valueKind); +} + +// Namespace: Microsoft.Win32 +public static class Registry // TypeDefIndex: 115 +{ + // Fields + public static readonly RegistryKey ClassesRoot; // 0x00 + public static readonly RegistryKey CurrentConfig; // 0x04 + public static readonly RegistryKey CurrentUser; // 0x08 + public static readonly RegistryKey DynData; // 0x0C + public static readonly RegistryKey LocalMachine; // 0x10 + public static readonly RegistryKey PerformanceData; // 0x14 + public static readonly RegistryKey Users; // 0x18 + private static Dictionary`2 <>f__switch$map0; // 0x1C + + // Methods + private static void .cctor(); // 0x10268760 + private static RegistryKey ToKey(string keyName, bool setting); // 0x10268330 + public static void SetValue(string keyName, string valueName, object value); // 0x10268260 + public static void SetValue(string keyName, string valueName, object value, RegistryValueKind valueKind); // 0x10268190 + public static object GetValue(string keyName, string valueName, object defaultValue); // 0x10268120 +} + +// Namespace: Microsoft.Win32 +[Serializable] +public enum RegistryHive // TypeDefIndex: 116 +{ + ClassesRoot = -2147483648, + CurrentUser = -2147483647, + LocalMachine = -2147483646, + Users = -2147483645, + PerformanceData = -2147483644, + CurrentConfig = -2147483643, + DynData = -2147483642 +} + +// Namespace: Microsoft.Win32 +public sealed class RegistryKey : MarshalByRefObject, IDisposable // TypeDefIndex: 117 +{ + // Fields + private object handle; // 0x0C + private object hive; // 0x10 + private readonly string qname; // 0x14 + private readonly bool isRemoteRoot; // 0x18 + private readonly bool isWritable; // 0x19 + private static readonly IRegistryApi RegistryApi; // 0x00 + + // Properties + public string Name { get; } // 0x100EF0C0 + public int SubKeyCount { get; } // 0x10267FA0 + public int ValueCount { get; } // 0x10268060 + internal bool IsRoot { get; } // 0x101253B0 + private bool IsWritable { get; } // 0x10267F90 + internal RegistryHive Hive { get; } // 0x10267F10 + internal object Handle { get; } // 0x100C5B30 + + // Methods + internal void .ctor(RegistryHive hiveId); // 0x10267EA0 + internal void .ctor(RegistryHive hiveId, IntPtr keyHandle, bool remoteRoot); // 0x10267CA0 + internal void .ctor(object data, string keyName, bool writable); // 0x10267EE0 + private static void .cctor(); // 0x10267BC0 + private void System.IDisposable.Dispose(); // 0x10267A70 + protected override void Finalize(); // 0x10266D20 + public void Flush(); // 0x10266DE0 + public void Close(); // 0x10266180 + public void SetValue(string name, object value); // 0x10267710 + public void SetValue(string name, object value, RegistryValueKind valueKind); // 0x102678C0 + public RegistryKey OpenSubKey(string name); // 0x102674E0 + public RegistryKey OpenSubKey(string name, bool writable); // 0x10267500 + public object GetValue(string name); // 0x102672B0 + public object GetValue(string name, object defaultValue); // 0x102672D0 + public object GetValue(string name, object defaultValue, RegistryValueOptions options); // 0x102671E0 + public RegistryValueKind GetValueKind(string name); // 0x102670D0 + public RegistryKey CreateSubKey(string subkey); // 0x10266300 + public RegistryKey CreateSubKey(string subkey, RegistryKeyPermissionCheck permissionCheck); // 0x102664E0 + public RegistryKey CreateSubKey(string subkey, RegistryKeyPermissionCheck permissionCheck, RegistrySecurity registrySecurity); // 0x102662B0 + public void DeleteSubKey(string subkey); // 0x10266930 + public void DeleteSubKey(string subkey, bool throwOnMissingSubKey); // 0x10266950 + public void DeleteSubKeyTree(string subkey); // 0x102667F0 + public void DeleteValue(string name); // 0x10266D00 + public void DeleteValue(string name, bool throwOnMissingValue); // 0x10266BD0 + public RegistrySecurity GetAccessControl(); // 0x10266EA0 + public RegistrySecurity GetAccessControl(AccessControlSections includeSections); // 0x10266E50 + public string[] GetSubKeyNames(); // 0x10267010 + public string[] GetValueNames(); // 0x10267120 + public static RegistryKey OpenRemoteBaseKey(RegistryHive hKey, string machineName); // 0x102673A0 + public RegistryKey OpenSubKey(string name, RegistryKeyPermissionCheck permissionCheck); // 0x10267670 + public RegistryKey OpenSubKey(string name, RegistryKeyPermissionCheck permissionCheck, RegistryRights rights); // 0x10267490 + public void SetAccessControl(RegistrySecurity registrySecurity); // 0x102676C0 + public override string ToString(); // 0x10267A90 + private void AssertKeyStillValid(); // 0x10266120 + private void AssertKeyNameNotNull(string subKeyName); // 0x102660C0 + private void AssertKeyNameLength(string name); // 0x10266050 + private void DeleteChildKeysAndValues(); // 0x102665E0 + internal static string DecodeString(byte[] data); // 0x10266530 + internal static IOException CreateMarkedForDeletionException(); // 0x10266260 + private static string GetHiveName(RegistryHive hive); // 0x10266EF0 +} + +// Namespace: Microsoft.Win32 +public enum RegistryKeyPermissionCheck // TypeDefIndex: 118 +{ + Default = 0, + ReadSubTree = 1, + ReadWriteSubTree = 2 +} + +// Namespace: Microsoft.Win32 +public enum RegistryValueKind // TypeDefIndex: 119 +{ + Unknown = 0, + String = 1, + ExpandString = 2, + Binary = 3, + DWord = 4, + MultiString = 7, + QWord = 11 +} + +// Namespace: Microsoft.Win32 +public enum RegistryValueOptions // TypeDefIndex: 120 +{ + None = 0, + DoNotExpandEnvironmentNames = 1 +} + +// Namespace: Microsoft.Win32 +internal class ExpandString // TypeDefIndex: 121 +{ + // Fields + private string value; // 0x08 + + // Methods + public void .ctor(string s); // 0x10113500 + public override string ToString(); // 0x100BF0C0 + public string Expand(); // 0x1025DEC0 +} + +// Namespace: Microsoft.Win32 +internal class KeyHandler // TypeDefIndex: 122 +{ + // Fields + private static Hashtable key_to_handler; // 0x00 + private static Hashtable dir_to_handler; // 0x04 + public string Dir; // 0x08 + private Hashtable values; // 0x0C + private string file; // 0x10 + private bool dirty; // 0x14 + private static Dictionary`2 <>f__switch$map1; // 0x08 + + // Properties + public int ValueCount { get; } // 0x102612C0 + public bool IsMarkedForDeletion { get; } // 0x10261130 + private static string UserStore { get; } // 0x10261260 + private static string MachineStore { get; } // 0x102611B0 + + // Methods + private void .ctor(RegistryKey rkey, string basedir); // 0x10260FF0 + private static void .cctor(); // 0x10260F40 + public void Load(); // 0x1025F5F0 + private void LoadKey(SecurityElement se); // 0x1025F090 + public RegistryKey Ensure(RegistryKey rkey, string extra, bool writable); // 0x1025EA20 + public RegistryKey Probe(RegistryKey rkey, string extra, bool writable); // 0x1025FFD0 + private static string CombineName(RegistryKey rkey, string extra); // 0x1025E070 + public static KeyHandler Lookup(RegistryKey rkey, bool createNonExisting); // 0x1025FA60 + public static void Drop(RegistryKey rkey); // 0x1025E130 + public static void Drop(string dir); // 0x1025E4F0 + public object GetValue(string name, RegistryValueOptions options); // 0x1025EF90 + public void SetValue(string name, object value); // 0x10260DB0 + public string[] GetValueNames(); // 0x1025EEB0 + public void SetValue(string name, object value, RegistryValueKind valueKind); // 0x10260AB0 + private void SetDirty(); // 0x10260950 + public void DirtyTimeout(object state); // 0x1025E110 + public void Flush(); // 0x1025ED90 + public bool ValueExists(string name); // 0x10260EC0 + public void RemoveValue(string name); // 0x10260300 + protected override void Finalize(); // 0x1025ECD0 + private void Save(); // 0x10260350 + private void AssertNotMarkedForDeletion(); // 0x1025E010 +} + +// Namespace: Microsoft.Win32 +internal class UnixRegistryApi : IRegistryApi // TypeDefIndex: 123 +{ + // Methods + public void .ctor(); // 0x100BF000 + private static string ToUnix(string keyname); // 0x102707D0 + private static bool IsWellKnownKey(string parentKeyName, string keyname); // 0x10270100 + public RegistryKey CreateSubKey(RegistryKey rkey, string keyname); // 0x1026FA40 + public RegistryKey OpenRemoteBaseKey(RegistryHive hKey, string machineName); // 0x10270260 + public RegistryKey OpenSubKey(RegistryKey rkey, string keyname, bool writable); // 0x102702B0 + public void Flush(RegistryKey rkey); // 0x1026FC90 + public void Close(RegistryKey rkey); // 0x1026F920 + public object GetValue(RegistryKey rkey, string name, object default_value, RegistryValueOptions options); // 0x1026FF90 + public void SetValue(RegistryKey rkey, string name, object value); // 0x102704F0 + public void SetValue(RegistryKey rkey, string name, object value, RegistryValueKind valueKind); // 0x10270680 + public int SubKeyCount(RegistryKey rkey); // 0x10270710 + public int ValueCount(RegistryKey rkey); // 0x10270820 + public void DeleteValue(RegistryKey rkey, string name, bool throw_if_missing); // 0x1026FBB0 + public void DeleteKey(RegistryKey rkey, string keyname, bool throw_if_missing); // 0x1026FA60 + public string[] GetSubKeyNames(RegistryKey rkey); // 0x1026FCF0 + public string[] GetValueNames(RegistryKey rkey); // 0x1026FE20 + public string ToString(RegistryKey rkey); // 0x102707B0 + private RegistryKey CreateSubKey(RegistryKey rkey, string keyname, bool writable); // 0x1026F970 +} + +// Namespace: Microsoft.Win32 +internal class Win32RegistryApi : IRegistryApi // TypeDefIndex: 124 +{ + // Fields + private const int OpenRegKeyRead = 131097; // 0x00 + private const int OpenRegKeyWrite = 131078; // 0x00 + private const int Int32ByteSize = 4; // 0x00 + private const int BufferMaxLength = 1024; // 0x00 + private readonly int NativeBytesPerCharacter; // 0x08 + + // Methods + public void .ctor(); // 0x10272BB0 + private static extern int RegCreateKey(IntPtr keyBase, string keyName, out IntPtr keyHandle); // 0x10271A80 + private static extern int RegCloseKey(IntPtr keyHandle); // 0x10271970 + private static extern int RegConnectRegistry(string machineName, IntPtr hKey, out IntPtr keyHandle); // 0x102719F0 + private static extern int RegFlushKey(IntPtr keyHandle); // 0x10271DA0 + private static extern int RegOpenKeyEx(IntPtr keyBase, string keyName, IntPtr reserved, int access, out IntPtr keyHandle); // 0x10271E20 + private static extern int RegDeleteKey(IntPtr keyHandle, string valueName); // 0x10271B10 + private static extern int RegDeleteValue(IntPtr keyHandle, string valueName); // 0x10271BA0 + private static extern int RegEnumKey(IntPtr keyBase, int index, StringBuilder nameBuffer, int bufferLength); // 0x10271C30 + private static extern int RegEnumValue(IntPtr keyBase, int index, StringBuilder nameBuffer, int nameLength, IntPtr reserved, RegistryValueKind type, IntPtr data, IntPtr dataLength); // 0x10271CE0 + private static extern int RegSetValueEx(IntPtr keyBase, string valueName, IntPtr reserved, RegistryValueKind type, string data, int rawDataLength); // 0x10272180 + private static extern int RegSetValueEx(IntPtr keyBase, string valueName, IntPtr reserved, RegistryValueKind type, byte[] rawData, int rawDataLength); // 0x10272220 + private static extern int RegSetValueEx(IntPtr keyBase, string valueName, IntPtr reserved, RegistryValueKind type, int data, int rawDataLength); // 0x102720E0 + private static extern int RegQueryValueEx(IntPtr keyBase, string valueName, IntPtr reserved, RegistryValueKind type, IntPtr zero, int dataSize); // 0x10271EB0 + private static extern int RegQueryValueEx(IntPtr keyBase, string valueName, IntPtr reserved, RegistryValueKind type, out byte[] data, int dataSize); // 0x10271FF0 + private static extern int RegQueryValueEx(IntPtr keyBase, string valueName, IntPtr reserved, RegistryValueKind type, int data, int dataSize); // 0x10271F50 + private static IntPtr GetHandle(RegistryKey key); // 0x10271080 + private static bool IsHandleValid(RegistryKey key); // 0x10271700 + public object GetValue(RegistryKey rkey, string name, object defaultValue, RegistryValueOptions options); // 0x102713A0 + public void SetValue(RegistryKey rkey, string name, object value, RegistryValueKind valueKind); // 0x10272640 + public void SetValue(RegistryKey rkey, string name, object value); // 0x102722C0 + private int GetBinaryValue(RegistryKey rkey, string name, RegistryValueKind type, out byte[] data, int size); // 0x10270F50 + public int SubKeyCount(RegistryKey rkey); // 0x10272A00 + public int ValueCount(RegistryKey rkey); // 0x10272AC0 + public RegistryKey OpenRemoteBaseKey(RegistryHive hKey, string machineName); // 0x10271720 + public RegistryKey OpenSubKey(RegistryKey rkey, string keyName, bool writable); // 0x10271820 + public void Flush(RegistryKey rkey); // 0x10270DC0 + public void Close(RegistryKey rkey); // 0x10270900 + public RegistryKey CreateSubKey(RegistryKey rkey, string keyName); // 0x10270A10 + public void DeleteKey(RegistryKey rkey, string keyName, bool shouldThrowWhenKeyMissing); // 0x10270B60 + public void DeleteValue(RegistryKey rkey, string value, bool shouldThrowWhenKeyMissing); // 0x10270C90 + public string[] GetSubKeyNames(RegistryKey rkey); // 0x102710E0 + public string[] GetValueNames(RegistryKey rkey); // 0x10271200 + private void GenerateException(int errorCode); // 0x10270E60 + public string ToString(RegistryKey rkey); // 0x102707B0 + internal static string CombineName(RegistryKey rkey, string localName); // 0x102709A0 +} + +// Namespace: Microsoft.Win32 +internal class Win32ResultCode // TypeDefIndex: 125 +{ + // Fields + public const int Success = 0; // 0x00 + public const int FileNotFound = 2; // 0x00 + public const int AccessDenied = 5; // 0x00 + public const int InvalidParameter = 87; // 0x00 + public const int MoreData = 234; // 0x00 + public const int NetworkPathNotFound = 53; // 0x00 + public const int NoMoreEntries = 259; // 0x00 + public const int MarkedForDeletion = 1018; // 0x00 + + // Methods + public void .ctor(); // 0x100BF000 +} + +// Namespace: Mono.Globalization.Unicode +internal class CodePointIndexer // TypeDefIndex: 126 +{ + // Fields + private readonly TableRange[] ranges; // 0x08 + public readonly int TotalCount; // 0x0C + private int defaultIndex; // 0x10 + private int defaultCP; // 0x14 + + // Methods + public void .ctor(int[] starts, int[] ends, int defaultIndex, int defaultCP); // 0x1025B020 + public static Array CompressArray(Array source, Type type, CodePointIndexer indexer); // 0x1025AE30 + public int ToIndex(int cp); // 0x1025AF80 + public int ToCodePoint(int i); // 0x1025AEE0 +} + +// Namespace: +[Serializable] +internal struct TableRange // TypeDefIndex: 127 +{ + // Fields + public readonly int Start; // 0x08 + public readonly int End; // 0x0C + public readonly int Count; // 0x10 + public readonly int IndexStart; // 0x14 + public readonly int IndexEnd; // 0x18 + + // Methods + public void .ctor(int start, int end, int indexStart); // 0x100191B0 +} + +// Namespace: Mono.Globalization.Unicode +internal class TailoringInfo // TypeDefIndex: 128 +{ + // Fields + public readonly int LCID; // 0x08 + public readonly int TailoringIndex; // 0x0C + public readonly int TailoringCount; // 0x10 + public readonly bool FrenchSort; // 0x14 + + // Methods + public void .ctor(int lcid, int tailoringIndex, int tailoringCount, bool frenchSort); // 0x102AF050 +} + +// Namespace: Mono.Globalization.Unicode +internal class Contraction // TypeDefIndex: 129 +{ + // Fields + public readonly char[] Source; // 0x08 + public readonly string Replacement; // 0x0C + public readonly byte[] SortKey; // 0x10 + + // Methods + public void .ctor(char[] source, string replacement, byte[] sortkey); // 0x10127920 +} + +// Namespace: Mono.Globalization.Unicode +internal class ContractionComparer : IComparer // TypeDefIndex: 130 +{ + // Fields + public static readonly ContractionComparer Instance; // 0x00 + + // Methods + public void .ctor(); // 0x100BF000 + private static void .cctor(); // 0x1025B340 + public int Compare(object o1, object o2); // 0x1025B1E0 +} + +// Namespace: Mono.Globalization.Unicode +internal class Level2Map // TypeDefIndex: 131 +{ + // Fields + public byte Source; // 0x08 + public byte Replace; // 0x09 + + // Methods + public void .ctor(byte source, byte replace); // 0x10261430 +} + +// Namespace: Mono.Globalization.Unicode +internal class Level2MapComparer : IComparer // TypeDefIndex: 132 +{ + // Fields + public static readonly Level2MapComparer Instance; // 0x00 + + // Methods + public void .ctor(); // 0x100BF000 + private static void .cctor(); // 0x102613E0 + public int Compare(object o1, object o2); // 0x10261320 +} + +// Namespace: Mono.Globalization.Unicode +internal class MSCompatUnicodeTable // TypeDefIndex: 133 +{ + // Fields + private const int ResourceVersionSize = 1; // 0x00 + public static int MaxExpansionLength; // 0x00 + private static readonly void * ignorableFlags; // 0x04 + private static readonly void * categories; // 0x08 + private static readonly void * level1; // 0x0C + private static readonly void * level2; // 0x10 + private static readonly void * level3; // 0x14 + private static void * cjkCHScategory; // 0x18 + private static void * cjkCHTcategory; // 0x1C + private static void * cjkJAcategory; // 0x20 + private static void * cjkKOcategory; // 0x24 + private static void * cjkCHSlv1; // 0x28 + private static void * cjkCHTlv1; // 0x2C + private static void * cjkJAlv1; // 0x30 + private static void * cjkKOlv1; // 0x34 + private static void * cjkKOlv2; // 0x38 + private static readonly char[] tailoringArr; // 0x3C + private static readonly TailoringInfo[] tailoringInfos; // 0x40 + private static object forLock; // 0x44 + public static readonly bool isReady; // 0x48 + private static Dictionary`2 <>f__switch$map2; // 0x4C + private static Dictionary`2 <>f__switch$map3; // 0x50 + private static Dictionary`2 <>f__switch$map4; // 0x54 + + // Properties + public static bool IsReady { get; } // 0x10263A10 + + // Methods + public void .ctor(); // 0x100BF000 + private static void .cctor(); // 0x10263670 + public static TailoringInfo GetTailoringInfo(int lcid); // 0x10262950 + public static void BuildTailoringTables(CultureInfo culture, TailoringInfo t, Contraction[] contractions, Level2Map[] diacriticals); // 0x10261A80 + private static void SetCJKReferences(string name, CodePointIndexer cjkIndexer, void * catTable, void * lv1Table, CodePointIndexer lv2Indexer, void * lv2Table); // 0x10263180 + public static byte Category(int cp); // 0x10261FC0 + public static byte Level1(int cp); // 0x10262FD0 + public static byte Level2(int cp); // 0x10263060 + public static byte Level3(int cp); // 0x102630F0 + public static bool IsSortable(string s); // 0x10262F40 + public static bool IsSortable(int cp); // 0x10262E20 + public static bool IsIgnorable(int cp); // 0x10262CB0 + public static bool IsIgnorable(int cp, byte flag); // 0x10262BB0 + public static bool IsIgnorableSymbol(int cp); // 0x10262B60 + public static bool IsIgnorableNonSpacing(int cp); // 0x10262B10 + public static int ToKanaTypeInsensitive(int i); // 0x102634A0 + public static int ToWidthCompat(int i); // 0x102634C0 + public static bool HasSpecialWeight(char c); // 0x10262A30 + public static byte GetJapaneseDashType(char c); // 0x10262890 + public static bool IsHalfWidthKana(char c); // 0x10262AB0 + public static bool IsHiragana(char c); // 0x10262AE0 + public static bool IsJapaneseSmallLetter(char c); // 0x10262D00 + private static IntPtr GetResource(string name); // 0x102628E0 + private static uint UInt32FromBytePtr(void * raw, uint idx); // 0x10263640 + public static void FillCJK(string culture, CodePointIndexer cjkIndexer, void * catTable, void * lv1Table, CodePointIndexer lv2Indexer, void * lv2Table); // 0x10262730 + private static void FillCJKCore(string culture, CodePointIndexer cjkIndexer, void * catTable, void * lv1Table, CodePointIndexer cjkLv2Indexer, void * lv2Table); // 0x10262050 +} + +// Namespace: Mono.Globalization.Unicode +internal class MSCompatUnicodeTableUtil // TypeDefIndex: 134 +{ + // Fields + public const byte ResourceVersion = 3; // 0x00 + public static readonly CodePointIndexer Ignorable; // 0x00 + public static readonly CodePointIndexer Category; // 0x04 + public static readonly CodePointIndexer Level1; // 0x08 + public static readonly CodePointIndexer Level2; // 0x0C + public static readonly CodePointIndexer Level3; // 0x10 + public static readonly CodePointIndexer CjkCHS; // 0x14 + public static readonly CodePointIndexer Cjk; // 0x18 + + // Methods + public void .ctor(); // 0x100BF000 + private static void .cctor(); // 0x102614B0 +} + +// Namespace: Mono.Globalization.Unicode +internal enum NormalizationCheck // TypeDefIndex: 135 +{ + Yes = 0, + No = 1, + Maybe = 2 +} + +// Namespace: Mono.Globalization.Unicode +internal class Normalization // TypeDefIndex: 136 +{ + // Fields + public const int NoNfd = 1; // 0x00 + public const int NoNfkd = 2; // 0x00 + public const int NoNfc = 4; // 0x00 + public const int MaybeNfc = 8; // 0x00 + public const int NoNfkc = 16; // 0x00 + public const int MaybeNfkc = 32; // 0x00 + public const int FullCompositionExclusion = 64; // 0x00 + public const int IsUnsafe = 128; // 0x00 + private const int HangulSBase = 44032; // 0x00 + private const int HangulLBase = 4352; // 0x00 + private const int HangulVBase = 4449; // 0x00 + private const int HangulTBase = 4519; // 0x00 + private const int HangulLCount = 19; // 0x00 + private const int HangulVCount = 21; // 0x00 + private const int HangulTCount = 28; // 0x00 + private const int HangulNCount = 588; // 0x00 + private const int HangulSCount = 11172; // 0x00 + private static void * props; // 0x00 + private static void * mappedChars; // 0x04 + private static void * charMapIndex; // 0x08 + private static void * helperIndex; // 0x0C + private static void * mapIdxToComposite; // 0x10 + private static void * combiningClass; // 0x14 + private static object forLock; // 0x18 + public static readonly bool isReady; // 0x1C + + // Properties + public static bool IsReady { get; } // 0x10265E10 + + // Methods + public void .ctor(); // 0x100BF000 + private static void .cctor(); // 0x10265C30 + private static uint PropValue(int cp); // 0x10265790 + private static int CharMapIdx(int cp); // 0x10264160 + private static int GetNormalizedStringLength(int ch); // 0x10264F10 + private static byte GetCombiningClass(int c); // 0x10264E80 + private static int GetPrimaryCompositeFromMapIndex(int src); // 0x10265290 + private static int GetPrimaryCompositeHelperIndex(int cp); // 0x10265330 + private static int GetPrimaryCompositeCharIndex(object chars, int start); // 0x10264FD0 + private static string Compose(string source, int checkType); // 0x10264570 + private static StringBuilder Combine(string source, int start, int checkType); // 0x10264460 + private static bool CanBePrimaryComposite(int i); // 0x102640C0 + private static void Combine(StringBuilder sb, int start, int checkType); // 0x102641E0 + private static int GetPrimaryCompositeMapIndex(object o, int cur, int bufferPos); // 0x102653D0 + private static string Decompose(string source, int checkType); // 0x10264A30 + private static void Decompose(string source, StringBuilder sb, int checkType); // 0x10264910 + private static void ReorderCanonical(string src, StringBuilder sb, int start); // 0x102659C0 + private static void DecomposeChar(StringBuilder sb, int[] buf, string s, int i, int start); // 0x10264740 + public static NormalizationCheck QuickCheck(char c, int type); // 0x10265860 + private static bool GetCanonicalHangul(int s, int[] buf, int bufIdx); // 0x10264AB0 + public static void GetCanonical(int c, int[] buf, int bufIdx); // 0x10264BE0 + public static bool IsNormalized(string source, int type); // 0x10265480 + public static string Normalize(string source, int type); // 0x10265690 + private static void load_normalization_resource(out IntPtr props, out IntPtr mappedChars, out IntPtr charMapIndex, out IntPtr helperIndex, out IntPtr mapIdxToComposite, out IntPtr combiningClass); // 0x10265E60 +} + +// Namespace: Mono.Globalization.Unicode +internal class NormalizationTableUtil // TypeDefIndex: 137 +{ + // Fields + public static readonly CodePointIndexer Prop; // 0x00 + public static readonly CodePointIndexer Map; // 0x04 + public static readonly CodePointIndexer Combining; // 0x08 + public static readonly CodePointIndexer Composite; // 0x0C + public static readonly CodePointIndexer Helper; // 0x10 + + // Properties + public static int PropCount { get; } // 0x10264060 + public static int MapCount { get; } // 0x10264000 + + // Methods + public void .ctor(); // 0x100BF000 + private static void .cctor(); // 0x10263D00 + public static int PropIdx(int cp); // 0x10263C90 + public static int PropCP(int index); // 0x10263C20 + public static int MapIdx(int cp); // 0x10263BB0 + public static int MapCP(int index); // 0x10263B40 + public static int CbIdx(int cp); // 0x10263AD0 + public static int CbCP(int index); // 0x10263A60 +} + +// Namespace: Mono.Globalization.Unicode +internal class SimpleCollator // TypeDefIndex: 138 +{ + // Fields + private const int UnsafeFlagLength = 96; // 0x00 + private static bool QuickCheckDisabled; // 0x00 + private static SimpleCollator invariant; // 0x04 + private readonly TextInfo textInfo; // 0x08 + private readonly bool frenchSort; // 0x0C + private readonly void * cjkCatTable; // 0x10 + private readonly void * cjkLv1Table; // 0x14 + private readonly CodePointIndexer cjkIndexer; // 0x18 + private readonly void * cjkLv2Table; // 0x1C + private readonly CodePointIndexer cjkLv2Indexer; // 0x20 + private readonly int lcid; // 0x24 + private readonly Contraction[] contractions; // 0x28 + private readonly Level2Map[] level2Maps; // 0x2C + private readonly byte[] unsafeFlags; // 0x30 + + // Methods + public void .ctor(CultureInfo culture); // 0x1026EBD0 + private static void .cctor(); // 0x1026EB10 + private void SetCJKTable(CultureInfo culture, CodePointIndexer cjkIndexer, void * catTable, void * lv1Table, CodePointIndexer lv2Indexer, void * lv2Table); // 0x1026E9A0 + private static CultureInfo GetNeutralCulture(CultureInfo info); // 0x1026B5F0 + private byte Category(int cp); // 0x10268AB0 + private byte Level1(int cp); // 0x1026DAC0 + private byte Level2(int cp, ExtenderType ext); // 0x1026DB50 + private static bool IsHalfKana(int cp, CompareOptions opt); // 0x1026CA60 + private Contraction GetContraction(string s, int start, int end); // 0x1026B3F0 + private Contraction GetContraction(string s, int start, int end, Contraction[] clist); // 0x1026B2E0 + private Contraction GetTailContraction(string s, int start, int end); // 0x1026BD40 + private Contraction GetTailContraction(string s, int start, int end, Contraction[] clist); // 0x1026BB60 + private Contraction GetContraction(char c); // 0x1026B490 + private Contraction GetContraction(char c, Contraction[] clist); // 0x1026B250 + private int FilterOptions(int i, CompareOptions opt); // 0x1026AFA0 + private ExtenderType GetExtenderType(int i); // 0x1026B520 + private static byte ToDashTypeValue(ExtenderType ext, CompareOptions opt); // 0x1026EAD0 + private int FilterExtender(int i, ExtenderType ext, CompareOptions opt); // 0x1026ADE0 + private static bool IsIgnorable(int i, CompareOptions opt); // 0x1026CAD0 + private bool IsSafe(int i); // 0x1026CC90 + public SortKey GetSortKey(string s); // 0x1026B7B0 + public SortKey GetSortKey(string s, CompareOptions options); // 0x1026B710 + public SortKey GetSortKey(string s, int start, int length, CompareOptions options); // 0x1026B680 + private void GetSortKey(string s, int start, int end, SortKeyBuffer buf, CompareOptions opt); // 0x1026B850 + private void FillSortKeyRaw(int i, ExtenderType ext, SortKeyBuffer buf, CompareOptions opt); // 0x1026A9C0 + private void FillSurrogateSortKeyRaw(int i, SortKeyBuffer buf); // 0x1026AD30 + public int Compare(string s1, string s2); // 0x1026A800 + public int Compare(string s1, string s2, CompareOptions options); // 0x1026A840 + private int CompareOrdinal(string s1, int idx1, int len1, string s2, int idx2, int len2); // 0x10269FF0 + private int CompareQuick(string s1, int idx1, int len1, string s2, int idx2, int len2, out bool sourceConsumed, out bool targetConsumed, bool immediateBreakup); // 0x1026A2B0 + private int CompareOrdinalIgnoreCase(string s1, int idx1, int len1, string s2, int idx2, int len2); // 0x10269C90 + public int Compare(string s1, int idx1, int len1, string s2, int idx2, int len2, CompareOptions options); // 0x1026A880 + private void ClearBuffer(void * buffer, int size); // 0x10268B40 + private bool QuickCheckPossible(string s1, int idx1, int end1, string s2, int idx2, int end2); // 0x100EFBF0 + private int CompareInternal(string s1, int idx1, int len1, string s2, int idx2, int len2, out bool targetConsumed, out bool sourceConsumed, bool skipHeadingExtenders, bool immediateBreakup, Context ctx); // 0x10268B80 + private int CompareFlagPair(bool b1, bool b2); // 0x10268B60 + public bool IsPrefix(string src, string target, CompareOptions opt); // 0x1026CB50 + public bool IsPrefix(string s, string target, int start, int length, CompareOptions opt); // 0x1026CB80 + private bool IsPrefix(string s, string target, int start, int length, bool skipHeadingExtenders, Context ctx); // 0x1026CC40 + public bool IsSuffix(string src, string target, CompareOptions opt); // 0x1026CD00 + public bool IsSuffix(string s, string target, int start, int length, CompareOptions opt); // 0x1026CD80 + public int IndexOf(string s, string target, CompareOptions opt); // 0x1026C720 + private int QuickIndexOf(string s, string target, int start, int length, out bool testWasUnable); // 0x1026E870 + public int IndexOf(string s, string target, int start, int length, CompareOptions opt); // 0x1026C3D0 + private int IndexOfOrdinal(string s, string target, int start, int length); // 0x1026BFC0 + private int IndexOfOrdinalIgnoreCase(string s, string target, int start, int length); // 0x1026BE80 + public int IndexOf(string s, char target, CompareOptions opt); // 0x1026CA30 + public int IndexOf(string s, char target, int start, int length, CompareOptions opt); // 0x1026C750 + private int IndexOfOrdinal(string s, char target, int start, int length); // 0x1026BF70 + private int IndexOfOrdinalIgnoreCase(string s, char target, int start, int length); // 0x1026BDE0 + private int IndexOfSortKey(string s, int start, int length, void * sortkey, char target, int ti, bool noLv4, Context ctx); // 0x1026C050 + private int IndexOf(string s, string target, int start, int length, void * targetSortKey, Context ctx); // 0x1026C0A0 + public int LastIndexOf(string s, string target, CompareOptions opt); // 0x1026D1F0 + public int LastIndexOf(string s, string target, int start, int length, CompareOptions opt); // 0x1026D520 + private int LastIndexOfOrdinal(string s, string target, int start, int length); // 0x1026D030 + private int LastIndexOfOrdinalIgnoreCase(string s, string target, int start, int length); // 0x1026CEB0 + public int LastIndexOf(string s, char target, CompareOptions opt); // 0x1026D4F0 + public int LastIndexOf(string s, char target, int start, int length, CompareOptions opt); // 0x1026D220 + private int LastIndexOfOrdinal(string s, char target, int start, int length); // 0x1026D130 + private int LastIndexOfOrdinalIgnoreCase(string s, char target, int start, int length); // 0x1026CE00 + private int LastIndexOfSortKey(string s, int start, int orgStart, int length, void * sortkey, int ti, bool noLv4, Context ctx); // 0x1026D190 + private int LastIndexOf(string s, string target, int start, int length, void * targetSortKey, Context ctx); // 0x1026D710 + private bool MatchesForward(string s, int idx, int end, int ti, void * sortkey, bool noLv4, Context ctx); // 0x1026E550 + private bool MatchesForwardCore(string s, int idx, int end, int ti, void * sortkey, bool noLv4, ExtenderType ext, Contraction ct, Context ctx); // 0x1026E250 + private bool MatchesPrimitive(CompareOptions opt, void * source, int si, ExtenderType ext, void * target, int ti, bool noLv4); // 0x1026E6A0 + private bool MatchesBackward(string s, int idx, int end, int orgStart, int ti, void * sortkey, bool noLv4, Context ctx); // 0x1026E100 + private bool MatchesBackwardCore(string s, int idx, int end, int orgStart, int ti, void * sortkey, bool noLv4, ExtenderType ext, Contraction ct, Context ctx); // 0x1026DCC0 +} + +// Namespace: +internal struct Context // TypeDefIndex: 139 +{ + // Fields + public readonly CompareOptions Option; // 0x08 + public readonly void * NeverMatchFlags; // 0x0C + public readonly void * AlwaysMatchFlags; // 0x10 + public void * Buffer1; // 0x14 + public void * Buffer2; // 0x18 + public int PrevCode; // 0x1C + public void * PrevSortKey; // 0x20 + public readonly bool QuickCheckPossible; // 0x24 + + // Methods + public void .ctor(CompareOptions opt, void * alwaysMatchFlags, void * neverMatchFlags, void * buffer1, void * buffer2, void * prev1, bool quickCheckPossible); // 0x1001B880 + public void ClearPrevInfo(); // 0x1001B860 +} + +// Namespace: +private struct PreviousInfo // TypeDefIndex: 140 +{ + // Fields + public int Code; // 0x08 + public void * SortKey; // 0x0C + + // Methods + public void .ctor(bool dummy); // 0x1001B9C0 +} + +// Namespace: +private struct Escape // TypeDefIndex: 141 +{ + // Fields + public string Source; // 0x08 + public int Index; // 0x0C + public int Start; // 0x10 + public int End; // 0x14 + public int Optional; // 0x18 + +} + +// Namespace: +private enum ExtenderType // TypeDefIndex: 142 +{ + None = 0, + Simple = 1, + Voiced = 2, + Conditional = 3, + Buggy = 4 +} + +// Namespace: System.Globalization +[Serializable] +public class SortKey // TypeDefIndex: 143 +{ + // Fields + private readonly string source; // 0x08 + private readonly CompareOptions options; // 0x0C + private readonly byte[] key; // 0x10 + private readonly int lcid; // 0x14 + + // Properties + public virtual string OriginalString { get; } // 0x100BF0C0 + public virtual byte[] KeyData { get; } // 0x100BFC20 + + // Methods + internal void .ctor(int lcid, string source, CompareOptions opt); // 0x102C26C0 + internal void .ctor(int lcid, string source, byte[] buffer, CompareOptions opt, int lv1Length, int lv2Length, int lv3Length, int kanaSmallLength, int markTypeLength, int katakanaLength, int kanaWidthLength, int identLength); // 0x102C2690 + public static int Compare(SortKey sortkey1, SortKey sortkey2); // 0x102C2190 + public override bool Equals(object value); // 0x102C2320 + public override int GetHashCode(); // 0x102C23B0 + public override string ToString(); // 0x102C2410 +} + +// Namespace: Mono.Globalization.Unicode +internal class SortKeyBuffer // TypeDefIndex: 144 +{ + // Fields + private int l1; // 0x08 + private int l2; // 0x0C + private int l3; // 0x10 + private int l4s; // 0x14 + private int l4t; // 0x18 + private int l4k; // 0x1C + private int l4w; // 0x20 + private int l5; // 0x24 + private byte[] l1b; // 0x28 + private byte[] l2b; // 0x2C + private byte[] l3b; // 0x30 + private byte[] l4sb; // 0x34 + private byte[] l4tb; // 0x38 + private byte[] l4kb; // 0x3C + private byte[] l4wb; // 0x40 + private byte[] l5b; // 0x44 + private string source; // 0x48 + private bool processLevel2; // 0x4C + private bool frenchSort; // 0x4D + private bool frenchSorted; // 0x4E + private int lcid; // 0x50 + private CompareOptions options; // 0x54 + + // Methods + public void .ctor(int lcid); // 0x101AA300 + public void Reset(); // 0x102AF000 + internal void ClearBuffer(); // 0x102AEA00 + internal void Initialize(CompareOptions options, int lcid, string s, bool frenchSort); // 0x102AEEB0 + internal void AppendCJKExtension(byte lv1msb, byte lv1lsb); // 0x102AE680 + internal void AppendKana(byte category, byte lv1, byte lv2, byte lv3, bool isSmallKana, byte markType, bool isKatakana, bool isHalfWidth); // 0x102AE700 + internal void AppendNormal(byte category, byte lv1, byte lv2, byte lv3); // 0x102AE830 + private void AppendLevel5(byte category, byte lv1); // 0x102AE7A0 + private void AppendBufferPrimitive(byte value, byte[] buf, int bidx); // 0x102AE5E0 + public SortKey GetResultAndReset(); // 0x102AEA90 + private int GetOptimizedLength(byte[] data, int len, byte defaultValue); // 0x102AEA40 + public SortKey GetResult(); // 0x102AEAF0 +} + +// Namespace: Mono.Interop +internal class ComInteropProxy : RealProxy, IRemotingTypeInfo // TypeDefIndex: 145 +{ + // Fields + private __ComObject com_object; // 0x28 + private int ref_count; // 0x2C + private string type_name; // 0x30 + + // Properties + public string TypeName { get; set; } // 0x100EA580 0x100C15B0 + + // Methods + private void .ctor(Type t); // 0x102A1D00 + private void .ctor(IntPtr pUnk); // 0x102A1D30 + internal void .ctor(IntPtr pUnk, Type t); // 0x102A1E00 + private static void AddProxy(IntPtr pItf, ComInteropProxy proxy); // 0x101B65B0 + internal static ComInteropProxy FindProxy(IntPtr pItf); // 0x10104640 + private void CacheProxy(); // 0x102A18A0 + internal static ComInteropProxy GetProxy(IntPtr pItf, Type t); // 0x102A1AB0 + internal static ComInteropProxy CreateProxy(Type t); // 0x102A19A0 + public override IMessage Invoke(IMessage msg); // 0x102A1C70 + public bool CanCastTo(Type fromType, object o); // 0x102A18D0 +} + +// Namespace: Mono.Interop +internal interface IDispatch // TypeDefIndex: 146 +{ +} + +// Namespace: Mono.Interop +internal interface IUnknown // TypeDefIndex: 147 +{ +} + +// Namespace: Mono.Math.Prime.Generator +internal class NextPrimeFinder : SequentialSearchPrimeGeneratorBase // TypeDefIndex: 148 +{ + // Methods + public void .ctor(); // 0x100BF000 + protected override BigInteger GenerateSearchBase(int bits, object Context); // 0x102AC230 +} + +// Namespace: Mono.Math.Prime.Generator +internal abstract class PrimeGeneratorBase // TypeDefIndex: 149 +{ + // Properties + public virtual ConfidenceFactor Confidence { get; } // 0x1016F1E0 + public virtual PrimalityTest PrimalityTest { get; } // 0x102AE170 + public virtual int TrialDivisionBounds { get; } // 0x102AE1C0 + + // Methods + protected void .ctor(); // 0x100BF000 + protected bool PostTrialDivisionTests(BigInteger bi); // 0x102AE120 + public abstract BigInteger GenerateNewPrime(int bits); +} + +// Namespace: Mono.Math.Prime.Generator +internal class SequentialSearchPrimeGeneratorBase : PrimeGeneratorBase // TypeDefIndex: 150 +{ + // Methods + public void .ctor(); // 0x100BF000 + protected virtual BigInteger GenerateSearchBase(int bits, object context); // 0x102AE510 + public override BigInteger GenerateNewPrime(int bits); // 0x1020A380 + public virtual BigInteger GenerateNewPrime(int bits, object context); // 0x102AE1F0 + protected virtual bool IsPrimeAcceptable(BigInteger bi, object context); // 0x100E5880 +} + +// Namespace: Mono.Math.Prime +internal enum ConfidenceFactor // TypeDefIndex: 151 +{ + ExtraLow = 0, + Low = 1, + Medium = 2, + High = 3, + ExtraHigh = 4, + Provable = 5 +} + +// Namespace: Mono.Math.Prime +internal sealed class PrimalityTests // TypeDefIndex: 152 +{ + // Methods + private void .ctor(); // 0x100BF000 + private static int GetSPPRounds(BigInteger bi, ConfidenceFactor confidence); // 0x102AD9F0 + public static bool Test(BigInteger n, ConfidenceFactor confidence); // 0x102AE0E0 + public static bool RabinMillerTest(BigInteger n, ConfidenceFactor confidence); // 0x102ADB80 + public static bool SmallPrimeSppTest(BigInteger bi, ConfidenceFactor confidence); // 0x102ADEE0 +} + +// Namespace: Mono.Math +internal class BigInteger // TypeDefIndex: 153 +{ + // Fields + private const uint DEFAULT_LEN = 20; // 0x00 + private const string WouldReturnNegVal = "Operation would return a negative value"; // 0x00 + private uint length; // 0x08 + private uint[] data; // 0x0C + internal static readonly uint[] smallPrimes; // 0x00 + private static RandomNumberGenerator rng; // 0x04 + + // Properties + private static RandomNumberGenerator Rng { get; } // 0x1029FD70 + + // Methods + public void .ctor(); // 0x1029FC60 + public void .ctor(Sign sign, uint len); // 0x1029FC00 + public void .ctor(BigInteger bi); // 0x1029F640 + public void .ctor(BigInteger bi, uint len); // 0x1029FCC0 + public void .ctor(byte[] inData); // 0x1029F910 + public void .ctor(uint[] inData); // 0x1029F6E0 + public void .ctor(uint ui); // 0x1029F890 + public void .ctor(ulong ul); // 0x1029F7F0 + private static void .cctor(); // 0x1029F5F0 + public static BigInteger Parse(string number); // 0x1029EC60 + public static BigInteger Add(BigInteger bi1, BigInteger bi2); // 0x1029DDF0 + public static BigInteger Subtract(BigInteger bi1, BigInteger bi2); // 0x1029F150 + public static int Modulus(BigInteger bi, int i); // 0x1029EA80 + public static uint Modulus(BigInteger bi, uint ui); // 0x1029E9B0 + public static BigInteger Modulus(BigInteger bi1, BigInteger bi2); // 0x1029EA00 + public static BigInteger Divid(BigInteger bi, int i); // 0x1029DF60 + public static BigInteger Divid(BigInteger bi1, BigInteger bi2); // 0x1029E010 + public static BigInteger Multiply(BigInteger bi1, BigInteger bi2); // 0x1029EAF0 + public static BigInteger Multiply(BigInteger bi, int i); // 0x1029EB40 + public static BigInteger GenerateRandom(int bits, RandomNumberGenerator rng); // 0x1029E260 + public static BigInteger GenerateRandom(int bits); // 0x1029E200 + public void Randomize(RandomNumberGenerator rng); // 0x1029EEE0 + public void Randomize(); // 0x1029EE80 + public int BitCount(); // 0x1029DE40 + public bool TestBit(uint bitNum); // 0x1029F1A0 + public bool TestBit(int bitNum); // 0x1029F1F0 + public void SetBit(uint bitNum); // 0x1029F100 + public void ClearBit(uint bitNum); // 0x1029DEA0 + public void SetBit(uint bitNum, bool value); // 0x1029F090 + public int LowestSetBit(); // 0x1029E880 + public byte[] GetBytes(); // 0x1029E3F0 + public Sign Compare(BigInteger bi); // 0x1029DF50 + public string ToString(uint radix); // 0x1029F2D0 + public string ToString(uint radix, string characterSet); // 0x1029F310 + private void Normalize(); // 0x1029EC00 + public void Clear(); // 0x1029DEF0 + public override int GetHashCode(); // 0x1029E550 + public override string ToString(); // 0x1029F290 + public override bool Equals(object o); // 0x1029E090 + public BigInteger GCD(BigInteger bi); // 0x1029E190 + public BigInteger ModInverse(BigInteger modulus); // 0x1029E940 + public BigInteger ModPow(BigInteger exp, BigInteger n); // 0x1029E950 + public bool IsProbablePrime(); // 0x1029E660 + public static BigInteger NextHighestPrime(BigInteger bi); // 0x1029EB90 + public static BigInteger GeneratePseudoPrime(int bits); // 0x1029E1A0 + public void Incr2(); // 0x1029E5A0 + public static BigInteger op_Implicit(uint value); // 0x102A0150 + public static BigInteger op_Implicit(int value); // 0x102A01A0 + public static BigInteger op_Implicit(ulong value); // 0x102A0220 + public static BigInteger op_Addition(BigInteger bi1, BigInteger bi2); // 0x1029FE30 + public static BigInteger op_Subtraction(BigInteger bi1, BigInteger bi2); // 0x102A0930 + public static int op_Modulus(BigInteger bi, int i); // 0x102A0460 + public static uint op_Modulus(BigInteger bi, uint ui); // 0x102A0450 + public static BigInteger op_Modulus(BigInteger bi1, BigInteger bi2); // 0x102A0490 + public static BigInteger op_Division(BigInteger bi, int i); // 0x1029FF50 + public static BigInteger op_Division(BigInteger bi1, BigInteger bi2); // 0x1029FFC0 + public static BigInteger op_Multiply(BigInteger bi1, BigInteger bi2); // 0x102A04D0 + public static BigInteger op_Multiply(BigInteger bi, int i); // 0x102A0700 + public static BigInteger op_LeftShift(BigInteger bi1, int shiftVal); // 0x102A0400 + public static BigInteger op_RightShift(BigInteger bi1, int shiftVal); // 0x102A0920 + public static bool op_Equality(BigInteger bi1, uint ui); // 0x102A00B0 + public static bool op_Inequality(BigInteger bi1, uint ui); // 0x102A02F0 + public static bool op_Equality(BigInteger bi1, BigInteger bi2); // 0x102A0000 + public static bool op_Inequality(BigInteger bi1, BigInteger bi2); // 0x102A0350 + public static bool op_GreaterThan(BigInteger bi1, BigInteger bi2); // 0x102A0130 + public static bool op_LessThan(BigInteger bi1, BigInteger bi2); // 0x102A0430 + public static bool op_GreaterThanOrEqual(BigInteger bi1, BigInteger bi2); // 0x102A0110 + public static bool op_LessThanOrEqual(BigInteger bi1, BigInteger bi2); // 0x102A0410 +} + +// Namespace: +public enum Sign // TypeDefIndex: 154 +{ + Negative = -1, + Zero = 0, + Positive = 1 +} + +// Namespace: +internal sealed class ModulusRing // TypeDefIndex: 155 +{ + // Fields + private BigInteger mod; // 0x08 + private BigInteger constant; // 0x0C + + // Methods + public void .ctor(BigInteger modulus); // 0x102ABE70 + public void BarrettReduction(BigInteger x); // 0x102AB5C0 + public BigInteger Multiply(BigInteger a, BigInteger b); // 0x102ABA30 + public BigInteger Difference(BigInteger a, BigInteger b); // 0x102AB830 + public BigInteger Pow(BigInteger a, BigInteger k); // 0x102ABCD0 + public BigInteger Pow(uint b, BigInteger exp); // 0x102ABC80 +} + +// Namespace: +internal sealed class Montgomery // TypeDefIndex: 156 +{ + // Methods + private void .ctor(); // 0x100BF000 + public static uint Inverse(uint n); // 0x102ABF90 + public static BigInteger ToMont(BigInteger n, BigInteger m); // 0x102AC180 + public static BigInteger Reduce(BigInteger n, BigInteger m, uint mPrime); // 0x102ABFC0 +} + +// Namespace: +private sealed class Kernel // TypeDefIndex: 157 +{ + // Methods + public void .ctor(); // 0x100BF000 + public static BigInteger AddSameSign(BigInteger bi1, BigInteger bi2); // 0x102A6ED0 + public static BigInteger Subtract(BigInteger big, BigInteger small); // 0x102A8470 + public static void MinusEq(BigInteger big, BigInteger small); // 0x102A79B0 + public static void PlusEq(BigInteger bi1, BigInteger bi2); // 0x102A7E00 + public static Sign Compare(BigInteger bi1, BigInteger bi2); // 0x102A70B0 + public static uint SingleByteDivideInPlace(BigInteger n, uint d); // 0x102A81C0 + public static uint DwordMod(BigInteger n, uint d); // 0x102A7620 + public static BigInteger DwordDiv(BigInteger n, uint d); // 0x102A74A0 + public static BigInteger[] DwordDivMod(BigInteger n, uint d); // 0x102A71F0 + public static BigInteger[] multiByteDivide(BigInteger bi1, BigInteger bi2); // 0x102A8FD0 + public static BigInteger LeftShift(BigInteger bi, int n); // 0x102A76A0 + public static BigInteger RightShift(BigInteger bi, int n); // 0x102A7FA0 + public static BigInteger MultiplyByDword(BigInteger n, uint f); // 0x102A7AC0 + public static void Multiply(uint[] x, uint xOffset, uint xLen, uint[] y, uint yOffset, uint yLen, uint[] d, uint dOffset); // 0x102A7D00 + public static void MultiplyMod2p32pmod(uint[] x, int xOffset, int xLen, uint[] y, int yOffest, int yLen, uint[] d, int dOffset, int mod); // 0x102A7BE0 + public static void SquarePositive(BigInteger bi, uint[] wkSpace); // 0x102A82B0 + public static BigInteger gcd(BigInteger a, BigInteger b); // 0x102A8620 + public static uint modInverse(BigInteger bi, uint modulus); // 0x102A8850 + public static BigInteger modInverse(BigInteger bi, BigInteger modulus); // 0x102A8900 +} + +// Namespace: Mono.Security.Authenticode +internal enum Authority // TypeDefIndex: 158 +{ + Individual = 0, + Commercial = 1, + Maximum = 2 +} + +// Namespace: Mono.Security.Authenticode +internal class AuthenticodeBase // TypeDefIndex: 159 +{ + // Fields + public const string spcIndirectDataContext = "1.3.6.1.4.1.311.2.1.4"; // 0x00 + private byte[] fileblock; // 0x08 + private FileStream fs; // 0x0C + private int blockNo; // 0x10 + private int blockLength; // 0x14 + private int peOffset; // 0x18 + private int dirSecurityOffset; // 0x1C + private int dirSecuritySize; // 0x20 + private int coffSymbolTableOffset; // 0x24 + + // Properties + internal int PEOffset { get; } // 0x1029C050 + internal int CoffSymbolTableOffset { get; } // 0x1029C030 + internal int SecurityOffset { get; } // 0x1029C070 + + // Methods + public void .ctor(); // 0x1029BFE0 + internal void Open(string filename); // 0x1029BD30 + internal void Close(); // 0x1029B680 + internal bool ReadFirstBlock(); // 0x1029BDB0 + internal byte[] GetSecurityEntry(); // 0x1029BB70 + internal byte[] GetHash(HashAlgorithm hash); // 0x1029B6C0 + protected byte[] HashFile(string fileName, string hashName); // 0x1029BC30 +} + +// Namespace: Mono.Security.Authenticode +internal class AuthenticodeDeformatter : AuthenticodeBase // TypeDefIndex: 160 +{ + // Fields + private string filename; // 0x28 + private byte[] hash; // 0x2C + private X509CertificateCollection coll; // 0x30 + private ASN1 signedHash; // 0x34 + private DateTime timestamp; // 0x38 + private X509Certificate signingCertificate; // 0x48 + private int reason; // 0x4C + private bool trustedRoot; // 0x50 + private bool trustedTimestampRoot; // 0x51 + private byte[] entry; // 0x54 + private X509Chain signerChain; // 0x58 + private X509Chain timestampChain; // 0x5C + private static Dictionary`2 <>f__switch$map5; // 0x00 + private static Dictionary`2 <>f__switch$map6; // 0x04 + private static Dictionary`2 <>f__switch$map7; // 0x08 + + // Properties + public string FileName { get; set; } // 0x100EB040 0x1029DC40 + public byte[] Hash { get; } // 0x1029D9A0 + public int Reason { get; } // 0x1029DA20 + public byte[] Signature { get; } // 0x1029DBB0 + public DateTime Timestamp { get; } // 0x1029DC20 + public X509CertificateCollection Certificates { get; } // 0x100EA580 + public X509Certificate SigningCertificate { get; } // 0x10145560 + + // Methods + public void .ctor(); // 0x1029D850 + public void .ctor(string fileName); // 0x1029D8F0 + public bool IsTrusted(); // 0x1029C500 + private bool CheckSignature(string fileName); // 0x1029C090 + private bool CompareIssuerSerial(string issuer, byte[] serial, X509Certificate x509); // 0x1029C3E0 + private bool VerifySignature(SignedData sd, byte[] calculatedMessageDigest, HashAlgorithm ha); // 0x1029CF10 + private bool VerifyCounterSignature(SignerInfo cs, byte[] signature); // 0x1029C720 + private void Reset(); // 0x1029C660 +} + +// Namespace: Mono.Security.Cryptography +internal sealed class CryptoConvert // TypeDefIndex: 161 +{ + // Methods + private void .ctor(); // 0x100BF000 + private static int ToInt32LE(byte[] bytes, int offset); // 0x102A44F0 + private static uint ToUInt32LE(byte[] bytes, int offset); // 0x102A44F0 + private static byte[] GetBytesLE(int val); // 0x102A3440 + private static byte[] Trim(byte[] array); // 0x102A4590 + public static RSA FromCapiPrivateKeyBlob(byte[] blob); // 0x102A2BA0 + public static RSA FromCapiPrivateKeyBlob(byte[] blob, int offset); // 0x102A26C0 + public static DSA FromCapiPrivateKeyBlobDSA(byte[] blob); // 0x102A26A0 + public static DSA FromCapiPrivateKeyBlobDSA(byte[] blob, int offset); // 0x102A2310 + public static byte[] ToCapiPrivateKeyBlob(RSA rsa); // 0x102A37A0 + public static byte[] ToCapiPrivateKeyBlob(DSA dsa); // 0x102A3B70 + public static RSA FromCapiPublicKeyBlob(byte[] blob); // 0x102A2F70 + public static RSA FromCapiPublicKeyBlob(byte[] blob, int offset); // 0x102A2F90 + public static DSA FromCapiPublicKeyBlobDSA(byte[] blob); // 0x102A2F50 + public static DSA FromCapiPublicKeyBlobDSA(byte[] blob, int offset); // 0x102A2BC0 + public static byte[] ToCapiPublicKeyBlob(RSA rsa); // 0x102A3E60 + public static byte[] ToCapiPublicKeyBlob(DSA dsa); // 0x102A4110 + public static RSA FromCapiKeyBlob(byte[] blob); // 0x102A20D0 + public static RSA FromCapiKeyBlob(byte[] blob, int offset); // 0x102A21F0 + public static DSA FromCapiKeyBlobDSA(byte[] blob); // 0x102A1EC0 + public static DSA FromCapiKeyBlobDSA(byte[] blob, int offset); // 0x102A1FC0 + public static byte[] ToCapiKeyBlob(AsymmetricAlgorithm keypair, bool includePrivateKey); // 0x102A3580 + public static byte[] ToCapiKeyBlob(RSA rsa, bool includePrivateKey); // 0x102A3500 + public static byte[] ToCapiKeyBlob(DSA dsa, bool includePrivateKey); // 0x102A3720 + public static string ToHex(byte[] input); // 0x102A4400 + private static byte FromHexChar(char c); // 0x102A3290 + public static byte[] FromHex(string hex); // 0x102A3320 +} + +// Namespace: Mono.Security.Cryptography +internal sealed class KeyBuilder // TypeDefIndex: 162 +{ + // Fields + private static RandomNumberGenerator rng; // 0x00 + + // Properties + private static RandomNumberGenerator Rng { get; } // 0x102A97F0 + + // Methods + private void .ctor(); // 0x100BF000 + public static byte[] Key(int size); // 0x102A9740 + public static byte[] IV(int size); // 0x102A9690 +} + +// Namespace: Mono.Security.Cryptography +internal class BlockProcessor // TypeDefIndex: 163 +{ + // Fields + private ICryptoTransform transform; // 0x08 + private byte[] block; // 0x0C + private int blockSize; // 0x10 + private int blockCount; // 0x14 + + // Methods + public void .ctor(ICryptoTransform transform); // 0x102A17C0 + public void .ctor(ICryptoTransform transform, int blockSize); // 0x102A1770 + protected override void Finalize(); // 0x102A1680 + public void Initialize(); // 0x102A1740 + public void Core(byte[] rgb); // 0x102A1600 + public void Core(byte[] rgb, int ib, int cb); // 0x102A1480 + public byte[] Final(); // 0x102A1630 +} + +// Namespace: Mono.Security.Cryptography +internal class DSAManaged : DSA // TypeDefIndex: 164 +{ + // Fields + private const int defaultKeySize = 1024; // 0x00 + private bool keypairGenerated; // 0x10 + private bool m_disposed; // 0x11 + private BigInteger p; // 0x14 + private BigInteger q; // 0x18 + private BigInteger g; // 0x1C + private BigInteger x; // 0x20 + private BigInteger y; // 0x24 + private BigInteger j; // 0x28 + private BigInteger seed; // 0x2C + private int counter; // 0x30 + private bool j_missing; // 0x34 + private RandomNumberGenerator rng; // 0x38 + private KeyGeneratedEventHandler KeyGenerated; // 0x3C + + // Properties + private RandomNumberGenerator Random { get; } // 0x102A6150 + public override int KeySize { get; } // 0x102A60C0 + public override string KeyExchangeAlgorithm { get; } // 0x100C5600 + public bool PublicOnly { get; } // 0x102A60F0 + public override string SignatureAlgorithm { get; } // 0x102A6170 + + // Events + public event KeyGeneratedEventHandler KeyGenerated { + add; // 0x102A5FC0 + remove; // 0x102A61A0 + } + + // Methods + public void .ctor(); // 0x102A5E40 + public void .ctor(int dwKeySize); // 0x102A5F00 + protected override void Finalize(); // 0x1010BCA0 + private void Generate(); // 0x102A56B0 + private void GenerateKeyPair(); // 0x102A4ED0 + private void add(byte[] a, byte[] b, int value); // 0x102A6020 + private void GenerateParams(int keyLength); // 0x102A5120 + private byte[] NormalizeArray(byte[] array); // 0x102A5980 + public override DSAParameters ExportParameters(bool includePrivateParameters); // 0x102A4C60 + public override void ImportParameters(DSAParameters parameters); // 0x102A56F0 + public override byte[] CreateSignature(byte[] rgbHash); // 0x102A4630 + public override bool VerifySignature(byte[] rgbHash, byte[] rgbSignature); // 0x102A5A10 + protected override void Dispose(bool disposing); // 0x102A49F0 +} + +// Namespace: +public delegate void KeyGeneratedEventHandler(object sender, EventArgs e); // TypeDefIndex: 165; 0x1016E5B0 + +// Namespace: Mono.Security.Cryptography +internal class HMACAlgorithm // TypeDefIndex: 166 +{ + // Fields + private byte[] key; // 0x08 + private byte[] hash; // 0x0C + private HashAlgorithm algo; // 0x10 + private string hashName; // 0x14 + private BlockProcessor block; // 0x18 + + // Properties + public HashAlgorithm Algo { get; } // 0x100BFC20 + public string HashName { get; set; } // 0x100EF0C0 0x102A6E20 + public byte[] Key { get; set; } // 0x100BF0C0 0x102A6E30 + + // Methods + public void .ctor(string algoName); // 0x102A6E00 + protected override void Finalize(); // 0x102A6BF0 + private void CreateHash(string algoName); // 0x102A69E0 + public void Dispose(); // 0x102A6A80 + public void Initialize(); // 0x102A6CB0 + private byte[] KeySetup(byte[] key, byte padding); // 0x102A6D40 + public void Core(byte[] rgb, int ib, int cb); // 0x102A69B0 + public byte[] Final(); // 0x102A6AA0 +} + +// Namespace: Mono.Security.Cryptography +internal class KeyPairPersistence // TypeDefIndex: 167 +{ + // Fields + private static bool _userPathExists; // 0x00 + private static string _userPath; // 0x04 + private static bool _machinePathExists; // 0x08 + private static string _machinePath; // 0x0C + private CspParameters _params; // 0x08 + private string _keyvalue; // 0x0C + private string _filename; // 0x10 + private string _container; // 0x14 + private static object lockobj; // 0x10 + + // Properties + public string Filename { get; } // 0x102AA560 + public string KeyValue { get; set; } // 0x100C5B30 0x102AB1C0 + public CspParameters Parameters { get; } // 0x102AACA0 + private static string UserPath { get; } // 0x102AAD00 + private static string MachinePath { get; } // 0x102AA7D0 + private bool CanChange { get; } // 0x101D0E10 + private bool UseDefaultKeyContainer { get; } // 0x102AACC0 + private bool UseMachineKeyStore { get; } // 0x102AACE0 + private string ContainerName { get; } // 0x102AA400 + + // Methods + public void .ctor(CspParameters parameters); // 0x102AA300 + public void .ctor(CspParameters parameters, string keyPair); // 0x102AA380 + private static void .cctor(); // 0x102AA2A0 + public bool Load(); // 0x102A9B80 + public void Save(); // 0x102A9F30 + public void Remove(); // 0x102A9F00 + internal static bool _CanSecure(string root); // 0x100E9F80 + internal static bool _ProtectUser(string path); // 0x100E9F80 + internal static bool _ProtectMachine(string path); // 0x100E9F80 + internal static bool _IsUserProtected(string path); // 0x100E9F80 + internal static bool _IsMachineProtected(string path); // 0x100E9F80 + private static bool CanSecure(string path); // 0x102A9840 + private static bool ProtectUser(string path); // 0x102A9E80 + private static bool ProtectMachine(string path); // 0x102A9E00 + private static bool IsUserProtected(string path); // 0x102A9B00 + private static bool IsMachineProtected(string path); // 0x102A9A80 + private CspParameters Copy(CspParameters p); // 0x102A98F0 + private void FromXml(string xml); // 0x102A9970 + private string ToXml(); // 0x102AA150 +} + +// Namespace: Mono.Security.Cryptography +internal class MACAlgorithm // TypeDefIndex: 168 +{ + // Fields + private SymmetricAlgorithm algo; // 0x08 + private ICryptoTransform enc; // 0x0C + private byte[] block; // 0x10 + private int blockSize; // 0x14 + private int blockCount; // 0x18 + + // Methods + public void .ctor(SymmetricAlgorithm algorithm); // 0x102AB500 + public void Initialize(byte[] key); // 0x102AB490 + public void Core(byte[] rgb, int ib, int cb); // 0x102AB1E0 + public byte[] Final(); // 0x102AB360 +} + +// Namespace: Mono.Security.Cryptography +internal sealed class PKCS1 // TypeDefIndex: 169 +{ + // Fields + private static byte[] emptySHA1; // 0x00 + private static byte[] emptySHA256; // 0x04 + private static byte[] emptySHA384; // 0x08 + private static byte[] emptySHA512; // 0x0C + + // Methods + private void .ctor(); // 0x100BF000 + private static void .cctor(); // 0x102AD650 + private static bool Compare(byte[] array1, byte[] array2); // 0x102AC320 + private static byte[] xor(byte[] array1, byte[] array2); // 0x102AD720 + private static byte[] GetEmptyHash(HashAlgorithm hash); // 0x102ACE80 + public static byte[] I2OSP(int x, int size); // 0x102AD010 + public static byte[] I2OSP(byte[] x, int size); // 0x102AD090 + public static byte[] OS2IP(byte[] x); // 0x102AD290 + public static byte[] RSAEP(RSA rsa, byte[] m); // 0x102AD360 + public static byte[] RSADP(RSA rsa, byte[] c); // 0x102AD330 + public static byte[] RSASP1(RSA rsa, byte[] m); // 0x102AD330 + public static byte[] RSAVP1(RSA rsa, byte[] s); // 0x102AD360 + public static byte[] Encrypt_OAEP(RSA rsa, HashAlgorithm hash, RandomNumberGenerator rng, byte[] M); // 0x102ACA90 + public static byte[] Decrypt_OAEP(RSA rsa, HashAlgorithm hash, byte[] C); // 0x102AC3A0 + public static byte[] Encrypt_v15(RSA rsa, RandomNumberGenerator rng, byte[] M); // 0x102ACCF0 + public static byte[] Decrypt_v15(RSA rsa, byte[] C); // 0x102AC640 + public static byte[] Sign_v15(RSA rsa, HashAlgorithm hash, byte[] hashValue); // 0x102AD390 + public static bool Verify_v15(RSA rsa, HashAlgorithm hash, byte[] hashValue, byte[] signature); // 0x102AD5F0 + public static bool Verify_v15(RSA rsa, HashAlgorithm hash, byte[] hashValue, byte[] signature, bool tryNonStandardEncoding); // 0x102AD440 + public static byte[] Encode_v15(HashAlgorithm hash, byte[] hashValue, int emLength); // 0x102AC7D0 + public static byte[] MGF1(HashAlgorithm hash, byte[] mgfSeed, int maskLen); // 0x102AD100 +} + +// Namespace: Mono.Security.Cryptography +internal sealed class PKCS8 // TypeDefIndex: 170 +{ + // Methods + private void .ctor(); // 0x100BF000 + public static KeyInfo GetType(byte[] data); // 0x102AD7E0 +} + +// Namespace: +public enum KeyInfo // TypeDefIndex: 171 +{ + PrivateKey = 0, + EncryptedPrivateKey = 1, + Unknown = 2 +} + +// Namespace: +public class PrivateKeyInfo // TypeDefIndex: 172 +{ + // Fields + private int _version; // 0x08 + private string _algorithm; // 0x0C + private byte[] _key; // 0x10 + private ArrayList _list; // 0x14 + + // Properties + public string Algorithm { get; set; } // 0x100C5B30 0x100C5B50 + public ArrayList Attributes { get; } // 0x100EF0C0 + public byte[] PrivateKey { get; set; } // 0x101F4A60 0x101F4AD0 + public int Version { get; set; } // 0x100BF0C0 0x101F4B70 + + // Methods + public void .ctor(); // 0x101F4A00 + public void .ctor(byte[] data); // 0x101F49A0 + private void Decode(byte[] data); // 0x101F4000 + public byte[] GetBytes(); // 0x101F4510 + private static byte[] RemoveLeadingZero(byte[] bigInt); // 0x101F4910 + private static byte[] Normalize(byte[] bigInt, int length); // 0x101F4890 + public static RSA DecodeRSA(byte[] keypair); // 0x101F3C90 + public static byte[] Encode(RSA rsa); // 0x101F4200 + public static DSA DecodeDSA(byte[] privateKey, DSAParameters dsaParameters); // 0x101F3BC0 + public static byte[] Encode(DSA dsa); // 0x101F4370 + public static byte[] Encode(AsymmetricAlgorithm aa); // 0x101F43E0 +} + +// Namespace: +public class EncryptedPrivateKeyInfo // TypeDefIndex: 173 +{ + // Fields + private string _algorithm; // 0x08 + private byte[] _salt; // 0x0C + private int _iterations; // 0x10 + private byte[] _data; // 0x14 + + // Properties + public string Algorithm { get; set; } // 0x100BF0C0 0x100EB270 + public byte[] EncryptedData { get; set; } // 0x102A6730 0x102A6850 + public byte[] Salt { get; set; } // 0x102A67A0 0x102A6930 + public int IterationCount { get; set; } // 0x100BFC20 0x102A68C0 + + // Methods + public void .ctor(); // 0x100BF000 + public void .ctor(byte[] data); // 0x102A6710 + private void Decode(byte[] data); // 0x102A6200 + public byte[] GetBytes(); // 0x102A6500 +} + +// Namespace: Mono.Security.Cryptography +internal class RSAManaged : RSA // TypeDefIndex: 174 +{ + // Fields + private const int defaultKeySize = 1024; // 0x00 + private bool isCRTpossible; // 0x10 + private bool keyBlinding; // 0x11 + private bool keypairGenerated; // 0x12 + private bool m_disposed; // 0x13 + private BigInteger d; // 0x14 + private BigInteger p; // 0x18 + private BigInteger q; // 0x1C + private BigInteger dp; // 0x20 + private BigInteger dq; // 0x24 + private BigInteger qInv; // 0x28 + private BigInteger n; // 0x2C + private BigInteger e; // 0x30 + private KeyGeneratedEventHandler KeyGenerated; // 0x34 + + // Properties + public override int KeySize { get; } // 0x101F6490 + public override string KeyExchangeAlgorithm { get; } // 0x101F6460 + public bool PublicOnly { get; } // 0x101F64D0 + public override string SignatureAlgorithm { get; } // 0x101F6570 + public bool UseKeyBlinding { get; set; } // 0x101F65A0 0x101F6610 + public bool IsCrtPossible { get; } // 0x101F6430 + + // Events + public event KeyGeneratedEventHandler KeyGenerated { + add; // 0x101F63D0 + remove; // 0x101F65B0 + } + + // Methods + public void .ctor(); // 0x101F63B0 + public void .ctor(int keySize); // 0x101F62E0 + protected override void Finalize(); // 0x1010BCA0 + private void GenerateKeyPair(); // 0x101F55D0 + public override byte[] DecryptValue(byte[] rgb); // 0x101F4BD0 + public override byte[] EncryptValue(byte[] rgb); // 0x101F51D0 + public override RSAParameters ExportParameters(bool includePrivateParameters); // 0x101F52C0 + public override void ImportParameters(RSAParameters parameters); // 0x101F5900 + protected override void Dispose(bool disposing); // 0x101F4F10 + public override string ToXmlString(bool includePrivateParameters); // 0x101F5DF0 + private byte[] GetPaddedValue(BigInteger value, int length); // 0x101F5870 +} + +// Namespace: +public delegate void KeyGeneratedEventHandler(object sender, EventArgs e); // TypeDefIndex: 175; 0x1016E5B0 + +// Namespace: Mono.Security.Cryptography +internal abstract class SymmetricTransform : IDisposable, ICryptoTransform // TypeDefIndex: 176 +{ + // Fields + protected SymmetricAlgorithm algo; // 0x08 + protected bool encrypt; // 0x0C + private int BlockSizeByte; // 0x10 + private byte[] temp; // 0x14 + private byte[] temp2; // 0x18 + private byte[] workBuff; // 0x1C + private byte[] workout; // 0x20 + private int FeedBackByte; // 0x24 + private int FeedBackIter; // 0x28 + private bool m_disposed; // 0x2C + private bool lastBlock; // 0x2D + private RandomNumberGenerator _rng; // 0x30 + + // Properties + public virtual bool CanTransformMultipleBlocks { get; } // 0x100E5880 + public virtual bool CanReuseTransform { get; } // 0x100EFBF0 + public virtual int InputBlockSize { get; } // 0x100BFC20 + public virtual int OutputBlockSize { get; } // 0x100BFC20 + private bool KeepLastBlock { get; } // 0x101FD660 + + // Methods + public void .ctor(SymmetricAlgorithm symmAlgo, bool encryption, byte[] rgbIV); // 0x101FD430 + private void System.IDisposable.Dispose(); // 0x101FCE70 + protected override void Finalize(); // 0x101FCB30 + protected virtual void Dispose(bool disposing); // 0x101FC480 + protected virtual void Transform(byte[] input, byte[] output); // 0x101FD290 + protected abstract void ECB(byte[] input, byte[] output); + protected virtual void CBC(byte[] input, byte[] output); // 0x101FC060 + protected virtual void CFB(byte[] input, byte[] output); // 0x101FC180 + protected virtual void OFB(byte[] input, byte[] output); // 0x101FCD90 + protected virtual void CTS(byte[] input, byte[] output); // 0x101FC330 + private void CheckInput(byte[] inputBuffer, int inputOffset, int inputCount); // 0x101FC380 + public virtual int TransformBlock(byte[] inputBuffer, int inputOffset, int inputCount, byte[] outputBuffer, int outputOffset); // 0x101FD010 + private int InternalTransformBlock(byte[] inputBuffer, int inputOffset, int inputCount, byte[] outputBuffer, int outputOffset); // 0x101FCBF0 + private void Random(byte[] buffer, int start, int length); // 0x101FCDE0 + private void ThrowBadPaddingException(PaddingMode padding, int length, int position); // 0x101FCEA0 + private byte[] FinalEncrypt(byte[] inputBuffer, int inputOffset, int inputCount); // 0x101FC7F0 + private byte[] FinalDecrypt(byte[] inputBuffer, int inputOffset, int inputCount); // 0x101FC4D0 + public virtual byte[] TransformFinalBlock(byte[] inputBuffer, int inputOffset, int inputCount); // 0x101FD1F0 +} + +// Namespace: Mono.Security.X509.Extensions +internal class BasicConstraintsExtension : X509Extension // TypeDefIndex: 177 +{ + // Fields + public const int NoPathLengthConstraint = -1; // 0x00 + private bool cA; // 0x14 + private int pathLenConstraint; // 0x18 + + // Properties + public bool CertificateAuthority { get; set; } // 0x100C5670 0x10142260 + public override string Name { get; } // 0x101E8BB0 + public int PathLenConstraint { get; set; } // 0x100EE580 0x101E8BE0 + + // Methods + public void .ctor(); // 0x101E8B50 + public void .ctor(ASN1 asn1); // 0x101E8B40 + public void .ctor(X509Extension extension); // 0x101E8BA0 + protected override void Decode(); // 0x101E8810 + protected override void Encode(); // 0x101E8920 + public override string ToString(); // 0x101E8A30 +} + +// Namespace: Mono.Security.X509.Extensions +internal enum KeyUsages // TypeDefIndex: 178 +{ + none = 0, + encipherOnly = 1, + cRLSign = 2, + keyCertSign = 4, + keyAgreement = 8, + dataEncipherment = 16, + keyEncipherment = 32, + nonRepudiation = 64, + digitalSignature = 128, + decipherOnly = 2048 +} + +// Namespace: Mono.Security.X509.Extensions +internal class KeyUsageExtension : X509Extension // TypeDefIndex: 179 +{ + // Fields + private int kubits; // 0x14 + + // Properties + public KeyUsages KeyUsage { get; set; } // 0x100EF0C0 0x101EA240 + public override string Name { get; } // 0x101EA210 + + // Methods + public void .ctor(ASN1 asn1); // 0x101E8B40 + public void .ctor(X509Extension extension); // 0x101E8BA0 + public void .ctor(); // 0x101EA1D0 + protected override void Decode(); // 0x101E9B80 + protected override void Encode(); // 0x101E9C80 + public bool Support(KeyUsages usage); // 0x101E9E20 + public override string ToString(); // 0x101E9ED0 +} + +// Namespace: Mono.Security.X509.Extensions +internal class SubjectKeyIdentifierExtension : X509Extension // TypeDefIndex: 180 +{ + // Fields + private byte[] ski; // 0x14 + + // Properties + public override string Name { get; } // 0x101FC030 + public byte[] Identifier { get; } // 0x101FBFC0 + + // Methods + public void .ctor(); // 0x101FBF80 + public void .ctor(ASN1 asn1); // 0x101E8B40 + public void .ctor(X509Extension extension); // 0x101E8BA0 + protected override void Decode(); // 0x101FBDB0 + public override string ToString(); // 0x101FBE60 +} + +// Namespace: Mono.Security.X509 +internal class PKCS5 // TypeDefIndex: 181 +{ + // Fields + public const string pbeWithMD2AndDESCBC = "1.2.840.113549.1.5.1"; // 0x00 + public const string pbeWithMD5AndDESCBC = "1.2.840.113549.1.5.3"; // 0x00 + public const string pbeWithMD2AndRC2CBC = "1.2.840.113549.1.5.4"; // 0x00 + public const string pbeWithMD5AndRC2CBC = "1.2.840.113549.1.5.6"; // 0x00 + public const string pbeWithSHA1AndDESCBC = "1.2.840.113549.1.5.10"; // 0x00 + public const string pbeWithSHA1AndRC2CBC = "1.2.840.113549.1.5.11"; // 0x00 + + // Methods + public void .ctor(); // 0x100BF000 +} + +// Namespace: Mono.Security.X509 +internal class PKCS9 // TypeDefIndex: 182 +{ + // Fields + public const string friendlyName = "1.2.840.113549.1.9.20"; // 0x00 + public const string localKeyId = "1.2.840.113549.1.9.21"; // 0x00 + + // Methods + public void .ctor(); // 0x100BF000 +} + +// Namespace: Mono.Security.X509 +internal class SafeBag // TypeDefIndex: 183 +{ + // Fields + private string _bagOID; // 0x08 + private ASN1 _asn1; // 0x0C + + // Properties + public string BagOID { get; } // 0x100BF0C0 + public ASN1 ASN1 { get; } // 0x100C5B30 + + // Methods + public void .ctor(string bagOID, ASN1 asn1); // 0x100F97B0 +} + +// Namespace: Mono.Security.X509 +internal class PKCS12 : ICloneable // TypeDefIndex: 184 +{ + // Fields + public const string pbeWithSHAAnd128BitRC4 = "1.2.840.113549.1.12.1.1"; // 0x00 + public const string pbeWithSHAAnd40BitRC4 = "1.2.840.113549.1.12.1.2"; // 0x00 + public const string pbeWithSHAAnd3KeyTripleDESCBC = "1.2.840.113549.1.12.1.3"; // 0x00 + public const string pbeWithSHAAnd2KeyTripleDESCBC = "1.2.840.113549.1.12.1.4"; // 0x00 + public const string pbeWithSHAAnd128BitRC2CBC = "1.2.840.113549.1.12.1.5"; // 0x00 + public const string pbeWithSHAAnd40BitRC2CBC = "1.2.840.113549.1.12.1.6"; // 0x00 + public const string keyBag = "1.2.840.113549.1.12.10.1.1"; // 0x00 + public const string pkcs8ShroudedKeyBag = "1.2.840.113549.1.12.10.1.2"; // 0x00 + public const string certBag = "1.2.840.113549.1.12.10.1.3"; // 0x00 + public const string crlBag = "1.2.840.113549.1.12.10.1.4"; // 0x00 + public const string secretBag = "1.2.840.113549.1.12.10.1.5"; // 0x00 + public const string safeContentsBag = "1.2.840.113549.1.12.10.1.6"; // 0x00 + public const string x509Certificate = "1.2.840.113549.1.9.22.1"; // 0x00 + public const string sdsiCertificate = "1.2.840.113549.1.9.22.2"; // 0x00 + public const string x509Crl = "1.2.840.113549.1.9.23.1"; // 0x00 + public const int CryptoApiPasswordLimit = 32; // 0x00 + private static int recommendedIterationCount; // 0x00 + private byte[] _password; // 0x08 + private ArrayList _keyBags; // 0x0C + private ArrayList _secretBags; // 0x10 + private X509CertificateCollection _certs; // 0x14 + private bool _keyBagsChanged; // 0x18 + private bool _secretBagsChanged; // 0x19 + private bool _certsChanged; // 0x1A + private int _iterations; // 0x1C + private ArrayList _safeBags; // 0x20 + private RandomNumberGenerator _rng; // 0x24 + private static int password_max_length; // 0x04 + private static Dictionary`2 <>f__switch$map8; // 0x08 + private static Dictionary`2 <>f__switch$map9; // 0x0C + private static Dictionary`2 <>f__switch$mapA; // 0x10 + private static Dictionary`2 <>f__switch$mapB; // 0x14 + private static Dictionary`2 <>f__switch$mapC; // 0x18 + private static Dictionary`2 <>f__switch$mapD; // 0x1C + private static Dictionary`2 <>f__switch$mapE; // 0x20 + private static Dictionary`2 <>f__switch$mapF; // 0x24 + + // Properties + public string Password { set; } // 0x101F37B0 + public int IterationCount { get; set; } // 0x100F85F0 0x10113F50 + public ArrayList Keys { get; } // 0x101F2EA0 + public ArrayList Secrets { get; } // 0x101F3430 + public X509CertificateCollection Certificates { get; } // 0x101F2BB0 + internal RandomNumberGenerator RNG { get; } // 0x101F3410 + public static int MaximumPasswordLength { get; set; } // 0x101F3370 0x101F36D0 + + // Methods + public void .ctor(); // 0x101F2A30 + public void .ctor(byte[] data); // 0x101F2B60 + public void .ctor(byte[] data, string password); // 0x101F2B00 + public void .ctor(byte[] data, byte[] password); // 0x101F2B30 + private static void .cctor(); // 0x101F29F0 + private void Decode(byte[] data); // 0x101EB800 + protected override void Finalize(); // 0x101EC4D0 + private bool Compare(byte[] expected, byte[] actual); // 0x101EB780 + private SymmetricAlgorithm GetSymmetricAlgorithm(string algorithmOid, byte[] salt, int iterationCount); // 0x101EF6D0 + public byte[] Decrypt(string algorithmOid, byte[] salt, int iterationCount, byte[] encryptedData); // 0x101EBFA0 + public byte[] Decrypt(EncryptedData ed); // 0x101EBEA0 + public byte[] Encrypt(string algorithmOid, byte[] salt, int iterationCount, byte[] data); // 0x101EC0F0 + private DSAParameters GetExistingParameters(out bool found); // 0x101EF100 + private void AddPrivateKey(PrivateKeyInfo pki); // 0x101EAB00 + private void ReadSafeBag(ASN1 safeBag); // 0x101F1070 + private ASN1 Pkcs8ShroudedKeyBagSafeBag(AsymmetricAlgorithm aa, IDictionary attributes); // 0x101F07C0 + private ASN1 KeyBagSafeBag(AsymmetricAlgorithm aa, IDictionary attributes); // 0x101EFB00 + private ASN1 SecretBagSafeBag(byte[] secret, IDictionary attributes); // 0x101F2330 + private ASN1 CertificateSafeBag(X509Certificate x509, IDictionary attributes); // 0x101EAE10 + private byte[] MAC(byte[] password, byte[] salt, int iterations, byte[] data); // 0x101F06B0 + public byte[] GetBytes(); // 0x101ED4F0 + private ContentInfo EncryptedContentInfo(ASN1 safeBags, string algorithmOid); // 0x101EC230 + public void AddCertificate(X509Certificate cert); // 0x101EA520 + public void AddCertificate(X509Certificate cert, IDictionary attributes); // 0x101EA2E0 + public void RemoveCertificate(X509Certificate cert); // 0x101F17A0 + public void RemoveCertificate(X509Certificate cert, IDictionary attrs); // 0x101F17C0 + private bool CompareAsymmetricAlgorithm(AsymmetricAlgorithm a1, AsymmetricAlgorithm a2); // 0x101EB6B0 + public void AddPkcs8ShroudedKeyBag(AsymmetricAlgorithm aa); // 0x101EAAE0 + public void AddPkcs8ShroudedKeyBag(AsymmetricAlgorithm aa, IDictionary attributes); // 0x101EA7E0 + public void RemovePkcs8ShroudedKeyBag(AsymmetricAlgorithm aa); // 0x101F1DB0 + public void AddKeyBag(AsymmetricAlgorithm aa); // 0x101EA7C0 + public void AddKeyBag(AsymmetricAlgorithm aa, IDictionary attributes); // 0x101EA540 + public void RemoveKeyBag(AsymmetricAlgorithm aa); // 0x101F1B70 + public void AddSecretBag(byte[] secret); // 0x101EADF0 + public void AddSecretBag(byte[] secret, IDictionary attributes); // 0x101EAC40 + public void RemoveSecretBag(byte[] secret); // 0x101F2070 + public AsymmetricAlgorithm GetAsymmetricAlgorithm(IDictionary attrs); // 0x101EC5A0 + public byte[] GetSecret(IDictionary attrs); // 0x101EF2F0 + public X509Certificate GetCertificate(IDictionary attrs); // 0x101EECB0 + public IDictionary GetAttributes(AsymmetricAlgorithm aa); // 0x101ECF60 + public IDictionary GetAttributes(X509Certificate cert); // 0x101ECB70 + public void SaveToFile(string filename); // 0x101F21D0 + public object Clone(); // 0x101EB5A0 + private static byte[] LoadFile(string filename); // 0x101F03A0 + public static PKCS12 LoadFromFile(string filename); // 0x101F05E0 + public static PKCS12 LoadFromFile(string filename, string password); // 0x101F0530 +} + +// Namespace: +public class DeriveBytes // TypeDefIndex: 185 +{ + // Fields + private static byte[] keyDiversifier; // 0x00 + private static byte[] ivDiversifier; // 0x04 + private static byte[] macDiversifier; // 0x08 + private string _hashName; // 0x08 + private int _iterations; // 0x0C + private byte[] _password; // 0x10 + private byte[] _salt; // 0x14 + + // Properties + public string HashName { get; set; } // 0x100BF0C0 0x100EB270 + public int IterationCount { get; set; } // 0x100C5B30 0x100C5B50 + public byte[] Password { get; set; } // 0x10160C80 0x10160D60 + public byte[] Salt { get; set; } // 0x10160CF0 0x10160DF0 + + // Methods + public void .ctor(); // 0x100BF000 + private static void .cctor(); // 0x10160BE0 + private void Adjust(byte[] a, int aOff, byte[] b); // 0x10160630 + private byte[] Derive(byte[] diversifier, int n); // 0x10160840 + public byte[] DeriveKey(int size); // 0x10160780 + public byte[] DeriveIV(int size); // 0x10160720 + public byte[] DeriveMAC(int size); // 0x101607E0 +} + +// Namespace: +public enum Purpose // TypeDefIndex: 186 +{ + Key = 0, + IV = 1, + MAC = 2 +} + +// Namespace: Mono.Security.X509 +internal sealed class X501 // TypeDefIndex: 187 +{ + // Fields + private static byte[] countryName; // 0x00 + private static byte[] organizationName; // 0x04 + private static byte[] organizationalUnitName; // 0x08 + private static byte[] commonName; // 0x0C + private static byte[] localityName; // 0x10 + private static byte[] stateOrProvinceName; // 0x14 + private static byte[] streetAddress; // 0x18 + private static byte[] domainComponent; // 0x1C + private static byte[] userid; // 0x20 + private static byte[] email; // 0x24 + private static byte[] dnQualifier; // 0x28 + private static byte[] title; // 0x2C + private static byte[] surname; // 0x30 + private static byte[] givenName; // 0x34 + private static byte[] initial; // 0x38 + private static Dictionary`2 <>f__switch$map10; // 0x3C + + // Methods + private void .ctor(); // 0x100BF000 + private static void .cctor(); // 0x10165600 + public static string ToString(ASN1 seq); // 0x10165510 + public static string ToString(ASN1 seq, bool reversed, string separator, bool quotes); // 0x101653A0 + private static void AppendEntry(StringBuilder sb, ASN1 entry, bool quotes); // 0x10163930 + private static AttributeTypeAndValue GetAttributeFromOid(string attributeType); // 0x101641D0 + private static bool IsOid(string oid); // 0x10164A40 + private static AttributeTypeAndValue ReadAttribute(string value, int pos); // 0x10164B10 + private static bool IsHex(char c); // 0x10164970 + private static string ReadHex(string value, int pos); // 0x10164DE0 + private static int ReadEscaped(StringBuilder sb, string value, int pos); // 0x10164C70 + private static int ReadQuoted(StringBuilder sb, string value, int pos); // 0x10165030 + private static string ReadValue(string value, int pos); // 0x10165160 + public static ASN1 FromString(string rdn); // 0x10164090 +} + +// Namespace: Mono.Security.X509 +internal class X509Crl // TypeDefIndex: 188 +{ + // Fields + private string issuer; // 0x08 + private byte version; // 0x0C + private DateTime thisUpdate; // 0x10 + private DateTime nextUpdate; // 0x20 + private ArrayList entries; // 0x30 + private string signatureOID; // 0x34 + private byte[] signature; // 0x38 + private X509ExtensionCollection extensions; // 0x3C + private byte[] encoded; // 0x40 + private byte[] hash_value; // 0x44 + private static Dictionary`2 <>f__switch$map11; // 0x00 + private static Dictionary`2 <>f__switch$map12; // 0x04 + + // Properties + public ArrayList Entries { get; } // 0x1016B0F0 + public X509CrlEntry Item { get; } // 0x1016B3B0 + public X509CrlEntry Item { get; } // 0x1016B450 + public X509ExtensionCollection Extensions { get; } // 0x100EB220 + public byte[] Hash { get; } // 0x1016B150 + public string IssuerName { get; } // 0x100BF0C0 + public DateTime NextUpdate { get; } // 0x10168A50 + public DateTime ThisUpdate { get; } // 0x10168A30 + public string SignatureAlgorithm { get; } // 0x100E9ED0 + public byte[] Signature { get; } // 0x1016B4D0 + public byte[] RawData { get; } // 0x1016B460 + public byte Version { get; } // 0x100F8910 + public bool IsCurrent { get; } // 0x1016B200 + + // Methods + public void .ctor(byte[] crl); // 0x1016B030 + private void Parse(byte[] crl); // 0x1016A270 + public bool WasCurrent(DateTime instant); // 0x1016AED0 + public byte[] GetBytes(); // 0x10169E00 + private bool Compare(byte[] array1, byte[] array2); // 0x10165E80 + public X509CrlEntry GetCrlEntry(X509Certificate x509); // 0x1016A050 + public X509CrlEntry GetCrlEntry(byte[] serialNumber); // 0x10169E80 + public bool VerifySignature(X509Certificate x509); // 0x1016AC80 + private string GetHashName(); // 0x1016A0D0 + internal bool VerifySignature(DSA dsa); // 0x1016A9A0 + internal bool VerifySignature(RSA rsa); // 0x1016ABF0 + public bool VerifySignature(AsymmetricAlgorithm aa); // 0x1016A860 + public static X509Crl CreateFromFile(string filename); // 0x10169C50 +} + +// Namespace: +public class X509CrlEntry // TypeDefIndex: 189 +{ + // Fields + private byte[] sn; // 0x08 + private DateTime revocationDate; // 0x10 + private X509ExtensionCollection extensions; // 0x20 + + // Properties + public byte[] SerialNumber { get; } // 0x10169BE0 + public DateTime RevocationDate { get; } // 0x10168A30 + public X509ExtensionCollection Extensions { get; } // 0x100EACD0 + + // Methods + internal void .ctor(byte[] serialNumber, DateTime revocationDate, X509ExtensionCollection extensions); // 0x10169AB0 + internal void .ctor(ASN1 entry); // 0x10169B20 + public byte[] GetBytes(); // 0x101699B0 +} + +// Namespace: Mono.Security.X509 +internal class X509Certificate : ISerializable // TypeDefIndex: 190 +{ + // Fields + private ASN1 decoder; // 0x08 + private byte[] m_encodedcert; // 0x0C + private DateTime m_from; // 0x10 + private DateTime m_until; // 0x20 + private ASN1 issuer; // 0x30 + private string m_issuername; // 0x34 + private string m_keyalgo; // 0x38 + private byte[] m_keyalgoparams; // 0x3C + private ASN1 subject; // 0x40 + private string m_subject; // 0x44 + private byte[] m_publickey; // 0x48 + private byte[] signature; // 0x4C + private string m_signaturealgo; // 0x50 + private byte[] m_signaturealgoparams; // 0x54 + private byte[] certhash; // 0x58 + private RSA _rsa; // 0x5C + private DSA _dsa; // 0x60 + private int version; // 0x64 + private byte[] serialnumber; // 0x68 + private byte[] issuerUniqueID; // 0x6C + private byte[] subjectUniqueID; // 0x70 + private X509ExtensionCollection extensions; // 0x74 + private static string encoding_error; // 0x00 + private static Dictionary`2 <>f__switch$map13; // 0x04 + private static Dictionary`2 <>f__switch$map14; // 0x08 + private static Dictionary`2 <>f__switch$map15; // 0x0C + + // Properties + public DSA DSA { get; set; } // 0x10167C10 0x10168A70 + public X509ExtensionCollection Extensions { get; } // 0x10167E60 + public byte[] Hash { get; } // 0x10167E70 + public virtual string IssuerName { get; } // 0x100E9ED0 + public virtual string KeyAlgorithm { get; } // 0x100EB210 + public virtual byte[] KeyAlgorithmParameters { get; set; } // 0x10168320 0x101455F0 + public virtual byte[] PublicKey { get; } // 0x10168390 + public virtual RSA RSA { get; set; } // 0x10168400 0x10168A90 + public virtual byte[] RawData { get; } // 0x10168530 + public virtual byte[] SerialNumber { get; } // 0x101685A0 + public virtual byte[] Signature { get; } // 0x10168680 + public virtual string SignatureAlgorithm { get; } // 0x10132810 + public virtual byte[] SignatureAlgorithmParameters { get; } // 0x10168610 + public virtual string SubjectName { get; } // 0x10145530 + public virtual DateTime ValidFrom { get; } // 0x10168A30 + public virtual DateTime ValidUntil { get; } // 0x10168A50 + public int Version { get; } // 0x10145590 + public bool IsCurrent { get; } // 0x101680D0 + public byte[] IssuerUniqueIdentifier { get; } // 0x101682B0 + public byte[] SubjectUniqueIdentifier { get; } // 0x101689C0 + public bool IsSelfSigned { get; } // 0x10168220 + + // Methods + public void .ctor(byte[] data); // 0x10167970 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x101678A0 + private static void .cctor(); // 0x10167860 + private void Parse(byte[] data); // 0x10166AE0 + private byte[] GetUnsignedBigInteger(byte[] integer); // 0x10166940 + public bool WasCurrent(DateTime instant); // 0x10167760 + internal bool VerifySignature(DSA dsa); // 0x101676C0 + internal string GetHashNameFromOID(string oid); // 0x10166760 + internal bool VerifySignature(RSA rsa); // 0x10167260 + public bool VerifySignature(AsymmetricAlgorithm aa); // 0x101674E0 + public bool CheckSignature(byte[] hash, string hashAlgorithm, byte[] signature); // 0x101666F0 + public ASN1 GetIssuerName(); // 0x100EA580 + public ASN1 GetSubjectName(); // 0x100E9E80 + public virtual void GetObjectData(SerializationInfo info, StreamingContext context); // 0x101668F0 + private static byte[] PEM(string type, byte[] data); // 0x101669C0 +} + +// Namespace: Mono.Security.X509 +[Serializable] +internal class X509CertificateCollection : CollectionBase, IEnumerable // TypeDefIndex: 191 +{ + // Properties + public X509Certificate Item { get; set; } // 0x10166390 0x10166430 + + // Methods + public void .ctor(); // 0x100C5970 + public void .ctor(X509Certificate[] value); // 0x101662C0 + public void .ctor(X509CertificateCollection value); // 0x101662A0 + private IEnumerator System.Collections.IEnumerable.GetEnumerator(); // 0x10166260 + public int Add(X509Certificate value); // 0x10165DF0 + public void AddRange(X509Certificate[] value); // 0x10165C60 + public void AddRange(X509CertificateCollection value); // 0x10165D20 + public bool Contains(X509Certificate value); // 0x10165EF0 + public void CopyTo(X509Certificate[] array, int index); // 0x10165F10 + public X509CertificateEnumerator GetEnumerator(); // 0x10165F50 + public override int GetHashCode(); // 0x10165FE0 + public int IndexOf(X509Certificate value); // 0x10166020 + public void Insert(int index, X509Certificate value); // 0x101661E0 + public void Remove(X509Certificate value); // 0x10166220 + private bool Compare(byte[] array1, byte[] array2); // 0x10165E80 +} + +// Namespace: +public class X509CertificateEnumerator : IEnumerator // TypeDefIndex: 192 +{ + // Fields + private IEnumerator enumerator; // 0x08 + + // Properties + private object System.Collections.IEnumerator.Current { get; } // 0x101665B0 + public X509Certificate Current { get; } // 0x10166660 + + // Methods + public void .ctor(X509CertificateCollection mappings); // 0x10166600 + private bool System.Collections.IEnumerator.MoveNext(); // 0x10166510 + private void System.Collections.IEnumerator.Reset(); // 0x10166560 + public bool MoveNext(); // 0x10166470 + public void Reset(); // 0x101664C0 +} + +// Namespace: Mono.Security.X509 +internal class X509Chain // TypeDefIndex: 193 +{ + // Fields + private X509CertificateCollection roots; // 0x08 + private X509CertificateCollection certs; // 0x0C + private X509Certificate _root; // 0x10 + private X509CertificateCollection _chain; // 0x14 + private X509ChainStatusFlags _status; // 0x18 + + // Properties + public X509CertificateCollection Chain { get; } // 0x100EF0C0 + public X509Certificate Root { get; } // 0x100BFC20 + public X509ChainStatusFlags Status { get; } // 0x100EE580 + public X509CertificateCollection TrustAnchors { get; set; } // 0x10169870 0x100EB270 + + // Methods + public void .ctor(); // 0x10169780 + public void .ctor(X509CertificateCollection chain); // 0x101697D0 + public void LoadCertificate(X509Certificate x509); // 0x101696D0 + public void LoadCertificates(X509CertificateCollection collection); // 0x10169700 + public X509Certificate FindByIssuerName(string issuerName); // 0x10168DF0 + public bool Build(X509Certificate leaf); // 0x10168AB0 + public void Reset(); // 0x10169730 + private bool IsValid(X509Certificate cert); // 0x10169560 + private X509Certificate FindCertificateParent(X509Certificate child); // 0x10168FF0 + private X509Certificate FindCertificateRoot(X509Certificate potentialRoot); // 0x101691A0 + private bool IsTrusted(X509Certificate potentialTrusted); // 0x10169530 + private bool IsParent(X509Certificate child, X509Certificate parent); // 0x101693D0 +} + +// Namespace: Mono.Security.X509 +[Serializable] +internal enum X509ChainStatusFlags // TypeDefIndex: 194 +{ + NoError = 0, + NotTimeValid = 1, + NotTimeNested = 2, + NotSignatureValid = 8, + UntrustedRoot = 32, + InvalidBasicConstraints = 1024, + PartialChain = 65536 +} + +// Namespace: Mono.Security.X509 +internal class X509Extension // TypeDefIndex: 195 +{ + // Fields + protected string extnOid; // 0x08 + protected bool extnCritical; // 0x0C + protected ASN1 extnValue; // 0x10 + + // Properties + public ASN1 ASN1 { get; } // 0x1016CAB0 + public string Oid { get; } // 0x100BF0C0 + public bool Critical { get; set; } // 0x100F8910 0x1016CBD0 + public virtual string Name { get; } // 0x100BF0C0 + public ASN1 Value { get; } // 0x1016CBA0 + + // Methods + protected void .ctor(); // 0x1016C710 + public void .ctor(ASN1 asn1); // 0x1016C730 + public void .ctor(X509Extension extension); // 0x1016C9A0 + protected virtual void Decode(); // 0x100C5530 + protected virtual void Encode(); // 0x100C5530 + public override bool Equals(object obj); // 0x1016C2F0 + public byte[] GetBytes(); // 0x1016C450 + public override int GetHashCode(); // 0x10140690 + private void WriteLine(StringBuilder sb, int n, int pos); // 0x1016C560 + public override string ToString(); // 0x1016C490 +} + +// Namespace: Mono.Security.X509 +internal sealed class X509ExtensionCollection : CollectionBase, IEnumerable // TypeDefIndex: 196 +{ + // Fields + private bool readOnly; // 0x0C + + // Properties + public X509Extension Item { get; } // 0x1016C250 + public X509Extension Item { get; } // 0x1016C190 + + // Methods + public void .ctor(); // 0x100C5970 + public void .ctor(ASN1 asn1); // 0x1016C0B0 + private IEnumerator System.Collections.IEnumerable.GetEnumerator(); // 0x10166260 + public int Add(X509Extension extension); // 0x1016B7E0 + public void AddRange(X509Extension[] extension); // 0x1016B540 + public void AddRange(X509ExtensionCollection collection); // 0x1016B640 + public bool Contains(X509Extension extension); // 0x1016B8C0 + public bool Contains(string oid); // 0x1016B8A0 + public void CopyTo(X509Extension[] extensions, int index); // 0x1016BA10 + public int IndexOf(X509Extension extension); // 0x1016BD90 + public int IndexOf(string oid); // 0x1016BC20 + public void Insert(int index, X509Extension extension); // 0x1016BEF0 + public void Remove(X509Extension extension); // 0x1016C020 + public void Remove(string oid); // 0x1016BF80 + public byte[] GetBytes(); // 0x1016BAA0 +} + +// Namespace: Mono.Security.X509 +internal class X509Store // TypeDefIndex: 197 +{ + // Fields + private string _storePath; // 0x08 + private X509CertificateCollection _certificates; // 0x0C + private ArrayList _crls; // 0x10 + private bool _crl; // 0x14 + private string _name; // 0x18 + + // Properties + public X509CertificateCollection Certificates { get; } // 0x1016DF20 + public ArrayList Crls { get; } // 0x1016DF50 + public string Name { get; } // 0x1016DFC0 + + // Methods + internal void .ctor(string path, bool crl); // 0x1016DEF0 + public void Clear(); // 0x1016D540 + public void Import(X509Certificate certificate); // 0x1016D810 + public void Import(X509Crl crl); // 0x1016D9C0 + public void Remove(X509Certificate certificate); // 0x1016DDF0 + public void Remove(X509Crl crl); // 0x1016DE70 + private string GetUniqueName(X509Certificate certificate); // 0x1016D790 + private string GetUniqueName(X509Crl crl); // 0x1016D690 + private byte[] GetUniqueName(X509ExtensionCollection extensions); // 0x1016D710 + private string GetUniqueName(string method, byte[] name, string fileExtension); // 0x1016D590 + private byte[] Load(string filename); // 0x1016DC60 + private X509Certificate LoadCertificate(string filename); // 0x1016DBA0 + private X509Crl LoadCrl(string filename); // 0x1016DC00 + private bool CheckStore(string path, bool throwException); // 0x1016D430 + private X509CertificateCollection BuildCertificatesCollection(string storeName); // 0x1016D130 + private ArrayList BuildCrlsCollection(string storeName); // 0x1016D2B0 +} + +// Namespace: Mono.Security.X509 +internal sealed class X509StoreManager // TypeDefIndex: 198 +{ + // Fields + private static X509Stores _userStore; // 0x00 + private static X509Stores _machineStore; // 0x04 + + // Properties + public static X509Stores CurrentUser { get; } // 0x1016CBE0 + public static X509Stores LocalMachine { get; } // 0x1016CE20 + public static X509CertificateCollection IntermediateCACertificates { get; } // 0x1016CC90 + public static ArrayList IntermediateCACrls { get; } // 0x1016CD60 + public static X509CertificateCollection TrustedRootCertificates { get; } // 0x1016CF90 + public static ArrayList TrustedRootCACrls { get; } // 0x1016CED0 + public static X509CertificateCollection UntrustedCertificates { get; } // 0x1016D060 + + // Methods + private void .ctor(); // 0x100BF000 +} + +// Namespace: Mono.Security.X509 +internal class X509Stores // TypeDefIndex: 199 +{ + // Fields + private string _storePath; // 0x08 + private X509Store _personal; // 0x0C + private X509Store _other; // 0x10 + private X509Store _intermediate; // 0x14 + private X509Store _trusted; // 0x18 + private X509Store _untrusted; // 0x1C + + // Properties + public X509Store Personal { get; } // 0x1016E3C0 + public X509Store OtherPeople { get; } // 0x1016E330 + public X509Store IntermediateCA { get; } // 0x1016E2A0 + public X509Store TrustedRoot { get; } // 0x1016E450 + public X509Store Untrusted { get; } // 0x1016E4E0 + + // Methods + internal void .ctor(string path); // 0x10113500 + public void Clear(); // 0x1016E050 + public X509Store Open(string storeName, bool create); // 0x1016E1D0 +} + +// Namespace: +public class Names // TypeDefIndex: 200 +{ + // Fields + public const string Personal = "My"; // 0x00 + public const string OtherPeople = "AddressBook"; // 0x00 + public const string IntermediateCA = "CA"; // 0x00 + public const string TrustedRoot = "Trust"; // 0x00 + public const string Untrusted = "Disallowed"; // 0x00 + + // Methods + public void .ctor(); // 0x100BF000 +} + +// Namespace: Mono.Security.X509 +internal class X520 // TypeDefIndex: 201 +{ + // Methods + public void .ctor(); // 0x100BF000 +} + +// Namespace: +public abstract class AttributeTypeAndValue // TypeDefIndex: 202 +{ + // Fields + private string oid; // 0x08 + private string attrValue; // 0x0C + private int upperBound; // 0x10 + private byte encoding; // 0x14 + + // Properties + public string Value { get; set; } // 0x100C5B30 0x101604D0 + public ASN1 ASN1 { get; } // 0x10160380 + + // Methods + protected void .ctor(string oid, int upperBound); // 0x10160470 + protected void .ctor(string oid, int upperBound, byte encoding); // 0x101604A0 + internal ASN1 GetASN1(byte encoding); // 0x10160160 + internal ASN1 GetASN1(); // 0x10160380 + public byte[] GetBytes(byte encoding); // 0x101603A0 + public byte[] GetBytes(); // 0x101603E0 + private byte SelectBestEncoding(); // 0x10160420 +} + +// Namespace: +public class Name : AttributeTypeAndValue // TypeDefIndex: 203 +{ + // Methods + public void .ctor(); // 0x10161050 +} + +// Namespace: +public class CommonName : AttributeTypeAndValue // TypeDefIndex: 204 +{ + // Methods + public void .ctor(); // 0x10160590 +} + +// Namespace: +public class SerialNumber : AttributeTypeAndValue // TypeDefIndex: 205 +{ + // Methods + public void .ctor(); // 0x101615E0 +} + +// Namespace: +public class LocalityName : AttributeTypeAndValue // TypeDefIndex: 206 +{ + // Methods + public void .ctor(); // 0x10161000 +} + +// Namespace: +public class StateOrProvinceName : AttributeTypeAndValue // TypeDefIndex: 207 +{ + // Methods + public void .ctor(); // 0x101637F0 +} + +// Namespace: +public class OrganizationName : AttributeTypeAndValue // TypeDefIndex: 208 +{ + // Methods + public void .ctor(); // 0x101610D0 +} + +// Namespace: +public class OrganizationalUnitName : AttributeTypeAndValue // TypeDefIndex: 209 +{ + // Methods + public void .ctor(); // 0x10161120 +} + +// Namespace: +public class EmailAddress : AttributeTypeAndValue // TypeDefIndex: 210 +{ + // Methods + public void .ctor(); // 0x10160F10 +} + +// Namespace: +public class DomainComponent : AttributeTypeAndValue // TypeDefIndex: 211 +{ + // Methods + public void .ctor(); // 0x10160EC0 +} + +// Namespace: +public class UserId : AttributeTypeAndValue // TypeDefIndex: 212 +{ + // Methods + public void .ctor(); // 0x101638E0 +} + +// Namespace: +public class Oid : AttributeTypeAndValue // TypeDefIndex: 213 +{ + // Methods + public void .ctor(string oid); // 0x101610A0 +} + +// Namespace: +public class Title : AttributeTypeAndValue // TypeDefIndex: 214 +{ + // Methods + public void .ctor(); // 0x10163890 +} + +// Namespace: +public class CountryName : AttributeTypeAndValue // TypeDefIndex: 215 +{ + // Methods + public void .ctor(); // 0x101605E0 +} + +// Namespace: +public class DnQualifier : AttributeTypeAndValue // TypeDefIndex: 216 +{ + // Methods + public void .ctor(); // 0x10160E70 +} + +// Namespace: +public class Surname : AttributeTypeAndValue // TypeDefIndex: 217 +{ + // Methods + public void .ctor(); // 0x10163840 +} + +// Namespace: +public class GivenName : AttributeTypeAndValue // TypeDefIndex: 218 +{ + // Methods + public void .ctor(); // 0x10160F60 +} + +// Namespace: +public class Initial : AttributeTypeAndValue // TypeDefIndex: 219 +{ + // Methods + public void .ctor(); // 0x10160FB0 +} + +// Namespace: Mono.Security +internal class ASN1 // TypeDefIndex: 220 +{ + // Fields + private byte m_nTag; // 0x08 + private byte[] m_aValue; // 0x0C + private ArrayList elist; // 0x10 + + // Properties + public int Count { get; } // 0x1029B420 + public byte Tag { get; } // 0x100EA020 + public int Length { get; } // 0x1029B560 + public byte[] Value { get; set; } // 0x1029B580 0x1029B610 + public ASN1 Item { get; } // 0x1029B450 + + // Methods + public void .ctor(); // 0x1029B3A0 + public void .ctor(byte tag); // 0x1029B3C0 + public void .ctor(byte tag, byte[] data); // 0x1029B3F0 + public void .ctor(byte[] data); // 0x1029B260 + private bool CompareArray(byte[] array1, byte[] array2); // 0x1029A4C0 + public bool Equals(byte[] asn1); // 0x1029A8F0 + public bool CompareValue(byte[] value); // 0x1029A540 + public ASN1 Add(ASN1 asn1); // 0x1029A440 + public virtual byte[] GetBytes(); // 0x1029A920 + protected void Decode(byte[] asn1, int anPos, int anLength); // 0x1029A660 + protected void DecodeTLV(byte[] asn1, int pos, out byte tag, out int length, out byte[] content); // 0x1029A560 + public ASN1 Element(int index, byte anTag); // 0x1029A7E0 + public override string ToString(); // 0x1029B0A0 + public void SaveToFile(string filename); // 0x1029AF30 +} + +// Namespace: Mono.Security +internal static class ASN1Convert // TypeDefIndex: 221 +{ + // Methods + public static ASN1 FromDateTime(DateTime dt); // 0x10299730 + public static ASN1 FromInt32(int value); // 0x10299950 + public static ASN1 FromOid(string oid); // 0x10299B40 + public static ASN1 FromUnsignedBigInteger(byte[] big); // 0x10299BE0 + public static int ToInt32(ASN1 asn1); // 0x1029A0F0 + public static string ToOid(ASN1 asn1); // 0x1029A1F0 + public static DateTime ToDateTime(ASN1 time); // 0x10299CA0 +} + +// Namespace: Mono.Security +internal sealed class BitConverterLE // TypeDefIndex: 222 +{ + // Methods + private void .ctor(); // 0x100BF000 + private static byte[] GetUShortBytes(void * bytes); // 0x102A0F70 + private static byte[] GetUIntBytes(void * bytes); // 0x102A0BD0 + private static byte[] GetULongBytes(void * bytes); // 0x102A0D10 + internal static byte[] GetBytes(bool value); // 0x102A0B70 + internal static byte[] GetBytes(char value); // 0x102A0B50 + internal static byte[] GetBytes(short value); // 0x102A0B50 + internal static byte[] GetBytes(int value); // 0x102A0B30 + internal static byte[] GetBytes(long value); // 0x102A0B10 + internal static byte[] GetBytes(ushort value); // 0x102A0B50 + internal static byte[] GetBytes(uint value); // 0x102A0B30 + internal static byte[] GetBytes(ulong value); // 0x102A0B10 + internal static byte[] GetBytes(float value); // 0x102A0B30 + internal static byte[] GetBytes(double value); // 0x102A0B10 + private static void UShortFromBytes(void * dst, byte[] src, int startIndex); // 0x102A13A0 + private static void UIntFromBytes(void * dst, byte[] src, int startIndex); // 0x102A1180 + private static void ULongFromBytes(void * dst, byte[] src, int startIndex); // 0x102A12E0 + internal static bool ToBoolean(byte[] value, int startIndex); // 0x102A1050 + internal static char ToChar(byte[] value, int startIndex); // 0x102A1090 + internal static short ToInt16(byte[] value, int startIndex); // 0x102A1090 + internal static int ToInt32(byte[] value, int startIndex); // 0x102A10F0 + internal static long ToInt64(byte[] value, int startIndex); // 0x102A1120 + internal static ushort ToUInt16(byte[] value, int startIndex); // 0x102A1090 + internal static uint ToUInt32(byte[] value, int startIndex); // 0x102A10F0 + internal static ulong ToUInt64(byte[] value, int startIndex); // 0x102A1120 + internal static float ToSingle(byte[] value, int startIndex); // 0x102A1150 + internal static double ToDouble(byte[] value, int startIndex); // 0x102A10C0 +} + +// Namespace: Mono.Security +internal sealed class PKCS7 // TypeDefIndex: 223 +{ + // Methods + private void .ctor(); // 0x100BF000 + public static ASN1 Attribute(string oid, ASN1 value); // 0x101F39F0 + public static ASN1 AlgorithmIdentifier(string oid); // 0x101F3960 + public static ASN1 AlgorithmIdentifier(string oid, ASN1 parameters); // 0x101F38F0 + public static ASN1 IssuerAndSerialNumber(X509Certificate x509); // 0x101F3A90 +} + +// Namespace: +public class Oid // TypeDefIndex: 224 +{ + // Fields + public const string rsaEncryption = "1.2.840.113549.1.1.1"; // 0x00 + public const string data = "1.2.840.113549.1.7.1"; // 0x00 + public const string signedData = "1.2.840.113549.1.7.2"; // 0x00 + public const string envelopedData = "1.2.840.113549.1.7.3"; // 0x00 + public const string signedAndEnvelopedData = "1.2.840.113549.1.7.4"; // 0x00 + public const string digestedData = "1.2.840.113549.1.7.5"; // 0x00 + public const string encryptedData = "1.2.840.113549.1.7.6"; // 0x00 + public const string contentType = "1.2.840.113549.1.9.3"; // 0x00 + public const string messageDigest = "1.2.840.113549.1.9.4"; // 0x00 + public const string signingTime = "1.2.840.113549.1.9.5"; // 0x00 + public const string countersignature = "1.2.840.113549.1.9.6"; // 0x00 + + // Methods + public void .ctor(); // 0x100BF000 +} + +// Namespace: +public class ContentInfo // TypeDefIndex: 225 +{ + // Fields + private string contentType; // 0x08 + private ASN1 content; // 0x0C + + // Properties + public ASN1 ASN1 { get; } // 0x101E8FB0 + public ASN1 Content { get; set; } // 0x100C5B30 0x100C5B50 + public string ContentType { get; set; } // 0x100BF0C0 0x100EB270 + + // Methods + public void .ctor(); // 0x101E8F50 + public void .ctor(string oid); // 0x101E8EA0 + public void .ctor(byte[] data); // 0x101E8F00 + public void .ctor(ASN1 asn1); // 0x101E8D60 + internal ASN1 GetASN1(); // 0x101E8C90 + public byte[] GetBytes(); // 0x101E8D20 +} + +// Namespace: +public class EncryptedData // TypeDefIndex: 226 +{ + // Fields + private byte _version; // 0x08 + private ContentInfo _content; // 0x0C + private ContentInfo _encryptionAlgorithm; // 0x10 + private byte[] _encrypted; // 0x14 + + // Properties + public ASN1 ASN1 { get; } // 0x100C5600 + public ContentInfo ContentInfo { get; } // 0x100C5B30 + public ContentInfo EncryptionAlgorithm { get; } // 0x100BFC20 + public byte[] EncryptedContent { get; } // 0x101E93F0 + public byte Version { get; set; } // 0x100EA020 0x10155000 + + // Methods + public void .ctor(); // 0x101E9380 + public void .ctor(byte[] data); // 0x101E93A0 + public void .ctor(ASN1 asn1); // 0x101E9110 + internal ASN1 GetASN1(); // 0x100C5600 + public byte[] GetBytes(); // 0x101E9100 +} + +// Namespace: +public class EnvelopedData // TypeDefIndex: 227 +{ + // Fields + private byte _version; // 0x08 + private ContentInfo _content; // 0x0C + private ContentInfo _encryptionAlgorithm; // 0x10 + private ArrayList _recipientInfos; // 0x14 + private byte[] _encrypted; // 0x18 + + // Properties + public ArrayList RecipientInfos { get; } // 0x100EF0C0 + public ASN1 ASN1 { get; } // 0x101E9460 + public ContentInfo ContentInfo { get; } // 0x100C5B30 + public ContentInfo EncryptionAlgorithm { get; } // 0x100BFC20 + public byte[] EncryptedContent { get; } // 0x101E9B10 + public byte Version { get; set; } // 0x100EA020 0x10155000 + + // Methods + public void .ctor(); // 0x101E9A10 + public void .ctor(byte[] data); // 0x101E99C0 + public void .ctor(ASN1 asn1); // 0x101E9500 + internal ASN1 GetASN1(); // 0x101E9460 + public byte[] GetBytes(); // 0x101E94A0 +} + +// Namespace: +public class RecipientInfo // TypeDefIndex: 228 +{ + // Fields + private int _version; // 0x08 + private string _oid; // 0x0C + private byte[] _key; // 0x10 + private byte[] _ski; // 0x14 + private string _issuer; // 0x18 + private byte[] _serial; // 0x1C + + // Properties + public string Oid { get; } // 0x100C5B30 + public byte[] Key { get; } // 0x101F67E0 + public byte[] SubjectKeyIdentifier { get; } // 0x101F68C0 + public string Issuer { get; } // 0x100EE580 + public byte[] Serial { get; } // 0x101F6850 + public int Version { get; } // 0x100BF0C0 + + // Methods + public void .ctor(); // 0x100BF000 + public void .ctor(ASN1 data); // 0x101F6620 +} + +// Namespace: +public class SignedData // TypeDefIndex: 229 +{ + // Fields + private byte version; // 0x08 + private string hashAlgorithm; // 0x0C + private ContentInfo contentInfo; // 0x10 + private X509CertificateCollection certs; // 0x14 + private ArrayList crls; // 0x18 + private SignerInfo signerInfo; // 0x1C + private bool mda; // 0x20 + private bool signed; // 0x21 + private static Dictionary`2 <>f__switch$map16; // 0x00 + + // Properties + public ASN1 ASN1 { get; } // 0x101F7E90 + public X509CertificateCollection Certificates { get; } // 0x100EF0C0 + public ContentInfo ContentInfo { get; } // 0x100BFC20 + public ArrayList Crls { get; } // 0x100EE580 + public string HashName { get; set; } // 0x100C5B30 0x101F7EA0 + public SignerInfo SignerInfo { get; } // 0x100F85F0 + public byte Version { get; set; } // 0x100EA020 0x10155000 + public bool UseAuthenticatedAttributes { get; set; } // 0x101B94D0 0x101D3670 + + // Methods + public void .ctor(); // 0x101F7DB0 + public void .ctor(byte[] data); // 0x101F7D60 + public void .ctor(ASN1 asn1); // 0x101F76C0 + public bool VerifySignature(AsymmetricAlgorithm aa); // 0x101F7310 + internal string OidToName(string oid); // 0x101F7180 + internal ASN1 GetASN1(); // 0x101F6930 + public byte[] GetBytes(); // 0x101F7140 +} + +// Namespace: +public class SignerInfo // TypeDefIndex: 230 +{ + // Fields + private byte version; // 0x08 + private X509Certificate x509; // 0x0C + private string hashAlgorithm; // 0x10 + private AsymmetricAlgorithm key; // 0x14 + private ArrayList authenticatedAttributes; // 0x18 + private ArrayList unauthenticatedAttributes; // 0x1C + private byte[] signature; // 0x20 + private string issuer; // 0x24 + private byte[] serial; // 0x28 + private byte[] ski; // 0x2C + + // Properties + public string IssuerName { get; } // 0x100EAD50 + public byte[] SerialNumber { get; } // 0x101F8AF0 + public byte[] SubjectKeyIdentifier { get; } // 0x101F8BD0 + public ASN1 ASN1 { get; } // 0x101F8AE0 + public ArrayList AuthenticatedAttributes { get; } // 0x100EE580 + public X509Certificate Certificate { get; set; } // 0x100C5B30 0x100C5B50 + public string HashName { get; set; } // 0x100BFC20 0x100C5B40 + public AsymmetricAlgorithm Key { get; set; } // 0x100EF0C0 0x10127B00 + public byte[] Signature { get; set; } // 0x101F8B60 0x101F8C40 + public ArrayList UnauthenticatedAttributes { get; } // 0x100F85F0 + public byte Version { get; set; } // 0x100EA020 0x10155000 + + // Methods + public void .ctor(); // 0x101F8A70 + public void .ctor(byte[] data); // 0x101F8680 + public void .ctor(ASN1 asn1); // 0x101F86D0 + internal ASN1 GetASN1(); // 0x101F7EC0 + public byte[] GetBytes(); // 0x101F8640 +} + +// Namespace: Mono.Security +internal sealed class StrongName // TypeDefIndex: 231 +{ + // Fields + private RSA rsa; // 0x08 + private byte[] publicKey; // 0x0C + private byte[] keyToken; // 0x10 + private string tokenAlgorithm; // 0x14 + private static object lockObject; // 0x00 + private static bool initialized; // 0x04 + + // Properties + public bool CanSign { get; } // 0x101FB530 + public RSA RSA { get; set; } // 0x101FBC10 0x101FBC70 + public byte[] PublicKey { get; } // 0x101FB800 + public byte[] PublicKeyToken { get; } // 0x101FB6F0 + public string TokenAlgorithm { get; set; } // 0x101FBC30 0x101FBC90 + + // Methods + public void .ctor(); // 0x100BF000 + public void .ctor(int keySize); // 0x101FB320 + public void .ctor(byte[] data); // 0x101FB370 + public void .ctor(RSA rsa); // 0x101FB4B0 + private static void .cctor(); // 0x101FB2D0 + private void InvalidateCache(); // 0x101F9FB0 + public byte[] GetBytes(); // 0x101F9F30 + private uint RVAtoPosition(uint r, int sections, byte[] headers); // 0x101FA520 + internal StrongNameSignature StrongHash(Stream stream, StrongNameOptions options); // 0x101FA8F0 + public byte[] Hash(string fileName); // 0x101F9F60 + public bool Sign(string fileName); // 0x101FA5B0 + public bool Verify(string fileName); // 0x101FAFA0 + public bool Verify(Stream stream); // 0x101FB0D0 + public static bool IsAssemblyStrongnamed(string assemblyName); // 0x101F9FD0 + public static bool VerifySignature(byte[] publicKey, int algorithm, byte[] hash, byte[] signature); // 0x101FAEA0 + private static bool Verify(RSA rsa, AssemblyHashAlgorithm algorithm, byte[] hash, byte[] signature); // 0x101FB230 +} + +// Namespace: +internal class StrongNameSignature // TypeDefIndex: 232 +{ + // Fields + private byte[] hash; // 0x08 + private byte[] signature; // 0x0C + private uint signaturePosition; // 0x10 + private uint signatureLength; // 0x14 + private uint metadataPosition; // 0x18 + private uint metadataLength; // 0x1C + private byte cliFlag; // 0x20 + private uint cliFlagPosition; // 0x24 + + // Properties + public byte[] Hash { get; set; } // 0x100BF0C0 0x100EB270 + public byte[] Signature { get; set; } // 0x100C5B30 0x100C5B50 + public uint MetadataPosition { get; set; } // 0x100EE580 0x10113F40 + public uint MetadataLength { get; set; } // 0x100F85F0 0x10113F50 + public uint SignaturePosition { get; set; } // 0x100BFC20 0x100C5B40 + public uint SignatureLength { get; set; } // 0x100EF0C0 0x10127B00 + public byte CliFlag { get; set; } // 0x101B94D0 0x101D3670 + public uint CliFlagPosition { get; set; } // 0x100EAD50 0x100EB240 + + // Methods + public void .ctor(); // 0x100BF000 +} + +// Namespace: +internal enum StrongNameOptions // TypeDefIndex: 233 +{ + Metadata = 0, + Signature = 1 +} + +// Namespace: Mono.Security +internal class StrongNameManager // TypeDefIndex: 234 +{ + // Fields + private static Hashtable mappings; // 0x00 + private static Hashtable tokens; // 0x04 + + // Methods + public void .ctor(); // 0x100BF000 + private static void .cctor(); // 0x100C5530 + public static void LoadConfig(string filename); // 0x101F8D90 + private static void LoadMapping(SecurityElement mapping); // 0x101F9030 + private static void LoadVerificationSettings(SecurityElement settings); // 0x101F9440 + public static byte[] GetMappedPublicKey(byte[] token); // 0x101F8CB0 + public static bool MustVerify(AssemblyName an); // 0x101F9980 + public override string ToString(); // 0x101F9AE0 +} + +// Namespace: +private class Element // TypeDefIndex: 235 +{ + // Fields + internal Hashtable assemblies; // 0x08 + + // Methods + public void .ctor(); // 0x101E90B0 + public void .ctor(string assembly, string users); // 0x101E9030 + public string GetUsers(string assembly); // 0x101E8FC0 +} + +// Namespace: Mono.Security +internal enum UriPartial // TypeDefIndex: 236 +{ + Scheme = 0, + Authority = 1, + Path = 2 +} + +// Namespace: Mono.Security +internal class Uri // TypeDefIndex: 237 +{ + // Fields + private bool isUnixFilePath; // 0x08 + private string source; // 0x0C + private string scheme; // 0x10 + private string host; // 0x14 + private int port; // 0x18 + private string path; // 0x1C + private string query; // 0x20 + private string fragment; // 0x24 + private string userinfo; // 0x28 + private bool isUnc; // 0x2C + private bool isOpaquePart; // 0x2D + private string[] segments; // 0x30 + private bool userEscaped; // 0x34 + private string cachedAbsoluteUri; // 0x38 + private string cachedToString; // 0x3C + private string cachedLocalPath; // 0x40 + private int cachedHashCode; // 0x44 + private bool reduce; // 0x48 + private static readonly string hexUpperChars; // 0x00 + public static readonly string SchemeDelimiter; // 0x04 + public static readonly string UriSchemeFile; // 0x08 + public static readonly string UriSchemeFtp; // 0x0C + public static readonly string UriSchemeGopher; // 0x10 + public static readonly string UriSchemeHttp; // 0x14 + public static readonly string UriSchemeHttps; // 0x18 + public static readonly string UriSchemeMailto; // 0x1C + public static readonly string UriSchemeNews; // 0x20 + public static readonly string UriSchemeNntp; // 0x24 + private static UriScheme[] schemes; // 0x28 + private static Dictionary`2 <>f__switch$map17; // 0x2C + + // Properties + public string AbsolutePath { get; } // 0x100F85F0 + public string AbsoluteUri { get; } // 0x10201B50 + public string Authority { get; } // 0x10201BD0 + public string Fragment { get; } // 0x100EAD50 + public string Host { get; } // 0x100EF0C0 + public bool IsDefaultPort { get; } // 0x10201C80 + public bool IsFile { get; } // 0x10201CE0 + public bool IsLoopback { get; } // 0x10201D60 + public bool IsUnc { get; } // 0x10201E40 + public string LocalPath { get; } // 0x10201E50 + public string PathAndQuery { get; } // 0x10202110 + public int Port { get; } // 0x100EE580 + public string Query { get; } // 0x100EACD0 + public string Scheme { get; } // 0x100BFC20 + public string[] Segments { get; } // 0x10202170 + public bool UserEscaped { get; } // 0x100C00E0 + public string UserInfo { get; } // 0x100EB040 + + // Methods + public void .ctor(string uriString); // 0x102019B0 + public void .ctor(string uriString, bool dontEscape); // 0x10201A90 + public void .ctor(string uriString, bool dontEscape, bool reduce); // 0x102018E0 + public void .ctor(Uri baseUri, string relativeUri); // 0x10201A70 + public void .ctor(Uri baseUri, string relativeUri, bool dontEscape); // 0x102011A0 + private static void .cctor(); // 0x10200E60 + internal static bool IsIPv4Address(string name); // 0x101FEFF0 + internal static bool IsDomainAddress(string name); // 0x101FED20 + public static bool CheckSchemeName(string schemeName); // 0x101FD6D0 + public override bool Equals(object comparant); // 0x101FD7C0 + public override int GetHashCode(); // 0x101FE050 + public string GetLeftPart(UriPartial part); // 0x101FE0F0 + public static int FromHex(char digit); // 0x101FDE90 + public static string HexEscape(char character); // 0x101FE870 + public static char HexUnescape(string pattern, int index); // 0x101FE9B0 + public static bool IsHexDigit(char digit); // 0x101FEE90 + public static bool IsHexEncoding(string pattern, int index); // 0x101FEED0 + public string MakeRelative(Uri toUri); // 0x101FF390 + public override string ToString(); // 0x10200BC0 + protected void Escape(); // 0x101FDDF0 + protected static string EscapeString(string str); // 0x101FDB20 + internal static string EscapeString(string str, bool escapeReserved, bool escapeHex, bool escapeBrackets); // 0x101FDB80 + protected void Parse(); // 0x10200820 + protected string Unescape(string str); // 0x10200CF0 + internal string Unescape(string str, bool excludeSharp); // 0x10200D10 + private void ParseAsWindowsUNC(string uriString); // 0x101FF920 + private void ParseAsWindowsAbsoluteFilePath(string uriString); // 0x101FF7F0 + private void ParseAsUnixAbsoluteFilePath(string uriString); // 0x101FF680 + private void Parse(string uriString); // 0x101FFAA0 + private static string Reduce(string path); // 0x102008A0 + internal static string GetSchemeDelimiter(string scheme); // 0x101FE730 + internal static int GetDefaultPort(string scheme); // 0x101FDF30 + private string GetOpaqueWiseSchemeDelimiter(); // 0x101FE5A0 + protected bool IsBadFileSystemCharacter(char ch); // 0x101FECB0 + protected static bool IsExcludedCharacter(char ch); // 0x101FEE20 + private static bool IsPredefinedScheme(string scheme); // 0x101FF180 + protected bool IsReservedCharacter(char ch); // 0x101FF340 +} + +// Namespace: +private struct UriScheme // TypeDefIndex: 238 +{ + // Fields + public string scheme; // 0x08 + public string delimiter; // 0x0C + public int defaultPort; // 0x10 + + // Methods + public void .ctor(string s, string d, int p); // 0x100074C0 +} + +// Namespace: Mono.Xml +internal class SecurityParser : SmallXmlParser, IContentHandler // TypeDefIndex: 239 +{ + // Fields + private SecurityElement root; // 0x38 + private SecurityElement current; // 0x3C + private Stack stack; // 0x40 + + // Methods + public void .ctor(); // 0x101614A0 + public void LoadXml(string xml); // 0x10161170 + public SecurityElement ToXml(); // 0x100EB210 + public void OnStartParsing(SmallXmlParser parser); // 0x100C5530 + public void OnProcessingInstruction(string name, string text); // 0x100C5530 + public void OnIgnorableWhitespace(string s); // 0x100C5530 + public void OnStartElement(string name, IAttrList attrs); // 0x101612D0 + public void OnEndElement(string name); // 0x10161260 + public void OnChars(string ch); // 0x101611F0 + public void OnEndParsing(SmallXmlParser parser); // 0x100C5530 +} + +// Namespace: Mono.Xml +internal class DefaultHandler : IContentHandler // TypeDefIndex: 240 +{ + // Methods + public void .ctor(); // 0x100BF000 + public void OnStartParsing(SmallXmlParser parser); // 0x100C5530 + public void OnEndParsing(SmallXmlParser parser); // 0x100C5530 + public void OnStartElement(string name, IAttrList attrs); // 0x100C5530 + public void OnEndElement(string name); // 0x100C5530 + public void OnChars(string s); // 0x100C5530 + public void OnIgnorableWhitespace(string s); // 0x100C5530 + public void OnProcessingInstruction(string name, string text); // 0x100C5530 +} + +// Namespace: Mono.Xml +internal class SmallXmlParser // TypeDefIndex: 241 +{ + // Fields + private IContentHandler handler; // 0x08 + private TextReader reader; // 0x0C + private Stack elementNames; // 0x10 + private Stack xmlSpaces; // 0x14 + private string xmlSpace; // 0x18 + private StringBuilder buffer; // 0x1C + private char[] nameBuffer; // 0x20 + private bool isWhitespace; // 0x24 + private AttrListImpl attributes; // 0x28 + private int line; // 0x2C + private int column; // 0x30 + private bool resetColumn; // 0x34 + private static Dictionary`2 <>f__switch$map18; // 0x00 + + // Methods + public void .ctor(); // 0x101636E0 + private Exception Error(string msg); // 0x101617B0 + private Exception UnexpectedEndError(); // 0x10163610 + private bool IsNameChar(char c, bool start); // 0x10161B60 + private bool IsWhitespace(int c); // 0x10161C50 + public void SkipWhitespaces(); // 0x101635F0 + private void HandleWhitespaces(); // 0x10161A50 + public void SkipWhitespaces(bool expected); // 0x101634F0 + private int Peek(); // 0x10161EA0 + private int Read(); // 0x10163490 + public void Expect(int c); // 0x10161890 + private string ReadUntil(char until, bool handleReferences); // 0x10163360 + public string ReadName(); // 0x10162ED0 + public void Parse(TextReader input, IContentHandler handler); // 0x10161C90 + private void Cleanup(); // 0x101616E0 + public void ReadContent(); // 0x10162520 + private void HandleBufferedContent(); // 0x101619B0 + private void ReadCharacters(); // 0x101622B0 + private void ReadReference(); // 0x10163040 + private int ReadCharacterReference(); // 0x101621A0 + private void ReadAttribute(AttrListImpl a); // 0x10161ED0 + private void ReadCDATASection(); // 0x10162050 + private void ReadComment(); // 0x101623D0 +} + +// Namespace: +public interface IContentHandler // TypeDefIndex: 242 +{ + // Methods + void OnStartParsing(SmallXmlParser parser); + void OnEndParsing(SmallXmlParser parser); + void OnStartElement(string name, IAttrList attrs); + void OnEndElement(string name); + void OnProcessingInstruction(string name, string text); + void OnChars(string text); + void OnIgnorableWhitespace(string text); +} + +// Namespace: +public interface IAttrList // TypeDefIndex: 243 +{ + // Properties + int Length { get; } + bool IsEmpty { get; } + string[] Names { get; } + string[] Values { get; } + + // Methods + string GetName(int i); + string GetValue(int i); + string GetValue(string name); +} + +// Namespace: +private class AttrListImpl : IAttrList // TypeDefIndex: 244 +{ + // Fields + private ArrayList attrNames; // 0x08 + private ArrayList attrValues; // 0x0C + + // Properties + public int Length { get; } // 0x101273C0 + public bool IsEmpty { get; } // 0x1015FFD0 + public string[] Names { get; } // 0x10160000 + public string[] Values { get; } // 0x101600B0 + + // Methods + public void .ctor(); // 0x1015FF60 + public string GetName(int i); // 0x1015FD80 + public string GetValue(int i); // 0x1015FEF0 + public string GetValue(string name); // 0x1015FDF0 + internal void Clear(); // 0x1015FD30 + internal void Add(string name, string value); // 0x1015FCE0 +} + +// Namespace: Mono.Xml +internal class SmallXmlParserException : SystemException // TypeDefIndex: 245 +{ + // Fields + private int line; // 0x34 + private int column; // 0x38 + + // Properties + public int Line { get; } // 0x100E9ED0 + public int Column { get; } // 0x100EB210 + + // Methods + public void .ctor(string msg, int line, int column); // 0x10161630 +} + +// Namespace: Mono +internal abstract class DataConverter // TypeDefIndex: 246 +{ + // Fields + private static DataConverter SwapConv; // 0x00 + private static DataConverter CopyConv; // 0x04 + public static readonly bool IsLittleEndian; // 0x08 + + // Properties + public static DataConverter LittleEndian { get; } // 0x1025DD80 + public static DataConverter BigEndian { get; } // 0x1025DCE0 + public static DataConverter Native { get; } // 0x1025DE20 + + // Methods + protected void .ctor(); // 0x100BF000 + private static void .cctor(); // 0x1025DBC0 + public abstract double GetDouble(byte[] data, int index); + public abstract float GetFloat(byte[] data, int index); + public abstract long GetInt64(byte[] data, int index); + public abstract int GetInt32(byte[] data, int index); + public abstract short GetInt16(byte[] data, int index); + public abstract uint GetUInt32(byte[] data, int index); + public abstract ushort GetUInt16(byte[] data, int index); + public abstract ulong GetUInt64(byte[] data, int index); + public abstract void PutBytes(byte[] dest, int destIdx, double value); + public abstract void PutBytes(byte[] dest, int destIdx, float value); + public abstract void PutBytes(byte[] dest, int destIdx, int value); + public abstract void PutBytes(byte[] dest, int destIdx, long value); + public abstract void PutBytes(byte[] dest, int destIdx, short value); + public abstract void PutBytes(byte[] dest, int destIdx, ushort value); + public abstract void PutBytes(byte[] dest, int destIdx, uint value); + public abstract void PutBytes(byte[] dest, int destIdx, ulong value); + public byte[] GetBytes(double value); // 0x1025BFE0 + public byte[] GetBytes(float value); // 0x1025BDA0 + public byte[] GetBytes(int value); // 0x1025BF20 + public byte[] GetBytes(long value); // 0x1025BE00 + public byte[] GetBytes(short value); // 0x1025BF80 + public byte[] GetBytes(ushort value); // 0x1025BD40 + public byte[] GetBytes(uint value); // 0x1025BEC0 + public byte[] GetBytes(ulong value); // 0x1025BE60 + private static int Align(int current, int align); // 0x1025BC80 + public static byte[] Pack(string description, object[] args); // 0x1025CD10 + public static byte[] PackEnumerable(string description, IEnumerable args); // 0x1025C040 + private static bool PackOne(PackContext b, object oarg); // 0x1025C1F0 + private static bool Prepare(byte[] buffer, int idx, int size, bool align); // 0x1025CE80 + public static IList Unpack(string description, byte[] buffer, int startIndex); // 0x1025CF10 + internal void Check(byte[] dest, int destIdx, int size); // 0x1025BCA0 +} + +// Namespace: +private class PackContext // TypeDefIndex: 247 +{ + // Fields + public byte[] buffer; // 0x08 + private int next; // 0x0C + public string description; // 0x10 + public int i; // 0x14 + public DataConverter conv; // 0x18 + public int repeat; // 0x1C + public int align; // 0x20 + + // Methods + public void .ctor(); // 0x100BF000 + public void Add(byte[] group); // 0x10265E80 + public byte[] Get(); // 0x10265FE0 +} + +// Namespace: +private class CopyConverter : DataConverter // TypeDefIndex: 248 +{ + // Methods + public void .ctor(); // 0x1025BB80 + public override double GetDouble(byte[] data, int index); // 0x1025B390 + public override ulong GetUInt64(byte[] data, int index); // 0x1025B9B0 + public override long GetInt64(byte[] data, int index); // 0x1025B710 + public override float GetFloat(byte[] data, int index); // 0x1025B470 + public override int GetInt32(byte[] data, int index); // 0x1025B630 + public override uint GetUInt32(byte[] data, int index); // 0x1025B8D0 + public override short GetInt16(byte[] data, int index); // 0x1025B550 + public override ushort GetUInt16(byte[] data, int index); // 0x1025B7F0 + public override void PutBytes(byte[] dest, int destIdx, double value); // 0x1025BA90 + public override void PutBytes(byte[] dest, int destIdx, float value); // 0x1025BB30 + public override void PutBytes(byte[] dest, int destIdx, int value); // 0x1025BB30 + public override void PutBytes(byte[] dest, int destIdx, uint value); // 0x1025BB30 + public override void PutBytes(byte[] dest, int destIdx, long value); // 0x1025BA90 + public override void PutBytes(byte[] dest, int destIdx, ulong value); // 0x1025BA90 + public override void PutBytes(byte[] dest, int destIdx, short value); // 0x1025BAE0 + public override void PutBytes(byte[] dest, int destIdx, ushort value); // 0x1025BAE0 +} + +// Namespace: +private class SwapConverter : DataConverter // TypeDefIndex: 249 +{ + // Methods + public void .ctor(); // 0x1026F8D0 + public override double GetDouble(byte[] data, int index); // 0x1026EFD0 + public override ulong GetUInt64(byte[] data, int index); // 0x1026F5F0 + public override long GetInt64(byte[] data, int index); // 0x1026F350 + public override float GetFloat(byte[] data, int index); // 0x1026F0B0 + public override int GetInt32(byte[] data, int index); // 0x1026F270 + public override uint GetUInt32(byte[] data, int index); // 0x1026F510 + public override short GetInt16(byte[] data, int index); // 0x1026F190 + public override ushort GetUInt16(byte[] data, int index); // 0x1026F430 + public override void PutBytes(byte[] dest, int destIdx, double value); // 0x1026F6D0 + public override void PutBytes(byte[] dest, int destIdx, float value); // 0x1026F870 + public override void PutBytes(byte[] dest, int destIdx, int value); // 0x1026F7B0 + public override void PutBytes(byte[] dest, int destIdx, uint value); // 0x1026F7B0 + public override void PutBytes(byte[] dest, int destIdx, long value); // 0x1026F6D0 + public override void PutBytes(byte[] dest, int destIdx, ulong value); // 0x1026F810 + public override void PutBytes(byte[] dest, int destIdx, short value); // 0x1026F750 + public override void PutBytes(byte[] dest, int destIdx, ushort value); // 0x1026F750 +} + +// Namespace: Mono +internal class Runtime // TypeDefIndex: 250 +{ + // Methods + public void .ctor(); // 0x100BF000 + private static void mono_runtime_install_handlers(); // 0x102AE1E0 + internal static void InstallSignalHandlers(); // 0x102AE1E0 + internal static string GetDisplayName(); // 0x102AE1D0 +} + +// Namespace: System.Collections.Generic +internal sealed class CollectionDebuggerView`1 // TypeDefIndex: 251 +{ + // Fields + private readonly ICollection`1 c; // 0x00 + + // Properties + public T[] Items { get; } + + // Methods + public void .ctor(ICollection`1 col); +} + +// Namespace: System.Collections.Generic +internal sealed class CollectionDebuggerView`2 // TypeDefIndex: 252 +{ + // Fields + private readonly ICollection`1> c; // 0x00 + + // Properties + public KeyValuePair`2[] Items { get; } + + // Methods + public void .ctor(ICollection`1> col); +} + +// Namespace: System.Collections.Generic +[Serializable] +public abstract class Comparer`1 : IComparer`1, IComparer // TypeDefIndex: 253 +{ + // Fields + private static readonly Comparer`1 _default; // 0x00 + + // Properties + public static Comparer`1 Default { get; } + + // Methods + protected void .ctor(); + private static void .cctor(); + private int System.Collections.IComparer.Compare(object x, object y); + public abstract int Compare(T x, T y); +} + +// Namespace: +private sealed class DefaultComparer : Comparer`1 // TypeDefIndex: 254 +{ + // Methods + public void .ctor(); + public override int Compare(T x, T y); +} + +// Namespace: System.Collections.Generic +[Serializable] +internal sealed class GenericComparer`1 : Comparer`1 // TypeDefIndex: 255 +{ + // Methods + public void .ctor(); + public override int Compare(T x, T y); +} + +// Namespace: System.Collections.Generic +internal struct Link // TypeDefIndex: 256 +{ + // Fields + public int HashCode; // 0x08 + public int Next; // 0x0C + +} + +// Namespace: System.Collections.Generic +[Serializable] +public class Dictionary`2 : IEnumerable, ISerializable, ICollection, ICollection`1>, IEnumerable`1>, IDictionary`2, IDictionary, IDeserializationCallback // TypeDefIndex: 257 +{ + // Fields + private const int INITIAL_SIZE = 10; // 0x00 + private const float DEFAULT_LOAD_FACTOR = 0.9; // 0x00 + private const int NO_SLOT = -1; // 0x00 + private const int HASH_FLAG = -2147483648; // 0x00 + private int[] table; // 0x00 + private Link[] linkSlots; // 0x00 + private T[] keySlots; // 0x00 + private T[] valueSlots; // 0x00 + private int touchedSlots; // 0x00 + private int emptySlot; // 0x00 + private int count; // 0x00 + private int threshold; // 0x00 + private IEqualityComparer`1 hcp; // 0x00 + private SerializationInfo serialization_info; // 0x00 + private int generation; // 0x00 + private static Transform`1 <>f__am$cacheB; // 0x00 + + // Properties + private ICollection`1 System.Collections.Generic.IDictionary.Keys { get; } + private ICollection`1 System.Collections.Generic.IDictionary.Values { get; } + private ICollection System.Collections.IDictionary.Keys { get; } + private ICollection System.Collections.IDictionary.Values { get; } + private bool System.Collections.IDictionary.IsFixedSize { get; } + private bool System.Collections.IDictionary.IsReadOnly { get; } + private object System.Collections.IDictionary.Item { get; set; } + private bool System.Collections.ICollection.IsSynchronized { get; } + private object System.Collections.ICollection.SyncRoot { get; } + private bool System.Collections.Generic.ICollection>.IsReadOnly { get; } + public int Count { get; } + public T Item { get; set; } + public IEqualityComparer`1 Comparer { get; } + public KeyCollection Keys { get; } + public ValueCollection Values { get; } + + // Methods + public void .ctor(); + public void .ctor(IEqualityComparer`1 comparer); + public void .ctor(IDictionary`2 dictionary); + public void .ctor(int capacity); + public void .ctor(IDictionary`2 dictionary, IEqualityComparer`1 comparer); + public void .ctor(int capacity, IEqualityComparer`1 comparer); + protected void .ctor(SerializationInfo info, StreamingContext context); + private void System.Collections.IDictionary.Add(object key, object value); + private bool System.Collections.IDictionary.Contains(object key); + private void System.Collections.IDictionary.Remove(object key); + private void System.Collections.Generic.ICollection>.Add(KeyValuePair`2 keyValuePair); + private bool System.Collections.Generic.ICollection>.Contains(KeyValuePair`2 keyValuePair); + private void System.Collections.Generic.ICollection>.CopyTo(KeyValuePair`2[] array, int index); + private bool System.Collections.Generic.ICollection>.Remove(KeyValuePair`2 keyValuePair); + private void System.Collections.ICollection.CopyTo(Array array, int index); + private IEnumerator System.Collections.IEnumerable.GetEnumerator(); + private IEnumerator`1> System.Collections.Generic.IEnumerable>.GetEnumerator(); + private IDictionaryEnumerator System.Collections.IDictionary.GetEnumerator(); + private void Init(int capacity, IEqualityComparer`1 hcp); + private void InitArrays(int size); + private void CopyToCheck(Array array, int index); + private void Do_CopyTo(T[] array, int index, Transform`1 transform); + private static KeyValuePair`2 make_pair(T key, T value); + private static T pick_key(T key, T value); + private static T pick_value(T key, T value); + private void CopyTo(KeyValuePair`2[] array, int index); + private void Do_ICollectionCopyTo(Array array, int index, Transform`1 transform); + private void Resize(); + public void Add(T key, T value); + public void Clear(); + public bool ContainsKey(T key); + public bool ContainsValue(T value); + public virtual void GetObjectData(SerializationInfo info, StreamingContext context); + public virtual void OnDeserialization(object sender); + public bool Remove(T key); + public bool TryGetValue(T key, out T value); + private T ToTKey(object key); + private T ToTValue(object value); + private bool ContainsKeyValuePair(KeyValuePair`2 pair); + public Enumerator GetEnumerator(); + private static DictionaryEntry m__0(T key, T value); +} + +// Namespace: +[Serializable] +private class ShimEnumerator : IEnumerator, IDictionaryEnumerator // TypeDefIndex: 258 +{ + // Fields + private Enumerator host_enumerator; // 0x00 + + // Properties + public DictionaryEntry Entry { get; } + public object Key { get; } + public object Value { get; } + public object Current { get; } + + // Methods + public void .ctor(Dictionary`2 host); + public void Dispose(); + public bool MoveNext(); + public void Reset(); +} + +// Namespace: +[Serializable] +public struct Enumerator : IEnumerator, IDisposable, IEnumerator`1>, IDictionaryEnumerator // TypeDefIndex: 259 +{ + // Fields + private Dictionary`2 dictionary; // 0x00 + private int next; // 0x00 + private int stamp; // 0x00 + internal KeyValuePair`2 current; // 0x00 + + // Properties + private object System.Collections.IEnumerator.Current { get; } + private DictionaryEntry System.Collections.IDictionaryEnumerator.Entry { get; } + private object System.Collections.IDictionaryEnumerator.Key { get; } + private object System.Collections.IDictionaryEnumerator.Value { get; } + public KeyValuePair`2 Current { get; } + internal T CurrentKey { get; } + internal T CurrentValue { get; } + + // Methods + internal void .ctor(Dictionary`2 dictionary); + private void System.Collections.IEnumerator.Reset(); + public bool MoveNext(); + internal void Reset(); + private void VerifyState(); + private void VerifyCurrent(); + public void Dispose(); +} + +// Namespace: +[Serializable] +public sealed class KeyCollection : IEnumerable, ICollection, ICollection`1, IEnumerable`1 // TypeDefIndex: 260 +{ + // Fields + private Dictionary`2 dictionary; // 0x00 + + // Properties + private bool System.Collections.Generic.ICollection.IsReadOnly { get; } + private bool System.Collections.ICollection.IsSynchronized { get; } + private object System.Collections.ICollection.SyncRoot { get; } + public int Count { get; } + + // Methods + public void .ctor(Dictionary`2 dictionary); + private void System.Collections.Generic.ICollection.Add(T item); + private void System.Collections.Generic.ICollection.Clear(); + private bool System.Collections.Generic.ICollection.Contains(T item); + private bool System.Collections.Generic.ICollection.Remove(T item); + private IEnumerator`1 System.Collections.Generic.IEnumerable.GetEnumerator(); + private void System.Collections.ICollection.CopyTo(Array array, int index); + private IEnumerator System.Collections.IEnumerable.GetEnumerator(); + public void CopyTo(T[] array, int index); + public Enumerator GetEnumerator(); +} + +// Namespace: +[Serializable] +public struct Enumerator : IEnumerator, IDisposable, IEnumerator`1 // TypeDefIndex: 261 +{ + // Fields + private Enumerator host_enumerator; // 0x00 + + // Properties + private object System.Collections.IEnumerator.Current { get; } + public T Current { get; } + + // Methods + internal void .ctor(Dictionary`2 host); + private void System.Collections.IEnumerator.Reset(); + public void Dispose(); + public bool MoveNext(); +} + +// Namespace: +[Serializable] +public sealed class ValueCollection : IEnumerable, ICollection, ICollection`1, IEnumerable`1 // TypeDefIndex: 262 +{ + // Fields + private Dictionary`2 dictionary; // 0x00 + + // Properties + private bool System.Collections.Generic.ICollection.IsReadOnly { get; } + private bool System.Collections.ICollection.IsSynchronized { get; } + private object System.Collections.ICollection.SyncRoot { get; } + public int Count { get; } + + // Methods + public void .ctor(Dictionary`2 dictionary); + private void System.Collections.Generic.ICollection.Add(T item); + private void System.Collections.Generic.ICollection.Clear(); + private bool System.Collections.Generic.ICollection.Contains(T item); + private bool System.Collections.Generic.ICollection.Remove(T item); + private IEnumerator`1 System.Collections.Generic.IEnumerable.GetEnumerator(); + private void System.Collections.ICollection.CopyTo(Array array, int index); + private IEnumerator System.Collections.IEnumerable.GetEnumerator(); + public void CopyTo(T[] array, int index); + public Enumerator GetEnumerator(); +} + +// Namespace: +[Serializable] +public struct Enumerator : IEnumerator, IDisposable, IEnumerator`1 // TypeDefIndex: 263 +{ + // Fields + private Enumerator host_enumerator; // 0x00 + + // Properties + private object System.Collections.IEnumerator.Current { get; } + public T Current { get; } + + // Methods + internal void .ctor(Dictionary`2 host); + private void System.Collections.IEnumerator.Reset(); + public void Dispose(); + public bool MoveNext(); +} + +// Namespace: +private delegate T Transform`1(T key, T value); // TypeDefIndex: 264; 0x00000000 + +// Namespace: System.Collections.Generic +[Serializable] +public abstract class EqualityComparer`1 : IEqualityComparer`1, IEqualityComparer // TypeDefIndex: 265 +{ + // Fields + private static readonly EqualityComparer`1 _default; // 0x00 + + // Properties + public static EqualityComparer`1 Default { get; } + + // Methods + protected void .ctor(); + private static void .cctor(); + private int System.Collections.IEqualityComparer.GetHashCode(object obj); + private bool System.Collections.IEqualityComparer.Equals(object x, object y); + public abstract int GetHashCode(T obj); + public abstract bool Equals(T x, T y); +} + +// Namespace: +[Serializable] +private sealed class DefaultComparer : EqualityComparer`1 // TypeDefIndex: 266 +{ + // Methods + public void .ctor(); + public override int GetHashCode(T obj); + public override bool Equals(T x, T y); +} + +// Namespace: System.Collections.Generic +[Serializable] +internal sealed class GenericEqualityComparer`1 : EqualityComparer`1 // TypeDefIndex: 267 +{ + // Methods + public void .ctor(); + public override int GetHashCode(T obj); + public override bool Equals(T x, T y); +} + +// Namespace: System.Collections.Generic +public interface IComparer`1 // TypeDefIndex: 268 +{ + // Methods + int Compare(T x, T y); +} + +// Namespace: System.Collections.Generic +public interface IDictionary`2 : IEnumerable, ICollection`1>, IEnumerable`1> // TypeDefIndex: 269 +{ + // Properties + T Item { get; set; } + ICollection`1 Keys { get; } + ICollection`1 Values { get; } + + // Methods + void Add(T key, T value); + bool ContainsKey(T key); + bool Remove(T key); + bool TryGetValue(T key, out T value); +} + +// Namespace: System.Collections.Generic +public interface IEqualityComparer`1 // TypeDefIndex: 270 +{ + // Methods + bool Equals(T x, T y); + int GetHashCode(T obj); +} + +// Namespace: System.Collections.Generic +[Serializable] +public class KeyNotFoundException : SystemException, ISerializable // TypeDefIndex: 271 +{ + // Methods + public void .ctor(); // 0x10227B50 + public void .ctor(string message); // 0x100E5680 + public void .ctor(string message, Exception innerException); // 0x100E5670 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 +} + +// Namespace: System.Collections.Generic +[Serializable] +public struct KeyValuePair`2 // TypeDefIndex: 272 +{ + // Fields + private T key; // 0x00 + private T value; // 0x00 + + // Properties + public T Key { get; set; } + public T Value { get; set; } + + // Methods + public void .ctor(T key, T value); + public override string ToString(); +} + +// Namespace: System.Collections.Generic +[Serializable] +public class List`1 : IEnumerable, ICollection, IList, ICollection`1, IEnumerable`1, IList`1 // TypeDefIndex: 273 +{ + // Fields + private const int DefaultCapacity = 4; // 0x00 + private T[] _items; // 0x00 + private int _size; // 0x00 + private int _version; // 0x00 + private static readonly T[] EmptyArray; // 0x00 + + // Properties + private bool System.Collections.Generic.ICollection.IsReadOnly { get; } + private bool System.Collections.ICollection.IsSynchronized { get; } + private object System.Collections.ICollection.SyncRoot { get; } + private bool System.Collections.IList.IsFixedSize { get; } + private bool System.Collections.IList.IsReadOnly { get; } + private object System.Collections.IList.Item { get; set; } + public int Capacity { get; set; } + public int Count { get; } + public T Item { get; set; } + + // Methods + public void .ctor(); + public void .ctor(IEnumerable`1 collection); + public void .ctor(int capacity); + internal void .ctor(T[] data, int size); + private static void .cctor(); + private IEnumerator`1 System.Collections.Generic.IEnumerable.GetEnumerator(); + private void System.Collections.ICollection.CopyTo(Array array, int arrayIndex); + private IEnumerator System.Collections.IEnumerable.GetEnumerator(); + private int System.Collections.IList.Add(object item); + private bool System.Collections.IList.Contains(object item); + private int System.Collections.IList.IndexOf(object item); + private void System.Collections.IList.Insert(int index, object item); + private void System.Collections.IList.Remove(object item); + public void Add(T item); + private void GrowIfNeeded(int newCount); + private void CheckRange(int idx, int count); + private void AddCollection(ICollection`1 collection); + private void AddEnumerable(IEnumerable`1 enumerable); + public void AddRange(IEnumerable`1 collection); + public ReadOnlyCollection`1 AsReadOnly(); + public int BinarySearch(T item); + public int BinarySearch(T item, IComparer`1 comparer); + public int BinarySearch(int index, int count, T item, IComparer`1 comparer); + public void Clear(); + public bool Contains(T item); + public List`1 ConvertAll(Converter`2 converter); + public void CopyTo(T[] array); + public void CopyTo(T[] array, int arrayIndex); + public void CopyTo(int index, T[] array, int arrayIndex, int count); + public bool Exists(Predicate`1 match); + public T Find(Predicate`1 match); + private static void CheckMatch(Predicate`1 match); + public List`1 FindAll(Predicate`1 match); + private List`1 FindAllStackBits(Predicate`1 match); + private List`1 FindAllList(Predicate`1 match); + public int FindIndex(Predicate`1 match); + public int FindIndex(int startIndex, Predicate`1 match); + public int FindIndex(int startIndex, int count, Predicate`1 match); + private int GetIndex(int startIndex, int count, Predicate`1 match); + public T FindLast(Predicate`1 match); + public int FindLastIndex(Predicate`1 match); + public int FindLastIndex(int startIndex, Predicate`1 match); + public int FindLastIndex(int startIndex, int count, Predicate`1 match); + private int GetLastIndex(int startIndex, int count, Predicate`1 match); + public void ForEach(Action`1 action); + public Enumerator GetEnumerator(); + public List`1 GetRange(int index, int count); + public int IndexOf(T item); + public int IndexOf(T item, int index); + public int IndexOf(T item, int index, int count); + private void Shift(int start, int delta); + private void CheckIndex(int index); + public void Insert(int index, T item); + private void CheckCollection(IEnumerable`1 collection); + public void InsertRange(int index, IEnumerable`1 collection); + private void InsertCollection(int index, ICollection`1 collection); + private void InsertEnumeration(int index, IEnumerable`1 enumerable); + public int LastIndexOf(T item); + public int LastIndexOf(T item, int index); + public int LastIndexOf(T item, int index, int count); + public bool Remove(T item); + public int RemoveAll(Predicate`1 match); + public void RemoveAt(int index); + public void RemoveRange(int index, int count); + public void Reverse(); + public void Reverse(int index, int count); + public void Sort(); + public void Sort(IComparer`1 comparer); + public void Sort(Comparison`1 comparison); + public void Sort(int index, int count, IComparer`1 comparer); + public T[] ToArray(); + public void TrimExcess(); + public bool TrueForAll(Predicate`1 match); +} + +// Namespace: +[Serializable] +public struct Enumerator : IEnumerator, IDisposable, IEnumerator`1 // TypeDefIndex: 274 +{ + // Fields + private List`1 l; // 0x00 + private int next; // 0x00 + private int ver; // 0x00 + private T current; // 0x00 + + // Properties + private object System.Collections.IEnumerator.Current { get; } + public T Current { get; } + + // Methods + internal void .ctor(List`1 l); + private void System.Collections.IEnumerator.Reset(); + public void Dispose(); + private void VerifyState(); + public bool MoveNext(); +} + +// Namespace: System.Collections.ObjectModel +[Serializable] +public class Collection`1 : IEnumerable, ICollection, IList, ICollection`1, IList`1, IEnumerable`1 // TypeDefIndex: 275 +{ + // Fields + private IList`1 list; // 0x00 + private object syncRoot; // 0x00 + + // Properties + private bool System.Collections.Generic.ICollection.IsReadOnly { get; } + private bool System.Collections.ICollection.IsSynchronized { get; } + private object System.Collections.ICollection.SyncRoot { get; } + private bool System.Collections.IList.IsFixedSize { get; } + private bool System.Collections.IList.IsReadOnly { get; } + private object System.Collections.IList.Item { get; set; } + protected IList`1 Items { get; } + public int Count { get; } + public T Item { get; set; } + + // Methods + public void .ctor(); + public void .ctor(IList`1 list); + private void System.Collections.ICollection.CopyTo(Array array, int index); + private IEnumerator System.Collections.IEnumerable.GetEnumerator(); + private int System.Collections.IList.Add(object value); + private bool System.Collections.IList.Contains(object value); + private int System.Collections.IList.IndexOf(object value); + private void System.Collections.IList.Insert(int index, object value); + private void System.Collections.IList.Remove(object value); + public void Add(T item); + public void Clear(); + protected virtual void ClearItems(); + public bool Contains(T item); + public void CopyTo(T[] array, int index); + public IEnumerator`1 GetEnumerator(); + public int IndexOf(T item); + public void Insert(int index, T item); + protected virtual void InsertItem(int index, T item); + public bool Remove(T item); + public void RemoveAt(int index); + protected virtual void RemoveItem(int index); + protected virtual void SetItem(int index, T item); + internal static bool IsValidItem(object item); + internal static T ConvertItem(object item); + internal static void CheckWritable(IList`1 list); + internal static bool IsSynchronized(IList`1 list); + internal static bool IsFixedSize(IList`1 list); +} + +// Namespace: System.Collections.ObjectModel +[Serializable] +public abstract class KeyedCollection`2 : Collection`1 // TypeDefIndex: 276 +{ + // Fields + private Dictionary`2 dictionary; // 0x00 + private IEqualityComparer`1 comparer; // 0x00 + private int dictionaryCreationThreshold; // 0x00 + + // Properties + public IEqualityComparer`1 Comparer { get; } + public T Item { get; } + protected IDictionary`2 Dictionary { get; } + + // Methods + protected void .ctor(); + protected void .ctor(IEqualityComparer`1 comparer); + protected void .ctor(IEqualityComparer`1 comparer, int dictionaryCreationThreshold); + public bool Contains(T key); + private int IndexOfKey(T key); + public bool Remove(T key); + protected void ChangeItemKey(T item, T newKey); + protected override void ClearItems(); + protected abstract T GetKeyForItem(T item); + protected override void InsertItem(int index, T item); + protected override void RemoveItem(int index); + protected override void SetItem(int index, T item); +} + +// Namespace: System.Collections.ObjectModel +[Serializable] +public class ReadOnlyCollection`1 : IEnumerable, ICollection, IList, ICollection`1, IList`1, IEnumerable`1 // TypeDefIndex: 277 +{ + // Fields + private IList`1 list; // 0x00 + + // Properties + private T System.Collections.Generic.IList.Item { get; set; } + private bool System.Collections.Generic.ICollection.IsReadOnly { get; } + private bool System.Collections.ICollection.IsSynchronized { get; } + private object System.Collections.ICollection.SyncRoot { get; } + private bool System.Collections.IList.IsFixedSize { get; } + private bool System.Collections.IList.IsReadOnly { get; } + private object System.Collections.IList.Item { get; set; } + public int Count { get; } + protected IList`1 Items { get; } + public T Item { get; } + + // Methods + public void .ctor(IList`1 list); + private void System.Collections.Generic.ICollection.Add(T item); + private void System.Collections.Generic.ICollection.Clear(); + private void System.Collections.Generic.IList.Insert(int index, T item); + private bool System.Collections.Generic.ICollection.Remove(T item); + private void System.Collections.Generic.IList.RemoveAt(int index); + private void System.Collections.ICollection.CopyTo(Array array, int index); + private IEnumerator System.Collections.IEnumerable.GetEnumerator(); + private int System.Collections.IList.Add(object value); + private void System.Collections.IList.Clear(); + private bool System.Collections.IList.Contains(object value); + private int System.Collections.IList.IndexOf(object value); + private void System.Collections.IList.Insert(int index, object value); + private void System.Collections.IList.Remove(object value); + private void System.Collections.IList.RemoveAt(int index); + public bool Contains(T value); + public void CopyTo(T[] array, int index); + public IEnumerator`1 GetEnumerator(); + public int IndexOf(T value); +} + +// Namespace: System.Collections +[Serializable] +public class ArrayList : IEnumerable, ICloneable, ICollection, IList // TypeDefIndex: 278 +{ + // Fields + private const int DefaultInitialCapacity = 4; // 0x00 + private int _size; // 0x08 + private object[] _items; // 0x0C + private int _version; // 0x10 + private static readonly object[] EmptyArray; // 0x00 + + // Properties + public virtual object Item { get; set; } // 0x1030BA00 0x1030BB60 + public virtual int Count { get; } // 0x100BF0C0 + public virtual int Capacity { get; set; } // 0x10129580 0x1030BAB0 + public virtual bool IsFixedSize { get; } // 0x100EFBF0 + public virtual bool IsReadOnly { get; } // 0x100EFBF0 + public virtual bool IsSynchronized { get; } // 0x100EFBF0 + public virtual object SyncRoot { get; } // 0x100F7810 + + // Methods + public void .ctor(); // 0x1030B7B0 + public void .ctor(ICollection c); // 0x1030B810 + public void .ctor(int capacity); // 0x1030B710 + private void .ctor(int initialCapacity, bool forceZeroSize); // 0x1030B990 + private void .ctor(object[] array, int index, int count); // 0x1030B920 + private static void .cctor(); // 0x1030B6D0 + private void EnsureCapacity(int count); // 0x1030A3D0 + private void Shift(int index, int count); // 0x1030B1E0 + public virtual int Add(object value); // 0x10309CE0 + public virtual void Clear(); // 0x1030A190 + public virtual bool Contains(object item); // 0x1030A290 + internal virtual bool Contains(object value, int startIndex, int count); // 0x1030A260 + public virtual int IndexOf(object value); // 0x1030A940 + public virtual int IndexOf(object value, int startIndex); // 0x1030A7E0 + public virtual int IndexOf(object value, int startIndex, int count); // 0x1030A810 + public virtual int LastIndexOf(object value); // 0x1030AC30 + public virtual int LastIndexOf(object value, int startIndex); // 0x1030AC00 + public virtual int LastIndexOf(object value, int startIndex, int count); // 0x1030AC60 + public virtual void Insert(int index, object value); // 0x1030AB10 + public virtual void InsertRange(int index, ICollection c); // 0x1030A970 + public virtual void Remove(object obj); // 0x1030AF40 + public virtual void RemoveAt(int index); // 0x1030ADE0 + public virtual void RemoveRange(int index, int count); // 0x1030AEC0 + public virtual void Reverse(); // 0x1030B080 + public virtual void Reverse(int index, int count); // 0x1030B0A0 + public virtual void CopyTo(Array array); // 0x1030A3B0 + public virtual void CopyTo(Array array, int arrayIndex); // 0x1030A380 + public virtual void CopyTo(int index, Array array, int arrayIndex, int count); // 0x1030A2C0 + public virtual IEnumerator GetEnumerator(); // 0x1030A640 + public virtual IEnumerator GetEnumerator(int index, int count); // 0x1030A5A0 + public virtual void AddRange(ICollection c); // 0x10309CB0 + public virtual int BinarySearch(object value); // 0x10309D70 + public virtual int BinarySearch(object value, IComparer comparer); // 0x10309E70 + public virtual int BinarySearch(int index, int count, object value, IComparer comparer); // 0x10309F80 + public virtual ArrayList GetRange(int index, int count); // 0x1030A6F0 + public virtual void SetRange(int index, ICollection c); // 0x1030B110 + public virtual void TrimToSize(); // 0x1030B650 + public virtual void Sort(); // 0x1030B380 + public virtual void Sort(IComparer comparer); // 0x1030B2F0 + public virtual void Sort(int index, int count, IComparer comparer); // 0x1030B310 + public virtual object[] ToArray(); // 0x1030B5B0 + public virtual Array ToArray(Type type); // 0x1030B610 + public virtual object Clone(); // 0x1030A1C0 + internal static void CheckRange(int index, int count, int listCount); // 0x1030A080 + internal static void ThrowNewArgumentOutOfRangeException(string name, object actual, string message); // 0x1030B550 + public static ArrayList Adapter(IList list); // 0x10309BC0 + public static ArrayList Synchronized(ArrayList list); // 0x1030B4A0 + public static IList Synchronized(IList list); // 0x1030B3D0 + public static ArrayList ReadOnly(ArrayList list); // 0x1030AD40 + public static IList ReadOnly(IList list); // 0x1030ACA0 + public static ArrayList FixedSize(ArrayList list); // 0x1030A460 + public static IList FixedSize(IList list); // 0x1030A500 + public static ArrayList Repeat(object value, int count); // 0x1030AF80 +} + +// Namespace: +private sealed class ArrayListEnumerator : IEnumerator, ICloneable // TypeDefIndex: 279 +{ + // Fields + private int m_Pos; // 0x08 + private int m_Index; // 0x0C + private int m_Count; // 0x10 + private object m_Current; // 0x14 + private ArrayList m_List; // 0x18 + private int m_ExpectedStateChanges; // 0x1C + + // Properties + public object Current { get; } // 0x10309190 + + // Methods + public void .ctor(ArrayList list); // 0x103090E0 + public void .ctor(ArrayList list, int index, int count); // 0x10309140 + public object Clone(); // 0x10216010 + public bool MoveNext(); // 0x10309020 + public void Reset(); // 0x103090C0 +} + +// Namespace: +private sealed class SimpleEnumerator : IEnumerator, ICloneable // TypeDefIndex: 280 +{ + // Fields + private ArrayList list; // 0x08 + private int index; // 0x0C + private int version; // 0x10 + private object currentElement; // 0x14 + private static object endFlag; // 0x00 + + // Properties + public object Current { get; } // 0x1031ABA0 + + // Methods + public void .ctor(ArrayList list); // 0x1031AB20 + private static void .cctor(); // 0x1031AA50 + public object Clone(); // 0x10216010 + public bool MoveNext(); // 0x1031A8B0 + public void Reset(); // 0x1031A9B0 +} + +// Namespace: +[Serializable] +private sealed class ArrayListAdapter : ArrayList // TypeDefIndex: 281 +{ + // Fields + private IList m_Adaptee; // 0x14 + + // Properties + public override object Item { get; set; } // 0x10308EB0 0x10308FD0 + public override int Count { get; } // 0x10308D70 + public override int Capacity { get; set; } // 0x10308D20 0x10308F50 + public override bool IsFixedSize { get; } // 0x10308DC0 + public override bool IsReadOnly { get; } // 0x10308E10 + public override object SyncRoot { get; } // 0x10308F00 + public override bool IsSynchronized { get; } // 0x10308E60 + + // Methods + public void .ctor(IList adaptee); // 0x10308CA0 + public override int Add(object value); // 0x10306C30 + public override void Clear(); // 0x10307050 + public override bool Contains(object value); // 0x103070F0 + public override int IndexOf(object value); // 0x10307920 + public override int IndexOf(object value, int startIndex); // 0x10307970 + public override int IndexOf(object value, int startIndex, int count); // 0x10307730 + public override int LastIndexOf(object value); // 0x10307EC0 + public override int LastIndexOf(object value, int startIndex); // 0x10307EA0 + public override int LastIndexOf(object value, int startIndex, int count); // 0x10307CE0 + public override void Insert(int index, object value); // 0x10307C90 + public override void InsertRange(int index, ICollection c); // 0x103079D0 + public override void Remove(object value); // 0x103082B0 + public override void RemoveAt(int index); // 0x10308160 + public override void RemoveRange(int index, int count); // 0x103081B0 + public override void Reverse(); // 0x10308300 + public override void Reverse(int index, int count); // 0x10308360 + public override void SetRange(int index, ICollection c); // 0x103085E0 + public override void CopyTo(Array array); // 0x10307140 + public override void CopyTo(Array array, int index); // 0x10307190 + public override void CopyTo(int index, Array array, int arrayIndex, int count); // 0x103071E0 + public override IEnumerator GetEnumerator(); // 0x103074A0 + public override IEnumerator GetEnumerator(int index, int count); // 0x103074F0 + public override void AddRange(ICollection c); // 0x10306A30 + public override int BinarySearch(object value); // 0x10306DD0 + public override int BinarySearch(object value, IComparer comparer); // 0x10306C80 + public override int BinarySearch(int index, int count, object value, IComparer comparer); // 0x10306F20 + public override object Clone(); // 0x103070A0 + public override ArrayList GetRange(int index, int count); // 0x10307680 + public override void TrimToSize(); // 0x100C5530 + public override void Sort(); // 0x103089C0 + public override void Sort(IComparer comparer); // 0x103088C0 + public override void Sort(int index, int count, IComparer comparer); // 0x103087F0 + private static void Swap(IList list, int x, int y); // 0x10308B10 + internal static void QuickSort(IList list, int left, int right, IComparer comparer); // 0x10307F20 + public override object[] ToArray(); // 0x10308BA0 + public override Array ToArray(Type elementType); // 0x10308C20 +} + +// Namespace: +private sealed class EnumeratorWithRange : IEnumerator, ICloneable // TypeDefIndex: 282 +{ + // Fields + private int m_StartIndex; // 0x08 + private int m_Count; // 0x0C + private int m_MaxCount; // 0x10 + private IEnumerator m_Enumerator; // 0x14 + + // Properties + public object Current { get; } // 0x10317F10 + + // Methods + public void .ctor(IEnumerator enumerator, int index, int count); // 0x10317E10 + public object Clone(); // 0x10216010 + public bool MoveNext(); // 0x10317CD0 + public void Reset(); // 0x10317D30 +} + +// Namespace: +[Serializable] +private class ArrayListWrapper : ArrayList // TypeDefIndex: 283 +{ + // Fields + protected ArrayList m_InnerArrayList; // 0x14 + + // Properties + public override object Item { get; set; } // 0x10309AF0 0x10309B80 + public override int Count { get; } // 0x10309A30 + public override int Capacity { get; set; } // 0x10309A00 0x10309B50 + public override bool IsFixedSize { get; } // 0x10309A60 + public override bool IsReadOnly { get; } // 0x10309A90 + public override bool IsSynchronized { get; } // 0x10309AC0 + public override object SyncRoot { get; } // 0x10309B20 + + // Methods + public void .ctor(ArrayList innerArrayList); // 0x10309960 + public override int Add(object value); // 0x10309230 + public override void Clear(); // 0x10309310 + public override bool Contains(object value); // 0x10309370 + public override int IndexOf(object value); // 0x10309540 + public override int IndexOf(object value, int startIndex); // 0x10309570 + public override int IndexOf(object value, int startIndex, int count); // 0x10309500 + public override int LastIndexOf(object value); // 0x10309670 + public override int LastIndexOf(object value, int startIndex); // 0x103096A0 + public override int LastIndexOf(object value, int startIndex, int count); // 0x10309630 + public override void Insert(int index, object value); // 0x103095F0 + public override void InsertRange(int index, ICollection c); // 0x103095B0 + public override void Remove(object value); // 0x10309750 + public override void RemoveAt(int index); // 0x103096E0 + public override void RemoveRange(int index, int count); // 0x10309710 + public override void Reverse(); // 0x103097C0 + public override void Reverse(int index, int count); // 0x10309780 + public override void SetRange(int index, ICollection c); // 0x103097F0 + public override void CopyTo(Array array); // 0x103093E0 + public override void CopyTo(Array array, int index); // 0x10309410 + public override void CopyTo(int index, Array array, int arrayIndex, int count); // 0x103093A0 + public override IEnumerator GetEnumerator(); // 0x10309450 + public override IEnumerator GetEnumerator(int index, int count); // 0x10309480 + public override void AddRange(ICollection c); // 0x10309200 + public override int BinarySearch(object value); // 0x103092E0 + public override int BinarySearch(object value, IComparer comparer); // 0x10309260 + public override int BinarySearch(int index, int count, object value, IComparer comparer); // 0x103092A0 + public override object Clone(); // 0x10309340 + public override ArrayList GetRange(int index, int count); // 0x103094C0 + public override void TrimToSize(); // 0x10309930 + public override void Sort(); // 0x103098A0 + public override void Sort(IComparer comparer); // 0x10309830 + public override void Sort(int index, int count, IComparer comparer); // 0x10309860 + public override object[] ToArray(); // 0x103098D0 + public override Array ToArray(Type elementType); // 0x10309900 +} + +// Namespace: +[Serializable] +private sealed class SynchronizedArrayListWrapper : ArrayListWrapper // TypeDefIndex: 284 +{ + // Fields + private object m_SyncRoot; // 0x18 + + // Properties + public override object Item { get; set; } // 0x1031D2E0 0x1031D4C0 + public override int Count { get; } // 0x1031D010 + public override int Capacity { get; set; } // 0x1031CF20 0x1031D3E0 + public override bool IsFixedSize { get; } // 0x1031D100 + public override bool IsReadOnly { get; } // 0x1031D1F0 + public override bool IsSynchronized { get; } // 0x100E5880 + public override object SyncRoot { get; } // 0x100EE580 + + // Methods + internal void .ctor(ArrayList innerArrayList); // 0x1031CEE0 + public override int Add(object value); // 0x1031B080 + public override void Clear(); // 0x1031B480 + public override bool Contains(object value); // 0x1031B650 + public override int IndexOf(object value); // 0x1031BE00 + public override int IndexOf(object value, int startIndex); // 0x1031BF00 + public override int IndexOf(object value, int startIndex, int count); // 0x1031BD00 + public override int LastIndexOf(object value); // 0x1031C2E0 + public override int LastIndexOf(object value, int startIndex); // 0x1031C1E0 + public override int LastIndexOf(object value, int startIndex, int count); // 0x1031C3E0 + public override void Insert(int index, object value); // 0x1031C0F0 + public override void InsertRange(int index, ICollection c); // 0x1031C000 + public override void Remove(object value); // 0x1031C6B0 + public override void RemoveAt(int index); // 0x1031C4E0 + public override void RemoveRange(int index, int count); // 0x1031C5C0 + public override void Reverse(); // 0x1031C790 + public override void Reverse(int index, int count); // 0x1031C870 + public override void CopyTo(Array array); // 0x1031B750 + public override void CopyTo(Array array, int index); // 0x1031B920 + public override void CopyTo(int index, Array array, int arrayIndex, int count); // 0x1031B830 + public override IEnumerator GetEnumerator(); // 0x1031BB10 + public override IEnumerator GetEnumerator(int index, int count); // 0x1031BA10 + public override void AddRange(ICollection c); // 0x1031AFA0 + public override int BinarySearch(object value); // 0x1031B180 + public override int BinarySearch(object value, IComparer comparer); // 0x1031B280 + public override int BinarySearch(int index, int count, object value, IComparer comparer); // 0x1031B380 + public override object Clone(); // 0x1031B560 + public override ArrayList GetRange(int index, int count); // 0x1031BC00 + public override void TrimToSize(); // 0x1031CE00 + public override void Sort(); // 0x1031C960 + public override void Sort(IComparer comparer); // 0x1031CA40 + public override void Sort(int index, int count, IComparer comparer); // 0x1031CB20 + public override object[] ToArray(); // 0x1031CC10 + public override Array ToArray(Type elementType); // 0x1031CD00 +} + +// Namespace: +[Serializable] +private class FixedSizeArrayListWrapper : ArrayListWrapper // TypeDefIndex: 285 +{ + // Properties + protected virtual string ErrorMessage { get; } // 0x103182D0 + public override int Capacity { get; set; } // 0x10309A00 0x10318300 + public override bool IsFixedSize { get; } // 0x100E5880 + + // Methods + public void .ctor(ArrayList innerList); // 0x103182C0 + public override int Add(object value); // 0x10317FC0 + public override void AddRange(ICollection c); // 0x10317F60 + public override void Clear(); // 0x10318020 + public override void Insert(int index, object value); // 0x103180E0 + public override void InsertRange(int index, ICollection c); // 0x10318080 + public override void Remove(object value); // 0x10318200 + public override void RemoveAt(int index); // 0x10318140 + public override void RemoveRange(int index, int count); // 0x103181A0 + public override void TrimToSize(); // 0x10318260 +} + +// Namespace: +[Serializable] +private sealed class ReadOnlyArrayListWrapper : FixedSizeArrayListWrapper // TypeDefIndex: 286 +{ + // Properties + protected override string ErrorMessage { get; } // 0x1031A740 + public override bool IsReadOnly { get; } // 0x100E5880 + public override object Item { get; set; } // 0x10309AF0 0x1031A770 + + // Methods + public void .ctor(ArrayList innerArrayList); // 0x103182C0 + public override void Reverse(); // 0x1031A500 + public override void Reverse(int index, int count); // 0x1031A560 + public override void SetRange(int index, ICollection c); // 0x1031A5C0 + public override void Sort(); // 0x1031A6E0 + public override void Sort(IComparer comparer); // 0x1031A680 + public override void Sort(int index, int count, IComparer comparer); // 0x1031A620 +} + +// Namespace: +[Serializable] +private sealed class RangedArrayList : ArrayListWrapper // TypeDefIndex: 287 +{ + // Fields + private int m_InnerIndex; // 0x18 + private int m_InnerCount; // 0x1C + private int m_InnerStateChanges; // 0x20 + + // Properties + public override bool IsSynchronized { get; } // 0x100EFBF0 + public override object Item { get; set; } // 0x1031A380 0x1031A470 + public override int Count { get; } // 0x1031A360 + public override int Capacity { get; set; } // 0x10309A00 0x1031A410 + + // Methods + public void .ctor(ArrayList innerList, int index, int count); // 0x1031A320 + private void VerifyStateChanges(); // 0x1031A2B0 + public override int Add(object value); // 0x10318B00 + public override void Clear(); // 0x10318C80 + public override bool Contains(object value); // 0x10318DC0 + public override int IndexOf(object value); // 0x103192C0 + public override int IndexOf(object value, int startIndex); // 0x10319160 + public override int IndexOf(object value, int startIndex, int count); // 0x10319410 + public override int LastIndexOf(object value); // 0x103198F0 + public override int LastIndexOf(object value, int startIndex); // 0x10319720 + public override int LastIndexOf(object value, int startIndex, int count); // 0x103197E0 + public override void Insert(int index, object value); // 0x10319650 + public override void InsertRange(int index, ICollection c); // 0x10319560 + public override void Remove(object value); // 0x10319B30 + public override void RemoveAt(int index); // 0x103199B0 + public override void RemoveRange(int index, int count); // 0x10319A80 + public override void Reverse(); // 0x10319D50 + public override void Reverse(int index, int count); // 0x10319DF0 + public override void SetRange(int index, ICollection c); // 0x10319E90 + public override void CopyTo(Array array); // 0x10318E90 + public override void CopyTo(Array array, int index); // 0x10318E00 + public override void CopyTo(int index, Array array, int arrayIndex, int count); // 0x10318F20 + public override IEnumerator GetEnumerator(); // 0x10318FB0 + public override IEnumerator GetEnumerator(int index, int count); // 0x10319040 + public override void AddRange(ICollection c); // 0x10318A70 + public override int BinarySearch(object value); // 0x10318B60 + public override int BinarySearch(object value, IComparer comparer); // 0x10318BD0 + public override int BinarySearch(int index, int count, object value, IComparer comparer); // 0x10318BF0 + public override object Clone(); // 0x10318CE0 + public override ArrayList GetRange(int index, int count); // 0x103190D0 + public override void TrimToSize(); // 0x1031A260 + public override void Sort(); // 0x1031A0B0 + public override void Sort(IComparer comparer); // 0x10319F60 + public override void Sort(int index, int count, IComparer comparer); // 0x1031A000 + public override object[] ToArray(); // 0x1031A1F0 + public override Array ToArray(Type elementType); // 0x1031A1A0 +} + +// Namespace: +[Serializable] +private sealed class SynchronizedListWrapper : ListWrapper // TypeDefIndex: 288 +{ + // Fields + private object m_SyncRoot; // 0x0C + + // Properties + public override int Count { get; } // 0x1031DF50 + public override bool IsSynchronized { get; } // 0x100E5880 + public override object SyncRoot { get; } // 0x1031E390 + public override bool IsFixedSize { get; } // 0x1031E060 + public override bool IsReadOnly { get; } // 0x1031E170 + public override object Item { get; set; } // 0x1031E280 0x1031E4A0 + + // Methods + public void .ctor(IList innerList); // 0x1031DEF0 + public override int Add(object value); // 0x1031D5B0 + public override void Clear(); // 0x1031D6C0 + public override bool Contains(object value); // 0x1031D7C0 + public override int IndexOf(object value); // 0x1031DAE0 + public override void Insert(int index, object value); // 0x1031DBF0 + public override void Remove(object value); // 0x1031DDF0 + public override void RemoveAt(int index); // 0x1031DCF0 + public override void CopyTo(Array array, int index); // 0x1031D8D0 + public override IEnumerator GetEnumerator(); // 0x1031D9D0 +} + +// Namespace: +[Serializable] +private class FixedSizeListWrapper : ListWrapper // TypeDefIndex: 289 +{ + // Properties + protected virtual string ErrorMessage { get; } // 0x10318540 + public override bool IsFixedSize { get; } // 0x100E5880 + + // Methods + public void .ctor(IList innerList); // 0x10113500 + public override int Add(object value); // 0x10318360 + public override void Clear(); // 0x103183C0 + public override void Insert(int index, object value); // 0x10318420 + public override void Remove(object value); // 0x103184E0 + public override void RemoveAt(int index); // 0x10318480 +} + +// Namespace: +[Serializable] +private sealed class ReadOnlyListWrapper : FixedSizeListWrapper // TypeDefIndex: 290 +{ + // Properties + protected override string ErrorMessage { get; } // 0x1031A7D0 + public override bool IsReadOnly { get; } // 0x100E5880 + public override object Item { get; set; } // 0x1031A800 0x1031A850 + + // Methods + public void .ctor(IList innerList); // 0x10113500 +} + +// Namespace: +[Serializable] +private class ListWrapper : IEnumerable, ICollection, IList // TypeDefIndex: 291 +{ + // Fields + protected IList m_InnerList; // 0x08 + + // Properties + public virtual object Item { get; set; } // 0x10318980 0x10318A20 + public virtual int Count { get; } // 0x10318840 + public virtual bool IsSynchronized { get; } // 0x10318930 + public virtual object SyncRoot { get; } // 0x103189D0 + public virtual bool IsFixedSize { get; } // 0x10318890 + public virtual bool IsReadOnly { get; } // 0x103188E0 + + // Methods + public void .ctor(IList innerList); // 0x10113500 + public virtual int Add(object value); // 0x10318570 + public virtual void Clear(); // 0x103185C0 + public virtual bool Contains(object value); // 0x10318610 + public virtual int IndexOf(object value); // 0x10318700 + public virtual void Insert(int index, object value); // 0x10318750 + public virtual void Remove(object value); // 0x103187F0 + public virtual void RemoveAt(int index); // 0x103187A0 + public virtual void CopyTo(Array array, int index); // 0x10318660 + public virtual IEnumerator GetEnumerator(); // 0x103186B0 +} + +// Namespace: System.Collections +[Serializable] +public sealed class BitArray : IEnumerable, ICloneable, ICollection // TypeDefIndex: 292 +{ + // Fields + private int[] m_array; // 0x08 + private int m_length; // 0x0C + private int _version; // 0x10 + + // Properties + public int Count { get; } // 0x100C5B30 + public bool IsReadOnly { get; } // 0x100EFBF0 + public bool IsSynchronized { get; } // 0x100EFBF0 + public bool Item { get; set; } // 0x10312A80 0x10312C90 + public int Length { get; set; } // 0x100C5B30 0x10313520 + public object SyncRoot { get; } // 0x100F7810 + + // Methods + public void .ctor(BitArray bits); // 0x103131E0 + public void .ctor(bool[] values); // 0x10312E00 + public void .ctor(byte[] bytes); // 0x10312F80 + public void .ctor(int[] values); // 0x10313140 + public void .ctor(int length); // 0x103130B0 + public void .ctor(int length, bool defaultValue); // 0x103132C0 + private void .ctor(int[] array, int length); // 0x100F97B0 + private byte getByte(int byteIndex); // 0x10313430 + private void setByte(int byteIndex, byte value); // 0x10313490 + private void checkOperand(BitArray operand); // 0x103133A0 + public object Clone(); // 0x103125D0 + public void CopyTo(Array array, int index); // 0x103126E0 + public BitArray Not(); // 0x10312B20 + public BitArray And(BitArray value); // 0x10312540 + public BitArray Or(BitArray value); // 0x10312B80 + public BitArray Xor(BitArray value); // 0x10312D70 + public bool Get(int index); // 0x10312A80 + public void Set(int index, bool value); // 0x10312C90 + public void SetAll(bool value); // 0x10312C10 + public IEnumerator GetEnumerator(); // 0x10312A30 +} + +// Namespace: +[Serializable] +private class BitArrayEnumerator : IEnumerator, ICloneable // TypeDefIndex: 293 +{ + // Fields + private BitArray _bitArray; // 0x08 + private bool _current; // 0x0C + private int _index; // 0x10 + private int _version; // 0x14 + + // Properties + public object Current { get; } // 0x10216150 + + // Methods + public void .ctor(BitArray ba); // 0x102160A0 + public object Clone(); // 0x10216010 + public bool MoveNext(); // 0x10216020 + public void Reset(); // 0x10216080 + private void checkVersion(); // 0x102160E0 +} + +// Namespace: System.Collections +[Serializable] +public class CaseInsensitiveComparer : IComparer // TypeDefIndex: 294 +{ + // Fields + private static CaseInsensitiveComparer defaultComparer; // 0x00 + private static CaseInsensitiveComparer defaultInvariantComparer; // 0x04 + private CultureInfo culture; // 0x08 + + // Properties + public static CaseInsensitiveComparer Default { get; } // 0x102166A0 + public static CaseInsensitiveComparer DefaultInvariant { get; } // 0x10216650 + + // Methods + public void .ctor(); // 0x102165F0 + private void .ctor(bool invariant); // 0x101AA300 + public void .ctor(CultureInfo culture); // 0x10216510 + private static void .cctor(); // 0x10216460 + public int Compare(object a, object b); // 0x102161F0 +} + +// Namespace: System.Collections +[Serializable] +public class CaseInsensitiveHashCodeProvider : IHashCodeProvider // TypeDefIndex: 295 +{ + // Fields + private static readonly CaseInsensitiveHashCodeProvider singletonInvariant; // 0x00 + private static CaseInsensitiveHashCodeProvider singleton; // 0x04 + private static readonly object sync; // 0x08 + private TextInfo m_text; // 0x08 + + // Properties + public static CaseInsensitiveHashCodeProvider Default { get; } // 0x10216D90 + public static CaseInsensitiveHashCodeProvider DefaultInvariant { get; } // 0x10216D40 + + // Methods + public void .ctor(); // 0x10216B70 + public void .ctor(CultureInfo culture); // 0x10216C60 + private static void .cctor(); // 0x10216A10 + private static bool AreEqual(CultureInfo a, CultureInfo b); // 0x10216780 + private static bool AreEqual(TextInfo info, CultureInfo culture); // 0x102166F0 + public int GetHashCode(object obj); // 0x10216820 +} + +// Namespace: System.Collections +[Serializable] +public abstract class CollectionBase : IEnumerable, ICollection, IList // TypeDefIndex: 296 +{ + // Fields + private ArrayList list; // 0x08 + + // Properties + private object System.Collections.ICollection.SyncRoot { get; } // 0x102173C0 + private bool System.Collections.ICollection.IsSynchronized { get; } // 0x10217350 + private bool System.Collections.IList.IsFixedSize { get; } // 0x102179E0 + private bool System.Collections.IList.IsReadOnly { get; } // 0x10217A50 + private object System.Collections.IList.Item { get; set; } // 0x10217AC0 0x10217B30 + public int Count { get; } // 0x10217E10 + public int Capacity { get; set; } // 0x10217DA0 0x10217ED0 + protected ArrayList InnerList { get; } // 0x10217E80 + protected IList List { get; } // 0x100F7810 + + // Methods + protected void .ctor(); // 0x100BF000 + protected void .ctor(int capacity); // 0x10217D50 + private void System.Collections.ICollection.CopyTo(Array array, int index); // 0x102172D0 + private int System.Collections.IList.Add(object value); // 0x10217430 + private bool System.Collections.IList.Contains(object value); // 0x10217610 + private int System.Collections.IList.IndexOf(object value); // 0x10217680 + private void System.Collections.IList.Insert(int index, object value); // 0x102176F0 + private void System.Collections.IList.Remove(object value); // 0x10217870 + public IEnumerator GetEnumerator(); // 0x102170F0 + public void Clear(); // 0x10217050 + public void RemoveAt(int index); // 0x102171C0 + protected virtual void OnClear(); // 0x100C5530 + protected virtual void OnClearComplete(); // 0x100C5530 + protected virtual void OnInsert(int index, object value); // 0x100C5530 + protected virtual void OnInsertComplete(int index, object value); // 0x100C5530 + protected virtual void OnRemove(int index, object value); // 0x100C5530 + protected virtual void OnRemoveComplete(int index, object value); // 0x100C5530 + protected virtual void OnSet(int index, object oldValue, object newValue); // 0x100C5530 + protected virtual void OnSetComplete(int index, object oldValue, object newValue); // 0x100C5530 + protected virtual void OnValidate(object value); // 0x10217160 +} + +// Namespace: System.Collections +internal sealed class CollectionDebuggerView // TypeDefIndex: 297 +{ + // Fields + private readonly ICollection c; // 0x08 + + // Properties + public object[] Items { get; } // 0x10217F40 + + // Methods + public void .ctor(ICollection col); // 0x10113500 +} + +// Namespace: System.Collections +[Serializable] +public sealed class Comparer : ISerializable, IComparer // TypeDefIndex: 298 +{ + // Fields + public static readonly Comparer Default; // 0x00 + public static readonly Comparer DefaultInvariant; // 0x04 + private CompareInfo m_compareInfo; // 0x08 + + // Methods + private void .ctor(); // 0x100BF000 + public void .ctor(CultureInfo culture); // 0x10218330 + private static void .cctor(); // 0x10218230 + public int Compare(object a, object b); // 0x10218010 + public void GetObjectData(SerializationInfo info, StreamingContext context); // 0x10218190 +} + +// Namespace: System.Collections +[Serializable] +public abstract class DictionaryBase : IEnumerable, ICollection, IDictionary // TypeDefIndex: 299 +{ + // Fields + private Hashtable hashtable; // 0x08 + + // Properties + private bool System.Collections.IDictionary.IsFixedSize { get; } // 0x100EFBF0 + private bool System.Collections.IDictionary.IsReadOnly { get; } // 0x100EFBF0 + private object System.Collections.IDictionary.Item { get; set; } // 0x102241A0 0x102241F0 + private ICollection System.Collections.IDictionary.Keys { get; } // 0x1019CEC0 + private ICollection System.Collections.IDictionary.Values { get; } // 0x1019CEF0 + private bool System.Collections.ICollection.IsSynchronized { get; } // 0x10223E70 + private object System.Collections.ICollection.SyncRoot { get; } // 0x10223EA0 + public int Count { get; } // 0x101273C0 + protected IDictionary Dictionary { get; } // 0x100F7810 + protected Hashtable InnerHashtable { get; } // 0x100BF0C0 + + // Methods + protected void .ctor(); // 0x10224360 + private void System.Collections.IDictionary.Add(object key, object value); // 0x10223ED0 + private void System.Collections.IDictionary.Remove(object key); // 0x10224010 + private bool System.Collections.IDictionary.Contains(object key); // 0x1019CD20 + private IEnumerator System.Collections.IEnumerable.GetEnumerator(); // 0x1019CDA0 + public void Clear(); // 0x10223AB0 + public void CopyTo(Array array, int index); // 0x10223B10 + private void DoCopy(Array array, int index); // 0x10223C50 + public IDictionaryEnumerator GetEnumerator(); // 0x1019CDA0 + protected virtual void OnClear(); // 0x100C5530 + protected virtual void OnClearComplete(); // 0x100C5530 + protected virtual object OnGet(object key, object currentValue); // 0x10223E60 + protected virtual void OnInsert(object key, object value); // 0x100C5530 + protected virtual void OnInsertComplete(object key, object value); // 0x100C5530 + protected virtual void OnSet(object key, object oldValue, object newValue); // 0x100C5530 + protected virtual void OnSetComplete(object key, object oldValue, object newValue); // 0x100C5530 + protected virtual void OnRemove(object key, object value); // 0x100C5530 + protected virtual void OnRemoveComplete(object key, object value); // 0x100C5530 + protected virtual void OnValidate(object key, object value); // 0x100C5530 +} + +// Namespace: System.Collections +[Serializable] +public struct DictionaryEntry // TypeDefIndex: 300 +{ + // Fields + private object _key; // 0x08 + private object _value; // 0x0C + + // Properties + public object Key { get; set; } // 0x10003A80 0x10005950 + public object Value { get; set; } // 0x10003A90 0x10018AB0 + + // Methods + public void .ctor(object key, object value); // 0x100075A0 +} + +// Namespace: System.Collections +[Serializable] +public class Hashtable : IEnumerable, ICloneable, ISerializable, ICollection, IDictionary, IDeserializationCallback // TypeDefIndex: 301 +{ + // Fields + private const int CHAIN_MARKER = -2147483648; // 0x00 + private int inUse; // 0x08 + private int modificationCount; // 0x0C + private float loadFactor; // 0x10 + private Slot[] table; // 0x14 + private int[] hashes; // 0x18 + private int threshold; // 0x1C + private HashKeys hashKeys; // 0x20 + private HashValues hashValues; // 0x24 + private IHashCodeProvider hcpRef; // 0x28 + private IComparer comparerRef; // 0x2C + private SerializationInfo serializationInfo; // 0x30 + private IEqualityComparer equalityComparer; // 0x34 + private static readonly int[] primeTbl; // 0x00 + + // Properties + protected IComparer comparer { get; set; } // 0x100EB200 0x100EB260 + protected IHashCodeProvider hcp { get; set; } // 0x100EB040 0x100EB250 + protected IEqualityComparer EqualityComparer { get; } // 0x100E9ED0 + public virtual int Count { get; } // 0x100BF0C0 + public virtual bool IsSynchronized { get; } // 0x100EFBF0 + public virtual object SyncRoot { get; } // 0x100F7810 + public virtual bool IsFixedSize { get; } // 0x100EFBF0 + public virtual bool IsReadOnly { get; } // 0x100EFBF0 + public virtual ICollection Keys { get; } // 0x102279E0 + public virtual ICollection Values { get; } // 0x10227A60 + public virtual object Item { get; set; } // 0x10227880 0x10227AE0 + + // Methods + public void .ctor(); // 0x10227250 + public void .ctor(int capacity, float loadFactor, IHashCodeProvider hcp, IComparer comparer); // 0x102276B0 + public void .ctor(int capacity, float loadFactor); // 0x10227850 + public void .ctor(int capacity); // 0x10227680 + internal void .ctor(Hashtable source); // 0x10227300 + public void .ctor(int capacity, IHashCodeProvider hcp, IComparer comparer); // 0x10227270 + public void .ctor(IDictionary d, float loadFactor, IHashCodeProvider hcp, IComparer comparer); // 0x10227420 + public void .ctor(IDictionary d, float loadFactor); // 0x102271A0 + public void .ctor(IDictionary d); // 0x102273F0 + public void .ctor(IDictionary d, IHashCodeProvider hcp, IComparer comparer); // 0x102272D0 + public void .ctor(IHashCodeProvider hcp, IComparer comparer); // 0x10227650 + public void .ctor(SerializationInfo info, StreamingContext context); // 0x10227200 + public void .ctor(IDictionary d, IEqualityComparer equalityComparer); // 0x10227220 + public void .ctor(IDictionary d, float loadFactor, IEqualityComparer equalityComparer); // 0x102271D0 + public void .ctor(IEqualityComparer equalityComparer); // 0x102272A0 + public void .ctor(int capacity, IEqualityComparer equalityComparer); // 0x10227620 + public void .ctor(int capacity, float loadFactor, IEqualityComparer equalityComparer); // 0x10227170 + private static void .cctor(); // 0x10227120 + private IEnumerator System.Collections.IEnumerable.GetEnumerator(); // 0x10226EB0 + public virtual void CopyTo(Array array, int arrayIndex); // 0x10225B70 + public virtual void Add(object key, object value); // 0x102255F0 + public virtual void Clear(); // 0x102256E0 + public virtual bool Contains(object key); // 0x10225A10 + public virtual IDictionaryEnumerator GetEnumerator(); // 0x10225EB0 + public virtual void Remove(object key); // 0x10226CB0 + public virtual bool ContainsKey(object key); // 0x102258A0 + public virtual bool ContainsValue(object value); // 0x102258C0 + public virtual object Clone(); // 0x10225780 + public virtual void GetObjectData(SerializationInfo info, StreamingContext context); // 0x10225FD0 + public virtual void OnDeserialization(object sender); // 0x10226250 + public static Hashtable Synchronized(Hashtable table); // 0x10226E30 + protected virtual int GetHash(object key); // 0x10225F40 + protected virtual bool KeyEquals(object item, object key); // 0x10226140 + private void AdjustThreshold(); // 0x10225610 + private void SetTable(Slot[] table, int[] hashes); // 0x10226DA0 + private int Find(object key); // 0x10225D60 + private void Rehash(); // 0x10226AE0 + private void PutImpl(object key, object value, bool overwrite); // 0x102267E0 + private void CopyToArray(Array arr, int i, EnumeratorMode mode); // 0x10225A30 + internal static bool TestPrime(int x); // 0x10226F40 + internal static int CalcPrime(int x); // 0x10225650 + internal static int ToPrime(int x); // 0x10226FA0 +} + +// Namespace: +[Serializable] +internal struct Slot // TypeDefIndex: 302 +{ + // Fields + internal object key; // 0x08 + internal object value; // 0x0C + +} + +// Namespace: +[Serializable] +internal class KeyMarker // TypeDefIndex: 303 +{ + // Fields + public static readonly KeyMarker Removed; // 0x00 + + // Methods + public void .ctor(); // 0x100BF000 + private static void .cctor(); // 0x10227B00 +} + +// Namespace: +private enum EnumeratorMode // TypeDefIndex: 304 +{ + KEY_MODE = 0, + VALUE_MODE = 1, + ENTRY_MODE = 2 +} + +// Namespace: +[Serializable] +private sealed class Enumerator : IEnumerator, IDictionaryEnumerator // TypeDefIndex: 305 +{ + // Fields + private Hashtable host; // 0x08 + private int stamp; // 0x0C + private int pos; // 0x10 + private int size; // 0x14 + private EnumeratorMode mode; // 0x18 + private object currentKey; // 0x1C + private object currentValue; // 0x20 + private static readonly string xstr; // 0x00 + + // Properties + public DictionaryEntry Entry { get; } // 0x10224E80 + public object Key { get; } // 0x10224F90 + public object Value { get; } // 0x10225140 + public object Current { get; } // 0x10224DB0 + + // Methods + public void .ctor(Hashtable host, EnumeratorMode mode); // 0x10224AC0 + public void .ctor(Hashtable host); // 0x10224A10 + private static void .cctor(); // 0x102248D0 + private void FailFast(); // 0x10224450 + public void Reset(); // 0x10224800 + public bool MoveNext(); // 0x102245E0 +} + +// Namespace: +[Serializable] +private class HashKeys : IEnumerable, ICollection // TypeDefIndex: 306 +{ + // Fields + private Hashtable host; // 0x08 + + // Properties + public virtual int Count { get; } // 0x101273C0 + public virtual bool IsSynchronized { get; } // 0x10223E70 + public virtual object SyncRoot { get; } // 0x10223EA0 + + // Methods + public void .ctor(Hashtable host); // 0x10225360 + public virtual void CopyTo(Array array, int arrayIndex); // 0x102251B0 + public virtual IEnumerator GetEnumerator(); // 0x102252D0 +} + +// Namespace: +[Serializable] +private class HashValues : IEnumerable, ICollection // TypeDefIndex: 307 +{ + // Fields + private Hashtable host; // 0x08 + + // Properties + public virtual int Count { get; } // 0x101273C0 + public virtual bool IsSynchronized { get; } // 0x10223E70 + public virtual object SyncRoot { get; } // 0x10223EA0 + + // Methods + public void .ctor(Hashtable host); // 0x10225580 + public virtual void CopyTo(Array array, int arrayIndex); // 0x102253D0 + public virtual IEnumerator GetEnumerator(); // 0x102254F0 +} + +// Namespace: +[Serializable] +private class SyncHashtable : Hashtable, IEnumerable // TypeDefIndex: 308 +{ + // Fields + private Hashtable host; // 0x38 + + // Properties + public override int Count { get; } // 0x1022C240 + public override bool IsSynchronized { get; } // 0x100E5880 + public override object SyncRoot { get; } // 0x1022C400 + public override bool IsFixedSize { get; } // 0x1022C270 + public override bool IsReadOnly { get; } // 0x1022C2A0 + public override ICollection Keys { get; } // 0x1022C300 + public override ICollection Values { get; } // 0x1022C430 + public override object Item { get; set; } // 0x1022C2D0 0x1022C530 + + // Methods + public void .ctor(Hashtable host); // 0x1022C0B0 + internal void .ctor(SerializationInfo info, StreamingContext context); // 0x1022C140 + private IEnumerator System.Collections.IEnumerable.GetEnumerator(); // 0x1022C020 + public override void GetObjectData(SerializationInfo info, StreamingContext context); // 0x1022BEE0 + public override void CopyTo(Array array, int arrayIndex); // 0x1022BE10 + public override void Add(object key, object value); // 0x1022B9F0 + public override void Clear(); // 0x1022BAF0 + public override bool Contains(object key); // 0x1022BDE0 + public override IDictionaryEnumerator GetEnumerator(); // 0x1022BE50 + public override void Remove(object key); // 0x1022BF30 + public override bool ContainsKey(object key); // 0x1022BD80 + public override bool ContainsValue(object value); // 0x1022BDB0 + public override object Clone(); // 0x1022BBE0 +} + +// Namespace: System.Collections +public interface IComparer // TypeDefIndex: 309 +{ + // Methods + int Compare(object x, object y); +} + +// Namespace: System.Collections +public interface IDictionary : IEnumerable, ICollection // TypeDefIndex: 310 +{ + // Properties + bool IsFixedSize { get; } + bool IsReadOnly { get; } + object Item { get; set; } + ICollection Keys { get; } + ICollection Values { get; } + + // Methods + void Add(object key, object value); + void Clear(); + bool Contains(object key); + IDictionaryEnumerator GetEnumerator(); + void Remove(object key); +} + +// Namespace: System.Collections +public interface IDictionaryEnumerator : IEnumerator // TypeDefIndex: 311 +{ + // Properties + DictionaryEntry Entry { get; } + object Key { get; } + object Value { get; } + +} + +// Namespace: System.Collections +public interface IEqualityComparer // TypeDefIndex: 312 +{ + // Methods + bool Equals(object x, object y); + int GetHashCode(object obj); +} + +// Namespace: System.Collections +public interface IHashCodeProvider // TypeDefIndex: 313 +{ + // Methods + int GetHashCode(object obj); +} + +// Namespace: System.Collections +[Serializable] +public class Queue : IEnumerable, ICloneable, ICollection // TypeDefIndex: 314 +{ + // Fields + private object[] _array; // 0x08 + private int _head; // 0x0C + private int _size; // 0x10 + private int _tail; // 0x14 + private int _growFactor; // 0x18 + private int _version; // 0x1C + + // Properties + public virtual int Count { get; } // 0x100BFC20 + public virtual bool IsSynchronized { get; } // 0x100EFBF0 + public virtual object SyncRoot { get; } // 0x100F7810 + + // Methods + public void .ctor(); // 0x10228E70 + public void .ctor(int capacity); // 0x10228EC0 + public void .ctor(ICollection col); // 0x10228C70 + public void .ctor(int capacity, float growFactor); // 0x10228EE0 + public virtual void CopyTo(Array array, int index); // 0x102286D0 + public virtual IEnumerator GetEnumerator(); // 0x10228A10 + public virtual object Clone(); // 0x10228580 + public virtual void Clear(); // 0x10228510 + public virtual bool Contains(object obj); // 0x10228620 + public virtual object Dequeue(); // 0x10228840 + public virtual void Enqueue(object obj); // 0x102288F0 + public virtual object Peek(); // 0x10228A70 + public static Queue Synchronized(Queue queue); // 0x10228AF0 + public virtual object[] ToArray(); // 0x10228BA0 + public virtual void TrimToSize(); // 0x10228C00 + private void grow(); // 0x10228FB0 +} + +// Namespace: +private class SyncQueue : Queue // TypeDefIndex: 315 +{ + // Fields + private Queue queue; // 0x20 + + // Properties + public override int Count { get; } // 0x1022D070 + public override bool IsSynchronized { get; } // 0x100E5880 + public override object SyncRoot { get; } // 0x1022D160 + + // Methods + internal void .ctor(Queue queue); // 0x1022D020 + public override void CopyTo(Array array, int index); // 0x1022C9C0 + public override IEnumerator GetEnumerator(); // 0x1022CC70 + public override object Clone(); // 0x1022C710 + public override void Clear(); // 0x1022C630 + public override void TrimToSize(); // 0x1022CF40 + public override bool Contains(object obj); // 0x1022C8C0 + public override object Dequeue(); // 0x1022CAA0 + public override void Enqueue(object obj); // 0x1022CB90 + public override object Peek(); // 0x1022CD60 + public override object[] ToArray(); // 0x1022CE50 +} + +// Namespace: +[Serializable] +private class QueueEnumerator : IEnumerator, ICloneable // TypeDefIndex: 316 +{ + // Fields + private Queue queue; // 0x08 + private int _version; // 0x0C + private int current; // 0x10 + + // Properties + public virtual object Current { get; } // 0x10228470 + + // Methods + internal void .ctor(Queue q); // 0x10228430 + public object Clone(); // 0x102282B0 + public virtual bool MoveNext(); // 0x10228330 + public virtual void Reset(); // 0x102283C0 +} + +// Namespace: System.Collections +[Serializable] +public abstract class ReadOnlyCollectionBase : IEnumerable, ICollection // TypeDefIndex: 317 +{ + // Fields + private ArrayList list; // 0x08 + + // Properties + private object System.Collections.ICollection.SyncRoot { get; } // 0x1019CEF0 + private bool System.Collections.ICollection.IsSynchronized { get; } // 0x1019CEC0 + public virtual int Count { get; } // 0x101273C0 + protected ArrayList InnerList { get; } // 0x100BF0C0 + + // Methods + protected void .ctor(); // 0x10229150 + private IEnumerator System.Collections.IEnumerable.GetEnumerator(); // 0x1020EED0 + private void System.Collections.ICollection.CopyTo(Array array, int index); // 0x10229070 + public virtual IEnumerator GetEnumerator(); // 0x10229040 +} + +// Namespace: System.Collections +[Serializable] +public class SortedList : IEnumerable, ICloneable, ICollection, IDictionary // TypeDefIndex: 318 +{ + // Fields + private static readonly int INITIAL_SIZE; // 0x00 + private int inUse; // 0x08 + private int modificationCount; // 0x0C + private Slot[] table; // 0x10 + private IComparer comparer; // 0x14 + private int defaultCapacity; // 0x18 + + // Properties + public virtual int Count { get; } // 0x100BF0C0 + public virtual bool IsSynchronized { get; } // 0x100EFBF0 + public virtual object SyncRoot { get; } // 0x100F7810 + public virtual bool IsFixedSize { get; } // 0x100EFBF0 + public virtual bool IsReadOnly { get; } // 0x100EFBF0 + public virtual ICollection Keys { get; } // 0x1022ADA0 + public virtual ICollection Values { get; } // 0x1022ADF0 + public virtual object Item { get; set; } // 0x1022AD00 0x1022AF10 + public virtual int Capacity { get; set; } // 0x101780C0 0x1022AE40 + + // Methods + public void .ctor(); // 0x1022AC80 + public void .ctor(int initialCapacity); // 0x1022ACE0 + public void .ctor(IComparer comparer, int capacity); // 0x1022A8E0 + public void .ctor(IComparer comparer); // 0x1022A9C0 + public void .ctor(IDictionary d); // 0x1022A8C0 + public void .ctor(IDictionary d, IComparer comparer); // 0x1022AA60 + private static void .cctor(); // 0x1022A890 + private IEnumerator System.Collections.IEnumerable.GetEnumerator(); // 0x1022A780 + public virtual void Add(object key, object value); // 0x102291A0 + public virtual void Clear(); // 0x102291C0 + public virtual bool Contains(object key); // 0x102293D0 + public virtual IDictionaryEnumerator GetEnumerator(); // 0x10229B80 + public virtual void Remove(object key); // 0x1022A520 + public virtual void CopyTo(Array array, int arrayIndex); // 0x102296A0 + public virtual object Clone(); // 0x10229230 + public virtual IList GetKeyList(); // 0x10229C20 + public virtual IList GetValueList(); // 0x10229D10 + public virtual void RemoveAt(int index); // 0x1022A430 + public virtual int IndexOfKey(object key); // 0x10229D60 + public virtual int IndexOfValue(object value); // 0x10229E70 + public virtual bool ContainsKey(object key); // 0x10229290 + public virtual bool ContainsValue(object value); // 0x102293A0 + public virtual object GetByIndex(int index); // 0x10229AE0 + public virtual void SetByIndex(int index, object value); // 0x1022A5D0 + public virtual object GetKey(int index); // 0x10229C70 + public static SortedList Synchronized(SortedList list); // 0x1022A670 + public virtual void TrimToSize(); // 0x1022A7D0 + private void Resize(int n, bool copy); // 0x1022A560 + private void EnsureCapacity(int n, int free); // 0x10229890 + private void PutImpl(object key, object value, bool overwrite); // 0x10229F40 + private object GetImpl(object key); // 0x10229BD0 + private void InitTable(int capacity, bool forceSize); // 0x10229EE0 + private void CopyToArray(Array arr, int i, EnumeratorMode mode); // 0x102294E0 + private int Find(object key); // 0x102299E0 +} + +// Namespace: +[Serializable] +internal struct Slot // TypeDefIndex: 319 +{ + // Fields + internal object key; // 0x08 + internal object value; // 0x0C + +} + +// Namespace: +private enum EnumeratorMode // TypeDefIndex: 320 +{ + KEY_MODE = 0, + VALUE_MODE = 1, + ENTRY_MODE = 2 +} + +// Namespace: +private sealed class Enumerator : IEnumerator, ICloneable, IDictionaryEnumerator // TypeDefIndex: 321 +{ + // Fields + private SortedList host; // 0x08 + private int stamp; // 0x0C + private int pos; // 0x10 + private int size; // 0x14 + private EnumeratorMode mode; // 0x18 + private object currentKey; // 0x1C + private object currentValue; // 0x20 + private bool invalid; // 0x24 + private static readonly string xstr; // 0x00 + + // Properties + public DictionaryEntry Entry { get; } // 0x10224EF0 + public object Key { get; } // 0x10225000 + public object Value { get; } // 0x102250A0 + public object Current { get; } // 0x10224BB0 + + // Methods + public void .ctor(SortedList host, EnumeratorMode mode); // 0x10224900 + public void .ctor(SortedList host); // 0x102249F0 + private static void .cctor(); // 0x102248A0 + public void Reset(); // 0x10224740 + public bool MoveNext(); // 0x102244F0 + public object Clone(); // 0x102243C0 +} + +// Namespace: +[Serializable] +private class ListKeys : IEnumerable, ICollection, IList // TypeDefIndex: 322 +{ + // Fields + private SortedList host; // 0x08 + + // Properties + public virtual int Count { get; } // 0x10227E70 + public virtual bool IsSynchronized { get; } // 0x10227EA0 + public virtual object SyncRoot { get; } // 0x101273C0 + public virtual bool IsFixedSize { get; } // 0x100E5880 + public virtual bool IsReadOnly { get; } // 0x100E5880 + public virtual object Item { get; set; } // 0x10227ED0 0x10227F00 + + // Methods + public void .ctor(SortedList host); // 0x10227E00 + public virtual void CopyTo(Array array, int arrayIndex); // 0x10227C60 + public virtual int Add(object value); // 0x10227B90 + public virtual void Clear(); // 0x10227BE0 + public virtual bool Contains(object key); // 0x10227C30 + public virtual int IndexOf(object key); // 0x10227CE0 + public virtual void Insert(int index, object value); // 0x10227D10 + public virtual void Remove(object value); // 0x10227DB0 + public virtual void RemoveAt(int index); // 0x10227D60 + public virtual IEnumerator GetEnumerator(); // 0x10227C90 +} + +// Namespace: +[Serializable] +private class ListValues : IEnumerable, ICollection, IList // TypeDefIndex: 323 +{ + // Fields + private SortedList host; // 0x08 + + // Properties + public virtual int Count { get; } // 0x10227E70 + public virtual bool IsSynchronized { get; } // 0x10227EA0 + public virtual object SyncRoot { get; } // 0x101273C0 + public virtual bool IsFixedSize { get; } // 0x100E5880 + public virtual bool IsReadOnly { get; } // 0x100E5880 + public virtual object Item { get; set; } // 0x10228230 0x10228260 + + // Methods + public void .ctor(SortedList host); // 0x102281C0 + public virtual void CopyTo(Array array, int arrayIndex); // 0x10228020 + public virtual int Add(object value); // 0x10227F50 + public virtual void Clear(); // 0x10227FA0 + public virtual bool Contains(object value); // 0x10227FF0 + public virtual int IndexOf(object value); // 0x102280A0 + public virtual void Insert(int index, object value); // 0x102280D0 + public virtual void Remove(object value); // 0x10228170 + public virtual void RemoveAt(int index); // 0x10228120 + public virtual IEnumerator GetEnumerator(); // 0x10228050 +} + +// Namespace: +private class SynchedSortedList : SortedList // TypeDefIndex: 324 +{ + // Fields + private SortedList host; // 0x1C + + // Properties + public override int Capacity { get; set; } // 0x1022EFB0 0x1022F4B0 + public override int Count { get; } // 0x1022F0B0 + public override bool IsSynchronized { get; } // 0x100E5880 + public override object SyncRoot { get; } // 0x1022F380 + public override bool IsFixedSize { get; } // 0x1022F0E0 + public override bool IsReadOnly { get; } // 0x1022F110 + public override ICollection Keys { get; } // 0x1022F280 + public override ICollection Values { get; } // 0x1022F3B0 + public override object Item { get; set; } // 0x1022F140 0x1022F5A0 + + // Methods + public void .ctor(SortedList host); // 0x1022EEE0 + public override void CopyTo(Array array, int arrayIndex); // 0x1022E2D0 + public override void Add(object key, object value); // 0x1022DC70 + public override void Clear(); // 0x1022DD60 + public override bool Contains(object key); // 0x1022E1D0 + public override IDictionaryEnumerator GetEnumerator(); // 0x1022E4D0 + public override void Remove(object key); // 0x1022EC00 + public override bool ContainsKey(object key); // 0x1022DFD0 + public override bool ContainsValue(object value); // 0x1022E0D0 + public override object Clone(); // 0x1022DE50 + public override object GetByIndex(int index); // 0x1022E3D0 + public override object GetKey(int index); // 0x1022E6F0 + public override IList GetKeyList(); // 0x1022E5D0 + public override IList GetValueList(); // 0x1022E7F0 + public override void RemoveAt(int index); // 0x1022EB10 + public override int IndexOfKey(object key); // 0x1022E910 + public override int IndexOfValue(object val); // 0x1022EA10 + public override void SetByIndex(int index, object value); // 0x1022ECF0 + public override void TrimToSize(); // 0x1022EDF0 +} + +// Namespace: System.Collections +[Serializable] +public class Stack : IEnumerable, ICloneable, ICollection // TypeDefIndex: 325 +{ + // Fields + private const int default_capacity = 16; // 0x00 + private object[] contents; // 0x08 + private int current; // 0x0C + private int count; // 0x10 + private int capacity; // 0x14 + private int modCount; // 0x18 + + // Properties + public virtual int Count { get; } // 0x100BFC20 + public virtual bool IsSynchronized { get; } // 0x100EFBF0 + public virtual object SyncRoot { get; } // 0x100F7810 + + // Methods + public void .ctor(); // 0x1022B690 + public void .ctor(ICollection col); // 0x1022B6F0 + public void .ctor(int initialCapacity); // 0x1022B960 + private void Resize(int ncapacity); // 0x1022B510 + public static Stack Synchronized(Stack stack); // 0x1022B570 + public virtual void Clear(); // 0x1022AFF0 + public virtual object Clone(); // 0x1022B050 + public virtual bool Contains(object obj); // 0x1022B0C0 + public virtual void CopyTo(Array array, int index); // 0x1022B170 + public virtual IEnumerator GetEnumerator(); // 0x1022B2E0 + public virtual object Peek(); // 0x1022B340 + public virtual object Pop(); // 0x1022B3C0 + public virtual void Push(object obj); // 0x1022B480 + public virtual object[] ToArray(); // 0x1022B630 +} + +// Namespace: +[Serializable] +private class SyncStack : Stack // TypeDefIndex: 326 +{ + // Fields + private Stack stack; // 0x1C + + // Properties + public override int Count { get; } // 0x1022DB80 + public override bool IsSynchronized { get; } // 0x100E5880 + public override object SyncRoot { get; } // 0x101A1970 + + // Methods + internal void .ctor(Stack s); // 0x1022DB20 + public override void Clear(); // 0x1022D190 + public override object Clone(); // 0x1022D270 + public override bool Contains(object obj); // 0x1022D470 + public override void CopyTo(Array array, int index); // 0x1022D570 + public override IEnumerator GetEnumerator(); // 0x1022D650 + public override object Peek(); // 0x1022D770 + public override object Pop(); // 0x1022D860 + public override void Push(object obj); // 0x1022D950 + public override object[] ToArray(); // 0x1022DA30 +} + +// Namespace: +private class Enumerator : IEnumerator, ICloneable // TypeDefIndex: 327 +{ + // Fields + private const int EOF = -1; // 0x00 + private const int BOF = -2; // 0x00 + private Stack stack; // 0x08 + private int modCount; // 0x0C + private int current; // 0x10 + + // Properties + public virtual object Current { get; } // 0x10224B20 + + // Methods + internal void .ctor(Stack s); // 0x10224A80 + public object Clone(); // 0x10216010 + public virtual bool MoveNext(); // 0x102246B0 + public virtual void Reset(); // 0x10224830 +} + +// Namespace: System.Configuration.Assemblies +[Serializable] +public struct AssemblyHash : ICloneable // TypeDefIndex: 328 +{ + // Fields + private AssemblyHashAlgorithm _algorithm; // 0x08 + private byte[] _value; // 0x0C + public static readonly AssemblyHash Empty; // 0x00 + + // Properties + public AssemblyHashAlgorithm Algorithm { get; set; } // 0x10003A80 0x10005950 + + // Methods + public void .ctor(AssemblyHashAlgorithm algorithm, byte[] value); // 0x10018AE0 + public void .ctor(byte[] value); // 0x10018AC0 + private static void .cctor(); // 0x10215F30 + public object Clone(); // 0x10018A40 + public byte[] GetValue(); // 0x10003A90 + public void SetValue(byte[] value); // 0x10018AB0 +} + +// Namespace: System.Configuration.Assemblies +[Serializable] +public enum AssemblyHashAlgorithm // TypeDefIndex: 329 +{ + None = 0, + MD5 = 32771, + SHA1 = 32772 +} + +// Namespace: System.Configuration.Assemblies +[Serializable] +public enum AssemblyVersionCompatibility // TypeDefIndex: 330 +{ + SameMachine = 1, + SameProcess = 2, + SameDomain = 3 +} + +// Namespace: System.Deployment.Internal +public static class InternalActivationContextHelper // TypeDefIndex: 331 +{ + // Methods + public static object GetActivationContextData(ActivationContext appInfo); // 0x102F3C70 + public static object GetApplicationComponentManifest(ActivationContext appInfo); // 0x102F3CC0 + public static byte[] GetApplicationManifestBytes(ActivationContext appInfo); // 0x102F3D10 + public static object GetDeploymentComponentManifest(ActivationContext appInfo); // 0x102F3D60 + public static byte[] GetDeploymentManifestBytes(ActivationContext appInfo); // 0x102F3DB0 + public static bool IsFirstRun(ActivationContext appInfo); // 0x102F3E00 + public static void PrepareForExecution(ActivationContext appInfo); // 0x102F3E50 +} + +// Namespace: System.Deployment.Internal +public static class InternalApplicationIdentityHelper // TypeDefIndex: 332 +{ + // Methods + public static object GetActivationContextData(ActivationContext appInfo); // 0x102F3EA0 + public static object GetInternalAppId(ApplicationIdentity id); // 0x102F3EF0 +} + +// Namespace: System.Diagnostics.CodeAnalysis +public sealed class SuppressMessageAttribute : Attribute // TypeDefIndex: 333 +{ + // Fields + private string category; // 0x08 + private string checkId; // 0x0C + private string justification; // 0x10 + private string messageId; // 0x14 + private string scope; // 0x18 + private string target; // 0x1C + + // Properties + public string Category { get; } // 0x100BF0C0 + public string CheckId { get; } // 0x100C5B30 + public string Justification { get; set; } // 0x100BFC20 0x100C5B40 + public string MessageId { get; set; } // 0x100EF0C0 0x10127B00 + public string Scope { get; set; } // 0x100EE580 0x10113F40 + public string Target { get; set; } // 0x100F85F0 0x10113F50 + + // Methods + public void .ctor(string category, string checkId); // 0x101237E0 +} + +// Namespace: System.Diagnostics.SymbolStore +public interface ISymbolBinder // TypeDefIndex: 334 +{ + // Methods + ISymbolReader GetReader(int importer, string filename, string searchPath); +} + +// Namespace: System.Diagnostics.SymbolStore +public interface ISymbolBinder1 // TypeDefIndex: 335 +{ + // Methods + ISymbolReader GetReader(IntPtr importer, string filename, string searchPath); +} + +// Namespace: System.Diagnostics.SymbolStore +public interface ISymbolDocument // TypeDefIndex: 336 +{ + // Properties + Guid CheckSumAlgorithmId { get; } + Guid DocumentType { get; } + bool HasEmbeddedSource { get; } + Guid Language { get; } + Guid LanguageVendor { get; } + int SourceLength { get; } + string URL { get; } + + // Methods + int FindClosestLine(int line); + byte[] GetCheckSum(); + byte[] GetSourceRange(int startLine, int startColumn, int endLine, int endColumn); +} + +// Namespace: System.Diagnostics.SymbolStore +public interface ISymbolDocumentWriter // TypeDefIndex: 337 +{ + // Methods + void SetCheckSum(Guid algorithmId, byte[] checkSum); + void SetSource(byte[] source); +} + +// Namespace: System.Diagnostics.SymbolStore +public interface ISymbolMethod // TypeDefIndex: 338 +{ + // Properties + ISymbolScope RootScope { get; } + int SequencePointCount { get; } + SymbolToken Token { get; } + + // Methods + ISymbolNamespace GetNamespace(); + int GetOffset(ISymbolDocument document, int line, int column); + ISymbolVariable[] GetParameters(); + int[] GetRanges(ISymbolDocument document, int line, int column); + ISymbolScope GetScope(int offset); + void GetSequencePoints(int[] offsets, ISymbolDocument[] documents, int[] lines, int[] columns, int[] endLines, int[] endColumns); + bool GetSourceStartEnd(ISymbolDocument[] docs, int[] lines, int[] columns); +} + +// Namespace: System.Diagnostics.SymbolStore +public interface ISymbolNamespace // TypeDefIndex: 339 +{ + // Properties + string Name { get; } + + // Methods + ISymbolNamespace[] GetNamespaces(); + ISymbolVariable[] GetVariables(); +} + +// Namespace: System.Diagnostics.SymbolStore +public interface ISymbolReader // TypeDefIndex: 340 +{ + // Properties + SymbolToken UserEntryPoint { get; } + + // Methods + ISymbolDocument GetDocument(string url, Guid language, Guid languageVendor, Guid documentType); + ISymbolDocument[] GetDocuments(); + ISymbolVariable[] GetGlobalVariables(); + ISymbolMethod GetMethod(SymbolToken method); + ISymbolMethod GetMethod(SymbolToken method, int version); + ISymbolMethod GetMethodFromDocumentPosition(ISymbolDocument document, int line, int column); + ISymbolNamespace[] GetNamespaces(); + byte[] GetSymAttribute(SymbolToken parent, string name); + ISymbolVariable[] GetVariables(SymbolToken parent); +} + +// Namespace: System.Diagnostics.SymbolStore +public interface ISymbolScope // TypeDefIndex: 341 +{ + // Properties + int EndOffset { get; } + ISymbolMethod Method { get; } + ISymbolScope Parent { get; } + int StartOffset { get; } + + // Methods + ISymbolScope[] GetChildren(); + ISymbolVariable[] GetLocals(); + ISymbolNamespace[] GetNamespaces(); +} + +// Namespace: System.Diagnostics.SymbolStore +public interface ISymbolVariable // TypeDefIndex: 342 +{ + // Properties + int AddressField1 { get; } + int AddressField2 { get; } + int AddressField3 { get; } + SymAddressKind AddressKind { get; } + object Attributes { get; } + int EndOffset { get; } + string Name { get; } + int StartOffset { get; } + + // Methods + byte[] GetSignature(); +} + +// Namespace: System.Diagnostics.SymbolStore +public interface ISymbolWriter // TypeDefIndex: 343 +{ + // Methods + void Close(); + void CloseMethod(); + void CloseNamespace(); + void CloseScope(int endOffset); + ISymbolDocumentWriter DefineDocument(string url, Guid language, Guid languageVendor, Guid documentType); + void DefineField(SymbolToken parent, string name, FieldAttributes attributes, byte[] signature, SymAddressKind addrKind, int addr1, int addr2, int addr3); + void DefineGlobalVariable(string name, FieldAttributes attributes, byte[] signature, SymAddressKind addrKind, int addr1, int addr2, int addr3); + void DefineLocalVariable(string name, FieldAttributes attributes, byte[] signature, SymAddressKind addrKind, int addr1, int addr2, int addr3, int startOffset, int endOffset); + void DefineParameter(string name, ParameterAttributes attributes, int sequence, SymAddressKind addrKind, int addr1, int addr2, int addr3); + void DefineSequencePoints(ISymbolDocumentWriter document, int[] offsets, int[] lines, int[] columns, int[] endLines, int[] endColumns); + void Initialize(IntPtr emitter, string filename, bool fFullBuild); + void OpenMethod(SymbolToken method); + void OpenNamespace(string name); + int OpenScope(int startOffset); + void SetMethodSourceRange(ISymbolDocumentWriter startDoc, int startLine, int startColumn, ISymbolDocumentWriter endDoc, int endLine, int endColumn); + void SetScopeRange(int scopeID, int startOffset, int endOffset); + void SetSymAttribute(SymbolToken parent, string name, byte[] data); + void SetUnderlyingWriter(IntPtr underlyingWriter); + void SetUserEntryPoint(SymbolToken entryMethod); + void UsingNamespace(string fullName); +} + +// Namespace: System.Diagnostics.SymbolStore +[Serializable] +public enum SymAddressKind // TypeDefIndex: 344 +{ + ILOffset = 1, + NativeRVA = 2, + NativeRegister = 3, + NativeRegisterRelative = 4, + NativeOffset = 5, + NativeRegisterRegister = 6, + NativeRegisterStack = 7, + NativeStackRegister = 8, + BitField = 9, + NativeSectionOffset = 10 +} + +// Namespace: System.Diagnostics.SymbolStore +public class SymDocumentType // TypeDefIndex: 345 +{ + // Fields + public static readonly Guid Text; // 0x00 + + // Methods + public void .ctor(); // 0x100BF000 +} + +// Namespace: System.Diagnostics.SymbolStore +public class SymLanguageType // TypeDefIndex: 346 +{ + // Fields + public static readonly Guid Basic; // 0x00 + public static readonly Guid C; // 0x10 + public static readonly Guid Cobol; // 0x20 + public static readonly Guid CPlusPlus; // 0x30 + public static readonly Guid CSharp; // 0x40 + public static readonly Guid ILAssembly; // 0x50 + public static readonly Guid Java; // 0x60 + public static readonly Guid JScript; // 0x70 + public static readonly Guid MCPlusPlus; // 0x80 + public static readonly Guid Pascal; // 0x90 + public static readonly Guid SMC; // 0xA0 + + // Methods + public void .ctor(); // 0x100BF000 +} + +// Namespace: System.Diagnostics.SymbolStore +public class SymLanguageVendor // TypeDefIndex: 347 +{ + // Fields + public static readonly Guid Microsoft; // 0x00 + + // Methods + public void .ctor(); // 0x100BF000 +} + +// Namespace: System.Diagnostics.SymbolStore +public struct SymbolToken // TypeDefIndex: 348 +{ + // Fields + private int _val; // 0x08 + + // Methods + public void .ctor(int val); // 0x10005950 + public override bool Equals(object obj); // 0x1000A5C0 + public bool Equals(SymbolToken obj); // 0x10004830 + public override int GetHashCode(); // 0x10006260 + public int GetToken(); // 0x10003A80 + public static bool op_Equality(SymbolToken a, SymbolToken b); // 0x101C6A60 + public static bool op_Inequality(SymbolToken a, SymbolToken b); // 0x101C6A70 +} + +// Namespace: System.Diagnostics +public sealed class DebuggableAttribute : Attribute // TypeDefIndex: 349 +{ + // Fields + private bool JITTrackingEnabledFlag; // 0x08 + private bool JITOptimizerDisabledFlag; // 0x09 + private DebuggingModes debuggingModes; // 0x0C + + // Properties + public DebuggingModes DebuggingFlags { get; } // 0x100C5B30 + public bool IsJITTrackingEnabled { get; } // 0x100EA020 + public bool IsJITOptimizerDisabled { get; } // 0x10117290 + + // Methods + public void .ctor(bool isJITTrackingEnabled, bool isJITOptimizerDisabled); // 0x102EC860 + public void .ctor(DebuggingModes modes); // 0x102EC8A0 +} + +// Namespace: +public enum DebuggingModes // TypeDefIndex: 350 +{ + None = 0, + Default = 1, + IgnoreSymbolStoreSequencePoints = 2, + EnableEditAndContinue = 4, + DisableOptimizations = 256 +} + +// Namespace: System.Diagnostics +public sealed class Debugger // TypeDefIndex: 351 +{ + // Fields + public static readonly string DefaultCategory; // 0x00 + + // Properties + public static bool IsAttached { get; } // 0x102ECAB0 + + // Methods + public void .ctor(); // 0x100BF000 + private static void .cctor(); // 0x102ECA50 + private static bool IsAttached_internal(); // 0x102EC9F0 + public static void Break(); // 0x100C5530 + public static bool IsLogging(); // 0x100EFBF0 + public static bool Launch(); // 0x102ECA00 + public static void Log(int level, string category, string message); // 0x100C5530 +} + +// Namespace: System.Diagnostics +public sealed class DebuggerBrowsableAttribute : Attribute // TypeDefIndex: 352 +{ + // Fields + private DebuggerBrowsableState state; // 0x08 + + // Properties + public DebuggerBrowsableState State { get; } // 0x100BF0C0 + + // Methods + public void .ctor(DebuggerBrowsableState state); // 0x100E5940 +} + +// Namespace: System.Diagnostics +public enum DebuggerBrowsableState // TypeDefIndex: 353 +{ + Never = 0, + Collapsed = 2, + RootHidden = 3 +} + +// Namespace: System.Diagnostics +public sealed class DebuggerDisplayAttribute : Attribute // TypeDefIndex: 354 +{ + // Fields + private string value; // 0x08 + private string type; // 0x0C + private string name; // 0x10 + private string target_type_name; // 0x14 + private Type target_type; // 0x18 + + // Properties + public string Value { get; } // 0x100BF0C0 + public Type Target { get; set; } // 0x100EE580 0x102EC970 + public string TargetTypeName { get; set; } // 0x100EF0C0 0x10127B00 + public string Type { get; set; } // 0x100C5B30 0x100C5B50 + public string Name { get; set; } // 0x100BFC20 0x100C5B40 + + // Methods + public void .ctor(string value); // 0x102EC8D0 +} + +// Namespace: System.Diagnostics +[Serializable] +public sealed class DebuggerNonUserCodeAttribute : Attribute // TypeDefIndex: 355 +{ + // Methods + public void .ctor(); // 0x100C5970 +} + +// Namespace: System.Diagnostics +[Serializable] +public sealed class DebuggerStepThroughAttribute : Attribute // TypeDefIndex: 356 +{ + // Methods + public void .ctor(); // 0x100C5970 +} + +// Namespace: System.Diagnostics +[Serializable] +public sealed class DebuggerStepperBoundaryAttribute : Attribute // TypeDefIndex: 357 +{ + // Methods + public void .ctor(); // 0x100C5970 +} + +// Namespace: System.Diagnostics +public sealed class DebuggerTypeProxyAttribute : Attribute // TypeDefIndex: 358 +{ + // Fields + private string proxy_type_name; // 0x08 + private string target_type_name; // 0x0C + private Type target_type; // 0x10 + + // Properties + public string ProxyTypeName { get; } // 0x100BF0C0 + public Type Target { get; set; } // 0x100BFC20 0x101BD6C0 + public string TargetTypeName { get; set; } // 0x100C5B30 0x100C5B50 + + // Methods + public void .ctor(string typeName); // 0x100E5940 + public void .ctor(Type type); // 0x101BD680 +} + +// Namespace: System.Diagnostics +public sealed class DebuggerVisualizerAttribute : Attribute // TypeDefIndex: 359 +{ + // Fields + private string description; // 0x08 + private string visualizerSourceName; // 0x0C + private string visualizerName; // 0x10 + private string targetTypeName; // 0x14 + private Type target; // 0x18 + + // Properties + public string Description { get; set; } // 0x100BF0C0 0x100EB270 + public Type Target { get; set; } // 0x100EE580 0x101BD990 + public string TargetTypeName { get; set; } // 0x100EF0C0 0x10127B00 + public string VisualizerObjectSourceTypeName { get; } // 0x100C5B30 + public string VisualizerTypeName { get; } // 0x100BFC20 + + // Methods + public void .ctor(string visualizerTypeName); // 0x101A2F30 + public void .ctor(Type visualizer); // 0x101BD880 + public void .ctor(string visualizerTypeName, string visualizerObjectSourceTypeName); // 0x101BD7C0 + public void .ctor(string visualizerTypeName, Type visualizerObjectSource); // 0x101BD900 + public void .ctor(Type visualizer, string visualizerObjectSourceTypeName); // 0x101BD7F0 + public void .ctor(Type visualizer, Type visualizerObjectSource); // 0x101BD700 +} + +// Namespace: System.Diagnostics +[Serializable] +public class StackFrame // TypeDefIndex: 360 +{ + // Fields + public const int OFFSET_UNKNOWN = -1; // 0x00 + private int ilOffset; // 0x08 + private int nativeOffset; // 0x0C + private MethodBase methodBase; // 0x10 + private string fileName; // 0x14 + private int lineNumber; // 0x18 + private int columnNumber; // 0x1C + private string internalMethodName; // 0x20 + + // Methods + public void .ctor(); // 0x101C5DA0 + public void .ctor(bool fNeedFileInfo); // 0x101C5DF0 + public void .ctor(int skipFrames); // 0x101C5E90 + public void .ctor(int skipFrames, bool fNeedFileInfo); // 0x101C5E40 + public void .ctor(string fileName, int lineNumber); // 0x101C5EE0 + public void .ctor(string fileName, int lineNumber, int colNumber); // 0x101C5D40 + private static bool get_frame_info(int skip, bool needFileInfo, out MethodBase method, out int iloffset, out int native_offset, out string file, out int line, out int column); // 0x101C5F40 + public virtual int GetFileLineNumber(); // 0x100EE580 + public virtual int GetFileColumnNumber(); // 0x100F85F0 + public virtual string GetFileName(); // 0x100EF0C0 + internal string GetSecureFileName(); // 0x101C5B00 + public virtual int GetILOffset(); // 0x100BF0C0 + public virtual MethodBase GetMethod(); // 0x100BFC20 + public virtual int GetNativeOffset(); // 0x100C5B30 + internal string GetInternalMethodName(); // 0x100EACD0 + public override string ToString(); // 0x101C5BE0 +} + +// Namespace: System.Diagnostics +[Serializable] +public class StackTrace // TypeDefIndex: 361 +{ + // Fields + public const int METHODS_TO_SKIP = 0; // 0x00 + private StackFrame[] frames; // 0x08 + private bool debug_info; // 0x0C + + // Properties + public virtual int FrameCount { get; } // 0x101C6850 + + // Methods + public void .ctor(); // 0x101C63D0 + public void .ctor(bool fNeedFileInfo); // 0x101C63A0 + public void .ctor(int skipFrames); // 0x101C6410 + public void .ctor(int skipFrames, bool fNeedFileInfo); // 0x101C6480 + public void .ctor(Exception e); // 0x101C63F0 + public void .ctor(Exception e, bool fNeedFileInfo); // 0x101C6460 + public void .ctor(Exception e, int skipFrames); // 0x101C67D0 + public void .ctor(Exception e, int skipFrames, bool fNeedFileInfo); // 0x101C6440 + internal void .ctor(Exception e, int skipFrames, bool fNeedFileInfo, bool returnNativeFrames); // 0x101C6540 + public void .ctor(StackFrame frame); // 0x101C64A0 + public void .ctor(Thread targetThread, bool needFileInfo); // 0x101C67F0 + private void init_frames(int skipFrames, bool fNeedFileInfo); // 0x101C6890 + private static StackFrame[] get_trace(Exception e, int skipFrames, bool fNeedFileInfo); // 0x101C6870 + public virtual StackFrame GetFrame(int index); // 0x101C5F70 + public virtual StackFrame[] GetFrames(); // 0x100BF0C0 + public override string ToString(); // 0x101C5FD0 +} + +// Namespace: System.Globalization +[Serializable] +public abstract class Calendar : ICloneable // TypeDefIndex: 362 +{ + // Fields + public const int CurrentEra = 0; // 0x00 + [NonSerialized] private bool m_isReadOnly; // 0x08 + [NonSerialized] internal int twoDigitYearMax; // 0x0C + [NonSerialized] private int M_MaxYearValue; // 0x10 + [NonSerialized] internal string[] M_AbbrEraNames; // 0x14 + [NonSerialized] internal string[] M_EraNames; // 0x18 + internal int m_currentEraValue; // 0x1C + + // Properties + internal virtual int M_DaysInWeek { get; } // 0x101B30F0 + public abstract int[] Eras { get; } + public virtual CalendarAlgorithmType AlgorithmType { get; } // 0x100C5600 + public virtual DateTime MaxSupportedDateTime { get; } // 0x101B3180 + public virtual DateTime MinSupportedDateTime { get; } // 0x101B31E0 + public bool IsReadOnly { get; } // 0x100EA020 + internal virtual int M_MaxYear { get; } // 0x101B3100 + public virtual int TwoDigitYearMax { get; set; } // 0x100C5B30 0x101B3540 + internal string[] AbbreviatedEraNames { get; set; } // 0x101B2F70 0x101B3240 + internal string[] EraNames { get; set; } // 0x101B3030 0x101B33C0 + + // Methods + protected void .ctor(); // 0x101B2F50 + internal string M_ValidValues(object a, object b); // 0x101B2CF0 + internal void M_ArgumentInRange(string param, int arg, int a, int b); // 0x101B2A10 + internal void M_CheckHMSM(int hour, int minute, int second, int milliseconds); // 0x101B2AB0 + public virtual object Clone(); // 0x101B2430 + public virtual int GetLeapMonth(int year); // 0x101B25B0 + public virtual int GetLeapMonth(int year, int era); // 0x101B2540 + public static Calendar ReadOnly(Calendar calendar); // 0x101B2D70 + internal void CheckReadOnly(); // 0x101B23D0 + internal virtual void M_CheckYE(int year, int era); // 0x100C5530 + public virtual DateTime AddDays(DateTime time, int days); // 0x101B2100 + public virtual DateTime AddHours(DateTime time, int hours); // 0x101B2180 + public virtual DateTime AddMilliseconds(DateTime time, double milliseconds); // 0x101B2200 + public virtual DateTime AddMinutes(DateTime time, int minutes); // 0x101B2280 + public abstract DateTime AddMonths(DateTime time, int months); + public virtual DateTime AddSeconds(DateTime time, int seconds); // 0x101B2300 + public virtual DateTime AddWeeks(DateTime time, int weeks); // 0x101B2380 + public abstract DateTime AddYears(DateTime time, int years); + public abstract int GetDayOfMonth(DateTime time); + public abstract DayOfWeek GetDayOfWeek(DateTime time); + public abstract int GetDayOfYear(DateTime time); + public virtual int GetDaysInMonth(int year, int month); // 0x101B24B0 + public abstract int GetDaysInMonth(int year, int month, int era); + public virtual int GetDaysInYear(int year); // 0x101B24E0 + public abstract int GetDaysInYear(int year, int era); + public abstract int GetEra(DateTime time); + public virtual int GetHour(DateTime time); // 0x101B2510 + public virtual double GetMilliseconds(DateTime time); // 0x101B2620 + public virtual int GetMinute(DateTime time); // 0x101B2660 + public abstract int GetMonth(DateTime time); + public virtual int GetMonthsInYear(int year); // 0x101B2690 + public abstract int GetMonthsInYear(int year, int era); + public virtual int GetSecond(DateTime time); // 0x101B26C0 + internal int M_DiffDays(DateTime timeA, DateTime timeB); // 0x101B2B40 + internal DateTime M_GetFirstDayOfSecondWeekOfYear(int year, CalendarWeekRule rule, DayOfWeek firstDayOfWeek); // 0x101B2BB0 + public virtual int GetWeekOfYear(DateTime time, CalendarWeekRule rule, DayOfWeek firstDayOfWeek); // 0x101B26F0 + public abstract int GetYear(DateTime time); + public virtual bool IsLeapDay(int year, int month, int day); // 0x101B2980 + public abstract bool IsLeapDay(int year, int month, int day, int era); + public virtual bool IsLeapMonth(int year, int month); // 0x101B29B0 + public abstract bool IsLeapMonth(int year, int month, int era); + public virtual bool IsLeapYear(int year); // 0x101B29E0 + public abstract bool IsLeapYear(int year, int era); + public virtual DateTime ToDateTime(int year, int month, int day, int hour, int minute, int second, int millisecond); // 0x101B2E10 + public abstract DateTime ToDateTime(int year, int month, int day, int hour, int minute, int second, int millisecond, int era); + public virtual int ToFourDigitYear(int year); // 0x101B2E60 +} + +// Namespace: System.Globalization +public enum CalendarAlgorithmType // TypeDefIndex: 363 +{ + Unknown = 0, + SolarCalendar = 1, + LunarCalendar = 2, + LunisolarCalendar = 3 +} + +// Namespace: System.Globalization +[Serializable] +public enum CalendarWeekRule // TypeDefIndex: 364 +{ + FirstDay = 0, + FirstFullWeek = 1, + FirstFourDayWeek = 2 +} + +// Namespace: System.Globalization +internal class CCMath // TypeDefIndex: 365 +{ + // Methods + public void .ctor(); // 0x100BF000 + public static double round(double x); // 0x101B2080 + public static double mod(double x, double y); // 0x101B2050 + public static int div(int x, int y); // 0x101B1F70 + public static int mod(int x, int y); // 0x101B2000 + public static int div_mod(out int remainder, int x, int y); // 0x101B1FB0 + public static int signum(double x); // 0x101B20D0 + public static int signum(int x); // 0x101B20B0 + public static double amod(double x, double y); // 0x101B1F00 + public static int amod(int x, int y); // 0x101B1EB0 +} + +// Namespace: System.Globalization +internal class CCFixed // TypeDefIndex: 366 +{ + // Methods + public void .ctor(); // 0x100BF000 + public static DateTime ToDateTime(int date); // 0x101AF6C0 + public static DateTime ToDateTime(int date, int hour, int minute, int second, double milliseconds); // 0x101AF5D0 + public static int FromDateTime(DateTime time); // 0x101AF5A0 + public static DayOfWeek day_of_week(int date); // 0x101AF700 + public static int kday_on_or_before(int date, int k); // 0x101AF8D0 + public static int kday_on_or_after(int date, int k); // 0x101AF870 + public static int kd_nearest(int date, int k); // 0x101AF750 + public static int kday_after(int date, int k); // 0x101AF7B0 + public static int kday_before(int date, int k); // 0x101AF810 +} + +// Namespace: System.Globalization +internal class CCGregorianCalendar // TypeDefIndex: 367 +{ + // Fields + private const int epoch = 1; // 0x00 + + // Methods + public void .ctor(); // 0x100BF000 + public static bool is_leap_year(int year); // 0x101B00A0 + public static int fixed_from_dmy(int day, int month, int year); // 0x101AFF90 + public static int year_from_fixed(int date); // 0x101B0210 + public static void my_from_fixed(out int month, out int year, int date); // 0x101B0170 + public static void dmy_from_fixed(out int day, out int month, out int year, int date); // 0x101AFF40 + public static int month_from_fixed(int date); // 0x101B0140 + public static int day_from_fixed(int date); // 0x101AFE90 + public static int date_difference(int dayA, int monthA, int yearA, int dayB, int monthB, int yearB); // 0x101AFE60 + public static int day_number(int day, int month, int year); // 0x101AFEE0 + public static int days_remaining(int day, int month, int year); // 0x101AFF10 + public static DateTime AddMonths(DateTime time, int months); // 0x101AF920 + public static DateTime AddYears(DateTime time, int years); // 0x101AFA60 + public static int GetDayOfMonth(DateTime time); // 0x101AFB60 + public static int GetDayOfYear(DateTime time); // 0x101AFBD0 + public static int GetDaysInMonth(int year, int month); // 0x101AFC20 + public static int GetDaysInYear(int year); // 0x101AFC60 + public static int GetMonth(DateTime time); // 0x101AFC90 + public static int GetYear(DateTime time); // 0x101AFCF0 + public static bool IsLeapDay(int year, int month, int day); // 0x101AFD30 + public static DateTime ToDateTime(int year, int month, int day, int hour, int minute, int second, int milliseconds); // 0x101AFD60 +} + +// Namespace: +public enum Month // TypeDefIndex: 368 +{ + january = 1, + february = 2, + march = 3, + april = 4, + may = 5, + june = 6, + july = 7, + august = 8, + september = 9, + october = 10, + november = 11, + december = 12 +} + +// Namespace: System.Globalization +internal class CCJulianCalendar // TypeDefIndex: 369 +{ + // Fields + private const int epoch = -1; // 0x00 + + // Methods + public void .ctor(); // 0x100BF000 + public static bool is_leap_year(int year); // 0x101B1C70 + public static int fixed_from_dmy(int day, int month, int year); // 0x101B1B70 + public static int year_from_fixed(int date); // 0x101B1E60 + public static void my_from_fixed(out int month, out int year, int date); // 0x101B1D00 + public static void dmy_from_fixed(out int day, out int month, out int year, int date); // 0x101B1B30 + public static int month_from_fixed(int date); // 0x101B1CD0 + public static int day_from_fixed(int date); // 0x101B1A80 + public static int date_difference(int dayA, int monthA, int yearA, int dayB, int monthB, int yearB); // 0x101B1A50 + public static int day_number(int day, int month, int year); // 0x101B1AD0 + public static int days_remaining(int day, int month, int year); // 0x101B1B00 +} + +// Namespace: +public enum Month // TypeDefIndex: 370 +{ + january = 1, + february = 2, + march = 3, + april = 4, + may = 5, + june = 6, + july = 7, + august = 8, + september = 9, + october = 10, + november = 11, + december = 12 +} + +// Namespace: System.Globalization +internal class CCHebrewCalendar // TypeDefIndex: 371 +{ + // Fields + private const int epoch = -1373427; // 0x00 + + // Methods + public void .ctor(); // 0x100BF000 + public static bool is_leap_year(int year); // 0x101B0FE0 + public static int last_month_of_year(int year); // 0x101B11E0 + public static int elapsed_days(int year); // 0x101B0D90 + public static int new_year_delay(int year); // 0x101B1400 + public static int last_day_of_month(int month, int year); // 0x101B1040 + public static bool long_heshvan(int year); // 0x101B1240 + public static bool short_kislev(int year); // 0x101B1460 + public static int days_in_year(int year); // 0x101B0CE0 + public static int fixed_from_dmy(int day, int month, int year); // 0x101B0EC0 + public static int year_from_fixed(int date); // 0x101B14D0 + public static void my_from_fixed(out int month, out int year, int date); // 0x101B12E0 + public static void dmy_from_fixed(out int day, out int month, out int year, int date); // 0x101B0D50 + public static int month_from_fixed(int date); // 0x101B12B0 + public static int day_from_fixed(int date); // 0x101B0C60 + public static int date_difference(int dayA, int monthA, int yearA, int dayB, int monthB, int yearB); // 0x101B0C30 + public static int day_number(int day, int month, int year); // 0x101B0CB0 + public static int days_remaining(int day, int month, int year); // 0x101B0D10 +} + +// Namespace: +public enum Month // TypeDefIndex: 372 +{ + nisan = 1, + iyyar = 2, + sivan = 3, + tammuz = 4, + av = 5, + elul = 6, + tishri = 7, + heshvan = 8, + kislev = 9, + teveth = 10, + shevat = 11, + adar = 12, + adar_I = 12, + adar_II = 13 +} + +// Namespace: System.Globalization +internal class CCHijriCalendar // TypeDefIndex: 373 +{ + // Fields + private const int epoch = 227014; // 0x00 + + // Methods + public void .ctor(); // 0x100BF000 + public static bool is_leap_year(int year); // 0x101B1890 + public static int fixed_from_dmy(int day, int month, int year); // 0x101B1800 + public static int year_from_fixed(int date); // 0x101B1A00 + public static void my_from_fixed(out int month, out int year, int date); // 0x101B1920 + public static void dmy_from_fixed(out int day, out int month, out int year, int date); // 0x101B1760 + public static int month_from_fixed(int date); // 0x101B18F0 + public static int day_from_fixed(int date); // 0x101B1670 + public static int date_difference(int dayA, int monthA, int yearA, int dayB, int monthB, int yearB); // 0x101B1580 + public static int day_number(int day, int month, int year); // 0x101B1720 + public static int days_remaining(int day, int month, int year); // 0x101B1740 +} + +// Namespace: +public enum Month // TypeDefIndex: 374 +{ + muharram = 1, + safar = 2, + rabi_I = 3, + rabi_II = 4, + jumada_I = 5, + jumada_II = 6, + rajab = 7, + shaban = 8, + ramadan = 9, + shawwal = 10, + dhu_al_quada = 11, + dhu_al_hijja = 12 +} + +// Namespace: System.Globalization +internal class CCEastAsianLunisolarCalendar // TypeDefIndex: 375 +{ + // Fields + private const int initial_epact = 29; // 0x00 + + // Methods + public void .ctor(); // 0x100BF000 + public static int fixed_from_dmy(int day, int month, int year); // 0x101AEB80 + public static int year_from_fixed(int date); // 0x101AEC20 + public static void my_from_fixed(out int month, out int year, int date); // 0x101AEBD0 + public static void dmy_from_fixed(out int day, out int month, out int year, int date); // 0x101AEB30 + public static DateTime AddMonths(DateTime date, int months); // 0x101AE770 + public static DateTime AddYears(DateTime date, int years); // 0x101AE7C0 + public static int GetDayOfMonth(DateTime date); // 0x101AE810 + public static int GetDayOfYear(DateTime date); // 0x101AE860 + public static int GetDaysInMonth(int gyear, int month); // 0x101AE8B0 + public static int GetDaysInYear(int year); // 0x101AE900 + public static int GetMonth(DateTime date); // 0x101AE950 + public static bool IsLeapMonth(int gyear, int month); // 0x101AE9A0 + public static bool IsLeapYear(int gyear); // 0x101AEA50 + public static DateTime ToDateTime(int year, int month, int day, int hour, int minute, int second, int millisecond); // 0x101AEAE0 +} + +// Namespace: System.Globalization +[Serializable] +internal class CCGregorianEraHandler // TypeDefIndex: 376 +{ + // Fields + private SortedList _Eras; // 0x08 + + // Properties + public int[] Eras { get; } // 0x101B0B10 + + // Methods + public void .ctor(); // 0x101B08F0 + public void appendEra(int nr, int rd_start, int rd_end); // 0x101B0940 + public void appendEra(int nr, int rd_start); // 0x101B09F0 + public int GregorianYear(int year, int era); // 0x101B05D0 + public int EraYear(out int era, int date); // 0x101B03A0 + public void CheckDateTime(DateTime time); // 0x101B0300 + public bool ValidDate(int date); // 0x101B0680 + public bool ValidEra(int era); // 0x101B0880 +} + +// Namespace: +[Serializable] +private struct Era // TypeDefIndex: 377 +{ + // Fields + private int _nr; // 0x08 + private int _start; // 0x0C + private int _gregorianYearStart; // 0x10 + private int _end; // 0x14 + private int _maxYear; // 0x18 + + // Properties + public int Nr { get; } // 0x10003A80 + + // Methods + public void .ctor(int nr, int start, int end); // 0x1000A5A0 + public int GregorianYear(int year); // 0x1000A580 + public bool Covers(int date); // 0x1000A540 + public int EraYear(out int era, int date); // 0x1000A560 +} + +// Namespace: System.Globalization +[Serializable] +internal class CCEastAsianLunisolarEraHandler // TypeDefIndex: 378 +{ + // Fields + private SortedList _Eras; // 0x08 + + // Properties + public int[] Eras { get; } // 0x101AF480 + + // Methods + public void .ctor(); // 0x101AF260 + public void appendEra(int nr, int rd_start, int rd_end); // 0x101AF3D0 + public void appendEra(int nr, int rd_start); // 0x101AF2B0 + public int GregorianYear(int year, int era); // 0x101AEF40 + public int EraYear(out int era, int date); // 0x101AED10 + public void CheckDateTime(DateTime time); // 0x101AEC70 + public bool ValidDate(int date); // 0x101AEFF0 + public bool ValidEra(int era); // 0x101AF1F0 +} + +// Namespace: +[Serializable] +private struct Era // TypeDefIndex: 379 +{ + // Fields + private int _nr; // 0x08 + private int _start; // 0x0C + private int _gregorianYearStart; // 0x10 + private int _end; // 0x14 + private int _maxYear; // 0x18 + + // Properties + public int Nr { get; } // 0x10003A80 + + // Methods + public void .ctor(int nr, int start, int end); // 0x1000A5B0 + public int GregorianYear(int year); // 0x1000A590 + public bool Covers(int date); // 0x1000A540 + public int EraYear(out int era, int date); // 0x1000A570 +} + +// Namespace: System.Globalization +public sealed class CharUnicodeInfo // TypeDefIndex: 380 +{ + // Methods + private void .ctor(); // 0x100BF000 + public static int GetDecimalDigitValue(char ch); // 0x101B3610 + public static int GetDecimalDigitValue(string s, int index); // 0x101B38B0 + public static int GetDigitValue(char ch); // 0x101B3930 + public static int GetDigitValue(string s, int index); // 0x101B3A00 + public static double GetNumericValue(char ch); // 0x101B3B00 + public static double GetNumericValue(string s, int index); // 0x101B3A80 + public static UnicodeCategory GetUnicodeCategory(char ch); // 0x101B40E0 + public static UnicodeCategory GetUnicodeCategory(string s, int index); // 0x101B4130 +} + +// Namespace: System.Globalization +[Serializable] +public class ChineseLunisolarCalendar : EastAsianLunisolarCalendar // TypeDefIndex: 381 +{ + // Fields + public const int ChineseEra = 1; // 0x00 + internal static readonly CCEastAsianLunisolarEraHandler era_handler; // 0x00 + private static DateTime ChineseMin; // 0x08 + private static DateTime ChineseMax; // 0x18 + + // Properties + public override int[] Eras { get; } // 0x101B4510 + public override DateTime MinSupportedDateTime { get; } // 0x101B4720 + public override DateTime MaxSupportedDateTime { get; } // 0x101B46C0 + + // Methods + public void .ctor(); // 0x101B44B0 + private static void .cctor(); // 0x101B4260 + public override int GetEra(DateTime time); // 0x101B41C0 +} + +// Namespace: System.Globalization +[Serializable] +internal sealed class CodePageDataItem // TypeDefIndex: 382 +{ + // Fields + private string m_bodyName; // 0x08 + private int m_codePage; // 0x0C + private int m_dataIndex; // 0x10 + private string m_description; // 0x14 + private uint m_flags; // 0x18 + private string m_headerName; // 0x1C + private int m_uiFamilyCodePage; // 0x20 + private string m_webName; // 0x24 + + // Methods + private void .ctor(); // 0x100BF000 +} + +// Namespace: System.Globalization +[Serializable] +public class CompareInfo : IDeserializationCallback // TypeDefIndex: 383 +{ + // Fields + private const CompareOptions ValidCompareOptions_NoStringSort = 1342177311; // 0x00 + private const CompareOptions ValidCompareOptions = 1879048223; // 0x00 + private static readonly bool useManagedCollation; // 0x00 + private int culture; // 0x08 + [NonSerialized] private string icu_name; // 0x0C + private int win32LCID; // 0x10 + private string m_name; // 0x14 + [NonSerialized] private SimpleCollator collator; // 0x18 + private static Hashtable collators; // 0x04 + [NonSerialized] private static object monitor; // 0x08 + + // Properties + internal static bool UseManagedCollation { get; } // 0x101B65E0 + public int LCID { get; } // 0x100BF0C0 + public virtual string Name { get; } // 0x100C5B30 + + // Methods + private void .ctor(); // 0x100BF000 + internal void .ctor(CultureInfo ci); // 0x101B6200 + private static void .cctor(); // 0x101B60F0 + private void System.Runtime.Serialization.IDeserializationCallback.OnDeserialization(object sender); // 0x101B5EF0 + private void construct_compareinfo(string locale); // 0x101B65B0 + private void free_internal_collator(); // 0x101B65D0 + private int internal_compare(string str1, int offset1, int length1, string str2, int offset2, int length2, CompareOptions options); // 0x101B6680 + private void assign_sortkey(object key, string source, CompareOptions options); // 0x101B6590 + private int internal_index(string source, int sindex, int count, char value, CompareOptions options, bool first); // 0x101B67B0 + private int internal_index(string source, int sindex, int count, string value, CompareOptions options, bool first); // 0x101B67B0 + protected override void Finalize(); // 0x101B4C20 + private int internal_compare_managed(string str1, int offset1, int length1, string str2, int offset2, int length2, CompareOptions options); // 0x101B66B0 + private int internal_compare_switch(string str1, int offset1, int length1, string str2, int offset2, int length2, CompareOptions options); // 0x101B66E0 + public virtual int Compare(string string1, string string2); // 0x101B4890 + public virtual int Compare(string string1, string string2, CompareOptions options); // 0x101B47B0 + public virtual int Compare(string string1, int offset1, string string2, int offset2); // 0x101B4780 + public virtual int Compare(string string1, int offset1, string string2, int offset2, CompareOptions options); // 0x101B4A70 + public virtual int Compare(string string1, int offset1, int length1, string string2, int offset2, int length2); // 0x101B4860 + public virtual int Compare(string string1, int offset1, int length1, string string2, int offset2, int length2, CompareOptions options); // 0x101B48C0 + public override bool Equals(object value); // 0x101B4BB0 + public static CompareInfo GetCompareInfo(int culture); // 0x101B4D70 + public static CompareInfo GetCompareInfo(string name); // 0x101B4CD0 + public static CompareInfo GetCompareInfo(int culture, Assembly assembly); // 0x101B4F70 + public static CompareInfo GetCompareInfo(string name, Assembly assembly); // 0x101B4DE0 + public override int GetHashCode(); // 0x100BF0C0 + public virtual SortKey GetSortKey(string source); // 0x101B50E0 + public virtual SortKey GetSortKey(string source, CompareOptions options); // 0x101B5110 + public virtual int IndexOf(string source, char value); // 0x101B5650 + public virtual int IndexOf(string source, string value); // 0x101B55A0 + public virtual int IndexOf(string source, char value, CompareOptions options); // 0x101B5390 + public virtual int IndexOf(string source, char value, int startIndex); // 0x101B5610 + public virtual int IndexOf(string source, string value, CompareOptions options); // 0x101B56D0 + public virtual int IndexOf(string source, string value, int startIndex); // 0x101B5690 + public virtual int IndexOf(string source, char value, int startIndex, CompareOptions options); // 0x101B5560 + public virtual int IndexOf(string source, char value, int startIndex, int count); // 0x101B5360 + public virtual int IndexOf(string source, string value, int startIndex, CompareOptions options); // 0x101B5520 + public virtual int IndexOf(string source, string value, int startIndex, int count); // 0x101B55E0 + private int internal_index_managed(string s, int sindex, int count, char c, CompareOptions opt, bool first); // 0x101B6840 + private int internal_index_switch(string s, int sindex, int count, char c, CompareOptions opt, bool first); // 0x101B68A0 + public virtual int IndexOf(string source, char value, int startIndex, int count, CompareOptions options); // 0x101B5210 + private int internal_index_managed(string s1, int sindex, int count, string s2, CompareOptions opt, bool first); // 0x101B67E0 + private int internal_index_switch(string s1, int sindex, int count, string s2, CompareOptions opt, bool first); // 0x101B69B0 + public virtual int IndexOf(string source, string value, int startIndex, int count, CompareOptions options); // 0x101B53D0 + public virtual bool IsPrefix(string source, string prefix); // 0x101B5710 + public virtual bool IsPrefix(string source, string prefix, CompareOptions options); // 0x101B5740 + public virtual bool IsSuffix(string source, string suffix); // 0x101B5A10 + public virtual bool IsSuffix(string source, string suffix, CompareOptions options); // 0x101B5900 + public virtual int LastIndexOf(string source, char value); // 0x101B5A70 + public virtual int LastIndexOf(string source, string value); // 0x101B5EB0 + public virtual int LastIndexOf(string source, char value, CompareOptions options); // 0x101B5B80 + public virtual int LastIndexOf(string source, char value, int startIndex); // 0x101B5E50 + public virtual int LastIndexOf(string source, string value, CompareOptions options); // 0x101B5B40 + public virtual int LastIndexOf(string source, string value, int startIndex); // 0x101B5A40 + public virtual int LastIndexOf(string source, char value, int startIndex, CompareOptions options); // 0x101B5AE0 + public virtual int LastIndexOf(string source, char value, int startIndex, int count); // 0x101B5E80 + public virtual int LastIndexOf(string source, string value, int startIndex, CompareOptions options); // 0x101B5B10 + public virtual int LastIndexOf(string source, string value, int startIndex, int count); // 0x101B5AB0 + public virtual int LastIndexOf(string source, char value, int startIndex, int count, CompareOptions options); // 0x101B5D00 + public virtual int LastIndexOf(string source, string value, int startIndex, int count, CompareOptions options); // 0x101B5BC0 + public static bool IsSortable(char ch); // 0x101B5850 + public static bool IsSortable(string text); // 0x101B58B0 + public override string ToString(); // 0x101B6070 +} + +// Namespace: System.Globalization +[Serializable] +public enum CompareOptions // TypeDefIndex: 384 +{ + None = 0, + IgnoreCase = 1, + IgnoreNonSpace = 2, + IgnoreSymbols = 4, + IgnoreKanaType = 8, + IgnoreWidth = 16, + OrdinalIgnoreCase = 268435456, + StringSort = 536870912, + Ordinal = 1073741824 +} + +// Namespace: System.Globalization +[Serializable] +public class CultureInfo : ICloneable, IFormatProvider // TypeDefIndex: 385 +{ + // Fields + private const int NumOptionalCalendars = 5; // 0x00 + private const int GregorianTypeMask = 16777215; // 0x00 + private const int CalendarTypeBits = 24; // 0x00 + private const int InvariantCultureId = 127; // 0x00 + private static CultureInfo invariant_culture_info; // 0x00 + private static object shared_table_lock; // 0x04 + internal static int BootstrapCultureID; // 0x08 + private bool m_isReadOnly; // 0x08 + private int cultureID; // 0x0C + [NonSerialized] private int parent_lcid; // 0x10 + [NonSerialized] private int specific_lcid; // 0x14 + [NonSerialized] private int datetime_index; // 0x18 + [NonSerialized] private int number_index; // 0x1C + private bool m_useUserOverride; // 0x20 + [NonSerialized] private NumberFormatInfo numInfo; // 0x24 + private DateTimeFormatInfo dateTimeInfo; // 0x28 + private TextInfo textInfo; // 0x2C + private string m_name; // 0x30 + [NonSerialized] private string displayname; // 0x34 + [NonSerialized] private string englishname; // 0x38 + [NonSerialized] private string nativename; // 0x3C + [NonSerialized] private string iso3lang; // 0x40 + [NonSerialized] private string iso2lang; // 0x44 + [NonSerialized] private string icu_name; // 0x48 + [NonSerialized] private string win3lang; // 0x4C + [NonSerialized] private string territory; // 0x50 + private CompareInfo compareInfo; // 0x54 + [NonSerialized] private readonly void * calendar_data; // 0x58 + [NonSerialized] private readonly void * textinfo_data; // 0x5C + [NonSerialized] private Calendar[] optional_calendars; // 0x60 + [NonSerialized] private CultureInfo parent_culture; // 0x64 + private int m_dataItem; // 0x68 + private Calendar calendar; // 0x6C + [NonSerialized] private bool constructed; // 0x70 + [NonSerialized] internal byte[] cached_serialized_form; // 0x74 + private static readonly string MSG_READONLY; // 0x0C + private static Hashtable shared_by_number; // 0x10 + private static Hashtable shared_by_name; // 0x14 + private static Dictionary`2 <>f__switch$map19; // 0x18 + private static Dictionary`2 <>f__switch$map1A; // 0x1C + + // Properties + public static CultureInfo InvariantCulture { get; } // 0x101B8F50 + public static CultureInfo CurrentCulture { get; } // 0x101B8B40 + public static CultureInfo CurrentUICulture { get; } // 0x101B8BA0 + internal string Territory { get; } // 0x10132810 + public virtual int LCID { get; } // 0x100C5B30 + public virtual string Name { get; } // 0x100EA580 + public virtual string NativeName { get; } // 0x101B8FF0 + public virtual Calendar Calendar { get; } // 0x101B89D0 + public virtual Calendar[] OptionalCalendars { get; } // 0x101B9180 + public virtual CultureInfo Parent { get; } // 0x101B9250 + public virtual TextInfo TextInfo { get; } // 0x101B9320 + public virtual string ThreeLetterISOLanguageName { get; } // 0x101B9440 + public virtual string ThreeLetterWindowsLanguageName { get; } // 0x101B9470 + public virtual string TwoLetterISOLanguageName { get; } // 0x101B94A0 + public bool UseUserOverride { get; } // 0x101B94D0 + internal string IcuName { get; } // 0x101B8EC0 + public virtual CompareInfo CompareInfo { get; } // 0x101B8A00 + public virtual bool IsNeutralCulture { get; } // 0x101B8FA0 + public virtual NumberFormatInfo NumberFormat { get; set; } // 0x101B9020 0x101B9750 + public virtual DateTimeFormatInfo DateTimeFormat { get; set; } // 0x101B8C00 0x101B9670 + public virtual string DisplayName { get; } // 0x101B8E60 + public virtual string EnglishName { get; } // 0x101B8E90 + public static CultureInfo InstalledUICulture { get; } // 0x101B8EF0 + public bool IsReadOnly { get; } // 0x100EA020 + + // Methods + public void .ctor(int culture); // 0x101B8920 + public void .ctor(int culture, bool useUserOverride); // 0x101B8780 + private void .ctor(int culture, bool useUserOverride, bool read_only); // 0x101B87E0 + public void .ctor(string name); // 0x101B87A0 + public void .ctor(string name, bool useUserOverride); // 0x101B87C0 + private void .ctor(string name, bool useUserOverride, bool read_only); // 0x101B8520 + private void .ctor(); // 0x101B8900 + private static void .cctor(); // 0x101B8470 + public static CultureInfo CreateSpecificCulture(string name); // 0x101B76F0 + internal static CultureInfo ConstructCurrentCulture(); // 0x101B6F30 + internal static CultureInfo ConstructCurrentUICulture(); // 0x101B7040 + public void ClearCachedData(); // 0x101B6B70 + public virtual object Clone(); // 0x101B6BF0 + public override bool Equals(object value); // 0x101B7910 + public static CultureInfo[] GetCultures(CultureTypes types); // 0x101B8030 + public override int GetHashCode(); // 0x100C5B30 + public static CultureInfo ReadOnly(CultureInfo ci); // 0x101B8310 + public override string ToString(); // 0x100EA580 + internal static bool IsIDNeutralCulture(int lcid); // 0x101B8240 + internal void CheckNeutral(); // 0x101B6AC0 + public virtual object GetFormat(Type formatType); // 0x101B8170 + private void Construct(); // 0x101B7670 + private bool ConstructInternalLocaleFromName(string locale); // 0x101B7200 + private bool ConstructInternalLocaleFromLcid(int lcid); // 0x101B71E0 + private static bool ConstructInternalLocaleFromSpecificName(CultureInfo ci, string name); // 0x101B7360 + private static bool ConstructInternalLocaleFromCurrentLocale(CultureInfo ci); // 0x101B7190 + private bool construct_internal_locale_from_lcid(int lcid); // 0x101B8960 + private bool construct_internal_locale_from_name(string name); // 0x101B8980 + private static bool construct_internal_locale_from_specific_name(CultureInfo ci, string name); // 0x101B89A0 + private static bool construct_internal_locale_from_current_locale(CultureInfo ci); // 0x101B8950 + private static CultureInfo[] internal_get_cultures(bool neutral, bool specific, bool installed); // 0x101B9630 + private void construct_datetime_format(); // 0x101B8940 + private void construct_number_format(); // 0x101B89C0 + private static bool internal_is_lcid_neutral(int lcid, out bool is_neutral); // 0x101B9650 + private void ConstructInvariant(bool read_only); // 0x101B73C0 + private TextInfo CreateTextInfo(bool readOnly); // 0x101B78B0 + private static void insert_into_shared_tables(CultureInfo c); // 0x101B94E0 + public static CultureInfo GetCultureInfo(int culture); // 0x101B7B50 + public static CultureInfo GetCultureInfo(string name); // 0x101B7E10 + public static CultureInfo GetCultureInfo(string name, string altName); // 0x101B7D80 + public static CultureInfo GetCultureInfoByIetfLanguageTag(string name); // 0x101B7980 + internal static CultureInfo CreateCulture(string name, bool reference); // 0x101B7690 + internal void ConstructCalendars(); // 0x101B6D60 +} + +// Namespace: System.Globalization +[Serializable] +public enum CultureTypes // TypeDefIndex: 386 +{ + NeutralCultures = 1, + SpecificCultures = 2, + InstalledWin32Cultures = 4, + AllCultures = 7, + UserCustomCulture = 8, + ReplacementCultures = 16, + WindowsOnlyCultures = 32, + FrameworkCultures = 64 +} + +// Namespace: System.Globalization +internal enum DateTimeFormatFlags // TypeDefIndex: 387 +{ + Unused = 0, + But = 1, + Serialized = 2, + By = 3, + Microsoft = 4 +} + +// Namespace: System.Globalization +[Serializable] +public sealed class DateTimeFormatInfo : ICloneable, IFormatProvider // TypeDefIndex: 388 +{ + // Fields + private const string _RoundtripPattern = "yyyy'-'MM'-'dd'T'HH':'mm':'ss.fffffffK"; // 0x00 + private static readonly string MSG_READONLY; // 0x00 + private static readonly string MSG_ARRAYSIZE_MONTH; // 0x04 + private static readonly string MSG_ARRAYSIZE_DAY; // 0x08 + private static readonly string[] INVARIANT_ABBREVIATED_DAY_NAMES; // 0x0C + private static readonly string[] INVARIANT_DAY_NAMES; // 0x10 + private static readonly string[] INVARIANT_ABBREVIATED_MONTH_NAMES; // 0x14 + private static readonly string[] INVARIANT_MONTH_NAMES; // 0x18 + private static readonly string[] INVARIANT_SHORT_DAY_NAMES; // 0x1C + private static DateTimeFormatInfo theInvariantDateTimeFormatInfo; // 0x20 + private bool m_isReadOnly; // 0x08 + private string amDesignator; // 0x0C + private string pmDesignator; // 0x10 + private string dateSeparator; // 0x14 + private string timeSeparator; // 0x18 + private string shortDatePattern; // 0x1C + private string longDatePattern; // 0x20 + private string shortTimePattern; // 0x24 + private string longTimePattern; // 0x28 + private string monthDayPattern; // 0x2C + private string yearMonthPattern; // 0x30 + private string fullDateTimePattern; // 0x34 + private string _RFC1123Pattern; // 0x38 + private string _SortableDateTimePattern; // 0x3C + private string _UniversalSortableDateTimePattern; // 0x40 + private int firstDayOfWeek; // 0x44 + private Calendar calendar; // 0x48 + private int calendarWeekRule; // 0x4C + private string[] abbreviatedDayNames; // 0x50 + private string[] dayNames; // 0x54 + private string[] monthNames; // 0x58 + private string[] abbreviatedMonthNames; // 0x5C + private string[] allShortDatePatterns; // 0x60 + private string[] allLongDatePatterns; // 0x64 + private string[] allShortTimePatterns; // 0x68 + private string[] allLongTimePatterns; // 0x6C + private string[] monthDayPatterns; // 0x70 + private string[] yearMonthPatterns; // 0x74 + private string[] shortDayNames; // 0x78 + private int nDataItem; // 0x7C + private bool m_useUserOverride; // 0x80 + private bool m_isDefaultCalendar; // 0x81 + private int CultureID; // 0x84 + private bool bUseCalendarInfo; // 0x88 + private string generalShortTimePattern; // 0x8C + private string generalLongTimePattern; // 0x90 + private string[] m_eraNames; // 0x94 + private string[] m_abbrevEraNames; // 0x98 + private string[] m_abbrevEnglishEraNames; // 0x9C + private string[] m_dateWords; // 0xA0 + private int[] optionalCalendars; // 0xA4 + private string[] m_superShortDayNames; // 0xA8 + private string[] genitiveMonthNames; // 0xAC + private string[] m_genitiveAbbreviatedMonthNames; // 0xB0 + private string[] leapYearMonthNames; // 0xB4 + private DateTimeFormatFlags formatFlags; // 0xB8 + private string m_name; // 0xBC + private string[] all_date_time_patterns; // 0xC0 + + // Properties + public bool IsReadOnly { get; } // 0x100EA020 + public string[] AbbreviatedDayNames { get; set; } // 0x101BC0A0 0x101BC5B0 + internal string[] RawAbbreviatedDayNames { get; set; } // 0x10132810 0x101BC5B0 + public string[] AbbreviatedMonthNames { get; set; } // 0x101BC120 0x101BC740 + internal string[] RawAbbreviatedMonthNames { get; set; } // 0x10145580 0x101BC740 + public string[] DayNames { get; set; } // 0x101BC210 0x101BCAD0 + internal string[] RawDayNames { get; set; } // 0x10145520 0x101BCAD0 + public string[] MonthNames { get; set; } // 0x101BC3F0 0x101BD020 + internal string[] RawMonthNames { get; set; } // 0x10145540 0x101BD020 + public string AMDesignator { get; set; } // 0x100C5B30 0x101BC4F0 + public string PMDesignator { get; set; } // 0x100BFC20 0x101BD190 + public string DateSeparator { get; set; } // 0x100EF0C0 0x101BCA10 + public string TimeSeparator { get; set; } // 0x100EE580 0x101BD500 + public string LongDatePattern { get; set; } // 0x100EACD0 0x101BCDC0 + public string ShortDatePattern { get; set; } // 0x100F85F0 0x101BD250 + public string ShortTimePattern { get; set; } // 0x100EAD50 0x101BD310 + public string LongTimePattern { get; set; } // 0x100EB040 0x101BCE80 + public string MonthDayPattern { get; set; } // 0x100EB200 0x101BCF40 + public string YearMonthPattern { get; set; } // 0x100EA580 0x101BD5C0 + public string FullDateTimePattern { get; set; } // 0x101BC280 0x101BCD00 + public static DateTimeFormatInfo CurrentInfo { get; } // 0x101BC190 + public static DateTimeFormatInfo InvariantInfo { get; } // 0x101BC2F0 + public DayOfWeek FirstDayOfWeek { get; set; } // 0x10145530 0x101BCC40 + public Calendar Calendar { get; set; } // 0x10145560 0x101BC950 + public CalendarWeekRule CalendarWeekRule { get; set; } // 0x10145570 0x101BC8B0 + public string RFC1123Pattern { get; } // 0x100EB210 + internal string RoundtripPattern { get; } // 0x101BC4B0 + public string SortableDateTimePattern { get; } // 0x100EB220 + public string UniversalSortableDateTimePattern { get; } // 0x100E9E80 + public string[] AbbreviatedMonthGenitiveNames { get; set; } // 0x101BC110 0x101BC720 + public string[] MonthGenitiveNames { get; set; } // 0x101BC3E0 0x101BD000 + public string NativeCalendarName { get; } // 0x101BC460 + public string[] ShortestDayNames { get; set; } // 0x101BC4E0 0x101BD3D0 + + // Methods + internal void .ctor(bool read_only); // 0x101BBF40 + public void .ctor(); // 0x101BBF10 + private static void .cctor(); // 0x101BAF00 + public static DateTimeFormatInfo GetInstance(IFormatProvider provider); // 0x101BA9E0 + public static DateTimeFormatInfo ReadOnly(DateTimeFormatInfo dtfi); // 0x101BAD90 + public object Clone(); // 0x101B9830 + public object GetFormat(Type formatType); // 0x101BA9C0 + public string GetAbbreviatedEraName(int era); // 0x101B9F90 + public string GetAbbreviatedMonthName(int month); // 0x101BA060 + public int GetEra(string eraName); // 0x101BA800 + public string GetEraName(int era); // 0x101BA730 + public string GetMonthName(int month); // 0x101BAB60 + public string[] GetAllDateTimePatterns(); // 0x101BA110 + internal string[] GetAllDateTimePatternsInternal(); // 0x101BA0E0 + private void FillAllDateTimePatterns(); // 0x101B9890 + public string[] GetAllDateTimePatterns(char format); // 0x101BA190 + internal string[] GetAllRawDateTimePatterns(char format); // 0x101BA210 + public string GetDayName(DayOfWeek dayofweek); // 0x101BA6B0 + public string GetAbbreviatedDayName(DayOfWeek dayofweek); // 0x101B9F00 + private void FillInvariantPatterns(); // 0x101B9B50 + private string[] PopulateCombinedList(string[] dates, string[] times); // 0x101BAC60 + public string GetShortestDayName(DayOfWeek dayOfWeek); // 0x101BABE0 + public void SetAllDateTimePatterns(string[] patterns, char format); // 0x101BADF0 +} + +// Namespace: System.Globalization +[Serializable] +public enum DateTimeStyles // TypeDefIndex: 389 +{ + None = 0, + AllowLeadingWhite = 1, + AllowTrailingWhite = 2, + AllowInnerWhite = 4, + AllowWhiteSpaces = 7, + NoCurrentDateDefault = 8, + AdjustToUniversal = 16, + AssumeLocal = 32, + AssumeUniversal = 64, + RoundtripKind = 128 +} + +// Namespace: System.Globalization +[Serializable] +public class DaylightTime // TypeDefIndex: 390 +{ + // Fields + private DateTime m_start; // 0x08 + private DateTime m_end; // 0x18 + private TimeSpan m_delta; // 0x28 + + // Properties + public DateTime Start { get; } // 0x10192480 + public DateTime End { get; } // 0x102B29F0 + public TimeSpan Delta { get; } // 0x101D5290 + + // Methods + public void .ctor(DateTime start, DateTime end, TimeSpan delta); // 0x102B29B0 +} + +// Namespace: System.Globalization +[Serializable] +public enum DigitShapes // TypeDefIndex: 391 +{ + Context = 0, + None = 1, + NativeNational = 2 +} + +// Namespace: System.Globalization +[Serializable] +public abstract class EastAsianLunisolarCalendar : Calendar // TypeDefIndex: 392 +{ + // Fields + internal readonly CCEastAsianLunisolarEraHandler M_EraHandler; // 0x20 + + // Properties + public override int TwoDigitYearMax { get; set; } // 0x100C5B30 0x102B5320 + internal virtual int ActualCurrentEra { get; } // 0x100EF660 + public override CalendarAlgorithmType AlgorithmType { get; } // 0x10158A50 + + // Methods + internal void .ctor(CCEastAsianLunisolarEraHandler eraHandler); // 0x102B5300 + internal void M_CheckDateTime(DateTime time); // 0x102B4F70 + internal void M_CheckEra(int era); // 0x102B4FA0 + internal int M_CheckYEG(int year, int era); // 0x102B5040 + internal override void M_CheckYE(int year, int era); // 0x102B50F0 + internal int M_CheckYMEG(int year, int month, int era); // 0x102B5180 + internal int M_CheckYMDEG(int year, int month, int day, int era); // 0x102B5100 + public override DateTime AddMonths(DateTime time, int months); // 0x102B4AB0 + public override DateTime AddYears(DateTime time, int years); // 0x102B4B10 + public override int GetDayOfMonth(DateTime time); // 0x102B4BE0 + public override DayOfWeek GetDayOfWeek(DateTime time); // 0x102B4C30 + public override int GetDayOfYear(DateTime time); // 0x102B4C80 + public override int GetDaysInMonth(int year, int month, int era); // 0x102B4CD0 + public override int GetDaysInYear(int year, int era); // 0x102B4D00 + public override int GetLeapMonth(int year, int era); // 0x102B4D30 + public override int GetMonth(DateTime time); // 0x102B4D40 + public override int GetMonthsInYear(int year, int era); // 0x102B4D90 + public override int GetYear(DateTime time); // 0x102B4E90 + public override bool IsLeapDay(int year, int month, int day, int era); // 0x102B4EE0 + public override bool IsLeapMonth(int year, int month, int era); // 0x102B4F10 + public override bool IsLeapYear(int year, int era); // 0x102B4F40 + public override DateTime ToDateTime(int year, int month, int day, int hour, int minute, int second, int millisecond, int era); // 0x102B5200 + public override int ToFourDigitYear(int year); // 0x102B5270 + public int GetCelestialStem(int sexagenaryYear); // 0x102B4B70 + public virtual int GetSexagenaryYear(DateTime time); // 0x102B4DE0 + public int GetTerrestrialBranch(int sexagenaryYear); // 0x102B4E20 +} + +// Namespace: System.Globalization +[Serializable] +public class GregorianCalendar : Calendar // TypeDefIndex: 393 +{ + // Fields + public const int ADEra = 1; // 0x00 + [NonSerialized] internal GregorianCalendarTypes m_type; // 0x20 + private static Nullable`1 Min; // 0x00 + private static Nullable`1 Max; // 0x18 + + // Properties + public override int[] Eras { get; } // 0x102B5AC0 + public override int TwoDigitYearMax { get; set; } // 0x100C5B30 0x102B5CF0 + public virtual GregorianCalendarTypes CalendarType { get; set; } // 0x100EACD0 0x102B5CD0 + public override DateTime MinSupportedDateTime { get; } // 0x102B5C00 + public override DateTime MaxSupportedDateTime { get; } // 0x102B5B20 + + // Methods + public void .ctor(GregorianCalendarTypes type); // 0x102B5870 + public void .ctor(); // 0x102B59A0 + internal void M_CheckEra(int era); // 0x102B55D0 + internal override void M_CheckYE(int year, int era); // 0x102B5640 + internal void M_CheckYME(int year, int month, int era); // 0x102B5760 + internal void M_CheckYMDE(int year, int month, int day, int era); // 0x102B56F0 + public override DateTime AddMonths(DateTime time, int months); // 0x102B5380 + public override DateTime AddYears(DateTime time, int years); // 0x102B53B0 + public override int GetDayOfMonth(DateTime time); // 0x102B53E0 + public override DayOfWeek GetDayOfWeek(DateTime time); // 0x102B5400 + public override int GetDayOfYear(DateTime time); // 0x102B5430 + public override int GetDaysInMonth(int year, int month, int era); // 0x102B5450 + public override int GetDaysInYear(int year, int era); // 0x102B5480 + public override int GetEra(DateTime time); // 0x100EF660 + public override int GetLeapMonth(int year, int era); // 0x100C5600 + public override int GetMonth(DateTime time); // 0x102B54B0 + public override int GetMonthsInYear(int year, int era); // 0x102B54D0 + public override int GetWeekOfYear(DateTime time, CalendarWeekRule rule, DayOfWeek firstDayOfWeek); // 0x102B5500 + public override int GetYear(DateTime time); // 0x102B5530 + public override bool IsLeapDay(int year, int month, int day, int era); // 0x102B5550 + public override bool IsLeapMonth(int year, int month, int era); // 0x102B5580 + public override bool IsLeapYear(int year, int era); // 0x102B55A0 + public override DateTime ToDateTime(int year, int month, int day, int hour, int minute, int second, int millisecond, int era); // 0x102B57F0 + public override int ToFourDigitYear(int year); // 0x102B5860 +} + +// Namespace: System.Globalization +[Serializable] +public enum GregorianCalendarTypes // TypeDefIndex: 394 +{ + Localized = 1, + USEnglish = 2, + MiddleEastFrench = 9, + Arabic = 10, + TransliteratedEnglish = 11, + TransliteratedFrench = 12 +} + +// Namespace: System.Globalization +[Serializable] +public class HebrewCalendar : Calendar // TypeDefIndex: 395 +{ + // Fields + internal const long M_MinTicks = 499147488000000000; // 0x00 + internal const long M_MaxTicks = 706783967999999999; // 0x00 + internal const int M_MinYear = 5343; // 0x00 + public static readonly int HebrewEra; // 0x00 + private static DateTime Min; // 0x08 + private static DateTime Max; // 0x18 + + // Properties + internal override int M_MaxYear { get; } // 0x102B8DA0 + public override int[] Eras { get; } // 0x102B8D20 + public override int TwoDigitYearMax { get; set; } // 0x100C5B30 0x102B8E70 + public override DateTime MinSupportedDateTime { get; } // 0x102B8E10 + public override DateTime MaxSupportedDateTime { get; } // 0x102B8DB0 + + // Methods + public void .ctor(); // 0x102B8C10 + private static void .cctor(); // 0x102B8B70 + internal void M_CheckDateTime(DateTime time); // 0x102B8620 + internal void M_CheckEra(int era); // 0x102B86C0 + internal override void M_CheckYE(int year, int era); // 0x102B8770 + internal void M_CheckYME(int year, int month, int era); // 0x102B8910 + internal void M_CheckYMDE(int year, int month, int day, int era); // 0x102B88A0 + public override DateTime AddMonths(DateTime time, int months); // 0x102B7F60 + public override DateTime AddYears(DateTime time, int years); // 0x102B80E0 + public override int GetDayOfMonth(DateTime time); // 0x102B81A0 + public override DayOfWeek GetDayOfWeek(DateTime time); // 0x102B81E0 + public override int GetDayOfYear(DateTime time); // 0x102B8220 + internal int M_CCMonth(int month, int year); // 0x102B85E0 + internal int M_Month(int ccmonth, int year); // 0x102B89F0 + public override int GetDaysInMonth(int year, int month, int era); // 0x102B8280 + public override int GetDaysInYear(int year, int era); // 0x102B8310 + public override int GetEra(DateTime time); // 0x102B8360 + public override int GetLeapMonth(int year, int era); // 0x102B83D0 + public override int GetMonth(DateTime time); // 0x102B8400 + public override int GetMonthsInYear(int year, int era); // 0x102B8490 + public override int GetYear(DateTime time); // 0x102B84C0 + public override bool IsLeapDay(int year, int month, int day, int era); // 0x102B8500 + public override bool IsLeapMonth(int year, int month, int era); // 0x102B8560 + public override bool IsLeapYear(int year, int era); // 0x102B85B0 + public override DateTime ToDateTime(int year, int month, int day, int hour, int minute, int second, int millisecond, int era); // 0x102B8A20 + public override int ToFourDigitYear(int year); // 0x102B8AE0 +} + +// Namespace: System.Globalization +[Serializable] +public class HijriCalendar : Calendar // TypeDefIndex: 396 +{ + // Fields + public static readonly int HijriEra; // 0x00 + internal static readonly int M_MinFixed; // 0x04 + internal static readonly int M_MaxFixed; // 0x08 + internal int M_AddHijriDate; // 0x20 + private static DateTime Min; // 0x10 + private static DateTime Max; // 0x20 + + // Properties + public override int[] Eras { get; } // 0x102B9F00 + public int HijriAdjustment { get; set; } // 0x102B9F80 0x102BA0D0 + public override int TwoDigitYearMax { get; set; } // 0x100C5B30 0x102BA120 + internal virtual int AddHijriDate { get; set; } // 0x100EACD0 0x102BA090 + public override DateTime MinSupportedDateTime { get; } // 0x102BA030 + public override DateTime MaxSupportedDateTime { get; } // 0x102B9FD0 + + // Methods + public void .ctor(); // 0x102B9DF0 + private static void .cctor(); // 0x102B9D10 + internal void M_CheckFixedHijri(string param, int rdHijri); // 0x102B9640 + internal void M_CheckDateTime(DateTime time); // 0x102B9520 + internal int M_FromDateTime(DateTime time); // 0x102B9B90 + internal DateTime M_ToDateTime(int rd); // 0x102B9C30 + internal DateTime M_ToDateTime(int date, int hour, int minute, int second, int milliseconds); // 0x102B9BD0 + internal void M_CheckEra(int era); // 0x102B9590 + internal override void M_CheckYE(int year, int era); // 0x102B9930 + internal void M_CheckYME(int year, int month, int era); // 0x102B9AE0 + internal void M_CheckYMDE(int year, int month, int day, int era); // 0x102B9A20 + public override DateTime AddMonths(DateTime time, int months); // 0x102B8EE0 + public override DateTime AddYears(DateTime time, int years); // 0x102B8FF0 + public override int GetDayOfMonth(DateTime time); // 0x102B90F0 + public override DayOfWeek GetDayOfWeek(DateTime time); // 0x102B9160 + public override int GetDayOfYear(DateTime time); // 0x102B91D0 + public override int GetDaysInMonth(int year, int month, int era); // 0x102B9250 + public override int GetDaysInYear(int year, int era); // 0x102B92A0 + public override int GetEra(DateTime time); // 0x102B92F0 + public override int GetLeapMonth(int year, int era); // 0x100C5600 + public override int GetMonth(DateTime time); // 0x102B93A0 + public override int GetMonthsInYear(int year, int era); // 0x102B54D0 + public override int GetYear(DateTime time); // 0x102B9410 + public override bool IsLeapDay(int year, int month, int day, int era); // 0x102B9480 + public override bool IsLeapMonth(int year, int month, int era); // 0x102B94D0 + public override bool IsLeapYear(int year, int era); // 0x102B94F0 + public override DateTime ToDateTime(int year, int month, int day, int hour, int minute, int second, int millisecond, int era); // 0x102B9C70 + public override int ToFourDigitYear(int year); // 0x102B5860 +} + +// Namespace: System.Globalization +public sealed class IdnMapping // TypeDefIndex: 397 +{ + // Fields + private bool allow_unassigned; // 0x08 + private bool use_std3; // 0x09 + private Punycode puny; // 0x0C + + // Properties + public bool AllowUnassigned { get; set; } // 0x100EA020 0x10155000 + public bool UseStd3AsciiRules { get; set; } // 0x10117290 0x10155020 + + // Methods + public void .ctor(); // 0x102BB300 + public override bool Equals(object obj); // 0x102BA340 + public override int GetHashCode(); // 0x102BA550 + public string GetAscii(string unicode); // 0x102BA3A0 + public string GetAscii(string unicode, int index); // 0x102BA410 + public string GetAscii(string unicode, int index, int count); // 0x102BA490 + private string Convert(string input, int index, int count, bool toAscii); // 0x102BA180 + private string ToAscii(string s, int offset); // 0x102BA840 + private void VerifyLength(string s, int offset); // 0x102BAD40 + private string NamePrep(string s, int offset); // 0x102BA720 + private void VerifyProhibitedCharacters(string s, int offset); // 0x102BAE70 + private void VerifyStd3AsciiRules(string s, int offset); // 0x102BB0B0 + public string GetUnicode(string ascii); // 0x102BA6B0 + public string GetUnicode(string ascii, int index); // 0x102BA630 + public string GetUnicode(string ascii, int index, int count); // 0x102BA570 + private string ToUnicode(string s, int offset); // 0x102BAB90 +} + +// Namespace: System.Globalization +internal class Bootstring // TypeDefIndex: 398 +{ + // Fields + private readonly char delimiter; // 0x08 + private readonly int base_num; // 0x0C + private readonly int tmin; // 0x10 + private readonly int tmax; // 0x14 + private readonly int skew; // 0x18 + private readonly int damp; // 0x1C + private readonly int initial_bias; // 0x20 + private readonly int initial_n; // 0x24 + + // Methods + public void .ctor(char delimiter, int baseNum, int tmin, int tmax, int skew, int damp, int initialBias, int initialN); // 0x101AE720 + public string Encode(string s, int offset); // 0x101AE380 + private char EncodeDigit(int d); // 0x101AE360 + private int DecodeDigit(char c); // 0x101AE0E0 + private int Adapt(int delta, int numPoints, bool firstTime); // 0x101AE060 + public string Decode(string s, int offset); // 0x101AE110 +} + +// Namespace: System.Globalization +internal class Punycode : Bootstring // TypeDefIndex: 399 +{ + // Methods + public void .ctor(); // 0x102C1AC0 +} + +// Namespace: System.Globalization +[Serializable] +public class JapaneseCalendar : Calendar // TypeDefIndex: 400 +{ + // Fields + internal static readonly CCGregorianEraHandler M_EraHandler; // 0x00 + private static DateTime JapanMin; // 0x08 + private static DateTime JapanMax; // 0x18 + + // Properties + public override int[] Eras { get; } // 0x102BC000 + public override int TwoDigitYearMax { get; set; } // 0x100C5B30 0x102BC160 + public override DateTime MinSupportedDateTime { get; } // 0x102BC100 + public override DateTime MaxSupportedDateTime { get; } // 0x102BC0A0 + + // Methods + public void .ctor(); // 0x102BBD00 + private static void .cctor(); // 0x102BBB50 + internal void M_CheckDateTime(DateTime time); // 0x102BB710 + internal void M_CheckEra(int era); // 0x102BB780 + internal int M_CheckYEG(int year, int era); // 0x102BB830 + internal override void M_CheckYE(int year, int era); // 0x102BB940 + internal int M_CheckYMEG(int year, int month, int era); // 0x102BB9D0 + internal int M_CheckYMDEG(int year, int month, int day, int era); // 0x102BB950 + public override DateTime AddMonths(DateTime time, int months); // 0x102BB370 + public override DateTime AddYears(DateTime time, int years); // 0x102BB3C0 + public override int GetDayOfMonth(DateTime time); // 0x102BB410 + public override DayOfWeek GetDayOfWeek(DateTime time); // 0x102BB450 + public override int GetDayOfYear(DateTime time); // 0x102BB490 + public override int GetDaysInMonth(int year, int month, int era); // 0x102BB4D0 + public override int GetDaysInYear(int year, int era); // 0x102BB500 + public override int GetEra(DateTime time); // 0x102BB530 + public override int GetLeapMonth(int year, int era); // 0x100C5600 + public override int GetMonth(DateTime time); // 0x102BB5C0 + public override int GetMonthsInYear(int year, int era); // 0x102B54D0 + public override int GetWeekOfYear(DateTime time, CalendarWeekRule rule, DayOfWeek firstDayOfWeek); // 0x102B5500 + public override int GetYear(DateTime time); // 0x102BB600 + public override bool IsLeapDay(int year, int month, int day, int era); // 0x102BB690 + public override bool IsLeapMonth(int year, int month, int era); // 0x102BB6C0 + public override bool IsLeapYear(int year, int era); // 0x102BB6E0 + public override DateTime ToDateTime(int year, int month, int day, int hour, int minute, int second, int millisecond, int era); // 0x102BBA50 + public override int ToFourDigitYear(int year); // 0x102BBAC0 +} + +// Namespace: System.Globalization +[Serializable] +public class JapaneseLunisolarCalendar : EastAsianLunisolarCalendar // TypeDefIndex: 401 +{ + // Fields + public const int JapaneseEra = 1; // 0x00 + internal static readonly CCEastAsianLunisolarEraHandler era_handler; // 0x00 + private static DateTime JapanMin; // 0x08 + private static DateTime JapanMax; // 0x18 + + // Properties + internal override int ActualCurrentEra { get; } // 0x100FCEA0 + public override int[] Eras { get; } // 0x102BC3E0 + public override DateTime MinSupportedDateTime { get; } // 0x102BC4E0 + public override DateTime MaxSupportedDateTime { get; } // 0x102BC480 + + // Methods + public void .ctor(); // 0x102BC380 + private static void .cctor(); // 0x102BC250 + public override int GetEra(DateTime time); // 0x102BC1C0 +} + +// Namespace: System.Globalization +[Serializable] +public class JulianCalendar : Calendar // TypeDefIndex: 402 +{ + // Fields + public static readonly int JulianEra; // 0x00 + private static DateTime JulianMin; // 0x08 + private static DateTime JulianMax; // 0x18 + + // Properties + public override int[] Eras { get; } // 0x102BCE10 + public override int TwoDigitYearMax { get; set; } // 0x100C5B30 0x102BCF50 + public override CalendarAlgorithmType AlgorithmType { get; } // 0x100EF660 + public override DateTime MinSupportedDateTime { get; } // 0x102BCEF0 + public override DateTime MaxSupportedDateTime { get; } // 0x102BCE90 + + // Methods + public void .ctor(); // 0x102BCD00 + private static void .cctor(); // 0x102BCC60 + internal void M_CheckEra(int era); // 0x102BC900 + internal override void M_CheckYE(int year, int era); // 0x102BC9B0 + internal void M_CheckYME(int year, int month, int era); // 0x102BCB50 + internal void M_CheckYMDE(int year, int month, int day, int era); // 0x102BCAA0 + public override DateTime AddMonths(DateTime time, int months); // 0x102BC540 + public override DateTime AddYears(DateTime time, int years); // 0x102BC600 + public override int GetDayOfMonth(DateTime time); // 0x102BC6A0 + public override DayOfWeek GetDayOfWeek(DateTime time); // 0x102B5400 + public override int GetDayOfYear(DateTime time); // 0x102BC6D0 + public override int GetDaysInMonth(int year, int month, int era); // 0x102BC710 + public override int GetDaysInYear(int year, int era); // 0x102BC760 + public override int GetEra(DateTime time); // 0x102BC7B0 + public override int GetLeapMonth(int year, int era); // 0x100C5600 + public override int GetMonth(DateTime time); // 0x102BC800 + public override int GetMonthsInYear(int year, int era); // 0x102B54D0 + public override int GetYear(DateTime time); // 0x102BC830 + public override bool IsLeapDay(int year, int month, int day, int era); // 0x102BC860 + public override bool IsLeapMonth(int year, int month, int era); // 0x102BC8B0 + public override bool IsLeapYear(int year, int era); // 0x102BC8D0 + public override DateTime ToDateTime(int year, int month, int day, int hour, int minute, int second, int millisecond, int era); // 0x102BCBE0 + public override int ToFourDigitYear(int year); // 0x102B5860 +} + +// Namespace: System.Globalization +[Serializable] +public class KoreanCalendar : Calendar // TypeDefIndex: 403 +{ + // Fields + public const int KoreanEra = 1; // 0x00 + internal static readonly CCGregorianEraHandler M_EraHandler; // 0x00 + private static DateTime KoreanMin; // 0x08 + private static DateTime KoreanMax; // 0x18 + + // Properties + public override int[] Eras { get; } // 0x102BD710 + public override int TwoDigitYearMax { get; set; } // 0x100C5B30 0x102BD870 + public override DateTime MinSupportedDateTime { get; } // 0x102BD810 + public override DateTime MaxSupportedDateTime { get; } // 0x102BD7B0 + + // Methods + public void .ctor(); // 0x102BD600 + private static void .cctor(); // 0x102BD510 + internal void M_CheckEra(int era); // 0x102BD1D0 + internal int M_CheckYEG(int year, int era); // 0x102BD280 + internal override void M_CheckYE(int year, int era); // 0x102BD390 + internal int M_CheckYMEG(int year, int month, int era); // 0x102BD420 + internal int M_CheckYMDEG(int year, int month, int day, int era); // 0x102BD3A0 + public override DateTime AddMonths(DateTime time, int months); // 0x102B5380 + public override DateTime AddYears(DateTime time, int years); // 0x102B53B0 + public override int GetDayOfMonth(DateTime time); // 0x102B53E0 + public override DayOfWeek GetDayOfWeek(DateTime time); // 0x102B5400 + public override int GetDayOfYear(DateTime time); // 0x102B5430 + public override int GetDaysInMonth(int year, int month, int era); // 0x102BCFB0 + public override int GetDaysInYear(int year, int era); // 0x102BCFE0 + public override int GetEra(DateTime time); // 0x102BD010 + public override int GetLeapMonth(int year, int era); // 0x100C5600 + public override int GetMonth(DateTime time); // 0x102B54B0 + public override int GetMonthsInYear(int year, int era); // 0x102BD0A0 + public override int GetWeekOfYear(DateTime time, CalendarWeekRule rule, DayOfWeek firstDayOfWeek); // 0x102B5500 + public override int GetYear(DateTime time); // 0x102BD0C0 + public override bool IsLeapDay(int year, int month, int day, int era); // 0x102BD150 + public override bool IsLeapMonth(int year, int month, int era); // 0x102BD180 + public override bool IsLeapYear(int year, int era); // 0x102BD1A0 + public override DateTime ToDateTime(int year, int month, int day, int hour, int minute, int second, int millisecond, int era); // 0x102BD4A0 + public override int ToFourDigitYear(int year); // 0x102B5860 +} + +// Namespace: System.Globalization +[Serializable] +public class KoreanLunisolarCalendar : EastAsianLunisolarCalendar // TypeDefIndex: 404 +{ + // Fields + public const int GregorianEra = 1; // 0x00 + internal static readonly CCEastAsianLunisolarEraHandler era_handler; // 0x00 + private static DateTime KoreanMin; // 0x08 + private static DateTime KoreanMax; // 0x18 + + // Properties + public override int[] Eras { get; } // 0x102BDAD0 + public override DateTime MinSupportedDateTime { get; } // 0x102BDBD0 + public override DateTime MaxSupportedDateTime { get; } // 0x102BDB70 + + // Methods + public void .ctor(); // 0x102BDA70 + private static void .cctor(); // 0x102BD960 + public override int GetEra(DateTime time); // 0x102BD8D0 +} + +// Namespace: System.Globalization +[Serializable] +public sealed class NumberFormatInfo : ICloneable, IFormatProvider // TypeDefIndex: 405 +{ + // Fields + private bool isReadOnly; // 0x08 + private string decimalFormats; // 0x0C + private string currencyFormats; // 0x10 + private string percentFormats; // 0x14 + private string digitPattern; // 0x18 + private string zeroPattern; // 0x1C + private int currencyDecimalDigits; // 0x20 + private string currencyDecimalSeparator; // 0x24 + private string currencyGroupSeparator; // 0x28 + private int[] currencyGroupSizes; // 0x2C + private int currencyNegativePattern; // 0x30 + private int currencyPositivePattern; // 0x34 + private string currencySymbol; // 0x38 + private string nanSymbol; // 0x3C + private string negativeInfinitySymbol; // 0x40 + private string negativeSign; // 0x44 + private int numberDecimalDigits; // 0x48 + private string numberDecimalSeparator; // 0x4C + private string numberGroupSeparator; // 0x50 + private int[] numberGroupSizes; // 0x54 + private int numberNegativePattern; // 0x58 + private int percentDecimalDigits; // 0x5C + private string percentDecimalSeparator; // 0x60 + private string percentGroupSeparator; // 0x64 + private int[] percentGroupSizes; // 0x68 + private int percentNegativePattern; // 0x6C + private int percentPositivePattern; // 0x70 + private string percentSymbol; // 0x74 + private string perMilleSymbol; // 0x78 + private string positiveInfinitySymbol; // 0x7C + private string positiveSign; // 0x80 + private string ansiCurrencySymbol; // 0x84 + private int m_dataItem; // 0x88 + private bool m_useUserOverride; // 0x8C + private bool validForParseAsNumber; // 0x8D + private bool validForParseAsCurrency; // 0x8E + private string[] nativeDigits; // 0x90 + private int digitSubstitution; // 0x94 + private static readonly string[] invariantNativeDigits; // 0x00 + + // Properties + public int CurrencyDecimalDigits { get; set; } // 0x100EACD0 0x102BF730 + public string CurrencyDecimalSeparator { get; set; } // 0x100EAD50 0x102BF7D0 + public string CurrencyGroupSeparator { get; set; } // 0x100EB040 0x102BF870 + public int[] CurrencyGroupSizes { get; set; } // 0x102BF480 0x102BF910 + internal int[] RawCurrencyGroupSizes { get; set; } // 0x100EB200 0x102C0520 + public int CurrencyNegativePattern { get; set; } // 0x100EA580 0x102BF920 + public int CurrencyPositivePattern { get; set; } // 0x100E9ED0 0x102BF9C0 + public string CurrencySymbol { get; set; } // 0x100EB210 0x102BFA60 + public static NumberFormatInfo CurrentInfo { get; } // 0x102BF4F0 + public static NumberFormatInfo InvariantInfo { get; } // 0x102BF570 + public bool IsReadOnly { get; } // 0x100EA020 + public string NaNSymbol { get; set; } // 0x100EB220 0x102BFB00 + public string NegativeInfinitySymbol { get; set; } // 0x100E9E80 0x102BFBA0 + public string NegativeSign { get; set; } // 0x10145530 0x102BFC40 + public int NumberDecimalDigits { get; set; } // 0x10145560 0x102BFCE0 + public string NumberDecimalSeparator { get; set; } // 0x10145570 0x102BFD80 + public string NumberGroupSeparator { get; set; } // 0x10132810 0x102BFE20 + public int[] NumberGroupSizes { get; set; } // 0x102BF620 0x102BFEC0 + internal int[] RawNumberGroupSizes { get; set; } // 0x10145520 0x102C0690 + public int NumberNegativePattern { get; set; } // 0x10145540 0x102BFED0 + public int PercentDecimalDigits { get; set; } // 0x10145580 0x102C0010 + public string PercentDecimalSeparator { get; set; } // 0x10145550 0x102C00B0 + public string PercentGroupSeparator { get; set; } // 0x10145590 0x102C0150 + public int[] PercentGroupSizes { get; set; } // 0x102BF690 0x102C01F0 + internal int[] RawPercentGroupSizes { get; set; } // 0x1013F890 0x102C0800 + public int PercentNegativePattern { get; set; } // 0x102BF700 0x102C0200 + public int PercentPositivePattern { get; set; } // 0x101356C0 0x102C02A0 + public string PercentSymbol { get; set; } // 0x10167E60 0x102C0340 + public string PerMilleSymbol { get; set; } // 0x101BC4E0 0x102BFF70 + public string PositiveInfinitySymbol { get; set; } // 0x102BF710 0x102C03E0 + public string PositiveSign { get; set; } // 0x102BF720 0x102C0480 + + // Methods + internal void .ctor(int lcid, bool read_only); // 0x102BF280 + internal void .ctor(bool read_only); // 0x102BF240 + public void .ctor(); // 0x102BF260 + private static void .cctor(); // 0x102BEEC0 + private void InitPatterns(); // 0x102BDE70 + public object GetFormat(Type formatType); // 0x102BDC90 + public object Clone(); // 0x102BDC30 + public static NumberFormatInfo ReadOnly(NumberFormatInfo nfi); // 0x102BEE20 + public static NumberFormatInfo GetInstance(IFormatProvider formatProvider); // 0x102BDCF0 +} + +// Namespace: System.Globalization +[Serializable] +public enum NumberStyles // TypeDefIndex: 406 +{ + None = 0, + AllowLeadingWhite = 1, + AllowTrailingWhite = 2, + AllowLeadingSign = 4, + Integer = 7, + AllowTrailingSign = 8, + AllowParentheses = 16, + AllowDecimalPoint = 32, + AllowThousands = 64, + Number = 111, + AllowExponent = 128, + Float = 167, + AllowCurrencySymbol = 256, + Currency = 383, + Any = 511, + AllowHexSpecifier = 512, + HexNumber = 515 +} + +// Namespace: System.Globalization +[Serializable] +public class PersianCalendar : Calendar // TypeDefIndex: 407 +{ + // Fields + internal const long M_MinTicks = 196036416000000000; // 0x00 + internal const int M_MinYear = 1; // 0x00 + internal const int epoch = 226895; // 0x00 + public static readonly int PersianEra; // 0x00 + private static DateTime PersianMin; // 0x08 + private static DateTime PersianMax; // 0x18 + + // Properties + public override int[] Eras { get; } // 0x102C1830 + public override int TwoDigitYearMax { get; set; } // 0x100C5B30 0x102C1A30 + public override CalendarAlgorithmType AlgorithmType { get; } // 0x100EF660 + public override DateTime MinSupportedDateTime { get; } // 0x102C1910 + public override DateTime MaxSupportedDateTime { get; } // 0x102C18B0 + + // Methods + public void .ctor(); // 0x102C15E0 + private static void .cctor(); // 0x102C1540 + internal void M_CheckDateTime(DateTime time); // 0x102C1020 + internal void M_CheckEra(int era); // 0x102C10A0 + internal override void M_CheckYE(int year, int era); // 0x102C1150 + internal void M_CheckYME(int year, int month, int era); // 0x102C1350 + internal void M_CheckYMDE(int year, int month, int day, int era); // 0x102C1280 + internal int fixed_from_dmy(int day, int month, int year); // 0x102C17D0 + internal int year_from_fixed(int date); // 0x102C1A90 + internal void my_from_fixed(out int month, out int year, int date); // 0x102C1990 + internal void dmy_from_fixed(out int day, out int month, out int year, int date); // 0x102C16F0 + internal bool is_leap_year(int year); // 0x102C1970 + public override DateTime AddMonths(DateTime time, int months); // 0x102C09E0 + public override DateTime AddYears(DateTime time, int years); // 0x102C0B00 + public override int GetDayOfMonth(DateTime time); // 0x102C0C00 + public override DayOfWeek GetDayOfWeek(DateTime time); // 0x102C0C70 + public override int GetDayOfYear(DateTime time); // 0x102C0CB0 + public override int GetDaysInMonth(int year, int month, int era); // 0x102C0D30 + public override int GetDaysInYear(int year, int era); // 0x102C0D90 + public override int GetEra(DateTime time); // 0x102C0DE0 + public override int GetLeapMonth(int year, int era); // 0x100C5600 + public override int GetMonth(DateTime time); // 0x102C0E50 + public override int GetMonthsInYear(int year, int era); // 0x102B54D0 + public override int GetYear(DateTime time); // 0x102C0F10 + public override bool IsLeapDay(int year, int month, int day, int era); // 0x102C0F70 + public override bool IsLeapMonth(int year, int month, int era); // 0x102C0FC0 + public override bool IsLeapYear(int year, int era); // 0x102C0FE0 + public override DateTime ToDateTime(int year, int month, int day, int hour, int minute, int second, int millisecond, int era); // 0x102C1410 + public override int ToFourDigitYear(int year); // 0x102C14D0 +} + +// Namespace: System.Globalization +[Serializable] +public class RegionInfo // TypeDefIndex: 408 +{ + // Fields + private static RegionInfo currentRegion; // 0x00 + private int lcid; // 0x08 + private int regionId; // 0x0C + private string iso2Name; // 0x10 + private string iso3Name; // 0x14 + private string win3Name; // 0x18 + private string englishName; // 0x1C + private string currencySymbol; // 0x20 + private string isoCurrencySymbol; // 0x24 + private string currencyEnglishName; // 0x28 + private static Dictionary`2 <>f__switch$map1B; // 0x04 + + // Properties + public static RegionInfo CurrentRegion { get; } // 0x102C1EC0 + public virtual string CurrencyEnglishName { get; } // 0x100EB040 + public virtual string CurrencySymbol { get; } // 0x100EACD0 + public virtual string DisplayName { get; } // 0x100F85F0 + public virtual string EnglishName { get; } // 0x100F85F0 + public virtual int GeoId { get; } // 0x100C5B30 + public virtual bool IsMetric { get; } // 0x102C2080 + public virtual string ISOCurrencySymbol { get; } // 0x100EAD50 + public virtual string NativeName { get; } // 0x102C2170 + public virtual string CurrencyNativeName { get; } // 0x102C1E70 + public virtual string Name { get; } // 0x100BFC20 + public virtual string ThreeLetterISORegionName { get; } // 0x100EF0C0 + public virtual string ThreeLetterWindowsRegionName { get; } // 0x100EE580 + public virtual string TwoLetterISORegionName { get; } // 0x100BFC20 + + // Methods + public void .ctor(int culture); // 0x102C1C50 + public void .ctor(string name); // 0x102C1D30 + private bool GetByTerritory(CultureInfo ci); // 0x102C1B70 + private bool construct_internal_region_from_name(string name); // 0x102C1E50 + public override bool Equals(object value); // 0x102C1AF0 + public override int GetHashCode(); // 0x102C1C30 + public override string ToString(); // 0x10208CB0 +} + +// Namespace: System.Globalization +[Serializable] +public class StringInfo // TypeDefIndex: 409 +{ + // Fields + private string s; // 0x08 + private int length; // 0x0C + + // Properties + public int LengthInTextElements { get; } // 0x102C3080 + public string String { get; set; } // 0x100BF0C0 0x102C3290 + + // Methods + public void .ctor(); // 0x100BF000 + public void .ctor(string value); // 0x102C3000 + public override bool Equals(object value); // 0x102C26F0 + public override int GetHashCode(); // 0x10140690 + public string SubstringByTextElements(int startingTextElement); // 0x102C2F40 + public string SubstringByTextElements(int startingTextElement, int lengthInTextElements); // 0x102C2E20 + public static string GetNextTextElement(string str); // 0x102C2950 + public static string GetNextTextElement(string str, int index); // 0x102C29C0 + private static int GetNextTextElementLength(string str, int index); // 0x102C2790 + public static TextElementEnumerator GetTextElementEnumerator(string str); // 0x102C2AE0 + public static TextElementEnumerator GetTextElementEnumerator(string str, int index); // 0x102C2A20 + public static int[] ParseCombiningCharacters(string str); // 0x102C2B80 +} + +// Namespace: System.Globalization +[Serializable] +public class TaiwanCalendar : Calendar // TypeDefIndex: 410 +{ + // Fields + internal static readonly CCGregorianEraHandler M_EraHandler; // 0x00 + private static DateTime TaiwanMin; // 0x08 + private static DateTime TaiwanMax; // 0x18 + + // Properties + public override int[] Eras { get; } // 0x102C3CF0 + public override int TwoDigitYearMax { get; set; } // 0x100C5B30 0x102C3E50 + public override DateTime MinSupportedDateTime { get; } // 0x102C3DF0 + public override DateTime MaxSupportedDateTime { get; } // 0x102C3D90 + + // Methods + public void .ctor(); // 0x102C3BF0 + private static void .cctor(); // 0x102C3B00 + internal void M_CheckDateTime(DateTime time); // 0x102C36C0 + internal void M_CheckEra(int era); // 0x102C3730 + internal int M_CheckYEG(int year, int era); // 0x102C37E0 + internal override void M_CheckYE(int year, int era); // 0x102C38F0 + internal int M_CheckYMEG(int year, int month, int era); // 0x102C3980 + internal int M_CheckYMDEG(int year, int month, int day, int era); // 0x102C3900 + public override DateTime AddMonths(DateTime time, int months); // 0x102C3300 + public override DateTime AddYears(DateTime time, int years); // 0x102C3350 + public override int GetDayOfMonth(DateTime time); // 0x102C33A0 + public override DayOfWeek GetDayOfWeek(DateTime time); // 0x102C33E0 + public override int GetDayOfYear(DateTime time); // 0x102C3420 + public override int GetDaysInMonth(int year, int month, int era); // 0x102C3460 + public override int GetDaysInYear(int year, int era); // 0x102C3490 + public override int GetEra(DateTime time); // 0x102C34C0 + public override int GetLeapMonth(int year, int era); // 0x100C5600 + public override int GetMonth(DateTime time); // 0x102C3550 + public override int GetMonthsInYear(int year, int era); // 0x102C3590 + public override int GetWeekOfYear(DateTime time, CalendarWeekRule rule, DayOfWeek firstDayOfWeek); // 0x102B5500 + public override int GetYear(DateTime time); // 0x102C35B0 + public override bool IsLeapDay(int year, int month, int day, int era); // 0x102C3640 + public override bool IsLeapMonth(int year, int month, int era); // 0x102C3670 + public override bool IsLeapYear(int year, int era); // 0x102C3690 + public override DateTime ToDateTime(int year, int month, int day, int hour, int minute, int second, int millisecond, int era); // 0x102C3A00 + public override int ToFourDigitYear(int year); // 0x102C3A70 +} + +// Namespace: System.Globalization +[Serializable] +public class TaiwanLunisolarCalendar : EastAsianLunisolarCalendar // TypeDefIndex: 411 +{ + // Fields + private const int TaiwanEra = 1; // 0x00 + internal static readonly CCEastAsianLunisolarEraHandler era_handler; // 0x00 + private static DateTime TaiwanMin; // 0x08 + private static DateTime TaiwanMax; // 0x18 + + // Properties + public override int[] Eras { get; } // 0x102C40B0 + public override DateTime MinSupportedDateTime { get; } // 0x102C41B0 + public override DateTime MaxSupportedDateTime { get; } // 0x102C4150 + + // Methods + public void .ctor(); // 0x102C4050 + private static void .cctor(); // 0x102C3F40 + public override int GetEra(DateTime time); // 0x102C3EB0 +} + +// Namespace: System.Globalization +[Serializable] +public class TextElementEnumerator : IEnumerator // TypeDefIndex: 412 +{ + // Fields + private int index; // 0x08 + private int elementindex; // 0x0C + private int startpos; // 0x10 + private string str; // 0x14 + private string element; // 0x18 + + // Properties + public object Current { get; } // 0x102C4370 + public int ElementIndex { get; } // 0x102C43D0 + + // Methods + internal void .ctor(string str, int startpos); // 0x102C4320 + public string GetTextElement(); // 0x102C4210 + public bool MoveNext(); // 0x102C4270 + public void Reset(); // 0x102C4300 +} + +// Namespace: System.Globalization +[Serializable] +public class TextInfo : ICloneable, IDeserializationCallback // TypeDefIndex: 413 +{ + // Fields + private string m_listSeparator; // 0x08 + private bool m_isReadOnly; // 0x0C + private string customCultureName; // 0x10 + [NonSerialized] private int m_nDataItem; // 0x14 + private bool m_useUserOverride; // 0x18 + private int m_win32LangID; // 0x1C + [NonSerialized] private readonly CultureInfo ci; // 0x20 + [NonSerialized] private readonly bool handleDotI; // 0x24 + [NonSerialized] private readonly Data data; // 0x28 + + // Properties + public virtual int ANSICodePage { get; } // 0x102C5150 + public virtual int EBCDICCodePage { get; } // 0x102C51B0 + public int LCID { get; } // 0x100F85F0 + public virtual string ListSeparator { get; set; } // 0x102C52C0 0x100EB270 + public virtual int MacCodePage { get; } // 0x102C5300 + public virtual int OEMCodePage { get; } // 0x102C5320 + public string CultureName { get; } // 0x102C5170 + public bool IsReadOnly { get; } // 0x100F8910 + public bool IsRightToLeft { get; } // 0x102C51D0 + + // Methods + internal void .ctor(CultureInfo ci, int lcid, void * data, bool read_only); // 0x102C5030 + private void .ctor(TextInfo textInfo); // 0x102C4F90 + private void System.Runtime.Serialization.IDeserializationCallback.OnDeserialization(object sender); // 0x100C5530 + public override bool Equals(object obj); // 0x102C4480 + public override int GetHashCode(); // 0x100F85F0 + public override string ToString(); // 0x102C4840 + public string ToTitleCase(string str); // 0x102C4980 + public virtual char ToLower(char c); // 0x102C46C0 + public virtual char ToUpper(char c); // 0x102C4C90 + private char ToTitleCase(char c); // 0x102C48C0 + public virtual string ToLower(string str); // 0x102C4590 + public virtual string ToUpper(string str); // 0x102C4E60 + public static TextInfo ReadOnly(TextInfo textInfo); // 0x102C4500 + public virtual object Clone(); // 0x102C4430 +} + +// Namespace: +private struct Data // TypeDefIndex: 414 +{ + // Fields + public int ansi; // 0x08 + public int ebcdic; // 0x0C + public int mac; // 0x10 + public int oem; // 0x14 + public byte list_sep; // 0x18 + +} + +// Namespace: System.Globalization +[Serializable] +public class ThaiBuddhistCalendar : Calendar // TypeDefIndex: 415 +{ + // Fields + public const int ThaiBuddhistEra = 1; // 0x00 + internal static readonly CCGregorianEraHandler M_EraHandler; // 0x00 + private static DateTime ThaiMin; // 0x08 + private static DateTime ThaiMax; // 0x18 + + // Properties + public override int[] Eras { get; } // 0x102C5A80 + public override int TwoDigitYearMax { get; set; } // 0x100C5B30 0x102C5BE0 + public override DateTime MinSupportedDateTime { get; } // 0x102C5B80 + public override DateTime MaxSupportedDateTime { get; } // 0x102C5B20 + + // Methods + public void .ctor(); // 0x102C5970 + private static void .cctor(); // 0x102C5880 + internal void M_CheckEra(int era); // 0x102C5540 + internal int M_CheckYEG(int year, int era); // 0x102C55F0 + internal override void M_CheckYE(int year, int era); // 0x102C5700 + internal int M_CheckYMEG(int year, int month, int era); // 0x102C5790 + internal int M_CheckYMDEG(int year, int month, int day, int era); // 0x102C5710 + public override DateTime AddMonths(DateTime time, int months); // 0x102B5380 + public override DateTime AddYears(DateTime time, int years); // 0x102B53B0 + public override int GetDayOfMonth(DateTime time); // 0x102B53E0 + public override DayOfWeek GetDayOfWeek(DateTime time); // 0x102B5400 + public override int GetDayOfYear(DateTime time); // 0x102B5430 + public override int GetDaysInMonth(int year, int month, int era); // 0x102C5340 + public override int GetDaysInYear(int year, int era); // 0x102C5370 + public override int GetEra(DateTime time); // 0x102C53A0 + public override int GetLeapMonth(int year, int era); // 0x100C5600 + public override int GetMonth(DateTime time); // 0x102B54B0 + public override int GetMonthsInYear(int year, int era); // 0x102B54D0 + public override int GetWeekOfYear(DateTime time, CalendarWeekRule rule, DayOfWeek firstDayOfWeek); // 0x102B5500 + public override int GetYear(DateTime time); // 0x102C5430 + public override bool IsLeapDay(int year, int month, int day, int era); // 0x102C54C0 + public override bool IsLeapMonth(int year, int month, int era); // 0x102C54F0 + public override bool IsLeapYear(int year, int era); // 0x102C5510 + public override DateTime ToDateTime(int year, int month, int day, int hour, int minute, int second, int millisecond, int era); // 0x102C5810 + public override int ToFourDigitYear(int year); // 0x102B5860 +} + +// Namespace: System.Globalization +[Serializable] +public class UmAlQuraCalendar : Calendar // TypeDefIndex: 416 +{ + // Fields + public const int UmAlQuraEra = 1; // 0x00 + internal static readonly int M_MinFixed; // 0x00 + internal static readonly int M_MaxFixed; // 0x04 + internal int M_AddHijriDate; // 0x20 + private static DateTime Min; // 0x08 + private static DateTime Max; // 0x18 + + // Properties + public override int[] Eras { get; } // 0x102C6A10 + public override int TwoDigitYearMax { get; set; } // 0x100C5B30 0x102C6B70 + internal virtual int AddHijriDate { get; set; } // 0x100EACD0 0x102C6B30 + public override DateTime MinSupportedDateTime { get; } // 0x102C6AD0 + public override DateTime MaxSupportedDateTime { get; } // 0x102C6A70 + + // Methods + public void .ctor(); // 0x102C6900 + private static void .cctor(); // 0x102C6830 + internal void M_CheckFixedHijri(string param, int rdHijri); // 0x102C62A0 + internal void M_CheckDateTime(DateTime time); // 0x102C61C0 + internal int M_FromDateTime(DateTime time); // 0x102B9B90 + internal DateTime M_ToDateTime(int rd); // 0x102B9C30 + internal DateTime M_ToDateTime(int date, int hour, int minute, int second, int milliseconds); // 0x102B9BD0 + internal void M_CheckEra(int era); // 0x102C6230 + internal override void M_CheckYE(int year, int era); // 0x102C6590 + internal void M_CheckYME(int year, int month, int era); // 0x102C66E0 + internal void M_CheckYMDE(int year, int month, int day, int era); // 0x102C6640 + public override DateTime AddMonths(DateTime time, int months); // 0x102C5C40 + public override DateTime AddYears(DateTime time, int years); // 0x102C5D50 + public override int GetDayOfMonth(DateTime time); // 0x102C5E50 + public override DayOfWeek GetDayOfWeek(DateTime time); // 0x102C5EC0 + public override int GetDayOfYear(DateTime time); // 0x102C5F30 + public override int GetDaysInMonth(int year, int month, int era); // 0x102C5FB0 + public override int GetDaysInYear(int year, int era); // 0x102B92A0 + public override int GetEra(DateTime time); // 0x102C6000 + public override int GetLeapMonth(int year, int era); // 0x100C5600 + public override int GetMonth(DateTime time); // 0x102C6070 + public override int GetMonthsInYear(int year, int era); // 0x102B54D0 + public override int GetYear(DateTime time); // 0x102C60E0 + public override bool IsLeapDay(int year, int month, int day, int era); // 0x102C6150 + public override bool IsLeapMonth(int year, int month, int era); // 0x102C61A0 + public override bool IsLeapYear(int year, int era); // 0x102B94F0 + public override DateTime ToDateTime(int year, int month, int day, int hour, int minute, int second, int millisecond, int era); // 0x102C6790 + public override int ToFourDigitYear(int year); // 0x102B5860 +} + +// Namespace: System.Globalization +[Serializable] +public enum UnicodeCategory // TypeDefIndex: 417 +{ + UppercaseLetter = 0, + LowercaseLetter = 1, + TitlecaseLetter = 2, + ModifierLetter = 3, + OtherLetter = 4, + NonSpacingMark = 5, + SpacingCombiningMark = 6, + EnclosingMark = 7, + DecimalDigitNumber = 8, + LetterNumber = 9, + OtherNumber = 10, + SpaceSeparator = 11, + LineSeparator = 12, + ParagraphSeparator = 13, + Control = 14, + Format = 15, + Surrogate = 16, + PrivateUse = 17, + ConnectorPunctuation = 18, + DashPunctuation = 19, + OpenPunctuation = 20, + ClosePunctuation = 21, + InitialQuotePunctuation = 22, + FinalQuotePunctuation = 23, + OtherPunctuation = 24, + MathSymbol = 25, + CurrencySymbol = 26, + ModifierSymbol = 27, + OtherSymbol = 28, + OtherNotAssigned = 29 +} + +// Namespace: System.IO.IsolatedStorage +public interface INormalizeForIsolatedStorage // TypeDefIndex: 418 +{ + // Methods + object Normalize(); +} + +// Namespace: System.IO.IsolatedStorage +public abstract class IsolatedStorage : MarshalByRefObject // TypeDefIndex: 419 +{ + // Fields + internal IsolatedStorageScope storage_scope; // 0x0C + internal object _assemblyIdentity; // 0x10 + internal object _domainIdentity; // 0x14 + internal object _applicationIdentity; // 0x18 + + // Properties + public object ApplicationIdentity { get; } // 0x102D56D0 + public object AssemblyIdentity { get; } // 0x102D57B0 + public virtual ulong CurrentSize { get; } // 0x102D5860 + public object DomainIdentity { get; } // 0x102D58C0 + public virtual ulong MaximumSize { get; } // 0x102D5970 + public IsolatedStorageScope Scope { get; } // 0x100C5B30 + protected virtual char SeparatorExternal { get; } // 0x102D59D0 + protected virtual char SeparatorInternal { get; } // 0x102D5A20 + + // Methods + protected void .ctor(); // 0x100C5970 + protected abstract IsolatedStoragePermission GetPermission(PermissionSet ps); + protected void InitStore(IsolatedStorageScope scope, Type domainEvidenceType, Type assemblyEvidenceType); // 0x102D55F0 + protected void InitStore(IsolatedStorageScope scope, Type appEvidenceType); // 0x102D5560 + public abstract void Remove(); +} + +// Namespace: System.IO.IsolatedStorage +[Serializable] +public class IsolatedStorageException : Exception // TypeDefIndex: 420 +{ + // Methods + public void .ctor(); // 0x102D20A0 + public void .ctor(string message); // 0x10211F30 + public void .ctor(string message, Exception inner); // 0x10211F80 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x1015EC80 +} + +// Namespace: System.IO.IsolatedStorage +public sealed class IsolatedStorageFile : IsolatedStorage, IDisposable // TypeDefIndex: 421 +{ + // Fields + private bool _resolved; // 0x1C + private ulong _maxSize; // 0x20 + private Evidence _fullEvidences; // 0x28 + private static Mutex mutex; // 0x00 + private DirectoryInfo directory; // 0x2C + + // Properties + public override ulong CurrentSize { get; } // 0x102D5260 + public override ulong MaximumSize { get; } // 0x102D52C0 + internal string Root { get; } // 0x102D5530 + + // Methods + private void .ctor(IsolatedStorageScope scope); // 0x101862C0 + internal void .ctor(IsolatedStorageScope scope, string location); // 0x102D51B0 + private static void .cctor(); // 0x102D5160 + public static IEnumerator GetEnumerator(IsolatedStorageScope scope); // 0x102D3810 + public static IsolatedStorageFile GetStore(IsolatedStorageScope scope, Evidence domainEvidence, Type domainEvidenceType, Evidence assemblyEvidence, Type assemblyEvidenceType); // 0x102D4320 + public static IsolatedStorageFile GetStore(IsolatedStorageScope scope, object domainIdentity, object assemblyIdentity); // 0x102D4550 + public static IsolatedStorageFile GetStore(IsolatedStorageScope scope, Type domainEvidenceType, Type assemblyEvidenceType); // 0x102D4140 + public static IsolatedStorageFile GetStore(IsolatedStorageScope scope, object applicationIdentity); // 0x102D4670 + public static IsolatedStorageFile GetStore(IsolatedStorageScope scope, Type applicationEvidenceType); // 0x102D40A0 + public static IsolatedStorageFile GetMachineStoreForApplication(); // 0x102D3C20 + public static IsolatedStorageFile GetMachineStoreForAssembly(); // 0x102D3CA0 + public static IsolatedStorageFile GetMachineStoreForDomain(); // 0x102D3D40 + public static IsolatedStorageFile GetUserStoreForApplication(); // 0x102D48D0 + public static IsolatedStorageFile GetUserStoreForAssembly(); // 0x102D4950 + public static IsolatedStorageFile GetUserStoreForDomain(); // 0x102D49F0 + public static void Remove(IsolatedStorageScope scope); // 0x102D4DB0 + internal static string GetIsolatedStorageRoot(IsolatedStorageScope scope); // 0x102D3B10 + private static void Demand(IsolatedStorageScope scope); // 0x102D2FC0 + private static IsolatedStorageContainment ScopeToContainment(IsolatedStorageScope scope); // 0x102D50D0 + internal static ulong GetDirectorySize(DirectoryInfo di); // 0x102D3420 + protected override void Finalize(); // 0x101CF660 + private void PostInit(); // 0x102D4AB0 + public void Close(); // 0x100C5530 + public void CreateDirectory(string dir); // 0x102D2BE0 + public void DeleteDirectory(string dir); // 0x102D2DF0 + public void DeleteFile(string file); // 0x102D2F30 + public void Dispose(); // 0x102D30F0 + public string[] GetDirectoryNames(string searchPattern); // 0x102D3250 + private string[] GetNames(FileSystemInfo[] afsi); // 0x102D3EF0 + public string[] GetFileNames(string searchPattern); // 0x102D3940 + public override void Remove(); // 0x102D4E10 + protected override IsolatedStoragePermission GetPermission(PermissionSet ps); // 0x102D3FE0 + private string GetNameFromIdentity(object identity); // 0x102D3E00 + private static object GetTypeFromEvidence(Evidence e, Type t); // 0x102D4740 + internal static object GetAssemblyIdentityFromEvidence(Evidence e); // 0x102D3100 + internal static object GetDomainIdentityFromEvidence(Evidence e); // 0x102D3720 + private void SaveIdentities(string root); // 0x102D4E40 +} + +// Namespace: +[Serializable] +private struct Identities // TypeDefIndex: 422 +{ + // Fields + public object Application; // 0x08 + public object Assembly; // 0x0C + public object Domain; // 0x10 + + // Methods + public void .ctor(object application, object assembly, object domain); // 0x100074C0 +} + +// Namespace: System.IO.IsolatedStorage +internal class IsolatedStorageFileEnumerator : IEnumerator // TypeDefIndex: 423 +{ + // Fields + private IsolatedStorageScope _scope; // 0x08 + private string[] _storages; // 0x0C + private int _pos; // 0x10 + + // Properties + public object Current { get; } // 0x102D2180 + + // Methods + public void .ctor(IsolatedStorageScope scope, string root); // 0x102D2110 + public bool MoveNext(); // 0x102D20E0 + public void Reset(); // 0x102D2100 +} + +// Namespace: System.IO.IsolatedStorage +public class IsolatedStorageFileStream : FileStream // TypeDefIndex: 424 +{ + // Properties + public override bool CanRead { get; } // 0x102CD660 + public override bool CanSeek { get; } // 0x102CD680 + public override bool CanWrite { get; } // 0x102CD690 + public override SafeFileHandle SafeFileHandle { get; } // 0x102D2B80 + public override IntPtr Handle { get; } // 0x102D2B10 + public override bool IsAsync { get; } // 0x10298460 + public override long Length { get; } // 0x102D2B70 + public override long Position { get; set; } // 0x102CD830 0x102CD980 + + // Methods + public void .ctor(string path, FileMode mode); // 0x102D28F0 + public void .ctor(string path, FileMode mode, FileAccess access); // 0x102D2940 + public void .ctor(string path, FileMode mode, FileAccess access, FileShare share); // 0x102D29E0 + public void .ctor(string path, FileMode mode, FileAccess access, FileShare share, int bufferSize); // 0x102D2AD0 + public void .ctor(string path, FileMode mode, FileAccess access, FileShare share, int bufferSize, IsolatedStorageFile isf); // 0x102D2990 + public void .ctor(string path, FileMode mode, FileAccess access, FileShare share, IsolatedStorageFile isf); // 0x102D28A0 + public void .ctor(string path, FileMode mode, FileAccess access, IsolatedStorageFile isf); // 0x102D2A30 + public void .ctor(string path, FileMode mode, IsolatedStorageFile isf); // 0x102D2A80 + private static string CreateIsolatedPath(IsolatedStorageFile isf, string path, FileMode mode); // 0x102D22C0 + public override IAsyncResult BeginRead(byte[] buffer, int offset, int numBytes, AsyncCallback userCallback, object stateObject); // 0x102D22A0 + public override IAsyncResult BeginWrite(byte[] buffer, int offset, int numBytes, AsyncCallback userCallback, object stateObject); // 0x102D22B0 + public override int EndRead(IAsyncResult asyncResult); // 0x102D2800 + public override void EndWrite(IAsyncResult asyncResult); // 0x102D2810 + public override void Flush(); // 0x102CB4A0 + public override int Read(byte[] buffer, int offset, int count); // 0x102D2830 + public override int ReadByte(); // 0x102D2820 + public override long Seek(long offset, SeekOrigin origin); // 0x102D2840 + public override void SetLength(long value); // 0x102D2860 + public override void Write(byte[] buffer, int offset, int count); // 0x102D2890 + public override void WriteByte(byte value); // 0x102D2880 + protected override void Dispose(bool disposing); // 0x102D27F0 +} + +// Namespace: System.IO.IsolatedStorage +[Serializable] +public enum IsolatedStorageScope // TypeDefIndex: 425 +{ + None = 0, + User = 1, + Domain = 2, + Assembly = 4, + Roaming = 8, + Machine = 16, + Application = 32 +} + +// Namespace: System.IO +public class BinaryReader : IDisposable // TypeDefIndex: 426 +{ + // Fields + private const int MaxBufferSize = 128; // 0x00 + private Stream m_stream; // 0x08 + private Encoding m_encoding; // 0x0C + private byte[] m_buffer; // 0x10 + private Decoder decoder; // 0x14 + private char[] charBuffer; // 0x18 + private bool m_disposed; // 0x1C + + // Properties + public virtual Stream BaseStream { get; } // 0x100BF0C0 + + // Methods + public void .ctor(Stream input); // 0x102B03F0 + public void .ctor(Stream input, Encoding encoding); // 0x102B02F0 + private void System.IDisposable.Dispose(); // 0x102B02D0 + public virtual void Close(); // 0x102AF0F0 + protected virtual void Dispose(bool disposing); // 0x102AF120 + protected virtual void FillBuffer(int numBytes); // 0x102AF170 + public virtual int PeekChar(); // 0x102AF290 + public virtual int Read(); // 0x102AFF90 + public virtual int Read(byte[] buffer, int index, int count); // 0x102B0180 + public virtual int Read(char[] buffer, int index, int count); // 0x102B0030 + private int ReadCharBytes(char[] buffer, int index, int count, out int bytes_read); // 0x102AF6F0 + protected int Read7BitEncodedInt(); // 0x102AF3F0 + public virtual bool ReadBoolean(); // 0x102AF490 + public virtual byte ReadByte(); // 0x102AF4C0 + public virtual byte[] ReadBytes(int count); // 0x102AF5A0 + public virtual char ReadChar(); // 0x102AF7A0 + public virtual char[] ReadChars(int count); // 0x102AF810 + public virtual Decimal ReadDecimal(); // 0x102AF910 + public virtual double ReadDouble(); // 0x102AFA30 + public virtual short ReadInt16(); // 0x102AFA60 + public virtual int ReadInt32(); // 0x102AFAD0 + public virtual long ReadInt64(); // 0x102AFB80 + public virtual sbyte ReadSByte(); // 0x102AFD20 + public virtual string ReadString(); // 0x102AFD70 + public virtual float ReadSingle(); // 0x102AFD40 + public virtual ushort ReadUInt16(); // 0x102AFA60 + public virtual uint ReadUInt32(); // 0x102AFAD0 + public virtual ulong ReadUInt64(); // 0x102AFB80 + private void CheckBuffer(int length); // 0x102AF080 +} + +// Namespace: System.IO +[Serializable] +public class BinaryWriter : IDisposable // TypeDefIndex: 427 +{ + // Fields + public static readonly BinaryWriter Null; // 0x00 + protected Stream OutStream; // 0x08 + private Encoding m_encoding; // 0x0C + private byte[] buffer; // 0x10 + private bool disposed; // 0x14 + private byte[] stringBuffer; // 0x18 + private int maxCharsPerRound; // 0x1C + + // Properties + public virtual Stream BaseStream { get; } // 0x100BF0C0 + + // Methods + protected void .ctor(); // 0x102B1870 + public void .ctor(Stream output); // 0x102B18F0 + public void .ctor(Stream output, Encoding encoding); // 0x102B1770 + private static void .cctor(); // 0x102B16B0 + private void System.IDisposable.Dispose(); // 0x102B02D0 + public virtual void Close(); // 0x102B02D0 + protected virtual void Dispose(bool disposing); // 0x102B0530 + public virtual void Flush(); // 0x102B0570 + public virtual long Seek(int offset, SeekOrigin origin); // 0x102B05A0 + public virtual void Write(bool value); // 0x102B07B0 + public virtual void Write(byte value); // 0x102B10D0 + public virtual void Write(byte[] buffer); // 0x102B0950 + public virtual void Write(byte[] buffer, int index, int count); // 0x102B15F0 + public virtual void Write(char ch); // 0x102B1500 + public virtual void Write(char[] chars); // 0x102B0860 + public virtual void Write(char[] chars, int index, int count); // 0x102B12D0 + public virtual void Write(Decimal value); // 0x102B1160 + public virtual void Write(double value); // 0x102B0BD0 + public virtual void Write(short value); // 0x102B0F40 + public virtual void Write(int value); // 0x102B13C0 + public virtual void Write(long value); // 0x102B0E60 + public virtual void Write(sbyte value); // 0x102B1020 + public virtual void Write(float value); // 0x102B0C80 + public virtual void Write(string value); // 0x102B0630 + public virtual void Write(ushort value); // 0x102B0AF0 + public virtual void Write(uint value); // 0x102B0D20 + public virtual void Write(ulong value); // 0x102B0A10 + protected void Write7BitEncodedInt(int value); // 0x102B05E0 +} + +// Namespace: System.IO +public sealed class BufferedStream : Stream // TypeDefIndex: 428 +{ + // Fields + private Stream m_stream; // 0x08 + private byte[] m_buffer; // 0x0C + private int m_buffer_pos; // 0x10 + private int m_buffer_read_ahead; // 0x14 + private bool m_buffer_reading; // 0x18 + private bool disposed; // 0x19 + + // Properties + public override bool CanRead { get; } // 0x102B26F0 + public override bool CanWrite { get; } // 0x102B2750 + public override bool CanSeek { get; } // 0x102B2720 + public override long Length { get; } // 0x102B2780 + public override long Position { get; set; } // 0x102B27C0 0x102B2820 + + // Methods + public void .ctor(Stream stream); // 0x102B2420 + public void .ctor(Stream stream, int bufferSize); // 0x102B2570 + protected override void Dispose(bool disposing); // 0x102B19C0 + public override void Flush(); // 0x102B1A10 + public override long Seek(long offset, SeekOrigin origin); // 0x102B1DE0 + public override void SetLength(long value); // 0x102B1EA0 + public override int ReadByte(); // 0x102B1AD0 + public override void WriteByte(byte value); // 0x102B21D0 + public override int Read(out byte[] array, int offset, int count); // 0x102B1B50 + public override void Write(byte[] array, int offset, int count); // 0x102B2250 + private void CheckObjectDisposedException(); // 0x102B1950 +} + +// Namespace: System.IO +public static class Directory // TypeDefIndex: 429 +{ + // Methods + public static DirectoryInfo CreateDirectory(string path); // 0x102B2C50 + private static DirectoryInfo CreateDirectoriesInternal(string path); // 0x102B2B20 + public static void Delete(string path); // 0x102B3060 + private static void RecursiveDelete(string path); // 0x102B4660 + public static void Delete(string path, bool recursive); // 0x102B2F30 + public static bool Exists(string path); // 0x102B3320 + public static DateTime GetLastAccessTime(string path); // 0x102B3E80 + public static DateTime GetLastAccessTimeUtc(string path); // 0x102B3E40 + public static DateTime GetLastWriteTime(string path); // 0x102B3EF0 + public static DateTime GetLastWriteTimeUtc(string path); // 0x102B3EB0 + public static DateTime GetCreationTime(string path); // 0x102B33D0 + public static DateTime GetCreationTimeUtc(string path); // 0x102B3390 + public static string GetCurrentDirectory(); // 0x102B3400 + public static string[] GetDirectories(string path); // 0x102B3670 + public static string[] GetDirectories(string path, string searchPattern); // 0x102B3560 + public static string[] GetDirectories(string path, string searchPattern, SearchOption searchOption); // 0x102B3580 + private static void GetDirectoriesRecurse(string path, string searchPattern, ArrayList all); // 0x102B34A0 + public static string GetDirectoryRoot(string path); // 0x102B36B0 + public static string[] GetFiles(string path); // 0x102B3D10 + public static string[] GetFiles(string path, string searchPattern); // 0x102B3CF0 + public static string[] GetFiles(string path, string searchPattern, SearchOption searchOption); // 0x102B3D50 + private static void GetFilesRecurse(string path, string searchPattern, ArrayList all); // 0x102B3C30 + public static string[] GetFileSystemEntries(string path); // 0x102B3BD0 + public static string[] GetFileSystemEntries(string path, string searchPattern); // 0x102B3C10 + public static string[] GetLogicalDrives(); // 0x102B3F20 + private static bool IsRootDirectory(string path); // 0x102B41C0 + public static DirectoryInfo GetParent(string path); // 0x102B3F30 + public static void Move(string sourceDirName, string destDirName); // 0x102B42B0 + public static void SetCreationTime(string path, DateTime creationTime); // 0x102B4840 + public static void SetCreationTimeUtc(string path, DateTime creationTimeUtc); // 0x102B4800 + public static void SetCurrentDirectory(string path); // 0x102B4860 + public static void SetLastAccessTime(string path, DateTime lastAccessTime); // 0x102B4A30 + public static void SetLastAccessTimeUtc(string path, DateTime lastAccessTimeUtc); // 0x102B49F0 + public static void SetLastWriteTime(string path, DateTime lastWriteTime); // 0x102B4A90 + public static void SetLastWriteTimeUtc(string path, DateTime lastWriteTimeUtc); // 0x102B4A50 + private static void CheckPathExceptions(string path); // 0x102B2A10 + private static string[] GetFileSystemEntries(string path, string searchPattern, FileAttributes mask, FileAttributes attrs); // 0x102B3710 +} + +// Namespace: System.IO +[Serializable] +public sealed class DirectoryInfo : FileSystemInfo // TypeDefIndex: 430 +{ + // Fields + private string current; // 0x48 + private string parent; // 0x4C + + // Properties + public override bool Exists { get; } // 0x102C7E10 + public override string Name { get; } // 0x10145560 + public DirectoryInfo Parent { get; } // 0x102C7E90 + public DirectoryInfo Root { get; } // 0x102C7EF0 + + // Methods + public void .ctor(string path); // 0x102C7C40 + internal void .ctor(string path, bool simpleOriginalPath); // 0x102C7D10 + private void .ctor(SerializationInfo info, StreamingContext context); // 0x102C7C10 + private void Initialize(); // 0x102C78E0 + public void Create(); // 0x102C6C60 + public DirectoryInfo CreateSubdirectory(string path); // 0x102C6BD0 + public FileInfo[] GetFiles(); // 0x102C7760 + public FileInfo[] GetFiles(string searchPattern); // 0x102C77A0 + public DirectoryInfo[] GetDirectories(); // 0x102C7030 + public DirectoryInfo[] GetDirectories(string searchPattern); // 0x102C6CC0 + public FileSystemInfo[] GetFileSystemInfos(); // 0x102C7070 + public FileSystemInfo[] GetFileSystemInfos(string searchPattern); // 0x102C70B0 + public override void Delete(); // 0x102C6C80 + public void Delete(bool recursive); // 0x102C6CA0 + public void MoveTo(string destDirName); // 0x102C7B40 + public override string ToString(); // 0x100BFC20 + public DirectoryInfo[] GetDirectories(string searchPattern, SearchOption searchOption); // 0x102C6E00 + internal int GetFilesSubdirs(ArrayList l, string pattern); // 0x102C72E0 + public FileInfo[] GetFiles(string searchPattern, SearchOption searchOption); // 0x102C7470 +} + +// Namespace: System.IO +[Serializable] +public class DirectoryNotFoundException : IOException // TypeDefIndex: 431 +{ + // Methods + public void .ctor(); // 0x102C7F70 + public void .ctor(string message); // 0x100E5680 + public void .ctor(string message, Exception innerException); // 0x100E5670 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 +} + +// Namespace: System.IO +[Serializable] +public sealed class DriveInfo : ISerializable // TypeDefIndex: 432 +{ + // Fields + private _DriveType _drive_type; // 0x08 + private string drive_format; // 0x0C + private string path; // 0x10 + + // Properties + public long AvailableFreeSpace { get; } // 0x102C8840 + public long TotalFreeSpace { get; } // 0x102C8910 + public long TotalSize { get; } // 0x102C8970 + public string VolumeLabel { get; set; } // 0x100BFC20 0x102C89D0 + public string DriveFormat { get; } // 0x100C5B30 + public DriveType DriveType { get; } // 0x102C88A0 + public string Name { get; } // 0x100BFC20 + public DirectoryInfo RootDirectory { get; } // 0x102C88C0 + public bool IsReady { get; } // 0x100E5880 + + // Methods + private void .ctor(_DriveType _drive_type, string path, string fstype); // 0x102C8810 + public void .ctor(string driveName); // 0x102C86D0 + private void System.Runtime.Serialization.ISerializable.GetObjectData(SerializationInfo info, StreamingContext context); // 0x102C8360 + private static void GetDiskFreeSpace(string path, out ulong availableFreeSpace, out ulong totalSize, out ulong totalFreeSpace); // 0x102C7FD0 + private static StreamReader TryOpen(string name); // 0x102C83B0 + private static DriveInfo[] LinuxGetDrives(); // 0x102C80A0 + private static DriveInfo[] UnixGetDrives(); // 0x102C8440 + private static DriveInfo[] WindowsGetDrives(); // 0x102C8680 + public static DriveInfo[] GetDrives(); // 0x102C8070 + public override string ToString(); // 0x100BFC20 + private static bool GetDiskFreeSpaceInternal(string pathName, out ulong freeBytesAvail, out ulong totalNumberOfBytes, out ulong totalNumberOfFreeBytes, out MonoIOError error); // 0x102C7FB0 + private static uint GetDriveTypeInternal(string rootPathName); // 0x102C8060 +} + +// Namespace: +private enum _DriveType // TypeDefIndex: 433 +{ + GenericUnix = 0, + Linux = 1, + Windows = 2 +} + +// Namespace: System.IO +[Serializable] +public class DriveNotFoundException : IOException // TypeDefIndex: 434 +{ + // Fields + private const int ErrorCode = -2147024893; // 0x00 + + // Methods + public void .ctor(); // 0x102C8A20 + public void .ctor(string message); // 0x102C8A90 + public void .ctor(string message, Exception innerException); // 0x102C8A60 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 +} + +// Namespace: System.IO +[Serializable] +public enum DriveType // TypeDefIndex: 435 +{ + Unknown = 0, + NoRootDirectory = 1, + Removable = 2, + Fixed = 3, + Network = 4, + CDRom = 5, + Ram = 6 +} + +// Namespace: System.IO +[Serializable] +public class EndOfStreamException : IOException // TypeDefIndex: 436 +{ + // Methods + public void .ctor(); // 0x102C8AB0 + public void .ctor(string message); // 0x100E5680 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 + public void .ctor(string message, Exception innerException); // 0x100E5670 +} + +// Namespace: System.IO +public static class File // TypeDefIndex: 437 +{ + // Fields + private static Nullable`1 defaultLocalFileTime; // 0x00 + + // Properties + private static DateTime DefaultLocalFileTime { get; } // 0x102D1F80 + + // Methods + public static void AppendAllText(string path, string contents); // 0x102CEA70 + public static void AppendAllText(string path, string contents, Encoding encoding); // 0x102CE960 + public static StreamWriter AppendText(string path); // 0x102CEB80 + public static void Copy(string sourceFileName, string destFileName); // 0x102CED00 + public static void Copy(string sourceFileName, string destFileName, bool overwrite); // 0x102CED20 + public static FileStream Create(string path); // 0x102CF330 + public static FileStream Create(string path, int bufferSize); // 0x102CF2E0 + public static StreamWriter CreateText(string path); // 0x102CF290 + public static void Delete(string path); // 0x102CF3F0 + public static bool Exists(string path); // 0x102CF700 + public static FileAttributes GetAttributes(string path); // 0x102CF820 + public static DateTime GetCreationTime(string path); // 0x102CFAE0 + public static DateTime GetCreationTimeUtc(string path); // 0x102CF9C0 + public static DateTime GetLastAccessTime(string path); // 0x102CFD20 + public static DateTime GetLastAccessTimeUtc(string path); // 0x102CFC00 + public static DateTime GetLastWriteTime(string path); // 0x102CFF60 + public static DateTime GetLastWriteTimeUtc(string path); // 0x102CFE40 + public static void Move(string sourceFileName, string destFileName); // 0x102D0080 + public static FileStream Open(string path, FileMode mode); // 0x102D0630 + public static FileStream Open(string path, FileMode mode, FileAccess access); // 0x102D05D0 + public static FileStream Open(string path, FileMode mode, FileAccess access, FileShare share); // 0x102D0690 + public static FileStream OpenRead(string path); // 0x102D0480 + public static StreamReader OpenText(string path); // 0x102D04E0 + public static FileStream OpenWrite(string path); // 0x102D0570 + public static void Replace(string sourceFileName, string destinationFileName, string destinationBackupFileName); // 0x102D0DD0 + public static void Replace(string sourceFileName, string destinationFileName, string destinationBackupFileName, bool ignoreMetadataErrors); // 0x102D0DF0 + public static void SetAttributes(string path, FileAttributes fileAttributes); // 0x102D1450 + public static void SetCreationTime(string path, DateTime creationTime); // 0x102D1500 + public static void SetCreationTimeUtc(string path, DateTime creationTimeUtc); // 0x102B4800 + public static void SetLastAccessTime(string path, DateTime lastAccessTime); // 0x102D16C0 + public static void SetLastAccessTimeUtc(string path, DateTime lastAccessTimeUtc); // 0x102B49F0 + public static void SetLastWriteTime(string path, DateTime lastWriteTime); // 0x102D1880 + public static void SetLastWriteTimeUtc(string path, DateTime lastWriteTimeUtc); // 0x102B4A50 + private static void CheckPathExceptions(string path); // 0x102CEBD0 + public static byte[] ReadAllBytes(string path); // 0x102D06F0 + public static string[] ReadAllLines(string path); // 0x102D09B0 + public static string[] ReadAllLines(string path, Encoding encoding); // 0x102D0B30 + private static string[] ReadAllLines(StreamReader reader); // 0x102D08F0 + public static string ReadAllText(string path); // 0x102D0C40 + public static string ReadAllText(string path, Encoding encoding); // 0x102D0CA0 + public static void WriteAllBytes(string path, byte[] bytes); // 0x102D1A40 + public static void WriteAllLines(string path, string[] contents); // 0x102D1D10 + public static void WriteAllLines(string path, string[] contents, Encoding encoding); // 0x102D1C10 + private static void WriteAllLines(StreamWriter writer, string[] contents); // 0x102D1BA0 + public static void WriteAllText(string path, string contents); // 0x102D1F20 + public static void WriteAllText(string path, string contents, Encoding encoding); // 0x102D1E10 + public static void Encrypt(string path); // 0x102CF6A0 + public static void Decrypt(string path); // 0x102CF390 +} + +// Namespace: System.IO +[Serializable] +public enum FileAccess // TypeDefIndex: 438 +{ + Read = 1, + Write = 2, + ReadWrite = 3 +} + +// Namespace: System.IO +[Serializable] +public enum FileAttributes // TypeDefIndex: 439 +{ + ReadOnly = 1, + Hidden = 2, + System = 4, + Directory = 16, + Archive = 32, + Device = 64, + Normal = 128, + Temporary = 256, + SparseFile = 512, + ReparsePoint = 1024, + Compressed = 2048, + Offline = 4096, + NotContentIndexed = 8192, + Encrypted = 16384 +} + +// Namespace: System.IO +[Serializable] +public sealed class FileInfo : FileSystemInfo // TypeDefIndex: 440 +{ + // Fields + private bool exists; // 0x48 + + // Properties + public override bool Exists { get; } // 0x102C9A20 + public override string Name { get; } // 0x102C97C0 + public bool IsReadOnly { get; set; } // 0x102C9AA0 0x102C9C20 + public long Length { get; } // 0x102C9B60 + public string DirectoryName { get; } // 0x102C9930 + public DirectoryInfo Directory { get; } // 0x102C9990 + + // Methods + public void .ctor(string fileName); // 0x102C9840 + private void .ctor(SerializationInfo info, StreamingContext context); // 0x102C9820 + internal override void InternalRefresh(); // 0x102C90F0 + public void Encrypt(); // 0x102C9090 + public void Decrypt(); // 0x102C8E70 + public StreamReader OpenText(); // 0x102C92D0 + public StreamWriter CreateText(); // 0x102C8D80 + public StreamWriter AppendText(); // 0x102C8AF0 + public FileStream Create(); // 0x102C8E10 + public FileStream OpenRead(); // 0x102C9270 + public FileStream OpenWrite(); // 0x102C9400 + public FileStream Open(FileMode mode); // 0x102C9520 + public FileStream Open(FileMode mode, FileAccess access); // 0x102C94C0 + public FileStream Open(FileMode mode, FileAccess access, FileShare share); // 0x102C9460 + public override void Delete(); // 0x102C8ED0 + public void MoveTo(string destFileName); // 0x102C9110 + public FileInfo CopyTo(string destFileName); // 0x102C8C90 + public FileInfo CopyTo(string destFileName, bool overwrite); // 0x102C8B80 + public override string ToString(); // 0x102C97C0 + public FileInfo Replace(string destinationFileName, string destinationBackupFileName); // 0x102C9580 + public FileInfo Replace(string destinationFileName, string destinationBackupFileName, bool ignoreMetadataErrors); // 0x102C9770 +} + +// Namespace: System.IO +[Serializable] +public class FileLoadException : IOException // TypeDefIndex: 441 +{ + // Fields + private const int Result = -2147024894; // 0x00 + private string msg; // 0x34 + private string fileName; // 0x38 + private string fusionLog; // 0x3C + + // Properties + public override string Message { get; } // 0x100E9ED0 + public string FileName { get; } // 0x100EB210 + public string FusionLog { get; } // 0x100EB220 + + // Methods + public void .ctor(); // 0x102C9F20 + public void .ctor(string message); // 0x102CA0A0 + public void .ctor(string message, string fileName); // 0x102CA040 + public void .ctor(string message, Exception inner); // 0x102CA070 + public void .ctor(string message, string fileName, Exception inner); // 0x102CA010 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x102C9F80 + public override void GetObjectData(SerializationInfo info, StreamingContext context); // 0x102C9D90 + public override string ToString(); // 0x102C9E00 +} + +// Namespace: System.IO +[Serializable] +public enum FileMode // TypeDefIndex: 442 +{ + CreateNew = 1, + Create = 2, + Open = 3, + OpenOrCreate = 4, + Truncate = 5, + Append = 6 +} + +// Namespace: System.IO +[Serializable] +public class FileNotFoundException : IOException // TypeDefIndex: 443 +{ + // Fields + private const int Result = -2146232799; // 0x00 + private string fileName; // 0x34 + private string fusionLog; // 0x38 + + // Properties + public string FileName { get; } // 0x100E9ED0 + public string FusionLog { get; } // 0x100EB210 + public override string Message { get; } // 0x102CA3F0 + + // Methods + public void .ctor(); // 0x102CA370 + public void .ctor(string message); // 0x102CA2B0 + public void .ctor(string message, Exception innerException); // 0x102CA280 + public void .ctor(string message, string fileName); // 0x102CA2D0 + public void .ctor(string message, string fileName, Exception innerException); // 0x102CA3C0 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x102CA300 + public override void GetObjectData(SerializationInfo info, StreamingContext context); // 0x102CA0D0 + public override string ToString(); // 0x102CA140 +} + +// Namespace: System.IO +[Serializable] +public enum FileOptions // TypeDefIndex: 444 +{ + WriteThrough = -2147483648, + None = 0, + Encrypted = 16384, + DeleteOnClose = 67108864, + SequentialScan = 134217728, + RandomAccess = 268435456, + Asynchronous = 1073741824 +} + +// Namespace: System.IO +[Serializable] +public enum FileShare // TypeDefIndex: 445 +{ + None = 0, + Read = 1, + Write = 2, + ReadWrite = 3, + Delete = 4, + Inheritable = 16 +} + +// Namespace: System.IO +public class FileStream : Stream // TypeDefIndex: 446 +{ + // Fields + internal const int DefaultBufferSize = 8192; // 0x00 + private FileAccess access; // 0x08 + private bool owner; // 0x0C + private bool async; // 0x0D + private bool canseek; // 0x0E + private long append_startpos; // 0x10 + private bool anonymous; // 0x18 + private byte[] buf; // 0x1C + private int buf_size; // 0x20 + private int buf_length; // 0x24 + private int buf_offset; // 0x28 + private bool buf_dirty; // 0x2C + private long buf_start; // 0x30 + private string name; // 0x38 + private IntPtr handle; // 0x3C + private SafeFileHandle safeHandle; // 0x40 + + // Properties + public override bool CanRead { get; } // 0x102CD660 + public override bool CanWrite { get; } // 0x102CD690 + public override bool CanSeek { get; } // 0x102CD680 + public virtual bool IsAsync { get; } // 0x10298460 + public string Name { get; } // 0x100EB210 + public override long Length { get; } // 0x102CD6B0 + public override long Position { get; set; } // 0x102CD830 0x102CD980 + public virtual IntPtr Handle { get; } // 0x100EB220 + public virtual SafeFileHandle SafeFileHandle { get; } // 0x102CD910 + + // Methods + public void .ctor(IntPtr handle, FileAccess access); // 0x102CD5D0 + public void .ctor(IntPtr handle, FileAccess access, bool ownsHandle); // 0x102CD2F0 + public void .ctor(IntPtr handle, FileAccess access, bool ownsHandle, int bufferSize); // 0x102CD210 + public void .ctor(IntPtr handle, FileAccess access, bool ownsHandle, int bufferSize, bool isAsync); // 0x102CD600 + internal void .ctor(IntPtr handle, FileAccess access, bool ownsHandle, int bufferSize, bool isAsync, bool noBuffering); // 0x102CD350 + public void .ctor(string path, FileMode mode); // 0x102CCAB0 + public void .ctor(string path, FileMode mode, FileAccess access); // 0x102CD280 + public void .ctor(string path, FileMode mode, FileAccess access, FileShare share); // 0x102CD630 + public void .ctor(string path, FileMode mode, FileAccess access, FileShare share, int bufferSize); // 0x102CD320 + public void .ctor(string path, FileMode mode, FileAccess access, FileShare share, int bufferSize, bool useAsync); // 0x102CD2C0 + internal void .ctor(string path, FileMode mode, FileAccess access, FileShare share, int bufferSize, bool isAsync, bool anonymous); // 0x102CD240 + internal void .ctor(string path, FileMode mode, FileAccess access, FileShare share, int bufferSize, bool anonymous, FileOptions options); // 0x102CCAF0 + public override int ReadByte(); // 0x102CB930 + public override void WriteByte(byte value); // 0x102CC5A0 + public override int Read(out byte[] array, int offset, int count); // 0x102CBCC0 + private int ReadInternal(byte[] dest, int offset, int count); // 0x102CBBA0 + public override IAsyncResult BeginRead(byte[] array, int offset, int numBytes, AsyncCallback userCallback, object stateObject); // 0x102CA6F0 + public override int EndRead(IAsyncResult asyncResult); // 0x102CAED0 + public override void Write(byte[] array, int offset, int count); // 0x102CC8E0 + private void WriteInternal(byte[] src, int offset, int count); // 0x102CC720 + public override IAsyncResult BeginWrite(byte[] array, int offset, int numBytes, AsyncCallback userCallback, object stateObject); // 0x102CA940 + public override void EndWrite(IAsyncResult asyncResult); // 0x102CB0D0 + public override long Seek(long offset, SeekOrigin origin); // 0x102CBF80 + public override void SetLength(long value); // 0x102CC1F0 + public override void Flush(); // 0x102CB4A0 + public virtual void Lock(long position, long length); // 0x102CB740 + public virtual void Unlock(long position, long length); // 0x102CC410 + protected override void Finalize(); // 0x10257750 + protected override void Dispose(bool disposing); // 0x102CACE0 + private int ReadSegment(byte[] dest, int dest_offset, int count); // 0x102CBC80 + private int WriteSegment(byte[] src, int src_offset, int count); // 0x102CC890 + private void FlushBuffer(Stream st); // 0x102CB2E0 + private void FlushBuffer(); // 0x102CB480 + private void FlushBufferIfDirty(); // 0x102CB2C0 + private void RefillBuffer(); // 0x102CBF50 + private int ReadData(IntPtr handle, byte[] buf, int offset, int count); // 0x102CBAA0 + private void InitBuffer(int size, bool noBuffering); // 0x102CB690 + private string GetSecureFileName(string filename); // 0x102CB5D0 + private string GetSecureFileName(string filename, bool full); // 0x102CB540 +} + +// Namespace: +private delegate int ReadDelegate(byte[] buffer, int offset, int count); // TypeDefIndex: 447; 0x102DB3D0 + +// Namespace: +private delegate void WriteDelegate(byte[] buffer, int offset, int count); // TypeDefIndex: 448; 0x102DDD00 + +// Namespace: System.IO +internal class FileStreamAsyncResult : IAsyncResult // TypeDefIndex: 449 +{ + // Fields + private object state; // 0x08 + private bool completed; // 0x0C + private bool done; // 0x0D + private Exception exc; // 0x10 + private ManualResetEvent wh; // 0x14 + private AsyncCallback cb; // 0x18 + private bool completedSynch; // 0x1C + public byte[] Buffer; // 0x20 + public int Offset; // 0x24 + public int Count; // 0x28 + public int OriginalCount; // 0x2C + public int BytesRead; // 0x30 + private AsyncCallback realcb; // 0x34 + + // Properties + public object AsyncState { get; } // 0x100BF0C0 + public bool CompletedSynchronously { get; } // 0x10172890 + public WaitHandle AsyncWaitHandle { get; } // 0x100EF0C0 + public bool IsCompleted { get; } // 0x100F8910 + public Exception Exception { get; } // 0x100BFC20 + public bool Done { get; set; } // 0x10298460 0x10298470 + + // Methods + public void .ctor(AsyncCallback cb, object state); // 0x102CA660 + private static void CBWrapper(IAsyncResult ares); // 0x102CA4F0 + public void SetComplete(Exception e); // 0x102CA5D0 + public void SetComplete(Exception e, int nbytes); // 0x102CA580 + public void SetComplete(Exception e, int nbytes, bool synch); // 0x102CA610 +} + +// Namespace: System.IO +[Serializable] +public abstract class FileSystemInfo : MarshalByRefObject, ISerializable // TypeDefIndex: 450 +{ + // Fields + protected string FullPath; // 0x0C + protected string OriginalPath; // 0x10 + internal MonoIOStat stat; // 0x18 + internal bool valid; // 0x40 + + // Properties + public abstract bool Exists { get; } + public abstract string Name { get; } + public virtual string FullName { get; } // 0x100C5B30 + public string Extension { get; } // 0x102CDEE0 + public FileAttributes Attributes { get; set; } // 0x102CDDA0 0x102CE280 + public DateTime CreationTime { get; set; } // 0x102CDE50 0x102CE470 + public DateTime CreationTimeUtc { get; set; } // 0x102CDDC0 0x102CE360 + public DateTime LastAccessTime { get; set; } // 0x102CE0E0 0x102CE670 + public DateTime LastAccessTimeUtc { get; set; } // 0x102CE040 0x102CE560 + public DateTime LastWriteTime { get; set; } // 0x102CE200 0x102CE870 + public DateTime LastWriteTimeUtc { get; set; } // 0x102CE160 0x102CE760 + + // Methods + protected void .ctor(); // 0x102CDD80 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x102CDCF0 + public virtual void GetObjectData(SerializationInfo info, StreamingContext context); // 0x102CDB80 + public abstract void Delete(); + public void Refresh(); // 0x102CDCD0 + internal void Refresh(bool force); // 0x102CDC30 + internal virtual void InternalRefresh(); // 0x100C5530 + internal void CheckPath(string path); // 0x102CDAB0 +} + +// Namespace: System.IO +[Serializable] +public class IOException : SystemException // TypeDefIndex: 451 +{ + // Methods + public void .ctor(); // 0x102D2060 + public void .ctor(string message); // 0x100E5680 + public void .ctor(string message, Exception innerException); // 0x100E5670 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 + public void .ctor(string message, int hresult); // 0x100FCF70 +} + +// Namespace: System.IO +[Serializable] +public class MemoryStream : Stream // TypeDefIndex: 452 +{ + // Fields + private bool canWrite; // 0x08 + private bool allowGetBuffer; // 0x09 + private int capacity; // 0x0C + private int length; // 0x10 + private byte[] internalBuffer; // 0x14 + private int initialIndex; // 0x18 + private bool expandable; // 0x1C + private bool streamClosed; // 0x1D + private int position; // 0x20 + private int dirty_bytes; // 0x24 + + // Properties + public override bool CanRead { get; } // 0x102D6950 + public override bool CanSeek { get; } // 0x102D6950 + public override bool CanWrite { get; } // 0x102D6960 + public virtual int Capacity { get; set; } // 0x102D6980 0x102D6AD0 + public override long Length { get; } // 0x102D69F0 + public override long Position { get; set; } // 0x102D6A60 0x102D6CF0 + + // Methods + public void .ctor(); // 0x102D6710 + public void .ctor(int capacity); // 0x102D6790 + public void .ctor(byte[] buffer); // 0x102D65A0 + public void .ctor(byte[] buffer, bool writable); // 0x102D6840 + public void .ctor(byte[] buffer, int index, int count); // 0x102D68E0 + public void .ctor(byte[] buffer, int index, int count, bool writable); // 0x102D6640 + public void .ctor(byte[] buffer, int index, int count, bool writable, bool publiclyVisible); // 0x102D66B0 + private void InternalConstructor(byte[] buffer, int index, int count, bool writable, bool publicallyVisible); // 0x102D5B80 + private void CheckIfClosedThrowDisposed(); // 0x102D5A50 + protected override void Dispose(bool disposing); // 0x102D5AB0 + public override void Flush(); // 0x100C5530 + public virtual byte[] GetBuffer(); // 0x102D5B20 + public override int Read(out byte[] buffer, int offset, int count); // 0x102D5D20 + public override int ReadByte(); // 0x102D5C80 + public override long Seek(long offset, SeekOrigin loc); // 0x102D5E90 + private int CalculateNewCapacity(int minimum); // 0x102D5A30 + private void Expand(int newSize); // 0x102D5AC0 + public override void SetLength(long value); // 0x102D6030 + public virtual byte[] ToArray(); // 0x102D61C0 + public override void Write(byte[] buffer, int offset, int count); // 0x102D63F0 + public override void WriteByte(byte value); // 0x102D6220 + public virtual void WriteTo(Stream stream); // 0x102D6320 +} + +// Namespace: System.IO +internal enum MonoFileType // TypeDefIndex: 453 +{ + Unknown = 0, + Disk = 1, + Char = 2, + Pipe = 3, + Remote = 32768 +} + +// Namespace: System.IO +internal sealed class MonoIO // TypeDefIndex: 454 +{ + // Fields + public static readonly FileAttributes InvalidFileAttributes; // 0x00 + public static readonly IntPtr InvalidHandle; // 0x04 + + // Properties + public static IntPtr ConsoleOutput { get; } // 0x102D7D30 + public static IntPtr ConsoleInput { get; } // 0x102D7D20 + public static IntPtr ConsoleError { get; } // 0x102D7D10 + public static char VolumeSeparatorChar { get; } // 0x102D7D60 + public static char DirectorySeparatorChar { get; } // 0x102D7D40 + public static char AltDirectorySeparatorChar { get; } // 0x102D7D00 + public static char PathSeparator { get; } // 0x102D7D50 + + // Methods + public void .ctor(); // 0x100BF000 + private static void .cctor(); // 0x102D7CB0 + public static Exception GetException(MonoIOError error); // 0x102D70C0 + public static Exception GetException(string path, MonoIOError error); // 0x102D71A0 + public static bool CreateDirectory(string path, out MonoIOError error); // 0x102D6E20 + public static bool RemoveDirectory(string path, out MonoIOError error); // 0x102D7860 + public static string[] GetFileSystemEntries(string path, string path_with_pattern, int attrs, int mask, out MonoIOError error); // 0x102D7750 + public static string GetCurrentDirectory(out MonoIOError error); // 0x102D70B0 + public static bool SetCurrentDirectory(string path, out MonoIOError error); // 0x102D7930 + public static bool MoveFile(string path, string dest, out MonoIOError error); // 0x102D77E0 + public static bool CopyFile(string path, string dest, bool overwrite, out MonoIOError error); // 0x102D6E00 + public static bool DeleteFile(string path, out MonoIOError error); // 0x102D6E60 + public static bool ReplaceFile(string sourceFileName, string destinationFileName, string destinationBackupFileName, bool ignoreMetadataErrors, out MonoIOError error); // 0x102D7880 + public static FileAttributes GetFileAttributes(string path, out MonoIOError error); // 0x102D7710 + public static bool SetFileAttributes(string path, FileAttributes attrs, out MonoIOError error); // 0x102D7950 + public static MonoFileType GetFileType(IntPtr handle, out MonoIOError error); // 0x102D7770 + public static bool Exists(string path, out MonoIOError error); // 0x102D7030 + public static bool ExistsFile(string path, out MonoIOError error); // 0x102D6F50 + public static bool ExistsDirectory(string path, out MonoIOError error); // 0x102D6EB0 + public static bool ExistsSymlink(string path, out MonoIOError error); // 0x102D6FC0 + public static bool GetFileStat(string path, out MonoIOStat stat, out MonoIOError error); // 0x102D7730 + public static IntPtr Open(string filename, FileMode mode, FileAccess access, FileShare share, FileOptions options, out MonoIOError error); // 0x102D7800 + public static bool Close(IntPtr handle, out MonoIOError error); // 0x102D6DE0 + public static int Read(IntPtr handle, byte[] dest, int dest_offset, int count, out MonoIOError error); // 0x102D7820 + public static int Write(IntPtr handle, byte[] src, int src_offset, int count, out MonoIOError error); // 0x102D7C90 + public static long Seek(IntPtr handle, long offset, SeekOrigin origin, out MonoIOError error); // 0x102D78A0 + public static bool Flush(IntPtr handle, out MonoIOError error); // 0x102D7090 + public static long GetLength(IntPtr handle, out MonoIOError error); // 0x102D7790 + public static bool SetLength(IntPtr handle, long length, out MonoIOError error); // 0x102D7C50 + public static bool SetFileTime(IntPtr handle, long creation_time, long last_access_time, long last_write_time, out MonoIOError error); // 0x102D7B40 + public static bool SetFileTime(string path, long creation_time, long last_access_time, long last_write_time, out MonoIOError error); // 0x102D7A90 + public static bool SetCreationTime(string path, DateTime dateTime, out MonoIOError error); // 0x102D78C0 + public static bool SetLastAccessTime(string path, DateTime dateTime, out MonoIOError error); // 0x102D7B70 + public static bool SetLastWriteTime(string path, DateTime dateTime, out MonoIOError error); // 0x102D7BE0 + public static bool SetFileTime(string path, int type, long creation_time, long last_access_time, long last_write_time, DateTime dateTime, out MonoIOError error); // 0x102D7970 + public static void Lock(IntPtr handle, long position, long length, out MonoIOError error); // 0x102D77C0 + public static void Unlock(IntPtr handle, long position, long length, out MonoIOError error); // 0x102D7C70 + public static bool CreatePipe(out IntPtr read_handle, out IntPtr write_handle); // 0x102D6E40 + public static bool DuplicateHandle(IntPtr source_process_handle, IntPtr source_handle, IntPtr target_process_handle, out IntPtr target_handle, int access, int inherit, int options); // 0x102D6E80 + public static int GetTempPath(out string path); // 0x102D77B0 + public static bool RemapPath(string path, out string newPath); // 0x102D7840 +} + +// Namespace: System.IO +internal enum MonoIOError // TypeDefIndex: 455 +{ + ERROR_SUCCESS = 0, + ERROR_FILE_NOT_FOUND = 2, + ERROR_PATH_NOT_FOUND = 3, + ERROR_TOO_MANY_OPEN_FILES = 4, + ERROR_ACCESS_DENIED = 5, + ERROR_INVALID_HANDLE = 6, + ERROR_INVALID_DRIVE = 15, + ERROR_NOT_SAME_DEVICE = 17, + ERROR_NO_MORE_FILES = 18, + ERROR_WRITE_FAULT = 29, + ERROR_READ_FAULT = 30, + ERROR_GEN_FAILURE = 31, + ERROR_SHARING_VIOLATION = 32, + ERROR_LOCK_VIOLATION = 33, + ERROR_HANDLE_DISK_FULL = 39, + ERROR_FILE_EXISTS = 80, + ERROR_CANNOT_MAKE = 82, + ERROR_INVALID_PARAMETER = 87, + ERROR_BROKEN_PIPE = 109, + ERROR_INVALID_NAME = 123, + ERROR_DIR_NOT_EMPTY = 145, + ERROR_ALREADY_EXISTS = 183, + ERROR_FILENAME_EXCED_RANGE = 206, + ERROR_ENCRYPTION_FAILED = 6000 +} + +// Namespace: System.IO +internal struct MonoIOStat // TypeDefIndex: 456 +{ + // Fields + public string Name; // 0x08 + public FileAttributes Attributes; // 0x0C + public long Length; // 0x10 + public long CreationTime; // 0x18 + public long LastAccessTime; // 0x20 + public long LastWriteTime; // 0x28 + +} + +// Namespace: System.IO +public static class Path // TypeDefIndex: 457 +{ + // Fields + public static readonly char[] InvalidPathChars; // 0x00 + public static readonly char AltDirectorySeparatorChar; // 0x04 + public static readonly char DirectorySeparatorChar; // 0x06 + public static readonly char PathSeparator; // 0x08 + internal static readonly string DirectorySeparatorStr; // 0x0C + public static readonly char VolumeSeparatorChar; // 0x10 + internal static readonly char[] PathSeparatorChars; // 0x14 + private static readonly bool dirEqualsVolume; // 0x18 + + // Methods + private static void .cctor(); // 0x102DB100 + public static string ChangeExtension(string path, string extension); // 0x102D85F0 + public static string Combine(string path1, string path2); // 0x102D8C00 + internal static string CleanPath(string s); // 0x102D8820 + public static string GetDirectoryName(string path); // 0x102D8E90 + public static string GetExtension(string path); // 0x102D91B0 + public static string GetFileName(string path); // 0x102D9320 + public static string GetFileNameWithoutExtension(string path); // 0x102D92C0 + public static string GetFullPath(string path); // 0x102D9410 + internal static string WindowsDriveAdjustment(string path); // 0x102DAE60 + internal static string InsecureGetFullPath(string path); // 0x102DA1E0 + private static bool IsDsc(char c); // 0x102DA7B0 + public static string GetPathRoot(string path); // 0x102D9560 + public static string GetTempFileName(); // 0x102D9BF0 + public static string GetTempPath(); // 0x102D9FC0 + private static string get_temp_path(); // 0x102DB350 + public static bool HasExtension(string path); // 0x102DA0E0 + public static bool IsPathRooted(string path); // 0x102DA840 + public static char[] GetInvalidFileNameChars(); // 0x102D9460 + public static char[] GetInvalidPathChars(); // 0x102D94F0 + public static string GetRandomFileName(); // 0x102D99D0 + private static int findExtension(string path); // 0x102DB2D0 + private static string GetServerAndShare(string path); // 0x102D9AC0 + private static bool SameRoot(string root, string path); // 0x102DAB60 + private static string CanonicalizePath(string path); // 0x102D7E30 + internal static bool IsPathSubsetOf(string subset, string path); // 0x102DA9E0 +} + +// Namespace: System.IO +[Serializable] +public class PathTooLongException : IOException // TypeDefIndex: 458 +{ + // Methods + public void .ctor(); // 0x102D7DF0 + public void .ctor(string message); // 0x100E5680 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 + public void .ctor(string message, Exception innerException); // 0x100E5670 +} + +// Namespace: System.IO +[Serializable] +public enum SearchOption // TypeDefIndex: 459 +{ + TopDirectoryOnly = 0, + AllDirectories = 1 +} + +// Namespace: System.IO +internal class SearchPattern // TypeDefIndex: 460 +{ + // Fields + private Op ops; // 0x08 + private bool ignore; // 0x0C + internal static readonly char[] WildcardChars; // 0x00 + internal static readonly char[] InvalidChars; // 0x04 + + // Methods + public void .ctor(string pattern); // 0x102DBCE0 + public void .ctor(string pattern, bool ignore); // 0x102DBD10 + private static void .cctor(); // 0x102DBBC0 + public bool IsMatch(string text); // 0x102DBA50 + private void Compile(string pattern); // 0x102DB7D0 + private bool Match(Op op, string text, int ptr); // 0x102DBA70 +} + +// Namespace: +private class Op // TypeDefIndex: 461 +{ + // Fields + public OpCode Code; // 0x08 + public string Argument; // 0x0C + public Op Next; // 0x10 + + // Methods + public void .ctor(OpCode code); // 0x102D7DC0 +} + +// Namespace: +private enum OpCode // TypeDefIndex: 462 +{ + ExactString = 0, + AnyChar = 1, + AnyString = 2, + End = 3, + True = 4 +} + +// Namespace: System.IO +[Serializable] +public enum SeekOrigin // TypeDefIndex: 463 +{ + Begin = 0, + Current = 1, + End = 2 +} + +// Namespace: System.IO +[Serializable] +public abstract class Stream : IDisposable // TypeDefIndex: 464 +{ + // Fields + public static readonly Stream Null; // 0x00 + + // Properties + public abstract bool CanRead { get; } + public abstract bool CanSeek { get; } + public abstract bool CanWrite { get; } + public virtual bool CanTimeout { get; } // 0x100EFBF0 + public abstract long Length { get; } + public abstract long Position { get; set; } + public virtual int ReadTimeout { get; set; } // 0x102DDB50 0x102DDBF0 + public virtual int WriteTimeout { get; set; } // 0x102DDBA0 0x102DDC40 + + // Methods + protected void .ctor(); // 0x100BF000 + private static void .cctor(); // 0x102DDAC0 + public void Dispose(); // 0x10208CB0 + protected virtual void Dispose(bool disposing); // 0x100C5530 + public virtual void Close(); // 0x10257710 + public static Stream Synchronized(Stream stream); // 0x102DD9F0 + protected virtual WaitHandle CreateWaitHandle(); // 0x102DD6D0 + public abstract void Flush(); + public abstract int Read(out byte[] buffer, int offset, int count); + public virtual int ReadByte(); // 0x102DD970 + public abstract long Seek(long offset, SeekOrigin origin); + public abstract void SetLength(long value); + public abstract void Write(byte[] buffer, int offset, int count); + public virtual void WriteByte(byte value); // 0x102DDA40 + public virtual IAsyncResult BeginRead(byte[] buffer, int offset, int count, AsyncCallback callback, object state); // 0x102DD3E0 + public virtual IAsyncResult BeginWrite(byte[] buffer, int offset, int count, AsyncCallback callback, object state); // 0x102DD560 + public virtual int EndRead(IAsyncResult asyncResult); // 0x102DD710 + public virtual void EndWrite(IAsyncResult asyncResult); // 0x102DD840 +} + +// Namespace: System.IO +internal class NullStream : Stream // TypeDefIndex: 465 +{ + // Properties + public override bool CanRead { get; } // 0x100E5880 + public override bool CanSeek { get; } // 0x100E5880 + public override bool CanWrite { get; } // 0x100E5880 + public override long Length { get; } // 0x100ED740 + public override long Position { get; set; } // 0x100ED740 0x100C5530 + + // Methods + public void .ctor(); // 0x102D7D70 + public override void Flush(); // 0x100C5530 + public override int Read(byte[] buffer, int offset, int count); // 0x100C5600 + public override int ReadByte(); // 0x10105770 + public override long Seek(long offset, SeekOrigin origin); // 0x100ED740 + public override void SetLength(long value); // 0x100C5530 + public override void Write(byte[] buffer, int offset, int count); // 0x100C5530 + public override void WriteByte(byte value); // 0x100C5530 +} + +// Namespace: System.IO +internal class StreamAsyncResult : IAsyncResult // TypeDefIndex: 466 +{ + // Fields + private object state; // 0x08 + private bool completed; // 0x0C + private bool done; // 0x0D + private Exception exc; // 0x10 + private int nbytes; // 0x14 + private ManualResetEvent wh; // 0x18 + + // Properties + public object AsyncState { get; } // 0x100BF0C0 + public WaitHandle AsyncWaitHandle { get; } // 0x102DBE60 + public virtual bool CompletedSynchronously { get; } // 0x100E5880 + public bool IsCompleted { get; } // 0x100F8910 + public Exception Exception { get; } // 0x100BFC20 + public int NBytes { get; } // 0x100EF0C0 + public bool Done { get; set; } // 0x10298460 0x10298470 + + // Methods + public void .ctor(object state); // 0x102DBE30 + public void SetComplete(Exception e); // 0x102DBD40 + public void SetComplete(Exception e, int nbytes); // 0x102DBE10 +} + +// Namespace: System.IO +[Serializable] +public class StreamReader : TextReader // TypeDefIndex: 467 +{ + // Fields + private const int DefaultBufferSize = 1024; // 0x00 + private const int DefaultFileBufferSize = 4096; // 0x00 + private const int MinimumBufferSize = 128; // 0x00 + private byte[] input_buffer; // 0x08 + private char[] decoded_buffer; // 0x0C + private int decoded_count; // 0x10 + private int pos; // 0x14 + private int buffer_size; // 0x18 + private int do_checks; // 0x1C + private Encoding encoding; // 0x20 + private Decoder decoder; // 0x24 + private Stream base_stream; // 0x28 + private bool mayBlock; // 0x2C + private StringBuilder line_builder; // 0x30 + public static readonly StreamReader Null; // 0x00 + private bool foundCR; // 0x34 + + // Properties + public virtual Stream BaseStream { get; } // 0x100EB040 + public virtual Encoding CurrentEncoding { get; } // 0x102DD350 + public bool EndOfStream { get; } // 0x102DD3B0 + + // Methods + internal void .ctor(); // 0x102DD130 + public void .ctor(Stream stream); // 0x102DD180 + public void .ctor(Stream stream, bool detectEncodingFromByteOrderMarks); // 0x102DCE10 + public void .ctor(Stream stream, Encoding encoding); // 0x102DD2E0 + public void .ctor(Stream stream, Encoding encoding, bool detectEncodingFromByteOrderMarks); // 0x102DD270 + public void .ctor(Stream stream, Encoding encoding, bool detectEncodingFromByteOrderMarks, int bufferSize); // 0x102DD0D0 + public void .ctor(string path); // 0x102DCEC0 + public void .ctor(string path, bool detectEncodingFromByteOrderMarks); // 0x102DCDB0 + public void .ctor(string path, Encoding encoding); // 0x102DD230 + public void .ctor(string path, Encoding encoding, bool detectEncodingFromByteOrderMarks); // 0x102DD250 + public void .ctor(string path, Encoding encoding, bool detectEncodingFromByteOrderMarks, int bufferSize); // 0x102DCF20 + private static void .cctor(); // 0x102DCD60 + internal void Initialize(Stream stream, Encoding encoding, bool detectEncodingFromByteOrderMarks, int bufferSize); // 0x102DC460 + public override void Close(); // 0x1010CA30 + protected override void Dispose(bool disposing); // 0x102DBFF0 + private int DoChecks(int count); // 0x102DC050 + public void DiscardBufferedData(); // 0x102DBFA0 + private int ReadBuffer(); // 0x102DC6C0 + public override int Peek(); // 0x102DC610 + internal bool DataAvailable(); // 0x102DBF80 + public override int Read(); // 0x102DCCB0 + public override int Read(out char[] buffer, int index, int count); // 0x102DCB10 + private int FindNextEOL(); // 0x102DC3B0 + public override string ReadLine(); // 0x102DC820 + public override string ReadToEnd(); // 0x102DCA00 +} + +// Namespace: +private class NullStreamReader : StreamReader // TypeDefIndex: 468 +{ + // Properties + public override Stream BaseStream { get; } // 0x10105820 + public override Encoding CurrentEncoding { get; } // 0x10105870 + + // Methods + public void .ctor(); // 0x101057D0 + public override int Peek(); // 0x10105770 + public override int Read(); // 0x10105770 + public override int Read(out char[] buffer, int index, int count); // 0x100C5600 + public override string ReadLine(); // 0x100C5600 + public override string ReadToEnd(); // 0x10105780 +} + +// Namespace: System.IO +[Serializable] +public class StreamWriter : TextWriter // TypeDefIndex: 469 +{ + // Fields + private const int DefaultBufferSize = 1024; // 0x00 + private const int DefaultFileBufferSize = 4096; // 0x00 + private const int MinimumBufferSize = 256; // 0x00 + private Encoding internalEncoding; // 0x10 + private Stream internalStream; // 0x14 + private bool iflush; // 0x18 + private byte[] byte_buf; // 0x1C + private int byte_pos; // 0x20 + private char[] decode_buf; // 0x24 + private int decode_pos; // 0x28 + private bool DisposedAlready; // 0x2C + private bool preamble_done; // 0x2D + public static readonly StreamWriter Null; // 0x00 + + // Properties + public virtual bool AutoFlush { get; set; } // 0x1010C980 0x1010C990 + public virtual Stream BaseStream { get; } // 0x100EF0C0 + public override Encoding Encoding { get; } // 0x100BFC20 + + // Methods + public void .ctor(Stream stream); // 0x1010C840 + public void .ctor(Stream stream, Encoding encoding); // 0x1010C8A0 + public void .ctor(Stream stream, Encoding encoding, int bufferSize); // 0x1010C6F0 + public void .ctor(string path); // 0x1010C920 + public void .ctor(string path, bool append); // 0x1010C8C0 + public void .ctor(string path, bool append, Encoding encoding); // 0x1010C560 + public void .ctor(string path, bool append, Encoding encoding, int bufferSize); // 0x1010C580 + private static void .cctor(); // 0x1010C4C0 + internal void Initialize(Encoding encoding, int bufferSize); // 0x1010BEA0 + protected override void Dispose(bool disposing); // 0x1010BB00 + public override void Flush(); // 0x1010BE00 + private void FlushBytes(); // 0x1010BD60 + private void Decode(); // 0x1010BAA0 + public override void Write(char[] buffer, int index, int count); // 0x1010C380 + private void LowLevelWrite(char[] buffer, int index, int count); // 0x1010BF80 + private void LowLevelWrite(string s); // 0x1010C000 + public override void Write(char value); // 0x1010C2B0 + public override void Write(char[] buffer); // 0x1010C0E0 + public override void Write(string value); // 0x1010C170 + public override void Close(); // 0x1010BA80 + protected override void Finalize(); // 0x1010BCA0 +} + +// Namespace: System.IO +[Serializable] +public class StringReader : TextReader // TypeDefIndex: 470 +{ + // Fields + private string source; // 0x08 + private int nextChar; // 0x0C + private int sourceLength; // 0x10 + + // Methods + public void .ctor(string s); // 0x1010CD20 + public override void Close(); // 0x1010CA30 + protected override void Dispose(bool disposing); // 0x1010CA50 + public override int Peek(); // 0x1010CA70 + public override int Read(); // 0x1010CBC0 + public override int Read(out char[] buffer, int index, int count); // 0x1010CC10 + public override string ReadLine(); // 0x1010CAB0 + public override string ReadToEnd(); // 0x1010CB80 + private void CheckObjectDisposedException(); // 0x1010C9C0 +} + +// Namespace: System.IO +[Serializable] +public class StringWriter : TextWriter // TypeDefIndex: 471 +{ + // Fields + private StringBuilder internalString; // 0x10 + private bool disposed; // 0x14 + + // Properties + public override Encoding Encoding { get; } // 0x1010D240 + + // Methods + public void .ctor(); // 0x1010D140 + public void .ctor(IFormatProvider formatProvider); // 0x1010D0F0 + public void .ctor(StringBuilder sb); // 0x1010D0D0 + public void .ctor(StringBuilder sb, IFormatProvider formatProvider); // 0x1010D190 + public override void Close(); // 0x1010CDC0 + protected override void Dispose(bool disposing); // 0x1010CDF0 + public virtual StringBuilder GetStringBuilder(); // 0x100BFC20 + public override string ToString(); // 0x1010CE20 + public override void Write(char value); // 0x1010D040 + public override void Write(string value); // 0x1010CFB0 + public override void Write(char[] buffer, int index, int count); // 0x1010CE50 +} + +// Namespace: System.IO +[Serializable] +public abstract class TextReader : IDisposable // TypeDefIndex: 472 +{ + // Fields + public static readonly TextReader Null; // 0x00 + + // Methods + protected void .ctor(); // 0x100BF000 + private static void .cctor(); // 0x10110030 + public virtual void Close(); // 0x1010CA30 + public void Dispose(); // 0x1010CA30 + protected virtual void Dispose(bool disposing); // 0x1010FDC0 + public virtual int Peek(); // 0x10105770 + public virtual int Read(); // 0x10105770 + public virtual int Read(out char[] buffer, int index, int count); // 0x1010FED0 + public virtual int ReadBlock(out char[] buffer, int index, int count); // 0x1010FDE0 + public virtual string ReadLine(); // 0x1010FE30 + public virtual string ReadToEnd(); // 0x1010FE80 + public static TextReader Synchronized(TextReader reader); // 0x1010FF40 +} + +// Namespace: +private class NullTextReader : TextReader // TypeDefIndex: 473 +{ + // Methods + public void .ctor(); // 0x101058C0 + public override string ReadLine(); // 0x100C5600 +} + +// Namespace: System.IO +[Serializable] +internal class SynchronizedReader : TextReader // TypeDefIndex: 474 +{ + // Fields + private TextReader reader; // 0x08 + + // Methods + public void .ctor(TextReader reader); // 0x1010D930 + public override void Close(); // 0x1010D290 + public override int Peek(); // 0x1010D370 + public override int ReadBlock(char[] buffer, int index, int count); // 0x1010D460 + public override string ReadLine(); // 0x1010D560 + public override string ReadToEnd(); // 0x1010D650 + public override int Read(); // 0x1010D840 + public override int Read(char[] buffer, int index, int count); // 0x1010D740 +} + +// Namespace: System.IO +[Serializable] +public abstract class TextWriter : IDisposable // TypeDefIndex: 475 +{ + // Fields + protected char[] CoreNewLine; // 0x08 + internal IFormatProvider internalFormatProvider; // 0x0C + public static readonly TextWriter Null; // 0x00 + + // Properties + public abstract Encoding Encoding { get; } + public virtual IFormatProvider FormatProvider { get; } // 0x100C5B30 + public virtual string NewLine { get; set; } // 0x10110D80 0x10110DA0 + + // Methods + protected void .ctor(); // 0x10110D00 + protected void .ctor(IFormatProvider formatProvider); // 0x10110D40 + private static void .cctor(); // 0x10110C60 + public virtual void Close(); // 0x1010BA80 + protected virtual void Dispose(bool disposing); // 0x1010FDC0 + public void Dispose(); // 0x101100C0 + public virtual void Flush(); // 0x100C5530 + public static TextWriter Synchronized(TextWriter writer); // 0x101100F0 + internal static TextWriter Synchronized(TextWriter writer, bool neverClose); // 0x101101E0 + public virtual void Write(bool value); // 0x10110B60 + public virtual void Write(char value); // 0x100C5530 + public virtual void Write(char[] buffer); // 0x10110BC0 + public virtual void Write(Decimal value); // 0x10110AC0 + public virtual void Write(double value); // 0x10110760 + public virtual void Write(int value); // 0x101108A0 + public virtual void Write(long value); // 0x10110AF0 + public virtual void Write(object value); // 0x10110BF0 + public virtual void Write(float value); // 0x10110B90 + public virtual void Write(string value); // 0x10110A20 + public virtual void Write(uint value); // 0x10110910 + public virtual void Write(ulong value); // 0x10110C30 + public virtual void Write(string format, object arg0); // 0x10110A50 + public virtual void Write(string format, object[] arg); // 0x10110940 + public virtual void Write(char[] buffer, int index, int count); // 0x10110790 + public virtual void Write(string format, object arg0, object arg1); // 0x101106F0 + public virtual void Write(string format, object arg0, object arg1, object arg2); // 0x101109B0 + public virtual void WriteLine(); // 0x101104D0 + public virtual void WriteLine(bool value); // 0x10110390 + public virtual void WriteLine(char value); // 0x10110630 + public virtual void WriteLine(char[] buffer); // 0x101105F0 + public virtual void WriteLine(Decimal value); // 0x10110570 + public virtual void WriteLine(double value); // 0x101104F0 + public virtual void WriteLine(int value); // 0x10110410 + public virtual void WriteLine(long value); // 0x10110310 + public virtual void WriteLine(object value); // 0x10110670 + public virtual void WriteLine(float value); // 0x10110490 + public virtual void WriteLine(string value); // 0x10110530 + public virtual void WriteLine(uint value); // 0x101102D0 + public virtual void WriteLine(ulong value); // 0x101105B0 + public virtual void WriteLine(string format, object arg0); // 0x10110450 + public virtual void WriteLine(string format, object[] arg); // 0x101103D0 + public virtual void WriteLine(char[] buffer, int index, int count); // 0x10110350 + public virtual void WriteLine(string format, object arg0, object arg1); // 0x10110290 + public virtual void WriteLine(string format, object arg0, object arg1, object arg2); // 0x101106B0 +} + +// Namespace: +private sealed class NullTextWriter : TextWriter // TypeDefIndex: 476 +{ + // Properties + public override Encoding Encoding { get; } // 0x10105980 + + // Methods + public void .ctor(); // 0x10105910 + public override void Write(string s); // 0x100C5530 + public override void Write(char value); // 0x100C5530 + public override void Write(char[] value, int index, int count); // 0x100C5530 +} + +// Namespace: System.IO +[Serializable] +internal class SynchronizedWriter : TextWriter // TypeDefIndex: 477 +{ + // Fields + private TextWriter writer; // 0x10 + private bool neverClose; // 0x14 + + // Properties + public override Encoding Encoding { get; } // 0x1010FA10 + public override IFormatProvider FormatProvider { get; } // 0x1010FB00 + public override string NewLine { get; set; } // 0x1010FBF0 0x1010FCE0 + + // Methods + public void .ctor(TextWriter writer); // 0x1010F9F0 + public void .ctor(TextWriter writer, bool neverClose); // 0x1010F970 + public override void Close(); // 0x1010D990 + public override void Flush(); // 0x1010DA80 + public override void Write(bool value); // 0x1010EB50 + public override void Write(char value); // 0x1010F430 + public override void Write(char[] value); // 0x1010F7B0 + public override void Write(Decimal value); // 0x1010EFB0 + public override void Write(int value); // 0x1010F0B0 + public override void Write(long value); // 0x1010EDF0 + public override void Write(object value); // 0x1010F270 + public override void Write(float value); // 0x1010EED0 + public override void Write(string value); // 0x1010F350 + public override void Write(uint value); // 0x1010ED10 + public override void Write(ulong value); // 0x1010F510 + public override void Write(string format, object value); // 0x1010F890 + public override void Write(string format, object[] value); // 0x1010F5F0 + public override void Write(char[] buffer, int index, int count); // 0x1010EC30 + public override void Write(string format, object arg0, object arg1); // 0x1010F190 + public override void Write(string format, object arg0, object arg1, object arg2); // 0x1010F6D0 + public override void WriteLine(); // 0x1010E970 + public override void WriteLine(bool value); // 0x1010E890 + public override void WriteLine(char value); // 0x1010E6D0 + public override void WriteLine(char[] value); // 0x1010E510 + public override void WriteLine(Decimal value); // 0x1010EA50 + public override void WriteLine(double value); // 0x1010E260 + public override void WriteLine(int value); // 0x1010DB60 + public override void WriteLine(long value); // 0x1010E0A0 + public override void WriteLine(object value); // 0x1010DE00 + public override void WriteLine(float value); // 0x1010DEE0 + public override void WriteLine(string value); // 0x1010DC40 + public override void WriteLine(uint value); // 0x1010E430 + public override void WriteLine(ulong value); // 0x1010E350 + public override void WriteLine(string format, object value); // 0x1010E5F0 + public override void WriteLine(string format, object[] value); // 0x1010DD20 + public override void WriteLine(char[] buffer, int index, int count); // 0x1010DFC0 + public override void WriteLine(string format, object arg0, object arg1); // 0x1010E7B0 + public override void WriteLine(string format, object arg0, object arg1, object arg2); // 0x1010E180 +} + +// Namespace: System.IO +internal class UnexceptionalStreamReader : StreamReader // TypeDefIndex: 478 +{ + // Fields + private static bool[] newline; // 0x00 + private static char newlineChar; // 0x04 + + // Methods + public void .ctor(Stream stream); // 0x101116F0 + public void .ctor(Stream stream, bool detect_encoding_from_bytemarks); // 0x10111740 + public void .ctor(Stream stream, Encoding encoding); // 0x10111560 + public void .ctor(Stream stream, Encoding encoding, bool detect_encoding_from_bytemarks); // 0x10111790 + public void .ctor(Stream stream, Encoding encoding, bool detect_encoding_from_bytemarks, int buffer_size); // 0x101117E0 + public void .ctor(string path); // 0x101116A0 + public void .ctor(string path, bool detect_encoding_from_bytemarks); // 0x10111600 + public void .ctor(string path, Encoding encoding); // 0x10111650 + public void .ctor(string path, Encoding encoding, bool detect_encoding_from_bytemarks); // 0x10111510 + public void .ctor(string path, Encoding encoding, bool detect_encoding_from_bytemarks, int buffer_size); // 0x101115B0 + private static void .cctor(); // 0x10111490 + public override int Peek(); // 0x10110F90 + public override int Read(); // 0x101111D0 + public override int Read(out char[] dest_buffer, int index, int count); // 0x10111290 + private bool CheckEOL(char current); // 0x10110DE0 + public override string ReadLine(); // 0x10111050 + public override string ReadToEnd(); // 0x10111110 +} + +// Namespace: System.IO +internal class UnexceptionalStreamWriter : StreamWriter // TypeDefIndex: 479 +{ + // Methods + public void .ctor(Stream stream); // 0x101122C0 + public void .ctor(Stream stream, Encoding encoding); // 0x10112260 + public void .ctor(Stream stream, Encoding encoding, int bufferSize); // 0x10112120 + public void .ctor(string path); // 0x10112020 + public void .ctor(string path, bool append); // 0x101121C0 + public void .ctor(string path, bool append, Encoding encoding); // 0x101120C0 + public void .ctor(string path, bool append, Encoding encoding, int bufferSize); // 0x10112170 + public override void Flush(); // 0x10111830 + public override void Write(char[] buffer, int index, int count); // 0x10111B60 + public override void Write(char value); // 0x10111EA0 + public override void Write(char[] value); // 0x10111D60 + public override void Write(string value); // 0x10111980 +} + +// Namespace: System.IO +public class UnmanagedMemoryStream : Stream // TypeDefIndex: 480 +{ + // Fields + private long length; // 0x08 + private bool closed; // 0x10 + private long capacity; // 0x18 + private FileAccess fileaccess; // 0x20 + private IntPtr initial_pointer; // 0x24 + private long initial_position; // 0x28 + private long current_position; // 0x30 + private EventHandler Closed; // 0x38 + + // Properties + public override bool CanRead { get; } // 0x10112F40 + public override bool CanSeek { get; } // 0x10112F60 + public override bool CanWrite { get; } // 0x10112F70 + public long Capacity { get; } // 0x10112F90 + public override long Length { get; } // 0x10113000 + public override long Position { get; set; } // 0x10113110 0x10113290 + public void * PositionPointer { get; set; } // 0x10113070 0x101131E0 + + // Events + internal event EventHandler Closed { + add; // 0x10112EE0 + remove; // 0x10113180 + } + + // Methods + protected void .ctor(); // 0x10112E80 + public void .ctor(void * pointer, long length); // 0x10112E10 + public void .ctor(void * pointer, long length, long capacity, FileAccess access); // 0x10112DA0 + public override int Read(out byte[] buffer, int offset, int count); // 0x10112640 + public override int ReadByte(); // 0x10112550 + public override long Seek(long offset, SeekOrigin loc); // 0x10112820 + public override void SetLength(long value); // 0x10112930 + public override void Flush(); // 0x10112390 + protected override void Dispose(bool disposing); // 0x10112360 + public override void Write(byte[] buffer, int offset, int count); // 0x10112B70 + public override void WriteByte(byte value); // 0x10112A60 + protected void Initialize(void * pointer, long length, long capacity, FileAccess access); // 0x101123F0 +} + +// Namespace: System.Reflection.Emit +internal enum NativeResourceType // TypeDefIndex: 481 +{ + None = 0, + Unmanaged = 1, + Assembly = 2, + Explicit = 3 +} + +// Namespace: System.Reflection.Emit +internal struct RefEmitPermissionSet // TypeDefIndex: 482 +{ + // Fields + public SecurityAction action; // 0x08 + public string pset; // 0x0C + + // Methods + public void .ctor(SecurityAction action, string pset); // 0x100075A0 +} + +// Namespace: System.Reflection.Emit +internal struct MonoResource // TypeDefIndex: 483 +{ + // Fields + public byte[] data; // 0x08 + public string name; // 0x0C + public string filename; // 0x10 + public ResourceAttributes attrs; // 0x14 + public int offset; // 0x18 + public Stream stream; // 0x1C + +} + +// Namespace: System.Reflection.Emit +internal struct MonoWin32Resource // TypeDefIndex: 484 +{ + // Fields + public int res_type; // 0x08 + public int res_id; // 0x0C + public int lang_id; // 0x10 + public byte[] data; // 0x14 + + // Methods + public void .ctor(int res_type, int res_id, int lang_id, byte[] data); // 0x10005CA0 +} + +// Namespace: System.Reflection.Emit +public sealed class AssemblyBuilder : Assembly, _AssemblyBuilder // TypeDefIndex: 485 +{ + // Fields + private const AssemblyBuilderAccess COMPILER_ACCESS = 2048; // 0x00 + private UIntPtr dynamic_assembly; // 0x30 + private MethodInfo entry_point; // 0x34 + private ModuleBuilder[] modules; // 0x38 + private string name; // 0x3C + private string dir; // 0x40 + private CustomAttributeBuilder[] cattrs; // 0x44 + private MonoResource[] resources; // 0x48 + private byte[] public_key; // 0x4C + private string version; // 0x50 + private string culture; // 0x54 + private uint algid; // 0x58 + private uint flags; // 0x5C + private PEFileKinds pekind; // 0x60 + private bool delay_sign; // 0x64 + private uint access; // 0x68 + private Module[] loaded_modules; // 0x6C + private MonoWin32Resource[] win32_resources; // 0x70 + private RefEmitPermissionSet[] permissions_minimum; // 0x74 + private RefEmitPermissionSet[] permissions_optional; // 0x78 + private RefEmitPermissionSet[] permissions_refused; // 0x7C + private PortableExecutableKinds peKind; // 0x80 + private ImageFileMachine machine; // 0x84 + private bool corlib_internal; // 0x88 + private Type[] type_forwarders; // 0x8C + private byte[] pktoken; // 0x90 + internal Type corlib_object_type; // 0x94 + internal Type corlib_value_type; // 0x98 + internal Type corlib_enum_type; // 0x9C + internal Type corlib_void_type; // 0xA0 + private ArrayList resource_writers; // 0xA4 + private Win32VersionResource version_res; // 0xA8 + private bool created; // 0xAC + private bool is_module_only; // 0xAD + private StrongName sn; // 0xB0 + private NativeResourceType native_resource; // 0xB4 + private readonly bool is_compiler_context; // 0xB8 + private string versioninfo_culture; // 0xBC + private ModuleBuilder manifest_module; // 0xC0 + + // Properties + public override string CodeBase { get; } // 0x100E9E90 + public override MethodInfo EntryPoint { get; } // 0x100E9ED0 + public override string Location { get; } // 0x100E9F40 + public override string ImageRuntimeVersion { get; } // 0x100E9EE0 + public override bool ReflectionOnly { get; } // 0x100E9F80 + internal bool IsCompilerContext { get; } // 0x100E9EF0 + internal bool IsSave { get; } // 0x100E9F30 + internal bool IsRun { get; } // 0x100E9F10 + internal string AssemblyDir { get; } // 0x100E9E80 + internal bool IsModuleOnly { get; set; } // 0x100E9F00 0x100E9FE0 + + // Methods + internal void .ctor(AssemblyName n, string directory, AssemblyBuilderAccess access, bool corlib_internal); // 0x100E8DE0 + private void System.Runtime.InteropServices._AssemblyBuilder.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x100E8C00 + private void System.Runtime.InteropServices._AssemblyBuilder.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x100E8CA0 + private void System.Runtime.InteropServices._AssemblyBuilder.GetTypeInfoCount(out uint pcTInfo); // 0x100E8C50 + private void System.Runtime.InteropServices._AssemblyBuilder.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x100E8CF0 + private static void basic_init(AssemblyBuilder ab); // 0x100E9230 + public void AddResourceFile(string name, string fileName); // 0x100E5A70 + public void AddResourceFile(string name, string fileName, ResourceAttributes attribute); // 0x100E5BD0 + private void AddResourceFile(string name, string fileName, ResourceAttributes attribute, bool fileNeedsToExists); // 0x100E5A90 + internal void AddPermissionRequests(PermissionSet required, PermissionSet optional, PermissionSet refused); // 0x100C5530 + internal void EmbedResourceFile(string name, string fileName); // 0x100E7710 + internal void EmbedResourceFile(string name, string fileName, ResourceAttributes attribute); // 0x100E74A0 + internal void EmbedResource(string name, byte[] blob, ResourceAttributes attribute); // 0x100E7730 + internal void AddTypeForwarder(Type t); // 0x100E5BF0 + public ModuleBuilder DefineDynamicModule(string name); // 0x100E5F30 + public ModuleBuilder DefineDynamicModule(string name, bool emitSymbolInfo); // 0x100E5F10 + public ModuleBuilder DefineDynamicModule(string name, string fileName); // 0x100E5ED0 + public ModuleBuilder DefineDynamicModule(string name, string fileName, bool emitSymbolInfo); // 0x100E5EF0 + private ModuleBuilder DefineDynamicModule(string name, string fileName, bool emitSymbolInfo, bool transient); // 0x100E5F50 + private Module InternalAddModule(string fileName); // 0x100E7EB0 + internal Module AddModule(string fileName); // 0x100E5960 + public IResourceWriter DefineResource(string name, string description, string fileName); // 0x100E64E0 + public IResourceWriter DefineResource(string name, string description, string fileName, ResourceAttributes attribute); // 0x100E6590 + private void AddUnmanagedResource(Win32Resource res); // 0x100E5D60 + public void DefineUnmanagedResource(byte[] resource); // 0x100E6A40 + public void DefineUnmanagedResource(string resourceFileName); // 0x100E6640 + public void DefineVersionInfoResource(); // 0x100E7400 + public void DefineVersionInfoResource(string product, string productVersion, string company, string copyright, string trademark); // 0x100E7280 + internal void DefineIconResource(string iconFileName); // 0x100E61A0 + private void DefineVersionInfoResourceImpl(string fileName); // 0x100E6B00 + public ModuleBuilder GetDynamicModule(string name); // 0x100E78B0 + public override Type[] GetExportedTypes(); // 0x100E7A00 + public override FileStream GetFile(string name); // 0x100E7A40 + public override FileStream[] GetFiles(bool getResourceModules); // 0x100E7A80 + internal override Module[] GetModulesInternal(); // 0x100E7C10 + internal override Type[] GetTypes(bool exportedOnly); // 0x100E7C90 + public override ManifestResourceInfo GetManifestResourceInfo(string resourceName); // 0x100E7B10 + public override string[] GetManifestResourceNames(); // 0x100E7B50 + public override Stream GetManifestResourceStream(string name); // 0x100E7B90 + public override Stream GetManifestResourceStream(Type type, string name); // 0x100E7BD0 + internal override Module GetManifestModule(); // 0x100E7AC0 + public void Save(string assemblyFileName, PortableExecutableKinds portableExecutableKind, ImageFileMachine imageFileMachine); // 0x100E7EF0 + public void Save(string assemblyFileName); // 0x100E7ED0 + public void SetEntryPoint(MethodInfo entryMethod); // 0x100E8A60 + public void SetEntryPoint(MethodInfo entryMethod, PEFileKinds fileKind); // 0x100E8B30 + public void SetCustomAttribute(CustomAttributeBuilder customBuilder); // 0x100E8590 + public void SetCustomAttribute(ConstructorInfo con, byte[] binaryAttribute); // 0x100E89C0 + internal void SetCorlibTypeBuilders(Type corlib_object_type, Type corlib_value_type, Type corlib_enum_type); // 0x100E8530 + internal void SetCorlibTypeBuilders(Type corlib_object_type, Type corlib_value_type, Type corlib_enum_type, Type corlib_void_type); // 0x100E8560 + private Exception not_supported(); // 0x100E9F90 + private void check_name_and_filename(string name, string fileName, bool fileNeedsToExists); // 0x100E9240 + private string create_assembly_version(string version); // 0x100E97F0 + private string GetCultureString(string str); // 0x100E7820 + internal override AssemblyName UnprotectedGetName(); // 0x100E8D40 +} + +// Namespace: System.Reflection.Emit +[Serializable] +public enum AssemblyBuilderAccess // TypeDefIndex: 486 +{ + Run = 1, + Save = 2, + RunAndSave = 3, + ReflectionOnly = 6 +} + +// Namespace: System.Reflection.Emit +public sealed class ConstructorBuilder : ConstructorInfo, _ConstructorBuilder // TypeDefIndex: 487 +{ + // Fields + private RuntimeMethodHandle mhandle; // 0x08 + private ILGenerator ilgen; // 0x0C + internal Type[] parameters; // 0x10 + private MethodAttributes attrs; // 0x14 + private MethodImplAttributes iattrs; // 0x18 + private int table_idx; // 0x1C + private CallingConventions call_conv; // 0x20 + private TypeBuilder type; // 0x24 + internal ParameterBuilder[] pinfo; // 0x28 + private CustomAttributeBuilder[] cattrs; // 0x2C + private bool init_locals; // 0x30 + private Type[][] paramModReq; // 0x34 + private Type[][] paramModOpt; // 0x38 + private RefEmitPermissionSet[] permissions; // 0x3C + + // Properties + public override CallingConventions CallingConvention { get; } // 0x100EACD0 + public bool InitLocals { get; set; } // 0x100EF0D0 0x100EF3A0 + internal TypeBuilder TypeBuilder { get; } // 0x100EAD50 + public override RuntimeMethodHandle MethodHandle { get; } // 0x100EF180 + public override MethodAttributes Attributes { get; } // 0x100EF0C0 + public override Type ReflectedType { get; } // 0x100EAD50 + public override Type DeclaringType { get; } // 0x100EAD50 + public Type ReturnType { get; } // 0x100C5600 + public override string Name { get; } // 0x100EF1D0 + public string Signature { get; } // 0x100EF250 + public override Module Module { get; } // 0x100EF1C0 + private bool IsCompilerContext { get; } // 0x100EF0E0 + + // Methods + internal void .ctor(TypeBuilder tb, MethodAttributes attributes, CallingConventions callingConvention, Type[] parameterTypes, Type[][] paramModReq, Type[][] paramModOpt); // 0x100EEE20 + private void System.Runtime.InteropServices._ConstructorBuilder.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x100EEC70 + private void System.Runtime.InteropServices._ConstructorBuilder.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x100EED10 + private void System.Runtime.InteropServices._ConstructorBuilder.GetTypeInfoCount(out uint pcTInfo); // 0x100EECC0 + private void System.Runtime.InteropServices._ConstructorBuilder.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x100EED60 + public override MethodImplAttributes GetMethodImplementationFlags(); // 0x100EE580 + public override ParameterInfo[] GetParameters(); // 0x100EE6F0 + internal ParameterInfo[] GetParametersInternal(); // 0x100EE5D0 + internal override int GetParameterCount(); // 0x100EE5B0 + public override object Invoke(object obj, BindingFlags invokeAttr, Binder binder, object[] parameters, CultureInfo culture); // 0x100EE780 + public override object Invoke(BindingFlags invokeAttr, Binder binder, object[] parameters, CultureInfo culture); // 0x100EE7C0 + public void AddDeclarativeSecurity(SecurityAction action, PermissionSet pset); // 0x100C5530 + public ParameterBuilder DefineParameter(int iSequence, ParameterAttributes attributes, string strParamName); // 0x100EDF60 + public override bool IsDefined(Type attributeType, bool inherit); // 0x100EE800 + public override object[] GetCustomAttributes(bool inherit); // 0x100EE300 + public override object[] GetCustomAttributes(Type attributeType, bool inherit); // 0x100EE260 + public ILGenerator GetILGenerator(); // 0x100EE3A0 + public ILGenerator GetILGenerator(int streamSize); // 0x100EE490 + public void SetCustomAttribute(CustomAttributeBuilder customBuilder); // 0x100EE8B0 + public void SetCustomAttribute(ConstructorInfo con, byte[] binaryAttribute); // 0x100EEB00 + public void SetImplementationFlags(MethodImplAttributes attributes); // 0x100EEBA0 + public Module GetModule(); // 0x100EE590 + public MethodToken GetToken(); // 0x100EE770 + public void SetSymCustomAttribute(string name, byte[] data); // 0x100EEC10 + public override string ToString(); // 0x100EEDB0 + internal void fixup(); // 0x100EEFD0 + internal void GenerateDebugInfo(ISymbolWriter symbolWriter); // 0x100EE090 + internal override int get_next_table_index(object obj, int table, bool inc); // 0x100EF280 + private void RejectIfCreated(); // 0x100EE840 + private Exception not_supported(); // 0x100EF350 + private Exception not_after_created(); // 0x100EF2B0 + private Exception not_created(); // 0x100EF300 +} + +// Namespace: System.Reflection.Emit +internal class ConstructorOnTypeBuilderInst : ConstructorInfo // TypeDefIndex: 488 +{ + // Fields + private MonoGenericClass instantiation; // 0x08 + private ConstructorBuilder cb; // 0x0C + + // Properties + public override Type DeclaringType { get; } // 0x100BF0C0 + public override string Name { get; } // 0x100EFD20 + public override Type ReflectedType { get; } // 0x100BF0C0 + public override int MetadataToken { get; } // 0x100EFC00 + public override RuntimeMethodHandle MethodHandle { get; } // 0x100EFCF0 + public override MethodAttributes Attributes { get; } // 0x100EFBB0 + public override CallingConventions CallingConvention { get; } // 0x100EFBD0 + public override bool ContainsGenericParameters { get; } // 0x100EFBF0 + public override bool IsGenericMethodDefinition { get; } // 0x100EFBF0 + public override bool IsGenericMethod { get; } // 0x100EFBF0 + + // Methods + public void .ctor(MonoGenericClass instantiation, ConstructorBuilder cb); // 0x100EFB50 + public override bool IsDefined(Type attributeType, bool inherit); // 0x100EFB20 + public override object[] GetCustomAttributes(bool inherit); // 0x100EF670 + public override object[] GetCustomAttributes(Type attributeType, bool inherit); // 0x100EF710 + public override MethodImplAttributes GetMethodImplementationFlags(); // 0x100EF7F0 + public override ParameterInfo[] GetParameters(); // 0x100EF840 + internal override int GetParameterCount(); // 0x100EF810 + public override object Invoke(object obj, BindingFlags invokeAttr, Binder binder, object[] parameters, CultureInfo culture); // 0x100EFA90 + public override Type[] GetGenericArguments(); // 0x100EF7C0 + public override object Invoke(BindingFlags invokeAttr, Binder binder, object[] parameters, CultureInfo culture); // 0x100EFAD0 +} + +// Namespace: System.Reflection.Emit +public class CustomAttributeBuilder : _CustomAttributeBuilder // TypeDefIndex: 489 +{ + // Fields + private ConstructorInfo ctor; // 0x08 + private byte[] data; // 0x0C + private static Dictionary`2 <>f__switch$map1C; // 0x00 + + // Properties + internal ConstructorInfo Ctor { get; } // 0x100BF0C0 + internal byte[] Data { get; } // 0x100C5B30 + + // Methods + internal void .ctor(ConstructorInfo con, byte[] cdata); // 0x100F0DC0 + public void .ctor(ConstructorInfo con, object[] constructorArgs); // 0x100F0C70 + public void .ctor(ConstructorInfo con, object[] constructorArgs, FieldInfo[] namedFields, object[] fieldValues); // 0x100F0D60 + public void .ctor(ConstructorInfo con, object[] constructorArgs, PropertyInfo[] namedProperties, object[] propertyValues); // 0x100F0CF0 + public void .ctor(ConstructorInfo con, object[] constructorArgs, PropertyInfo[] namedProperties, object[] propertyValues, FieldInfo[] namedFields, object[] fieldValues); // 0x100F0D50 + private void System.Runtime.InteropServices._CustomAttributeBuilder.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x100F0B30 + private void System.Runtime.InteropServices._CustomAttributeBuilder.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x100F0BD0 + private void System.Runtime.InteropServices._CustomAttributeBuilder.GetTypeInfoCount(out uint pcTInfo); // 0x100F0B80 + private void System.Runtime.InteropServices._CustomAttributeBuilder.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x100F0C20 + private static byte[] GetBlob(Assembly asmb, ConstructorInfo con, object[] constructorArgs, PropertyInfo[] namedProperties, object[] propertyValues, FieldInfo[] namedFields, object[] fieldValues); // 0x100EFD50 + private bool IsValidType(Type t); // 0x100F0A80 + private void Initialize(ConstructorInfo con, object[] constructorArgs, PropertyInfo[] namedProperties, object[] propertyValues, FieldInfo[] namedFields, object[] fieldValues); // 0x100EFDF0 + internal static int decode_len(byte[] data, int pos, out int rpos); // 0x100F1750 + internal static string string_from_bytes(byte[] data, int pos, int len); // 0x100F2170 + internal string string_arg(); // 0x100F2130 + internal static UnmanagedMarshal get_umarshal(CustomAttributeBuilder customBuilder, bool is_field); // 0x100F1A00 + private static Type elementTypeToType(int elementType); // 0x100F1880 + private static object decode_cattr_value(Type t, byte[] data, int pos, out int rpos); // 0x100F1430 + internal static CustomAttributeInfo decode_cattr(CustomAttributeBuilder customBuilder); // 0x100F0E40 + private static ParameterInfo[] GetParameters(ConstructorInfo ctor); // 0x100EFD80 +} + +// Namespace: +internal struct CustomAttributeInfo // TypeDefIndex: 490 +{ + // Fields + public ConstructorInfo ctor; // 0x08 + public object[] ctorArgs; // 0x0C + public string[] namedParamNames; // 0x10 + public object[] namedParamValues; // 0x14 + +} + +// Namespace: System.Reflection.Emit +internal enum TypeKind // TypeDefIndex: 491 +{ + ARRAY = 20, + SZARRAY = 29 +} + +// Namespace: System.Reflection.Emit +internal abstract class DerivedType : Type // TypeDefIndex: 492 +{ + // Fields + internal Type elementType; // 0x0C + + // Properties + public override bool ContainsGenericParameters { get; } // 0x100F6AC0 + public override GenericParameterAttributes GenericParameterAttributes { get; } // 0x100F6B80 + public override StructLayoutAttribute StructLayoutAttribute { get; } // 0x100F6C70 + public override Assembly Assembly { get; } // 0x100F6A90 + public override string AssemblyQualifiedName { get; } // 0x100F69B0 + public override string FullName { get; } // 0x100F6AF0 + public override string Name { get; } // 0x100F6C00 + public override Guid GUID { get; } // 0x100F6B30 + public override Module Module { get; } // 0x100F6BD0 + public override string Namespace { get; } // 0x100F6C40 + public override RuntimeTypeHandle TypeHandle { get; } // 0x100F6CC0 + public override Type UnderlyingSystemType { get; } // 0x100F6D10 + + // Methods + internal void .ctor(Type elementType); // 0x100EDEB0 + internal static void create_unmanaged_type(Type type); // 0x100F69A0 + internal abstract string FormatName(string elementName); + public override Type GetInterface(string name, bool ignoreCase); // 0x100F63B0 + public override Type[] GetInterfaces(); // 0x100F6400 + public override Type GetElementType(); // 0x100C5B30 + public override EventInfo GetEvent(string name, BindingFlags bindingAttr); // 0x100F6220 + public override EventInfo[] GetEvents(BindingFlags bindingAttr); // 0x100F6270 + public override FieldInfo GetField(string name, BindingFlags bindingAttr); // 0x100F62C0 + public override FieldInfo[] GetFields(BindingFlags bindingAttr); // 0x100F6310 + public override MemberInfo[] GetMembers(BindingFlags bindingAttr); // 0x100F6450 + protected override MethodInfo GetMethodImpl(string name, BindingFlags bindingAttr, Binder binder, CallingConventions callConvention, Type[] types, ParameterModifier[] modifiers); // 0x100F64A0 + public override MethodInfo[] GetMethods(BindingFlags bindingAttr); // 0x100F64F0 + public override Type GetNestedType(string name, BindingFlags bindingAttr); // 0x100F6540 + public override Type[] GetNestedTypes(BindingFlags bindingAttr); // 0x100F6590 + public override PropertyInfo[] GetProperties(BindingFlags bindingAttr); // 0x100F65E0 + protected override PropertyInfo GetPropertyImpl(string name, BindingFlags bindingAttr, Binder binder, Type returnType, Type[] types, ParameterModifier[] modifiers); // 0x100F6630 + protected override ConstructorInfo GetConstructorImpl(BindingFlags bindingAttr, Binder binder, CallingConventions callConvention, Type[] types, ParameterModifier[] modifiers); // 0x100F60E0 + protected override TypeAttributes GetAttributeFlagsImpl(); // 0x100F60B0 + protected override bool HasElementTypeImpl(); // 0x100E5880 + protected override bool IsArrayImpl(); // 0x100EFBF0 + protected override bool IsByRefImpl(); // 0x100EFBF0 + protected override bool IsCOMObjectImpl(); // 0x100EFBF0 + protected override bool IsPointerImpl(); // 0x100EFBF0 + protected override bool IsPrimitiveImpl(); // 0x100EFBF0 + public override ConstructorInfo[] GetConstructors(BindingFlags bindingAttr); // 0x100F6130 + public override object InvokeMember(string name, BindingFlags invokeAttr, Binder binder, object target, object[] args, ParameterModifier[] modifiers, CultureInfo culture, string[] namedParameters); // 0x100F6680 + public override InterfaceMapping GetInterfaceMap(Type interfaceType); // 0x100F6360 + public override bool IsInstanceOfType(object o); // 0x100EFBF0 + public override bool IsAssignableFrom(Type c); // 0x100EFBF0 + public override Type MakeGenericType(Type[] typeArguments); // 0x100F68C0 + public override Type MakeArrayType(); // 0x100F6720 + public override Type MakeArrayType(int rank); // 0x100F67B0 + public override Type MakeByRefType(); // 0x100F6830 + public override Type MakePointerType(); // 0x100F6910 + public override string ToString(); // 0x100F6960 + public override bool IsDefined(Type attributeType, bool inherit); // 0x100F66D0 + public override object[] GetCustomAttributes(bool inherit); // 0x100F61D0 + public override object[] GetCustomAttributes(Type attributeType, bool inherit); // 0x100F6180 +} + +// Namespace: System.Reflection.Emit +internal class ArrayType : DerivedType // TypeDefIndex: 493 +{ + // Fields + private int rank; // 0x10 + + // Properties + public override Type BaseType { get; } // 0x100E58F0 + + // Methods + internal void .ctor(Type elementType, int rank); // 0x100E5890 + protected override bool IsArrayImpl(); // 0x100E5880 + public override int GetArrayRank(); // 0x100E5760 + protected override TypeAttributes GetAttributeFlagsImpl(); // 0x100E5780 + internal override string FormatName(string elementName); // 0x100E5690 +} + +// Namespace: System.Reflection.Emit +internal class ByRefType : DerivedType // TypeDefIndex: 494 +{ + // Properties + public override Type BaseType { get; } // 0x100EDF10 + + // Methods + internal void .ctor(Type elementType); // 0x100EDEB0 + protected override bool IsByRefImpl(); // 0x100E5880 + internal override string FormatName(string elementName); // 0x100EDD10 + public override Type MakeArrayType(); // 0x100EDDC0 + public override Type MakeArrayType(int rank); // 0x100EDD70 + public override Type MakeByRefType(); // 0x100EDE10 + public override Type MakePointerType(); // 0x100EDE60 +} + +// Namespace: System.Reflection.Emit +internal class PointerType : DerivedType // TypeDefIndex: 495 +{ + // Properties + public override Type BaseType { get; } // 0x1013F290 + + // Methods + internal void .ctor(Type elementType); // 0x1013F280 + protected override bool IsPointerImpl(); // 0x100E5880 + internal override string FormatName(string elementName); // 0x1013F220 +} + +// Namespace: System.Reflection.Emit +public class DynamicILInfo // TypeDefIndex: 496 +{ + // Properties + public DynamicMethod DynamicMethod { get; } // 0x100F7140 + + // Methods + internal void .ctor(); // 0x100C5530 + public int GetTokenFor(byte[] signature); // 0x100F6F10 + public int GetTokenFor(DynamicMethod method); // 0x100F6E70 + public int GetTokenFor(RuntimeFieldHandle field); // 0x100F6D30 + public int GetTokenFor(RuntimeMethodHandle method); // 0x100F6DD0 + public int GetTokenFor(RuntimeTypeHandle type); // 0x100F6E20 + public int GetTokenFor(string literal); // 0x100F6EC0 + public int GetTokenFor(RuntimeMethodHandle method, RuntimeTypeHandle contextType); // 0x100F6D80 + public void SetCode(byte[] code, int maxStackSize); // 0x100F6FB0 + public void SetCode(void * code, int codeSize, int maxStackSize); // 0x100F6F60 + public void SetExceptions(byte[] exceptions); // 0x100F7000 + public void SetExceptions(void * exceptions, int exceptionsSize); // 0x100F7050 + public void SetLocalSignature(byte[] localSignature); // 0x100F70A0 + public void SetLocalSignature(void * localSignature, int signatureSize); // 0x100F70F0 +} + +// Namespace: System.Reflection.Emit +public sealed class DynamicMethod : MethodInfo // TypeDefIndex: 497 +{ + // Fields + private RuntimeMethodHandle mhandle; // 0x08 + private string name; // 0x0C + private Type returnType; // 0x10 + private Type[] parameters; // 0x14 + private MethodAttributes attributes; // 0x18 + private CallingConventions callingConvention; // 0x1C + private Module module; // 0x20 + private bool skipVisibility; // 0x24 + private bool init_locals; // 0x25 + private ILGenerator ilgen; // 0x28 + private int nrefs; // 0x2C + private object[] refs; // 0x30 + private IntPtr referenced_by; // 0x34 + private Type owner; // 0x38 + private Delegate deleg; // 0x3C + private MonoMethod method; // 0x40 + private ParameterBuilder[] pinfo; // 0x44 + internal bool creating; // 0x48 + + // Properties + public override MethodAttributes Attributes { get; } // 0x100EE580 + public override CallingConventions CallingConvention { get; } // 0x100F85F0 + public override Type DeclaringType { get; } // 0x100C5600 + public bool InitLocals { get; set; } // 0x100F8600 0x100F86B0 + public override RuntimeMethodHandle MethodHandle { get; } // 0x100BF0C0 + public override Module Module { get; } // 0x100EACD0 + public override string Name { get; } // 0x100C5B30 + public override Type ReflectedType { get; } // 0x100C5600 + public override ParameterInfo ReturnParameter { get; } // 0x100F8610 + public override Type ReturnType { get; } // 0x100BFC20 + public override ICustomAttributeProvider ReturnTypeCustomAttributes { get; } // 0x100F8660 + + // Methods + public void .ctor(string name, Type returnType, Type[] parameterTypes, Module m); // 0x100F8500 + public void .ctor(string name, Type returnType, Type[] parameterTypes, Type owner); // 0x100F8220 + public void .ctor(string name, Type returnType, Type[] parameterTypes, Module m, bool skipVisibility); // 0x100F8560 + public void .ctor(string name, Type returnType, Type[] parameterTypes, Type owner, bool skipVisibility); // 0x100F84B0 + public void .ctor(string name, MethodAttributes attributes, CallingConventions callingConvention, Type returnType, Type[] parameterTypes, Type owner, bool skipVisibility); // 0x100F8170 + public void .ctor(string name, MethodAttributes attributes, CallingConventions callingConvention, Type returnType, Type[] parameterTypes, Module m, bool skipVisibility); // 0x100F8530 + public void .ctor(string name, Type returnType, Type[] parameterTypes); // 0x100F81C0 + public void .ctor(string name, Type returnType, Type[] parameterTypes, bool restrictedSkipVisibility); // 0x100F81F0 + private void .ctor(string name, MethodAttributes attributes, CallingConventions callingConvention, Type returnType, Type[] parameterTypes, Type owner, Module m, bool skipVisibility, bool anonHosted); // 0x100F8270 + private void create_dynamic_method(DynamicMethod m); // 0x100F8590 + private void destroy_dynamic_method(DynamicMethod m); // 0x100F85C0 + private void CreateDynMethod(); // 0x100F73B0 + protected override void Finalize(); // 0x100F7770 + public Delegate CreateDelegate(Type delegateType); // 0x100F72B0 + public Delegate CreateDelegate(Type delegateType, object target); // 0x100F7330 + public ParameterBuilder DefineParameter(int position, ParameterAttributes attributes, string parameterName); // 0x100F75F0 + public override MethodInfo GetBaseDefinition(); // 0x100F7810 + public override object[] GetCustomAttributes(bool inherit); // 0x100F7820 + public override object[] GetCustomAttributes(Type attributeType, bool inherit); // 0x100F7870 + public DynamicILInfo GetDynamicILInfo(); // 0x100F78C0 + public ILGenerator GetILGenerator(); // 0x100F7990 + public ILGenerator GetILGenerator(int streamSize); // 0x100F7910 + public override MethodImplAttributes GetMethodImplementationFlags(); // 0x100C5600 + public override ParameterInfo[] GetParameters(); // 0x100F7A00 + public override object Invoke(object obj, BindingFlags invokeAttr, Binder binder, object[] parameters, CultureInfo culture); // 0x100F7B20 + public override bool IsDefined(Type attributeType, bool inherit); // 0x100F7C50 + public override string ToString(); // 0x100F7D10 + private void RejectIfCreated(); // 0x100F7CA0 + internal int AddRef(object reference); // 0x100F7190 +} + +// Namespace: +private class AnonHostModuleHolder // TypeDefIndex: 498 +{ + // Fields + public static Module anon_host_module; // 0x00 + + // Methods + public void .ctor(); // 0x100BF000 + private static void .cctor(); // 0x101289D0 +} + +// Namespace: System.Reflection.Emit +internal class DynamicMethodTokenGenerator : TokenGenerator // TypeDefIndex: 499 +{ + // Fields + private DynamicMethod m; // 0x08 + + // Methods + public void .ctor(DynamicMethod m); // 0x10113500 + public int GetToken(string str); // 0x10128A60 + public int GetToken(MethodInfo method, Type[] opt_param_types); // 0x10128A90 + public int GetToken(MemberInfo member); // 0x10128A60 + public int GetToken(SignatureHelper helper); // 0x10128A60 +} + +// Namespace: System.Reflection.Emit +public sealed class EnumBuilder : Type, _EnumBuilder // TypeDefIndex: 500 +{ + // Fields + private TypeBuilder _tb; // 0x0C + private FieldBuilder _underlyingField; // 0x10 + private Type _underlyingType; // 0x14 + + // Properties + public override Assembly Assembly { get; } // 0x101294D0 + public override string AssemblyQualifiedName { get; } // 0x101294A0 + public override Type BaseType { get; } // 0x100EFBB0 + public override Type DeclaringType { get; } // 0x100EF7F0 + public override string FullName { get; } // 0x10129500 + public override Guid GUID { get; } // 0x10129520 + public override Module Module { get; } // 0x10129560 + public override string Name { get; } // 0x10129580 + public override string Namespace { get; } // 0x101295A0 + public override Type ReflectedType { get; } // 0x100EF7F0 + public override RuntimeTypeHandle TypeHandle { get; } // 0x101295C0 + public TypeToken TypeToken { get; } // 0x101295F0 + public FieldBuilder UnderlyingField { get; } // 0x100BFC20 + public override Type UnderlyingSystemType { get; } // 0x100EF0C0 + + // Methods + internal void .ctor(ModuleBuilder mb, string name, TypeAttributes visibility, Type underlyingType); // 0x101293D0 + private void System.Runtime.InteropServices._EnumBuilder.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x10129290 + private void System.Runtime.InteropServices._EnumBuilder.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x10129330 + private void System.Runtime.InteropServices._EnumBuilder.GetTypeInfoCount(out uint pcTInfo); // 0x101292E0 + private void System.Runtime.InteropServices._EnumBuilder.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x10129380 + internal TypeBuilder GetTypeBuilder(); // 0x100C5B30 + public Type CreateType(); // 0x10128B30 + private void setup_enum_type(Type t); // 0x10129620 + public FieldBuilder DefineLiteral(string literalName, object literalValue); // 0x10128B60 + protected override TypeAttributes GetAttributeFlagsImpl(); // 0x10128BB0 + protected override ConstructorInfo GetConstructorImpl(BindingFlags bindingAttr, Binder binder, CallingConventions callConvention, Type[] types, ParameterModifier[] modifiers); // 0x10128BD0 + public override ConstructorInfo[] GetConstructors(BindingFlags bindingAttr); // 0x10128C00 + public override object[] GetCustomAttributes(bool inherit); // 0x10128C60 + public override object[] GetCustomAttributes(Type attributeType, bool inherit); // 0x10128C30 + public override Type GetElementType(); // 0x10128C90 + public override EventInfo GetEvent(string name, BindingFlags bindingAttr); // 0x10128CC0 + public override EventInfo[] GetEvents(); // 0x10128D20 + public override EventInfo[] GetEvents(BindingFlags bindingAttr); // 0x10128CF0 + public override FieldInfo GetField(string name, BindingFlags bindingAttr); // 0x10128D50 + public override FieldInfo[] GetFields(BindingFlags bindingAttr); // 0x10128D80 + public override Type GetInterface(string name, bool ignoreCase); // 0x10128DF0 + public override InterfaceMapping GetInterfaceMap(Type interfaceType); // 0x10128DB0 + public override Type[] GetInterfaces(); // 0x10128E20 + public override MemberInfo[] GetMember(string name, MemberTypes type, BindingFlags bindingAttr); // 0x10128E50 + public override MemberInfo[] GetMembers(BindingFlags bindingAttr); // 0x10128E80 + protected override MethodInfo GetMethodImpl(string name, BindingFlags bindingAttr, Binder binder, CallingConventions callConvention, Type[] types, ParameterModifier[] modifiers); // 0x10128EB0 + public override MethodInfo[] GetMethods(BindingFlags bindingAttr); // 0x10128F00 + public override Type GetNestedType(string name, BindingFlags bindingAttr); // 0x10128F30 + public override Type[] GetNestedTypes(BindingFlags bindingAttr); // 0x10128F60 + public override PropertyInfo[] GetProperties(BindingFlags bindingAttr); // 0x10128F90 + protected override PropertyInfo GetPropertyImpl(string name, BindingFlags bindingAttr, Binder binder, Type returnType, Type[] types, ParameterModifier[] modifiers); // 0x10128FC0 + protected override bool HasElementTypeImpl(); // 0x10129000 + public override object InvokeMember(string name, BindingFlags invokeAttr, Binder binder, object target, object[] args, ParameterModifier[] modifiers, CultureInfo culture, string[] namedParameters); // 0x10129030 + protected override bool IsArrayImpl(); // 0x100EFBF0 + protected override bool IsByRefImpl(); // 0x100EFBF0 + protected override bool IsCOMObjectImpl(); // 0x100EFBF0 + protected override bool IsPointerImpl(); // 0x100EFBF0 + protected override bool IsPrimitiveImpl(); // 0x100EFBF0 + protected override bool IsValueTypeImpl(); // 0x100E5880 + public override bool IsDefined(Type attributeType, bool inherit); // 0x10129060 + public override Type MakeArrayType(); // 0x10129090 + public override Type MakeArrayType(int rank); // 0x101290E0 + public override Type MakeByRefType(); // 0x10129160 + public override Type MakePointerType(); // 0x101291B0 + public void SetCustomAttribute(CustomAttributeBuilder customBuilder); // 0x10129260 + public void SetCustomAttribute(ConstructorInfo con, byte[] binaryAttribute); // 0x10129200 + private Exception CreateNotSupportedException(); // 0x10128AE0 +} + +// Namespace: System.Reflection.Emit +public sealed class EventBuilder : _EventBuilder // TypeDefIndex: 501 +{ + // Fields + internal string name; // 0x08 + private Type type; // 0x0C + private TypeBuilder typeb; // 0x10 + private CustomAttributeBuilder[] cattrs; // 0x14 + internal MethodBuilder add_method; // 0x18 + internal MethodBuilder remove_method; // 0x1C + internal MethodBuilder raise_method; // 0x20 + internal MethodBuilder[] other_methods; // 0x24 + internal EventAttributes attrs; // 0x28 + private int table_idx; // 0x2C + + // Methods + internal void .ctor(TypeBuilder tb, string eventName, EventAttributes eventAttrs, Type eventType); // 0x10129CB0 + private void System.Runtime.InteropServices._EventBuilder.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x10129B70 + private void System.Runtime.InteropServices._EventBuilder.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x10129C10 + private void System.Runtime.InteropServices._EventBuilder.GetTypeInfoCount(out uint pcTInfo); // 0x10129BC0 + private void System.Runtime.InteropServices._EventBuilder.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x10129C60 + internal int get_next_table_index(object obj, int table, bool inc); // 0x10129D00 + public void AddOtherMethod(MethodBuilder mdBuilder); // 0x10129640 + public EventToken GetEventToken(); // 0x10129750 + public void SetAddOnMethod(MethodBuilder mdBuilder); // 0x101297D0 + public void SetRaiseMethod(MethodBuilder mdBuilder); // 0x10129A90 + public void SetRemoveOnMethod(MethodBuilder mdBuilder); // 0x10129B00 + public void SetCustomAttribute(CustomAttributeBuilder customBuilder); // 0x10129840 + public void SetCustomAttribute(ConstructorInfo con, byte[] binaryAttribute); // 0x101299F0 + private void RejectIfCreated(); // 0x10129760 +} + +// Namespace: System.Reflection.Emit +internal class EventOnTypeBuilderInst : EventInfo // TypeDefIndex: 502 +{ + // Fields + private MonoGenericClass instantiation; // 0x0C + private EventBuilder evt; // 0x10 + + // Properties + public override EventAttributes Attributes { get; } // 0x1012A0D0 + public override Type DeclaringType { get; } // 0x100C5B30 + public override string Name { get; } // 0x1012A0F0 + public override Type ReflectedType { get; } // 0x100C5B30 + + // Methods + internal void .ctor(MonoGenericClass instantiation, EventBuilder evt); // 0x1012A0A0 + public override MethodInfo GetAddMethod(bool nonPublic); // 0x10129D30 + public override MethodInfo GetRaiseMethod(bool nonPublic); // 0x10129F90 + public override MethodInfo GetRemoveMethod(bool nonPublic); // 0x10129FF0 + public override MethodInfo[] GetOtherMethods(bool nonPublic); // 0x10129E30 + public override bool IsDefined(Type attributeType, bool inherit); // 0x1012A050 + public override object[] GetCustomAttributes(bool inherit); // 0x10129D90 + public override object[] GetCustomAttributes(Type attributeType, bool inherit); // 0x10129DE0 +} + +// Namespace: System.Reflection.Emit +[Serializable] +public struct EventToken // TypeDefIndex: 503 +{ + // Fields + internal int tokValue; // 0x08 + public static readonly EventToken Empty; // 0x00 + + // Properties + public int Token { get; } // 0x10003A80 + + // Methods + internal void .ctor(int val); // 0x10005950 + private static void .cctor(); // 0x1012A110 + public override bool Equals(object obj); // 0x100077D0 + public bool Equals(EventToken obj); // 0x10005A50 + public override int GetHashCode(); // 0x10003A80 + public static bool op_Equality(EventToken a, EventToken b); // 0x1012A140 + public static bool op_Inequality(EventToken a, EventToken b); // 0x1012A1A0 +} + +// Namespace: System.Reflection.Emit +public sealed class FieldBuilder : FieldInfo, _FieldBuilder // TypeDefIndex: 504 +{ + // Fields + private FieldAttributes attrs; // 0x08 + private Type type; // 0x0C + private string name; // 0x10 + private object def_value; // 0x14 + private int offset; // 0x18 + private int table_idx; // 0x1C + internal TypeBuilder typeb; // 0x20 + private byte[] rva_data; // 0x24 + private CustomAttributeBuilder[] cattrs; // 0x28 + private UnmanagedMarshal marshal_info; // 0x2C + private RuntimeFieldHandle handle; // 0x30 + private Type[] modReq; // 0x34 + private Type[] modOpt; // 0x38 + + // Properties + public override FieldAttributes Attributes { get; } // 0x100BF0C0 + public override Type DeclaringType { get; } // 0x100EACD0 + public override RuntimeFieldHandle FieldHandle { get; } // 0x1012AAD0 + public override Type FieldType { get; } // 0x100C5B30 + public override string Name { get; } // 0x100BFC20 + public override Type ReflectedType { get; } // 0x100EACD0 + internal override UnmanagedMarshal UMarshal { get; } // 0x100EB200 + public override Module Module { get; } // 0x100EF1C0 + + // Methods + internal void .ctor(TypeBuilder tb, string fieldName, Type type, FieldAttributes attributes, Type[] modReq, Type[] modOpt); // 0x1012AA20 + private void System.Runtime.InteropServices._FieldBuilder.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x1012A8E0 + private void System.Runtime.InteropServices._FieldBuilder.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x1012A980 + private void System.Runtime.InteropServices._FieldBuilder.GetTypeInfoCount(out uint pcTInfo); // 0x1012A930 + private void System.Runtime.InteropServices._FieldBuilder.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x1012A9D0 + public override object[] GetCustomAttributes(bool inherit); // 0x1012A260 + public override object[] GetCustomAttributes(Type attributeType, bool inherit); // 0x1012A2F0 + public FieldToken GetToken(); // 0x1012A380 + public override object GetValue(object obj); // 0x1012A3A0 + public override bool IsDefined(Type attributeType, bool inherit); // 0x1012A3E0 + internal override int GetFieldOffset(); // 0x100C5600 + internal void SetRVAData(byte[] data); // 0x1012A820 + public void SetConstant(object defaultValue); // 0x1012A490 + public void SetCustomAttribute(CustomAttributeBuilder customBuilder); // 0x1012A4B0 + public void SetCustomAttribute(ConstructorInfo con, byte[] binaryAttribute); // 0x1012A770 + public void SetMarshal(UnmanagedMarshal unmanagedMarshal); // 0x1012A7D0 + public void SetOffset(int iOffset); // 0x1012A800 + public override void SetValue(object obj, object val, BindingFlags invokeAttr, Binder binder, CultureInfo culture); // 0x1012A8A0 + private Exception CreateNotSupportedException(); // 0x1012A210 + private void RejectIfCreated(); // 0x1012A420 +} + +// Namespace: System.Reflection.Emit +internal class FieldOnTypeBuilderInst : FieldInfo // TypeDefIndex: 505 +{ + // Fields + internal MonoGenericClass instantiation; // 0x08 + internal FieldBuilder fb; // 0x0C + + // Properties + public override Type DeclaringType { get; } // 0x100BF0C0 + public override string Name { get; } // 0x101295A0 + public override Type ReflectedType { get; } // 0x100BF0C0 + public override FieldAttributes Attributes { get; } // 0x1012AE00 + public override RuntimeFieldHandle FieldHandle { get; } // 0x1012AE20 + public override int MetadataToken { get; } // 0x1012AF80 + public override Type FieldType { get; } // 0x1012AE70 + + // Methods + public void .ctor(MonoGenericClass instantiation, FieldBuilder fb); // 0x101237E0 + public override bool IsDefined(Type attributeType, bool inherit); // 0x1012AC00 + public override object[] GetCustomAttributes(bool inherit); // 0x1012AB10 + public override object[] GetCustomAttributes(Type attributeType, bool inherit); // 0x1012AB60 + public override string ToString(); // 0x1012ACA0 + public override object GetValue(object obj); // 0x1012ABB0 + public override void SetValue(object obj, object value, BindingFlags invokeAttr, Binder binder, CultureInfo culture); // 0x1012AC50 +} + +// Namespace: System.Reflection.Emit +[Serializable] +public struct FieldToken // TypeDefIndex: 506 +{ + // Fields + internal int tokValue; // 0x08 + public static readonly FieldToken Empty; // 0x00 + + // Properties + public int Token { get; } // 0x10003A80 + + // Methods + internal void .ctor(int val); // 0x10005950 + private static void .cctor(); // 0x1012B090 + public override bool Equals(object obj); // 0x10007850 + public bool Equals(FieldToken obj); // 0x10005A50 + public override int GetHashCode(); // 0x10003A80 + public static bool op_Equality(FieldToken a, FieldToken b); // 0x1012B0C0 + public static bool op_Inequality(FieldToken a, FieldToken b); // 0x1012B120 +} + +// Namespace: System.Reflection.Emit +[Serializable] +public enum FlowControl // TypeDefIndex: 507 +{ + Branch = 0, + Break = 1, + Call = 2, + Cond_Branch = 3, + Meta = 4, + Next = 5, + Phi = 6, + Return = 7, + Throw = 8 +} + +// Namespace: System.Reflection.Emit +public sealed class GenericTypeParameterBuilder : Type // TypeDefIndex: 508 +{ + // Fields + private TypeBuilder tbuilder; // 0x0C + private MethodBuilder mbuilder; // 0x10 + private string name; // 0x14 + private int index; // 0x18 + private Type base_type; // 0x1C + private Type[] iface_constraints; // 0x20 + private CustomAttributeBuilder[] cattrs; // 0x24 + private GenericParameterAttributes attrs; // 0x28 + + // Properties + public override Type UnderlyingSystemType { get; } // 0x100F7810 + public override Assembly Assembly { get; } // 0x101294D0 + public override string AssemblyQualifiedName { get; } // 0x100C5600 + public override Type BaseType { get; } // 0x100F85F0 + public override string FullName { get; } // 0x100C5600 + public override Guid GUID { get; } // 0x1012C210 + public override string Name { get; } // 0x100EF0C0 + public override string Namespace { get; } // 0x100C5600 + public override Module Module { get; } // 0x10129560 + public override Type DeclaringType { get; } // 0x1012C1F0 + public override Type ReflectedType { get; } // 0x1012C1F0 + public override RuntimeTypeHandle TypeHandle { get; } // 0x1012C330 + public override bool ContainsGenericParameters { get; } // 0x100E5880 + public override bool IsGenericParameter { get; } // 0x100E5880 + public override bool IsGenericType { get; } // 0x100EFBF0 + public override bool IsGenericTypeDefinition { get; } // 0x100EFBF0 + public override GenericParameterAttributes GenericParameterAttributes { get; } // 0x1012C250 + public override int GenericParameterPosition { get; } // 0x100EE580 + public override MethodBase DeclaringMethod { get; } // 0x100BFC20 + + // Methods + internal void .ctor(TypeBuilder tbuilder, MethodBuilder mbuilder, string name, int index); // 0x1012C180 + public void SetBaseTypeConstraint(Type baseTypeConstraint); // 0x1012BE10 + public void SetInterfaceConstraints(Type[] interfaceConstraints); // 0x100EB230 + public void SetGenericParameterAttributes(GenericParameterAttributes genericParameterAttributes); // 0x100EB250 + private void initialize(); // 0x1012C370 + public override bool IsSubclassOf(Type c); // 0x1012BB40 + protected override TypeAttributes GetAttributeFlagsImpl(); // 0x1012B1A0 + protected override ConstructorInfo GetConstructorImpl(BindingFlags bindingAttr, Binder binder, CallingConventions callConvention, Type[] types, ParameterModifier[] modifiers); // 0x1012B270 + public override ConstructorInfo[] GetConstructors(BindingFlags bindingAttr); // 0x1012B2B0 + public override EventInfo GetEvent(string name, BindingFlags bindingAttr); // 0x1012B3B0 + public override EventInfo[] GetEvents(); // 0x1012B3F0 + public override EventInfo[] GetEvents(BindingFlags bindingAttr); // 0x1012B430 + public override FieldInfo GetField(string name, BindingFlags bindingAttr); // 0x1012B470 + public override FieldInfo[] GetFields(BindingFlags bindingAttr); // 0x1012B4B0 + public override Type GetInterface(string name, bool ignoreCase); // 0x1012B7C0 + public override Type[] GetInterfaces(); // 0x1012B800 + public override MemberInfo[] GetMembers(BindingFlags bindingAttr); // 0x1012B880 + public override MemberInfo[] GetMember(string name, MemberTypes type, BindingFlags bindingAttr); // 0x1012B840 + public override MethodInfo[] GetMethods(BindingFlags bindingAttr); // 0x1012B900 + protected override MethodInfo GetMethodImpl(string name, BindingFlags bindingAttr, Binder binder, CallingConventions callConvention, Type[] types, ParameterModifier[] modifiers); // 0x1012B8C0 + public override Type GetNestedType(string name, BindingFlags bindingAttr); // 0x1012B940 + public override Type[] GetNestedTypes(BindingFlags bindingAttr); // 0x1012B980 + public override PropertyInfo[] GetProperties(BindingFlags bindingAttr); // 0x1012B9C0 + protected override PropertyInfo GetPropertyImpl(string name, BindingFlags bindingAttr, Binder binder, Type returnType, Type[] types, ParameterModifier[] modifiers); // 0x1012BA00 + protected override bool HasElementTypeImpl(); // 0x100EFBF0 + public override bool IsAssignableFrom(Type c); // 0x1012BA80 + public override bool IsInstanceOfType(object o); // 0x1012BB00 + protected override bool IsArrayImpl(); // 0x100EFBF0 + protected override bool IsByRefImpl(); // 0x100EFBF0 + protected override bool IsCOMObjectImpl(); // 0x100EFBF0 + protected override bool IsPointerImpl(); // 0x100EFBF0 + protected override bool IsPrimitiveImpl(); // 0x100EFBF0 + protected override bool IsValueTypeImpl(); // 0x1012BC60 + public override object InvokeMember(string name, BindingFlags invokeAttr, Binder binder, object target, object[] args, ParameterModifier[] modifiers, CultureInfo culture, string[] namedParameters); // 0x1012BA40 + public override Type GetElementType(); // 0x1012B370 + public override bool IsDefined(Type attributeType, bool inherit); // 0x1012BAC0 + public override object[] GetCustomAttributes(bool inherit); // 0x1012B330 + public override object[] GetCustomAttributes(Type attributeType, bool inherit); // 0x1012B2F0 + public override InterfaceMapping GetInterfaceMap(Type interfaceType); // 0x1012B780 + public override Type[] GetGenericArguments(); // 0x1012B4F0 + public override Type GetGenericTypeDefinition(); // 0x1012B720 + public override Type[] GetGenericParameterConstraints(); // 0x1012B540 + public void SetCustomAttribute(CustomAttributeBuilder customBuilder); // 0x1012BE80 + public void SetCustomAttribute(ConstructorInfo con, byte[] binaryAttribute); // 0x1012BFE0 + private Exception not_supported(); // 0x1012C380 + public override string ToString(); // 0x100EF0C0 + public override bool Equals(object o); // 0x1012B190 + public override int GetHashCode(); // 0x1012B770 + public override Type MakeArrayType(); // 0x1012BC90 + public override Type MakeArrayType(int rank); // 0x1012BCE0 + public override Type MakeByRefType(); // 0x1012BD60 + public override Type MakeGenericType(Type[] typeArguments); // 0x1012BDB0 + public override Type MakePointerType(); // 0x1012BDC0 +} + +// Namespace: System.Reflection.Emit +internal struct ILExceptionBlock // TypeDefIndex: 509 +{ + // Fields + public const int CATCH = 0; // 0x00 + public const int FILTER = 1; // 0x00 + public const int FINALLY = 2; // 0x00 + public const int FAULT = 4; // 0x00 + public const int FILTER_START = -1; // 0x00 + internal Type extype; // 0x08 + internal int type; // 0x0C + internal int start; // 0x10 + internal int len; // 0x14 + internal int filter_offset; // 0x18 + + // Methods + internal void Debug(); // 0x10003900 +} + +// Namespace: System.Reflection.Emit +internal struct ILExceptionInfo // TypeDefIndex: 510 +{ + // Fields + private ILExceptionBlock[] handlers; // 0x08 + internal int start; // 0x0C + private int len; // 0x10 + internal Label end; // 0x14 + + // Methods + internal int NumHandlers(); // 0x100079B0 + internal void AddCatch(Type extype, int offset); // 0x100078F0 + internal void AddFinally(int offset); // 0x10007920 + internal void AddFault(int offset); // 0x10007900 + internal void AddFilter(int offset); // 0x10007910 + internal void End(int offset); // 0x10007930 + internal int LastClauseType(); // 0x10007970 + internal void PatchFilterClause(int start); // 0x100079D0 + internal void Debug(int b); // 0x10003900 + private void add_block(int offset); // 0x100079E0 +} + +// Namespace: System.Reflection.Emit +internal struct ILTokenInfo // TypeDefIndex: 511 +{ + // Fields + public MemberInfo member; // 0x08 + public int code_pos; // 0x0C + +} + +// Namespace: System.Reflection.Emit +internal interface TokenGenerator // TypeDefIndex: 512 +{ + // Methods + int GetToken(string str); + int GetToken(MemberInfo member); + int GetToken(MethodInfo method, Type[] opt_param_types); + int GetToken(SignatureHelper helper); +} + +// Namespace: System.Reflection.Emit +public class ILGenerator : _ILGenerator // TypeDefIndex: 513 +{ + // Fields + private const int defaultFixupSize = 4; // 0x00 + private const int defaultLabelsSize = 4; // 0x00 + private const int defaultExceptionStackSize = 2; // 0x00 + private static readonly Type void_type; // 0x00 + private byte[] code; // 0x08 + private int code_len; // 0x0C + private int max_stack; // 0x10 + private int cur_stack; // 0x14 + private LocalBuilder[] locals; // 0x18 + private ILExceptionInfo[] ex_handlers; // 0x1C + private int num_token_fixups; // 0x20 + private ILTokenInfo[] token_fixups; // 0x24 + private LabelData[] labels; // 0x28 + private int num_labels; // 0x2C + private LabelFixup[] fixups; // 0x30 + private int num_fixups; // 0x34 + internal Module module; // 0x38 + private int cur_block; // 0x3C + private Stack open_blocks; // 0x40 + private TokenGenerator token_gen; // 0x44 + private ArrayList sequencePointLists; // 0x48 + private SequencePointList currentSequence; // 0x4C + + // Properties + internal bool HasDebugInfo { get; } // 0x10130350 + + // Methods + internal void .ctor(Module m, TokenGenerator token_gen, int size); // 0x10130150 + private static void .cctor(); // 0x101300F0 + private void System.Runtime.InteropServices._ILGenerator.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x1012FD90 + private void System.Runtime.InteropServices._ILGenerator.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x1012FE30 + private void System.Runtime.InteropServices._ILGenerator.GetTypeInfoCount(out uint pcTInfo); // 0x1012FDE0 + private void System.Runtime.InteropServices._ILGenerator.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x1012FE80 + private void add_token_fixup(MemberInfo mi); // 0x101301C0 + private void make_room(int nbytes); // 0x10130600 + private void emit_int(int val); // 0x10130280 + private void ll_emit(OpCode opcode); // 0x101304E0 + private static int target_len(OpCode opcode); // 0x10130680 + private void InternalEndClause(); // 0x1012FA60 + public virtual void BeginCatchBlock(Type exceptionType); // 0x1012C7E0 + public virtual void BeginExceptFilterBlock(); // 0x1012CA20 + public virtual Label BeginExceptionBlock(); // 0x1012CB00 + public virtual void BeginFaultBlock(); // 0x1012CC40 + public virtual void BeginFinallyBlock(); // 0x1012CE30 + public virtual void BeginScope(); // 0x100C5530 + public virtual LocalBuilder DeclareLocal(Type localType); // 0x1012D1C0 + public virtual LocalBuilder DeclareLocal(Type localType, bool pinned); // 0x1012D020 + public virtual Label DefineLabel(); // 0x1012D1F0 + public virtual void Emit(OpCode opcode); // 0x1012E3E0 + public virtual void Emit(OpCode opcode, byte arg); // 0x1012DCE0 + public virtual void Emit(OpCode opcode, ConstructorInfo con); // 0x1012E5F0 + public virtual void Emit(OpCode opcode, double arg); // 0x1012E6E0 + public virtual void Emit(OpCode opcode, FieldInfo field); // 0x1012EDD0 + public virtual void Emit(OpCode opcode, short arg); // 0x1012E350 + public virtual void Emit(OpCode opcode, int arg); // 0x1012EB10 + public virtual void Emit(OpCode opcode, long arg); // 0x1012E410 + public virtual void Emit(OpCode opcode, Label label); // 0x1012DD40 + public virtual void Emit(OpCode opcode, Label[] labels); // 0x1012F080 + public virtual void Emit(OpCode opcode, LocalBuilder local); // 0x1012DED0 + public virtual void Emit(OpCode opcode, MethodInfo meth); // 0x1012EB40 + private void Emit(OpCode opcode, MethodInfo method, int token); // 0x1012EA00 + public void Emit(OpCode opcode, sbyte arg); // 0x1012DCE0 + public virtual void Emit(OpCode opcode, SignatureHelper signature); // 0x1012E290 + public virtual void Emit(OpCode opcode, float arg); // 0x1012EE90 + public virtual void Emit(OpCode opcode, string str); // 0x1012E1D0 + public virtual void Emit(OpCode opcode, Type cls); // 0x1012DC70 + public virtual void EmitCall(OpCode opcode, MethodInfo methodInfo, Type[] optionalParameterTypes); // 0x1012D2B0 + public virtual void EmitCalli(OpCode opcode, CallingConvention unmanagedCallConv, Type returnType, Type[] parameterTypes); // 0x1012D630 + public virtual void EmitCalli(OpCode opcode, CallingConventions callingConvention, Type returnType, Type[] parameterTypes, Type[] optionalParameterTypes); // 0x1012D670 + public virtual void EmitWriteLine(FieldInfo fld); // 0x1012D8E0 + public virtual void EmitWriteLine(LocalBuilder localBuilder); // 0x1012D700 + public virtual void EmitWriteLine(string value); // 0x1012DB10 + public virtual void EndExceptionBlock(); // 0x1012F2A0 + public virtual void EndScope(); // 0x100C5530 + public virtual void MarkLabel(Label loc); // 0x1012FBD0 + public virtual void MarkSequencePoint(ISymbolDocumentWriter document, int startLine, int startColumn, int endLine, int endColumn); // 0x1012FCB0 + internal void GenerateDebugInfo(ISymbolWriter symbolWriter); // 0x1012F510 + public virtual void ThrowException(Type excType); // 0x1012FED0 + public virtual void UsingNamespace(string usingNamespace); // 0x101300A0 + internal void label_fixup(); // 0x10130360 + internal static int Mono_GetCurrentOffset(ILGenerator ig); // 0x1012FD70 +} + +// Namespace: +private struct LabelFixup // TypeDefIndex: 514 +{ + // Fields + public int offset; // 0x08 + public int pos; // 0x0C + public int label_idx; // 0x10 + +} + +// Namespace: +private struct LabelData // TypeDefIndex: 515 +{ + // Fields + public int addr; // 0x08 + public int maxStack; // 0x0C + + // Methods + public void .ctor(int addr, int maxStack); // 0x100075A0 +} + +// Namespace: System.Reflection.Emit +internal class SequencePointList // TypeDefIndex: 516 +{ + // Fields + private const int arrayGrow = 10; // 0x00 + private ISymbolDocumentWriter doc; // 0x08 + private SequencePoint[] points; // 0x0C + private int count; // 0x10 + + // Properties + public ISymbolDocumentWriter Document { get; } // 0x100BF0C0 + public int StartLine { get; } // 0x1017ADD0 + public int EndLine { get; } // 0x1017AD60 + public int StartColumn { get; } // 0x1017ADA0 + public int EndColumn { get; } // 0x1017AD20 + + // Methods + public void .ctor(ISymbolDocumentWriter doc); // 0x10113500 + public int[] GetOffsets(); // 0x1017AC90 + public int[] GetLines(); // 0x1017AC00 + public int[] GetColumns(); // 0x1017AA50 + public int[] GetEndLines(); // 0x1017AB70 + public int[] GetEndColumns(); // 0x1017AAE0 + public void AddSequencePoint(int offset, int line, int col, int endLine, int endCol); // 0x1017A970 +} + +// Namespace: System.Reflection.Emit +internal struct SequencePoint // TypeDefIndex: 517 +{ + // Fields + public int Offset; // 0x08 + public int Line; // 0x0C + public int Col; // 0x10 + public int EndLine; // 0x14 + public int EndCol; // 0x18 + +} + +// Namespace: System.Reflection.Emit +[Serializable] +public struct Label // TypeDefIndex: 518 +{ + // Fields + internal int label; // 0x08 + + // Methods + internal void .ctor(int val); // 0x10005950 + public override bool Equals(object obj); // 0x10007A30 + public bool Equals(Label obj); // 0x10005A50 + public override int GetHashCode(); // 0x10006260 + public static bool op_Equality(Label a, Label b); // 0x100F8860 + public static bool op_Inequality(Label a, Label b); // 0x100FCEC0 +} + +// Namespace: System.Reflection.Emit +public sealed class LocalBuilder : LocalVariableInfo, _LocalBuilder // TypeDefIndex: 519 +{ + // Fields + private string name; // 0x10 + internal ILGenerator ilgen; // 0x14 + private int startOffset; // 0x18 + private int endOffset; // 0x1C + + // Properties + public override Type LocalType { get; } // 0x100BF0C0 + public override bool IsPinned { get; } // 0x100F8910 + public override int LocalIndex { get; } // 0x101308F0 + internal string Name { get; } // 0x100BFC20 + internal int StartOffset { get; } // 0x100EE580 + internal int EndOffset { get; } // 0x100F85F0 + + // Methods + internal void .ctor(Type t, ILGenerator ilgen); // 0x101308C0 + private void System.Runtime.InteropServices._LocalBuilder.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x10130780 + private void System.Runtime.InteropServices._LocalBuilder.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x10130820 + private void System.Runtime.InteropServices._LocalBuilder.GetTypeInfoCount(out uint pcTInfo); // 0x101307D0 + private void System.Runtime.InteropServices._LocalBuilder.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x10130870 + public void SetLocalSymInfo(string name, int startOffset, int endOffset); // 0x10130760 + public void SetLocalSymInfo(string name); // 0x10130740 + internal static int Mono_GetLocalIndex(LocalBuilder builder); // 0x10130720 +} + +// Namespace: System.Reflection.Emit +public sealed class MethodBuilder : MethodInfo, _MethodBuilder // TypeDefIndex: 520 +{ + // Fields + private RuntimeMethodHandle mhandle; // 0x08 + private Type rtype; // 0x0C + internal Type[] parameters; // 0x10 + private MethodAttributes attrs; // 0x14 + private MethodImplAttributes iattrs; // 0x18 + private string name; // 0x1C + private int table_idx; // 0x20 + private byte[] code; // 0x24 + private ILGenerator ilgen; // 0x28 + private TypeBuilder type; // 0x2C + internal ParameterBuilder[] pinfo; // 0x30 + private CustomAttributeBuilder[] cattrs; // 0x34 + private MethodInfo override_method; // 0x38 + private string pi_dll; // 0x3C + private string pi_entry; // 0x40 + private CharSet charset; // 0x44 + private uint extra_flags; // 0x48 + private CallingConvention native_cc; // 0x4C + private CallingConventions call_conv; // 0x50 + private bool init_locals; // 0x54 + private IntPtr generic_container; // 0x58 + internal GenericTypeParameterBuilder[] generic_params; // 0x5C + private Type[] returnModReq; // 0x60 + private Type[] returnModOpt; // 0x64 + private Type[][] paramModReq; // 0x68 + private Type[][] paramModOpt; // 0x6C + private RefEmitPermissionSet[] permissions; // 0x70 + private static Dictionary`2 <>f__switch$map1D; // 0x00 + + // Properties + public override bool ContainsGenericParameters { get; } // 0x10132820 + public bool InitLocals { get; set; } // 0x10132870 0x10132990 + internal TypeBuilder TypeBuilder { get; } // 0x100EB200 + public override RuntimeMethodHandle MethodHandle { get; } // 0x10132890 + public override Type ReturnType { get; } // 0x100C5B30 + public override Type ReflectedType { get; } // 0x100EB200 + public override Type DeclaringType { get; } // 0x100EB200 + public override string Name { get; } // 0x100F85F0 + public override MethodAttributes Attributes { get; } // 0x100EF0C0 + public override ICustomAttributeProvider ReturnTypeCustomAttributes { get; } // 0x100C5600 + public override CallingConventions CallingConvention { get; } // 0x10132810 + public string Signature { get; } // 0x101328D0 + internal bool BestFitMapping { set; } // 0x10132950 + internal bool ThrowOnUnmappableChar { set; } // 0x101329C0 + internal bool ExactSpelling { set; } // 0x10132970 + internal bool SetLastError { set; } // 0x101329A0 + public override bool IsGenericMethodDefinition { get; } // 0x10132880 + public override bool IsGenericMethod { get; } // 0x10132880 + public override Module Module { get; } // 0x100EF1C0 + + // Methods + internal void .ctor(TypeBuilder tb, string name, MethodAttributes attributes, CallingConventions callingConvention, Type returnType, Type[] returnModReq, Type[] returnModOpt, Type[] parameterTypes, Type[][] paramModReq, Type[][] paramModOpt); // 0x10132490 + internal void .ctor(TypeBuilder tb, string name, MethodAttributes attributes, CallingConventions callingConvention, Type returnType, Type[] returnModReq, Type[] returnModOpt, Type[] parameterTypes, Type[][] paramModReq, Type[][] paramModOpt, string dllName, string entryName, CallingConvention nativeCConv, CharSet nativeCharset); // 0x10132440 + private void System.Runtime.InteropServices._MethodBuilder.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x101320F0 + private void System.Runtime.InteropServices._MethodBuilder.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x10132190 + private void System.Runtime.InteropServices._MethodBuilder.GetTypeInfoCount(out uint pcTInfo); // 0x10132140 + private void System.Runtime.InteropServices._MethodBuilder.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x101321E0 + public MethodToken GetToken(); // 0x10131590 + public override MethodInfo GetBaseDefinition(); // 0x100F7810 + public override MethodImplAttributes GetMethodImplementationFlags(); // 0x100EE580 + public override ParameterInfo[] GetParameters(); // 0x10131440 + internal override int GetParameterCount(); // 0x100EE5B0 + public Module GetModule(); // 0x10131420 + public void CreateMethodBody(byte[] il, int count); // 0x10130900 + public override object Invoke(object obj, BindingFlags invokeAttr, Binder binder, object[] parameters, CultureInfo culture); // 0x101315A0 + public override bool IsDefined(Type attributeType, bool inherit); // 0x101315E0 + public override object[] GetCustomAttributes(bool inherit); // 0x10130F10 + public override object[] GetCustomAttributes(Type attributeType, bool inherit); // 0x10130E80 + public ILGenerator GetILGenerator(); // 0x101312C0 + public ILGenerator GetILGenerator(int size); // 0x10131150 + public ParameterBuilder DefineParameter(int position, ParameterAttributes attributes, string strParamName); // 0x10130B50 + internal void check_override(); // 0x10132640 + internal void fixup(); // 0x10132700 + internal void GenerateDebugInfo(ISymbolWriter symbolWriter); // 0x10130CC0 + public void SetCustomAttribute(CustomAttributeBuilder customBuilder); // 0x101317A0 + public void SetCustomAttribute(ConstructorInfo con, byte[] binaryAttribute); // 0x10131700 + public void SetImplementationFlags(MethodImplAttributes attributes); // 0x10131E80 + public void AddDeclarativeSecurity(SecurityAction action, PermissionSet pset); // 0x100C5530 + public void SetMarshal(UnmanagedMarshal unmanagedMarshal); // 0x10131EA0 + public void SetSymCustomAttribute(string name, byte[] data); // 0x10132090 + public override string ToString(); // 0x10132230 + public override bool Equals(object obj); // 0x10123830 + public override int GetHashCode(); // 0x10131120 + internal override int get_next_table_index(object obj, int table, bool inc); // 0x10132920 + internal void set_override(MethodInfo mdecl); // 0x100EB290 + private void RejectIfCreated(); // 0x10131690 + private Exception NotSupported(); // 0x10131640 + public override MethodInfo MakeGenericMethod(Type[] typeArguments); // 0x10131620 + public override MethodInfo GetGenericMethodDefinition(); // 0x101310C0 + public override Type[] GetGenericArguments(); // 0x10130FA0 + public GenericTypeParameterBuilder[] DefineGenericParameters(string[] names); // 0x10130A00 + public void SetReturnType(Type returnType); // 0x100C5B50 + public void SetParameters(Type[] parameterTypes); // 0x10131F00 + public void SetSignature(Type returnType, Type[] returnTypeRequiredCustomModifiers, Type[] returnTypeOptionalCustomModifiers, Type[] parameterTypes, Type[][] parameterTypeRequiredCustomModifiers, Type[][] parameterTypeOptionalCustomModifiers); // 0x10131FB0 +} + +// Namespace: System.Reflection.Emit +internal class MethodOnTypeBuilderInst : MethodInfo // TypeDefIndex: 521 +{ + // Fields + private MonoGenericClass instantiation; // 0x08 + internal MethodBuilder mb; // 0x0C + private Type[] method_arguments; // 0x10 + private MethodOnTypeBuilderInst generic_method_definition; // 0x14 + + // Properties + public override Type DeclaringType { get; } // 0x100BF0C0 + public override string Name { get; } // 0x101334A0 + public override Type ReflectedType { get; } // 0x100BF0C0 + public override Type ReturnType { get; } // 0x10133510 + public override int MetadataToken { get; } // 0x10133360 + public override RuntimeMethodHandle MethodHandle { get; } // 0x10133450 + public override MethodAttributes Attributes { get; } // 0x100EFBB0 + public override CallingConventions CallingConvention { get; } // 0x10133230 + public override bool ContainsGenericParameters { get; } // 0x10133250 + public override bool IsGenericMethodDefinition { get; } // 0x10133310 + public override bool IsGenericMethod { get; } // 0x10133340 + public override ICustomAttributeProvider ReturnTypeCustomAttributes { get; } // 0x101334C0 + + // Methods + public void .ctor(MonoGenericClass instantiation, MethodBuilder mb); // 0x101237E0 + internal void .ctor(MethodOnTypeBuilderInst gmd, Type[] typeArguments); // 0x101331B0 + public override bool IsDefined(Type attributeType, bool inherit); // 0x10132DE0 + public override object[] GetCustomAttributes(bool inherit); // 0x10132A80 + public override object[] GetCustomAttributes(Type attributeType, bool inherit); // 0x10132A30 + public override string ToString(); // 0x10132FC0 + public override MethodImplAttributes GetMethodImplementationFlags(); // 0x100EF7F0 + public override ParameterInfo[] GetParameters(); // 0x10132B70 + internal override int GetParameterCount(); // 0x100EF810 + public override object Invoke(object obj, BindingFlags invokeAttr, Binder binder, object[] parameters, CultureInfo culture); // 0x10132D90 + public override MethodInfo MakeGenericMethod(Type[] typeArguments); // 0x10132E30 + public override Type[] GetGenericArguments(); // 0x10132AD0 + public override MethodInfo GetGenericMethodDefinition(); // 0x10132B50 + public override MethodInfo GetBaseDefinition(); // 0x101329E0 +} + +// Namespace: System.Reflection.Emit +public sealed class MethodRental : _MethodRental // TypeDefIndex: 522 +{ + // Fields + public const int JitImmediate = 1; // 0x00 + public const int JitOnDemand = 0; // 0x00 + + // Methods + private void .ctor(); // 0x100BF000 + private void System.Runtime.InteropServices._MethodRental.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x10133770 + private void System.Runtime.InteropServices._MethodRental.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x10133810 + private void System.Runtime.InteropServices._MethodRental.GetTypeInfoCount(out uint pcTInfo); // 0x101337C0 + private void System.Runtime.InteropServices._MethodRental.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x10133860 + public static void SwapMethodBody(Type cls, int methodtoken, IntPtr rgIL, int methodSize, int flags); // 0x10133600 +} + +// Namespace: System.Reflection.Emit +[Serializable] +public struct MethodToken // TypeDefIndex: 523 +{ + // Fields + internal int tokValue; // 0x08 + public static readonly MethodToken Empty; // 0x00 + + // Properties + public int Token { get; } // 0x10003A80 + + // Methods + internal void .ctor(int val); // 0x10005950 + private static void .cctor(); // 0x101338B0 + public override bool Equals(object obj); // 0x10007AB0 + public bool Equals(MethodToken obj); // 0x10005A50 + public override int GetHashCode(); // 0x10003A80 + public static bool op_Equality(MethodToken a, MethodToken b); // 0x101338E0 + public static bool op_Inequality(MethodToken a, MethodToken b); // 0x10133940 +} + +// Namespace: System.Reflection.Emit +public class ModuleBuilder : Module, _ModuleBuilder // TypeDefIndex: 524 +{ + // Fields + private UIntPtr dynamic_image; // 0x24 + private int num_types; // 0x28 + private TypeBuilder[] types; // 0x2C + private CustomAttributeBuilder[] cattrs; // 0x30 + private byte[] guid; // 0x34 + private int table_idx; // 0x38 + internal AssemblyBuilder assemblyb; // 0x3C + private MethodBuilder[] global_methods; // 0x40 + private FieldBuilder[] global_fields; // 0x44 + private bool is_main; // 0x48 + private MonoResource[] resources; // 0x4C + private TypeBuilder global_type; // 0x50 + private Type global_type_created; // 0x54 + private Hashtable name_cache; // 0x58 + private Hashtable us_string_cache; // 0x5C + private int[] table_indexes; // 0x60 + private bool transient; // 0x64 + private ModuleBuilderTokenGenerator token_gen; // 0x68 + private Hashtable resource_writers; // 0x6C + private ISymbolWriter symbolWriter; // 0x70 + private static readonly char[] type_modifiers; // 0x00 + + // Properties + public override string FullyQualifiedName { get; } // 0x100BFC20 + internal string FileName { get; } // 0x100BFC20 + internal bool IsMain { set; } // 0x10137540 + + // Methods + internal void .ctor(AssemblyBuilder assb, string name, string fullyqname, bool emitSymbolInfo, bool transient); // 0x10136C60 + private static void .cctor(); // 0x10136BC0 + private void System.Runtime.InteropServices._ModuleBuilder.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x10136A60 + private void System.Runtime.InteropServices._ModuleBuilder.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x10136B00 + private void System.Runtime.InteropServices._ModuleBuilder.GetTypeInfoCount(out uint pcTInfo); // 0x10136AB0 + private void System.Runtime.InteropServices._ModuleBuilder.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x10136B50 + private static void basic_init(ModuleBuilder ab); // 0x101371B0 + private static void set_wrappers_type(ModuleBuilder mb, Type ab); // 0x10137550 + public bool IsTransient(); // 0x10135FF0 + public void CreateGlobalFunctions(); // 0x10133BE0 + public FieldBuilder DefineInitializedData(string name, byte[] data, FieldAttributes attributes); // 0x10134220 + public FieldBuilder DefineUninitializedData(string name, int size, FieldAttributes attributes); // 0x10134BF0 + private void addGlobalMethod(MethodBuilder mb); // 0x10137080 + public MethodBuilder DefineGlobalMethod(string name, MethodAttributes attributes, Type returnType, Type[] parameterTypes); // 0x10134110 + public MethodBuilder DefineGlobalMethod(string name, MethodAttributes attributes, CallingConventions callingConvention, Type returnType, Type[] parameterTypes); // 0x10133EE0 + public MethodBuilder DefineGlobalMethod(string name, MethodAttributes attributes, CallingConventions callingConvention, Type returnType, Type[] requiredReturnTypeCustomModifiers, Type[] optionalReturnTypeCustomModifiers, Type[] parameterTypes, Type[][] requiredParameterTypeCustomModifiers, Type[][] optionalParameterTypeCustomModifiers); // 0x10134000 + public MethodBuilder DefinePInvokeMethod(string name, string dllName, MethodAttributes attributes, CallingConventions callingConvention, Type returnType, Type[] parameterTypes, CallingConvention nativeCallConv, CharSet nativeCharSet); // 0x10134600 + public MethodBuilder DefinePInvokeMethod(string name, string dllName, string entryName, MethodAttributes attributes, CallingConventions callingConvention, Type returnType, Type[] parameterTypes, CallingConvention nativeCallConv, CharSet nativeCharSet); // 0x101344F0 + public TypeBuilder DefineType(string name); // 0x10134AF0 + public TypeBuilder DefineType(string name, TypeAttributes attr); // 0x10134980 + public TypeBuilder DefineType(string name, TypeAttributes attr, Type parent); // 0x10134950 + private void AddType(TypeBuilder tb); // 0x10133B10 + private TypeBuilder DefineType(string name, TypeAttributes attr, Type parent, Type[] interfaces, PackingSize packingSize, int typesize); // 0x10134A10 + internal void RegisterTypeName(TypeBuilder tb, string name); // 0x10136060 + internal TypeBuilder GetRegisteredType(string name); // 0x101354F0 + public TypeBuilder DefineType(string name, TypeAttributes attr, Type parent, Type[] interfaces); // 0x10134B60 + public TypeBuilder DefineType(string name, TypeAttributes attr, Type parent, int typesize); // 0x10134950 + public TypeBuilder DefineType(string name, TypeAttributes attr, Type parent, PackingSize packsize); // 0x10134B90 + public TypeBuilder DefineType(string name, TypeAttributes attr, Type parent, PackingSize packingSize, int typesize); // 0x10134BC0 + public MethodInfo GetArrayMethod(Type arrayClass, string methodName, CallingConventions callingConvention, Type returnType, Type[] parameterTypes); // 0x10135150 + public EnumBuilder DefineEnum(string name, TypeAttributes visibility, Type underlyingType); // 0x10133D60 + public override Type GetType(string className); // 0x10135BF0 + public override Type GetType(string className, bool ignoreCase); // 0x10135E90 + private TypeBuilder search_in_array(TypeBuilder[] arr, int validElementsInArray, string className); // 0x10137340 + private TypeBuilder search_nested_in_array(TypeBuilder[] arr, int validElementsInArray, string className); // 0x10137440 + private static Type create_modified_type(TypeBuilder tb, string modifiers); // 0x101371D0 + private TypeBuilder GetMaybeNested(TypeBuilder t, string className); // 0x10135320 + public override Type GetType(string className, bool throwOnError, bool ignoreCase); // 0x10135C20 + internal int get_next_table_index(object obj, int table, bool inc); // 0x10137250 + public void SetCustomAttribute(CustomAttributeBuilder customBuilder); // 0x10136690 + public void SetCustomAttribute(ConstructorInfo con, byte[] binaryAttribute); // 0x101367C0 + public ISymbolWriter GetSymWriter(); // 0x101356C0 + public ISymbolDocumentWriter DefineDocument(string url, Guid language, Guid languageVendor, Guid documentType); // 0x10133CA0 + public override Type[] GetTypes(); // 0x10135EC0 + public IResourceWriter DefineResource(string name, string description, ResourceAttributes attribute); // 0x10134710 + public IResourceWriter DefineResource(string name, string description); // 0x10134930 + public void DefineUnmanagedResource(byte[] resource); // 0x10134FB0 + public void DefineUnmanagedResource(string resourceFileName); // 0x10134E40 + public void DefineManifestResource(string name, Stream stream, ResourceAttributes attribute); // 0x10134310 + public void SetSymCustomAttribute(string name, byte[] data); // 0x10136920 + public void SetUserEntryPoint(MethodInfo entryPoint); // 0x10136970 + public MethodToken GetMethodToken(MethodInfo method); // 0x101353E0 + public MethodToken GetArrayMethodToken(Type arrayClass, string methodName, CallingConventions callingConvention, Type returnType, Type[] parameterTypes); // 0x10135030 + public MethodToken GetConstructorToken(ConstructorInfo con); // 0x101351A0 + public FieldToken GetFieldToken(FieldInfo field); // 0x10135240 + public SignatureToken GetSignatureToken(byte[] sigBytes, int sigLength); // 0x10135560 + public SignatureToken GetSignatureToken(SignatureHelper sigHelper); // 0x101355B0 + public StringToken GetStringConstant(string str); // 0x10135650 + public TypeToken GetTypeToken(Type type); // 0x10135AA0 + public TypeToken GetTypeToken(string name); // 0x10135930 + private static int getUSIndex(ModuleBuilder mb, string str); // 0x10137230 + private static int getToken(ModuleBuilder mb, object obj); // 0x10137210 + private static int getMethodToken(ModuleBuilder mb, MethodInfo method, Type[] opt_param_types); // 0x101371F0 + internal int GetToken(string str); // 0x10135730 + internal int GetToken(MemberInfo member); // 0x10135880 + internal int GetToken(MethodInfo method, Type[] opt_param_types); // 0x101358D0 + internal int GetToken(SignatureHelper helper); // 0x10135830 + internal void RegisterToken(object obj, int token); // 0x10136040 + internal TokenGenerator GetTokenGenerator(); // 0x101356D0 + private static void build_metadata(ModuleBuilder mb); // 0x101371C0 + private void WriteToFile(IntPtr handle); // 0x10136BA0 + internal void Save(); // 0x101360A0 + internal void CreateGlobalType(); // 0x10133C50 + internal override Guid GetModuleVersionId(); // 0x101354C0 + internal static Guid Mono_GetGuid(ModuleBuilder mb); // 0x10136000 +} + +// Namespace: System.Reflection.Emit +internal class ModuleBuilderTokenGenerator : TokenGenerator // TypeDefIndex: 525 +{ + // Fields + private ModuleBuilder mb; // 0x08 + + // Methods + public void .ctor(ModuleBuilder mb); // 0x10113500 + public int GetToken(string str); // 0x10133A80 + public int GetToken(MemberInfo member); // 0x10133AB0 + public int GetToken(MethodInfo method, Type[] opt_param_types); // 0x10133A10 + public int GetToken(SignatureHelper helper); // 0x101339B0 +} + +// Namespace: System.Reflection +internal class MonoArrayMethod : MethodInfo // TypeDefIndex: 526 +{ + // Fields + internal RuntimeMethodHandle mhandle; // 0x08 + internal Type parent; // 0x0C + internal Type ret; // 0x10 + internal Type[] parameters; // 0x14 + internal string name; // 0x18 + internal int table_idx; // 0x1C + internal CallingConventions call_conv; // 0x20 + + // Properties + public override Type ReturnType { get; } // 0x100BFC20 + public override ICustomAttributeProvider ReturnTypeCustomAttributes { get; } // 0x100C5600 + public override RuntimeMethodHandle MethodHandle { get; } // 0x100BF0C0 + public override MethodAttributes Attributes { get; } // 0x100C5600 + public override Type ReflectedType { get; } // 0x100C5B30 + public override Type DeclaringType { get; } // 0x100C5B30 + public override string Name { get; } // 0x100EE580 + + // Methods + internal void .ctor(Type arrayClass, string methodName, CallingConventions callingConvention, Type returnType, Type[] parameterTypes); // 0x10174020 + public override MethodInfo GetBaseDefinition(); // 0x100F7810 + public override MethodImplAttributes GetMethodImplementationFlags(); // 0x100C5600 + public override ParameterInfo[] GetParameters(); // 0x10173A00 + public override object Invoke(object obj, BindingFlags invokeAttr, Binder binder, object[] parameters, CultureInfo culture); // 0x10173A30 + public override bool IsDefined(Type attributeType, bool inherit); // 0x10173A80 + public override object[] GetCustomAttributes(bool inherit); // 0x101739B0 + public override object[] GetCustomAttributes(Type attributeType, bool inherit); // 0x10173960 + public override string ToString(); // 0x10173AD0 +} + +// Namespace: System.Reflection.Emit +public struct OpCode // TypeDefIndex: 527 +{ + // Fields + internal byte op1; // 0x00 + internal byte op2; // 0x00 + private byte push; // 0x00 + private byte pop; // 0x00 + private byte size; // 0x00 + private byte type; // 0x00 + private byte args; // 0x00 + private byte flow; // 0x00 + + // Properties + public string Name { get; } // 0x10007D50 + public int Size { get; } // 0x10007D80 + public OpCodeType OpCodeType { get; } // 0x10007D60 + public OperandType OperandType { get; } // 0x10007D70 + public FlowControl FlowControl { get; } // 0x10007D40 + public StackBehaviour StackBehaviourPop { get; } // 0x10007D90 + public StackBehaviour StackBehaviourPush { get; } // 0x10007DA0 + public short Value { get; } // 0x10007DB0 + + // Methods + internal void .ctor(int p, int q); // 0x10007D00 + public override int GetHashCode(); // 0x10007CB0 + public override bool Equals(object obj); // 0x10007C00 + public bool Equals(OpCode obj); // 0x10007C80 + public override string ToString(); // 0x10007CE0 + public static bool op_Equality(OpCode a, OpCode b); // 0x1013C240 + public static bool op_Inequality(OpCode a, OpCode b); // 0x1013C260 +} + +// Namespace: System.Reflection.Emit +internal class OpCodeNames // TypeDefIndex: 528 +{ + // Fields + internal static readonly string[] names; // 0x00 + + // Methods + public void .ctor(); // 0x100BF000 + private static void .cctor(); // 0x101375D0 +} + +// Namespace: System.Reflection.Emit +[Serializable] +public enum OpCodeType // TypeDefIndex: 529 +{ + Annotation = 0, + Macro = 1, + Nternal = 2, + Objmodel = 3, + Prefix = 4, + Primitive = 5 +} + +// Namespace: System.Reflection.Emit +public class OpCodes // TypeDefIndex: 530 +{ + // Fields + public static readonly OpCode Nop; // 0x00 + public static readonly OpCode Break; // 0x08 + public static readonly OpCode Ldarg_0; // 0x10 + public static readonly OpCode Ldarg_1; // 0x18 + public static readonly OpCode Ldarg_2; // 0x20 + public static readonly OpCode Ldarg_3; // 0x28 + public static readonly OpCode Ldloc_0; // 0x30 + public static readonly OpCode Ldloc_1; // 0x38 + public static readonly OpCode Ldloc_2; // 0x40 + public static readonly OpCode Ldloc_3; // 0x48 + public static readonly OpCode Stloc_0; // 0x50 + public static readonly OpCode Stloc_1; // 0x58 + public static readonly OpCode Stloc_2; // 0x60 + public static readonly OpCode Stloc_3; // 0x68 + public static readonly OpCode Ldarg_S; // 0x70 + public static readonly OpCode Ldarga_S; // 0x78 + public static readonly OpCode Starg_S; // 0x80 + public static readonly OpCode Ldloc_S; // 0x88 + public static readonly OpCode Ldloca_S; // 0x90 + public static readonly OpCode Stloc_S; // 0x98 + public static readonly OpCode Ldnull; // 0xA0 + public static readonly OpCode Ldc_I4_M1; // 0xA8 + public static readonly OpCode Ldc_I4_0; // 0xB0 + public static readonly OpCode Ldc_I4_1; // 0xB8 + public static readonly OpCode Ldc_I4_2; // 0xC0 + public static readonly OpCode Ldc_I4_3; // 0xC8 + public static readonly OpCode Ldc_I4_4; // 0xD0 + public static readonly OpCode Ldc_I4_5; // 0xD8 + public static readonly OpCode Ldc_I4_6; // 0xE0 + public static readonly OpCode Ldc_I4_7; // 0xE8 + public static readonly OpCode Ldc_I4_8; // 0xF0 + public static readonly OpCode Ldc_I4_S; // 0xF8 + public static readonly OpCode Ldc_I4; // 0x100 + public static readonly OpCode Ldc_I8; // 0x108 + public static readonly OpCode Ldc_R4; // 0x110 + public static readonly OpCode Ldc_R8; // 0x118 + public static readonly OpCode Dup; // 0x120 + public static readonly OpCode Pop; // 0x128 + public static readonly OpCode Jmp; // 0x130 + public static readonly OpCode Call; // 0x138 + public static readonly OpCode Calli; // 0x140 + public static readonly OpCode Ret; // 0x148 + public static readonly OpCode Br_S; // 0x150 + public static readonly OpCode Brfalse_S; // 0x158 + public static readonly OpCode Brtrue_S; // 0x160 + public static readonly OpCode Beq_S; // 0x168 + public static readonly OpCode Bge_S; // 0x170 + public static readonly OpCode Bgt_S; // 0x178 + public static readonly OpCode Ble_S; // 0x180 + public static readonly OpCode Blt_S; // 0x188 + public static readonly OpCode Bne_Un_S; // 0x190 + public static readonly OpCode Bge_Un_S; // 0x198 + public static readonly OpCode Bgt_Un_S; // 0x1A0 + public static readonly OpCode Ble_Un_S; // 0x1A8 + public static readonly OpCode Blt_Un_S; // 0x1B0 + public static readonly OpCode Br; // 0x1B8 + public static readonly OpCode Brfalse; // 0x1C0 + public static readonly OpCode Brtrue; // 0x1C8 + public static readonly OpCode Beq; // 0x1D0 + public static readonly OpCode Bge; // 0x1D8 + public static readonly OpCode Bgt; // 0x1E0 + public static readonly OpCode Ble; // 0x1E8 + public static readonly OpCode Blt; // 0x1F0 + public static readonly OpCode Bne_Un; // 0x1F8 + public static readonly OpCode Bge_Un; // 0x200 + public static readonly OpCode Bgt_Un; // 0x208 + public static readonly OpCode Ble_Un; // 0x210 + public static readonly OpCode Blt_Un; // 0x218 + public static readonly OpCode Switch; // 0x220 + public static readonly OpCode Ldind_I1; // 0x228 + public static readonly OpCode Ldind_U1; // 0x230 + public static readonly OpCode Ldind_I2; // 0x238 + public static readonly OpCode Ldind_U2; // 0x240 + public static readonly OpCode Ldind_I4; // 0x248 + public static readonly OpCode Ldind_U4; // 0x250 + public static readonly OpCode Ldind_I8; // 0x258 + public static readonly OpCode Ldind_I; // 0x260 + public static readonly OpCode Ldind_R4; // 0x268 + public static readonly OpCode Ldind_R8; // 0x270 + public static readonly OpCode Ldind_Ref; // 0x278 + public static readonly OpCode Stind_Ref; // 0x280 + public static readonly OpCode Stind_I1; // 0x288 + public static readonly OpCode Stind_I2; // 0x290 + public static readonly OpCode Stind_I4; // 0x298 + public static readonly OpCode Stind_I8; // 0x2A0 + public static readonly OpCode Stind_R4; // 0x2A8 + public static readonly OpCode Stind_R8; // 0x2B0 + public static readonly OpCode Add; // 0x2B8 + public static readonly OpCode Sub; // 0x2C0 + public static readonly OpCode Mul; // 0x2C8 + public static readonly OpCode Div; // 0x2D0 + public static readonly OpCode Div_Un; // 0x2D8 + public static readonly OpCode Rem; // 0x2E0 + public static readonly OpCode Rem_Un; // 0x2E8 + public static readonly OpCode And; // 0x2F0 + public static readonly OpCode Or; // 0x2F8 + public static readonly OpCode Xor; // 0x300 + public static readonly OpCode Shl; // 0x308 + public static readonly OpCode Shr; // 0x310 + public static readonly OpCode Shr_Un; // 0x318 + public static readonly OpCode Neg; // 0x320 + public static readonly OpCode Not; // 0x328 + public static readonly OpCode Conv_I1; // 0x330 + public static readonly OpCode Conv_I2; // 0x338 + public static readonly OpCode Conv_I4; // 0x340 + public static readonly OpCode Conv_I8; // 0x348 + public static readonly OpCode Conv_R4; // 0x350 + public static readonly OpCode Conv_R8; // 0x358 + public static readonly OpCode Conv_U4; // 0x360 + public static readonly OpCode Conv_U8; // 0x368 + public static readonly OpCode Callvirt; // 0x370 + public static readonly OpCode Cpobj; // 0x378 + public static readonly OpCode Ldobj; // 0x380 + public static readonly OpCode Ldstr; // 0x388 + public static readonly OpCode Newobj; // 0x390 + public static readonly OpCode Castclass; // 0x398 + public static readonly OpCode Isinst; // 0x3A0 + public static readonly OpCode Conv_R_Un; // 0x3A8 + public static readonly OpCode Unbox; // 0x3B0 + public static readonly OpCode Throw; // 0x3B8 + public static readonly OpCode Ldfld; // 0x3C0 + public static readonly OpCode Ldflda; // 0x3C8 + public static readonly OpCode Stfld; // 0x3D0 + public static readonly OpCode Ldsfld; // 0x3D8 + public static readonly OpCode Ldsflda; // 0x3E0 + public static readonly OpCode Stsfld; // 0x3E8 + public static readonly OpCode Stobj; // 0x3F0 + public static readonly OpCode Conv_Ovf_I1_Un; // 0x3F8 + public static readonly OpCode Conv_Ovf_I2_Un; // 0x400 + public static readonly OpCode Conv_Ovf_I4_Un; // 0x408 + public static readonly OpCode Conv_Ovf_I8_Un; // 0x410 + public static readonly OpCode Conv_Ovf_U1_Un; // 0x418 + public static readonly OpCode Conv_Ovf_U2_Un; // 0x420 + public static readonly OpCode Conv_Ovf_U4_Un; // 0x428 + public static readonly OpCode Conv_Ovf_U8_Un; // 0x430 + public static readonly OpCode Conv_Ovf_I_Un; // 0x438 + public static readonly OpCode Conv_Ovf_U_Un; // 0x440 + public static readonly OpCode Box; // 0x448 + public static readonly OpCode Newarr; // 0x450 + public static readonly OpCode Ldlen; // 0x458 + public static readonly OpCode Ldelema; // 0x460 + public static readonly OpCode Ldelem_I1; // 0x468 + public static readonly OpCode Ldelem_U1; // 0x470 + public static readonly OpCode Ldelem_I2; // 0x478 + public static readonly OpCode Ldelem_U2; // 0x480 + public static readonly OpCode Ldelem_I4; // 0x488 + public static readonly OpCode Ldelem_U4; // 0x490 + public static readonly OpCode Ldelem_I8; // 0x498 + public static readonly OpCode Ldelem_I; // 0x4A0 + public static readonly OpCode Ldelem_R4; // 0x4A8 + public static readonly OpCode Ldelem_R8; // 0x4B0 + public static readonly OpCode Ldelem_Ref; // 0x4B8 + public static readonly OpCode Stelem_I; // 0x4C0 + public static readonly OpCode Stelem_I1; // 0x4C8 + public static readonly OpCode Stelem_I2; // 0x4D0 + public static readonly OpCode Stelem_I4; // 0x4D8 + public static readonly OpCode Stelem_I8; // 0x4E0 + public static readonly OpCode Stelem_R4; // 0x4E8 + public static readonly OpCode Stelem_R8; // 0x4F0 + public static readonly OpCode Stelem_Ref; // 0x4F8 + public static readonly OpCode Ldelem; // 0x500 + public static readonly OpCode Stelem; // 0x508 + public static readonly OpCode Unbox_Any; // 0x510 + public static readonly OpCode Conv_Ovf_I1; // 0x518 + public static readonly OpCode Conv_Ovf_U1; // 0x520 + public static readonly OpCode Conv_Ovf_I2; // 0x528 + public static readonly OpCode Conv_Ovf_U2; // 0x530 + public static readonly OpCode Conv_Ovf_I4; // 0x538 + public static readonly OpCode Conv_Ovf_U4; // 0x540 + public static readonly OpCode Conv_Ovf_I8; // 0x548 + public static readonly OpCode Conv_Ovf_U8; // 0x550 + public static readonly OpCode Refanyval; // 0x558 + public static readonly OpCode Ckfinite; // 0x560 + public static readonly OpCode Mkrefany; // 0x568 + public static readonly OpCode Ldtoken; // 0x570 + public static readonly OpCode Conv_U2; // 0x578 + public static readonly OpCode Conv_U1; // 0x580 + public static readonly OpCode Conv_I; // 0x588 + public static readonly OpCode Conv_Ovf_I; // 0x590 + public static readonly OpCode Conv_Ovf_U; // 0x598 + public static readonly OpCode Add_Ovf; // 0x5A0 + public static readonly OpCode Add_Ovf_Un; // 0x5A8 + public static readonly OpCode Mul_Ovf; // 0x5B0 + public static readonly OpCode Mul_Ovf_Un; // 0x5B8 + public static readonly OpCode Sub_Ovf; // 0x5C0 + public static readonly OpCode Sub_Ovf_Un; // 0x5C8 + public static readonly OpCode Endfinally; // 0x5D0 + public static readonly OpCode Leave; // 0x5D8 + public static readonly OpCode Leave_S; // 0x5E0 + public static readonly OpCode Stind_I; // 0x5E8 + public static readonly OpCode Conv_U; // 0x5F0 + public static readonly OpCode Prefix7; // 0x5F8 + public static readonly OpCode Prefix6; // 0x600 + public static readonly OpCode Prefix5; // 0x608 + public static readonly OpCode Prefix4; // 0x610 + public static readonly OpCode Prefix3; // 0x618 + public static readonly OpCode Prefix2; // 0x620 + public static readonly OpCode Prefix1; // 0x628 + public static readonly OpCode Prefixref; // 0x630 + public static readonly OpCode Arglist; // 0x638 + public static readonly OpCode Ceq; // 0x640 + public static readonly OpCode Cgt; // 0x648 + public static readonly OpCode Cgt_Un; // 0x650 + public static readonly OpCode Clt; // 0x658 + public static readonly OpCode Clt_Un; // 0x660 + public static readonly OpCode Ldftn; // 0x668 + public static readonly OpCode Ldvirtftn; // 0x670 + public static readonly OpCode Ldarg; // 0x678 + public static readonly OpCode Ldarga; // 0x680 + public static readonly OpCode Starg; // 0x688 + public static readonly OpCode Ldloc; // 0x690 + public static readonly OpCode Ldloca; // 0x698 + public static readonly OpCode Stloc; // 0x6A0 + public static readonly OpCode Localloc; // 0x6A8 + public static readonly OpCode Endfilter; // 0x6B0 + public static readonly OpCode Unaligned; // 0x6B8 + public static readonly OpCode Volatile; // 0x6C0 + public static readonly OpCode Tailcall; // 0x6C8 + public static readonly OpCode Initobj; // 0x6D0 + public static readonly OpCode Constrained; // 0x6D8 + public static readonly OpCode Cpblk; // 0x6E0 + public static readonly OpCode Initblk; // 0x6E8 + public static readonly OpCode Rethrow; // 0x6F0 + public static readonly OpCode Sizeof; // 0x6F8 + public static readonly OpCode Refanytype; // 0x700 + public static readonly OpCode Readonly; // 0x708 + + // Methods + internal void .ctor(); // 0x100BF000 + private static void .cctor(); // 0x1013C2B0 + public static bool TakesSingleByteArgument(OpCode inst); // 0x1013C280 +} + +// Namespace: System.Reflection.Emit +[Serializable] +public enum OperandType // TypeDefIndex: 531 +{ + InlineBrTarget = 0, + InlineField = 1, + InlineI = 2, + InlineI8 = 3, + InlineMethod = 4, + InlineNone = 5, + InlinePhi = 6, + InlineR = 7, + InlineSig = 9, + InlineString = 10, + InlineSwitch = 11, + InlineTok = 12, + InlineType = 13, + InlineVar = 14, + ShortInlineBrTarget = 15, + ShortInlineI = 16, + ShortInlineR = 17, + ShortInlineVar = 18 +} + +// Namespace: System.Reflection.Emit +[Serializable] +public enum PEFileKinds // TypeDefIndex: 532 +{ + Dll = 1, + ConsoleApplication = 2, + WindowApplication = 3 +} + +// Namespace: System.Reflection.Emit +[Serializable] +public enum PackingSize // TypeDefIndex: 533 +{ + Unspecified = 0, + Size1 = 1, + Size2 = 2, + Size4 = 4, + Size8 = 8, + Size16 = 16, + Size32 = 32, + Size64 = 64, + Size128 = 128 +} + +// Namespace: System.Reflection.Emit +public class ParameterBuilder : _ParameterBuilder // TypeDefIndex: 534 +{ + // Fields + private MethodBase methodb; // 0x08 + private string name; // 0x0C + private CustomAttributeBuilder[] cattrs; // 0x10 + private UnmanagedMarshal marshal_info; // 0x14 + private ParameterAttributes attrs; // 0x18 + private int position; // 0x1C + private int table_idx; // 0x20 + private object def_value; // 0x24 + + // Properties + public virtual int Attributes { get; } // 0x100EE580 + public bool IsIn { get; } // 0x1013F0F0 + public bool IsOut { get; } // 0x1013F110 + public bool IsOptional { get; } // 0x1013F100 + public virtual string Name { get; } // 0x100C5B30 + public virtual int Position { get; } // 0x100F85F0 + + // Methods + internal void .ctor(MethodBase mb, int pos, ParameterAttributes attributes, string strParamName); // 0x1013F060 + private void System.Runtime.InteropServices._ParameterBuilder.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x1013EF20 + private void System.Runtime.InteropServices._ParameterBuilder.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x1013EFC0 + private void System.Runtime.InteropServices._ParameterBuilder.GetTypeInfoCount(out uint pcTInfo); // 0x1013EF70 + private void System.Runtime.InteropServices._ParameterBuilder.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x1013F010 + public virtual ParameterToken GetToken(); // 0x1013EBD0 + public virtual void SetConstant(object defaultValue); // 0x1013EBE0 + public void SetCustomAttribute(CustomAttributeBuilder customBuilder); // 0x1013EC00 + public void SetCustomAttribute(ConstructorInfo con, byte[] binaryAttribute); // 0x1013EEB0 + public virtual void SetMarshal(UnmanagedMarshal unmanagedMarshal); // 0x1013EF00 +} + +// Namespace: System.Reflection.Emit +[Serializable] +public struct ParameterToken // TypeDefIndex: 535 +{ + // Fields + internal int tokValue; // 0x08 + public static readonly ParameterToken Empty; // 0x00 + + // Properties + public int Token { get; } // 0x10003A80 + + // Methods + internal void .ctor(int val); // 0x10005950 + private static void .cctor(); // 0x1013F120 + public override bool Equals(object obj); // 0x10007DE0 + public bool Equals(ParameterToken obj); // 0x10005A50 + public override int GetHashCode(); // 0x10003A80 + public static bool op_Equality(ParameterToken a, ParameterToken b); // 0x1013F150 + public static bool op_Inequality(ParameterToken a, ParameterToken b); // 0x1013F1B0 +} + +// Namespace: System.Reflection.Emit +public sealed class PropertyBuilder : PropertyInfo, _PropertyBuilder // TypeDefIndex: 536 +{ + // Fields + private PropertyAttributes attrs; // 0x08 + private string name; // 0x0C + private Type type; // 0x10 + private Type[] parameters; // 0x14 + private CustomAttributeBuilder[] cattrs; // 0x18 + private object def_value; // 0x1C + private MethodBuilder set_method; // 0x20 + private MethodBuilder get_method; // 0x24 + private int table_idx; // 0x28 + internal TypeBuilder typeb; // 0x2C + private Type[] returnModReq; // 0x30 + private Type[] returnModOpt; // 0x34 + private Type[][] paramModReq; // 0x38 + private Type[][] paramModOpt; // 0x3C + + // Properties + public override PropertyAttributes Attributes { get; } // 0x100BF0C0 + public override bool CanRead { get; } // 0x1013F820 + public override bool CanWrite { get; } // 0x1013F830 + public override Type DeclaringType { get; } // 0x100EB200 + public override string Name { get; } // 0x100C5B30 + public PropertyToken PropertyToken { get; } // 0x100C5600 + public override Type PropertyType { get; } // 0x100BFC20 + public override Type ReflectedType { get; } // 0x100EB200 + public override Module Module { get; } // 0x100EF1C0 + + // Methods + internal void .ctor(TypeBuilder tb, string name, PropertyAttributes attributes, Type returnType, Type[] returnModReq, Type[] returnModOpt, Type[] parameterTypes, Type[][] paramModReq, Type[][] paramModOpt); // 0x1013F760 + private void System.Runtime.InteropServices._PropertyBuilder.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x1013F620 + private void System.Runtime.InteropServices._PropertyBuilder.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x1013F6C0 + private void System.Runtime.InteropServices._PropertyBuilder.GetTypeInfoCount(out uint pcTInfo); // 0x1013F670 + private void System.Runtime.InteropServices._PropertyBuilder.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x1013F710 + public void AddOtherMethod(MethodBuilder mdBuilder); // 0x100C5530 + public override MethodInfo[] GetAccessors(bool nonPublic); // 0x100C5600 + public override object[] GetCustomAttributes(bool inherit); // 0x1013F320 + public override object[] GetCustomAttributes(Type attributeType, bool inherit); // 0x1013F2E0 + public override MethodInfo GetGetMethod(bool nonPublic); // 0x100EAD50 + public override ParameterInfo[] GetIndexParameters(); // 0x1013F360 + public override MethodInfo GetSetMethod(bool nonPublic); // 0x100EACD0 + public override object GetValue(object obj, object[] index); // 0x100C5600 + public override object GetValue(object obj, BindingFlags invokeAttr, Binder binder, object[] index, CultureInfo culture); // 0x1013F3A0 + public override bool IsDefined(Type attributeType, bool inherit); // 0x1013F3E0 + public void SetConstant(object defaultValue); // 0x10113F50 + public void SetCustomAttribute(CustomAttributeBuilder customBuilder); // 0x1013F420 + public void SetCustomAttribute(ConstructorInfo con, byte[] binaryAttribute); // 0x1013F5D0 + public void SetGetMethod(MethodBuilder mdBuilder); // 0x100EB240 + public void SetSetMethod(MethodBuilder mdBuilder); // 0x100EB230 + public override void SetValue(object obj, object value, object[] index); // 0x100C5530 + public override void SetValue(object obj, object value, BindingFlags invokeAttr, Binder binder, object[] index, CultureInfo culture); // 0x100C5530 + private Exception not_supported(); // 0x1013F840 +} + +// Namespace: System.Reflection.Emit +internal class PropertyOnTypeBuilderInst : PropertyInfo // TypeDefIndex: 537 +{ + // Fields + private MonoGenericClass instantiation; // 0x08 + private PropertyInfo prop; // 0x0C + + // Properties + public override PropertyAttributes Attributes { get; } // 0x1017A6B0 + public override bool CanRead { get; } // 0x1017A700 + public override bool CanWrite { get; } // 0x1017A750 + public override Type PropertyType { get; } // 0x1017A820 + public override Type DeclaringType { get; } // 0x1017A7A0 + public override Type ReflectedType { get; } // 0x100BF0C0 + public override string Name { get; } // 0x1017A7F0 + + // Methods + internal void .ctor(MonoGenericClass instantiation, PropertyInfo prop); // 0x1017A680 + public override MethodInfo[] GetAccessors(bool nonPublic); // 0x1017A1F0 + public override MethodInfo GetGetMethod(bool nonPublic); // 0x1017A3B0 + public override ParameterInfo[] GetIndexParameters(); // 0x1017A420 + public override MethodInfo GetSetMethod(bool nonPublic); // 0x1017A490 + public override string ToString(); // 0x1017A5F0 + public override object GetValue(object obj, BindingFlags invokeAttr, Binder binder, object[] index, CultureInfo culture); // 0x1017A500 + public override void SetValue(object obj, object value, BindingFlags invokeAttr, Binder binder, object[] index, CultureInfo culture); // 0x1017A5A0 + public override bool IsDefined(Type attributeType, bool inherit); // 0x1017A550 + public override object[] GetCustomAttributes(bool inherit); // 0x1017A310 + public override object[] GetCustomAttributes(Type attributeType, bool inherit); // 0x1017A360 +} + +// Namespace: System.Reflection.Emit +[Serializable] +public struct PropertyToken // TypeDefIndex: 538 +{ + // Fields + internal int tokValue; // 0x08 + public static readonly PropertyToken Empty; // 0x00 + + // Properties + public int Token { get; } // 0x10003A80 + + // Methods + internal void .ctor(int val); // 0x10005950 + private static void .cctor(); // 0x1017A870 + public override bool Equals(object obj); // 0x10009250 + public bool Equals(PropertyToken obj); // 0x10005A50 + public override int GetHashCode(); // 0x10003A80 + public static bool op_Equality(PropertyToken a, PropertyToken b); // 0x1017A8A0 + public static bool op_Inequality(PropertyToken a, PropertyToken b); // 0x1017A900 +} + +// Namespace: System.Reflection.Emit +public sealed class SignatureHelper : _SignatureHelper // TypeDefIndex: 539 +{ + // Fields + private ModuleBuilder module; // 0x08 + private Type[] arguments; // 0x0C + private SignatureHelperType type; // 0x10 + private Type returnType; // 0x14 + private CallingConventions callConv; // 0x18 + private CallingConvention unmanagedCallConv; // 0x1C + private Type[][] modreqs; // 0x20 + private Type[][] modopts; // 0x24 + + // Methods + internal void .ctor(ModuleBuilder module, SignatureHelperType type); // 0x1017BF40 + private void System.Runtime.InteropServices._SignatureHelper.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x1017BBA0 + private void System.Runtime.InteropServices._SignatureHelper.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x1017BC40 + private void System.Runtime.InteropServices._SignatureHelper.GetTypeInfoCount(out uint pcTInfo); // 0x1017BBF0 + private void System.Runtime.InteropServices._SignatureHelper.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x1017BC90 + public static SignatureHelper GetFieldSigHelper(Module mod); // 0x1017B510 + public static SignatureHelper GetLocalVarSigHelper(Module mod); // 0x1017B610 + public static SignatureHelper GetLocalVarSigHelper(); // 0x1017B710 + public static SignatureHelper GetMethodSigHelper(CallingConventions callingConvention, Type returnType); // 0x1017B7C0 + public static SignatureHelper GetMethodSigHelper(CallingConvention unmanagedCallingConvention, Type returnType); // 0x1017BA20 + public static SignatureHelper GetMethodSigHelper(Module mod, CallingConventions callingConvention, Type returnType); // 0x1017B7A0 + public static SignatureHelper GetMethodSigHelper(Module mod, CallingConvention unmanagedCallConv, Type returnType); // 0x1017B780 + public static SignatureHelper GetMethodSigHelper(Module mod, Type returnType, Type[] parameterTypes); // 0x1017B760 + public static SignatureHelper GetPropertySigHelper(Module mod, Type returnType, Type[] parameterTypes); // 0x1017BA90 + private static int AppendArray(Type[] array, Type t); // 0x1017B1B0 + private static void AppendArrayAt(Type[][] array, Type[] t, int pos); // 0x1017B0F0 + private static void ValidateParameterModifiers(string name, Type[] parameter_modifiers); // 0x1017BE00 + private static void ValidateCustomModifier(int n, Type[][] custom_modifiers, string name); // 0x1017BD10 + private static Exception MissingFeature(); // 0x1017BB50 + public void AddArguments(Type[] arguments, Type[][] requiredCustomModifiers, Type[][] optionalCustomModifiers); // 0x1017AFB0 + public void AddArgument(Type argument, bool pinned); // 0x1017AE00 + public void AddArgument(Type argument, Type[] requiredCustomModifiers, Type[] optionalCustomModifiers); // 0x1017AE70 + public static SignatureHelper GetPropertySigHelper(Module mod, Type returnType, Type[] requiredReturnTypeCustomModifiers, Type[] optionalReturnTypeCustomModifiers, Type[] parameterTypes, Type[][] requiredParameterTypeCustomModifiers, Type[][] optionalParameterTypeCustomModifiers); // 0x1017BA40 + public void AddArgument(Type clsArgument); // 0x1017AF40 + public void AddSentinel(); // 0x1017B0A0 + private static bool CompareOK(Type[][] one, Type[][] two); // 0x1017B2E0 + public override bool Equals(object obj); // 0x1017B3F0 + public override int GetHashCode(); // 0x100C5600 + internal byte[] get_signature_local(); // 0x1017BF80 + internal byte[] get_signature_field(); // 0x1017BF70 + public byte[] GetSignature(); // 0x1017BAE0 + public override string ToString(); // 0x1017BCE0 + internal static SignatureHelper GetMethodSigHelper(Module mod, CallingConventions callingConvention, CallingConvention unmanagedCallingConvention, Type returnType, Type[] parameters); // 0x1017B7E0 +} + +// Namespace: +internal enum SignatureHelperType // TypeDefIndex: 540 +{ + HELPER_FIELD = 0, + HELPER_LOCAL = 1, + HELPER_METHOD = 2, + HELPER_PROPERTY = 3 +} + +// Namespace: System.Reflection.Emit +public struct SignatureToken // TypeDefIndex: 541 +{ + // Fields + internal int tokValue; // 0x08 + public static readonly SignatureToken Empty; // 0x00 + + // Properties + public int Token { get; } // 0x10003A80 + + // Methods + internal void .ctor(int val); // 0x10005950 + private static void .cctor(); // 0x1017BF90 + public override bool Equals(object obj); // 0x10009330 + public bool Equals(SignatureToken obj); // 0x10005A50 + public override int GetHashCode(); // 0x10003A80 + public static bool op_Equality(SignatureToken a, SignatureToken b); // 0x1017BFC0 + public static bool op_Inequality(SignatureToken a, SignatureToken b); // 0x1017C020 +} + +// Namespace: System.Reflection.Emit +[Serializable] +public enum StackBehaviour // TypeDefIndex: 542 +{ + Pop0 = 0, + Pop1 = 1, + Pop1_pop1 = 2, + Popi = 3, + Popi_pop1 = 4, + Popi_popi = 5, + Popi_popi8 = 6, + Popi_popi_popi = 7, + Popi_popr4 = 8, + Popi_popr8 = 9, + Popref = 10, + Popref_pop1 = 11, + Popref_popi = 12, + Popref_popi_popi = 13, + Popref_popi_popi8 = 14, + Popref_popi_popr4 = 15, + Popref_popi_popr8 = 16, + Popref_popi_popref = 17, + Push0 = 18, + Push1 = 19, + Push1_push1 = 20, + Pushi = 21, + Pushi8 = 22, + Pushr4 = 23, + Pushr8 = 24, + Pushref = 25, + Varpop = 26, + Varpush = 27, + Popref_popi_pop1 = 28 +} + +// Namespace: System.Reflection.Emit +[Serializable] +public struct StringToken // TypeDefIndex: 543 +{ + // Fields + internal int tokValue; // 0x08 + + // Properties + public int Token { get; } // 0x10003A80 + + // Methods + internal void .ctor(int val); // 0x10005950 + private static void .cctor(); // 0x100C5530 + public override bool Equals(object obj); // 0x100093B0 + public bool Equals(StringToken obj); // 0x10005A50 + public override int GetHashCode(); // 0x10003A80 + public static bool op_Equality(StringToken a, StringToken b); // 0x1017C090 + public static bool op_Inequality(StringToken a, StringToken b); // 0x1017C0F0 +} + +// Namespace: System.Reflection.Emit +public sealed class TypeBuilder : Type, _TypeBuilder // TypeDefIndex: 544 +{ + // Fields + public const int UnspecifiedTypeSize = 0; // 0x00 + private string tname; // 0x0C + private string nspace; // 0x10 + private Type parent; // 0x14 + private Type nesting_type; // 0x18 + internal Type[] interfaces; // 0x1C + internal int num_methods; // 0x20 + internal MethodBuilder[] methods; // 0x24 + internal ConstructorBuilder[] ctors; // 0x28 + internal PropertyBuilder[] properties; // 0x2C + internal int num_fields; // 0x30 + internal FieldBuilder[] fields; // 0x34 + internal EventBuilder[] events; // 0x38 + private CustomAttributeBuilder[] cattrs; // 0x3C + internal TypeBuilder[] subtypes; // 0x40 + internal TypeAttributes attrs; // 0x44 + private int table_idx; // 0x48 + private ModuleBuilder pmodule; // 0x4C + private int class_size; // 0x50 + private PackingSize packing_size; // 0x54 + private IntPtr generic_container; // 0x58 + private GenericTypeParameterBuilder[] generic_params; // 0x5C + private RefEmitPermissionSet[] permissions; // 0x60 + private Type created; // 0x64 + private string fullname; // 0x68 + private bool createTypeCalled; // 0x6C + private Type underlying_type; // 0x70 + private static Dictionary`2 <>f__switch$map1E; // 0x00 + + // Properties + public override Assembly Assembly { get; } // 0x101819B0 + public override string AssemblyQualifiedName { get; } // 0x10181920 + public override Type BaseType { get; } // 0x100EF0C0 + public override Type DeclaringType { get; } // 0x100EE580 + public override Type UnderlyingSystemType { get; } // 0x10181AF0 + public override string FullName { get; } // 0x1013F890 + public override Guid GUID { get; } // 0x101819D0 + public override Module Module { get; } // 0x10145570 + public override string Name { get; } // 0x100C5B30 + public override string Namespace { get; } // 0x100BFC20 + public PackingSize PackingSize { get; } // 0x10145520 + public int Size { get; } // 0x10132810 + public override Type ReflectedType { get; } // 0x100EE580 + public override RuntimeTypeHandle TypeHandle { get; } // 0x10181A80 + public TypeToken TypeToken { get; } // 0x10181AE0 + internal bool IsCompilerContext { get; } // 0x10181A40 + internal bool is_created { get; } // 0x10180650 + public override bool ContainsGenericParameters { get; } // 0x10132880 + public override bool IsGenericParameter { get; } // 0x10181A70 + public override GenericParameterAttributes GenericParameterAttributes { get; } // 0x100C5600 + public override bool IsGenericTypeDefinition { get; } // 0x10132880 + public override bool IsGenericType { get; } // 0x10132880 + public override int GenericParameterPosition { get; } // 0x100C5600 + public override MethodBase DeclaringMethod { get; } // 0x100C5600 + + // Methods + internal void .ctor(ModuleBuilder mb, TypeAttributes attr, int table_idx); // 0x101813C0 + internal void .ctor(ModuleBuilder mb, string name, TypeAttributes attr, Type parent, Type[] interfaces, PackingSize packing_size, int type_size, Type nesting_type); // 0x101814C0 + private void System.Runtime.InteropServices._TypeBuilder.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x10181280 + private void System.Runtime.InteropServices._TypeBuilder.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x10181320 + private void System.Runtime.InteropServices._TypeBuilder.GetTypeInfoCount(out uint pcTInfo); // 0x101812D0 + private void System.Runtime.InteropServices._TypeBuilder.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x10181370 + protected override TypeAttributes GetAttributeFlagsImpl(); // 0x10145530 + private void setup_internal_class(TypeBuilder tb); // 0x10181DA0 + private void create_internal_class(TypeBuilder tb); // 0x101818E0 + private void setup_generic_class(); // 0x10181D90 + private void create_generic_class(); // 0x101818D0 + private EventInfo get_event_info(EventBuilder eb); // 0x10181BA0 + private string GetFullName(); // 0x1017F1F0 + public void AddDeclarativeSecurity(SecurityAction action, PermissionSet pset); // 0x100C5530 + public void AddInterfaceImplementation(Type interfaceType); // 0x1017C160 + protected override ConstructorInfo GetConstructorImpl(BindingFlags bindingAttr, Binder binder, CallingConventions callConvention, Type[] types, ParameterModifier[] modifiers); // 0x1017E480 + public override bool IsDefined(Type attributeType, bool inherit); // 0x10180660 + public override object[] GetCustomAttributes(bool inherit); // 0x1017EAC0 + public override object[] GetCustomAttributes(Type attributeType, bool inherit); // 0x1017EA50 + public TypeBuilder DefineNestedType(string name); // 0x1017D850 + public TypeBuilder DefineNestedType(string name, TypeAttributes attr); // 0x1017D890 + public TypeBuilder DefineNestedType(string name, TypeAttributes attr, Type parent); // 0x1017D7F0 + private TypeBuilder DefineNestedType(string name, TypeAttributes attr, Type parent, Type[] interfaces, PackingSize packSize, int typeSize); // 0x1017D8D0 + public TypeBuilder DefineNestedType(string name, TypeAttributes attr, Type parent, Type[] interfaces); // 0x1017D820 + public TypeBuilder DefineNestedType(string name, TypeAttributes attr, Type parent, int typeSize); // 0x1017DAB0 + public TypeBuilder DefineNestedType(string name, TypeAttributes attr, Type parent, PackingSize packSize); // 0x1017DAE0 + public ConstructorBuilder DefineConstructor(MethodAttributes attributes, CallingConventions callingConvention, Type[] parameterTypes); // 0x1017CC20 + public ConstructorBuilder DefineConstructor(MethodAttributes attributes, CallingConventions callingConvention, Type[] parameterTypes, Type[][] requiredCustomModifiers, Type[][] optionalCustomModifiers); // 0x1017CA70 + public ConstructorBuilder DefineDefaultConstructor(MethodAttributes attributes); // 0x1017CC40 + private void append_method(MethodBuilder mb); // 0x101816A0 + public MethodBuilder DefineMethod(string name, MethodAttributes attributes, Type returnType, Type[] parameterTypes); // 0x1017D660 + public MethodBuilder DefineMethod(string name, MethodAttributes attributes, CallingConventions callingConvention, Type returnType, Type[] parameterTypes); // 0x1017D6A0 + public MethodBuilder DefineMethod(string name, MethodAttributes attributes, CallingConventions callingConvention, Type returnType, Type[] returnTypeRequiredCustomModifiers, Type[] returnTypeOptionalCustomModifiers, Type[] parameterTypes, Type[][] parameterTypeRequiredCustomModifiers, Type[][] parameterTypeOptionalCustomModifiers); // 0x1017D4E0 + public MethodBuilder DefinePInvokeMethod(string name, string dllName, string entryName, MethodAttributes attributes, CallingConventions callingConvention, Type returnType, Type[] parameterTypes, CallingConvention nativeCallConv, CharSet nativeCharSet); // 0x1017DD40 + public MethodBuilder DefinePInvokeMethod(string name, string dllName, string entryName, MethodAttributes attributes, CallingConventions callingConvention, Type returnType, Type[] returnTypeRequiredCustomModifiers, Type[] returnTypeOptionalCustomModifiers, Type[] parameterTypes, Type[][] parameterTypeRequiredCustomModifiers, Type[][] parameterTypeOptionalCustomModifiers, CallingConvention nativeCallConv, CharSet nativeCharSet); // 0x1017DC20 + public MethodBuilder DefinePInvokeMethod(string name, string dllName, MethodAttributes attributes, CallingConventions callingConvention, Type returnType, Type[] parameterTypes, CallingConvention nativeCallConv, CharSet nativeCharSet); // 0x1017DB10 + public MethodBuilder DefineMethod(string name, MethodAttributes attributes); // 0x1017D680 + public MethodBuilder DefineMethod(string name, MethodAttributes attributes, CallingConventions callingConvention); // 0x1017D640 + public void DefineMethodOverride(MethodInfo methodInfoBody, MethodInfo methodInfoDeclaration); // 0x1017D3E0 + public FieldBuilder DefineField(string fieldName, Type type, FieldAttributes attributes); // 0x1017CFB0 + public FieldBuilder DefineField(string fieldName, Type type, Type[] requiredCustomModifiers, Type[] optionalCustomModifiers, FieldAttributes attributes); // 0x1017CFE0 + public PropertyBuilder DefineProperty(string name, PropertyAttributes attributes, Type returnType, Type[] parameterTypes); // 0x1017DE50 + public PropertyBuilder DefineProperty(string name, PropertyAttributes attributes, Type returnType, Type[] returnTypeRequiredCustomModifiers, Type[] returnTypeOptionalCustomModifiers, Type[] parameterTypes, Type[][] parameterTypeRequiredCustomModifiers, Type[][] parameterTypeOptionalCustomModifiers); // 0x1017DE80 + public ConstructorBuilder DefineTypeInitializer(); // 0x1017E0B0 + private Type create_runtime_class(TypeBuilder tb); // 0x10181900 + private bool is_nested_in(Type t); // 0x10181D00 + private bool has_ctor_method(); // 0x10181BF0 + public Type CreateType(); // 0x1017C2D0 + internal void GenerateDebugInfo(ISymbolWriter symbolWriter); // 0x1017E2A0 + public override ConstructorInfo[] GetConstructors(BindingFlags bindingAttr); // 0x1017E9B0 + internal ConstructorInfo[] GetConstructorsInternal(BindingFlags bindingAttr); // 0x1017E870 + public override Type GetElementType(); // 0x1017EB20 + public override EventInfo GetEvent(string name, BindingFlags bindingAttr); // 0x1017EB70 + public override EventInfo[] GetEvents(); // 0x1017ED90 + public override EventInfo[] GetEvents(BindingFlags bindingAttr); // 0x1017EE30 + internal EventInfo[] GetEvents_internal(BindingFlags bindingAttr); // 0x1017EBE0 + public override FieldInfo GetField(string name, BindingFlags bindingAttr); // 0x1017EED0 + public override FieldInfo[] GetFields(BindingFlags bindingAttr); // 0x1017F080 + public override Type GetInterface(string name, bool ignoreCase); // 0x1017F420 + public override Type[] GetInterfaces(); // 0x1017F490 + public override MemberInfo[] GetMember(string name, MemberTypes type, BindingFlags bindingAttr); // 0x1017F540 + public override MemberInfo[] GetMembers(BindingFlags bindingAttr); // 0x1017F5B0 + private MethodInfo[] GetMethodsByName(string name, BindingFlags bindingAttr, bool ignoreCase, Type reflected_type); // 0x1017FBA0 + public override MethodInfo[] GetMethods(BindingFlags bindingAttr); // 0x1017FF50 + protected override MethodInfo GetMethodImpl(string name, BindingFlags bindingAttr, Binder binder, CallingConventions callConvention, Type[] types, ParameterModifier[] modifiers); // 0x1017F610 + public override Type GetNestedType(string name, BindingFlags bindingAttr); // 0x1017FF70 + public override Type[] GetNestedTypes(BindingFlags bindingAttr); // 0x101800C0 + public override PropertyInfo[] GetProperties(BindingFlags bindingAttr); // 0x10180240 + protected override PropertyInfo GetPropertyImpl(string name, BindingFlags bindingAttr, Binder binder, Type returnType, Type[] types, ParameterModifier[] modifiers); // 0x10180400 + protected override bool HasElementTypeImpl(); // 0x10180440 + public override object InvokeMember(string name, BindingFlags invokeAttr, Binder binder, object target, object[] args, ParameterModifier[] modifiers, CultureInfo culture, string[] namedParameters); // 0x10180470 + protected override bool IsArrayImpl(); // 0x100EFBF0 + protected override bool IsByRefImpl(); // 0x100EFBF0 + protected override bool IsCOMObjectImpl(); // 0x10180640 + protected override bool IsPointerImpl(); // 0x100EFBF0 + protected override bool IsPrimitiveImpl(); // 0x100EFBF0 + protected override bool IsValueTypeImpl(); // 0x10180840 + public override Type MakeArrayType(); // 0x10180930 + public override Type MakeArrayType(int rank); // 0x10180980 + public override Type MakeByRefType(); // 0x10180A00 + public override Type MakeGenericType(Type[] typeArguments); // 0x1012BDB0 + public override Type MakePointerType(); // 0x10180A50 + internal void SetCharSet(TypeAttributes ta); // 0x101455B0 + public void SetCustomAttribute(CustomAttributeBuilder customBuilder); // 0x10180AB0 + public void SetCustomAttribute(ConstructorInfo con, byte[] binaryAttribute); // 0x10181120 + public EventBuilder DefineEvent(string name, EventAttributes attributes, Type eventtype); // 0x1017CE00 + public FieldBuilder DefineInitializedData(string name, byte[] data, FieldAttributes attributes); // 0x1017D350 + public FieldBuilder DefineUninitializedData(string name, int size, FieldAttributes attributes); // 0x1017E0D0 + public void SetParent(Type parent); // 0x10181170 + internal int get_next_table_index(object obj, int table, bool inc); // 0x10181BC0 + public override InterfaceMapping GetInterfaceMap(Type interfaceType); // 0x1017F390 + private Exception not_supported(); // 0x10181D40 + private void check_not_created(); // 0x10181870 + private void check_created(); // 0x10181770 + private void check_name(string argName, string name); // 0x101817C0 + public override string ToString(); // 0x1013F890 + public override bool IsAssignableFrom(Type c); // 0x101804F0 + public override bool IsSubclassOf(Type c); // 0x10180710 + internal bool IsAssignableTo(Type c); // 0x10180500 + public bool IsCreated(); // 0x10180650 + public override Type[] GetGenericArguments(); // 0x1017F2C0 + public override Type GetGenericTypeDefinition(); // 0x1017F330 + public GenericTypeParameterBuilder[] DefineGenericParameters(string[] names); // 0x1017D200 + public static ConstructorInfo GetConstructor(Type type, ConstructorInfo constructor); // 0x1017E7C0 + private static bool IsValidGetMethodType(Type type); // 0x10180720 + public static MethodInfo GetMethod(Type type, MethodInfo method); // 0x1017F950 + public static FieldInfo GetField(Type type, FieldInfo field); // 0x1017F000 +} + +// Namespace: System.Reflection.Emit +[Serializable] +public struct TypeToken // TypeDefIndex: 545 +{ + // Fields + internal int tokValue; // 0x08 + public static readonly TypeToken Empty; // 0x00 + + // Properties + public int Token { get; } // 0x10003A80 + + // Methods + internal void .ctor(int val); // 0x10005950 + private static void .cctor(); // 0x10181DC0 + public override bool Equals(object obj); // 0x10009430 + public bool Equals(TypeToken obj); // 0x10005A50 + public override int GetHashCode(); // 0x10003A80 + public static bool op_Equality(TypeToken a, TypeToken b); // 0x10181DF0 + public static bool op_Inequality(TypeToken a, TypeToken b); // 0x10181E50 +} + +// Namespace: System.Reflection.Emit +[Serializable] +public sealed class UnmanagedMarshal // TypeDefIndex: 546 +{ + // Fields + private int count; // 0x08 + private UnmanagedType t; // 0x0C + private UnmanagedType tbase; // 0x10 + private string guid; // 0x14 + private string mcookie; // 0x18 + private string marshaltype; // 0x1C + private Type marshaltyperef; // 0x20 + private int param_num; // 0x24 + private bool has_size; // 0x28 + + // Properties + public UnmanagedType BaseType { get; } // 0x101822E0 + public int ElementCount { get; } // 0x100BF0C0 + public UnmanagedType GetUnmanagedType { get; } // 0x100C5B30 + public Guid IIDGuid { get; } // 0x10182340 + + // Methods + private void .ctor(UnmanagedType maint, int cnt); // 0x101822B0 + private void .ctor(UnmanagedType maint, UnmanagedType elemt); // 0x10182280 + public static UnmanagedMarshal DefineByValArray(int elemCount); // 0x10181EC0 + public static UnmanagedMarshal DefineByValTStr(int elemCount); // 0x10181F20 + public static UnmanagedMarshal DefineLPArray(UnmanagedType elemType); // 0x101820E0 + public static UnmanagedMarshal DefineSafeArray(UnmanagedType elemType); // 0x10182140 + public static UnmanagedMarshal DefineUnmanagedMarshal(UnmanagedType unmanagedType); // 0x101821A0 + public static UnmanagedMarshal DefineCustom(Type typeref, string cookie, string mtype, Guid id); // 0x10181F80 + internal static UnmanagedMarshal DefineLPArrayInternal(UnmanagedType elemType, int sizeConst, int sizeParamIndex); // 0x10182080 + internal MarshalAsAttribute ToMarshalAsAttribute(); // 0x101821F0 +} + +// Namespace: System.Reflection +[Serializable] +public sealed class AmbiguousMatchException : SystemException // TypeDefIndex: 547 +{ + // Methods + public void .ctor(); // 0x100E5630 + public void .ctor(string message); // 0x100E5680 + public void .ctor(string message, Exception inner); // 0x100E5670 + internal void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 +} + +// Namespace: System.Reflection +[Serializable] +public class Assembly : ICustomAttributeProvider, _Assembly // TypeDefIndex: 548 +{ + // Fields + private IntPtr _mono_assembly; // 0x08 + private ResolveEventHolder resolve_event_holder; // 0x0C + private Evidence _evidence; // 0x10 + internal PermissionSet _minimum; // 0x14 + internal PermissionSet _optional; // 0x18 + internal PermissionSet _refuse; // 0x1C + private PermissionSet _granted; // 0x20 + private PermissionSet _denied; // 0x24 + private bool fromByteArray; // 0x28 + private string assemblyName; // 0x2C + + // Properties + public virtual string CodeBase { get; } // 0x100ED4A0 + public virtual string EscapedCodeBase { get; } // 0x100ED5E0 + public virtual string FullName { get; } // 0x100ED600 + public virtual MethodInfo EntryPoint { get; } // 0x100ED5D0 + public virtual Evidence Evidence { get; } // 0x100ED5F0 + public bool GlobalAssemblyCache { get; } // 0x100E9F80 + internal bool FromByteArray { set; } // 0x100ED880 + public virtual string Location { get; } // 0x100ED750 + public virtual string ImageRuntimeVersion { get; } // 0x100E9EE0 + public long HostContext { get; } // 0x100ED740 + public Module ManifestModule { get; } // 0x100ED7B0 + public virtual bool ReflectionOnly { get; } // 0x100E9F80 + internal PermissionSet GrantedPermissionSet { get; } // 0x100ED620 + internal PermissionSet DeniedPermissionSet { get; } // 0x100ED4B0 + + // Events + public event ModuleResolveEventHandler ModuleResolve { + add; // 0x100ED430 + remove; // 0x100ED810 + } + + // Methods + internal void .ctor(); // 0x100ED3F0 + private string get_code_base(bool escaped); // 0x100EB660 + private string get_fullname(); // 0x100ED7D0 + private string get_location(); // 0x100ED7E0 + private string InternalImageRuntimeVersion(); // 0x100E9EE0 + private string GetCodeBase(bool escaped); // 0x100EB660 + internal Evidence UnprotectedGetEvidence(); // 0x100ED2E0 + private bool get_global_assembly_cache(); // 0x100E9F80 + public virtual void GetObjectData(SerializationInfo info, StreamingContext context); // 0x100EC370 + public virtual bool IsDefined(Type attributeType, bool inherit); // 0x100EC840 + public virtual object[] GetCustomAttributes(bool inherit); // 0x100EB6D0 + public virtual object[] GetCustomAttributes(Type attributeType, bool inherit); // 0x100EB680 + private object GetFilesInternal(string name, bool getResourceModules); // 0x100EB870 + public virtual FileStream[] GetFiles(); // 0x100EB890 + public virtual FileStream[] GetFiles(bool getResourceModules); // 0x100EB8B0 + public virtual FileStream GetFile(string name); // 0x100EB780 + internal IntPtr GetManifestResourceInternal(string name, out int size, out Module module); // 0x100EBC40 + public virtual Stream GetManifestResourceStream(string name); // 0x100EBD60 + public virtual Stream GetManifestResourceStream(Type type, string name); // 0x100EBC70 + internal virtual Type[] GetTypes(bool exportedOnly); // 0x100EC7E0 + public virtual Type[] GetTypes(); // 0x100EC7C0 + public virtual Type[] GetExportedTypes(); // 0x100EB760 + public virtual Type GetType(string name, bool throwOnError); // 0x100EC7A0 + public virtual Type GetType(string name); // 0x100EC6D0 + internal Type InternalGetType(Module module, string name, bool throwOnError, bool ignoreCase); // 0x100EC820 + public Type GetType(string name, bool throwOnError, bool ignoreCase); // 0x100EC6F0 + internal static void InternalGetAssemblyName(string assemblyFile, AssemblyName aname); // 0x100EC800 + private static void FillName(Assembly ass, AssemblyName aname); // 0x100EB5C0 + public virtual AssemblyName GetName(bool copiedName); // 0x100EC2C0 + public virtual AssemblyName GetName(); // 0x100EC340 + internal virtual AssemblyName UnprotectedGetName(); // 0x100ED3A0 + public override string ToString(); // 0x100ED2C0 + public static string CreateQualifiedName(string assemblyName, string typeName); // 0x100EB560 + public static Assembly GetAssembly(Type type); // 0x100EB5E0 + public static Assembly GetEntryAssembly(); // 0x100EB720 + public Assembly GetSatelliteAssembly(CultureInfo culture); // 0x100EC410 + public Assembly GetSatelliteAssembly(CultureInfo culture, Version version); // 0x100EC6B0 + internal Assembly GetSatelliteAssemblyNoThrow(CultureInfo culture, Version version); // 0x100EC3F0 + private Assembly GetSatelliteAssembly(CultureInfo culture, Version version, bool throwOnError); // 0x100EC430 + private static Assembly LoadFrom(string assemblyFile, bool refonly); // 0x100ECC60 + public static Assembly LoadFrom(string assemblyFile); // 0x100ECB60 + public static Assembly LoadFrom(string assemblyFile, Evidence securityEvidence); // 0x100ECC80 + public static Assembly LoadFrom(string assemblyFile, Evidence securityEvidence, byte[] hashValue, AssemblyHashAlgorithm hashAlgorithm); // 0x100ECB70 + public static Assembly LoadFile(string path, Evidence securityEvidence); // 0x100ECA90 + public static Assembly LoadFile(string path); // 0x100ECA90 + public static Assembly Load(string assemblyString); // 0x100ECF60 + public static Assembly Load(string assemblyString, Evidence assemblySecurity); // 0x100ECF00 + public static Assembly Load(AssemblyName assemblyRef); // 0x100ECFF0 + public static Assembly Load(AssemblyName assemblyRef, Evidence assemblySecurity); // 0x100ECED0 + public static Assembly Load(byte[] rawAssembly); // 0x100ECFC0 + public static Assembly Load(byte[] rawAssembly, byte[] rawSymbolStore); // 0x100ECF30 + public static Assembly Load(byte[] rawAssembly, byte[] rawSymbolStore, Evidence securityEvidence); // 0x100ECF90 + public static Assembly ReflectionOnlyLoad(byte[] rawAssembly); // 0x100ED0A0 + public static Assembly ReflectionOnlyLoad(string assemblyString); // 0x100ED0D0 + public static Assembly ReflectionOnlyLoadFrom(string assemblyFile); // 0x100ED030 + public static Assembly LoadWithPartialName(string partialName); // 0x100ECE60 + public Module LoadModule(string moduleName, byte[] rawModule); // 0x100ECCA0 + public Module LoadModule(string moduleName, byte[] rawModule, byte[] rawSymbolStore); // 0x100ECCF0 + private static Assembly load_with_partial_name(string name, Evidence e); // 0x100ED7F0 + public static Assembly LoadWithPartialName(string partialName, Evidence securityEvidence); // 0x100ECD70 + internal static Assembly LoadWithPartialName(string partialName, Evidence securityEvidence, bool oldBehavior); // 0x100ECDD0 + public object CreateInstance(string typeName); // 0x100EB310 + public object CreateInstance(string typeName, bool ignoreCase); // 0x100EB330 + public object CreateInstance(string typeName, bool ignoreCase, BindingFlags bindingAttr, Binder binder, object[] args, CultureInfo culture, object[] activationAttributes); // 0x100EB440 + public Module[] GetLoadedModules(); // 0x100EBB20 + public Module[] GetLoadedModules(bool getResourceModules); // 0x100EBB40 + public Module[] GetModules(); // 0x100EBB20 + public Module GetModule(string name); // 0x100EC010 + internal virtual Module[] GetModulesInternal(); // 0x100EC170 + public Module[] GetModules(bool getResourceModules); // 0x100EC180 + internal string[] GetNamespaces(); // 0x100EC360 + public virtual string[] GetManifestResourceNames(); // 0x100EBC60 + public static Assembly GetExecutingAssembly(); // 0x100EB730 + public static Assembly GetCallingAssembly(); // 0x100EB650 + public AssemblyName[] GetReferencedAssemblies(); // 0x100EC3E0 + private bool GetManifestResourceInfoInternal(string name, ManifestResourceInfo info); // 0x100EBB60 + public virtual ManifestResourceInfo GetManifestResourceInfo(string resourceName); // 0x100EBB80 + internal static int MonoDebugger_GetMethodToken(MethodBase method); // 0x100ED020 + internal virtual Module GetManifestModule(); // 0x100EBB50 + internal Module GetManifestModuleInternal(); // 0x100EBB50 + internal void Resolve(); // 0x100ED100 + internal static bool LoadPermissions(Assembly a, IntPtr minimum, int minLength, IntPtr optional, int optLength, IntPtr refused, int refLength); // 0x100ECD40 + private void LoadAssemblyPermissions(); // 0x100EC890 + virtual Type System.Runtime.InteropServices._Assembly.GetType(); // 0x100ED2B0 +} + +// Namespace: +internal class ResolveEventHolder // TypeDefIndex: 549 +{ + // Fields + private ModuleResolveEventHandler ModuleResolve; // 0x08 + + // Events + public event ModuleResolveEventHandler ModuleResolve { + add; // 0x100F9690 + remove; // 0x100F96F0 + } + + // Methods + public void .ctor(); // 0x100C5530 +} + +// Namespace: +private class ResourceCloseHandler // TypeDefIndex: 550 +{ + // Fields + private Module module; // 0x08 + + // Methods + public void .ctor(Module module); // 0x100EB270 + public void OnClose(object sender, EventArgs e); // 0x100F9750 +} + +// Namespace: System.Reflection +public sealed class AssemblyAlgorithmIdAttribute : Attribute // TypeDefIndex: 551 +{ + // Fields + private uint id; // 0x08 + + // Properties + public uint AlgorithmId { get; } // 0x100BF0C0 + + // Methods + public void .ctor(AssemblyHashAlgorithm algorithmId); // 0x100E5940 + public void .ctor(uint algorithmId); // 0x100E5940 +} + +// Namespace: System.Reflection +public sealed class AssemblyCompanyAttribute : Attribute // TypeDefIndex: 552 +{ + // Fields + private string name; // 0x08 + + // Properties + public string Company { get; } // 0x100BF0C0 + + // Methods + public void .ctor(string company); // 0x100E5940 +} + +// Namespace: System.Reflection +public sealed class AssemblyConfigurationAttribute : Attribute // TypeDefIndex: 553 +{ + // Fields + private string name; // 0x08 + + // Properties + public string Configuration { get; } // 0x100BF0C0 + + // Methods + public void .ctor(string configuration); // 0x100E5940 +} + +// Namespace: System.Reflection +public sealed class AssemblyCopyrightAttribute : Attribute // TypeDefIndex: 554 +{ + // Fields + private string name; // 0x08 + + // Properties + public string Copyright { get; } // 0x100BF0C0 + + // Methods + public void .ctor(string copyright); // 0x100E5940 +} + +// Namespace: System.Reflection +public sealed class AssemblyDefaultAliasAttribute : Attribute // TypeDefIndex: 555 +{ + // Fields + private string name; // 0x08 + + // Properties + public string DefaultAlias { get; } // 0x100BF0C0 + + // Methods + public void .ctor(string defaultAlias); // 0x100E5940 +} + +// Namespace: System.Reflection +public sealed class AssemblyDelaySignAttribute : Attribute // TypeDefIndex: 556 +{ + // Fields + private bool delay; // 0x08 + + // Properties + public bool DelaySign { get; } // 0x100EA020 + + // Methods + public void .ctor(bool delaySign); // 0x100EA000 +} + +// Namespace: System.Reflection +public sealed class AssemblyDescriptionAttribute : Attribute // TypeDefIndex: 557 +{ + // Fields + private string name; // 0x08 + + // Properties + public string Description { get; } // 0x100BF0C0 + + // Methods + public void .ctor(string description); // 0x100E5940 +} + +// Namespace: System.Reflection +public sealed class AssemblyFileVersionAttribute : Attribute // TypeDefIndex: 558 +{ + // Fields + private string name; // 0x08 + + // Properties + public string Version { get; } // 0x100BF0C0 + + // Methods + public void .ctor(string version); // 0x100EA030 +} + +// Namespace: System.Reflection +public sealed class AssemblyFlagsAttribute : Attribute // TypeDefIndex: 559 +{ + // Fields + private uint flags; // 0x08 + + // Properties + public uint Flags { get; } // 0x100BF0C0 + public int AssemblyFlags { get; } // 0x100BF0C0 + + // Methods + public void .ctor(uint flags); // 0x100E5940 + public void .ctor(int assemblyFlags); // 0x100E5940 + public void .ctor(AssemblyNameFlags assemblyFlags); // 0x100E5940 +} + +// Namespace: System.Reflection +public sealed class AssemblyInformationalVersionAttribute : Attribute // TypeDefIndex: 560 +{ + // Fields + private string name; // 0x08 + + // Properties + public string InformationalVersion { get; } // 0x100BF0C0 + + // Methods + public void .ctor(string informationalVersion); // 0x100E5940 +} + +// Namespace: System.Reflection +public sealed class AssemblyKeyFileAttribute : Attribute // TypeDefIndex: 561 +{ + // Fields + private string name; // 0x08 + + // Properties + public string KeyFile { get; } // 0x100BF0C0 + + // Methods + public void .ctor(string keyFile); // 0x100E5940 +} + +// Namespace: System.Reflection +public sealed class AssemblyKeyNameAttribute : Attribute // TypeDefIndex: 562 +{ + // Fields + private string name; // 0x08 + + // Properties + public string KeyName { get; } // 0x100BF0C0 + + // Methods + public void .ctor(string keyName); // 0x100E5940 +} + +// Namespace: System.Reflection +[Serializable] +public sealed class AssemblyName : ICloneable, ISerializable, _AssemblyName, IDeserializationCallback // TypeDefIndex: 563 +{ + // Fields + private string name; // 0x08 + private string codebase; // 0x0C + private int major; // 0x10 + private int minor; // 0x14 + private int build; // 0x18 + private int revision; // 0x1C + private CultureInfo cultureinfo; // 0x20 + private AssemblyNameFlags flags; // 0x24 + private AssemblyHashAlgorithm hashalg; // 0x28 + private StrongNameKeyPair keypair; // 0x2C + private byte[] publicKey; // 0x30 + private byte[] keyToken; // 0x34 + private AssemblyVersionCompatibility versioncompat; // 0x38 + private Version version; // 0x3C + private ProcessorArchitecture processor_architecture; // 0x40 + + // Properties + public ProcessorArchitecture ProcessorArchitecture { get; set; } // 0x100E9E80 0x100EB280 + public string Name { get; set; } // 0x100BF0C0 0x100EB270 + public string CodeBase { get; set; } // 0x100C5B30 0x100C5B50 + public string EscapedCodeBase { get; } // 0x100EACE0 + public CultureInfo CultureInfo { get; set; } // 0x100EACD0 0x100EB230 + public AssemblyNameFlags Flags { get; set; } // 0x100EAD50 0x100EB240 + public string FullName { get; } // 0x100EAD70 + public AssemblyHashAlgorithm HashAlgorithm { get; set; } // 0x100EB040 0x100EB250 + public StrongNameKeyPair KeyPair { get; set; } // 0x100EB200 0x100EB260 + public Version Version { get; set; } // 0x100EB220 0x100EB2A0 + public AssemblyVersionCompatibility VersionCompatibility { get; set; } // 0x100EB210 0x100EB290 + private bool IsPublicKeyValid { get; } // 0x100EB050 + + // Methods + public void .ctor(); // 0x100EA920 + public void .ctor(string assemblyName); // 0x100EA930 + internal void .ctor(SerializationInfo si, StreamingContext sc); // 0x100EAA00 + private void System.Runtime.InteropServices._AssemblyName.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x100EA790 + private void System.Runtime.InteropServices._AssemblyName.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x100EA830 + private void System.Runtime.InteropServices._AssemblyName.GetTypeInfoCount(out uint pcTInfo); // 0x100EA7E0 + private void System.Runtime.InteropServices._AssemblyName.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x100EA880 + private static bool ParseName(AssemblyName aname, string assemblyName); // 0x100EA650 + public override string ToString(); // 0x100EA8D0 + public byte[] GetPublicKey(); // 0x100EA580 + public byte[] GetPublicKeyToken(); // 0x100EA4E0 + private byte[] InternalGetPublicKeyToken(); // 0x100EA590 + private byte[] ComputePublicKeyToken(); // 0x100EA1F0 + public static bool ReferenceMatchesDefinition(AssemblyName reference, AssemblyName definition); // 0x100EA670 + public void SetPublicKey(byte[] publicKey); // 0x100EA760 + public void SetPublicKeyToken(byte[] publicKeyToken); // 0x100EA750 + public void GetObjectData(SerializationInfo info, StreamingContext context); // 0x100EA330 + public object Clone(); // 0x100EA150 + public void OnDeserialization(object sender); // 0x100EA630 + public static AssemblyName GetAssemblyName(string assemblyFile); // 0x100EA280 +} + +// Namespace: System.Reflection +[Serializable] +public enum AssemblyNameFlags // TypeDefIndex: 564 +{ + None = 0, + PublicKey = 1, + Retargetable = 256, + EnableJITcompileOptimizer = 16384, + EnableJITcompileTracking = 32768 +} + +// Namespace: System.Reflection +public class AssemblyNameProxy : MarshalByRefObject // TypeDefIndex: 565 +{ + // Methods + public void .ctor(); // 0x100C5970 + public AssemblyName GetAssemblyName(string assemblyFile); // 0x100EA0A0 +} + +// Namespace: System.Reflection +public sealed class AssemblyProductAttribute : Attribute // TypeDefIndex: 566 +{ + // Fields + private string name; // 0x08 + + // Properties + public string Product { get; } // 0x100BF0C0 + + // Methods + public void .ctor(string product); // 0x100E5940 +} + +// Namespace: System.Reflection +public sealed class AssemblyTitleAttribute : Attribute // TypeDefIndex: 567 +{ + // Fields + private string name; // 0x08 + + // Properties + public string Title { get; } // 0x100BF0C0 + + // Methods + public void .ctor(string title); // 0x100E5940 +} + +// Namespace: System.Reflection +public sealed class AssemblyTrademarkAttribute : Attribute // TypeDefIndex: 568 +{ + // Fields + private string name; // 0x08 + + // Properties + public string Trademark { get; } // 0x100BF0C0 + + // Methods + public void .ctor(string trademark); // 0x100E5940 +} + +// Namespace: System.Reflection +[Serializable] +public abstract class Binder // TypeDefIndex: 569 +{ + // Fields + private static Binder default_binder; // 0x00 + + // Properties + internal static Binder DefaultBinder { get; } // 0x100EDCC0 + + // Methods + protected void .ctor(); // 0x100C5530 + private static void .cctor(); // 0x100EDC40 + public abstract FieldInfo BindToField(BindingFlags bindingAttr, FieldInfo[] match, object value, CultureInfo culture); + public abstract MethodBase BindToMethod(BindingFlags bindingAttr, MethodBase[] match, object[] args, ParameterModifier[] modifiers, CultureInfo culture, string[] names, out object state); + public abstract object ChangeType(object value, Type type, CultureInfo culture); + public abstract void ReorderArgumentArray(object[] args, object state); + public abstract MethodBase SelectMethod(BindingFlags bindingAttr, MethodBase[] match, Type[] types, ParameterModifier[] modifiers); + public abstract PropertyInfo SelectProperty(BindingFlags bindingAttr, PropertyInfo[] match, Type returnType, Type[] indexes, ParameterModifier[] modifiers); + internal static bool ConvertArgs(Binder binder, object[] args, ParameterInfo[] pinfo, CultureInfo culture); // 0x100ED890 + internal static int GetDerivedLevel(Type type); // 0x100EDBD0 + internal static MethodBase FindMostDerivedMatch(MethodBase[] match); // 0x100ED9F0 +} + +// Namespace: +internal sealed class Default : Binder // TypeDefIndex: 570 +{ + // Methods + public void .ctor(); // 0x100F53D0 + public override FieldInfo BindToField(BindingFlags bindingAttr, FieldInfo[] match, object value, CultureInfo culture); // 0x100F4260 + public override MethodBase BindToMethod(BindingFlags bindingAttr, MethodBase[] match, object[] args, ParameterModifier[] modifiers, CultureInfo culture, string[] names, out object state); // 0x100F4340 + private void ReorderParameters(string[] names, object[] args, MethodBase selected); // 0x100F4CA0 + private static bool IsArrayAssignable(Type object_type, Type target_type); // 0x100F4C10 + public override object ChangeType(object value, Type type, CultureInfo culture); // 0x100F44A0 + public override void ReorderArgumentArray(object[] args, object state); // 0x100C5530 + private static bool check_type(Type from, Type to); // 0x100F55E0 + private static bool check_arguments(Type[] types, ParameterInfo[] args, bool allowByRefMatch); // 0x100F5410 + public override MethodBase SelectMethod(BindingFlags bindingAttr, MethodBase[] match, Type[] types, ParameterModifier[] modifiers); // 0x100F51A0 + private MethodBase SelectMethod(BindingFlags bindingAttr, MethodBase[] match, Type[] types, ParameterModifier[] modifiers, bool allowByRefMatch); // 0x100F4E30 + private MethodBase GetBetterMethod(MethodBase m1, MethodBase m2, Type[] types); // 0x100F4950 + private int CompareCloserType(Type t1, Type t2); // 0x100F4780 + public override PropertyInfo SelectProperty(BindingFlags bindingAttr, PropertyInfo[] match, Type returnType, Type[] indexes, ParameterModifier[] modifiers); // 0x100F51C0 + private static int check_arguments_with_score(Type[] types, ParameterInfo[] args); // 0x100F5530 + private static int check_type_with_score(Type from, Type to); // 0x100F5DE0 +} + +// Namespace: System.Reflection +[Serializable] +public enum BindingFlags // TypeDefIndex: 571 +{ + Default = 0, + IgnoreCase = 1, + DeclaredOnly = 2, + Instance = 4, + Static = 8, + Public = 16, + NonPublic = 32, + FlattenHierarchy = 64, + InvokeMethod = 256, + CreateInstance = 512, + GetField = 1024, + SetField = 2048, + GetProperty = 4096, + SetProperty = 8192, + PutDispProperty = 16384, + PutRefDispProperty = 32768, + ExactBinding = 65536, + SuppressChangeType = 131072, + OptionalParamBinding = 262144, + IgnoreReturn = 16777216 +} + +// Namespace: System.Reflection +[Serializable] +public enum CallingConventions // TypeDefIndex: 572 +{ + Standard = 1, + VarArgs = 2, + Any = 3, + HasThis = 32, + ExplicitThis = 64 +} + +// Namespace: System.Reflection +[Serializable] +public abstract class ConstructorInfo : MethodBase, _ConstructorInfo // TypeDefIndex: 573 +{ + // Fields + public static readonly string ConstructorName; // 0x00 + public static readonly string TypeConstructorName; // 0x04 + + // Properties + public override MemberTypes MemberType { get; } // 0x100EF660 + + // Methods + protected void .ctor(); // 0x100C5970 + private static void .cctor(); // 0x100EF620 + private void System.Runtime.InteropServices._ConstructorInfo.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x100EF410 + private void System.Runtime.InteropServices._ConstructorInfo.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x100EF4B0 + private void System.Runtime.InteropServices._ConstructorInfo.GetTypeInfoCount(out uint pcTInfo); // 0x100EF460 + private void System.Runtime.InteropServices._ConstructorInfo.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x100EF5D0 + private object System.Runtime.InteropServices._ConstructorInfo.Invoke_2(object obj, BindingFlags invokeAttr, Binder binder, object[] parameters, CultureInfo culture); // 0x100EF500 + private object System.Runtime.InteropServices._ConstructorInfo.Invoke_3(object obj, object[] parameters); // 0x100EF530 + private object System.Runtime.InteropServices._ConstructorInfo.Invoke_4(BindingFlags invokeAttr, Binder binder, object[] parameters, CultureInfo culture); // 0x100EF540 + private object System.Runtime.InteropServices._ConstructorInfo.Invoke_5(object[] parameters); // 0x100EF570 + public object Invoke(object[] parameters); // 0x100EF3B0 + public abstract object Invoke(BindingFlags invokeAttr, Binder binder, object[] parameters, CultureInfo culture); + virtual Type System.Runtime.InteropServices._ConstructorInfo.GetType(); // 0x100ED2B0 +} + +// Namespace: System.Reflection +[Serializable] +public sealed class CustomAttributeData // TypeDefIndex: 574 +{ + // Fields + private ConstructorInfo ctorInfo; // 0x08 + private IList`1 ctorArgs; // 0x0C + private IList`1 namedArgs; // 0x10 + + // Properties + public ConstructorInfo Constructor { get; } // 0x100BF0C0 + public IList`1 ConstructorArguments { get; } // 0x100C5B30 + public IList`1 NamedArguments { get; } // 0x100BFC20 + + // Methods + internal void .ctor(ConstructorInfo ctorInfo, object[] ctorArgs, object[] namedArgs); // 0x100F2D90 + public static IList`1 GetCustomAttributes(Assembly target); // 0x100F2570 + public static IList`1 GetCustomAttributes(MemberInfo target); // 0x100F2520 + public static IList`1 GetCustomAttributes(Module target); // 0x100F24D0 + public static IList`1 GetCustomAttributes(ParameterInfo target); // 0x100F2480 + public override string ToString(); // 0x100F2910 + private static T[] UnboxValues(object[] values); + public override bool Equals(object obj); // 0x100F21F0 + public override int GetHashCode(); // 0x100F25C0 +} + +// Namespace: System.Reflection +[Serializable] +public class CustomAttributeFormatException : FormatException // TypeDefIndex: 575 +{ + // Methods + public void .ctor(); // 0x100F2E50 + public void .ctor(string message); // 0x100F2EA0 + public void .ctor(string message, Exception inner); // 0x100F2E90 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100F2E30 +} + +// Namespace: System.Reflection +[Serializable] +public struct CustomAttributeNamedArgument // TypeDefIndex: 576 +{ + // Fields + private CustomAttributeTypedArgument typedArgument; // 0x08 + private MemberInfo memberInfo; // 0x10 + + // Properties + public MemberInfo MemberInfo { get; } // 0x100039B0 + public CustomAttributeTypedArgument TypedValue { get; } // 0x100039C0 + + // Methods + internal void .ctor(MemberInfo memberInfo, object typedArgument); // 0x10003940 + public override string ToString(); // 0x10003930 + public override bool Equals(object obj); // 0x10003910 + public override int GetHashCode(); // 0x10003920 + public static bool op_Equality(CustomAttributeNamedArgument left, CustomAttributeNamedArgument right); // 0x100F3070 + public static bool op_Inequality(CustomAttributeNamedArgument left, CustomAttributeNamedArgument right); // 0x100F30D0 +} + +// Namespace: System.Reflection +[Serializable] +public struct CustomAttributeTypedArgument // TypeDefIndex: 577 +{ + // Fields + private Type argumentType; // 0x08 + private object value; // 0x0C + + // Properties + public Type ArgumentType { get; } // 0x10003A80 + public object Value { get; } // 0x10003A90 + + // Methods + internal void .ctor(Type argumentType, object value); // 0x10003A70 + public override string ToString(); // 0x10003A60 + public override bool Equals(object obj); // 0x100039F0 + public override int GetHashCode(); // 0x10003A00 + public static bool op_Equality(CustomAttributeTypedArgument left, CustomAttributeTypedArgument right); // 0x100F35A0 + public static bool op_Inequality(CustomAttributeTypedArgument left, CustomAttributeTypedArgument right); // 0x100F3600 +} + +// Namespace: System.Reflection +[Serializable] +public enum EventAttributes // TypeDefIndex: 578 +{ + None = 0, + SpecialName = 512, + ReservedMask = 1024, + RTSpecialName = 1024 +} + +// Namespace: System.Reflection +[Serializable] +public abstract class EventInfo : MemberInfo, _EventInfo // TypeDefIndex: 579 +{ + // Fields + private AddEventAdapter cached_add_event; // 0x08 + + // Properties + public abstract EventAttributes Attributes { get; } + public Type EventHandlerType { get; } // 0x1016F140 + public bool IsMulticast { get; } // 0x100E5880 + public bool IsSpecialName { get; } // 0x1016F1B0 + public override MemberTypes MemberType { get; } // 0x1016F1E0 + + // Methods + protected void .ctor(); // 0x100BF000 + private void System.Runtime.InteropServices._EventInfo.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x1016F000 + private void System.Runtime.InteropServices._EventInfo.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x1016F0A0 + private void System.Runtime.InteropServices._EventInfo.GetTypeInfoCount(out uint pcTInfo); // 0x1016F050 + private void System.Runtime.InteropServices._EventInfo.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x1016F0F0 + public void AddEventHandler(object target, Delegate handler); // 0x1016E970 + public MethodInfo GetAddMethod(); // 0x1016EE70 + public abstract MethodInfo GetAddMethod(bool nonPublic); + public MethodInfo GetRaiseMethod(); // 0x100EB890 + public abstract MethodInfo GetRaiseMethod(bool nonPublic); + public MethodInfo GetRemoveMethod(); // 0x1016EEE0 + public abstract MethodInfo GetRemoveMethod(bool nonPublic); + public virtual MethodInfo[] GetOtherMethods(bool nonPublic); // 0x1016EEB0 + public MethodInfo[] GetOtherMethods(); // 0x1016EE90 + public void RemoveEventHandler(object target, Delegate handler); // 0x1016EF00 + private static void AddEventFrame(AddEvent`2 addEvent, object obj, object dele); + private static void StaticAddEventAdapterFrame(StaticAddEvent`1 addEvent, object obj, object dele); + private static AddEventAdapter CreateAddEventDelegate(MethodInfo method); // 0x1016EAF0 + virtual Type System.Runtime.InteropServices._EventInfo.GetType(); // 0x1015CD60 +} + +// Namespace: +private delegate void AddEventAdapter(object _this, Delegate dele); // TypeDefIndex: 580; 0x1016E5B0 + +// Namespace: +private delegate void AddEvent`2(T _this, T dele); // TypeDefIndex: 581; 0x00000000 + +// Namespace: +private delegate void StaticAddEvent`1(T dele); // TypeDefIndex: 582; 0x00000000 + +// Namespace: System.Reflection +public sealed class ExceptionHandlingClause // TypeDefIndex: 583 +{ + // Fields + internal Type catch_type; // 0x08 + internal int filter_offset; // 0x0C + internal ExceptionHandlingClauseOptions flags; // 0x10 + internal int try_offset; // 0x14 + internal int try_length; // 0x18 + internal int handler_offset; // 0x1C + internal int handler_length; // 0x20 + + // Properties + public Type CatchType { get; } // 0x100BF0C0 + public int FilterOffset { get; } // 0x100C5B30 + public ExceptionHandlingClauseOptions Flags { get; } // 0x100BFC20 + public int HandlerLength { get; } // 0x100EACD0 + public int HandlerOffset { get; } // 0x100F85F0 + public int TryLength { get; } // 0x100EE580 + public int TryOffset { get; } // 0x100EF0C0 + + // Methods + internal void .ctor(); // 0x100BF000 + public override string ToString(); // 0x1016F1F0 +} + +// Namespace: System.Reflection +public enum ExceptionHandlingClauseOptions // TypeDefIndex: 584 +{ + Clause = 0, + Filter = 1, + Finally = 2, + Fault = 4 +} + +// Namespace: System.Reflection +[Serializable] +public enum FieldAttributes // TypeDefIndex: 585 +{ + PrivateScope = 0, + Private = 1, + FamANDAssem = 2, + Assembly = 3, + Family = 4, + FamORAssem = 5, + Public = 6, + FieldAccessMask = 7, + Static = 16, + InitOnly = 32, + Literal = 64, + NotSerialized = 128, + HasFieldRVA = 256, + SpecialName = 512, + RTSpecialName = 1024, + HasFieldMarshal = 4096, + PinvokeImpl = 8192, + HasDefault = 32768, + ReservedMask = 38144 +} + +// Namespace: System.Reflection +[Serializable] +public abstract class FieldInfo : MemberInfo, _FieldInfo // TypeDefIndex: 586 +{ + // Properties + public abstract FieldAttributes Attributes { get; } + public abstract RuntimeFieldHandle FieldHandle { get; } + public abstract Type FieldType { get; } + public override MemberTypes MemberType { get; } // 0x100FCEA0 + public bool IsLiteral { get; } // 0x1016FE00 + public bool IsStatic { get; } // 0x1016FF20 + public bool IsInitOnly { get; } // 0x1016FDD0 + public bool IsPublic { get; } // 0x1016FEC0 + public bool IsPrivate { get; } // 0x1016FE90 + public bool IsFamily { get; } // 0x1016FDA0 + public bool IsAssembly { get; } // 0x1016FD10 + public bool IsFamilyAndAssembly { get; } // 0x1016FD40 + public bool IsFamilyOrAssembly { get; } // 0x1016FD70 + public bool IsPinvokeImpl { get; } // 0x1016FE60 + public bool IsSpecialName { get; } // 0x1016FEF0 + public bool IsNotSerialized { get; } // 0x1016FE30 + internal virtual UnmanagedMarshal UMarshal { get; } // 0x10104640 + + // Methods + protected void .ctor(); // 0x100BF000 + private void System.Runtime.InteropServices._FieldInfo.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x1016FBD0 + private void System.Runtime.InteropServices._FieldInfo.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x1016FC70 + private void System.Runtime.InteropServices._FieldInfo.GetTypeInfoCount(out uint pcTInfo); // 0x1016FC20 + private void System.Runtime.InteropServices._FieldInfo.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x1016FCC0 + public abstract object GetValue(object obj); + public abstract void SetValue(object obj, object value, BindingFlags invokeAttr, Binder binder, CultureInfo culture); + public void SetValue(object obj, object value); // 0x1016FBA0 + private static FieldInfo internal_from_handle_type(IntPtr field_handle, IntPtr type_handle); // 0x1016FF50 + public static FieldInfo GetFieldFromHandle(RuntimeFieldHandle handle); // 0x1016F640 + public static FieldInfo GetFieldFromHandle(RuntimeFieldHandle handle, RuntimeTypeHandle declaringType); // 0x1016F5B0 + internal virtual int GetFieldOffset(); // 0x1016F6C0 + public virtual object GetValueDirect(TypedReference obj); // 0x1016FB00 + public virtual void SetValueDirect(TypedReference obj, object value); // 0x1016FB50 + private UnmanagedMarshal GetUnmanagedMarshal(); // 0x10104640 + internal object[] GetPseudoCustomAttributes(); // 0x1016F770 + private Type[] GetTypeModifiers(bool optional); // 0x1016FAE0 + public virtual Type[] GetOptionalCustomModifiers(); // 0x1016F710 + public virtual Type[] GetRequiredCustomModifiers(); // 0x1016FA80 + public virtual object GetRawConstantValue(); // 0x1016FA30 + virtual Type System.Runtime.InteropServices._FieldInfo.GetType(); // 0x1015CD60 +} + +// Namespace: System.Reflection +public enum GenericParameterAttributes // TypeDefIndex: 587 +{ + None = 0, + Covariant = 1, + Contravariant = 2, + VarianceMask = 3, + ReferenceTypeConstraint = 4, + NotNullableValueTypeConstraint = 8, + DefaultConstructorConstraint = 16, + SpecialConstraintMask = 28 +} + +// Namespace: System.Reflection +[Serializable] +public enum ImageFileMachine // TypeDefIndex: 588 +{ + I386 = 332, + IA64 = 512, + AMD64 = 34404 +} + +// Namespace: System.Reflection +public struct InterfaceMapping // TypeDefIndex: 589 +{ + // Fields + public MethodInfo[] InterfaceMethods; // 0x08 + public Type InterfaceType; // 0x0C + public MethodInfo[] TargetMethods; // 0x10 + public Type TargetType; // 0x14 + +} + +// Namespace: System.Reflection +[Serializable] +public class InvalidFilterCriteriaException : ApplicationException // TypeDefIndex: 590 +{ + // Methods + public void .ctor(); // 0x10170340 + public void .ctor(string message); // 0x10170380 + public void .ctor(string message, Exception inner); // 0x10170330 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 +} + +// Namespace: System.Reflection +public class LocalVariableInfo // TypeDefIndex: 591 +{ + // Fields + internal Type type; // 0x08 + internal bool is_pinned; // 0x0C + internal ushort position; // 0x0E + + // Properties + public virtual bool IsPinned { get; } // 0x100F8910 + public virtual int LocalIndex { get; } // 0x101308F0 + public virtual Type LocalType { get; } // 0x100BF0C0 + + // Methods + internal void .ctor(); // 0x100BF000 + public override string ToString(); // 0x10170390 +} + +// Namespace: System.Reflection +public class ManifestResourceInfo // TypeDefIndex: 592 +{ + // Fields + private Assembly _assembly; // 0x08 + private string _filename; // 0x0C + private ResourceLocation _location; // 0x10 + + // Properties + public virtual string FileName { get; } // 0x100C5B30 + public virtual Assembly ReferencedAssembly { get; } // 0x100BF0C0 + public virtual ResourceLocation ResourceLocation { get; } // 0x100BFC20 + + // Methods + internal void .ctor(); // 0x100BF000 + internal void .ctor(Assembly assembly, string filename, ResourceLocation location); // 0x10127920 +} + +// Namespace: System.Reflection +[Serializable] +internal class MemberInfoSerializationHolder : ISerializable, IObjectReference // TypeDefIndex: 593 +{ + // Fields + private const BindingFlags DefaultBinding = 60; // 0x00 + private readonly string _memberName; // 0x08 + private readonly string _memberSignature; // 0x0C + private readonly MemberTypes _memberType; // 0x10 + private readonly Type _reflectedType; // 0x14 + private readonly Type[] _genericArguments; // 0x18 + + // Methods + private void .ctor(SerializationInfo info, StreamingContext ctx); // 0x10170FC0 + public static void Serialize(SerializationInfo info, string name, Type klass, string signature, MemberTypes type); // 0x10170FA0 + public static void Serialize(SerializationInfo info, string name, Type klass, string signature, MemberTypes type, Type[] genericArguments); // 0x10170E20 + public void GetObjectData(SerializationInfo info, StreamingContext context); // 0x10170830 + public object GetRealObject(StreamingContext context); // 0x10170880 +} + +// Namespace: System.Reflection +[Serializable] +public enum MemberTypes // TypeDefIndex: 594 +{ + Constructor = 1, + Event = 2, + Field = 4, + Method = 8, + Property = 16, + TypeInfo = 32, + Custom = 64, + NestedType = 128, + All = 191 +} + +// Namespace: System.Reflection +[Serializable] +public enum MethodAttributes // TypeDefIndex: 595 +{ + PrivateScope = 0, + ReuseSlot = 0, + Private = 1, + FamANDAssem = 2, + Assembly = 3, + Family = 4, + FamORAssem = 5, + Public = 6, + MemberAccessMask = 7, + UnmanagedExport = 8, + Static = 16, + Final = 32, + Virtual = 64, + HideBySig = 128, + VtableLayoutMask = 256, + NewSlot = 256, + CheckAccessOnOverride = 512, + Abstract = 1024, + SpecialName = 2048, + RTSpecialName = 4096, + PinvokeImpl = 8192, + HasSecurity = 16384, + RequireSecObject = 32768, + ReservedMask = 53248 +} + +// Namespace: System.Reflection +[Serializable] +public abstract class MethodBase : MemberInfo, _MethodBase // TypeDefIndex: 596 +{ + // Properties + public abstract RuntimeMethodHandle MethodHandle { get; } + public abstract MethodAttributes Attributes { get; } + public virtual CallingConventions CallingConvention { get; } // 0x100EF660 + public bool IsPublic { get; } // 0x10171880 + public bool IsPrivate { get; } // 0x10171850 + public bool IsFamily { get; } // 0x101717C0 + public bool IsAssembly { get; } // 0x101716A0 + public bool IsFamilyAndAssembly { get; } // 0x10171760 + public bool IsFamilyOrAssembly { get; } // 0x10171790 + public bool IsStatic { get; } // 0x101718E0 + public bool IsFinal { get; } // 0x101717F0 + public bool IsVirtual { get; } // 0x10171910 + public bool IsHideBySig { get; } // 0x10171820 + public bool IsAbstract { get; } // 0x10171670 + public bool IsSpecialName { get; } // 0x101718B0 + public bool IsConstructor { get; } // 0x101716D0 + public virtual bool ContainsGenericParameters { get; } // 0x100EFBF0 + public virtual bool IsGenericMethodDefinition { get; } // 0x100EFBF0 + public virtual bool IsGenericMethod { get; } // 0x100EFBF0 + + // Methods + protected void .ctor(); // 0x100BF000 + private void System.Runtime.InteropServices._MethodBase.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x10171530 + private void System.Runtime.InteropServices._MethodBase.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x101715D0 + private void System.Runtime.InteropServices._MethodBase.GetTypeInfoCount(out uint pcTInfo); // 0x10171580 + private void System.Runtime.InteropServices._MethodBase.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x10171620 + public static MethodBase GetCurrentMethod(); // 0x10171230 + internal static MethodBase GetMethodFromHandleNoGenericCheck(RuntimeMethodHandle handle); // 0x10171340 + private static MethodBase GetMethodFromIntPtr(IntPtr handle, IntPtr declaringType); // 0x10171450 + public static MethodBase GetMethodFromHandle(RuntimeMethodHandle handle); // 0x10171380 + private static MethodBase GetMethodFromHandleInternalType(IntPtr method_handle, IntPtr type_handle); // 0x10171320 + public static MethodBase GetMethodFromHandle(RuntimeMethodHandle handle, RuntimeTypeHandle declaringType); // 0x10171440 + public abstract MethodImplAttributes GetMethodImplementationFlags(); + public abstract ParameterInfo[] GetParameters(); + internal virtual int GetParameterCount(); // 0x101714D0 + public object Invoke(object obj, object[] parameters); // 0x10171500 + public abstract object Invoke(object obj, BindingFlags invokeAttr, Binder binder, object[] parameters, CultureInfo culture); + internal virtual int get_next_table_index(object obj, int table, bool inc); // 0x10171940 + public virtual Type[] GetGenericArguments(); // 0x10171270 + internal static MethodBody GetMethodBodyInternal(IntPtr handle); // 0x101712C0 + internal static MethodBody GetMethodBody(IntPtr handle); // 0x101712C0 + public virtual MethodBody GetMethodBody(); // 0x101712D0 + virtual Type System.Runtime.InteropServices._MethodBase.GetType(); // 0x1015CD60 +} + +// Namespace: System.Reflection +public sealed class MethodBody // TypeDefIndex: 597 +{ + // Fields + private ExceptionHandlingClause[] clauses; // 0x08 + private LocalVariableInfo[] locals; // 0x0C + private byte[] il; // 0x10 + private bool init_locals; // 0x14 + private int sig_token; // 0x18 + private int max_stack; // 0x1C + + // Properties + public IList`1 ExceptionHandlingClauses { get; } // 0x10171A00 + public IList`1 LocalVariables { get; } // 0x10171A40 + public bool InitLocals { get; } // 0x100C5670 + public int LocalSignatureMetadataToken { get; } // 0x100EE580 + public int MaxStackSize { get; } // 0x100F85F0 + + // Methods + internal void .ctor(); // 0x100BF000 + public byte[] GetILAsByteArray(); // 0x100BFC20 +} + +// Namespace: System.Reflection +[Serializable] +public enum MethodImplAttributes // TypeDefIndex: 598 +{ + IL = 0, + Managed = 0, + Native = 1, + OPTIL = 2, + CodeTypeMask = 3, + Runtime = 3, + ManagedMask = 4, + Unmanaged = 4, + NoInlining = 8, + ForwardRef = 16, + Synchronized = 32, + PreserveSig = 128, + InternalCall = 4096, + MaxMethodImplVal = 65535 +} + +// Namespace: System.Reflection +[Serializable] +public abstract class MethodInfo : MethodBase, _MethodInfo // TypeDefIndex: 599 +{ + // Properties + public override MemberTypes MemberType { get; } // 0x10171CD0 + public virtual Type ReturnType { get; } // 0x100C5600 + public abstract ICustomAttributeProvider ReturnTypeCustomAttributes { get; } + public override bool IsGenericMethod { get; } // 0x100EFBF0 + public override bool IsGenericMethodDefinition { get; } // 0x100EFBF0 + public override bool ContainsGenericParameters { get; } // 0x100EFBF0 + public virtual ParameterInfo ReturnParameter { get; } // 0x10171CE0 + + // Methods + protected void .ctor(); // 0x100BF000 + private void System.Runtime.InteropServices._MethodInfo.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x10171B90 + private void System.Runtime.InteropServices._MethodInfo.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x10171C30 + private void System.Runtime.InteropServices._MethodInfo.GetTypeInfoCount(out uint pcTInfo); // 0x10171BE0 + private void System.Runtime.InteropServices._MethodInfo.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x10171C80 + public abstract MethodInfo GetBaseDefinition(); + public virtual MethodInfo GetGenericMethodDefinition(); // 0x10171AD0 + public virtual MethodInfo MakeGenericMethod(Type[] typeArguments); // 0x10171B20 + public override Type[] GetGenericArguments(); // 0x10171A80 + virtual Type System.Runtime.InteropServices._MethodInfo.GetType(); // 0x1015CD60 +} + +// Namespace: System.Reflection +[Serializable] +public sealed class Missing : ISerializable // TypeDefIndex: 600 +{ + // Fields + public static readonly Missing Value; // 0x00 + + // Methods + internal void .ctor(); // 0x100BF000 + private static void .cctor(); // 0x10171D30 + private void System.Runtime.Serialization.ISerializable.GetObjectData(SerializationInfo info, StreamingContext context); // 0x100C5530 +} + +// Namespace: System.Reflection +internal enum ResolveTokenError // TypeDefIndex: 601 +{ + OutOfRange = 0, + BadTable = 1, + Other = 2 +} + +// Namespace: System.Reflection +[Serializable] +public class Module : ISerializable, ICustomAttributeProvider, _Module // TypeDefIndex: 602 +{ + // Fields + private const BindingFlags defaultBindingFlags = 28; // 0x00 + public static readonly TypeFilter FilterTypeName; // 0x00 + public static readonly TypeFilter FilterTypeNameIgnoreCase; // 0x04 + private IntPtr _impl; // 0x08 + internal Assembly assembly; // 0x0C + internal string fqname; // 0x10 + internal string name; // 0x14 + internal string scopename; // 0x18 + internal bool is_resource; // 0x1C + internal int token; // 0x20 + + // Properties + public Assembly Assembly { get; } // 0x100C5B30 + public virtual string FullyQualifiedName { get; } // 0x100BFC20 + public string Name { get; } // 0x100EF0C0 + public string ScopeName { get; } // 0x100EE580 + public ModuleHandle ModuleHandle { get; } // 0x100BF0C0 + public int MetadataToken { get; } // 0x10173720 + public int MDStreamVersion { get; } // 0x10173690 + internal Guid MvId { get; } // 0x10173730 + public Guid ModuleVersionId { get; } // 0x10173730 + + // Methods + internal void .ctor(); // 0x100BF000 + private static void .cctor(); // 0x10173420 + private void System.Runtime.InteropServices._Module.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x101732E0 + private void System.Runtime.InteropServices._Module.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x10173380 + private void System.Runtime.InteropServices._Module.GetTypeInfoCount(out uint pcTInfo); // 0x10173330 + private void System.Runtime.InteropServices._Module.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x101733D0 + internal static int GetMDStreamVersion(IntPtr module_handle); // 0x101724C0 + public virtual Type[] FindTypes(TypeFilter filter, object filterCriteria); // 0x10172140 + public virtual object[] GetCustomAttributes(bool inherit); // 0x101722A0 + public virtual object[] GetCustomAttributes(Type attributeType, bool inherit); // 0x101722F0 + public FieldInfo GetField(string name); // 0x10172380 + public FieldInfo GetField(string name, BindingFlags bindingAttr); // 0x10172340 + public FieldInfo[] GetFields(); // 0x101723C0 + public MethodInfo GetMethod(string name); // 0x10172500 + public MethodInfo GetMethod(string name, Type[] types); // 0x10172560 + public MethodInfo GetMethod(string name, BindingFlags bindingAttr, Binder binder, CallingConventions callConvention, Type[] types, ParameterModifier[] modifiers); // 0x10172530 + protected virtual MethodInfo GetMethodImpl(string name, BindingFlags bindingAttr, Binder binder, CallingConventions callConvention, Type[] types, ParameterModifier[] modifiers); // 0x101724D0 + public MethodInfo[] GetMethods(); // 0x10172600 + public MethodInfo[] GetMethods(BindingFlags bindingFlags); // 0x10172590 + public FieldInfo[] GetFields(BindingFlags bindingFlags); // 0x10172430 + public virtual void GetObjectData(SerializationInfo info, StreamingContext context); // 0x10172690 + public virtual Type GetType(string className); // 0x10135BF0 + public virtual Type GetType(string className, bool ignoreCase); // 0x10135E90 + public virtual Type GetType(string className, bool throwOnError, bool ignoreCase); // 0x10172750 + private Type[] InternalGetTypes(); // 0x10172830 + public virtual Type[] GetTypes(); // 0x10172830 + public virtual bool IsDefined(Type attributeType, bool inherit); // 0x10172840 + public bool IsResource(); // 0x10172890 + public override string ToString(); // 0x100EF0C0 + public void GetPEKind(out PortableExecutableKinds peKind, out ImageFileMachine machine); // 0x10172720 + private Exception resolve_token_exception(int metadataToken, ResolveTokenError error, string tokenType); // 0x10173850 + private IntPtr[] ptrs_from_types(Type[] types); // 0x10173760 + public FieldInfo ResolveField(int metadataToken); // 0x10172AB0 + public FieldInfo ResolveField(int metadataToken, Type[] genericTypeArguments, Type[] genericMethodArguments); // 0x10172980 + public MemberInfo ResolveMember(int metadataToken); // 0x10172CC0 + public MemberInfo ResolveMember(int metadataToken, Type[] genericTypeArguments, Type[] genericMethodArguments); // 0x10172C00 + public MethodBase ResolveMethod(int metadataToken); // 0x10172DA0 + public MethodBase ResolveMethod(int metadataToken, Type[] genericTypeArguments, Type[] genericMethodArguments); // 0x10172E90 + public string ResolveString(int metadataToken); // 0x10173050 + public Type ResolveType(int metadataToken); // 0x10173100 + public Type ResolveType(int metadataToken, Type[] genericTypeArguments, Type[] genericMethodArguments); // 0x101731F0 + public byte[] ResolveSignature(int metadataToken); // 0x10172F80 + internal static Type MonoDebugger_ResolveType(Module module, int token); // 0x101728A0 + internal static Guid Mono_GetGuid(Module module); // 0x10136000 + internal virtual Guid GetModuleVersionId(); // 0x10172660 + private static bool filter_by_type_name(Type m, object filterCriteria); // 0x101735B0 + private static bool filter_by_type_name_ignore_case(Type m, object filterCriteria); // 0x101734A0 + internal IntPtr GetHINSTANCE(); // 0x10104640 + private string GetGuidInternal(); // 0x101724B0 + private Type GetGlobalType(); // 0x101724A0 + internal static IntPtr ResolveTypeToken(IntPtr module, int token, IntPtr[] type_args, IntPtr[] method_args, out ResolveTokenError error); // 0x101730E0 + internal static IntPtr ResolveMethodToken(IntPtr module, int token, IntPtr[] type_args, IntPtr[] method_args, out ResolveTokenError error); // 0x10172D80 + internal static IntPtr ResolveFieldToken(IntPtr module, int token, IntPtr[] type_args, IntPtr[] method_args, out ResolveTokenError error); // 0x10172960 + internal static string ResolveStringToken(IntPtr module, int token, out ResolveTokenError error); // 0x10173030 + internal static MemberInfo ResolveMemberToken(IntPtr module, int token, IntPtr[] type_args, IntPtr[] method_args, out ResolveTokenError error); // 0x10172BE0 + internal static byte[] ResolveSignature(IntPtr module, int metadataToken, out ResolveTokenError error); // 0x10173010 + internal static void GetPEKind(IntPtr module, out PortableExecutableKinds peKind, out ImageFileMachine machine); // 0x10172700 +} + +// Namespace: System.Reflection +internal struct MonoEventInfo // TypeDefIndex: 603 +{ + // Fields + public Type declaring_type; // 0x08 + public Type reflected_type; // 0x0C + public string name; // 0x10 + public MethodInfo add_method; // 0x14 + public MethodInfo remove_method; // 0x18 + public MethodInfo raise_method; // 0x1C + public EventAttributes attrs; // 0x20 + public MethodInfo[] other_methods; // 0x24 + + // Methods + private static void get_event_info(MonoEvent ev, out MonoEventInfo info); // 0x101749D0 + internal static MonoEventInfo GetEventInfo(MonoEvent ev); // 0x101749A0 +} + +// Namespace: System.Reflection +[Serializable] +internal sealed class MonoEvent : EventInfo, ISerializable // TypeDefIndex: 604 +{ + // Fields + private IntPtr klass; // 0x0C + private IntPtr handle; // 0x10 + + // Properties + public override EventAttributes Attributes { get; } // 0x10174F70 + public override Type DeclaringType { get; } // 0x10174FA0 + public override Type ReflectedType { get; } // 0x10175000 + public override string Name { get; } // 0x10174FD0 + + // Methods + public void .ctor(); // 0x100BF000 + public override MethodInfo GetAddMethod(bool nonPublic); // 0x101749F0 + public override MethodInfo GetRaiseMethod(bool nonPublic); // 0x10174D80 + public override MethodInfo GetRemoveMethod(bool nonPublic); // 0x10174DE0 + public override MethodInfo[] GetOtherMethods(bool nonPublic); // 0x10174C20 + public override string ToString(); // 0x10174E90 + public override bool IsDefined(Type attributeType, bool inherit); // 0x10174E40 + public override object[] GetCustomAttributes(bool inherit); // 0x10174AA0 + public override object[] GetCustomAttributes(Type attributeType, bool inherit); // 0x10174A50 + public void GetObjectData(SerializationInfo info, StreamingContext context); // 0x10174AF0 +} + +// Namespace: System.Reflection +[Serializable] +internal class MonoField : FieldInfo, ISerializable // TypeDefIndex: 605 +{ + // Fields + internal IntPtr klass; // 0x08 + internal RuntimeFieldHandle fhandle; // 0x0C + private string name; // 0x10 + private Type type; // 0x14 + private FieldAttributes attrs; // 0x18 + + // Properties + public override FieldAttributes Attributes { get; } // 0x100EE580 + public override RuntimeFieldHandle FieldHandle { get; } // 0x100C5B30 + public override Type FieldType { get; } // 0x100EF0C0 + public override Type ReflectedType { get; } // 0x10175810 + public override Type DeclaringType { get; } // 0x10175800 + public override string Name { get; } // 0x100BFC20 + + // Methods + public void .ctor(); // 0x100BF000 + private Type GetParentType(bool declaring); // 0x10175240 + public override bool IsDefined(Type attributeType, bool inherit); // 0x10175410 + public override object[] GetCustomAttributes(bool inherit); // 0x10175130 + public override object[] GetCustomAttributes(Type attributeType, bool inherit); // 0x10175180 + internal override int GetFieldOffset(); // 0x101751D0 + private object GetValueInternal(object obj); // 0x10175270 + public override object GetValue(object obj); // 0x10175290 + public override string ToString(); // 0x101757A0 + private static void SetValueInternal(FieldInfo fi, object obj, object value); // 0x10175460 + public override void SetValue(object obj, object val, BindingFlags invokeAttr, Binder binder, CultureInfo culture); // 0x10175480 + internal MonoField Clone(string newName); // 0x101750C0 + public void GetObjectData(SerializationInfo info, StreamingContext context); // 0x101751E0 + public override object GetRawConstantValue(); // 0x10175260 + private void CheckGeneric(); // 0x10175030 +} + +// Namespace: System.Reflection +internal class MonoGenericClass : MonoType // TypeDefIndex: 606 +{ + // Fields + private const BindingFlags flags = 62; // 0x00 + internal TypeBuilder generic_type; // 0x10 + private Type[] type_arguments; // 0x14 + private bool initialized; // 0x18 + private Hashtable fields; // 0x1C + private Hashtable ctors; // 0x20 + private Hashtable methods; // 0x24 + private int event_count; // 0x28 + + // Properties + public override Type BaseType { get; } // 0x10178010 + public override Type UnderlyingSystemType { get; } // 0x100F7810 + public override string Name { get; } // 0x101780C0 + public override string Namespace { get; } // 0x101780E0 + public override string FullName { get; } // 0x10178050 + public override string AssemblyQualifiedName { get; } // 0x10177FF0 + public override Guid GUID { get; } // 0x10178070 + + // Methods + internal void .ctor(); // 0x10177D20 + internal void .ctor(TypeBuilder tb, Type[] args); // 0x10177D80 + private void initialize(MethodInfo[] methods, ConstructorInfo[] ctors, FieldInfo[] fields, PropertyInfo[] properties, EventInfo[] events); // 0x10178240 + private void initialize(); // 0x10178100 + private Type GetParentType(); // 0x101771A0 + internal Type InflateType(Type type); // 0x10177970 + internal Type InflateType(Type type, Type[] method_args); // 0x101775D0 + private Type[] GetInterfacesInternal(); // 0x101769A0 + public override Type[] GetInterfaces(); // 0x10176AA0 + protected override bool IsValueTypeImpl(); // 0x10177B60 + internal override MethodInfo GetMethod(MethodInfo fromNoninstanciated); // 0x10176BD0 + internal override ConstructorInfo GetConstructor(ConstructorInfo fromNoninstanciated); // 0x10175910 + internal override FieldInfo GetField(FieldInfo fromNoninstanciated); // 0x101763C0 + public override MethodInfo[] GetMethods(BindingFlags bf); // 0x10176F40 + private MethodInfo[] GetMethodsInternal(BindingFlags bf, MonoGenericClass reftype); // 0x10176DA0 + public override ConstructorInfo[] GetConstructors(BindingFlags bf); // 0x10175C90 + private ConstructorInfo[] GetConstructorsInternal(BindingFlags bf, MonoGenericClass reftype); // 0x10175AE0 + public override FieldInfo[] GetFields(BindingFlags bf); // 0x10176780 + private FieldInfo[] GetFieldsInternal(BindingFlags bf, MonoGenericClass reftype); // 0x101765E0 + public override PropertyInfo[] GetProperties(BindingFlags bf); // 0x101773A0 + private PropertyInfo[] GetPropertiesInternal(BindingFlags bf, MonoGenericClass reftype); // 0x101771D0 + public override EventInfo[] GetEvents(BindingFlags bf); // 0x101761E0 + private EventInfo[] GetEventsInternal(BindingFlags bf, MonoGenericClass reftype); // 0x10176040 + public override Type[] GetNestedTypes(BindingFlags bf); // 0x10177170 + public override bool IsAssignableFrom(Type c); // 0x101779E0 + private string format_name(bool full_name, bool assembly_qualified); // 0x10177DB0 + public override string ToString(); // 0x10177D00 + public override Type MakeArrayType(); // 0x10177C10 + public override Type MakeArrayType(int rank); // 0x10177B90 + public override Type MakeByRefType(); // 0x10177C60 + public override Type MakePointerType(); // 0x10177CB0 + protected override bool IsCOMObjectImpl(); // 0x100EFBF0 + protected override bool IsPrimitiveImpl(); // 0x100EFBF0 + protected override TypeAttributes GetAttributeFlagsImpl(); // 0x10175890 + public override Type GetInterface(string name, bool ignoreCase); // 0x10176950 + public override EventInfo GetEvent(string name, BindingFlags bindingAttr); // 0x10175F00 + public override FieldInfo GetField(string name, BindingFlags bindingAttr); // 0x10176590 + public override MemberInfo[] GetMembers(BindingFlags bindingAttr); // 0x10176B30 + public override Type GetNestedType(string name, BindingFlags bindingAttr); // 0x10177120 + public override object InvokeMember(string name, BindingFlags invokeAttr, Binder binder, object target, object[] args, ParameterModifier[] modifiers, CultureInfo culture, string[] namedParameters); // 0x10177990 + protected override MethodInfo GetMethodImpl(string name, BindingFlags bindingAttr, Binder binder, CallingConventions callConvention, Type[] types, ParameterModifier[] modifiers); // 0x10176B80 + protected override PropertyInfo GetPropertyImpl(string name, BindingFlags bindingAttr, Binder binder, Type returnType, Type[] types, ParameterModifier[] modifiers); // 0x10177580 + protected override ConstructorInfo GetConstructorImpl(BindingFlags bindingAttr, Binder binder, CallingConventions callConvention, Type[] types, ParameterModifier[] modifiers); // 0x101758C0 + public override bool IsDefined(Type attributeType, bool inherit); // 0x10177B10 + public override object[] GetCustomAttributes(bool inherit); // 0x10175E60 + public override object[] GetCustomAttributes(Type attributeType, bool inherit); // 0x10175EB0 +} + +// Namespace: System.Reflection +[Serializable] +internal class MonoGenericMethod : MonoMethod // TypeDefIndex: 607 +{ + // Properties + public override Type ReflectedType { get; } // 0x101782C0 + + // Methods + internal void .ctor(); // 0x10178260 +} + +// Namespace: System.Reflection +[Serializable] +internal class MonoGenericCMethod : MonoCMethod // TypeDefIndex: 608 +{ + // Properties + public override Type ReflectedType { get; } // 0x10175880 + + // Methods + internal void .ctor(); // 0x10175820 +} + +// Namespace: System.Reflection +internal struct MonoMethodInfo // TypeDefIndex: 609 +{ + // Fields + private Type parent; // 0x08 + private Type ret; // 0x0C + internal MethodAttributes attrs; // 0x10 + internal MethodImplAttributes iattrs; // 0x14 + private CallingConventions callconv; // 0x18 + + // Methods + private static void get_method_info(IntPtr handle, out MonoMethodInfo info); // 0x10178490 + internal static MonoMethodInfo GetMethodInfo(IntPtr handle); // 0x10178390 + internal static Type GetDeclaringType(IntPtr handle); // 0x10178330 + internal static Type GetReturnType(IntPtr handle); // 0x10178460 + internal static MethodAttributes GetAttributes(IntPtr handle); // 0x101782D0 + internal static CallingConventions GetCallingConvention(IntPtr handle); // 0x10178300 + internal static MethodImplAttributes GetMethodImplementationFlags(IntPtr handle); // 0x10178360 + private static ParameterInfo[] get_parameter_info(IntPtr handle, MemberInfo member); // 0x101783C0 + internal static ParameterInfo[] GetParametersInfo(IntPtr handle, MemberInfo member); // 0x101783C0 + private static UnmanagedMarshal get_retval_marshal(IntPtr handle); // 0x10104640 + internal static ParameterInfo GetReturnParameterInfo(MonoMethod method); // 0x101783E0 +} + +// Namespace: System.Reflection +[Serializable] +internal class MonoMethod : MethodInfo, ISerializable // TypeDefIndex: 610 +{ + // Fields + internal IntPtr mhandle; // 0x08 + private string name; // 0x0C + private Type reftype; // 0x10 + + // Properties + public override ParameterInfo ReturnParameter { get; } // 0x10179270 + public override Type ReturnType { get; } // 0x10179280 + public override ICustomAttributeProvider ReturnTypeCustomAttributes { get; } // 0x10179270 + public override RuntimeMethodHandle MethodHandle { get; } // 0x100BF0C0 + public override MethodAttributes Attributes { get; } // 0x101748F0 + public override CallingConventions CallingConvention { get; } // 0x10174920 + public override Type ReflectedType { get; } // 0x100BFC20 + public override Type DeclaringType { get; } // 0x10174950 + public override string Name { get; } // 0x10174980 + public override bool IsGenericMethodDefinition { get; } // 0x10179250 + public override bool IsGenericMethod { get; } // 0x10179260 + public override bool ContainsGenericParameters { get; } // 0x10179180 + + // Methods + internal void .ctor(); // 0x100BF000 + internal void .ctor(RuntimeMethodHandle mhandle); // 0x10113500 + internal static string get_name(MethodBase method); // 0x101792B0 + internal static MonoMethod get_base_definition(MonoMethod method); // 0x101784B0 + public override MethodInfo GetBaseDefinition(); // 0x101784B0 + public override MethodImplAttributes GetMethodImplementationFlags(); // 0x10174180 + public override ParameterInfo[] GetParameters(); // 0x101786A0 + internal object InternalInvoke(object obj, object[] parameters, out Exception exc); // 0x10178880 + public override object Invoke(object obj, BindingFlags invokeAttr, Binder binder, object[] parameters, CultureInfo culture); // 0x101788A0 + public override bool IsDefined(Type attributeType, bool inherit); // 0x10178C30 + public override object[] GetCustomAttributes(bool inherit); // 0x10178510 + public override object[] GetCustomAttributes(Type attributeType, bool inherit); // 0x101784C0 + internal static DllImportAttribute GetDllImportAttribute(IntPtr mhandle); // 0x10178560 + internal object[] GetPseudoCustomAttributes(); // 0x10178710 + private static bool ShouldPrintFullName(Type type); // 0x10178E10 + public override string ToString(); // 0x10178EB0 + public void GetObjectData(SerializationInfo info, StreamingContext context); // 0x101785F0 + public override MethodInfo MakeGenericMethod(Type[] methodInstantiation); // 0x10178CA0 + private MethodInfo MakeGenericMethod_impl(Type[] types); // 0x10178C80 + public override Type[] GetGenericArguments(); // 0x10178570 + private MethodInfo GetGenericMethodDefinition_impl(); // 0x10178580 + public override MethodInfo GetGenericMethodDefinition(); // 0x10178590 + public override MethodBody GetMethodBody(); // 0x10174160 +} + +// Namespace: System.Reflection +internal class MonoCMethod : ConstructorInfo, ISerializable // TypeDefIndex: 611 +{ + // Fields + internal IntPtr mhandle; // 0x08 + private string name; // 0x0C + private Type reftype; // 0x10 + + // Properties + public override RuntimeMethodHandle MethodHandle { get; } // 0x100BF0C0 + public override MethodAttributes Attributes { get; } // 0x101748F0 + public override CallingConventions CallingConvention { get; } // 0x10174920 + public override Type ReflectedType { get; } // 0x100BFC20 + public override Type DeclaringType { get; } // 0x10174950 + public override string Name { get; } // 0x10174980 + + // Methods + public void .ctor(); // 0x101748A0 + public override MethodImplAttributes GetMethodImplementationFlags(); // 0x10174180 + public override ParameterInfo[] GetParameters(); // 0x10174210 + internal object InternalInvoke(object obj, object[] parameters, out Exception exc); // 0x10174230 + public override object Invoke(object obj, BindingFlags invokeAttr, Binder binder, object[] parameters, CultureInfo culture); // 0x10174280 + public override object Invoke(BindingFlags invokeAttr, Binder binder, object[] parameters, CultureInfo culture); // 0x10174250 + public override bool IsDefined(Type attributeType, bool inherit); // 0x10174700 + public override object[] GetCustomAttributes(bool inherit); // 0x10174110 + public override object[] GetCustomAttributes(Type attributeType, bool inherit); // 0x101740C0 + public override MethodBody GetMethodBody(); // 0x10174160 + public override string ToString(); // 0x10174750 + public void GetObjectData(SerializationInfo info, StreamingContext context); // 0x101741B0 +} + +// Namespace: System.Reflection +internal struct MonoPropertyInfo // TypeDefIndex: 612 +{ + // Fields + public Type parent; // 0x08 + public string name; // 0x0C + public MethodInfo get_method; // 0x10 + public MethodInfo set_method; // 0x14 + public PropertyAttributes attrs; // 0x18 + + // Methods + internal static void get_property_info(MonoProperty prop, MonoPropertyInfo info, PInfo req_info); // 0x10207C10 + internal static Type[] GetTypeModifiers(MonoProperty prop, bool optional); // 0x10207BF0 +} + +// Namespace: System.Reflection +internal enum PInfo // TypeDefIndex: 613 +{ + Attributes = 1, + GetMethod = 2, + SetMethod = 4, + ReflectedType = 8, + DeclaringType = 16, + Name = 32 +} + +// Namespace: System.Reflection +[Serializable] +internal class MonoProperty : PropertyInfo, ISerializable // TypeDefIndex: 614 +{ + // Fields + internal IntPtr klass; // 0x08 + internal IntPtr prop; // 0x0C + private MonoPropertyInfo info; // 0x10 + private PInfo cached; // 0x24 + private GetterAdapter cached_getter; // 0x28 + + // Properties + public override PropertyAttributes Attributes { get; } // 0x1017A020 + public override bool CanRead { get; } // 0x1017A050 + public override bool CanWrite { get; } // 0x1017A080 + public override Type PropertyType { get; } // 0x1017A110 + public override Type ReflectedType { get; } // 0x1017A1C0 + public override Type DeclaringType { get; } // 0x1017A0B0 + public override string Name { get; } // 0x1017A0E0 + + // Methods + public void .ctor(); // 0x1017A010 + private void CachePropertyInfo(PInfo flags); // 0x101792C0 + public override MethodInfo[] GetAccessors(bool nonPublic); // 0x101795F0 + public override MethodInfo GetGetMethod(bool nonPublic); // 0x10179830 + public override ParameterInfo[] GetIndexParameters(); // 0x10179890 + public override MethodInfo GetSetMethod(bool nonPublic); // 0x10179B20 + public override bool IsDefined(Type attributeType, bool inherit); // 0x10179D50 + public override object[] GetCustomAttributes(bool inherit); // 0x101797D0 + public override object[] GetCustomAttributes(Type attributeType, bool inherit); // 0x10179770 + private static object GetterAdapterFrame(Getter`2 getter, object obj); + private static object StaticGetterAdapterFrame(StaticGetter`1 getter, object obj); + private static GetterAdapter CreateGetterDelegate(MethodInfo method); // 0x101792F0 + public override object GetValue(object obj, object[] index); // 0x10179D20 + public override object GetValue(object obj, BindingFlags invokeAttr, Binder binder, object[] index, CultureInfo culture); // 0x10179B80 + public override void SetValue(object obj, object value, BindingFlags invokeAttr, Binder binder, object[] index, CultureInfo culture); // 0x10179DB0 + public override string ToString(); // 0x10179F60 + public override Type[] GetOptionalCustomModifiers(); // 0x10179A60 + public override Type[] GetRequiredCustomModifiers(); // 0x10179AC0 + public void GetObjectData(SerializationInfo info, StreamingContext context); // 0x10179A00 +} + +// Namespace: +private delegate object GetterAdapter(object _this); // TypeDefIndex: 615; 0x102034B0 + +// Namespace: +private delegate T Getter`2(T _this); // TypeDefIndex: 616; 0x00000000 + +// Namespace: +private delegate T StaticGetter`1(); // TypeDefIndex: 617; 0x00000000 + +// Namespace: System.Reflection +public sealed class ObfuscateAssemblyAttribute : Attribute // TypeDefIndex: 618 +{ + // Fields + private bool is_private; // 0x08 + private bool strip; // 0x09 + + // Properties + public bool AssemblyIsPrivate { get; } // 0x100EA020 + public bool StripAfterObfuscation { get; set; } // 0x10117290 0x10155020 + + // Methods + public void .ctor(bool assemblyIsPrivate); // 0x10207DD0 +} + +// Namespace: System.Reflection +public sealed class ObfuscationAttribute : Attribute // TypeDefIndex: 619 +{ + // Fields + private bool exclude; // 0x08 + private bool strip; // 0x09 + private bool applyToMembers; // 0x0A + private string feature; // 0x0C + + // Properties + public bool Exclude { get; set; } // 0x100EA020 0x10155000 + public bool StripAfterObfuscation { get; set; } // 0x10117290 0x10155020 + public bool ApplyToMembers { get; set; } // 0x101172F0 0x10155010 + public string Feature { get; set; } // 0x100C5B30 0x100C5B50 + + // Methods + public void .ctor(); // 0x10207DF0 +} + +// Namespace: System.Reflection +[Serializable] +public enum ParameterAttributes // TypeDefIndex: 620 +{ + None = 0, + In = 1, + Out = 2, + Lcid = 4, + Retval = 8, + Optional = 16, + HasDefault = 4096, + HasFieldMarshal = 8192, + Reserved3 = 16384, + Reserved4 = 32768, + ReservedMask = 61440 +} + +// Namespace: System.Reflection +[Serializable] +public class ParameterInfo : ICustomAttributeProvider, _ParameterInfo // TypeDefIndex: 621 +{ + // Fields + protected Type ClassImpl; // 0x08 + protected object DefaultValueImpl; // 0x0C + protected MemberInfo MemberImpl; // 0x10 + protected string NameImpl; // 0x14 + protected int PositionImpl; // 0x18 + protected ParameterAttributes AttrsImpl; // 0x1C + private UnmanagedMarshal marshalAs; // 0x20 + + // Properties + public virtual Type ParameterType { get; } // 0x100BF0C0 + public virtual ParameterAttributes Attributes { get; } // 0x100F85F0 + public virtual object DefaultValue { get; } // 0x102087B0 + public bool IsIn { get; } // 0x102089E0 + public bool IsLcid { get; } // 0x10208A00 + public bool IsOptional { get; } // 0x10208A30 + public bool IsOut { get; } // 0x10208A60 + public bool IsRetval { get; } // 0x10208A80 + public virtual MemberInfo Member { get; } // 0x100BFC20 + public virtual string Name { get; } // 0x100EF0C0 + public virtual int Position { get; } // 0x100EE580 + public int MetadataToken { get; } // 0x10208AB0 + public virtual object RawDefaultValue { get; } // 0x10208CB0 + + // Methods + protected void .ctor(); // 0x100BF000 + internal void .ctor(ParameterBuilder pb, Type type, MemberInfo member, int position); // 0x10208630 + internal void .ctor(ParameterInfo pinfo, MemberInfo member); // 0x102086B0 + internal void .ctor(Type type, MemberInfo member, UnmanagedMarshal marshalAs); // 0x10208730 + private void System.Runtime.InteropServices._ParameterInfo.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x102082E0 + private void System.Runtime.InteropServices._ParameterInfo.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x10208380 + private void System.Runtime.InteropServices._ParameterInfo.GetTypeInfoCount(out uint pcTInfo); // 0x10208330 + private void System.Runtime.InteropServices._ParameterInfo.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x102083D0 + public override string ToString(); // 0x10208420 + private int GetMetadataToken(); // 0x10207EE0 + public virtual object[] GetCustomAttributes(bool inherit); // 0x10207E90 + public virtual object[] GetCustomAttributes(Type attributeType, bool inherit); // 0x10207E40 + public virtual bool IsDefined(Type attributeType, bool inherit); // 0x10208290 + internal object[] GetPseudoCustomAttributes(); // 0x10207F50 + private Type[] GetTypeModifiers(bool optional); // 0x10208270 + public virtual Type[] GetOptionalCustomModifiers(); // 0x10207EF0 + public virtual Type[] GetRequiredCustomModifiers(); // 0x10208210 +} + +// Namespace: System.Reflection +[Serializable] +public struct ParameterModifier // TypeDefIndex: 622 +{ + // Fields + private bool[] _byref; // 0x08 + + // Properties + public bool Item { get; set; } // 0x10018720 0x10018760 + + // Methods + public void .ctor(int parameterCount); // 0x100186B0 +} + +// Namespace: System.Reflection +[Serializable] +public sealed class Pointer : ISerializable // TypeDefIndex: 623 +{ + // Fields + private void * data; // 0x08 + private Type type; // 0x0C + + // Methods + private void .ctor(); // 0x100BF000 + private void System.Runtime.Serialization.ISerializable.GetObjectData(SerializationInfo info, StreamingContext context); // 0x10208DA0 + public static object Box(void * ptr, Type type); // 0x10208CD0 + public static void * Unbox(object ptr); // 0x10208DF0 +} + +// Namespace: System.Reflection +[Serializable] +public enum PortableExecutableKinds // TypeDefIndex: 624 +{ + NotAPortableExecutableImage = 0, + ILOnly = 1, + Required32Bit = 2, + PE32Plus = 4, + Unmanaged32Bit = 8 +} + +// Namespace: System.Reflection +[Serializable] +public enum ProcessorArchitecture // TypeDefIndex: 625 +{ + None = 0, + MSIL = 1, + X86 = 2, + IA64 = 3, + Amd64 = 4 +} + +// Namespace: System.Reflection +[Serializable] +public enum PropertyAttributes // TypeDefIndex: 626 +{ + None = 0, + SpecialName = 512, + RTSpecialName = 1024, + HasDefault = 4096, + Reserved2 = 8192, + Reserved3 = 16384, + Reserved4 = 32768, + ReservedMask = 62464 +} + +// Namespace: System.Reflection +[Serializable] +public abstract class PropertyInfo : MemberInfo, _PropertyInfo // TypeDefIndex: 627 +{ + // Properties + public abstract PropertyAttributes Attributes { get; } + public abstract bool CanRead { get; } + public abstract bool CanWrite { get; } + public bool IsSpecialName { get; } // 0x10209150 + public override MemberTypes MemberType { get; } // 0x10209180 + public abstract Type PropertyType { get; } + + // Methods + protected void .ctor(); // 0x100C5970 + private void System.Runtime.InteropServices._PropertyInfo.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x10209010 + private void System.Runtime.InteropServices._PropertyInfo.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x102090B0 + private void System.Runtime.InteropServices._PropertyInfo.GetTypeInfoCount(out uint pcTInfo); // 0x10209060 + private void System.Runtime.InteropServices._PropertyInfo.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x10209100 + public MethodInfo[] GetAccessors(); // 0x10208E60 + public abstract MethodInfo[] GetAccessors(bool nonPublic); + public MethodInfo GetGetMethod(); // 0x10208ED0 + public abstract MethodInfo GetGetMethod(bool nonPublic); + public abstract ParameterInfo[] GetIndexParameters(); + public MethodInfo GetSetMethod(); // 0x100EC340 + public abstract MethodInfo GetSetMethod(bool nonPublic); + public virtual object GetValue(object obj, object[] index); // 0x10179D20 + public abstract object GetValue(object obj, BindingFlags invokeAttr, Binder binder, object[] index, CultureInfo culture); + public virtual void SetValue(object obj, object value, object[] index); // 0x10208FE0 + public abstract void SetValue(object obj, object value, BindingFlags invokeAttr, Binder binder, object[] index, CultureInfo culture); + public virtual Type[] GetOptionalCustomModifiers(); // 0x10208EF0 + public virtual Type[] GetRequiredCustomModifiers(); // 0x10208F90 + public virtual object GetConstantValue(); // 0x10208E80 + public virtual object GetRawConstantValue(); // 0x10208F40 + virtual Type System.Runtime.InteropServices._PropertyInfo.GetType(); // 0x1015CD60 +} + +// Namespace: System.Reflection +[Serializable] +public sealed class ReflectionTypeLoadException : SystemException // TypeDefIndex: 628 +{ + // Fields + private Exception[] loaderExceptions; // 0x34 + private Type[] types; // 0x38 + + // Properties + public Type[] Types { get; } // 0x100EB210 + public Exception[] LoaderExceptions { get; } // 0x100E9ED0 + + // Methods + public void .ctor(Type[] classes, Exception[] exceptions); // 0x10209330 + public void .ctor(Type[] classes, Exception[] exceptions, string message); // 0x10209200 + private void .ctor(SerializationInfo info, StreamingContext sc); // 0x10209230 + public override void GetObjectData(SerializationInfo info, StreamingContext context); // 0x10209190 +} + +// Namespace: System.Reflection +[Serializable] +public enum ResourceAttributes // TypeDefIndex: 629 +{ + Public = 1, + Private = 2 +} + +// Namespace: System.Reflection +[Serializable] +public enum ResourceLocation // TypeDefIndex: 630 +{ + Embedded = 1, + ContainedInAnotherAssembly = 2, + ContainedInManifestFile = 4 +} + +// Namespace: System.Reflection +[Serializable] +public class StrongNameKeyPair : ISerializable, IDeserializationCallback // TypeDefIndex: 631 +{ + // Fields + private byte[] _publicKey; // 0x08 + private string _keyPairContainer; // 0x0C + private bool _keyPairExported; // 0x10 + private byte[] _keyPairArray; // 0x14 + [NonSerialized] private RSA _rsa; // 0x18 + + // Properties + public byte[] PublicKey { get; } // 0x10211C70 + + // Methods + public void .ctor(byte[] keyPairArray); // 0x10211BF0 + public void .ctor(FileStream keyPairFile); // 0x10211B00 + public void .ctor(string keyPairContainer); // 0x10211A80 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x10211950 + private void System.Runtime.Serialization.ISerializable.GetObjectData(SerializationInfo info, StreamingContext context); // 0x10211880 + private void System.Runtime.Serialization.IDeserializationCallback.OnDeserialization(object sender); // 0x100C5530 + private RSA GetRSA(); // 0x102115B0 + private void LoadKey(byte[] key); // 0x10211690 + internal StrongName StrongName(); // 0x10211800 +} + +// Namespace: System.Reflection +[Serializable] +public class TargetException : Exception // TypeDefIndex: 632 +{ + // Methods + public void .ctor(); // 0x10211F40 + public void .ctor(string message); // 0x10211F30 + public void .ctor(string message, Exception inner); // 0x10211F80 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x1015EC80 +} + +// Namespace: System.Reflection +[Serializable] +public sealed class TargetInvocationException : Exception // TypeDefIndex: 633 +{ + // Methods + public void .ctor(Exception inner); // 0x10211F90 + public void .ctor(string message, Exception inner); // 0x10211F80 + internal void .ctor(SerializationInfo info, StreamingContext sc); // 0x1015EC80 +} + +// Namespace: System.Reflection +[Serializable] +public sealed class TargetParameterCountException : Exception // TypeDefIndex: 634 +{ + // Methods + public void .ctor(); // 0x10211FD0 + public void .ctor(string message); // 0x10211F30 + public void .ctor(string message, Exception inner); // 0x10211F80 + internal void .ctor(SerializationInfo info, StreamingContext context); // 0x1015EC80 +} + +// Namespace: System.Reflection +[Serializable] +public enum TypeAttributes // TypeDefIndex: 635 +{ + NotPublic = 0, + AutoLayout = 0, + Class = 0, + AnsiClass = 0, + Public = 1, + NestedPublic = 2, + NestedPrivate = 3, + NestedFamily = 4, + NestedAssembly = 5, + NestedFamANDAssem = 6, + VisibilityMask = 7, + NestedFamORAssem = 7, + SequentialLayout = 8, + ExplicitLayout = 16, + LayoutMask = 24, + ClassSemanticsMask = 32, + Interface = 32, + Abstract = 128, + Sealed = 256, + SpecialName = 1024, + RTSpecialName = 2048, + Import = 4096, + Serializable = 8192, + UnicodeClass = 65536, + AutoClass = 131072, + StringFormatMask = 196608, + CustomFormatClass = 196608, + HasSecurity = 262144, + ReservedMask = 264192, + BeforeFieldInit = 1048576, + CustomFormatMask = 12582912 +} + +// Namespace: System.Reflection +[Serializable] +public class TypeDelegator : Type // TypeDefIndex: 636 +{ + // Fields + protected Type typeImpl; // 0x0C + + // Properties + public override Assembly Assembly { get; } // 0x100F6A90 + public override string AssemblyQualifiedName { get; } // 0x10212750 + public override Type BaseType { get; } // 0x10212780 + public override string FullName { get; } // 0x102127B0 + public override Guid GUID { get; } // 0x102127E0 + public override Module Module { get; } // 0x100F6BD0 + public override string Name { get; } // 0x1017A7F0 + public override string Namespace { get; } // 0x100F6C40 + public override RuntimeTypeHandle TypeHandle { get; } // 0x10212850 + public override Type UnderlyingSystemType { get; } // 0x10212880 + public override int MetadataToken { get; } // 0x10212820 + + // Methods + protected void .ctor(); // 0x10212700 + public void .ctor(Type delegatingType); // 0x10212670 + protected override TypeAttributes GetAttributeFlagsImpl(); // 0x100F60B0 + protected override ConstructorInfo GetConstructorImpl(BindingFlags bindingAttr, Binder binder, CallingConventions callConvention, Type[] types, ParameterModifier[] modifiers); // 0x10128BD0 + public override ConstructorInfo[] GetConstructors(BindingFlags bindingAttr); // 0x102120A0 + public override object[] GetCustomAttributes(bool inherit); // 0x10212110 + public override object[] GetCustomAttributes(Type attributeType, bool inherit); // 0x102120D0 + public override Type GetElementType(); // 0x10212140 + public override EventInfo GetEvent(string name, BindingFlags bindingAttr); // 0x10212170 + public override EventInfo[] GetEvents(); // 0x102121B0 + public override EventInfo[] GetEvents(BindingFlags bindingAttr); // 0x102121D0 + public override FieldInfo GetField(string name, BindingFlags bindingAttr); // 0x10212200 + public override FieldInfo[] GetFields(BindingFlags bindingAttr); // 0x10212240 + public override Type GetInterface(string name, bool ignoreCase); // 0x102122B0 + public override InterfaceMapping GetInterfaceMap(Type interfaceType); // 0x10212270 + public override Type[] GetInterfaces(); // 0x102122F0 + public override MemberInfo[] GetMember(string name, MemberTypes type, BindingFlags bindingAttr); // 0x10212320 + public override MemberInfo[] GetMembers(BindingFlags bindingAttr); // 0x10212360 + protected override MethodInfo GetMethodImpl(string name, BindingFlags bindingAttr, Binder binder, CallingConventions callConvention, Type[] types, ParameterModifier[] modifiers); // 0x10212390 + public override MethodInfo[] GetMethods(BindingFlags bindingAttr); // 0x102123C0 + public override Type GetNestedType(string name, BindingFlags bindingAttr); // 0x102123F0 + public override Type[] GetNestedTypes(BindingFlags bindingAttr); // 0x10212430 + public override PropertyInfo[] GetProperties(BindingFlags bindingAttr); // 0x10212460 + protected override PropertyInfo GetPropertyImpl(string name, BindingFlags bindingAttr, Binder binder, Type returnType, Type[] types, ParameterModifier[] modifiers); // 0x10212490 + protected override bool HasElementTypeImpl(); // 0x10129000 + public override object InvokeMember(string name, BindingFlags invokeAttr, Binder binder, object target, object[] args, ParameterModifier[] modifiers, CultureInfo culture, string[] namedParameters); // 0x102124C0 + protected override bool IsArrayImpl(); // 0x10212510 + protected override bool IsByRefImpl(); // 0x10212540 + protected override bool IsCOMObjectImpl(); // 0x10212570 + public override bool IsDefined(Type attributeType, bool inherit); // 0x102125A0 + protected override bool IsPointerImpl(); // 0x102125E0 + protected override bool IsPrimitiveImpl(); // 0x10212610 + protected override bool IsValueTypeImpl(); // 0x10212640 +} + +// Namespace: System.Resources +public interface IResourceReader : IEnumerable, IDisposable // TypeDefIndex: 637 +{ + // Methods + void Close(); + IDictionaryEnumerator GetEnumerator(); +} + +// Namespace: System.Resources +public interface IResourceWriter : IDisposable // TypeDefIndex: 638 +{ + // Methods + void AddResource(string name, byte[] value); + void AddResource(string name, object value); + void AddResource(string name, string value); + void Close(); + void Generate(); +} + +// Namespace: System.Resources +[Serializable] +public class MissingManifestResourceException : SystemException // TypeDefIndex: 639 +{ + // Methods + public void .ctor(); // 0x10207B50 + public void .ctor(string message); // 0x100E5680 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 + public void .ctor(string message, Exception inner); // 0x100E5670 +} + +// Namespace: System.Resources +[Serializable] +public class MissingSatelliteAssemblyException : SystemException // TypeDefIndex: 640 +{ + // Fields + private string culture; // 0x34 + + // Properties + public string CultureName { get; } // 0x100E9ED0 + + // Methods + public void .ctor(); // 0x10207B90 + public void .ctor(string message); // 0x100E5680 + public void .ctor(string message, string cultureName); // 0x10207BD0 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 + public void .ctor(string message, Exception inner); // 0x100E5670 +} + +// Namespace: System.Resources +public sealed class NeutralResourcesLanguageAttribute : Attribute // TypeDefIndex: 641 +{ + // Fields + private string culture; // 0x08 + private UltimateResourceFallbackLocation loc; // 0x0C + + // Properties + public string CultureName { get; } // 0x100BF0C0 + public UltimateResourceFallbackLocation Location { get; } // 0x100C5B30 + + // Methods + public void .ctor(string cultureName); // 0x10207CF0 + public void .ctor(string cultureName, UltimateResourceFallbackLocation location); // 0x10207D60 +} + +// Namespace: System.Resources +[Serializable] +public class ResourceManager // TypeDefIndex: 642 +{ + // Fields + private static Hashtable ResourceCache; // 0x00 + private static Hashtable NonExistent; // 0x04 + public static readonly int HeaderVersionNumber; // 0x08 + public static readonly int MagicNumber; // 0x0C + protected string BaseNameField; // 0x08 + protected Assembly MainAssembly; // 0x0C + protected Hashtable ResourceSets; // 0x10 + private bool ignoreCase; // 0x14 + private Type resourceSource; // 0x18 + private Type resourceSetType; // 0x1C + private string resourceDir; // 0x20 + private CultureInfo neutral_culture; // 0x24 + private UltimateResourceFallbackLocation fallbackLocation; // 0x28 + + // Properties + public virtual string BaseName { get; } // 0x100BF0C0 + public virtual bool IgnoreCase { get; set; } // 0x100C5670 0x10142260 + public virtual Type ResourceSetType { get; } // 0x100F85F0 + protected UltimateResourceFallbackLocation FallbackLocation { get; set; } // 0x100EB040 0x100EB250 + + // Methods + protected void .ctor(); // 0x1020BB90 + public void .ctor(Type resourceSource); // 0x1020BE20 + public void .ctor(string baseName, Assembly assembly); // 0x1020BC00 + public void .ctor(string baseName, Assembly assembly, Type usingResourceSet); // 0x1020BA80 + private void .ctor(string baseName, string resourceDir, Type usingResourceSet); // 0x1020BD00 + private static void .cctor(); // 0x1020B9D0 + private static Hashtable GetResourceSets(Assembly assembly, string basename); // 0x1020A670 + private Type CheckResourceSetType(Type usingResourceSet, bool verifyType); // 0x10209BB0 + public static ResourceManager CreateFileBasedResourceManager(string baseName, string resourceDir, Type usingResourceSet); // 0x10209C80 + public virtual object GetObject(string name); // 0x1020A380 + public virtual object GetObject(string name, CultureInfo culture); // 0x1020A0D0 + public virtual ResourceSet GetResourceSet(CultureInfo culture, bool createIfNotExists, bool tryParents); // 0x1020A530 + public virtual string GetString(string name); // 0x101B50E0 + public virtual string GetString(string name, CultureInfo culture); // 0x1020ACE0 + protected virtual string GetResourceFileName(CultureInfo culture); // 0x1020A3B0 + private string GetResourceFilePath(CultureInfo culture); // 0x1020A4B0 + private Stream GetManifestResourceStreamNoCase(Assembly ass, string fn); // 0x10209EA0 + public UnmanagedMemoryStream GetStream(string name); // 0x1020AAD0 + public UnmanagedMemoryStream GetStream(string name, CultureInfo culture); // 0x1020AAF0 + protected virtual ResourceSet InternalGetResourceSet(CultureInfo culture, bool createIfNotExists, bool tryParents); // 0x1020AF90 + public virtual void ReleaseAllResources(); // 0x1020B730 + protected static CultureInfo GetNeutralResourcesLanguage(Assembly a); // 0x10209FD0 + protected static Version GetSatelliteContractVersion(Assembly a); // 0x1020A9F0 + private MissingManifestResourceException AssemblyResourceMissing(string fileName); // 0x10209AA0 + private string GetManifestResourceName(string fn); // 0x10209DD0 +} + +// Namespace: System.Resources +internal enum PredefinedResourceType // TypeDefIndex: 643 +{ + Null = 0, + String = 1, + Bool = 2, + Char = 3, + Byte = 4, + SByte = 5, + Int16 = 6, + UInt16 = 7, + Int32 = 8, + UInt32 = 9, + Int64 = 10, + UInt64 = 11, + Single = 12, + Double = 13, + Decimal = 14, + DateTime = 15, + TimeSpan = 16, + ByteArray = 32, + Stream = 33, + FistCustom = 64 +} + +// Namespace: System.Resources +public sealed class ResourceReader : IEnumerable, IDisposable, IResourceReader // TypeDefIndex: 644 +{ + // Fields + private BinaryReader reader; // 0x08 + private object readerLock; // 0x0C + private IFormatter formatter; // 0x10 + internal int resourceCount; // 0x14 + private int typeCount; // 0x18 + private string[] typeNames; // 0x1C + private int[] hashes; // 0x20 + private ResourceInfo[] infos; // 0x24 + private int dataSectionOffset; // 0x28 + private long nameSectionOffset; // 0x30 + private int resource_ver; // 0x38 + private ResourceCacheItem[] cache; // 0x3C + private object cache_lock; // 0x40 + + // Methods + public void .ctor(Stream stream); // 0x1020E370 + public void .ctor(string fileName); // 0x1020E4E0 + private IEnumerator System.Collections.IEnumerable.GetEnumerator(); // 0x1020E330 + private void System.IDisposable.Dispose(); // 0x1020BF30 + private void ReadHeaders(); // 0x1020CAA0 + private void CreateResourceInfo(long position, ResourceInfo info); // 0x1020BF90 + private int Read7BitEncodedInt(); // 0x1020CA50 + private object ReadValueVer2(int type_index); // 0x1020D9B0 + private object ReadValueVer1(Type type); // 0x1020D390 + private object ReadNonPredefinedValue(Type exp_type); // 0x1020D290 + private void LoadResourceValues(ResourceCacheItem[] store); // 0x1020C810 + internal UnmanagedMemoryStream ResourceValueAsStream(string name, int index); // 0x1020DEC0 + public void Close(); // 0x1020BF30 + public IDictionaryEnumerator GetEnumerator(); // 0x1020C1A0 + public void GetResourceData(string resourceName, out string resourceType, out byte[] resourceData); // 0x1020C640 + private void GetResourceDataAt(int index, out string resourceType, out byte[] data); // 0x1020C230 + private void Dispose(bool disposing); // 0x1020C150 +} + +// Namespace: +private struct ResourceInfo // TypeDefIndex: 645 +{ + // Fields + public readonly long ValuePosition; // 0x08 + public readonly string ResourceName; // 0x10 + public readonly int TypeIndex; // 0x14 + + // Methods + public void .ctor(string resourceName, long valuePosition, int type_index); // 0x100189A0 +} + +// Namespace: +private struct ResourceCacheItem // TypeDefIndex: 646 +{ + // Fields + public readonly string ResourceName; // 0x08 + public readonly object ResourceValue; // 0x0C + + // Methods + public void .ctor(string name, object value); // 0x100075A0 +} + +// Namespace: +internal sealed class ResourceEnumerator : IEnumerator, IDictionaryEnumerator // TypeDefIndex: 647 +{ + // Fields + private ResourceReader reader; // 0x08 + private int index; // 0x0C + private bool finished; // 0x10 + + // Properties + public int Index { get; } // 0x100C5B30 + public DictionaryEntry Entry { get; } // 0x10209710 + public object Key { get; } // 0x10209880 + public object Value { get; } // 0x102099F0 + public UnmanagedMemoryStream ValueAsStream { get; } // 0x10209930 + public object Current { get; } // 0x102096C0 + + // Methods + internal void .ctor(ResourceReader readerToEnumerate); // 0x10209690 + public bool MoveNext(); // 0x10209580 + public void Reset(); // 0x10209610 + private void FillCache(); // 0x10209430 +} + +// Namespace: +private sealed class c__AnonStorey2 // TypeDefIndex: 648 +{ + // Fields + internal IntPtr ptr; // 0x08 + + // Methods + public void .ctor(); // 0x100BF000 + internal void <>m__1(object o, EventArgs e); // 0x102128B0 +} + +// Namespace: System.Resources +[Serializable] +public class ResourceSet : IEnumerable, IDisposable // TypeDefIndex: 649 +{ + // Fields + [NonSerialized] protected IResourceReader Reader; // 0x08 + protected Hashtable Table; // 0x0C + private bool resources_read; // 0x10 + [NonSerialized] private bool disposed; // 0x11 + + // Methods + protected void .ctor(); // 0x1020F130 + public void .ctor(IResourceReader reader); // 0x1020F0A0 + public void .ctor(Stream stream); // 0x1020F190 + internal void .ctor(UnmanagedMemoryStream stream); // 0x1020EEF0 + public void .ctor(string fileName); // 0x1020EF60 + private IEnumerator System.Collections.IEnumerable.GetEnumerator(); // 0x1020EED0 + public virtual void Close(); // 0x1020E5D0 + public void Dispose(); // 0x1020E5D0 + protected virtual void Dispose(bool disposing); // 0x1020E600 + public virtual Type GetDefaultReader(); // 0x1020E660 + public virtual Type GetDefaultWriter(); // 0x1020E6B0 + public virtual IDictionaryEnumerator GetEnumerator(); // 0x1020E700 + private object GetObjectInternal(string name, bool ignoreCase); // 0x1020E7A0 + public virtual object GetObject(string name); // 0x1020EAB0 + public virtual object GetObject(string name, bool ignoreCase); // 0x1020EAA0 + private string GetStringInternal(string name, bool ignoreCase); // 0x1020EC10 + public virtual string GetString(string name); // 0x1020ECC0 + public virtual string GetString(string name, bool ignoreCase); // 0x1020ECE0 + protected virtual void ReadResources(); // 0x1020ECF0 + internal UnmanagedMemoryStream GetStream(string name, bool ignoreCase); // 0x1020EAD0 +} + +// Namespace: System.Resources +public sealed class ResourceWriter : IDisposable, IResourceWriter // TypeDefIndex: 650 +{ + // Fields + private SortedList resources; // 0x08 + private Stream stream; // 0x0C + + // Properties + internal Stream Stream { get; } // 0x100C5B30 + + // Methods + public void .ctor(Stream stream); // 0x10210F30 + public void .ctor(string fileName); // 0x10210E20 + public void AddResource(string name, byte[] value); // 0x1020F410 + public void AddResource(string name, object value); // 0x1020F670 + public void AddResource(string name, string value); // 0x1020F540 + public void Close(); // 0x1020F7A0 + public void Dispose(); // 0x1020F7A0 + private void Dispose(bool disposing); // 0x1020F7F0 + public void AddResourceData(string name, string typeName, byte[] serializedData); // 0x1020F200 + public void Generate(); // 0x1020F860 + private int GetHash(string name); // 0x10210D70 + private void Write7BitEncodedInt(BinaryWriter writer, int value); // 0x10210DC0 +} + +// Namespace: +private class TypeByNameObject // TypeDefIndex: 651 +{ + // Fields + public readonly string TypeName; // 0x08 + public readonly byte[] Value; // 0x0C + + // Methods + public void .ctor(string typeName, byte[] value); // 0x10212010 +} + +// Namespace: System.Resources +[Serializable] +internal class RuntimeResourceSet : ResourceSet // TypeDefIndex: 652 +{ + // Methods + public void .ctor(UnmanagedMemoryStream stream); // 0x1020EEF0 + public void .ctor(Stream stream); // 0x1020F190 + public void .ctor(string fileName); // 0x1020EF60 + public override object GetObject(string name); // 0x102113C0 + public override object GetObject(string name, bool ignoreCase); // 0x10211440 + private object CloneDisposableObjectIfPossible(object value); // 0x10211350 +} + +// Namespace: System.Resources +public sealed class SatelliteContractVersionAttribute : Attribute // TypeDefIndex: 653 +{ + // Fields + private Version ver; // 0x08 + + // Properties + public string Version { get; } // 0x10211580 + + // Methods + public void .ctor(string version); // 0x10211530 +} + +// Namespace: System.Resources +[Serializable] +public enum UltimateResourceFallbackLocation // TypeDefIndex: 654 +{ + MainAssembly = 0, + Satellite = 1 +} + +// Namespace: System.Resources +internal enum Win32ResourceType // TypeDefIndex: 655 +{ + RT_CURSOR = 1, + RT_BITMAP = 2, + RT_ICON = 3, + RT_MENU = 4, + RT_DIALOG = 5, + RT_STRING = 6, + RT_FONTDIR = 7, + RT_FONT = 8, + RT_ACCELERATOR = 9, + RT_RCDATA = 10, + RT_MESSAGETABLE = 11, + RT_GROUP_CURSOR = 12, + RT_GROUP_ICON = 14, + RT_VERSION = 16, + RT_DLGINCLUDE = 17, + RT_PLUGPLAY = 19, + RT_VXD = 20, + RT_ANICURSOR = 21, + RT_ANIICON = 22, + RT_HTML = 23 +} + +// Namespace: System.Resources +internal class NameOrId // TypeDefIndex: 656 +{ + // Fields + private string name; // 0x08 + private int id; // 0x0C + + // Properties + public bool IsName { get; } // 0x101253D0 + public string Name { get; } // 0x100BF0C0 + public int Id { get; } // 0x100C5B30 + + // Methods + public void .ctor(string name); // 0x10113500 + public void .ctor(int id); // 0x10158F90 + public override string ToString(); // 0x10207C30 +} + +// Namespace: System.Resources +internal abstract class Win32Resource // TypeDefIndex: 657 +{ + // Fields + private NameOrId type; // 0x08 + private NameOrId name; // 0x0C + private int language; // 0x10 + + // Properties + public Win32ResourceType ResourceType { get; } // 0x10213B90 + public NameOrId Name { get; } // 0x100C5B30 + public NameOrId Type { get; } // 0x100BF0C0 + public int Language { get; } // 0x100BFC20 + + // Methods + internal void .ctor(NameOrId type, NameOrId name, int language); // 0x10127920 + internal void .ctor(Win32ResourceType type, int name, int language); // 0x10213B10 + public abstract void WriteTo(Stream s); + public override string ToString(); // 0x102138E0 +} + +// Namespace: System.Resources +internal class Win32EncodedResource : Win32Resource // TypeDefIndex: 658 +{ + // Fields + private byte[] data; // 0x14 + + // Properties + public byte[] Data { get; } // 0x100EF0C0 + + // Methods + internal void .ctor(NameOrId type, NameOrId name, int language, byte[] data); // 0x10212950 + public override void WriteTo(Stream s); // 0x10212910 +} + +// Namespace: System.Resources +internal class Win32IconResource : Win32Resource // TypeDefIndex: 659 +{ + // Fields + private ICONDIRENTRY icon; // 0x14 + + // Properties + public ICONDIRENTRY Icon { get; } // 0x100EF0C0 + + // Methods + public void .ctor(int id, int language, ICONDIRENTRY icon); // 0x102130A0 + public override void WriteTo(Stream s); // 0x10213060 +} + +// Namespace: System.Resources +internal class Win32GroupIconResource : Win32Resource // TypeDefIndex: 660 +{ + // Fields + private Win32IconResource[] icons; // 0x14 + + // Methods + public void .ctor(int id, int language, Win32IconResource[] icons); // 0x10212C20 + public override void WriteTo(Stream s); // 0x10212980 +} + +// Namespace: System.Resources +internal class Win32VersionResource : Win32Resource // TypeDefIndex: 661 +{ + // Fields + public string[] WellKnownProperties; // 0x14 + private long signature; // 0x18 + private int struct_version; // 0x20 + private long file_version; // 0x28 + private long product_version; // 0x30 + private int file_flags_mask; // 0x38 + private int file_flags; // 0x3C + private int file_os; // 0x40 + private int file_type; // 0x44 + private int file_subtype; // 0x48 + private long file_date; // 0x50 + private int file_lang; // 0x58 + private int file_codepage; // 0x5C + private Hashtable properties; // 0x60 + + // Properties + public string Version { get; set; } // 0x10214F60 0x10215D10 + public virtual string Item { set; } // 0x10215820 + public virtual string Comments { get; set; } // 0x10214B00 0x10215370 + public virtual string CompanyName { get; set; } // 0x10214B70 0x10215410 + public virtual string LegalCopyright { get; set; } // 0x10214D30 0x10215860 + public virtual string LegalTrademarks { get; set; } // 0x10214DA0 0x10215900 + public virtual string OriginalFilename { get; set; } // 0x10214E10 0x102159A0 + public virtual string ProductName { get; set; } // 0x10214E80 0x10215A40 + public virtual string ProductVersion { get; set; } // 0x10214EF0 0x10215AE0 + public virtual string InternalName { get; set; } // 0x10214CC0 0x10215780 + public virtual string FileDescription { get; set; } // 0x10214BE0 0x102154B0 + public virtual int FileLanguage { get; set; } // 0x10145540 0x101455C0 + public virtual string FileVersion { get; set; } // 0x10214C50 0x10215550 + + // Methods + public void .ctor(int id, int language, bool compilercontext); // 0x10214670 + private void emit_padding(BinaryWriter w); // 0x10214A90 + private void patch_length(BinaryWriter w, long len_pos); // 0x102152D0 + public override void WriteTo(Stream ms); // 0x10213BC0 +} + +// Namespace: System.Resources +internal class Win32ResFileReader // TypeDefIndex: 662 +{ + // Fields + private Stream res_file; // 0x08 + + // Methods + public void .ctor(Stream s); // 0x10113500 + private int read_int16(); // 0x102135C0 + private int read_int32(); // 0x10213630 + private void read_padding(); // 0x10213850 + private NameOrId read_ordinal(); // 0x10213670 + public ICollection ReadResources(); // 0x102130D0 +} + +// Namespace: System.Resources +internal class ICONDIRENTRY // TypeDefIndex: 663 +{ + // Fields + public byte bWidth; // 0x08 + public byte bHeight; // 0x09 + public byte bColorCount; // 0x0A + public byte bReserved; // 0x0B + public short wPlanes; // 0x0C + public short wBitCount; // 0x0E + public int dwBytesInRes; // 0x10 + public int dwImageOffset; // 0x14 + public byte[] image; // 0x18 + + // Methods + public void .ctor(); // 0x100BF000 + public override string ToString(); // 0x10203C90 +} + +// Namespace: System.Resources +internal class Win32IconFileReader // TypeDefIndex: 664 +{ + // Fields + private Stream iconFile; // 0x08 + + // Methods + public void .ctor(Stream s); // 0x10113500 + public ICONDIRENTRY[] ReadIcons(); // 0x10212C50 +} + +// Namespace: System.Runtime.CompilerServices +public sealed class AccessedThroughPropertyAttribute : Attribute // TypeDefIndex: 665 +{ + // Fields + private string name; // 0x08 + + // Properties + public string PropertyName { get; } // 0x100BF0C0 + + // Methods + public void .ctor(string propertyName); // 0x100E5940 +} + +// Namespace: System.Runtime.CompilerServices +public class CallConvCdecl // TypeDefIndex: 666 +{ + // Methods + public void .ctor(); // 0x100BF000 +} + +// Namespace: System.Runtime.CompilerServices +public class CallConvFastcall // TypeDefIndex: 667 +{ + // Methods + public void .ctor(); // 0x100BF000 +} + +// Namespace: System.Runtime.CompilerServices +public class CallConvStdcall // TypeDefIndex: 668 +{ + // Methods + public void .ctor(); // 0x100BF000 +} + +// Namespace: System.Runtime.CompilerServices +public class CallConvThiscall // TypeDefIndex: 669 +{ + // Methods + public void .ctor(); // 0x100BF000 +} + +// Namespace: System.Runtime.CompilerServices +[Serializable] +public enum CompilationRelaxations // TypeDefIndex: 670 +{ + NoStringInterning = 8 +} + +// Namespace: System.Runtime.CompilerServices +[Serializable] +public class CompilationRelaxationsAttribute : Attribute // TypeDefIndex: 671 +{ + // Fields + private int relax; // 0x08 + + // Properties + public int CompilationRelaxations { get; } // 0x100BF0C0 + + // Methods + public void .ctor(int relaxations); // 0x100E5940 + public void .ctor(CompilationRelaxations relaxations); // 0x100E5940 +} + +// Namespace: System.Runtime.CompilerServices +[Serializable] +public class CompilerGlobalScopeAttribute : Attribute // TypeDefIndex: 672 +{ + // Methods + public void .ctor(); // 0x100C5970 +} + +// Namespace: System.Runtime.CompilerServices +public static class CompilerMarshalOverride // TypeDefIndex: 673 +{ +} + +// Namespace: System.Runtime.CompilerServices +[Serializable] +public abstract class CustomConstantAttribute : Attribute // TypeDefIndex: 674 +{ + // Properties + public abstract object Value { get; } + + // Methods + protected void .ctor(); // 0x100C5970 +} + +// Namespace: System.Runtime.CompilerServices +[Serializable] +public sealed class DateTimeConstantAttribute : CustomConstantAttribute // TypeDefIndex: 675 +{ + // Fields + private long ticks; // 0x08 + + // Properties + internal long Ticks { get; } // 0x10203300 + public override object Value { get; } // 0x10203310 + + // Methods + public void .ctor(long ticks); // 0x101237E0 +} + +// Namespace: System.Runtime.CompilerServices +[Serializable] +public sealed class DefaultDependencyAttribute : Attribute // TypeDefIndex: 676 +{ + // Fields + private LoadHint hint; // 0x08 + + // Properties + public LoadHint LoadHint { get; } // 0x100BF0C0 + + // Methods + public void .ctor(LoadHint loadHintArgument); // 0x100E5940 +} + +// Namespace: System.Runtime.CompilerServices +[Serializable] +public sealed class DependencyAttribute : Attribute // TypeDefIndex: 677 +{ + // Fields + private string dependentAssembly; // 0x08 + private LoadHint hint; // 0x0C + + // Properties + public string DependentAssembly { get; } // 0x100BF0C0 + public LoadHint LoadHint { get; } // 0x100C5B30 + + // Methods + public void .ctor(string dependentAssemblyArgument, LoadHint loadHintArgument); // 0x101237E0 +} + +// Namespace: System.Runtime.CompilerServices +public class DiscardableAttribute : Attribute // TypeDefIndex: 678 +{ + // Methods + public void .ctor(); // 0x100C5970 +} + +// Namespace: System.Runtime.CompilerServices +[Serializable] +public sealed class FixedAddressValueTypeAttribute : Attribute // TypeDefIndex: 679 +{ + // Methods + public void .ctor(); // 0x100C5970 +} + +// Namespace: System.Runtime.CompilerServices +[Serializable] +public sealed class HasCopySemanticsAttribute : Attribute // TypeDefIndex: 680 +{ + // Methods + public void .ctor(); // 0x100C5970 +} + +// Namespace: System.Runtime.CompilerServices +[Serializable] +public sealed class IDispatchConstantAttribute : CustomConstantAttribute // TypeDefIndex: 681 +{ + // Properties + public override object Value { get; } // 0x100C5600 + + // Methods + public void .ctor(); // 0x100C5970 +} + +// Namespace: System.Runtime.CompilerServices +[Serializable] +public sealed class IUnknownConstantAttribute : CustomConstantAttribute // TypeDefIndex: 682 +{ + // Properties + public override object Value { get; } // 0x100C5600 + + // Methods + public void .ctor(); // 0x100C5970 +} + +// Namespace: System.Runtime.CompilerServices +public static class IsBoxed // TypeDefIndex: 683 +{ +} + +// Namespace: System.Runtime.CompilerServices +public static class IsByValue // TypeDefIndex: 684 +{ +} + +// Namespace: System.Runtime.CompilerServices +public static class IsConst // TypeDefIndex: 685 +{ +} + +// Namespace: System.Runtime.CompilerServices +public static class IsCopyConstructed // TypeDefIndex: 686 +{ +} + +// Namespace: System.Runtime.CompilerServices +public static class IsExplicitlyDereferenced // TypeDefIndex: 687 +{ +} + +// Namespace: System.Runtime.CompilerServices +public static class IsImplicitlyDereferenced // TypeDefIndex: 688 +{ +} + +// Namespace: System.Runtime.CompilerServices +public static class IsJitIntrinsic // TypeDefIndex: 689 +{ +} + +// Namespace: System.Runtime.CompilerServices +public static class IsLong // TypeDefIndex: 690 +{ +} + +// Namespace: System.Runtime.CompilerServices +public static class IsPinned // TypeDefIndex: 691 +{ +} + +// Namespace: System.Runtime.CompilerServices +public static class IsSignUnspecifiedByte // TypeDefIndex: 692 +{ +} + +// Namespace: System.Runtime.CompilerServices +public static class IsUdtReturn // TypeDefIndex: 693 +{ +} + +// Namespace: System.Runtime.CompilerServices +public static class IsVolatile // TypeDefIndex: 694 +{ +} + +// Namespace: System.Runtime.CompilerServices +[Serializable] +public enum LoadHint // TypeDefIndex: 695 +{ + Default = 0, + Always = 1, + Sometimes = 2 +} + +// Namespace: System.Runtime.CompilerServices +[Serializable] +public enum MethodCodeType // TypeDefIndex: 696 +{ + IL = 0, + Native = 1, + OPTIL = 2, + Runtime = 3 +} + +// Namespace: System.Runtime.CompilerServices +[Serializable] +public enum MethodImplOptions // TypeDefIndex: 697 +{ + Unmanaged = 4, + NoInlining = 8, + ForwardRef = 16, + Synchronized = 32, + NoOptimization = 64, + PreserveSig = 128, + InternalCall = 4096 +} + +// Namespace: System.Runtime.CompilerServices +[Serializable] +public sealed class NativeCppClassAttribute : Attribute // TypeDefIndex: 698 +{ + // Methods + public void .ctor(); // 0x100C5970 +} + +// Namespace: System.Runtime.CompilerServices +[Serializable] +public sealed class RuntimeWrappedException : Exception // TypeDefIndex: 699 +{ + // Fields + private object wrapped_exception; // 0x34 + + // Properties + public object WrappedException { get; } // 0x100E9ED0 + + // Methods + private void .ctor(); // 0x10211520 + public override void GetObjectData(SerializationInfo info, StreamingContext context); // 0x102114C0 +} + +// Namespace: System.Runtime.CompilerServices +[Serializable] +public sealed class ScopelessEnumAttribute : Attribute // TypeDefIndex: 700 +{ + // Methods + public void .ctor(); // 0x100C5970 +} + +// Namespace: System.Runtime.CompilerServices +public sealed class SpecialNameAttribute : Attribute // TypeDefIndex: 701 +{ + // Methods + public void .ctor(); // 0x100C5970 +} + +// Namespace: System.Runtime.CompilerServices +[Serializable] +public sealed class StringFreezingAttribute : Attribute // TypeDefIndex: 702 +{ + // Methods + public void .ctor(); // 0x100C5970 +} + +// Namespace: System.Runtime.CompilerServices +public sealed class SuppressIldasmAttribute : Attribute // TypeDefIndex: 703 +{ + // Methods + public void .ctor(); // 0x100C5970 +} + +// Namespace: System.Runtime.ConstrainedExecution +[Serializable] +public enum Cer // TypeDefIndex: 704 +{ + None = 0, + MayFail = 1, + Success = 2 +} + +// Namespace: System.Runtime.ConstrainedExecution +[Serializable] +public enum Consistency // TypeDefIndex: 705 +{ + MayCorruptProcess = 0, + MayCorruptAppDomain = 1, + MayCorruptInstance = 2, + WillNotCorruptState = 3 +} + +// Namespace: System.Runtime.ConstrainedExecution +public abstract class CriticalFinalizerObject // TypeDefIndex: 706 +{ + // Methods + protected void .ctor(); // 0x100BF000 + protected override void Finalize(); // 0x101CF660 +} + +// Namespace: System.Runtime.ConstrainedExecution +public sealed class PrePrepareMethodAttribute : Attribute // TypeDefIndex: 707 +{ + // Methods + public void .ctor(); // 0x100C5970 +} + +// Namespace: System.Runtime.ConstrainedExecution +public sealed class ReliabilityContractAttribute : Attribute // TypeDefIndex: 708 +{ + // Fields + private Consistency consistency; // 0x08 + private Cer cer; // 0x0C + + // Properties + public Cer Cer { get; } // 0x100C5B30 + public Consistency ConsistencyGuarantee { get; } // 0x100BF0C0 + + // Methods + public void .ctor(Consistency consistencyGuarantee, Cer cer); // 0x101237E0 +} + +// Namespace: System.Runtime.Hosting +[Serializable] +public sealed class ActivationArguments // TypeDefIndex: 709 +{ + // Fields + private ActivationContext _context; // 0x08 + private ApplicationIdentity _identity; // 0x0C + private string[] _data; // 0x10 + + // Properties + public ActivationContext ActivationContext { get; } // 0x100BF0C0 + public string[] ActivationData { get; } // 0x100BFC20 + public ApplicationIdentity ApplicationIdentity { get; } // 0x100C5B30 + + // Methods + public void .ctor(ActivationContext activationData); // 0x10202490 + public void .ctor(ApplicationIdentity applicationIdentity); // 0x10202500 + public void .ctor(ActivationContext activationContext, string[] activationData); // 0x10202410 + public void .ctor(ApplicationIdentity applicationIdentity, string[] activationData); // 0x10202570 +} + +// Namespace: System.Runtime.Hosting +public class ApplicationActivator // TypeDefIndex: 710 +{ + // Methods + public void .ctor(); // 0x100BF000 + public virtual ObjectHandle CreateInstance(ActivationContext activationContext); // 0x10202800 + public virtual ObjectHandle CreateInstance(ActivationContext activationContext, string[] activationCustomData); // 0x10202830 + protected static ObjectHandle CreateInstanceHelper(AppDomainSetup adSetup); // 0x102025E0 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +public struct BINDPTR // TypeDefIndex: 711 +{ + // Fields + public IntPtr lpfuncdesc; // 0x08 + public IntPtr lptcomp; // 0x08 + public IntPtr lpvardesc; // 0x08 + +} + +// Namespace: System.Runtime.InteropServices.ComTypes +public struct BIND_OPTS // TypeDefIndex: 712 +{ + // Fields + public int cbStruct; // 0x08 + public int grfFlags; // 0x0C + public int grfMode; // 0x10 + public int dwTickCountDeadline; // 0x14 + +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[Serializable] +public enum CALLCONV // TypeDefIndex: 713 +{ + CC_CDECL = 1, + CC_PASCAL = 2, + CC_MSCPASCAL = 2, + CC_MACPASCAL = 3, + CC_STDCALL = 4, + CC_RESERVED = 5, + CC_SYSCALL = 6, + CC_MPWCDECL = 7, + CC_MPWPASCAL = 8, + CC_MAX = 9 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +public struct CONNECTDATA // TypeDefIndex: 714 +{ + // Fields + public object pUnk; // 0x08 + public int dwCookie; // 0x0C + +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[Serializable] +public enum DESCKIND // TypeDefIndex: 715 +{ + DESCKIND_NONE = 0, + DESCKIND_FUNCDESC = 1, + DESCKIND_VARDESC = 2, + DESCKIND_TYPECOMP = 3, + DESCKIND_IMPLICITAPPOBJ = 4, + DESCKIND_MAX = 5 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +public struct DISPPARAMS // TypeDefIndex: 716 +{ + // Fields + public IntPtr rgvarg; // 0x08 + public IntPtr rgdispidNamedArgs; // 0x0C + public int cArgs; // 0x10 + public int cNamedArgs; // 0x14 + +} + +// Namespace: System.Runtime.InteropServices.ComTypes +public struct ELEMDESC // TypeDefIndex: 717 +{ + // Fields + public TYPEDESC tdesc; // 0x08 + public DESCUNION desc; // 0x10 + +} + +// Namespace: +public struct DESCUNION // TypeDefIndex: 718 +{ + // Fields + public IDLDESC idldesc; // 0x08 + public PARAMDESC paramdesc; // 0x08 + +} + +// Namespace: System.Runtime.InteropServices.ComTypes +public struct EXCEPINFO // TypeDefIndex: 719 +{ + // Fields + public short wCode; // 0x08 + public short wReserved; // 0x0A + public string bstrSource; // 0x0C + public string bstrDescription; // 0x10 + public string bstrHelpFile; // 0x14 + public int dwHelpContext; // 0x18 + public IntPtr pvReserved; // 0x1C + public IntPtr pfnDeferredFillIn; // 0x20 + public int scode; // 0x24 + +} + +// Namespace: System.Runtime.InteropServices.ComTypes +public struct FILETIME // TypeDefIndex: 720 +{ + // Fields + public int dwLowDateTime; // 0x08 + public int dwHighDateTime; // 0x0C + +} + +// Namespace: System.Runtime.InteropServices.ComTypes +public struct FUNCDESC // TypeDefIndex: 721 +{ + // Fields + public int memid; // 0x08 + public IntPtr lprgscode; // 0x0C + public IntPtr lprgelemdescParam; // 0x10 + public FUNCKIND funckind; // 0x14 + public INVOKEKIND invkind; // 0x18 + public CALLCONV callconv; // 0x1C + public short cParams; // 0x20 + public short cParamsOpt; // 0x22 + public short oVft; // 0x24 + public short cScodes; // 0x26 + public ELEMDESC elemdescFunc; // 0x28 + public short wFuncFlags; // 0x38 + +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[Serializable] +public enum FUNCFLAGS // TypeDefIndex: 722 +{ + FUNCFLAG_FRESTRICTED = 1, + FUNCFLAG_FSOURCE = 2, + FUNCFLAG_FBINDABLE = 4, + FUNCFLAG_FREQUESTEDIT = 8, + FUNCFLAG_FDISPLAYBIND = 16, + FUNCFLAG_FDEFAULTBIND = 32, + FUNCFLAG_FHIDDEN = 64, + FUNCFLAG_FUSESGETLASTERROR = 128, + FUNCFLAG_FDEFAULTCOLLELEM = 256, + FUNCFLAG_FUIDEFAULT = 512, + FUNCFLAG_FNONBROWSABLE = 1024, + FUNCFLAG_FREPLACEABLE = 2048, + FUNCFLAG_FIMMEDIATEBIND = 4096 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[Serializable] +public enum FUNCKIND // TypeDefIndex: 723 +{ + FUNC_VIRTUAL = 0, + FUNC_PUREVIRTUAL = 1, + FUNC_NONVIRTUAL = 2, + FUNC_STATIC = 3, + FUNC_DISPATCH = 4 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[ComImport]public interface IBindCtx // TypeDefIndex: 724 +{ + // Methods + void RegisterObjectBound(object punk); // 0x10203A50 + void RevokeObjectBound(object punk); // 0x10203B90 + void ReleaseBoundObjects(); // 0x10203B60 + void SetBindOptions(BIND_OPTS pbindopts); // 0x10203C60 + void GetBindOptions(BIND_OPTS pbindopts); // 0x102038C0 + void GetRunningObjectTable(out IRunningObjectTable pprot); // 0x102039A0 + void RegisterObjectParam(string pszKey, object punk); // 0x10203AD0 + void GetObjectParam(string pszKey, out object ppunk); // 0x102038F0 + void EnumObjectParam(out IEnumString ppenum); // 0x10203810 + int RevokeObjectParam(string pszKey); // 0x10203C10 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[ComImport]public interface IConnectionPoint // TypeDefIndex: 725 +{ + // Methods + void GetConnectionInterface(out Guid pIID); // 0x10204200 + void GetConnectionPointContainer(out IConnectionPointContainer ppCPC); // 0x10204230 + void Advise(object pUnkSink, out int pdwCookie); // 0x102040D0 + void Unadvise(int dwCookie); // 0x102042E0 + void EnumConnections(out IEnumConnections ppEnum); // 0x10204150 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[ComImport]public interface IConnectionPointContainer // TypeDefIndex: 726 +{ + // Methods + void EnumConnectionPoints(out IEnumConnectionPoints ppEnum); // 0x10203F70 + void FindConnectionPoint(Guid riid, out IConnectionPoint ppCP); // 0x10204020 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +public struct IDLDESC // TypeDefIndex: 727 +{ + // Fields + public IntPtr dwReserved; // 0x08 + public IDLFLAG wIDLFlags; // 0x0C + +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[Serializable] +public enum IDLFLAG // TypeDefIndex: 728 +{ + IDLFLAG_NONE = 0, + IDLFLAG_FIN = 1, + IDLFLAG_FOUT = 2, + IDLFLAG_FLCID = 4, + IDLFLAG_FRETVAL = 8 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[ComImport]public interface IEnumConnectionPoints // TypeDefIndex: 729 +{ + // Methods + int Next(int celt, out IConnectionPoint[] rgelt, IntPtr pceltFetched); // 0x102043C0 + int Skip(int celt); // 0x10204410 + void Reset(); // 0x102043E0 + void Clone(out IEnumConnectionPoints ppenum); // 0x10204310 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[ComImport]public interface IEnumConnections // TypeDefIndex: 730 +{ + // Methods + int Next(int celt, out CONNECTDATA[] rgelt, IntPtr pceltFetched); // 0x10204500 + int Skip(int celt); // 0x10204680 + void Reset(); // 0x10204650 + void Clone(out IEnumConnections ppenum); // 0x10204450 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[ComImport]public interface IEnumMoniker // TypeDefIndex: 731 +{ + // Methods + int Next(int celt, out IMoniker[] rgelt, IntPtr pceltFetched); // 0x10204770 + int Skip(int celt); // 0x102047C0 + void Reset(); // 0x10204790 + void Clone(out IEnumMoniker ppenum); // 0x102046C0 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[ComImport]public interface IEnumString // TypeDefIndex: 732 +{ + // Methods + int Next(int celt, out string[] rgelt, IntPtr pceltFetched); // 0x102048B0 + int Skip(int celt); // 0x102049C0 + void Reset(); // 0x10204990 + void Clone(out IEnumString ppenum); // 0x10204800 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[ComImport]public interface IEnumVARIANT // TypeDefIndex: 733 +{ + // Methods + int Next(int celt, out object[] rgVar, IntPtr pceltFetched); // 0x10204AB0 + int Skip(int celt); // 0x10204B10 + int Reset(); // 0x10204AD0 + IEnumVARIANT Clone(); // 0x10204A00 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[Serializable] +public enum IMPLTYPEFLAGS // TypeDefIndex: 734 +{ + IMPLTYPEFLAG_FDEFAULT = 1, + IMPLTYPEFLAG_FSOURCE = 2, + IMPLTYPEFLAG_FRESTRICTED = 4, + IMPLTYPEFLAG_FDEFAULTVTABLE = 8 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[ComImport]public interface IMoniker // TypeDefIndex: 735 +{ + // Methods + void GetClassID(out Guid pClassID); // 0x10205060 + int IsDirty(); // 0x10205340 + void Load(IStream pStm); // 0x10205570 + void Save(IStream pStm, bool fClearDirty); // 0x102059B0 + void GetSizeMax(out long pcbSize); // 0x10205170 + void BindToObject(IBindCtx pbc, IMoniker pmkToLeft, Guid riidResult, out object ppvResult); // 0x10204B50 + void BindToStorage(IBindCtx pbc, IMoniker pmkToLeft, Guid riid, out object ppvObj); // 0x10204C90 + void Reduce(IBindCtx pbc, int dwReduceHowFar, IMoniker ppmkToLeft, out IMoniker ppmkReduced); // 0x10205730 + void ComposeWith(IMoniker pmkRight, bool fOnlyIfNotGeneric, out IMoniker ppmkComposite); // 0x10204EC0 + void Enum(bool fForward, out IEnumMoniker ppenumMoniker); // 0x10204FB0 + int IsEqual(IMoniker pmkOtherMoniker); // 0x10205380 + void Hash(out int pdwHash); // 0x10205260 + int IsRunning(IBindCtx pbc, IMoniker pmkToLeft, IMoniker pmkNewlyRunning); // 0x10205410 + void GetTimeOfLastChange(IBindCtx pbc, IMoniker pmkToLeft, out FILETIME pFileTime); // 0x102051A0 + void Inverse(out IMoniker ppmk); // 0x10205290 + void CommonPrefixWith(IMoniker pmkOther, out IMoniker ppmkPrefix); // 0x10204DD0 + void RelativePathTo(IMoniker pmkOther, out IMoniker ppmkRelPath); // 0x102058C0 + void GetDisplayName(IBindCtx pbc, IMoniker pmkToLeft, out string ppszDisplayName); // 0x10205090 + void ParseDisplayName(IBindCtx pbc, IMoniker pmkToLeft, string pszDisplayName, out int pchEaten, out IMoniker ppmkOut); // 0x102055F0 + int IsSystemMoniker(out int pdwMksys); // 0x10205530 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[Serializable] +public enum INVOKEKIND // TypeDefIndex: 736 +{ + INVOKE_FUNC = 1, + INVOKE_PROPERTYGET = 2, + INVOKE_PROPERTYPUT = 4, + INVOKE_PROPERTYPUTREF = 8 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[ComImport]public interface IPersistFile // TypeDefIndex: 737 +{ + // Methods + void GetClassID(out Guid pClassID); // 0x10205A30 + int IsDirty(); // 0x10205AB0 + void Load(string pszFileName, int dwMode); // 0x10205AF0 + void Save(string pszFileName, bool fRemember); // 0x10205B70 + void SaveCompleted(string pszFileName); // 0x10205B30 + void GetCurFile(out string ppszFileName); // 0x10205A60 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[ComImport]public interface IRunningObjectTable // TypeDefIndex: 738 +{ + // Methods + int Register(int grfFlags, object punkObject, IMoniker pmkObjectName); // 0x10205EB0 + void Revoke(int dwRegister); // 0x10205F80 + int IsRunning(IMoniker pmkObjectName); // 0x10205DF0 + int GetObject(IMoniker pmkObjectName, out object ppunkObject); // 0x10205C60 + void NoteChangeTime(int dwRegister, FILETIME pfiletime); // 0x10205E80 + int GetTimeOfLastChange(IMoniker pmkObjectName, out FILETIME pfiletime); // 0x10205D60 + void EnumRunning(out IEnumMoniker ppenumMoniker); // 0x10205BB0 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[ComImport]public interface IStream // TypeDefIndex: 739 +{ + // Methods + void Read(out byte[] pv, int cb, IntPtr pcbRead); // 0x10206150 + void Write(byte[] pv, int cb, IntPtr pcbWritten); // 0x10206370 + void Seek(long dlibMove, int dwOrigin, IntPtr plibNewPosition); // 0x10206210 + void SetSize(long libNewSize); // 0x10206250 + void CopyTo(IStream pstm, long cb, IntPtr pcbRead, IntPtr pcbWritten); // 0x10206090 + void Commit(int grfCommitFlags); // 0x10206060 + void Revert(); // 0x102061E0 + void LockRegion(long libOffset, long cb, int dwLockType); // 0x10206110 + void UnlockRegion(long libOffset, long cb, int dwLockType); // 0x10206330 + void Stat(out STATSTG pstatstg, int grfStatFlag); // 0x10206280 + void Clone(out IStream ppstm); // 0x10205FB0 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[ComImport]public interface ITypeComp // TypeDefIndex: 740 +{ + // Methods + void Bind(string szName, int lHashVal, short wFlags, out ITypeInfo ppTInfo, out DESCKIND pDescKind, out BINDPTR pBindPtr); // 0x102064D0 + void BindType(string szName, int lHashVal, out ITypeInfo ppTInfo, out ITypeComp ppTComp); // 0x102063B0 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[ComImport]public interface ITypeInfo // TypeDefIndex: 741 +{ + // Methods + void GetTypeAttr(out IntPtr ppTypeAttr); // 0x102078E0 + void GetTypeComp(out ITypeComp ppTComp); // 0x10207910 + void GetFuncDesc(int index, out IntPtr ppFuncDesc); // 0x10207540 + void GetVarDesc(int index, out IntPtr ppVarDesc); // 0x102079C0 + void GetNames(int memid, out string[] rgBstrNames, int cMaxNames, out int pcNames); // 0x10207730 + void GetRefTypeOfImplType(int index, out int href); // 0x102078B0 + void GetImplTypeFlags(int index, out IMPLTYPEFLAGS pImplTypeFlags); // 0x102076A0 + void GetIDsOfNames(string[] rgszNames, int cNames, out int[] pMemId); // 0x10207570 + void Invoke(object pvInstance, int memid, short wFlags, DISPPARAMS pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, out int puArgErr); // 0x102079F0 + void GetDocumentation(int index, out string strName, out string strDocString, out int dwHelpContext, out string strHelpFile); // 0x10207490 + void GetDllEntry(int memid, INVOKEKIND invKind, IntPtr pBstrDllName, IntPtr pBstrName, IntPtr pwOrdinal); // 0x10207450 + void GetRefTypeInfo(int hRef, out ITypeInfo ppTI); // 0x10207800 + void AddressOfMember(int memid, INVOKEKIND invKind, out IntPtr ppv); // 0x10207270 + void CreateInstance(object pUnkOuter, Guid riid, out object ppvObj); // 0x102072B0 + void GetMops(int memid, out string pBstrMops); // 0x102076D0 + void GetContainingTypeLib(out ITypeLib ppTLB, out int pIndex); // 0x102073A0 + void ReleaseTypeAttr(IntPtr pTypeAttr); // 0x10207AB0 + void ReleaseFuncDesc(IntPtr pFuncDesc); // 0x10207A80 + void ReleaseVarDesc(IntPtr pVarDesc); // 0x10207AE0 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[ComImport]public interface ITypeInfo2 : ITypeInfo // TypeDefIndex: 742 +{ + // Methods + void AddressOfMember(int memid, INVOKEKIND invKind, out IntPtr ppv); // 0x10206590 + void CreateInstance(object pUnkOuter, Guid riid, out object ppvObj); // 0x102065D0 + void GetContainingTypeLib(out ITypeLib ppTLB, out int pIndex); // 0x102067D0 + void GetDllEntry(int memid, INVOKEKIND invKind, IntPtr pBstrDllName, IntPtr pBstrName, IntPtr pwOrdinal); // 0x102068E0 + void GetDocumentation(int index, out string strName, out string strDocString, out int dwHelpContext, out string strHelpFile); // 0x102069A0 + void GetIDsOfNames(string[] rgszNames, int cNames, out int[] pMemId); // 0x10206B20 + void GetImplTypeFlags(int index, out IMPLTYPEFLAGS pImplTypeFlags); // 0x10206CB0 + void GetTypeKind(out TYPEKIND pTypeKind); // 0x10207060 + void GetTypeFlags(out int pTypeFlags); // 0x10207030 + void GetFuncDesc(int index, out IntPtr ppFuncDesc); // 0x10206AB0 + void GetMops(int memid, out string pBstrMops); // 0x10206CE0 + void GetNames(int memid, out string[] rgBstrNames, int cMaxNames, out int pcNames); // 0x10206D40 + void GetRefTypeInfo(int hRef, out ITypeInfo ppTI); // 0x10206E70 + void GetRefTypeOfImplType(int index, out int href); // 0x10206F20 + void GetTypeAttr(out IntPtr ppTypeAttr); // 0x10206F50 + void GetTypeComp(out ITypeComp ppTComp); // 0x10206F80 + void GetVarDesc(int index, out IntPtr ppVarDesc); // 0x102070F0 + void GetFuncIndexOfMemId(int memid, INVOKEKIND invKind, out int pFuncIndex); // 0x10206AE0 + void GetVarIndexOfMemId(int memid, out int pVarIndex); // 0x10207120 + void GetCustData(Guid guid, out object pVarVal); // 0x10206880 + void GetFuncCustData(int index, Guid guid, out object pVarVal); // 0x10206A50 + void GetParamCustData(int indexFunc, int indexParam, Guid guid, out object pVarVal); // 0x10206E10 + void GetVarCustData(int index, Guid guid, out object pVarVal); // 0x10207090 + void GetImplTypeCustData(int index, Guid guid, out object pVarVal); // 0x10206C50 + void GetDocumentation2(int memid, out string pbstrHelpString, out int pdwHelpStringContext, out string pbstrHelpStringDll); // 0x10206920 + void GetAllCustData(IntPtr pCustData); // 0x102066C0 + void GetAllFuncCustData(int index, IntPtr pCustData); // 0x102066F0 + void GetAllParamCustData(int indexFunc, int indexParam, IntPtr pCustData); // 0x10206760 + void GetAllVarCustData(int index, IntPtr pCustData); // 0x102067A0 + void GetAllImplTypeCustData(int index, IntPtr pCustData); // 0x10206720 + void Invoke(object pvInstance, int memid, short wFlags, DISPPARAMS pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, out int puArgErr); // 0x10207150 + void ReleaseTypeAttr(IntPtr pTypeAttr); // 0x10207210 + void ReleaseFuncDesc(IntPtr pFuncDesc); // 0x102071E0 + void ReleaseVarDesc(IntPtr pVarDesc); // 0x10207240 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[ComImport]public interface ITypeLib // TypeDefIndex: 743 +{ + // Methods + int GetTypeInfoCount(); // 0x101A3E60 + void GetTypeInfo(int index, out ITypeInfo ppTI); // 0x101A3F80 + void GetTypeInfoType(int index, out TYPEKIND pTKind); // 0x101A3F50 + void GetTypeInfoOfGuid(Guid guid, out ITypeInfo ppTInfo); // 0x101A3EA0 + void GetLibAttr(out IntPtr ppTLibAttr); // 0x101A3D80 + void GetTypeComp(out ITypeComp ppTComp); // 0x101A3DB0 + void GetDocumentation(int index, out string strName, out string strDocString, out int dwHelpContext, out string strHelpFile); // 0x101A3CD0 + bool IsName(string szNameBuf, int lHashVal); // 0x101A4030 + void FindName(string szNameBuf, int lHashVal, out ITypeInfo[] ppTInfo, out int[] rgMemId, short pcFound); // 0x101A3780 + void ReleaseTLibAttr(IntPtr pTLibAttr); // 0x101A4090 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[ComImport]public interface ITypeLib2 : ITypeLib // TypeDefIndex: 744 +{ + // Methods + void FindName(string szNameBuf, int lHashVal, out ITypeInfo[] ppTInfo, out int[] rgMemId, short pcFound); // 0x101A3780 + void GetCustData(Guid guid, out object pVarVal); // 0x101A37D0 + void GetDocumentation(int index, out string strName, out string strDocString, out int dwHelpContext, out string strHelpFile); // 0x101A38B0 + void GetLibAttr(out IntPtr ppTLibAttr); // 0x101A3960 + void GetLibStatistics(IntPtr pcUniqueNames, out int pcchUniqueNames); // 0x101A3990 + void GetDocumentation2(int index, out string pbstrHelpString, out int pdwHelpStringContext, out string pbstrHelpStringDll); // 0x101A3830 + void GetAllCustData(IntPtr pCustData); // 0x101A37A0 + void GetTypeComp(out ITypeComp ppTComp); // 0x101A39C0 + void GetTypeInfo(int index, out ITypeInfo ppTI); // 0x101A3B90 + void GetTypeInfoOfGuid(Guid guid, out ITypeInfo ppTInfo); // 0x101A3AB0 + void GetTypeInfoType(int index, out TYPEKIND pTKind); // 0x101A3B60 + bool IsName(string szNameBuf, int lHashVal); // 0x101A3C40 + void ReleaseTLibAttr(IntPtr pTLibAttr); // 0x101A3CA0 + int GetTypeInfoCount(); // 0x101A3A70 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[Serializable] +public enum LIBFLAGS // TypeDefIndex: 745 +{ + LIBFLAG_FRESTRICTED = 1, + LIBFLAG_FCONTROL = 2, + LIBFLAG_FHIDDEN = 4, + LIBFLAG_FHASDISKIMAGE = 8 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +public struct PARAMDESC // TypeDefIndex: 746 +{ + // Fields + public IntPtr lpVarValue; // 0x08 + public PARAMFLAG wParamFlags; // 0x0C + +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[Serializable] +public enum PARAMFLAG // TypeDefIndex: 747 +{ + PARAMFLAG_NONE = 0, + PARAMFLAG_FIN = 1, + PARAMFLAG_FOUT = 2, + PARAMFLAG_FLCID = 4, + PARAMFLAG_FRETVAL = 8, + PARAMFLAG_FOPT = 16, + PARAMFLAG_FHASDEFAULT = 32, + PARAMFLAG_FHASCUSTDATA = 64 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +public struct STATSTG // TypeDefIndex: 748 +{ + // Fields + public string pwcsName; // 0x08 + public int type; // 0x0C + public long cbSize; // 0x10 + public FILETIME mtime; // 0x18 + public FILETIME ctime; // 0x20 + public FILETIME atime; // 0x28 + public int grfMode; // 0x30 + public int grfLocksSupported; // 0x34 + public Guid clsid; // 0x38 + public int grfStateBits; // 0x48 + public int reserved; // 0x4C + +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[Serializable] +public enum SYSKIND // TypeDefIndex: 749 +{ + SYS_WIN16 = 0, + SYS_WIN32 = 1, + SYS_MAC = 2, + SYS_WIN64 = 3 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +public struct TYPEATTR // TypeDefIndex: 750 +{ + // Fields + public const int MEMBER_ID_NIL = -1; // 0x00 + public Guid guid; // 0x08 + public int lcid; // 0x18 + public int dwReserved; // 0x1C + public int memidConstructor; // 0x20 + public int memidDestructor; // 0x24 + public IntPtr lpstrSchema; // 0x28 + public int cbSizeInstance; // 0x2C + public TYPEKIND typekind; // 0x30 + public short cFuncs; // 0x34 + public short cVars; // 0x36 + public short cImplTypes; // 0x38 + public short cbSizeVft; // 0x3A + public short cbAlignment; // 0x3C + public TYPEFLAGS wTypeFlags; // 0x40 + public short wMajorVerNum; // 0x44 + public short wMinorVerNum; // 0x46 + public TYPEDESC tdescAlias; // 0x48 + public IDLDESC idldescType; // 0x50 + +} + +// Namespace: System.Runtime.InteropServices.ComTypes +public struct TYPEDESC // TypeDefIndex: 751 +{ + // Fields + public IntPtr lpValue; // 0x08 + public short vt; // 0x0C + +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[Serializable] +public enum TYPEFLAGS // TypeDefIndex: 752 +{ + TYPEFLAG_FAPPOBJECT = 1, + TYPEFLAG_FCANCREATE = 2, + TYPEFLAG_FLICENSED = 4, + TYPEFLAG_FPREDECLID = 8, + TYPEFLAG_FHIDDEN = 16, + TYPEFLAG_FCONTROL = 32, + TYPEFLAG_FDUAL = 64, + TYPEFLAG_FNONEXTENSIBLE = 128, + TYPEFLAG_FOLEAUTOMATION = 256, + TYPEFLAG_FRESTRICTED = 512, + TYPEFLAG_FAGGREGATABLE = 1024, + TYPEFLAG_FREPLACEABLE = 2048, + TYPEFLAG_FDISPATCHABLE = 4096, + TYPEFLAG_FREVERSEBIND = 8192, + TYPEFLAG_FPROXY = 16384 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[Serializable] +public enum TYPEKIND // TypeDefIndex: 753 +{ + TKIND_ENUM = 0, + TKIND_RECORD = 1, + TKIND_MODULE = 2, + TKIND_INTERFACE = 3, + TKIND_DISPATCH = 4, + TKIND_COCLASS = 5, + TKIND_ALIAS = 6, + TKIND_UNION = 7, + TKIND_MAX = 8 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[Serializable] +public struct TYPELIBATTR // TypeDefIndex: 754 +{ + // Fields + public Guid guid; // 0x08 + public int lcid; // 0x18 + public SYSKIND syskind; // 0x1C + public short wMajorVerNum; // 0x20 + public short wMinorVerNum; // 0x22 + public LIBFLAGS wLibFlags; // 0x24 + +} + +// Namespace: System.Runtime.InteropServices.ComTypes +public struct VARDESC // TypeDefIndex: 755 +{ + // Fields + public int memid; // 0x08 + public string lpstrSchema; // 0x0C + public DESCUNION desc; // 0x10 + public ELEMDESC elemdescVar; // 0x14 + public short wVarFlags; // 0x24 + public VARKIND varkind; // 0x28 + +} + +// Namespace: +public struct DESCUNION // TypeDefIndex: 756 +{ + // Fields + public IntPtr lpvarValue; // 0x08 + public int oInst; // 0x08 + +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[Serializable] +public enum VARFLAGS // TypeDefIndex: 757 +{ + VARFLAG_FREADONLY = 1, + VARFLAG_FSOURCE = 2, + VARFLAG_FBINDABLE = 4, + VARFLAG_FREQUESTEDIT = 8, + VARFLAG_FDISPLAYBIND = 16, + VARFLAG_FDEFAULTBIND = 32, + VARFLAG_FHIDDEN = 64, + VARFLAG_FRESTRICTED = 128, + VARFLAG_FDEFAULTCOLLELEM = 256, + VARFLAG_FUIDEFAULT = 512, + VARFLAG_FNONBROWSABLE = 1024, + VARFLAG_FREPLACEABLE = 2048, + VARFLAG_FIMMEDIATEBIND = 4096 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[Serializable] +public enum VARKIND // TypeDefIndex: 758 +{ + VAR_PERINSTANCE = 0, + VAR_STATIC = 1, + VAR_CONST = 2, + VAR_DISPATCH = 3 +} + +// Namespace: System.Runtime.InteropServices.Expando +public interface IExpando : IReflect // TypeDefIndex: 759 +{ + // Methods + FieldInfo AddField(string name); + MethodInfo AddMethod(string name, Delegate method); + PropertyInfo AddProperty(string name); + void RemoveMember(MemberInfo m); +} + +// Namespace: System.Runtime.InteropServices +public sealed class AllowReversePInvokeCallsAttribute : Attribute // TypeDefIndex: 760 +{ + // Methods + public void .ctor(); // 0x100C5970 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public struct ArrayWithOffset // TypeDefIndex: 761 +{ + // Fields + private object array; // 0x08 + private int offset; // 0x0C + + // Methods + public void .ctor(object array, int offset); // 0x100075A0 + public override bool Equals(object obj); // 0x100182A0 + public bool Equals(ArrayWithOffset obj); // 0x10018320 + public override int GetHashCode(); // 0x10003A90 + public object GetArray(); // 0x10003A80 + public int GetOffset(); // 0x10003A90 + public static bool op_Equality(ArrayWithOffset a, ArrayWithOffset b); // 0x102028B0 + public static bool op_Inequality(ArrayWithOffset a, ArrayWithOffset b); // 0x102028D0 +} + +// Namespace: System.Runtime.InteropServices +public enum AssemblyRegistrationFlags // TypeDefIndex: 762 +{ + None = 0, + SetCodeBase = 1 +} + +// Namespace: System.Runtime.InteropServices +public sealed class AutomationProxyAttribute : Attribute // TypeDefIndex: 763 +{ + // Fields + private bool val; // 0x08 + + // Properties + public bool Value { get; } // 0x100EA020 + + // Methods + public void .ctor(bool val); // 0x100EA000 +} + +// Namespace: System.Runtime.InteropServices +public struct BINDPTR // TypeDefIndex: 764 +{ + // Fields + public IntPtr lpfuncdesc; // 0x08 + public IntPtr lptcomp; // 0x08 + public IntPtr lpvardesc; // 0x08 + +} + +// Namespace: System.Runtime.InteropServices +public struct BIND_OPTS // TypeDefIndex: 765 +{ + // Fields + public int cbStruct; // 0x08 + public int grfFlags; // 0x0C + public int grfMode; // 0x10 + public int dwTickCountDeadline; // 0x14 + +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public sealed class BStrWrapper // TypeDefIndex: 766 +{ + // Fields + private string _value; // 0x08 + + // Properties + public string WrappedObject { get; } // 0x100BF0C0 + + // Methods + public void .ctor(string value); // 0x10113500 +} + +// Namespace: System.Runtime.InteropServices +public sealed class BestFitMappingAttribute : Attribute // TypeDefIndex: 767 +{ + // Fields + private bool bfm; // 0x08 + public bool ThrowOnUnmappableChar; // 0x09 + + // Properties + public bool BestFitMapping { get; } // 0x100EA020 + + // Methods + public void .ctor(bool BestFitMapping); // 0x100EA000 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum CALLCONV // TypeDefIndex: 768 +{ + CC_CDECL = 1, + CC_PASCAL = 2, + CC_MSCPASCAL = 2, + CC_MACPASCAL = 3, + CC_STDCALL = 4, + CC_RESERVED = 5, + CC_SYSCALL = 6, + CC_MPWCDECL = 7, + CC_MPWPASCAL = 8, + CC_MAX = 9 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public class COMException : ExternalException // TypeDefIndex: 769 +{ + // Methods + public void .ctor(); // 0x10202C20 + public void .ctor(string message); // 0x10202C10 + public void .ctor(string message, Exception inner); // 0x10202C30 + public void .ctor(string message, int errorCode); // 0x10202C00 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100F8FE0 + public override string ToString(); // 0x102028F0 +} + +// Namespace: System.Runtime.InteropServices +public struct CONNECTDATA // TypeDefIndex: 770 +{ + // Fields + public object pUnk; // 0x08 + public int dwCookie; // 0x0C + +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum CallingConvention // TypeDefIndex: 771 +{ + Winapi = 1, + Cdecl = 2, + StdCall = 3, + ThisCall = 4, + FastCall = 5 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum CharSet // TypeDefIndex: 772 +{ + None = 1, + Ansi = 2, + Unicode = 3, + Auto = 4 +} + +// Namespace: System.Runtime.InteropServices +public sealed class ClassInterfaceAttribute : Attribute // TypeDefIndex: 773 +{ + // Fields + private ClassInterfaceType ciType; // 0x08 + + // Properties + public ClassInterfaceType Value { get; } // 0x100BF0C0 + + // Methods + public void .ctor(short classInterfaceType); // 0x101A3760 + public void .ctor(ClassInterfaceType classInterfaceType); // 0x100E5940 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum ClassInterfaceType // TypeDefIndex: 774 +{ + None = 0, + AutoDispatch = 1, + AutoDual = 2 +} + +// Namespace: System.Runtime.InteropServices +public sealed class ComAliasNameAttribute : Attribute // TypeDefIndex: 775 +{ + // Fields + private string val; // 0x08 + + // Properties + public string Value { get; } // 0x100BF0C0 + + // Methods + public void .ctor(string alias); // 0x100E5940 +} + +// Namespace: System.Runtime.InteropServices +public sealed class ComCompatibleVersionAttribute : Attribute // TypeDefIndex: 776 +{ + // Fields + private int major; // 0x08 + private int minor; // 0x0C + private int build; // 0x10 + private int revision; // 0x14 + + // Properties + public int MajorVersion { get; } // 0x100BF0C0 + public int MinorVersion { get; } // 0x100C5B30 + public int BuildNumber { get; } // 0x100BFC20 + public int RevisionNumber { get; } // 0x100EF0C0 + + // Methods + public void .ctor(int major, int minor, int build, int revision); // 0x10203050 +} + +// Namespace: System.Runtime.InteropServices +public sealed class ComConversionLossAttribute : Attribute // TypeDefIndex: 777 +{ + // Methods + public void .ctor(); // 0x100C5970 +} + +// Namespace: System.Runtime.InteropServices +public sealed class ComDefaultInterfaceAttribute : Attribute // TypeDefIndex: 778 +{ + // Fields + private Type _type; // 0x08 + + // Properties + public Type Value { get; } // 0x100BF0C0 + + // Methods + public void .ctor(Type defaultInterface); // 0x100E5940 +} + +// Namespace: System.Runtime.InteropServices +public sealed class ComEventInterfaceAttribute : Attribute // TypeDefIndex: 779 +{ + // Fields + private Type si; // 0x08 + private Type ep; // 0x0C + + // Properties + public Type EventProvider { get; } // 0x100C5B30 + public Type SourceInterface { get; } // 0x100BF0C0 + + // Methods + public void .ctor(Type SourceInterface, Type EventProvider); // 0x101237E0 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum ComInterfaceType // TypeDefIndex: 780 +{ + InterfaceIsDual = 0, + InterfaceIsIUnknown = 1, + InterfaceIsIDispatch = 2 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum ComMemberType // TypeDefIndex: 781 +{ + Method = 0, + PropGet = 1, + PropSet = 2 +} + +// Namespace: System.Runtime.InteropServices +public sealed class ComRegisterFunctionAttribute : Attribute // TypeDefIndex: 782 +{ + // Methods + public void .ctor(); // 0x100C5970 +} + +// Namespace: System.Runtime.InteropServices +public sealed class ComSourceInterfacesAttribute : Attribute // TypeDefIndex: 783 +{ + // Fields + private string internalValue; // 0x08 + + // Properties + public string Value { get; } // 0x100BF0C0 + + // Methods + public void .ctor(string sourceInterfaces); // 0x100E5940 + public void .ctor(Type sourceInterface); // 0x101AA7B0 + public void .ctor(Type sourceInterface1, Type sourceInterface2); // 0x10203080 + public void .ctor(Type sourceInterface1, Type sourceInterface2, Type sourceInterface3); // 0x10203230 + public void .ctor(Type sourceInterface1, Type sourceInterface2, Type sourceInterface3, Type sourceInterface4); // 0x10203130 +} + +// Namespace: System.Runtime.InteropServices +public sealed class ComUnregisterFunctionAttribute : Attribute // TypeDefIndex: 784 +{ + // Methods + public void .ctor(); // 0x100C5970 +} + +// Namespace: System.Runtime.InteropServices +public abstract class CriticalHandle : CriticalFinalizerObject, IDisposable // TypeDefIndex: 785 +{ + // Fields + protected IntPtr handle; // 0x08 + private bool _disposed; // 0x0C + + // Properties + public bool IsClosed { get; } // 0x100F8910 + public abstract bool IsInvalid { get; } + + // Methods + protected void .ctor(IntPtr invalidHandleValue); // 0x100E5940 + protected override void Finalize(); // 0x101A1D60 + public void Close(); // 0x101A1CD0 + public void Dispose(); // 0x101A1CD0 + protected virtual void Dispose(bool disposing); // 0x101A1CF0 + protected abstract bool ReleaseHandle(); + protected void SetHandle(IntPtr handle); // 0x100EB270 + public void SetHandleAsInvalid(); // 0x101A1E20 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public sealed class CurrencyWrapper // TypeDefIndex: 786 +{ + // Fields + private Decimal currency; // 0x08 + + // Properties + public Decimal WrappedObject { get; } // 0x10192480 + + // Methods + public void .ctor(Decimal obj); // 0x10192460 + public void .ctor(object obj); // 0x101A2DA0 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum DESCKIND // TypeDefIndex: 787 +{ + DESCKIND_NONE = 0, + DESCKIND_FUNCDESC = 1, + DESCKIND_VARDESC = 2, + DESCKIND_TYPECOMP = 3, + DESCKIND_IMPLICITAPPOBJ = 4, + DESCKIND_MAX = 5 +} + +// Namespace: System.Runtime.InteropServices +public struct DISPPARAMS // TypeDefIndex: 788 +{ + // Fields + public IntPtr rgvarg; // 0x08 + public IntPtr rgdispidNamedArgs; // 0x0C + public int cArgs; // 0x10 + public int cNamedArgs; // 0x14 + +} + +// Namespace: System.Runtime.InteropServices +public sealed class DispIdAttribute : Attribute // TypeDefIndex: 789 +{ + // Fields + private int id; // 0x08 + + // Properties + public int Value { get; } // 0x100BF0C0 + + // Methods + public void .ctor(int dispId); // 0x100E5940 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public sealed class DispatchWrapper // TypeDefIndex: 790 +{ + // Fields + private object wrappedObject; // 0x08 + + // Properties + public object WrappedObject { get; } // 0x100BF0C0 + + // Methods + public void .ctor(object obj); // 0x101A2E80 +} + +// Namespace: System.Runtime.InteropServices +public struct ELEMDESC // TypeDefIndex: 791 +{ + // Fields + public TYPEDESC tdesc; // 0x08 + public DESCUNION desc; // 0x10 + +} + +// Namespace: +public struct DESCUNION // TypeDefIndex: 792 +{ + // Fields + public IDLDESC idldesc; // 0x08 + public PARAMDESC paramdesc; // 0x08 + +} + +// Namespace: System.Runtime.InteropServices +public struct EXCEPINFO // TypeDefIndex: 793 +{ + // Fields + public short wCode; // 0x08 + public short wReserved; // 0x0A + public string bstrSource; // 0x0C + public string bstrDescription; // 0x10 + public string bstrHelpFile; // 0x14 + public int dwHelpContext; // 0x18 + public IntPtr pvReserved; // 0x1C + public IntPtr pfnDeferredFillIn; // 0x20 + +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public sealed class ErrorWrapper // TypeDefIndex: 794 +{ + // Fields + private int errorCode; // 0x08 + + // Properties + public int ErrorCode { get; } // 0x100BF0C0 + + // Methods + public void .ctor(Exception e); // 0x101A2F50 + public void .ctor(int errorCode); // 0x10113500 + public void .ctor(object errorCode); // 0x101A2FC0 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum ExporterEventKind // TypeDefIndex: 795 +{ + NOTIF_TYPECONVERTED = 0, + NOTIF_CONVERTWARNING = 1, + ERROR_REFTOINVALIDASSEMBLY = 2 +} + +// Namespace: System.Runtime.InteropServices +public sealed class ExtensibleClassFactory // TypeDefIndex: 796 +{ + // Fields + private static Hashtable hashtable; // 0x00 + + // Methods + private void .ctor(); // 0x100BF000 + private static void .cctor(); // 0x101A3350 + internal static ObjectCreationDelegate GetObjectCreationCallback(Type t); // 0x101A3170 + public static void RegisterObjectCreationCallback(ObjectCreationDelegate callback); // 0x101A31F0 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public class ExternalException : SystemException // TypeDefIndex: 797 +{ + // Properties + public virtual int ErrorCode { get; } // 0x100EB040 + + // Methods + public void .ctor(); // 0x101A33F0 + public void .ctor(string message); // 0x101A33A0 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 + public void .ctor(string message, Exception inner); // 0x101A33C0 + public void .ctor(string message, int errorCode); // 0x100FCF70 +} + +// Namespace: System.Runtime.InteropServices +public struct FILETIME // TypeDefIndex: 798 +{ + // Fields + public int dwLowDateTime; // 0x08 + public int dwHighDateTime; // 0x0C + +} + +// Namespace: System.Runtime.InteropServices +public struct FUNCDESC // TypeDefIndex: 799 +{ + // Fields + public int memid; // 0x08 + public IntPtr lprgscode; // 0x0C + public IntPtr lprgelemdescParam; // 0x10 + public FUNCKIND funckind; // 0x14 + public INVOKEKIND invkind; // 0x18 + public CALLCONV callconv; // 0x1C + public short cParams; // 0x20 + public short cParamsOpt; // 0x22 + public short oVft; // 0x24 + public short cScodes; // 0x26 + public ELEMDESC elemdescFunc; // 0x28 + public short wFuncFlags; // 0x38 + +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum FUNCFLAGS // TypeDefIndex: 800 +{ + FUNCFLAG_FRESTRICTED = 1, + FUNCFLAG_FSOURCE = 2, + FUNCFLAG_FBINDABLE = 4, + FUNCFLAG_FREQUESTEDIT = 8, + FUNCFLAG_FDISPLAYBIND = 16, + FUNCFLAG_FDEFAULTBIND = 32, + FUNCFLAG_FHIDDEN = 64, + FUNCFLAG_FUSESGETLASTERROR = 128, + FUNCFLAG_FDEFAULTCOLLELEM = 256, + FUNCFLAG_FUIDEFAULT = 512, + FUNCFLAG_FNONBROWSABLE = 1024, + FUNCFLAG_FREPLACEABLE = 2048, + FUNCFLAG_FIMMEDIATEBIND = 4096 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum FUNCKIND // TypeDefIndex: 801 +{ + FUNC_VIRTUAL = 0, + FUNC_PUREVIRTUAL = 1, + FUNC_NONVIRTUAL = 2, + FUNC_STATIC = 3, + FUNC_DISPATCH = 4 +} + +// Namespace: System.Runtime.InteropServices +public struct GCHandle // TypeDefIndex: 802 +{ + // Fields + private int handle; // 0x08 + + // Properties + public bool IsAllocated { get; } // 0x10009740 + public object Target { get; set; } // 0x10009750 0x100097D0 + + // Methods + private void .ctor(IntPtr h); // 0x10009720 + private void .ctor(object obj); // 0x100096D0 + private void .ctor(object value, GCHandleType type); // 0x100096F0 + public IntPtr AddrOfPinnedObject(); // 0x100095E0 + public static GCHandle Alloc(object value); // 0x101A3470 + public static GCHandle Alloc(object value, GCHandleType type); // 0x101A3440 + public void Free(); // 0x100096B0 + private static bool CheckCurrentDomain(int handle); // 0x101A3490 + private static object GetTarget(int handle); // 0x101A3610 + private static int GetTargetHandle(object obj, int handle, GCHandleType type); // 0x101A35F0 + private static void FreeHandle(int handle); // 0x101A3510 + private static IntPtr GetAddrOfPinnedObject(int handle); // 0x101A35E0 + public override bool Equals(object o); // 0x100096A0 + public override int GetHashCode(); // 0x10006260 + public static GCHandle FromIntPtr(IntPtr value); // 0x101A3540 + public static IntPtr ToIntPtr(GCHandle value); // 0x101A3620 + public static IntPtr op_Explicit(GCHandle value); // 0x101A3620 + public static GCHandle op_Explicit(IntPtr value); // 0x101A3540 + public static bool op_Equality(GCHandle a, GCHandle b); // 0x101A36A0 + public static bool op_Inequality(GCHandle a, GCHandle b); // 0x101A36F0 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum GCHandleType // TypeDefIndex: 803 +{ + Weak = 0, + WeakTrackResurrection = 1, + Normal = 2, + Pinned = 3 +} + +// Namespace: System.Runtime.InteropServices +public struct HandleRef // TypeDefIndex: 804 +{ + // Fields + private object wrapper; // 0x08 + private IntPtr handle; // 0x0C + + // Properties + public IntPtr Handle { get; } // 0x10003A90 + public object Wrapper { get; } // 0x10003A80 + + // Methods + public void .ctor(object wrapper, IntPtr handle); // 0x100075A0 + public static IntPtr ToIntPtr(HandleRef value); // 0x10102390 + public static IntPtr op_Explicit(HandleRef value); // 0x10102390 +} + +// Namespace: System.Runtime.InteropServices +public interface ICustomAdapter // TypeDefIndex: 805 +{ + // Methods + object GetUnderlyingObject(); +} + +// Namespace: System.Runtime.InteropServices +public interface ICustomFactory // TypeDefIndex: 806 +{ + // Methods + MarshalByRefObject CreateInstance(Type serverType); +} + +// Namespace: System.Runtime.InteropServices +public interface ICustomMarshaler // TypeDefIndex: 807 +{ + // Methods + void CleanUpManagedData(object ManagedObj); + void CleanUpNativeData(IntPtr pNativeData); + int GetNativeDataSize(); + IntPtr MarshalManagedToNative(object ManagedObj); + object MarshalNativeToManaged(IntPtr pNativeData); +} + +// Namespace: System.Runtime.InteropServices +public struct IDLDESC // TypeDefIndex: 808 +{ + // Fields + public int dwReserved; // 0x08 + public IDLFLAG wIDLFlags; // 0x0C + +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum IDLFLAG // TypeDefIndex: 809 +{ + IDLFLAG_NONE = 0, + IDLFLAG_FIN = 1, + IDLFLAG_FOUT = 2, + IDLFLAG_FLCID = 4, + IDLFLAG_FRETVAL = 8 +} + +// Namespace: System.Runtime.InteropServices +public sealed class IDispatchImplAttribute : Attribute // TypeDefIndex: 810 +{ + // Fields + private IDispatchImplType Impl; // 0x08 + + // Properties + public IDispatchImplType Value { get; } // 0x100BF0C0 + + // Methods + public void .ctor(IDispatchImplType implType); // 0x100E5940 + public void .ctor(short implType); // 0x101A3760 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum IDispatchImplType // TypeDefIndex: 811 +{ + SystemDefinedImpl = 0, + InternalImpl = 1, + CompatibleImpl = 2 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum IMPLTYPEFLAGS // TypeDefIndex: 812 +{ + IMPLTYPEFLAG_FDEFAULT = 1, + IMPLTYPEFLAG_FSOURCE = 2, + IMPLTYPEFLAG_FRESTRICTED = 4, + IMPLTYPEFLAG_FDEFAULTVTABLE = 8 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum INVOKEKIND // TypeDefIndex: 813 +{ + INVOKE_FUNC = 1, + INVOKE_PROPERTYGET = 2, + INVOKE_PROPERTYPUT = 4, + INVOKE_PROPERTYPUTREF = 8 +} + +// Namespace: System.Runtime.InteropServices +public interface IRegistrationServices // TypeDefIndex: 814 +{ + // Methods + Guid GetManagedCategoryGuid(); + string GetProgIdForType(Type type); + Type[] GetRegistrableTypesInAssembly(Assembly assembly); + bool RegisterAssembly(Assembly assembly, AssemblyRegistrationFlags flags); + void RegisterTypeForComClients(Type type, Guid g); + bool TypeRepresentsComType(Type type); + bool TypeRequiresRegistration(Type type); + bool UnregisterAssembly(Assembly assembly); +} + +// Namespace: System.Runtime.InteropServices +public interface ITypeLibConverter // TypeDefIndex: 815 +{ + // Methods + object ConvertAssemblyToTypeLib(Assembly assembly, string typeLibName, TypeLibExporterFlags flags, ITypeLibExporterNotifySink notifySink); + AssemblyBuilder ConvertTypeLibToAssembly(object typeLib, string asmFileName, int flags, ITypeLibImporterNotifySink notifySink, byte[] publicKey, StrongNameKeyPair keyPair, bool unsafeInterfaces); + AssemblyBuilder ConvertTypeLibToAssembly(object typeLib, string asmFileName, TypeLibImporterFlags flags, ITypeLibImporterNotifySink notifySink, byte[] publicKey, StrongNameKeyPair keyPair, string asmNamespace, Version asmVersion); + bool GetPrimaryInteropAssembly(Guid g, int major, int minor, int lcid, out string asmName, out string asmCodeBase); +} + +// Namespace: System.Runtime.InteropServices +public interface ITypeLibExporterNameProvider // TypeDefIndex: 816 +{ + // Methods + string[] GetNames(); +} + +// Namespace: System.Runtime.InteropServices +public interface ITypeLibExporterNotifySink // TypeDefIndex: 817 +{ + // Methods + void ReportEvent(ExporterEventKind eventKind, int eventCode, string eventMsg); + object ResolveRef(Assembly assembly); +} + +// Namespace: System.Runtime.InteropServices +public interface ITypeLibImporterNotifySink // TypeDefIndex: 818 +{ + // Methods + void ReportEvent(ImporterEventKind eventKind, int eventCode, string eventMsg); + Assembly ResolveRef(object typeLib); +} + +// Namespace: System.Runtime.InteropServices +public sealed class ImportedFromTypeLibAttribute : Attribute // TypeDefIndex: 819 +{ + // Fields + private string TlbFile; // 0x08 + + // Properties + public string Value { get; } // 0x100BF0C0 + + // Methods + public void .ctor(string tlbFile); // 0x100E5940 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum ImporterEventKind // TypeDefIndex: 820 +{ + NOTIF_TYPECONVERTED = 0, + NOTIF_CONVERTWARNING = 1, + ERROR_REFTOINVALIDTYPELIB = 2 +} + +// Namespace: System.Runtime.InteropServices +public sealed class InterfaceTypeAttribute : Attribute // TypeDefIndex: 821 +{ + // Fields + private ComInterfaceType intType; // 0x08 + + // Properties + public ComInterfaceType Value { get; } // 0x100BF0C0 + + // Methods + public void .ctor(ComInterfaceType interfaceType); // 0x100E5940 + public void .ctor(short interfaceType); // 0x101A3760 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public class InvalidComObjectException : SystemException // TypeDefIndex: 822 +{ + // Fields + private const int ErrorCode = -2146233049; // 0x00 + + // Methods + public void .ctor(); // 0x101A40C0 + public void .ctor(string message); // 0x101A4110 + public void .ctor(string message, Exception inner); // 0x101A4130 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public class InvalidOleVariantTypeException : SystemException // TypeDefIndex: 823 +{ + // Fields + private const int ErrorCode = -2146233039; // 0x00 + + // Methods + public void .ctor(); // 0x101A4180 + public void .ctor(string message); // 0x101A4160 + public void .ctor(string message, Exception inner); // 0x101A41D0 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 +} + +// Namespace: System.Runtime.InteropServices +public sealed class LCIDConversionAttribute : Attribute // TypeDefIndex: 824 +{ + // Fields + private int id; // 0x08 + + // Properties + public int Value { get; } // 0x100BF0C0 + + // Methods + public void .ctor(int lcid); // 0x100E5940 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum LIBFLAGS // TypeDefIndex: 825 +{ + LIBFLAG_FRESTRICTED = 1, + LIBFLAG_FCONTROL = 2, + LIBFLAG_FHIDDEN = 4, + LIBFLAG_FHASDISKIMAGE = 8 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum LayoutKind // TypeDefIndex: 826 +{ + Sequential = 0, + Explicit = 2, + Auto = 3 +} + +// Namespace: System.Runtime.InteropServices +public static class Marshal // TypeDefIndex: 827 +{ + // Fields + public static readonly int SystemMaxDBCSCharSize; // 0x00 + public static readonly int SystemDefaultCharSize; // 0x04 + + // Methods + private static void .cctor(); // 0x101A85A0 + private static int AddRefInternal(IntPtr pUnk); // 0x101A42A0 + public static int AddRef(IntPtr pUnk); // 0x101A42B0 + public static IntPtr AllocCoTaskMem(int cb); // 0x101A4350 + public static IntPtr AllocHGlobal(IntPtr cb); // 0x101A43C0 + public static IntPtr AllocHGlobal(int cb); // 0x101A4360 + public static object BindToMoniker(string monikerName); // 0x101A43D0 + public static void ChangeWrapperHandleStrength(object otp, bool fIsWeak); // 0x101A4420 + private static void copy_to_unmanaged(Array source, int startIndex, IntPtr destination, int length); // 0x101A8620 + private static void copy_from_unmanaged(IntPtr source, int startIndex, Array destination, int length); // 0x101A8600 + public static void Copy(byte[] source, int startIndex, IntPtr destination, int length); // 0x101A4B70 + public static void Copy(char[] source, int startIndex, IntPtr destination, int length); // 0x101A4BD0 + public static void Copy(short[] source, int startIndex, IntPtr destination, int length); // 0x101A4B10 + public static void Copy(int[] source, int startIndex, IntPtr destination, int length); // 0x101A4690 + public static void Copy(long[] source, int startIndex, IntPtr destination, int length); // 0x101A48D0 + public static void Copy(float[] source, int startIndex, IntPtr destination, int length); // 0x101A4930 + public static void Copy(double[] source, int startIndex, IntPtr destination, int length); // 0x101A4870 + public static void Copy(IntPtr[] source, int startIndex, IntPtr destination, int length); // 0x101A49F0 + public static void Copy(IntPtr source, byte[] destination, int startIndex, int length); // 0x101A4810 + public static void Copy(IntPtr source, char[] destination, int startIndex, int length); // 0x101A46F0 + public static void Copy(IntPtr source, short[] destination, int startIndex, int length); // 0x101A4990 + public static void Copy(IntPtr source, int[] destination, int startIndex, int length); // 0x101A4750 + public static void Copy(IntPtr source, long[] destination, int startIndex, int length); // 0x101A4AB0 + public static void Copy(IntPtr source, float[] destination, int startIndex, int length); // 0x101A4A50 + public static void Copy(IntPtr source, double[] destination, int startIndex, int length); // 0x101A4630 + public static void Copy(IntPtr source, IntPtr[] destination, int startIndex, int length); // 0x101A47B0 + public static IntPtr CreateAggregatedObject(IntPtr pOuter, object o); // 0x101A4C30 + public static object CreateWrapperOfType(object o, Type t); // 0x101A4C80 + public static void DestroyStructure(IntPtr ptr, Type structuretype); // 0x101A4E60 + public static void FreeBSTR(IntPtr ptr); // 0x101A4FA0 + public static void FreeCoTaskMem(IntPtr ptr); // 0x101A4FB0 + public static void FreeHGlobal(IntPtr hglobal); // 0x101A4FC0 + private static void ClearBSTR(IntPtr ptr); // 0x101A4500 + public static void ZeroFreeBSTR(IntPtr s); // 0x101A8340 + private static void ClearAnsi(IntPtr ptr); // 0x101A4470 + private static void ClearUnicode(IntPtr ptr); // 0x101A45A0 + public static void ZeroFreeCoTaskMemAnsi(IntPtr s); // 0x101A8420 + public static void ZeroFreeCoTaskMemUnicode(IntPtr s); // 0x101A8480 + public static void ZeroFreeGlobalAllocAnsi(IntPtr s); // 0x101A84E0 + public static void ZeroFreeGlobalAllocUnicode(IntPtr s); // 0x101A8540 + public static Guid GenerateGuidForType(Type type); // 0x101A4FD0 + public static string GenerateProgIdForType(Type type); // 0x101A5010 + public static object GetActiveObject(string progID); // 0x101A5060 + private static IntPtr GetCCW(object o, Type T); // 0x101A50B0 + private static IntPtr GetComInterfaceForObjectInternal(object o, Type T); // 0x101A5120 + public static IntPtr GetComInterfaceForObject(object o, Type T); // 0x101A5220 + public static IntPtr GetComInterfaceForObjectInContext(object o, Type t); // 0x101A50D0 + public static object GetComObjectData(object obj, object key); // 0x101A5380 + private static int GetComSlotForMethodInfoInternal(MemberInfo m); // 0x101A53D0 + public static int GetComSlotForMethodInfo(MemberInfo m); // 0x101A53E0 + public static int GetEndComSlot(Type t); // 0x101A5690 + public static int GetExceptionCode(); // 0x101A56E0 + public static IntPtr GetExceptionPointers(); // 0x101A5850 + public static IntPtr GetHINSTANCE(Module m); // 0x101A5930 + public static int GetHRForException(Exception e); // 0x101A59A0 + public static int GetHRForLastWin32Error(); // 0x101A59C0 + private static IntPtr GetIDispatchForObjectInternal(object o); // 0x101A5A60 + public static IntPtr GetIDispatchForObject(object o); // 0x101A5A70 + public static IntPtr GetIDispatchForObjectInContext(object o); // 0x101A5A10 + public static IntPtr GetITypeInfoForType(Type t); // 0x101A5AD0 + private static IntPtr GetIUnknownForObjectInternal(object o); // 0x101A5B70 + public static IntPtr GetIUnknownForObject(object o); // 0x101A5B80 + public static IntPtr GetIUnknownForObjectInContext(object o); // 0x101A5B20 + public static IntPtr GetManagedThunkForUnmanagedMethodPtr(IntPtr pfnMethodToWrap, IntPtr pbSignature, int cbSignature); // 0x101A5BF0 + public static MemberInfo GetMethodInfoForComSlot(Type t, int slot, ComMemberType memberType); // 0x101A5C40 + public static void GetNativeVariantForObject(object obj, IntPtr pDstNativeVariant); // 0x101A5C90 + private static object GetObjectForCCW(IntPtr pUnk); // 0x101A5D20 + public static object GetObjectForIUnknown(IntPtr pUnk); // 0x101A5D30 + public static object GetObjectForNativeVariant(IntPtr pSrcNativeVariant); // 0x101A5DE0 + public static object[] GetObjectsForNativeVariants(IntPtr aSrcNativeVariant, int cVars); // 0x101A5EB0 + public static int GetStartComSlot(Type t); // 0x101A5FF0 + public static Thread GetThreadFromFiberCookie(int cookie); // 0x101A6040 + public static object GetTypedObjectForIUnknown(IntPtr pUnk, Type t); // 0x101A6400 + public static Type GetTypeForITypeInfo(IntPtr piTypeInfo); // 0x101A6090 + public static string GetTypeInfoName(UCOMITypeInfo pTI); // 0x101A6130 + public static string GetTypeInfoName(ITypeInfo typeInfo); // 0x101A60E0 + public static Guid GetTypeLibGuid(UCOMITypeLib pTLB); // 0x101A61D0 + public static Guid GetTypeLibGuid(ITypeLib typelib); // 0x101A6220 + public static Guid GetTypeLibGuidForAssembly(Assembly asm); // 0x101A6180 + public static int GetTypeLibLcid(UCOMITypeLib pTLB); // 0x101A62C0 + public static int GetTypeLibLcid(ITypeLib typelib); // 0x101A6270 + public static string GetTypeLibName(UCOMITypeLib pTLB); // 0x101A6310 + public static string GetTypeLibName(ITypeLib typelib); // 0x101A6360 + public static void GetTypeLibVersionForAssembly(Assembly inputAssembly, out int majorVersion, out int minorVersion); // 0x101A63B0 + public static object GetUniqueObjectForIUnknown(IntPtr unknown); // 0x101A6550 + public static IntPtr GetUnmanagedThunkForManagedMethodPtr(IntPtr pfnMethodToWrap, IntPtr pbSignature, int cbSignature); // 0x101A65A0 + public static bool IsComObject(object o); // 0x101A65F0 + public static bool IsTypeVisibleFromCom(Type t); // 0x101A6600 + public static int NumParamBytes(MethodInfo m); // 0x101A6650 + public static int GetLastWin32Error(); // 0x101A5BE0 + public static IntPtr OffsetOf(Type t, string fieldName); // 0x101A66A0 + public static void Prelink(MethodInfo m); // 0x101A66D0 + public static void PrelinkAll(Type c); // 0x101A66C0 + public static string PtrToStringAnsi(IntPtr ptr); // 0x101A6700 + public static string PtrToStringAnsi(IntPtr ptr, int len); // 0x101A66E0 + public static string PtrToStringAuto(IntPtr ptr); // 0x101A67B0 + public static string PtrToStringAuto(IntPtr ptr, int len); // 0x101A6710 + public static string PtrToStringUni(IntPtr ptr); // 0x101A6860 + public static string PtrToStringUni(IntPtr ptr, int len); // 0x101A6870 + public static string PtrToStringBSTR(IntPtr ptr); // 0x101A6850 + public static void PtrToStructure(IntPtr ptr, object structure); // 0x101A68B0 + public static object PtrToStructure(IntPtr ptr, Type structureType); // 0x101A6890 + private static int QueryInterfaceInternal(IntPtr pUnk, Guid iid, out IntPtr ppv); // 0x101A68D0 + public static int QueryInterface(IntPtr pUnk, Guid iid, out IntPtr ppv); // 0x101A68F0 + public static byte ReadByte(IntPtr ptr); // 0x101A6A40 + public static byte ReadByte(IntPtr ptr, int ofs); // 0x101A6A20 + public static byte ReadByte(object ptr, int ofs); // 0x101A69D0 + public static short ReadInt16(IntPtr ptr); // 0x101A6B00 + public static short ReadInt16(IntPtr ptr, int ofs); // 0x101A6A90 + public static short ReadInt16(object ptr, int ofs); // 0x101A6AB0 + public static int ReadInt32(IntPtr ptr); // 0x101A6B70 + public static int ReadInt32(IntPtr ptr, int ofs); // 0x101A6B50 + public static int ReadInt32(object ptr, int ofs); // 0x101A6BC0 + public static long ReadInt64(IntPtr ptr); // 0x101A6C80 + public static long ReadInt64(IntPtr ptr, int ofs); // 0x101A6C60 + public static long ReadInt64(object ptr, int ofs); // 0x101A6C10 + public static IntPtr ReadIntPtr(IntPtr ptr); // 0x101A6CD0 + public static IntPtr ReadIntPtr(IntPtr ptr, int ofs); // 0x101A6B50 + public static IntPtr ReadIntPtr(object ptr, int ofs); // 0x101A6D20 + public static IntPtr ReAllocCoTaskMem(IntPtr pv, int cb); // 0x101A6990 + public static IntPtr ReAllocHGlobal(IntPtr pv, IntPtr cb); // 0x101A69B0 + private static int ReleaseInternal(IntPtr pUnk); // 0x101A6E50 + public static int Release(IntPtr pUnk); // 0x101A6EB0 + private static int ReleaseComObjectInternal(object co); // 0x101A6D70 + public static int ReleaseComObject(object o); // 0x101A6D80 + public static void ReleaseThreadCache(); // 0x101A6E60 + public static bool SetComObjectData(object obj, object key, object data); // 0x101A77F0 + public static int SizeOf(object structure); // 0x101A7850 + public static int SizeOf(Type t); // 0x101A7840 + public static IntPtr StringToBSTR(string s); // 0x101A78C0 + public static IntPtr StringToCoTaskMemAnsi(string s); // 0x101A78D0 + public static IntPtr StringToCoTaskMemAuto(string s); // 0x101A79D0 + public static IntPtr StringToCoTaskMemUni(string s); // 0x101A7C10 + public static IntPtr StringToHGlobalAnsi(string s); // 0x101A7CD0 + public static IntPtr StringToHGlobalAuto(string s); // 0x101A7CE0 + public static IntPtr StringToHGlobalUni(string s); // 0x101A7D80 + public static IntPtr SecureStringToBSTR(SecureString s); // 0x101A6F50 + public static IntPtr SecureStringToCoTaskMemAnsi(SecureString s); // 0x101A71E0 + public static IntPtr SecureStringToCoTaskMemUnicode(SecureString s); // 0x101A7470 + public static IntPtr SecureStringToGlobalAllocAnsi(SecureString s); // 0x101A76D0 + public static IntPtr SecureStringToGlobalAllocUnicode(SecureString s); // 0x101A7760 + public static void StructureToPtr(object structure, IntPtr ptr, bool fDeleteOld); // 0x101A7D90 + public static void ThrowExceptionForHR(int errorCode); // 0x101A7E20 + public static void ThrowExceptionForHR(int errorCode, IntPtr errorInfo); // 0x101A7DB0 + public static IntPtr UnsafeAddrOfPinnedArrayElement(Array arr, int index); // 0x101A7ED0 + public static void WriteByte(IntPtr ptr, byte val); // 0x101A7EF0 + public static void WriteByte(IntPtr ptr, int ofs, byte val); // 0x101A7F40 + public static void WriteByte(out object ptr, int ofs, byte val); // 0x101A7F60 + public static void WriteInt16(IntPtr ptr, short val); // 0x101A7FB0 + public static void WriteInt16(IntPtr ptr, int ofs, short val); // 0x101A8000 + public static void WriteInt16(out object ptr, int ofs, short val); // 0x101A80C0 + public static void WriteInt16(IntPtr ptr, char val); // 0x101A8070 + public static void WriteInt16(IntPtr ptr, int ofs, char val); // 0x101A8000 + public static void WriteInt16(out object ptr, int ofs, char val); // 0x101A8020 + public static void WriteInt32(IntPtr ptr, int val); // 0x101A8180 + public static void WriteInt32(IntPtr ptr, int ofs, int val); // 0x101A8160 + public static void WriteInt32(out object ptr, int ofs, int val); // 0x101A8110 + public static void WriteInt64(IntPtr ptr, long val); // 0x101A8220 + public static void WriteInt64(IntPtr ptr, int ofs, long val); // 0x101A8280 + public static void WriteInt64(out object ptr, int ofs, long val); // 0x101A81D0 + public static void WriteIntPtr(IntPtr ptr, IntPtr val); // 0x101A82A0 + public static void WriteIntPtr(IntPtr ptr, int ofs, IntPtr val); // 0x101A8160 + public static void WriteIntPtr(out object ptr, int ofs, IntPtr val); // 0x101A82F0 + public static Exception GetExceptionForHR(int errorCode); // 0x101A5730 + public static Exception GetExceptionForHR(int errorCode, IntPtr errorInfo); // 0x101A5780 + public static int FinalReleaseComObject(object o); // 0x101A4E80 + private static Delegate GetDelegateForFunctionPointerInternal(IntPtr ptr, Type t); // 0x101A5500 + public static Delegate GetDelegateForFunctionPointer(IntPtr ptr, Type t); // 0x101A5520 + private static IntPtr GetFunctionPointerForDelegateInternal(Delegate d); // 0x101A58A0 + public static IntPtr GetFunctionPointerForDelegate(Delegate d); // 0x101A58B0 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public class MarshalDirectiveException : SystemException // TypeDefIndex: 828 +{ + // Fields + private const int ErrorCode = -2146233035; // 0x00 + + // Methods + public void .ctor(); // 0x101A4230 + public void .ctor(string message); // 0x101A4280 + public void .ctor(string message, Exception inner); // 0x101A4200 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 +} + +// Namespace: System.Runtime.InteropServices +public struct PARAMDESC // TypeDefIndex: 829 +{ + // Fields + public IntPtr lpVarValue; // 0x08 + public PARAMFLAG wParamFlags; // 0x0C + +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum PARAMFLAG // TypeDefIndex: 830 +{ + PARAMFLAG_NONE = 0, + PARAMFLAG_FIN = 1, + PARAMFLAG_FOUT = 2, + PARAMFLAG_FLCID = 4, + PARAMFLAG_FRETVAL = 8, + PARAMFLAG_FOPT = 16, + PARAMFLAG_FHASDEFAULT = 32, + PARAMFLAG_FHASCUSTDATA = 64 +} + +// Namespace: System.Runtime.InteropServices +public sealed class PreserveSigAttribute : Attribute // TypeDefIndex: 831 +{ + // Methods + public void .ctor(); // 0x100C5970 +} + +// Namespace: System.Runtime.InteropServices +public sealed class PrimaryInteropAssemblyAttribute : Attribute // TypeDefIndex: 832 +{ + // Fields + private int major; // 0x08 + private int minor; // 0x0C + + // Properties + public int MajorVersion { get; } // 0x100BF0C0 + public int MinorVersion { get; } // 0x100C5B30 + + // Methods + public void .ctor(int major, int minor); // 0x101237E0 +} + +// Namespace: System.Runtime.InteropServices +public sealed class ProgIdAttribute : Attribute // TypeDefIndex: 833 +{ + // Fields + private string pid; // 0x08 + + // Properties + public string Value { get; } // 0x100BF0C0 + + // Methods + public void .ctor(string progId); // 0x100E5940 +} + +// Namespace: System.Runtime.InteropServices +public enum RegistrationClassContext // TypeDefIndex: 834 +{ + InProcessServer = 1, + InProcessHandler = 2, + LocalServer = 4, + InProcessServer16 = 8, + RemoteServer = 16, + InProcessHandler16 = 32, + Reserved1 = 64, + Reserved2 = 128, + Reserved3 = 256, + Reserved4 = 512, + NoCodeDownload = 1024, + Reserved5 = 2048, + NoCustomMarshal = 4096, + EnableCodeDownload = 8192, + NoFailureLog = 16384, + DisableActivateAsActivator = 32768, + EnableActivateAsActivator = 65536, + FromDefaultContext = 131072 +} + +// Namespace: System.Runtime.InteropServices +public enum RegistrationConnectionType // TypeDefIndex: 835 +{ + SingleUse = 0, + MultipleUse = 1, + MultiSeparate = 2, + Suspended = 4, + Surrogate = 8 +} + +// Namespace: System.Runtime.InteropServices +public class RegistrationServices : IRegistrationServices // TypeDefIndex: 836 +{ + // Methods + public void .ctor(); // 0x100BF000 + public virtual Guid GetManagedCategoryGuid(); // 0x101A89C0 + public virtual string GetProgIdForType(Type type); // 0x101A8A10 + public virtual Type[] GetRegistrableTypesInAssembly(Assembly assembly); // 0x101A8A60 + public virtual bool RegisterAssembly(Assembly assembly, AssemblyRegistrationFlags flags); // 0x101A8AB0 + public virtual void RegisterTypeForComClients(Type type, Guid g); // 0x101A8B50 + public virtual bool TypeRepresentsComType(Type type); // 0x101A8BA0 + public virtual bool TypeRequiresRegistration(Type type); // 0x101A8BF0 + public virtual bool UnregisterAssembly(Assembly assembly); // 0x101A8C40 + public virtual int RegisterTypeForComClients(Type type, RegistrationClassContext classContext, RegistrationConnectionType flags); // 0x101A8B00 + public virtual void UnregisterTypeForComClients(int cookie); // 0x101A8C90 +} + +// Namespace: System.Runtime.InteropServices +public class RuntimeEnvironment // TypeDefIndex: 837 +{ + // Properties + public static string SystemConfigurationFile { get; } // 0x101A9750 + + // Methods + public void .ctor(); // 0x100BF000 + public static bool FromGlobalAccessCache(Assembly a); // 0x101A93B0 + public static string GetRuntimeDirectory(); // 0x101A93E0 + public static string GetSystemVersion(); // 0x101A94A0 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public class SEHException : ExternalException // TypeDefIndex: 838 +{ + // Methods + public void .ctor(); // 0x101A33F0 + public void .ctor(string message); // 0x101A33A0 + public void .ctor(string message, Exception inner); // 0x101A33C0 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 + public virtual bool CanResume(); // 0x100EFBF0 +} + +// Namespace: System.Runtime.InteropServices +public struct STATSTG // TypeDefIndex: 839 +{ + // Fields + public string pwcsName; // 0x08 + public int type; // 0x0C + public long cbSize; // 0x10 + public FILETIME mtime; // 0x18 + public FILETIME ctime; // 0x20 + public FILETIME atime; // 0x28 + public int grfMode; // 0x30 + public int grfLocksSupported; // 0x34 + public Guid clsid; // 0x38 + public int grfStateBits; // 0x48 + public int reserved; // 0x4C + +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum SYSKIND // TypeDefIndex: 840 +{ + SYS_WIN16 = 0, + SYS_WIN32 = 1, + SYS_MAC = 2 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public class SafeArrayRankMismatchException : SystemException // TypeDefIndex: 841 +{ + // Fields + private const int ErrorCode = -2146233032; // 0x00 + + // Methods + public void .ctor(); // 0x101A9800 + public void .ctor(string message); // 0x101A97E0 + public void .ctor(string message, Exception inner); // 0x101A9850 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public class SafeArrayTypeMismatchException : SystemException // TypeDefIndex: 842 +{ + // Fields + private const int ErrorCode = -2146233037; // 0x00 + + // Methods + public void .ctor(); // 0x101A98B0 + public void .ctor(string message); // 0x101A9900 + public void .ctor(string message, Exception inner); // 0x101A9880 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 +} + +// Namespace: System.Runtime.InteropServices +public abstract class SafeHandle : CriticalFinalizerObject, IDisposable // TypeDefIndex: 843 +{ + // Fields + protected IntPtr handle; // 0x08 + private IntPtr invalid_handle_value; // 0x0C + private int refcount; // 0x10 + private bool owns_handle; // 0x14 + + // Properties + public bool IsClosed { get; } // 0x101A9EA0 + public abstract bool IsInvalid { get; } + + // Methods + protected void .ctor(); // 0x101A9E40 + protected void .ctor(IntPtr invalidHandleValue, bool ownsHandle); // 0x101A9E10 + public void Close(); // 0x101A9920 + public void DangerousAddRef(bool success); // 0x101A9A00 + public IntPtr DangerousGetHandle(); // 0x101A9AA0 + public void DangerousRelease(); // 0x101A9B20 + public void Dispose(); // 0x101A9CF0 + public void SetHandleAsInvalid(); // 0x101A9E00 + protected virtual void Dispose(bool disposing); // 0x101A9C00 + protected abstract bool ReleaseHandle(); + protected void SetHandle(IntPtr handle); // 0x100EB270 + protected override void Finalize(); // 0x101A9D20 +} + +// Namespace: System.Runtime.InteropServices +public sealed class SetWin32ContextInIDispatchAttribute : Attribute // TypeDefIndex: 844 +{ + // Methods + public void .ctor(); // 0x100C5970 +} + +// Namespace: System.Runtime.InteropServices +public struct TYPEATTR // TypeDefIndex: 845 +{ + // Fields + public const int MEMBER_ID_NIL = -1; // 0x00 + public Guid guid; // 0x08 + public int lcid; // 0x18 + public int dwReserved; // 0x1C + public int memidConstructor; // 0x20 + public int memidDestructor; // 0x24 + public IntPtr lpstrSchema; // 0x28 + public int cbSizeInstance; // 0x2C + public TYPEKIND typekind; // 0x30 + public short cFuncs; // 0x34 + public short cVars; // 0x36 + public short cImplTypes; // 0x38 + public short cbSizeVft; // 0x3A + public short cbAlignment; // 0x3C + public TYPEFLAGS wTypeFlags; // 0x40 + public short wMajorVerNum; // 0x44 + public short wMinorVerNum; // 0x46 + public TYPEDESC tdescAlias; // 0x48 + public IDLDESC idldescType; // 0x50 + +} + +// Namespace: System.Runtime.InteropServices +public struct TYPEDESC // TypeDefIndex: 846 +{ + // Fields + public IntPtr lpValue; // 0x08 + public short vt; // 0x0C + +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum TYPEFLAGS // TypeDefIndex: 847 +{ + TYPEFLAG_FAPPOBJECT = 1, + TYPEFLAG_FCANCREATE = 2, + TYPEFLAG_FLICENSED = 4, + TYPEFLAG_FPREDECLID = 8, + TYPEFLAG_FHIDDEN = 16, + TYPEFLAG_FCONTROL = 32, + TYPEFLAG_FDUAL = 64, + TYPEFLAG_FNONEXTENSIBLE = 128, + TYPEFLAG_FOLEAUTOMATION = 256, + TYPEFLAG_FRESTRICTED = 512, + TYPEFLAG_FAGGREGATABLE = 1024, + TYPEFLAG_FREPLACEABLE = 2048, + TYPEFLAG_FDISPATCHABLE = 4096, + TYPEFLAG_FREVERSEBIND = 8192, + TYPEFLAG_FPROXY = 16384 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum TYPEKIND // TypeDefIndex: 848 +{ + TKIND_ENUM = 0, + TKIND_RECORD = 1, + TKIND_MODULE = 2, + TKIND_INTERFACE = 3, + TKIND_DISPATCH = 4, + TKIND_COCLASS = 5, + TKIND_ALIAS = 6, + TKIND_UNION = 7, + TKIND_MAX = 8 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public struct TYPELIBATTR // TypeDefIndex: 849 +{ + // Fields + public Guid guid; // 0x08 + public int lcid; // 0x18 + public SYSKIND syskind; // 0x1C + public short wMajorVerNum; // 0x20 + public short wMinorVerNum; // 0x22 + public LIBFLAGS wLibFlags; // 0x24 + +} + +// Namespace: System.Runtime.InteropServices +public sealed class TypeLibConverter : ITypeLibConverter // TypeDefIndex: 850 +{ + // Methods + public void .ctor(); // 0x100BF000 + public object ConvertAssemblyToTypeLib(Assembly assembly, string strTypeLibName, TypeLibExporterFlags flags, ITypeLibExporterNotifySink notifySink); // 0x101AA670 + public AssemblyBuilder ConvertTypeLibToAssembly(object typeLib, string asmFileName, int flags, ITypeLibImporterNotifySink notifySink, byte[] publicKey, StrongNameKeyPair keyPair, bool unsafeInterfaces); // 0x101AA6C0 + public AssemblyBuilder ConvertTypeLibToAssembly(object typeLib, string asmFileName, TypeLibImporterFlags flags, ITypeLibImporterNotifySink notifySink, byte[] publicKey, StrongNameKeyPair keyPair, string asmNamespace, Version asmVersion); // 0x101AA710 + public bool GetPrimaryInteropAssembly(Guid g, int major, int minor, int lcid, out string asmName, out string asmCodeBase); // 0x101AA760 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum TypeLibExporterFlags // TypeDefIndex: 851 +{ + None = 0, + OnlyReferenceRegistered = 1, + CallerResolvedReferences = 2, + OldNames = 4, + ExportAs32Bit = 16, + ExportAs64Bit = 32 +} + +// Namespace: System.Runtime.InteropServices +public sealed class TypeLibFuncAttribute : Attribute // TypeDefIndex: 852 +{ + // Fields + private TypeLibFuncFlags flags; // 0x08 + + // Properties + public TypeLibFuncFlags Value { get; } // 0x100BF0C0 + + // Methods + public void .ctor(short flags); // 0x101A3760 + public void .ctor(TypeLibFuncFlags flags); // 0x100E5940 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum TypeLibFuncFlags // TypeDefIndex: 853 +{ + FRestricted = 1, + FSource = 2, + FBindable = 4, + FRequestEdit = 8, + FDisplayBind = 16, + FDefaultBind = 32, + FHidden = 64, + FUsesGetLastError = 128, + FDefaultCollelem = 256, + FUiDefault = 512, + FNonBrowsable = 1024, + FReplaceable = 2048, + FImmediateBind = 4096 +} + +// Namespace: System.Runtime.InteropServices +public sealed class TypeLibImportClassAttribute : Attribute // TypeDefIndex: 854 +{ + // Fields + private string _importClass; // 0x08 + + // Properties + public string Value { get; } // 0x100BF0C0 + + // Methods + public void .ctor(Type importClass); // 0x101AA7B0 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum TypeLibImporterFlags // TypeDefIndex: 855 +{ + None = 0, + PrimaryInteropAssembly = 1, + UnsafeInterfaces = 2, + SafeArrayAsSystemArray = 4, + TransformDispRetVals = 8, + PreventClassMembers = 16, + SerializableValueClasses = 32, + ImportAsX86 = 256, + ImportAsX64 = 512, + ImportAsItanium = 1024, + ImportAsAgnostic = 2048, + ReflectionOnlyLoading = 4096 +} + +// Namespace: System.Runtime.InteropServices +public sealed class TypeLibTypeAttribute : Attribute // TypeDefIndex: 856 +{ + // Fields + private TypeLibTypeFlags flags; // 0x08 + + // Properties + public TypeLibTypeFlags Value { get; } // 0x100BF0C0 + + // Methods + public void .ctor(short flags); // 0x101A3760 + public void .ctor(TypeLibTypeFlags flags); // 0x100E5940 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum TypeLibTypeFlags // TypeDefIndex: 857 +{ + FAppObject = 1, + FCanCreate = 2, + FLicensed = 4, + FPreDeclId = 8, + FHidden = 16, + FControl = 32, + FDual = 64, + FNonExtensible = 128, + FOleAutomation = 256, + FRestricted = 512, + FAggregatable = 1024, + FReplaceable = 2048, + FDispatchable = 4096, + FReverseBind = 8192 +} + +// Namespace: System.Runtime.InteropServices +public sealed class TypeLibVarAttribute : Attribute // TypeDefIndex: 858 +{ + // Fields + private TypeLibVarFlags flags; // 0x08 + + // Properties + public TypeLibVarFlags Value { get; } // 0x100BF0C0 + + // Methods + public void .ctor(short flags); // 0x101A3760 + public void .ctor(TypeLibVarFlags flags); // 0x100E5940 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum TypeLibVarFlags // TypeDefIndex: 859 +{ + FReadOnly = 1, + FSource = 2, + FBindable = 4, + FRequestEdit = 8, + FDisplayBind = 16, + FDefaultBind = 32, + FHidden = 64, + FRestricted = 128, + FDefaultCollelem = 256, + FUiDefault = 512, + FNonBrowsable = 1024, + FReplaceable = 2048, + FImmediateBind = 4096 +} + +// Namespace: System.Runtime.InteropServices +public sealed class TypeLibVersionAttribute : Attribute // TypeDefIndex: 860 +{ + // Fields + private int major; // 0x08 + private int minor; // 0x0C + + // Properties + public int MajorVersion { get; } // 0x100BF0C0 + public int MinorVersion { get; } // 0x100C5B30 + + // Methods + public void .ctor(int major, int minor); // 0x101237E0 +} + +// Namespace: System.Runtime.InteropServices +[ComImport]public interface UCOMIBindCtx // TypeDefIndex: 861 +{ + // Methods + void RegisterObjectBound(object punk); // 0x101AAA30 + void RevokeObjectBound(object punk); // 0x101AAB70 + void ReleaseBoundObjects(); // 0x101AAB40 + void SetBindOptions(BIND_OPTS pbindopts); // 0x101AAC30 + void GetBindOptions(BIND_OPTS pbindopts); // 0x101AA8A0 + void GetRunningObjectTable(out UCOMIRunningObjectTable pprot); // 0x101AA980 + void RegisterObjectParam(string pszKey, object punk); // 0x101AAAB0 + void GetObjectParam(string pszKey, out object ppunk); // 0x101AA8D0 + void EnumObjectParam(out UCOMIEnumString ppenum); // 0x101AA7F0 + void RevokeObjectParam(string pszKey); // 0x101AABF0 +} + +// Namespace: System.Runtime.InteropServices +[ComImport]public interface UCOMIConnectionPoint // TypeDefIndex: 862 +{ + // Methods + void GetConnectionInterface(out Guid pIID); // 0x101AAEF0 + void GetConnectionPointContainer(out UCOMIConnectionPointContainer ppCPC); // 0x101AAF20 + void Advise(object pUnkSink, out int pdwCookie); // 0x101AADC0 + void Unadvise(int dwCookie); // 0x101AAFD0 + void EnumConnections(out UCOMIEnumConnections ppEnum); // 0x101AAE40 +} + +// Namespace: System.Runtime.InteropServices +[ComImport]public interface UCOMIConnectionPointContainer // TypeDefIndex: 863 +{ + // Methods + void EnumConnectionPoints(out UCOMIEnumConnectionPoints ppEnum); // 0x101AAC60 + void FindConnectionPoint(Guid riid, out UCOMIConnectionPoint ppCP); // 0x101AAD10 +} + +// Namespace: System.Runtime.InteropServices +[ComImport]public interface UCOMIEnumConnectionPoints // TypeDefIndex: 864 +{ + // Methods + int Next(int celt, out UCOMIConnectionPoint[] rgelt, out int pceltFetched); // 0x101AB0B0 + int Skip(int celt); // 0x101AB110 + int Reset(); // 0x101AB0D0 + void Clone(out UCOMIEnumConnectionPoints ppenum); // 0x101AB000 +} + +// Namespace: System.Runtime.InteropServices +[ComImport]public interface UCOMIEnumConnections // TypeDefIndex: 865 +{ + // Methods + int Next(int celt, out CONNECTDATA[] rgelt, out int pceltFetched); // 0x101AB200 + int Skip(int celt); // 0x101AB310 + void Reset(); // 0x101AB2E0 + void Clone(out UCOMIEnumConnections ppenum); // 0x101AB150 +} + +// Namespace: System.Runtime.InteropServices +[ComImport]public interface UCOMIEnumMoniker // TypeDefIndex: 866 +{ + // Methods + int Next(int celt, out UCOMIMoniker[] rgelt, out int pceltFetched); // 0x101AB400 + int Skip(int celt); // 0x101AB460 + int Reset(); // 0x101AB420 + void Clone(out UCOMIEnumMoniker ppenum); // 0x101AB350 +} + +// Namespace: System.Runtime.InteropServices +[ComImport]public interface UCOMIEnumString // TypeDefIndex: 867 +{ + // Methods + int Next(int celt, out string[] rgelt, out int pceltFetched); // 0x101AB550 + int Skip(int celt); // 0x101AB670 + int Reset(); // 0x101AB630 + void Clone(out UCOMIEnumString ppenum); // 0x101AB4A0 +} + +// Namespace: System.Runtime.InteropServices +[ComImport]public interface UCOMIEnumVARIANT // TypeDefIndex: 868 +{ + // Methods + int Next(int celt, int rgvar, int pceltFetched); // 0x101AB6E0 + int Skip(int celt); // 0x101AB770 + int Reset(); // 0x101AB730 + void Clone(int ppenum); // 0x101AB6B0 +} + +// Namespace: System.Runtime.InteropServices +[ComImport]public interface UCOMIMoniker // TypeDefIndex: 869 +{ + // Methods + void GetClassID(out Guid pClassID); // 0x101ABCC0 + int IsDirty(); // 0x101ABFA0 + void Load(UCOMIStream pStm); // 0x101AC1A0 + void Save(UCOMIStream pStm, bool fClearDirty); // 0x101AC5E0 + void GetSizeMax(out long pcbSize); // 0x101ABDD0 + void BindToObject(UCOMIBindCtx pbc, UCOMIMoniker pmkToLeft, Guid riidResult, out object ppvResult); // 0x101AB7B0 + void BindToStorage(UCOMIBindCtx pbc, UCOMIMoniker pmkToLeft, Guid riid, out object ppvObj); // 0x101AB8F0 + void Reduce(UCOMIBindCtx pbc, int dwReduceHowFar, UCOMIMoniker ppmkToLeft, out UCOMIMoniker ppmkReduced); // 0x101AC360 + void ComposeWith(UCOMIMoniker pmkRight, bool fOnlyIfNotGeneric, out UCOMIMoniker ppmkComposite); // 0x101ABB20 + void Enum(bool fForward, out UCOMIEnumMoniker ppenumMoniker); // 0x101ABC10 + void IsEqual(UCOMIMoniker pmkOtherMoniker); // 0x101ABFE0 + void Hash(out int pdwHash); // 0x101ABEC0 + void IsRunning(UCOMIBindCtx pbc, UCOMIMoniker pmkToLeft, UCOMIMoniker pmkNewlyRunning); // 0x101AC060 + void GetTimeOfLastChange(UCOMIBindCtx pbc, UCOMIMoniker pmkToLeft, out FILETIME pFileTime); // 0x101ABE00 + void Inverse(out UCOMIMoniker ppmk); // 0x101ABEF0 + void CommonPrefixWith(UCOMIMoniker pmkOther, out UCOMIMoniker ppmkPrefix); // 0x101ABA30 + void RelativePathTo(UCOMIMoniker pmkOther, out UCOMIMoniker ppmkRelPath); // 0x101AC4F0 + void GetDisplayName(UCOMIBindCtx pbc, UCOMIMoniker pmkToLeft, out string ppszDisplayName); // 0x101ABCF0 + void ParseDisplayName(UCOMIBindCtx pbc, UCOMIMoniker pmkToLeft, string pszDisplayName, out int pchEaten, out UCOMIMoniker ppmkOut); // 0x101AC220 + void IsSystemMoniker(out int pdwMksys); // 0x101AC170 +} + +// Namespace: System.Runtime.InteropServices +[ComImport]public interface UCOMIPersistFile // TypeDefIndex: 870 +{ + // Methods + void GetClassID(out Guid pClassID); // 0x101AC660 + int IsDirty(); // 0x101AC6E0 + void Load(string pszFileName, int dwMode); // 0x101AC720 + void Save(string pszFileName, bool fRemember); // 0x101AC7A0 + void SaveCompleted(string pszFileName); // 0x101AC760 + void GetCurFile(out string ppszFileName); // 0x101AC690 +} + +// Namespace: System.Runtime.InteropServices +[ComImport]public interface UCOMIRunningObjectTable // TypeDefIndex: 871 +{ + // Methods + void Register(int grfFlags, object punkObject, UCOMIMoniker pmkObjectName, out int pdwRegister); // 0x101ACAB0 + void Revoke(int dwRegister); // 0x101ACB70 + void IsRunning(UCOMIMoniker pmkObjectName); // 0x101ACA00 + void GetObject(UCOMIMoniker pmkObjectName, out object ppunkObject); // 0x101AC890 + void NoteChangeTime(int dwRegister, FILETIME pfiletime); // 0x101ACA80 + void GetTimeOfLastChange(UCOMIMoniker pmkObjectName, out FILETIME pfiletime); // 0x101AC980 + void EnumRunning(out UCOMIEnumMoniker ppenumMoniker); // 0x101AC7E0 +} + +// Namespace: System.Runtime.InteropServices +[ComImport]public interface UCOMIStream // TypeDefIndex: 872 +{ + // Methods + void Read(out byte[] pv, int cb, IntPtr pcbRead); // 0x101ACD40 + void Write(byte[] pv, int cb, IntPtr pcbWritten); // 0x101ACFB0 + void Seek(long dlibMove, int dwOrigin, IntPtr plibNewPosition); // 0x101ACE00 + void SetSize(long libNewSize); // 0x101ACE40 + void CopyTo(UCOMIStream pstm, long cb, IntPtr pcbRead, IntPtr pcbWritten); // 0x101ACC80 + void Commit(int grfCommitFlags); // 0x101ACC50 + void Revert(); // 0x101ACDD0 + void LockRegion(long libOffset, long cb, int dwLockType); // 0x101ACD00 + void UnlockRegion(long libOffset, long cb, int dwLockType); // 0x101ACF70 + void Stat(out STATSTG pstatstg, int grfStatFlag); // 0x101ACE70 + void Clone(out UCOMIStream ppstm); // 0x101ACBA0 +} + +// Namespace: System.Runtime.InteropServices +[ComImport]public interface UCOMITypeComp // TypeDefIndex: 873 +{ + // Methods + void Bind(string szName, int lHashVal, short wFlags, out UCOMITypeInfo ppTInfo, out DESCKIND pDescKind, out BINDPTR pBindPtr); // 0x101AD110 + void BindType(string szName, int lHashVal, out UCOMITypeInfo ppTInfo, out UCOMITypeComp ppTComp); // 0x101ACFF0 +} + +// Namespace: System.Runtime.InteropServices +[ComImport]public interface UCOMITypeInfo // TypeDefIndex: 874 +{ + // Methods + void GetTypeAttr(out IntPtr ppTypeAttr); // 0x101AD890 + void GetTypeComp(out UCOMITypeComp ppTComp); // 0x101AD8C0 + void GetFuncDesc(int index, out IntPtr ppFuncDesc); // 0x101AD4F0 + void GetVarDesc(int index, out IntPtr ppVarDesc); // 0x101AD970 + void GetNames(int memid, out string[] rgBstrNames, int cMaxNames, out int pcNames); // 0x101AD6E0 + void GetRefTypeOfImplType(int index, out int href); // 0x101AD860 + void GetImplTypeFlags(int index, out int pImplTypeFlags); // 0x101AD650 + void GetIDsOfNames(string[] rgszNames, int cNames, out int[] pMemId); // 0x101AD520 + void Invoke(object pvInstance, int memid, short wFlags, DISPPARAMS pDispParams, out object pVarResult, out EXCEPINFO pExcepInfo, out int puArgErr); // 0x101AD9A0 + void GetDocumentation(int index, out string strName, out string strDocString, out int dwHelpContext, out string strHelpFile); // 0x101AD440 + void GetDllEntry(int memid, INVOKEKIND invKind, out string pBstrDllName, out string pBstrName, out short pwOrdinal); // 0x101AD3B0 + void GetRefTypeInfo(int hRef, out UCOMITypeInfo ppTI); // 0x101AD7B0 + void AddressOfMember(int memid, INVOKEKIND invKind, out IntPtr ppv); // 0x101AD1D0 + void CreateInstance(object pUnkOuter, Guid riid, out object ppvObj); // 0x101AD210 + void GetMops(int memid, out string pBstrMops); // 0x101AD680 + void GetContainingTypeLib(out UCOMITypeLib ppTLB, out int pIndex); // 0x101AD300 + void ReleaseTypeAttr(IntPtr pTypeAttr); // 0x101ADB10 + void ReleaseFuncDesc(IntPtr pFuncDesc); // 0x101ADAE0 + void ReleaseVarDesc(IntPtr pVarDesc); // 0x101ADB40 +} + +// Namespace: System.Runtime.InteropServices +[ComImport]public interface UCOMITypeLib // TypeDefIndex: 875 +{ + // Methods + int GetTypeInfoCount(); // 0x101ADD20 + void GetTypeInfo(int index, out UCOMITypeInfo ppTI); // 0x101ADE40 + void GetTypeInfoType(int index, out TYPEKIND pTKind); // 0x101ADE10 + void GetTypeInfoOfGuid(Guid guid, out UCOMITypeInfo ppTInfo); // 0x101ADD60 + void GetLibAttr(out IntPtr ppTLibAttr); // 0x101ADC40 + void GetTypeComp(out UCOMITypeComp ppTComp); // 0x101ADC70 + void GetDocumentation(int index, out string strName, out string strDocString, out int dwHelpContext, out string strHelpFile); // 0x101ADB90 + bool IsName(string szNameBuf, int lHashVal); // 0x101ADEF0 + void FindName(string szNameBuf, int lHashVal, out UCOMITypeInfo[] ppTInfo, out int[] rgMemId, short pcFound); // 0x101ADB70 + void ReleaseTLibAttr(IntPtr pTLibAttr); // 0x101ADF50 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public sealed class UnknownWrapper // TypeDefIndex: 876 +{ + // Fields + private object InternalObject; // 0x08 + + // Properties + public object WrappedObject { get; } // 0x100BF0C0 + + // Methods + public void .ctor(object obj); // 0x10113500 +} + +// Namespace: System.Runtime.InteropServices +public sealed class UnmanagedFunctionPointerAttribute : Attribute // TypeDefIndex: 877 +{ + // Fields + private CallingConvention call_conv; // 0x08 + public CharSet CharSet; // 0x0C + public bool SetLastError; // 0x10 + public bool BestFitMapping; // 0x11 + public bool ThrowOnUnmappableChar; // 0x12 + + // Properties + public CallingConvention CallingConvention { get; } // 0x100BF0C0 + + // Methods + public void .ctor(CallingConvention callingConvention); // 0x100E5940 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum UnmanagedType // TypeDefIndex: 878 +{ + Bool = 2, + I1 = 3, + U1 = 4, + I2 = 5, + U2 = 6, + I4 = 7, + U4 = 8, + I8 = 9, + U8 = 10, + R4 = 11, + R8 = 12, + Currency = 15, + BStr = 19, + LPStr = 20, + LPWStr = 21, + LPTStr = 22, + ByValTStr = 23, + IUnknown = 25, + IDispatch = 26, + Struct = 27, + Interface = 28, + SafeArray = 29, + ByValArray = 30, + SysInt = 31, + SysUInt = 32, + VBByRefStr = 34, + AnsiBStr = 35, + TBStr = 36, + VariantBool = 37, + FunctionPtr = 38, + AsAny = 40, + LPArray = 42, + LPStruct = 43, + CustomMarshaler = 44, + Error = 45 +} + +// Namespace: System.Runtime.InteropServices +public struct VARDESC // TypeDefIndex: 879 +{ + // Fields + public int memid; // 0x08 + public string lpstrSchema; // 0x0C + public ELEMDESC elemdescVar; // 0x10 + public short wVarFlags; // 0x20 + public VarEnum varkind; // 0x24 + +} + +// Namespace: +public struct DESCUNION // TypeDefIndex: 880 +{ + // Fields + public IntPtr lpvarValue; // 0x08 + public int oInst; // 0x08 + +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum VARFLAGS // TypeDefIndex: 881 +{ + VARFLAG_FREADONLY = 1, + VARFLAG_FSOURCE = 2, + VARFLAG_FBINDABLE = 4, + VARFLAG_FREQUESTEDIT = 8, + VARFLAG_FDISPLAYBIND = 16, + VARFLAG_FDEFAULTBIND = 32, + VARFLAG_FHIDDEN = 64, + VARFLAG_FRESTRICTED = 128, + VARFLAG_FDEFAULTCOLLELEM = 256, + VARFLAG_FUIDEFAULT = 512, + VARFLAG_FNONBROWSABLE = 1024, + VARFLAG_FREPLACEABLE = 2048, + VARFLAG_FIMMEDIATEBIND = 4096 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum VarEnum // TypeDefIndex: 882 +{ + VT_EMPTY = 0, + VT_NULL = 1, + VT_I2 = 2, + VT_I4 = 3, + VT_R4 = 4, + VT_R8 = 5, + VT_CY = 6, + VT_DATE = 7, + VT_BSTR = 8, + VT_DISPATCH = 9, + VT_ERROR = 10, + VT_BOOL = 11, + VT_VARIANT = 12, + VT_UNKNOWN = 13, + VT_DECIMAL = 14, + VT_I1 = 16, + VT_UI1 = 17, + VT_UI2 = 18, + VT_UI4 = 19, + VT_I8 = 20, + VT_UI8 = 21, + VT_INT = 22, + VT_UINT = 23, + VT_VOID = 24, + VT_HRESULT = 25, + VT_PTR = 26, + VT_SAFEARRAY = 27, + VT_CARRAY = 28, + VT_USERDEFINED = 29, + VT_LPSTR = 30, + VT_LPWSTR = 31, + VT_RECORD = 36, + VT_FILETIME = 64, + VT_BLOB = 65, + VT_STREAM = 66, + VT_STORAGE = 67, + VT_STREAMED_OBJECT = 68, + VT_STORED_OBJECT = 69, + VT_BLOB_OBJECT = 70, + VT_CF = 71, + VT_CLSID = 72, + VT_VECTOR = 4096, + VT_ARRAY = 8192, + VT_BYREF = 16384 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public sealed class VariantWrapper // TypeDefIndex: 883 +{ + // Fields + private object _wrappedObject; // 0x08 + + // Properties + public object WrappedObject { get; } // 0x100BF0C0 + + // Methods + public void .ctor(object obj); // 0x10113500 +} + +// Namespace: System.Runtime.InteropServices +public interface _Activator // TypeDefIndex: 884 +{ + // Methods + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); +} + +// Namespace: System.Runtime.InteropServices +public interface _Assembly // TypeDefIndex: 885 +{ + // Properties + string CodeBase { get; } + string EscapedCodeBase { get; } + string FullName { get; } + MethodInfo EntryPoint { get; } + string Location { get; } + + // Events + event ModuleResolveEventHandler ModuleResolve { + add; // 0x00000000 + remove; // 0x00000000 + } + + // Methods + string ToString(); + bool Equals(object other); + int GetHashCode(); + Type GetType(); + AssemblyName GetName(); + AssemblyName GetName(bool copiedName); + Type GetType(string name); + Type GetType(string name, bool throwOnError); + Type[] GetExportedTypes(); + Type[] GetTypes(); + Stream GetManifestResourceStream(Type type, string name); + Stream GetManifestResourceStream(string name); + FileStream GetFile(string name); + FileStream[] GetFiles(); + FileStream[] GetFiles(bool getResourceModules); + string[] GetManifestResourceNames(); + ManifestResourceInfo GetManifestResourceInfo(string resourceName); + object[] GetCustomAttributes(Type attributeType, bool inherit); + object[] GetCustomAttributes(bool inherit); + bool IsDefined(Type attributeType, bool inherit); + void GetObjectData(SerializationInfo info, StreamingContext context); + Type GetType(string name, bool throwOnError, bool ignoreCase); + Assembly GetSatelliteAssembly(CultureInfo culture); + Assembly GetSatelliteAssembly(CultureInfo culture, Version version); + Module LoadModule(string moduleName, byte[] rawModule); + Module LoadModule(string moduleName, byte[] rawModule, byte[] rawSymbolStore); + object CreateInstance(string typeName); + object CreateInstance(string typeName, bool ignoreCase); + object CreateInstance(string typeName, bool ignoreCase, BindingFlags bindingAttr, Binder binder, object[] args, CultureInfo culture, object[] activationAttributes); + Module[] GetLoadedModules(); + Module[] GetLoadedModules(bool getResourceModules); + Module[] GetModules(); + Module[] GetModules(bool getResourceModules); + Module GetModule(string name); + AssemblyName[] GetReferencedAssemblies(); +} + +// Namespace: System.Runtime.InteropServices +public interface _AssemblyBuilder // TypeDefIndex: 886 +{ + // Methods + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); +} + +// Namespace: System.Runtime.InteropServices +public interface _AssemblyName // TypeDefIndex: 887 +{ + // Methods + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); +} + +// Namespace: System.Runtime.InteropServices +public interface _ConstructorBuilder // TypeDefIndex: 888 +{ + // Methods + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); +} + +// Namespace: System.Runtime.InteropServices +public interface _ConstructorInfo // TypeDefIndex: 889 +{ + // Properties + MethodAttributes Attributes { get; } + CallingConventions CallingConvention { get; } + Type DeclaringType { get; } + bool IsAbstract { get; } + bool IsAssembly { get; } + bool IsConstructor { get; } + bool IsFamily { get; } + bool IsFamilyAndAssembly { get; } + bool IsFamilyOrAssembly { get; } + bool IsFinal { get; } + bool IsHideBySig { get; } + bool IsPrivate { get; } + bool IsPublic { get; } + bool IsSpecialName { get; } + bool IsStatic { get; } + bool IsVirtual { get; } + MemberTypes MemberType { get; } + RuntimeMethodHandle MethodHandle { get; } + string Name { get; } + Type ReflectedType { get; } + + // Methods + bool Equals(object other); + object[] GetCustomAttributes(bool inherit); + object[] GetCustomAttributes(Type attributeType, bool inherit); + int GetHashCode(); + MethodImplAttributes GetMethodImplementationFlags(); + ParameterInfo[] GetParameters(); + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); + Type GetType(); + object Invoke_5(object[] parameters); + object Invoke_3(object obj, object[] parameters); + object Invoke_4(BindingFlags invokeAttr, Binder binder, object[] parameters, CultureInfo culture); + object Invoke_2(object obj, BindingFlags invokeAttr, Binder binder, object[] parameters, CultureInfo culture); + bool IsDefined(Type attributeType, bool inherit); + string ToString(); +} + +// Namespace: System.Runtime.InteropServices +public interface _CustomAttributeBuilder // TypeDefIndex: 890 +{ + // Methods + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); +} + +// Namespace: System.Runtime.InteropServices +public interface _EnumBuilder // TypeDefIndex: 891 +{ + // Methods + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); +} + +// Namespace: System.Runtime.InteropServices +public interface _EventBuilder // TypeDefIndex: 892 +{ + // Methods + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); +} + +// Namespace: System.Runtime.InteropServices +public interface _EventInfo // TypeDefIndex: 893 +{ + // Properties + EventAttributes Attributes { get; } + Type DeclaringType { get; } + Type EventHandlerType { get; } + bool IsMulticast { get; } + bool IsSpecialName { get; } + MemberTypes MemberType { get; } + string Name { get; } + Type ReflectedType { get; } + + // Methods + void AddEventHandler(object target, Delegate handler); + bool Equals(object other); + MethodInfo GetAddMethod(); + MethodInfo GetAddMethod(bool nonPublic); + object[] GetCustomAttributes(bool inherit); + object[] GetCustomAttributes(Type attributeType, bool inherit); + int GetHashCode(); + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); + MethodInfo GetRaiseMethod(); + MethodInfo GetRaiseMethod(bool nonPublic); + MethodInfo GetRemoveMethod(); + MethodInfo GetRemoveMethod(bool nonPublic); + Type GetType(); + bool IsDefined(Type attributeType, bool inherit); + void RemoveEventHandler(object target, Delegate handler); + string ToString(); +} + +// Namespace: System.Runtime.InteropServices +public interface _FieldBuilder // TypeDefIndex: 894 +{ + // Methods + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); +} + +// Namespace: System.Runtime.InteropServices +public interface _FieldInfo // TypeDefIndex: 895 +{ + // Properties + FieldAttributes Attributes { get; } + Type DeclaringType { get; } + RuntimeFieldHandle FieldHandle { get; } + Type FieldType { get; } + bool IsAssembly { get; } + bool IsFamily { get; } + bool IsFamilyAndAssembly { get; } + bool IsFamilyOrAssembly { get; } + bool IsInitOnly { get; } + bool IsLiteral { get; } + bool IsNotSerialized { get; } + bool IsPinvokeImpl { get; } + bool IsPrivate { get; } + bool IsPublic { get; } + bool IsSpecialName { get; } + bool IsStatic { get; } + MemberTypes MemberType { get; } + string Name { get; } + Type ReflectedType { get; } + + // Methods + bool Equals(object other); + object[] GetCustomAttributes(bool inherit); + object[] GetCustomAttributes(Type attributeType, bool inherit); + int GetHashCode(); + Type GetType(); + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); + object GetValue(object obj); + object GetValueDirect(TypedReference obj); + bool IsDefined(Type attributeType, bool inherit); + void SetValue(object obj, object value); + void SetValue(object obj, object value, BindingFlags invokeAttr, Binder binder, CultureInfo culture); + void SetValueDirect(TypedReference obj, object value); + string ToString(); +} + +// Namespace: System.Runtime.InteropServices +public interface _ILGenerator // TypeDefIndex: 896 +{ + // Methods + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); +} + +// Namespace: System.Runtime.InteropServices +public interface _LocalBuilder // TypeDefIndex: 897 +{ + // Methods + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); +} + +// Namespace: System.Runtime.InteropServices +public interface _MethodBase // TypeDefIndex: 898 +{ + // Properties + MethodAttributes Attributes { get; } + CallingConventions CallingConvention { get; } + Type DeclaringType { get; } + bool IsAbstract { get; } + bool IsAssembly { get; } + bool IsConstructor { get; } + bool IsFamily { get; } + bool IsFamilyAndAssembly { get; } + bool IsFamilyOrAssembly { get; } + bool IsFinal { get; } + bool IsHideBySig { get; } + bool IsPrivate { get; } + bool IsPublic { get; } + bool IsSpecialName { get; } + bool IsStatic { get; } + bool IsVirtual { get; } + MemberTypes MemberType { get; } + RuntimeMethodHandle MethodHandle { get; } + string Name { get; } + Type ReflectedType { get; } + + // Methods + bool Equals(object other); + object[] GetCustomAttributes(bool inherit); + object[] GetCustomAttributes(Type attributeType, bool inherit); + int GetHashCode(); + MethodImplAttributes GetMethodImplementationFlags(); + ParameterInfo[] GetParameters(); + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); + Type GetType(); + object Invoke(object obj, object[] parameters); + object Invoke(object obj, BindingFlags invokeAttr, Binder binder, object[] parameters, CultureInfo culture); + bool IsDefined(Type attributeType, bool inherit); + string ToString(); +} + +// Namespace: System.Runtime.InteropServices +public interface _MethodBuilder // TypeDefIndex: 899 +{ + // Methods + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); +} + +// Namespace: System.Runtime.InteropServices +public interface _MethodInfo // TypeDefIndex: 900 +{ + // Properties + MethodAttributes Attributes { get; } + CallingConventions CallingConvention { get; } + Type DeclaringType { get; } + bool IsAbstract { get; } + bool IsAssembly { get; } + bool IsConstructor { get; } + bool IsFamily { get; } + bool IsFamilyAndAssembly { get; } + bool IsFamilyOrAssembly { get; } + bool IsFinal { get; } + bool IsHideBySig { get; } + bool IsPrivate { get; } + bool IsPublic { get; } + bool IsSpecialName { get; } + bool IsStatic { get; } + bool IsVirtual { get; } + MemberTypes MemberType { get; } + RuntimeMethodHandle MethodHandle { get; } + string Name { get; } + Type ReflectedType { get; } + Type ReturnType { get; } + ICustomAttributeProvider ReturnTypeCustomAttributes { get; } + + // Methods + bool Equals(object other); + MethodInfo GetBaseDefinition(); + object[] GetCustomAttributes(bool inherit); + object[] GetCustomAttributes(Type attributeType, bool inherit); + int GetHashCode(); + MethodImplAttributes GetMethodImplementationFlags(); + ParameterInfo[] GetParameters(); + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); + Type GetType(); + object Invoke(object obj, object[] parameters); + object Invoke(object obj, BindingFlags invokeAttr, Binder binder, object[] parameters, CultureInfo culture); + bool IsDefined(Type attributeType, bool inherit); + string ToString(); +} + +// Namespace: System.Runtime.InteropServices +public interface _MethodRental // TypeDefIndex: 901 +{ + // Methods + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); +} + +// Namespace: System.Runtime.InteropServices +public interface _Module // TypeDefIndex: 902 +{ + // Methods + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); +} + +// Namespace: System.Runtime.InteropServices +public interface _ModuleBuilder // TypeDefIndex: 903 +{ + // Methods + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); +} + +// Namespace: System.Runtime.InteropServices +public interface _ParameterBuilder // TypeDefIndex: 904 +{ + // Methods + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); +} + +// Namespace: System.Runtime.InteropServices +public interface _ParameterInfo // TypeDefIndex: 905 +{ + // Methods + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); +} + +// Namespace: System.Runtime.InteropServices +public interface _PropertyBuilder // TypeDefIndex: 906 +{ + // Methods + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); +} + +// Namespace: System.Runtime.InteropServices +public interface _PropertyInfo // TypeDefIndex: 907 +{ + // Properties + PropertyAttributes Attributes { get; } + bool CanRead { get; } + bool CanWrite { get; } + Type DeclaringType { get; } + bool IsSpecialName { get; } + MemberTypes MemberType { get; } + string Name { get; } + Type PropertyType { get; } + Type ReflectedType { get; } + + // Methods + bool Equals(object other); + MethodInfo[] GetAccessors(); + MethodInfo[] GetAccessors(bool nonPublic); + object[] GetCustomAttributes(bool inherit); + object[] GetCustomAttributes(Type attributeType, bool inherit); + MethodInfo GetGetMethod(); + MethodInfo GetGetMethod(bool nonPublic); + int GetHashCode(); + ParameterInfo[] GetIndexParameters(); + MethodInfo GetSetMethod(); + MethodInfo GetSetMethod(bool nonPublic); + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); + Type GetType(); + object GetValue(object obj, object[] index); + object GetValue(object obj, BindingFlags invokeAttr, Binder binder, object[] index, CultureInfo culture); + bool IsDefined(Type attributeType, bool inherit); + void SetValue(object obj, object value, object[] index); + void SetValue(object obj, object value, BindingFlags invokeAttr, Binder binder, object[] index, CultureInfo culture); + string ToString(); +} + +// Namespace: System.Runtime.InteropServices +public interface _SignatureHelper // TypeDefIndex: 908 +{ + // Methods + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); +} + +// Namespace: System.Runtime.InteropServices +public interface _Thread // TypeDefIndex: 909 +{ + // Methods + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); +} + +// Namespace: System.Runtime.InteropServices +public interface _TypeBuilder // TypeDefIndex: 910 +{ + // Methods + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); +} + +// Namespace: System.Runtime.Remoting.Activation +internal class ActivationServices // TypeDefIndex: 911 +{ + // Fields + private static IActivator _constructionActivator; // 0x00 + + // Properties + private static IActivator ConstructionActivator { get; } // 0x1019BD20 + + // Methods + public void .ctor(); // 0x100BF000 + public static IMessage Activate(RemotingProxy proxy, ConstructionCall ctorCall); // 0x1019AE20 + public static IMessage RemoteActivate(IConstructionCallMessage ctorCall); // 0x1019BC10 + public static object CreateProxyFromAttributes(Type type, object[] activationAttributes); // 0x1019BA00 + public static ConstructionCall CreateConstructionCall(Type type, string activationUrl, object[] activationAttributes); // 0x1019AFC0 + public static IMessage CreateInstanceFromMessage(IConstructionCallMessage ctorCall); // 0x1019B650 + public static object CreateProxyForType(Type type); // 0x1019B8D0 + public static object AllocateUninitializedClassInstance(Type type); // 0x1019AFB0 + public static void EnableProxyActivation(Type type, bool enable); // 0x1019BBF0 +} + +// Namespace: System.Runtime.Remoting.Activation +[Serializable] +public enum ActivatorLevel // TypeDefIndex: 912 +{ + Construction = 4, + Context = 8, + AppDomain = 12, + Process = 16, + Machine = 20 +} + +// Namespace: System.Runtime.Remoting.Activation +internal class AppDomainLevelActivator : IActivator // TypeDefIndex: 913 +{ + // Fields + private string _activationUrl; // 0x08 + private IActivator _next; // 0x0C + + // Properties + public ActivatorLevel Level { get; } // 0x1019CC40 + public IActivator NextActivator { get; set; } // 0x100C5B30 0x100C5B50 + + // Methods + public void .ctor(string activationUrl, IActivator next); // 0x100F97B0 + public IConstructionReturnMessage Activate(IConstructionCallMessage ctorCall); // 0x1019C950 +} + +// Namespace: System.Runtime.Remoting.Activation +[Serializable] +internal class ConstructionLevelActivator : IActivator // TypeDefIndex: 914 +{ + // Properties + public ActivatorLevel Level { get; } // 0x100FCEA0 + public IActivator NextActivator { get; set; } // 0x100C5600 0x100C5530 + + // Methods + public void .ctor(); // 0x100BF000 + public IConstructionReturnMessage Activate(IConstructionCallMessage msg); // 0x101A19F0 +} + +// Namespace: System.Runtime.Remoting.Activation +[Serializable] +internal class ContextLevelActivator : IActivator // TypeDefIndex: 915 +{ + // Fields + private IActivator m_NextActivator; // 0x08 + + // Properties + public ActivatorLevel Level { get; } // 0x10171CD0 + public IActivator NextActivator { get; set; } // 0x100BF0C0 0x100EB270 + + // Methods + public void .ctor(IActivator next); // 0x10113500 + public IConstructionReturnMessage Activate(IConstructionCallMessage ctorCall); // 0x101A1AA0 +} + +// Namespace: System.Runtime.Remoting.Activation +public interface IActivator // TypeDefIndex: 916 +{ + // Properties + ActivatorLevel Level { get; } + IActivator NextActivator { get; set; } + + // Methods + IConstructionReturnMessage Activate(IConstructionCallMessage msg); +} + +// Namespace: System.Runtime.Remoting.Activation +public interface IConstructionCallMessage : IMessage, IMethodCallMessage, IMethodMessage // TypeDefIndex: 917 +{ + // Properties + Type ActivationType { get; } + string ActivationTypeName { get; } + IActivator Activator { get; set; } + object[] CallSiteActivationAttributes { get; } + IList ContextProperties { get; } + +} + +// Namespace: System.Runtime.Remoting.Activation +public interface IConstructionReturnMessage : IMessage, IMethodMessage, IMethodReturnMessage // TypeDefIndex: 918 +{ +} + +// Namespace: System.Runtime.Remoting.Activation +internal class RemoteActivationAttribute : Attribute, IContextAttribute // TypeDefIndex: 919 +{ + // Fields + private IList _contextProperties; // 0x08 + + // Methods + public void .ctor(); // 0x100C5970 + public void .ctor(IList contextProperties); // 0x100E5940 + public bool IsContextOK(Context ctx, IConstructionCallMessage ctor); // 0x100EFBF0 + public void GetPropertiesForNewContext(IConstructionCallMessage ctor); // 0x101A8CE0 +} + +// Namespace: System.Runtime.Remoting.Activation +internal class RemoteActivator : MarshalByRefObject, IActivator // TypeDefIndex: 920 +{ + // Properties + public ActivatorLevel Level { get; } // 0x101A92C0 + public IActivator NextActivator { get; set; } // 0x101A9310 0x101A9360 + + // Methods + public void .ctor(); // 0x100C5970 + public IConstructionReturnMessage Activate(IConstructionCallMessage msg); // 0x101A8F60 + public override object InitializeLifetimeService(); // 0x101A91A0 +} + +// Namespace: System.Runtime.Remoting.Activation +[Serializable] +public sealed class UrlAttribute : ContextAttribute // TypeDefIndex: 921 +{ + // Fields + private string url; // 0x0C + + // Properties + public string UrlValue { get; } // 0x100C5B30 + + // Methods + public void .ctor(string callsiteURL); // 0x101AE040 + public override bool Equals(object o); // 0x101ADF80 + public override int GetHashCode(); // 0x101AE010 + public override void GetPropertiesForNewContext(IConstructionCallMessage ctorMsg); // 0x100C5530 + public override bool IsContextOK(Context ctx, IConstructionCallMessage msg); // 0x100E5880 +} + +// Namespace: System.Runtime.Remoting.Channels +internal class AggregateDictionary : IEnumerable, ICollection, IDictionary // TypeDefIndex: 922 +{ + // Fields + private IDictionary[] dictionaries; // 0x08 + private ArrayList _values; // 0x0C + private ArrayList _keys; // 0x10 + + // Properties + public bool IsFixedSize { get; } // 0x100E5880 + public bool IsReadOnly { get; } // 0x100E5880 + public object Item { get; set; } // 0x1019C280 0x1019C5B0 + public ICollection Keys { get; } // 0x1019C330 + public ICollection Values { get; } // 0x1019C470 + public int Count { get; } // 0x1019C180 + public bool IsSynchronized { get; } // 0x100EFBF0 + public object SyncRoot { get; } // 0x100F7810 + + // Methods + public void .ctor(IDictionary[] dics); // 0x10113500 + private IEnumerator System.Collections.IEnumerable.GetEnumerator(); // 0x1019C130 + public void Add(object key, object value); // 0x1019BD80 + public void Clear(); // 0x1019BDD0 + public bool Contains(object ob); // 0x1019BE20 + public IDictionaryEnumerator GetEnumerator(); // 0x1019C090 + public void Remove(object ob); // 0x1019C0E0 + public void CopyTo(Array array, int index); // 0x1019BEC0 +} + +// Namespace: System.Runtime.Remoting.Channels +internal class AggregateEnumerator : IEnumerator, IDictionaryEnumerator // TypeDefIndex: 923 +{ + // Fields + private IDictionary[] dictionaries; // 0x08 + private int pos; // 0x0C + private IDictionaryEnumerator currente; // 0x10 + + // Properties + public DictionaryEntry Entry { get; } // 0x1019C810 + public object Key { get; } // 0x1019C8B0 + public object Value { get; } // 0x1019C900 + public object Current { get; } // 0x1019C7C0 + + // Methods + public void .ctor(IDictionary[] dics); // 0x1019C730 + public bool MoveNext(); // 0x1019C600 + public void Reset(); // 0x1019C6B0 +} + +// Namespace: System.Runtime.Remoting.Channels +public abstract class BaseChannelObjectWithProperties : IEnumerable, ICollection, IDictionary // TypeDefIndex: 924 +{ + // Fields + private Hashtable table; // 0x08 + + // Properties + public virtual int Count { get; } // 0x101273C0 + public virtual bool IsFixedSize { get; } // 0x100E5880 + public virtual bool IsReadOnly { get; } // 0x100EFBF0 + public virtual bool IsSynchronized { get; } // 0x100EFBF0 + public virtual object Item { get; set; } // 0x1019CE70 0x1019CF20 + public virtual ICollection Keys { get; } // 0x1019CEC0 + public virtual IDictionary Properties { get; } // 0x100F7810 + public virtual object SyncRoot { get; } // 0x100F7810 + public virtual ICollection Values { get; } // 0x1019CEF0 + + // Methods + protected void .ctor(); // 0x1019CE20 + private IEnumerator System.Collections.IEnumerable.GetEnumerator(); // 0x1019CDA0 + public virtual void Add(object key, object value); // 0x1019CC80 + public virtual void Clear(); // 0x1019CCD0 + public virtual bool Contains(object key); // 0x1019CD20 + public virtual void CopyTo(Array array, int index); // 0x1019CD50 + public virtual IDictionaryEnumerator GetEnumerator(); // 0x1019CDA0 + public virtual void Remove(object key); // 0x1019CDD0 +} + +// Namespace: System.Runtime.Remoting.Channels +public abstract class BaseChannelSinkWithProperties : BaseChannelObjectWithProperties // TypeDefIndex: 925 +{ + // Methods + protected void .ctor(); // 0x1019CE20 +} + +// Namespace: System.Runtime.Remoting.Channels +public abstract class BaseChannelWithProperties : BaseChannelObjectWithProperties // TypeDefIndex: 926 +{ + // Fields + protected IChannelSinkBase SinksWithProperties; // 0x0C + + // Properties + public override IDictionary Properties { get; } // 0x1019CF70 + + // Methods + protected void .ctor(); // 0x1019CE20 +} + +// Namespace: System.Runtime.Remoting.Channels +[Serializable] +public class ChannelDataStore : IChannelDataStore // TypeDefIndex: 927 +{ + // Fields + private string[] _channelURIs; // 0x08 + private DictionaryEntry[] _extraData; // 0x0C + + // Properties + public string[] ChannelUris { get; set; } // 0x100BF0C0 0x100EB270 + public object Item { get; set; } // 0x1019D330 0x1019D3B0 + + // Methods + public void .ctor(string[] channelURIs); // 0x10113500 +} + +// Namespace: System.Runtime.Remoting +[Serializable] +internal class ChannelInfo : IChannelInfo // TypeDefIndex: 928 +{ + // Fields + private object[] channelData; // 0x08 + + // Properties + public object[] ChannelData { get; set; } // 0x100BF0C0 0x100EB270 + + // Methods + public void .ctor(); // 0x1019DD60 + public void .ctor(object remoteChannelData); // 0x1019DDC0 +} + +// Namespace: System.Runtime.Remoting.Channels +public sealed class ChannelServices // TypeDefIndex: 929 +{ + // Fields + private static ArrayList registeredChannels; // 0x00 + private static ArrayList delayedClientChannels; // 0x04 + private static CrossContextChannel _crossContextSink; // 0x08 + internal static string CrossContextUrl; // 0x0C + private static IList oldStartModeTypes; // 0x10 + + // Properties + internal static CrossContextChannel CrossContextChannel { get; } // 0x101A10D0 + public static IChannel[] RegisteredChannels { get; } // 0x101A1120 + + // Methods + private void .ctor(); // 0x100BF000 + private static void .cctor(); // 0x101A0F80 + internal static IMessageSink CreateClientChannelSinkChain(string url, object remoteChannelData, out string objectUri); // 0x1019E260 + internal static IMessageSink CreateClientChannelSinkChain(IChannelSender sender, string url, object[] channelDataArray, out string objectUri); // 0x1019E7B0 + public static IServerChannelSink CreateServerChannelSinkChain(IServerChannelSinkProvider provider, IChannelReceiver channel); // 0x1019EC00 + public static ServerProcessing DispatchMessage(IServerChannelSinkStack sinkStack, IMessage msg, out IMessage replyMsg); // 0x1019ED60 + public static IChannel GetChannel(string name); // 0x1019F280 + public static IDictionary GetChannelSinkProperties(object obj); // 0x1019EF10 + public static string[] GetUrlsForObject(MarshalByRefObject obj); // 0x1019F880 + public static void RegisterChannel(IChannel chnl); // 0x101A0650 + public static void RegisterChannel(IChannel chnl, bool ensureSecurity); // 0x101A06A0 + internal static void RegisterChannelConfig(ChannelData channel); // 0x1019FC80 + private static object CreateProvider(ProviderData prov); // 0x1019E890 + public static IMessage SyncDispatchMessage(IMessage msg); // 0x101A0C30 + public static IMessageCtrl AsyncDispatchMessage(IMessage msg, IMessageSink replySink); // 0x1019DE60 + private static ReturnMessage CheckIncomingMessage(IMessage msg); // 0x1019DFB0 + internal static IMessage CheckReturnMessage(IMessage callMsg, IMessage retMsg); // 0x1019E150 + private static bool IsLocalCall(IMessage callMsg); // 0x100E5880 + public static void UnregisterChannel(IChannel chnl); // 0x101A0D00 + internal static object[] GetCurrentChannelInfo(); // 0x1019F580 +} + +// Namespace: System.Runtime.Remoting.Channels +internal class ExceptionFilterSink : IMessageSink // TypeDefIndex: 930 +{ + // Fields + private IMessageSink _next; // 0x08 + private IMessage _call; // 0x0C + + // Properties + public IMessageSink NextSink { get; } // 0x100BF0C0 + + // Methods + public void .ctor(IMessage call, IMessageSink next); // 0x10194DC0 + public IMessage SyncProcessMessage(IMessage msg); // 0x101A30F0 + public IMessageCtrl AsyncProcessMessage(IMessage msg, IMessageSink replySink); // 0x101A30A0 +} + +// Namespace: System.Runtime.Remoting.Channels +internal class ChanelSinkStackEntry // TypeDefIndex: 931 +{ + // Fields + public IChannelSinkBase Sink; // 0x08 + public object State; // 0x0C + public ChanelSinkStackEntry Next; // 0x10 + + // Methods + public void .ctor(IChannelSinkBase sink, object state, ChanelSinkStackEntry next); // 0x10127920 +} + +// Namespace: System.Runtime.Remoting.Channels +public class ClientChannelSinkStack : IClientChannelSinkStack, IClientResponseChannelSinkStack // TypeDefIndex: 932 +{ + // Fields + private IMessageSink _replySink; // 0x08 + private ChanelSinkStackEntry _sinkStack; // 0x0C + + // Methods + public void .ctor(); // 0x100BF000 + public void .ctor(IMessageSink replySink); // 0x10113500 + public void AsyncProcessResponse(ITransportHeaders headers, Stream stream); // 0x101A1570 + public void DispatchException(Exception e); // 0x101A1690 + public void DispatchReplyMessage(IMessage msg); // 0x101A1710 + public object Pop(IClientChannelSink sink); // 0x101A1760 + public void Push(IClientChannelSink sink, object state); // 0x101A17E0 +} + +// Namespace: System.Runtime.Remoting.Channels +[Serializable] +internal class CrossAppDomainData // TypeDefIndex: 933 +{ + // Fields + private object _ContextID; // 0x08 + private int _DomainID; // 0x0C + private string _processGuid; // 0x10 + + // Properties + internal int DomainID { get; } // 0x100C5B30 + internal string ProcessID { get; } // 0x100BFC20 + + // Methods + internal void .ctor(int domainId); // 0x101A22F0 +} + +// Namespace: System.Runtime.Remoting.Channels +[Serializable] +internal class CrossAppDomainChannel : IChannel, IChannelReceiver, IChannelSender // TypeDefIndex: 934 +{ + // Fields + private const string _strName = "MONOCAD"; // 0x00 + private const string _strBaseURI = "MONOCADURI"; // 0x00 + private static object s_lock; // 0x00 + + // Properties + public virtual string ChannelName { get; } // 0x101A22B0 + public virtual int ChannelPriority { get; } // 0x101A22E0 + public virtual object ChannelData { get; } // 0x101A21D0 + + // Methods + public void .ctor(); // 0x100BF000 + private static void .cctor(); // 0x101A2180 + internal static void RegisterCrossAppDomainChannel(); // 0x101A1FF0 + public string Parse(string url, out string objectURI); // 0x101A1FD0 + public virtual string[] GetUrlsForUri(string objectURI); // 0x101A1F80 + public virtual void StartListening(object data); // 0x100C5530 + public virtual void StopListening(object data); // 0x100C5530 + public virtual IMessageSink CreateMessageSink(string url, object data, out string uri); // 0x101A1E30 +} + +// Namespace: System.Runtime.Remoting.Channels +internal class CrossAppDomainSink : IMessageSink // TypeDefIndex: 935 +{ + // Fields + private static Hashtable s_sinks; // 0x00 + private static MethodInfo processMessageMethod; // 0x04 + private int _domainID; // 0x08 + + // Properties + internal int TargetDomainId { get; } // 0x100BF0C0 + public IMessageSink NextSink { get; } // 0x100C5600 + + // Methods + internal void .ctor(int domainID); // 0x10113500 + private static void .cctor(); // 0x101A2D00 + internal static CrossAppDomainSink GetSink(int domainID); // 0x101A23F0 + private static ProcessMessageRes ProcessMessageInDomain(byte[] arrRequest, CADMethodCallMessage cadMsg); // 0x101A26C0 + public virtual IMessage SyncProcessMessage(IMessage msgRequest); // 0x101A28A0 + public virtual IMessageCtrl AsyncProcessMessage(IMessage reqMsg, IMessageSink replySink); // 0x101A2370 + public void SendAsyncMessage(object data); // 0x101A27F0 +} + +// Namespace: +private struct ProcessMessageRes // TypeDefIndex: 936 +{ + // Fields + public byte[] arrResponse; // 0x08 + public CADMethodReturnMessage cadMrm; // 0x0C + +} + +// Namespace: System.Runtime.Remoting.Channels +internal class CADSerializer // TypeDefIndex: 937 +{ + // Methods + public void .ctor(); // 0x100BF000 + internal static IMessage DeserializeMessage(MemoryStream mem, IMethodCallMessage msg); // 0x1019D090 + internal static MemoryStream SerializeMessage(IMessage msg); // 0x1019D1D0 + internal static MemoryStream SerializeObject(object obj); // 0x1019D280 + internal static object DeserializeObject(MemoryStream mem); // 0x1019D150 +} + +// Namespace: System.Runtime.Remoting.Channels +internal class AsyncRequest // TypeDefIndex: 938 +{ + // Fields + internal IMessageSink ReplySink; // 0x08 + internal IMessage MsgRequest; // 0x0C + + // Methods + public void .ctor(IMessage msgRequest, IMessageSink replySink); // 0x1019CC50 +} + +// Namespace: System.Runtime.Remoting.Channels +public interface IChannel // TypeDefIndex: 939 +{ + // Properties + string ChannelName { get; } + int ChannelPriority { get; } + + // Methods + string Parse(string url, out string objectURI); +} + +// Namespace: System.Runtime.Remoting.Channels +public interface IChannelDataStore // TypeDefIndex: 940 +{ + // Properties + string[] ChannelUris { get; } + object Item { get; set; } + +} + +// Namespace: System.Runtime.Remoting.Channels +public interface IChannelReceiver : IChannel // TypeDefIndex: 941 +{ + // Properties + object ChannelData { get; } + + // Methods + string[] GetUrlsForUri(string objectURI); + void StartListening(object data); + void StopListening(object data); +} + +// Namespace: System.Runtime.Remoting.Channels +public interface IChannelReceiverHook // TypeDefIndex: 942 +{ + // Properties + string ChannelScheme { get; } + IServerChannelSink ChannelSinkChain { get; } + bool WantsToListen { get; } + + // Methods + void AddHookChannelUri(string channelUri); +} + +// Namespace: System.Runtime.Remoting.Channels +public interface IChannelSender : IChannel // TypeDefIndex: 943 +{ + // Methods + IMessageSink CreateMessageSink(string url, object remoteChannelData, out string objectURI); +} + +// Namespace: System.Runtime.Remoting.Channels +public interface IChannelSinkBase // TypeDefIndex: 944 +{ + // Properties + IDictionary Properties { get; } + +} + +// Namespace: System.Runtime.Remoting.Channels +public interface IClientChannelSink : IChannelSinkBase // TypeDefIndex: 945 +{ + // Properties + IClientChannelSink NextChannelSink { get; } + + // Methods + void AsyncProcessRequest(IClientChannelSinkStack sinkStack, IMessage msg, ITransportHeaders headers, Stream stream); + void AsyncProcessResponse(IClientResponseChannelSinkStack sinkStack, object state, ITransportHeaders headers, Stream stream); + Stream GetRequestStream(IMessage msg, ITransportHeaders headers); + void ProcessMessage(IMessage msg, ITransportHeaders requestHeaders, Stream requestStream, out ITransportHeaders responseHeaders, out Stream responseStream); +} + +// Namespace: System.Runtime.Remoting.Channels +public interface IClientChannelSinkProvider // TypeDefIndex: 946 +{ + // Properties + IClientChannelSinkProvider Next { get; set; } + + // Methods + IClientChannelSink CreateSink(IChannelSender channel, string url, object remoteChannelData); +} + +// Namespace: System.Runtime.Remoting.Channels +public interface IClientChannelSinkStack : IClientResponseChannelSinkStack // TypeDefIndex: 947 +{ + // Methods + object Pop(IClientChannelSink sink); + void Push(IClientChannelSink sink, object state); +} + +// Namespace: System.Runtime.Remoting.Channels +public interface IClientFormatterSink : IChannelSinkBase, IClientChannelSink, IMessageSink // TypeDefIndex: 948 +{ +} + +// Namespace: System.Runtime.Remoting.Channels +public interface IClientFormatterSinkProvider : IClientChannelSinkProvider // TypeDefIndex: 949 +{ +} + +// Namespace: System.Runtime.Remoting.Channels +public interface IClientResponseChannelSinkStack // TypeDefIndex: 950 +{ + // Methods + void AsyncProcessResponse(ITransportHeaders headers, Stream stream); + void DispatchException(Exception e); + void DispatchReplyMessage(IMessage msg); +} + +// Namespace: System.Runtime.Remoting.Channels +public interface ISecurableChannel // TypeDefIndex: 951 +{ + // Properties + bool IsSecured { get; set; } + +} + +// Namespace: System.Runtime.Remoting.Channels +public interface IServerChannelSink : IChannelSinkBase // TypeDefIndex: 952 +{ + // Properties + IServerChannelSink NextChannelSink { get; } + + // Methods + void AsyncProcessResponse(IServerResponseChannelSinkStack sinkStack, object state, IMessage msg, ITransportHeaders headers, Stream stream); + Stream GetResponseStream(IServerResponseChannelSinkStack sinkStack, object state, IMessage msg, ITransportHeaders headers); + ServerProcessing ProcessMessage(IServerChannelSinkStack sinkStack, IMessage requestMsg, ITransportHeaders requestHeaders, Stream requestStream, out IMessage responseMsg, out ITransportHeaders responseHeaders, out Stream responseStream); +} + +// Namespace: System.Runtime.Remoting.Channels +public interface IServerChannelSinkProvider // TypeDefIndex: 953 +{ + // Properties + IServerChannelSinkProvider Next { get; set; } + + // Methods + IServerChannelSink CreateSink(IChannelReceiver channel); + void GetChannelData(IChannelDataStore channelData); +} + +// Namespace: System.Runtime.Remoting.Channels +public interface IServerChannelSinkStack : IServerResponseChannelSinkStack // TypeDefIndex: 954 +{ + // Methods + object Pop(IServerChannelSink sink); + void Push(IServerChannelSink sink, object state); + void ServerCallback(IAsyncResult ar); + void Store(IServerChannelSink sink, object state); + void StoreAndDispatch(IServerChannelSink sink, object state); +} + +// Namespace: System.Runtime.Remoting.Channels +public interface IServerFormatterSinkProvider : IServerChannelSinkProvider // TypeDefIndex: 955 +{ +} + +// Namespace: System.Runtime.Remoting.Channels +public interface IServerResponseChannelSinkStack // TypeDefIndex: 956 +{ + // Methods + void AsyncProcessResponse(IMessage msg, ITransportHeaders headers, Stream stream); + Stream GetResponseStream(IMessage msg, ITransportHeaders headers); +} + +// Namespace: System.Runtime.Remoting.Channels +public interface ITransportHeaders // TypeDefIndex: 957 +{ + // Properties + object Item { get; set; } + + // Methods + IEnumerator GetEnumerator(); +} + +// Namespace: System.Runtime.Remoting.Channels +public class ServerChannelSinkStack : IServerChannelSinkStack, IServerResponseChannelSinkStack // TypeDefIndex: 958 +{ + // Fields + private ChanelSinkStackEntry _sinkStack; // 0x08 + + // Methods + public void .ctor(); // 0x100BF000 + public Stream GetResponseStream(IMessage msg, ITransportHeaders headers); // 0x101A9FD0 + public object Pop(IServerChannelSink sink); // 0x101AA0F0 + public void Push(IServerChannelSink sink, object state); // 0x101AA170 + public void ServerCallback(IAsyncResult ar); // 0x101AA1D0 + public void Store(IServerChannelSink sink, object state); // 0x101AA270 + public void StoreAndDispatch(IServerChannelSink sink, object state); // 0x101AA220 + public void AsyncProcessResponse(IMessage msg, ITransportHeaders headers, Stream stream); // 0x101A9EB0 +} + +// Namespace: System.Runtime.Remoting.Channels +internal class ServerDispatchSink : IChannelSinkBase, IServerChannelSink // TypeDefIndex: 959 +{ + // Properties + public IServerChannelSink NextChannelSink { get; } // 0x100C5600 + public IDictionary Properties { get; } // 0x100C5600 + + // Methods + public void .ctor(); // 0x100BF000 + public void AsyncProcessResponse(IServerResponseChannelSinkStack sinkStack, object state, IMessage msg, ITransportHeaders headers, Stream stream); // 0x101AA370 + public Stream GetResponseStream(IServerResponseChannelSinkStack sinkStack, object state, IMessage msg, ITransportHeaders headers); // 0x100C5600 + public ServerProcessing ProcessMessage(IServerChannelSinkStack sinkStack, IMessage requestMsg, ITransportHeaders requestHeaders, Stream requestStream, out IMessage responseMsg, out ITransportHeaders responseHeaders, out Stream responseStream); // 0x101AA3C0 +} + +// Namespace: System.Runtime.Remoting.Channels +internal class ServerDispatchSinkProvider : IServerChannelSinkProvider, IServerFormatterSinkProvider // TypeDefIndex: 960 +{ + // Properties + public IServerChannelSinkProvider Next { get; set; } // 0x100C5600 0x101AA320 + + // Methods + public void .ctor(); // 0x100BF000 + public void .ctor(IDictionary properties, ICollection providerData); // 0x101AA300 + public IServerChannelSink CreateSink(IChannelReceiver channel); // 0x101AA2C0 + public void GetChannelData(IChannelDataStore channelData); // 0x100C5530 +} + +// Namespace: System.Runtime.Remoting.Channels +[Serializable] +public enum ServerProcessing // TypeDefIndex: 961 +{ + Complete = 0, + OneWay = 1, + Async = 2 +} + +// Namespace: System.Runtime.Remoting.Channels +public class SinkProviderData // TypeDefIndex: 962 +{ + // Fields + private string sinkName; // 0x08 + private ArrayList children; // 0x0C + private Hashtable properties; // 0x10 + + // Properties + public IList Children { get; } // 0x100C5B30 + public string Name { get; } // 0x100BF0C0 + public IDictionary Properties { get; } // 0x100BFC20 + + // Methods + public void .ctor(string name); // 0x101AA430 +} + +// Namespace: System.Runtime.Remoting.Channels +[Serializable] +public class TransportHeaders : ITransportHeaders // TypeDefIndex: 963 +{ + // Fields + private Hashtable hash_table; // 0x08 + + // Properties + public object Item { get; set; } // 0x1013FCE0 0x101AA630 + + // Methods + public void .ctor(); // 0x101AA500 + public IEnumerator GetEnumerator(); // 0x1019CDA0 +} + +// Namespace: System.Runtime.Remoting.Contexts +public class Context // TypeDefIndex: 964 +{ + // Fields + private int domain_id; // 0x08 + private int context_id; // 0x0C + private UIntPtr static_data; // 0x10 + private static IMessageSink default_server_context_sink; // 0x00 + private IMessageSink server_context_sink_chain; // 0x14 + private IMessageSink client_context_sink_chain; // 0x18 + private object[] datastore; // 0x1C + private ArrayList context_properties; // 0x20 + private bool frozen; // 0x24 + private static int global_count; // 0x04 + private static Hashtable namedSlots; // 0x08 + private static DynamicPropertyCollection global_dynamic_properties; // 0x0C + private DynamicPropertyCollection context_dynamic_properties; // 0x28 + private ContextCallbackObject callback_object; // 0x2C + + // Properties + public static Context DefaultContext { get; } // 0x101D0C30 + public virtual int ContextID { get; } // 0x100C5B30 + public virtual IContextProperty[] ContextProperties { get; } // 0x101D0B80 + internal bool IsDefaultContext { get; } // 0x101D0E10 + internal bool NeedsContextSink { get; } // 0x101D0E20 + internal static bool HasGlobalDynamicSinks { get; } // 0x101D0D60 + internal bool HasDynamicSinks { get; } // 0x101D0C40 + internal bool HasExitSinks { get; } // 0x101D0C90 + + // Methods + public void .ctor(); // 0x101D0AF0 + private static void .cctor(); // 0x101D0AA0 + protected override void Finalize(); // 0x101CF660 + public static bool RegisterDynamicProperty(IDynamicProperty prop, ContextBoundObject obj, Context ctx); // 0x101D0640 + public static bool UnregisterDynamicProperty(string name, ContextBoundObject obj, Context ctx); // 0x101D0A30 + private static DynamicPropertyCollection GetDynamicPropertyCollection(ContextBoundObject obj, Context ctx); // 0x101CFDB0 + internal static void NotifyGlobalDynamicSinks(bool start, IMessage req_msg, bool client_site, bool async); // 0x101D0550 + internal void NotifyDynamicSinks(bool start, IMessage req_msg, bool client_site, bool async); // 0x101D0500 + public virtual IContextProperty GetProperty(string name); // 0x101D01B0 + public virtual void SetProperty(IContextProperty prop); // 0x101D0890 + public virtual void Freeze(); // 0x101CF7F0 + public override string ToString(); // 0x101D09B0 + internal IMessageSink GetServerContextSinkChain(); // 0x101D03B0 + internal IMessageSink GetClientContextSinkChain(); // 0x101CFA20 + internal IMessageSink CreateServerObjectSinkChain(MarshalByRefObject obj, bool forceInternalExecute); // 0x101CF3E0 + internal IMessageSink CreateEnvoySink(MarshalByRefObject serverObject); // 0x101CEC30 + internal static Context SwitchToContext(Context newContext); // 0x101D09A0 + internal static Context CreateNewContext(IConstructionCallMessage msg); // 0x101CEE50 + public void DoCallBack(CrossContextDelegate deleg); // 0x101CF510 + public static LocalDataStoreSlot AllocateDataSlot(); // 0x101CEA40 + public static LocalDataStoreSlot AllocateNamedDataSlot(string name); // 0x101CEA80 + public static void FreeNamedDataSlot(string name); // 0x101CF690 + public static object GetData(LocalDataStoreSlot slot); // 0x101CFC40 + public static LocalDataStoreSlot GetNamedDataSlot(string name); // 0x101CFFF0 + public static void SetData(LocalDataStoreSlot slot, object data); // 0x101D06B0 +} + +// Namespace: System.Runtime.Remoting.Contexts +internal class DynamicPropertyCollection // TypeDefIndex: 965 +{ + // Fields + private ArrayList _properties; // 0x08 + + // Properties + public bool HasProperties { get; } // 0x101D2E30 + + // Methods + public void .ctor(); // 0x101D2DD0 + public bool RegisterDynamicProperty(IDynamicProperty prop); // 0x101D2A50 + public bool UnregisterDynamicProperty(string name); // 0x101D2C40 + public void NotifyMessage(bool start, IMessage msg, bool client_site, bool async); // 0x101D26E0 + private int FindProperty(string name); // 0x101D2580 +} + +// Namespace: +private class DynamicPropertyReg // TypeDefIndex: 966 +{ + // Fields + public IDynamicProperty Property; // 0x08 + public IDynamicMessageSink Sink; // 0x0C + + // Methods + public void .ctor(); // 0x100BF000 +} + +// Namespace: System.Runtime.Remoting.Contexts +internal class ContextCallbackObject : ContextBoundObject // TypeDefIndex: 967 +{ + // Methods + public void .ctor(); // 0x1017A010 + public void DoCallBack(CrossContextDelegate deleg); // 0x100C5530 +} + +// Namespace: System.Runtime.Remoting.Contexts +[Serializable] +public class ContextAttribute : Attribute, IContextAttribute, IContextProperty // TypeDefIndex: 968 +{ + // Fields + protected string AttributeName; // 0x08 + + // Properties + public virtual string Name { get; } // 0x100BF0C0 + + // Methods + public void .ctor(string name); // 0x100E5940 + public override bool Equals(object o); // 0x101CE520 + public virtual void Freeze(Context newContext); // 0x100C5530 + public override int GetHashCode(); // 0x101CE5E0 + public virtual void GetPropertiesForNewContext(IConstructionCallMessage ctorMsg); // 0x101CE610 + public virtual bool IsContextOK(Context ctx, IConstructionCallMessage ctorMsg); // 0x101CE6A0 + public virtual bool IsNewContextOK(Context newCtx); // 0x100E5880 +} + +// Namespace: System.Runtime.Remoting.Contexts +public class ContextProperty // TypeDefIndex: 969 +{ + // Fields + private string name; // 0x08 + private object prop; // 0x0C + + // Properties + public virtual string Name { get; } // 0x100BF0C0 + public virtual object Property { get; } // 0x100C5B30 + + // Methods + private void .ctor(string name, object prop); // 0x100F97B0 +} + +// Namespace: System.Runtime.Remoting.Contexts +internal class CrossContextChannel : IMessageSink // TypeDefIndex: 970 +{ + // Properties + public IMessageSink NextSink { get; } // 0x100C5600 + + // Methods + public void .ctor(); // 0x100BF000 + public IMessage SyncProcessMessage(IMessage msg); // 0x101D1350 + public IMessageCtrl AsyncProcessMessage(IMessage msg, IMessageSink replySink); // 0x101D0F10 +} + +// Namespace: +private class ContextRestoreSink : IMessageSink // TypeDefIndex: 971 +{ + // Fields + private IMessageSink _next; // 0x08 + private Context _context; // 0x0C + private IMessage _call; // 0x10 + + // Properties + public IMessageSink NextSink { get; } // 0x100BF0C0 + + // Methods + public void .ctor(IMessageSink next, Context context, IMessage call); // 0x10127920 + public IMessage SyncProcessMessage(IMessage msg); // 0x101CE7D0 + public IMessageCtrl AsyncProcessMessage(IMessage msg, IMessageSink replySink); // 0x101CE780 +} + +// Namespace: System.Runtime.Remoting.Contexts +public interface IContextAttribute // TypeDefIndex: 972 +{ + // Methods + void GetPropertiesForNewContext(IConstructionCallMessage msg); + bool IsContextOK(Context ctx, IConstructionCallMessage msg); +} + +// Namespace: System.Runtime.Remoting.Contexts +public interface IContextProperty // TypeDefIndex: 973 +{ + // Properties + string Name { get; } + + // Methods + void Freeze(Context newContext); + bool IsNewContextOK(Context newCtx); +} + +// Namespace: System.Runtime.Remoting.Contexts +public interface IContextPropertyActivator // TypeDefIndex: 974 +{ + // Methods + void CollectFromClientContext(IConstructionCallMessage msg); + void CollectFromServerContext(IConstructionReturnMessage msg); + bool DeliverClientContextToServerContext(IConstructionCallMessage msg); + bool DeliverServerContextToClientContext(IConstructionReturnMessage msg); + bool IsOKToActivate(IConstructionCallMessage msg); +} + +// Namespace: System.Runtime.Remoting.Contexts +public interface IContributeClientContextSink // TypeDefIndex: 975 +{ + // Methods + IMessageSink GetClientContextSink(IMessageSink nextSink); +} + +// Namespace: System.Runtime.Remoting.Contexts +public interface IContributeDynamicSink // TypeDefIndex: 976 +{ + // Methods + IDynamicMessageSink GetDynamicSink(); +} + +// Namespace: System.Runtime.Remoting.Contexts +public interface IContributeEnvoySink // TypeDefIndex: 977 +{ + // Methods + IMessageSink GetEnvoySink(MarshalByRefObject obj, IMessageSink nextSink); +} + +// Namespace: System.Runtime.Remoting.Contexts +public interface IContributeObjectSink // TypeDefIndex: 978 +{ + // Methods + IMessageSink GetObjectSink(MarshalByRefObject obj, IMessageSink nextSink); +} + +// Namespace: System.Runtime.Remoting.Contexts +public interface IContributeServerContextSink // TypeDefIndex: 979 +{ + // Methods + IMessageSink GetServerContextSink(IMessageSink nextSink); +} + +// Namespace: System.Runtime.Remoting.Contexts +public interface IDynamicMessageSink // TypeDefIndex: 980 +{ + // Methods + void ProcessMessageFinish(IMessage replyMsg, bool bCliSide, bool bAsync); + void ProcessMessageStart(IMessage reqMsg, bool bCliSide, bool bAsync); +} + +// Namespace: System.Runtime.Remoting.Contexts +public interface IDynamicProperty // TypeDefIndex: 981 +{ + // Properties + string Name { get; } + +} + +// Namespace: System.Runtime.Remoting.Contexts +[Serializable] +public class SynchronizationAttribute : ContextAttribute, IContributeClientContextSink, IContributeServerContextSink // TypeDefIndex: 982 +{ + // Fields + public const int NOT_SUPPORTED = 1; // 0x00 + public const int SUPPORTED = 2; // 0x00 + public const int REQUIRED = 4; // 0x00 + public const int REQUIRES_NEW = 8; // 0x00 + private bool _bReEntrant; // 0x0C + private int _flavor; // 0x10 + [NonSerialized] private bool _locked; // 0x14 + [NonSerialized] private int _lockCount; // 0x18 + [NonSerialized] private Mutex _mutex; // 0x1C + [NonSerialized] private Thread _ownerThread; // 0x20 + + // Properties + public virtual bool IsReEntrant { get; } // 0x100F8910 + public virtual bool Locked { get; set; } // 0x100C5670 0x101DDF00 + + // Methods + public void .ctor(); // 0x101DDD50 + public void .ctor(bool reEntrant); // 0x101DDDC0 + public void .ctor(int flag); // 0x101DDEE0 + public void .ctor(int flag, bool reEntrant); // 0x101DDE30 + internal void AcquireLock(); // 0x101DD700 + internal void ReleaseLock(); // 0x101DDC10 + public override void GetPropertiesForNewContext(IConstructionCallMessage ctorMsg); // 0x101DDA80 + public virtual IMessageSink GetClientContextSink(IMessageSink nextSink); // 0x101DDA30 + public virtual IMessageSink GetServerContextSink(IMessageSink nextSink); // 0x101DDAF0 + public override bool IsContextOK(Context ctx, IConstructionCallMessage msg); // 0x101DDB40 + internal static void ExitContext(); // 0x101DD930 + internal static void EnterContext(); // 0x101DD830 +} + +// Namespace: System.Runtime.Remoting.Contexts +internal class SynchronizedClientContextSink : IMessageSink // TypeDefIndex: 983 +{ + // Fields + private IMessageSink _next; // 0x08 + private SynchronizationAttribute _att; // 0x0C + + // Properties + public IMessageSink NextSink { get; } // 0x100BF0C0 + + // Methods + public void .ctor(IMessageSink next, SynchronizationAttribute att); // 0x101DE330 + public IMessageCtrl AsyncProcessMessage(IMessage msg, IMessageSink replySink); // 0x101DE110 + public IMessage SyncProcessMessage(IMessage msg); // 0x101DE1C0 +} + +// Namespace: System.Runtime.Remoting.Contexts +internal class SynchronizedServerContextSink : IMessageSink // TypeDefIndex: 984 +{ + // Fields + private IMessageSink _next; // 0x08 + private SynchronizationAttribute _att; // 0x0C + + // Properties + public IMessageSink NextSink { get; } // 0x100BF0C0 + + // Methods + public void .ctor(IMessageSink next, SynchronizationAttribute att); // 0x101DE330 + public IMessageCtrl AsyncProcessMessage(IMessage msg, IMessageSink replySink); // 0x101DE520 + public IMessage SyncProcessMessage(IMessage msg); // 0x101DE5B0 +} + +// Namespace: System.Runtime.Remoting.Contexts +internal class SynchronizedContextReplySink : IMessageSink // TypeDefIndex: 985 +{ + // Fields + private IMessageSink _next; // 0x08 + private bool _newLock; // 0x0C + private SynchronizationAttribute _att; // 0x10 + + // Properties + public IMessageSink NextSink { get; } // 0x100BF0C0 + + // Methods + public void .ctor(IMessageSink next, SynchronizationAttribute att, bool newLock); // 0x101DE4F0 + public IMessageCtrl AsyncProcessMessage(IMessage msg, IMessageSink replySink); // 0x101DE360 + public IMessage SyncProcessMessage(IMessage msg); // 0x101DE3B0 +} + +// Namespace: System.Runtime.Remoting.Lifetime +public class ClientSponsor : MarshalByRefObject, ISponsor // TypeDefIndex: 986 +{ + // Fields + private TimeSpan renewal_time; // 0x10 + private Hashtable registered_objects; // 0x18 + + // Properties + public TimeSpan RenewalTime { get; set; } // 0x10113EB0 0x10113EF0 + + // Methods + public void .ctor(); // 0x101CA5B0 + public void .ctor(TimeSpan renewalTime); // 0x101CA630 + public void Close(); // 0x101CA0F0 + protected override void Finalize(); // 0x101CA390 + public override object InitializeLifetimeService(); // 0x101862B0 + public bool Register(MarshalByRefObject obj); // 0x101CA450 + public TimeSpan Renewal(ILease lease); // 0x10113EB0 + public void Unregister(MarshalByRefObject obj); // 0x101CA500 +} + +// Namespace: System.Runtime.Remoting.Lifetime +public interface ILease // TypeDefIndex: 987 +{ + // Properties + TimeSpan CurrentLeaseTime { get; } + LeaseState CurrentState { get; } + TimeSpan InitialLeaseTime { get; set; } + TimeSpan RenewOnCallTime { get; set; } + TimeSpan SponsorshipTimeout { get; set; } + + // Methods + void Register(ISponsor obj); + void Register(ISponsor obj, TimeSpan renewalTime); + TimeSpan Renew(TimeSpan renewalTime); + void Unregister(ISponsor obj); +} + +// Namespace: System.Runtime.Remoting.Lifetime +public interface ISponsor // TypeDefIndex: 988 +{ + // Methods + TimeSpan Renewal(ILease lease); +} + +// Namespace: System.Runtime.Remoting.Lifetime +internal class Lease : MarshalByRefObject, ILease // TypeDefIndex: 989 +{ + // Fields + private DateTime _leaseExpireTime; // 0x10 + private LeaseState _currentState; // 0x20 + private TimeSpan _initialLeaseTime; // 0x28 + private TimeSpan _renewOnCallTime; // 0x30 + private TimeSpan _sponsorshipTimeout; // 0x38 + private ArrayList _sponsors; // 0x40 + private Queue _renewingSponsors; // 0x44 + private RenewalDelegate _renewalDelegate; // 0x48 + + // Properties + public TimeSpan CurrentLeaseTime { get; } // 0x101D5210 + public LeaseState CurrentState { get; } // 0x100EACD0 + public TimeSpan InitialLeaseTime { get; set; } // 0x101D5290 0x101D52C0 + public TimeSpan RenewOnCallTime { get; set; } // 0x101D52A0 0x101D5420 + public TimeSpan SponsorshipTimeout { get; set; } // 0x101D52B0 0x101D54E0 + + // Methods + public void .ctor(); // 0x101D5060 + public void Activate(); // 0x101D46F0 + public void Register(ISponsor obj); // 0x101D4C70 + public void Register(ISponsor obj, TimeSpan renewalTime); // 0x101D4AF0 + public TimeSpan Renew(TimeSpan renewalTime); // 0x101D4CD0 + public void Unregister(ISponsor obj); // 0x101D4D90 + internal void UpdateState(); // 0x101D4ED0 + private void CheckNextSponsor(); // 0x101D4700 + private void ProcessSponsorResponse(object state, bool timedOut); // 0x101D4910 +} + +// Namespace: +private delegate TimeSpan RenewalDelegate(ILease lease); // TypeDefIndex: 990; 0x101DCA70 + +// Namespace: System.Runtime.Remoting.Lifetime +internal class LeaseManager // TypeDefIndex: 991 +{ + // Fields + private ArrayList _objects; // 0x08 + private Timer _timer; // 0x0C + + // Methods + public void .ctor(); // 0x101D4450 + public void SetPollTime(TimeSpan timeSpan); // 0x101D3EA0 + public void TrackLifetime(ServerIdentity identity); // 0x101D41F0 + public void StopTrackingLifetime(ServerIdentity identity); // 0x101D4100 + public void StartManager(); // 0x101D3F90 + public void StopManager(); // 0x101D40D0 + public void ManageLeases(object state); // 0x101D3C70 +} + +// Namespace: System.Runtime.Remoting.Lifetime +internal class LeaseSink : IMessageSink // TypeDefIndex: 992 +{ + // Fields + private IMessageSink _nextSink; // 0x08 + + // Properties + public IMessageSink NextSink { get; } // 0x100BF0C0 + + // Methods + public void .ctor(IMessageSink nextSink); // 0x10113500 + public IMessage SyncProcessMessage(IMessage msg); // 0x101D4690 + public IMessageCtrl AsyncProcessMessage(IMessage msg, IMessageSink replySink); // 0x101D44B0 + private void RenewLease(IMessage msg); // 0x101D4510 +} + +// Namespace: System.Runtime.Remoting.Lifetime +[Serializable] +public enum LeaseState // TypeDefIndex: 993 +{ + Null = 0, + Initial = 1, + Active = 2, + Renewing = 3, + Expired = 4 +} + +// Namespace: System.Runtime.Remoting.Lifetime +public sealed class LifetimeServices // TypeDefIndex: 994 +{ + // Fields + private static TimeSpan _leaseManagerPollTime; // 0x00 + private static TimeSpan _leaseTime; // 0x08 + private static TimeSpan _renewOnCallTime; // 0x10 + private static TimeSpan _sponsorshipTimeout; // 0x18 + private static LeaseManager _leaseManager; // 0x20 + + // Properties + public static TimeSpan LeaseManagerPollTime { get; set; } // 0x101D57C0 0x101D5900 + public static TimeSpan LeaseTime { get; set; } // 0x101D5810 0x101D5980 + public static TimeSpan RenewOnCallTime { get; set; } // 0x101D5860 0x101D5A40 + public static TimeSpan SponsorshipTimeout { get; set; } // 0x101D58B0 0x101D5B00 + + // Methods + public void .ctor(); // 0x100BF000 + private static void .cctor(); // 0x101D5680 + internal static void TrackLifetime(ServerIdentity identity); // 0x101D5610 + internal static void StopTrackingLifetime(ServerIdentity identity); // 0x101D55A0 +} + +// Namespace: System.Runtime.Remoting.Messaging +internal enum ArgInfoType : byte // TypeDefIndex: 995 +{ + In = 0, + Out = 1 +} + +// Namespace: System.Runtime.Remoting.Messaging +internal class ArgInfo // TypeDefIndex: 996 +{ + // Fields + private int[] _paramMap; // 0x08 + private int _inoutArgCount; // 0x0C + private MethodBase _method; // 0x10 + + // Methods + public void .ctor(MethodBase method, ArgInfoType type); // 0x101C6C30 + public int GetInOutArgIndex(int inoutArgNum); // 0x101C6A80 + public virtual string GetInOutArgName(int index); // 0x101C6AC0 + public int GetInOutArgCount(); // 0x100C5B30 + public object[] GetInOutArgs(object[] args); // 0x101C6B50 +} + +// Namespace: System.Runtime.Remoting.Messaging +public class AsyncResult : IAsyncResult, IMessageSink // TypeDefIndex: 997 +{ + // Fields + private object async_state; // 0x08 + private WaitHandle handle; // 0x0C + private object async_delegate; // 0x10 + private IntPtr data; // 0x14 + private object object_data; // 0x18 + private bool sync_completed; // 0x1C + private bool completed; // 0x1D + private bool endinvoke_called; // 0x1E + private object async_callback; // 0x20 + private ExecutionContext current; // 0x24 + private ExecutionContext original; // 0x28 + private int gchandle; // 0x2C + private MonoMethodMessage call_message; // 0x30 + private IMessageCtrl message_ctrl; // 0x34 + private IMessage reply_message; // 0x38 + + // Properties + public virtual object AsyncState { get; } // 0x100BF0C0 + public virtual WaitHandle AsyncWaitHandle { get; } // 0x101C7020 + public virtual bool CompletedSynchronously { get; } // 0x10172890 + public virtual bool IsCompleted { get; } // 0x101C7150 + public bool EndInvokeCalled { get; set; } // 0x101C7140 0x101C7160 + public virtual object AsyncDelegate { get; } // 0x100BFC20 + public IMessageSink NextSink { get; } // 0x100C5600 + internal MonoMethodMessage CallMessage { get; set; } // 0x100EA580 0x100C15B0 + + // Methods + internal void .ctor(); // 0x100BF000 + public virtual IMessageCtrl AsyncProcessMessage(IMessage msg, IMessageSink replySink); // 0x101C6DD0 + public virtual IMessage GetReplyMessage(); // 0x100EB210 + public virtual void SetMessageCtrl(IMessageCtrl mc); // 0x100EA750 + internal void SetCompletedSynchronously(bool completed); // 0x101C6EB0 + internal IMessage EndInvoke(); // 0x101C6E20 + public virtual IMessage SyncProcessMessage(IMessage msg); // 0x101C6EC0 +} + +// Namespace: System.Runtime.Remoting.Messaging +internal class CADArgHolder // TypeDefIndex: 998 +{ + // Fields + public int index; // 0x08 + + // Methods + public void .ctor(int i); // 0x10113500 +} + +// Namespace: System.Runtime.Remoting.Messaging +internal class CADObjRef // TypeDefIndex: 999 +{ + // Fields + private ObjRef objref; // 0x08 + public int SourceDomain; // 0x0C + + // Properties + public string TypeName { get; } // 0x101C91A0 + public string URI { get; } // 0x100C7840 + + // Methods + public void .ctor(ObjRef o, int sourceDomain); // 0x100F97B0 +} + +// Namespace: System.Runtime.Remoting.Messaging +internal class CADMessageBase // TypeDefIndex: 1000 +{ + // Fields + protected object[] _args; // 0x08 + protected byte[] _serializedArgs; // 0x0C + protected int _propertyCount; // 0x10 + protected CADArgHolder _callContext; // 0x14 + + // Methods + public void .ctor(); // 0x100BF000 + internal static int MarshalProperties(IDictionary dict, ArrayList args); // 0x101C76B0 + internal static void UnmarshalProperties(IDictionary dict, int count, ArrayList args); // 0x101C8520 + private static bool IsPossibleToIgnoreMarshal(object obj); // 0x101C71F0 + protected object MarshalArgument(object arg, ArrayList args); // 0x101C7330 + protected object UnmarshalArgument(object arg, ArrayList args); // 0x101C7BD0 + internal object[] MarshalArguments(object[] arguments, ArrayList args); // 0x101C75D0 + internal object[] UnmarshalArguments(object[] arguments, ArrayList args); // 0x101C8440 + protected void SaveLogicalCallContext(IMethodMessage msg, ArrayList serializeList); // 0x101C7AB0 + internal LogicalCallContext GetLogicalCallContext(ArrayList args); // 0x101C7170 +} + +// Namespace: System.Runtime.Remoting.Messaging +internal class CADMethodCallMessage : CADMessageBase // TypeDefIndex: 1001 +{ + // Fields + private string _uri; // 0x18 + internal RuntimeMethodHandle MethodHandle; // 0x1C + internal string FullTypeName; // 0x20 + + // Properties + internal string Uri { get; } // 0x100EE580 + internal int PropertiesCount { get; } // 0x100BFC20 + + // Methods + internal void .ctor(IMethodCallMessage callMsg); // 0x101C8CA0 + internal static CADMethodCallMessage Create(IMessage callMsg); // 0x101C8630 + internal ArrayList GetArguments(); // 0x101C86B0 + internal object[] GetArgs(ArrayList args); // 0x101C8690 + private static Type[] GetSignature(MethodBase methodBase, bool load); // 0x101C8B80 + internal MethodBase GetMethod(); // 0x101C8760 +} + +// Namespace: System.Runtime.Remoting.Messaging +internal class CADMethodReturnMessage : CADMessageBase // TypeDefIndex: 1002 +{ + // Fields + private object _returnValue; // 0x18 + private CADArgHolder _exception; // 0x1C + + // Properties + internal int PropertiesCount { get; } // 0x100BFC20 + + // Methods + internal void .ctor(IMethodReturnMessage retMsg); // 0x101C9000 + internal static CADMethodReturnMessage Create(IMessage callMsg); // 0x101C8E10 + internal ArrayList GetArguments(); // 0x101C8E70 + internal object[] GetArgs(ArrayList args); // 0x101C8690 + internal object GetReturnValue(ArrayList args); // 0x101C8FC0 + internal Exception GetException(ArrayList args); // 0x101C8F20 +} + +// Namespace: System.Runtime.Remoting.Messaging +[Serializable] +public sealed class CallContext // TypeDefIndex: 1003 +{ + // Fields + private static Header[] Headers; // 0x80000000 + private static Hashtable datastore; // 0x80000004 + + // Properties + public static object HostContext { get; set; } // 0x101C9AD0 0x101C9B20 + private static Hashtable Datastore { get; } // 0x101C9A70 + + // Methods + private void .ctor(); // 0x100BF000 + public static void FreeNamedDataSlot(string name); // 0x101C94F0 + public static object GetData(string name); // 0x101C9530 + public static void SetData(string name, object data); // 0x101C9780 + public static object LogicalGetData(string name); // 0x101C95A0 + public static void LogicalSetData(string name, object data); // 0x101C95F0 + public static Header[] GetHeaders(); // 0x101C9570 + public static void SetHeaders(Header[] headers); // 0x101C97C0 + internal static LogicalCallContext CreateLogicalCallContext(bool createEmpty); // 0x101C9260 + internal static object SetCurrentCallContext(LogicalCallContext ctx); // 0x101C96C0 + internal static void UpdateCurrentCallContext(LogicalCallContext ctx); // 0x101C9800 + internal static void RestoreCallContext(object oldContext); // 0x101C9640 +} + +// Namespace: System.Runtime.Remoting.Messaging +public interface ILogicalThreadAffinative // TypeDefIndex: 1004 +{ +} + +// Namespace: System.Runtime.Remoting.Messaging +internal class ClientContextTerminatorSink : IMessageSink // TypeDefIndex: 1005 +{ + // Fields + private Context _context; // 0x08 + + // Properties + public IMessageSink NextSink { get; } // 0x100C5600 + + // Methods + public void .ctor(Context ctx); // 0x10113500 + public IMessage SyncProcessMessage(IMessage msg); // 0x101C9F20 + public IMessageCtrl AsyncProcessMessage(IMessage msg, IMessageSink replySink); // 0x101C9C90 +} + +// Namespace: System.Runtime.Remoting.Messaging +internal class ClientContextReplySink : IMessageSink // TypeDefIndex: 1006 +{ + // Fields + private IMessageSink _replySink; // 0x08 + private Context _context; // 0x0C + + // Properties + public IMessageSink NextSink { get; } // 0x100BF0C0 + + // Methods + public void .ctor(Context ctx, IMessageSink replySink); // 0x1019CC50 + public IMessage SyncProcessMessage(IMessage msg); // 0x101C9BC0 + public IMessageCtrl AsyncProcessMessage(IMessage msg, IMessageSink replySink); // 0x101C9B70 +} + +// Namespace: System.Runtime.Remoting.Messaging +[Serializable] +public class ConstructionCall : MethodCall, IConstructionCallMessage, IMessage, IMethodCallMessage, IMethodMessage // TypeDefIndex: 1007 +{ + // Fields + private IActivator _activator; // 0x38 + private object[] _activationAttributes; // 0x3C + private IList _contextProperties; // 0x40 + private Type _activationType; // 0x44 + private string _activationTypeName; // 0x48 + private bool _isContextOk; // 0x4C + [NonSerialized] private RemotingProxy _sourceProxy; // 0x50 + private static Dictionary`2 <>f__switch$map20; // 0x00 + + // Properties + internal bool IsContextOk { get; set; } // 0x101CE180 0x101CE1C0 + public Type ActivationType { get; } // 0x101CE0B0 + public string ActivationTypeName { get; } // 0x10145560 + public IActivator Activator { get; set; } // 0x100EB210 0x100EB290 + public object[] CallSiteActivationAttributes { get; } // 0x100EB220 + public IList ContextProperties { get; } // 0x101CE130 + public override IDictionary Properties { get; } // 0x101CE190 + internal RemotingProxy SourceProxy { get; set; } // 0x10132810 0x101CE1D0 + + // Methods + public void .ctor(IMessage m); // 0x101CDF60 + internal void .ctor(Type type); // 0x101CE060 + public void .ctor(Header[] headers); // 0x101CDEC0 + internal void .ctor(SerializationInfo info, StreamingContext context); // 0x101CDFD0 + internal override void InitDictionary(); // 0x101CDC10 + internal void SetActivationAttributes(object[] attributes); // 0x101455F0 + internal override void InitMethodProperty(string key, object value); // 0x101CDCD0 + public override void GetObjectData(SerializationInfo info, StreamingContext context); // 0x101CDB40 +} + +// Namespace: System.Runtime.Remoting.Messaging +internal class ConstructionCallDictionary : MethodDictionary // TypeDefIndex: 1008 +{ + // Fields + public static string[] InternalKeys; // 0x00 + private static Dictionary`2 <>f__switch$map23; // 0x04 + private static Dictionary`2 <>f__switch$map24; // 0x08 + + // Methods + public void .ctor(IConstructionCallMessage message); // 0x101CDAD0 + private static void .cctor(); // 0x101CD700 + protected override object GetMethodProperty(string key); // 0x101CD1C0 + protected override void SetMethodProperty(string key, object value); // 0x101CD4B0 +} + +// Namespace: System.Runtime.Remoting.Messaging +[Serializable] +public class ConstructionResponse : MethodResponse, IConstructionReturnMessage, IMessage, IMethodMessage, IMethodReturnMessage // TypeDefIndex: 1009 +{ + // Properties + public override IDictionary Properties { get; } // 0x101CE4A0 + + // Methods + public void .ctor(Header[] h, IMethodCallMessage mcm); // 0x101CE370 + internal void .ctor(object resultObject, LogicalCallContext callCtx, IMethodCallMessage msg); // 0x101CE1E0 + internal void .ctor(Exception e, IMethodCallMessage msg); // 0x101CE2D0 + internal void .ctor(SerializationInfo info, StreamingContext context); // 0x101CE250 +} + +// Namespace: System.Runtime.Remoting.Messaging +[Serializable] +internal class EnvoyTerminatorSink : IMessageSink // TypeDefIndex: 1010 +{ + // Fields + public static EnvoyTerminatorSink Instance; // 0x00 + + // Properties + public IMessageSink NextSink { get; } // 0x100C5600 + + // Methods + public void .ctor(); // 0x100BF000 + private static void .cctor(); // 0x101D2F60 + public IMessage SyncProcessMessage(IMessage msg); // 0x101D2EE0 + public IMessageCtrl AsyncProcessMessage(IMessage msg, IMessageSink replySink); // 0x101D2E60 +} + +// Namespace: System.Runtime.Remoting.Messaging +[Serializable] +internal class ErrorMessage : IMessage, IMethodCallMessage, IMethodMessage // TypeDefIndex: 1011 +{ + // Fields + private string _uri; // 0x08 + + // Properties + public int ArgCount { get; } // 0x100C5600 + public object[] Args { get; } // 0x100C5600 + public bool HasVarArgs { get; } // 0x100EFBF0 + public MethodBase MethodBase { get; } // 0x100C5600 + public string MethodName { get; } // 0x101D3020 + public object MethodSignature { get; } // 0x100C5600 + public virtual IDictionary Properties { get; } // 0x100C5600 + public string TypeName { get; } // 0x101D3050 + public string Uri { get; set; } // 0x100BF0C0 0x100EB270 + public int InArgCount { get; } // 0x100C5600 + public object[] InArgs { get; } // 0x100C5600 + public LogicalCallContext LogicalCallContext { get; } // 0x100C5600 + + // Methods + public void .ctor(); // 0x101D2FE0 + public object GetArg(int arg_num); // 0x100C5600 + public string GetArgName(int arg_num); // 0x101D2FB0 + public string GetInArgName(int index); // 0x100C5600 + public object GetInArg(int argNum); // 0x100C5600 +} + +// Namespace: System.Runtime.Remoting.Messaging +[Serializable] +public class Header // TypeDefIndex: 1012 +{ + // Fields + public string HeaderNamespace; // 0x08 + public bool MustUnderstand; // 0x0C + public string Name; // 0x10 + public object Value; // 0x14 + + // Methods + public void .ctor(string _Name, object _Value); // 0x101D3460 + public void .ctor(string _Name, object _Value, bool _MustUnderstand); // 0x101D3430 + public void .ctor(string _Name, object _Value, bool _MustUnderstand, string _HeaderNamespace); // 0x101D3400 +} + +// Namespace: System.Runtime.Remoting.Messaging +internal interface IInternalMessage // TypeDefIndex: 1013 +{ + // Properties + Identity TargetIdentity { get; set; } + string Uri { get; set; } + +} + +// Namespace: System.Runtime.Remoting.Messaging +public interface IMessage // TypeDefIndex: 1014 +{ + // Properties + IDictionary Properties { get; } + +} + +// Namespace: System.Runtime.Remoting.Messaging +public interface IMessageCtrl // TypeDefIndex: 1015 +{ + // Methods + void Cancel(int msToCancel); +} + +// Namespace: System.Runtime.Remoting.Messaging +public interface IMessageSink // TypeDefIndex: 1016 +{ + // Properties + IMessageSink NextSink { get; } + + // Methods + IMessage SyncProcessMessage(IMessage msg); + IMessageCtrl AsyncProcessMessage(IMessage msg, IMessageSink replySink); +} + +// Namespace: System.Runtime.Remoting.Messaging +public interface IMethodCallMessage : IMessage, IMethodMessage // TypeDefIndex: 1017 +{ + // Properties + int InArgCount { get; } + object[] InArgs { get; } + + // Methods + object GetInArg(int argNum); + string GetInArgName(int index); +} + +// Namespace: System.Runtime.Remoting.Messaging +public interface IMethodMessage : IMessage // TypeDefIndex: 1018 +{ + // Properties + int ArgCount { get; } + object[] Args { get; } + bool HasVarArgs { get; } + LogicalCallContext LogicalCallContext { get; } + MethodBase MethodBase { get; } + string MethodName { get; } + object MethodSignature { get; } + string TypeName { get; } + string Uri { get; } + + // Methods + object GetArg(int argNum); + string GetArgName(int index); +} + +// Namespace: System.Runtime.Remoting.Messaging +public interface IMethodReturnMessage : IMessage, IMethodMessage // TypeDefIndex: 1019 +{ + // Properties + Exception Exception { get; } + int OutArgCount { get; } + object[] OutArgs { get; } + object ReturnValue { get; } + + // Methods + object GetOutArg(int argNum); + string GetOutArgName(int index); +} + +// Namespace: System.Runtime.Remoting.Messaging +public interface IRemotingFormatter : IFormatter // TypeDefIndex: 1020 +{ + // Methods + object Deserialize(Stream serializationStream, HeaderHandler handler); + void Serialize(Stream serializationStream, object graph, Header[] headers); +} + +// Namespace: System.Runtime.Remoting.Messaging +internal interface ISerializationRootObject // TypeDefIndex: 1021 +{ + // Methods + void RootSetObjectData(SerializationInfo info, StreamingContext context); +} + +// Namespace: System.Runtime.Remoting.Messaging +public class InternalMessageWrapper // TypeDefIndex: 1022 +{ + // Fields + protected IMessage WrappedMessage; // 0x08 + + // Methods + public void .ctor(IMessage msg); // 0x10113500 +} + +// Namespace: System.Runtime.Remoting.Messaging +[Serializable] +public sealed class LogicalCallContext : ICloneable, ISerializable // TypeDefIndex: 1023 +{ + // Fields + private Hashtable _data; // 0x08 + private CallContextRemotingData _remotingData; // 0x0C + + // Properties + public bool HasInfo { get; } // 0x101D6340 + internal Hashtable Datastore { get; } // 0x100BF0C0 + + // Methods + internal void .ctor(); // 0x101D62E0 + internal void .ctor(SerializationInfo info, StreamingContext context); // 0x101D61D0 + public void FreeNamedDataSlot(string name); // 0x101D5ED0 + public object GetData(string name); // 0x101D5F00 + public void GetObjectData(SerializationInfo info, StreamingContext context); // 0x101D5F40 + public void SetData(string name, object data); // 0x101D6150 + public object Clone(); // 0x101D5BC0 +} + +// Namespace: System.Runtime.Remoting.Messaging +[Serializable] +internal class CallContextRemotingData : ICloneable // TypeDefIndex: 1024 +{ + // Fields + private string _logicalCallID; // 0x08 + + // Properties + public string LogicalCallID { get; set; } // 0x100BF0C0 0x100EB270 + + // Methods + public void .ctor(); // 0x100BF000 + public object Clone(); // 0x101C9200 +} + +// Namespace: System.Runtime.Remoting.Messaging +[Serializable] +public class MethodCall : ISerializable, IInternalMessage, IMessage, IMethodCallMessage, IMethodMessage, ISerializationRootObject // TypeDefIndex: 1025 +{ + // Fields + private string _uri; // 0x08 + private string _typeName; // 0x0C + private string _methodName; // 0x10 + private object[] _args; // 0x14 + private Type[] _methodSignature; // 0x18 + private MethodBase _methodBase; // 0x1C + private LogicalCallContext _callContext; // 0x20 + private ArgInfo _inArgInfo; // 0x24 + private Identity _targetIdentity; // 0x28 + private Type[] _genericArguments; // 0x2C + protected IDictionary ExternalProperties; // 0x30 + protected IDictionary InternalProperties; // 0x34 + private static Dictionary`2 <>f__switch$map1F; // 0x00 + + // Properties + private string System.Runtime.Remoting.Messaging.IInternalMessage.Uri { get; set; } // 0x100BF0C0 0x100EB270 + private Identity System.Runtime.Remoting.Messaging.IInternalMessage.TargetIdentity { get; set; } // 0x100EB040 0x100EB250 + public int ArgCount { get; } // 0x101D88B0 + public object[] Args { get; } // 0x100EF0C0 + public bool HasVarArgs { get; } // 0x101D8920 + public int InArgCount { get; } // 0x101D8960 + public object[] InArgs { get; } // 0x101D89D0 + public LogicalCallContext LogicalCallContext { get; } // 0x101D8A40 + public MethodBase MethodBase { get; } // 0x101D8A90 + public string MethodName { get; } // 0x101D8AB0 + public object MethodSignature { get; } // 0x101D8AF0 + public virtual IDictionary Properties { get; } // 0x101CE190 + public string TypeName { get; } // 0x101D8C10 + public string Uri { get; set; } // 0x100BF0C0 0x100EB270 + private Type[] GenericArguments { get; } // 0x101D88D0 + + // Methods + public void .ctor(Header[] h1); // 0x101CDEC0 + internal void .ctor(SerializationInfo info, StreamingContext context); // 0x101CDFD0 + internal void .ctor(CADMethodCallMessage msg); // 0x101D8350 + public void .ctor(IMessage msg); // 0x101D8500 + internal void .ctor(string uri, string typeName, string methodName, object[] args); // 0x101D8860 + internal void .ctor(); // 0x100BF000 + internal void CopyFrom(IMethodMessage call); // 0x101D7380 + internal virtual void InitMethodProperty(string key, object value); // 0x101D7A40 + public virtual void GetObjectData(SerializationInfo info, StreamingContext context); // 0x101D7660 + internal virtual void InitDictionary(); // 0x101D79C0 + public object GetArg(int argNum); // 0x101D74F0 + public string GetArgName(int index); // 0x101D7480 + public object GetInArg(int argNum); // 0x101D75B0 + public string GetInArgName(int index); // 0x101D7530 + public virtual object HeaderHandler(Header[] h); // 0x101D7970 + public virtual void Init(); // 0x100C5530 + public void ResolveMethod(); // 0x101D7CB0 + private Type CastTo(string clientType, Type serverType); // 0x101D7140 + private static string GetTypeNameFromAssemblyQualifiedName(string aqname); // 0x101D78E0 + public void RootSetObjectData(SerializationInfo info, StreamingContext ctx); // 0x101D8300 +} + +// Namespace: System.Runtime.Remoting.Messaging +internal class MethodCallDictionary : MethodDictionary // TypeDefIndex: 1026 +{ + // Fields + public static string[] InternalKeys; // 0x00 + + // Methods + public void .ctor(IMethodMessage message); // 0x101D6910 + private static void .cctor(); // 0x101D66D0 +} + +// Namespace: System.Runtime.Remoting.Messaging +public class MethodCallMessageWrapper : InternalMessageWrapper, IMessage, IMethodCallMessage, IMethodMessage // TypeDefIndex: 1027 +{ + // Fields + private object[] _args; // 0x0C + private ArgInfo _inArgInfo; // 0x10 + private DictionaryWrapper _properties; // 0x14 + + // Properties + public virtual int ArgCount { get; } // 0x101D6B90 + public virtual object[] Args { get; set; } // 0x100C5B30 0x100C5B50 + public virtual bool HasVarArgs { get; } // 0x101D6C10 + public virtual int InArgCount { get; } // 0x101780C0 + public virtual object[] InArgs { get; } // 0x101D6C90 + public virtual LogicalCallContext LogicalCallContext { get; } // 0x101D6CC0 + public virtual MethodBase MethodBase { get; } // 0x101D6D40 + public virtual string MethodName { get; } // 0x101D6DC0 + public virtual object MethodSignature { get; } // 0x101D6E40 + public virtual IDictionary Properties { get; } // 0x101D6EC0 + public virtual string TypeName { get; } // 0x101D6FB0 + public virtual string Uri { get; set; } // 0x101D7030 0x101D70B0 + + // Methods + public void .ctor(IMethodCallMessage msg); // 0x101D6AD0 + public virtual object GetArg(int argNum); // 0x101D6A00 + public virtual string GetArgName(int index); // 0x101D6980 + public virtual object GetInArg(int argNum); // 0x101D6A70 + public virtual string GetInArgName(int index); // 0x101D6A40 +} + +// Namespace: +private class DictionaryWrapper : MethodCallDictionary // TypeDefIndex: 1028 +{ + // Fields + private IDictionary _wrappedDictionary; // 0x18 + private static string[] _keys; // 0x00 + + // Methods + public void .ctor(IMethodMessage message, IDictionary wrappedDictionary); // 0x101D2430 + private static void .cctor(); // 0x101D2310 + protected override IDictionary AllocInternalProperties(); // 0x100EE580 + protected override void SetMethodProperty(string key, object value); // 0x101D2100 + protected override object GetMethodProperty(string key); // 0x101D1E70 +} + +// Namespace: System.Runtime.Remoting.Messaging +[Serializable] +internal class MethodDictionary : IEnumerable, ICollection, IDictionary // TypeDefIndex: 1029 +{ + // Fields + private IDictionary _internalProperties; // 0x08 + protected IMethodMessage _message; // 0x0C + private string[] _methodKeys; // 0x10 + private bool _ownProperties; // 0x14 + private static Dictionary`2 <>f__switch$map21; // 0x00 + private static Dictionary`2 <>f__switch$map22; // 0x04 + + // Properties + internal bool HasInternalProperties { get; } // 0x101D9800 + internal IDictionary InternalProperties { get; } // 0x101D98B0 + public string[] MethodKeys { get; set; } // 0x100BFC20 0x100C5B40 + public bool IsFixedSize { get; } // 0x100EFBF0 + public bool IsReadOnly { get; } // 0x100EFBF0 + public object Item { get; set; } // 0x101D9950 0x101D8C70 + public ICollection Keys { get; } // 0x101D9A70 + public ICollection Values { get; } // 0x101D9D40 + public int Count { get; } // 0x101D9790 + public bool IsSynchronized { get; } // 0x100EFBF0 + public object SyncRoot { get; } // 0x100F7810 + + // Methods + public void .ctor(IMethodMessage message); // 0x10158F90 + public void .ctor(string[] keys); // 0x101D9770 + private IEnumerator System.Collections.IEnumerable.GetEnumerator(); // 0x101D9720 + protected virtual IDictionary AllocInternalProperties(); // 0x101D8DB0 + public IDictionary GetInternalProperties(); // 0x101D9050 + private bool IsOverridenKey(string key); // 0x101D9360 + protected virtual object GetMethodProperty(string key); // 0x101D9080 + protected virtual void SetMethodProperty(string key, object value); // 0x101D9540 + public void Add(object key, object value); // 0x101D8C70 + public void Clear(); // 0x101D8E00 + public bool Contains(object key); // 0x101D8E40 + public void Remove(object key); // 0x101D9410 + public void CopyTo(Array array, int index); // 0x101D8F60 + public IDictionaryEnumerator GetEnumerator(); // 0x101D9000 +} + +// Namespace: +private class DictionaryEnumerator : IEnumerator, IDictionaryEnumerator // TypeDefIndex: 1030 +{ + // Fields + private MethodDictionary _methodDictionary; // 0x08 + private IDictionaryEnumerator _hashtableEnum; // 0x0C + private int _posMethod; // 0x10 + + // Properties + public object Current { get; } // 0x101D1BB0 + public DictionaryEntry Entry { get; } // 0x101D1BD0 + public object Key { get; } // 0x101D1D10 + public object Value { get; } // 0x101D1BB0 + + // Methods + public void .ctor(MethodDictionary methodDictionary); // 0x101D1B30 + public bool MoveNext(); // 0x101D1A00 + public void Reset(); // 0x101D1AE0 +} + +// Namespace: System.Runtime.Remoting.Messaging +[Serializable] +public class MethodResponse : ISerializable, IInternalMessage, IMessage, IMethodMessage, IMethodReturnMessage, ISerializationRootObject // TypeDefIndex: 1031 +{ + // Fields + private string _methodName; // 0x08 + private string _uri; // 0x0C + private string _typeName; // 0x10 + private MethodBase _methodBase; // 0x14 + private object _returnValue; // 0x18 + private Exception _exception; // 0x1C + private Type[] _methodSignature; // 0x20 + private ArgInfo _inArgInfo; // 0x24 + private object[] _args; // 0x28 + private object[] _outArgs; // 0x2C + private IMethodCallMessage _callMsg; // 0x30 + private LogicalCallContext _callContext; // 0x34 + private Identity _targetIdentity; // 0x38 + protected IDictionary ExternalProperties; // 0x3C + protected IDictionary InternalProperties; // 0x40 + private static Dictionary`2 <>f__switch$map25; // 0x00 + + // Properties + private string System.Runtime.Remoting.Messaging.IInternalMessage.Uri { get; set; } // 0x101DA860 0x100C5B50 + private Identity System.Runtime.Remoting.Messaging.IInternalMessage.TargetIdentity { get; set; } // 0x100EB210 0x100EB290 + public int ArgCount { get; } // 0x101DAB70 + public object[] Args { get; } // 0x100EB040 + public Exception Exception { get; } // 0x100F85F0 + public bool HasVarArgs { get; } // 0x101DAB90 + public LogicalCallContext LogicalCallContext { get; } // 0x101DABD0 + public MethodBase MethodBase { get; } // 0x101DAC20 + public string MethodName { get; } // 0x101DAD40 + public object MethodSignature { get; } // 0x101DAD90 + public int OutArgCount { get; } // 0x101DAE10 + public object[] OutArgs { get; } // 0x101DAE90 + public virtual IDictionary Properties { get; } // 0x101CE4A0 + public object ReturnValue { get; } // 0x100EE580 + public string TypeName { get; } // 0x101DAF20 + public string Uri { get; set; } // 0x101DA860 0x100C5B50 + + // Methods + public void .ctor(Header[] h1, IMethodCallMessage mcm); // 0x101CE370 + internal void .ctor(Exception e, IMethodCallMessage msg); // 0x101CE2D0 + internal void .ctor(object returnValue, object[] outArgs, LogicalCallContext callCtx, IMethodCallMessage msg); // 0x101DA8B0 + internal void .ctor(IMethodCallMessage msg, CADMethodReturnMessage retmsg); // 0x101DA920 + internal void .ctor(SerializationInfo info, StreamingContext context); // 0x101CE250 + internal void InitMethodProperty(string key, object value); // 0x101DA580 + public object GetArg(int argNum); // 0x101DA0D0 + public string GetArgName(int index); // 0x101DA060 + public virtual void GetObjectData(SerializationInfo info, StreamingContext context); // 0x101DA100 + public object GetOutArg(int argNum); // 0x101DA470 + public string GetOutArgName(int index); // 0x101DA3A0 + public virtual object HeaderHandler(Header[] h); // 0x101DA530 + public void RootSetObjectData(SerializationInfo info, StreamingContext ctx); // 0x101DA810 +} + +// Namespace: System.Runtime.Remoting.Messaging +internal class MethodReturnDictionary : MethodDictionary // TypeDefIndex: 1032 +{ + // Fields + public static string[] InternalReturnKeys; // 0x00 + public static string[] InternalExceptionKeys; // 0x04 + + // Methods + public void .ctor(IMethodReturnMessage message); // 0x101DB270 + private static void .cctor(); // 0x101DAF70 +} + +// Namespace: System.Runtime.Remoting.Messaging +public class MethodReturnMessageWrapper : InternalMessageWrapper, IMessage, IMethodMessage, IMethodReturnMessage // TypeDefIndex: 1033 +{ + // Fields + private object[] _args; // 0x0C + private ArgInfo _outArgInfo; // 0x10 + private DictionaryWrapper _properties; // 0x14 + private Exception _exception; // 0x18 + private object _return; // 0x1C + + // Properties + public virtual int ArgCount { get; } // 0x10129580 + public virtual object[] Args { get; set; } // 0x100C5B30 0x100C5B50 + public virtual Exception Exception { get; set; } // 0x100EE580 0x10113F40 + public virtual bool HasVarArgs { get; } // 0x101DB490 + public virtual LogicalCallContext LogicalCallContext { get; } // 0x101DB510 + public virtual MethodBase MethodBase { get; } // 0x101DB590 + public virtual string MethodName { get; } // 0x101DB610 + public virtual object MethodSignature { get; } // 0x101DB690 + public virtual int OutArgCount { get; } // 0x101DB710 + public virtual object[] OutArgs { get; } // 0x101DB730 + public virtual IDictionary Properties { get; } // 0x101DB750 + public virtual object ReturnValue { get; set; } // 0x100F85F0 0x10113F50 + public virtual string TypeName { get; } // 0x101DB840 + public string Uri { get; set; } // 0x101DB8C0 0x101DB940 + + // Methods + public void .ctor(IMethodReturnMessage msg); // 0x101DB3A0 + public virtual object GetArg(int argNum); // 0x101D6A00 + public virtual string GetArgName(int index); // 0x101DB320 + public virtual object GetOutArg(int argNum); // 0x101D6A70 + public virtual string GetOutArgName(int index); // 0x101D6A40 +} + +// Namespace: +private class DictionaryWrapper : MethodReturnDictionary // TypeDefIndex: 1034 +{ + // Fields + private IDictionary _wrappedDictionary; // 0x18 + private static string[] _keys; // 0x00 + + // Methods + public void .ctor(IMethodReturnMessage message, IDictionary wrappedDictionary); // 0x101D23A0 + private static void .cctor(); // 0x101D2230 + protected override IDictionary AllocInternalProperties(); // 0x100EE580 + protected override void SetMethodProperty(string key, object value); // 0x101D1F60 + protected override object GetMethodProperty(string key); // 0x101D1D20 +} + +// Namespace: System.Runtime.Remoting.Messaging +[Serializable] +internal class MonoMethodMessage : IInternalMessage, IMessage, IMethodCallMessage, IMethodMessage, IMethodReturnMessage // TypeDefIndex: 1035 +{ + // Fields + private MonoMethod method; // 0x08 + private object[] args; // 0x0C + private string[] names; // 0x10 + private byte[] arg_types; // 0x14 + public LogicalCallContext ctx; // 0x18 + public object rval; // 0x1C + public Exception exc; // 0x20 + private AsyncResult asyncResult; // 0x24 + private CallType call_type; // 0x28 + private string uri; // 0x2C + private MethodCallDictionary properties; // 0x30 + private Type[] methodSignature; // 0x34 + private Identity identity; // 0x38 + + // Properties + private Identity System.Runtime.Remoting.Messaging.IInternalMessage.TargetIdentity { get; set; } // 0x100EB210 0x100EB290 + public IDictionary Properties { get; } // 0x101DC3C0 + public int ArgCount { get; } // 0x101DBE70 + public object[] Args { get; } // 0x100C5B30 + public bool HasVarArgs { get; } // 0x100EFBF0 + public LogicalCallContext LogicalCallContext { get; set; } // 0x100EE580 0x10113F40 + public MethodBase MethodBase { get; } // 0x100BF0C0 + public string MethodName { get; } // 0x101DC0B0 + public object MethodSignature { get; } // 0x101DC120 + public string TypeName { get; } // 0x101DC410 + public string Uri { get; set; } // 0x100EB200 0x100EB260 + public int InArgCount { get; } // 0x101DBF10 + public object[] InArgs { get; } // 0x101DBF90 + public Exception Exception { get; } // 0x100EACD0 + public int OutArgCount { get; } // 0x101DC240 + public object[] OutArgs { get; } // 0x101DC2A0 + public object ReturnValue { get; } // 0x100F85F0 + public bool IsAsync { get; } // 0x1013F820 + public AsyncResult AsyncResult { get; } // 0x100EAD50 + internal CallType CallType { get; } // 0x101DBEA0 + + // Methods + public void .ctor(MethodBase method, object[] out_args); // 0x101DBDE0 + public void .ctor(Type type, string method_name, object[] in_args); // 0x101DBCB0 + internal void InitMessage(MonoMethod method, object[] out_args); // 0x101DBC10 + public object GetArg(int arg_num); // 0x101DBA20 + public string GetArgName(int arg_num); // 0x101DB9A0 + public object GetInArg(int arg_num); // 0x101DBAC0 + public string GetInArgName(int arg_num); // 0x101DBA50 + public object GetOutArg(int arg_num); // 0x101DBBA0 + public string GetOutArgName(int arg_num); // 0x101DBB30 + public bool NeedsOutProcessing(out int outCount); // 0x101DBC30 +} + +// Namespace: System.Runtime.Remoting.Messaging +internal enum CallType // TypeDefIndex: 1036 +{ + Sync = 0, + BeginInvoke = 1, + EndInvoke = 2, + OneWay = 3 +} + +// Namespace: System.Runtime.Remoting.Messaging +public class OneWayAttribute : Attribute // TypeDefIndex: 1037 +{ + // Methods + public void .ctor(); // 0x100C5970 +} + +// Namespace: System.Runtime.Remoting.Messaging +internal class RemotingSurrogate : ISerializationSurrogate // TypeDefIndex: 1038 +{ + // Methods + public void .ctor(); // 0x100BF000 + public virtual void GetObjectData(object obj, SerializationInfo si, StreamingContext sc); // 0x101DC8E0 + public virtual object SetObjectData(object obj, SerializationInfo si, StreamingContext sc, ISurrogateSelector selector); // 0x101DC9F0 +} + +// Namespace: System.Runtime.Remoting.Messaging +internal class ObjRefSurrogate : ISerializationSurrogate // TypeDefIndex: 1039 +{ + // Methods + public void .ctor(); // 0x100BF000 + public virtual void GetObjectData(object obj, SerializationInfo si, StreamingContext sc); // 0x101DC4A0 + public virtual object SetObjectData(object obj, SerializationInfo si, StreamingContext sc, ISurrogateSelector selector); // 0x101DC550 +} + +// Namespace: System.Runtime.Remoting.Messaging +public class RemotingSurrogateSelector : ISurrogateSelector // TypeDefIndex: 1040 +{ + // Fields + private static Type s_cachedTypeObjRef; // 0x00 + private static ObjRefSurrogate _objRefSurrogate; // 0x04 + private static RemotingSurrogate _objRemotingSurrogate; // 0x08 + private object _rootObj; // 0x08 + private MessageSurrogateFilter _filter; // 0x0C + private ISurrogateSelector _next; // 0x10 + + // Properties + public MessageSurrogateFilter Filter { get; set; } // 0x100C5B30 0x100C5B50 + + // Methods + public void .ctor(); // 0x100BF000 + private static void .cctor(); // 0x101DC840 + public virtual void ChainSelector(ISurrogateSelector selector); // 0x101DC5A0 + public virtual ISurrogateSelector GetNextSelector(); // 0x100BFC20 + public object GetRootObject(); // 0x100BF0C0 + public virtual ISerializationSurrogate GetSurrogate(Type type, StreamingContext context, out ISurrogateSelector ssout); // 0x101DC600 + public void SetRootObject(object obj); // 0x101DC790 + public virtual void UseSoapFormat(); // 0x101DC7F0 +} + +// Namespace: System.Runtime.Remoting.Messaging +public class ReturnMessage : IInternalMessage, IMessage, IMethodMessage, IMethodReturnMessage // TypeDefIndex: 1041 +{ + // Fields + private object[] _outArgs; // 0x08 + private object[] _args; // 0x0C + private int _outArgsCount; // 0x10 + private LogicalCallContext _callCtx; // 0x14 + private object _returnValue; // 0x18 + private string _uri; // 0x1C + private Exception _exception; // 0x20 + private MethodBase _methodBase; // 0x24 + private string _methodName; // 0x28 + private Type[] _methodSignature; // 0x2C + private string _typeName; // 0x30 + private MethodReturnDictionary _properties; // 0x34 + private Identity _targetIdentity; // 0x38 + private ArgInfo _inArgInfo; // 0x3C + + // Properties + private string System.Runtime.Remoting.Messaging.IInternalMessage.Uri { get; set; } // 0x100F85F0 0x10113F50 + private Identity System.Runtime.Remoting.Messaging.IInternalMessage.TargetIdentity { get; set; } // 0x100EB210 0x100EB290 + public int ArgCount { get; } // 0x10129580 + public object[] Args { get; } // 0x100C5B30 + public bool HasVarArgs { get; } // 0x101DD0B0 + public LogicalCallContext LogicalCallContext { get; } // 0x101DD0E0 + public MethodBase MethodBase { get; } // 0x100EAD50 + public string MethodName { get; } // 0x101DD130 + public object MethodSignature { get; } // 0x101DD170 + public virtual IDictionary Properties { get; } // 0x101DD390 + public string TypeName { get; } // 0x101DD3E0 + public string Uri { get; set; } // 0x100F85F0 0x10113F50 + public Exception Exception { get; } // 0x100EACD0 + public int OutArgCount { get; } // 0x101DD290 + public object[] OutArgs { get; } // 0x101DD310 + public virtual object ReturnValue { get; } // 0x100EE580 + + // Methods + public void .ctor(object ret, object[] outArgs, int outArgsCount, LogicalCallContext callCtx, IMethodCallMessage mcm); // 0x101DCF90 + public void .ctor(Exception e, IMethodCallMessage mcm); // 0x101DD030 + public object GetArg(int argNum); // 0x101D6A00 + public string GetArgName(int index); // 0x101DCDF0 + public object GetOutArg(int argNum); // 0x101DCEE0 + public string GetOutArgName(int index); // 0x101DCE60 +} + +// Namespace: System.Runtime.Remoting.Messaging +internal class ServerContextTerminatorSink : IMessageSink // TypeDefIndex: 1042 +{ + // Properties + public IMessageSink NextSink { get; } // 0x100C5600 + + // Methods + public void .ctor(); // 0x100BF000 + public IMessage SyncProcessMessage(IMessage msg); // 0x101DD500 + public IMessageCtrl AsyncProcessMessage(IMessage msg, IMessageSink replySink); // 0x101DD440 +} + +// Namespace: System.Runtime.Remoting.Messaging +internal class ServerObjectTerminatorSink : IMessageSink // TypeDefIndex: 1043 +{ + // Fields + private IMessageSink _nextSink; // 0x08 + + // Properties + public IMessageSink NextSink { get; } // 0x100BF0C0 + + // Methods + public void .ctor(IMessageSink nextSink); // 0x10113500 + public IMessage SyncProcessMessage(IMessage msg); // 0x10190CF0 + public IMessageCtrl AsyncProcessMessage(IMessage msg, IMessageSink replySink); // 0x10190BC0 +} + +// Namespace: System.Runtime.Remoting.Messaging +internal class ServerObjectReplySink : IMessageSink // TypeDefIndex: 1044 +{ + // Fields + private IMessageSink _replySink; // 0x08 + private ServerIdentity _identity; // 0x0C + + // Properties + public IMessageSink NextSink { get; } // 0x100BF0C0 + + // Methods + public void .ctor(ServerIdentity identity, IMessageSink replySink); // 0x1019CC50 + public IMessage SyncProcessMessage(IMessage msg); // 0x101DD660 + public IMessageCtrl AsyncProcessMessage(IMessage msg, IMessageSink replySink); // 0x101DD610 +} + +// Namespace: System.Runtime.Remoting.Messaging +internal class StackBuilderSink : IMessageSink // TypeDefIndex: 1045 +{ + // Fields + private MarshalByRefObject _target; // 0x08 + private RealProxy _rp; // 0x0C + + // Properties + public IMessageSink NextSink { get; } // 0x100C5600 + + // Methods + public void .ctor(MarshalByRefObject obj, bool forceInternalExecute); // 0x10198F60 + public IMessage SyncProcessMessage(IMessage msg); // 0x10198EA0 + public IMessageCtrl AsyncProcessMessage(IMessage msg, IMessageSink replySink); // 0x10198920 + private void ExecuteAsyncMessage(object ob); // 0x10198D40 + private void CheckParameters(IMessage msg); // 0x10198A20 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +public interface ISoapXsd // TypeDefIndex: 1046 +{ + // Methods + string GetXsdType(); +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapAnyUri : ISoapXsd // TypeDefIndex: 1047 +{ + // Fields + private string _value; // 0x08 + + // Properties + public string Value { get; set; } // 0x100BF0C0 0x100EB270 + public static string XsdType { get; } // 0x101912C0 + + // Methods + public void .ctor(); // 0x100BF000 + public void .ctor(string value); // 0x10113500 + public string GetXsdType(); // 0x101912C0 + public static SoapAnyUri Parse(string value); // 0x101912F0 + public override string ToString(); // 0x100BF0C0 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapBase64Binary : ISoapXsd // TypeDefIndex: 1048 +{ + // Fields + private byte[] _value; // 0x08 + + // Properties + public byte[] Value { get; set; } // 0x100BF0C0 0x100EB270 + public static string XsdType { get; } // 0x10191340 + + // Methods + public void .ctor(); // 0x100BF000 + public void .ctor(byte[] value); // 0x10113500 + public string GetXsdType(); // 0x10191340 + public static SoapBase64Binary Parse(string value); // 0x10191370 + public override string ToString(); // 0x101913E0 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapDate : ISoapXsd // TypeDefIndex: 1049 +{ + // Fields + private static readonly string[] _datetimeFormats; // 0x00 + private int _sign; // 0x08 + private DateTime _value; // 0x10 + + // Properties + public int Sign { get; set; } // 0x100BF0C0 0x100EB270 + public DateTime Value { get; set; } // 0x10168A30 0x101921F0 + public static string XsdType { get; } // 0x101921C0 + + // Methods + public void .ctor(); // 0x100BF000 + public void .ctor(DateTime value); // 0x10192170 + public void .ctor(DateTime value, int sign); // 0x10192190 + private static void .cctor(); // 0x10191F30 + public string GetXsdType(); // 0x10191D50 + public static SoapDate Parse(string value); // 0x10191DB0 + public override string ToString(); // 0x10191E90 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +public sealed class SoapDateTime // TypeDefIndex: 1050 +{ + // Fields + private static readonly string[] _datetimeFormats; // 0x00 + + // Properties + public static string XsdType { get; } // 0x10191D20 + + // Methods + public void .ctor(); // 0x100BF000 + private static void .cctor(); // 0x10191530 + public static DateTime Parse(string value); // 0x10191440 + public static string ToString(DateTime value); // 0x101914D0 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapDay : ISoapXsd // TypeDefIndex: 1051 +{ + // Fields + private static readonly string[] _datetimeFormats; // 0x00 + private DateTime _value; // 0x08 + + // Properties + public DateTime Value { get; set; } // 0x10192480 0x101924D0 + public static string XsdType { get; } // 0x101924A0 + + // Methods + public void .ctor(); // 0x100BF000 + public void .ctor(DateTime value); // 0x10192460 + private static void .cctor(); // 0x10192380 + public string GetXsdType(); // 0x10192200 + public static SoapDay Parse(string value); // 0x10192260 + public override string ToString(); // 0x10192310 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +public sealed class SoapDuration // TypeDefIndex: 1052 +{ + // Properties + public static string XsdType { get; } // 0x10192BE0 + + // Methods + public void .ctor(); // 0x100BF000 + public static TimeSpan Parse(string value); // 0x101924E0 + public static string ToString(TimeSpan timeSpan); // 0x101928D0 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapEntities : ISoapXsd // TypeDefIndex: 1053 +{ + // Fields + private string _value; // 0x08 + + // Properties + public string Value { get; set; } // 0x100BF0C0 0x100EB270 + public static string XsdType { get; } // 0x10192C10 + + // Methods + public void .ctor(); // 0x100BF000 + public void .ctor(string value); // 0x10113500 + public string GetXsdType(); // 0x10192C10 + public static SoapEntities Parse(string value); // 0x10192C40 + public override string ToString(); // 0x100BF0C0 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapEntity : ISoapXsd // TypeDefIndex: 1054 +{ + // Fields + private string _value; // 0x08 + + // Properties + public string Value { get; set; } // 0x100BF0C0 0x100EB270 + public static string XsdType { get; } // 0x10192C90 + + // Methods + public void .ctor(); // 0x100BF000 + public void .ctor(string value); // 0x10113500 + public string GetXsdType(); // 0x10192C90 + public static SoapEntity Parse(string value); // 0x10192CC0 + public override string ToString(); // 0x100BF0C0 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +internal class SoapHelper // TypeDefIndex: 1055 +{ + // Methods + public void .ctor(); // 0x100BF000 + public static Exception GetException(ISoapXsd type, string msg); // 0x10192DD0 + public static string Normalize(string s); // 0x100F7810 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapHexBinary : ISoapXsd // TypeDefIndex: 1056 +{ + // Fields + private byte[] _value; // 0x08 + private StringBuilder sb; // 0x0C + + // Properties + public byte[] Value { get; set; } // 0x100BF0C0 0x100EB270 + public static string XsdType { get; } // 0x10193250 + + // Methods + public void .ctor(); // 0x101933E0 + public void .ctor(byte[] value); // 0x10193440 + public string GetXsdType(); // 0x10193250 + public static SoapHexBinary Parse(string value); // 0x10193280 + internal static byte[] FromBinHexString(string value); // 0x10192FF0 + private static byte FromHex(char hexDigit, string value); // 0x10193140 + private static Exception CreateInvalidValueException(string value); // 0x10192E70 + public override string ToString(); // 0x10193310 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapId : ISoapXsd // TypeDefIndex: 1057 +{ + // Fields + private string _value; // 0x08 + + // Properties + public string Value { get; set; } // 0x100BF0C0 0x100EB270 + public static string XsdType { get; } // 0x101934A0 + + // Methods + public void .ctor(); // 0x100BF000 + public void .ctor(string value); // 0x10113500 + public string GetXsdType(); // 0x101934A0 + public static SoapId Parse(string value); // 0x101934D0 + public override string ToString(); // 0x100BF0C0 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapIdref : ISoapXsd // TypeDefIndex: 1058 +{ + // Fields + private string _value; // 0x08 + + // Properties + public string Value { get; set; } // 0x100BF0C0 0x100EB270 + public static string XsdType { get; } // 0x10193520 + + // Methods + public void .ctor(); // 0x100BF000 + public void .ctor(string value); // 0x10113500 + public string GetXsdType(); // 0x10193520 + public static SoapIdref Parse(string value); // 0x10193550 + public override string ToString(); // 0x100BF0C0 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapIdrefs : ISoapXsd // TypeDefIndex: 1059 +{ + // Fields + private string _value; // 0x08 + + // Properties + public string Value { get; set; } // 0x100BF0C0 0x100EB270 + public static string XsdType { get; } // 0x101935A0 + + // Methods + public void .ctor(); // 0x100BF000 + public void .ctor(string value); // 0x10113500 + public string GetXsdType(); // 0x101935A0 + public static SoapIdrefs Parse(string value); // 0x101935D0 + public override string ToString(); // 0x100BF0C0 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapInteger : ISoapXsd // TypeDefIndex: 1060 +{ + // Fields + private Decimal _value; // 0x08 + + // Properties + public Decimal Value { get; set; } // 0x10192480 0x101924D0 + public static string XsdType { get; } // 0x10193620 + + // Methods + public void .ctor(); // 0x100BF000 + public void .ctor(Decimal value); // 0x10192460 + public string GetXsdType(); // 0x10193620 + public static SoapInteger Parse(string value); // 0x10193650 + public override string ToString(); // 0x101936D0 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapLanguage : ISoapXsd // TypeDefIndex: 1061 +{ + // Fields + private string _value; // 0x08 + + // Properties + public string Value { get; set; } // 0x100BF0C0 0x100EB270 + public static string XsdType { get; } // 0x101936F0 + + // Methods + public void .ctor(); // 0x100BF000 + public void .ctor(string value); // 0x10113500 + public string GetXsdType(); // 0x101936F0 + public static SoapLanguage Parse(string value); // 0x10193720 + public override string ToString(); // 0x100BF0C0 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapMonth : ISoapXsd // TypeDefIndex: 1062 +{ + // Fields + private static readonly string[] _datetimeFormats; // 0x00 + private DateTime _value; // 0x08 + + // Properties + public DateTime Value { get; set; } // 0x10192480 0x101924D0 + public static string XsdType { get; } // 0x10193ED0 + + // Methods + public void .ctor(); // 0x100BF000 + public void .ctor(DateTime value); // 0x10192460 + private static void .cctor(); // 0x10193DF0 + public string GetXsdType(); // 0x10193C70 + public static SoapMonth Parse(string value); // 0x10193CD0 + public override string ToString(); // 0x10193D80 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapMonthDay : ISoapXsd // TypeDefIndex: 1063 +{ + // Fields + private static readonly string[] _datetimeFormats; // 0x00 + private DateTime _value; // 0x08 + + // Properties + public DateTime Value { get; set; } // 0x10192480 0x101924D0 + public static string XsdType { get; } // 0x10193C40 + + // Methods + public void .ctor(); // 0x100BF000 + public void .ctor(DateTime value); // 0x10192460 + private static void .cctor(); // 0x10193B60 + public string GetXsdType(); // 0x101939E0 + public static SoapMonthDay Parse(string value); // 0x10193A40 + public override string ToString(); // 0x10193AF0 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapName : ISoapXsd // TypeDefIndex: 1064 +{ + // Fields + private string _value; // 0x08 + + // Properties + public string Value { get; set; } // 0x100BF0C0 0x100EB270 + public static string XsdType { get; } // 0x10193F00 + + // Methods + public void .ctor(); // 0x100BF000 + public void .ctor(string value); // 0x10113500 + public string GetXsdType(); // 0x10193F00 + public static SoapName Parse(string value); // 0x10193F30 + public override string ToString(); // 0x100BF0C0 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapNcName : ISoapXsd // TypeDefIndex: 1065 +{ + // Fields + private string _value; // 0x08 + + // Properties + public string Value { get; set; } // 0x100BF0C0 0x100EB270 + public static string XsdType { get; } // 0x10193F80 + + // Methods + public void .ctor(); // 0x100BF000 + public void .ctor(string value); // 0x10113500 + public string GetXsdType(); // 0x10193F80 + public static SoapNcName Parse(string value); // 0x10193FB0 + public override string ToString(); // 0x100BF0C0 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapNegativeInteger : ISoapXsd // TypeDefIndex: 1066 +{ + // Fields + private Decimal _value; // 0x08 + + // Properties + public Decimal Value { get; set; } // 0x10192480 0x101924D0 + public static string XsdType { get; } // 0x10194000 + + // Methods + public void .ctor(); // 0x100BF000 + public void .ctor(Decimal value); // 0x10194190 + public string GetXsdType(); // 0x10194000 + public static SoapNegativeInteger Parse(string value); // 0x10194030 + public override string ToString(); // 0x101936D0 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapNmtoken : ISoapXsd // TypeDefIndex: 1067 +{ + // Fields + private string _value; // 0x08 + + // Properties + public string Value { get; set; } // 0x100BF0C0 0x100EB270 + public static string XsdType { get; } // 0x10194290 + + // Methods + public void .ctor(); // 0x100BF000 + public void .ctor(string value); // 0x10113500 + public string GetXsdType(); // 0x10194290 + public static SoapNmtoken Parse(string value); // 0x101942C0 + public override string ToString(); // 0x100BF0C0 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapNmtokens : ISoapXsd // TypeDefIndex: 1068 +{ + // Fields + private string _value; // 0x08 + + // Properties + public string Value { get; set; } // 0x100BF0C0 0x100EB270 + public static string XsdType { get; } // 0x10194310 + + // Methods + public void .ctor(); // 0x100BF000 + public void .ctor(string value); // 0x10113500 + public string GetXsdType(); // 0x10194310 + public static SoapNmtokens Parse(string value); // 0x10194340 + public override string ToString(); // 0x100BF0C0 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapNonNegativeInteger : ISoapXsd // TypeDefIndex: 1069 +{ + // Fields + private Decimal _value; // 0x08 + + // Properties + public Decimal Value { get; set; } // 0x10192480 0x101924D0 + public static string XsdType { get; } // 0x10194390 + + // Methods + public void .ctor(); // 0x100BF000 + public void .ctor(Decimal value); // 0x10194520 + public string GetXsdType(); // 0x10194390 + public static SoapNonNegativeInteger Parse(string value); // 0x101943C0 + public override string ToString(); // 0x101936D0 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapNonPositiveInteger : ISoapXsd // TypeDefIndex: 1070 +{ + // Fields + private Decimal _value; // 0x08 + + // Properties + public Decimal Value { get; set; } // 0x10192480 0x101924D0 + public static string XsdType { get; } // 0x10194620 + + // Methods + public void .ctor(); // 0x100BF000 + public void .ctor(Decimal value); // 0x101947B0 + public string GetXsdType(); // 0x10194620 + public static SoapNonPositiveInteger Parse(string value); // 0x10194650 + public override string ToString(); // 0x101936D0 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapNormalizedString : ISoapXsd // TypeDefIndex: 1071 +{ + // Fields + private string _value; // 0x08 + + // Properties + public string Value { get; set; } // 0x100BF0C0 0x100EB270 + public static string XsdType { get; } // 0x101948B0 + + // Methods + public void .ctor(); // 0x100BF000 + public void .ctor(string value); // 0x10113500 + public string GetXsdType(); // 0x101948B0 + public static SoapNormalizedString Parse(string value); // 0x101948E0 + public override string ToString(); // 0x100BF0C0 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapNotation : ISoapXsd // TypeDefIndex: 1072 +{ + // Fields + private string _value; // 0x08 + + // Properties + public string Value { get; set; } // 0x100BF0C0 0x100EB270 + public static string XsdType { get; } // 0x10194930 + + // Methods + public void .ctor(); // 0x100BF000 + public void .ctor(string value); // 0x10113500 + public string GetXsdType(); // 0x10194930 + public static SoapNotation Parse(string value); // 0x10194960 + public override string ToString(); // 0x100BF0C0 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapPositiveInteger : ISoapXsd // TypeDefIndex: 1073 +{ + // Fields + private Decimal _value; // 0x08 + + // Properties + public Decimal Value { get; set; } // 0x10192480 0x101924D0 + public static string XsdType { get; } // 0x101949B0 + + // Methods + public void .ctor(); // 0x100BF000 + public void .ctor(Decimal value); // 0x10194B40 + public string GetXsdType(); // 0x101949B0 + public static SoapPositiveInteger Parse(string value); // 0x101949E0 + public override string ToString(); // 0x101936D0 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapQName : ISoapXsd // TypeDefIndex: 1074 +{ + // Fields + private string _name; // 0x08 + private string _key; // 0x0C + private string _namespace; // 0x10 + + // Properties + public string Key { get; set; } // 0x100C5B30 0x100C5B50 + public string Name { get; set; } // 0x100BF0C0 0x100EB270 + public string Namespace { get; set; } // 0x100BFC20 0x100C5B40 + public static string XsdType { get; } // 0x10194C40 + + // Methods + public void .ctor(); // 0x100BF000 + public void .ctor(string value); // 0x10113500 + public void .ctor(string key, string name); // 0x10194DC0 + public void .ctor(string key, string name, string namespaceValue); // 0x10194DF0 + public string GetXsdType(); // 0x10194C40 + public static SoapQName Parse(string value); // 0x10194C70 + public override string ToString(); // 0x10194D10 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapTime : ISoapXsd // TypeDefIndex: 1075 +{ + // Fields + private static readonly string[] _datetimeFormats; // 0x00 + private DateTime _value; // 0x08 + + // Properties + public DateTime Value { get; set; } // 0x10192480 0x101924D0 + public static string XsdType { get; } // 0x10197D30 + + // Methods + public void .ctor(); // 0x100BF000 + public void .ctor(DateTime value); // 0x10192460 + private static void .cctor(); // 0x10197540 + public string GetXsdType(); // 0x101973C0 + public static SoapTime Parse(string value); // 0x10197420 + public override string ToString(); // 0x101974D0 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapToken : ISoapXsd // TypeDefIndex: 1076 +{ + // Fields + private string _value; // 0x08 + + // Properties + public string Value { get; set; } // 0x100BF0C0 0x100EB270 + public static string XsdType { get; } // 0x10197D60 + + // Methods + public void .ctor(); // 0x100BF000 + public void .ctor(string value); // 0x10113500 + public string GetXsdType(); // 0x10197D60 + public static SoapToken Parse(string value); // 0x10197D90 + public override string ToString(); // 0x100BF0C0 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapYear : ISoapXsd // TypeDefIndex: 1077 +{ + // Fields + private static readonly string[] _datetimeFormats; // 0x00 + private int _sign; // 0x08 + private DateTime _value; // 0x10 + + // Properties + public int Sign { get; set; } // 0x100BF0C0 0x100EB270 + public DateTime Value { get; set; } // 0x10168A30 0x101921F0 + public static string XsdType { get; } // 0x101988F0 + + // Methods + public void .ctor(); // 0x100BF000 + public void .ctor(DateTime value); // 0x10192170 + public void .ctor(DateTime value, int sign); // 0x10192190 + private static void .cctor(); // 0x101986B0 + public string GetXsdType(); // 0x101984D0 + public static SoapYear Parse(string value); // 0x10198530 + public override string ToString(); // 0x10198610 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapYearMonth : ISoapXsd // TypeDefIndex: 1078 +{ + // Fields + private static readonly string[] _datetimeFormats; // 0x00 + private int _sign; // 0x08 + private DateTime _value; // 0x10 + + // Properties + public int Sign { get; set; } // 0x100BF0C0 0x100EB270 + public DateTime Value { get; set; } // 0x10168A30 0x101921F0 + public static string XsdType { get; } // 0x101984A0 + + // Methods + public void .ctor(); // 0x100BF000 + public void .ctor(DateTime value); // 0x10192170 + public void .ctor(DateTime value, int sign); // 0x10192190 + private static void .cctor(); // 0x10198260 + public string GetXsdType(); // 0x10198080 + public static SoapYearMonth Parse(string value); // 0x101980E0 + public override string ToString(); // 0x101981C0 +} + +// Namespace: System.Runtime.Remoting.Metadata +public class SoapAttribute : Attribute // TypeDefIndex: 1079 +{ + // Fields + private bool _nested; // 0x08 + private bool _useAttribute; // 0x09 + protected string ProtXmlNamespace; // 0x0C + protected object ReflectInfo; // 0x10 + + // Properties + public virtual bool Embedded { get; set; } // 0x100EA020 0x10155000 + public virtual bool UseAttribute { get; set; } // 0x10117290 0x10155020 + public virtual string XmlNamespace { get; set; } // 0x100C5B30 0x100C5B50 + + // Methods + public void .ctor(); // 0x100C5970 + internal virtual void SetReflectionObject(object reflectionObject); // 0x100C5B40 +} + +// Namespace: System.Runtime.Remoting.Metadata +public sealed class SoapFieldAttribute : SoapAttribute // TypeDefIndex: 1080 +{ + // Fields + private int _order; // 0x14 + private string _elementName; // 0x18 + private bool _isElement; // 0x1C + + // Properties + public int Order { get; set; } // 0x100EF0C0 0x10127B00 + public string XmlElementName { get; set; } // 0x100EE580 0x10192DB0 + + // Methods + public void .ctor(); // 0x100C5970 + public bool IsInteropXmlElement(); // 0x10172890 + internal override void SetReflectionObject(object reflectionObject); // 0x10192D10 +} + +// Namespace: System.Runtime.Remoting.Metadata +public sealed class SoapMethodAttribute : SoapAttribute // TypeDefIndex: 1081 +{ + // Fields + private string _responseElement; // 0x14 + private string _responseNamespace; // 0x18 + private string _returnElement; // 0x1C + private string _soapAction; // 0x20 + private bool _useAttribute; // 0x24 + private string _namespace; // 0x28 + + // Properties + public string ResponseXmlElementName { get; set; } // 0x100EF0C0 0x10127B00 + public string ResponseXmlNamespace { get; set; } // 0x100EE580 0x10113F40 + public string ReturnXmlElementName { get; set; } // 0x100F85F0 0x10113F50 + public string SoapAction { get; set; } // 0x100EACD0 0x100EB230 + public override bool UseAttribute { get; set; } // 0x101939C0 0x101939D0 + public override string XmlNamespace { get; set; } // 0x100EB040 0x100EB250 + + // Methods + public void .ctor(); // 0x100C5970 + internal override void SetReflectionObject(object reflectionObject); // 0x10193770 +} + +// Namespace: System.Runtime.Remoting.Metadata +[Serializable] +public enum SoapOption // TypeDefIndex: 1082 +{ + None = 0, + AlwaysIncludeTypes = 1, + XsdString = 2, + EmbedAll = 4, + Option1 = 8, + Option2 = 16 +} + +// Namespace: System.Runtime.Remoting.Metadata +public sealed class SoapParameterAttribute : SoapAttribute // TypeDefIndex: 1083 +{ + // Methods + public void .ctor(); // 0x100C5970 +} + +// Namespace: System.Runtime.Remoting.Metadata +public sealed class SoapTypeAttribute : SoapAttribute // TypeDefIndex: 1084 +{ + // Fields + private SoapOption _soapOption; // 0x14 + private bool _useAttribute; // 0x18 + private string _xmlElementName; // 0x1C + private XmlFieldOrderOption _xmlFieldOrder; // 0x20 + private string _xmlNamespace; // 0x24 + private string _xmlTypeName; // 0x28 + private string _xmlTypeNamespace; // 0x2C + private bool _isType; // 0x30 + private bool _isElement; // 0x31 + + // Properties + public SoapOption SoapOptions { get; set; } // 0x100EF0C0 0x10127B00 + public override bool UseAttribute { get; set; } // 0x1010C980 0x10197FF0 + public string XmlElementName { get; set; } // 0x100F85F0 0x10198000 + public XmlFieldOrderOption XmlFieldOrder { get; set; } // 0x100EACD0 0x100EB230 + public override string XmlNamespace { get; set; } // 0x100EAD50 0x10198020 + public string XmlTypeName { get; set; } // 0x100EB040 0x10198040 + public string XmlTypeNamespace { get; set; } // 0x100EB200 0x10198060 + internal bool IsInteropXmlElement { get; } // 0x10197FE0 + internal bool IsInteropXmlType { get; } // 0x100EF0D0 + + // Methods + public void .ctor(); // 0x100C5970 + internal override void SetReflectionObject(object reflectionObject); // 0x10197DE0 +} + +// Namespace: System.Runtime.Remoting.Metadata +[Serializable] +public enum XmlFieldOrderOption // TypeDefIndex: 1085 +{ + All = 0, + Sequence = 1, + Choice = 2 +} + +// Namespace: System.Runtime.Remoting.Proxies +public class ProxyAttribute : Attribute, IContextAttribute // TypeDefIndex: 1086 +{ + // Methods + public void .ctor(); // 0x100C5970 + public virtual MarshalByRefObject CreateInstance(Type serverType); // 0x10186830 + public virtual RealProxy CreateProxy(ObjRef objRef, Type serverType, object serverObject, Context serverContext); // 0x10186930 + public void GetPropertiesForNewContext(IConstructionCallMessage msg); // 0x100C5530 + public bool IsContextOK(Context ctx, IConstructionCallMessage msg); // 0x100E5880 +} + +// Namespace: System.Runtime.Remoting.Proxies +internal class TransparentProxy // TypeDefIndex: 1087 +{ + // Fields + public RealProxy _rp; // 0x08 + private IntPtr _class; // 0x0C + private bool _custom_type_info; // 0x10 + + // Methods + public void .ctor(); // 0x100BF000 +} + +// Namespace: System.Runtime.Remoting.Proxies +public abstract class RealProxy // TypeDefIndex: 1088 +{ + // Fields + private Type class_to_proxy; // 0x08 + internal Context _targetContext; // 0x0C + private MarshalByRefObject _server; // 0x10 + private int _targetDomainId; // 0x14 + internal string _targetUri; // 0x18 + internal Identity _objectIdentity; // 0x1C + private object _objTP; // 0x20 + private object _stubData; // 0x24 + + // Properties + internal Identity ObjectIdentity { get; set; } // 0x100F85F0 0x10113F50 + + // Methods + protected void .ctor(); // 0x10187B70 + protected void .ctor(Type classToProxy); // 0x10187CB0 + internal void .ctor(Type classToProxy, ClientIdentity identity); // 0x10187C70 + protected void .ctor(Type classToProxy, IntPtr stub, object stubData); // 0x10187B90 + private static Type InternalGetProxyType(object transparentProxy); // 0x10186F70 + public Type GetProxiedType(); // 0x10186D50 + public virtual ObjRef CreateObjRef(Type requestedType); // 0x10186990 + public virtual void GetObjectData(SerializationInfo info, StreamingContext context); // 0x10186BC0 + public virtual IntPtr GetCOMIUnknown(bool fIsMarshalled); // 0x10186B70 + public virtual void SetCOMIUnknown(IntPtr i); // 0x10187AB0 + public virtual IntPtr SupportsInterface(Guid iid); // 0x10187B20 + public static object GetStubData(RealProxy rp); // 0x10186DE0 + public static void SetStubData(RealProxy rp, object stubData); // 0x10187B00 + public abstract IMessage Invoke(IMessage msg); + internal static object PrivateInvoke(RealProxy rp, IMessage msg, out Exception exc, out object[] out_args); // 0x10186FA0 + internal virtual object InternalGetTransparentProxy(string className); // 0x10186F80 + public virtual object GetTransparentProxy(); // 0x10186E00 + public IConstructionReturnMessage InitializeServerObject(IConstructionCallMessage ctorMsg); // 0x10186F20 + protected void AttachServer(MarshalByRefObject s); // 0x100C5B40 + protected MarshalByRefObject DetachServer(); // 0x10186A50 + protected MarshalByRefObject GetUnwrappedServer(); // 0x100BFC20 + internal void SetTargetDomain(int domainId); // 0x10127B00 + internal object GetAppDomainTarget(); // 0x10186A70 + private static object[] ProcessResponse(IMethodReturnMessage mrm, MonoMethodMessage call); // 0x10187630 +} + +// Namespace: System.Runtime.Remoting.Proxies +internal class RemotingProxy : RealProxy, IRemotingTypeInfo // TypeDefIndex: 1089 +{ + // Fields + private static MethodInfo _cache_GetTypeMethod; // 0x00 + private static MethodInfo _cache_GetHashCodeMethod; // 0x04 + private IMessageSink _sink; // 0x28 + private bool _hasEnvoySink; // 0x2C + private ConstructionCall _ctorCall; // 0x30 + + // Properties + public string TypeName { get; set; } // 0x1018B960 0x1018BA60 + + // Methods + internal void .ctor(Type type, ClientIdentity identity); // 0x1018B890 + internal void .ctor(Type type, string activationUrl, object[] activationAttributes); // 0x1018B900 + private static void .cctor(); // 0x1018B7E0 + public override IMessage Invoke(IMessage request); // 0x1018B420 + internal void AttachIdentity(Identity identity); // 0x1018AE20 + internal IMessage ActivateRemoteObject(IMethodMessage request); // 0x1018AD80 + public bool CanCastTo(Type fromType, object o); // 0x1018B110 + protected override void Finalize(); // 0x1018B2F0 +} + +// Namespace: System.Runtime.Remoting.Services +public sealed class EnterpriseServicesHelper // TypeDefIndex: 1090 +{ + // Methods + public void .ctor(); // 0x100BF000 + public static IConstructionReturnMessage CreateConstructionReturnMessage(IConstructionCallMessage ctorMsg, MarshalByRefObject retObj); // 0x10183700 + public static void SwitchWrappers(RealProxy oldcp, RealProxy newcp); // 0x10183750 + public static object WrapIUnknownWithComObject(IntPtr punk); // 0x101837A0 +} + +// Namespace: System.Runtime.Remoting.Services +public interface ITrackingHandler // TypeDefIndex: 1091 +{ + // Methods + void DisconnectedObject(object obj); + void MarshaledObject(object obj, ObjRef or); + void UnmarshaledObject(object obj, ObjRef or); +} + +// Namespace: System.Runtime.Remoting.Services +public class TrackingServices // TypeDefIndex: 1092 +{ + // Fields + private static ArrayList _handlers; // 0x00 + + // Properties + public static ITrackingHandler[] RegisteredHandlers { get; } // 0x10199D30 + + // Methods + public void .ctor(); // 0x100BF000 + private static void .cctor(); // 0x10199CE0 + public static void RegisterTrackingHandler(ITrackingHandler handler); // 0x101998C0 + public static void UnregisterTrackingHandler(ITrackingHandler handler); // 0x10199AD0 + internal static void NotifyMarshaledObject(object obj, ObjRef or); // 0x101992E0 + internal static void NotifyUnmarshaledObject(object obj, ObjRef or); // 0x101995D0 + internal static void NotifyDisconnectedObject(object obj); // 0x10199000 +} + +// Namespace: System.Runtime.Remoting +public class ActivatedClientTypeEntry : TypeEntry // TypeDefIndex: 1093 +{ + // Fields + private string applicationUrl; // 0x10 + private Type obj_type; // 0x14 + + // Properties + public string ApplicationUrl { get; } // 0x100BFC20 + public IContextAttribute[] ContextAttributes { get; set; } // 0x100C5600 0x100C5530 + public Type ObjectType { get; } // 0x100EF0C0 + + // Methods + public void .ctor(Type type, string appUrl); // 0x1019AB20 + public void .ctor(string typeName, string assemblyName, string appUrl); // 0x1019ABA0 + public override string ToString(); // 0x1019AAC0 +} + +// Namespace: System.Runtime.Remoting +public class ActivatedServiceTypeEntry : TypeEntry // TypeDefIndex: 1094 +{ + // Fields + private Type obj_type; // 0x10 + + // Properties + public IContextAttribute[] ContextAttributes { get; set; } // 0x100C5600 0x100C5530 + public Type ObjectType { get; } // 0x100BFC20 + + // Methods + public void .ctor(Type type); // 0x1019ADB0 + public void .ctor(string typeName, string assemblyName); // 0x1019ACE0 + public override string ToString(); // 0x1019AC80 +} + +// Namespace: System.Runtime.Remoting +public enum CustomErrorsModes // TypeDefIndex: 1095 +{ + On = 0, + Off = 1, + RemoteOnly = 2 +} + +// Namespace: System.Runtime.Remoting +[Serializable] +internal class EnvoyInfo : IEnvoyInfo // TypeDefIndex: 1096 +{ + // Fields + private IMessageSink envoySinks; // 0x08 + + // Properties + public IMessageSink EnvoySinks { get; set; } // 0x100BF0C0 0x100EB270 + + // Methods + public void .ctor(IMessageSink sinks); // 0x10113500 +} + +// Namespace: System.Runtime.Remoting +public interface IChannelInfo // TypeDefIndex: 1097 +{ + // Properties + object[] ChannelData { get; set; } + +} + +// Namespace: System.Runtime.Remoting +public interface IEnvoyInfo // TypeDefIndex: 1098 +{ + // Properties + IMessageSink EnvoySinks { get; set; } + +} + +// Namespace: System.Runtime.Remoting +public interface IObjectHandle // TypeDefIndex: 1099 +{ + // Methods + object Unwrap(); +} + +// Namespace: System.Runtime.Remoting +public interface IRemotingTypeInfo // TypeDefIndex: 1100 +{ + // Properties + string TypeName { get; set; } + + // Methods + bool CanCastTo(Type fromType, object o); +} + +// Namespace: System.Runtime.Remoting +internal abstract class Identity // TypeDefIndex: 1101 +{ + // Fields + protected string _objectUri; // 0x08 + protected IMessageSink _channelSink; // 0x0C + protected IMessageSink _envoySink; // 0x10 + private DynamicPropertyCollection _clientDynamicProperties; // 0x14 + private DynamicPropertyCollection _serverDynamicProperties; // 0x18 + protected ObjRef _objRef; // 0x1C + private bool _disposed; // 0x20 + + // Properties + public bool IsFromThisAppDomain { get; } // 0x101D0E10 + public IMessageSink ChannelSink { get; set; } // 0x100C5B30 0x100C5B50 + public IMessageSink EnvoySink { get; } // 0x100BFC20 + public string ObjectUri { get; set; } // 0x100BF0C0 0x100EB270 + public bool IsConnected { get; } // 0x101253D0 + public bool Disposed { get; set; } // 0x101B94D0 0x101D3670 + public DynamicPropertyCollection ClientDynamicProperties { get; } // 0x101D3530 + public DynamicPropertyCollection ServerDynamicProperties { get; } // 0x101D3620 + public bool HasClientDynamicSinks { get; } // 0x101D3580 + public bool HasServerDynamicSinks { get; } // 0x101D35D0 + + // Methods + public void .ctor(string objectUri); // 0x10113500 + public abstract ObjRef CreateObjRef(Type requestedType); + public void NotifyClientDynamicSinks(bool start, IMessage req_msg, bool client_site, bool async); // 0x101D3490 + public void NotifyServerDynamicSinks(bool start, IMessage req_msg, bool client_site, bool async); // 0x101D34E0 +} + +// Namespace: System.Runtime.Remoting +internal class ClientIdentity : Identity // TypeDefIndex: 1102 +{ + // Fields + private WeakReference _proxyReference; // 0x24 + + // Properties + public MarshalByRefObject ClientProxy { get; set; } // 0x101A18E0 0x101A19A0 + public string TargetUri { get; } // 0x101A1970 + + // Methods + public void .ctor(string objectUri, ObjRef objRef); // 0x101A1840 + public override ObjRef CreateObjRef(Type requestedType); // 0x100F85F0 +} + +// Namespace: System.Runtime.Remoting +public class InternalRemotingServices // TypeDefIndex: 1103 +{ + // Fields + private static Hashtable _soapAttributes; // 0x00 + + // Methods + public void .ctor(); // 0x100BF000 + private static void .cctor(); // 0x101D3C20 + public static void DebugOutChnl(string s); // 0x101D3680 + public static SoapAttribute GetCachedSoapAttribute(object reflectionObject); // 0x101D36D0 + public static void RemotingAssert(bool condition, string message); // 0x101D3AC0 + public static void RemotingTrace(object[] messages); // 0x101D3B10 + public static void SetServerIdentity(MethodCall m, object srvID); // 0x101D3B60 +} + +// Namespace: System.Runtime.Remoting +[Serializable] +public class ObjRef : ISerializable, IObjectReference // TypeDefIndex: 1104 +{ + // Fields + private IChannelInfo channel_info; // 0x08 + private string uri; // 0x0C + private IRemotingTypeInfo typeInfo; // 0x10 + private IEnvoyInfo envoyInfo; // 0x14 + private int flags; // 0x18 + private Type _serverType; // 0x1C + private static int MarshalledObjectRef; // 0x00 + private static int WellKnowObjectRef; // 0x04 + private static Dictionary`2 <>f__switch$map26; // 0x08 + + // Properties + internal bool IsReferenceToWellKnow { get; } // 0x101861B0 + public virtual IChannelInfo ChannelInfo { get; set; } // 0x100BF0C0 0x100EB270 + public virtual IEnvoyInfo EnvoyInfo { get; set; } // 0x100EF0C0 0x10127B00 + public virtual IRemotingTypeInfo TypeInfo { get; set; } // 0x100BFC20 0x100C5B40 + public virtual string URI { get; set; } // 0x100C5B30 0x100C5B50 + internal Type ServerType { get; } // 0x10186210 + + // Methods + public void .ctor(); // 0x10185CE0 + internal void .ctor(string typeName, string uri, IChannelInfo cinfo); // 0x10185FB0 + internal void .ctor(ObjRef o, bool unmarshalAsProxy); // 0x10186060 + public void .ctor(MarshalByRefObject o, Type requestedType); // 0x10185D30 + internal void .ctor(Type type, string url, object remoteChannelData); // 0x10186100 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x10185930 + private static void .cctor(); // 0x101858F0 + internal bool IsPossibleToCAD(); // 0x100EFBF0 + public virtual void GetObjectData(SerializationInfo info, StreamingContext context); // 0x10185510 + public virtual object GetRealObject(StreamingContext context); // 0x10185610 + public bool IsFromThisAppDomain(); // 0x101856E0 + public bool IsFromThisProcess(); // 0x10185750 + internal void UpdateChannelInfo(); // 0x101858A0 +} + +// Namespace: System.Runtime.Remoting +public class ObjectHandle : MarshalByRefObject, IObjectHandle // TypeDefIndex: 1105 +{ + // Fields + private object _wrapped; // 0x0C + + // Methods + public void .ctor(object o); // 0x101862C0 + public override object InitializeLifetimeService(); // 0x101862B0 + public object Unwrap(); // 0x100C5B30 +} + +// Namespace: System.Runtime.Remoting +public static class RemotingConfiguration // TypeDefIndex: 1106 +{ + // Fields + private static string applicationID; // 0x00 + private static string applicationName; // 0x04 + private static string processGuid; // 0x08 + private static bool defaultConfigRead; // 0x0C + private static bool defaultDelayedConfigRead; // 0x0D + private static string _errorMode; // 0x10 + private static Hashtable wellKnownClientEntries; // 0x14 + private static Hashtable activatedClientEntries; // 0x18 + private static Hashtable wellKnownServiceEntries; // 0x1C + private static Hashtable activatedServiceEntries; // 0x20 + private static Hashtable channelTemplates; // 0x24 + private static Hashtable clientProviderTemplates; // 0x28 + private static Hashtable serverProviderTemplates; // 0x2C + + // Properties + public static string ApplicationId { get; } // 0x1018AAD0 + public static string ApplicationName { get; set; } // 0x1018AB70 0x1018ACD0 + public static CustomErrorsModes CustomErrorsMode { get; set; } // 0x1018ABC0 0x1018AD30 + public static string ProcessId { get; } // 0x1018AC10 + + // Methods + private static void .cctor(); // 0x1018A970 + public static void Configure(string filename, bool ensureSecurity); // 0x10187CF0 + public static void Configure(string filename); // 0x10187EA0 + private static void ReadConfigFile(string filename); // 0x10188F70 + internal static void LoadDefaultDelayedChannels(); // 0x10188CE0 + public static ActivatedClientTypeEntry[] GetRegisteredActivatedClientTypes(); // 0x10187FF0 + public static ActivatedServiceTypeEntry[] GetRegisteredActivatedServiceTypes(); // 0x101881B0 + public static WellKnownClientTypeEntry[] GetRegisteredWellKnownClientTypes(); // 0x10188370 + public static WellKnownServiceTypeEntry[] GetRegisteredWellKnownServiceTypes(); // 0x10188530 + public static bool IsActivationAllowed(Type svrType); // 0x101886F0 + public static ActivatedClientTypeEntry IsRemotelyActivatedClientType(Type svrType); // 0x101888F0 + public static ActivatedClientTypeEntry IsRemotelyActivatedClientType(string typeName, string assemblyName); // 0x10188860 + public static WellKnownClientTypeEntry IsWellKnownClientType(Type svrType); // 0x10188AA0 + public static WellKnownClientTypeEntry IsWellKnownClientType(string typeName, string assemblyName); // 0x10188C50 + public static void RegisterActivatedClientType(ActivatedClientTypeEntry entry); // 0x10189240 + public static void RegisterActivatedClientType(Type type, string appUrl); // 0x10189180 + public static void RegisterActivatedServiceType(ActivatedServiceTypeEntry entry); // 0x10189550 + public static void RegisterActivatedServiceType(Type type); // 0x101894E0 + public static void RegisterWellKnownClientType(Type type, string objectUrl); // 0x1018A460 + public static void RegisterWellKnownClientType(WellKnownClientTypeEntry entry); // 0x1018A1C0 + public static void RegisterWellKnownServiceType(Type type, string objectUri, WellKnownObjectMode mode); // 0x1018A580 + public static void RegisterWellKnownServiceType(WellKnownServiceTypeEntry entry); // 0x1018A650 + internal static void RegisterChannelTemplate(ChannelData channel); // 0x101896B0 + internal static void RegisterClientProviderTemplate(ProviderData prov); // 0x10189DC0 + internal static void RegisterServerProviderTemplate(ProviderData prov); // 0x10189E40 + internal static void RegisterChannels(ArrayList channels, bool onlyDelayed); // 0x10189730 + internal static void RegisterTypes(ArrayList types); // 0x10189EC0 + public static bool CustomErrorsEnabled(bool isLocalRequest); // 0x10187EF0 + internal static void SetCustomErrorsMode(string mode); // 0x1018A7F0 +} + +// Namespace: System.Runtime.Remoting +internal class ConfigHandler : IContentHandler // TypeDefIndex: 1107 +{ + // Fields + private ArrayList typeEntries; // 0x08 + private ArrayList channelInstances; // 0x0C + private ChannelData currentChannel; // 0x10 + private Stack currentProviderData; // 0x14 + private string currentClientUrl; // 0x18 + private string appName; // 0x1C + private string currentXmlPath; // 0x20 + private bool onlyDelayedChannels; // 0x24 + private static Dictionary`2 <>f__switch$map27; // 0x00 + private static Dictionary`2 <>f__switch$map28; // 0x04 + + // Methods + public void .ctor(bool onlyDelayedChannels); // 0x101CD120 + private void ValidatePath(string element, string[] paths); // 0x101CD040 + private bool CheckPath(string path); // 0x101CA690 + public void OnStartParsing(SmallXmlParser parser); // 0x100C5530 + public void OnProcessingInstruction(string name, string text); // 0x100C5530 + public void OnIgnorableWhitespace(string s); // 0x100C5530 + public void OnStartElement(string name, IAttrList attrs); // 0x101CAAC0 + public void ParseElement(string name, IAttrList attrs); // 0x101CAC50 + public void OnEndElement(string name); // 0x101CA940 + private void ReadCustomProviderData(string name, IAttrList attrs); // 0x101CC140 + private void ReadLifetine(IAttrList attrs); // 0x101CC630 + private TimeSpan ParseTime(string s); // 0x101CB870 + private void ReadChannel(IAttrList attrs, bool isTemplate); // 0x101CBCB0 + private ProviderData ReadProvider(string name, IAttrList attrs, bool isTemplate); // 0x101CCB40 + private void ReadClientActivated(IAttrList attrs); // 0x101CBF80 + private void ReadServiceActivated(IAttrList attrs); // 0x101CCE20 + private void ReadClientWellKnown(IAttrList attrs); // 0x101CC090 + private void ReadServiceWellKnown(IAttrList attrs); // 0x101CCEB0 + private void ReadInteropXml(IAttrList attrs, bool isElement); // 0x101CC470 + private void ReadPreload(IAttrList attrs); // 0x101CC9E0 + private string GetNotNull(IAttrList attrs, string name); // 0x101CA860 + private string ExtractAssembly(string type); // 0x101CA790 + public void OnChars(string ch); // 0x100C5530 + public void OnEndParsing(SmallXmlParser parser); // 0x101CA9C0 +} + +// Namespace: System.Runtime.Remoting +internal class ChannelData // TypeDefIndex: 1108 +{ + // Fields + internal string Ref; // 0x08 + internal string Type; // 0x0C + internal string Id; // 0x10 + internal string DelayLoadAsClientChannel; // 0x14 + private ArrayList _serverProviders; // 0x18 + private ArrayList _clientProviders; // 0x1C + private Hashtable _customProperties; // 0x20 + + // Properties + internal ArrayList ServerProviders { get; } // 0x1019DD10 + public ArrayList ClientProviders { get; } // 0x1019DC70 + public Hashtable CustomProperties { get; } // 0x1019DCC0 + + // Methods + public void .ctor(); // 0x1019DBF0 + public void CopyFrom(ChannelData other); // 0x1019D4F0 +} + +// Namespace: System.Runtime.Remoting +internal class ProviderData // TypeDefIndex: 1109 +{ + // Fields + internal string Ref; // 0x08 + internal string Type; // 0x0C + internal string Id; // 0x10 + internal Hashtable CustomProperties; // 0x14 + internal IList CustomData; // 0x18 + + // Methods + public void .ctor(); // 0x101867D0 + public void CopyFrom(ProviderData other); // 0x101862E0 +} + +// Namespace: System.Runtime.Remoting +internal class FormatterData : ProviderData // TypeDefIndex: 1110 +{ + // Methods + public void .ctor(); // 0x101D3080 +} + +// Namespace: System.Runtime.Remoting +[Serializable] +public class RemotingException : SystemException // TypeDefIndex: 1111 +{ + // Methods + public void .ctor(); // 0x10156930 + public void .ctor(string message); // 0x100E5680 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 + public void .ctor(string message, Exception InnerException); // 0x100E5670 +} + +// Namespace: System.Runtime.Remoting +public sealed class RemotingServices // TypeDefIndex: 1112 +{ + // Fields + private static Hashtable uri_hash; // 0x00 + private static BinaryFormatter _serializationFormatter; // 0x04 + private static BinaryFormatter _deserializationFormatter; // 0x08 + internal static string app_id; // 0x0C + private static int next_id; // 0x10 + private static readonly BindingFlags methodBindings; // 0x14 + private static readonly MethodInfo FieldSetterMethod; // 0x18 + private static readonly MethodInfo FieldGetterMethod; // 0x1C + + // Methods + private void .ctor(); // 0x100BF000 + private static void .cctor(); // 0x101904E0 + internal static object InternalExecute(MethodBase method, object obj, object[] parameters, out object[] out_args); // 0x1018EB70 + internal static MethodBase GetVirtualMethod(Type type, MethodBase method); // 0x1018E5C0 + public static bool IsTransparentProxy(object proxy); // 0x100E9F80 + internal static IMethodReturnMessage InternalExecuteMessage(MarshalByRefObject target, IMethodCallMessage reqMsg); // 0x1018E5E0 + public static IMethodReturnMessage ExecuteMessage(MarshalByRefObject target, IMethodCallMessage reqMsg); // 0x1018C870 + public static object Connect(Type classToProxy, string url); // 0x1018BAB0 + public static object Connect(Type classToProxy, string url, object data); // 0x1018BB90 + public static bool Disconnect(MarshalByRefObject obj); // 0x1018C490 + public static Type GetServerTypeForUri(string URI); // 0x1018E4E0 + public static string GetObjectUri(MarshalByRefObject obj); // 0x1018DC70 + public static object Unmarshal(ObjRef objectRef); // 0x101900A0 + public static object Unmarshal(ObjRef objectRef, bool fRefine); // 0x101900F0 + public static ObjRef Marshal(MarshalByRefObject Obj); // 0x1018F4A0 + public static ObjRef Marshal(MarshalByRefObject Obj, string URI); // 0x1018F500 + public static ObjRef Marshal(MarshalByRefObject Obj, string ObjURI, Type RequestedType); // 0x1018F0A0 + private static string NewUri(); // 0x1018F560 + public static RealProxy GetRealProxy(object proxy); // 0x1018E280 + public static MethodBase GetMethodBaseFromMethodMessage(IMethodMessage msg); // 0x1018D5C0 + internal static MethodBase GetMethodBaseFromName(Type type, string methodName, Type[] signature); // 0x1018D760 + private static MethodBase FindInterfaceMethod(Type type, string methodName, Type[] signature); // 0x1018C960 + public static void GetObjectData(object obj, SerializationInfo info, StreamingContext context); // 0x1018DA90 + public static ObjRef GetObjRefForProxy(MarshalByRefObject obj); // 0x1018DA20 + public static object GetLifetimeService(MarshalByRefObject obj); // 0x1018D2E0 + public static IMessageSink GetEnvoyChainForProxy(MarshalByRefObject obj); // 0x1018CE80 + public static void LogRemotingStage(int stage); // 0x1018F050 + public static string GetSessionIdForMethodMessage(IMethodMessage msg); // 0x1018E570 + public static bool IsMethodOverloaded(IMethodMessage msg); // 0x1018ED30 + public static bool IsObjectOutOfAppDomain(object tp); // 0x1018EE10 + public static bool IsObjectOutOfContext(object tp); // 0x1018EEF0 + public static bool IsOneWay(MethodBase method); // 0x1018EFD0 + internal static bool IsAsyncMessage(IMessage msg); // 0x1018EB90 + public static void SetObjectUriForMarshal(MarshalByRefObject obj, string uri); // 0x1018FF30 + internal static object CreateClientProxy(ActivatedClientTypeEntry entry, object[] activationAttributes); // 0x1018BFE0 + internal static object CreateClientProxy(Type objectType, string url, object[] activationAttributes); // 0x1018BE90 + internal static object CreateClientProxy(WellKnownClientTypeEntry entry); // 0x1018C120 + internal static object CreateClientProxyForContextBound(Type type, object[] activationAttributes); // 0x1018BD20 + internal static Identity GetIdentityForUri(string uri); // 0x1018CFB0 + private static string RemoveAppNameFromUri(string uri); // 0x1018FA40 + internal static Identity GetObjectIdentity(MarshalByRefObject obj); // 0x1018DBD0 + internal static ClientIdentity GetOrCreateClientIdentity(ObjRef objRef, Type proxyType, out object clientProxy); // 0x1018DD70 + private static IMessageSink GetClientChannelSinkChain(string url, object channelData, out string objectUri); // 0x1018CAB0 + internal static ClientActivatedIdentity CreateContextBoundObjectIdentity(Type objectType); // 0x1018C1F0 + internal static ClientActivatedIdentity CreateClientActivatedServerIdentity(MarshalByRefObject realObject, Type objectType, string objectUri); // 0x1018BC10 + internal static ServerIdentity CreateWellKnownServerIdentity(Type objectType, string objectUri, WellKnownObjectMode mode); // 0x1018C2B0 + private static void RegisterServerIdentity(ServerIdentity identity); // 0x1018F810 + internal static object GetProxyForRemoteObject(ObjRef objref, Type classToProxy); // 0x1018E190 + internal static object GetRemoteObject(ObjRef objRef, Type proxyType); // 0x1018E380 + internal static object GetServerObject(string uri); // 0x1018E3F0 + internal static byte[] SerializeCallData(object obj); // 0x1018FB40 + internal static object DeserializeCallData(byte[] array); // 0x1018C380 + internal static byte[] SerializeExceptionData(Exception ex); // 0x1018FC30 + internal static object GetDomainProxy(AppDomain domain); // 0x1018CBC0 + private static void RegisterInternalChannels(); // 0x1018F7C0 + internal static void DisposeIdentity(Identity ident); // 0x1018C680 + internal static Identity GetMessageTargetIdentity(IMessage msg); // 0x1018D300 + internal static void SetMessageTargetIdentity(IMessage msg, Identity ident); // 0x1018FEA0 + internal static bool UpdateOutArgObject(ParameterInfo pi, object local, object remote); // 0x101903A0 + private static string GetNormalizedUri(string uri); // 0x1018D9C0 +} + +// Namespace: +[Serializable] +private class CACD // TypeDefIndex: 1113 +{ + // Fields + public object d; // 0x08 + public object c; // 0x0C + + // Methods + public void .ctor(); // 0x100BF000 +} + +// Namespace: System.Runtime.Remoting +[Serializable] +public class RemotingTimeoutException : RemotingException // TypeDefIndex: 1114 +{ + // Methods + public void .ctor(); // 0x10156930 + public void .ctor(string message); // 0x100E5680 + public void .ctor(string message, Exception InnerException); // 0x100E5670 + internal void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 +} + +// Namespace: System.Runtime.Remoting +[Serializable] +public class ServerException : SystemException // TypeDefIndex: 1115 +{ + // Methods + public void .ctor(); // 0x10156930 + public void .ctor(string message); // 0x100E5680 + public void .ctor(string message, Exception InnerException); // 0x100E5670 + internal void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 +} + +// Namespace: System.Runtime.Remoting +internal abstract class ServerIdentity : Identity // TypeDefIndex: 1116 +{ + // Fields + protected Type _objectType; // 0x24 + protected MarshalByRefObject _serverObject; // 0x28 + protected IMessageSink _serverSink; // 0x2C + protected Context _context; // 0x30 + protected Lease _lease; // 0x34 + + // Properties + public Type ObjectType { get; } // 0x100EAD50 + public Lease Lease { get; } // 0x100E9ED0 + public Context Context { get; set; } // 0x100EA580 0x100C15B0 + + // Methods + public void .ctor(string objectUri, Context context, Type objectType); // 0x10190B90 + public void StartTrackingLifetime(ILease lease); // 0x10190A90 + public virtual void OnLifetimeExpired(); // 0x10190A80 + public override ObjRef CreateObjRef(Type requestedType); // 0x10190880 + public void AttachServerObject(MarshalByRefObject serverObject, Context context); // 0x10190790 + public abstract IMessage SyncObjectProcessMessage(IMessage msg); + public abstract IMessageCtrl AsyncObjectProcessMessage(IMessage msg, IMessageSink replySink); + protected void DisposeServerObject(); // 0x10190A10 +} + +// Namespace: System.Runtime.Remoting +internal class ClientActivatedIdentity : ServerIdentity // TypeDefIndex: 1117 +{ + // Fields + private MarshalByRefObject _targetThis; // 0x38 + + // Methods + public void .ctor(string objectUri, Type objectType); // 0x101A1550 + public MarshalByRefObject GetServerObject(); // 0x100EB040 + public MarshalByRefObject GetClientProxy(); // 0x100EB210 + public void SetClientProxy(MarshalByRefObject obj); // 0x100EB290 + public override void OnLifetimeExpired(); // 0x101A1470 + public override IMessage SyncObjectProcessMessage(IMessage msg); // 0x101A14D0 + public override IMessageCtrl AsyncObjectProcessMessage(IMessage msg, IMessageSink replySink); // 0x101A13B0 +} + +// Namespace: System.Runtime.Remoting +internal class SingletonIdentity : ServerIdentity // TypeDefIndex: 1118 +{ + // Methods + public void .ctor(string objectUri, Context context, Type objectType); // 0x10190B90 + public MarshalByRefObject GetServerObject(); // 0x10191090 + public override IMessage SyncObjectProcessMessage(IMessage msg); // 0x10191240 + public override IMessageCtrl AsyncObjectProcessMessage(IMessage msg, IMessageSink replySink); // 0x10191010 +} + +// Namespace: System.Runtime.Remoting +internal class SingleCallIdentity : ServerIdentity // TypeDefIndex: 1119 +{ + // Methods + public void .ctor(string objectUri, Context context, Type objectType); // 0x10190B90 + public override IMessage SyncObjectProcessMessage(IMessage msg); // 0x10190EF0 + public override IMessageCtrl AsyncObjectProcessMessage(IMessage msg, IMessageSink replySink); // 0x10190DD0 +} + +// Namespace: System.Runtime.Remoting +internal class DisposerReplySink : IMessageSink // TypeDefIndex: 1120 +{ + // Fields + private IMessageSink _next; // 0x08 + private IDisposable _disposable; // 0x0C + + // Properties + public IMessageSink NextSink { get; } // 0x100BF0C0 + + // Methods + public void .ctor(IMessageSink next, IDisposable disposable); // 0x100F97B0 + public IMessage SyncProcessMessage(IMessage msg); // 0x101D2510 + public IMessageCtrl AsyncProcessMessage(IMessage msg, IMessageSink replySink); // 0x101D24C0 +} + +// Namespace: System.Runtime.Remoting +public class SoapServices // TypeDefIndex: 1121 +{ + // Fields + private static Hashtable _xmlTypes; // 0x00 + private static Hashtable _xmlElements; // 0x04 + private static Hashtable _soapActions; // 0x08 + private static Hashtable _soapActionsMethods; // 0x0C + private static Hashtable _typeInfos; // 0x10 + + // Properties + public static string XmlNsForClrType { get; } // 0x10197390 + public static string XmlNsForClrTypeWithAssembly { get; } // 0x10197300 + public static string XmlNsForClrTypeWithNs { get; } // 0x10197360 + public static string XmlNsForClrTypeWithNsAndAssembly { get; } // 0x10197330 + + // Methods + private void .ctor(); // 0x100BF000 + private static void .cctor(); // 0x10197230 + public static string CodeXmlNamespaceForClrTypeNamespace(string typeNamespace, string assemblyName); // 0x10194E20 + public static bool DecodeXmlNamespaceForClrTypeNamespace(string inNamespace, out string typeNamespace, out string assemblyName); // 0x101950A0 + public static void GetInteropFieldTypeAndNameFromXmlAttribute(Type containingType, string xmlAttribute, string xmlNamespace, out Type type, out string name); // 0x10195690 + public static void GetInteropFieldTypeAndNameFromXmlElement(Type containingType, string xmlElement, string xmlNamespace, out Type type, out string name); // 0x10195780 + private static void GetInteropFieldInfo(Hashtable fields, string xmlName, string xmlNamespace, out Type type, out string name); // 0x10195590 + private static string GetNameKey(string name, string namspace); // 0x10195C70 + public static Type GetInteropTypeFromXmlElement(string xmlElement, string xmlNamespace); // 0x10195870 + public static Type GetInteropTypeFromXmlType(string xmlType, string xmlTypeNamespace); // 0x10195A70 + private static string GetAssemblyName(MethodBase mb); // 0x10195450 + public static string GetSoapActionFromMethodBase(MethodBase mb); // 0x10195CE0 + public static bool GetTypeAndMethodNameFromSoapAction(string soapAction, out string typeName, out string methodName); // 0x10195D30 + public static bool GetXmlElementForInteropType(Type type, out string xmlElement, out string xmlNamespace); // 0x101960E0 + public static string GetXmlNamespaceForMethodCall(MethodBase mb); // 0x10196180 + public static string GetXmlNamespaceForMethodResponse(MethodBase mb); // 0x10196220 + public static bool GetXmlTypeForInteropType(Type type, out string xmlType, out string xmlTypeNamespace); // 0x101962C0 + public static bool IsClrTypeNamespace(string namespaceString); // 0x101965C0 + public static bool IsSoapActionValidForMethodBase(string soapAction, MethodBase mb); // 0x10196640 + public static void PreLoad(Assembly assembly); // 0x10196C80 + public static void PreLoad(Type type); // 0x10196770 + public static void RegisterInteropXmlElement(string xmlElement, string xmlNamespace, Type type); // 0x10196D30 + public static void RegisterInteropXmlType(string xmlType, string xmlTypeNamespace, Type type); // 0x10196EC0 + public static void RegisterSoapActionForMethodBase(MethodBase mb); // 0x101971E0 + private static string InternalGetSoapAction(MethodBase mb); // 0x10196360 + public static void RegisterSoapActionForMethodBase(MethodBase mb, string soapAction); // 0x10197050 + private static string EncodeNs(string ns); // 0x101953D0 + private static string DecodeNs(string ns); // 0x10195020 +} + +// Namespace: +private class TypeInfo // TypeDefIndex: 1122 +{ + // Fields + public Hashtable Attributes; // 0x08 + public Hashtable Elements; // 0x0C + + // Methods + public void .ctor(); // 0x100BF000 +} + +// Namespace: System.Runtime.Remoting +public class TypeEntry // TypeDefIndex: 1123 +{ + // Fields + private string assembly_name; // 0x08 + private string type_name; // 0x0C + + // Properties + public string AssemblyName { get; set; } // 0x100BF0C0 0x100EB270 + public string TypeName { get; set; } // 0x100C5B30 0x100C5B50 + + // Methods + protected void .ctor(); // 0x100BF000 +} + +// Namespace: System.Runtime.Remoting +[Serializable] +internal class TypeInfo : IRemotingTypeInfo // TypeDefIndex: 1124 +{ + // Fields + private string serverType; // 0x08 + private string[] serverHierarchy; // 0x0C + private string[] interfacesImplemented; // 0x10 + + // Properties + public string TypeName { get; set; } // 0x100BF0C0 0x100EB270 + + // Methods + public void .ctor(Type type); // 0x1019A210 + public bool CanCastTo(Type fromType, object o); // 0x10199F70 +} + +// Namespace: System.Runtime.Remoting +public class WellKnownClientTypeEntry : TypeEntry // TypeDefIndex: 1125 +{ + // Fields + private Type obj_type; // 0x10 + private string obj_url; // 0x14 + private string app_url; // 0x18 + + // Properties + public string ApplicationUrl { get; set; } // 0x100EE580 0x10113F40 + public Type ObjectType { get; } // 0x100BFC20 + public string ObjectUrl { get; } // 0x100EF0C0 + + // Methods + public void .ctor(Type type, string objectUrl); // 0x1019A6F0 + public void .ctor(string typeName, string assemblyName, string objectUrl); // 0x1019A610 + public override string ToString(); // 0x1019A570 +} + +// Namespace: System.Runtime.Remoting +[Serializable] +public enum WellKnownObjectMode // TypeDefIndex: 1126 +{ + Singleton = 1, + SingleCall = 2 +} + +// Namespace: System.Runtime.Remoting +public class WellKnownServiceTypeEntry : TypeEntry // TypeDefIndex: 1127 +{ + // Fields + private Type obj_type; // 0x10 + private string obj_uri; // 0x14 + private WellKnownObjectMode obj_mode; // 0x18 + + // Properties + public IContextAttribute[] ContextAttributes { get; set; } // 0x100C5600 0x100C5530 + public WellKnownObjectMode Mode { get; } // 0x100EE580 + public Type ObjectType { get; } // 0x100BFC20 + public string ObjectUri { get; } // 0x100EF0C0 + + // Methods + public void .ctor(Type type, string objectUri, WellKnownObjectMode mode); // 0x1019AA40 + public void .ctor(string typeName, string assemblyName, string objectUri, WellKnownObjectMode mode); // 0x1019A960 + public override string ToString(); // 0x1019A770 +} + +// Namespace: System.Runtime.Serialization.Formatters.Binary +internal class BinaryCommon // TypeDefIndex: 1128 +{ + // Fields + public static byte[] BinaryHeader; // 0x00 + private static Type[] _typeCodesToType; // 0x04 + private static byte[] _typeCodeMap; // 0x08 + public static bool UseReflectionSerialization; // 0x0C + + // Methods + public void .ctor(); // 0x100BF000 + private static void .cctor(); // 0x10182C30 + public static bool IsPrimitive(Type type); // 0x10182880 + public static byte GetTypeCode(Type type); // 0x10182720 + public static Type GetTypeFromCode(int code); // 0x10182800 + public static void CheckSerializable(Type type, ISurrogateSelector selector, StreamingContext context); // 0x101825E0 + public static void SwapBytes(byte[] byteArray, int size, int dataSize); // 0x101829B0 +} + +// Namespace: System.Runtime.Serialization.Formatters.Binary +internal enum BinaryElement : byte // TypeDefIndex: 1129 +{ + Header = 0, + RefTypeObject = 1, + UntypedRuntimeObject = 2, + UntypedExternalObject = 3, + RuntimeObject = 4, + ExternalObject = 5, + String = 6, + GenericArray = 7, + BoxedPrimitiveTypeValue = 8, + ObjectReference = 9, + NullValue = 10, + End = 11, + Assembly = 12, + ArrayFiller8b = 13, + ArrayFiller32b = 14, + ArrayOfPrimitiveType = 15, + ArrayOfObject = 16, + ArrayOfString = 17, + Method = 18, + _Unknown4 = 19, + _Unknown5 = 20, + MethodCall = 21, + MethodResponse = 22 +} + +// Namespace: System.Runtime.Serialization.Formatters.Binary +internal enum TypeTag : byte // TypeDefIndex: 1130 +{ + PrimitiveType = 0, + String = 1, + ObjectType = 2, + RuntimeType = 3, + GenericType = 4, + ArrayOfObject = 5, + ArrayOfString = 6, + ArrayOfPrimitiveType = 7 +} + +// Namespace: System.Runtime.Serialization.Formatters.Binary +internal enum ArrayStructure : byte // TypeDefIndex: 1131 +{ + SingleDimensional = 0, + Jagged = 1, + MultiDimensional = 2 +} + +// Namespace: System.Runtime.Serialization.Formatters.Binary +internal enum MethodFlags // TypeDefIndex: 1132 +{ + NoArguments = 1, + PrimitiveArguments = 2, + ArgumentsInSimpleArray = 4, + ArgumentsInMultiArray = 8, + FormatMask = 15, + ExcludeLogicalCallContext = 16, + IncludesLogicalCallContext = 64, + IncludesSignature = 128, + GenericArguments = 32768, + NeedsInfoArrayMask = 32972 +} + +// Namespace: System.Runtime.Serialization.Formatters.Binary +internal enum ReturnTypeTag : byte // TypeDefIndex: 1133 +{ + Null = 2, + PrimitiveType = 8, + ObjectType = 16, + Exception = 32 +} + +// Namespace: System.Runtime.Serialization.Formatters.Binary +internal enum BinaryTypeCode : byte // TypeDefIndex: 1134 +{ + Boolean = 1, + Byte = 2, + Char = 3, + Decimal = 5, + Double = 6, + Int16 = 7, + Int32 = 8, + Int64 = 9, + SByte = 10, + Single = 11, + TimeSpan = 12, + DateTime = 13, + UInt16 = 14, + UInt32 = 15, + UInt64 = 16, + Null = 17, + String = 18 +} + +// Namespace: System.Runtime.Serialization.Formatters.Binary +public sealed class BinaryFormatter : IRemotingFormatter, IFormatter // TypeDefIndex: 1135 +{ + // Fields + private FormatterAssemblyStyle assembly_format; // 0x08 + private SerializationBinder binder; // 0x0C + private StreamingContext context; // 0x10 + private ISurrogateSelector surrogate_selector; // 0x18 + private FormatterTypeStyle type_format; // 0x1C + private TypeFilterLevel filter_level; // 0x20 + private static ISurrogateSelector k__BackingField; // 0x00 + + // Properties + public static ISurrogateSelector DefaultSurrogateSelector { get; set; } // 0x10113EC0 0x10113F10 + public FormatterAssemblyStyle AssemblyFormat { get; set; } // 0x100BF0C0 0x100EB270 + public SerializationBinder Binder { get; set; } // 0x100C5B30 0x100C5B50 + public StreamingContext Context { get; set; } // 0x10113EB0 0x10113EF0 + public ISurrogateSelector SurrogateSelector { get; set; } // 0x100EE580 0x10113F40 + public FormatterTypeStyle TypeFormat { get; set; } // 0x100F85F0 0x10113F50 + public TypeFilterLevel FilterLevel { get; set; } // 0x100EACD0 0x100EB230 + + // Methods + public void .ctor(); // 0x10113E10 + public void .ctor(ISurrogateSelector selector, StreamingContext context); // 0x10113E70 + public object Deserialize(Stream serializationStream); // 0x101137F0 + public object Deserialize(Stream serializationStream, HeaderHandler handler); // 0x101137E0 + private object NoCheckDeserialize(Stream serializationStream, HeaderHandler handler); // 0x10113940 + public object DeserializeMethodResponse(Stream serializationStream, HeaderHandler handler, IMethodCallMessage methodCallMessage); // 0x101137D0 + private object NoCheckDeserializeMethodResponse(Stream serializationStream, HeaderHandler handler, IMethodCallMessage methodCallMessage); // 0x10113810 + public void Serialize(Stream serializationStream, object graph); // 0x10113B80 + public void Serialize(Stream serializationStream, object graph, Header[] headers); // 0x10113BA0 + public object UnsafeDeserialize(Stream serializationStream, HeaderHandler handler); // 0x101137E0 + public object UnsafeDeserializeMethodResponse(Stream serializationStream, HeaderHandler handler, IMethodCallMessage methodCallMessage); // 0x101137D0 + private void WriteBinaryHeader(BinaryWriter writer, bool hasHeaders); // 0x10113D80 + private void ReadBinaryHeader(BinaryReader reader, out bool hasHeaders); // 0x10113B00 +} + +// Namespace: System.Runtime.Serialization.Formatters.Binary +internal class CodeGenerator // TypeDefIndex: 1136 +{ + // Fields + private static object monitor; // 0x00 + private static ModuleBuilder _module; // 0x04 + + // Methods + public void .ctor(); // 0x100BF000 + private static void .cctor(); // 0x10116DB0 + public static Type GenerateMetadataType(Type type, StreamingContext context); // 0x10116590 + public static Type GenerateMetadataTypeInternal(Type type, StreamingContext context); // 0x10114FD0 + public static void LoadFromPtr(ILGenerator ig, Type t); // 0x101166D0 + private static void EmitWriteTypeSpec(ILGenerator gen, Type type, string member); // 0x10114830 + private static void EmitLoadTypeAssembly(ILGenerator gen, Type type, string member); // 0x101142A0 + private static void EmitWrite(ILGenerator gen, Type type); // 0x10114C80 + public static void EmitWritePrimitiveValue(ILGenerator gen, Type type); // 0x10114400 + public static Type EnumToUnderlying(Type t); // 0x10114DB0 +} + +// Namespace: System.Runtime.Serialization.Formatters.Binary +internal class MessageFormatter // TypeDefIndex: 1137 +{ + // Methods + public void .ctor(); // 0x100BF000 + public static void WriteMethodCall(BinaryWriter writer, object obj, Header[] headers, ISurrogateSelector surrogateSelector, StreamingContext context, FormatterAssemblyStyle assemblyFormat, FormatterTypeStyle typeFormat); // 0x101196E0 + public static void WriteMethodResponse(BinaryWriter writer, object obj, Header[] headers, ISurrogateSelector surrogateSelector, StreamingContext context, FormatterAssemblyStyle assemblyFormat, FormatterTypeStyle typeFormat); // 0x10119DD0 + public static object ReadMethodCall(BinaryReader reader, bool hasHeaders, HeaderHandler headerHandler, BinaryFormatter formatter); // 0x10118900 + public static object ReadMethodCall(BinaryElement elem, BinaryReader reader, bool hasHeaders, HeaderHandler headerHandler, BinaryFormatter formatter); // 0x10118950 + public static object ReadMethodResponse(BinaryReader reader, bool hasHeaders, HeaderHandler headerHandler, IMethodCallMessage methodCallMessage, BinaryFormatter formatter); // 0x10119690 + public static object ReadMethodResponse(BinaryElement elem, BinaryReader reader, bool hasHeaders, HeaderHandler headerHandler, IMethodCallMessage methodCallMessage, BinaryFormatter formatter); // 0x10119060 + private static bool AllTypesArePrimitive(object[] objects); // 0x10118490 + public static bool IsMethodPrimitive(Type type); // 0x10118800 + private static object[] GetExtraProperties(IDictionary properties, string[] internalKeys); // 0x10118500 + private static bool IsInternalKey(string key, string[] internalKeys); // 0x10118760 +} + +// Namespace: System.Runtime.Serialization.Formatters.Binary +internal class ObjectReader // TypeDefIndex: 1138 +{ + // Fields + private ISurrogateSelector _surrogateSelector; // 0x08 + private StreamingContext _context; // 0x0C + private SerializationBinder _binder; // 0x14 + private TypeFilterLevel _filterLevel; // 0x18 + private ObjectManager _manager; // 0x1C + private Hashtable _registeredAssemblies; // 0x20 + private Hashtable _typeMetadataCache; // 0x24 + private object _lastObject; // 0x28 + private long _lastObjectID; // 0x30 + private long _rootObjectID; // 0x38 + private byte[] arrayBuffer; // 0x40 + private int ArrayBufferLength; // 0x44 + + // Properties + public object CurrentObject { get; } // 0x100EB040 + + // Methods + public void .ctor(BinaryFormatter formatter); // 0x1011F2B0 + public void ReadObjectGraph(BinaryReader reader, bool readHeaders, out object result, out Header[] headers); // 0x1011D5A0 + public void ReadObjectGraph(BinaryElement elem, BinaryReader reader, bool readHeaders, out object result, out Header[] headers); // 0x1011D2C0 + private bool ReadNextObject(BinaryElement element, BinaryReader reader); // 0x1011CF00 + public bool ReadNextObject(BinaryReader reader); // 0x1011CDC0 + private void ReadObject(BinaryElement element, BinaryReader reader, out long objectId, out object value, out SerializationInfo info); // 0x1011D650 + private void ReadAssembly(BinaryReader reader); // 0x1011CA90 + private void ReadObjectInstance(BinaryReader reader, bool isRuntimeObject, bool hasTypeInfo, out long objectId, out object value, out SerializationInfo info); // 0x1011D5F0 + private void ReadRefTypeObjectInstance(BinaryReader reader, out long objectId, out object value, out SerializationInfo info); // 0x1011DF50 + private void ReadObjectContent(BinaryReader reader, TypeMetadata metadata, long objectId, out object objectInstance, out SerializationInfo info); // 0x1011D020 + private void RegisterObject(long objectId, object objectInstance, SerializationInfo info, long parentObjectId, MemberInfo parentObjectMemeber, int[] indices); // 0x1011EF60 + private void ReadStringIntance(BinaryReader reader, out long objectId, out object value); // 0x1011E1A0 + private void ReadGenericArray(BinaryReader reader, out long objectId, out object val); // 0x1011CB70 + private object ReadBoxedPrimitiveTypeValue(BinaryReader reader); // 0x1011CB40 + private void ReadArrayOfPrimitiveType(BinaryReader reader, out long objectId, out object val); // 0x1011C0A0 + private void BlockRead(BinaryReader reader, Array array, int dataSize); // 0x1011BD80 + private void ReadArrayOfObject(BinaryReader reader, out long objectId, out object array); // 0x1011C030 + private void ReadArrayOfString(BinaryReader reader, out long objectId, out object array); // 0x1011CA20 + private void ReadSimpleArray(BinaryReader reader, Type elementType, out long objectId, out object val); // 0x1011E0A0 + private TypeMetadata ReadTypeMetadata(BinaryReader reader, bool isRuntimeObject, bool hasTypeInfo); // 0x1011E1F0 + private void ReadValue(BinaryReader reader, object parentObject, long parentObjectId, SerializationInfo info, Type valueType, string fieldName, MemberInfo memberInfo, int[] indices); // 0x1011EBC0 + private void SetObjectValue(object parentObject, string fieldName, MemberInfo memberInfo, SerializationInfo info, object value, Type valueType, int[] indices); // 0x1011F060 + private void RecordFixup(long parentObjectId, long childObjectId, object parentObject, SerializationInfo info, string fieldName, MemberInfo memberInfo, int[] indices); // 0x1011EDD0 + private Type GetDeserializationType(long assemblyId, string className); // 0x1011BEE0 + public Type ReadType(BinaryReader reader, TypeTag code); // 0x1011E830 + public static object ReadPrimitiveTypeValue(BinaryReader reader, Type type); // 0x1011DA70 +} + +// Namespace: +private class TypeMetadata // TypeDefIndex: 1139 +{ + // Fields + public Type Type; // 0x08 + public Type[] MemberTypes; // 0x0C + public string[] MemberNames; // 0x10 + public MemberInfo[] MemberInfos; // 0x14 + public int FieldCount; // 0x18 + public bool NeedsSerializationInfo; // 0x1C + + // Methods + public void .ctor(); // 0x100BF000 +} + +// Namespace: +private class ArrayNullFiller // TypeDefIndex: 1140 +{ + // Fields + public int NullCount; // 0x08 + + // Methods + public void .ctor(int count); // 0x10113500 +} + +// Namespace: System.Runtime.Serialization.Formatters.Binary +internal abstract class TypeMetadata // TypeDefIndex: 1141 +{ + // Fields + public string TypeAssemblyName; // 0x08 + public string InstanceTypeName; // 0x0C + + // Properties + public abstract bool RequiresTypes { get; } + + // Methods + protected void .ctor(); // 0x100BF000 + public abstract void WriteAssemblies(ObjectWriter ow, BinaryWriter writer); + public abstract void WriteTypeData(ObjectWriter ow, BinaryWriter writer, bool writeTypes); + public abstract void WriteObjectData(ObjectWriter ow, BinaryWriter writer, object data); + public virtual bool IsCompatible(TypeMetadata other); // 0x100E5880 +} + +// Namespace: System.Runtime.Serialization.Formatters.Binary +internal abstract class ClrTypeMetadata : TypeMetadata // TypeDefIndex: 1142 +{ + // Fields + public Type InstanceType; // 0x10 + + // Properties + public override bool RequiresTypes { get; } // 0x100EFBF0 + + // Methods + public void .ctor(Type instanceType); // 0x10114230 +} + +// Namespace: System.Runtime.Serialization.Formatters.Binary +internal class SerializableTypeMetadata : TypeMetadata // TypeDefIndex: 1143 +{ + // Fields + private Type[] types; // 0x10 + private string[] names; // 0x14 + + // Properties + public override bool RequiresTypes { get; } // 0x100E5880 + + // Methods + public void .ctor(Type itype, SerializationInfo info); // 0x101246E0 + public override bool IsCompatible(TypeMetadata other); // 0x10124110 + public override void WriteAssemblies(ObjectWriter ow, BinaryWriter writer); // 0x10124330 + public override void WriteTypeData(ObjectWriter ow, BinaryWriter writer, bool writeTypes); // 0x10124570 + public override void WriteObjectData(ObjectWriter ow, BinaryWriter writer, object data); // 0x101243D0 +} + +// Namespace: System.Runtime.Serialization.Formatters.Binary +internal class MemberTypeMetadata : ClrTypeMetadata // TypeDefIndex: 1144 +{ + // Fields + private MemberInfo[] members; // 0x14 + + // Methods + public void .ctor(Type type, StreamingContext context); // 0x10118410 + public override void WriteAssemblies(ObjectWriter ow, BinaryWriter writer); // 0x10117F10 + public override void WriteTypeData(ObjectWriter ow, BinaryWriter writer, bool writeTypes); // 0x10118180 + public override void WriteObjectData(ObjectWriter ow, BinaryWriter writer, object data); // 0x10118030 +} + +// Namespace: System.Runtime.Serialization.Formatters.Binary +internal class ObjectWriter // TypeDefIndex: 1145 +{ + // Fields + private ObjectIDGenerator _idGenerator; // 0x08 + private Hashtable _cachedMetadata; // 0x0C + private Queue _pendingObjects; // 0x10 + private Hashtable _assemblyCache; // 0x14 + private static Hashtable _cachedTypes; // 0x00 + internal static Assembly CorlibAssembly; // 0x04 + internal static string CorlibAssemblyName; // 0x08 + private ISurrogateSelector _surrogateSelector; // 0x18 + private StreamingContext _context; // 0x1C + private FormatterAssemblyStyle _assemblyFormat; // 0x24 + private FormatterTypeStyle _typeFormat; // 0x28 + private byte[] arrayBuffer; // 0x2C + private int ArrayBufferLength; // 0x30 + private SerializationObjectManager _manager; // 0x34 + + // Methods + public void .ctor(ISurrogateSelector surrogateSelector, StreamingContext context, FormatterAssemblyStyle assemblyFormat, FormatterTypeStyle typeFormat); // 0x10123640 + private static void .cctor(); // 0x10123550 + public void WriteObjectGraph(BinaryWriter writer, object obj, Header[] headers); // 0x10121890 + public void QueueObject(object obj); // 0x10120C40 + public void WriteQueuedObjects(BinaryWriter writer); // 0x10122BD0 + public void WriteObjectInstance(BinaryWriter writer, object obj, bool isValueObject); // 0x101219E0 + public static void WriteSerializationEnd(BinaryWriter writer); // 0x10122C40 + private void WriteObject(BinaryWriter writer, long id, object obj); // 0x10121BA0 + private void GetObjectData(object obj, out TypeMetadata metadata, out object data); // 0x101202C0 + private TypeMetadata CreateMemberTypeMetadata(Type type); // 0x101200B0 + private void WriteArray(BinaryWriter writer, long id, Array array); // 0x10120D90 + private void WriteGenericArray(BinaryWriter writer, long id, Array array); // 0x10121310 + private void WriteObjectArray(BinaryWriter writer, long id, Array array); // 0x101217C0 + private void WriteStringArray(BinaryWriter writer, long id, Array array); // 0x10122E70 + private void WritePrimitiveTypeArray(BinaryWriter writer, long id, Array array); // 0x10121EB0 + private void BlockWrite(BinaryWriter writer, Array array, int dataSize); // 0x1011FF70 + private void WriteSingleDimensionArrayElements(BinaryWriter writer, Array array, Type elementType); // 0x10122C70 + private void WriteNullFiller(BinaryWriter writer, int numNulls); // 0x10121710 + private void WriteObjectReference(BinaryWriter writer, long id); // 0x10121B60 + public void WriteValue(BinaryWriter writer, Type valueType, object val); // 0x101232E0 + private void WriteString(BinaryWriter writer, long id, string str); // 0x10122F40 + public int WriteAssembly(BinaryWriter writer, Assembly assembly); // 0x101212D0 + public int WriteAssemblyName(BinaryWriter writer, string assembly); // 0x10121060 + public int GetAssemblyId(Assembly assembly); // 0x101201B0 + public int GetAssemblyNameId(string assembly); // 0x10120240 + private int RegisterAssembly(string assembly, out bool firstTime); // 0x10120C70 + public static void WritePrimitiveValue(BinaryWriter writer, object value); // 0x10122700 + public static void WriteTypeCode(BinaryWriter writer, Type type); // 0x10122FA0 + public static TypeTag GetTypeTag(Type type); // 0x101209C0 + public void WriteTypeSpec(BinaryWriter writer, Type type); // 0x10123020 +} + +// Namespace: +private class MetadataReference // TypeDefIndex: 1146 +{ + // Fields + public TypeMetadata Metadata; // 0x08 + public long ObjectID; // 0x10 + + // Methods + public void .ctor(TypeMetadata metadata, long id); // 0x1011A500 +} + +// Namespace: System.Runtime.Serialization.Formatters +[Serializable] +public enum FormatterAssemblyStyle // TypeDefIndex: 1147 +{ + Simple = 0, + Full = 1 +} + +// Namespace: System.Runtime.Serialization.Formatters +[Serializable] +public enum FormatterTypeStyle // TypeDefIndex: 1148 +{ + TypesWhenNeeded = 0, + TypesAlways = 1, + XsdString = 2 +} + +// Namespace: System.Runtime.Serialization.Formatters +public interface IFieldInfo // TypeDefIndex: 1149 +{ + // Properties + string[] FieldNames { get; set; } + Type[] FieldTypes { get; set; } + +} + +// Namespace: System.Runtime.Serialization.Formatters +public interface ISoapMessage // TypeDefIndex: 1150 +{ + // Properties + Header[] Headers { get; set; } + string MethodName { get; set; } + string[] ParamNames { get; set; } + Type[] ParamTypes { get; set; } + object[] ParamValues { get; set; } + string XmlNameSpace { get; set; } + +} + +// Namespace: System.Runtime.Serialization.Formatters +public sealed class InternalRM // TypeDefIndex: 1151 +{ + // Methods + public void .ctor(); // 0x100BF000 + public static void InfoSoap(object[] messages); // 0x10117C90 + public static bool SoapCheckEnabled(); // 0x10117CE0 +} + +// Namespace: System.Runtime.Serialization.Formatters +public sealed class InternalST // TypeDefIndex: 1152 +{ + // Methods + private void .ctor(); // 0x100BF000 + public static void InfoSoap(object[] messages); // 0x10117D30 + public static Assembly LoadAssemblyFromString(string assemblyString); // 0x10117D80 + public static void SerializationSetValue(FieldInfo fi, object target, object value); // 0x10117DD0 + public static void Soap(object[] messages); // 0x10117EC0 + public static void SoapAssert(bool condition, string message); // 0x10117E20 + public static bool SoapCheckEnabled(); // 0x10117E70 +} + +// Namespace: System.Runtime.Serialization.Formatters +[Serializable] +public sealed class ServerFault // TypeDefIndex: 1153 +{ + // Fields + private string exceptionType; // 0x08 + private string message; // 0x0C + private string stackTrace; // 0x10 + private Exception exception; // 0x14 + + // Properties + public string ExceptionType { get; set; } // 0x100BF0C0 0x100EB270 + public string ExceptionMessage { get; set; } // 0x100C5B30 0x100C5B50 + public string StackTrace { get; set; } // 0x100BFC20 0x100C5B40 + + // Methods + public void .ctor(string exceptionType, string message, string stackTrace); // 0x10127920 +} + +// Namespace: System.Runtime.Serialization.Formatters +[Serializable] +public sealed class SoapFault : ISerializable // TypeDefIndex: 1154 +{ + // Fields + private string code; // 0x08 + private string actor; // 0x0C + private string faultString; // 0x10 + private object detail; // 0x14 + + // Properties + public object Detail { get; set; } // 0x100EF0C0 0x10127B00 + public string FaultActor { get; set; } // 0x100C5B30 0x100C5B50 + public string FaultCode { get; set; } // 0x100BF0C0 0x100EB270 + public string FaultString { get; set; } // 0x100BFC20 0x100C5B40 + + // Methods + public void .ctor(); // 0x100BF000 + private void .ctor(SerializationInfo info, StreamingContext context); // 0x10127A20 + public void .ctor(string faultCode, string faultString, string faultActor, ServerFault serverFault); // 0x10127AD0 + public void GetObjectData(SerializationInfo info, StreamingContext context); // 0x10127950 +} + +// Namespace: System.Runtime.Serialization.Formatters +[Serializable] +public class SoapMessage : ISoapMessage // TypeDefIndex: 1155 +{ + // Fields + private Header[] headers; // 0x08 + private string methodName; // 0x0C + private string[] paramNames; // 0x10 + private Type[] paramTypes; // 0x14 + private object[] paramValues; // 0x18 + private string xmlNameSpace; // 0x1C + + // Properties + public Header[] Headers { get; set; } // 0x100BF0C0 0x100EB270 + public string MethodName { get; set; } // 0x100C5B30 0x100C5B50 + public string[] ParamNames { get; set; } // 0x100BFC20 0x100C5B40 + public Type[] ParamTypes { get; set; } // 0x100EF0C0 0x10127B00 + public object[] ParamValues { get; set; } // 0x100EE580 0x10113F40 + public string XmlNameSpace { get; set; } // 0x100F85F0 0x10113F50 + + // Methods + public void .ctor(); // 0x100BF000 +} + +// Namespace: System.Runtime.Serialization.Formatters +public enum TypeFilterLevel // TypeDefIndex: 1156 +{ + Low = 2, + Full = 3 +} + +// Namespace: System.Runtime.Serialization +[Serializable] +public abstract class Formatter : IFormatter // TypeDefIndex: 1157 +{ + // Fields + protected ObjectIDGenerator m_idGenerator; // 0x08 + protected Queue m_objectQueue; // 0x0C + + // Properties + public abstract SerializationBinder Binder { get; set; } + public abstract StreamingContext Context { get; set; } + public abstract ISurrogateSelector SurrogateSelector { get; set; } + + // Methods + protected void .ctor(); // 0x101854A0 + public abstract object Deserialize(Stream serializationStream); + protected virtual object GetNext(out long objID); // 0x10184C40 + protected virtual long Schedule(object obj); // 0x10184CE0 + public abstract void Serialize(Stream serializationStream, object graph); + protected abstract void WriteArray(object obj, string name, Type memberType); + protected abstract void WriteBoolean(bool val, string name); + protected abstract void WriteByte(byte val, string name); + protected abstract void WriteChar(char val, string name); + protected abstract void WriteDateTime(DateTime val, string name); + protected abstract void WriteDecimal(Decimal val, string name); + protected abstract void WriteDouble(double val, string name); + protected abstract void WriteInt16(short val, string name); + protected abstract void WriteInt32(int val, string name); + protected abstract void WriteInt64(long val, string name); + protected virtual void WriteMember(string memberName, object data); // 0x10184D60 + protected abstract void WriteObjectRef(object obj, string name, Type memberType); + protected abstract void WriteSByte(sbyte val, string name); + protected abstract void WriteSingle(float val, string name); + protected abstract void WriteTimeSpan(TimeSpan val, string name); + protected abstract void WriteUInt16(ushort val, string name); + protected abstract void WriteUInt32(uint val, string name); + protected abstract void WriteUInt64(ulong val, string name); + protected abstract void WriteValueType(object obj, string name, Type memberType); +} + +// Namespace: System.Runtime.Serialization +public class FormatterConverter : IFormatterConverter // TypeDefIndex: 1158 +{ + // Methods + public void .ctor(); // 0x100BF000 + public object Convert(object value, Type type); // 0x10183830 + public object Convert(object value, TypeCode typeCode); // 0x10183880 + public bool ToBoolean(object value); // 0x101838D0 + public byte ToByte(object value); // 0x10183960 + public char ToChar(object value); // 0x101839F0 + public DateTime ToDateTime(object value); // 0x10183A80 + public Decimal ToDecimal(object value); // 0x10183B20 + public double ToDouble(object value); // 0x10183BC0 + public short ToInt16(object value); // 0x10183C50 + public int ToInt32(object value); // 0x10183CE0 + public long ToInt64(object value); // 0x10183D70 + public float ToSingle(object value); // 0x10183E90 + public string ToString(object value); // 0x10183F20 + public sbyte ToSByte(object value); // 0x10183E00 + public ushort ToUInt16(object value); // 0x10183FB0 + public uint ToUInt32(object value); // 0x10184040 + public ulong ToUInt64(object value); // 0x101840D0 +} + +// Namespace: System.Runtime.Serialization +public sealed class FormatterServices // TypeDefIndex: 1159 +{ + // Fields + private const BindingFlags fieldFlags = 54; // 0x00 + + // Methods + private void .ctor(); // 0x100BF000 + public static object[] GetObjectData(object obj, MemberInfo[] members); // 0x101844C0 + public static MemberInfo[] GetSerializableMembers(Type type); // 0x10184920 + public static MemberInfo[] GetSerializableMembers(Type type, StreamingContext context); // 0x101847A0 + private static void GetFields(Type reflectedType, Type type, ArrayList fields); // 0x10184360 + public static Type GetTypeFromAssembly(Assembly assem, string name); // 0x10184960 + public static object GetUninitializedObject(Type type); // 0x101846D0 + public static object PopulateObjectMembers(object obj, MemberInfo[] members, object[] data); // 0x101849F0 + public static void CheckTypeSecurity(Type t, TypeFilterLevel securityLevel); // 0x101842B0 + private static void CheckNotAssignable(Type basetype, Type type); // 0x10184160 + public static object GetSafeUninitializedObject(Type type); // 0x101846D0 +} + +// Namespace: System.Runtime.Serialization +public interface IDeserializationCallback // TypeDefIndex: 1160 +{ + // Methods + void OnDeserialization(object sender); +} + +// Namespace: System.Runtime.Serialization +public interface IFormatter // TypeDefIndex: 1161 +{ + // Properties + SerializationBinder Binder { get; set; } + StreamingContext Context { get; set; } + ISurrogateSelector SurrogateSelector { get; set; } + + // Methods + object Deserialize(Stream serializationStream); + void Serialize(Stream serializationStream, object graph); +} + +// Namespace: System.Runtime.Serialization +public interface IFormatterConverter // TypeDefIndex: 1162 +{ + // Methods + object Convert(object value, Type type); + object Convert(object value, TypeCode typeCode); + bool ToBoolean(object value); + byte ToByte(object value); + char ToChar(object value); + DateTime ToDateTime(object value); + Decimal ToDecimal(object value); + double ToDouble(object value); + short ToInt16(object value); + int ToInt32(object value); + long ToInt64(object value); + sbyte ToSByte(object value); + float ToSingle(object value); + string ToString(object value); + ushort ToUInt16(object value); + uint ToUInt32(object value); + ulong ToUInt64(object value); +} + +// Namespace: System.Runtime.Serialization +public interface IObjectReference // TypeDefIndex: 1163 +{ + // Methods + object GetRealObject(StreamingContext context); +} + +// Namespace: System.Runtime.Serialization +public interface ISerializationSurrogate // TypeDefIndex: 1164 +{ + // Methods + void GetObjectData(object obj, SerializationInfo info, StreamingContext context); + object SetObjectData(object obj, SerializationInfo info, StreamingContext context, ISurrogateSelector selector); +} + +// Namespace: System.Runtime.Serialization +public interface ISurrogateSelector // TypeDefIndex: 1165 +{ + // Methods + void ChainSelector(ISurrogateSelector selector); + ISurrogateSelector GetNextSelector(); + ISerializationSurrogate GetSurrogate(Type type, StreamingContext context, out ISurrogateSelector selector); +} + +// Namespace: System.Runtime.Serialization +[Serializable] +public class ObjectIDGenerator // TypeDefIndex: 1166 +{ + // Fields + private Hashtable table; // 0x08 + private long current; // 0x10 + private static InstanceComparer comparer; // 0x00 + + // Properties + internal long NextId { get; } // 0x1011A870 + + // Methods + public void .ctor(); // 0x1011A7E0 + private static void .cctor(); // 0x1011A790 + public virtual long GetId(object obj, out bool firstTime); // 0x1011A5A0 + public virtual long HasId(object obj, out bool firstTime); // 0x1011A6D0 +} + +// Namespace: +private class InstanceComparer : IComparer, IHashCodeProvider // TypeDefIndex: 1167 +{ + // Methods + public void .ctor(); // 0x100BF000 + private int System.Collections.IComparer.Compare(object o1, object o2); // 0x10117C00 + private int System.Collections.IHashCodeProvider.GetHashCode(object o); // 0x10117C70 +} + +// Namespace: System.Runtime.Serialization +public class ObjectManager // TypeDefIndex: 1168 +{ + // Fields + private ObjectRecord _objectRecordChain; // 0x08 + private ObjectRecord _lastObjectRecord; // 0x0C + private ArrayList _deserializedRecords; // 0x10 + private ArrayList _onDeserializedCallbackRecords; // 0x14 + private Hashtable _objectRecords; // 0x18 + private bool _finalFixup; // 0x1C + private ISurrogateSelector _selector; // 0x20 + private StreamingContext _context; // 0x24 + private int _registeredObjectsCount; // 0x2C + + // Methods + public void .ctor(ISurrogateSelector selector, StreamingContext context); // 0x1011BCF0 + public virtual void DoFixups(); // 0x1011A8E0 + internal ObjectRecord GetObjectRecord(long objectID); // 0x1011AC40 + public virtual object GetObject(long objectID); // 0x1011AE40 + public virtual void RaiseDeserializationEvent(); // 0x1011AF50 + public void RaiseOnDeserializingEvent(object obj); // 0x1011B2A0 + private void RaiseOnDeserializedEvent(object obj); // 0x1011B1C0 + private void AddFixup(BaseFixupRecord record); // 0x1011A8A0 + public virtual void RecordArrayElementFixup(long arrayToBeFixed, int index, long objectRequired); // 0x1011B4A0 + public virtual void RecordArrayElementFixup(long arrayToBeFixed, int[] indices, long objectRequired); // 0x1011B380 + public virtual void RecordDelayedFixup(long objectToBeFixed, string memberName, long objectRequired); // 0x1011B5B0 + public virtual void RecordFixup(long objectToBeFixed, MemberInfo member, long objectRequired); // 0x1011B6D0 + private void RegisterObjectInternal(object obj, ObjectRecord record); // 0x1011B7F0 + public virtual void RegisterObject(object obj, long objectID); // 0x1011BB30 + public void RegisterObject(object obj, long objectID, SerializationInfo info); // 0x1011BC20 + public void RegisterObject(object obj, long objectID, SerializationInfo info, long idOfContainingObj, MemberInfo member); // 0x1011BBF0 + public void RegisterObject(object obj, long objectID, SerializationInfo info, long idOfContainingObj, MemberInfo member, int[] arrayIndex); // 0x1011BA40 +} + +// Namespace: System.Runtime.Serialization +internal abstract class BaseFixupRecord // TypeDefIndex: 1169 +{ + // Fields + protected internal ObjectRecord ObjectToBeFixed; // 0x08 + protected internal ObjectRecord ObjectRequired; // 0x0C + public BaseFixupRecord NextSameContainer; // 0x10 + public BaseFixupRecord NextSameRequired; // 0x14 + + // Methods + public void .ctor(ObjectRecord objectToBeFixed, ObjectRecord objectRequired); // 0x100F97B0 + public bool DoFixup(ObjectManager manager, bool strict); // 0x10182440 + protected abstract void FixupImpl(ObjectManager manager); +} + +// Namespace: System.Runtime.Serialization +internal class ArrayFixupRecord : BaseFixupRecord // TypeDefIndex: 1170 +{ + // Fields + private int _index; // 0x18 + + // Methods + public void .ctor(ObjectRecord objectToBeFixed, int index, ObjectRecord objectRequired); // 0x10182410 + protected override void FixupImpl(ObjectManager manager); // 0x10182370 +} + +// Namespace: System.Runtime.Serialization +internal class MultiArrayFixupRecord : BaseFixupRecord // TypeDefIndex: 1171 +{ + // Fields + private int[] _indices; // 0x18 + + // Methods + public void .ctor(ObjectRecord objectToBeFixed, int[] indices, ObjectRecord objectRequired); // 0x1011A570 + protected override void FixupImpl(ObjectManager manager); // 0x1011A530 +} + +// Namespace: System.Runtime.Serialization +internal class FixupRecord : BaseFixupRecord // TypeDefIndex: 1172 +{ + // Fields + public MemberInfo _member; // 0x18 + + // Methods + public void .ctor(ObjectRecord objectToBeFixed, MemberInfo member, ObjectRecord objectRequired); // 0x10182410 + protected override void FixupImpl(ObjectManager manager); // 0x101837F0 +} + +// Namespace: System.Runtime.Serialization +internal class DelayedFixupRecord : BaseFixupRecord // TypeDefIndex: 1173 +{ + // Fields + public string _memberName; // 0x18 + + // Methods + public void .ctor(ObjectRecord objectToBeFixed, string memberName, ObjectRecord objectRequired); // 0x10182410 + protected override void FixupImpl(ObjectManager manager); // 0x101836C0 +} + +// Namespace: System.Runtime.Serialization +internal enum ObjectRecordStatus : byte // TypeDefIndex: 1174 +{ + Unregistered = 0, + ReferenceUnsolved = 1, + ReferenceSolvingDelayed = 2, + ReferenceSolved = 3 +} + +// Namespace: System.Runtime.Serialization +internal class ObjectRecord // TypeDefIndex: 1175 +{ + // Fields + public ObjectRecordStatus Status; // 0x08 + public object OriginalObject; // 0x0C + public object ObjectInstance; // 0x10 + public long ObjectID; // 0x18 + public SerializationInfo Info; // 0x20 + public long IdOfContainingObj; // 0x28 + public ISerializationSurrogate Surrogate; // 0x30 + public ISurrogateSelector SurrogateSelector; // 0x34 + public MemberInfo Member; // 0x38 + public int[] ArrayIndex; // 0x3C + public BaseFixupRecord FixupChainAsContainer; // 0x40 + public BaseFixupRecord FixupChainAsRequired; // 0x44 + public ObjectRecord Next; // 0x48 + + // Properties + public bool IsInstanceReady { get; } // 0x1011FEF0 + public bool IsUnsolvedObjectReference { get; } // 0x1011FF60 + public bool IsRegistered { get; } // 0x1011FF50 + public bool HasPendingFixups { get; } // 0x1011FEE0 + + // Methods + public void .ctor(); // 0x100BF000 + public void SetMemberValue(ObjectManager manager, MemberInfo member, object value); // 0x1011FC70 + public void SetArrayValue(ObjectManager manager, object value, int[] indices); // 0x1011FB30 + public void SetMemberValue(ObjectManager manager, string memberName, object value); // 0x1011FBE0 + public bool DoFixups(bool asContainer, ObjectManager manager, bool strict); // 0x1011F440 + public void RemoveFixup(BaseFixupRecord fixupToRemove, bool asContainer); // 0x1011FAD0 + private void UnchainFixup(BaseFixupRecord fixup, BaseFixupRecord prevFixup, bool asContainer); // 0x1011FE90 + public void ChainFixup(BaseFixupRecord fixup, bool asContainer); // 0x1011F400 + public bool LoadData(ObjectManager manager, ISurrogateSelector selector, StreamingContext context); // 0x1011F4E0 +} + +// Namespace: System.Runtime.Serialization +public sealed class OnDeserializedAttribute : Attribute // TypeDefIndex: 1176 +{ + // Methods + public void .ctor(); // 0x100C5970 +} + +// Namespace: System.Runtime.Serialization +public sealed class OnDeserializingAttribute : Attribute // TypeDefIndex: 1177 +{ + // Methods + public void .ctor(); // 0x100C5970 +} + +// Namespace: System.Runtime.Serialization +public sealed class OnSerializedAttribute : Attribute // TypeDefIndex: 1178 +{ + // Methods + public void .ctor(); // 0x100C5970 +} + +// Namespace: System.Runtime.Serialization +public sealed class OnSerializingAttribute : Attribute // TypeDefIndex: 1179 +{ + // Methods + public void .ctor(); // 0x100C5970 +} + +// Namespace: System.Runtime.Serialization +public sealed class OptionalFieldAttribute : Attribute // TypeDefIndex: 1180 +{ + // Fields + private int version_added; // 0x08 + + // Properties + public int VersionAdded { get; set; } // 0x100BF0C0 0x100EB270 + + // Methods + public void .ctor(); // 0x100C5970 +} + +// Namespace: System.Runtime.Serialization +[Serializable] +public abstract class SerializationBinder // TypeDefIndex: 1181 +{ + // Methods + protected void .ctor(); // 0x100BF000 + public abstract Type BindToType(string assemblyName, string typeName); +} + +// Namespace: System.Runtime.Serialization +internal sealed class SerializationCallbacks // TypeDefIndex: 1182 +{ + // Fields + private const BindingFlags DefaultBindingFlags = 54; // 0x00 + private readonly ArrayList onSerializingList; // 0x08 + private readonly ArrayList onSerializedList; // 0x0C + private readonly ArrayList onDeserializingList; // 0x10 + private readonly ArrayList onDeserializedList; // 0x14 + private static Hashtable cache; // 0x00 + private static object cache_lock; // 0x04 + + // Properties + public bool HasSerializingCallbacks { get; } // 0x101253D0 + public bool HasSerializedCallbacks { get; } // 0x101253C0 + public bool HasDeserializingCallbacks { get; } // 0x101253B0 + public bool HasDeserializedCallbacks { get; } // 0x101253A0 + + // Methods + public void .ctor(Type type); // 0x101252C0 + private static void .cctor(); // 0x10125250 + private static ArrayList GetMethodsByAttribute(Type type, Type attr); // 0x10124970 + private static void Invoke(ArrayList list, object target, StreamingContext context); // 0x10124EC0 + public void RaiseOnSerializing(object target, StreamingContext contex); // 0x101251F0 + public void RaiseOnSerialized(object target, StreamingContext contex); // 0x10125190 + public void RaiseOnDeserializing(object target, StreamingContext contex); // 0x10125130 + public void RaiseOnDeserialized(object target, StreamingContext contex); // 0x101250D0 + public static SerializationCallbacks GetSerializationCallbacks(Type t); // 0x10124B50 +} + +// Namespace: +public delegate void CallbackHandler(StreamingContext context); // TypeDefIndex: 1183; 0x10113FE0 + +// Namespace: System.Runtime.Serialization +public struct SerializationEntry // TypeDefIndex: 1184 +{ + // Fields + private string name; // 0x08 + private Type objectType; // 0x0C + private object value; // 0x10 + + // Properties + public string Name { get; } // 0x10003A80 + public Type ObjectType { get; } // 0x10003A90 + public object Value { get; } // 0x100039B0 + + // Methods + internal void .ctor(string name, Type type, object value); // 0x100074C0 +} + +// Namespace: System.Runtime.Serialization +[Serializable] +public class SerializationException : SystemException // TypeDefIndex: 1185 +{ + // Methods + public void .ctor(); // 0x101253E0 + public void .ctor(string message); // 0x100E5680 + public void .ctor(string message, Exception innerException); // 0x100E5670 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 +} + +// Namespace: System.Runtime.Serialization +public sealed class SerializationInfo // TypeDefIndex: 1186 +{ + // Fields + private Hashtable serialized; // 0x08 + private ArrayList values; // 0x0C + private string assemblyName; // 0x10 + private string fullTypeName; // 0x14 + private IFormatterConverter converter; // 0x18 + + // Properties + public string AssemblyName { get; set; } // 0x100BFC20 0x10127540 + public string FullTypeName { get; set; } // 0x100EF0C0 0x101275A0 + public int MemberCount { get; } // 0x101273C0 + + // Methods + private void .ctor(Type type); // 0x10127000 + private void .ctor(Type type, SerializationEntry[] data); // 0x10127200 + public void .ctor(Type type, IFormatterConverter converter); // 0x101270E0 + public void AddValue(string name, object value, Type type); // 0x10125660 + public object GetValue(string name, Type type); // 0x10126D70 + public void SetType(Type type); // 0x10126F50 + public SerializationInfoEnumerator GetEnumerator(); // 0x10126510 + public void AddValue(string name, short value); // 0x10125C70 + public void AddValue(string name, ushort value); // 0x10125A60 + public void AddValue(string name, int value); // 0x101257D0 + public void AddValue(string name, byte value); // 0x101259E0 + public void AddValue(string name, bool value); // 0x10125AE0 + public void AddValue(string name, char value); // 0x10125850 + public void AddValue(string name, sbyte value); // 0x10125E10 + public void AddValue(string name, double value); // 0x10125F20 + public void AddValue(string name, Decimal value); // 0x101258D0 + public void AddValue(string name, DateTime value); // 0x10125CF0 + public void AddValue(string name, float value); // 0x10125D80 + public void AddValue(string name, uint value); // 0x10125960 + public void AddValue(string name, long value); // 0x10125BE0 + public void AddValue(string name, ulong value); // 0x10125E90 + public void AddValue(string name, object value); // 0x10125B60 + public bool GetBoolean(string name); // 0x10125FB0 + public byte GetByte(string name); // 0x10126090 + public char GetChar(string name); // 0x10126170 + public DateTime GetDateTime(string name); // 0x10126250 + public Decimal GetDecimal(string name); // 0x10126340 + public double GetDouble(string name); // 0x10126430 + public short GetInt16(string name); // 0x10126580 + public int GetInt32(string name); // 0x10126660 + public long GetInt64(string name); // 0x10126740 + public sbyte GetSByte(string name); // 0x10126820 + public float GetSingle(string name); // 0x10126900 + public string GetString(string name); // 0x101269E0 + public ushort GetUInt16(string name); // 0x10126AD0 + public uint GetUInt32(string name); // 0x10126BB0 + public ulong GetUInt64(string name); // 0x10126C90 + private SerializationEntry[] get_entries(); // 0x101273F0 +} + +// Namespace: System.Runtime.Serialization +public sealed class SerializationInfoEnumerator : IEnumerator // TypeDefIndex: 1187 +{ + // Fields + private IEnumerator enumerator; // 0x08 + + // Properties + private object System.Collections.IEnumerator.Current { get; } // 0x101254C0 + public SerializationEntry Current { get; } // 0x10125550 + public string Name { get; } // 0x101255D0 + public Type ObjectType { get; } // 0x10125600 + public object Value { get; } // 0x10125630 + + // Methods + internal void .ctor(ArrayList list); // 0x10125510 + public bool MoveNext(); // 0x10125420 + public void Reset(); // 0x10125470 +} + +// Namespace: System.Runtime.Serialization +public sealed class SerializationObjectManager // TypeDefIndex: 1188 +{ + // Fields + private readonly StreamingContext context; // 0x08 + private readonly Hashtable seen; // 0x10 + private CallbackHandler callbacks; // 0x14 + + // Events + private event CallbackHandler callbacks { + add; // 0x10127860 + remove; // 0x101278C0 + } + + // Methods + public void .ctor(StreamingContext context); // 0x10127800 + public void RegisterObject(object obj); // 0x10127620 + public void RaiseOnSerializedEvent(); // 0x10127600 +} + +// Namespace: +private sealed class c__AnonStorey3 // TypeDefIndex: 1189 +{ + // Fields + internal SerializationCallbacks sc; // 0x08 + internal object obj; // 0x0C + + // Methods + public void .ctor(); // 0x100BF000 + internal void <>m__2(StreamingContext ctx); // 0x10128080 +} + +// Namespace: System.Runtime.Serialization +[Serializable] +public struct StreamingContext // TypeDefIndex: 1190 +{ + // Fields + private StreamingContextStates state; // 0x08 + private object additional; // 0x0C + + // Properties + public object Context { get; } // 0x10003A90 + public StreamingContextStates State { get; } // 0x10003A80 + + // Methods + public void .ctor(StreamingContextStates state); // 0x10007580 + public void .ctor(StreamingContextStates state, object additional); // 0x100075A0 + public override bool Equals(object obj); // 0x10007500 + public override int GetHashCode(); // 0x10003A80 +} + +// Namespace: System.Runtime.Serialization +[Serializable] +public enum StreamingContextStates // TypeDefIndex: 1191 +{ + CrossProcess = 1, + CrossMachine = 2, + File = 4, + Persistence = 8, + Remoting = 16, + Other = 32, + Clone = 64, + CrossAppDomain = 128, + All = 255 +} + +// Namespace: System.Runtime.Serialization +public class SurrogateSelector : ISurrogateSelector // TypeDefIndex: 1192 +{ + // Fields + private Hashtable Surrogates; // 0x08 + private ISurrogateSelector nextSelector; // 0x0C + + // Methods + public void .ctor(); // 0x10128020 + public virtual void AddSurrogate(Type type, StreamingContext context, ISerializationSurrogate surrogate); // 0x10127B50 + public virtual void ChainSelector(ISurrogateSelector selector); // 0x10127D10 + public virtual ISurrogateSelector GetNextSelector(); // 0x100C5B30 + public virtual ISerializationSurrogate GetSurrogate(Type type, StreamingContext context, out ISurrogateSelector selector); // 0x10127D90 + public virtual void RemoveSurrogate(Type type, StreamingContext context); // 0x10127F10 +} + +// Namespace: System.Runtime.Versioning +public sealed class ResourceConsumptionAttribute : Attribute // TypeDefIndex: 1193 +{ + // Fields + private ResourceScope resource; // 0x08 + private ResourceScope consumption; // 0x0C + + // Properties + public ResourceScope ConsumptionScope { get; } // 0x100C5B30 + public ResourceScope ResourceScope { get; } // 0x100BF0C0 + + // Methods + public void .ctor(ResourceScope resourceScope); // 0x10123810 + public void .ctor(ResourceScope resourceScope, ResourceScope consumptionScope); // 0x101237E0 +} + +// Namespace: System.Runtime.Versioning +public sealed class ResourceExposureAttribute : Attribute // TypeDefIndex: 1194 +{ + // Fields + private ResourceScope exposure; // 0x08 + + // Properties + public ResourceScope ResourceExposureLevel { get; } // 0x100BF0C0 + + // Methods + public void .ctor(ResourceScope exposureLevel); // 0x100E5940 +} + +// Namespace: System.Runtime.Versioning +public enum ResourceScope // TypeDefIndex: 1195 +{ + None = 0, + Machine = 1, + Process = 2, + AppDomain = 4, + Library = 8, + Private = 16, + Assembly = 32 +} + +// Namespace: System.Runtime.Versioning +public static class VersioningHelper // TypeDefIndex: 1196 +{ + // Methods + private static int GetDomainId(); // 0x100C5600 + private static int GetProcessId(); // 0x100C5600 + private static string SafeName(string name, bool process, bool appdomain); // 0x10128740 + private static string ConvertFromMachine(string name, ResourceScope to, Type type); // 0x10128170 + private static string ConvertFromProcess(string name, ResourceScope to, Type type); // 0x101282B0 + private static string ConvertFromAppDomain(string name, ResourceScope to, Type type); // 0x101280F0 + public static string MakeVersionSafeName(string name, ResourceScope from, ResourceScope to); // 0x101283B0 + public static string MakeVersionSafeName(string name, ResourceScope from, ResourceScope to, Type type); // 0x101283D0 +} + +// Namespace: System.Runtime +[Serializable] +public enum GCLatencyMode // TypeDefIndex: 1197 +{ + Batch = 0, + Interactive = 1, + LowLatency = 2 +} + +// Namespace: System.Runtime +public static class GCSettings // TypeDefIndex: 1198 +{ + // Properties + public static bool IsServerGC { get; } // 0x100EFBF0 + public static GCLatencyMode LatencyMode { get; set; } // 0x100EF660 0x100C5530 + +} + +// Namespace: System.Runtime +public sealed class MemoryFailPoint : CriticalFinalizerObject, IDisposable // TypeDefIndex: 1199 +{ + // Methods + public void .ctor(int sizeInMegabytes); // 0x101A86C0 + protected override void Finalize(); // 0x101A8690 + public void Dispose(); // 0x101A8640 +} + +// Namespace: System.Security.AccessControl +public enum AccessControlActions // TypeDefIndex: 1200 +{ + None = 0, + View = 1, + Change = 2 +} + +// Namespace: System.Security.AccessControl +public enum AccessControlModification // TypeDefIndex: 1201 +{ + Add = 0, + Set = 1, + Reset = 2, + Remove = 3, + RemoveAll = 4, + RemoveSpecific = 5 +} + +// Namespace: System.Security.AccessControl +public enum AccessControlSections // TypeDefIndex: 1202 +{ + None = 0, + Audit = 1, + Access = 2, + Owner = 4, + Group = 8, + All = 15 +} + +// Namespace: System.Security.AccessControl +public enum AccessControlType // TypeDefIndex: 1203 +{ + Allow = 0, + Deny = 1 +} + +// Namespace: System.Security.AccessControl +public abstract class AccessRule : AuthorizationRule // TypeDefIndex: 1204 +{ + // Fields + private AccessControlType type; // 0x1C + + // Properties + public AccessControlType AccessControlType { get; } // 0x100F85F0 + + // Methods + protected void .ctor(IdentityReference identity, int accessMask, bool isInherited, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AccessControlType type); // 0x10113350 +} + +// Namespace: System.Security.AccessControl +public sealed class AceEnumerator : IEnumerator // TypeDefIndex: 1205 +{ + // Fields + private GenericAcl owner; // 0x08 + private int current; // 0x0C + + // Properties + private object System.Collections.IEnumerator.Current { get; } // 0x10113490 + public GenericAce Current { get; } // 0x10113490 + + // Methods + internal void .ctor(GenericAcl owner); // 0x101134D0 + public bool MoveNext(); // 0x10113430 + public void Reset(); // 0x10113480 +} + +// Namespace: System.Security.AccessControl +public enum AceFlags : byte // TypeDefIndex: 1206 +{ + None = 0, + ObjectInherit = 1, + ContainerInherit = 2, + NoPropagateInherit = 4, + InheritOnly = 8, + InheritanceFlags = 15, + Inherited = 16, + SuccessfulAccess = 64, + FailedAccess = 128, + AuditFlags = 192 +} + +// Namespace: System.Security.AccessControl +public enum AceQualifier // TypeDefIndex: 1207 +{ + AccessAllowed = 0, + AccessDenied = 1, + SystemAudit = 2, + SystemAlarm = 3 +} + +// Namespace: System.Security.AccessControl +public enum AceType // TypeDefIndex: 1208 +{ + AccessAllowed = 0, + AccessDenied = 1, + SystemAudit = 2, + SystemAlarm = 3, + AccessAllowedCompound = 4, + AccessAllowedObject = 5, + AccessDeniedObject = 6, + SystemAuditObject = 7, + SystemAlarmObject = 8, + AccessAllowedCallback = 9, + AccessDeniedCallback = 10, + AccessAllowedCallbackObject = 11, + AccessDeniedCallbackObject = 12, + SystemAuditCallback = 13, + SystemAlarmCallback = 14, + SystemAuditCallbackObject = 15, + SystemAlarmCallbackObject = 16, + MaxDefinedAceType = 16 +} + +// Namespace: System.Security.AccessControl +public enum AuditFlags // TypeDefIndex: 1209 +{ + None = 0, + Success = 1, + Failure = 2 +} + +// Namespace: System.Security.AccessControl +public abstract class AuditRule : AuthorizationRule // TypeDefIndex: 1210 +{ + // Fields + private AuditFlags auditFlags; // 0x1C + + // Properties + public AuditFlags AuditFlags { get; } // 0x100F85F0 + + // Methods + protected void .ctor(IdentityReference identity, int accessMask, bool isInherited, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AuditFlags auditFlags); // 0x10113520 +} + +// Namespace: System.Security.AccessControl +public abstract class AuthorizationRule // TypeDefIndex: 1211 +{ + // Fields + private IdentityReference identity; // 0x08 + private int accessMask; // 0x0C + private bool isInherited; // 0x10 + private InheritanceFlags inheritanceFlags; // 0x14 + private PropagationFlags propagationFlags; // 0x18 + + // Properties + public IdentityReference IdentityReference { get; } // 0x100BF0C0 + public InheritanceFlags InheritanceFlags { get; } // 0x100EF0C0 + public bool IsInherited { get; } // 0x101137C0 + public PropagationFlags PropagationFlags { get; } // 0x100EE580 + protected internal int AccessMask { get; } // 0x100C5B30 + + // Methods + internal void .ctor(); // 0x100BF000 + protected internal void .ctor(IdentityReference identity, int accessMask, bool isInherited, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags); // 0x10113700 +} + +// Namespace: System.Security.AccessControl +public sealed class AuthorizationRuleCollection : ReadOnlyCollectionBase // TypeDefIndex: 1212 +{ + // Properties + public AuthorizationRule Item { get; } // 0x10113660 + + // Methods + private void .ctor(AuthorizationRule[] rules); // 0x10113620 + public void CopyTo(AuthorizationRule[] rules, int index); // 0x101135E0 +} + +// Namespace: System.Security.AccessControl +public sealed class CommonAce : QualifiedAce // TypeDefIndex: 1213 +{ + // Properties + public override int BinaryLength { get; } // 0x10116F50 + + // Methods + public void .ctor(AceFlags flags, AceQualifier qualifier, int accessMask, SecurityIdentifier sid, bool isCallback, byte[] opaque); // 0x10116F20 + public override void GetBinaryForm(byte[] binaryForm, int offset); // 0x10116E80 + public static int MaxOpaqueLength(bool isCallback); // 0x10116ED0 +} + +// Namespace: System.Security.AccessControl +public abstract class CommonAcl : GenericAcl // TypeDefIndex: 1214 +{ + // Fields + private const int default_capacity = 10; // 0x00 + private bool is_container; // 0x08 + private bool is_ds; // 0x09 + private byte revision; // 0x0A + private List`1 list; // 0x0C + + // Properties + public sealed override int BinaryLength { get; } // 0x101171B0 + public sealed override int Count { get; } // 0x10117200 + public bool IsCanonical { get; } // 0x10117240 + public bool IsContainer { get; } // 0x100EA020 + public bool IsDS { get; } // 0x10117290 + public sealed override GenericAce Item { get; set; } // 0x101172A0 0x10117300 + public sealed override byte Revision { get; } // 0x101172F0 + + // Methods + internal void .ctor(bool isContainer, bool isDS, byte revision); // 0x10117120 + internal void .ctor(bool isContainer, bool isDS, byte revision, int capacity); // 0x10117090 + public sealed override void GetBinaryForm(byte[] binaryForm, int offset); // 0x10116FA0 + public void Purge(SecurityIdentifier sid); // 0x10116FF0 + public void RemoveInheritedAces(); // 0x10117040 +} + +// Namespace: System.Security.AccessControl +public abstract class CommonObjectSecurity : ObjectSecurity // TypeDefIndex: 1215 +{ + // Fields + private List`1 access_rules; // 0x10 + private List`1 audit_rules; // 0x14 + + // Methods + protected void .ctor(bool isContainer); // 0x10117B80 + public AuthorizationRuleCollection GetAccessRules(bool includeExplicit, bool includeInherited, Type targetType); // 0x101173F0 + public AuthorizationRuleCollection GetAuditRules(bool includeExplicit, bool includeInherited, Type targetType); // 0x10117440 + protected void AddAccessRule(AccessRule rule); // 0x10117350 + protected bool RemoveAccessRule(AccessRule rule); // 0x10117950 + protected void RemoveAccessRuleAll(AccessRule rule); // 0x101178B0 + protected void RemoveAccessRuleSpecific(AccessRule rule); // 0x10117900 + protected void ResetAccessRule(AccessRule rule); // 0x10117A90 + protected void SetAccessRule(AccessRule rule); // 0x10117AE0 + protected override bool ModifyAccess(AccessControlModification modification, AccessRule rule, out bool modified); // 0x10117490 + protected void AddAuditRule(AuditRule rule); // 0x101173A0 + protected bool RemoveAuditRule(AuditRule rule); // 0x10117A40 + protected void RemoveAuditRuleAll(AuditRule rule); // 0x101179A0 + protected void RemoveAuditRuleSpecific(AuditRule rule); // 0x101179F0 + protected void SetAuditRule(AuditRule rule); // 0x10117B30 + protected override bool ModifyAudit(AccessControlModification modification, AuditRule rule, out bool modified); // 0x101176A0 +} + +// Namespace: System.Security.AccessControl +public sealed class CommonSecurityDescriptor : GenericSecurityDescriptor // TypeDefIndex: 1216 +{ + // Fields + private bool isContainer; // 0x08 + private bool isDS; // 0x09 + private ControlFlags flags; // 0x0C + private SecurityIdentifier owner; // 0x10 + private SecurityIdentifier group; // 0x14 + private SystemAcl systemAcl; // 0x18 + private DiscretionaryAcl discretionaryAcl; // 0x1C + + // Properties + public override ControlFlags ControlFlags { get; } // 0x100C5B30 + public DiscretionaryAcl DiscretionaryAcl { get; set; } // 0x100F85F0 0x10113F50 + public override SecurityIdentifier Group { get; set; } // 0x100EF0C0 0x10127B00 + public bool IsContainer { get; } // 0x100EA020 + public bool IsDiscretionaryAclCanonical { get; } // 0x10288550 + public bool IsDS { get; } // 0x10117290 + public bool IsSystemAclCanonical { get; } // 0x102885A0 + public override SecurityIdentifier Owner { get; set; } // 0x100BFC20 0x100C5B40 + public SystemAcl SystemAcl { get; set; } // 0x100EE580 0x10113F40 + + // Methods + public void .ctor(bool isContainer, bool isDS, RawSecurityDescriptor rawSecurityDescriptor); // 0x10288490 + public void .ctor(bool isContainer, bool isDS, string sddlForm); // 0x102884F0 + public void .ctor(bool isContainer, bool isDS, byte[] binaryForm, int offset); // 0x10288430 + public void .ctor(bool isContainer, bool isDS, ControlFlags flags, SecurityIdentifier owner, SecurityIdentifier group, SystemAcl systemAcl, DiscretionaryAcl discretionaryAcl); // 0x10288390 + public void PurgeAccessControl(SecurityIdentifier sid); // 0x10288250 + public void PurgeAudit(SecurityIdentifier sid); // 0x102882A0 + public void SetDiscretionaryAclProtection(bool isProtected, bool preserveInheritance); // 0x102882F0 + public void SetSystemAclProtection(bool isProtected, bool preserveInheritance); // 0x10288340 +} + +// Namespace: System.Security.AccessControl +public sealed class CompoundAce : KnownAce // TypeDefIndex: 1217 +{ + // Fields + private CompoundAceType compound_ace_type; // 0x20 + + // Properties + public override int BinaryLength { get; } // 0x10288680 + public CompoundAceType CompoundAceType { get; set; } // 0x100EACD0 0x100EB230 + + // Methods + public void .ctor(AceFlags flags, int accessMask, CompoundAceType compoundAceType, SecurityIdentifier sid); // 0x10288640 + public override void GetBinaryForm(byte[] binaryForm, int offset); // 0x102885F0 +} + +// Namespace: System.Security.AccessControl +public enum CompoundAceType // TypeDefIndex: 1218 +{ + Impersonation = 1 +} + +// Namespace: System.Security.AccessControl +public enum ControlFlags // TypeDefIndex: 1219 +{ + None = 0, + OwnerDefaulted = 1, + GroupDefaulted = 2, + DiscretionaryAclPresent = 4, + DiscretionaryAclDefaulted = 8, + SystemAclPresent = 16, + SystemAclDefaulted = 32, + DiscretionaryAclUntrusted = 64, + ServerSecurity = 128, + DiscretionaryAclAutoInheritRequired = 256, + SystemAclAutoInheritRequired = 512, + DiscretionaryAclAutoInherited = 1024, + SystemAclAutoInherited = 2048, + DiscretionaryAclProtected = 4096, + SystemAclProtected = 8192, + RMControlValid = 16384, + SelfRelative = 32768 +} + +// Namespace: System.Security.AccessControl +public sealed class CryptoKeyAccessRule : AccessRule // TypeDefIndex: 1220 +{ + // Fields + private CryptoKeyRights rights; // 0x20 + + // Properties + public CryptoKeyRights CryptoKeyRights { get; } // 0x100EACD0 + + // Methods + public void .ctor(IdentityReference identity, CryptoKeyRights cryptoKeyRights, AccessControlType type); // 0x1028A8F0 + public void .ctor(string identity, CryptoKeyRights cryptoKeyRights, AccessControlType type); // 0x1028A920 +} + +// Namespace: System.Security.AccessControl +public sealed class CryptoKeyAuditRule : AuditRule // TypeDefIndex: 1221 +{ + // Fields + private CryptoKeyRights rights; // 0x20 + + // Properties + public CryptoKeyRights CryptoKeyRights { get; } // 0x100EACD0 + + // Methods + public void .ctor(IdentityReference identity, CryptoKeyRights cryptoKeyRights, AuditFlags flags); // 0x1028A980 + public void .ctor(string identity, CryptoKeyRights cryptoKeyRights, AuditFlags flags); // 0x1028A9B0 +} + +// Namespace: System.Security.AccessControl +public enum CryptoKeyRights // TypeDefIndex: 1222 +{ + GenericRead = -2147483648, + ReadData = 1, + WriteData = 2, + ReadExtendedAttributes = 8, + WriteExtendedAttributes = 16, + ReadAttributes = 128, + WriteAttributes = 256, + Delete = 65536, + ReadPermissions = 131072, + ChangePermissions = 262144, + TakeOwnership = 524288, + Synchronize = 1048576, + FullControl = 2032027, + GenericAll = 268435456, + GenericExecute = 536870912, + GenericWrite = 1073741824 +} + +// Namespace: System.Security.AccessControl +public sealed class CryptoKeySecurity : NativeObjectSecurity // TypeDefIndex: 1223 +{ + // Properties + public override Type AccessRightType { get; } // 0x1028AE80 + public override Type AccessRuleType { get; } // 0x1028AED0 + public override Type AuditRuleType { get; } // 0x1028AF20 + + // Methods + public void .ctor(); // 0x1028AE60 + public void .ctor(CommonSecurityDescriptor securityDescriptor); // 0x1028AE40 + public sealed override AccessRule AccessRuleFactory(IdentityReference identityReference, int accessMask, bool isInherited, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AccessControlType type); // 0x1028AA10 + public void AddAccessRule(CryptoKeyAccessRule rule); // 0x1028AA70 + public bool RemoveAccessRule(CryptoKeyAccessRule rule); // 0x1028AC10 + public void RemoveAccessRuleAll(CryptoKeyAccessRule rule); // 0x1028AB70 + public void RemoveAccessRuleSpecific(CryptoKeyAccessRule rule); // 0x1028ABC0 + public void ResetAccessRule(CryptoKeyAccessRule rule); // 0x1028AD50 + public void SetAccessRule(CryptoKeyAccessRule rule); // 0x1028ADA0 + public sealed override AuditRule AuditRuleFactory(IdentityReference identityReference, int accessMask, bool isInherited, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AuditFlags flags); // 0x1028AB10 + public void AddAuditRule(CryptoKeyAuditRule rule); // 0x1028AAC0 + public bool RemoveAuditRule(CryptoKeyAuditRule rule); // 0x1028AD00 + public void RemoveAuditRuleAll(CryptoKeyAuditRule rule); // 0x1028AC60 + public void RemoveAuditRuleSpecific(CryptoKeyAuditRule rule); // 0x1028ACB0 + public void SetAuditRule(CryptoKeyAuditRule rule); // 0x1028ADF0 +} + +// Namespace: System.Security.AccessControl +public sealed class CustomAce : GenericAce // TypeDefIndex: 1224 +{ + // Fields + private byte[] opaque; // 0x18 + public static readonly int MaxOpaqueLength; // 0x00 + + // Properties + public override int BinaryLength { get; } // 0x1028C5F0 + public int OpaqueLength { get; } // 0x1028C640 + + // Methods + public void .ctor(AceType type, AceFlags flags, byte[] opaque); // 0x1028C4F0 + public override void GetBinaryForm(byte[] binaryForm, int offset); // 0x1028C390 + public byte[] GetOpaque(); // 0x1028C3E0 + public void SetOpaque(byte[] opaque); // 0x1028C450 +} + +// Namespace: System.Security.AccessControl +public abstract class DirectoryObjectSecurity : ObjectSecurity // TypeDefIndex: 1225 +{ + // Methods + protected void .ctor(); // 0x102907F0 + protected void .ctor(CommonSecurityDescriptor securityDescriptor); // 0x10290810 + public virtual AccessRule AccessRuleFactory(IdentityReference identityReference, int accessMask, bool isInherited, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AccessControlType type, Guid objectType, Guid inheritedObjectType); // 0x102902A0 + public virtual AuditRule AuditRuleFactory(IdentityReference identityReference, int accessMask, bool isInherited, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AuditFlags flags, Guid objectType, Guid inheritedObjectType); // 0x10290390 + public AuthorizationRuleCollection GetAccessRules(bool includeExplicit, bool includeInherited, Type targetType); // 0x102903E0 + public AuthorizationRuleCollection GetAuditRules(bool includeExplicit, bool includeInherited, Type targetType); // 0x10290430 + protected void AddAccessRule(ObjectAccessRule rule); // 0x102902F0 + protected void AddAuditRule(ObjectAuditRule rule); // 0x10290340 + protected override bool ModifyAccess(AccessControlModification modification, AccessRule rule, out bool modified); // 0x10290480 + protected override bool ModifyAudit(AccessControlModification modification, AuditRule rule, out bool modified); // 0x102904D0 + protected bool RemoveAccessRule(ObjectAccessRule rule); // 0x102905C0 + protected void RemoveAccessRuleAll(ObjectAccessRule rule); // 0x10290520 + protected void RemoveAccessRuleSpecific(ObjectAccessRule rule); // 0x10290570 + protected bool RemoveAuditRule(ObjectAuditRule rule); // 0x102906B0 + protected void RemoveAuditRuleAll(ObjectAuditRule rule); // 0x10290610 + protected void RemoveAuditRuleSpecific(ObjectAuditRule rule); // 0x10290660 + protected void ResetAccessRule(ObjectAccessRule rule); // 0x10290700 + protected void SetAccessRule(ObjectAccessRule rule); // 0x10290750 + protected void SetAuditRule(ObjectAuditRule rule); // 0x102907A0 +} + +// Namespace: System.Security.AccessControl +public sealed class DirectorySecurity : FileSystemSecurity // TypeDefIndex: 1226 +{ + // Methods + public void .ctor(); // 0x10290900 + public void .ctor(string name, AccessControlSections includeSections); // 0x102908A0 +} + +// Namespace: System.Security.AccessControl +public sealed class DiscretionaryAcl : CommonAcl // TypeDefIndex: 1227 +{ + // Methods + public void .ctor(bool isContainer, bool isDS, int capacity); // 0x10290C00 + public void .ctor(bool isContainer, bool isDS, RawAcl rawAcl); // 0x10290BE0 + public void .ctor(bool isContainer, bool isDS, byte revision, int capacity); // 0x10290C60 + public void AddAccess(AccessControlType accessType, SecurityIdentifier sid, int accessMask, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags); // 0x10290960 + public void AddAccess(AccessControlType accessType, SecurityIdentifier sid, int accessMask, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, ObjectAceFlags objectFlags, Guid objectType, Guid inheritedObjectType); // 0x102909B0 + public bool RemoveAccess(AccessControlType accessType, SecurityIdentifier sid, int accessMask, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags); // 0x10290AA0 + public bool RemoveAccess(AccessControlType accessType, SecurityIdentifier sid, int accessMask, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, ObjectAceFlags objectFlags, Guid objectType, Guid inheritedObjectType); // 0x10290AF0 + public void RemoveAccessSpecific(AccessControlType accessType, SecurityIdentifier sid, int accessMask, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags); // 0x10290A00 + public void RemoveAccessSpecific(AccessControlType accessType, SecurityIdentifier sid, int accessMask, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, ObjectAceFlags objectFlags, Guid objectType, Guid inheritedObjectType); // 0x10290A50 + public void SetAccess(AccessControlType accessType, SecurityIdentifier sid, int accessMask, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags); // 0x10290B90 + public void SetAccess(AccessControlType accessType, SecurityIdentifier sid, int accessMask, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, ObjectAceFlags objectFlags, Guid objectType, Guid inheritedObjectType); // 0x10290B40 +} + +// Namespace: System.Security.AccessControl +public sealed class EventWaitHandleAccessRule : AccessRule // TypeDefIndex: 1228 +{ + // Fields + private EventWaitHandleRights rights; // 0x20 + + // Properties + public EventWaitHandleRights EventWaitHandleRights { get; } // 0x100EACD0 + + // Methods + public void .ctor(IdentityReference identity, EventWaitHandleRights eventRights, AccessControlType type); // 0x1028A8F0 + public void .ctor(string identity, EventWaitHandleRights eventRights, AccessControlType type); // 0x10290C70 +} + +// Namespace: System.Security.AccessControl +public sealed class EventWaitHandleAuditRule : AuditRule // TypeDefIndex: 1229 +{ + // Fields + private EventWaitHandleRights rights; // 0x20 + + // Properties + public EventWaitHandleRights EventWaitHandleRights { get; } // 0x100EACD0 + + // Methods + public void .ctor(IdentityReference identity, EventWaitHandleRights eventRights, AuditFlags flags); // 0x10290CD0 +} + +// Namespace: System.Security.AccessControl +public enum EventWaitHandleRights // TypeDefIndex: 1230 +{ + Modify = 2, + Delete = 65536, + ReadPermissions = 131072, + ChangePermissions = 262144, + TakeOwnership = 524288, + Synchronize = 1048576, + FullControl = 2031619 +} + +// Namespace: System.Security.AccessControl +public sealed class EventWaitHandleSecurity : NativeObjectSecurity // TypeDefIndex: 1231 +{ + // Properties + public override Type AccessRightType { get; } // 0x10291390 + public override Type AccessRuleType { get; } // 0x102913E0 + public override Type AuditRuleType { get; } // 0x10291430 + + // Methods + public void .ctor(); // 0x10291330 + public override AccessRule AccessRuleFactory(IdentityReference identityReference, int accessMask, bool isInherited, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AccessControlType type); // 0x10290E00 + public void AddAccessRule(EventWaitHandleAccessRule rule); // 0x10290E60 + public bool RemoveAccessRule(EventWaitHandleAccessRule rule); // 0x10291100 + public void RemoveAccessRuleAll(EventWaitHandleAccessRule rule); // 0x10291060 + public void RemoveAccessRuleSpecific(EventWaitHandleAccessRule rule); // 0x102910B0 + public void ResetAccessRule(EventWaitHandleAccessRule rule); // 0x10291240 + public void SetAccessRule(EventWaitHandleAccessRule rule); // 0x10291290 + public override AuditRule AuditRuleFactory(IdentityReference identityReference, int accessMask, bool isInherited, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AuditFlags flags); // 0x10290F00 + public void AddAuditRule(EventWaitHandleAuditRule rule); // 0x10290EB0 + public bool RemoveAuditRule(EventWaitHandleAuditRule rule); // 0x102911F0 + public void RemoveAuditRuleAll(EventWaitHandleAuditRule rule); // 0x10291150 + public void RemoveAuditRuleSpecific(EventWaitHandleAuditRule rule); // 0x102911A0 + public void SetAuditRule(EventWaitHandleAuditRule rule); // 0x102912E0 +} + +// Namespace: System.Security.AccessControl +public sealed class FileSecurity : FileSystemSecurity // TypeDefIndex: 1232 +{ + // Methods + public void .ctor(); // 0x102917D0 + public void .ctor(string fileName, AccessControlSections includeSections); // 0x10291770 +} + +// Namespace: System.Security.AccessControl +public sealed class FileSystemAccessRule : AccessRule // TypeDefIndex: 1233 +{ + // Fields + private FileSystemRights rights; // 0x20 + + // Properties + public FileSystemRights FileSystemRights { get; } // 0x100EACD0 + + // Methods + public void .ctor(IdentityReference identity, FileSystemRights fileSystemRights, AccessControlType type); // 0x10291890 + public void .ctor(string identity, FileSystemRights fileSystemRights, AccessControlType type); // 0x102918F0 + public void .ctor(IdentityReference identity, FileSystemRights fileSystemRights, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AccessControlType type); // 0x102918C0 + public void .ctor(string identity, FileSystemRights fileSystemRights, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AccessControlType type); // 0x10291830 +} + +// Namespace: System.Security.AccessControl +public sealed class FileSystemAuditRule : AuditRule // TypeDefIndex: 1234 +{ + // Fields + private FileSystemRights rights; // 0x20 + + // Properties + public FileSystemRights FileSystemRights { get; } // 0x100EACD0 + + // Methods + public void .ctor(IdentityReference identity, FileSystemRights fileSystemRights, AuditFlags flags); // 0x1028A980 + public void .ctor(string identity, FileSystemRights fileSystemRights, AuditFlags flags); // 0x102919B0 + public void .ctor(IdentityReference identity, FileSystemRights fileSystemRights, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AuditFlags flags); // 0x10291A10 + public void .ctor(string identity, FileSystemRights fileSystemRights, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AuditFlags flags); // 0x10291950 +} + +// Namespace: System.Security.AccessControl +public enum FileSystemRights // TypeDefIndex: 1235 +{ + ListDirectory = 1, + ReadData = 1, + CreateFiles = 2, + WriteData = 2, + AppendData = 4, + CreateDirectories = 4, + ReadExtendedAttributes = 8, + WriteExtendedAttributes = 16, + ExecuteFile = 32, + Traverse = 32, + DeleteSubdirectoriesAndFiles = 64, + ReadAttributes = 128, + WriteAttributes = 256, + Write = 278, + Delete = 65536, + ReadPermissions = 131072, + Read = 131209, + ReadAndExecute = 131241, + Modify = 197055, + ChangePermissions = 262144, + TakeOwnership = 524288, + Synchronize = 1048576, + FullControl = 2032127 +} + +// Namespace: System.Security.AccessControl +public abstract class FileSystemSecurity : NativeObjectSecurity // TypeDefIndex: 1236 +{ + // Properties + public override Type AccessRightType { get; } // 0x10291EA0 + public override Type AccessRuleType { get; } // 0x10291EF0 + public override Type AuditRuleType { get; } // 0x10291F40 + + // Methods + internal void .ctor(bool isContainer); // 0x10291E70 + internal void .ctor(bool isContainer, string name, AccessControlSections includeSections); // 0x10291E80 + public sealed override AccessRule AccessRuleFactory(IdentityReference identityReference, int accessMask, bool isInherited, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AccessControlType type); // 0x10291A40 + public void AddAccessRule(FileSystemAccessRule rule); // 0x10291AA0 + public bool RemoveAccessRule(FileSystemAccessRule rule); // 0x10291C40 + public void RemoveAccessRuleAll(FileSystemAccessRule rule); // 0x10291BA0 + public void RemoveAccessRuleSpecific(FileSystemAccessRule rule); // 0x10291BF0 + public void ResetAccessRule(FileSystemAccessRule rule); // 0x10291D80 + public void SetAccessRule(FileSystemAccessRule rule); // 0x10291DD0 + public sealed override AuditRule AuditRuleFactory(IdentityReference identityReference, int accessMask, bool isInherited, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AuditFlags flags); // 0x10291B40 + public void AddAuditRule(FileSystemAuditRule rule); // 0x10291AF0 + public bool RemoveAuditRule(FileSystemAuditRule rule); // 0x10291D30 + public void RemoveAuditRuleAll(FileSystemAuditRule rule); // 0x10291C90 + public void RemoveAuditRuleSpecific(FileSystemAuditRule rule); // 0x10291CE0 + public void SetAuditRule(FileSystemAuditRule rule); // 0x10291E20 +} + +// Namespace: System.Security.AccessControl +public abstract class GenericAce // TypeDefIndex: 1237 +{ + // Fields + private InheritanceFlags inheritance; // 0x08 + private PropagationFlags propagation; // 0x0C + private AceFlags aceflags; // 0x10 + private AceType ace_type; // 0x14 + + // Properties + public AceFlags AceFlags { get; set; } // 0x101137C0 0x10246B70 + public AceType AceType { get; } // 0x100EF0C0 + public AuditFlags AuditFlags { get; } // 0x10292C80 + public abstract int BinaryLength { get; } + public InheritanceFlags InheritanceFlags { get; } // 0x100BF0C0 + public bool IsInherited { get; } // 0x100EFBF0 + public PropagationFlags PropagationFlags { get; } // 0x100C5B30 + + // Methods + internal void .ctor(InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags); // 0x100F97B0 + internal void .ctor(AceType type); // 0x10292C10 + public GenericAce Copy(); // 0x10292AD0 + public static GenericAce CreateFromBinaryForm(byte[] binaryForm, int offset); // 0x10292B20 + public sealed override bool Equals(object o); // 0x10292B70 + public abstract void GetBinaryForm(byte[] binaryForm, int offset); + public sealed override int GetHashCode(); // 0x10292BC0 + public static bool op_Equality(GenericAce left, GenericAce right); // 0x10292CA0 + public static bool op_Inequality(GenericAce left, GenericAce right); // 0x10292CF0 +} + +// Namespace: System.Security.AccessControl +public abstract class GenericAcl : IEnumerable, ICollection // TypeDefIndex: 1238 +{ + // Fields + public static readonly byte AclRevision; // 0x00 + public static readonly byte AclRevisionDS; // 0x01 + public static readonly int MaxBinaryLength; // 0x04 + + // Properties + public abstract int BinaryLength { get; } + public abstract int Count { get; } + public bool IsSynchronized { get; } // 0x100EFBF0 + public abstract GenericAce Item { get; set; } + public abstract byte Revision { get; } + public object SyncRoot { get; } // 0x100F7810 + + // Methods + protected void .ctor(); // 0x100BF000 + private static void .cctor(); // 0x10292F80 + private void System.Collections.ICollection.CopyTo(Array array, int index); // 0x10292F10 + private IEnumerator System.Collections.IEnumerable.GetEnumerator(); // 0x10292EC0 + public void CopyTo(GenericAce[] array, int index); // 0x10292D40 + public abstract void GetBinaryForm(byte[] binaryForm, int offset); + public AceEnumerator GetEnumerator(); // 0x10292EC0 +} + +// Namespace: System.Security.AccessControl +public abstract class GenericSecurityDescriptor // TypeDefIndex: 1239 +{ + // Properties + public int BinaryLength { get; } // 0x102930C0 + public abstract ControlFlags ControlFlags { get; } + public abstract SecurityIdentifier Group { get; set; } + public abstract SecurityIdentifier Owner { get; set; } + public static byte Revision { get; } // 0x10293110 + + // Methods + protected void .ctor(); // 0x100BF000 + public void GetBinaryForm(byte[] binaryForm, int offset); // 0x10292FD0 + public string GetSddlForm(AccessControlSections includeSections); // 0x10293020 + public static bool IsSddlConversionSupported(); // 0x10293070 +} + +// Namespace: System.Security.AccessControl +public enum InheritanceFlags // TypeDefIndex: 1240 +{ + None = 0, + ContainerInherit = 1, + ObjectInherit = 2 +} + +// Namespace: System.Security.AccessControl +public abstract class KnownAce : GenericAce // TypeDefIndex: 1241 +{ + // Fields + private int access_mask; // 0x18 + private SecurityIdentifier identifier; // 0x1C + + // Properties + public int AccessMask { get; set; } // 0x100EE580 0x10113F40 + public SecurityIdentifier SecurityIdentifier { get; set; } // 0x100F85F0 0x10113F50 + + // Methods + internal void .ctor(InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags); // 0x100F97B0 +} + +// Namespace: System.Security.AccessControl +public sealed class MutexAccessRule : AccessRule // TypeDefIndex: 1242 +{ + // Fields + private MutexRights rights; // 0x20 + + // Properties + public MutexRights MutexRights { get; } // 0x100EACD0 + + // Methods + public void .ctor(IdentityReference identity, MutexRights eventRights, AccessControlType type); // 0x10297080 + public void .ctor(string identity, MutexRights eventRights, AccessControlType type); // 0x10297020 +} + +// Namespace: System.Security.AccessControl +public sealed class MutexAuditRule : AuditRule // TypeDefIndex: 1243 +{ + // Fields + private MutexRights rights; // 0x20 + + // Properties + public MutexRights MutexRights { get; } // 0x100EACD0 + + // Methods + public void .ctor(IdentityReference identity, MutexRights eventRights, AuditFlags flags); // 0x1028A980 +} + +// Namespace: System.Security.AccessControl +public enum MutexRights // TypeDefIndex: 1244 +{ + Modify = 1, + Delete = 65536, + ReadPermissions = 131072, + ChangePermissions = 262144, + TakeOwnership = 524288, + Synchronize = 1048576, + FullControl = 2031617 +} + +// Namespace: System.Security.AccessControl +public sealed class MutexSecurity : NativeObjectSecurity // TypeDefIndex: 1245 +{ + // Properties + public override Type AccessRightType { get; } // 0x102974E0 + public override Type AccessRuleType { get; } // 0x10297530 + public override Type AuditRuleType { get; } // 0x10297580 + + // Methods + public void .ctor(); // 0x1028AE60 + public void .ctor(string name, AccessControlSections includeSections); // 0x1028AE60 + public override AccessRule AccessRuleFactory(IdentityReference identityReference, int accessMask, bool isInherited, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AccessControlType type); // 0x102970B0 + public void AddAccessRule(MutexAccessRule rule); // 0x10297110 + public bool RemoveAccessRule(MutexAccessRule rule); // 0x102972B0 + public void RemoveAccessRuleAll(MutexAccessRule rule); // 0x10297210 + public void RemoveAccessRuleSpecific(MutexAccessRule rule); // 0x10297260 + public void ResetAccessRule(MutexAccessRule rule); // 0x102973F0 + public void SetAccessRule(MutexAccessRule rule); // 0x10297440 + public override AuditRule AuditRuleFactory(IdentityReference identityReference, int accessMask, bool isInherited, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AuditFlags flags); // 0x102971B0 + public void AddAuditRule(MutexAuditRule rule); // 0x10297160 + public bool RemoveAuditRule(MutexAuditRule rule); // 0x102973A0 + public void RemoveAuditRuleAll(MutexAuditRule rule); // 0x10297300 + public void RemoveAuditRuleSpecific(MutexAuditRule rule); // 0x10297350 + public void SetAuditRule(MutexAuditRule rule); // 0x10297490 +} + +// Namespace: System.Security.AccessControl +public abstract class NativeObjectSecurity : CommonObjectSecurity // TypeDefIndex: 1246 +{ + // Methods + internal void .ctor(); // 0x1028AE60 + protected void .ctor(bool isContainer, ResourceType resourceType); // 0x10291E80 + protected void .ctor(bool isContainer, ResourceType resourceType, ExceptionFromErrorCode exceptionFromErrorCode, object exceptionContext); // 0x10291E80 + protected void .ctor(bool isContainer, ResourceType resourceType, SafeHandle handle, AccessControlSections includeSections); // 0x10291E80 + protected void .ctor(bool isContainer, ResourceType resourceType, string name, AccessControlSections includeSections); // 0x10291E80 + protected void .ctor(bool isContainer, ResourceType resourceType, SafeHandle handle, AccessControlSections includeSections, ExceptionFromErrorCode exceptionFromErrorCode, object exceptionContext); // 0x10291E80 + protected void .ctor(bool isContainer, ResourceType resourceType, string name, AccessControlSections includeSections, ExceptionFromErrorCode exceptionFromErrorCode, object exceptionContext); // 0x10291E80 + protected sealed override void Persist(SafeHandle handle, AccessControlSections includeSections); // 0x10297620 + protected sealed override void Persist(string name, AccessControlSections includeSections); // 0x102975D0 + protected void Persist(SafeHandle handle, AccessControlSections includeSections, object exceptionContext); // 0x102976C0 + protected void Persist(string name, AccessControlSections includeSections, object exceptionContext); // 0x10297670 +} + +// Namespace: +protected internal delegate Exception ExceptionFromErrorCode(int errorCode, string name, SafeHandle handle, object context); // TypeDefIndex: 1247; 0x102914F0 + +// Namespace: System.Security.AccessControl +public abstract class ObjectAccessRule : AccessRule // TypeDefIndex: 1248 +{ + // Fields + private Guid object_type; // 0x20 + private Guid inherited_object_type; // 0x30 + + // Properties + public Guid InheritedObjectType { get; } // 0x10297750 + public ObjectAceFlags ObjectFlags { get; } // 0x10297770 + public Guid ObjectType { get; } // 0x10168A50 + + // Methods + protected void .ctor(IdentityReference identity, int accessMask, bool isInherited, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, Guid objectType, Guid inheritedObjectType, AccessControlType type); // 0x10297710 +} + +// Namespace: System.Security.AccessControl +public sealed class ObjectAce : QualifiedAce // TypeDefIndex: 1249 +{ + // Fields + private Guid object_ace_type; // 0x2C + private Guid inherited_object_type; // 0x3C + private ObjectAceFlags object_ace_flags; // 0x4C + + // Properties + public override int BinaryLength { get; } // 0x102979D0 + public Guid InheritedObjectAceType { get; set; } // 0x10297A20 0x10297A60 + public ObjectAceFlags ObjectAceFlags { get; set; } // 0x10145570 0x10145600 + public Guid ObjectAceType { get; set; } // 0x10297A40 0x10297A70 + + // Methods + public void .ctor(AceFlags aceFlags, AceQualifier qualifier, int accessMask, SecurityIdentifier sid, ObjectAceFlags flags, Guid type, Guid inheritedType, bool isCallback, byte[] opaque); // 0x102978F0 + public override void GetBinaryForm(byte[] binaryForm, int offset); // 0x10297850 + public static int MaxOpaqueLength(bool isCallback); // 0x102978A0 +} + +// Namespace: System.Security.AccessControl +public enum ObjectAceFlags // TypeDefIndex: 1250 +{ + None = 0, + ObjectAceTypePresent = 1, + InheritedObjectAceTypePresent = 2 +} + +// Namespace: System.Security.AccessControl +public abstract class ObjectAuditRule : AuditRule // TypeDefIndex: 1251 +{ + // Fields + private Guid inherited_object_type; // 0x20 + private Guid object_type; // 0x30 + + // Properties + public Guid InheritedObjectType { get; } // 0x10168A50 + public ObjectAceFlags ObjectFlags { get; } // 0x10297AC0 + public Guid ObjectType { get; } // 0x10297750 + + // Methods + protected void .ctor(IdentityReference identity, int accessMask, bool isInherited, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, Guid objectType, Guid inheritedObjectType, AuditFlags auditFlags); // 0x10297A80 +} + +// Namespace: System.Security.AccessControl +public abstract class ObjectSecurity // TypeDefIndex: 1252 +{ + // Fields + private bool is_container; // 0x08 + private bool is_ds; // 0x09 + private bool access_rules_modified; // 0x0A + private bool audit_rules_modified; // 0x0B + private bool group_modified; // 0x0C + private bool owner_modified; // 0x0D + + // Properties + public abstract Type AccessRightType { get; } + public abstract Type AccessRuleType { get; } + public abstract Type AuditRuleType { get; } + public bool AreAccessRulesCanonical { get; } // 0x10298320 + public bool AreAccessRulesProtected { get; } // 0x10298370 + public bool AreAuditRulesCanonical { get; } // 0x102983C0 + public bool AreAuditRulesProtected { get; } // 0x10298410 + protected bool AccessRulesModified { get; set; } // 0x101172F0 0x10155010 + protected bool AuditRulesModified { get; set; } // 0x10154FF0 0x10155030 + protected bool GroupModified { get; set; } // 0x100F8910 0x1016CBD0 + protected bool IsContainer { get; } // 0x100EA020 + protected bool IsDS { get; } // 0x10117290 + protected bool OwnerModified { get; set; } // 0x10298460 0x10298470 + + // Methods + internal void .ctor(); // 0x100BF000 + protected void .ctor(bool isContainer, bool isDS); // 0x10261430 + public abstract AccessRule AccessRuleFactory(IdentityReference identityReference, int accessMask, bool isInherited, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AccessControlType type); + public abstract AuditRule AuditRuleFactory(IdentityReference identityReference, int accessMask, bool isInherited, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AuditFlags flags); + public IdentityReference GetGroup(Type targetType); // 0x10297BA0 + public IdentityReference GetOwner(Type targetType); // 0x10297BF0 + public byte[] GetSecurityDescriptorBinaryForm(); // 0x10297C40 + public string GetSecurityDescriptorSddlForm(AccessControlSections includeSections); // 0x10297C90 + public static bool IsSddlConversionSupported(); // 0x10297CE0 + public virtual bool ModifyAccessRule(AccessControlModification modification, AccessRule rule, out bool modified); // 0x10297D30 + public virtual bool ModifyAuditRule(AccessControlModification modification, AuditRule rule, out bool modified); // 0x10297D80 + public virtual void PurgeAccessRules(IdentityReference identity); // 0x10297EC0 + public virtual void PurgeAuditRules(IdentityReference identity); // 0x10297F10 + public void SetAccessRuleProtection(bool isProtected, bool preserveInheritance); // 0x10298000 + public void SetAuditRuleProtection(bool isProtected, bool preserveInheritance); // 0x10298050 + public void SetGroup(IdentityReference identity); // 0x102980A0 + public void SetOwner(IdentityReference identity); // 0x102980F0 + public void SetSecurityDescriptorBinaryForm(byte[] binaryForm); // 0x10298190 + public void SetSecurityDescriptorBinaryForm(byte[] binaryForm, AccessControlSections includeSections); // 0x10298140 + public void SetSecurityDescriptorSddlForm(string sddlForm); // 0x10298230 + public void SetSecurityDescriptorSddlForm(string sddlForm, AccessControlSections includeSections); // 0x102981E0 + protected abstract bool ModifyAccess(AccessControlModification modification, AccessRule rule, out bool modified); + protected abstract bool ModifyAudit(AccessControlModification modification, AuditRule rule, out bool modified); + protected virtual void Persist(SafeHandle handle, AccessControlSections includeSections); // 0x10297DD0 + protected virtual void Persist(string name, AccessControlSections includeSections); // 0x10297E20 + protected virtual void Persist(bool enableOwnershipPrivilege, string name, AccessControlSections includeSections); // 0x10297E70 + protected void ReadLock(); // 0x10297F60 + protected void ReadUnlock(); // 0x10297FB0 + protected void WriteLock(); // 0x10298280 + protected void WriteUnlock(); // 0x102982D0 +} + +// Namespace: System.Security.AccessControl +[Serializable] +public sealed class PrivilegeNotHeldException : UnauthorizedAccessException, ISerializable // TypeDefIndex: 1253 +{ + // Properties + public string PrivilegeName { get; } // 0x10298500 + + // Methods + public void .ctor(); // 0x102984E0 + public void .ctor(string privilege); // 0x102984D0 + public void .ctor(string privilege, Exception inner); // 0x102984F0 + public override void GetObjectData(SerializationInfo info, StreamingContext context); // 0x10298480 +} + +// Namespace: System.Security.AccessControl +public enum PropagationFlags // TypeDefIndex: 1254 +{ + None = 0, + NoPropagateInherit = 1, + InheritOnly = 2 +} + +// Namespace: System.Security.AccessControl +public abstract class QualifiedAce : KnownAce // TypeDefIndex: 1255 +{ + // Fields + private AceQualifier ace_qualifier; // 0x20 + private bool is_callback; // 0x24 + private byte[] opaque; // 0x28 + + // Properties + public AceQualifier AceQualifier { get; } // 0x100EACD0 + public bool IsCallback { get; } // 0x101939C0 + public int OpaqueLength { get; } // 0x10298720 + + // Methods + internal void .ctor(InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AceQualifier aceQualifier, bool isCallback, byte[] opaque); // 0x10298660 + public byte[] GetOpaque(); // 0x10298550 + public void SetOpaque(byte[] opaque); // 0x102985C0 +} + +// Namespace: System.Security.AccessControl +public sealed class RawAcl : GenericAcl // TypeDefIndex: 1256 +{ + // Fields + private byte revision; // 0x08 + private List`1 list; // 0x0C + + // Properties + public override int BinaryLength { get; } // 0x10298910 + public override int Count { get; } // 0x10298960 + public override GenericAce Item { get; set; } // 0x102989A0 0x102989F0 + public override byte Revision { get; } // 0x100EA020 + + // Methods + public void .ctor(byte revision, int capacity); // 0x10298810 + public void .ctor(byte[] binaryForm, int offset); // 0x10298890 + public override void GetBinaryForm(byte[] binaryForm, int offset); // 0x10298740 + public void InsertAce(int index, GenericAce ace); // 0x10298790 + public void RemoveAce(int index); // 0x102987C0 +} + +// Namespace: System.Security.AccessControl +public sealed class RawSecurityDescriptor : GenericSecurityDescriptor // TypeDefIndex: 1257 +{ + // Properties + public override ControlFlags ControlFlags { get; } // 0x10298A90 + public RawAcl DiscretionaryAcl { get; set; } // 0x10298AE0 0x10298C70 + public override SecurityIdentifier Group { get; set; } // 0x10298B30 0x10298CC0 + public override SecurityIdentifier Owner { get; set; } // 0x10298B80 0x10298D10 + public byte ResourceManagerControl { get; set; } // 0x10298BD0 0x10298D60 + public RawAcl SystemAcl { get; set; } // 0x10298C20 0x10298DB0 + + // Methods + public void .ctor(string sddlForm); // 0x101AA300 + public void .ctor(byte[] binaryForm, int offset); // 0x101AA300 + public void .ctor(ControlFlags flags, SecurityIdentifier owner, SecurityIdentifier group, RawAcl systemAcl, RawAcl discretionaryAcl); // 0x101AA300 + public void SetFlags(ControlFlags flags); // 0x10298A40 +} + +// Namespace: System.Security.AccessControl +public sealed class RegistryAccessRule : AccessRule // TypeDefIndex: 1258 +{ + // Fields + private RegistryRights rights; // 0x20 + + // Properties + public RegistryRights RegistryRights { get; } // 0x100EACD0 + + // Methods + public void .ctor(IdentityReference identity, RegistryRights registryRights, AccessControlType type); // 0x10297080 + public void .ctor(string identity, RegistryRights registryRights, AccessControlType type); // 0x10298E90 + public void .ctor(IdentityReference identity, RegistryRights registryRights, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AccessControlType type); // 0x10298E60 + public void .ctor(string identity, RegistryRights registryRights, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AccessControlType type); // 0x10298E00 +} + +// Namespace: System.Security.AccessControl +public sealed class RegistryAuditRule : AuditRule // TypeDefIndex: 1259 +{ + // Fields + private RegistryRights rights; // 0x20 + + // Properties + public RegistryRights RegistryRights { get; } // 0x100EACD0 + + // Methods + public void .ctor(IdentityReference identity, RegistryRights registryRights, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AuditFlags flags); // 0x10291A10 + public void .ctor(string identity, RegistryRights registryRights, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AuditFlags flags); // 0x10298EF0 +} + +// Namespace: System.Security.AccessControl +public enum RegistryRights // TypeDefIndex: 1260 +{ + QueryValues = 1, + SetValue = 2, + CreateSubKey = 4, + EnumerateSubKeys = 8, + Notify = 16, + CreateLink = 32, + Delete = 65536, + ReadPermissions = 131072, + WriteKey = 131078, + ReadKey = 131097, + ExecuteKey = 131097, + ChangePermissions = 262144, + TakeOwnership = 524288, + FullControl = 983103 +} + +// Namespace: System.Security.AccessControl +public sealed class RegistrySecurity : NativeObjectSecurity // TypeDefIndex: 1261 +{ + // Properties + public override Type AccessRightType { get; } // 0x10299380 + public override Type AccessRuleType { get; } // 0x102993D0 + public override Type AuditRuleType { get; } // 0x10299420 + + // Methods + public void .ctor(); // 0x1028AE60 + public override AccessRule AccessRuleFactory(IdentityReference identityReference, int accessMask, bool isInherited, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AccessControlType type); // 0x10298F50 + public void AddAccessRule(RegistryAccessRule rule); // 0x10298FB0 + public void AddAuditRule(RegistryAuditRule rule); // 0x10299000 + public override AuditRule AuditRuleFactory(IdentityReference identityReference, int accessMask, bool isInherited, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AuditFlags flags); // 0x10299050 + public bool RemoveAccessRule(RegistryAccessRule rule); // 0x10299150 + public void RemoveAccessRuleAll(RegistryAccessRule rule); // 0x102990B0 + public void RemoveAccessRuleSpecific(RegistryAccessRule rule); // 0x10299100 + public bool RemoveAuditRule(RegistryAuditRule rule); // 0x10299240 + public void RemoveAuditRuleAll(RegistryAuditRule rule); // 0x102991A0 + public void RemoveAuditRuleSpecific(RegistryAuditRule rule); // 0x102991F0 + public void ResetAccessRule(RegistryAccessRule rule); // 0x10299290 + public void SetAccessRule(RegistryAccessRule rule); // 0x102992E0 + public void SetAuditRule(RegistryAuditRule rule); // 0x10299330 +} + +// Namespace: System.Security.AccessControl +public enum ResourceType // TypeDefIndex: 1262 +{ + Unknown = 0, + FileObject = 1, + Service = 2, + Printer = 3, + RegistryKey = 4, + LMShare = 5, + KernelObject = 6, + WindowObject = 7, + DSObject = 8, + DSObjectAll = 9, + ProviderDefined = 10, + WmiGuidObject = 11, + RegistryWow6432Key = 12 +} + +// Namespace: System.Security.AccessControl +public enum SecurityInfos // TypeDefIndex: 1263 +{ + Owner = 1, + Group = 2, + DiscretionaryAcl = 4, + SystemAcl = 8 +} + +// Namespace: System.Security.AccessControl +public sealed class SystemAcl : CommonAcl // TypeDefIndex: 1264 +{ + // Methods + public void .ctor(bool isContainer, bool isDS, int capacity); // 0x102996F0 + public void .ctor(bool isContainer, bool isDS, RawAcl rawAcl); // 0x10299710 + public void .ctor(bool isContainer, bool isDS, byte revision, int capacity); // 0x10290C60 + public void AddAudit(AuditFlags auditFlags, SecurityIdentifier sid, int accessMask, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags); // 0x10299470 + public void AddAudit(AuditFlags auditFlags, SecurityIdentifier sid, int accessMask, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, ObjectAceFlags objectFlags, Guid objectType, Guid inheritedObjectType); // 0x102994C0 + public bool RemoveAudit(AuditFlags auditFlags, SecurityIdentifier sid, int accessMask, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags); // 0x102995B0 + public bool RemoveAudit(AuditFlags auditFlags, SecurityIdentifier sid, int accessMask, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, ObjectAceFlags objectFlags, Guid objectType, Guid inheritedObjectType); // 0x10299600 + public void RemoveAuditSpecific(AuditFlags auditFlags, SecurityIdentifier sid, int accessMask, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags); // 0x10299560 + public void RemoveAuditSpecific(AuditFlags auditFlags, SecurityIdentifier sid, int accessMask, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, ObjectAceFlags objectFlags, Guid objectType, Guid inheritedObjectType); // 0x10299510 + public void SetAudit(AuditFlags auditFlags, SecurityIdentifier sid, int accessMask, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags); // 0x10299650 + public void SetAudit(AuditFlags auditFlags, SecurityIdentifier sid, int accessMask, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, ObjectAceFlags objectFlags, Guid objectType, Guid inheritedObjectType); // 0x102996A0 +} + +// Namespace: System.Security.Cryptography.X509Certificates +[Serializable] +public class X509Certificate : ISerializable, IDeserializationCallback // TypeDefIndex: 1265 +{ + // Fields + private X509Certificate x509; // 0x08 + private bool hideDates; // 0x0C + private byte[] cachedCertificateHash; // 0x10 + private string issuer_name; // 0x14 + private string subject_name; // 0x18 + + // Properties + public string Issuer { get; } // 0x1025AC20 + public string Subject { get; } // 0x1025ACD0 + public IntPtr Handle { get; } // 0x1025ABF0 + + // Methods + internal void .ctor(byte[] data, bool dates); // 0x1025A800 + public void .ctor(byte[] data); // 0x1025ABB0 + public void .ctor(IntPtr handle); // 0x1025AB10 + public void .ctor(X509Certificate cert); // 0x1025A840 + public void .ctor(); // 0x100BF000 + public void .ctor(byte[] rawData, string password); // 0x1025A7D0 + public void .ctor(byte[] rawData, SecureString password); // 0x1025AAB0 + public void .ctor(byte[] rawData, string password, X509KeyStorageFlags keyStorageFlags); // 0x1025AA80 + public void .ctor(byte[] rawData, SecureString password, X509KeyStorageFlags keyStorageFlags); // 0x1025A980 + public void .ctor(string fileName); // 0x1025A920 + public void .ctor(string fileName, string password); // 0x1025AAE0 + public void .ctor(string fileName, SecureString password); // 0x1025A950 + public void .ctor(string fileName, string password, X509KeyStorageFlags keyStorageFlags); // 0x1025A8F0 + public void .ctor(string fileName, SecureString password, X509KeyStorageFlags keyStorageFlags); // 0x1025A7A0 + public void .ctor(SerializationInfo info, StreamingContext context); // 0x1025A9B0 + private void System.Runtime.Serialization.IDeserializationCallback.OnDeserialization(object sender); // 0x100C5530 + private void System.Runtime.Serialization.ISerializable.GetObjectData(SerializationInfo info, StreamingContext context); // 0x1025A4B0 + private string tostr(byte[] data); // 0x1025AD80 + public static X509Certificate CreateFromCertFile(string filename); // 0x10258D20 + public static X509Certificate CreateFromSignedFile(string filename); // 0x10258D90 + private void InitFromHandle(IntPtr handle); // 0x1025A1D0 + public virtual bool Equals(X509Certificate other); // 0x10259050 + public virtual byte[] GetCertHash(); // 0x10259520 + public virtual string GetCertHashString(); // 0x102594F0 + public virtual string GetEffectiveDateString(); // 0x10259680 + public virtual string GetExpirationDateString(); // 0x10259740 + public virtual string GetFormat(); // 0x10259800 + public override int GetHashCode(); // 0x10259830 + public virtual string GetIssuerName(); // 0x102598F0 + public virtual string GetKeyAlgorithm(); // 0x10259A60 + public virtual byte[] GetKeyAlgorithmParameters(); // 0x102599A0 + public virtual string GetKeyAlgorithmParametersString(); // 0x10259970 + public virtual string GetName(); // 0x10259AE0 + public virtual byte[] GetPublicKey(); // 0x10259B90 + public virtual string GetPublicKeyString(); // 0x10259B60 + public virtual byte[] GetRawCertData(); // 0x10259CA0 + public virtual string GetRawCertDataString(); // 0x10259C10 + public virtual byte[] GetSerialNumber(); // 0x10259D60 + public virtual string GetSerialNumberString(); // 0x10259D20 + public override string ToString(); // 0x1025A520 + public virtual string ToString(bool fVerbose); // 0x1025A530 + private static byte[] Load(string fileName); // 0x1025A2F0 + public override bool Equals(object obj); // 0x10258FD0 + public virtual byte[] Export(X509ContentType contentType); // 0x10259210 + public virtual byte[] Export(X509ContentType contentType, string password); // 0x10259450 + public virtual byte[] Export(X509ContentType contentType, SecureString password); // 0x102591D0 + internal byte[] Export(X509ContentType contentType, byte[] password); // 0x10259230 + public virtual void Import(byte[] rawData); // 0x1025A110 + public virtual void Import(byte[] rawData, string password, X509KeyStorageFlags keyStorageFlags); // 0x10259DE0 + public virtual void Import(byte[] rawData, SecureString password, X509KeyStorageFlags keyStorageFlags); // 0x1025A140 + public virtual void Import(string fileName); // 0x1025A170 + public virtual void Import(string fileName, string password, X509KeyStorageFlags keyStorageFlags); // 0x1025A1A0 + public virtual void Import(string fileName, SecureString password, X509KeyStorageFlags keyStorageFlags); // 0x1025A0E0 + public virtual void Reset(); // 0x1025A480 +} + +// Namespace: +internal struct CertificateContext // TypeDefIndex: 1266 +{ + // Fields + public uint dwCertEncodingType; // 0x08 + public IntPtr pbCertEncoded; // 0x0C + public uint cbCertEncoded; // 0x10 + public IntPtr pCertInfo; // 0x14 + public IntPtr hCertStore; // 0x18 + +} + +// Namespace: System.Security.Cryptography.X509Certificates +public enum X509ContentType // TypeDefIndex: 1267 +{ + Unknown = 0, + Cert = 1, + SerializedCert = 2, + Pfx = 3, + Pkcs12 = 3, + SerializedStore = 4, + Pkcs7 = 5, + Authenticode = 6 +} + +// Namespace: System.Security.Cryptography.X509Certificates +[Serializable] +public enum X509KeyStorageFlags // TypeDefIndex: 1268 +{ + DefaultKeySet = 0, + UserKeySet = 1, + MachineKeySet = 2, + Exportable = 4, + UserProtected = 8, + PersistKeySet = 16 +} + +// Namespace: System.Security.Cryptography +public abstract class AsymmetricAlgorithm : IDisposable // TypeDefIndex: 1269 +{ + // Fields + protected int KeySizeValue; // 0x08 + protected KeySizes[] LegalKeySizesValue; // 0x0C + + // Properties + public abstract string KeyExchangeAlgorithm { get; } + public virtual int KeySize { get; set; } // 0x100BF0C0 0x10286F00 + public virtual KeySizes[] LegalKeySizes { get; } // 0x100C5B30 + public abstract string SignatureAlgorithm { get; } + + // Methods + protected void .ctor(); // 0x100BF000 + private void System.IDisposable.Dispose(); // 0x101100C0 + public void Clear(); // 0x10286BE0 + protected abstract void Dispose(bool disposing); + public abstract void FromXmlString(string xmlString); + public abstract string ToXmlString(bool includePrivateParameters); + public static AsymmetricAlgorithm Create(); // 0x10286C00 + public static AsymmetricAlgorithm Create(string algName); // 0x10286D00 + internal static byte[] GetNamedParam(string xml, string param); // 0x10286DE0 +} + +// Namespace: System.Security.Cryptography +public abstract class AsymmetricKeyExchangeDeformatter // TypeDefIndex: 1270 +{ + // Properties + public abstract string Parameters { get; set; } + + // Methods + protected void .ctor(); // 0x100BF000 + public abstract byte[] DecryptKeyExchange(byte[] rgb); + public abstract void SetKey(AsymmetricAlgorithm key); +} + +// Namespace: System.Security.Cryptography +public abstract class AsymmetricKeyExchangeFormatter // TypeDefIndex: 1271 +{ + // Properties + public abstract string Parameters { get; } + + // Methods + protected void .ctor(); // 0x100BF000 + public abstract byte[] CreateKeyExchange(byte[] data); + public abstract byte[] CreateKeyExchange(byte[] data, Type symAlgType); + public abstract void SetKey(AsymmetricAlgorithm key); +} + +// Namespace: System.Security.Cryptography +public abstract class AsymmetricSignatureDeformatter // TypeDefIndex: 1272 +{ + // Methods + protected void .ctor(); // 0x100BF000 + public abstract void SetHashAlgorithm(string strName); + public abstract void SetKey(AsymmetricAlgorithm key); + public abstract bool VerifySignature(byte[] rgbHash, byte[] rgbSignature); + public virtual bool VerifySignature(HashAlgorithm hash, byte[] rgbSignature); // 0x10287000 +} + +// Namespace: System.Security.Cryptography +public abstract class AsymmetricSignatureFormatter // TypeDefIndex: 1273 +{ + // Methods + protected void .ctor(); // 0x100BF000 + public abstract void SetHashAlgorithm(string strName); + public abstract void SetKey(AsymmetricAlgorithm key); + public abstract byte[] CreateSignature(byte[] rgbHash); + public virtual byte[] CreateSignature(HashAlgorithm hash); // 0x102870B0 +} + +// Namespace: System.Security.Cryptography +internal static class Base64Constants // TypeDefIndex: 1274 +{ + // Fields + public static readonly byte[] EncodeTable; // 0x00 + public static readonly byte[] DecodeTable; // 0x04 + + // Methods + private static void .cctor(); // 0x10287160 +} + +// Namespace: System.Security.Cryptography +[Serializable] +public enum CipherMode // TypeDefIndex: 1275 +{ + CBC = 1, + ECB = 2, + OFB = 3, + CFB = 4, + CTS = 5 +} + +// Namespace: System.Security.Cryptography +public sealed class CryptoAPITransform : IDisposable, ICryptoTransform // TypeDefIndex: 1276 +{ + // Fields + private bool m_disposed; // 0x08 + + // Properties + public bool CanReuseTransform { get; } // 0x100E5880 + public bool CanTransformMultipleBlocks { get; } // 0x100E5880 + public int InputBlockSize { get; } // 0x100C5600 + public IntPtr KeyHandle { get; } // 0x102886F0 + public int OutputBlockSize { get; } // 0x100C5600 + + // Methods + internal void .ctor(); // 0x101E9380 + private void System.IDisposable.Dispose(); // 0x102886D0 + public void Clear(); // 0x10257730 + private void Dispose(bool disposing); // 0x10257730 + public int TransformBlock(byte[] inputBuffer, int inputOffset, int inputCount, byte[] outputBuffer, int outputOffset); // 0x100C5600 + public byte[] TransformFinalBlock(byte[] inputBuffer, int inputOffset, int inputCount); // 0x100C5600 + public void Reset(); // 0x100C5530 +} + +// Namespace: System.Security.Cryptography +public class CryptoConfig // TypeDefIndex: 1277 +{ + // Fields + private const string defaultNamespace = "System.Security.Cryptography."; // 0x00 + private const string defaultSHA1 = "System.Security.Cryptography.SHA1CryptoServiceProvider"; // 0x00 + private const string defaultMD5 = "System.Security.Cryptography.MD5CryptoServiceProvider"; // 0x00 + private const string defaultSHA256 = "System.Security.Cryptography.SHA256Managed"; // 0x00 + private const string defaultSHA384 = "System.Security.Cryptography.SHA384Managed"; // 0x00 + private const string defaultSHA512 = "System.Security.Cryptography.SHA512Managed"; // 0x00 + private const string defaultRSA = "System.Security.Cryptography.RSACryptoServiceProvider"; // 0x00 + private const string defaultDSA = "System.Security.Cryptography.DSACryptoServiceProvider"; // 0x00 + private const string defaultDES = "System.Security.Cryptography.DESCryptoServiceProvider"; // 0x00 + private const string default3DES = "System.Security.Cryptography.TripleDESCryptoServiceProvider"; // 0x00 + private const string defaultRC2 = "System.Security.Cryptography.RC2CryptoServiceProvider"; // 0x00 + private const string defaultAES = "System.Security.Cryptography.RijndaelManaged"; // 0x00 + private const string defaultRNG = "System.Security.Cryptography.RNGCryptoServiceProvider"; // 0x00 + private const string defaultHMAC = "System.Security.Cryptography.HMACSHA1"; // 0x00 + private const string defaultMAC3DES = "System.Security.Cryptography.MACTripleDES"; // 0x00 + private const string defaultDSASigDesc = "System.Security.Cryptography.DSASignatureDescription"; // 0x00 + private const string defaultRSASigDesc = "System.Security.Cryptography.RSAPKCS1SHA1SignatureDescription"; // 0x00 + private const string defaultRIPEMD160 = "System.Security.Cryptography.RIPEMD160Managed"; // 0x00 + private const string defaultHMACMD5 = "System.Security.Cryptography.HMACMD5"; // 0x00 + private const string defaultHMACRIPEMD160 = "System.Security.Cryptography.HMACRIPEMD160"; // 0x00 + private const string defaultHMACSHA256 = "System.Security.Cryptography.HMACSHA256"; // 0x00 + private const string defaultHMACSHA384 = "System.Security.Cryptography.HMACSHA384"; // 0x00 + private const string defaultHMACSHA512 = "System.Security.Cryptography.HMACSHA512"; // 0x00 + private const string defaultC14N = "System.Security.Cryptography.Xml.XmlDsigC14NTransform, System.Security, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + private const string defaultC14NWithComments = "System.Security.Cryptography.Xml.XmlDsigC14NWithCommentsTransform, System.Security, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + private const string defaultBase64 = "System.Security.Cryptography.Xml.XmlDsigBase64Transform, System.Security, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + private const string defaultXPath = "System.Security.Cryptography.Xml.XmlDsigXPathTransform, System.Security, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + private const string defaultXslt = "System.Security.Cryptography.Xml.XmlDsigXsltTransform, System.Security, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + private const string defaultEnveloped = "System.Security.Cryptography.Xml.XmlDsigEnvelopedSignatureTransform, System.Security, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + private const string defaultXmlDecryption = "System.Security.Cryptography.Xml.XmlDecryptionTransform, System.Security, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + private const string defaultExcC14N = "System.Security.Cryptography.Xml.XmlDsigExcC14NTransform, System.Security, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + private const string defaultExcC14NWithComments = "System.Security.Cryptography.Xml.XmlDsigExcC14NWithCommentsTransform, System.Security, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + private const string defaultX509Data = "System.Security.Cryptography.Xml.KeyInfoX509Data, System.Security, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + private const string defaultKeyName = "System.Security.Cryptography.Xml.KeyInfoName, System.Security, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + private const string defaultKeyValueDSA = "System.Security.Cryptography.Xml.DSAKeyValue, System.Security, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + private const string defaultKeyValueRSA = "System.Security.Cryptography.Xml.RSAKeyValue, System.Security, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + private const string defaultRetrievalMethod = "System.Security.Cryptography.Xml.KeyInfoRetrievalMethod, System.Security, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + private const string managedSHA1 = "System.Security.Cryptography.SHA1Managed"; // 0x00 + private const string oidSHA1 = "1.3.14.3.2.26"; // 0x00 + private const string oidMD5 = "1.2.840.113549.2.5"; // 0x00 + private const string oidSHA256 = "2.16.840.1.101.3.4.2.1"; // 0x00 + private const string oidSHA384 = "2.16.840.1.101.3.4.2.2"; // 0x00 + private const string oidSHA512 = "2.16.840.1.101.3.4.2.3"; // 0x00 + private const string oidDSA = "1.2.840.10040.4.1"; // 0x00 + private const string oidDES = "1.3.14.3.2.7"; // 0x00 + private const string oid3DES = "1.2.840.113549.3.7"; // 0x00 + private const string oidRC2 = "1.2.840.113549.3.2"; // 0x00 + private const string oid3DESKeyWrap = "1.2.840.113549.1.9.16.3.6"; // 0x00 + private const string nameSHA1a = "SHA"; // 0x00 + private const string nameSHA1b = "SHA1"; // 0x00 + private const string nameSHA1c = "System.Security.Cryptography.SHA1"; // 0x00 + private const string nameSHA1d = "System.Security.Cryptography.HashAlgorithm"; // 0x00 + private const string nameMD5a = "MD5"; // 0x00 + private const string nameMD5b = "System.Security.Cryptography.MD5"; // 0x00 + private const string nameSHA256a = "SHA256"; // 0x00 + private const string nameSHA256b = "SHA-256"; // 0x00 + private const string nameSHA256c = "System.Security.Cryptography.SHA256"; // 0x00 + private const string nameSHA384a = "SHA384"; // 0x00 + private const string nameSHA384b = "SHA-384"; // 0x00 + private const string nameSHA384c = "System.Security.Cryptography.SHA384"; // 0x00 + private const string nameSHA512a = "SHA512"; // 0x00 + private const string nameSHA512b = "SHA-512"; // 0x00 + private const string nameSHA512c = "System.Security.Cryptography.SHA512"; // 0x00 + private const string nameRSAa = "RSA"; // 0x00 + private const string nameRSAb = "System.Security.Cryptography.RSA"; // 0x00 + private const string nameRSAc = "System.Security.Cryptography.AsymmetricAlgorithm"; // 0x00 + private const string nameDSAa = "DSA"; // 0x00 + private const string nameDSAb = "System.Security.Cryptography.DSA"; // 0x00 + private const string nameDESa = "DES"; // 0x00 + private const string nameDESb = "System.Security.Cryptography.DES"; // 0x00 + private const string name3DESa = "3DES"; // 0x00 + private const string name3DESb = "TripleDES"; // 0x00 + private const string name3DESc = "Triple DES"; // 0x00 + private const string name3DESd = "System.Security.Cryptography.TripleDES"; // 0x00 + private const string nameRC2a = "RC2"; // 0x00 + private const string nameRC2b = "System.Security.Cryptography.RC2"; // 0x00 + private const string nameAESa = "Rijndael"; // 0x00 + private const string nameAESb = "System.Security.Cryptography.Rijndael"; // 0x00 + private const string nameAESc = "System.Security.Cryptography.SymmetricAlgorithm"; // 0x00 + private const string nameRNGa = "RandomNumberGenerator"; // 0x00 + private const string nameRNGb = "System.Security.Cryptography.RandomNumberGenerator"; // 0x00 + private const string nameKeyHasha = "System.Security.Cryptography.KeyedHashAlgorithm"; // 0x00 + private const string nameHMACSHA1a = "HMACSHA1"; // 0x00 + private const string nameHMACSHA1b = "System.Security.Cryptography.HMACSHA1"; // 0x00 + private const string nameMAC3DESa = "MACTripleDES"; // 0x00 + private const string nameMAC3DESb = "System.Security.Cryptography.MACTripleDES"; // 0x00 + private const string name3DESKeyWrap = "TripleDESKeyWrap"; // 0x00 + private const string nameRIPEMD160a = "RIPEMD160"; // 0x00 + private const string nameRIPEMD160b = "RIPEMD-160"; // 0x00 + private const string nameRIPEMD160c = "System.Security.Cryptography.RIPEMD160"; // 0x00 + private const string nameHMACa = "HMAC"; // 0x00 + private const string nameHMACb = "System.Security.Cryptography.HMAC"; // 0x00 + private const string nameHMACMD5a = "HMACMD5"; // 0x00 + private const string nameHMACMD5b = "System.Security.Cryptography.HMACMD5"; // 0x00 + private const string nameHMACRIPEMD160a = "HMACRIPEMD160"; // 0x00 + private const string nameHMACRIPEMD160b = "System.Security.Cryptography.HMACRIPEMD160"; // 0x00 + private const string nameHMACSHA256a = "HMACSHA256"; // 0x00 + private const string nameHMACSHA256b = "System.Security.Cryptography.HMACSHA256"; // 0x00 + private const string nameHMACSHA384a = "HMACSHA384"; // 0x00 + private const string nameHMACSHA384b = "System.Security.Cryptography.HMACSHA384"; // 0x00 + private const string nameHMACSHA512a = "HMACSHA512"; // 0x00 + private const string nameHMACSHA512b = "System.Security.Cryptography.HMACSHA512"; // 0x00 + private const string urlXmlDsig = "http://www.w3.org/2000/09/xmldsig#"; // 0x00 + private const string urlDSASHA1 = "http://www.w3.org/2000/09/xmldsig#dsa-sha1"; // 0x00 + private const string urlRSASHA1 = "http://www.w3.org/2000/09/xmldsig#rsa-sha1"; // 0x00 + private const string urlSHA1 = "http://www.w3.org/2000/09/xmldsig#sha1"; // 0x00 + private const string urlC14N = "http://www.w3.org/TR/2001/REC-xml-c14n-20010315"; // 0x00 + private const string urlC14NWithComments = "http://www.w3.org/TR/2001/REC-xml-c14n-20010315#WithComments"; // 0x00 + private const string urlBase64 = "http://www.w3.org/2000/09/xmldsig#base64"; // 0x00 + private const string urlXPath = "http://www.w3.org/TR/1999/REC-xpath-19991116"; // 0x00 + private const string urlXslt = "http://www.w3.org/TR/1999/REC-xslt-19991116"; // 0x00 + private const string urlEnveloped = "http://www.w3.org/2000/09/xmldsig#enveloped-signature"; // 0x00 + private const string urlXmlDecryption = "http://www.w3.org/2002/07/decrypt#XML"; // 0x00 + private const string urlExcC14NWithComments = "http://www.w3.org/2001/10/xml-exc-c14n#WithComments"; // 0x00 + private const string urlExcC14N = "http://www.w3.org/2001/10/xml-exc-c14n#"; // 0x00 + private const string urlSHA256 = "http://www.w3.org/2001/04/xmlenc#sha256"; // 0x00 + private const string urlSHA512 = "http://www.w3.org/2001/04/xmlenc#sha512"; // 0x00 + private const string urlHMACSHA256 = "http://www.w3.org/2001/04/xmldsig-more#hmac-sha256"; // 0x00 + private const string urlHMACSHA384 = "http://www.w3.org/2001/04/xmldsig-more#hmac-sha384"; // 0x00 + private const string urlHMACSHA512 = "http://www.w3.org/2001/04/xmldsig-more#hmac-sha512"; // 0x00 + private const string urlHMACRIPEMD160 = "http://www.w3.org/2001/04/xmldsig-more#hmac-ripemd160"; // 0x00 + private const string urlX509Data = "http://www.w3.org/2000/09/xmldsig# X509Data"; // 0x00 + private const string urlKeyName = "http://www.w3.org/2000/09/xmldsig# KeyName"; // 0x00 + private const string urlKeyValueDSA = "http://www.w3.org/2000/09/xmldsig# KeyValue/DSAKeyValue"; // 0x00 + private const string urlKeyValueRSA = "http://www.w3.org/2000/09/xmldsig# KeyValue/RSAKeyValue"; // 0x00 + private const string urlRetrievalMethod = "http://www.w3.org/2000/09/xmldsig# RetrievalMethod"; // 0x00 + private const string oidX509SubjectKeyIdentifier = "2.5.29.14"; // 0x00 + private const string oidX509KeyUsage = "2.5.29.15"; // 0x00 + private const string oidX509BasicConstraints = "2.5.29.19"; // 0x00 + private const string oidX509EnhancedKeyUsage = "2.5.29.37"; // 0x00 + private const string nameX509SubjectKeyIdentifier = "System.Security.Cryptography.X509Certificates.X509SubjectKeyIdentifierExtension, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"; // 0x00 + private const string nameX509KeyUsage = "System.Security.Cryptography.X509Certificates.X509KeyUsageExtension, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"; // 0x00 + private const string nameX509BasicConstraints = "System.Security.Cryptography.X509Certificates.X509BasicConstraintsExtension, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"; // 0x00 + private const string nameX509EnhancedKeyUsage = "System.Security.Cryptography.X509Certificates.X509EnhancedKeyUsageExtension, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"; // 0x00 + private const string nameX509Chain = "X509Chain"; // 0x00 + private const string defaultX509Chain = "System.Security.Cryptography.X509Certificates.X509Chain, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"; // 0x00 + private static object lockObject; // 0x00 + private static Hashtable algorithms; // 0x04 + private static Hashtable oid; // 0x08 + + // Methods + public void .ctor(); // 0x100BF000 + private static void .cctor(); // 0x1028A050 + private static void Initialize(); // 0x10288FC0 + private static void LoadConfig(string filename, Hashtable algorithms, Hashtable oid); // 0x10289C50 + public static object CreateFromName(string name); // 0x102889C0 + public static object CreateFromName(string name, object[] args); // 0x10288720 + public static string MapNameToOID(string name); // 0x10289E50 + public static byte[] EncodeOID(string str); // 0x10288B70 + private static byte[] EncodeLongNumber(long x); // 0x10288A10 +} + +// Namespace: +private class CryptoHandler : IContentHandler // TypeDefIndex: 1278 +{ + // Fields + private Hashtable algorithms; // 0x08 + private Hashtable oid; // 0x0C + private Hashtable names; // 0x10 + private Hashtable classnames; // 0x14 + private int level; // 0x18 + + // Methods + public void .ctor(Hashtable algorithms, Hashtable oid); // 0x1028A870 + public void OnStartParsing(SmallXmlParser parser); // 0x100C5530 + public void OnEndParsing(SmallXmlParser parser); // 0x1028A330 + private string Get(IAttrList attrs, string name); // 0x1028A0A0 + public void OnStartElement(string name, IAttrList attrs); // 0x1028A570 + public void OnEndElement(string name); // 0x1028A1D0 + public void OnProcessingInstruction(string name, string text); // 0x100C5530 + public void OnChars(string text); // 0x100C5530 + public void OnIgnorableWhitespace(string text); // 0x100C5530 +} + +// Namespace: System.Security.Cryptography +public class CryptoStream : Stream // TypeDefIndex: 1279 +{ + // Fields + private Stream _stream; // 0x08 + private ICryptoTransform _transform; // 0x0C + private CryptoStreamMode _mode; // 0x10 + private byte[] _currentBlock; // 0x14 + private bool _disposed; // 0x18 + private bool _flushedFinalBlock; // 0x19 + private int _partialCount; // 0x1C + private bool _endOfStream; // 0x20 + private byte[] _waitingBlock; // 0x24 + private int _waitingCount; // 0x28 + private byte[] _transformedBlock; // 0x2C + private int _transformedPos; // 0x30 + private int _transformedCount; // 0x34 + private byte[] _workingBlock; // 0x38 + private int _workingCount; // 0x3C + + // Properties + public override bool CanRead { get; } // 0x1028BD70 + public override bool CanSeek { get; } // 0x100EFBF0 + public override bool CanWrite { get; } // 0x10157670 + public override long Length { get; } // 0x1028BD80 + public override long Position { get; set; } // 0x1028BDD0 0x1028BE20 + + // Methods + public void .ctor(Stream stream, ICryptoTransform transform, CryptoStreamMode mode); // 0x1028BB90 + protected override void Finalize(); // 0x10257750 + public void Clear(); // 0x10257D10 + public override void Close(); // 0x1028AF70 + public override int Read(out byte[] buffer, int offset, int count); // 0x1028B1D0 + public override void Write(byte[] buffer, int offset, int count); // 0x1028B700 + public override void Flush(); // 0x1028B1A0 + public void FlushFinalBlock(); // 0x1028B010 + public override long Seek(long offset, SeekOrigin origin); // 0x1028B660 + public override void SetLength(long value); // 0x1028B6B0 + protected override void Dispose(bool disposing); // 0x1028AFB0 +} + +// Namespace: System.Security.Cryptography +[Serializable] +public enum CryptoStreamMode // TypeDefIndex: 1280 +{ + Read = 0, + Write = 1 +} + +// Namespace: System.Security.Cryptography +[Serializable] +public class CryptographicException : SystemException, _Exception // TypeDefIndex: 1281 +{ + // Methods + public void .ctor(); // 0x1028BF50 + public void .ctor(int hr); // 0x1028BE70 + public void .ctor(string message); // 0x1028BF00 + public void .ctor(string message, Exception inner); // 0x1028BF20 + public void .ctor(string format, string insert); // 0x1028BE90 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 +} + +// Namespace: System.Security.Cryptography +[Serializable] +public class CryptographicUnexpectedOperationException : CryptographicException // TypeDefIndex: 1282 +{ + // Methods + public void .ctor(); // 0x1028C000 + public void .ctor(string message); // 0x1028BFA0 + public void .ctor(string message, Exception inner); // 0x1028BFC0 + public void .ctor(string format, string insert); // 0x1028C050 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 +} + +// Namespace: System.Security.Cryptography +public sealed class CspKeyContainerInfo // TypeDefIndex: 1283 +{ + // Fields + private CspParameters _params; // 0x08 + internal bool _random; // 0x0C + + // Properties + public bool Accessible { get; } // 0x100E5880 + public CryptoKeySecurity CryptoKeySecurity { get; } // 0x100C5600 + public bool Exportable { get; } // 0x100E5880 + public bool HardwareDevice { get; } // 0x100EFBF0 + public string KeyContainerName { get; } // 0x101DF620 + public KeyNumber KeyNumber { get; } // 0x1028C0E0 + public bool MachineKeyStore { get; } // 0x100EFBF0 + public bool Protected { get; } // 0x100EFBF0 + public string ProviderName { get; } // 0x1028C100 + public int ProviderType { get; } // 0x1028C120 + public bool RandomlyGenerated { get; } // 0x100F8910 + public bool Removable { get; } // 0x100EFBF0 + public string UniqueKeyContainerName { get; } // 0x1028C140 + + // Methods + public void .ctor(CspParameters parameters); // 0x1028C0C0 +} + +// Namespace: System.Security.Cryptography +public sealed class CspParameters // TypeDefIndex: 1284 +{ + // Fields + private CspProviderFlags _Flags; // 0x08 + public string KeyContainerName; // 0x0C + public int KeyNumber; // 0x10 + public string ProviderName; // 0x14 + public int ProviderType; // 0x18 + private SecureString _password; // 0x1C + private IntPtr _windowHandle; // 0x20 + + // Properties + public CspProviderFlags Flags { get; set; } // 0x100BF0C0 0x100EB270 + public CryptoKeySecurity CryptoKeySecurity { get; set; } // 0x1028C2F0 0x1028C340 + public SecureString KeyPassword { get; set; } // 0x100F85F0 0x10113F50 + public IntPtr ParentWindowHandle { get; set; } // 0x100EACD0 0x100EB230 + + // Methods + public void .ctor(); // 0x1028C2B0 + public void .ctor(int dwTypeIn); // 0x1028C280 + public void .ctor(int dwTypeIn, string strProviderNameIn); // 0x1028C280 + public void .ctor(int dwTypeIn, string strProviderNameIn, string strContainerNameIn); // 0x1028C200 + public void .ctor(int providerType, string providerName, string keyContainerName, CryptoKeySecurity cryptoKeySecurity, IntPtr parentWindowHandle); // 0x1028C1B0 + public void .ctor(int providerType, string providerName, string keyContainerName, CryptoKeySecurity cryptoKeySecurity, SecureString keyPassword); // 0x1028C230 +} + +// Namespace: System.Security.Cryptography +[Serializable] +public enum CspProviderFlags // TypeDefIndex: 1285 +{ + NoFlags = 0, + UseMachineKeyStore = 1, + UseDefaultKeyContainer = 2, + UseNonExportableKey = 4, + UseExistingKey = 8, + UseArchivableKey = 16, + UseUserProtectedKey = 32, + NoPrompt = 64 +} + +// Namespace: System.Security.Cryptography +public abstract class DES : SymmetricAlgorithm // TypeDefIndex: 1286 +{ + // Fields + private const int keySizeByte = 8; // 0x00 + internal static readonly byte[] weakKeys; // 0x00 + internal static readonly byte[] semiWeakKeys; // 0x04 + + // Properties + public override byte[] Key { get; set; } // 0x1028E530 0x1028E5C0 + + // Methods + protected void .ctor(); // 0x1028E3E0 + private static void .cctor(); // 0x1028E340 + public static DES Create(); // 0x1028DED0 + public static DES Create(string algName); // 0x1028DDF0 + public static bool IsWeakKey(byte[] rgbKey); // 0x1028E190 + public static bool IsSemiWeakKey(byte[] rgbKey); // 0x1028DFE0 +} + +// Namespace: System.Security.Cryptography +internal class DESTransform : SymmetricTransform // TypeDefIndex: 1287 +{ + // Fields + internal static readonly int KEY_BIT_SIZE; // 0x00 + internal static readonly int KEY_BYTE_SIZE; // 0x04 + internal static readonly int BLOCK_BIT_SIZE; // 0x08 + internal static readonly int BLOCK_BYTE_SIZE; // 0x0C + private byte[] keySchedule; // 0x34 + private byte[] byteBuff; // 0x38 + private uint[] dwordBuff; // 0x3C + private static readonly uint[] spBoxes; // 0x10 + private static readonly byte[] PC1; // 0x14 + private static readonly byte[] leftRotTotal; // 0x18 + private static readonly byte[] PC2; // 0x1C + internal static readonly uint[] ipTab; // 0x20 + internal static readonly uint[] fpTab; // 0x24 + + // Methods + internal void .ctor(SymmetricAlgorithm symmAlgo, bool encryption, byte[] key, byte[] iv); // 0x1028DC10 + private static void .cctor(); // 0x1028DAA0 + private uint CipherFunct(uint r, int n); // 0x1028CA10 + internal static void Permutation(byte[] input, byte[] output, uint[] permTab, bool preSwap); // 0x1028CEA0 + private static void BSwap(byte[] byteBuff); // 0x1028C940 + internal void SetKey(byte[] key); // 0x1028D760 + public void ProcessBlock(byte[] input, byte[] output); // 0x1028D410 + protected override void ECB(byte[] input, byte[] output); // 0x1028CD20 + internal static byte[] GetStrongKey(); // 0x1028CDB0 +} + +// Namespace: System.Security.Cryptography +public sealed class DESCryptoServiceProvider : DES // TypeDefIndex: 1288 +{ + // Methods + public void .ctor(); // 0x1028C7B0 + public override ICryptoTransform CreateDecryptor(byte[] rgbKey, byte[] rgbIV); // 0x1028C660 + public override ICryptoTransform CreateEncryptor(byte[] rgbKey, byte[] rgbIV); // 0x1028C6B0 + public override void GenerateIV(); // 0x1028C700 + public override void GenerateKey(); // 0x1028C760 +} + +// Namespace: System.Security.Cryptography +public abstract class DSA : AsymmetricAlgorithm // TypeDefIndex: 1289 +{ + // Methods + protected void .ctor(); // 0x100BF000 + public static DSA Create(); // 0x1028F990 + public static DSA Create(string algName); // 0x1028FA90 + public abstract byte[] CreateSignature(byte[] rgbHash); + public abstract DSAParameters ExportParameters(bool includePrivateParameters); + internal void ZeroizePrivateKey(DSAParameters parameters); // 0x10290280 + public override void FromXmlString(string xmlString); // 0x1028FB70 + public abstract void ImportParameters(DSAParameters parameters); + public override string ToXmlString(bool includePrivateParameters); // 0x1028FE10 + public abstract bool VerifySignature(byte[] rgbHash, byte[] rgbSignature); +} + +// Namespace: System.Security.Cryptography +public sealed class DSACryptoServiceProvider : DSA, ICspAsymmetricAlgorithm // TypeDefIndex: 1290 +{ + // Fields + private const int PROV_DSS_DH = 13; // 0x00 + private KeyPairPersistence store; // 0x10 + private bool persistKey; // 0x14 + private bool persisted; // 0x00 + private bool privateKeyExportable; // 0x00 + private bool m_disposed; // 0x00 + private DSAManaged dsa; // 0x00 + private static bool useMachineKeyStore; // 0x00 + + // Properties + public override string KeyExchangeAlgorithm { get; } // 0x100C5600 + public override int KeySize { get; } // 0x1028F330 + public bool PersistKeyInCsp { get; set; } // 0x100C5670 0x10142260 + public bool PublicOnly { get; } // 0x1028F360 + public override string SignatureAlgorithm { get; } // 0x1028F390 + public static bool UseMachineKeyStore { get; set; } // 0x1028F3C0 0x1028F410 + public CspKeyContainerInfo CspKeyContainerInfo { get; } // 0x100C5600 + + // Methods + public void .ctor(); // 0x1028F2F0 + public void .ctor(CspParameters parameters); // 0x1028F0B0 + public void .ctor(int dwKeySize); // 0x1028F310 + public void .ctor(int dwKeySize, CspParameters parameters); // 0x1028F0D0 + private static void .cctor(); // 0x100C5530 + protected override void Finalize(); // 0x1028E890 + public override DSAParameters ExportParameters(bool includePrivateParameters); // 0x1028E7E0 + public override void ImportParameters(DSAParameters parameters); // 0x1028EB80 + public override byte[] CreateSignature(byte[] rgbHash); // 0x100C4870 + public byte[] SignData(byte[] buffer); // 0x1028EC90 + public byte[] SignData(byte[] buffer, int offset, int count); // 0x1028EC40 + public byte[] SignData(Stream inputStream); // 0x1028ECE0 + public byte[] SignHash(byte[] rgbHash, string str); // 0x1028EE30 + public bool VerifyData(byte[] rgbData, byte[] rgbSignature); // 0x1028EF20 + public bool VerifyHash(byte[] rgbHash, string str, byte[] rgbSignature); // 0x1028EF70 + public override bool VerifySignature(byte[] rgbHash, byte[] rgbSignature); // 0x1028F070 + protected override void Dispose(bool disposing); // 0x1028E750 + private void OnKeyGenerated(object sender, EventArgs e); // 0x1028EBC0 + public byte[] ExportCspBlob(bool includePrivateParameters); // 0x1028E7B0 + public void ImportCspBlob(byte[] keyBlob); // 0x1028E990 +} + +// Namespace: System.Security.Cryptography +[Serializable] +public struct DSAParameters // TypeDefIndex: 1291 +{ + // Fields + public int Counter; // 0x08 + public byte[] G; // 0x0C + public byte[] J; // 0x10 + public byte[] P; // 0x14 + public byte[] Q; // 0x18 + public byte[] Seed; // 0x1C + [NonSerialized] public byte[] X; // 0x20 + public byte[] Y; // 0x24 + +} + +// Namespace: System.Security.Cryptography +public class DSASignatureDeformatter : AsymmetricSignatureDeformatter // TypeDefIndex: 1292 +{ + // Fields + private DSA dsa; // 0x08 + + // Methods + public void .ctor(); // 0x100BF000 + public void .ctor(AsymmetricAlgorithm key); // 0x1028F6C0 + public override void SetHashAlgorithm(string strName); // 0x1028F470 + public override void SetKey(AsymmetricAlgorithm key); // 0x1028F590 + public override bool VerifySignature(byte[] rgbHash, byte[] rgbSignature); // 0x1028F630 +} + +// Namespace: System.Security.Cryptography +public class DSASignatureFormatter : AsymmetricSignatureFormatter // TypeDefIndex: 1293 +{ + // Fields + private DSA dsa; // 0x08 + + // Methods + public void .ctor(); // 0x100BF000 + public void .ctor(AsymmetricAlgorithm key); // 0x1028F6C0 + public override byte[] CreateSignature(byte[] rgbHash); // 0x1028F750 + public override void SetHashAlgorithm(string strName); // 0x1028F7D0 + public override void SetKey(AsymmetricAlgorithm key); // 0x1028F8F0 +} + +// Namespace: System.Security.Cryptography +public abstract class DeriveBytes // TypeDefIndex: 1294 +{ + // Methods + protected void .ctor(); // 0x100BF000 + public abstract byte[] GetBytes(int cb); + public abstract void Reset(); +} + +// Namespace: System.Security.Cryptography +[Serializable] +public enum FromBase64TransformMode // TypeDefIndex: 1295 +{ + IgnoreWhiteSpaces = 0, + DoNotIgnoreWhiteSpaces = 1 +} + +// Namespace: System.Security.Cryptography +public class FromBase64Transform : IDisposable, ICryptoTransform // TypeDefIndex: 1296 +{ + // Fields + private const byte TerminatorByte = 61; // 0x00 + private FromBase64TransformMode mode; // 0x08 + private byte[] accumulator; // 0x0C + private int accPtr; // 0x10 + private bool m_disposed; // 0x14 + private byte[] lookupTable; // 0x18 + + // Properties + public bool CanTransformMultipleBlocks { get; } // 0x100EFBF0 + public virtual bool CanReuseTransform { get; } // 0x100E5880 + public int InputBlockSize { get; } // 0x100EF660 + public int OutputBlockSize { get; } // 0x10158A50 + + // Methods + public void .ctor(); // 0x10292970 + public void .ctor(FromBase64TransformMode whitespaces); // 0x102929D0 + private void System.IDisposable.Dispose(); // 0x10257D10 + protected override void Finalize(); // 0x10257750 + public void Clear(); // 0x10257710 + protected virtual void Dispose(bool disposing); // 0x10292110 + private byte lookup(byte input); // 0x10292A30 + private int ProcessBlock(byte[] output, int offset); // 0x10292150 + private void CheckInputParameters(byte[] inputBuffer, int inputOffset, int inputCount); // 0x10291F90 + public int TransformBlock(byte[] inputBuffer, int inputOffset, int inputCount, byte[] outputBuffer, int outputOffset); // 0x10292550 + public byte[] TransformFinalBlock(byte[] inputBuffer, int inputOffset, int inputCount); // 0x102926E0 +} + +// Namespace: System.Security.Cryptography +public abstract class HMAC : KeyedHashAlgorithm // TypeDefIndex: 1297 +{ + // Fields + private bool _disposed; // 0x1C + private string _hashName; // 0x20 + private HashAlgorithm _algo; // 0x24 + private BlockProcessor _block; // 0x28 + private int _blockSizeValue; // 0x2C + + // Properties + protected int BlockSizeValue { get; set; } // 0x100EB200 0x100EB260 + public string HashName { get; set; } // 0x100EACD0 0x102942D0 + public override byte[] Key { get; set; } // 0x10294220 0x102942F0 + internal BlockProcessor Block { get; } // 0x102941B0 + + // Methods + protected void .ctor(); // 0x10294180 + private byte[] KeySetup(byte[] key, byte padding); // 0x102940C0 + protected override void Dispose(bool disposing); // 0x10293C50 + protected override void HashCore(byte[] rgb, int ib, int cb); // 0x10293C80 + protected override byte[] HashFinal(); // 0x10293D20 + public override void Initialize(); // 0x10293FC0 + public static HMAC Create(); // 0x10293A70 + public static HMAC Create(string algorithmName); // 0x10293B70 +} + +// Namespace: System.Security.Cryptography +public class HMACMD5 : HMAC // TypeDefIndex: 1298 +{ + // Methods + public void .ctor(); // 0x10293160 + public void .ctor(byte[] key); // 0x102931E0 +} + +// Namespace: System.Security.Cryptography +public class HMACRIPEMD160 : HMAC // TypeDefIndex: 1299 +{ + // Methods + public void .ctor(); // 0x102932C0 + public void .ctor(byte[] key); // 0x10293250 +} + +// Namespace: System.Security.Cryptography +public class HMACSHA1 : HMAC // TypeDefIndex: 1300 +{ + // Methods + public void .ctor(); // 0x10293340 + public void .ctor(byte[] key); // 0x102933C0 + public void .ctor(byte[] key, bool useManagedSha1); // 0x10293430 +} + +// Namespace: System.Security.Cryptography +public class HMACSHA256 : HMAC // TypeDefIndex: 1301 +{ + // Methods + public void .ctor(); // 0x10293550 + public void .ctor(byte[] key); // 0x102934E0 +} + +// Namespace: System.Security.Cryptography +public class HMACSHA384 : HMAC // TypeDefIndex: 1302 +{ + // Fields + private static bool legacy_mode; // 0x00 + private bool legacy; // 0x30 + + // Properties + public bool ProduceLegacyHmacValues { get; set; } // 0x100EF0D0 0x10293810 + + // Methods + public void .ctor(); // 0x10293640 + public void .ctor(byte[] key); // 0x10293760 + private static void .cctor(); // 0x102935D0 +} + +// Namespace: System.Security.Cryptography +public class HMACSHA512 : HMAC // TypeDefIndex: 1303 +{ + // Fields + private static bool legacy_mode; // 0x00 + private bool legacy; // 0x30 + + // Properties + public bool ProduceLegacyHmacValues { get; set; } // 0x100EF0D0 0x10293810 + + // Methods + public void .ctor(); // 0x102938A0 + public void .ctor(byte[] key); // 0x102939C0 + private static void .cctor(); // 0x10293830 +} + +// Namespace: System.Security.Cryptography +public abstract class HashAlgorithm : IDisposable, ICryptoTransform // TypeDefIndex: 1304 +{ + // Fields + protected internal byte[] HashValue; // 0x08 + protected int HashSizeValue; // 0x0C + protected int State; // 0x10 + private bool disposed; // 0x14 + + // Properties + public virtual bool CanTransformMultipleBlocks { get; } // 0x100E5880 + public virtual bool CanReuseTransform { get; } // 0x100E5880 + public virtual byte[] Hash { get; } // 0x10294B20 + public virtual int HashSize { get; } // 0x100C5B30 + public virtual int InputBlockSize { get; } // 0x100EF660 + public virtual int OutputBlockSize { get; } // 0x100EF660 + + // Methods + protected void .ctor(); // 0x10294B00 + private void System.IDisposable.Dispose(); // 0x102947F0 + public void Clear(); // 0x102943A0 + public byte[] ComputeHash(byte[] buffer); // 0x10294660 + public byte[] ComputeHash(byte[] buffer, int offset, int count); // 0x102943C0 + public byte[] ComputeHash(Stream inputStream); // 0x10294540 + public static HashAlgorithm Create(); // 0x102946D0 + public static HashAlgorithm Create(string hashName); // 0x10294700 + protected abstract void HashCore(byte[] array, int ibStart, int cbSize); + protected abstract byte[] HashFinal(); + public abstract void Initialize(); + protected virtual void Dispose(bool disposing); // 0x102947E0 + public int TransformBlock(byte[] inputBuffer, int inputOffset, int inputCount, byte[] outputBuffer, int outputOffset); // 0x10294820 + public byte[] TransformFinalBlock(byte[] inputBuffer, int inputOffset, int inputCount); // 0x102949B0 +} + +// Namespace: System.Security.Cryptography +public interface ICryptoTransform : IDisposable // TypeDefIndex: 1305 +{ + // Properties + bool CanReuseTransform { get; } + bool CanTransformMultipleBlocks { get; } + int InputBlockSize { get; } + int OutputBlockSize { get; } + + // Methods + int TransformBlock(byte[] inputBuffer, int inputOffset, int inputCount, byte[] outputBuffer, int outputOffset); + byte[] TransformFinalBlock(byte[] inputBuffer, int inputOffset, int inputCount); +} + +// Namespace: System.Security.Cryptography +public interface ICspAsymmetricAlgorithm // TypeDefIndex: 1306 +{ + // Properties + CspKeyContainerInfo CspKeyContainerInfo { get; } + + // Methods + byte[] ExportCspBlob(bool includePrivateParameters); + void ImportCspBlob(byte[] rawData); +} + +// Namespace: System.Security.Cryptography +[Serializable] +public enum KeyNumber // TypeDefIndex: 1307 +{ + Exchange = 1, + Signature = 2 +} + +// Namespace: System.Security.Cryptography +public sealed class KeySizes // TypeDefIndex: 1308 +{ + // Fields + private int _maxSize; // 0x08 + private int _minSize; // 0x0C + private int _skipSize; // 0x10 + + // Properties + public int MaxSize { get; } // 0x100BF0C0 + public int MinSize { get; } // 0x100C5B30 + public int SkipSize { get; } // 0x100BFC20 + + // Methods + public void .ctor(int minSize, int maxSize, int skipSize); // 0x10294C70 + internal bool IsLegal(int keySize); // 0x10294C30 + internal static bool IsLegalKeySize(KeySizes[] legalKeys, int size); // 0x10294B90 +} + +// Namespace: System.Security.Cryptography +public abstract class KeyedHashAlgorithm : HashAlgorithm // TypeDefIndex: 1309 +{ + // Fields + protected byte[] KeyValue; // 0x18 + + // Properties + public virtual byte[] Key { get; set; } // 0x10294ED0 0x10294F40 + + // Methods + protected void .ctor(); // 0x10294B00 + protected override void Finalize(); // 0x100C34A0 + protected override void Dispose(bool disposing); // 0x10294E80 + private void ZeroizeKey(); // 0x10294EB0 + public static KeyedHashAlgorithm Create(); // 0x10294CA0 + public static KeyedHashAlgorithm Create(string algName); // 0x10294DA0 +} + +// Namespace: System.Security.Cryptography +public class MACTripleDES : KeyedHashAlgorithm // TypeDefIndex: 1310 +{ + // Fields + private TripleDES tdes; // 0x1C + private MACAlgorithm mac; // 0x20 + private bool m_disposed; // 0x24 + + // Properties + public PaddingMode Padding { get; set; } // 0x10295560 0x10295590 + + // Methods + public void .ctor(); // 0x10295470 + public void .ctor(byte[] rgbKey); // 0x102953F0 + public void .ctor(string strTripleDES, byte[] rgbKey); // 0x102954C0 + private void Setup(string strTripleDES, byte[] rgbKey); // 0x102952F0 + protected override void Finalize(); // 0x10295090 + protected override void Dispose(bool disposing); // 0x10295010 + public override void Initialize(); // 0x10295270 + protected override void HashCore(byte[] rgbData, int ibStart, int cbSize); // 0x10295150 + protected override byte[] HashFinal(); // 0x102951F0 +} + +// Namespace: System.Security.Cryptography +public abstract class MD5 : HashAlgorithm // TypeDefIndex: 1311 +{ + // Methods + protected void .ctor(); // 0x10297000 + public static MD5 Create(); // 0x10296E20 + public static MD5 Create(string algName); // 0x10296F20 +} + +// Namespace: System.Security.Cryptography +public sealed class MD5CryptoServiceProvider : MD5 // TypeDefIndex: 1312 +{ + // Fields + private const int BLOCK_SIZE_BYTES = 64; // 0x00 + private const int HASH_SIZE_BYTES = 16; // 0x00 + private uint[] _H; // 0x18 + private uint[] buff; // 0x1C + private ulong count; // 0x20 + private byte[] _ProcessingBuffer; // 0x28 + private int _ProcessingBufferCount; // 0x2C + private static readonly uint[] K; // 0x00 + + // Methods + public void .ctor(); // 0x10296D00 + private static void .cctor(); // 0x10296CB0 + protected override void Finalize(); // 0x10295760 + protected override void Dispose(bool disposing); // 0x102956E0 + protected override void HashCore(byte[] rgb, int ibStart, int cbSize); // 0x10295790 + protected override byte[] HashFinal(); // 0x10295880 + public override void Initialize(); // 0x10295930 + private void ProcessBlock(byte[] inputBuffer, int inputOffset); // 0x102959F0 + private void ProcessFinalBlock(byte[] inputBuffer, int inputOffset, int inputCount); // 0x10296B80 + internal void AddLength(ulong length, byte[] buffer, int position); // 0x102955C0 +} + +// Namespace: System.Security.Cryptography +public abstract class MaskGenerationMethod // TypeDefIndex: 1313 +{ + // Methods + protected void .ctor(); // 0x100BF000 + public abstract byte[] GenerateMask(byte[] rgbSeed, int cbReturn); +} + +// Namespace: System.Security.Cryptography +public class PKCS1MaskGenerationMethod : MaskGenerationMethod // TypeDefIndex: 1314 +{ + // Fields + private string hashName; // 0x08 + + // Properties + public string HashName { get; set; } // 0x100BF0C0 0x100BF0D0 + + // Methods + public void .ctor(); // 0x100BF080 + public override byte[] GenerateMask(byte[] rgbSeed, int cbReturn); // 0x100BF010 +} + +// Namespace: System.Security.Cryptography +[Serializable] +public enum PaddingMode // TypeDefIndex: 1315 +{ + None = 1, + PKCS7 = 2, + Zeros = 3, + ANSIX923 = 4, + ISO10126 = 5 +} + +// Namespace: System.Security.Cryptography +public class PasswordDeriveBytes : DeriveBytes // TypeDefIndex: 1316 +{ + // Fields + private string HashNameValue; // 0x08 + private byte[] SaltValue; // 0x0C + private int IterationsValue; // 0x10 + private HashAlgorithm hash; // 0x14 + private int state; // 0x18 + private byte[] password; // 0x1C + private byte[] initial; // 0x20 + private byte[] output; // 0x24 + private int position; // 0x28 + private int hashnumber; // 0x2C + + // Properties + public string HashName { get; set; } // 0x100BF0C0 0x100BFCA0 + public int IterationCount { get; set; } // 0x100BFC20 0x100BFD40 + public byte[] Salt { get; set; } // 0x100BFC30 0x100BFDF0 + + // Methods + public void .ctor(string strPassword, byte[] rgbSalt); // 0x100BF900 + public void .ctor(string strPassword, byte[] rgbSalt, CspParameters cspParams); // 0x100BFAE0 + public void .ctor(string strPassword, byte[] rgbSalt, string strHashName, int iterations); // 0x100BFB70 + public void .ctor(string strPassword, byte[] rgbSalt, string strHashName, int iterations, CspParameters cspParams); // 0x100BFA50 + public void .ctor(byte[] password, byte[] salt); // 0x100BF950 + public void .ctor(byte[] password, byte[] salt, CspParameters cspParams); // 0x100BF9C0 + public void .ctor(byte[] password, byte[] salt, string hashName, int iterations); // 0x100BF9A0 + public void .ctor(byte[] password, byte[] salt, string hashName, int iterations, CspParameters cspParams); // 0x100BFB90 + protected override void Finalize(); // 0x100BF1C0 + private void Prepare(string strPassword, byte[] rgbSalt, string strHashName, int iterations); // 0x100BF510 + private void Prepare(byte[] password, byte[] rgbSalt, string strHashName, int iterations); // 0x100BF5E0 + public byte[] CryptDeriveKey(string algname, string alghashname, int keySize, byte[] rgbIV); // 0x100BF120 + public override byte[] GetBytes(int cb); // 0x100BF2A0 + public override void Reset(); // 0x100BF850 +} + +// Namespace: System.Security.Cryptography +public abstract class RC2 : SymmetricAlgorithm // TypeDefIndex: 1317 +{ + // Fields + protected int EffectiveKeySizeValue; // 0x30 + + // Properties + public virtual int EffectiveKeySize { get; set; } // 0x100C00C0 0x100C15B0 + public override int KeySize { get; set; } // 0x100BFC20 0x100C15C0 + + // Methods + protected void .ctor(); // 0x100BFF80 + public static RC2 Create(); // 0x100C1500 + public static RC2 Create(string AlgName); // 0x100C1460 +} + +// Namespace: System.Security.Cryptography +public sealed class RC2CryptoServiceProvider : RC2 // TypeDefIndex: 1318 +{ + // Fields + private bool _useSalt; // 0x34 + + // Properties + public override int EffectiveKeySize { get; set; } // 0x100C00C0 0x100C00F0 + public bool UseSalt { get; set; } // 0x100C00E0 0x100C0160 + + // Methods + public void .ctor(); // 0x100BFF80 + public override ICryptoTransform CreateDecryptor(byte[] rgbKey, byte[] rgbIV); // 0x100BFEA0 + public override ICryptoTransform CreateEncryptor(byte[] rgbKey, byte[] rgbIV); // 0x100BFEF0 + public override void GenerateIV(); // 0x100BFF40 + public override void GenerateKey(); // 0x100BFF60 +} + +// Namespace: System.Security.Cryptography +internal class RC2Transform : SymmetricTransform // TypeDefIndex: 1319 +{ + // Fields + private ushort R0; // 0x34 + private ushort R1; // 0x36 + private ushort R2; // 0x38 + private ushort R3; // 0x3A + private ushort[] K; // 0x3C + private int j; // 0x40 + private static readonly byte[] pitable; // 0x00 + + // Methods + public void .ctor(RC2 rc2Algo, bool encryption, byte[] key, byte[] iv); // 0x100C0FC0 + private static void .cctor(); // 0x100C0F70 + protected override void ECB(byte[] input, byte[] output); // 0x100C0170 +} + +// Namespace: System.Security.Cryptography +public abstract class RIPEMD160 : HashAlgorithm // TypeDefIndex: 1320 +{ + // Methods + protected void .ctor(); // 0x100C3EF0 + public static RIPEMD160 Create(); // 0x100C3DA0 + public static RIPEMD160 Create(string hashName); // 0x100C3E50 +} + +// Namespace: System.Security.Cryptography +public class RIPEMD160Managed : RIPEMD160 // TypeDefIndex: 1321 +{ + // Fields + private const int BLOCK_SIZE_BYTES = 64; // 0x00 + private byte[] _ProcessingBuffer; // 0x18 + private uint[] _X; // 0x1C + private uint[] _HashValue; // 0x20 + private ulong _Length; // 0x28 + private int _ProcessingBufferCount; // 0x30 + + // Methods + public void .ctor(); // 0x100C3D20 + public override void Initialize(); // 0x100C3980 + protected override void HashCore(byte[] rgb, int ibStart, int cbSize); // 0x100C36D0 + protected override byte[] HashFinal(); // 0x100C37C0 + protected override void Finalize(); // 0x100C34A0 + private void ProcessBlock(byte[] buffer, int offset); // 0x100C3B60 + private void Compress(); // 0x100C1740 + private void CompressFinal(ulong length); // 0x100C15E0 + private uint ROL(uint x, int n); // 0x100C3CF0 + private uint F(uint x, uint y, uint z); // 0x100C3490 + private uint G(uint x, uint y, uint z); // 0x100C3600 + private uint H(uint x, uint y, uint z); // 0x100C36C0 + private uint I(uint x, uint y, uint z); // 0x100C3960 + private uint J(uint x, uint y, uint z); // 0x100C3B50 + private void FF(uint a, uint b, uint c, uint d, uint e, uint x, int s); // 0x100C3440 + private void GG(uint a, uint b, uint c, uint d, uint e, uint x, int s); // 0x100C35B0 + private void HH(uint a, uint b, uint c, uint d, uint e, uint x, int s); // 0x100C3670 + private void II(uint a, uint b, uint c, uint d, uint e, uint x, int s); // 0x100C3910 + private void JJ(uint a, uint b, uint c, uint d, uint e, uint x, int s); // 0x100C3B00 + private void FFF(uint a, uint b, uint c, uint d, uint e, uint x, int s); // 0x100C3440 + private void GGG(uint a, uint b, uint c, uint d, uint e, uint x, int s); // 0x100C3560 + private void HHH(uint a, uint b, uint c, uint d, uint e, uint x, int s); // 0x100C3620 + private void III(uint a, uint b, uint c, uint d, uint e, uint x, int s); // 0x100C38C0 + private void JJJ(uint a, uint b, uint c, uint d, uint e, uint x, int s); // 0x100C3AB0 +} + +// Namespace: System.Security.Cryptography +public sealed class RNGCryptoServiceProvider : RandomNumberGenerator // TypeDefIndex: 1322 +{ + // Fields + private static object _lock; // 0x00 + private IntPtr _handle; // 0x08 + + // Methods + public void .ctor(); // 0x100C4450 + private static void .cctor(); // 0x100C4400 + private void Check(); // 0x100C3F10 + private static bool RngOpen(); // 0x100C43F0 + private static IntPtr RngInitialize(byte[] seed); // 0x100C43E0 + private static IntPtr RngGetBytes(IntPtr handle, byte[] data); // 0x100C43C0 + private static void RngClose(IntPtr handle); // 0x100C43B0 + public override void GetBytes(byte[] data); // 0x100C40B0 + public override void GetNonZeroBytes(byte[] data); // 0x100C4290 + protected override void Finalize(); // 0x100C3F90 +} + +// Namespace: System.Security.Cryptography +public abstract class RSA : AsymmetricAlgorithm // TypeDefIndex: 1323 +{ + // Methods + protected void .ctor(); // 0x100C5970 + public static RSA Create(); // 0x100C6350 + public static RSA Create(string algName); // 0x100C6400 + public abstract byte[] EncryptValue(byte[] rgb); + public abstract byte[] DecryptValue(byte[] rgb); + public abstract RSAParameters ExportParameters(bool includePrivateParameters); + public abstract void ImportParameters(RSAParameters parameters); + internal void ZeroizePrivateKey(RSAParameters parameters); // 0x100C6B70 + public override void FromXmlString(string xmlString); // 0x100C64A0 + public override string ToXmlString(bool includePrivateParameters); // 0x100C6740 +} + +// Namespace: System.Security.Cryptography +public sealed class RSACryptoServiceProvider : RSA, ICspAsymmetricAlgorithm // TypeDefIndex: 1324 +{ + // Fields + private const int PROV_RSA_FULL = 1; // 0x00 + private KeyPairPersistence store; // 0x10 + private bool persistKey; // 0x14 + private bool persisted; // 0x00 + private bool privateKeyExportable; // 0x00 + private bool m_disposed; // 0x00 + private RSAManaged rsa; // 0x00 + private static bool useMachineKeyStore; // 0x00 + private static Dictionary`2 <>f__switch$map29; // 0x04 + + // Properties + public static bool UseMachineKeyStore { get; set; } // 0x100C56E0 0x100C57B0 + public override string KeyExchangeAlgorithm { get; } // 0x100C5610 + public override int KeySize { get; } // 0x100C5640 + public bool PersistKeyInCsp { get; set; } // 0x100C5670 0x100C5730 + public bool PublicOnly { get; } // 0x100C5680 + public override string SignatureAlgorithm { get; } // 0x100C56B0 + public CspKeyContainerInfo CspKeyContainerInfo { get; } // 0x100C5600 + + // Methods + public void .ctor(); // 0x100C55D0 + public void .ctor(CspParameters parameters); // 0x100C5570 + public void .ctor(int dwKeySize); // 0x100C55A0 + public void .ctor(int dwKeySize, CspParameters parameters); // 0x100C5540 + private static void .cctor(); // 0x100C5530 + private void Common(int dwKeySize, CspParameters p); // 0x100C44C0 + protected override void Finalize(); // 0x100C4A40 + public byte[] Decrypt(byte[] rgb, bool fOAEP); // 0x100C4760 + public override byte[] DecryptValue(byte[] rgb); // 0x100C46D0 + public byte[] Encrypt(byte[] rgb, bool fOAEP); // 0x100C48A0 + public override byte[] EncryptValue(byte[] rgb); // 0x100C4870 + public override RSAParameters ExportParameters(bool includePrivateParameters); // 0x100C4990 + public override void ImportParameters(RSAParameters parameters); // 0x100C5000 + private HashAlgorithm GetHash(object halg); // 0x100C4CF0 + public byte[] SignData(byte[] buffer, object halg); // 0x100C50C0 + public byte[] SignData(Stream inputStream, object halg); // 0x100C51A0 + public byte[] SignData(byte[] buffer, int offset, int count, object halg); // 0x100C5220 + private string GetHashNameFromOID(string oid); // 0x100C4B40 + public byte[] SignHash(byte[] rgbHash, string str); // 0x100C52B0 + public bool VerifyData(byte[] buffer, object halg, byte[] signature); // 0x100C5370 + public bool VerifyHash(byte[] rgbHash, string str, byte[] rgbSignature); // 0x100C5450 + protected override void Dispose(bool disposing); // 0x100C4820 + private void OnKeyGenerated(object sender, EventArgs e); // 0x100C5040 + public byte[] ExportCspBlob(bool includePrivateParameters); // 0x100C4940 + public void ImportCspBlob(byte[] keyBlob); // 0x100C4E10 +} + +// Namespace: System.Security.Cryptography +public class RSAOAEPKeyExchangeDeformatter : AsymmetricKeyExchangeDeformatter // TypeDefIndex: 1325 +{ + // Fields + private RSA rsa; // 0x08 + + // Properties + public override string Parameters { get; set; } // 0x100C5600 0x100C5530 + + // Methods + public void .ctor(); // 0x100C5970 + public void .ctor(AsymmetricAlgorithm key); // 0x100C5980 + public override byte[] DecryptKeyExchange(byte[] rgbData); // 0x100C5810 + public override void SetKey(AsymmetricAlgorithm key); // 0x100C58F0 +} + +// Namespace: System.Security.Cryptography +public class RSAOAEPKeyExchangeFormatter : AsymmetricKeyExchangeFormatter // TypeDefIndex: 1326 +{ + // Fields + private RSA rsa; // 0x08 + private RandomNumberGenerator random; // 0x0C + private byte[] param; // 0x10 + + // Properties + public byte[] Parameter { get; set; } // 0x100BFC20 0x100C5B40 + public override string Parameters { get; } // 0x100C5600 + public RandomNumberGenerator Rng { get; set; } // 0x100C5B30 0x100C5B50 + + // Methods + public void .ctor(); // 0x100C5B10 + public void .ctor(AsymmetricAlgorithm key); // 0x100C5980 + public override byte[] CreateKeyExchange(byte[] rgbData); // 0x100C59D0 + public override byte[] CreateKeyExchange(byte[] rgbData, Type symAlgType); // 0x100C59B0 + public override void SetKey(AsymmetricAlgorithm key); // 0x100C5A90 +} + +// Namespace: System.Security.Cryptography +public class RSAPKCS1KeyExchangeDeformatter : AsymmetricKeyExchangeDeformatter // TypeDefIndex: 1327 +{ + // Fields + private RSA rsa; // 0x08 + private RandomNumberGenerator random; // 0x0C + + // Properties + public override string Parameters { get; set; } // 0x100C5600 0x100C5530 + public RandomNumberGenerator RNG { get; set; } // 0x100C5B30 0x100C5B50 + + // Methods + public void .ctor(); // 0x100C5970 + public void .ctor(AsymmetricAlgorithm key); // 0x100C5980 + public override byte[] DecryptKeyExchange(byte[] rgbIn); // 0x100C5B60 + public override void SetKey(AsymmetricAlgorithm key); // 0x100C5C30 +} + +// Namespace: System.Security.Cryptography +public class RSAPKCS1KeyExchangeFormatter : AsymmetricKeyExchangeFormatter // TypeDefIndex: 1328 +{ + // Fields + private RSA rsa; // 0x08 + private RandomNumberGenerator random; // 0x0C + + // Properties + public RandomNumberGenerator Rng { get; set; } // 0x100C5B30 0x100C5B50 + public override string Parameters { get; } // 0x100C5E70 + + // Methods + public void .ctor(); // 0x100C5970 + public void .ctor(AsymmetricAlgorithm key); // 0x100C5E50 + public override byte[] CreateKeyExchange(byte[] rgbData); // 0x100C5CB0 + public override byte[] CreateKeyExchange(byte[] rgbData, Type symAlgType); // 0x100C59B0 + private void SetRSAKey(AsymmetricAlgorithm key); // 0x100C5DB0 + public override void SetKey(AsymmetricAlgorithm key); // 0x100C5DA0 +} + +// Namespace: System.Security.Cryptography +public class RSAPKCS1SignatureDeformatter : AsymmetricSignatureDeformatter // TypeDefIndex: 1329 +{ + // Fields + private RSA rsa; // 0x08 + private string hashName; // 0x0C + + // Methods + public void .ctor(); // 0x100C5970 + public void .ctor(AsymmetricAlgorithm key); // 0x100C6150 + public override void SetHashAlgorithm(string strName); // 0x100C5F10 + public override void SetKey(AsymmetricAlgorithm key); // 0x100C5F70 + public override bool VerifySignature(byte[] rgbHash, byte[] rgbSignature); // 0x100C6010 +} + +// Namespace: System.Security.Cryptography +public class RSAPKCS1SignatureFormatter : AsymmetricSignatureFormatter // TypeDefIndex: 1330 +{ + // Fields + private RSA rsa; // 0x08 + private HashAlgorithm hash; // 0x0C + + // Methods + public void .ctor(); // 0x100C5970 + public void .ctor(AsymmetricAlgorithm key); // 0x100C6150 + public override byte[] CreateSignature(byte[] rgbHash); // 0x100C6180 + public override void SetHashAlgorithm(string strName); // 0x100C6290 + public override void SetKey(AsymmetricAlgorithm key); // 0x100C62B0 +} + +// Namespace: System.Security.Cryptography +[Serializable] +public struct RSAParameters // TypeDefIndex: 1331 +{ + // Fields + [NonSerialized] public byte[] P; // 0x08 + [NonSerialized] public byte[] Q; // 0x0C + [NonSerialized] public byte[] D; // 0x10 + [NonSerialized] public byte[] DP; // 0x14 + [NonSerialized] public byte[] DQ; // 0x18 + [NonSerialized] public byte[] InverseQ; // 0x1C + public byte[] Modulus; // 0x20 + public byte[] Exponent; // 0x24 + +} + +// Namespace: System.Security.Cryptography +public abstract class RandomNumberGenerator // TypeDefIndex: 1332 +{ + // Methods + protected void .ctor(); // 0x100BF000 + public static RandomNumberGenerator Create(); // 0x100C6C00 + public static RandomNumberGenerator Create(string rngName); // 0x100C6CB0 + public abstract void GetBytes(byte[] data); + public abstract void GetNonZeroBytes(byte[] data); +} + +// Namespace: System.Security.Cryptography +public class Rfc2898DeriveBytes : DeriveBytes // TypeDefIndex: 1333 +{ + // Fields + private const int defaultIterations = 1000; // 0x00 + private int _iteration; // 0x08 + private byte[] _salt; // 0x0C + private HMACSHA1 _hmac; // 0x10 + private byte[] _buffer; // 0x14 + private int _pos; // 0x18 + private int _f; // 0x1C + + // Properties + public int IterationCount { get; set; } // 0x100BF0C0 0x100C75B0 + public byte[] Salt { get; set; } // 0x100C7540 0x100C7610 + + // Methods + public void .ctor(string password, byte[] salt); // 0x100C7060 + public void .ctor(string password, byte[] salt, int iterations); // 0x100C7450 + public void .ctor(byte[] password, byte[] salt, int iterations); // 0x100C7150 + public void .ctor(string password, int saltSize); // 0x100C7320 + public void .ctor(string password, int saltSize, int iterations); // 0x100C71F0 + private byte[] F(byte[] s, int c, int i); // 0x100C6D50 + public override byte[] GetBytes(int cb); // 0x100C6E90 + public override void Reset(); // 0x100C7040 +} + +// Namespace: System.Security.Cryptography +public abstract class Rijndael : SymmetricAlgorithm // TypeDefIndex: 1334 +{ + // Methods + protected void .ctor(); // 0x100C7970 + public static Rijndael Create(); // 0x100E5560 + public static Rijndael Create(string algName); // 0x100E54C0 +} + +// Namespace: System.Security.Cryptography +public sealed class RijndaelManaged : Rijndael // TypeDefIndex: 1335 +{ + // Methods + public void .ctor(); // 0x100C7970 + public override void GenerateIV(); // 0x100BFF40 + public override void GenerateKey(); // 0x100BFF60 + public override ICryptoTransform CreateDecryptor(byte[] rgbKey, byte[] rgbIV); // 0x100C78D0 + public override ICryptoTransform CreateEncryptor(byte[] rgbKey, byte[] rgbIV); // 0x100C7920 +} + +// Namespace: System.Security.Cryptography +internal class RijndaelTransform : SymmetricTransform // TypeDefIndex: 1336 +{ + // Fields + private uint[] expandedKey; // 0x34 + private int Nb; // 0x38 + private int Nk; // 0x3C + private int Nr; // 0x40 + private static readonly uint[] Rcon; // 0x00 + private static readonly byte[] SBox; // 0x04 + private static readonly byte[] iSBox; // 0x08 + private static readonly uint[] T0; // 0x0C + private static readonly uint[] T1; // 0x10 + private static readonly uint[] T2; // 0x14 + private static readonly uint[] T3; // 0x18 + private static readonly uint[] iT0; // 0x1C + private static readonly uint[] iT1; // 0x20 + private static readonly uint[] iT2; // 0x24 + private static readonly uint[] iT3; // 0x28 + + // Methods + public void .ctor(Rijndael algo, bool encryption, byte[] key, byte[] iv); // 0x100E4DA0 + private static void .cctor(); // 0x100E4B90 + public void Clear(); // 0x100C7AB0 + protected override void ECB(byte[] input, byte[] output); // 0x100D6280 + private uint SubByte(uint a); // 0x100E4AA0 + private void Encrypt128(byte[] indata, byte[] outdata, uint[] ekey); // 0x100D6360 + private void Encrypt192(byte[] indata, byte[] outdata, uint[] ekey); // 0x100D98F0 + private void Encrypt256(byte[] indata, byte[] outdata, uint[] ekey); // 0x100DE670 + private void Decrypt128(byte[] indata, byte[] outdata, uint[] ekey); // 0x100C7AD0 + private void Decrypt192(byte[] indata, byte[] outdata, uint[] ekey); // 0x100CB000 + private void Decrypt256(byte[] indata, byte[] outdata, uint[] ekey); // 0x100CFDD0 +} + +// Namespace: System.Security.Cryptography +public sealed class RijndaelManagedTransform : IDisposable, ICryptoTransform // TypeDefIndex: 1337 +{ + // Fields + private RijndaelTransform _st; // 0x08 + private int _bs; // 0x0C + + // Properties + public int BlockSizeValue { get; } // 0x100C5B30 + public bool CanTransformMultipleBlocks { get; } // 0x100C7840 + public bool CanReuseTransform { get; } // 0x100C7810 + public int InputBlockSize { get; } // 0x100C7870 + public int OutputBlockSize { get; } // 0x100C78A0 + + // Methods + internal void .ctor(Rijndael algo, bool encryption, byte[] key, byte[] iv); // 0x100C7790 + private void System.IDisposable.Dispose(); // 0x100C76E0 + public void Clear(); // 0x100C76E0 + public void Reset(); // 0x100C5530 + public int TransformBlock(byte[] inputBuffer, int inputOffset, int inputCount, byte[] outputBuffer, int outputOffset); // 0x100C7710 + public byte[] TransformFinalBlock(byte[] inputBuffer, int inputOffset, int inputCount); // 0x100C7750 +} + +// Namespace: System.Security.Cryptography +public abstract class SHA1 : HashAlgorithm // TypeDefIndex: 1338 +{ + // Methods + protected void .ctor(); // 0x100C3EF0 + public static SHA1 Create(); // 0x10253A20 + public static SHA1 Create(string hashName); // 0x10253AD0 +} + +// Namespace: System.Security.Cryptography +internal class SHA1Internal // TypeDefIndex: 1339 +{ + // Fields + private const int BLOCK_SIZE_BYTES = 64; // 0x00 + private const int HASH_SIZE_BYTES = 20; // 0x00 + private uint[] _H; // 0x08 + private ulong count; // 0x10 + private byte[] _ProcessingBuffer; // 0x18 + private int _ProcessingBufferCount; // 0x1C + private uint[] buff; // 0x20 + + // Methods + public void .ctor(); // 0x10253950 + public void HashCore(byte[] rgb, int ibStart, int cbSize); // 0x102522D0 + public byte[] HashFinal(); // 0x102523B0 + public void Initialize(); // 0x102530B0 + private void ProcessBlock(byte[] inputBuffer, uint inputOffset); // 0x10253190 + private static void InitialiseBuff(uint[] buff, byte[] input, uint inputOffset); // 0x10252470 + private static void FillBuff(uint[] buff); // 0x10252060 + private void ProcessFinalBlock(byte[] inputBuffer, int inputOffset, int inputCount); // 0x10253810 + internal void AddLength(ulong length, byte[] buffer, int position); // 0x10251F30 +} + +// Namespace: System.Security.Cryptography +public sealed class SHA1CryptoServiceProvider : SHA1 // TypeDefIndex: 1340 +{ + // Fields + private SHA1Internal sha; // 0x18 + + // Methods + public void .ctor(); // 0x10251ED0 + protected override void Finalize(); // 0x10251D80 + protected override void Dispose(bool disposing); // 0x10251D70 + protected override void HashCore(byte[] rgb, int ibStart, int cbSize); // 0x10251E40 + protected override byte[] HashFinal(); // 0x10251E70 + public override void Initialize(); // 0x10251EA0 +} + +// Namespace: System.Security.Cryptography +public class SHA1Managed : SHA1 // TypeDefIndex: 1341 +{ + // Fields + private SHA1Internal sha; // 0x18 + + // Methods + public void .ctor(); // 0x102539C0 + protected override void HashCore(byte[] rgb, int ibStart, int cbSize); // 0x10251E40 + protected override byte[] HashFinal(); // 0x10251E70 + public override void Initialize(); // 0x10251EA0 +} + +// Namespace: System.Security.Cryptography +public abstract class SHA256 : HashAlgorithm // TypeDefIndex: 1342 +{ + // Methods + protected void .ctor(); // 0x10254660 + public static SHA256 Create(); // 0x102545B0 + public static SHA256 Create(string hashName); // 0x10254510 +} + +// Namespace: System.Security.Cryptography +public class SHA256Managed : SHA256 // TypeDefIndex: 1343 +{ + // Fields + private const int BLOCK_SIZE_BYTES = 64; // 0x00 + private const int HASH_SIZE_BYTES = 32; // 0x00 + private uint[] _H; // 0x18 + private ulong count; // 0x20 + private byte[] _ProcessingBuffer; // 0x28 + private int _ProcessingBufferCount; // 0x2C + private uint[] buff; // 0x30 + + // Methods + public void .ctor(); // 0x10254490 + protected override void HashCore(byte[] rgb, int ibStart, int cbSize); // 0x10253B70 + protected override byte[] HashFinal(); // 0x10253C60 + public override void Initialize(); // 0x10253D20 + private void ProcessBlock(byte[] inputBuffer, int inputOffset); // 0x10253E90 + private void ProcessFinalBlock(byte[] inputBuffer, int inputOffset, int inputCount); // 0x10254360 + internal void AddLength(ulong length, byte[] buffer, int position); // 0x10251F30 +} + +// Namespace: System.Security.Cryptography +public abstract class SHA384 : HashAlgorithm // TypeDefIndex: 1344 +{ + // Methods + protected void .ctor(); // 0x10255750 + public static SHA384 Create(); // 0x10255600 + public static SHA384 Create(string hashName); // 0x102556B0 +} + +// Namespace: System.Security.Cryptography +public class SHA384Managed : SHA384 // TypeDefIndex: 1345 +{ + // Fields + private byte[] xBuf; // 0x18 + private int xBufOff; // 0x1C + private ulong byteCount1; // 0x20 + private ulong byteCount2; // 0x28 + private ulong H1; // 0x30 + private ulong H2; // 0x38 + private ulong H3; // 0x40 + private ulong H4; // 0x48 + private ulong H5; // 0x50 + private ulong H6; // 0x58 + private ulong H7; // 0x60 + private ulong H8; // 0x68 + private ulong[] W; // 0x70 + private int wOff; // 0x74 + + // Methods + public void .ctor(); // 0x10254B60 + private void Initialize(bool reuse); // 0x10254A00 + public override void Initialize(); // 0x10254B40 + protected override void HashCore(byte[] rgb, int ibStart, int cbSize); // 0x10254680 + protected override byte[] HashFinal(); // 0x102547F0 + private void update(byte input); // 0x10255590 + private void processWord(byte[] input, int inOff); // 0x10255250 + private void unpackWord(ulong word, byte[] output, int outOff); // 0x10255450 + private void adjustByteCounts(); // 0x10254C30 + private void processLength(ulong lowW, ulong hiW); // 0x102551D0 + private void processBlock(); // 0x10254C70 +} + +// Namespace: System.Security.Cryptography +public abstract class SHA512 : HashAlgorithm // TypeDefIndex: 1346 +{ + // Methods + protected void .ctor(); // 0x102568B0 + public static SHA512 Create(); // 0x10256760 + public static SHA512 Create(string hashName); // 0x10256810 +} + +// Namespace: System.Security.Cryptography +public class SHA512Managed : SHA512 // TypeDefIndex: 1347 +{ + // Fields + private byte[] xBuf; // 0x18 + private int xBufOff; // 0x1C + private ulong byteCount1; // 0x20 + private ulong byteCount2; // 0x28 + private ulong H1; // 0x30 + private ulong H2; // 0x38 + private ulong H3; // 0x40 + private ulong H4; // 0x48 + private ulong H5; // 0x50 + private ulong H6; // 0x58 + private ulong H7; // 0x60 + private ulong H8; // 0x68 + private ulong[] W; // 0x70 + private int wOff; // 0x74 + + // Methods + public void .ctor(); // 0x10255E60 + private void Initialize(bool reuse); // 0x10255B60 + public override void Initialize(); // 0x10255B40 + protected override void HashCore(byte[] rgb, int ibStart, int cbSize); // 0x102557A0 + protected override byte[] HashFinal(); // 0x10255910 + private void update(byte input); // 0x102566F0 + private void processWord(byte[] input, int inOff); // 0x102564B0 + private void unpackWord(ulong word, byte[] output, int outOff); // 0x10255450 + private void adjustByteCounts(); // 0x10254C30 + private void processLength(ulong lowW, ulong hiW); // 0x10256430 + private void processBlock(); // 0x10255F30 + private ulong rotateRight(ulong x, int n); // 0x102566B0 + private ulong Ch(ulong x, ulong y, ulong z); // 0x10255770 + private ulong Maj(ulong x, ulong y, ulong z); // 0x10255CA0 + private ulong Sum0(ulong x); // 0x10255D90 + private ulong Sum1(ulong x); // 0x10255E00 + private ulong Sigma0(ulong x); // 0x10255CD0 + private ulong Sigma1(ulong x); // 0x10255D30 +} + +// Namespace: System.Security.Cryptography +internal static class SHAConstants // TypeDefIndex: 1348 +{ + // Fields + public static readonly uint[] K1; // 0x00 + public static readonly ulong[] K2; // 0x04 + + // Methods + private static void .cctor(); // 0x102568D0 +} + +// Namespace: System.Security.Cryptography +public class SignatureDescription // TypeDefIndex: 1349 +{ + // Fields + private string _DeformatterAlgorithm; // 0x08 + private string _DigestAlgorithm; // 0x0C + private string _FormatterAlgorithm; // 0x10 + private string _KeyAlgorithm; // 0x14 + + // Properties + public string DeformatterAlgorithm { get; set; } // 0x100BF0C0 0x100EB270 + public string DigestAlgorithm { get; set; } // 0x100C5B30 0x100C5B50 + public string FormatterAlgorithm { get; set; } // 0x100BFC20 0x100C5B40 + public string KeyAlgorithm { get; set; } // 0x100EF0C0 0x10127B00 + + // Methods + public void .ctor(); // 0x100BF000 + public void .ctor(SecurityElement el); // 0x10256C80 + public virtual AsymmetricSignatureDeformatter CreateDeformatter(AsymmetricAlgorithm key); // 0x10256950 + public virtual HashAlgorithm CreateDigest(); // 0x10256A80 + public virtual AsymmetricSignatureFormatter CreateFormatter(AsymmetricAlgorithm key); // 0x10256B50 +} + +// Namespace: System.Security.Cryptography +internal class DSASignatureDescription : SignatureDescription // TypeDefIndex: 1350 +{ + // Methods + public void .ctor(); // 0x1028F6F0 +} + +// Namespace: System.Security.Cryptography +internal class RSAPKCS1SHA1SignatureDescription : SignatureDescription // TypeDefIndex: 1351 +{ + // Methods + public void .ctor(); // 0x100C5EB0 + public override AsymmetricSignatureDeformatter CreateDeformatter(AsymmetricAlgorithm key); // 0x100C5EA0 +} + +// Namespace: System.Security.Cryptography +public abstract class SymmetricAlgorithm : IDisposable // TypeDefIndex: 1352 +{ + // Fields + protected int BlockSizeValue; // 0x08 + protected byte[] IVValue; // 0x0C + protected int KeySizeValue; // 0x10 + protected byte[] KeyValue; // 0x14 + protected KeySizes[] LegalBlockSizesValue; // 0x18 + protected KeySizes[] LegalKeySizesValue; // 0x1C + protected int FeedbackSizeValue; // 0x20 + protected CipherMode ModeValue; // 0x24 + protected PaddingMode PaddingValue; // 0x28 + private bool m_disposed; // 0x2C + + // Properties + public virtual int BlockSize { get; set; } // 0x100BF0C0 0x102571E0 + public virtual int FeedbackSize { get; set; } // 0x100EACD0 0x10257270 + public virtual byte[] IV { get; set; } // 0x102570C0 0x102572E0 + public virtual byte[] Key { get; set; } // 0x10257150 0x10257440 + public virtual int KeySize { get; set; } // 0x100BFC20 0x102573C0 + public virtual KeySizes[] LegalBlockSizes { get; } // 0x100EE580 + public virtual KeySizes[] LegalKeySizes { get; } // 0x100F85F0 + public virtual CipherMode Mode { get; set; } // 0x100EAD50 0x10257530 + public virtual PaddingMode Padding { get; set; } // 0x100EB040 0x10257620 + + // Methods + protected void .ctor(); // 0x10257090 + private void System.IDisposable.Dispose(); // 0x101A9CF0 + protected override void Finalize(); // 0x10256FB0 + public void Clear(); // 0x101A1CD0 + protected virtual void Dispose(bool disposing); // 0x10256F70 + public virtual ICryptoTransform CreateDecryptor(); // 0x10256D80 + public abstract ICryptoTransform CreateDecryptor(byte[] rgbKey, byte[] rgbIV); + public virtual ICryptoTransform CreateEncryptor(); // 0x10256DD0 + public abstract ICryptoTransform CreateEncryptor(byte[] rgbKey, byte[] rgbIV); + public abstract void GenerateIV(); + public abstract void GenerateKey(); + public bool ValidKeySize(int bitLength); // 0x10257070 + public static SymmetricAlgorithm Create(); // 0x10256EC0 + public static SymmetricAlgorithm Create(string algName); // 0x10256E20 +} + +// Namespace: System.Security.Cryptography +public class ToBase64Transform : IDisposable, ICryptoTransform // TypeDefIndex: 1353 +{ + // Fields + private const int inputBlockSize = 3; // 0x00 + private const int outputBlockSize = 4; // 0x00 + private bool m_disposed; // 0x08 + + // Properties + public bool CanTransformMultipleBlocks { get; } // 0x100EFBF0 + public virtual bool CanReuseTransform { get; } // 0x100E5880 + public int InputBlockSize { get; } // 0x10158A50 + public int OutputBlockSize { get; } // 0x100FCEA0 + + // Methods + public void .ctor(); // 0x100BF000 + private void System.IDisposable.Dispose(); // 0x10257D10 + protected override void Finalize(); // 0x10257750 + public void Clear(); // 0x10257710 + protected virtual void Dispose(bool disposing); // 0x10257730 + public int TransformBlock(byte[] inputBuffer, int inputOffset, int inputCount, byte[] outputBuffer, int outputOffset); // 0x10257D40 + internal static void InternalTransformBlock(byte[] inputBuffer, int inputOffset, int inputCount, byte[] outputBuffer, int outputOffset); // 0x10257810 + public byte[] TransformFinalBlock(byte[] inputBuffer, int inputOffset, int inputCount); // 0x10257F80 + internal static byte[] InternalTransformFinalBlock(byte[] inputBuffer, int inputOffset, int inputCount); // 0x10257A10 +} + +// Namespace: System.Security.Cryptography +public abstract class TripleDES : SymmetricAlgorithm // TypeDefIndex: 1354 +{ + // Properties + public override byte[] Key { get; set; } // 0x10258B00 0x10258BC0 + + // Methods + protected void .ctor(); // 0x102581A0 + public static bool IsWeakKey(byte[] rgbKey); // 0x10258990 + public static TripleDES Create(); // 0x10258840 + public static TripleDES Create(string str); // 0x102588F0 +} + +// Namespace: System.Security.Cryptography +public sealed class TripleDESCryptoServiceProvider : TripleDES // TypeDefIndex: 1355 +{ + // Methods + public void .ctor(); // 0x102581A0 + public override void GenerateIV(); // 0x100BFF40 + public override void GenerateKey(); // 0x10258180 + public override ICryptoTransform CreateDecryptor(byte[] rgbKey, byte[] rgbIV); // 0x102580E0 + public override ICryptoTransform CreateEncryptor(byte[] rgbKey, byte[] rgbIV); // 0x10258130 +} + +// Namespace: System.Security.Cryptography +internal class TripleDESTransform : SymmetricTransform // TypeDefIndex: 1356 +{ + // Fields + private DESTransform E1; // 0x34 + private DESTransform D2; // 0x38 + private DESTransform E3; // 0x3C + private DESTransform D1; // 0x40 + private DESTransform E2; // 0x44 + private DESTransform D3; // 0x48 + + // Methods + public void .ctor(TripleDES algo, bool encryption, byte[] key, byte[] iv); // 0x102585E0 + protected override void ECB(byte[] input, byte[] output); // 0x102582F0 + internal static byte[] GetStrongKey(); // 0x10258410 +} + +// Namespace: System.Security.Permissions +[Serializable] +public abstract class CodeAccessSecurityAttribute : SecurityAttribute // TypeDefIndex: 1357 +{ + // Methods + protected void .ctor(SecurityAction action); // 0x10245600 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class EnvironmentPermission : CodeAccessPermission, IBuiltInPermission, IUnrestrictedPermission // TypeDefIndex: 1358 +{ + // Fields + private const int version = 1; // 0x00 + private PermissionState _state; // 0x08 + private ArrayList readList; // 0x0C + private ArrayList writeList; // 0x10 + + // Methods + public void .ctor(PermissionState state); // 0x102469D0 + public void .ctor(EnvironmentPermissionAccess flag, string pathList); // 0x10246A50 + private int System.Security.Permissions.IBuiltInPermission.GetTokenIndex(); // 0x100C5600 + public void AddPathList(EnvironmentPermissionAccess flag, string pathList); // 0x10245680 + public override IPermission Copy(); // 0x102459D0 + public override void FromXml(SecurityElement esd); // 0x10245A70 + public string GetPathList(EnvironmentPermissionAccess flag); // 0x10245B30 + public override IPermission Intersect(IPermission target); // 0x10245E30 + public override bool IsSubsetOf(IPermission target); // 0x10246100 + public bool IsUnrestricted(); // 0x102425E0 + public void SetPathList(EnvironmentPermissionAccess flag, string pathList); // 0x10246460 + public override SecurityElement ToXml(); // 0x102467E0 + public override IPermission Union(IPermission other); // 0x102468A0 + private bool IsEmpty(); // 0x102460A0 + private EnvironmentPermission Cast(IPermission target); // 0x10245950 + internal void ThrowInvalidFlag(EnvironmentPermissionAccess flag, bool context); // 0x10246720 + private string GetPathList(ArrayList list); // 0x10245BA0 +} + +// Namespace: System.Security.Permissions +[Serializable] +public enum EnvironmentPermissionAccess // TypeDefIndex: 1359 +{ + NoAccess = 0, + Read = 1, + Write = 2, + AllAccess = 3 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class EnvironmentPermissionAttribute : CodeAccessSecurityAttribute // TypeDefIndex: 1360 +{ + // Fields + private string read; // 0x10 + private string write; // 0x14 + + // Properties + public string All { get; set; } // 0x10245610 0x10245660 + public string Read { get; set; } // 0x100BFC20 0x100C5B40 + public string Write { get; set; } // 0x100EF0C0 0x10127B00 + + // Methods + public void .ctor(SecurityAction action); // 0x10245600 + public override IPermission CreatePermission(); // 0x100C5600 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class FileDialogPermission : CodeAccessPermission, IBuiltInPermission, IUnrestrictedPermission // TypeDefIndex: 1361 +{ + // Fields + private const int version = 1; // 0x00 + private FileDialogPermissionAccess _access; // 0x08 + + // Properties + public FileDialogPermissionAccess Access { get; set; } // 0x100BF0C0 0x10247130 + + // Methods + public void .ctor(PermissionState state); // 0x10246FB0 + public void .ctor(FileDialogPermissionAccess access); // 0x10246FF0 + private int System.Security.Permissions.IBuiltInPermission.GetTokenIndex(); // 0x100EF660 + public override IPermission Copy(); // 0x10246C00 + public override void FromXml(SecurityElement esd); // 0x10246C50 + public override IPermission Intersect(IPermission target); // 0x10246D70 + public override bool IsSubsetOf(IPermission target); // 0x10246DE0 + public bool IsUnrestricted(); // 0x10246E10 + public override SecurityElement ToXml(); // 0x10246E20 + public override IPermission Union(IPermission target); // 0x10246EC0 + private FileDialogPermission Cast(IPermission target); // 0x10246B80 +} + +// Namespace: System.Security.Permissions +[Serializable] +public enum FileDialogPermissionAccess // TypeDefIndex: 1362 +{ + None = 0, + Open = 1, + Save = 2, + OpenSave = 3 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class FileDialogPermissionAttribute : CodeAccessSecurityAttribute // TypeDefIndex: 1363 +{ + // Fields + private bool canOpen; // 0x10 + private bool canSave; // 0x11 + + // Properties + public bool Open { get; set; } // 0x101137C0 0x10246B70 + public bool Save { get; set; } // 0x101F65A0 0x101F6610 + + // Methods + public void .ctor(SecurityAction action); // 0x10245600 + public override IPermission CreatePermission(); // 0x10246AD0 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class FileIOPermission : CodeAccessPermission, IBuiltInPermission, IUnrestrictedPermission // TypeDefIndex: 1364 +{ + // Fields + private const int version = 1; // 0x00 + private static char[] BadPathNameCharacters; // 0x00 + private static char[] BadFileNameCharacters; // 0x04 + private bool m_Unrestricted; // 0x08 + private FileIOPermissionAccess m_AllFilesAccess; // 0x0C + private FileIOPermissionAccess m_AllLocalFilesAccess; // 0x10 + private ArrayList readList; // 0x14 + private ArrayList writeList; // 0x18 + private ArrayList appendList; // 0x1C + private ArrayList pathList; // 0x20 + + // Properties + public FileIOPermissionAccess AllFiles { get; set; } // 0x100C5B30 0x10249A20 + public FileIOPermissionAccess AllLocalFiles { get; set; } // 0x100BFC20 0x10249A40 + + // Methods + public void .ctor(PermissionState state); // 0x10249970 + public void .ctor(FileIOPermissionAccess access, string path); // 0x10249870 + public void .ctor(FileIOPermissionAccess access, string[] pathList); // 0x102497F0 + public void .ctor(FileIOPermissionAccess access, AccessControlActions control, string path); // 0x102499C0 + public void .ctor(FileIOPermissionAccess access, AccessControlActions control, string[] pathList); // 0x10249790 + private static void .cctor(); // 0x10249720 + private int System.Security.Permissions.IBuiltInPermission.GetTokenIndex(); // 0x1016F1E0 + internal void CreateLists(); // 0x102478F0 + public void AddPathList(FileIOPermissionAccess access, string path); // 0x10247410 + public void AddPathList(FileIOPermissionAccess access, string[] pathList); // 0x102474A0 + internal void AddPathInternal(FileIOPermissionAccess access, string path); // 0x10247320 + public override IPermission Copy(); // 0x10247690 + public override void FromXml(SecurityElement esd); // 0x10247980 + public string[] GetPathList(FileIOPermissionAccess access); // 0x10247B90 + public override IPermission Intersect(IPermission target); // 0x10248070 + public override bool IsSubsetOf(IPermission target); // 0x10248280 + public bool IsUnrestricted(); // 0x100EA020 + public void SetPathList(FileIOPermissionAccess access, string path); // 0x102487E0 + public void SetPathList(FileIOPermissionAccess access, string[] pathList); // 0x10248700 + public override SecurityElement ToXml(); // 0x10248C10 + public override IPermission Union(IPermission other); // 0x10249220 + public override bool Equals(object obj); // 0x100EFBF0 + public override int GetHashCode(); // 0x10247B80 + private bool IsEmpty(); // 0x102481E0 + private static FileIOPermission Cast(IPermission target); // 0x10247570 + internal static void ThrowInvalidFlag(FileIOPermissionAccess access, bool context); // 0x10248B50 + internal static void ThrowIfInvalidPath(string path); // 0x10248910 + internal static void ThrowIfInvalidPath(string[] paths); // 0x10248880 + internal void Clear(FileIOPermissionAccess access); // 0x102475F0 + internal static bool KeyIsSubsetOf(IList local, IList target); // 0x10248430 + internal static void UnionKeys(IList list, string[] paths); // 0x102490A0 + internal static void IntersectKeys(IList local, IList target, IList result); // 0x10247D30 +} + +// Namespace: System.Security.Permissions +[Serializable] +public enum FileIOPermissionAccess // TypeDefIndex: 1365 +{ + NoAccess = 0, + Read = 1, + Write = 2, + Append = 4, + PathDiscovery = 8, + AllAccess = 15 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class FileIOPermissionAttribute : CodeAccessSecurityAttribute // TypeDefIndex: 1366 +{ + // Fields + private string append; // 0x10 + private string path; // 0x14 + private string read; // 0x18 + private string write; // 0x1C + private FileIOPermissionAccess allFiles; // 0x20 + private FileIOPermissionAccess allLocalFiles; // 0x24 + private string changeAccessControl; // 0x28 + private string viewAccessControl; // 0x2C + + // Properties + public string All { get; set; } // 0x10247260 0x10247300 + public string Append { get; set; } // 0x100BFC20 0x100C5B40 + public string PathDiscovery { get; set; } // 0x100EF0C0 0x10127B00 + public string Read { get; set; } // 0x100EE580 0x10113F40 + public string Write { get; set; } // 0x100F85F0 0x10113F50 + public FileIOPermissionAccess AllFiles { get; set; } // 0x100EACD0 0x100EB230 + public FileIOPermissionAccess AllLocalFiles { get; set; } // 0x100EAD50 0x100EB240 + public string ChangeAccessControl { get; set; } // 0x100EB040 0x100EB250 + public string ViewAccessControl { get; set; } // 0x100EB200 0x100EB260 + public string ViewAndModify { get; set; } // 0x102472B0 0x10247300 + + // Methods + public void .ctor(SecurityAction action); // 0x10245600 + public override IPermission CreatePermission(); // 0x100C5600 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class GacIdentityPermission : CodeAccessPermission, IBuiltInPermission // TypeDefIndex: 1367 +{ + // Fields + private const int version = 1; // 0x00 + + // Methods + public void .ctor(); // 0x100C5970 + public void .ctor(PermissionState state); // 0x10240360 + private int System.Security.Permissions.IBuiltInPermission.GetTokenIndex(); // 0x10249C20 + public override IPermission Copy(); // 0x10249B20 + public override IPermission Intersect(IPermission target); // 0x10249BA0 + public override bool IsSubsetOf(IPermission target); // 0x10249C00 + public override IPermission Union(IPermission target); // 0x10249C50 + public override void FromXml(SecurityElement securityElement); // 0x10249B60 + public override SecurityElement ToXml(); // 0x10249C30 + private GacIdentityPermission Cast(IPermission target); // 0x10249AA0 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class GacIdentityPermissionAttribute : CodeAccessSecurityAttribute // TypeDefIndex: 1368 +{ + // Methods + public void .ctor(SecurityAction action); // 0x10245600 + public override IPermission CreatePermission(); // 0x10249A60 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class HostProtectionAttribute : CodeAccessSecurityAttribute // TypeDefIndex: 1369 +{ + // Fields + private HostProtectionResource _resources; // 0x10 + + // Properties + public bool ExternalProcessMgmt { get; set; } // 0x1023F250 0x1023F460 + public bool ExternalThreading { get; set; } // 0x1023F200 0x1023F390 + public bool MayLeakOnAbort { get; set; } // 0x1023F1C0 0x1023F2F0 + public bool SecurityInfrastructure { get; set; } // 0x1023F1E0 0x1023F340 + public bool SelfAffectingProcessMgmt { get; set; } // 0x1023F210 0x1023F3B0 + public bool SelfAffectingThreading { get; set; } // 0x1023F1D0 0x1023F320 + public bool SharedState { get; set; } // 0x1023F260 0x1023F480 + public bool Synchronization { get; set; } // 0x1023F190 0x1023F270 + public bool UI { get; set; } // 0x1023F240 0x1023F430 + public HostProtectionResource Resources { get; set; } // 0x100BFC20 0x100C5B40 + + // Methods + public void .ctor(); // 0x10249CA0 + public void .ctor(SecurityAction action); // 0x10249CC0 + public override IPermission CreatePermission(); // 0x100C5600 +} + +// Namespace: System.Security.Permissions +[Serializable] +internal sealed class HostProtectionPermission : CodeAccessPermission, IBuiltInPermission, IUnrestrictedPermission // TypeDefIndex: 1370 +{ + // Fields + private const int version = 1; // 0x00 + private HostProtectionResource _resources; // 0x08 + + // Properties + public HostProtectionResource Resources { get; set; } // 0x100BF0C0 0x1024A470 + + // Methods + public void .ctor(PermissionState state); // 0x1024A2F0 + public void .ctor(HostProtectionResource resources); // 0x1024A330 + private int System.Security.Permissions.IBuiltInPermission.GetTokenIndex(); // 0x1024A160 + public override IPermission Copy(); // 0x10249ED0 + public override IPermission Intersect(IPermission target); // 0x1024A010 + public override IPermission Union(IPermission target); // 0x1024A200 + public override bool IsSubsetOf(IPermission target); // 0x1024A0F0 + public override void FromXml(SecurityElement e); // 0x10249F20 + public override SecurityElement ToXml(); // 0x1024A170 + public bool IsUnrestricted(); // 0x1024A140 + private HostProtectionPermission Cast(IPermission target); // 0x10249E50 +} + +// Namespace: System.Security.Permissions +[Serializable] +public enum HostProtectionResource // TypeDefIndex: 1371 +{ + None = 0, + Synchronization = 1, + SharedState = 2, + ExternalProcessMgmt = 4, + SelfAffectingProcessMgmt = 8, + ExternalThreading = 16, + SelfAffectingThreading = 32, + SecurityInfrastructure = 64, + UI = 128, + MayLeakOnAbort = 256, + All = 511 +} + +// Namespace: System.Security.Permissions +internal interface IBuiltInPermission // TypeDefIndex: 1372 +{ + // Methods + int GetTokenIndex(); +} + +// Namespace: System.Security.Permissions +internal enum BuiltInToken // TypeDefIndex: 1373 +{ + Environment = 0, + FileDialog = 1, + FileIO = 2, + IsolatedStorageFile = 3, + Reflection = 4, + Registry = 5, + Security = 6, + UI = 7, + Principal = 8, + HostProtection = 9, + PublisherIdentity = 10, + SiteIdentity = 11, + StrongNameIdentity = 12, + UrlIdentity = 13, + ZoneIdentity = 14, + GacIdentity = 15, + KeyContainer = 16 +} + +// Namespace: System.Security.Permissions +public interface IUnrestrictedPermission // TypeDefIndex: 1374 +{ + // Methods + bool IsUnrestricted(); +} + +// Namespace: System.Security.Permissions +[Serializable] +public enum IsolatedStorageContainment // TypeDefIndex: 1375 +{ + None = 0, + DomainIsolationByUser = 16, + ApplicationIsolationByUser = 21, + AssemblyIsolationByUser = 32, + DomainIsolationByMachine = 48, + AssemblyIsolationByMachine = 64, + ApplicationIsolationByMachine = 69, + DomainIsolationByRoamingUser = 80, + AssemblyIsolationByRoamingUser = 96, + ApplicationIsolationByRoamingUser = 101, + AdministerIsolatedStorageByUser = 112, + UnrestrictedIsolatedStorage = 240 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class IsolatedStorageFilePermission : IsolatedStoragePermission, IBuiltInPermission // TypeDefIndex: 1376 +{ + // Fields + private const int version = 1; // 0x00 + + // Methods + public void .ctor(PermissionState state); // 0x1024AF30 + private int System.Security.Permissions.IBuiltInPermission.GetTokenIndex(); // 0x10158A50 + public override IPermission Copy(); // 0x1024AA30 + public override IPermission Intersect(IPermission target); // 0x1024AAD0 + public override bool IsSubsetOf(IPermission target); // 0x1024AC10 + public override IPermission Union(IPermission target); // 0x1024AD80 + public override SecurityElement ToXml(); // 0x1024ACA0 + private IsolatedStorageFilePermission Cast(IPermission target); // 0x1024A9B0 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class IsolatedStorageFilePermissionAttribute : IsolatedStoragePermissionAttribute // TypeDefIndex: 1377 +{ + // Methods + public void .ctor(SecurityAction action); // 0x10245600 + public override IPermission CreatePermission(); // 0x1024A8E0 +} + +// Namespace: System.Security.Permissions +[Serializable] +public abstract class IsolatedStoragePermission : CodeAccessPermission, IUnrestrictedPermission // TypeDefIndex: 1378 +{ + // Fields + private const int version = 1; // 0x00 + internal long m_userQuota; // 0x08 + internal long m_machineQuota; // 0x10 + internal long m_expirationDays; // 0x18 + internal bool m_permanentData; // 0x20 + internal IsolatedStorageContainment m_allowed; // 0x24 + + // Properties + public long UserQuota { get; set; } // 0x10203300 0x1024B2D0 + public IsolatedStorageContainment UsageAllowed { get; set; } // 0x100EAD50 0x1024B170 + + // Methods + protected void .ctor(PermissionState state); // 0x1024AF30 + public bool IsUnrestricted(); // 0x1024B150 + public override SecurityElement ToXml(); // 0x1024ACA0 + public override void FromXml(SecurityElement esd); // 0x1024AFA0 + internal bool IsEmpty(); // 0x1024B130 +} + +// Namespace: System.Security.Permissions +[Serializable] +public abstract class IsolatedStoragePermissionAttribute : CodeAccessSecurityAttribute // TypeDefIndex: 1379 +{ + // Fields + private IsolatedStorageContainment usage_allowed; // 0x10 + private long user_quota; // 0x18 + + // Properties + public IsolatedStorageContainment UsageAllowed { get; set; } // 0x100BFC20 0x100C5B40 + public long UserQuota { get; set; } // 0x1024AF70 0x1024AF80 + + // Methods + protected void .ctor(SecurityAction action); // 0x10245600 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class KeyContainerPermission : CodeAccessPermission, IBuiltInPermission, IUnrestrictedPermission // TypeDefIndex: 1380 +{ + // Fields + private const int version = 1; // 0x00 + private KeyContainerPermissionAccessEntryCollection _accessEntries; // 0x08 + private KeyContainerPermissionFlags _flags; // 0x0C + + // Properties + public KeyContainerPermissionAccessEntryCollection AccessEntries { get; } // 0x100BF0C0 + public KeyContainerPermissionFlags Flags { get; } // 0x100C5B30 + + // Methods + public void .ctor(PermissionState state); // 0x1024C730 + public void .ctor(KeyContainerPermissionFlags flags); // 0x1024C710 + public void .ctor(KeyContainerPermissionFlags flags, KeyContainerPermissionAccessEntry[] accessList); // 0x1024C760 + private int System.Security.Permissions.IBuiltInPermission.GetTokenIndex(); // 0x10209180 + public override IPermission Copy(); // 0x1024BDF0 + public override void FromXml(SecurityElement securityElement); // 0x1024BF00 + public override IPermission Intersect(IPermission target); // 0x100C5600 + public override bool IsSubsetOf(IPermission target); // 0x100EFBF0 + public bool IsUnrestricted(); // 0x1024C010 + public override SecurityElement ToXml(); // 0x1024C0F0 + public override IPermission Union(IPermission target); // 0x1024C160 + private void SetFlags(KeyContainerPermissionFlags flags); // 0x1024C030 + private KeyContainerPermission Cast(IPermission target); // 0x1024BD70 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class KeyContainerPermissionAccessEntry // TypeDefIndex: 1381 +{ + // Fields + private KeyContainerPermissionFlags _flags; // 0x08 + private string _containerName; // 0x0C + private int _spec; // 0x10 + private string _store; // 0x14 + private string _providerName; // 0x18 + private int _type; // 0x1C + + // Properties + public KeyContainerPermissionFlags Flags { get; set; } // 0x100BF0C0 0x1024BAB0 + public string KeyContainerName { get; set; } // 0x100C5B30 0x100C5B50 + public int KeySpec { get; set; } // 0x100BFC20 0x100C5B40 + public string KeyStore { get; set; } // 0x100EF0C0 0x10127B00 + public string ProviderName { get; set; } // 0x100EE580 0x10113F40 + public int ProviderType { get; set; } // 0x100F85F0 0x10113F50 + + // Methods + public void .ctor(CspParameters parameters, KeyContainerPermissionFlags flags); // 0x1024BA20 + public void .ctor(string keyContainerName, KeyContainerPermissionFlags flags); // 0x1024B9B0 + public void .ctor(string keyStore, string providerName, int providerType, string keyContainerName, int keySpec, KeyContainerPermissionFlags flags); // 0x1024B9E0 + public override bool Equals(object o); // 0x1024B830 + public override int GetHashCode(); // 0x1024B950 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class KeyContainerPermissionAccessEntryCollection : IEnumerable, ICollection // TypeDefIndex: 1382 +{ + // Fields + private ArrayList _list; // 0x08 + + // Properties + public int Count { get; } // 0x101273C0 + public bool IsSynchronized { get; } // 0x100EFBF0 + public KeyContainerPermissionAccessEntry Item { get; } // 0x1024B660 + public object SyncRoot { get; } // 0x100F7810 + + // Methods + internal void .ctor(); // 0x1024B610 + internal void .ctor(KeyContainerPermissionAccessEntry[] entries); // 0x1024B590 + private void System.Collections.ICollection.CopyTo(Array array, int index); // 0x101135E0 + private IEnumerator System.Collections.IEnumerable.GetEnumerator(); // 0x1024B520 + public int Add(KeyContainerPermissionAccessEntry accessEntry); // 0x1013FCE0 + public void Clear(); // 0x1013FD10 + public void CopyTo(KeyContainerPermissionAccessEntry[] array, int index); // 0x101135E0 + public KeyContainerPermissionAccessEntryEnumerator GetEnumerator(); // 0x1024B2F0 + public int IndexOf(KeyContainerPermissionAccessEntry accessEntry); // 0x1024B360 + public void Remove(KeyContainerPermissionAccessEntry accessEntry); // 0x1024B440 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class KeyContainerPermissionAccessEntryEnumerator : IEnumerator // TypeDefIndex: 1383 +{ + // Fields + private IEnumerator e; // 0x08 + + // Properties + private object System.Collections.IEnumerator.Current { get; } // 0x1024B770 + public KeyContainerPermissionAccessEntry Current { get; } // 0x1024B7C0 + + // Methods + internal void .ctor(ArrayList list); // 0x10125510 + public bool MoveNext(); // 0x1024B6D0 + public void Reset(); // 0x1024B720 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class KeyContainerPermissionAttribute : CodeAccessSecurityAttribute // TypeDefIndex: 1384 +{ + // Fields + private KeyContainerPermissionFlags _flags; // 0x10 + private string _containerName; // 0x14 + private int _spec; // 0x18 + private string _store; // 0x1C + private string _providerName; // 0x20 + private int _type; // 0x24 + + // Properties + public KeyContainerPermissionFlags Flags { get; set; } // 0x100BFC20 0x100C5B40 + public string KeyContainerName { get; set; } // 0x100EF0C0 0x10127B00 + public int KeySpec { get; set; } // 0x100EE580 0x10113F40 + public string KeyStore { get; set; } // 0x100F85F0 0x10113F50 + public string ProviderName { get; set; } // 0x100EACD0 0x100EB230 + public int ProviderType { get; set; } // 0x100EAD50 0x100EB240 + + // Methods + public void .ctor(SecurityAction action); // 0x1024BD40 + public override IPermission CreatePermission(); // 0x1024BB70 + private bool EmptyEntry(); // 0x1024BD10 +} + +// Namespace: System.Security.Permissions +[Serializable] +public enum KeyContainerPermissionFlags // TypeDefIndex: 1385 +{ + NoFlags = 0, + Create = 1, + Open = 2, + Delete = 4, + Import = 16, + Export = 32, + Sign = 256, + Decrypt = 512, + ViewAcl = 4096, + ChangeAcl = 8192, + AllFlags = 13111 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class PermissionSetAttribute : CodeAccessSecurityAttribute // TypeDefIndex: 1386 +{ + // Fields + private string file; // 0x10 + private string name; // 0x14 + private bool isUnicodeEncoded; // 0x18 + private string xml; // 0x1C + private string hex; // 0x20 + + // Properties + public string File { get; set; } // 0x100BFC20 0x100C5B40 + public string Hex { get; set; } // 0x100EACD0 0x100EB230 + public string Name { get; set; } // 0x100EF0C0 0x10127B00 + public bool UnicodeEncoded { get; set; } // 0x1010C980 0x10197FF0 + public string XML { get; set; } // 0x100F85F0 0x10113F50 + + // Methods + public void .ctor(SecurityAction action); // 0x10245600 + public override IPermission CreatePermission(); // 0x100C5600 + private PermissionSet CreateFromXml(string xml); // 0x100C5600 + public PermissionSet CreatePermissionSet(); // 0x100C5600 +} + +// Namespace: System.Security.Permissions +[Serializable] +public enum PermissionState // TypeDefIndex: 1387 +{ + None = 0, + Unrestricted = 1 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class PrincipalPermission : IBuiltInPermission, IUnrestrictedPermission, IPermission, ISecurityEncodable // TypeDefIndex: 1388 +{ + // Fields + private const int version = 1; // 0x00 + private ArrayList principals; // 0x08 + + // Methods + public void .ctor(PermissionState state); // 0x1024F220 + public void .ctor(string name, string role); // 0x1024F200 + public void .ctor(string name, string role, bool isAuthenticated); // 0x1024F2D0 + internal void .ctor(ArrayList principals); // 0x1024F370 + private int System.Security.Permissions.IBuiltInPermission.GetTokenIndex(); // 0x10171CD0 + public IPermission Copy(); // 0x1024D680 + public void Demand(); // 0x1024D6D0 + public void FromXml(SecurityElement elem); // 0x1024DE00 + public IPermission Intersect(IPermission target); // 0x1024E120 + public bool IsSubsetOf(IPermission target); // 0x1024E5B0 + public bool IsUnrestricted(); // 0x1024E9C0 + public override string ToString(); // 0x1024EBA0 + public SecurityElement ToXml(); // 0x1024EBD0 + public IPermission Union(IPermission other); // 0x1024EF60 + public override bool Equals(object obj); // 0x1024DA00 + public override int GetHashCode(); // 0x102110E0 + private PrincipalPermission Cast(IPermission target); // 0x1024D310 + private bool IsEmpty(); // 0x1015FFD0 + internal int CheckSecurityElement(SecurityElement se, string parameterName, int minimumVersion, int maximumVersion); // 0x1024D390 +} + +// Namespace: +internal class PrincipalInfo // TypeDefIndex: 1389 +{ + // Fields + private string _name; // 0x08 + private string _role; // 0x0C + private bool _isAuthenticated; // 0x10 + + // Properties + public string Name { get; } // 0x100BF0C0 + public string Role { get; } // 0x100C5B30 + public bool IsAuthenticated { get; } // 0x101137C0 + + // Methods + public void .ctor(string name, string role, bool isAuthenticated); // 0x1024D240 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class PrincipalPermissionAttribute : CodeAccessSecurityAttribute // TypeDefIndex: 1390 +{ + // Fields + private bool authenticated; // 0x10 + private string name; // 0x14 + private string role; // 0x18 + + // Properties + public bool Authenticated { get; set; } // 0x101137C0 0x10246B70 + public string Name { get; set; } // 0x100EF0C0 0x10127B00 + public string Role { get; set; } // 0x100EE580 0x10113F40 + + // Methods + public void .ctor(SecurityAction action); // 0x1024D2F0 + public override IPermission CreatePermission(); // 0x1024D270 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class PublisherIdentityPermission : CodeAccessPermission, IBuiltInPermission // TypeDefIndex: 1391 +{ + // Fields + private const int version = 1; // 0x00 + private X509Certificate x509; // 0x08 + + // Properties + public X509Certificate Certificate { get; set; } // 0x100BF0C0 0x1024FB80 + + // Methods + public void .ctor(PermissionState state); // 0x10240360 + public void .ctor(X509Certificate certificate); // 0x1024FB10 + private int System.Security.Permissions.IBuiltInPermission.GetTokenIndex(); // 0x1024F8F0 + public override IPermission Copy(); // 0x1024F5F0 + public override void FromXml(SecurityElement esd); // 0x1024F660 + public override IPermission Intersect(IPermission target); // 0x1024F740 + public override bool IsSubsetOf(IPermission target); // 0x1024F830 + public override SecurityElement ToXml(); // 0x1024F900 + public override IPermission Union(IPermission target); // 0x1024F980 + private PublisherIdentityPermission Cast(IPermission target); // 0x1024F570 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class PublisherIdentityPermissionAttribute : CodeAccessSecurityAttribute // TypeDefIndex: 1392 +{ + // Fields + private string certFile; // 0x10 + private string signedFile; // 0x14 + private string x509data; // 0x18 + + // Properties + public string CertFile { get; set; } // 0x100BFC20 0x100C5B40 + public string SignedFile { get; set; } // 0x100EF0C0 0x10127B00 + public string X509Certificate { get; set; } // 0x100EE580 0x10113F40 + + // Methods + public void .ctor(SecurityAction action); // 0x10245600 + public override IPermission CreatePermission(); // 0x1024F420 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class ReflectionPermission : CodeAccessPermission, IBuiltInPermission, IUnrestrictedPermission // TypeDefIndex: 1393 +{ + // Fields + private const int version = 1; // 0x00 + private ReflectionPermissionFlag flags; // 0x08 + + // Properties + public ReflectionPermissionFlag Flags { get; set; } // 0x100BF0C0 0x10250340 + + // Methods + public void .ctor(PermissionState state); // 0x102502F0 + public void .ctor(ReflectionPermissionFlag flag); // 0x10250320 + private int System.Security.Permissions.IBuiltInPermission.GetTokenIndex(); // 0x100FCEA0 + public override IPermission Copy(); // 0x1024FD50 + public override void FromXml(SecurityElement esd); // 0x1024FDA0 + public override IPermission Intersect(IPermission target); // 0x1024FEB0 + public override bool IsSubsetOf(IPermission target); // 0x1024FF70 + public bool IsUnrestricted(); // 0x1024FFC0 + public override SecurityElement ToXml(); // 0x1024FFD0 + public override IPermission Union(IPermission other); // 0x102501D0 + private ReflectionPermission Cast(IPermission target); // 0x1024FCD0 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class ReflectionPermissionAttribute : CodeAccessSecurityAttribute // TypeDefIndex: 1394 +{ + // Fields + private ReflectionPermissionFlag flags; // 0x10 + private bool memberAccess; // 0x14 + private bool reflectionEmit; // 0x15 + private bool typeInfo; // 0x16 + + // Properties + public ReflectionPermissionFlag Flags { get; set; } // 0x100BFC20 0x1024FBF0 + public bool MemberAccess { get; set; } // 0x100C5670 0x1024FC20 + public bool ReflectionEmit { get; set; } // 0x10142240 0x1024FC50 + public bool RestrictedMemberAccess { get; set; } // 0x1023F210 0x1024FC80 + public bool TypeInformation { get; set; } // 0x1024FBE0 0x1024FCA0 + + // Methods + public void .ctor(SecurityAction action); // 0x10245600 + public override IPermission CreatePermission(); // 0x100C5600 +} + +// Namespace: System.Security.Permissions +[Serializable] +public enum ReflectionPermissionFlag // TypeDefIndex: 1395 +{ + NoFlags = 0, + TypeInformation = 1, + MemberAccess = 2, + ReflectionEmit = 4, + AllFlags = 7, + RestrictedMemberAccess = 8 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class RegistryPermission : CodeAccessPermission, IBuiltInPermission, IUnrestrictedPermission // TypeDefIndex: 1396 +{ + // Fields + private const int version = 1; // 0x00 + private PermissionState _state; // 0x08 + private ArrayList createList; // 0x0C + private ArrayList readList; // 0x10 + private ArrayList writeList; // 0x14 + + // Methods + public void .ctor(PermissionState state); // 0x10251CE0 + public void .ctor(RegistryPermissionAccess access, string pathList); // 0x10251B00 + public void .ctor(RegistryPermissionAccess access, AccessControlActions control, string pathList); // 0x10251BA0 + private int System.Security.Permissions.IBuiltInPermission.GetTokenIndex(); // 0x10251780 + public void AddPathList(RegistryPermissionAccess access, string pathList); // 0x10250450 + public void AddPathList(RegistryPermissionAccess access, AccessControlActions control, string pathList); // 0x10250400 + public string GetPathList(RegistryPermissionAccess access); // 0x10250BB0 + public void SetPathList(RegistryPermissionAccess access, string pathList); // 0x102513F0 + public override IPermission Copy(); // 0x10250770 + public override void FromXml(SecurityElement esd); // 0x10250830 + public override IPermission Intersect(IPermission target); // 0x10250F40 + public override bool IsSubsetOf(IPermission target); // 0x102510B0 + public bool IsUnrestricted(); // 0x102425E0 + public override SecurityElement ToXml(); // 0x10251850 + public override IPermission Union(IPermission other); // 0x10251940 + private bool IsEmpty(); // 0x10251030 + private RegistryPermission Cast(IPermission target); // 0x102506F0 + internal void ThrowInvalidFlag(RegistryPermissionAccess flag, bool context); // 0x10251790 + private string GetPathList(ArrayList list); // 0x10250920 + internal bool KeyIsSubsetOf(IList local, IList target); // 0x10251150 + internal void AddWithUnionKey(IList list, string pathList); // 0x10250560 + internal void IntersectKeys(IList local, IList target, IList result); // 0x10250C40 +} + +// Namespace: System.Security.Permissions +[Serializable] +public enum RegistryPermissionAccess // TypeDefIndex: 1397 +{ + NoAccess = 0, + Read = 1, + Write = 2, + Create = 4, + AllAccess = 7 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class RegistryPermissionAttribute : CodeAccessSecurityAttribute // TypeDefIndex: 1398 +{ + // Fields + private string create; // 0x10 + private string read; // 0x14 + private string write; // 0x18 + private string changeAccessControl; // 0x1C + private string viewAccessControl; // 0x20 + + // Properties + public string All { get; set; } // 0x1023ECC0 0x1023ED60 + public string Create { get; set; } // 0x100BFC20 0x100C5B40 + public string Read { get; set; } // 0x100EF0C0 0x10127B00 + public string Write { get; set; } // 0x100EE580 0x10113F40 + public string ChangeAccessControl { get; set; } // 0x100F85F0 0x10113F50 + public string ViewAccessControl { get; set; } // 0x100EACD0 0x100EB230 + public string ViewAndModify { get; set; } // 0x1023ED10 0x1023ED60 + + // Methods + public void .ctor(SecurityAction action); // 0x1023ECB0 + public override IPermission CreatePermission(); // 0x1023EBF0 +} + +// Namespace: System.Security.Permissions +[Serializable] +public enum SecurityAction // TypeDefIndex: 1399 +{ + Demand = 2, + Assert = 3, + Deny = 4, + PermitOnly = 5, + LinkDemand = 6, + InheritanceDemand = 7, + RequestMinimum = 8, + RequestOptional = 9, + RequestRefuse = 10 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class SecurityPermission : CodeAccessPermission, IBuiltInPermission, IUnrestrictedPermission // TypeDefIndex: 1400 +{ + // Fields + private const int version = 1; // 0x00 + private SecurityPermissionFlag flags; // 0x08 + + // Properties + public SecurityPermissionFlag Flags { get; set; } // 0x100BF0C0 0x1023FAB0 + + // Methods + public void .ctor(PermissionState state); // 0x1023FA70 + public void .ctor(SecurityPermissionFlag flag); // 0x1023F9A0 + private int System.Security.Permissions.IBuiltInPermission.GetTokenIndex(); // 0x1023F7E0 + public bool IsUnrestricted(); // 0x1023F7C0 + public override IPermission Copy(); // 0x1023F520 + public override IPermission Intersect(IPermission target); // 0x1023F690 + public override IPermission Union(IPermission target); // 0x1023F8B0 + public override bool IsSubsetOf(IPermission target); // 0x1023F770 + public override void FromXml(SecurityElement esd); // 0x1023F570 + public override SecurityElement ToXml(); // 0x1023F7F0 + private bool IsEmpty(); // 0x1023F760 + private SecurityPermission Cast(IPermission target); // 0x1023F4A0 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class SecurityPermissionAttribute : CodeAccessSecurityAttribute // TypeDefIndex: 1401 +{ + // Fields + private SecurityPermissionFlag m_Flags; // 0x10 + + // Properties + public bool Assertion { get; set; } // 0x1023F190 0x1023F270 + public bool BindingRedirects { get; set; } // 0x1023F1A0 0x1023F290 + public bool ControlAppDomain { get; set; } // 0x1023F1B0 0x1023F2C0 + public bool ControlDomainPolicy { get; set; } // 0x1023F1C0 0x1023F2F0 + public bool ControlEvidence { get; set; } // 0x1023F1D0 0x1023F320 + public bool ControlPolicy { get; set; } // 0x1023F1E0 0x1023F340 + public bool ControlPrincipal { get; set; } // 0x1023F1F0 0x1023F360 + public bool ControlThread { get; set; } // 0x1023F200 0x1023F390 + public bool Execution { get; set; } // 0x1023F210 0x1023F3B0 + public bool Infrastructure { get; set; } // 0x1023F220 0x1023F3D0 + public bool RemotingConfiguration { get; set; } // 0x1023F230 0x1023F400 + public bool SerializationFormatter { get; set; } // 0x1023F240 0x1023F430 + public bool SkipVerification { get; set; } // 0x1023F250 0x1023F460 + public bool UnmanagedCode { get; set; } // 0x1023F260 0x1023F480 + public SecurityPermissionFlag Flags { get; set; } // 0x100BFC20 0x100C5B40 + + // Methods + public void .ctor(SecurityAction action); // 0x1023F170 + public override IPermission CreatePermission(); // 0x100C5600 +} + +// Namespace: System.Security.Permissions +[Serializable] +public enum SecurityPermissionFlag // TypeDefIndex: 1402 +{ + NoFlags = 0, + Assertion = 1, + UnmanagedCode = 2, + SkipVerification = 4, + Execution = 8, + ControlThread = 16, + ControlEvidence = 32, + ControlPolicy = 64, + SerializationFormatter = 128, + ControlDomainPolicy = 256, + ControlPrincipal = 512, + ControlAppDomain = 1024, + RemotingConfiguration = 2048, + Infrastructure = 4096, + BindingRedirects = 8192, + AllFlags = 16383 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class SiteIdentityPermission : CodeAccessPermission, IBuiltInPermission // TypeDefIndex: 1403 +{ + // Fields + private const int version = 1; // 0x00 + private string _site; // 0x08 + private static bool[] valid; // 0x00 + + // Properties + public string Site { get; set; } // 0x10240380 0x102403E0 + + // Methods + public void .ctor(PermissionState state); // 0x10240360 + public void .ctor(string site); // 0x10240340 + private static void .cctor(); // 0x102402F0 + private int System.Security.Permissions.IBuiltInPermission.GetTokenIndex(); // 0x10240160 + public override IPermission Copy(); // 0x1023FC90 + public override void FromXml(SecurityElement esd); // 0x1023FD00 + public override IPermission Intersect(IPermission target); // 0x1023FD70 + public override bool IsSubsetOf(IPermission target); // 0x1023FE30 + public override SecurityElement ToXml(); // 0x10240170 + public override IPermission Union(IPermission target); // 0x102401D0 + private bool IsEmpty(); // 0x1023F760 + private SiteIdentityPermission Cast(IPermission target); // 0x1023FC10 + private bool IsValid(string s); // 0x1023FF10 + private bool Match(string target); // 0x10240020 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class SiteIdentityPermissionAttribute : CodeAccessSecurityAttribute // TypeDefIndex: 1404 +{ + // Fields + private string site; // 0x10 + + // Properties + public string Site { get; set; } // 0x100BFC20 0x100C5B40 + + // Methods + public void .ctor(SecurityAction action); // 0x1023ECB0 + public override IPermission CreatePermission(); // 0x1023FB70 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class StrongNameIdentityPermission : CodeAccessPermission, IBuiltInPermission // TypeDefIndex: 1405 +{ + // Fields + private const int version = 1; // 0x00 + private static Version defaultVersion; // 0x00 + private PermissionState _state; // 0x08 + private ArrayList _list; // 0x0C + + // Properties + public string Name { get; set; } // 0x102433A0 0x10243610 + public StrongNamePublicKeyBlob PublicKey { get; set; } // 0x10243470 0x10243750 + public Version Version { get; set; } // 0x10243540 0x10243890 + + // Methods + public void .ctor(PermissionState state); // 0x102431E0 + public void .ctor(StrongNamePublicKeyBlob blob, string name, Version version); // 0x10243290 + internal void .ctor(StrongNameIdentityPermission snip); // 0x10242F70 + private static void .cctor(); // 0x10242F20 + private int System.Security.Permissions.IBuiltInPermission.GetTokenIndex(); // 0x1019CC40 + internal void ResetToDefault(); // 0x10242730 + public override IPermission Copy(); // 0x10241750 + public override void FromXml(SecurityElement e); // 0x10241A10 + private SNIP FromSecurityElement(SecurityElement se); // 0x10241860 + public override IPermission Intersect(IPermission target); // 0x10241CE0 + public override bool IsSubsetOf(IPermission target); // 0x10242270 + public override SecurityElement ToXml(); // 0x10242940 + private void ToSecurityElement(SecurityElement se, SNIP snip); // 0x102427D0 + public override IPermission Union(IPermission target); // 0x10242C70 + private bool IsUnrestricted(); // 0x102425E0 + private bool Contains(SNIP snip); // 0x102414E0 + private bool IsEmpty(SNIP snip); // 0x102421A0 + private bool IsEmpty(); // 0x102420A0 + private StrongNameIdentityPermission Cast(IPermission target); // 0x10241460 + private bool Match(string target); // 0x102425F0 +} + +// Namespace: +private struct SNIP // TypeDefIndex: 1406 +{ + // Fields + public StrongNamePublicKeyBlob PublicKey; // 0x08 + public string Name; // 0x0C + public Version AssemblyVersion; // 0x10 + + // Methods + internal void .ctor(StrongNamePublicKeyBlob pk, string name, Version version); // 0x100074C0 + internal static SNIP CreateDefault(); // 0x1023EED0 + internal bool IsNameSubsetOf(string target); // 0x100190E0 + internal bool IsSubsetOf(SNIP target); // 0x100190F0 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class StrongNameIdentityPermissionAttribute : CodeAccessSecurityAttribute // TypeDefIndex: 1407 +{ + // Fields + private string name; // 0x10 + private string key; // 0x14 + private string version; // 0x18 + + // Properties + public string Name { get; set; } // 0x100BFC20 0x100C5B40 + public string PublicKey { get; set; } // 0x100EF0C0 0x10127B00 + public string Version { get; set; } // 0x100EE580 0x10113F40 + + // Methods + public void .ctor(SecurityAction action); // 0x1023ECB0 + public override IPermission CreatePermission(); // 0x100C5600 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class StrongNamePublicKeyBlob // TypeDefIndex: 1408 +{ + // Fields + internal byte[] pubkey; // 0x08 + + // Methods + public void .ctor(byte[] publicKey); // 0x10243D00 + internal static StrongNamePublicKeyBlob FromString(string s); // 0x10243AA0 + private static byte CharToByte(char c); // 0x10243980 + public override bool Equals(object obj); // 0x102439F0 + public override int GetHashCode(); // 0x10243BD0 + public override string ToString(); // 0x10243C40 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class UIPermission : CodeAccessPermission, IBuiltInPermission, IUnrestrictedPermission // TypeDefIndex: 1409 +{ + // Fields + private const int version = 1; // 0x00 + private UIPermissionWindow _window; // 0x08 + private UIPermissionClipboard _clipboard; // 0x0C + + // Properties + public UIPermissionClipboard Clipboard { get; set; } // 0x100C5B30 0x102444A0 + public UIPermissionWindow Window { get; set; } // 0x100BF0C0 0x102445D0 + + // Methods + public void .ctor(PermissionState state); // 0x10244440 + public void .ctor(UIPermissionClipboard clipboardFlag); // 0x102443F0 + public void .ctor(UIPermissionWindow windowFlag); // 0x10244480 + public void .ctor(UIPermissionWindow windowFlag, UIPermissionClipboard clipboardFlag); // 0x10244410 + private int System.Security.Permissions.IBuiltInPermission.GetTokenIndex(); // 0x101B30F0 + public override IPermission Copy(); // 0x10243E90 + public override void FromXml(SecurityElement esd); // 0x10243EF0 + public override IPermission Intersect(IPermission target); // 0x102440C0 + public override bool IsSubsetOf(IPermission target); // 0x10244170 + public bool IsUnrestricted(); // 0x102441D0 + public override SecurityElement ToXml(); // 0x102441F0 + public override IPermission Union(IPermission target); // 0x10244300 + private bool IsEmpty(UIPermissionWindow w, UIPermissionClipboard c); // 0x10244150 + private UIPermission Cast(IPermission target); // 0x10243E10 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class UIPermissionAttribute : CodeAccessSecurityAttribute // TypeDefIndex: 1410 +{ + // Fields + private UIPermissionClipboard clipboard; // 0x10 + private UIPermissionWindow window; // 0x14 + + // Properties + public UIPermissionClipboard Clipboard { get; set; } // 0x100BFC20 0x100C5B40 + public UIPermissionWindow Window { get; set; } // 0x100EF0C0 0x10127B00 + + // Methods + public void .ctor(SecurityAction action); // 0x1023ECB0 + public override IPermission CreatePermission(); // 0x10243D70 +} + +// Namespace: System.Security.Permissions +[Serializable] +public enum UIPermissionClipboard // TypeDefIndex: 1411 +{ + NoClipboard = 0, + OwnClipboard = 1, + AllClipboard = 2 +} + +// Namespace: System.Security.Permissions +[Serializable] +public enum UIPermissionWindow // TypeDefIndex: 1412 +{ + NoWindows = 0, + SafeSubWindows = 1, + SafeTopLevelWindows = 2, + AllWindows = 3 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class UrlIdentityPermission : CodeAccessPermission, IBuiltInPermission // TypeDefIndex: 1413 +{ + // Fields + private const int version = 1; // 0x00 + private string url; // 0x08 + + // Properties + public string Url { get; set; } // 0x100BF0C0 0x10244E70 + + // Methods + public void .ctor(PermissionState state); // 0x10244D90 + public void .ctor(string site); // 0x10244E00 + private int System.Security.Permissions.IBuiltInPermission.GetTokenIndex(); // 0x10244C00 + public override IPermission Copy(); // 0x10244810 + public override void FromXml(SecurityElement esd); // 0x10244870 + public override IPermission Intersect(IPermission target); // 0x10244930 + public override bool IsSubsetOf(IPermission target); // 0x102449D0 + public override SecurityElement ToXml(); // 0x10244C10 + public override IPermission Union(IPermission target); // 0x10244C80 + private bool IsEmpty(); // 0x102449B0 + private UrlIdentityPermission Cast(IPermission target); // 0x10244790 + private bool Match(string target); // 0x10244AF0 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class UrlIdentityPermissionAttribute : CodeAccessSecurityAttribute // TypeDefIndex: 1414 +{ + // Fields + private string url; // 0x10 + + // Properties + public string Url { get; set; } // 0x100BFC20 0x100C5B40 + + // Methods + public void .ctor(SecurityAction action); // 0x1023ECB0 + public override IPermission CreatePermission(); // 0x10244700 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class ZoneIdentityPermission : CodeAccessPermission, IBuiltInPermission // TypeDefIndex: 1415 +{ + // Fields + private const int version = 1; // 0x00 + private SecurityZone zone; // 0x08 + + // Properties + public SecurityZone SecurityZone { get; set; } // 0x100BF0C0 0x102454D0 + + // Methods + public void .ctor(PermissionState state); // 0x10245360 + public void .ctor(SecurityZone zone); // 0x10245390 + private int System.Security.Permissions.IBuiltInPermission.GetTokenIndex(); // 0x102451D0 + public override IPermission Copy(); // 0x10245000 + public override bool IsSubsetOf(IPermission target); // 0x10245190 + public override IPermission Union(IPermission target); // 0x10245270 + public override IPermission Intersect(IPermission target); // 0x10245150 + public override void FromXml(SecurityElement esd); // 0x10245050 + public override SecurityElement ToXml(); // 0x102451E0 + private ZoneIdentityPermission Cast(IPermission target); // 0x10244F80 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class ZoneIdentityPermissionAttribute : CodeAccessSecurityAttribute // TypeDefIndex: 1416 +{ + // Fields + private SecurityZone zone; // 0x10 + + // Properties + public SecurityZone Zone { get; set; } // 0x100BFC20 0x100C5B40 + + // Methods + public void .ctor(SecurityAction action); // 0x10244F60 + public override IPermission CreatePermission(); // 0x10244EE0 +} + +// Namespace: System.Security.Policy +[Serializable] +public sealed class AllMembershipCondition : IConstantMembershipCondition, IMembershipCondition, ISecurityEncodable, ISecurityPolicyEncodable // TypeDefIndex: 1417 +{ + // Fields + private readonly int version; // 0x08 + + // Methods + public void .ctor(); // 0x10154960 + public bool Check(Evidence evidence); // 0x100E5880 + public IMembershipCondition Copy(); // 0x1022F690 + public override bool Equals(object o); // 0x1022F6E0 + public void FromXml(SecurityElement e); // 0x1022F720 + public void FromXml(SecurityElement e, PolicyLevel level); // 0x1022F720 + public override int GetHashCode(); // 0x1022F780 + public override string ToString(); // 0x1022F800 + public SecurityElement ToXml(); // 0x1022F830 + public SecurityElement ToXml(PolicyLevel level); // 0x1022F830 +} + +// Namespace: System.Security.Policy +[Serializable] +public sealed class ApplicationDirectory : IBuiltInEvidence // TypeDefIndex: 1418 +{ + // Fields + private string directory; // 0x08 + + // Properties + public string Directory { get; } // 0x100BF0C0 + + // Methods + public void .ctor(string name); // 0x10230000 + private int System.Security.Policy.IBuiltInEvidence.GetRequiredSize(bool verbose); // 0x101567F0 + private int System.Security.Policy.IBuiltInEvidence.InitFromBuffer(char[] buffer, int position); // 0x100C5600 + private int System.Security.Policy.IBuiltInEvidence.OutputToBuffer(char[] buffer, int position, bool verbose); // 0x100C5600 + public object Copy(); // 0x1022FCF0 + public override bool Equals(object o); // 0x1022FDD0 + public override int GetHashCode(); // 0x10140690 + public override string ToString(); // 0x1022FF40 + private void ThrowOnInvalid(string appdir); // 0x1022FE60 +} + +// Namespace: System.Security.Policy +[Serializable] +public sealed class ApplicationDirectoryMembershipCondition : IConstantMembershipCondition, IMembershipCondition, ISecurityEncodable, ISecurityPolicyEncodable // TypeDefIndex: 1419 +{ + // Fields + private readonly int version; // 0x08 + + // Methods + public void .ctor(); // 0x10154960 + public bool Check(Evidence evidence); // 0x1022F8C0 + public IMembershipCondition Copy(); // 0x1022FAC0 + public override bool Equals(object o); // 0x1022FB10 + public void FromXml(SecurityElement e); // 0x1022FB50 + public void FromXml(SecurityElement e, PolicyLevel level); // 0x1022FB50 + public override int GetHashCode(); // 0x1022FBB0 + public override string ToString(); // 0x1022FC30 + public SecurityElement ToXml(); // 0x1022FC60 + public SecurityElement ToXml(PolicyLevel level); // 0x1022FC60 +} + +// Namespace: System.Security.Policy +public sealed class ApplicationSecurityInfo // TypeDefIndex: 1420 +{ + // Fields + private ActivationContext _context; // 0x08 + private Evidence _evidence; // 0x0C + private ApplicationId _appid; // 0x10 + private PermissionSet _defaultSet; // 0x14 + private ApplicationId _deployid; // 0x18 + + // Properties + public Evidence ApplicationEvidence { get; set; } // 0x100C5B30 0x10230170 + public ApplicationId ApplicationId { get; set; } // 0x100BFC20 0x102301D0 + public PermissionSet DefaultRequestSet { get; set; } // 0x10230120 0x10230230 + public ApplicationId DeploymentId { get; set; } // 0x100EE580 0x10230290 + + // Methods + public void .ctor(ActivationContext activationContext); // 0x102300B0 +} + +// Namespace: System.Security.Policy +public static class ApplicationSecurityManager // TypeDefIndex: 1421 +{ + // Fields + private const string config = "ApplicationTrust.config"; // 0x00 + private static IApplicationTrustManager _appTrustManager; // 0x00 + private static ApplicationTrustCollection _userAppTrusts; // 0x04 + + // Properties + public static IApplicationTrustManager ApplicationTrustManager { get; } // 0x10230420 + public static ApplicationTrustCollection UserApplicationTrusts { get; } // 0x10230480 + + // Methods + public static bool DetermineApplicationTrust(ActivationContext activationContext, TrustManagerContext context); // 0x102302F0 +} + +// Namespace: System.Security.Policy +[Serializable] +public sealed class ApplicationTrust : ISecurityEncodable // TypeDefIndex: 1422 +{ + // Fields + private ApplicationIdentity _appid; // 0x08 + private PolicyStatement _defaultPolicy; // 0x0C + private object _xtranfo; // 0x10 + private bool _trustrun; // 0x14 + private bool _persist; // 0x15 + private IList`1 fullTrustAssemblies; // 0x18 + + // Properties + public ApplicationIdentity ApplicationIdentity { get; set; } // 0x100BF0C0 0x10232000 + public PolicyStatement DefaultGrantSet { get; set; } // 0x10231F30 0x100C5B50 + public object ExtraInfo { get; set; } // 0x100BFC20 0x100C5B40 + public bool IsApplicationTrustedToRun { get; set; } // 0x100C5670 0x10142260 + public bool Persist { get; set; } // 0x10142240 0x10142250 + + // Methods + public void .ctor(); // 0x10231E20 + public void .ctor(ApplicationIdentity applicationIdentity); // 0x10231E80 + internal void .ctor(PermissionSet defaultGrantSet, IEnumerable`1 fullTrustAssemblies); // 0x10231B70 + public void FromXml(SecurityElement element); // 0x10231390 + public SecurityElement ToXml(); // 0x102317F0 + private PolicyStatement GetDefaultGrantSet(); // 0x10231760 +} + +// Namespace: System.Security.Policy +public sealed class ApplicationTrustCollection : IEnumerable, ICollection // TypeDefIndex: 1423 +{ + // Fields + private ArrayList _list; // 0x08 + + // Properties + public int Count { get; } // 0x101273C0 + public bool IsSynchronized { get; } // 0x100EFBF0 + public object SyncRoot { get; } // 0x100F7810 + public ApplicationTrust Item { get; } // 0x10231050 + public ApplicationTrust Item { get; } // 0x102310C0 + + // Methods + internal void .ctor(); // 0x10231000 + private void System.Collections.ICollection.CopyTo(Array array, int index); // 0x101135E0 + private IEnumerator System.Collections.IEnumerable.GetEnumerator(); // 0x10230FA0 + public int Add(ApplicationTrust trust); // 0x10230760 + public void AddRange(ApplicationTrust[] trusts); // 0x10230520 + public void AddRange(ApplicationTrustCollection trusts); // 0x10230610 + public void Clear(); // 0x1013FD10 + public void CopyTo(ApplicationTrust[] array, int index); // 0x101135E0 + public ApplicationTrustCollection Find(ApplicationIdentity applicationIdentity, ApplicationVersionMatch versionMatch); // 0x10230830 + public ApplicationTrustEnumerator GetEnumerator(); // 0x10230B00 + public void Remove(ApplicationTrust trust); // 0x10230EF0 + public void Remove(ApplicationIdentity applicationIdentity, ApplicationVersionMatch versionMatch); // 0x10230DD0 + public void RemoveRange(ApplicationTrust[] trusts); // 0x10230BE0 + public void RemoveRange(ApplicationTrustCollection trusts); // 0x10230C80 + internal void RemoveAllInstances(ApplicationTrust trust); // 0x10230B50 +} + +// Namespace: System.Security.Policy +public sealed class ApplicationTrustEnumerator : IEnumerator // TypeDefIndex: 1424 +{ + // Fields + private IEnumerator e; // 0x08 + + // Properties + private object System.Collections.IEnumerator.Current { get; } // 0x10231260 + public ApplicationTrust Current { get; } // 0x10231320 + + // Methods + internal void .ctor(ApplicationTrustCollection collection); // 0x102312B0 + public bool MoveNext(); // 0x102311C0 + public void Reset(); // 0x10231210 +} + +// Namespace: System.Security.Policy +public enum ApplicationVersionMatch // TypeDefIndex: 1425 +{ + MatchExactVersion = 0, + MatchAllVersions = 1 +} + +// Namespace: System.Security.Policy +[Serializable] +public class CodeConnectAccess // TypeDefIndex: 1426 +{ + // Fields + public static readonly string AnyScheme; // 0x00 + public static readonly int DefaultPort; // 0x04 + public static readonly int OriginPort; // 0x08 + public static readonly string OriginScheme; // 0x0C + private string _scheme; // 0x08 + private int _port; // 0x0C + + // Properties + public int Port { get; } // 0x100C5B30 + public string Scheme { get; } // 0x100BF0C0 + + // Methods + public void .ctor(string allowScheme, int allowPort); // 0x10232290 + private static void .cctor(); // 0x10232230 + public override bool Equals(object o); // 0x10232140 + public override int GetHashCode(); // 0x10232200 + public static CodeConnectAccess CreateAnySchemeAccess(int allowPort); // 0x10232060 + public static CodeConnectAccess CreateOriginSchemeAccess(int allowPort); // 0x102320D0 +} + +// Namespace: System.Security.Policy +[Serializable] +public abstract class CodeGroup // TypeDefIndex: 1427 +{ + // Fields + private PolicyStatement m_policy; // 0x08 + private IMembershipCondition m_membershipCondition; // 0x0C + private string m_description; // 0x10 + private string m_name; // 0x14 + private ArrayList m_children; // 0x18 + private static Dictionary`2 <>f__switch$map2A; // 0x00 + + // Properties + public abstract string MergeLogic { get; } + public PolicyStatement PolicyStatement { get; set; } // 0x100BF0C0 0x100EB270 + public string Description { get; set; } // 0x100BFC20 0x100C5B40 + public IMembershipCondition MembershipCondition { get; set; } // 0x100C5B30 0x10233670 + public string Name { get; set; } // 0x100EF0C0 0x10127B00 + public IList Children { get; set; } // 0x100EE580 0x102335F0 + public virtual string AttributeString { get; } // 0x102334D0 + public virtual string PermissionSetName { get; } // 0x10233560 + + // Methods + protected void .ctor(IMembershipCondition membershipCondition, PolicyStatement policy); // 0x10233420 + internal void .ctor(SecurityElement e, PolicyLevel level); // 0x102333C0 + public abstract CodeGroup Copy(); + public abstract PolicyStatement Resolve(Evidence evidence); + public abstract CodeGroup ResolveMatchingCodeGroups(Evidence evidence); + public void AddChild(CodeGroup group); // 0x10232330 + public override bool Equals(object o); // 0x10232960 + public bool Equals(CodeGroup cg, bool compareChildren); // 0x10232700 + public void RemoveChild(CodeGroup group); // 0x10232FE0 + public override int GetHashCode(); // 0x10232F70 + public void FromXml(SecurityElement e); // 0x102329E0 + public void FromXml(SecurityElement e, PolicyLevel level); // 0x10232A00 + protected virtual void ParseXml(SecurityElement e, PolicyLevel level); // 0x100C5530 + public SecurityElement ToXml(); // 0x102333A0 + public SecurityElement ToXml(PolicyLevel level); // 0x10233020 + protected virtual void CreateXml(SecurityElement element, PolicyLevel level); // 0x100C5530 + internal static CodeGroup CreateFromXml(SecurityElement se, PolicyLevel level); // 0x102323D0 +} + +// Namespace: System.Security.Policy +internal static class DefaultPolicies // TypeDefIndex: 1428 +{ + // Fields + private const string DnsPermissionClass = "System.Net.DnsPermission, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"; // 0x00 + private const string EventLogPermissionClass = "System.Diagnostics.EventLogPermission, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"; // 0x00 + private const string PrintingPermissionClass = "System.Drawing.Printing.PrintingPermission, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + private const string SocketPermissionClass = "System.Net.SocketPermission, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"; // 0x00 + private const string WebPermissionClass = "System.Net.WebPermission, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"; // 0x00 + private const string PerformanceCounterPermissionClass = "System.Diagnostics.PerformanceCounterPermission, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"; // 0x00 + private const string DirectoryServicesPermissionClass = "System.DirectoryServices.DirectoryServicesPermission, System.DirectoryServices, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + private const string MessageQueuePermissionClass = "System.Messaging.MessageQueuePermission, System.Messaging, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + private const string ServiceControllerPermissionClass = "System.ServiceProcess.ServiceControllerPermission, System.ServiceProcess, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + private const string OleDbPermissionClass = "System.Data.OleDb.OleDbPermission, System.Data, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"; // 0x00 + private const string SqlClientPermissionClass = "System.Data.SqlClient.SqlClientPermission, System.Data, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"; // 0x00 + private const string DataProtectionPermissionClass = "System.Security.Permissions.DataProtectionPermission, System.Security, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + private const string StorePermissionClass = "System.Security.Permissions.StorePermission, System.Security, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + private static Version _fxVersion; // 0x00 + private static byte[] _ecmaKey; // 0x04 + private static StrongNamePublicKeyBlob _ecma; // 0x08 + private static byte[] _msFinalKey; // 0x0C + private static StrongNamePublicKeyBlob _msFinal; // 0x10 + private static NamedPermissionSet _fullTrust; // 0x14 + private static NamedPermissionSet _localIntranet; // 0x18 + private static NamedPermissionSet _internet; // 0x1C + private static NamedPermissionSet _skipVerification; // 0x20 + private static NamedPermissionSet _execution; // 0x24 + private static NamedPermissionSet _nothing; // 0x28 + private static NamedPermissionSet _everything; // 0x2C + private static Dictionary`2 <>f__switch$map2B; // 0x30 + + // Properties + public static PermissionSet FullTrust { get; } // 0x10234790 + public static PermissionSet LocalIntranet { get; } // 0x10234920 + public static PermissionSet Internet { get; } // 0x10234870 + public static PermissionSet SkipVerification { get; } // 0x10234AB0 + public static PermissionSet Execution { get; } // 0x10234660 + public static PermissionSet Nothing { get; } // 0x102349D0 + public static PermissionSet Everything { get; } // 0x102345B0 + + // Methods + private static void .cctor(); // 0x10234510 + public static PermissionSet GetSpecialPermissionSet(string name); // 0x10234150 + public static StrongNameMembershipCondition FullTrustMembership(string name, Key key); // 0x10233F10 + private static NamedPermissionSet BuildFullTrust(); // 0x10233A50 + private static NamedPermissionSet BuildLocalIntranet(); // 0x10233C40 + private static NamedPermissionSet BuildInternet(); // 0x10233AA0 + private static NamedPermissionSet BuildSkipVerification(); // 0x10233E70 + private static NamedPermissionSet BuildExecution(); // 0x102339B0 + private static NamedPermissionSet BuildNothing(); // 0x10233E20 + private static NamedPermissionSet BuildEverything(); // 0x102336D0 + private static SecurityElement PrintingPermission(string level); // 0x10234480 +} + +// Namespace: +public static class ReservedNames // TypeDefIndex: 1429 +{ + // Fields + public const string FullTrust = "FullTrust"; // 0x00 + public const string LocalIntranet = "LocalIntranet"; // 0x00 + public const string Internet = "Internet"; // 0x00 + public const string SkipVerification = "SkipVerification"; // 0x00 + public const string Execution = "Execution"; // 0x00 + public const string Nothing = "Nothing"; // 0x00 + public const string Everything = "Everything"; // 0x00 + private static Dictionary`2 <>f__switch$map2C; // 0x00 + + // Methods + public static bool IsReserved(string name); // 0x1023ED80 +} + +// Namespace: +public enum Key // TypeDefIndex: 1430 +{ + Ecma = 0, + MsFinal = 1 +} + +// Namespace: System.Security.Policy +[Serializable] +public sealed class Evidence : IEnumerable, ICollection // TypeDefIndex: 1431 +{ + // Fields + private bool _locked; // 0x08 + private ArrayList hostEvidenceList; // 0x0C + private ArrayList assemblyEvidenceList; // 0x10 + private int _hashCode; // 0x14 + + // Properties + public int Count { get; } // 0x10235A40 + public bool IsReadOnly { get; } // 0x100EFBF0 + public bool IsSynchronized { get; } // 0x100EFBF0 + public bool Locked { get; set; } // 0x100EA020 0x10155000 + public object SyncRoot { get; } // 0x100F7810 + internal ArrayList HostEvidenceList { get; } // 0x10235A90 + internal ArrayList AssemblyEvidenceList { get; } // 0x102359C0 + + // Methods + public void .ctor(); // 0x100BF000 + public void .ctor(Evidence evidence); // 0x10235990 + public void .ctor(object[] hostEvidence, object[] assemblyEvidence); // 0x10235910 + public void AddAssembly(object id); // 0x10234D40 + public void AddHost(object id); // 0x10234D90 + public void Clear(); // 0x10234E70 + public void CopyTo(Array array, int index); // 0x10234EC0 + public override bool Equals(object obj); // 0x10234F60 + public IEnumerator GetEnumerator(); // 0x10235240 + public IEnumerator GetAssemblyEnumerator(); // 0x102351C0 + public override int GetHashCode(); // 0x102352D0 + public IEnumerator GetHostEnumerator(); // 0x102353F0 + public void Merge(Evidence evidence); // 0x10235440 + public void RemoveType(Type t); // 0x10235830 + private static bool IsAuthenticodePresent(Assembly a); // 0x10235430 + internal static Evidence GetDefaultHostEvidence(Assembly a); // 0x10235200 +} + +// Namespace: +private class EvidenceEnumerator : IEnumerator // TypeDefIndex: 1432 +{ + // Fields + private IEnumerator currentEnum; // 0x08 + private IEnumerator hostEnum; // 0x0C + private IEnumerator assemblyEnum; // 0x10 + + // Properties + public object Current { get; } // 0x10234CF0 + + // Methods + public void .ctor(IEnumerator hostenum, IEnumerator assemblyenum); // 0x10234CC0 + public bool MoveNext(); // 0x10234BE0 + public void Reset(); // 0x10234C50 +} + +// Namespace: System.Security.Policy +[Serializable] +public sealed class FileCodeGroup : CodeGroup // TypeDefIndex: 1433 +{ + // Fields + private FileIOPermissionAccess m_access; // 0x1C + + // Properties + public override string MergeLogic { get; } // 0x10236580 + public override string AttributeString { get; } // 0x100C5600 + public override string PermissionSetName { get; } // 0x102365B0 + + // Methods + public void .ctor(IMembershipCondition membershipCondition, FileIOPermissionAccess access); // 0x10236560 + internal void .ctor(SecurityElement e, PolicyLevel level); // 0x102333C0 + public override CodeGroup Copy(); // 0x10235B10 + public override PolicyStatement Resolve(Evidence evidence); // 0x10236270 + public override CodeGroup ResolveMatchingCodeGroups(Evidence evidence); // 0x10235FC0 + public override bool Equals(object o); // 0x10235DD0 + public override int GetHashCode(); // 0x10235E50 + protected override void ParseXml(SecurityElement e, PolicyLevel level); // 0x10235ED0 + protected override void CreateXml(SecurityElement element, PolicyLevel level); // 0x10235D50 +} + +// Namespace: System.Security.Policy +[Serializable] +public sealed class FirstMatchCodeGroup : CodeGroup // TypeDefIndex: 1434 +{ + // Properties + public override string MergeLogic { get; } // 0x10236DB0 + + // Methods + public void .ctor(IMembershipCondition membershipCondition, PolicyStatement policy); // 0x10155800 + internal void .ctor(SecurityElement e, PolicyLevel level); // 0x102333C0 + public override CodeGroup Copy(); // 0x102366C0 + public override PolicyStatement Resolve(Evidence evidence); // 0x10236B50 + public override CodeGroup ResolveMatchingCodeGroups(Evidence evidence); // 0x102368D0 + private FirstMatchCodeGroup CopyNoChildren(); // 0x10236650 +} + +// Namespace: System.Security.Policy +[Serializable] +public sealed class GacInstalled : IBuiltInEvidence, IIdentityPermissionFactory // TypeDefIndex: 1435 +{ + // Methods + public void .ctor(); // 0x100BF000 + private int System.Security.Policy.IBuiltInEvidence.GetRequiredSize(bool verbose); // 0x100EF660 + private int System.Security.Policy.IBuiltInEvidence.InitFromBuffer(char[] buffer, int position); // 0x10223E60 + private int System.Security.Policy.IBuiltInEvidence.OutputToBuffer(char[] buffer, int position, bool verbose); // 0x10236EA0 + public object Copy(); // 0x10236DE0 + public IPermission CreateIdentityPermission(Evidence evidence); // 0x10236E20 + public override bool Equals(object o); // 0x10236E60 + public override int GetHashCode(); // 0x100C5600 + public override string ToString(); // 0x10236EE0 +} + +// Namespace: System.Security.Policy +[Serializable] +public sealed class GacMembershipCondition : IConstantMembershipCondition, IMembershipCondition, ISecurityEncodable, ISecurityPolicyEncodable // TypeDefIndex: 1436 +{ + // Fields + private readonly int version; // 0x08 + + // Methods + public void .ctor(); // 0x10154960 + public bool Check(Evidence evidence); // 0x10236F80 + public IMembershipCondition Copy(); // 0x10237030 + public override bool Equals(object o); // 0x10237080 + public void FromXml(SecurityElement e); // 0x102370C0 + public void FromXml(SecurityElement e, PolicyLevel level); // 0x102370C0 + public override int GetHashCode(); // 0x100C5600 + public override string ToString(); // 0x10237120 + public SecurityElement ToXml(); // 0x10237150 + public SecurityElement ToXml(PolicyLevel level); // 0x10237150 +} + +// Namespace: System.Security.Policy +[Serializable] +public sealed class Hash : ISerializable, IBuiltInEvidence // TypeDefIndex: 1437 +{ + // Fields + private Assembly assembly; // 0x08 + private byte[] data; // 0x0C + internal byte[] _md5; // 0x10 + internal byte[] _sha1; // 0x14 + + // Properties + public byte[] MD5 { get; } // 0x102380B0 + public byte[] SHA1 { get; } // 0x10238140 + + // Methods + public void .ctor(Assembly assembly); // 0x10237F80 + internal void .ctor(); // 0x100BF000 + internal void .ctor(SerializationInfo info, StreamingContext context); // 0x10238000 + private int System.Security.Policy.IBuiltInEvidence.GetRequiredSize(bool verbose); // 0x10237E10 + private int System.Security.Policy.IBuiltInEvidence.InitFromBuffer(char[] buffer, int position); // 0x100C5600 + private int System.Security.Policy.IBuiltInEvidence.OutputToBuffer(char[] buffer, int position, bool verbose); // 0x100C5600 + public byte[] GenerateHash(HashAlgorithm hashAlg); // 0x10237BE0 + public void GetObjectData(SerializationInfo info, StreamingContext context); // 0x10237D90 + public override string ToString(); // 0x10237E30 + private byte[] GetData(); // 0x10237C50 + public static Hash CreateMD5(byte[] md5); // 0x10237AC0 + public static Hash CreateSHA1(byte[] sha1); // 0x10237B50 +} + +// Namespace: System.Security.Policy +[Serializable] +public sealed class HashMembershipCondition : ISerializable, IDeserializationCallback, IMembershipCondition, ISecurityEncodable, ISecurityPolicyEncodable // TypeDefIndex: 1438 +{ + // Fields + private readonly int version; // 0x08 + private HashAlgorithm hash_algorithm; // 0x0C + private byte[] hash_value; // 0x10 + + // Properties + public HashAlgorithm HashAlgorithm { get; set; } // 0x102378D0 0x102379C0 + public byte[] HashValue { get; set; } // 0x10237920 0x10237A20 + + // Methods + internal void .ctor(); // 0x10154960 + public void .ctor(HashAlgorithm hashAlg, byte[] value); // 0x10237800 + private void System.Runtime.Serialization.IDeserializationCallback.OnDeserialization(object sender); // 0x100C5530 + private void System.Runtime.Serialization.ISerializable.GetObjectData(SerializationInfo info, StreamingContext context); // 0x100C5530 + public bool Check(Evidence evidence); // 0x102371E0 + public IMembershipCondition Copy(); // 0x10237330 + public override bool Equals(object o); // 0x10237430 + public SecurityElement ToXml(); // 0x10237700 + public SecurityElement ToXml(PolicyLevel level); // 0x10237700 + public void FromXml(SecurityElement e); // 0x102374D0 + public void FromXml(SecurityElement e, PolicyLevel level); // 0x102374D0 + public override int GetHashCode(); // 0x10237580 + public override string ToString(); // 0x10237600 + private bool Compare(byte[] expected, byte[] actual); // 0x102372C0 +} + +// Namespace: System.Security.Policy +public interface IApplicationTrustManager : ISecurityEncodable // TypeDefIndex: 1439 +{ + // Methods + ApplicationTrust DetermineApplicationTrust(ActivationContext activationContext, TrustManagerContext context); +} + +// Namespace: System.Security.Policy +internal interface IBuiltInEvidence // TypeDefIndex: 1440 +{ + // Methods + int GetRequiredSize(bool verbose); + int InitFromBuffer(char[] buffer, int position); + int OutputToBuffer(char[] buffer, int position, bool verbose); +} + +// Namespace: System.Security.Policy +internal interface IConstantMembershipCondition // TypeDefIndex: 1441 +{ +} + +// Namespace: System.Security.Policy +public interface IIdentityPermissionFactory // TypeDefIndex: 1442 +{ + // Methods + IPermission CreateIdentityPermission(Evidence evidence); +} + +// Namespace: System.Security.Policy +public interface IMembershipCondition : ISecurityEncodable, ISecurityPolicyEncodable // TypeDefIndex: 1443 +{ + // Methods + bool Check(Evidence evidence); + IMembershipCondition Copy(); + bool Equals(object obj); + string ToString(); +} + +// Namespace: System.Security.Policy +internal sealed class MembershipConditionHelper // TypeDefIndex: 1444 +{ + // Fields + private static readonly string XmlTag; // 0x00 + + // Methods + public void .ctor(); // 0x100BF000 + private static void .cctor(); // 0x10238590 + internal static int CheckSecurityElement(SecurityElement se, string parameterName, int minimumVersion, int maximumVersion); // 0x102381D0 + internal static SecurityElement Element(Type type, int version); // 0x10238450 +} + +// Namespace: System.Security.Policy +internal class MonoTrustManager : IApplicationTrustManager, ISecurityEncodable // TypeDefIndex: 1445 +{ + // Fields + private const string tag = "IApplicationTrustManager"; // 0x00 + + // Methods + public void .ctor(); // 0x100BF000 + public ApplicationTrust DetermineApplicationTrust(ActivationContext activationContext, TrustManagerContext context); // 0x102385C0 + public void FromXml(SecurityElement e); // 0x10238620 + public SecurityElement ToXml(); // 0x102386F0 +} + +// Namespace: System.Security.Policy +[Serializable] +public sealed class NetCodeGroup : CodeGroup // TypeDefIndex: 1446 +{ + // Fields + public static readonly string AbsentOriginScheme; // 0x00 + public static readonly string AnyOtherOriginScheme; // 0x04 + private Hashtable _rules; // 0x1C + private int _hashcode; // 0x20 + + // Properties + public override string AttributeString { get; } // 0x100C5600 + public override string MergeLogic { get; } // 0x10239A20 + public override string PermissionSetName { get; } // 0x10239A50 + + // Methods + public void .ctor(IMembershipCondition membershipCondition); // 0x102399D0 + internal void .ctor(SecurityElement e, PolicyLevel level); // 0x10239930 + private static void .cctor(); // 0x102398C0 + public void AddConnectAccess(string originScheme, CodeConnectAccess connectAccess); // 0x102387B0 + public override CodeGroup Copy(); // 0x10238A80 + private bool Equals(CodeConnectAccess[] rules1, CodeConnectAccess[] rules2); // 0x10238D00 + public override bool Equals(object o); // 0x10238D80 + public DictionaryEntry[] GetConnectAccessRules(); // 0x10239040 + public override int GetHashCode(); // 0x102390C0 + public override PolicyStatement Resolve(Evidence evidence); // 0x102395D0 + public void ResetConnectAccess(); // 0x10239320 + public override CodeGroup ResolveMatchingCodeGroups(Evidence evidence); // 0x10239350 + protected override void CreateXml(SecurityElement element, PolicyLevel level); // 0x100C5530 + protected override void ParseXml(SecurityElement e, PolicyLevel level); // 0x100C5530 +} + +// Namespace: System.Security.Policy +[Serializable] +public sealed class PermissionRequestEvidence : IBuiltInEvidence // TypeDefIndex: 1447 +{ + // Fields + private PermissionSet requested; // 0x08 + private PermissionSet optional; // 0x0C + private PermissionSet denied; // 0x10 + + // Properties + public PermissionSet DeniedPermissions { get; } // 0x100BFC20 + public PermissionSet OptionalPermissions { get; } // 0x100C5B30 + public PermissionSet RequestedPermissions { get; } // 0x100BF0C0 + + // Methods + public void .ctor(PermissionSet request, PermissionSet optional, PermissionSet denied); // 0x10239DE0 + private int System.Security.Policy.IBuiltInEvidence.GetRequiredSize(bool verbose); // 0x10239B60 + private int System.Security.Policy.IBuiltInEvidence.InitFromBuffer(char[] buffer, int position); // 0x100C5600 + private int System.Security.Policy.IBuiltInEvidence.OutputToBuffer(char[] buffer, int position, bool verbose); // 0x100C5600 + public PermissionRequestEvidence Copy(); // 0x10239A80 + public override string ToString(); // 0x10239C50 +} + +// Namespace: System.Security.Policy +[Serializable] +public class PolicyException : SystemException, _Exception // TypeDefIndex: 1448 +{ + // Methods + public void .ctor(); // 0x10239E80 + public void .ctor(string message); // 0x100E5680 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 + public void .ctor(string message, Exception exception); // 0x100E5670 +} + +// Namespace: System.Security.Policy +[Serializable] +public sealed class PolicyLevel // TypeDefIndex: 1449 +{ + // Fields + private string label; // 0x08 + private CodeGroup root_code_group; // 0x0C + private ArrayList full_trust_assemblies; // 0x10 + private ArrayList named_permission_sets; // 0x14 + private string _location; // 0x18 + private PolicyLevelType _type; // 0x1C + private Hashtable fullNames; // 0x20 + private SecurityElement xml; // 0x24 + + // Properties + public IList FullTrustAssemblies { get; } // 0x100BFC20 + public string Label { get; } // 0x100BF0C0 + public IList NamedPermissionSets { get; } // 0x100EF0C0 + public CodeGroup RootCodeGroup { get; set; } // 0x100C5B30 0x1023DA80 + public string StoreLocation { get; } // 0x100EE580 + public PolicyLevelType Type { get; } // 0x100F85F0 + + // Methods + internal void .ctor(string label, PolicyLevelType type); // 0x1023DA00 + internal void LoadFromFile(string filename); // 0x1023BFC0 + internal void LoadFromString(string xml); // 0x1023C320 + private SecurityElement FromString(string xml); // 0x1023B100 + public void AddFullTrustAssembly(StrongName sn); // 0x10239EC0 + public void AddFullTrustAssembly(StrongNameMembershipCondition snMC); // 0x10239F70 + public void AddNamedPermissionSet(NamedPermissionSet permSet); // 0x1023A190 + public NamedPermissionSet ChangeNamedPermissionSet(string name, PermissionSet pSet); // 0x1023A3F0 + public static PolicyLevel CreateAppDomainLevel(); // 0x1023A6F0 + public void FromXml(SecurityElement e); // 0x1023B410 + public NamedPermissionSet GetNamedPermissionSet(string name); // 0x1023BB50 + public void Recover(); // 0x1023C350 + public void RemoveFullTrustAssembly(StrongName sn); // 0x1023C500 + public void RemoveFullTrustAssembly(StrongNameMembershipCondition snMC); // 0x1023C6D0 + public NamedPermissionSet RemoveNamedPermissionSet(NamedPermissionSet permSet); // 0x1023CB00 + public NamedPermissionSet RemoveNamedPermissionSet(string name); // 0x1023C820 + public void Reset(); // 0x1023CB70 + public PolicyStatement Resolve(Evidence evidence); // 0x1023CDD0 + public CodeGroup ResolveMatchingCodeGroups(Evidence evidence); // 0x1023CD50 + public SecurityElement ToXml(); // 0x1023D0F0 + internal void Save(); // 0x1023CE60 + internal void CreateDefaultLevel(PolicyLevelType type); // 0x1023AA50 + internal void CreateDefaultFullTrustAssemblies(); // 0x1023A890 + internal void CreateDefaultNamedPermissionSets(); // 0x1023ADF0 + internal string ResolveClassName(string className); // 0x1023CCE0 + internal bool IsFullTrustAssembly(Assembly a); // 0x1023BD90 +} + +// Namespace: System.Security.Policy +[Serializable] +public sealed class PolicyStatement : ISecurityEncodable, ISecurityPolicyEncodable // TypeDefIndex: 1450 +{ + // Fields + private PermissionSet perms; // 0x08 + private PolicyStatementAttribute attrs; // 0x0C + + // Properties + public PermissionSet PermissionSet { get; set; } // 0x1023E0B0 0x100EB270 + public PolicyStatementAttribute Attributes { get; set; } // 0x100C5B30 0x1023E120 + public string AttributeString { get; } // 0x1023E030 + + // Methods + public void .ctor(PermissionSet permSet); // 0x1023DFD0 + public void .ctor(PermissionSet permSet, PolicyStatementAttribute attributes); // 0x1023DF80 + public PolicyStatement Copy(); // 0x1023DAE0 + public void FromXml(SecurityElement et); // 0x1023DE30 + public void FromXml(SecurityElement et, PolicyLevel level); // 0x1023DC90 + public SecurityElement ToXml(); // 0x1023DE90 + public SecurityElement ToXml(PolicyLevel level); // 0x1023DE90 + public override bool Equals(object obj); // 0x1023DC00 + public override int GetHashCode(); // 0x1023DE50 + internal static PolicyStatement Empty(); // 0x1023DB70 +} + +// Namespace: System.Security.Policy +[Serializable] +public enum PolicyStatementAttribute // TypeDefIndex: 1451 +{ + Nothing = 0, + Exclusive = 1, + LevelFinal = 2, + All = 3 +} + +// Namespace: System.Security.Policy +[Serializable] +public sealed class Publisher : IBuiltInEvidence, IIdentityPermissionFactory // TypeDefIndex: 1452 +{ + // Fields + private X509Certificate m_cert; // 0x08 + + // Properties + public X509Certificate Certificate { get; } // 0x1023EB70 + + // Methods + public void .ctor(X509Certificate cert); // 0x1023EAC0 + private int System.Security.Policy.IBuiltInEvidence.GetRequiredSize(bool verbose); // 0x1023E9B0 + private int System.Security.Policy.IBuiltInEvidence.InitFromBuffer(char[] buffer, int position); // 0x100C5600 + private int System.Security.Policy.IBuiltInEvidence.OutputToBuffer(char[] buffer, int position, bool verbose); // 0x100C5600 + public object Copy(); // 0x1023E7A0 + public IPermission CreateIdentityPermission(Evidence evidence); // 0x1023E880 + public override bool Equals(object o); // 0x1023E8D0 + public override int GetHashCode(); // 0x1023E980 + public override string ToString(); // 0x1023E9F0 +} + +// Namespace: System.Security.Policy +[Serializable] +public sealed class PublisherMembershipCondition : IConstantMembershipCondition, IMembershipCondition, ISecurityEncodable, ISecurityPolicyEncodable // TypeDefIndex: 1453 +{ + // Fields + private readonly int version; // 0x08 + private X509Certificate x509; // 0x0C + + // Properties + public X509Certificate Certificate { get; set; } // 0x100C5B30 0x1023E740 + + // Methods + internal void .ctor(); // 0x10154960 + public void .ctor(X509Certificate certificate); // 0x1023E680 + public bool Check(Evidence evidence); // 0x1023E1E0 + public IMembershipCondition Copy(); // 0x1023E2F0 + public override bool Equals(object o); // 0x1023E3E0 + public void FromXml(SecurityElement e); // 0x1023E450 + public void FromXml(SecurityElement e, PolicyLevel level); // 0x1023E450 + public override int GetHashCode(); // 0x1023E500 + public override string ToString(); // 0x1023E530 + public SecurityElement ToXml(); // 0x1023E5B0 + public SecurityElement ToXml(PolicyLevel level); // 0x1023E5B0 +} + +// Namespace: System.Security.Policy +[Serializable] +public sealed class Site : IBuiltInEvidence, IIdentityPermissionFactory // TypeDefIndex: 1454 +{ + // Fields + internal string origin_site; // 0x08 + + // Properties + public string Name { get; } // 0x100BF0C0 + + // Methods + public void .ctor(string name); // 0x102413A0 + private int System.Security.Policy.IBuiltInEvidence.GetRequiredSize(bool verbose); // 0x101567F0 + private int System.Security.Policy.IBuiltInEvidence.InitFromBuffer(char[] buffer, int position); // 0x100C5600 + private int System.Security.Policy.IBuiltInEvidence.OutputToBuffer(char[] buffer, int position, bool verbose); // 0x100C5600 + public static Site CreateFromUrl(string url); // 0x10240D10 + public object Copy(); // 0x10240CC0 + public IPermission CreateIdentityPermission(Evidence evidence); // 0x10240EF0 + public override bool Equals(object o); // 0x10240F40 + public override int GetHashCode(); // 0x10140690 + public override string ToString(); // 0x10241230 + internal static bool IsValid(string name); // 0x10241000 + internal static string UrlToSite(string url); // 0x102412D0 +} + +// Namespace: System.Security.Policy +[Serializable] +public sealed class SiteMembershipCondition : IConstantMembershipCondition, IMembershipCondition, ISecurityEncodable, ISecurityPolicyEncodable // TypeDefIndex: 1455 +{ + // Fields + private readonly int version; // 0x08 + private string _site; // 0x0C + + // Properties + public string Site { get; set; } // 0x100C5B30 0x10240C20 + + // Methods + internal void .ctor(); // 0x10154960 + public void .ctor(string site); // 0x10240B70 + public bool Check(Evidence evidence); // 0x10240530 + public IMembershipCondition Copy(); // 0x102407C0 + public override bool Equals(object o); // 0x102408A0 + public void FromXml(SecurityElement e); // 0x102409E0 + public void FromXml(SecurityElement e, PolicyLevel level); // 0x102409E0 + public override int GetHashCode(); // 0x101AE010 + public override string ToString(); // 0x10240A60 + public SecurityElement ToXml(); // 0x10240AC0 + public SecurityElement ToXml(PolicyLevel level); // 0x10240AC0 +} + +// Namespace: System.Security.Policy +[Serializable] +public sealed class StrongName : IBuiltInEvidence, IIdentityPermissionFactory // TypeDefIndex: 1456 +{ + // Fields + private StrongNamePublicKeyBlob publickey; // 0x08 + private string name; // 0x0C + private Version version; // 0x10 + + // Properties + public string Name { get; } // 0x100C5B30 + public StrongNamePublicKeyBlob PublicKey { get; } // 0x100BF0C0 + public Version Version { get; } // 0x100BFC20 + + // Methods + public void .ctor(StrongNamePublicKeyBlob blob, string name, Version version); // 0x10154E80 + private int System.Security.Policy.IBuiltInEvidence.GetRequiredSize(bool verbose); // 0x10154D40 + private int System.Security.Policy.IBuiltInEvidence.InitFromBuffer(char[] buffer, int position); // 0x100C5600 + private int System.Security.Policy.IBuiltInEvidence.OutputToBuffer(char[] buffer, int position, bool verbose); // 0x100C5600 + public object Copy(); // 0x10154AB0 + public IPermission CreateIdentityPermission(Evidence evidence); // 0x10154BF0 + public override bool Equals(object o); // 0x10154C50 + public override int GetHashCode(); // 0x10154D10 + public override string ToString(); // 0x10154D70 +} + +// Namespace: System.Security.Policy +[Serializable] +public sealed class StrongNameMembershipCondition : IConstantMembershipCondition, IMembershipCondition, ISecurityEncodable, ISecurityPolicyEncodable // TypeDefIndex: 1457 +{ + // Fields + private readonly int version; // 0x08 + private StrongNamePublicKeyBlob blob; // 0x0C + private string name; // 0x10 + private Version assemblyVersion; // 0x14 + + // Properties + public string Name { get; set; } // 0x100BFC20 0x100C5B40 + public Version Version { get; set; } // 0x100EF0C0 0x10127B00 + public StrongNamePublicKeyBlob PublicKey { get; set; } // 0x100C5B30 0x10154A50 + + // Methods + public void .ctor(StrongNamePublicKeyBlob blob, string name, Version version); // 0x10154980 + internal void .ctor(SecurityElement e); // 0x10154870 + internal void .ctor(); // 0x10154960 + public bool Check(Evidence evidence); // 0x10154220 + public IMembershipCondition Copy(); // 0x10154350 + public override bool Equals(object o); // 0x10154450 + public override int GetHashCode(); // 0x10154630 + public void FromXml(SecurityElement e); // 0x10154550 + public void FromXml(SecurityElement e, PolicyLevel level); // 0x10154550 + public override string ToString(); // 0x10154660 + public SecurityElement ToXml(); // 0x10154710 + public SecurityElement ToXml(PolicyLevel level); // 0x10154710 +} + +// Namespace: System.Security.Policy +public class TrustManagerContext // TypeDefIndex: 1458 +{ + // Fields + private bool _ignorePersistedDecision; // 0x08 + private bool _noPrompt; // 0x09 + private bool _keepAlive; // 0x0A + private bool _persist; // 0x0B + private ApplicationIdentity _previousId; // 0x0C + private TrustManagerUIContext _ui; // 0x10 + + // Properties + public virtual bool IgnorePersistedDecision { get; set; } // 0x100EA020 0x10155000 + public virtual bool KeepAlive { get; set; } // 0x101172F0 0x10155010 + public virtual bool NoPrompt { get; set; } // 0x10117290 0x10155020 + public virtual bool Persist { get; set; } // 0x10154FF0 0x10155030 + public virtual ApplicationIdentity PreviousApplicationIdentity { get; set; } // 0x100C5B30 0x100C5B50 + public virtual TrustManagerUIContext UIContext { get; set; } // 0x100BFC20 0x100C5B40 + + // Methods + public void .ctor(); // 0x10154FC0 + public void .ctor(TrustManagerUIContext uiContext); // 0x10154F90 +} + +// Namespace: System.Security.Policy +public enum TrustManagerUIContext // TypeDefIndex: 1459 +{ + Install = 0, + Upgrade = 1, + Run = 2 +} + +// Namespace: System.Security.Policy +[Serializable] +public sealed class UnionCodeGroup : CodeGroup // TypeDefIndex: 1460 +{ + // Properties + public override string MergeLogic { get; } // 0x10155820 + + // Methods + public void .ctor(IMembershipCondition membershipCondition, PolicyStatement policy); // 0x10155800 + internal void .ctor(SecurityElement e, PolicyLevel level); // 0x10155810 + public override CodeGroup Copy(); // 0x10155040 + internal CodeGroup Copy(bool childs); // 0x10155060 + public override PolicyStatement Resolve(Evidence evidence); // 0x10155530 + public override CodeGroup ResolveMatchingCodeGroups(Evidence evidence); // 0x101552B0 +} + +// Namespace: System.Security.Policy +[Serializable] +public sealed class Url : IBuiltInEvidence, IIdentityPermissionFactory // TypeDefIndex: 1461 +{ + // Fields + private string origin_url; // 0x08 + + // Properties + public string Value { get; } // 0x100BF0C0 + + // Methods + public void .ctor(string name); // 0x10156900 + internal void .ctor(string name, bool validated); // 0x101568C0 + private int System.Security.Policy.IBuiltInEvidence.GetRequiredSize(bool verbose); // 0x101567F0 + private int System.Security.Policy.IBuiltInEvidence.InitFromBuffer(char[] buffer, int position); // 0x100C5600 + private int System.Security.Policy.IBuiltInEvidence.OutputToBuffer(char[] buffer, int position, bool verbose); // 0x100C5600 + public object Copy(); // 0x101561D0 + public IPermission CreateIdentityPermission(Evidence evidence); // 0x10156230 + public override bool Equals(object o); // 0x10156280 + public override int GetHashCode(); // 0x10156420 + public override string ToString(); // 0x10156820 + private string Prepare(string url); // 0x101564D0 +} + +// Namespace: System.Security.Policy +[Serializable] +public sealed class UrlMembershipCondition : IConstantMembershipCondition, IMembershipCondition, ISecurityEncodable, ISecurityPolicyEncodable // TypeDefIndex: 1462 +{ + // Fields + private readonly int version; // 0x08 + private Url url; // 0x0C + private string userUrl; // 0x10 + + // Properties + public string Url { get; set; } // 0x10156140 0x10156170 + + // Methods + public void .ctor(string url); // 0x10155FE0 + internal void .ctor(Url url, string userUrl); // 0x10156090 + public bool Check(Evidence evidence); // 0x10155980 + public IMembershipCondition Copy(); // 0x10155B00 + public override bool Equals(object o); // 0x10155BF0 + public void FromXml(SecurityElement e); // 0x10155D20 + public void FromXml(SecurityElement e, PolicyLevel level); // 0x10155D20 + public override int GetHashCode(); // 0x10155DF0 + public override string ToString(); // 0x10155EB0 + public SecurityElement ToXml(); // 0x10155F30 + public SecurityElement ToXml(PolicyLevel level); // 0x10155F30 + internal void CheckUrl(string url); // 0x10155850 +} + +// Namespace: System.Security.Policy +[Serializable] +public sealed class Zone : IBuiltInEvidence, IIdentityPermissionFactory // TypeDefIndex: 1463 +{ + // Fields + private SecurityZone zone; // 0x08 + + // Properties + public SecurityZone SecurityZone { get; } // 0x100BF0C0 + + // Methods + public void .ctor(SecurityZone zone); // 0x10158C00 + private int System.Security.Policy.IBuiltInEvidence.GetRequiredSize(bool verbose); // 0x10158A50 + private int System.Security.Policy.IBuiltInEvidence.InitFromBuffer(char[] buffer, int position); // 0x10158A60 + private int System.Security.Policy.IBuiltInEvidence.OutputToBuffer(char[] buffer, int position, bool verbose); // 0x10158AB0 + public object Copy(); // 0x101587E0 + public IPermission CreateIdentityPermission(Evidence evidence); // 0x101589B0 + public static Zone CreateFromUrl(string url); // 0x10158830 + public override bool Equals(object o); // 0x10158A00 + public override int GetHashCode(); // 0x100BF0C0 + public override string ToString(); // 0x10158B30 +} + +// Namespace: System.Security.Policy +[Serializable] +public sealed class ZoneMembershipCondition : IConstantMembershipCondition, IMembershipCondition, ISecurityEncodable, ISecurityPolicyEncodable // TypeDefIndex: 1464 +{ + // Fields + private readonly int version; // 0x08 + private SecurityZone zone; // 0x0C + + // Properties + public SecurityZone SecurityZone { get; set; } // 0x100C5B30 0x101586C0 + + // Methods + internal void .ctor(); // 0x10154960 + public void .ctor(SecurityZone zone); // 0x10158590 + public bool Check(Evidence evidence); // 0x10157FD0 + public IMembershipCondition Copy(); // 0x10158070 + public override bool Equals(object o); // 0x101581D0 + public void FromXml(SecurityElement e); // 0x10158220 + public void FromXml(SecurityElement e, PolicyLevel level); // 0x10158220 + public override int GetHashCode(); // 0x10158330 + public override string ToString(); // 0x101583B0 + public SecurityElement ToXml(); // 0x101584B0 + public SecurityElement ToXml(PolicyLevel level); // 0x101584B0 +} + +// Namespace: System.Security.Principal +[Serializable] +public class GenericIdentity : IIdentity // TypeDefIndex: 1465 +{ + // Fields + private string m_name; // 0x08 + private string m_type; // 0x0C + + // Properties + public virtual string AuthenticationType { get; } // 0x100C5B30 + public virtual string Name { get; } // 0x100BF0C0 + public virtual bool IsAuthenticated { get; } // 0x1013FA00 + + // Methods + public void .ctor(string name, string type); // 0x1013F970 + public void .ctor(string name); // 0x1013F8A0 +} + +// Namespace: System.Security.Principal +[Serializable] +public class GenericPrincipal : IPrincipal // TypeDefIndex: 1466 +{ + // Fields + private IIdentity m_identity; // 0x08 + private string[] m_roles; // 0x0C + + // Properties + public virtual IIdentity Identity { get; } // 0x100BF0C0 + + // Methods + public void .ctor(IIdentity identity, string[] roles); // 0x1013FB00 + public virtual bool IsInRole(string role); // 0x1013FA20 +} + +// Namespace: System.Security.Principal +public interface IIdentity // TypeDefIndex: 1467 +{ + // Properties + string AuthenticationType { get; } + bool IsAuthenticated { get; } + string Name { get; } + +} + +// Namespace: System.Security.Principal +public interface IPrincipal // TypeDefIndex: 1468 +{ + // Properties + IIdentity Identity { get; } + + // Methods + bool IsInRole(string role); +} + +// Namespace: System.Security.Principal +[Serializable] +public sealed class IdentityNotMappedException : SystemException // TypeDefIndex: 1469 +{ + // Fields + private IdentityReferenceCollection _coll; // 0x34 + + // Properties + public IdentityReferenceCollection UnmappedIdentities { get; } // 0x1013FC50 + + // Methods + public void .ctor(); // 0x1013FC10 + public void .ctor(string message); // 0x100E5680 + public void .ctor(string message, Exception inner); // 0x100E5670 + public override void GetObjectData(SerializationInfo serializationInfo, StreamingContext streamingContext); // 0x100C5530 +} + +// Namespace: System.Security.Principal +public abstract class IdentityReference // TypeDefIndex: 1470 +{ + // Properties + public abstract string Value { get; } + + // Methods + internal void .ctor(); // 0x100BF000 + public abstract bool Equals(object o); + public abstract int GetHashCode(); + public abstract bool IsValidTargetType(Type targetType); + public abstract string ToString(); + public abstract IdentityReference Translate(Type targetType); + public static bool op_Equality(IdentityReference left, IdentityReference right); // 0x10140470 + public static bool op_Inequality(IdentityReference left, IdentityReference right); // 0x10140510 +} + +// Namespace: System.Security.Principal +public class IdentityReferenceCollection : IEnumerable, ICollection`1, IEnumerable`1 // TypeDefIndex: 1471 +{ + // Fields + private ArrayList _list; // 0x08 + + // Properties + public int Count { get; } // 0x101273C0 + public bool IsReadOnly { get; } // 0x100EFBF0 + public IdentityReference Item { get; set; } // 0x10140370 0x10140430 + + // Methods + public void .ctor(); // 0x10140320 + public void .ctor(int capacity); // 0x101402D0 + private IEnumerator System.Collections.IEnumerable.GetEnumerator(); // 0x101401E0 + public void Add(IdentityReference identity); // 0x1013FCE0 + public void Clear(); // 0x1013FD10 + public bool Contains(IdentityReference identity); // 0x1013FD40 + public void CopyTo(IdentityReference[] array, int offset); // 0x1013FF30 + public IEnumerator`1 GetEnumerator(); // 0x1013FF80 + public bool Remove(IdentityReference identity); // 0x1013FFD0 + public IdentityReferenceCollection Translate(Type targetType); // 0x10140280 + public IdentityReferenceCollection Translate(Type targetType, bool forceSuccess); // 0x10140230 +} + +// Namespace: System.Security.Principal +public sealed class NTAccount : IdentityReference // TypeDefIndex: 1472 +{ + // Fields + private string _value; // 0x08 + + // Properties + public override string Value { get; } // 0x100BF0C0 + + // Methods + public void .ctor(string name); // 0x101408D0 + public void .ctor(string domainName, string accountName); // 0x101407C0 + public override bool Equals(object o); // 0x101405B0 + public override int GetHashCode(); // 0x10140690 + public override bool IsValidTargetType(Type targetType); // 0x101406C0 + public override string ToString(); // 0x100BF0C0 + public override IdentityReference Translate(Type targetType); // 0x10140760 + public static bool op_Equality(NTAccount left, NTAccount right); // 0x10140990 + public static bool op_Inequality(NTAccount left, NTAccount right); // 0x10140A10 +} + +// Namespace: System.Security.Principal +[Serializable] +public enum PrincipalPolicy // TypeDefIndex: 1473 +{ + UnauthenticatedPrincipal = 0, + NoPrincipal = 1, + WindowsPrincipal = 2 +} + +// Namespace: System.Security.Principal +public sealed class SecurityIdentifier : IdentityReference, IComparable`1 // TypeDefIndex: 1474 +{ + // Fields + private string _value; // 0x08 + public static readonly int MaxBinaryLength; // 0x00 + public static readonly int MinBinaryLength; // 0x04 + + // Properties + public SecurityIdentifier AccountDomainSid { get; } // 0x10146390 + public int BinaryLength { get; } // 0x10105770 + public override string Value { get; } // 0x100BF0C0 + + // Methods + public void .ctor(string sddlForm); // 0x10146210 + public void .ctor(byte[] binaryForm, int offset); // 0x10146140 + public void .ctor(IntPtr binaryForm); // 0x101460E0 + public void .ctor(WellKnownSidType sidType, SecurityIdentifier domainSid); // 0x10146290 + private static void .cctor(); // 0x100C5530 + public int CompareTo(SecurityIdentifier sid); // 0x10145BD0 + public override bool Equals(object o); // 0x10145D30 + public bool Equals(SecurityIdentifier sid); // 0x10145C50 + public void GetBinaryForm(byte[] binaryForm, int offset); // 0x10145E50 + public override int GetHashCode(); // 0x10140690 + public bool IsAccountSid(); // 0x10145EF0 + public bool IsEqualDomainSid(SecurityIdentifier sid); // 0x10145F40 + public override bool IsValidTargetType(Type targetType); // 0x10145F90 + public bool IsWellKnown(WellKnownSidType type); // 0x10146030 + public override string ToString(); // 0x100BF0C0 + public override IdentityReference Translate(Type targetType); // 0x10146080 + public static bool op_Equality(SecurityIdentifier left, SecurityIdentifier right); // 0x101463E0 + public static bool op_Inequality(SecurityIdentifier left, SecurityIdentifier right); // 0x10146460 +} + +// Namespace: System.Security.Principal +[Serializable] +public enum TokenAccessLevels // TypeDefIndex: 1475 +{ + AssignPrimary = 1, + Duplicate = 2, + Impersonate = 4, + Query = 8, + QuerySource = 16, + AdjustPrivileges = 32, + AdjustGroups = 64, + AdjustDefault = 128, + AdjustSessionId = 256, + Read = 131080, + Write = 131296, + AllAccess = 983551, + MaximumAllowed = 33554432 +} + +// Namespace: System.Security.Principal +[Serializable] +public enum TokenImpersonationLevel // TypeDefIndex: 1476 +{ + None = 0, + Anonymous = 1, + Identification = 2, + Impersonation = 3, + Delegation = 4 +} + +// Namespace: System.Security.Principal +public enum WellKnownSidType // TypeDefIndex: 1477 +{ + NullSid = 0, + WorldSid = 1, + LocalSid = 2, + CreatorOwnerSid = 3, + CreatorGroupSid = 4, + CreatorOwnerServerSid = 5, + CreatorGroupServerSid = 6, + NTAuthoritySid = 7, + DialupSid = 8, + NetworkSid = 9, + BatchSid = 10, + InteractiveSid = 11, + ServiceSid = 12, + AnonymousSid = 13, + ProxySid = 14, + EnterpriseControllersSid = 15, + SelfSid = 16, + AuthenticatedUserSid = 17, + RestrictedCodeSid = 18, + TerminalServerSid = 19, + RemoteLogonIdSid = 20, + LogonIdsSid = 21, + LocalSystemSid = 22, + LocalServiceSid = 23, + NetworkServiceSid = 24, + BuiltinDomainSid = 25, + BuiltinAdministratorsSid = 26, + BuiltinUsersSid = 27, + BuiltinGuestsSid = 28, + BuiltinPowerUsersSid = 29, + BuiltinAccountOperatorsSid = 30, + BuiltinSystemOperatorsSid = 31, + BuiltinPrintOperatorsSid = 32, + BuiltinBackupOperatorsSid = 33, + BuiltinReplicatorSid = 34, + BuiltinPreWindows2000CompatibleAccessSid = 35, + BuiltinRemoteDesktopUsersSid = 36, + BuiltinNetworkConfigurationOperatorsSid = 37, + AccountAdministratorSid = 38, + AccountGuestSid = 39, + AccountKrbtgtSid = 40, + AccountDomainAdminsSid = 41, + AccountDomainUsersSid = 42, + AccountDomainGuestsSid = 43, + AccountComputersSid = 44, + AccountControllersSid = 45, + AccountCertAdminsSid = 46, + AccountSchemaAdminsSid = 47, + AccountEnterpriseAdminsSid = 48, + AccountPolicyAdminsSid = 49, + AccountRasAndIasServersSid = 50, + NtlmAuthenticationSid = 51, + DigestAuthenticationSid = 52, + SChannelAuthenticationSid = 53, + ThisOrganizationSid = 54, + OtherOrganizationSid = 55, + BuiltinIncomingForestTrustBuildersSid = 56, + BuiltinPerformanceMonitoringUsersSid = 57, + BuiltinPerformanceLoggingUsersSid = 58, + BuiltinAuthorizationAccessSid = 59, + WinBuiltinTerminalServerLicenseServersSid = 60, + MaxDefined = 60 +} + +// Namespace: System.Security.Principal +[Serializable] +public enum WindowsAccountType // TypeDefIndex: 1478 +{ + Normal = 0, + Guest = 1, + System = 2, + Anonymous = 3 +} + +// Namespace: System.Security.Principal +[Serializable] +public enum WindowsBuiltInRole // TypeDefIndex: 1479 +{ + Administrator = 544, + User = 545, + Guest = 546, + PowerUser = 547, + AccountOperator = 548, + SystemOperator = 549, + PrintOperator = 550, + BackupOperator = 551, + Replicator = 552 +} + +// Namespace: System.Security.Principal +[Serializable] +public class WindowsIdentity : IDisposable, ISerializable, IDeserializationCallback, IIdentity // TypeDefIndex: 1480 +{ + // Fields + private IntPtr _token; // 0x08 + private string _type; // 0x0C + private WindowsAccountType _account; // 0x10 + private bool _authenticated; // 0x14 + private string _name; // 0x18 + private SerializationInfo _info; // 0x1C + private static IntPtr invalidWindows; // 0x00 + + // Properties + public string AuthenticationType { get; } // 0x100C5B30 + public virtual bool IsAnonymous { get; } // 0x10157660 + public virtual bool IsAuthenticated { get; } // 0x100C5670 + public virtual bool IsGuest { get; } // 0x10157670 + public virtual bool IsSystem { get; } // 0x101576B0 + public virtual string Name { get; } // 0x101576C0 + public virtual IntPtr Token { get; } // 0x100BF0C0 + public IdentityReferenceCollection Groups { get; } // 0x101575C0 + public TokenImpersonationLevel ImpersonationLevel { get; } // 0x10157610 + public SecurityIdentifier Owner { get; } // 0x10157720 + public SecurityIdentifier User { get; } // 0x10157770 + private static bool IsPosix { get; } // 0x10157680 + + // Methods + public void .ctor(IntPtr userToken); // 0x101573D0 + public void .ctor(IntPtr userToken, string type); // 0x10157390 + public void .ctor(IntPtr userToken, string type, WindowsAccountType acctType); // 0x10157410 + public void .ctor(IntPtr userToken, string type, WindowsAccountType acctType, bool isAuthenticated); // 0x10157450 + public void .ctor(string sUserPrincipalName); // 0x10157280 + public void .ctor(string sUserPrincipalName, string type); // 0x101574B0 + public void .ctor(SerializationInfo info, StreamingContext context); // 0x10157490 + private static void .cctor(); // 0x10157250 + private void System.Runtime.Serialization.IDeserializationCallback.OnDeserialization(object sender); // 0x10156EB0 + private void System.Runtime.Serialization.ISerializable.GetObjectData(SerializationInfo info, StreamingContext context); // 0x10157180 + public void Dispose(); // 0x10156970 + protected virtual void Dispose(bool disposing); // 0x10156940 + public static WindowsIdentity GetAnonymous(); // 0x101569A0 + public static WindowsIdentity GetCurrent(); // 0x10156C60 + public static WindowsIdentity GetCurrent(bool ifImpersonating); // 0x10156BC0 + public static WindowsIdentity GetCurrent(TokenAccessLevels desiredAccess); // 0x10156C10 + public virtual WindowsImpersonationContext Impersonate(); // 0x10156D50 + public static WindowsImpersonationContext Impersonate(IntPtr userToken); // 0x10156D00 + private void SetToken(IntPtr token); // 0x10156DA0 + internal static string[] _GetRoles(IntPtr token); // 0x10157240 + internal static IntPtr GetCurrentToken(); // 0x100EB720 + private static string GetTokenName(IntPtr token); // 0x10104640 + private static IntPtr GetUserToken(string username); // 0x10156CF0 +} + +// Namespace: System.Security.Principal +public class WindowsImpersonationContext : IDisposable // TypeDefIndex: 1481 +{ + // Fields + private IntPtr _token; // 0x08 + private bool undo; // 0x0C + + // Methods + internal void .ctor(IntPtr token); // 0x101578E0 + public void Dispose(); // 0x101577D0 + protected virtual void Dispose(bool disposing); // 0x101577F0 + public void Undo(); // 0x10157850 + private static bool CloseToken(IntPtr token); // 0x101577C0 + private static IntPtr DuplicateToken(IntPtr token); // 0x10157820 + private static bool SetCurrentToken(IntPtr token); // 0x10157840 + private static bool RevertToSelf(); // 0x10157830 +} + +// Namespace: System.Security.Principal +[Serializable] +public class WindowsPrincipal : IPrincipal // TypeDefIndex: 1482 +{ + // Fields + private WindowsIdentity _identity; // 0x08 + private string[] m_roles; // 0x0C + + // Properties + public virtual IIdentity Identity { get; } // 0x100BF0C0 + private static bool IsPosix { get; } // 0x10157680 + private IntPtr Token { get; } // 0x10157DA0 + + // Methods + public void .ctor(WindowsIdentity ntIdentity); // 0x10157D30 + public virtual bool IsInRole(int rid); // 0x10157B40 + public virtual bool IsInRole(string role); // 0x101579B0 + public virtual bool IsInRole(WindowsBuiltInRole role); // 0x10157C60 + public virtual bool IsInRole(SecurityIdentifier sid); // 0x10157960 + private static bool IsMemberOfGroupId(IntPtr user, IntPtr group); // 0x10157CF0 + private static bool IsMemberOfGroupName(IntPtr user, string group); // 0x10157D10 +} + +// Namespace: System.Security +public sealed class AllowPartiallyTrustedCallersAttribute : Attribute // TypeDefIndex: 1483 +{ + // Methods + public void .ctor(); // 0x100C5970 +} + +// Namespace: System.Security +[Serializable] +public abstract class CodeAccessPermission : IPermission, ISecurityEncodable, IStackWalk // TypeDefIndex: 1484 +{ + // Methods + protected void .ctor(); // 0x100BF000 + public void Assert(); // 0x100C5530 + internal bool CheckAssert(CodeAccessPermission asserted); // 0x102871E0 + internal bool CheckDemand(CodeAccessPermission target); // 0x102871E0 + internal bool CheckDeny(CodeAccessPermission denied); // 0x10287230 + internal bool CheckPermitOnly(CodeAccessPermission target); // 0x102871E0 + public abstract IPermission Copy(); + public void Demand(); // 0x100C5530 + public void Deny(); // 0x100C5530 + public override bool Equals(object obj); // 0x102877B0 + public abstract void FromXml(SecurityElement elem); + public override int GetHashCode(); // 0x102110E0 + public abstract IPermission Intersect(IPermission target); + public abstract bool IsSubsetOf(IPermission target); + public override string ToString(); // 0x102881B0 + public abstract SecurityElement ToXml(); + public virtual IPermission Union(IPermission other); // 0x102881F0 + public void PermitOnly(); // 0x100C5530 + public static void RevertAll(); // 0x100C5530 + public static void RevertAssert(); // 0x100C5530 + public static void RevertDeny(); // 0x100C5530 + public static void RevertPermitOnly(); // 0x100C5530 + internal SecurityElement Element(int version); // 0x10287690 + internal static PermissionState CheckPermissionState(PermissionState state, bool allowUnrestricted); // 0x102872E0 + internal static int CheckSecurityElement(SecurityElement se, string parameterName, int minimumVersion, int maximumVersion); // 0x102873A0 + internal static bool IsUnrestricted(SecurityElement se); // 0x10287860 + internal bool ProcessFrame(SecurityFrame frame); // 0x10287940 + internal static void ThrowInvalidPermission(IPermission target, Type expected); // 0x102880B0 + internal static void ThrowExecutionEngineException(SecurityAction stackmod); // 0x10287FF0 + internal static void ThrowSecurityException(object demanded, string message, SecurityFrame frame, SecurityAction action, IPermission failed); // 0x10288160 +} + +// Namespace: System.Security +[Serializable] +public class HostProtectionException : SystemException // TypeDefIndex: 1485 +{ + // Fields + private HostProtectionResource _protected; // 0x34 + private HostProtectionResource _demanded; // 0x38 + + // Properties + public HostProtectionResource DemandedResources { get; } // 0x100EB210 + public HostProtectionResource ProtectedResources { get; } // 0x100E9ED0 + + // Methods + public void .ctor(); // 0x10156930 + public void .ctor(string message); // 0x100E5680 + public void .ctor(string message, Exception e); // 0x100E5670 + public void .ctor(string message, HostProtectionResource protectedResources, HostProtectionResource demandedResources); // 0x10249DF0 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x10249E20 + public override void GetObjectData(SerializationInfo info, StreamingContext context); // 0x10249D80 + public override string ToString(); // 0x10249DE0 +} + +// Namespace: System.Security +[Serializable] +public class HostSecurityManager // TypeDefIndex: 1486 +{ + // Properties + public virtual PolicyLevel DomainPolicy { get; } // 0x100C5600 + public virtual HostSecurityManagerOptions Flags { get; } // 0x1024A8D0 + + // Methods + public void .ctor(); // 0x100BF000 + public virtual ApplicationTrust DetermineApplicationTrust(Evidence applicationEvidence, Evidence activatorEvidence, TrustManagerContext context); // 0x1024A5A0 + public virtual Evidence ProvideAppDomainEvidence(Evidence inputEvidence); // 0x10102390 + public virtual Evidence ProvideAssemblyEvidence(Assembly loadedAssembly, Evidence inputEvidence); // 0x10223E60 + public virtual PermissionSet ResolvePolicy(Evidence evidence); // 0x1024A840 +} + +// Namespace: System.Security +[Serializable] +public enum HostSecurityManagerOptions // TypeDefIndex: 1487 +{ + None = 0, + HostAppDomainEvidence = 1, + HostPolicyLevel = 2, + HostAssemblyEvidence = 4, + HostDetermineApplicationTrust = 8, + HostResolvePolicy = 16, + AllFlags = 31 +} + +// Namespace: System.Security +public interface IEvidenceFactory // TypeDefIndex: 1488 +{ + // Properties + Evidence Evidence { get; } + +} + +// Namespace: System.Security +public interface IPermission : ISecurityEncodable // TypeDefIndex: 1489 +{ + // Methods + IPermission Copy(); + void Demand(); + IPermission Intersect(IPermission target); + bool IsSubsetOf(IPermission target); + IPermission Union(IPermission target); +} + +// Namespace: System.Security +public interface ISecurityEncodable // TypeDefIndex: 1490 +{ + // Methods + void FromXml(SecurityElement e); + SecurityElement ToXml(); +} + +// Namespace: System.Security +public interface ISecurityPolicyEncodable // TypeDefIndex: 1491 +{ + // Methods + void FromXml(SecurityElement e, PolicyLevel level); + SecurityElement ToXml(PolicyLevel level); +} + +// Namespace: System.Security +public interface IStackWalk // TypeDefIndex: 1492 +{ + // Methods + void Assert(); + void Demand(); + void Deny(); + void PermitOnly(); +} + +// Namespace: System.Security +[Serializable] +public sealed class NamedPermissionSet : PermissionSet // TypeDefIndex: 1493 +{ + // Fields + private string name; // 0x10 + private string description; // 0x14 + + // Properties + public string Description { get; set; } // 0x100EF0C0 0x10127B00 + public string Name { get; set; } // 0x100BFC20 0x1024CAE0 + + // Methods + internal void .ctor(); // 0x100BF000 + public void .ctor(string name, PermissionSet permSet); // 0x1024CAA0 + public void .ctor(string name, PermissionState state); // 0x1024CAA0 + public void .ctor(NamedPermissionSet permSet); // 0x1024CA70 + public void .ctor(string name); // 0x1024CAC0 + public override PermissionSet Copy(); // 0x1024C860 + public NamedPermissionSet Copy(string name); // 0x1024C7F0 + public override void FromXml(SecurityElement et); // 0x1024C960 + public override SecurityElement ToXml(); // 0x1024CA30 + public override bool Equals(object obj); // 0x1024C8C0 + public override int GetHashCode(); // 0x1024C9F0 +} + +// Namespace: System.Security +internal static class PermissionBuilder // TypeDefIndex: 1494 +{ + // Fields + private static object[] psNone; // 0x00 + + // Methods + private static void .cctor(); // 0x1024D090 + public static IPermission Create(string fullname, PermissionState state); // 0x1024CEF0 + public static IPermission Create(SecurityElement se); // 0x1024CD70 + public static IPermission Create(string fullname, SecurityElement se); // 0x1024CE40 + public static IPermission Create(Type type); // 0x1024D000 + internal static IPermission CreatePermission(string fullname, SecurityElement se); // 0x1024CB90 +} + +// Namespace: System.Security +[Serializable] +public class PermissionSet // TypeDefIndex: 1495 +{ + // Fields + private PolicyLevel k__BackingField; // 0x08 + private bool k__BackingField; // 0x0C + + // Properties + internal PolicyLevel Resolver { get; set; } // 0x100BF0C0 0x100EB270 + internal bool DeclarativeSecurity { get; set; } // 0x100F8910 0x1016CBD0 + + // Methods + public void .ctor(); // 0x100BF000 + internal void .ctor(string xml); // 0x101AA300 + public void .ctor(PermissionState state); // 0x101AA300 + public void .ctor(PermissionSet permSet); // 0x101AA300 + public IPermission AddPermission(IPermission perm); // 0x10102390 + public virtual void Assert(); // 0x100C5530 + public virtual PermissionSet Copy(); // 0x1024D140 + public virtual void Demand(); // 0x100C5530 + public virtual void PermitOnly(); // 0x100C5530 + public virtual IPermission GetPermission(Type permClass); // 0x100C5600 + public virtual PermissionSet Intersect(PermissionSet other); // 0x10102390 + public virtual void Deny(); // 0x100C5530 + public virtual void FromXml(SecurityElement et); // 0x100C5530 + public virtual void CopyTo(Array array, int index); // 0x100C5530 + public virtual SecurityElement ToXml(); // 0x100C5600 + public virtual bool IsSubsetOf(PermissionSet target); // 0x100E5880 + internal void SetReadOnly(bool value); // 0x100C5530 + public bool IsUnrestricted(); // 0x100E5880 + public PermissionSet Union(PermissionSet other); // 0x1024D200 + public virtual IEnumerator GetEnumerator(); // 0x1024D1C0 + public virtual bool IsEmpty(); // 0x100E5880 + internal static PermissionSet CreateFromBinaryFormat(byte[] data); // 0x1024D180 +} + +// Namespace: +private sealed class c__Iterator1 : IEnumerator, IDisposable, IEnumerator`1 // TypeDefIndex: 1496 +{ + // Fields + internal int $PC; // 0x08 + internal object $current; // 0x0C + + // Properties + private object System.Collections.Generic.IEnumerator.Current { get; } // 0x100C5B30 + private object System.Collections.IEnumerator.Current { get; } // 0x100C5B30 + + // Methods + public void .ctor(); // 0x100BF000 + public bool MoveNext(); // 0x10258CB0 + public void Dispose(); // 0x10258CA0 + public void Reset(); // 0x10258CD0 +} + +// Namespace: System.Security +[Serializable] +public enum PolicyLevelType // TypeDefIndex: 1497 +{ + User = 0, + Machine = 1, + Enterprise = 2, + AppDomain = 3 +} + +// Namespace: System.Security +public sealed class SecureString : CriticalFinalizerObject, IDisposable // TypeDefIndex: 1498 +{ + // Fields + private const int BlockSize = 16; // 0x00 + private const int MaxSize = 65536; // 0x00 + private int length; // 0x08 + private bool disposed; // 0x0C + private bool read_only; // 0x0D + private byte[] data; // 0x10 + + // Properties + public int Length { get; } // 0x10141800 + + // Methods + public void .ctor(); // 0x10141640 + public void .ctor(void * value, int length); // 0x10141690 + private static void .cctor(); // 0x100C5530 + public void AppendChar(char c); // 0x10140BA0 + public void Clear(); // 0x10140D80 + public SecureString Copy(); // 0x10140E40 + public void Dispose(); // 0x10140F10 + public void InsertAt(int index, char c); // 0x10141030 + public bool IsReadOnly(); // 0x10141290 + public void MakeReadOnly(); // 0x101412F0 + public void RemoveAt(int index); // 0x10141300 + public void SetAt(int index, char c); // 0x101414A0 + private void Encrypt(); // 0x100C5530 + private void Decrypt(); // 0x100C5530 + private void Alloc(int length, bool realloc); // 0x10140A90 + internal byte[] GetBuffer(); // 0x10140F50 +} + +// Namespace: System.Security +public sealed class SecurityContext // TypeDefIndex: 1499 +{ + // Fields + private bool _capture; // 0x08 + private IntPtr _winid; // 0x0C + private CompressedStack _stack; // 0x10 + private bool _suppressFlowWindowsIdentity; // 0x14 + private bool _suppressFlow; // 0x15 + + // Properties + internal bool FlowSuppressed { get; set; } // 0x10142240 0x10142250 + internal bool WindowsIdentityFlowSuppressed { get; set; } // 0x100C5670 0x10142260 + internal CompressedStack CompressedStack { get; set; } // 0x100BFC20 0x100C5B40 + internal IntPtr IdentityToken { get; set; } // 0x100C5B30 0x100C5B50 + + // Methods + internal void .ctor(); // 0x100BF000 + internal void .ctor(SecurityContext sc); // 0x101421F0 + public SecurityContext CreateCopy(); // 0x10141B80 + public static SecurityContext Capture(); // 0x10141AB0 + public static bool IsFlowSuppressed(); // 0x10141C10 + public static bool IsWindowsIdentityFlowSuppressed(); // 0x10141C90 + public static void RestoreFlow(); // 0x10141D10 + public static void Run(SecurityContext securityContext, ContextCallback callback, object state); // 0x10141DC0 + public static AsyncFlowControl SuppressFlow(); // 0x10142120 + public static AsyncFlowControl SuppressFlowWindowsIdentity(); // 0x10142080 +} + +// Namespace: System.Security +public sealed class SecurityCriticalAttribute : Attribute // TypeDefIndex: 1500 +{ + // Fields + private SecurityCriticalScope _scope; // 0x08 + + // Properties + public SecurityCriticalScope Scope { get; } // 0x100BF0C0 + + // Methods + public void .ctor(); // 0x100C5B10 + public void .ctor(SecurityCriticalScope scope); // 0x10142270 +} + +// Namespace: System.Security +public enum SecurityCriticalScope // TypeDefIndex: 1501 +{ + Explicit = 0, + Everything = 1 +} + +// Namespace: System.Security +[Serializable] +public sealed class SecurityElement // TypeDefIndex: 1502 +{ + // Fields + private string text; // 0x08 + private string tag; // 0x0C + private ArrayList attributes; // 0x10 + private ArrayList children; // 0x14 + private static readonly char[] invalid_tag_chars; // 0x00 + private static readonly char[] invalid_text_chars; // 0x04 + private static readonly char[] invalid_attr_name_chars; // 0x08 + private static readonly char[] invalid_attr_value_chars; // 0x0C + private static readonly char[] invalid_chars; // 0x10 + + // Properties + public Hashtable Attributes { get; set; } // 0x10144250 0x101444B0 + public ArrayList Children { get; set; } // 0x100EF0C0 0x10144730 + public string Tag { get; set; } // 0x100C5B30 0x101448B0 + public string Text { get; set; } // 0x100BF0C0 0x101449B0 + + // Methods + public void .ctor(string tag); // 0x10143C70 + public void .ctor(string tag, string text); // 0x10144140 + internal void .ctor(SecurityElement se); // 0x10143C90 + private static void .cctor(); // 0x10143A30 + public void AddAttribute(string name, string value); // 0x101422A0 + public void AddChild(SecurityElement child); // 0x101423F0 + public string Attribute(string name); // 0x101424A0 + public SecurityElement Copy(); // 0x10142520 + public bool Equal(SecurityElement other); // 0x10142570 + public static string Escape(string str); // 0x101429F0 + private static string Unescape(string str); // 0x10143960 + public static SecurityElement FromString(string xml); // 0x10142BC0 + public static bool IsValidAttributeName(string name); // 0x10142F60 + public static bool IsValidAttributeValue(string value); // 0x10142FD0 + public static bool IsValidTag(string tag); // 0x10143040 + public static bool IsValidText(string text); // 0x101430B0 + public SecurityElement SearchForChildByTag(string tag); // 0x10143120 + public string SearchForTextOfTag(string tag); // 0x10143260 + public override string ToString(); // 0x101433D0 + private void ToXml(StringBuilder s, int level); // 0x10143440 + internal SecurityAttribute GetAttribute(string name); // 0x10142D50 +} + +// Namespace: +internal class SecurityAttribute // TypeDefIndex: 1503 +{ + // Fields + private string _name; // 0x08 + private string _value; // 0x0C + + // Properties + public string Name { get; } // 0x100BF0C0 + public string Value { get; } // 0x100C5B30 + + // Methods + public void .ctor(string name, string value); // 0x10141860 +} + +// Namespace: System.Security +[Serializable] +public class SecurityException : SystemException // TypeDefIndex: 1504 +{ + // Fields + private string permissionState; // 0x34 + private Type permissionType; // 0x38 + private string _granted; // 0x3C + private string _refused; // 0x40 + private object _demanded; // 0x44 + private IPermission _firstperm; // 0x48 + private MethodInfo _method; // 0x4C + private Evidence _evidence; // 0x50 + private SecurityAction _action; // 0x54 + private object _denyset; // 0x58 + private object _permitset; // 0x5C + private AssemblyName _assembly; // 0x60 + private string _url; // 0x64 + private SecurityZone _zone; // 0x68 + + // Properties + public SecurityAction Action { get; set; } // 0x10145520 0x101455A0 + public object DenySetInstance { get; set; } // 0x10145540 0x101455C0 + public AssemblyName FailedAssemblyInfo { get; set; } // 0x10145550 0x101455D0 + public MethodInfo Method { get; set; } // 0x10145570 0x10145600 + public object PermitOnlySetInstance { get; set; } // 0x10145580 0x10145610 + public string Url { get; set; } // 0x10145590 0x10145620 + public SecurityZone Zone { get; set; } // 0x1013F890 0x10145630 + public object Demanded { get; set; } // 0x10145530 0x101455B0 + public IPermission FirstPermissionThatFailed { get; set; } // 0x10145560 0x101455E0 + public string PermissionState { get; set; } // 0x100E9ED0 0x100EA750 + public Type PermissionType { get; set; } // 0x100EB210 0x100EB290 + public string GrantedSet { get; set; } // 0x100EB220 0x101455F0 + public string RefusedSet { get; set; } // 0x100E9E80 0x100EB280 + + // Methods + public void .ctor(); // 0x10145360 + public void .ctor(string message); // 0x10145190 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x10145290 + public void .ctor(string message, Exception inner); // 0x101453E0 + public void .ctor(string message, Type type); // 0x10145220 + public void .ctor(string message, Type type, string state); // 0x101453B0 + internal void .ctor(string message, PermissionSet granted, PermissionSet refused); // 0x101451B0 + public void .ctor(string message, object deny, object permitOnly, MethodInfo method, object demanded, IPermission permThatFailed); // 0x10145250 + public void .ctor(string message, AssemblyName assemblyName, PermissionSet grant, PermissionSet refused, MethodInfo method, SecurityAction action, object demanded, IPermission permThatFailed, Evidence evidence); // 0x10145410 + public override void GetObjectData(SerializationInfo info, StreamingContext context); // 0x10144AF0 + public override string ToString(); // 0x10144BE0 +} + +// Namespace: System.Security +internal struct RuntimeDeclSecurityEntry // TypeDefIndex: 1505 +{ + // Fields + public IntPtr blob; // 0x08 + public int size; // 0x0C + public int index; // 0x10 + +} + +// Namespace: System.Security +internal class RuntimeSecurityFrame // TypeDefIndex: 1506 +{ + // Fields + public AppDomain domain; // 0x08 + public MethodInfo method; // 0x0C + public RuntimeDeclSecurityEntry assert; // 0x10 + public RuntimeDeclSecurityEntry deny; // 0x1C + public RuntimeDeclSecurityEntry permitonly; // 0x28 + + // Methods + public void .ctor(); // 0x100BF000 +} + +// Namespace: System.Security +internal struct SecurityFrame // TypeDefIndex: 1507 +{ + // Fields + private AppDomain _domain; // 0x08 + private MethodInfo _method; // 0x0C + private PermissionSet _assert; // 0x10 + private PermissionSet _deny; // 0x14 + private PermissionSet _permitonly; // 0x18 + + // Properties + public Assembly Assembly { get; } // 0x10007FE0 + public AppDomain Domain { get; } // 0x10003A80 + public MethodInfo Method { get; } // 0x10003A90 + public PermissionSet Assert { get; } // 0x100039B0 + public PermissionSet Deny { get; } // 0x10008030 + public PermissionSet PermitOnly { get; } // 0x10008060 + public bool HasStackModifiers { get; } // 0x10008040 + + // Methods + internal void .ctor(RuntimeSecurityFrame frame); // 0x10007FA0 + internal void .ctor(int skip); // 0x10007F50 + private static RuntimeSecurityFrame _GetSecurityFrame(int skip); // 0x10145B80 + private static Array _GetSecurityStack(int skip); // 0x10104640 + internal void InitFromRuntimeFrame(RuntimeSecurityFrame frame); // 0x10007F30 + public bool Equals(SecurityFrame sf); // 0x10007F00 + public override string ToString(); // 0x10007F40 + public static ArrayList GetStack(int skipFrames); // 0x10145830 +} + +// Namespace: System.Security +internal struct RuntimeDeclSecurityActions // TypeDefIndex: 1508 +{ + // Fields + public RuntimeDeclSecurityEntry cas; // 0x08 + public RuntimeDeclSecurityEntry noncas; // 0x14 + public RuntimeDeclSecurityEntry choice; // 0x20 + +} + +// Namespace: System.Security +public static class SecurityManager // TypeDefIndex: 1509 +{ + // Fields + private static object _lockObject; // 0x00 + private static ArrayList _hierarchy; // 0x04 + private static IPermission _unmanagedCode; // 0x08 + private static Hashtable _declsecCache; // 0x0C + private static PolicyLevel _level; // 0x10 + private static SecurityPermission _execution; // 0x14 + + // Properties + public static bool CheckExecutionRights { get; set; } // 0x10148FB0 0x10149350 + public static bool SecurityEnabled { get; set; } // 0x10148FB0 0x101493C0 + private static IEnumerator Hierarchy { get; } // 0x10148FC0 + internal static PolicyLevel ResolvingPolicyLevel { get; set; } // 0x10149160 0x10149360 + private static IPermission UnmanagedCode { get; } // 0x101491B0 + + // Methods + private static void .cctor(); // 0x10148F40 + public static void GetZoneAndOrigin(out ArrayList zone, out ArrayList origin); // 0x101470C0 + public static bool IsGranted(IPermission perm); // 0x10147700 + internal static bool IsGranted(Assembly a, IPermission perm); // 0x10147790 + internal static IPermission CheckPermissionSet(Assembly a, PermissionSet ps, bool noncas); // 0x10146840 + internal static IPermission CheckPermissionSet(AppDomain ad, PermissionSet ps); // 0x101464E0 + public static PolicyLevel LoadPolicyLevelFromFile(string path, PolicyLevelType type); // 0x10147DE0 + public static PolicyLevel LoadPolicyLevelFromString(string str, PolicyLevelType type); // 0x10147F70 + public static IEnumerator PolicyHierarchy(); // 0x10148100 + public static PermissionSet ResolvePolicy(Evidence evidence); // 0x10148B00 + public static PermissionSet ResolvePolicy(Evidence[] evidences); // 0x101489C0 + public static PermissionSet ResolveSystemPolicy(Evidence evidence); // 0x10148C40 + public static PermissionSet ResolvePolicy(Evidence evidence, PermissionSet reqdPset, PermissionSet optPset, PermissionSet denyPset, out PermissionSet denied); // 0x10148800 + public static IEnumerator ResolvePolicyGroups(Evidence evidence); // 0x10148560 + public static void SavePolicy(); // 0x10148DC0 + public static void SavePolicyLevel(PolicyLevel level); // 0x10148D90 + private static void InitializePolicyHierarchy(); // 0x10147400 + internal static bool ResolvePolicyLevel(PermissionSet ps, PolicyLevel pl, Evidence evidence); // 0x10148750 + internal static void ResolveIdentityPermissions(PermissionSet ps, Evidence evidence); // 0x10148400 + internal static PermissionSet Decode(IntPtr permissions, int length); // 0x10146C20 + internal static PermissionSet Decode(byte[] encodedPermissions); // 0x10146AE0 + private static bool GetLinkDemandSecurity(MethodBase method, void * cdecl, void * mdecl); // 0x101470A0 + internal static void ReflectedLinkDemandInvoke(MethodBase mb); // 0x10148150 + internal static bool ReflectedLinkDemandQuery(MethodBase mb); // 0x10148300 + private static bool LinkDemand(Assembly a, void * klass, void * method); // 0x10147BC0 + private static bool LinkDemandFullTrust(Assembly a); // 0x101478E0 + private static bool LinkDemandUnmanaged(Assembly a); // 0x10147B60 + private static void LinkDemandSecurityException(int securityViolation, IntPtr methodHandle); // 0x10147950 + private static void InheritanceDemandSecurityException(int securityViolation, Assembly a, Type t, MethodInfo method); // 0x10147120 + private static void ThrowException(Exception ex); // 0x10148F00 + private static bool InheritanceDemand(AppDomain ad, Assembly a, void * actions); // 0x10147230 + private static void DemandUnmanaged(); // 0x10147030 + private static void InternalDemand(IntPtr permissions, int length); // 0x10147680 + private static void InternalDemandChoice(IntPtr permissions, int length); // 0x10147630 +} + +// Namespace: System.Security +public sealed class SecuritySafeCriticalAttribute : Attribute // TypeDefIndex: 1510 +{ + // Methods + public void .ctor(); // 0x100C5970 +} + +// Namespace: System.Security +public abstract class SecurityState // TypeDefIndex: 1511 +{ + // Methods + protected void .ctor(); // 0x100BF000 + public abstract void EnsureState(); + public bool IsStateAvailable(); // 0x101493D0 +} + +// Namespace: System.Security +public sealed class SecurityTransparentAttribute : Attribute // TypeDefIndex: 1512 +{ + // Methods + public void .ctor(); // 0x100C5970 +} + +// Namespace: System.Security +public sealed class SecurityTreatAsSafeAttribute : Attribute // TypeDefIndex: 1513 +{ + // Methods + public void .ctor(); // 0x100C5970 +} + +// Namespace: System.Security +[Serializable] +public enum SecurityZone // TypeDefIndex: 1514 +{ + NoZone = -1, + MyComputer = 0, + Intranet = 1, + Trusted = 2, + Internet = 3, + Untrusted = 4 +} + +// Namespace: System.Security +public sealed class SuppressUnmanagedCodeSecurityAttribute : Attribute // TypeDefIndex: 1515 +{ + // Methods + public void .ctor(); // 0x100C5970 +} + +// Namespace: System.Security +public sealed class UnverifiableCodeAttribute : Attribute // TypeDefIndex: 1516 +{ + // Methods + public void .ctor(); // 0x100C5970 +} + +// Namespace: System.Security +[Serializable] +public class VerificationException : SystemException // TypeDefIndex: 1517 +{ + // Methods + public void .ctor(); // 0x10156930 + public void .ctor(string message); // 0x100E5680 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 + public void .ctor(string message, Exception innerException); // 0x100E5670 +} + +// Namespace: System.Security +[Serializable] +public sealed class XmlSyntaxException : SystemException // TypeDefIndex: 1518 +{ + // Methods + public void .ctor(); // 0x10156930 + public void .ctor(int lineNumber); // 0x10157DD0 + public void .ctor(int lineNumber, string message); // 0x10157E60 + public void .ctor(string message); // 0x100E5680 + public void .ctor(string message, Exception inner); // 0x100E5670 + internal void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 +} + +// Namespace: System.Text +[Serializable] +public class ASCIIEncoding : Encoding // TypeDefIndex: 1519 +{ + // Fields + internal const int ASCII_CODE_PAGE = 20127; // 0x00 + + // Properties + public override bool IsSingleByte { get; } // 0x100E5880 + + // Methods + public void .ctor(); // 0x1031FA40 + public override int GetByteCount(char[] chars, int index, int count); // 0x1031E5A0 + public override int GetByteCount(string chars); // 0x1031E6C0 + public override int GetBytes(char[] chars, int charIndex, int charCount, byte[] bytes, int byteIndex); // 0x1031EB80 + private int GetBytes(char[] chars, int charIndex, int charCount, byte[] bytes, int byteIndex, EncoderFallbackBuffer buffer, char[] fallback_chars); // 0x1031EBC0 + public override int GetBytes(string chars, int charIndex, int charCount, byte[] bytes, int byteIndex); // 0x1031EB40 + private int GetBytes(string chars, int charIndex, int charCount, byte[] bytes, int byteIndex, EncoderFallbackBuffer buffer, char[] fallback_chars); // 0x1031E720 + public override int GetCharCount(byte[] bytes, int index, int count); // 0x1031F140 + public override int GetChars(byte[] bytes, int byteIndex, int byteCount, char[] chars, int charIndex); // 0x1031F390 + private int GetChars(byte[] bytes, int byteIndex, int byteCount, char[] chars, int charIndex, DecoderFallbackBuffer buffer); // 0x1031F3C0 + public override int GetMaxByteCount(int charCount); // 0x1031F750 + public override int GetMaxCharCount(int byteCount); // 0x1031F7E0 + public override string GetString(byte[] bytes, int byteIndex, int byteCount); // 0x1031F870 + public override int GetBytes(void * chars, int charCount, void * bytes, int byteCount); // 0x1031F000 + public override int GetChars(void * bytes, int byteCount, void * chars, int charCount); // 0x1031F260 + public override int GetCharCount(void * bytes, int count); // 0x10223E60 + public override int GetByteCount(void * chars, int count); // 0x10223E60 + public override Decoder GetDecoder(); // 0x1031F6D0 + public override Encoder GetEncoder(); // 0x1031F740 +} + +// Namespace: System.Text +[Serializable] +internal sealed class CodePageEncoding : ISerializable, IObjectReference // TypeDefIndex: 1520 +{ + // Fields + private int codePage; // 0x08 + private bool isReadOnly; // 0x0C + private EncoderFallback encoderFallback; // 0x10 + private DecoderFallback decoderFallback; // 0x14 + private Encoding realObject; // 0x18 + + // Methods + private void .ctor(SerializationInfo info, StreamingContext context); // 0x1031FE70 + public void GetObjectData(SerializationInfo info, StreamingContext context); // 0x1031FD60 + public object GetRealObject(StreamingContext context); // 0x1031FDB0 +} + +// Namespace: +[Serializable] +private sealed class Decoder : ISerializable, IObjectReference // TypeDefIndex: 1521 +{ + // Fields + private Encoding encoding; // 0x08 + private Decoder realObject; // 0x0C + + // Methods + private void .ctor(SerializationInfo info, StreamingContext context); // 0x10321120 + public void GetObjectData(SerializationInfo info, StreamingContext context); // 0x10320FE0 + public object GetRealObject(StreamingContext context); // 0x10321030 +} + +// Namespace: System.Text +[Serializable] +public abstract class Decoder // TypeDefIndex: 1522 +{ + // Fields + private DecoderFallback fallback; // 0x08 + private DecoderFallbackBuffer fallback_buffer; // 0x0C + + // Properties + public DecoderFallback Fallback { get; set; } // 0x100BF0C0 0x10321260 + public DecoderFallbackBuffer FallbackBuffer { get; } // 0x10321220 + + // Methods + protected void .ctor(); // 0x103210A0 + public abstract int GetCharCount(byte[] bytes, int index, int count); + public abstract int GetChars(byte[] bytes, int byteIndex, int byteCount, char[] chars, int charIndex); + public virtual int GetCharCount(byte[] bytes, int index, int count, bool flush); // 0x10320D50 + public virtual int GetCharCount(void * bytes, int count, bool flush); // 0x10320DA0 + public virtual int GetChars(byte[] bytes, int byteIndex, int byteCount, char[] chars, int charIndex, bool flush); // 0x10320EA0 + public virtual int GetChars(void * bytes, int byteCount, void * chars, int charCount, bool flush); // 0x10320F10 + public virtual void Reset(); // 0x10321070 + public virtual void Convert(void * bytes, int byteCount, void * chars, int charCount, bool flush, out int bytesUsed, out int charsUsed, out bool completed); // 0x10320B60 + public virtual void Convert(byte[] bytes, int byteIndex, int byteCount, char[] chars, int charIndex, int charCount, bool flush, out int bytesUsed, out int charsUsed, out bool completed); // 0x10320C10 + private void CheckArguments(char[] chars, int charIndex); // 0x10320950 + private void CheckArguments(byte[] bytes, int byteIndex, int byteCount); // 0x10320AB0 + private void CheckArguments(void * chars, int charCount, void * bytes, int byteCount); // 0x103209F0 +} + +// Namespace: System.Text +[Serializable] +public sealed class DecoderExceptionFallback : DecoderFallback // TypeDefIndex: 1523 +{ + // Properties + public override int MaxCharCount { get; } // 0x100C5600 + + // Methods + public void .ctor(); // 0x103201F0 + public override DecoderFallbackBuffer CreateFallbackBuffer(); // 0x10320170 + public override bool Equals(object value); // 0x103201B0 + public override int GetHashCode(); // 0x100C5600 +} + +// Namespace: System.Text +public sealed class DecoderExceptionFallbackBuffer : DecoderFallbackBuffer // TypeDefIndex: 1524 +{ + // Properties + public override int Remaining { get; } // 0x100C5600 + + // Methods + public void .ctor(); // 0x100BF000 + public override bool Fallback(byte[] bytesUnknown, int index); // 0x10320110 + public override char GetNextChar(); // 0x100C5600 + public override bool MovePrevious(); // 0x100EFBF0 +} + +// Namespace: System.Text +[Serializable] +public abstract class DecoderFallback // TypeDefIndex: 1525 +{ + // Fields + private static DecoderFallback exception_fallback; // 0x00 + private static DecoderFallback replacement_fallback; // 0x04 + private static DecoderFallback standard_safe_fallback; // 0x08 + + // Properties + public static DecoderFallback ExceptionFallback { get; } // 0x103203C0 + public abstract int MaxCharCount { get; } + public static DecoderFallback ReplacementFallback { get; } // 0x10320410 + internal static DecoderFallback StandardSafeFallback { get; } // 0x103204B0 + + // Methods + protected void .ctor(); // 0x100BF000 + private static void .cctor(); // 0x103202D0 + public abstract DecoderFallbackBuffer CreateFallbackBuffer(); +} + +// Namespace: System.Text +public abstract class DecoderFallbackBuffer // TypeDefIndex: 1526 +{ + // Properties + public abstract int Remaining { get; } + + // Methods + protected void .ctor(); // 0x100BF000 + public abstract bool Fallback(byte[] bytesUnknown, int index); + public abstract char GetNextChar(); + public abstract bool MovePrevious(); + public virtual void Reset(); // 0x100C5530 +} + +// Namespace: System.Text +[Serializable] +public sealed class DecoderFallbackException : ArgumentException // TypeDefIndex: 1527 +{ + // Fields + private const string defaultMessage = "Failed to decode the input byte sequence to Unicode characters."; // 0x00 + private byte[] bytes_unknown; // 0x38 + private int index; // 0x3C + + // Properties + public byte[] BytesUnknown { get; } // 0x100EB210 + public int Index { get; } // 0x100EB220 + + // Methods + public void .ctor(); // 0x10320240 + public void .ctor(string message); // 0x10320290 + public void .ctor(string message, Exception innerException); // 0x103202B0 + public void .ctor(string message, byte[] bytesUnknown, int index); // 0x10320260 +} + +// Namespace: System.Text +[Serializable] +public sealed class DecoderReplacementFallback : DecoderFallback // TypeDefIndex: 1528 +{ + // Fields + private string replacement; // 0x08 + + // Properties + public string DefaultString { get; } // 0x100BF0C0 + public override int MaxCharCount { get; } // 0x10320930 + + // Methods + public void .ctor(); // 0x103208F0 + public void .ctor(string replacement); // 0x10320860 + public override DecoderFallbackBuffer CreateFallbackBuffer(); // 0x10320730 + public override bool Equals(object value); // 0x103207E0 + public override int GetHashCode(); // 0x10140690 +} + +// Namespace: System.Text +public sealed class DecoderReplacementFallbackBuffer : DecoderFallbackBuffer // TypeDefIndex: 1529 +{ + // Fields + private bool fallback_assigned; // 0x08 + private int current; // 0x0C + private string replacement; // 0x10 + + // Properties + public override int Remaining { get; } // 0x10320700 + + // Methods + public void .ctor(DecoderReplacementFallback fallback); // 0x10320680 + public override bool Fallback(byte[] bytesUnknown, int index); // 0x10320500 + public override char GetNextChar(); // 0x10320600 + public override bool MovePrevious(); // 0x10320640 + public override void Reset(); // 0x10320660 +} + +// Namespace: System.Text +[Serializable] +public abstract class Encoder // TypeDefIndex: 1530 +{ + // Fields + private EncoderFallback fallback; // 0x08 + private EncoderFallbackBuffer fallback_buffer; // 0x0C + + // Properties + public EncoderFallback Fallback { get; set; } // 0x100BF0C0 0x103221B0 + public EncoderFallbackBuffer FallbackBuffer { get; } // 0x10321220 + + // Methods + protected void .ctor(); // 0x10322130 + public abstract int GetByteCount(char[] chars, int index, int count, bool flush); + public abstract int GetBytes(char[] chars, int charIndex, int charCount, byte[] bytes, int byteIndex, bool flush); + public virtual int GetByteCount(void * chars, int count, bool flush); // 0x10321F20 + public virtual int GetBytes(void * chars, int charCount, void * bytes, int byteCount, bool flush); // 0x10322020 + public virtual void Reset(); // 0x10322100 + public virtual void Convert(void * chars, int charCount, void * bytes, int byteCount, bool flush, out int charsUsed, out int bytesUsed, out bool completed); // 0x10321E70 + public virtual void Convert(char[] chars, int charIndex, int charCount, byte[] bytes, int byteIndex, int byteCount, bool flush, out int charsUsed, out int bytesUsed, out bool completed); // 0x10321CA0 + private void CheckArguments(void * chars, int charCount, void * bytes, int byteCount); // 0x10321BE0 +} + +// Namespace: System.Text +[Serializable] +public sealed class EncoderExceptionFallback : EncoderFallback // TypeDefIndex: 1531 +{ + // Properties + public override int MaxCharCount { get; } // 0x100C5600 + + // Methods + public void .ctor(); // 0x103213F0 + public override EncoderFallbackBuffer CreateFallbackBuffer(); // 0x10321370 + public override bool Equals(object value); // 0x103213B0 + public override int GetHashCode(); // 0x100C5600 +} + +// Namespace: System.Text +public sealed class EncoderExceptionFallbackBuffer : EncoderFallbackBuffer // TypeDefIndex: 1532 +{ + // Properties + public override int Remaining { get; } // 0x100C5600 + + // Methods + public void .ctor(); // 0x100BF000 + public override bool Fallback(char charUnknown, int index); // 0x10321320 + public override bool Fallback(char charUnknownHigh, char charUnknownLow, int index); // 0x103212C0 + public override char GetNextChar(); // 0x100C5600 + public override bool MovePrevious(); // 0x100EFBF0 +} + +// Namespace: System.Text +[Serializable] +public abstract class EncoderFallback // TypeDefIndex: 1533 +{ + // Fields + private static EncoderFallback exception_fallback; // 0x00 + private static EncoderFallback replacement_fallback; // 0x04 + private static EncoderFallback standard_safe_fallback; // 0x08 + + // Properties + public static EncoderFallback ExceptionFallback { get; } // 0x103216B0 + public abstract int MaxCharCount { get; } + public static EncoderFallback ReplacementFallback { get; } // 0x10321700 + internal static EncoderFallback StandardSafeFallback { get; } // 0x103217A0 + + // Methods + protected void .ctor(); // 0x100BF000 + private static void .cctor(); // 0x103215C0 + public abstract EncoderFallbackBuffer CreateFallbackBuffer(); +} + +// Namespace: System.Text +public abstract class EncoderFallbackBuffer // TypeDefIndex: 1534 +{ + // Properties + public abstract int Remaining { get; } + + // Methods + protected void .ctor(); // 0x100BF000 + public abstract bool Fallback(char charUnknown, int index); + public abstract bool Fallback(char charUnknownHigh, char charUnknownLow, int index); + public abstract char GetNextChar(); + public abstract bool MovePrevious(); + public virtual void Reset(); // 0x10321440 +} + +// Namespace: System.Text +[Serializable] +public sealed class EncoderFallbackException : ArgumentException // TypeDefIndex: 1535 +{ + // Fields + private const string defaultMessage = "Failed to decode the input byte sequence to Unicode characters."; // 0x00 + private char char_unknown; // 0x38 + private char char_unknown_high; // 0x3A + private char char_unknown_low; // 0x3C + private int index; // 0x40 + + // Properties + public char CharUnknown { get; } // 0x103215B0 + public char CharUnknownHigh { get; } // 0x10321590 + public char CharUnknownLow { get; } // 0x103215A0 + public int Index { get; } // 0x100E9E80 + + // Methods + public void .ctor(); // 0x103214F0 + public void .ctor(string message); // 0x10321510 + public void .ctor(string message, Exception innerException); // 0x10321570 + internal void .ctor(char charUnknown, int index); // 0x103214C0 + internal void .ctor(char charUnknownHigh, char charUnknownLow, int index); // 0x10321530 + public bool IsUnknownSurrogate(); // 0x10321470 +} + +// Namespace: System.Text +[Serializable] +public sealed class EncoderReplacementFallback : EncoderFallback // TypeDefIndex: 1536 +{ + // Fields + private string replacement; // 0x08 + + // Properties + public string DefaultString { get; } // 0x100BF0C0 + public override int MaxCharCount { get; } // 0x10320930 + + // Methods + public void .ctor(); // 0x10321BA0 + public void .ctor(string replacement); // 0x10321B10 + public override EncoderFallbackBuffer CreateFallbackBuffer(); // 0x103219E0 + public override bool Equals(object value); // 0x10321A90 + public override int GetHashCode(); // 0x10140690 +} + +// Namespace: System.Text +public sealed class EncoderReplacementFallbackBuffer : EncoderFallbackBuffer // TypeDefIndex: 1537 +{ + // Fields + private string replacement; // 0x08 + private int current; // 0x0C + private bool fallback_assigned; // 0x10 + + // Properties + public override int Remaining { get; } // 0x103219C0 + + // Methods + public void .ctor(EncoderReplacementFallback fallback); // 0x10321940 + public override bool Fallback(char charUnknown, int index); // 0x103217F0 + public override bool Fallback(char charUnknownHigh, char charUnknownLow, int index); // 0x10321810 + private bool Fallback(int index); // 0x10321830 + public override char GetNextChar(); // 0x103218F0 + public override bool MovePrevious(); // 0x10320640 + public override void Reset(); // 0x10321930 +} + +// Namespace: System.Text +[Serializable] +public abstract class Encoding : ICloneable // TypeDefIndex: 1538 +{ + // Fields + internal int codePage; // 0x08 + internal int windows_code_page; // 0x0C + private bool is_readonly; // 0x10 + private DecoderFallback decoder_fallback; // 0x14 + private EncoderFallback encoder_fallback; // 0x18 + private static Assembly i18nAssembly; // 0x00 + private static bool i18nDisabled; // 0x04 + private static EncodingInfo[] encoding_infos; // 0x08 + private static readonly object[] encodings; // 0x0C + internal string body_name; // 0x1C + internal string encoding_name; // 0x20 + internal string header_name; // 0x24 + internal bool is_mail_news_display; // 0x28 + internal bool is_mail_news_save; // 0x00 + internal bool is_browser_save; // 0x00 + internal bool is_browser_display; // 0x00 + internal string web_name; // 0x00 + private static Encoding asciiEncoding; // 0x10 + private static Encoding bigEndianEncoding; // 0x14 + private static Encoding defaultEncoding; // 0x18 + private static Encoding utf7Encoding; // 0x1C + private static Encoding utf8EncodingWithMarkers; // 0x20 + private static Encoding utf8EncodingWithoutMarkers; // 0x24 + private static Encoding unicodeEncoding; // 0x28 + private static Encoding isoLatin1Encoding; // 0x2C + private static Encoding utf8EncodingUnsafe; // 0x30 + private static Encoding utf32Encoding; // 0x34 + private static Encoding bigEndianUTF32Encoding; // 0x38 + private static readonly object lockobj; // 0x3C + + // Properties + public bool IsReadOnly { get; } // 0x101137C0 + public virtual bool IsSingleByte { get; } // 0x100EFBF0 + public DecoderFallback DecoderFallback { get; set; } // 0x100EF0C0 0x10327050 + public EncoderFallback EncoderFallback { get; set; } // 0x100EE580 0x103270E0 + public virtual string BodyName { get; } // 0x100F85F0 + public virtual int CodePage { get; } // 0x100BF0C0 + public virtual string EncodingName { get; } // 0x100EACD0 + public virtual string HeaderName { get; } // 0x100EAD50 + public virtual bool IsBrowserDisplay { get; } // 0x10326250 + public virtual bool IsBrowserSave { get; } // 0x10326260 + public virtual bool IsMailNewsDisplay { get; } // 0x10326270 + public virtual bool IsMailNewsSave { get; } // 0x10326280 + public virtual string WebName { get; } // 0x100EB200 + public virtual int WindowsCodePage { get; } // 0x100C5B30 + public static Encoding ASCII { get; } // 0x103255D0 + public static Encoding BigEndianUnicode { get; } // 0x10325A80 + public static Encoding Default { get; } // 0x10325C70 + private static Encoding ISOLatin1 { get; } // 0x10326020 + public static Encoding UTF7 { get; } // 0x10326480 + public static Encoding UTF8 { get; } // 0x10326C70 + internal static Encoding UTF8Unmarked { get; } // 0x10326A80 + internal static Encoding UTF8UnmarkedUnsafe { get; } // 0x103267E0 + public static Encoding Unicode { get; } // 0x10326E60 + public static Encoding UTF32 { get; } // 0x10326290 + internal static Encoding BigEndianUTF32 { get; } // 0x10325890 + + // Methods + protected void .ctor(); // 0x103255B0 + protected void .ctor(int codePage); // 0x10325410 + private static void .cctor(); // 0x10324550 + internal static string _(string arg); // 0x100F7810 + internal void SetFallbackInternal(EncoderFallback e, DecoderFallback d); // 0x10324530 + public static byte[] Convert(Encoding srcEncoding, Encoding dstEncoding, byte[] bytes); // 0x103223D0 + public static byte[] Convert(Encoding srcEncoding, Encoding dstEncoding, byte[] bytes, int index, int count); // 0x103224A0 + public override bool Equals(object value); // 0x10322650 + public abstract int GetByteCount(char[] chars, int index, int count); + public virtual int GetByteCount(string s); // 0x103227A0 + public virtual int GetByteCount(char[] chars); // 0x10322720 + public abstract int GetBytes(char[] chars, int charIndex, int charCount, byte[] bytes, int byteIndex); + public virtual int GetBytes(string s, int charIndex, int charCount, byte[] bytes, int byteIndex); // 0x103229B0 + public virtual byte[] GetBytes(string s); // 0x10322B90 + public virtual byte[] GetBytes(char[] chars, int index, int count); // 0x10322E50 + public virtual byte[] GetBytes(char[] chars); // 0x10322930 + public abstract int GetCharCount(byte[] bytes, int index, int count); + public virtual int GetCharCount(byte[] bytes); // 0x10322ED0 + public abstract int GetChars(byte[] bytes, int byteIndex, int byteCount, char[] chars, int charIndex); + public virtual char[] GetChars(byte[] bytes, int index, int count); // 0x103232B0 + public virtual char[] GetChars(byte[] bytes); // 0x10323200 + public virtual Decoder GetDecoder(); // 0x1031F6D0 + public virtual Encoder GetEncoder(); // 0x10323330 + private static object InvokeI18N(string name, object[] args); // 0x10324020 + public static Encoding GetEncoding(int codepage); // 0x10323760 + public virtual object Clone(); // 0x10322350 + public static Encoding GetEncoding(int codepage, EncoderFallback encoderFallback, DecoderFallback decoderFallback); // 0x10323C50 + public static Encoding GetEncoding(string name, EncoderFallback encoderFallback, DecoderFallback decoderFallback); // 0x10323B60 + public static EncodingInfo[] GetEncodings(); // 0x10323D40 + public bool IsAlwaysNormalized(); // 0x10324480 + public virtual bool IsAlwaysNormalized(NormalizationForm form); // 0x103244A0 + public static Encoding GetEncoding(string name); // 0x103233C0 + public override int GetHashCode(); // 0x10323EC0 + public abstract int GetMaxByteCount(int charCount); + public abstract int GetMaxCharCount(int byteCount); + public virtual byte[] GetPreamble(); // 0x10323F30 + public virtual string GetString(byte[] bytes, int index, int count); // 0x10323FE0 + public virtual string GetString(byte[] bytes); // 0x10323F60 + internal static string InternalCodePage(int code_page); // 0x10324010 + public virtual int GetByteCount(void * chars, int count); // 0x10322830 + public virtual int GetCharCount(void * bytes, int count); // 0x10322F50 + public virtual int GetChars(void * bytes, int byteCount, void * chars, int charCount); // 0x10323050 + public virtual int GetBytes(void * chars, int charCount, void * bytes, int byteCount); // 0x10322CA0 +} + +// Namespace: +private sealed class ForwardingDecoder : Decoder // TypeDefIndex: 1539 +{ + // Fields + private Encoding encoding; // 0x10 + + // Methods + public void .ctor(Encoding enc); // 0x103271F0 + public override int GetCharCount(byte[] bytes, int index, int count); // 0x10327170 + public override int GetChars(byte[] bytes, int byteIndex, int byteCount, char[] chars, int charIndex); // 0x103271B0 +} + +// Namespace: +private sealed class ForwardingEncoder : Encoder // TypeDefIndex: 1540 +{ + // Fields + private Encoding encoding; // 0x10 + + // Methods + public void .ctor(Encoding enc); // 0x103272B0 + public override int GetByteCount(char[] chars, int index, int count, bool flush); // 0x10327230 + public override int GetBytes(char[] chars, int charIndex, int charCount, byte[] bytes, int byteCount, bool flush); // 0x10327270 +} + +// Namespace: System.Text +[Serializable] +public sealed class EncodingInfo // TypeDefIndex: 1541 +{ + // Fields + private readonly int codepage; // 0x08 + private Encoding encoding; // 0x0C + + // Properties + public int CodePage { get; } // 0x100BF0C0 + public string DisplayName { get; } // 0x103222C0 + public string Name { get; } // 0x103222C0 + + // Methods + internal void .ctor(int cp); // 0x10113500 + public override bool Equals(object value); // 0x10322210 + public override int GetHashCode(); // 0x100BF0C0 + public Encoding GetEncoding(); // 0x10322260 +} + +// Namespace: System.Text +[Serializable] +internal class Latin1Encoding : Encoding // TypeDefIndex: 1542 +{ + // Fields + internal const int ISOLATIN_CODE_PAGE = 28591; // 0x00 + + // Properties + public override bool IsSingleByte { get; } // 0x100E5880 + public override string BodyName { get; } // 0x10328500 + public override string EncodingName { get; } // 0x10328530 + public override string HeaderName { get; } // 0x10328560 + public override bool IsBrowserDisplay { get; } // 0x100E5880 + public override bool IsBrowserSave { get; } // 0x100E5880 + public override bool IsMailNewsDisplay { get; } // 0x100E5880 + public override bool IsMailNewsSave { get; } // 0x100E5880 + public override string WebName { get; } // 0x10328590 + + // Methods + public void .ctor(); // 0x103284A0 + public override bool IsAlwaysNormalized(NormalizationForm form); // 0x10328490 + public override int GetByteCount(char[] chars, int index, int count); // 0x10327370 + public override int GetByteCount(string s); // 0x10327310 + public override int GetBytes(char[] chars, int charIndex, int charCount, byte[] bytes, int byteIndex); // 0x10327D20 + private int GetBytes(char[] chars, int charIndex, int charCount, byte[] bytes, int byteIndex, EncoderFallbackBuffer buffer, char[] fallback_chars); // 0x10327490 + public override int GetBytes(string s, int charIndex, int charCount, byte[] bytes, int byteIndex); // 0x10327D60 + private int GetBytes(string s, int charIndex, int charCount, byte[] bytes, int byteIndex, EncoderFallbackBuffer buffer, char[] fallback_chars); // 0x103278E0 + public override int GetCharCount(byte[] bytes, int index, int count); // 0x10327DA0 + public override int GetChars(byte[] bytes, int byteIndex, int byteCount, char[] chars, int charIndex); // 0x10327EC0 + public override int GetMaxByteCount(int charCount); // 0x10328130 + public override int GetMaxCharCount(int byteCount); // 0x103281C0 + public override string GetString(byte[] bytes, int index, int count); // 0x10328250 + public override string GetString(byte[] bytes); // 0x10328410 +} + +// Namespace: System.Text +[Serializable] +internal sealed class MLangCodePageEncoding : ISerializable, IObjectReference // TypeDefIndex: 1543 +{ + // Fields + private int codePage; // 0x08 + private bool isReadOnly; // 0x0C + private EncoderFallback encoderFallback; // 0x10 + private DecoderFallback decoderFallback; // 0x14 + private Encoding realObject; // 0x18 + + // Methods + private void .ctor(SerializationInfo info, StreamingContext context); // 0x103286D0 + public void GetObjectData(SerializationInfo info, StreamingContext context); // 0x103285C0 + public object GetRealObject(StreamingContext context); // 0x10328610 +} + +// Namespace: +[Serializable] +private sealed class MLangEncoder : ISerializable, IObjectReference // TypeDefIndex: 1544 +{ + // Fields + private Encoding encoding; // 0x08 + private Encoder realObject; // 0x0C + + // Methods + private void .ctor(SerializationInfo info, StreamingContext context); // 0x10328B50 + public void GetObjectData(SerializationInfo info, StreamingContext context); // 0x10328AC0 + public object GetRealObject(StreamingContext context); // 0x10328B10 +} + +// Namespace: +[Serializable] +private sealed class MLangDecoder : ISerializable, IObjectReference // TypeDefIndex: 1545 +{ + // Fields + private Encoding encoding; // 0x08 + private Decoder realObject; // 0x0C + + // Methods + private void .ctor(SerializationInfo info, StreamingContext context); // 0x103289C0 + public void GetObjectData(SerializationInfo info, StreamingContext context); // 0x10328970 + public object GetRealObject(StreamingContext context); // 0x10321030 +} + +// Namespace: System.Text +public enum NormalizationForm // TypeDefIndex: 1546 +{ + FormC = 1, + FormD = 2, + FormKC = 5, + FormKD = 6 +} + +// Namespace: System.Text +[Serializable] +public sealed class StringBuilder : ISerializable // TypeDefIndex: 1547 +{ + // Fields + private const int constDefaultCapacity = 16; // 0x00 + private int _length; // 0x08 + private string _str; // 0x0C + private string _cached_str; // 0x10 + private int _maxCapacity; // 0x14 + + // Properties + public int MaxCapacity { get; } // 0x100EF0C0 + public int Capacity { get; set; } // 0x1032AEF0 0x1032AFA0 + public int Length { get; set; } // 0x100BF0C0 0x1032B0E0 + public char Chars { get; set; } // 0x1032AF20 0x1032B050 + + // Methods + public void .ctor(string value, int startIndex, int length, int capacity); // 0x1032AA40 + private void .ctor(string value, int startIndex, int length, int capacity, int maxCapacity); // 0x1032AA70 + public void .ctor(); // 0x1032A850 + public void .ctor(int capacity); // 0x1032A9D0 + public void .ctor(int capacity, int maxCapacity); // 0x1032AD20 + public void .ctor(string value); // 0x1032A950 + public void .ctor(string value, int capacity); // 0x1032A8D0 + private void .ctor(SerializationInfo info, StreamingContext context); // 0x1032AD90 + private void System.Runtime.Serialization.ISerializable.GetObjectData(SerializationInfo info, StreamingContext context); // 0x1032A660 + public override string ToString(); // 0x1032A710 + public string ToString(int startIndex, int length); // 0x1032A7B0 + public int EnsureCapacity(int capacity); // 0x10329910 + public bool Equals(StringBuilder sb); // 0x103299A0 + public StringBuilder Remove(int startIndex, int length); // 0x1032A170 + public StringBuilder Replace(char oldChar, char newChar); // 0x1032A590 + public StringBuilder Replace(char oldChar, char newChar, int startIndex, int count); // 0x1032A4A0 + public StringBuilder Replace(string oldValue, string newValue); // 0x1032A570 + public StringBuilder Replace(string oldValue, string newValue, int startIndex, int count); // 0x1032A250 + public StringBuilder Append(char[] value); // 0x10329400 + public StringBuilder Append(string value); // 0x103292C0 + public StringBuilder Append(bool value); // 0x103297D0 + public StringBuilder Append(byte value); // 0x103297B0 + public StringBuilder Append(Decimal value); // 0x103293E0 + public StringBuilder Append(double value); // 0x103293C0 + public StringBuilder Append(short value); // 0x10329220 + public StringBuilder Append(int value); // 0x10329650 + public StringBuilder Append(long value); // 0x103292A0 + public StringBuilder Append(object value); // 0x10329260 + public StringBuilder Append(sbyte value); // 0x103294C0 + public StringBuilder Append(float value); // 0x10329240 + public StringBuilder Append(ushort value); // 0x103291A0 + public StringBuilder Append(uint value); // 0x10329610 + public StringBuilder Append(ulong value); // 0x10329630 + public StringBuilder Append(char value); // 0x103291C0 + public StringBuilder Append(char value, int repeatCount); // 0x10329100 + public StringBuilder Append(char[] value, int startIndex, int charCount); // 0x103294E0 + public StringBuilder Append(string value, int startIndex, int count); // 0x10329670 + public StringBuilder AppendLine(); // 0x103290A0 + public StringBuilder AppendLine(string value); // 0x103290C0 + public StringBuilder AppendFormat(string format, object[] args); // 0x10329040 + public StringBuilder AppendFormat(IFormatProvider provider, string format, object[] args); // 0x10328D30 + public StringBuilder AppendFormat(string format, object arg0); // 0x10328C50 + public StringBuilder AppendFormat(string format, object arg0, object arg1); // 0x10328F10 + public StringBuilder AppendFormat(string format, object arg0, object arg1, object arg2); // 0x10328D90 + public StringBuilder Insert(int index, char[] value); // 0x10329CF0 + public StringBuilder Insert(int index, string value); // 0x10329E40 + public StringBuilder Insert(int index, bool value); // 0x10329F90 + public StringBuilder Insert(int index, byte value); // 0x10329F60 + public StringBuilder Insert(int index, char value); // 0x10329AE0 + public StringBuilder Insert(int index, Decimal value); // 0x10329D20 + public StringBuilder Insert(int index, double value); // 0x10329A20 + public StringBuilder Insert(int index, short value); // 0x10329F30 + public StringBuilder Insert(int index, int value); // 0x10329D50 + public StringBuilder Insert(int index, long value); // 0x10329FC0 + public StringBuilder Insert(int index, object value); // 0x10329FF0 + public StringBuilder Insert(int index, sbyte value); // 0x10329A80 + public StringBuilder Insert(int index, float value); // 0x10329BC0 + public StringBuilder Insert(int index, ushort value); // 0x10329A50 + public StringBuilder Insert(int index, uint value); // 0x10329CC0 + public StringBuilder Insert(int index, ulong value); // 0x10329AB0 + public StringBuilder Insert(int index, string value, int count); // 0x10329D80 + public StringBuilder Insert(int index, char[] value, int startIndex, int charCount); // 0x10329BF0 + private void InternalEnsureCapacity(int size); // 0x1032A030 + public void CopyTo(int sourceIndex, char[] destination, int destinationIndex, int count); // 0x103297F0 +} + +// Namespace: System.Text +[Serializable] +internal sealed class SurrogateEncoder : ISerializable, IObjectReference // TypeDefIndex: 1548 +{ + // Fields + private Encoding encoding; // 0x08 + private Encoder realObject; // 0x0C + + // Methods + private void .ctor(SerializationInfo info, StreamingContext context); // 0x1032B850 + public void GetObjectData(SerializationInfo info, StreamingContext context); // 0x1032B800 + public object GetRealObject(StreamingContext context); // 0x10328B10 +} + +// Namespace: System.Text +[Serializable] +public sealed class UTF32Encoding : Encoding // TypeDefIndex: 1549 +{ + // Fields + internal const int UTF32_CODE_PAGE = 12000; // 0x00 + internal const int BIG_UTF32_CODE_PAGE = 12001; // 0x00 + private bool bigEndian; // 0x30 + private bool byteOrderMark; // 0x31 + + // Methods + public void .ctor(); // 0x1032D1E0 + public void .ctor(bool bigEndian, bool byteOrderMark); // 0x1032D1C0 + public void .ctor(bool bigEndian, bool byteOrderMark, bool throwOnInvalidCharacters); // 0x1032CFB0 + public override int GetByteCount(char[] chars, int index, int count); // 0x1032C200 + public override int GetBytes(char[] chars, int charIndex, int charCount, byte[] bytes, int byteIndex); // 0x1032C3F0 + public override int GetCharCount(byte[] bytes, int index, int count); // 0x1032C850 + public override int GetChars(byte[] bytes, int byteIndex, int byteCount, char[] chars, int charIndex); // 0x1032C980 + public override int GetMaxByteCount(int charCount); // 0x1032CDB0 + public override int GetMaxCharCount(int byteCount); // 0x1032CE40 + public override Decoder GetDecoder(); // 0x1032CD20 + public override byte[] GetPreamble(); // 0x1032CEE0 + public override bool Equals(object value); // 0x1032C050 + public override int GetHashCode(); // 0x1032CD80 + public override int GetByteCount(void * chars, int count); // 0x1032C1A0 + public override int GetByteCount(string s); // 0x1032C190 + public override int GetBytes(void * chars, int charCount, void * bytes, int byteCount); // 0x1032C830 + public override int GetBytes(string s, int charIndex, int charCount, byte[] bytes, int byteIndex); // 0x1032C820 + public override int GetCharCount(void * bytes, int count); // 0x1032C840 + public override int GetChars(void * bytes, int byteCount, void * chars, int charCount); // 0x1032C970 + public override string GetString(byte[] bytes, int index, int count); // 0x10323FE0 + public override Encoder GetEncoder(); // 0x1031F740 +} + +// Namespace: +private sealed class UTF32Decoder : Decoder // TypeDefIndex: 1550 +{ + // Fields + private bool bigEndian; // 0x10 + private int leftOverByte; // 0x14 + private int leftOverLength; // 0x18 + + // Methods + public void .ctor(bool bigEndian); // 0x1032C020 + public override int GetCharCount(byte[] bytes, int index, int count); // 0x1032B9F0 + public override int GetChars(byte[] bytes, int byteIndex, int byteCount, char[] chars, int charIndex); // 0x1032BB40 +} + +// Namespace: System.Text +[Serializable] +public class UTF7Encoding : Encoding // TypeDefIndex: 1551 +{ + // Fields + internal const int UTF7_CODE_PAGE = 65000; // 0x00 + private const string base64Chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"; // 0x00 + private bool allowOptionals; // 0x30 + private static readonly byte[] encodingRules; // 0x00 + private static readonly sbyte[] base64Values; // 0x04 + + // Methods + public void .ctor(); // 0x1032EA60 + public void .ctor(bool allowOptionals); // 0x1032E8D0 + private static void .cctor(); // 0x1032E850 + public override int GetHashCode(); // 0x1032D7A0 + public override bool Equals(object value); // 0x1032D410 + private static int InternalGetByteCount(char[] chars, int index, int count, bool flush, int leftOver, bool isInShifted, bool allowOptionals); // 0x1032D900 + public override int GetByteCount(char[] chars, int index, int count); // 0x1032D4E0 + private static int InternalGetBytes(char[] chars, int charIndex, int charCount, byte[] bytes, int byteIndex, bool flush, int leftOver, bool isInShifted, bool allowOptionals); // 0x1032DBB0 + public override int GetBytes(char[] chars, int charIndex, int charCount, byte[] bytes, int byteIndex); // 0x1032D550 + private static int InternalGetCharCount(byte[] bytes, int index, int count, int leftOver); // 0x1032E110 + public override int GetCharCount(byte[] bytes, int index, int count); // 0x1032D5D0 + private static int InternalGetChars(byte[] bytes, int byteIndex, int byteCount, char[] chars, int charIndex, int leftOver); // 0x1032E360 + public override int GetChars(byte[] bytes, int byteIndex, int byteCount, char[] chars, int charIndex); // 0x1032D630 + public override int GetMaxByteCount(int charCount); // 0x1032D7C0 + public override int GetMaxCharCount(int byteCount); // 0x1032D870 + public override Decoder GetDecoder(); // 0x1032D700 + public override Encoder GetEncoder(); // 0x1032D750 + public override int GetByteCount(void * chars, int count); // 0x10322830 + public override int GetByteCount(string s); // 0x1032C190 + public override int GetBytes(void * chars, int charCount, void * bytes, int byteCount); // 0x1032C830 + public override int GetBytes(string s, int charIndex, int charCount, byte[] bytes, int byteIndex); // 0x1032C820 + public override int GetCharCount(void * bytes, int count); // 0x1032C840 + public override int GetChars(void * bytes, int byteCount, void * chars, int charCount); // 0x1032C970 + public override string GetString(byte[] bytes, int index, int count); // 0x10323FE0 +} + +// Namespace: +private sealed class UTF7Decoder : Decoder // TypeDefIndex: 1552 +{ + // Fields + private int leftOver; // 0x10 + + // Methods + public void .ctor(); // 0x1032D2D0 + public override int GetCharCount(byte[] bytes, int index, int count); // 0x1032D200 + public override int GetChars(byte[] bytes, int byteIndex, int byteCount, char[] chars, int charIndex); // 0x1032D260 +} + +// Namespace: +private sealed class UTF7Encoder : Encoder // TypeDefIndex: 1553 +{ + // Fields + private bool allowOptionals; // 0x10 + private int leftOver; // 0x14 + private bool isInShifted; // 0x18 + + // Methods + public void .ctor(bool allowOptionals); // 0x1032D3F0 + public override int GetByteCount(char[] chars, int index, int count, bool flush); // 0x1032D2F0 + public override int GetBytes(char[] chars, int charIndex, int charCount, byte[] bytes, int byteIndex, bool flush); // 0x1032D370 +} + +// Namespace: System.Text +[Serializable] +public class UTF8Encoding : Encoding // TypeDefIndex: 1554 +{ + // Fields + internal const int UTF8_CODE_PAGE = 65001; // 0x00 + private bool emitIdentifier; // 0x30 + + // Methods + public void .ctor(); // 0x10330BC0 + public void .ctor(bool encoderShouldEmitUTF8Identifier); // 0x10330E60 + public void .ctor(bool encoderShouldEmitUTF8Identifier, bool throwOnInvalidBytes); // 0x10330BE0 + private static int InternalGetByteCount(char[] chars, int index, int count, char leftOver, bool flush); // 0x1032FB90 + private static int InternalGetByteCount(void * chars, int count, char leftOver, bool flush); // 0x1032FA60 + public override int GetByteCount(char[] chars, int index, int count); // 0x1032F2B0 + public override int GetByteCount(void * chars, int count); // 0x1032F230 + private static int InternalGetBytes(char[] chars, int charIndex, int charCount, byte[] bytes, int byteIndex, char leftOver, bool flush); // 0x1032FD00 + private static int InternalGetBytes(void * chars, int count, void * bytes, int bcount, char leftOver, bool flush); // 0x1032FF60 + public override int GetBytes(char[] chars, int charIndex, int charCount, byte[] bytes, int byteIndex); // 0x1032F620 + public override int GetBytes(string s, int charIndex, int charCount, byte[] bytes, int byteIndex); // 0x1032F3E0 + public override int GetBytes(void * chars, int charCount, void * bytes, int byteCount); // 0x1032F2E0 + private static int InternalGetCharCount(byte[] bytes, int index, int count, uint leftOverBits, uint leftOverCount, object provider, DecoderFallbackBuffer fallbackBuffer, byte[] bufferArg, bool flush); // 0x10330450 + private static int InternalGetCharCount(void * bytes, int count, uint leftOverBits, uint leftOverCount, object provider, DecoderFallbackBuffer fallbackBuffer, byte[] bufferArg, bool flush); // 0x103301D0 + private static int Fallback(object provider, DecoderFallbackBuffer buffer, byte[] bufferArg, void * bytes, long index, uint size); // 0x1032EEB0 + private static void Fallback(object provider, DecoderFallbackBuffer buffer, byte[] bufferArg, void * bytes, long byteIndex, uint size, void * chars, int charIndex); // 0x1032F060 + public override int GetCharCount(byte[] bytes, int index, int count); // 0x1032F690 + public override int GetCharCount(void * bytes, int count); // 0x1032F650 + private static int InternalGetChars(byte[] bytes, int byteIndex, int byteCount, char[] chars, int charIndex, uint leftOverBits, uint leftOverCount, object provider, DecoderFallbackBuffer fallbackBuffer, byte[] bufferArg, bool flush); // 0x103305B0 + private static int InternalGetChars(void * bytes, int byteCount, void * chars, int charCount, uint leftOverBits, uint leftOverCount, object provider, DecoderFallbackBuffer fallbackBuffer, byte[] bufferArg, bool flush); // 0x10330820 + public override int GetChars(byte[] bytes, int byteIndex, int byteCount, char[] chars, int charIndex); // 0x1032F730 + public override int GetChars(void * bytes, int byteCount, void * chars, int charCount); // 0x1032F6D0 + public override int GetMaxByteCount(int charCount); // 0x1032F890 + public override int GetMaxCharCount(int byteCount); // 0x1032F920 + public override Decoder GetDecoder(); // 0x1032F790 + public override Encoder GetEncoder(); // 0x1032F840 + public override byte[] GetPreamble(); // 0x1032F9B0 + public override bool Equals(object value); // 0x1032EDD0 + public override int GetHashCode(); // 0x1032F880 + public override int GetByteCount(string chars); // 0x1032C190 + public override string GetString(byte[] bytes, int index, int count); // 0x10323FE0 +} + +// Namespace: +[Serializable] +private class UTF8Decoder : Decoder // TypeDefIndex: 1555 +{ + // Fields + private uint leftOverBits; // 0x10 + private uint leftOverCount; // 0x14 + + // Methods + public void .ctor(DecoderFallback fallback); // 0x1032EC80 + public override int GetCharCount(byte[] bytes, int index, int count); // 0x1032EBF0 + public override int GetChars(byte[] bytes, int byteIndex, int byteCount, char[] chars, int charIndex); // 0x1032EC30 +} + +// Namespace: +[Serializable] +private class UTF8Encoder : Encoder // TypeDefIndex: 1556 +{ + // Fields + private char leftOverForCount; // 0x10 + private char leftOverForConv; // 0x12 + + // Methods + public void .ctor(bool emitIdentifier); // 0x1032EDB0 + public override int GetByteCount(char[] chars, int index, int count, bool flush); // 0x1032ED20 + public override int GetBytes(char[] chars, int charIndex, int charCount, byte[] bytes, int byteIndex, bool flush); // 0x1032ED80 + public override int GetByteCount(void * chars, int count, bool flush); // 0x1032ED00 + public override int GetBytes(void * chars, int charCount, void * bytes, int byteCount, bool flush); // 0x1032ED50 +} + +// Namespace: System.Text +[Serializable] +public class UnicodeEncoding : Encoding // TypeDefIndex: 1557 +{ + // Fields + internal const int UNICODE_CODE_PAGE = 1200; // 0x00 + internal const int BIG_UNICODE_CODE_PAGE = 1201; // 0x00 + public const int CharSize = 2; // 0x00 + private bool bigEndian; // 0x30 + private bool byteOrderMark; // 0x31 + + // Methods + public void .ctor(); // 0x10332730 + public void .ctor(bool bigEndian, bool byteOrderMark); // 0x103328D0 + public void .ctor(bool bigEndian, bool byteOrderMark, bool throwOnInvalidBytes); // 0x10332750 + public override int GetByteCount(char[] chars, int index, int count); // 0x103316A0 + public override int GetByteCount(string s); // 0x10331640 + public override int GetByteCount(void * chars, int count); // 0x103315B0 + public override int GetBytes(char[] chars, int charIndex, int charCount, byte[] bytes, int byteIndex); // 0x10331B70 + public override int GetBytes(string s, int charIndex, int charCount, byte[] bytes, int byteIndex); // 0x10331870 + public override int GetBytes(void * chars, int charCount, void * bytes, int byteCount); // 0x10331AA0 + private int GetBytesInternal(void * chars, int charCount, void * bytes, int byteCount); // 0x103317C0 + public override int GetCharCount(byte[] bytes, int index, int count); // 0x10331DA0 + public override int GetCharCount(void * bytes, int count); // 0x10331EC0 + public override int GetChars(byte[] bytes, int byteIndex, int byteCount, char[] chars, int charIndex); // 0x103320D0 + public override int GetChars(void * bytes, int byteCount, void * chars, int charCount); // 0x10332000 + public override string GetString(byte[] bytes, int index, int count); // 0x10332560 + private int GetCharsInternal(void * bytes, int byteCount, void * chars, int charCount); // 0x10331F50 + public override Encoder GetEncoder(); // 0x1031F740 + public override int GetMaxByteCount(int charCount); // 0x10332370 + public override int GetMaxCharCount(int byteCount); // 0x10332400 + public override Decoder GetDecoder(); // 0x10332310 + public override byte[] GetPreamble(); // 0x10332490 + public override bool Equals(object value); // 0x10331520 + public override int GetHashCode(); // 0x1032F880 + private static void CopyChars(void * src, void * dest, int count, bool bigEndian); // 0x10331300 +} + +// Namespace: +private sealed class UnicodeDecoder : Decoder // TypeDefIndex: 1558 +{ + // Fields + private bool bigEndian; // 0x10 + private int leftOverByte; // 0x14 + + // Methods + public void .ctor(bool bigEndian); // 0x1032C020 + public override int GetCharCount(byte[] bytes, int index, int count); // 0x10330E80 + public override int GetChars(byte[] bytes, int byteIndex, int byteCount, char[] chars, int charIndex); // 0x10330FC0 +} + +// Namespace: System.Threading +[Serializable] +public class AbandonedMutexException : SystemException // TypeDefIndex: 1559 +{ + // Fields + private Mutex mutex; // 0x34 + private int mutex_index; // 0x38 + + // Properties + public Mutex Mutex { get; } // 0x100E9ED0 + public int MutexIndex { get; } // 0x100EB210 + + // Methods + public void .ctor(); // 0x1031FCB0 + public void .ctor(string message); // 0x1031FD00 + public void .ctor(int location, WaitHandle handle); // 0x1031FC40 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x1031FB30 + public void .ctor(string message, Exception inner); // 0x1031FD30 + public void .ctor(string message, int location, WaitHandle handle); // 0x1031FB60 + public void .ctor(string message, Exception inner, int location, WaitHandle handle); // 0x1031FBD0 +} + +// Namespace: System.Threading +[Serializable] +public enum ApartmentState // TypeDefIndex: 1560 +{ + STA = 0, + MTA = 1, + Unknown = 2 +} + +// Namespace: System.Threading +internal enum AsyncFlowControlType // TypeDefIndex: 1561 +{ + None = 0, + Execution = 1, + Security = 2 +} + +// Namespace: System.Threading +public struct AsyncFlowControl : IDisposable // TypeDefIndex: 1562 +{ + // Fields + private Thread _t; // 0x08 + private AsyncFlowControlType _type; // 0x0C + + // Methods + internal void .ctor(Thread t, AsyncFlowControlType type); // 0x100075A0 + private void System.IDisposable.Dispose(); // 0x10019390 + public void Undo(); // 0x100193C0 + public override int GetHashCode(); // 0x10019330 + public override bool Equals(object obj); // 0x10019290 + public bool Equals(AsyncFlowControl obj); // 0x10019310 + public static bool op_Equality(AsyncFlowControl a, AsyncFlowControl b); // 0x10272D80 + public static bool op_Inequality(AsyncFlowControl a, AsyncFlowControl b); // 0x10272DA0 +} + +// Namespace: System.Threading +public sealed class AutoResetEvent : EventWaitHandle // TypeDefIndex: 1563 +{ + // Methods + public void .ctor(bool initialState); // 0x10272DC0 +} + +// Namespace: System.Threading +[Serializable] +public sealed class CompressedStack : ISerializable // TypeDefIndex: 1564 +{ + // Fields + private ArrayList _list; // 0x08 + + // Properties + internal IList List { get; } // 0x100BF0C0 + + // Methods + internal void .ctor(int length); // 0x10273640 + internal void .ctor(CompressedStack cs); // 0x102736A0 + public CompressedStack CreateCopy(); // 0x10272FD0 + public static CompressedStack Capture(); // 0x10272E60 + public static CompressedStack GetCompressedStack(); // 0x102732B0 + public void GetObjectData(SerializationInfo info, StreamingContext context); // 0x102733F0 + public static void Run(CompressedStack compressedStack, ContextCallback callback, object state); // 0x10273480 + internal bool Equals(CompressedStack cs); // 0x10273070 + internal bool IsEmpty(); // 0x10273450 +} + +// Namespace: System.Threading +public enum EventResetMode // TypeDefIndex: 1565 +{ + AutoReset = 0, + ManualReset = 1 +} + +// Namespace: System.Threading +public class EventWaitHandle : WaitHandle // TypeDefIndex: 1566 +{ + // Methods + private void .ctor(IntPtr handle); // 0x10273B60 + public void .ctor(bool initialState, EventResetMode mode); // 0x102739B0 + public void .ctor(bool initialState, EventResetMode mode, string name); // 0x10273BD0 + public void .ctor(bool initialState, EventResetMode mode, string name, out bool createdNew); // 0x10273A90 + private bool IsManualReset(EventResetMode mode); // 0x102738F0 + public bool Reset(); // 0x10273950 + public bool Set(); // 0x10273980 +} + +// Namespace: System.Threading +[Serializable] +public sealed class ExecutionContext : ISerializable // TypeDefIndex: 1567 +{ + // Fields + private SecurityContext _sc; // 0x08 + private bool _suppressFlow; // 0x0C + private bool _capture; // 0x0D + + // Properties + internal SecurityContext SecurityContext { get; set; } // 0x10274280 0x100EB270 + internal bool FlowSuppressed { get; set; } // 0x100F8910 0x1016CBD0 + + // Methods + internal void .ctor(); // 0x100BF000 + internal void .ctor(ExecutionContext ec); // 0x10274200 + internal void .ctor(SerializationInfo info, StreamingContext context); // 0x102741A0 + public static ExecutionContext Capture(); // 0x10273CB0 + public ExecutionContext CreateCopy(); // 0x10273DC0 + public void GetObjectData(SerializationInfo info, StreamingContext context); // 0x10273E40 + public static bool IsFlowSuppressed(); // 0x10273EC0 + public static void RestoreFlow(); // 0x10273F60 + public static void Run(ExecutionContext executionContext, ContextCallback callback, object state); // 0x10274030 + public static AsyncFlowControl SuppressFlow(); // 0x102740F0 +} + +// Namespace: System.Threading +public class HostExecutionContext // TypeDefIndex: 1568 +{ + // Fields + private object _state; // 0x08 + + // Properties + protected internal object State { get; set; } // 0x100BF0C0 0x100EB270 + + // Methods + public void .ctor(); // 0x10274410 + public void .ctor(object state); // 0x10113500 + public virtual HostExecutionContext CreateCopy(); // 0x102743C0 +} + +// Namespace: System.Threading +public class HostExecutionContextManager // TypeDefIndex: 1569 +{ + // Methods + public void .ctor(); // 0x100BF000 + public virtual HostExecutionContext Capture(); // 0x102742D0 + public virtual void Revert(object previousState); // 0x10274320 + public virtual object SetHostExecutionContext(HostExecutionContext hostExecutionContext); // 0x10274370 +} + +// Namespace: System.Threading +public static class Interlocked // TypeDefIndex: 1570 +{ + // Methods + public static int CompareExchange(int location1, int value, int comparand); // 0x10274750 + public static object CompareExchange(object location1, object value, object comparand); // 0x10274750 + public static float CompareExchange(float location1, float value, float comparand); // 0x102747A0 + public static int Decrement(int location); // 0x102747F0 + public static long Decrement(long location); // 0x10274800 + public static int Increment(int location); // 0x102748A0 + public static long Increment(long location); // 0x10274890 + public static int Exchange(int location1, int value); // 0x10274810 + public static object Exchange(object location1, object value); // 0x10274810 + public static float Exchange(float location1, float value); // 0x10274870 + public static long CompareExchange(long location1, long value, long comparand); // 0x102747D0 + public static IntPtr CompareExchange(IntPtr location1, IntPtr value, IntPtr comparand); // 0x10274750 + public static double CompareExchange(double location1, double value, double comparand); // 0x10274770 + public static T CompareExchange(T location1, T value, T comparand); + public static long Exchange(long location1, long value); // 0x10274850 + public static IntPtr Exchange(IntPtr location1, IntPtr value); // 0x10274810 + public static double Exchange(double location1, double value); // 0x10274830 + public static T Exchange(T location1, T value); + public static long Read(long location); // 0x102748B0 + public static int Add(int location1, int value); // 0x10274710 + public static long Add(long location1, long value); // 0x10274730 +} + +// Namespace: System.Threading +public struct LockCookie // TypeDefIndex: 1571 +{ + // Fields + internal int ThreadId; // 0x08 + internal int ReaderLocks; // 0x0C + internal int WriterLocks; // 0x10 + + // Methods + internal void .ctor(int thread_id); // 0x10019530 + internal void .ctor(int thread_id, int reader_locks, int writer_locks); // 0x100074C0 + public override int GetHashCode(); // 0x100194C0 + public bool Equals(LockCookie obj); // 0x10019410 + public override bool Equals(object obj); // 0x10019440 + public static bool op_Equality(LockCookie a, LockCookie b); // 0x102748C0 + public static bool op_Inequality(LockCookie a, LockCookie b); // 0x102748F0 +} + +// Namespace: System.Threading +internal class LockQueue // TypeDefIndex: 1572 +{ + // Fields + private ReaderWriterLock rwlock; // 0x08 + private int lockCount; // 0x0C + + // Properties + public bool IsEmpty { get; } // 0x10274BE0 + + // Methods + public void .ctor(ReaderWriterLock rwlock); // 0x10113500 + public bool Wait(int timeout); // 0x10274AA0 + public void Pulse(); // 0x102749E0 + public void PulseAll(); // 0x10274920 +} + +// Namespace: System.Threading +public sealed class ManualResetEvent : EventWaitHandle // TypeDefIndex: 1573 +{ + // Methods + public void .ctor(bool initialState); // 0x10274C20 +} + +// Namespace: System.Threading +public static class Monitor // TypeDefIndex: 1574 +{ + // Methods + private static bool Monitor_try_enter(object obj, int ms); // 0x10274D10 + public static void Enter(object obj); // 0x10274CC0 + public static void Exit(object obj); // 0x10274CD0 + private static void Monitor_pulse(object obj); // 0x10274CF0 + private static bool Monitor_test_synchronised(object obj); // 0x10274D00 + public static void Pulse(object obj); // 0x10274DF0 + private static void Monitor_pulse_all(object obj); // 0x10274CE0 + public static void PulseAll(object obj); // 0x10274D50 + public static bool TryEnter(object obj); // 0x10275000 + public static bool TryEnter(object obj, int millisecondsTimeout); // 0x10274F30 + public static bool TryEnter(object obj, TimeSpan timeout); // 0x10274E90 + private static bool Monitor_wait(object obj, int ms); // 0x10274D30 + public static bool Wait(object obj); // 0x10275430 + public static bool Wait(object obj, int millisecondsTimeout); // 0x102751D0 + public static bool Wait(object obj, TimeSpan timeout); // 0x102752B0 + public static bool Wait(object obj, int millisecondsTimeout, bool exitContext); // 0x10275350 + public static bool Wait(object obj, TimeSpan timeout, bool exitContext); // 0x10275070 +} + +// Namespace: System.Threading +public sealed class Mutex : WaitHandle // TypeDefIndex: 1575 +{ + // Methods + public void .ctor(); // 0x102755F0 + public void .ctor(bool initiallyOwned); // 0x10275670 + public void .ctor(bool initiallyOwned, string name); // 0x10275570 + public void .ctor(bool initiallyOwned, string name, out bool createdNew); // 0x10275500 + private static IntPtr CreateMutex_internal(bool initiallyOwned, string name, out bool created); // 0x10275450 + private static bool ReleaseMutex_internal(IntPtr handle); // 0x10275470 + public void ReleaseMutex(); // 0x10275480 +} + +// Namespace: System.Threading +internal sealed class NativeEventCalls // TypeDefIndex: 1576 +{ + // Methods + public void .ctor(); // 0x100BF000 + public static IntPtr CreateEvent_internal(bool manual, bool initial, string name, out bool created); // 0x10275700 + public static bool SetEvent_internal(IntPtr handle); // 0x10275730 + public static bool ResetEvent_internal(IntPtr handle); // 0x10275720 + public static void CloseEvent_internal(IntPtr handle); // 0x102756F0 +} + +// Namespace: System.Threading +public struct NativeOverlapped // TypeDefIndex: 1577 +{ + // Fields + public IntPtr EventHandle; // 0x08 + public IntPtr InternalHigh; // 0x0C + public IntPtr InternalLow; // 0x10 + public int OffsetHigh; // 0x14 + public int OffsetLow; // 0x18 + internal int Handle1; // 0x1C + internal int Handle2; // 0x20 + +} + +// Namespace: System.Threading +public class Overlapped // TypeDefIndex: 1578 +{ + // Fields + private IAsyncResult ares; // 0x08 + private int offsetL; // 0x0C + private int offsetH; // 0x10 + private int evt; // 0x14 + private IntPtr evt_ptr; // 0x18 + + // Properties + public IAsyncResult AsyncResult { get; set; } // 0x100BF0C0 0x100EB270 + public int EventHandle { get; set; } // 0x100EF0C0 0x10127B00 + public IntPtr EventHandleIntPtr { get; set; } // 0x100EE580 0x10113F40 + public int OffsetHigh { get; set; } // 0x100BFC20 0x100C5B40 + public int OffsetLow { get; set; } // 0x100C5B30 0x100C5B50 + + // Methods + public void .ctor(); // 0x100BF000 + public void .ctor(int offsetLo, int offsetHi, int hEvent, IAsyncResult ar); // 0x10275A20 + public void .ctor(int offsetLo, int offsetHi, IntPtr hEvent, IAsyncResult ar); // 0x10275A50 + public static void Free(void * nativeOverlappedPtr); // 0x10275740 + public static Overlapped Unpack(void * nativeOverlappedPtr); // 0x10275960 + public void * Pack(IOCompletionCallback iocb); // 0x102758A0 + public void * Pack(IOCompletionCallback iocb, object userData); // 0x102757F0 + public void * UnsafePack(IOCompletionCallback iocb); // 0x102758A0 + public void * UnsafePack(IOCompletionCallback iocb, object userData); // 0x102757F0 +} + +// Namespace: System.Threading +public sealed class ReaderWriterLock : CriticalFinalizerObject // TypeDefIndex: 1579 +{ + // Fields + private int seq_num; // 0x08 + private int state; // 0x0C + private int readers; // 0x10 + private LockQueue writer_queue; // 0x14 + private Hashtable reader_locks; // 0x18 + private int writer_lock_owner; // 0x1C + + // Properties + public bool IsReaderLockHeld { get; } // 0x10277650 + public bool IsWriterLockHeld { get; } // 0x102777A0 + public int WriterSeqNum { get; } // 0x102778D0 + + // Methods + public void .ctor(); // 0x102775D0 + protected override void Finalize(); // 0x101A8690 + public void AcquireReaderLock(int millisecondsTimeout); // 0x102766B0 + private void AcquireReaderLock(int millisecondsTimeout, int initialLockCount); // 0x10276300 + public void AcquireReaderLock(TimeSpan timeout); // 0x102766D0 + public void AcquireWriterLock(int millisecondsTimeout); // 0x10276700 + private void AcquireWriterLock(int millisecondsTimeout, int initialLockCount); // 0x10276750 + public void AcquireWriterLock(TimeSpan timeout); // 0x10276720 + public bool AnyWritersSince(int seqNum); // 0x10276910 + public void DowngradeFromWriterLock(LockCookie lockCookie); // 0x102769D0 + public LockCookie ReleaseLock(); // 0x10276D20 + public void ReleaseReaderLock(); // 0x10276E40 + private void ReleaseReaderLock(int currentCount, int releaseCount); // 0x10277010 + public void ReleaseWriterLock(); // 0x102771B0 + private void ReleaseWriterLock(int releaseCount); // 0x10277150 + public void RestoreLock(LockCookie lockCookie); // 0x10277320 + public LockCookie UpgradeToWriterLock(int millisecondsTimeout); // 0x10277450 + public LockCookie UpgradeToWriterLock(TimeSpan timeout); // 0x10277410 + private LockCookie GetLockCookie(); // 0x10276B90 + private bool HasWriterLock(); // 0x10276CB0 + private int CheckTimeout(TimeSpan timeout); // 0x10276950 +} + +// Namespace: System.Threading +public sealed class RegisteredWaitHandle : MarshalByRefObject // TypeDefIndex: 1580 +{ + // Fields + private WaitHandle _waitObject; // 0x0C + private WaitOrTimerCallback _callback; // 0x10 + private TimeSpan _timeout; // 0x18 + private object _state; // 0x20 + private bool _executeOnlyOnce; // 0x24 + private WaitHandle _finalEvent; // 0x28 + private ManualResetEvent _cancelEvent; // 0x2C + private int _callsInProcess; // 0x30 + private bool _unregistered; // 0x34 + + // Methods + internal void .ctor(WaitHandle waitObject, WaitOrTimerCallback callback, object state, TimeSpan timeout, bool executeOnlyOnce); // 0x10277ED0 + internal void Wait(object state); // 0x10277BA0 + private void DoCallBack(object timedOut); // 0x10277910 + public bool Unregister(WaitHandle waitObject); // 0x10277A80 +} + +// Namespace: System.Threading +public class SynchronizationContext // TypeDefIndex: 1581 +{ + // Fields + private bool notification_required; // 0x08 + private static SynchronizationContext currentContext; // 0x80000000 + + // Properties + public static SynchronizationContext Current { get; } // 0x10278F20 + + // Methods + public void .ctor(); // 0x100BF000 + internal void .ctor(SynchronizationContext context); // 0x10278EE0 + public virtual SynchronizationContext CreateCopy(); // 0x10278CB0 + public bool IsWaitNotificationRequired(); // 0x100EA020 + public virtual void OperationCompleted(); // 0x100C5530 + public virtual void OperationStarted(); // 0x100C5530 + public virtual void Post(SendOrPostCallback d, object state); // 0x10278D20 + public virtual void Send(SendOrPostCallback d, object state); // 0x10278D70 + public static void SetSynchronizationContext(SynchronizationContext syncContext); // 0x10278D90 + public static void SetThreadStaticContext(SynchronizationContext syncContext); // 0x10278DD0 + protected void SetWaitNotificationRequired(); // 0x10278E10 + public virtual int Wait(IntPtr[] waitHandles, bool waitAll, int millisecondsTimeout); // 0x10278EC0 + protected static int WaitHelper(IntPtr[] waitHandles, bool waitAll, int millisecondsTimeout); // 0x10278E70 +} + +// Namespace: System.Threading +[Serializable] +public class SynchronizationLockException : SystemException // TypeDefIndex: 1582 +{ + // Methods + public void .ctor(); // 0x10278F50 + public void .ctor(string message); // 0x100E5680 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 + public void .ctor(string message, Exception innerException); // 0x100E5670 +} + +// Namespace: System.Threading +public sealed class Thread : CriticalFinalizerObject, _Thread // TypeDefIndex: 1583 +{ + // Fields + private int lock_thread_id; // 0x08 + private IntPtr system_thread_handle; // 0x0C + private object cached_culture_info; // 0x10 + private IntPtr unused0; // 0x14 + private bool threadpool_thread; // 0x18 + private IntPtr name; // 0x1C + private int name_len; // 0x20 + private ThreadState state; // 0x24 + private object abort_exc; // 0x28 + private int abort_state_handle; // 0x2C + private long thread_id; // 0x30 + private IntPtr start_notify; // 0x38 + private IntPtr stack_ptr; // 0x3C + private UIntPtr static_data; // 0x40 + private IntPtr jit_data; // 0x44 + private IntPtr lock_data; // 0x48 + private object current_appcontext; // 0x4C + private int stack_size; // 0x50 + private object start_obj; // 0x54 + private IntPtr appdomain_refs; // 0x58 + private int interruption_requested; // 0x5C + private IntPtr suspend_event; // 0x60 + private IntPtr suspended_event; // 0x64 + private IntPtr resume_event; // 0x68 + private IntPtr synch_cs; // 0x6C + private IntPtr serialized_culture_info; // 0x70 + private int serialized_culture_info_len; // 0x74 + private IntPtr serialized_ui_culture_info; // 0x78 + private int serialized_ui_culture_info_len; // 0x7C + private bool thread_dump_requested; // 0x80 + private IntPtr end_stack; // 0x84 + private bool thread_interrupt_requested; // 0x88 + private byte apartment_state; // 0x89 + private int critical_region_level; // 0x8C + private int small_id; // 0x90 + private IntPtr manage_callback; // 0x94 + private object pending_exception; // 0x98 + private ExecutionContext ec_to_set; // 0x9C + private IntPtr interrupt_on_stop; // 0xA0 + private IntPtr unused3; // 0xA4 + private IntPtr unused4; // 0xA8 + private IntPtr unused5; // 0xAC + private IntPtr unused6; // 0xB0 + private static object[] local_slots; // 0x80000000 + private static ExecutionContext _ec; // 0x80000004 + private MulticastDelegate threadstart; // 0xB4 + private int managed_id; // 0xB8 + private IPrincipal _principal; // 0xBC + private static Hashtable datastorehash; // 0x00 + private static object datastore_lock; // 0x04 + private bool in_currentculture; // 0xC0 + private static object culture_lock; // 0x08 + + // Properties + public static Context CurrentContext { get; } // 0x101D0C30 + public static IPrincipal CurrentPrincipal { get; set; } // 0x1027B7B0 0x1027C030 + public static Thread CurrentThread { get; } // 0x1027B9E0 + internal static int CurrentThreadId { get; } // 0x1027B950 + public ApartmentState ApartmentState { get; set; } // 0x1027B430 0x1027BE30 + public CultureInfo CurrentCulture { get; set; } // 0x1027B4A0 0x1027BE40 + public CultureInfo CurrentUICulture { get; set; } // 0x1027BA20 0x1027C180 + public bool IsThreadPoolThread { get; } // 0x1010C980 + internal bool IsThreadPoolThreadInternal { get; set; } // 0x1010C980 0x10197FF0 + public bool IsAlive { get; } // 0x1027BDA0 + public bool IsBackground { get; set; } // 0x1027BDC0 0x1027C340 + public string Name { get; set; } // 0x10279F80 0x1027A820 + public ThreadPriority Priority { get; set; } // 0x100C5600 0x100C5530 + public ThreadState ThreadState { get; } // 0x1027A200 + public ExecutionContext ExecutionContext { get; } // 0x1027BCD0 + public int ManagedThreadId { get; } // 0x10279ED0 + + // Methods + public void .ctor(ThreadStart start); // 0x1027B230 + public void .ctor(ThreadStart start, int maxStackSize); // 0x1027B370 + public void .ctor(ParameterizedThreadStart start); // 0x1027B1B0 + public void .ctor(ParameterizedThreadStart start, int maxStackSize); // 0x1027B2B0 + private static void .cctor(); // 0x1027B140 + private void System.Runtime.InteropServices._Thread.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x1027ADA0 + private void System.Runtime.InteropServices._Thread.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x1027AE40 + private void System.Runtime.InteropServices._Thread.GetTypeInfoCount(out uint pcTInfo); // 0x1027ADF0 + private void System.Runtime.InteropServices._Thread.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x1027AE90 + private static Thread CurrentThread_internal(); // 0x10279990 + private static void InitDataStoreHash(); // 0x1027A210 + public static LocalDataStoreSlot AllocateNamedDataSlot(string name); // 0x10279640 + public static void FreeNamedDataSlot(string name); // 0x10279B10 + public static LocalDataStoreSlot AllocateDataSlot(); // 0x10279600 + public static object GetData(LocalDataStoreSlot slot); // 0x10279E00 + public static void SetData(LocalDataStoreSlot slot, object data); // 0x1027A6A0 + internal static void FreeLocalSlotValues(int slot, bool thread_local); // 0x101B65B0 + public static LocalDataStoreSlot GetNamedDataSlot(string name); // 0x10279F90 + public static AppDomain GetDomain(); // 0x10279EC0 + public static int GetDomainID(); // 0x10279EB0 + private static void ResetAbort_internal(); // 0x1027A520 + public static void ResetAbort(); // 0x1027A530 + private static void Sleep_internal(int ms); // 0x1027A8A0 + public static void Sleep(int millisecondsTimeout); // 0x1027A8B0 + public static void Sleep(TimeSpan timeout); // 0x1027A940 + private IntPtr Thread_internal(MulticastDelegate start); // 0x1027AF10 + private void Thread_init(); // 0x1027AF00 + private CultureInfo GetCachedCurrentCulture(); // 0x10279CB0 + private byte[] GetSerializedCurrentCulture(); // 0x1027A1E0 + private void SetCachedCurrentCulture(CultureInfo culture); // 0x1027A5F0 + private void SetSerializedCurrentCulture(byte[] culture); // 0x1027A840 + private CultureInfo GetCachedCurrentUICulture(); // 0x10279CC0 + private byte[] GetSerializedCurrentUICulture(); // 0x1027A1F0 + private void SetCachedCurrentUICulture(CultureInfo culture); // 0x1027A610 + private void SetSerializedCurrentUICulture(byte[] culture); // 0x1027A860 + private string GetName_internal(); // 0x10279F80 + private void SetName_internal(string name); // 0x1027A820 + private void Abort_internal(object stateInfo); // 0x102795D0 + public void Abort(); // 0x102795F0 + public void Abort(object stateInfo); // 0x102795D0 + internal object GetAbortExceptionState(); // 0x10279C90 + private void Interrupt_internal(); // 0x1027A3B0 + public void Interrupt(); // 0x1027A3B0 + private bool Join_internal(int ms, IntPtr handle); // 0x1027A3C0 + public void Join(); // 0x1027A450 + public bool Join(int millisecondsTimeout); // 0x1027A3E0 + public bool Join(TimeSpan timeout); // 0x1027A470 + public static void MemoryBarrier(); // 0x1027A510 + private void Resume_internal(); // 0x1027A570 + public void Resume(); // 0x1027A570 + private static void SpinWait_nop(); // 0x101C4330 + public static void SpinWait(int iterations); // 0x1027A9F0 + public void Start(); // 0x1027AA70 + private void Suspend_internal(); // 0x1027AD90 + public void Suspend(); // 0x1027AD90 + private void Thread_free_internal(IntPtr handle); // 0x1027AEE0 + protected override void Finalize(); // 0x10279A50 + private void SetState(ThreadState set); // 0x1027A880 + private void ClrState(ThreadState clr); // 0x10279970 + private ThreadState GetState(); // 0x1027A200 + public static byte VolatileRead(byte address); // 0x1027B040 + public static double VolatileRead(double address); // 0x1027B060 + public static short VolatileRead(short address); // 0x1027B050 + public static int VolatileRead(int address); // 0x1027B020 + public static long VolatileRead(long address); // 0x1027B070 + public static IntPtr VolatileRead(IntPtr address); // 0x1027B020 + public static object VolatileRead(object address); // 0x1027B020 + public static sbyte VolatileRead(sbyte address); // 0x1027B040 + public static float VolatileRead(float address); // 0x1027B030 + public static ushort VolatileRead(ushort address); // 0x1027B050 + public static uint VolatileRead(uint address); // 0x1027B020 + public static ulong VolatileRead(ulong address); // 0x1027B070 + public static UIntPtr VolatileRead(UIntPtr address); // 0x1027B020 + public static void VolatileWrite(byte address, byte value); // 0x1027B080 + public static void VolatileWrite(double address, double value); // 0x1027B0C0 + public static void VolatileWrite(short address, short value); // 0x1027B120 + public static void VolatileWrite(int address, int value); // 0x1027B100 + public static void VolatileWrite(long address, long value); // 0x1027B0A0 + public static void VolatileWrite(IntPtr address, IntPtr value); // 0x1027B100 + public static void VolatileWrite(object address, object value); // 0x1027B100 + public static void VolatileWrite(sbyte address, sbyte value); // 0x1027B080 + public static void VolatileWrite(float address, float value); // 0x1027B0E0 + public static void VolatileWrite(ushort address, ushort value); // 0x1027B120 + public static void VolatileWrite(uint address, uint value); // 0x1027B100 + public static void VolatileWrite(ulong address, ulong value); // 0x1027B0A0 + public static void VolatileWrite(UIntPtr address, UIntPtr value); // 0x1027B100 + private static int GetNewManagedId(); // 0x1027A1A0 + private static int GetNewManagedId_internal(); // 0x1027A190 + public static void BeginCriticalRegion(); // 0x102798C0 + public static void EndCriticalRegion(); // 0x102799A0 + public static void BeginThreadAffinity(); // 0x100C5530 + public static void EndThreadAffinity(); // 0x100C5530 + public ApartmentState GetApartmentState(); // 0x10279CA0 + public void SetApartmentState(ApartmentState state); // 0x1027A580 + public bool TrySetApartmentState(ApartmentState state); // 0x1027AF30 + public override int GetHashCode(); // 0x10279ED0 + public void Start(object parameter); // 0x1027AA50 + public CompressedStack GetCompressedStack(); // 0x10279CD0 + public void SetCompressedStack(CompressedStack stack); // 0x1027A630 +} + +// Namespace: System.Threading +[Serializable] +public sealed class ThreadAbortException : SystemException // TypeDefIndex: 1584 +{ + // Methods + private void .ctor(); // 0x10278F90 + private void .ctor(SerializationInfo info, StreamingContext sc); // 0x100E5610 +} + +// Namespace: System.Threading +[Serializable] +public class ThreadInterruptedException : SystemException // TypeDefIndex: 1585 +{ + // Methods + public void .ctor(); // 0x10278FD0 + public void .ctor(string message); // 0x100E5680 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 + public void .ctor(string message, Exception innerException); // 0x100E5670 +} + +// Namespace: System.Threading +public static class ThreadPool // TypeDefIndex: 1586 +{ + // Methods + public static bool BindHandle(IntPtr osHandle); // 0x100E5880 + public static bool BindHandle(SafeHandle osHandle); // 0x10279010 + public static void GetMaxThreads(out int workerThreads, out int completionPortThreads); // 0x10279070 + public static void GetMinThreads(out int workerThreads, out int completionPortThreads); // 0x10279090 + public static bool SetMinThreads(int workerThreads, int completionPortThreads); // 0x10279420 + public static bool SetMaxThreads(int workerThreads, int completionPortThreads); // 0x10279400 + public static bool QueueUserWorkItem(WaitCallback callBack); // 0x10279140 + public static bool QueueUserWorkItem(WaitCallback callBack, object state); // 0x102790B0 + public static RegisteredWaitHandle RegisterWaitForSingleObject(WaitHandle waitObject, WaitOrTimerCallback callBack, object state, int millisecondsTimeOutInterval, bool executeOnlyOnce); // 0x10279160 + public static RegisteredWaitHandle RegisterWaitForSingleObject(WaitHandle waitObject, WaitOrTimerCallback callBack, object state, long millisecondsTimeOutInterval, bool executeOnlyOnce); // 0x10279190 + public static RegisteredWaitHandle RegisterWaitForSingleObject(WaitHandle waitObject, WaitOrTimerCallback callBack, object state, TimeSpan timeout, bool executeOnlyOnce); // 0x102793C0 + public static RegisteredWaitHandle RegisterWaitForSingleObject(WaitHandle waitObject, WaitOrTimerCallback callBack, object state, uint millisecondsTimeOutInterval, bool executeOnlyOnce); // 0x102793A0 +} + +// Namespace: System.Threading +[Serializable] +public enum ThreadPriority // TypeDefIndex: 1587 +{ + Lowest = 0, + BelowNormal = 1, + Normal = 2, + AboveNormal = 3, + Highest = 4 +} + +// Namespace: System.Threading +[Serializable] +public sealed class ThreadStartException : SystemException // TypeDefIndex: 1588 +{ + // Methods + internal void .ctor(); // 0x10279440 + internal void .ctor(string message); // 0x100E5680 + internal void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 + internal void .ctor(string message, Exception innerException); // 0x100E5670 +} + +// Namespace: System.Threading +[Serializable] +public enum ThreadState // TypeDefIndex: 1589 +{ + Running = 0, + StopRequested = 1, + SuspendRequested = 2, + Background = 4, + Unstarted = 8, + Stopped = 16, + WaitSleepJoin = 32, + Suspended = 64, + AbortRequested = 128, + Aborted = 256 +} + +// Namespace: System.Threading +[Serializable] +public class ThreadStateException : SystemException // TypeDefIndex: 1590 +{ + // Methods + public void .ctor(); // 0x10279590 + public void .ctor(string message); // 0x100E5680 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 + public void .ctor(string message, Exception innerException); // 0x100E5670 +} + +// Namespace: System.Threading +public static class Timeout // TypeDefIndex: 1591 +{ + // Fields + public const int Infinite = -1; // 0x00 + +} + +// Namespace: System.Threading +public sealed class Timer : MarshalByRefObject, IDisposable // TypeDefIndex: 1592 +{ + // Fields + private const long MaxValue = 4294967294; // 0x00 + private static Scheduler scheduler; // 0x00 + private TimerCallback callback; // 0x0C + private object state; // 0x10 + private long due_time_ms; // 0x18 + private long period_ms; // 0x20 + private long next_run; // 0x28 + private bool disposed; // 0x30 + + // Methods + public void .ctor(TimerCallback callback, object state, int dueTime, int period); // 0x1027EDB0 + public void .ctor(TimerCallback callback, object state, long dueTime, long period); // 0x1027ECF0 + public void .ctor(TimerCallback callback, object state, TimeSpan dueTime, TimeSpan period); // 0x1027ED50 + public void .ctor(TimerCallback callback, object state, uint dueTime, uint period); // 0x1027EDE0 + public void .ctor(TimerCallback callback); // 0x1027ED20 + private static void .cctor(); // 0x1027EC50 + private void Init(TimerCallback callback, object state, long dueTime, long period); // 0x1027EBD0 + public bool Change(int dueTime, int period); // 0x1027E7C0 + public bool Change(TimeSpan dueTime, TimeSpan period); // 0x1027E7E0 + public bool Change(uint dueTime, uint period); // 0x1027EA10 + public void Dispose(); // 0x1027EB60 + public bool Change(long dueTime, long period); // 0x1027EA50 + private bool Change(long dueTime, long period, bool first); // 0x1027E830 + public bool Dispose(WaitHandle notifyObject); // 0x1027EA70 +} + +// Namespace: +private sealed class TimerComparer : IComparer // TypeDefIndex: 1593 +{ + // Methods + public void .ctor(); // 0x100BF000 + public int Compare(object x, object y); // 0x1027E740 +} + +// Namespace: +private sealed class Scheduler // TypeDefIndex: 1594 +{ + // Fields + private static Scheduler instance; // 0x00 + private SortedList list; // 0x08 + + // Properties + public static Scheduler Instance { get; } // 0x10278C60 + + // Methods + private void .ctor(); // 0x10278B70 + private static void .cctor(); // 0x10278A50 + public void Remove(Timer timer); // 0x10278350 + public void Change(Timer timer, long new_next_run); // 0x10278160 + private void Add(Timer timer); // 0x10278000 + private int InternalRemove(Timer timer); // 0x102782F0 + private void SchedulerThread(); // 0x10278440 + private void ShrinkIfNeeded(ArrayList list, int initial); // 0x102789E0 +} + +// Namespace: System.Threading +public abstract class WaitHandle : MarshalByRefObject, IDisposable // TypeDefIndex: 1595 +{ + // Fields + public const int WaitTimeout = 258; // 0x00 + private SafeWaitHandle safe_wait_handle; // 0x0C + protected static readonly IntPtr InvalidHandle; // 0x00 + private bool disposed; // 0x10 + + // Properties + public virtual IntPtr Handle { get; set; } // 0x10286A00 0x10286A30 + public SafeWaitHandle SafeWaitHandle { get; set; } // 0x100C5B30 0x10286B00 + + // Methods + protected void .ctor(); // 0x100C5970 + private static void .cctor(); // 0x102869C0 + private void System.IDisposable.Dispose(); // 0x101100C0 + private static bool WaitAll_internal(WaitHandle[] handles, int ms, bool exitContext); // 0x10285BE0 + private static void CheckArray(WaitHandle[] handles, bool waitAll); // 0x102856F0 + public static bool WaitAll(WaitHandle[] waitHandles); // 0x10285C60 + public static bool WaitAll(WaitHandle[] waitHandles, int millisecondsTimeout, bool exitContext); // 0x10285D20 + public static bool WaitAll(WaitHandle[] waitHandles, TimeSpan timeout, bool exitContext); // 0x10285E90 + private static int WaitAny_internal(WaitHandle[] handles, int ms, bool exitContext); // 0x10286040 + public static int WaitAny(WaitHandle[] waitHandles); // 0x10286470 + public static int WaitAny(WaitHandle[] waitHandles, int millisecondsTimeout, bool exitContext); // 0x102860C0 + public static int WaitAny(WaitHandle[] waitHandles, TimeSpan timeout); // 0x10286060 + public static int WaitAny(WaitHandle[] waitHandles, int millisecondsTimeout); // 0x10286410 + public static int WaitAny(WaitHandle[] waitHandles, TimeSpan timeout, bool exitContext); // 0x10286250 + public virtual void Close(); // 0x101100C0 + private bool WaitOne_internal(IntPtr handle, int ms, bool exitContext); // 0x102864D0 + protected virtual void Dispose(bool explicitDisposing); // 0x102858A0 + public static bool SignalAndWait(WaitHandle toSignal, WaitHandle toWaitOn); // 0x10285A70 + public static bool SignalAndWait(WaitHandle toSignal, WaitHandle toWaitOn, int millisecondsTimeout, bool exitContext); // 0x10285AD0 + public static bool SignalAndWait(WaitHandle toSignal, WaitHandle toWaitOn, TimeSpan timeout, bool exitContext); // 0x10285990 + private static bool SignalAndWait_Internal(IntPtr toSignal, IntPtr toWaitOn, int ms, bool exitContext); // 0x10285970 + public virtual bool WaitOne(); // 0x102864F0 + public virtual bool WaitOne(int millisecondsTimeout, bool exitContext); // 0x10286610 + public virtual bool WaitOne(int millisecondsTimeout); // 0x101B50E0 + public virtual bool WaitOne(TimeSpan timeout); // 0x10286990 + public virtual bool WaitOne(TimeSpan timeout, bool exitContext); // 0x102867B0 + internal void CheckDisposed(); // 0x10285820 + public static bool WaitAll(WaitHandle[] waitHandles, int millisecondsTimeout); // 0x10285C00 + public static bool WaitAll(WaitHandle[] waitHandles, TimeSpan timeout); // 0x10285CC0 + protected override void Finalize(); // 0x1010BCA0 +} + +// Namespace: System.Threading +[Serializable] +public class WaitHandleCannotBeOpenedException : ApplicationException // TypeDefIndex: 1596 +{ + // Methods + public void .ctor(); // 0x102856B0 + public void .ctor(string message); // 0x10170380 + public void .ctor(string message, Exception innerException); // 0x10170330 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 +} + +// Namespace: System +[Serializable] +public class AccessViolationException : SystemException // TypeDefIndex: 1597 +{ + // Fields + private const int Result = -2147467261; // 0x00 + + // Methods + public void .ctor(); // 0x10158D40 + public void .ctor(string message); // 0x101056D0 + public void .ctor(string message, Exception innerException); // 0x10105740 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 +} + +// Namespace: System +[Serializable] +public sealed class ActivationContext : IDisposable, ISerializable // TypeDefIndex: 1598 +{ + // Fields + private ContextForm _form; // 0x08 + private ApplicationIdentity _appid; // 0x0C + private bool _disposed; // 0x10 + + // Properties + public ContextForm Form { get; } // 0x100BF0C0 + public ApplicationIdentity Identity { get; } // 0x100C5B30 + + // Methods + private void .ctor(ApplicationIdentity identity); // 0x10158F90 + private void System.Runtime.Serialization.ISerializable.GetObjectData(SerializationInfo info, StreamingContext context); // 0x10158F30 + protected override void Finalize(); // 0x10158EF0 + public static ActivationContext CreatePartialActivationContext(ApplicationIdentity identity); // 0x10158E30 + public static ActivationContext CreatePartialActivationContext(ApplicationIdentity identity, string[] manifestPaths); // 0x10158D90 + public void Dispose(); // 0x10158ED0 + private void Dispose(bool disposing); // 0x10158EB0 +} + +// Namespace: +public enum ContextForm // TypeDefIndex: 1599 +{ + Loose = 0, + StoreBounded = 1 +} + +// Namespace: System +public sealed class Activator : _Activator // TypeDefIndex: 1600 +{ + // Fields + private const BindingFlags _flags = 532; // 0x00 + private const BindingFlags _accessFlags = 127; // 0x00 + + // Methods + private void .ctor(); // 0x100BF000 + private void System.Runtime.InteropServices._Activator.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x1015A370 + private void System.Runtime.InteropServices._Activator.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x1015A410 + private void System.Runtime.InteropServices._Activator.GetTypeInfoCount(out uint pcTInfo); // 0x1015A3C0 + private void System.Runtime.InteropServices._Activator.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x1015A460 + public static ObjectHandle CreateComInstanceFrom(string assemblyName, string typeName); // 0x10159220 + public static ObjectHandle CreateComInstanceFrom(string assemblyName, string typeName, byte[] hashValue, AssemblyHashAlgorithm hashAlgorithm); // 0x101592F0 + public static ObjectHandle CreateInstanceFrom(string assemblyFile, string typeName); // 0x10159460 + public static ObjectHandle CreateInstanceFrom(string assemblyFile, string typeName, object[] activationAttributes); // 0x10159570 + public static ObjectHandle CreateInstanceFrom(string assemblyFile, string typeName, bool ignoreCase, BindingFlags bindingAttr, Binder binder, object[] args, CultureInfo culture, object[] activationAttributes, Evidence securityInfo); // 0x101593C0 + public static ObjectHandle CreateInstance(string assemblyName, string typeName); // 0x101597B0 + public static ObjectHandle CreateInstance(string assemblyName, string typeName, object[] activationAttributes); // 0x1015A1F0 + public static ObjectHandle CreateInstance(string assemblyName, string typeName, bool ignoreCase, BindingFlags bindingAttr, Binder binder, object[] args, CultureInfo culture, object[] activationAttributes, Evidence securityInfo); // 0x1015A0D0 + public static ObjectHandle CreateInstance(ActivationContext activationContext); // 0x10159890 + public static ObjectHandle CreateInstance(ActivationContext activationContext, string[] activationCustomData); // 0x10159840 + public static ObjectHandle CreateInstanceFrom(AppDomain domain, string assemblyFile, string typeName); // 0x10159500 + public static ObjectHandle CreateInstanceFrom(AppDomain domain, string assemblyFile, string typeName, bool ignoreCase, BindingFlags bindingAttr, Binder binder, object[] args, CultureInfo culture, object[] activationAttributes, Evidence securityAttributes); // 0x10159490 + public static ObjectHandle CreateInstance(AppDomain domain, string assemblyName, string typeName); // 0x10159740 + public static ObjectHandle CreateInstance(AppDomain domain, string assemblyName, string typeName, bool ignoreCase, BindingFlags bindingAttr, Binder binder, object[] args, CultureInfo culture, object[] activationAttributes, Evidence securityAttributes); // 0x1015A180 + public static T CreateInstance(); + public static object CreateInstance(Type type); // 0x1015A0B0 + public static object CreateInstance(Type type, object[] args); // 0x101595B0 + public static object CreateInstance(Type type, object[] args, object[] activationAttributes); // 0x10159690 + public static object CreateInstance(Type type, BindingFlags bindingAttr, Binder binder, object[] args, CultureInfo culture); // 0x1015A060 + public static object CreateInstance(Type type, BindingFlags bindingAttr, Binder binder, object[] args, CultureInfo culture, object[] activationAttributes); // 0x10159B00 + public static object CreateInstance(Type type, bool nonPublic); // 0x101598E0 + private static void CheckType(Type type); // 0x10159070 + private static void CheckAbstractType(Type type); // 0x10158FB0 + public static object GetObject(Type type, string url); // 0x1015A250 + public static object GetObject(Type type, string url, object state); // 0x1015A2E0 + internal static object CreateInstanceInternal(Type type); // 0x101595A0 +} + +// Namespace: System +public sealed class AppDomain : MarshalByRefObject // TypeDefIndex: 1601 +{ + // Fields + private IntPtr _mono_app_domain; // 0x0C + private static string _process_guid; // 0x00 + private static Hashtable type_resolve_in_progress; // 0x80000000 + private static Hashtable assembly_resolve_in_progress; // 0x80000004 + private static Hashtable assembly_resolve_in_progress_refonly; // 0x80000008 + private Evidence _evidence; // 0x10 + private PermissionSet _granted; // 0x14 + private PrincipalPolicy _principalPolicy; // 0x18 + private static IPrincipal _principal; // 0x8000000C + private static AppDomain default_domain; // 0x04 + private AppDomainManager _domain_manager; // 0x1C + private ActivationContext _activation; // 0x20 + private ApplicationIdentity _applicationIdentity; // 0x24 + private AssemblyLoadEventHandler AssemblyLoad; // 0x28 + private ResolveEventHandler AssemblyResolve; // 0x2C + private EventHandler DomainUnload; // 0x30 + private EventHandler ProcessExit; // 0x34 + private ResolveEventHandler ResourceResolve; // 0x38 + private ResolveEventHandler TypeResolve; // 0x3C + private UnhandledExceptionEventHandler UnhandledException; // 0x40 + private ResolveEventHandler ReflectionOnlyAssemblyResolve; // 0x44 + + // Properties + internal AppDomainSetup SetupInformationNoCopy { get; } // 0x1015E2E0 + public AppDomainSetup SetupInformation { get; } // 0x1015E8C0 + public string BaseDirectory { get; } // 0x1015E2F0 + public string RelativeSearchPath { get; } // 0x1015E810 + public string DynamicDirectory { get; } // 0x1015E580 + public bool ShadowCopyFiles { get; } // 0x1015E910 + public string FriendlyName { get; } // 0x1015DDB0 + public Evidence Evidence { get; } // 0x1015E680 + internal IPrincipal DefaultPrincipal { get; } // 0x1015E450 + internal PermissionSet GrantedPermissionSet { get; } // 0x100EF0C0 + public static AppDomain CurrentDomain { get; } // 0x1015E270 + internal static AppDomain DefaultDomain { get; } // 0x1015E3A0 + public AppDomainManager DomainManager { get; } // 0x100F85F0 + public ActivationContext ActivationContext { get; } // 0x100EACD0 + public ApplicationIdentity ApplicationIdentity { get; } // 0x100EAD50 + public int Id { get; } // 0x1015E280 + + // Events + public event AssemblyLoadEventHandler AssemblyLoad { + add; // 0x1015DF50 + remove; // 0x1015E980 + } + public event ResolveEventHandler AssemblyResolve { + add; // 0x1015DFB0 + remove; // 0x1015E9E0 + } + public event EventHandler DomainUnload { + add; // 0x1015E010 + remove; // 0x1015EA40 + } + public event EventHandler ProcessExit { + add; // 0x1015E070 + remove; // 0x1015EAA0 + } + public event ResolveEventHandler ResourceResolve { + add; // 0x1015E130 + remove; // 0x1015EB60 + } + public event ResolveEventHandler TypeResolve { + add; // 0x1015E190 + remove; // 0x1015EBC0 + } + public event UnhandledExceptionEventHandler UnhandledException { + add; // 0x1015E1F0 + remove; // 0x1015EC20 + } + public event ResolveEventHandler ReflectionOnlyAssemblyResolve { + add; // 0x1015E0D0 + remove; // 0x1015EB00 + } + + // Methods + private void .ctor(); // 0x100C5970 + private AppDomainSetup getSetup(); // 0x1015E2E0 + private string getFriendlyName(); // 0x1015DDB0 + private static AppDomain getCurDomain(); // 0x1015E270 + private static AppDomain getRootDomain(); // 0x1015E2D0 + public void AppendPrivatePath(string path); // 0x1015B350 + public void ClearPrivatePath(); // 0x1015B560 + public void ClearShadowCopyPath(); // 0x1015B5D0 + public ObjectHandle CreateInstance(string assemblyName, string typeName); // 0x1015BE10 + public ObjectHandle CreateInstance(string assemblyName, string typeName, object[] activationAttributes); // 0x1015BDA0 + public ObjectHandle CreateInstance(string assemblyName, string typeName, bool ignoreCase, BindingFlags bindingAttr, Binder binder, object[] args, CultureInfo culture, object[] activationAttributes, Evidence securityAttributes); // 0x1015BD20 + public object CreateInstanceAndUnwrap(string assemblyName, string typeName); // 0x1015B9B0 + public object CreateInstanceAndUnwrap(string assemblyName, string typeName, object[] activationAttributes); // 0x1015BA20 + public object CreateInstanceAndUnwrap(string assemblyName, string typeName, bool ignoreCase, BindingFlags bindingAttr, Binder binder, object[] args, CultureInfo culture, object[] activationAttributes, Evidence securityAttributes); // 0x1015B9E0 + public ObjectHandle CreateInstanceFrom(string assemblyFile, string typeName); // 0x1015BC20 + public ObjectHandle CreateInstanceFrom(string assemblyFile, string typeName, object[] activationAttributes); // 0x1015BCA0 + public ObjectHandle CreateInstanceFrom(string assemblyFile, string typeName, bool ignoreCase, BindingFlags bindingAttr, Binder binder, object[] args, CultureInfo culture, object[] activationAttributes, Evidence securityAttributes); // 0x1015BBA0 + public object CreateInstanceFromAndUnwrap(string assemblyName, string typeName); // 0x1015BAA0 + public object CreateInstanceFromAndUnwrap(string assemblyName, string typeName, object[] activationAttributes); // 0x1015BAD0 + public object CreateInstanceFromAndUnwrap(string assemblyName, string typeName, bool ignoreCase, BindingFlags bindingAttr, Binder binder, object[] args, CultureInfo culture, object[] activationAttributes, Evidence securityAttributes); // 0x1015BB60 + public AssemblyBuilder DefineDynamicAssembly(AssemblyName name, AssemblyBuilderAccess access); // 0x1015C0E0 + public AssemblyBuilder DefineDynamicAssembly(AssemblyName name, AssemblyBuilderAccess access, Evidence evidence); // 0x1015C140 + public AssemblyBuilder DefineDynamicAssembly(AssemblyName name, AssemblyBuilderAccess access, string dir); // 0x1015C0B0 + public AssemblyBuilder DefineDynamicAssembly(AssemblyName name, AssemblyBuilderAccess access, string dir, Evidence evidence); // 0x1015C050 + public AssemblyBuilder DefineDynamicAssembly(AssemblyName name, AssemblyBuilderAccess access, PermissionSet requiredPermissions, PermissionSet optionalPermissions, PermissionSet refusedPermissions); // 0x1015C110 + public AssemblyBuilder DefineDynamicAssembly(AssemblyName name, AssemblyBuilderAccess access, Evidence evidence, PermissionSet requiredPermissions, PermissionSet optionalPermissions, PermissionSet refusedPermissions); // 0x1015C330 + public AssemblyBuilder DefineDynamicAssembly(AssemblyName name, AssemblyBuilderAccess access, string dir, PermissionSet requiredPermissions, PermissionSet optionalPermissions, PermissionSet refusedPermissions); // 0x1015C080 + public AssemblyBuilder DefineDynamicAssembly(AssemblyName name, AssemblyBuilderAccess access, string dir, Evidence evidence, PermissionSet requiredPermissions, PermissionSet optionalPermissions, PermissionSet refusedPermissions); // 0x1015C300 + public AssemblyBuilder DefineDynamicAssembly(AssemblyName name, AssemblyBuilderAccess access, string dir, Evidence evidence, PermissionSet requiredPermissions, PermissionSet optionalPermissions, PermissionSet refusedPermissions, bool isSynchronized); // 0x1015C170 + public AssemblyBuilder DefineDynamicAssembly(AssemblyName name, AssemblyBuilderAccess access, string dir, Evidence evidence, PermissionSet requiredPermissions, PermissionSet optionalPermissions, PermissionSet refusedPermissions, bool isSynchronized, IEnumerable`1 assemblyAttributes); // 0x1015BE90 + public AssemblyBuilder DefineDynamicAssembly(AssemblyName name, AssemblyBuilderAccess access, IEnumerable`1 assemblyAttributes); // 0x1015C360 + internal AssemblyBuilder DefineInternalDynamicAssembly(AssemblyName name, AssemblyBuilderAccess access); // 0x1015C390 + public void DoCallBack(CrossAppDomainDelegate callBackDelegate); // 0x1015C6D0 + public int ExecuteAssembly(string assemblyFile); // 0x1015CB60 + public int ExecuteAssembly(string assemblyFile, Evidence assemblySecurity); // 0x1015CBC0 + public int ExecuteAssembly(string assemblyFile, Evidence assemblySecurity, string[] args); // 0x1015CBF0 + public int ExecuteAssembly(string assemblyFile, Evidence assemblySecurity, string[] args, byte[] hashValue, AssemblyHashAlgorithm hashAlgorithm); // 0x1015CB90 + private int ExecuteAssemblyInternal(Assembly a, string[] args); // 0x1015CA70 + private int ExecuteAssembly(Assembly a, string[] args); // 0x1015CB40 + private Assembly[] GetAssemblies(bool refOnly); // 0x1015CC30 + public Assembly[] GetAssemblies(); // 0x1015CC20 + public object GetData(string name); // 0x1015CCA0 + public Type GetType(); // 0x1015CD60 + public override object InitializeLifetimeService(); // 0x100C5600 + internal Assembly LoadAssembly(string assemblyRef, Evidence securityEvidence, bool refOnly); // 0x1015D210 + public Assembly Load(AssemblyName assemblyRef); // 0x1015D330 + internal Assembly LoadSatellite(AssemblyName assemblyRef, bool throwOnError); // 0x1015D230 + public Assembly Load(AssemblyName assemblyRef, Evidence assemblySecurity); // 0x1015D450 + public Assembly Load(string assemblyString); // 0x1015D310 + public Assembly Load(string assemblyString, Evidence assemblySecurity); // 0x1015D2F0 + internal Assembly Load(string assemblyString, Evidence assemblySecurity, bool refonly); // 0x1015D7F0 + public Assembly Load(byte[] rawAssembly); // 0x1015D8C0 + public Assembly Load(byte[] rawAssembly, byte[] rawSymbolStore); // 0x1015D7D0 + internal Assembly LoadAssemblyRaw(byte[] rawAssembly, byte[] rawSymbolStore, Evidence securityEvidence, bool refonly); // 0x1015D1F0 + public Assembly Load(byte[] rawAssembly, byte[] rawSymbolStore, Evidence securityEvidence); // 0x1015D3D0 + internal Assembly Load(byte[] rawAssembly, byte[] rawSymbolStore, Evidence securityEvidence, bool refonly); // 0x1015D350 + public void SetAppDomainPolicy(PolicyLevel domainPolicy); // 0x1015D9E0 + public void SetCachePath(string path); // 0x1015DAE0 + public void SetPrincipalPolicy(PrincipalPolicy policy); // 0x1015DB80 + public void SetShadowCopyFiles(); // 0x1015DC40 + public void SetShadowCopyPath(string path); // 0x1015DC90 + public void SetThreadPrincipal(IPrincipal principal); // 0x1015DCC0 + private static AppDomain InternalSetDomainByID(int domain_id); // 0x1015CDD0 + private static AppDomain InternalSetDomain(AppDomain context); // 0x1015CDE0 + internal static void InternalPushDomainRef(AppDomain domain); // 0x1015CDB0 + internal static void InternalPushDomainRefByID(int domain_id); // 0x1015CDA0 + internal static void InternalPopDomainRef(); // 0x1015CD90 + internal static Context InternalSetContext(Context context); // 0x1015CDC0 + internal static Context InternalGetContext(); // 0x1015CD70 + internal static Context InternalGetDefaultContext(); // 0x1015CD70 + internal static string InternalGetProcessGuid(string newguid); // 0x1015CD80 + internal static object InvokeInDomain(AppDomain domain, MethodInfo method, object obj, object[] args); // 0x1015CFC0 + internal static object InvokeInDomainByID(int domain_id, MethodInfo method, object obj, object[] args); // 0x1015CE00 + internal static string GetProcessGuid(); // 0x1015CCC0 + public static AppDomain CreateDomain(string friendlyName); // 0x1015B940 + public static AppDomain CreateDomain(string friendlyName, Evidence securityInfo); // 0x1015B990 + private static AppDomain createDomain(string friendlyName, AppDomainSetup info); // 0x1015E250 + public static AppDomain CreateDomain(string friendlyName, Evidence securityInfo, AppDomainSetup info); // 0x1015B6F0 + public static AppDomain CreateDomain(string friendlyName, Evidence securityInfo, string appBasePath, string appRelativeSearchPath, bool shadowCopyFiles); // 0x1015B960 + private static AppDomainSetup CreateDomainSetup(string appBasePath, string appRelativeSearchPath, bool shadowCopyFiles); // 0x1015B640 + private static bool InternalIsFinalizingForUnload(int domain_id); // 0x100E9F80 + public bool IsFinalizingForUnload(); // 0x1015D1A0 + private static void InternalUnload(int domain_id); // 0x1015CDF0 + private int getDomainID(); // 0x1015E280 + public static void Unload(AppDomain domain); // 0x1015DDC0 + public void SetData(string name, object data); // 0x1015DB10 + public void SetData(string name, object data, IPermission permission); // 0x1015DB30 + public static int GetCurrentThreadId(); // 0x1015CC50 + public override string ToString(); // 0x1015DDB0 + private static void ValidateAssemblyName(string name); // 0x1015DE70 + private void DoAssemblyLoad(Assembly assembly); // 0x1015C3E0 + private Assembly DoAssemblyResolve(string name, bool refonly); // 0x1015C440 + internal Assembly DoTypeResolve(object name_or_tb); // 0x1015C710 + private void DoDomainUnload(); // 0x1015C6F0 + internal void ProcessMessageInDomain(byte[] arrRequest, CADMethodCallMessage cadMsg, out byte[] arrResponse, out CADMethodReturnMessage cadMrm); // 0x1015D8E0 + public string ApplyPolicy(string assemblyName); // 0x1015B4D0 + public static AppDomain CreateDomain(string friendlyName, Evidence securityInfo, string appBasePath, string appRelativeSearchPath, bool shadowCopyFiles, AppDomainInitializer adInit, string[] adInitArgs); // 0x1015B6B0 + public int ExecuteAssemblyByName(string assemblyName); // 0x1015CA40 + public int ExecuteAssemblyByName(string assemblyName, Evidence assemblySecurity); // 0x1015C9E0 + public int ExecuteAssemblyByName(string assemblyName, Evidence assemblySecurity, string[] args); // 0x1015CA10 + public int ExecuteAssemblyByName(AssemblyName assemblyName, Evidence assemblySecurity, string[] args); // 0x1015C9B0 + public bool IsDefaultAppDomain(); // 0x1015D180 + public Assembly[] ReflectionOnlyGetAssemblies(); // 0x1015D9D0 +} + +// Namespace: System +public class AppDomainManager : MarshalByRefObject // TypeDefIndex: 1602 +{ + // Fields + private ApplicationActivator _activator; // 0x0C + private AppDomainManagerInitializationOptions _flags; // 0x10 + + // Properties + public virtual ApplicationActivator ApplicationActivator { get; } // 0x1015A9E0 + public virtual Assembly EntryAssembly { get; } // 0x1015AA30 + public virtual HostExecutionContextManager HostExecutionContextManager { get; } // 0x1015AA40 + public virtual HostSecurityManager HostSecurityManager { get; } // 0x100C5600 + public AppDomainManagerInitializationOptions InitializationFlags { get; set; } // 0x100BFC20 0x100C5B40 + + // Methods + public void .ctor(); // 0x1015A9C0 + public virtual AppDomain CreateDomain(string friendlyName, Evidence securityInfo, AppDomainSetup appDomainInfo); // 0x1015A860 + public virtual void InitializeNewDomain(AppDomainSetup appDomainInfo); // 0x100C5530 + public virtual bool CheckSecuritySettings(SecurityState state); // 0x100EFBF0 + protected static AppDomain CreateDomainHelper(string friendlyName, Evidence securityInfo, AppDomainSetup appDomainInfo); // 0x1015A850 +} + +// Namespace: System +[Serializable] +public sealed class AppDomainSetup // TypeDefIndex: 1603 +{ + // Fields + private string application_base; // 0x08 + private string application_name; // 0x0C + private string cache_path; // 0x10 + private string configuration_file; // 0x14 + private string dynamic_base; // 0x18 + private string license_file; // 0x1C + private string private_bin_path; // 0x20 + private string private_bin_path_probe; // 0x24 + private string shadow_copy_directories; // 0x28 + private string shadow_copy_files; // 0x2C + private bool publisher_policy; // 0x30 + private bool path_changed; // 0x31 + private LoaderOptimization loader_optimization; // 0x34 + private bool disallow_binding_redirects; // 0x38 + private bool disallow_code_downloads; // 0x39 + private ActivationArguments _activationArguments; // 0x3C + private AppDomainInitializer domain_initializer; // 0x40 + [NonSerialized] private ApplicationTrust application_trust; // 0x44 + private string[] domain_initializer_args; // 0x48 + private SecurityElement application_trust_xml; // 0x4C + private bool disallow_appbase_probe; // 0x50 + private byte[] configuration_bytes; // 0x54 + + // Properties + public string ApplicationBase { get; set; } // 0x1015AD60 0x100EB270 + public string ApplicationName { get; set; } // 0x100C5B30 0x100C5B50 + public string CachePath { get; set; } // 0x100BFC20 0x100C5B40 + public string ConfigurationFile { get; set; } // 0x1015AF20 0x10127B00 + public bool DisallowPublisherPolicy { get; set; } // 0x100EF0D0 0x100EF3A0 + public string DynamicBase { get; set; } // 0x1015B040 0x1015B1B0 + public string LicenseFile { get; set; } // 0x100F85F0 0x10113F50 + public LoaderOptimization LoaderOptimization { get; set; } // 0x100E9ED0 0x100EA750 + public string PrivateBinPath { get; set; } // 0x100EACD0 0x1015B290 + public string PrivateBinPathProbe { get; set; } // 0x100EAD50 0x1015B270 + public string ShadowCopyDirectories { get; set; } // 0x100EB040 0x100EB250 + public string ShadowCopyFiles { get; set; } // 0x100EB200 0x100EB260 + public bool DisallowBindingRedirects { get; set; } // 0x1015B020 0x1015B190 + public bool DisallowCodeDownload { get; set; } // 0x1015B030 0x1015B1A0 + public ActivationArguments ActivationArguments { get; set; } // 0x100EB220 0x101455F0 + public AppDomainInitializer AppDomainInitializer { get; set; } // 0x100E9E80 0x100EB280 + public string[] AppDomainInitializerArguments { get; set; } // 0x10145560 0x101455E0 + public ApplicationTrust ApplicationTrust { get; set; } // 0x1015AEC0 0x1015B130 + public bool DisallowApplicationBaseProbing { get; set; } // 0x1015B010 0x1015B180 + + // Methods + public void .ctor(); // 0x100BF000 + internal void .ctor(AppDomainSetup setup); // 0x1015AC40 + public void .ctor(ActivationArguments activationArguments); // 0x1015AD40 + public void .ctor(ActivationContext activationContext); // 0x1015ACF0 + private static string GetAppBase(string appBase); // 0x1015AA90 + public byte[] GetConfigurationBytes(); // 0x1015ABF0 + public void SetConfigurationBytes(byte[] value); // 0x101455A0 +} + +// Namespace: System +[Serializable] +public class AppDomainUnloadedException : SystemException // TypeDefIndex: 1604 +{ + // Fields + private const int Result = -2146234348; // 0x00 + + // Methods + public void .ctor(); // 0x1015B300 + public void .ctor(string message); // 0x1015B2E0 + public void .ctor(string message, Exception innerException); // 0x1015B2B0 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 +} + +// Namespace: System +[Serializable] +public class ApplicationException : Exception // TypeDefIndex: 1605 +{ + // Fields + private const int Result = -2146232832; // 0x00 + + // Methods + public void .ctor(); // 0x1015ECA0 + public void .ctor(string message); // 0x1015ED20 + public void .ctor(string message, Exception innerException); // 0x1015ECF0 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x1015EC80 +} + +// Namespace: System +[Serializable] +public sealed class ApplicationId // TypeDefIndex: 1606 +{ + // Fields + private byte[] _token; // 0x08 + private string _name; // 0x0C + private Version _version; // 0x10 + private string _proc; // 0x14 + private string _culture; // 0x18 + + // Properties + public string Culture { get; } // 0x100EE580 + public string Name { get; } // 0x100C5B30 + public string ProcessorArchitecture { get; } // 0x100EF0C0 + public byte[] PublicKeyToken { get; } // 0x1015F2C0 + public Version Version { get; } // 0x100BFC20 + + // Methods + public void .ctor(byte[] publicKeyToken, string name, Version version, string processorArchitecture, string culture); // 0x1015F1C0 + public ApplicationId Copy(); // 0x1015ED40 + public override bool Equals(object o); // 0x1015EE90 + public override int GetHashCode(); // 0x1015F010 + public override string ToString(); // 0x1015F090 +} + +// Namespace: System +[Serializable] +public sealed class ApplicationIdentity : ISerializable // TypeDefIndex: 1607 +{ + // Fields + private string _fullName; // 0x08 + private string _codeBase; // 0x0C + + // Properties + public string CodeBase { get; } // 0x100C5B30 + public string FullName { get; } // 0x100BF0C0 + + // Methods + public void .ctor(string applicationIdentityFullName); // 0x1015F390 + private void System.Runtime.Serialization.ISerializable.GetObjectData(SerializationInfo info, StreamingContext context); // 0x1015F330 + public override string ToString(); // 0x100BF0C0 +} + +// Namespace: System +[Serializable] +public class ArgumentException : SystemException // TypeDefIndex: 1608 +{ + // Fields + private const int Result = -2147024809; // 0x00 + private string param_name; // 0x34 + + // Properties + public virtual string ParamName { get; } // 0x100E9ED0 + public override string Message { get; } // 0x1015F770 + + // Methods + public void .ctor(); // 0x1015F720 + public void .ctor(string message); // 0x1015F700 + public void .ctor(string message, Exception innerException); // 0x1015F6A0 + public void .ctor(string message, string paramName); // 0x1015F610 + public void .ctor(string message, string paramName, Exception innerException); // 0x1015F6D0 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x1015F640 + public override void GetObjectData(SerializationInfo info, StreamingContext context); // 0x1015F5A0 +} + +// Namespace: System +[Serializable] +public class ArgumentNullException : ArgumentException // TypeDefIndex: 1609 +{ + // Fields + private const int Result = -2147467261; // 0x00 + + // Methods + public void .ctor(); // 0x1015F8B0 + public void .ctor(string paramName); // 0x1015F900 + public void .ctor(string paramName, string message); // 0x1015F880 + public void .ctor(string message, Exception innerException); // 0x10105740 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x1015F860 +} + +// Namespace: System +[Serializable] +public class ArgumentOutOfRangeException : ArgumentException // TypeDefIndex: 1610 +{ + // Fields + private const int Result = -2146233086; // 0x00 + private object actual_value; // 0x38 + + // Properties + public virtual object ActualValue { get; } // 0x100EB210 + public override string Message { get; } // 0x1015FB80 + + // Methods + public void .ctor(); // 0x1015FA80 + public void .ctor(string paramName); // 0x1015FAD0 + public void .ctor(string paramName, string message); // 0x1015FA20 + public void .ctor(string paramName, object actualValue, string message); // 0x1015F9F0 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x1015FB20 + public void .ctor(string message, Exception innerException); // 0x1015FA50 + public override void GetObjectData(SerializationInfo info, StreamingContext context); // 0x1015F950 +} + +// Namespace: System +[Serializable] +public class ArithmeticException : SystemException // TypeDefIndex: 1611 +{ + // Fields + private const int Result = -2147024362; // 0x00 + + // Methods + public void .ctor(); // 0x103069E0 + public void .ctor(string message); // 0x103069C0 + public void .ctor(string message, Exception innerException); // 0x10306990 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 +} + +// Namespace: System +[Serializable] +public struct ArraySegment`1 // TypeDefIndex: 1612 +{ + // Fields + private T[] array; // 0x00 + private int offset; // 0x00 + private int count; // 0x00 + + // Properties + public T[] Array { get; } + public int Offset { get; } + public int Count { get; } + + // Methods + public void .ctor(T[] array, int offset, int count); + public void .ctor(T[] array); + public override bool Equals(object obj); + public bool Equals(ArraySegment`1 obj); + public override int GetHashCode(); + public static bool op_Equality(ArraySegment`1 a, ArraySegment`1 b); + public static bool op_Inequality(ArraySegment`1 a, ArraySegment`1 b); +} + +// Namespace: System +[Serializable] +public class ArrayTypeMismatchException : SystemException // TypeDefIndex: 1613 +{ + // Fields + private const int Result = -2146233085; // 0x00 + + // Methods + public void .ctor(); // 0x1030BC40 + public void .ctor(string message); // 0x1030BCC0 + public void .ctor(string message, Exception innerException); // 0x1030BC90 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 +} + +// Namespace: System +public class AssemblyLoadEventArgs : EventArgs // TypeDefIndex: 1614 +{ + // Fields + private Assembly m_loadedAssembly; // 0x08 + + // Properties + public Assembly LoadedAssembly { get; } // 0x100BF0C0 + + // Methods + public void .ctor(Assembly loadedAssembly); // 0x103109D0 +} + +// Namespace: System +[Serializable] +public enum AttributeTargets // TypeDefIndex: 1615 +{ + Assembly = 1, + Module = 2, + Class = 4, + Struct = 8, + Enum = 16, + Constructor = 32, + Method = 64, + Property = 128, + Field = 256, + Event = 512, + Interface = 1024, + Parameter = 2048, + Delegate = 4096, + ReturnValue = 8192, + GenericParameter = 16384, + All = 32767 +} + +// Namespace: System +[Serializable] +public class BadImageFormatException : SystemException // TypeDefIndex: 1616 +{ + // Fields + private const int Result = -2147024885; // 0x00 + private string fileName; // 0x34 + private string fusionLog; // 0x38 + + // Properties + public override string Message { get; } // 0x10312440 + public string FileName { get; } // 0x100E9ED0 + public string FusionLog { get; } // 0x100EB210 + + // Methods + public void .ctor(); // 0x103123F0 + public void .ctor(string message); // 0x10312300 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x10312320 + public void .ctor(string message, Exception inner); // 0x103122D0 + public void .ctor(string message, string fileName); // 0x103123C0 + public void .ctor(string message, string fileName, Exception inner); // 0x10312390 + public override void GetObjectData(SerializationInfo info, StreamingContext context); // 0x10312120 + public override string ToString(); // 0x10312190 +} + +// Namespace: System +public enum Base64FormattingOptions // TypeDefIndex: 1617 +{ + None = 0, + InsertLineBreaks = 1 +} + +// Namespace: System +public static class BitConverter // TypeDefIndex: 1618 +{ + // Fields + private static readonly bool SwappedWordsInDouble; // 0x00 + public static readonly bool IsLittleEndian; // 0x01 + + // Methods + private static void .cctor(); // 0x10314A40 + private static bool AmILittleEndian(); // 0x10313640 + private static bool DoubleWordsAreSwapped(); // 0x100EFBF0 + public static long DoubleToInt64Bits(double value); // 0x10313660 + public static double Int64BitsToDouble(long value); // 0x10313BE0 + internal static double InternalInt64BitsToDouble(long value); // 0x10313C90 + private static byte[] GetBytes(void * ptr, int count); // 0x103137C0 + public static byte[] GetBytes(bool value); // 0x103138E0 + public static byte[] GetBytes(char value); // 0x10313840 + public static byte[] GetBytes(short value); // 0x10313770 + public static byte[] GetBytes(int value); // 0x103139D0 + public static byte[] GetBytes(long value); // 0x10313A20 + public static byte[] GetBytes(ushort value); // 0x10313720 + public static byte[] GetBytes(uint value); // 0x10313930 + public static byte[] GetBytes(ulong value); // 0x10313890 + public static byte[] GetBytes(float value); // 0x10313980 + public static byte[] GetBytes(double value); // 0x10313A70 + private static void PutBytes(void * dst, byte[] src, int start_index, int count); // 0x10313D40 + public static bool ToBoolean(byte[] value, int startIndex); // 0x103140E0 + public static char ToChar(byte[] value, int startIndex); // 0x103141A0 + public static short ToInt16(byte[] value, int startIndex); // 0x103143D0 + public static int ToInt32(byte[] value, int startIndex); // 0x10314440 + public static long ToInt64(byte[] value, int startIndex); // 0x103144B0 + public static ushort ToUInt16(byte[] value, int startIndex); // 0x103148F0 + public static uint ToUInt32(byte[] value, int startIndex); // 0x10314960 + public static ulong ToUInt64(byte[] value, int startIndex); // 0x103149D0 + public static float ToSingle(byte[] value, int startIndex); // 0x10314520 + public static double ToDouble(byte[] value, int startIndex); // 0x10314210 + internal static double SwappableToDouble(byte[] value, int startIndex); // 0x10313E50 + public static string ToString(byte[] value); // 0x10314860 + public static string ToString(byte[] value, int startIndex); // 0x103147D0 + public static string ToString(byte[] value, int startIndex, int length); // 0x10314590 +} + +// Namespace: System +public static class Buffer // TypeDefIndex: 1619 +{ + // Methods + public static int ByteLength(Array array); // 0x103151A0 + public static byte GetByte(Array array, int index); // 0x10315260 + public static void SetByte(Array array, int index, byte value); // 0x10315310 + public static void BlockCopy(Array src, int srcOffset, Array dst, int dstOffset, int count); // 0x10314FD0 + private static int ByteLengthInternal(Array array); // 0x10315190 + private static byte GetByteInternal(Array array, int index); // 0x10315240 + private static void SetByteInternal(Array array, int index, int value); // 0x103152F0 + internal static bool BlockCopyInternal(Array src, int src_offset, Array dest, int dest_offset, int count); // 0x10314FB0 +} + +// Namespace: System +[Serializable] +public class CannotUnloadAppDomainException : SystemException // TypeDefIndex: 1620 +{ + // Fields + private const int Result = -2146234347; // 0x00 + + // Methods + public void .ctor(); // 0x103157D0 + public void .ctor(string message); // 0x103157B0 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 + public void .ctor(string message, Exception innerException); // 0x10315780 +} + +// Namespace: System +[Serializable] +public sealed class CharEnumerator : IEnumerator, IDisposable, ICloneable, IEnumerator`1 // TypeDefIndex: 1621 +{ + // Fields + private string str; // 0x08 + private int index; // 0x0C + private int length; // 0x10 + + // Properties + private object System.Collections.IEnumerator.Current { get; } // 0x103158B0 + public char Current { get; } // 0x103159B0 + + // Methods + internal void .ctor(string s); // 0x10315970 + private void System.IDisposable.Dispose(); // 0x100C5530 + public object Clone(); // 0x10315820 + public bool MoveNext(); // 0x10315890 + public void Reset(); // 0x10113480 +} + +// Namespace: System +public static class Console // TypeDefIndex: 1622 +{ + // Fields + internal static TextWriter stdout; // 0x00 + private static TextWriter stderr; // 0x04 + private static TextReader stdin; // 0x08 + private static Encoding inputEncoding; // 0x0C + private static Encoding outputEncoding; // 0x10 + + // Properties + public static TextWriter Error { get; } // 0x1021A390 + public static TextWriter Out { get; } // 0x1021A480 + public static TextReader In { get; } // 0x1021A3E0 + public static Encoding InputEncoding { get; set; } // 0x1021A430 0x1021A520 + public static Encoding OutputEncoding { get; set; } // 0x1021A4D0 0x1021A590 + + // Methods + private static void .cctor(); // 0x1021A290 + private static void SetEncodings(Encoding inputEncoding, Encoding outputEncoding); // 0x10218900 + public static Stream OpenStandardError(); // 0x10218540 + private static Stream Open(IntPtr handle, FileAccess access, int bufferSize); // 0x10218730 + public static Stream OpenStandardError(int bufferSize); // 0x102184C0 + public static Stream OpenStandardInput(); // 0x10218590 + public static Stream OpenStandardInput(int bufferSize); // 0x102185E0 + public static Stream OpenStandardOutput(); // 0x102186E0 + public static Stream OpenStandardOutput(int bufferSize); // 0x10218660 + public static void SetError(TextWriter newError); // 0x10218BE0 + public static void SetIn(TextReader newIn); // 0x10218C70 + public static void SetOut(TextWriter newOut); // 0x10218D00 + public static void Write(bool value); // 0x10219A90 + public static void Write(char value); // 0x10219930 + public static void Write(char[] buffer); // 0x1021A130 + public static void Write(Decimal value); // 0x10219F50 + public static void Write(double value); // 0x102198B0 + public static void Write(int value); // 0x10219840 + public static void Write(long value); // 0x1021A040 + public static void Write(object value); // 0x10219FD0 + public static void Write(float value); // 0x10219A10 + public static void Write(string value); // 0x10219EE0 + public static void Write(uint value); // 0x102199A0 + public static void Write(ulong value); // 0x1021A1A0 + public static void Write(string format, object arg0); // 0x10219E70 + public static void Write(string format, object[] arg); // 0x10219B00 + public static void Write(char[] buffer, int index, int count); // 0x10219B70 + public static void Write(string format, object arg0, object arg1); // 0x1021A210 + public static void Write(string format, object arg0, object arg1, object arg2); // 0x1021A0B0 + public static void Write(string format, object arg0, object arg1, object arg2, object arg3); // 0x10219BF0 + public static void WriteLine(); // 0x10219760 + public static void WriteLine(bool value); // 0x102193B0 + public static void WriteLine(char value); // 0x10219340 + public static void WriteLine(char[] buffer); // 0x10219680 + public static void WriteLine(Decimal value); // 0x102190E0 + public static void WriteLine(double value); // 0x10219250 + public static void WriteLine(int value); // 0x102191E0 + public static void WriteLine(long value); // 0x102192D0 + public static void WriteLine(object value); // 0x10219000 + public static void WriteLine(float value); // 0x102194A0 + public static void WriteLine(string value); // 0x10219070 + public static void WriteLine(uint value); // 0x10219590 + public static void WriteLine(ulong value); // 0x10219520 + public static void WriteLine(string format, object arg0); // 0x102196F0 + public static void WriteLine(string format, object[] arg); // 0x102197D0 + public static void WriteLine(char[] buffer, int index, int count); // 0x10219160 + public static void WriteLine(string format, object arg0, object arg1); // 0x10219600 + public static void WriteLine(string format, object arg0, object arg1, object arg2); // 0x10219420 + public static void WriteLine(string format, object arg0, object arg1, object arg2, object arg3); // 0x10218D80 + public static int Read(); // 0x10218890 + public static string ReadLine(); // 0x10218820 +} + +// Namespace: System +[Serializable] +public sealed class ConsoleCancelEventArgs : EventArgs // TypeDefIndex: 1623 +{ + // Fields + private bool cancel; // 0x08 + private ConsoleSpecialKey specialKey; // 0x0C + + // Properties + public bool Cancel { get; set; } // 0x100EA020 0x10155000 + public ConsoleSpecialKey SpecialKey { get; } // 0x100C5B30 + + // Methods + internal void .ctor(ConsoleSpecialKey key); // 0x102183B0 +} + +// Namespace: System +[Serializable] +public enum ConsoleColor // TypeDefIndex: 1624 +{ + Black = 0, + DarkBlue = 1, + DarkGreen = 2, + DarkCyan = 3, + DarkRed = 4, + DarkMagenta = 5, + DarkYellow = 6, + Gray = 7, + DarkGray = 8, + Blue = 9, + Green = 10, + Cyan = 11, + Red = 12, + Magenta = 13, + Yellow = 14, + White = 15 +} + +// Namespace: System +[Serializable] +public enum ConsoleKey // TypeDefIndex: 1625 +{ + Backspace = 8, + Tab = 9, + Clear = 12, + Enter = 13, + Pause = 19, + Escape = 27, + Spacebar = 32, + PageUp = 33, + PageDown = 34, + End = 35, + Home = 36, + LeftArrow = 37, + UpArrow = 38, + RightArrow = 39, + DownArrow = 40, + Select = 41, + Print = 42, + Execute = 43, + PrintScreen = 44, + Insert = 45, + Delete = 46, + Help = 47, + D0 = 48, + D1 = 49, + D2 = 50, + D3 = 51, + D4 = 52, + D5 = 53, + D6 = 54, + D7 = 55, + D8 = 56, + D9 = 57, + A = 65, + B = 66, + C = 67, + D = 68, + E = 69, + F = 70, + G = 71, + H = 72, + I = 73, + J = 74, + K = 75, + L = 76, + M = 77, + N = 78, + O = 79, + P = 80, + Q = 81, + R = 82, + S = 83, + T = 84, + U = 85, + V = 86, + W = 87, + X = 88, + Y = 89, + Z = 90, + LeftWindows = 91, + RightWindows = 92, + Applications = 93, + Sleep = 95, + NumPad0 = 96, + NumPad1 = 97, + NumPad2 = 98, + NumPad3 = 99, + NumPad4 = 100, + NumPad5 = 101, + NumPad6 = 102, + NumPad7 = 103, + NumPad8 = 104, + NumPad9 = 105, + Multiply = 106, + Add = 107, + Separator = 108, + Subtract = 109, + Decimal = 110, + Divide = 111, + F1 = 112, + F2 = 113, + F3 = 114, + F4 = 115, + F5 = 116, + F6 = 117, + F7 = 118, + F8 = 119, + F9 = 120, + F10 = 121, + F11 = 122, + F12 = 123, + F13 = 124, + F14 = 125, + F15 = 126, + F16 = 127, + F17 = 128, + F18 = 129, + F19 = 130, + F20 = 131, + F21 = 132, + F22 = 133, + F23 = 134, + F24 = 135, + BrowserBack = 166, + BrowserForward = 167, + BrowserRefresh = 168, + BrowserStop = 169, + BrowserSearch = 170, + BrowserFavorites = 171, + BrowserHome = 172, + VolumeMute = 173, + VolumeDown = 174, + VolumeUp = 175, + MediaNext = 176, + MediaPrevious = 177, + MediaStop = 178, + MediaPlay = 179, + LaunchMail = 180, + LaunchMediaSelect = 181, + LaunchApp1 = 182, + LaunchApp2 = 183, + Oem1 = 186, + OemPlus = 187, + OemComma = 188, + OemMinus = 189, + OemPeriod = 190, + Oem2 = 191, + Oem3 = 192, + Oem4 = 219, + Oem5 = 220, + Oem6 = 221, + Oem7 = 222, + Oem8 = 223, + Oem102 = 226, + Process = 229, + Packet = 231, + Attention = 246, + CrSel = 247, + ExSel = 248, + EraseEndOfFile = 249, + Play = 250, + Zoom = 251, + NoName = 252, + Pa1 = 253, + OemClear = 254 +} + +// Namespace: System +[Serializable] +public struct ConsoleKeyInfo // TypeDefIndex: 1626 +{ + // Fields + internal static ConsoleKeyInfo Empty; // 0x00 + private ConsoleKey key; // 0x08 + private char keychar; // 0x0C + private ConsoleModifiers modifiers; // 0x10 + + // Properties + public ConsoleKey Key { get; } // 0x10003A80 + public char KeyChar { get; } // 0x10018DB0 + public ConsoleModifiers Modifiers { get; } // 0x100039B0 + + // Methods + public void .ctor(char keyChar, ConsoleKey key, bool shift, bool alt, bool control); // 0x10018D80 + internal void .ctor(ConsoleKeyInfo other); // 0x10018D60 + private static void .cctor(); // 0x10218410 + internal void SetKey(ConsoleKey key); // 0x10005950 + internal void SetKeyChar(char keyChar); // 0x10018D30 + internal void SetModifiers(bool shift, bool alt, bool control); // 0x10018D40 + public override bool Equals(object value); // 0x10018B90 + public bool Equals(ConsoleKeyInfo obj); // 0x10018C30 + public override int GetHashCode(); // 0x10018C60 + public static bool op_Equality(ConsoleKeyInfo a, ConsoleKeyInfo b); // 0x10218460 + public static bool op_Inequality(ConsoleKeyInfo a, ConsoleKeyInfo b); // 0x10218490 +} + +// Namespace: System +[Serializable] +public enum ConsoleModifiers // TypeDefIndex: 1627 +{ + Alt = 1, + Shift = 2, + Control = 4 +} + +// Namespace: System +[Serializable] +public enum ConsoleSpecialKey // TypeDefIndex: 1628 +{ + ControlC = 0, + ControlBreak = 1 +} + +// Namespace: System +[Serializable] +public abstract class ContextBoundObject : MarshalByRefObject // TypeDefIndex: 1629 +{ + // Methods + protected void .ctor(); // 0x100C5970 +} + +// Namespace: System +[Serializable] +public class ContextMarshalException : SystemException // TypeDefIndex: 1630 +{ + // Fields + private const int Result = -2146233084; // 0x00 + + // Methods + public void .ctor(); // 0x1021A600 + public void .ctor(string message); // 0x1021A650 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 + public void .ctor(string message, Exception inner); // 0x1021A670 +} + +// Namespace: System +[Serializable] +public class ContextStaticAttribute : Attribute // TypeDefIndex: 1631 +{ + // Methods + public void .ctor(); // 0x100C5970 +} + +// Namespace: System +internal class ControlCharacters // TypeDefIndex: 1632 +{ + // Fields + public const int Intr = 0; // 0x00 + public const int Quit = 1; // 0x00 + public const int Erase = 2; // 0x00 + public const int Kill = 3; // 0x00 + public const int EOF = 4; // 0x00 + public const int Time = 5; // 0x00 + public const int Min = 6; // 0x00 + public const int SWTC = 7; // 0x00 + public const int Start = 8; // 0x00 + public const int Stop = 9; // 0x00 + public const int Susp = 10; // 0x00 + public const int EOL = 11; // 0x00 + public const int Reprint = 12; // 0x00 + public const int Discard = 13; // 0x00 + public const int WErase = 14; // 0x00 + public const int LNext = 15; // 0x00 + public const int EOL2 = 16; // 0x00 + + // Methods + public void .ctor(); // 0x100BF000 +} + +// Namespace: System +public static class Convert // TypeDefIndex: 1633 +{ + // Fields + private const int MaxBytesPerLine = 57; // 0x00 + public static readonly object DBNull; // 0x00 + private static readonly Type[] conversionTable; // 0x04 + + // Methods + private static void .cctor(); // 0x10223460 + private static byte[] InternalFromBase64String(string str, bool allowWhitespaceOnly); // 0x1021B890 + private static byte[] InternalFromBase64CharArray(char[] arr, int offset, int length); // 0x1021B870 + public static byte[] FromBase64CharArray(char[] inArray, int offset, int length); // 0x1021B670 + public static byte[] FromBase64String(string s); // 0x1021B760 + public static TypeCode GetTypeCode(object value); // 0x1021B800 + public static bool IsDBNull(object value); // 0x1021B8B0 + public static int ToBase64CharArray(byte[] inArray, int offsetIn, int length, char[] outArray, int offsetOut); // 0x1021B930 + public static string ToBase64String(byte[] inArray); // 0x1021C130 + public static string ToBase64String(byte[] inArray, int offset, int length); // 0x1021BEB0 + public static string ToBase64String(byte[] inArray, Base64FormattingOptions options); // 0x1021BE20 + public static string ToBase64String(byte[] inArray, int offset, int length, Base64FormattingOptions options); // 0x1021BFA0 + public static int ToBase64CharArray(byte[] inArray, int offsetIn, int length, char[] outArray, int offsetOut, Base64FormattingOptions options); // 0x1021BAA0 + private static StringBuilder ToBase64StringBuilderWithLine(byte[] inArray, int offset, int length); // 0x1021BCA0 + public static bool ToBoolean(bool value); // 0x1021C280 + public static bool ToBoolean(byte value); // 0x1021C290 + public static bool ToBoolean(char value); // 0x1021C320 + public static bool ToBoolean(DateTime value); // 0x1021C3C0 + public static bool ToBoolean(Decimal value); // 0x1021C2A0 + public static bool ToBoolean(double value); // 0x1021C420 + public static bool ToBoolean(float value); // 0x1021C260 + public static bool ToBoolean(int value); // 0x1021C390 + public static bool ToBoolean(long value); // 0x1021C3A0 + public static bool ToBoolean(sbyte value); // 0x1021C290 + public static bool ToBoolean(short value); // 0x1021C380 + public static bool ToBoolean(string value); // 0x1021C5E0 + public static bool ToBoolean(string value, IFormatProvider provider); // 0x1021C4C0 + public static bool ToBoolean(uint value); // 0x1021C390 + public static bool ToBoolean(ulong value); // 0x1021C3A0 + public static bool ToBoolean(ushort value); // 0x1021C380 + public static bool ToBoolean(object value); // 0x1021C520 + public static bool ToBoolean(object value, IFormatProvider provider); // 0x1021C440 + public static byte ToByte(bool value); // 0x1021C280 + public static byte ToByte(byte value); // 0x1021C280 + public static byte ToByte(char value); // 0x1021C6B0 + public static byte ToByte(DateTime value); // 0x1021C790 + public static byte ToByte(Decimal value); // 0x1021CC10 + public static byte ToByte(double value); // 0x1021CE00 + public static byte ToByte(float value); // 0x1021C7E0 + public static byte ToByte(int value); // 0x1021C720 + public static byte ToByte(long value); // 0x1021CB90 + public static byte ToByte(sbyte value); // 0x1021CB20 + public static byte ToByte(short value); // 0x1021CA00 + public static byte ToByte(string value); // 0x1021CB00 + public static byte ToByte(string value, IFormatProvider provider); // 0x1021C970 + public static byte ToByte(string value, int fromBase); // 0x1021C8E0 + public static byte ToByte(uint value); // 0x1021C990 + public static byte ToByte(ulong value); // 0x1021CD90 + public static byte ToByte(ushort value); // 0x1021C640 + public static byte ToByte(object value); // 0x1021CF00 + public static byte ToByte(object value, IFormatProvider provider); // 0x1021CA80 + public static char ToChar(bool value); // 0x1021D4E0 + public static char ToChar(byte value); // 0x1021D220 + public static char ToChar(char value); // 0x1021D2F0 + public static char ToChar(DateTime value); // 0x1021D490 + public static char ToChar(Decimal value); // 0x1021D1D0 + public static char ToChar(double value); // 0x1021D2A0 + public static char ToChar(int value); // 0x1021D160 + public static char ToChar(long value); // 0x1021D3C0 + public static char ToChar(float value); // 0x1021CFE0 + public static char ToChar(sbyte value); // 0x1021D230 + public static char ToChar(short value); // 0x1021D0F0 + public static char ToChar(string value); // 0x1021D0A0 + public static char ToChar(string value, IFormatProvider provider); // 0x1021D440 + public static char ToChar(uint value); // 0x1021D030 + public static char ToChar(ulong value); // 0x1021D530 + public static char ToChar(ushort value); // 0x1021D2F0 + public static char ToChar(object value); // 0x1021D300 + public static char ToChar(object value, IFormatProvider provider); // 0x1021D5A0 + public static DateTime ToDateTime(string value); // 0x1021D860 + public static DateTime ToDateTime(string value, IFormatProvider provider); // 0x1021D620 + public static DateTime ToDateTime(bool value); // 0x1021D710 + public static DateTime ToDateTime(byte value); // 0x1021D810 + public static DateTime ToDateTime(char value); // 0x1021D760 + public static DateTime ToDateTime(DateTime value); // 0x1021D800 + public static DateTime ToDateTime(Decimal value); // 0x1021DBA0 + public static DateTime ToDateTime(double value); // 0x1021D7B0 + public static DateTime ToDateTime(short value); // 0x1021D950 + public static DateTime ToDateTime(int value); // 0x1021D6C0 + public static DateTime ToDateTime(long value); // 0x1021DA40 + public static DateTime ToDateTime(float value); // 0x1021D9A0 + public static DateTime ToDateTime(object value); // 0x1021DC40 + public static DateTime ToDateTime(object value, IFormatProvider provider); // 0x1021DAE0 + public static DateTime ToDateTime(sbyte value); // 0x1021D9F0 + public static DateTime ToDateTime(ushort value); // 0x1021DA90 + public static DateTime ToDateTime(uint value); // 0x1021D900 + public static DateTime ToDateTime(ulong value); // 0x1021DBF0 + public static Decimal ToDecimal(bool value); // 0x1021DEA0 + public static Decimal ToDecimal(byte value); // 0x1021DFF0 + public static Decimal ToDecimal(char value); // 0x1021DE00 + public static Decimal ToDecimal(DateTime value); // 0x1021DE50 + public static Decimal ToDecimal(Decimal value); // 0x1021D800 + public static Decimal ToDecimal(double value); // 0x1021E050 + public static Decimal ToDecimal(float value); // 0x1021E1A0 + public static Decimal ToDecimal(int value); // 0x1021E4B0 + public static Decimal ToDecimal(long value); // 0x1021E3B0 + public static Decimal ToDecimal(sbyte value); // 0x1021DD40 + public static Decimal ToDecimal(short value); // 0x1021DDA0 + public static Decimal ToDecimal(string value); // 0x1021E210 + public static Decimal ToDecimal(string value, IFormatProvider provider); // 0x1021E420 + public static Decimal ToDecimal(uint value); // 0x1021DF80 + public static Decimal ToDecimal(ulong value); // 0x1021DF10 + public static Decimal ToDecimal(ushort value); // 0x1021E2A0 + public static Decimal ToDecimal(object value); // 0x1021E0C0 + public static Decimal ToDecimal(object value, IFormatProvider provider); // 0x1021E300 + public static double ToDouble(bool value); // 0x1021E6E0 + public static double ToDouble(byte value); // 0x1021E6E0 + public static double ToDouble(char value); // 0x1021E690 + public static double ToDouble(DateTime value); // 0x1021E510 + public static double ToDouble(Decimal value); // 0x1021E580 + public static double ToDouble(double value); // 0x1021E7C0 + public static double ToDouble(float value); // 0x1021E8B0 + public static double ToDouble(int value); // 0x1021E630 + public static double ToDouble(long value); // 0x1021E670 + public static double ToDouble(sbyte value); // 0x1021E700 + public static double ToDouble(short value); // 0x1021E560 + public static double ToDouble(string value); // 0x1021E5E0 + public static double ToDouble(string value, IFormatProvider provider); // 0x1021E7A0 + public static double ToDouble(uint value); // 0x1021E600 + public static double ToDouble(ulong value); // 0x1021E650 + public static double ToDouble(ushort value); // 0x1021E890 + public static double ToDouble(object value); // 0x1021E7D0 + public static double ToDouble(object value, IFormatProvider provider); // 0x1021E720 + public static short ToInt16(bool value); // 0x1021D220 + public static short ToInt16(byte value); // 0x1021D220 + public static short ToInt16(char value); // 0x1021ECC0 + public static short ToInt16(DateTime value); // 0x1021EC70 + public static short ToInt16(Decimal value); // 0x1021E980 + public static short ToInt16(double value); // 0x1021F050 + public static short ToInt16(float value); // 0x1021ED30 + public static short ToInt16(int value); // 0x1021EE60 + public static short ToInt16(long value); // 0x1021EED0 + public static short ToInt16(sbyte value); // 0x1021EC60 + public static short ToInt16(short value); // 0x1021D2F0 + public static short ToInt16(string value); // 0x1021EE40 + public static short ToInt16(string value, IFormatProvider provider); // 0x1021F0F0 + public static short ToInt16(string value, int fromBase); // 0x1021EF50 + public static short ToInt16(uint value); // 0x1021EDD0 + public static short ToInt16(ulong value); // 0x1021EB00 + public static short ToInt16(ushort value); // 0x1021EBF0 + public static short ToInt16(object value); // 0x1021E8C0 + public static short ToInt16(object value, IFormatProvider provider); // 0x1021EB70 + public static int ToInt32(bool value); // 0x1021D220 + public static int ToInt32(byte value); // 0x1021D220 + public static int ToInt32(char value); // 0x1021F120 + public static int ToInt32(DateTime value); // 0x1021F420 + public static int ToInt32(Decimal value); // 0x1021F4F0 + public static int ToInt32(double value); // 0x1021F300 + public static int ToInt32(float value); // 0x1021F670 + public static int ToInt32(int value); // 0x100F7810 + public static int ToInt32(long value); // 0x1021F1F0 + public static int ToInt32(sbyte value); // 0x1021F110 + public static int ToInt32(short value); // 0x1021F290 + public static int ToInt32(string value); // 0x1021F270 + public static int ToInt32(string value, IFormatProvider provider); // 0x1021F7A0 + public static int ToInt32(string value, int fromBase); // 0x1021F2A0 + public static int ToInt32(uint value); // 0x1021F3B0 + public static int ToInt32(ulong value); // 0x1021F730 + public static int ToInt32(ushort value); // 0x1021F120 + public static int ToInt32(object value); // 0x1021F130 + public static int ToInt32(object value, IFormatProvider provider); // 0x1021F470 + public static long ToInt64(bool value); // 0x1021FB70 + public static long ToInt64(byte value); // 0x1021FB70 + public static long ToInt64(char value); // 0x1021FB80 + public static long ToInt64(DateTime value); // 0x1021F7E0 + public static long ToInt64(Decimal value); // 0x1021FBA0 + public static long ToInt64(double value); // 0x1021F830 + public static long ToInt64(float value); // 0x1021FAA0 + public static long ToInt64(int value); // 0x100FCEB0 + public static long ToInt64(long value); // 0x1021FD30 + public static long ToInt64(sbyte value); // 0x1021F950 + public static long ToInt64(short value); // 0x1021FB90 + public static long ToInt64(string value); // 0x1021FB40 + public static long ToInt64(string value, IFormatProvider provider); // 0x1021F7C0 + public static long ToInt64(string value, int fromBase); // 0x1021FD40 + public static long ToInt64(uint value); // 0x1021FB60 + public static long ToInt64(ulong value); // 0x1021F8D0 + public static long ToInt64(ushort value); // 0x1021FB80 + public static long ToInt64(object value); // 0x1021F960 + public static long ToInt64(object value, IFormatProvider provider); // 0x1021FA20 + public static sbyte ToSByte(bool value); // 0x1021C280 + public static sbyte ToSByte(byte value); // 0x102203D0 + public static sbyte ToSByte(char value); // 0x102204B0 + public static sbyte ToSByte(DateTime value); // 0x10220600 + public static sbyte ToSByte(Decimal value); // 0x1021FDA0 + public static sbyte ToSByte(double value); // 0x10220330 + public static sbyte ToSByte(float value); // 0x10220070 + public static sbyte ToSByte(int value); // 0x10220440 + public static sbyte ToSByte(long value); // 0x1021FF10 + public static sbyte ToSByte(sbyte value); // 0x1021C280 + public static sbyte ToSByte(short value); // 0x10220650 + public static sbyte ToSByte(string value); // 0x10220310 + public static sbyte ToSByte(string value, IFormatProvider provider); // 0x10220520 + public static sbyte ToSByte(string value, int fromBase); // 0x10220250 + public static sbyte ToSByte(uint value); // 0x10220000 + public static sbyte ToSByte(ulong value); // 0x10220590 + public static sbyte ToSByte(ushort value); // 0x1021FF90 + public static sbyte ToSByte(object value); // 0x10220110 + public static sbyte ToSByte(object value, IFormatProvider provider); // 0x102201D0 + public static float ToSingle(bool value); // 0x10220880 + public static float ToSingle(byte value); // 0x10220880 + public static float ToSingle(char value); // 0x10220790 + public static float ToSingle(DateTime value); // 0x102209F0 + public static float ToSingle(Decimal value); // 0x102206E0 + public static float ToSingle(double value); // 0x10220740 + public static float ToSingle(float value); // 0x1021E8B0 + public static float ToSingle(int value); // 0x102206C0 + public static float ToSingle(long value); // 0x102208C0 + public static float ToSingle(sbyte value); // 0x10220750 + public static float ToSingle(short value); // 0x102207E0 + public static float ToSingle(string value); // 0x102208E0 + public static float ToSingle(string value, IFormatProvider provider); // 0x10220A40 + public static float ToSingle(uint value); // 0x102209C0 + public static float ToSingle(ulong value); // 0x102208A0 + public static float ToSingle(ushort value); // 0x10220770 + public static float ToSingle(object value); // 0x10220900 + public static float ToSingle(object value, IFormatProvider provider); // 0x10220800 + public static string ToString(bool value); // 0x10220E00 + public static string ToString(bool value, IFormatProvider provider); // 0x10220E00 + public static string ToString(byte value); // 0x10220D80 + public static string ToString(byte value, IFormatProvider provider); // 0x10220DE0 + public static string ToString(byte value, int toBase); // 0x102212E0 + public static string ToString(char value); // 0x10220DA0 + public static string ToString(char value, IFormatProvider provider); // 0x10220DA0 + public static string ToString(DateTime value); // 0x10220C50 + public static string ToString(DateTime value, IFormatProvider provider); // 0x10221490 + public static string ToString(Decimal value); // 0x10220BD0 + public static string ToString(Decimal value, IFormatProvider provider); // 0x10221450 + public static string ToString(double value); // 0x10221100 + public static string ToString(double value, IFormatProvider provider); // 0x10221430 + public static string ToString(float value); // 0x10220D60 + public static string ToString(float value, IFormatProvider provider); // 0x102214B0 + public static string ToString(int value); // 0x102210E0 + public static string ToString(int value, int toBase); // 0x10220E60 + public static string ToString(int value, IFormatProvider provider); // 0x10220DC0 + public static string ToString(long value); // 0x10221160 + public static string ToString(long value, int toBase); // 0x10221180 + public static string ToString(long value, IFormatProvider provider); // 0x10220E40 + public static string ToString(object value); // 0x10220FB0 + public static string ToString(object value, IFormatProvider provider); // 0x10220C90 + public static string ToString(sbyte value); // 0x102210C0 + public static string ToString(sbyte value, IFormatProvider provider); // 0x10220C30 + public static string ToString(short value); // 0x10220BF0 + public static string ToString(short value, int toBase); // 0x10220A80 + public static string ToString(short value, IFormatProvider provider); // 0x10221120 + public static string ToString(string value); // 0x100F7810 + public static string ToString(string value, IFormatProvider provider); // 0x100F7810 + public static string ToString(uint value); // 0x10220A60 + public static string ToString(uint value, IFormatProvider provider); // 0x10220C10 + public static string ToString(ulong value); // 0x10221140 + public static string ToString(ulong value, IFormatProvider provider); // 0x10220C70 + public static string ToString(ushort value); // 0x10221470 + public static string ToString(ushort value, IFormatProvider provider); // 0x10220E20 + public static ushort ToUInt16(bool value); // 0x1021D220 + public static ushort ToUInt16(byte value); // 0x1021D220 + public static ushort ToUInt16(char value); // 0x1021D2F0 + public static ushort ToUInt16(DateTime value); // 0x102224F0 + public static ushort ToUInt16(Decimal value); // 0x10222240 + public static ushort ToUInt16(double value); // 0x10221F70 + public static ushort ToUInt16(float value); // 0x10222540 + public static ushort ToUInt16(int value); // 0x10222160 + public static ushort ToUInt16(long value); // 0x10222000 + public static ushort ToUInt16(sbyte value); // 0x10222080 + public static ushort ToUInt16(short value); // 0x102223C0 + public static ushort ToUInt16(string value); // 0x10221EB0 + public static ushort ToUInt16(string value, IFormatProvider provider); // 0x10221ED0 + public static ushort ToUInt16(string value, int fromBase); // 0x102225E0 + public static ushort ToUInt16(uint value); // 0x102220F0 + public static ushort ToUInt16(ulong value); // 0x102221D0 + public static ushort ToUInt16(ushort value); // 0x1021D2F0 + public static ushort ToUInt16(object value); // 0x10222430 + public static ushort ToUInt16(object value, IFormatProvider provider); // 0x10221EF0 + public static uint ToUInt32(bool value); // 0x1021D220 + public static uint ToUInt32(byte value); // 0x1021D220 + public static uint ToUInt32(char value); // 0x1021F120 + public static uint ToUInt32(DateTime value); // 0x10222D50 + public static uint ToUInt32(Decimal value); // 0x102226A0 + public static uint ToUInt32(double value); // 0x10222820 + public static uint ToUInt32(float value); // 0x10222B10 + public static uint ToUInt32(int value); // 0x10222990 + public static uint ToUInt32(long value); // 0x102228B0 + public static uint ToUInt32(sbyte value); // 0x10222CE0 + public static uint ToUInt32(short value); // 0x10222A00 + public static uint ToUInt32(string value); // 0x10222DA0 + public static uint ToUInt32(string value, IFormatProvider provider); // 0x10222A70 + public static uint ToUInt32(string value, int fromBase); // 0x10222930 + public static uint ToUInt32(uint value); // 0x100F7810 + public static uint ToUInt32(ulong value); // 0x10222BB0 + public static uint ToUInt32(ushort value); // 0x1021F120 + public static uint ToUInt32(object value); // 0x10222C20 + public static uint ToUInt32(object value, IFormatProvider provider); // 0x10222A90 + public static ulong ToUInt64(bool value); // 0x1021FB70 + public static ulong ToUInt64(byte value); // 0x1021FB70 + public static ulong ToUInt64(char value); // 0x1021FB80 + public static ulong ToUInt64(DateTime value); // 0x10223000 + public static ulong ToUInt64(Decimal value); // 0x10222DC0 + public static ulong ToUInt64(double value); // 0x102232F0 + public static ulong ToUInt64(float value); // 0x10223050 + public static ulong ToUInt64(int value); // 0x10223280 + public static ulong ToUInt64(long value); // 0x102233F0 + public static ulong ToUInt64(sbyte value); // 0x10223200 + public static ulong ToUInt64(short value); // 0x102230F0 + public static ulong ToUInt64(string value); // 0x102231E0 + public static ulong ToUInt64(string value, IFormatProvider provider); // 0x10223260 + public static ulong ToUInt64(string value, int fromBase); // 0x10223390 + public static ulong ToUInt64(uint value); // 0x1021FB60 + public static ulong ToUInt64(ulong value); // 0x1021FD30 + public static ulong ToUInt64(ushort value); // 0x1021FB80 + public static ulong ToUInt64(object value); // 0x10222F40 + public static ulong ToUInt64(object value, IFormatProvider provider); // 0x10223160 + public static object ChangeType(object value, Type conversionType); // 0x1021A860 + public static object ChangeType(object value, TypeCode typeCode); // 0x1021A6A0 + public static object ChangeType(object value, Type conversionType, IFormatProvider provider); // 0x1021A980 + public static object ChangeType(object value, TypeCode typeCode, IFormatProvider provider); // 0x1021A7E0 + private static bool NotValidBase(int value); // 0x1021B900 + private static int ConvertFromBase(string value, int fromBase, bool unsigned); // 0x1021ADF0 + private static long ConvertFromBase64(string value, int fromBase, bool unsigned); // 0x1021AA10 + private static void EndianSwap(byte[] value); // 0x1021B5D0 + private static string ConvertToBase2(byte[] value); // 0x1021B2F0 + private static string ConvertToBase8(byte[] value); // 0x1021B420 + private static string ConvertToBase16(byte[] value); // 0x1021B190 + internal static object ToType(object value, Type conversionType, IFormatProvider provider, bool try_target_to_type); // 0x102214D0 +} + +// Namespace: System +[Serializable] +public sealed class DBNull : IConvertible, ISerializable // TypeDefIndex: 1634 +{ + // Fields + public static readonly DBNull Value; // 0x00 + + // Methods + private void .ctor(); // 0x100BF000 + private void .ctor(SerializationInfo info, StreamingContext context); // 0x102DF390 + private static void .cctor(); // 0x102DF340 + private bool System.IConvertible.ToBoolean(IFormatProvider provider); // 0x102DED60 + private byte System.IConvertible.ToByte(IFormatProvider provider); // 0x102DEDB0 + private char System.IConvertible.ToChar(IFormatProvider provider); // 0x102DEE00 + private DateTime System.IConvertible.ToDateTime(IFormatProvider provider); // 0x102DEE50 + private Decimal System.IConvertible.ToDecimal(IFormatProvider provider); // 0x102DEEA0 + private double System.IConvertible.ToDouble(IFormatProvider provider); // 0x102DEEF0 + private short System.IConvertible.ToInt16(IFormatProvider provider); // 0x102DEF40 + private int System.IConvertible.ToInt32(IFormatProvider provider); // 0x102DEF90 + private long System.IConvertible.ToInt64(IFormatProvider provider); // 0x102DEFE0 + private sbyte System.IConvertible.ToSByte(IFormatProvider provider); // 0x102DF030 + private float System.IConvertible.ToSingle(IFormatProvider provider); // 0x102DF080 + private object System.IConvertible.ToType(Type targetType, IFormatProvider provider); // 0x102DF0D0 + private ushort System.IConvertible.ToUInt16(IFormatProvider provider); // 0x102DF1B0 + private uint System.IConvertible.ToUInt32(IFormatProvider provider); // 0x102DF200 + private ulong System.IConvertible.ToUInt64(IFormatProvider provider); // 0x102DF250 + public void GetObjectData(SerializationInfo info, StreamingContext context); // 0x102DED40 + public TypeCode GetTypeCode(); // 0x1016F1E0 + public override string ToString(); // 0x102DF2A0 + public string ToString(IFormatProvider provider); // 0x102DF2F0 +} + +// Namespace: System +[Serializable] +public sealed class DataMisalignedException : SystemException // TypeDefIndex: 1635 +{ + // Fields + private const int Result = -2146233023; // 0x00 + + // Methods + public void .ctor(); // 0x102DF3F0 + public void .ctor(string message); // 0x102DF470 + public void .ctor(string message, Exception innerException); // 0x102DF440 +} + +// Namespace: System +[Serializable] +public struct DateTime : IFormattable, IConvertible, IComparable, IComparable`1, IEquatable`1 // TypeDefIndex: 1636 +{ + // Fields + private const int dp400 = 146097; // 0x00 + private const int dp100 = 36524; // 0x00 + private const int dp4 = 1461; // 0x00 + private const long w32file_epoch = 504911232000000000; // 0x00 + private const long MAX_VALUE_TICKS = 3155378975999999999; // 0x00 + internal const long UnixEpoch = 621355968000000000; // 0x00 + private const long ticks18991230 = 599264352000000000; // 0x00 + private const double OAMinValue = -657435; // 0x00 + private const double OAMaxValue = 2958466; // 0x00 + private const string formatExceptionMessage = "String was not recognized as a valid DateTime."; // 0x00 + private TimeSpan ticks; // 0x08 + private DateTimeKind kind; // 0x10 + public static readonly DateTime MaxValue; // 0x00 + public static readonly DateTime MinValue; // 0x10 + private static readonly string[] ParseTimeFormats; // 0x20 + private static readonly string[] ParseYearDayMonthFormats; // 0x24 + private static readonly string[] ParseYearMonthDayFormats; // 0x28 + private static readonly string[] ParseDayMonthYearFormats; // 0x2C + private static readonly string[] ParseMonthDayYearFormats; // 0x30 + private static readonly string[] MonthDayShortFormats; // 0x34 + private static readonly string[] DayMonthShortFormats; // 0x38 + private static readonly int[] daysmonth; // 0x3C + private static readonly int[] daysmonthleap; // 0x40 + private static object to_local_time_span_object; // 0x44 + private static long last_now; // 0x48 + + // Properties + public DateTime Date { get; } // 0x1001E350 + public int Month { get; } // 0x1001D1A0 + public int Day { get; } // 0x1001D0E0 + public DayOfWeek DayOfWeek { get; } // 0x1001D090 + public int DayOfYear { get; } // 0x1001D0C0 + public TimeSpan TimeOfDay { get; } // 0x1001D1F0 + public int Hour { get; } // 0x1001D100 + public int Minute { get; } // 0x1001D180 + public int Second { get; } // 0x1001D1D0 + public int Millisecond { get; } // 0x1001D160 + public static DateTime Now { get; } // 0x102EC180 + public long Ticks { get; } // 0x10019A10 + public static DateTime Today { get; } // 0x102EC380 + public static DateTime UtcNow { get; } // 0x102EC430 + public int Year { get; } // 0x1001D270 + public DateTimeKind Kind { get; } // 0x100039B0 + + // Methods + public void .ctor(long ticks); // 0x1001E2A0 + public void .ctor(int year, int month, int day); // 0x1001E310 + public void .ctor(int year, int month, int day, int hour, int minute, int second); // 0x1001E130 + public void .ctor(int year, int month, int day, int hour, int minute, int second, int millisecond); // 0x1001E340 + public void .ctor(int year, int month, int day, Calendar calendar); // 0x1001E1F0 + public void .ctor(int year, int month, int day, int hour, int minute, int second, Calendar calendar); // 0x1001E2E0 + public void .ctor(int year, int month, int day, int hour, int minute, int second, int millisecond, Calendar calendar); // 0x1001E1E0 + internal void .ctor(bool check, TimeSpan value); // 0x1001E2C0 + public void .ctor(long ticks, DateTimeKind kind); // 0x1001E270 + public void .ctor(int year, int month, int day, int hour, int minute, int second, DateTimeKind kind); // 0x1001E1A0 + public void .ctor(int year, int month, int day, int hour, int minute, int second, int millisecond, DateTimeKind kind); // 0x1001E160 + public void .ctor(int year, int month, int day, int hour, int minute, int second, int millisecond, Calendar calendar, DateTimeKind kind); // 0x1001E220 + private static void .cctor(); // 0x102EA320 + private bool System.IConvertible.ToBoolean(IFormatProvider provider); // 0x1001DA20 + private byte System.IConvertible.ToByte(IFormatProvider provider); // 0x1001DA40 + private char System.IConvertible.ToChar(IFormatProvider provider); // 0x1001DA60 + private DateTime System.IConvertible.ToDateTime(IFormatProvider provider); // 0x1001DA80 + private Decimal System.IConvertible.ToDecimal(IFormatProvider provider); // 0x1001DAA0 + private double System.IConvertible.ToDouble(IFormatProvider provider); // 0x1001DAC0 + private short System.IConvertible.ToInt16(IFormatProvider provider); // 0x1001DAE0 + private int System.IConvertible.ToInt32(IFormatProvider provider); // 0x1001DB00 + private long System.IConvertible.ToInt64(IFormatProvider provider); // 0x1001DB20 + private sbyte System.IConvertible.ToSByte(IFormatProvider provider); // 0x1001DB40 + private float System.IConvertible.ToSingle(IFormatProvider provider); // 0x1001DB60 + private object System.IConvertible.ToType(Type targetType, IFormatProvider provider); // 0x1001DB80 + private ushort System.IConvertible.ToUInt16(IFormatProvider provider); // 0x1001DCF0 + private uint System.IConvertible.ToUInt32(IFormatProvider provider); // 0x1001DD10 + private ulong System.IConvertible.ToUInt64(IFormatProvider provider); // 0x1001DD30 + private static int AbsoluteDays(int year, int month, int day); // 0x102E4280 + private int FromTicks(Which what); // 0x1001D750 + internal static long GetTimeMonotonic(); // 0x102E5E00 + internal static long GetNow(); // 0x102E5DF0 + public DateTime Add(TimeSpan value); // 0x1001D4D0 + public DateTime AddDays(double value); // 0x1001D290 + public DateTime AddTicks(long value); // 0x1001D460 + public DateTime AddHours(double value); // 0x1001D2F0 + public DateTime AddMilliseconds(double value); // 0x1001D330 + private DateTime AddRoundedMilliseconds(double ms); // 0x1001D3E0 + public DateTime AddMinutes(double value); // 0x1001D370 + public DateTime AddMonths(int months); // 0x1001D3B0 + public DateTime AddSeconds(double value); // 0x1001D420 + public DateTime AddYears(int value); // 0x1001D490 + public static int Compare(DateTime t1, DateTime t2); // 0x102E4AC0 + public int CompareTo(object value); // 0x1001D550 + public bool IsDaylightSavingTime(); // 0x1001D900 + public int CompareTo(DateTime value); // 0x1001D520 + public bool Equals(DateTime value); // 0x1001D6F0 + public long ToBinary(); // 0x1001DD50 + public static DateTime FromBinary(long dateData); // 0x102E5560 + public static DateTime SpecifyKind(DateTime value, DateTimeKind kind); // 0x102E6850 + public static int DaysInMonth(int year, int month); // 0x102E52F0 + public override bool Equals(object value); // 0x1001D640 + public static bool Equals(DateTime t1, DateTime t2); // 0x102E53F0 + public static DateTime FromFileTime(long fileTime); // 0x102E56C0 + public static DateTime FromFileTimeUtc(long fileTime); // 0x102E5630 + public static DateTime FromOADate(double d); // 0x102E5770 + public string[] GetDateTimeFormats(); // 0x1001D760 + public string[] GetDateTimeFormats(char format); // 0x1001D7D0 + public string[] GetDateTimeFormats(IFormatProvider provider); // 0x1001D7C0 + public string[] GetDateTimeFormats(char format, IFormatProvider provider); // 0x1001D8E0 + private string[] GetDateTimeFormats(bool adjustutc, string[] patterns, DateTimeFormatInfo dfi); // 0x1001D8D0 + private void CheckDateTimeKind(DateTimeKind kind); // 0x1001D510 + public override int GetHashCode(); // 0x10003A80 + public TypeCode GetTypeCode(); // 0x1001D8F0 + public static bool IsLeapYear(int year); // 0x102E5E10 + public static DateTime Parse(string s); // 0x102E6700 + public static DateTime Parse(string s, IFormatProvider provider); // 0x102E65F0 + public static DateTime Parse(string s, IFormatProvider provider, DateTimeStyles styles); // 0x102E6520 + internal static bool CoreParse(string s, IFormatProvider provider, DateTimeStyles styles, out DateTime result, out DateTimeOffset dto, bool setExceptionOnError, Exception exception); // 0x102E4B60 + public static DateTime ParseExact(string s, string format, IFormatProvider provider); // 0x102E63E0 + private static string[] YearMonthDayFormats(DateTimeFormatInfo dfi, bool setExceptionOnError, Exception exc); // 0x102E75D0 + private static int _ParseNumber(string s, int valuePos, int min_digits, int digits, bool leadingzero, bool sloppy_parsing, out int num_parsed); // 0x102EA010 + private static int _ParseEnum(string s, int sPos, string[] values, string[] invValues, bool exact, out int num_parsed); // 0x102E9E30 + private static bool _ParseString(string s, int sPos, int maxlength, string value, out int num_parsed); // 0x102EA180 + private static bool _ParseAmPm(string s, int valuePos, int num, DateTimeFormatInfo dfi, bool exact, out int num_parsed, int ampm); // 0x102E9A70 + private static bool _ParseTimeSeparator(string s, int sPos, DateTimeFormatInfo dfi, bool exact, out int num_parsed); // 0x102EA260 + private static bool _ParseDateSeparator(string s, int sPos, DateTimeFormatInfo dfi, bool exact, out int num_parsed); // 0x102E9D00 + private static bool IsLetter(string s, int pos); // 0x102E5EC0 + private static bool _DoParse(string s, string firstPart, string secondPart, bool exact, out DateTime result, out DateTimeOffset dto, DateTimeFormatInfo dfi, DateTimeStyles style, bool firstPartIsDate, bool incompleteFormat, bool longYear); // 0x102E7890 + public static DateTime ParseExact(string s, string format, IFormatProvider provider, DateTimeStyles style); // 0x102E5F40 + public static DateTime ParseExact(string s, string[] formats, IFormatProvider provider, DateTimeStyles style); // 0x102E6040 + private static void CheckStyle(DateTimeStyles style); // 0x102E48C0 + public static bool TryParse(string s, out DateTime result); // 0x102E7350 + public static bool TryParse(string s, IFormatProvider provider, DateTimeStyles styles, out DateTime result); // 0x102E7490 + public static bool TryParseExact(string s, string format, IFormatProvider provider, DateTimeStyles style, out DateTime result); // 0x102E7290 + public static bool TryParseExact(string s, string[] formats, IFormatProvider provider, DateTimeStyles style, out DateTime result); // 0x102E7130 + private static bool ParseExact(string s, string[] formats, DateTimeFormatInfo dfi, DateTimeStyles style, out DateTime ret, bool exact, bool longYear, bool setExceptionOnError, Exception exception); // 0x102E6240 + public TimeSpan Subtract(DateTime value); // 0x1001D990 + public DateTime Subtract(TimeSpan value); // 0x1001D9F0 + public long ToFileTime(); // 0x1001DE30 + public long ToFileTimeUtc(); // 0x1001DDB0 + public string ToLongDateString(); // 0x1001DE70 + public string ToLongTimeString(); // 0x1001DEB0 + public double ToOADate(); // 0x1001DEF0 + public string ToShortDateString(); // 0x1001DFF0 + public string ToShortTimeString(); // 0x1001E030 + public override string ToString(); // 0x1001E090 + public string ToString(IFormatProvider provider); // 0x1001E070 + public string ToString(string format); // 0x1001E0D0 + public string ToString(string format, IFormatProvider provider); // 0x1001E0F0 + public DateTime ToLocalTime(); // 0x1001DE40 + public DateTime ToUniversalTime(); // 0x1001E100 + public static DateTime op_Addition(DateTime d, TimeSpan t); // 0x102EC4C0 + public static bool op_Equality(DateTime d1, DateTime d2); // 0x102EC540 + public static bool op_GreaterThan(DateTime t1, DateTime t2); // 0x102EC600 + public static bool op_GreaterThanOrEqual(DateTime t1, DateTime t2); // 0x102EC5A0 + public static bool op_Inequality(DateTime d1, DateTime d2); // 0x102EC660 + public static bool op_LessThan(DateTime t1, DateTime t2); // 0x102EC720 + public static bool op_LessThanOrEqual(DateTime t1, DateTime t2); // 0x102EC6C0 + public static TimeSpan op_Subtraction(DateTime d1, DateTime d2); // 0x102EC800 + public static DateTime op_Subtraction(DateTime d, TimeSpan t); // 0x102EC780 +} + +// Namespace: +private enum Which // TypeDefIndex: 1637 +{ + Day = 0, + DayYear = 1, + Month = 2, + Year = 3 +} + +// Namespace: System +[Serializable] +public enum DateTimeKind // TypeDefIndex: 1638 +{ + Unspecified = 0, + Utc = 1, + Local = 2 +} + +// Namespace: System +[Serializable] +public struct DateTimeOffset : IFormattable, IComparable, ISerializable, IComparable`1, IEquatable`1, IDeserializationCallback // TypeDefIndex: 1639 +{ + // Fields + public static readonly DateTimeOffset MaxValue; // 0x00 + public static readonly DateTimeOffset MinValue; // 0x18 + private DateTime dt; // 0x08 + private TimeSpan utc_offset; // 0x18 + + // Properties + public DateTime Date { get; } // 0x1001CFC0 + public DateTime DateTime { get; } // 0x1001CF90 + public int Day { get; } // 0x1001D0E0 + public DayOfWeek DayOfWeek { get; } // 0x1001D090 + public int DayOfYear { get; } // 0x1001D0C0 + public int Hour { get; } // 0x1001D100 + public DateTime LocalDateTime { get; } // 0x1001D120 + public int Millisecond { get; } // 0x1001D160 + public int Minute { get; } // 0x1001D180 + public int Month { get; } // 0x1001D1A0 + public static DateTimeOffset Now { get; } // 0x102E2AE0 + public TimeSpan Offset { get; } // 0x1001D1C0 + public int Second { get; } // 0x1001D1D0 + public long Ticks { get; } // 0x10019A10 + public TimeSpan TimeOfDay { get; } // 0x1001D1F0 + public DateTime UtcDateTime { get; } // 0x1001D210 + public static DateTimeOffset UtcNow { get; } // 0x102E2C20 + public long UtcTicks { get; } // 0x1001D240 + public int Year { get; } // 0x1001D270 + + // Methods + public void .ctor(DateTime dateTime); // 0x1001CF30 + public void .ctor(DateTime dateTime, TimeSpan offset); // 0x1001CF60 + public void .ctor(long ticks, TimeSpan offset); // 0x1001CE80 + public void .ctor(int year, int month, int day, int hour, int minute, int second, TimeSpan offset); // 0x1001CED0 + public void .ctor(int year, int month, int day, int hour, int minute, int second, int millisecond, TimeSpan offset); // 0x1001CC90 + public void .ctor(int year, int month, int day, int hour, int minute, int second, int millisecond, Calendar calendar, TimeSpan offset); // 0x1001CCF0 + private void .ctor(SerializationInfo info, StreamingContext context); // 0x1001CD50 + private static void .cctor(); // 0x102E2320 + private int System.IComparable.CompareTo(object obj); // 0x1001C810 + private void System.Runtime.Serialization.ISerializable.GetObjectData(SerializationInfo info, StreamingContext context); // 0x1001C8C0 + private void System.Runtime.Serialization.IDeserializationCallback.OnDeserialization(object sender); // 0x10003900 + public DateTimeOffset Add(TimeSpan timeSpan); // 0x1001C480 + public DateTimeOffset AddDays(double days); // 0x1001C0B0 + public DateTimeOffset AddHours(double hours); // 0x1001C140 + public DateTimeOffset AddMilliseconds(double milliseconds); // 0x1001C1C0 + public DateTimeOffset AddMinutes(double minutes); // 0x1001C230 + public DateTimeOffset AddMonths(int months); // 0x1001C2B0 + public DateTimeOffset AddSeconds(double seconds); // 0x1001C320 + public DateTimeOffset AddTicks(long ticks); // 0x1001C3A0 + public DateTimeOffset AddYears(int years); // 0x1001C410 + public static int Compare(DateTimeOffset first, DateTimeOffset second); // 0x102DF550 + public int CompareTo(DateTimeOffset other); // 0x1001C500 + public bool Equals(DateTimeOffset other); // 0x1001C650 + public override bool Equals(object obj); // 0x1001C680 + public static bool Equals(DateTimeOffset first, DateTimeOffset second); // 0x102E09B0 + public bool EqualsExact(DateTimeOffset other); // 0x1001C560 + public static DateTimeOffset FromFileTime(long fileTime); // 0x102E09E0 + public override int GetHashCode(); // 0x1001C780 + public static DateTimeOffset Parse(string input); // 0x102E1640 + public static DateTimeOffset Parse(string input, IFormatProvider formatProvider); // 0x102E15D0 + public static DateTimeOffset Parse(string input, IFormatProvider formatProvider, DateTimeStyles styles); // 0x102E16F0 + public static DateTimeOffset ParseExact(string input, string format, IFormatProvider formatProvider); // 0x102E0F00 + public static DateTimeOffset ParseExact(string input, string format, IFormatProvider formatProvider, DateTimeStyles styles); // 0x102E12A0 + public static DateTimeOffset ParseExact(string input, string[] formats, IFormatProvider formatProvider, DateTimeStyles styles); // 0x102E0F80 + private static bool ParseExact(string input, string[] formats, DateTimeFormatInfo dfi, DateTimeStyles styles, out DateTimeOffset ret); // 0x102E0D70 + private static bool DoParse(string input, string format, bool exact, out DateTimeOffset result, DateTimeFormatInfo dfi, DateTimeStyles styles); // 0x102DF5B0 + private static int ParseNumber(string input, int pos, int digits, bool leading_zero, bool allow_leading_white, out int result); // 0x102E1420 + private static int ParseNumber(string input, int pos, int digits, bool leading_zero, bool allow_leading_white, out int result, out int digit_parsed); // 0x102E1490 + private static int ParseEnum(string input, int pos, string[] enums, bool allow_leading_white, out int result); // 0x102E0C80 + private static int ParseChar(string input, int pos, char c, bool allow_leading_white, out int result); // 0x102E0C00 + public TimeSpan Subtract(DateTimeOffset value); // 0x1001C7E0 + public DateTimeOffset Subtract(TimeSpan value); // 0x1001C7A0 + public long ToFileTime(); // 0x1001C9A0 + public DateTimeOffset ToLocalTime(); // 0x1001C9E0 + public DateTimeOffset ToOffset(TimeSpan offset); // 0x1001CB00 + public override string ToString(); // 0x1001CC30 + public string ToString(IFormatProvider formatProvider); // 0x1001CC10 + public string ToString(string format); // 0x1001CBF0 + public string ToString(string format, IFormatProvider formatProvider); // 0x1001CBE0 + public DateTimeOffset ToUniversalTime(); // 0x1001CC50 + public static bool TryParse(string input, out DateTimeOffset result); // 0x102E2020 + public static bool TryParse(string input, IFormatProvider formatProvider, DateTimeStyles styles, out DateTimeOffset result); // 0x102E21E0 + public static bool TryParseExact(string input, string format, IFormatProvider formatProvider, DateTimeStyles styles, out DateTimeOffset result); // 0x102E1EE0 + public static bool TryParseExact(string input, string[] formats, IFormatProvider formatProvider, DateTimeStyles styles, out DateTimeOffset result); // 0x102E1DA0 + public static DateTimeOffset op_Addition(DateTimeOffset dateTimeTz, TimeSpan timeSpan); // 0x102E2D00 + public static bool op_Equality(DateTimeOffset left, DateTimeOffset right); // 0x102E09B0 + public static bool op_GreaterThan(DateTimeOffset left, DateTimeOffset right); // 0x102E2E40 + public static bool op_GreaterThanOrEqual(DateTimeOffset left, DateTimeOffset right); // 0x102E2D70 + public static DateTimeOffset op_Implicit(DateTime dateTime); // 0x102E2F10 + public static bool op_Inequality(DateTimeOffset left, DateTimeOffset right); // 0x102E2F40 + public static bool op_LessThan(DateTimeOffset left, DateTimeOffset right); // 0x102E30E0 + public static bool op_LessThanOrEqual(DateTimeOffset left, DateTimeOffset right); // 0x102E3010 + public static TimeSpan op_Subtraction(DateTimeOffset left, DateTimeOffset right); // 0x102E31F0 + public static DateTimeOffset op_Subtraction(DateTimeOffset dateTimeTz, TimeSpan timeSpan); // 0x102E31B0 +} + +// Namespace: System +internal static class DateTimeUtils // TypeDefIndex: 1640 +{ + // Methods + public static int CountRepeat(string fmt, int p, char c); // 0x102E3220 + public static void ZeroPad(StringBuilder output, int digits, int len); // 0x102E41B0 + public static int ParseQuotedString(string fmt, int pos, StringBuilder output); // 0x102E3500 + public static string GetStandardPattern(char format, DateTimeFormatInfo dfi, out bool useutc, out bool use_invariant); // 0x102E3270 + public static string GetStandardPattern(char format, DateTimeFormatInfo dfi, out bool useutc, out bool use_invariant, bool date_time_offset); // 0x102E3290 + public static string ToString(DateTime dt, string format, DateTimeFormatInfo dfi); // 0x102E4180 + public static string ToString(DateTime dt, Nullable`1 utc_offset, string format, DateTimeFormatInfo dfi); // 0x102E3600 +} + +// Namespace: System +[Serializable] +public enum DayOfWeek // TypeDefIndex: 1641 +{ + Sunday = 0, + Monday = 1, + Tuesday = 2, + Wednesday = 3, + Thursday = 4, + Friday = 5, + Saturday = 6 +} + +// Namespace: System +internal class DelegateData // TypeDefIndex: 1642 +{ + // Fields + public Type target_type; // 0x08 + public string method_name; // 0x0C + + // Methods + public void .ctor(); // 0x100BF000 +} + +// Namespace: System +[Serializable] +internal class DelegateSerializationHolder : ISerializable, IObjectReference // TypeDefIndex: 1643 +{ + // Fields + private Delegate _delegate; // 0x08 + + // Methods + private void .ctor(SerializationInfo info, StreamingContext ctx); // 0x102F1F70 + public static void GetDelegateData(Delegate instance, SerializationInfo info, StreamingContext ctx); // 0x102F1D70 + public void GetObjectData(SerializationInfo info, StreamingContext context); // 0x102F1F20 + public object GetRealObject(StreamingContext context); // 0x100BF0C0 +} + +// Namespace: +[Serializable] +private class DelegateEntry // TypeDefIndex: 1644 +{ + // Fields + private string type; // 0x08 + private string assembly; // 0x0C + public object target; // 0x10 + private string targetTypeAssembly; // 0x14 + private string targetTypeName; // 0x18 + private string methodName; // 0x1C + public DelegateEntry delegateEntry; // 0x20 + + // Methods + public void .ctor(Delegate del, string targetLabel); // 0x102F1C00 + public Delegate DeserializeDelegate(SerializationInfo info); // 0x102F19F0 +} + +// Namespace: System +[Serializable] +public class DivideByZeroException : ArithmeticException // TypeDefIndex: 1645 +{ + // Fields + private const int Result = -2147352558; // 0x00 + + // Methods + public void .ctor(); // 0x101BD9D0 + public void .ctor(string message); // 0x101BDA50 + public void .ctor(string message, Exception innerException); // 0x101BDA20 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100F8FE0 +} + +// Namespace: System +[Serializable] +public class DllNotFoundException : TypeLoadException // TypeDefIndex: 1646 +{ + // Fields + private const int Result = -2146233052; // 0x00 + + // Methods + public void .ctor(); // 0x101BDA70 + public void .ctor(string message); // 0x101BDAE0 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x101BDAC0 + public void .ctor(string message, Exception inner); // 0x101BDB00 +} + +// Namespace: System +public enum AppDomainManagerInitializationOptions // TypeDefIndex: 1647 +{ + None = 0, + RegisterWithHost = 1 +} + +// Namespace: System +[Serializable] +public class DuplicateWaitObjectException : ArgumentException // TypeDefIndex: 1648 +{ + // Fields + private const int Result = -2146233047; // 0x00 + + // Methods + public void .ctor(); // 0x101BEEB0 + public void .ctor(string parameterName); // 0x101BEE00 + public void .ctor(string parameterName, string message); // 0x101BEE80 + public void .ctor(string message, Exception innerException); // 0x101BEE50 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x1015F860 +} + +// Namespace: System +[Serializable] +public class EntryPointNotFoundException : TypeLoadException // TypeDefIndex: 1649 +{ + // Fields + private const int Result = -2146233053; // 0x00 + + // Methods + public void .ctor(); // 0x101BEF00 + public void .ctor(string message); // 0x101BEF50 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x101BDAC0 + public void .ctor(string message, Exception inner); // 0x101BEF70 +} + +// Namespace: System +internal struct MonoEnumInfo // TypeDefIndex: 1650 +{ + // Fields + internal Type utype; // 0x08 + internal Array values; // 0x0C + internal string[] names; // 0x10 + internal Hashtable name_hash; // 0x14 + private static Hashtable cache; // 0x80000000 + private static Hashtable global_cache; // 0x00 + private static object global_cache_monitor; // 0x04 + internal static SByteComparer sbyte_comparer; // 0x08 + internal static ShortComparer short_comparer; // 0x0C + internal static IntComparer int_comparer; // 0x10 + internal static LongComparer long_comparer; // 0x14 + + // Properties + private static Hashtable Cache { get; } // 0x101022A0 + + // Methods + private void .ctor(MonoEnumInfo other); // 0x10005CA0 + private static void .cctor(); // 0x101021B0 + private static void get_enum_info(Type enumType, out MonoEnumInfo info); // 0x10102370 + internal static void GetInfo(Type enumType, out MonoEnumInfo info); // 0x10101A60 +} + +// Namespace: +internal class SByteComparer : IComparer`1, IComparer // TypeDefIndex: 1651 +{ + // Methods + public void .ctor(); // 0x100BF000 + public int Compare(object x, object y); // 0x1010B960 + public int Compare(sbyte ix, sbyte iy); // 0x1010B9E0 +} + +// Namespace: +internal class ShortComparer : IComparer`1, IComparer // TypeDefIndex: 1652 +{ + // Methods + public void .ctor(); // 0x100BF000 + public int Compare(object x, object y); // 0x1010B9F0 + public int Compare(short ix, short iy); // 0x1010BA70 +} + +// Namespace: +internal class IntComparer : IComparer`1, IComparer // TypeDefIndex: 1653 +{ + // Methods + public void .ctor(); // 0x100BF000 + public int Compare(object x, object y); // 0x100FCD60 + public int Compare(int ix, int iy); // 0x100FCDF0 +} + +// Namespace: +internal class LongComparer : IComparer`1, IComparer // TypeDefIndex: 1654 +{ + // Methods + public void .ctor(); // 0x100BF000 + public int Compare(object x, object y); // 0x100FD6A0 + public int Compare(long ix, long iy); // 0x100FD670 +} + +// Namespace: System +public static class Environment // TypeDefIndex: 1655 +{ + // Fields + private const int mono_corlib_version = 82; // 0x00 + private static OperatingSystem os; // 0x00 + + // Properties + public static string CommandLine { get; } // 0x101C40D0 + public static string CurrentDirectory { get; set; } // 0x101C4130 0x101C4350 + public static int ExitCode { get; set; } // 0x101C4150 0x101C4360 + public static bool HasShutdownStarted { get; } // 0x101C4160 + public static string EmbeddingHostName { get; } // 0x101C4140 + public static bool SocketSecurityEnabled { get; } // 0x101C4240 + public static bool UnityWebSecurityEnabled { get; } // 0x101C4240 + public static string MachineName { get; } // 0x101C4180 + public static string NewLine { get; } // 0x101C4190 + internal static PlatformID Platform { get; } // 0x101C4220 + public static OperatingSystem OSVersion { get; } // 0x101C41A0 + public static string StackTrace { get; } // 0x101C4250 + public static int TickCount { get; } // 0x101C42C0 + public static string UserDomainName { get; } // 0x101C4180 + public static bool UserInteractive { get; } // 0x100EFBF0 + public static string UserName { get; } // 0x101C42D0 + public static Version Version { get; } // 0x101C42E0 + public static long WorkingSet { get; } // 0x100ED740 + public static int ProcessorCount { get; } // 0x101C4230 + internal static bool IsRunningOnWindows { get; } // 0x101C4170 + + // Methods + internal static string GetOSVersionString(); // 0x101C35E0 + public static void Exit(int exitCode); // 0x101C27D0 + public static string ExpandEnvironmentVariables(string name); // 0x101C27E0 + public static string[] GetCommandLineArgs(); // 0x101C2BA0 + internal static string internalGetEnvironmentVariable(string variable); // 0x101C2BC0 + public static string GetEnvironmentVariable(string variable); // 0x101C2BC0 + private static Hashtable GetEnvironmentVariablesNoCase(); // 0x101C2F40 + public static IDictionary GetEnvironmentVariables(); // 0x101C3090 + private static string GetWindowsFolderPath(int folder); // 0x101C35F0 + public static string GetFolderPath(SpecialFolder folder); // 0x101C3590 + private static string ReadXdgUserDir(string config_dir, string home_dir, string key, string fallback); // 0x101C3890 + internal static string InternalGetFolderPath(SpecialFolder folder); // 0x101C3600 + public static string[] GetLogicalDrives(); // 0x101C35C0 + private static void internalBroadcastSettingChange(); // 0x101C4330 + public static string GetEnvironmentVariable(string variable, EnvironmentVariableTarget target); // 0x101C2BD0 + public static IDictionary GetEnvironmentVariables(EnvironmentVariableTarget target); // 0x101C3150 + public static void SetEnvironmentVariable(string variable, string value); // 0x101C40B0 + public static void SetEnvironmentVariable(string variable, string value, EnvironmentVariableTarget target); // 0x101C3C60 + internal static void InternalSetEnvironmentVariable(string variable, string value); // 0x101C3870 + public static void FailFast(string message); // 0x101C2B50 + private static string[] GetLogicalDrivesInternal(); // 0x101C35C0 + private static string[] GetEnvironmentVariableNames(); // 0x101C2BB0 + internal static string GetMachineConfigPath(); // 0x101C35D0 + internal static string internalGetHome(); // 0x101C4340 +} + +// Namespace: +public enum SpecialFolder // TypeDefIndex: 1656 +{ + Desktop = 0, + Programs = 2, + MyDocuments = 5, + Personal = 5, + Favorites = 6, + Startup = 7, + Recent = 8, + SendTo = 9, + StartMenu = 11, + MyMusic = 13, + DesktopDirectory = 16, + MyComputer = 17, + Templates = 21, + ApplicationData = 26, + LocalApplicationData = 28, + InternetCache = 32, + Cookies = 33, + History = 34, + CommonApplicationData = 35, + System = 37, + ProgramFiles = 38, + MyPictures = 39, + CommonProgramFiles = 43 +} + +// Namespace: System +public enum EnvironmentVariableTarget // TypeDefIndex: 1657 +{ + Process = 0, + User = 1, + Machine = 2 +} + +// Namespace: System +[Serializable] +public class EventArgs // TypeDefIndex: 1658 +{ + // Fields + public static readonly EventArgs Empty; // 0x00 + + // Methods + public void .ctor(); // 0x100BF000 + private static void .cctor(); // 0x101C47A0 +} + +// Namespace: System +[Serializable] +public sealed class ExecutionEngineException : SystemException // TypeDefIndex: 1659 +{ + // Methods + public void .ctor(); // 0x101C57C0 + public void .ctor(string message); // 0x100E5680 + public void .ctor(string message, Exception innerException); // 0x100E5670 + internal void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 +} + +// Namespace: System +[Serializable] +public class FieldAccessException : MemberAccessException // TypeDefIndex: 1660 +{ + // Fields + private const int Result = -2146233081; // 0x00 + + // Methods + public void .ctor(); // 0x101C5800 + public void .ctor(string message); // 0x101C5850 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100F8FE0 + public void .ctor(string message, Exception inner); // 0x101C5870 +} + +// Namespace: System +[Serializable] +public class FlagsAttribute : Attribute // TypeDefIndex: 1661 +{ + // Methods + public void .ctor(); // 0x100C5970 +} + +// Namespace: System +[Serializable] +public class FormatException : SystemException // TypeDefIndex: 1662 +{ + // Fields + private const int Result = -2146233033; // 0x00 + + // Methods + public void .ctor(); // 0x101C58A0 + public void .ctor(string message); // 0x101C5920 + public void .ctor(string message, Exception innerException); // 0x101C58F0 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 +} + +// Namespace: System +public static class GC // TypeDefIndex: 1663 +{ + // Properties + public static int MaxGeneration { get; } // 0x101C5AF0 + + // Methods + private static void InternalCollect(int generation); // 0x101C5A90 + public static void Collect(); // 0x101C5960 + public static void Collect(int generation); // 0x101C5970 + public static void Collect(int generation, GCCollectionMode mode); // 0x101C5970 + public static int GetGeneration(object obj); // 0x101C5A70 + public static int GetGeneration(WeakReference wo); // 0x101C59F0 + public static long GetTotalMemory(bool forceFullCollection); // 0x101C5A80 + public static void KeepAlive(object obj); // 0x101B65D0 + public static void ReRegisterForFinalize(object obj); // 0x101C5AA0 + public static void SuppressFinalize(object obj); // 0x101C5AD0 + public static void WaitForPendingFinalizers(); // 0x101C5AE0 + public static int CollectionCount(int generation); // 0x101C59E0 + private static void RecordPressure(long bytesAllocated); // 0x101C5940 + public static void AddMemoryPressure(long bytesAllocated); // 0x101C5940 + public static void RemoveMemoryPressure(long bytesAllocated); // 0x101C5AB0 +} + +// Namespace: System +[Serializable] +public enum GCCollectionMode // TypeDefIndex: 1664 +{ + Default = 0, + Forced = 1, + Optimized = 2 +} + +// Namespace: System +public enum GCNotificationStatus // TypeDefIndex: 1665 +{ + Succeeded = 0, + Failed = 1, + Canceled = 2, + Timeout = 3, + NotApplicable = 4 +} + +// Namespace: System +[Serializable] +public struct Guid : IFormattable, IComparable, IComparable`1, IEquatable`1 // TypeDefIndex: 1666 +{ + // Fields + private int _a; // 0x08 + private short _b; // 0x0C + private short _c; // 0x0E + private byte _d; // 0x10 + private byte _e; // 0x11 + private byte _f; // 0x12 + private byte _g; // 0x13 + private byte _h; // 0x14 + private byte _i; // 0x15 + private byte _j; // 0x16 + private byte _k; // 0x17 + public static readonly Guid Empty; // 0x00 + private static object _rngAccess; // 0x10 + private static RandomNumberGenerator _rng; // 0x14 + private static RandomNumberGenerator _fastRng; // 0x18 + + // Methods + public void .ctor(byte[] b); // 0x1001BC70 + public void .ctor(string g); // 0x1001BCD0 + public void .ctor(int a, short b, short c, byte[] d); // 0x1001BC60 + public void .ctor(int a, short b, short c, byte d, byte e, byte f, byte g, byte h, byte i, byte j, byte k); // 0x1001BC80 + public void .ctor(uint a, ushort b, ushort c, byte d, byte e, byte f, byte g, byte h, byte i, byte j, byte k); // 0x1001BC80 + private static void .cctor(); // 0x102B7AC0 + private static void CheckNull(object o); // 0x102B6EC0 + private static void CheckLength(byte[] o, int l); // 0x102B6E00 + private static void CheckArray(byte[] o, int l); // 0x102B6D00 + private static int Compare(int x, int y); // 0x102B7140 + public int CompareTo(object value); // 0x1001B9F0 + public override bool Equals(object o); // 0x1001BAE0 + public int CompareTo(Guid value); // 0x1001BAB0 + public bool Equals(Guid g); // 0x1001BB70 + public override int GetHashCode(); // 0x1001BBA0 + private static char ToHex(int b); // 0x102B78C0 + public static Guid NewGuid(); // 0x102B74D0 + internal static byte[] FastNewGuidArray(); // 0x102B7210 + public byte[] ToByteArray(); // 0x1001BC00 + private static void AppendInt(StringBuilder builder, int value); // 0x102B6730 + private static void AppendShort(StringBuilder builder, short value); // 0x102B68A0 + private static void AppendByte(StringBuilder builder, byte value); // 0x102B6690 + private string BaseToString(bool h, bool p, bool b); // 0x1001B9E0 + public override string ToString(); // 0x1001BC10 + public string ToString(string format); // 0x1001BC30 + public string ToString(string format, IFormatProvider provider); // 0x1001BC40 + public static bool op_Equality(Guid a, Guid b); // 0x102B7F00 + public static bool op_Inequality(Guid a, Guid b); // 0x102B7F30 +} + +// Namespace: +internal class GuidParser // TypeDefIndex: 1667 +{ + // Fields + private string _src; // 0x08 + private int _length; // 0x0C + private int _cur; // 0x10 + + // Methods + public void .ctor(string src); // 0x102B6650 + private void Reset(); // 0x102B65C0 + private bool AtEnd(); // 0x102B5D50 + private void ThrowFormatException(); // 0x102B65F0 + private ulong ParseHex(int length, bool strictLength); // 0x102B6350 + private bool ParseOptChar(char c); // 0x102B6480 + private void ParseChar(char c); // 0x102B5D70 + private Guid ParseGuid1(); // 0x102B5DB0 + private void ParseHexPrefix(); // 0x102B62E0 + private Guid ParseGuid2(); // 0x102B6030 + public Guid Parse(); // 0x102B64C0 +} + +// Namespace: System +public interface IAppDomainSetup // TypeDefIndex: 1668 +{ + // Properties + string ApplicationBase { get; set; } + string ApplicationName { get; set; } + string CachePath { get; set; } + string ConfigurationFile { get; set; } + string DynamicBase { get; set; } + string LicenseFile { get; set; } + string PrivateBinPath { get; set; } + string PrivateBinPathProbe { get; set; } + string ShadowCopyDirectories { get; set; } + string ShadowCopyFiles { get; set; } + +} + +// Namespace: System +internal interface IConsoleDriver // TypeDefIndex: 1669 +{ + // Properties + ConsoleColor BackgroundColor { get; set; } + int BufferHeight { get; set; } + int BufferWidth { get; set; } + bool CapsLock { get; } + int CursorLeft { get; set; } + int CursorSize { get; set; } + int CursorTop { get; set; } + bool CursorVisible { get; set; } + ConsoleColor ForegroundColor { get; set; } + bool KeyAvailable { get; } + bool Initialized { get; } + int LargestWindowHeight { get; } + int LargestWindowWidth { get; } + bool NumberLock { get; } + string Title { get; set; } + bool TreatControlCAsInput { get; set; } + int WindowHeight { get; set; } + int WindowLeft { get; set; } + int WindowTop { get; set; } + int WindowWidth { get; set; } + + // Methods + void Init(); + void Beep(int frequency, int duration); + void Clear(); + void MoveBufferArea(int sourceLeft, int sourceTop, int sourceWidth, int sourceHeight, int targetLeft, int targetTop, char sourceChar, ConsoleColor sourceForeColor, ConsoleColor sourceBackColor); + ConsoleKeyInfo ReadKey(bool intercept); + void ResetColor(); + void SetBufferSize(int width, int height); + void SetCursorPosition(int left, int top); + void SetWindowPosition(int left, int top); + void SetWindowSize(int width, int height); + string ReadLine(); +} + +// Namespace: System +public interface ICustomFormatter // TypeDefIndex: 1670 +{ + // Methods + string Format(string format, object arg, IFormatProvider formatProvider); +} + +// Namespace: System +public interface IFormatProvider // TypeDefIndex: 1671 +{ + // Methods + object GetFormat(Type formatType); +} + +// Namespace: System +public interface IServiceProvider // TypeDefIndex: 1672 +{ + // Methods + object GetService(Type serviceType); +} + +// Namespace: System +[Serializable] +public sealed class IndexOutOfRangeException : SystemException // TypeDefIndex: 1673 +{ + // Methods + public void .ctor(); // 0x100F9830 + public void .ctor(string message); // 0x100E5680 + public void .ctor(string message, Exception innerException); // 0x100E5670 + internal void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 +} + +// Namespace: System +[Serializable] +public sealed class InsufficientMemoryException : OutOfMemoryException // TypeDefIndex: 1674 +{ + // Methods + public void .ctor(); // 0x100F9880 + public void .ctor(string message); // 0x100F98C0 + public void .ctor(string message, Exception innerException); // 0x100F9870 +} + +// Namespace: System +[Serializable] +public class InvalidCastException : SystemException // TypeDefIndex: 1675 +{ + // Fields + private const int Result = -2147467262; // 0x00 + + // Methods + public void .ctor(); // 0x100FCF00 + public void .ctor(string message); // 0x100FCF50 + public void .ctor(string message, Exception innerException); // 0x100FCED0 + public void .ctor(string message, int errorCode); // 0x100FCF70 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 +} + +// Namespace: System +[Serializable] +public class InvalidOperationException : SystemException // TypeDefIndex: 1676 +{ + // Fields + private const int Result = -2146233079; // 0x00 + + // Methods + public void .ctor(); // 0x100FCF90 + public void .ctor(string message); // 0x100FD010 + public void .ctor(string message, Exception innerException); // 0x100FCFE0 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 +} + +// Namespace: System +[Serializable] +public sealed class InvalidProgramException : SystemException // TypeDefIndex: 1677 +{ + // Methods + public void .ctor(); // 0x100FD030 + public void .ctor(string message); // 0x100E5680 + public void .ctor(string message, Exception inner); // 0x100E5670 + internal void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 +} + +// Namespace: System +internal static class KnownTerminals // TypeDefIndex: 1678 +{ + // Properties + public static byte[] linux { get; } // 0x100FD0C0 + public static byte[] xterm { get; } // 0x100FD110 + public static byte[] ansi { get; } // 0x100FD070 + +} + +// Namespace: System +[Serializable] +public enum LoaderOptimization // TypeDefIndex: 1679 +{ + NotSpecified = 0, + SingleDomain = 1, + MultiDomain = 2, + MultiDomainHost = 3, + DomainMask = 3, + DisallowBindings = 4 +} + +// Namespace: System +public sealed class LoaderOptimizationAttribute : Attribute // TypeDefIndex: 1680 +{ + // Fields + private LoaderOptimization lo; // 0x08 + + // Properties + public LoaderOptimization Value { get; } // 0x100BF0C0 + + // Methods + public void .ctor(byte value); // 0x100FD160 + public void .ctor(LoaderOptimization value); // 0x100E5940 +} + +// Namespace: System +public sealed class LocalDataStoreSlot // TypeDefIndex: 1681 +{ + // Fields + internal int slot; // 0x08 + internal bool thread_local; // 0x0C + private static object lock_obj; // 0x00 + private static bool[] slot_bitmap_thread; // 0x04 + private static bool[] slot_bitmap_context; // 0x08 + + // Methods + internal void .ctor(bool in_thread); // 0x100FD3F0 + private static void .cctor(); // 0x100FD3A0 + protected override void Finalize(); // 0x100FD180 +} + +// Namespace: System +public sealed class MTAThreadAttribute : Attribute // TypeDefIndex: 1682 +{ + // Methods + public void .ctor(); // 0x100C5970 +} + +// Namespace: System +public static class Math // TypeDefIndex: 1683 +{ + // Fields + public const double E = 2.718281828459045; // 0x00 + public const double PI = 3.141592653589793; // 0x00 + + // Methods + public static Decimal Abs(Decimal value); // 0x100FDBE0 + public static double Abs(double value); // 0x100FDA40 + public static float Abs(float value); // 0x100FD980 + public static int Abs(int value); // 0x100FDAF0 + public static long Abs(long value); // 0x100FD9B0 + public static sbyte Abs(sbyte value); // 0x100FDA70 + public static short Abs(short value); // 0x100FDB60 + public static Decimal Ceiling(Decimal d); // 0x100FDD40 + public static double Ceiling(double a); // 0x100FDE60 + public static long BigMul(int a, int b); // 0x100FDD30 + public static int DivRem(int a, int b, out int result); // 0x100FDED0 + public static long DivRem(long a, long b, out long result); // 0x100FDEF0 + public static double Floor(double d); // 0x100FDFB0 + public static double IEEERemainder(double x, double y); // 0x100FDFD0 + public static double Log(double a, double newBase); // 0x100FE0B0 + public static byte Max(byte val1, byte val2); // 0x100FE330 + public static Decimal Max(Decimal val1, Decimal val2); // 0x100FE120 + public static double Max(double val1, double val2); // 0x100FE2B0 + public static float Max(float val1, float val2); // 0x100FE1B0 + public static int Max(int val1, int val2); // 0x100FE280 + public static long Max(long val1, long val2); // 0x100FE230 + public static sbyte Max(sbyte val1, sbyte val2); // 0x100FE310 + public static short Max(short val1, short val2); // 0x100FE260 + public static uint Max(uint val1, uint val2); // 0x100FE250 + public static ulong Max(ulong val1, ulong val2); // 0x100FE290 + public static ushort Max(ushort val1, ushort val2); // 0x100FE210 + public static byte Min(byte val1, byte val2); // 0x100FE510 + public static Decimal Min(Decimal val1, Decimal val2); // 0x100FE370 + public static double Min(double val1, double val2); // 0x100FE400 + public static float Min(float val1, float val2); // 0x100FE490 + public static int Min(int val1, int val2); // 0x100FE460 + public static long Min(long val1, long val2); // 0x100FE350 + public static sbyte Min(sbyte val1, sbyte val2); // 0x100FE530 + public static short Min(short val1, short val2); // 0x100FE560 + public static uint Min(uint val1, uint val2); // 0x100FE550 + public static ulong Min(ulong val1, ulong val2); // 0x100FE4F0 + public static ushort Min(ushort val1, ushort val2); // 0x100FE470 + public static Decimal Round(Decimal d); // 0x100FE860 + public static Decimal Round(Decimal d, int decimals); // 0x100FF120 + public static Decimal Round(Decimal d, MidpointRounding mode); // 0x100FECA0 + private static Decimal RoundAwayFromZero(Decimal d); // 0x100FE5D0 + public static Decimal Round(Decimal d, int decimals, MidpointRounding mode); // 0x100FF090 + public static double Round(double a); // 0x100FF100 + public static double Round(double value, int digits); // 0x100FEFF0 + private static double Round2(double value, int digits, bool away_from_zero); // 0x100FE5B0 + public static double Round(double value, MidpointRounding mode); // 0x100FEB80 + public static double Round(double value, int digits, MidpointRounding mode); // 0x100FEDA0 + public static double Truncate(double d); // 0x100FF4D0 + public static Decimal Truncate(Decimal d); // 0x100FF510 + public static Decimal Floor(Decimal d); // 0x100FDF40 + public static int Sign(Decimal value); // 0x100FF190 + public static int Sign(double value); // 0x100FF2D0 + public static int Sign(float value); // 0x100FF3B0 + public static int Sign(int value); // 0x100FF390 + public static int Sign(long value); // 0x100FF2A0 + public static int Sign(sbyte value); // 0x100FF370 + public static int Sign(short value); // 0x100FF280 + public static double Sin(double a); // 0x100FF450 + public static double Cos(double d); // 0x100FDEA0 + public static double Tan(double a); // 0x100FF4A0 + public static double Sinh(double value); // 0x100FF470 + public static double Cosh(double value); // 0x100FDEC0 + public static double Tanh(double value); // 0x100FF4C0 + public static double Acos(double d); // 0x100FDCC0 + public static double Asin(double d); // 0x100FDCE0 + public static double Atan(double d); // 0x100FDD10 + public static double Atan2(double y, double x); // 0x100FDD00 + public static double Exp(double d); // 0x100FDF20 + public static double Log(double d); // 0x100FE100 + public static double Log10(double d); // 0x100FE090 + public static double Pow(double x, double y); // 0x100FE580 + public static double Sqrt(double d); // 0x100FF480 +} + +// Namespace: System +[Serializable] +public class MemberAccessException : SystemException // TypeDefIndex: 1684 +{ + // Fields + private const int Result = -2146233062; // 0x00 + + // Methods + public void .ctor(); // 0x100FF5D0 + public void .ctor(string message); // 0x100FF580 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 + public void .ctor(string message, Exception inner); // 0x100FF5A0 +} + +// Namespace: System +[Serializable] +public class MethodAccessException : MemberAccessException // TypeDefIndex: 1685 +{ + // Fields + private const int Result = -2146233072; // 0x00 + + // Methods + public void .ctor(); // 0x100FF620 + public void .ctor(string message); // 0x100FF670 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 + public void .ctor(string message, Exception inner); // 0x100FF690 +} + +// Namespace: System +public enum MidpointRounding // TypeDefIndex: 1686 +{ + ToEven = 0, + AwayFromZero = 1 +} + +// Namespace: System +[Serializable] +public class MissingFieldException : MissingMemberException // TypeDefIndex: 1687 +{ + // Fields + private const int Result = -2146233071; // 0x00 + + // Properties + public override string Message { get; } // 0x100FF7E0 + + // Methods + public void .ctor(); // 0x100FF6C0 + public void .ctor(string message); // 0x100FF710 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100FF7C0 + public void .ctor(string message, Exception inner); // 0x100FF730 + public void .ctor(string className, string fieldName); // 0x100FF760 +} + +// Namespace: System +[Serializable] +public class MissingMemberException : MemberAccessException // TypeDefIndex: 1688 +{ + // Fields + private const int Result = -2146233070; // 0x00 + protected string ClassName; // 0x34 + protected string MemberName; // 0x38 + protected byte[] Signature; // 0x3C + + // Properties + public override string Message { get; } // 0x100FFAD0 + + // Methods + public void .ctor(); // 0x100FFA80 + public void .ctor(string message); // 0x100FFA60 + public void .ctor(string message, Exception inner); // 0x100FF950 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100FF980 + public void .ctor(string className, string memberName); // 0x100FF8F0 + public override void GetObjectData(SerializationInfo info, StreamingContext context); // 0x100FF870 +} + +// Namespace: System +[Serializable] +public class MissingMethodException : MissingMemberException // TypeDefIndex: 1689 +{ + // Fields + private const int Result = -2146233069; // 0x00 + + // Properties + public override string Message { get; } // 0x100FFC60 + + // Methods + public void .ctor(); // 0x100FFBF0 + public void .ctor(string message); // 0x100FFC40 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100FF7C0 + public void .ctor(string message, Exception inner); // 0x100FFB60 + public void .ctor(string className, string methodName); // 0x100FFB90 +} + +// Namespace: System +public struct ModuleHandle // TypeDefIndex: 1690 +{ + // Fields + private IntPtr value; // 0x08 + public static readonly ModuleHandle EmptyHandle; // 0x00 + + // Properties + internal IntPtr Value { get; } // 0x10003A80 + public int MDStreamVersion { get; } // 0x10005BD0 + + // Methods + internal void .ctor(IntPtr v); // 0x10005950 + private static void .cctor(); // 0x10100260 + internal void GetPEKind(out PortableExecutableKinds peKind, out ImageFileMachine machine); // 0x10005A70 + public RuntimeFieldHandle ResolveFieldHandle(int fieldToken); // 0x10005B40 + public RuntimeMethodHandle ResolveMethodHandle(int methodToken); // 0x10005B60 + public RuntimeTypeHandle ResolveTypeHandle(int typeToken); // 0x10005B80 + private IntPtr[] ptrs_from_handles(RuntimeTypeHandle[] handles); // 0x10005C90 + public RuntimeTypeHandle ResolveTypeHandle(int typeToken, RuntimeTypeHandle[] typeInstantiationContext, RuntimeTypeHandle[] methodInstantiationContext); // 0x10005BC0 + public RuntimeMethodHandle ResolveMethodHandle(int methodToken, RuntimeTypeHandle[] typeInstantiationContext, RuntimeTypeHandle[] methodInstantiationContext); // 0x10005BB0 + public RuntimeFieldHandle ResolveFieldHandle(int fieldToken, RuntimeTypeHandle[] typeInstantiationContext, RuntimeTypeHandle[] methodInstantiationContext); // 0x10005BA0 + public RuntimeFieldHandle GetRuntimeFieldHandleFromMetadataToken(int fieldToken); // 0x10005B40 + public RuntimeMethodHandle GetRuntimeMethodHandleFromMetadataToken(int methodToken); // 0x10005B60 + public RuntimeTypeHandle GetRuntimeTypeHandleFromMetadataToken(int typeToken); // 0x10005B80 + public override bool Equals(object obj); // 0x100059B0 + public bool Equals(ModuleHandle handle); // 0x10005A50 + public override int GetHashCode(); // 0x10003A80 + public static bool op_Equality(ModuleHandle left, ModuleHandle right); // 0x10100290 + public static bool op_Inequality(ModuleHandle left, ModuleHandle right); // 0x101002F0 +} + +// Namespace: System +internal class MonoAsyncCall // TypeDefIndex: 1691 +{ + // Fields + private object msg; // 0x08 + private IntPtr cb_method; // 0x0C + private object cb_target; // 0x10 + private object state; // 0x14 + private object res; // 0x18 + private object out_args; // 0x1C + private long wait_event; // 0x20 + + // Methods + public void .ctor(); // 0x100BF000 +} + +// Namespace: System +internal class MonoCustomAttrs // TypeDefIndex: 1692 +{ + // Fields + private static Assembly corlib; // 0x00 + private static readonly Type AttributeUsageType; // 0x04 + private static readonly AttributeUsageAttribute DefaultAttributeUsage; // 0x08 + + // Methods + public void .ctor(); // 0x100BF000 + private static void .cctor(); // 0x101019D0 + private static bool IsUserCattrProvider(object obj); // 0x10101630 + internal static object[] GetCustomAttributesInternal(ICustomAttributeProvider obj, Type attributeType, bool pseudoAttrs); // 0x10100A90 + internal static object[] GetPseudoCustomAttributes(ICustomAttributeProvider obj, Type attributeType); // 0x10101120 + internal static object[] GetCustomAttributesBase(ICustomAttributeProvider obj, Type attributeType); // 0x10100890 + internal static Attribute GetCustomAttribute(ICustomAttributeProvider obj, Type attributeType, bool inherit); // 0x10100790 + internal static object[] GetCustomAttributes(ICustomAttributeProvider obj, Type attributeType, bool inherit); // 0x10100BF0 + internal static object[] GetCustomAttributes(ICustomAttributeProvider obj, bool inherit); // 0x10100AB0 + private static CustomAttributeData[] GetCustomAttributesDataInternal(ICustomAttributeProvider obj); // 0x101009F0 + internal static IList`1 GetCustomAttributesData(ICustomAttributeProvider obj); // 0x10100A00 + internal static bool IsDefined(ICustomAttributeProvider obj, Type attributeType, bool inherit); // 0x101013E0 + internal static bool IsDefinedInternal(ICustomAttributeProvider obj, Type AttributeType); // 0x101013C0 + private static PropertyInfo GetBasePropertyDefinition(PropertyInfo property); // 0x10100400 + private static ICustomAttributeProvider GetBase(ICustomAttributeProvider obj); // 0x10100640 + private static AttributeUsageAttribute RetrieveAttributeUsage(Type attributeType); // 0x10101800 +} + +// Namespace: +private class AttributeInfo // TypeDefIndex: 1693 +{ + // Fields + private AttributeUsageAttribute _usage; // 0x08 + private int _inheritanceLevel; // 0x0C + + // Properties + public AttributeUsageAttribute Usage { get; } // 0x100BF0C0 + public int InheritanceLevel { get; } // 0x100C5B30 + + // Methods + public void .ctor(AttributeUsageAttribute usage, int inheritanceLevel); // 0x100F97B0 +} + +// Namespace: System +internal sealed class MonoListItem // TypeDefIndex: 1694 +{ + // Fields + private MonoListItem next; // 0x08 + private object data; // 0x0C + + // Methods + public void .ctor(); // 0x100BF000 +} + +// Namespace: System +internal class MonoTouchAOTHelper // TypeDefIndex: 1695 +{ + // Fields + internal static bool FalseFlag; // 0x00 + + // Methods + public void .ctor(); // 0x100BF000 + private static void .cctor(); // 0x100C5530 +} + +// Namespace: System +internal class MonoTypeInfo // TypeDefIndex: 1696 +{ + // Fields + public string full_name; // 0x08 + public ConstructorInfo default_ctor; // 0x0C + + // Methods + public void .ctor(); // 0x100BF000 +} + +// Namespace: System +[Serializable] +internal class MonoType : Type, ISerializable // TypeDefIndex: 1697 +{ + // Fields + [NonSerialized] private MonoTypeInfo type_info; // 0x0C + + // Properties + public override Type UnderlyingSystemType { get; } // 0x100F7810 + public override Assembly Assembly { get; } // 0x10104520 + public override string AssemblyQualifiedName { get; } // 0x10104500 + public override Type BaseType { get; } // 0x10104530 + public override string FullName { get; } // 0x10104660 + public override Guid GUID { get; } // 0x101046D0 + public override MemberTypes MemberType { get; } // 0x101047D0 + public override string Name { get; } // 0x10104830 + public override string Namespace { get; } // 0x10104840 + public override Module Module { get; } // 0x10104820 + public override Type DeclaringType { get; } // 0x10104650 + public override Type ReflectedType { get; } // 0x10104850 + public override RuntimeTypeHandle TypeHandle { get; } // 0x100BF0C0 + public override bool ContainsGenericParameters { get; } // 0x10104540 + public override bool IsGenericParameter { get; } // 0x101047C0 + public override MethodBase DeclaringMethod { get; } // 0x10104640 + + // Methods + internal void .ctor(object obj); // 0x10104460 + private static void type_from_obj(MonoType type, object obj); // 0x10104870 + private static TypeAttributes get_attributes(Type type); // 0x101023B0 + internal ConstructorInfo GetDefaultConstructor(); // 0x10102A00 + protected override TypeAttributes GetAttributeFlagsImpl(); // 0x101023B0 + protected override ConstructorInfo GetConstructorImpl(BindingFlags bindingAttr, Binder binder, CallingConventions callConvention, Type[] types, ParameterModifier[] modifiers); // 0x101023C0 + internal ConstructorInfo[] GetConstructors_internal(BindingFlags bindingAttr, Type reflected_type); // 0x10102760 + public override ConstructorInfo[] GetConstructors(BindingFlags bindingAttr); // 0x10102780 + private EventInfo InternalGetEvent(string name, BindingFlags bindingAttr); // 0x10103500 + public override EventInfo GetEvent(string name, BindingFlags bindingAttr); // 0x10102AB0 + internal EventInfo[] GetEvents_internal(BindingFlags bindingAttr, Type reflected_type); // 0x10102B20 + public override EventInfo[] GetEvents(BindingFlags bindingAttr); // 0x10102B40 + public override FieldInfo GetField(string name, BindingFlags bindingAttr); // 0x10102B60 + internal FieldInfo[] GetFields_internal(BindingFlags bindingAttr, Type reflected_type); // 0x10102C00 + public override FieldInfo[] GetFields(BindingFlags bindingAttr); // 0x10102C20 + public override Type GetInterface(string name, bool ignoreCase); // 0x10102CB0 + public override Type[] GetInterfaces(); // 0x10102EB0 + public override MemberInfo[] GetMembers(BindingFlags bindingAttr); // 0x10102EC0 + internal MethodInfo[] GetMethodsByName(string name, BindingFlags bindingAttr, bool ignoreCase, Type reflected_type); // 0x101032A0 + public override MethodInfo[] GetMethods(BindingFlags bindingAttr); // 0x101032C0 + protected override MethodInfo GetMethodImpl(string name, BindingFlags bindingAttr, Binder binder, CallingConventions callConvention, Type[] types, ParameterModifier[] modifiers); // 0x10102EF0 + private MethodInfo GetCorrespondingInflatedMethod(MethodInfo generic); // 0x101027D0 + private ConstructorInfo GetCorrespondingInflatedConstructor(ConstructorInfo generic); // 0x101027A0 + internal override MethodInfo GetMethod(MethodInfo fromNoninstanciated); // 0x10103220 + internal override ConstructorInfo GetConstructor(ConstructorInfo fromNoninstanciated); // 0x101026E0 + internal override FieldInfo GetField(FieldInfo fromNoninstanciated); // 0x10102B80 + public override Type GetNestedType(string name, BindingFlags bindingAttr); // 0x101032E0 + public override Type[] GetNestedTypes(BindingFlags bindingAttr); // 0x10103300 + internal PropertyInfo[] GetPropertiesByName(string name, BindingFlags bindingAttr, bool icase, Type reflected_type); // 0x10103340 + public override PropertyInfo[] GetProperties(BindingFlags bindingAttr); // 0x10103360 + protected override PropertyInfo GetPropertyImpl(string name, BindingFlags bindingAttr, Binder binder, Type returnType, Type[] types, ParameterModifier[] modifiers); // 0x10103380 + protected override bool HasElementTypeImpl(); // 0x10103490 + protected override bool IsArrayImpl(); // 0x10104130 + protected override bool IsByRefImpl(); // 0x10104180 + protected override bool IsCOMObjectImpl(); // 0x100E9F80 + protected override bool IsPointerImpl(); // 0x101041E0 + protected override bool IsPrimitiveImpl(); // 0x101041F0 + public override bool IsSubclassOf(Type type); // 0x10104200 + public override object InvokeMember(string name, BindingFlags invokeAttr, Binder binder, object target, object[] args, ParameterModifier[] modifiers, CultureInfo culture, string[] namedParameters); // 0x10103520 + public override Type GetElementType(); // 0x10102AA0 + private string getFullName(bool full_name, bool assembly_qualified); // 0x101044E0 + public override bool IsDefined(Type attributeType, bool inherit); // 0x10104190 + public override object[] GetCustomAttributes(bool inherit); // 0x10102800 + public override object[] GetCustomAttributes(Type attributeType, bool inherit); // 0x10102970 + public override int GetArrayRank(); // 0x101023A0 + public void GetObjectData(SerializationInfo info, StreamingContext context); // 0x10103320 + public override string ToString(); // 0x10104440 + public override Type[] GetGenericArguments(); // 0x10102C40 + public override Type GetGenericTypeDefinition(); // 0x10102C50 + private MethodBase CheckMethodSecurity(MethodBase mb); // 0x10102390 + private void ReorderParamArrayArguments(object[] args, MethodBase method); // 0x10104270 +} + +// Namespace: System +[Serializable] +public sealed class MulticastNotSupportedException : SystemException // TypeDefIndex: 1698 +{ + // Methods + public void .ctor(); // 0x10105340 + public void .ctor(string message); // 0x100E5680 + public void .ctor(string message, Exception inner); // 0x100E5670 + internal void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 +} + +// Namespace: System +public sealed class NonSerializedAttribute : Attribute // TypeDefIndex: 1699 +{ + // Methods + public void .ctor(); // 0x100C5970 +} + +// Namespace: System +[Serializable] +public class NotFiniteNumberException : ArithmeticException // TypeDefIndex: 1700 +{ + // Fields + private const int Result = -2146233048; // 0x00 + private double offending_number; // 0x38 + + // Properties + public double OffendingNumber { get; } // 0x10105580 + + // Methods + public void .ctor(); // 0x10105450 + public void .ctor(double offendingNumber); // 0x10105420 + public void .ctor(string message); // 0x10105530 + public void .ctor(string message, double offendingNumber); // 0x101053F0 + public void .ctor(string message, double offendingNumber, Exception innerException); // 0x10105550 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x101054A0 + public void .ctor(string message, Exception innerException); // 0x10105500 + public override void GetObjectData(SerializationInfo info, StreamingContext context); // 0x10105380 +} + +// Namespace: System +[Serializable] +public class NotImplementedException : SystemException // TypeDefIndex: 1701 +{ + // Fields + private const int Result = -2147467263; // 0x00 + + // Methods + public void .ctor(); // 0x101055B0 + public void .ctor(string message); // 0x10105590 + public void .ctor(string message, Exception inner); // 0x10105600 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 +} + +// Namespace: System +[Serializable] +public class NotSupportedException : SystemException // TypeDefIndex: 1702 +{ + // Fields + private const int Result = -2146233067; // 0x00 + + // Methods + public void .ctor(); // 0x10105680 + public void .ctor(string message); // 0x10105630 + public void .ctor(string message, Exception innerException); // 0x10105650 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 +} + +// Namespace: System +[Serializable] +public class NullReferenceException : SystemException // TypeDefIndex: 1703 +{ + // Fields + private const int Result = -2147467261; // 0x00 + + // Methods + public void .ctor(); // 0x101056F0 + public void .ctor(string message); // 0x101056D0 + public void .ctor(string message, Exception innerException); // 0x10105740 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 +} + +// Namespace: System +public static class Nullable // TypeDefIndex: 1704 +{ + // Methods + public static int Compare(Nullable`1 value1, Nullable`1 value2); + public static bool Equals(Nullable`1 value1, Nullable`1 value2); + public static Type GetUnderlyingType(Type nullableType); // 0x101059D0 +} + +// Namespace: System +internal sealed class NumberFormatter // TypeDefIndex: 1705 +{ + // Fields + private const int DefaultExpPrecision = 6; // 0x00 + private const int HundredMillion = 100000000; // 0x00 + private const long SeventeenDigitsThreshold = 10000000000000000; // 0x00 + private const ulong ULongDivHundredMillion = 184467440737; // 0x00 + private const ulong ULongModHundredMillion = 9551616; // 0x00 + private const int DoubleBitsExponentShift = 52; // 0x00 + private const int DoubleBitsExponentMask = 2047; // 0x00 + private const long DoubleBitsMantissaMask = 4503599627370495; // 0x00 + private const int DecimalBitsScaleMask = 2031616; // 0x00 + private const int SingleDefPrecision = 7; // 0x00 + private const int DoubleDefPrecision = 15; // 0x00 + private const int Int8DefPrecision = 3; // 0x00 + private const int UInt8DefPrecision = 3; // 0x00 + private const int Int16DefPrecision = 5; // 0x00 + private const int UInt16DefPrecision = 5; // 0x00 + private const int Int32DefPrecision = 10; // 0x00 + private const int UInt32DefPrecision = 10; // 0x00 + private const int Int64DefPrecision = 19; // 0x00 + private const int UInt64DefPrecision = 20; // 0x00 + private const int DecimalDefPrecision = 100; // 0x00 + private const int TenPowersListLength = 19; // 0x00 + private const double MinRoundtripVal = -1.79769313486231E+308; // 0x00 + private const double MaxRoundtripVal = 1.79769313486231E+308; // 0x00 + private static readonly void * MantissaBitsTable; // 0x00 + private static readonly void * TensExponentTable; // 0x04 + private static readonly void * DigitLowerTable; // 0x08 + private static readonly void * DigitUpperTable; // 0x0C + private static readonly void * TenPowersList; // 0x10 + private static readonly void * DecHexDigits; // 0x14 + private Thread _thread; // 0x08 + private NumberFormatInfo _nfi; // 0x0C + private bool _NaN; // 0x10 + private bool _infinity; // 0x00 + private bool _isCustomFormat; // 0x00 + private bool _specifierIsUpper; // 0x00 + private bool _positive; // 0x00 + private char _specifier; // 0x16 + private int _precision; // 0x18 + private int _defPrecision; // 0x1C + private int _digitsLen; // 0x20 + private int _offset; // 0x24 + private int _decPointPos; // 0x28 + private uint _val1; // 0x2C + private uint _val2; // 0x30 + private uint _val3; // 0x34 + private uint _val4; // 0x38 + private char[] _cbuf; // 0x3C + private int _ind; // 0x40 + private static NumberFormatter threadNumberFormatter; // 0x80000000 + + // Properties + public CultureInfo CurrentCulture { set; } // 0x1010B920 + private int IntegerDigits { get; } // 0x1010B8B0 + private int DecimalDigits { get; } // 0x1010B890 + private bool IsFloatingSource { get; } // 0x1010B8D0 + private bool IsZero { get; } // 0x1010B910 + private bool IsZeroInteger { get; } // 0x1010B8F0 + + // Methods + public void .ctor(Thread current); // 0x1010B800 + private static void .cctor(); // 0x1010B7B0 + private static void GetFormatterTables(out void * MantissaBitsTable, out void * TensExponentTable, out void * DigitLowerTable, out void * DigitUpperTable, out void * TenPowersList, out void * DecHexDigits); // 0x10108670 + private static long GetTenPowerOf(int i); // 0x10108810 + private void InitDecHexDigits(uint value); // 0x10108A00 + private void InitDecHexDigits(ulong value); // 0x10108870 + private void InitDecHexDigits(uint hi, ulong lo); // 0x10108AB0 + private static uint FastToDecHex(int val); // 0x10106EF0 + private static uint ToDecHex(int val); // 0x1010B690 + private static int FastDecHexLen(int val); // 0x10106E00 + private static int DecHexLen(uint val); // 0x10106B60 + private int DecHexLen(); // 0x10106A60 + private static int ScaleOrder(long hi); // 0x1010B550 + private int InitialFloatingPrecision(); // 0x10109860 + private static int ParsePrecision(string format); // 0x1010B0C0 + private void Init(string format); // 0x10109700 + private void InitHex(ulong value); // 0x10108EB0 + private void Init(string format, int value, int defPrecision); // 0x10109620 + private void Init(string format, uint value, int defPrecision); // 0x10109530 + private void Init(string format, long value); // 0x10109590 + private void Init(string format, ulong value); // 0x10109690 + private void Init(string format, double value, int defPrecision); // 0x10108F20 + private void Init(string format, Decimal value); // 0x101093B0 + private void ResetCharBuf(int size); // 0x1010B210 + private void Resize(int len); // 0x1010B270 + private void Append(char c); // 0x10106730 + private void Append(char c, int cnt); // 0x10106680 + private void Append(string s); // 0x101067D0 + private NumberFormatInfo GetNumberFormatInstance(IFormatProvider fp); // 0x101087B0 + private void RoundPos(int pos); // 0x1010B530 + private bool RoundDecimal(int decimals); // 0x1010B500 + private bool RoundBits(int shift); // 0x1010B2C0 + private void RemoveTrailingZeros(); // 0x1010B1E0 + private void AddOneToDecHex(); // 0x10105B60 + private static uint AddOneToDecHex(uint val); // 0x10105AD0 + private int CountTrailingZeros(); // 0x10106910 + private static int CountTrailingZeros(uint val); // 0x101068B0 + private static NumberFormatter GetInstance(); // 0x10108690 + private void Release(); // 0x1010B120 + internal static void SetThreadCurrentCulture(CultureInfo culture); // 0x1010B5D0 + public static string NumberToString(string format, sbyte value, IFormatProvider fp); // 0x1010A2F0 + public static string NumberToString(string format, byte value, IFormatProvider fp); // 0x1010ACC0 + public static string NumberToString(string format, ushort value, IFormatProvider fp); // 0x1010AED0 + public static string NumberToString(string format, short value, IFormatProvider fp); // 0x1010ABF0 + public static string NumberToString(string format, uint value, IFormatProvider fp); // 0x10109D20 + public static string NumberToString(string format, int value, IFormatProvider fp); // 0x1010A020 + public static string NumberToString(string format, ulong value, IFormatProvider fp); // 0x1010A930 + public static string NumberToString(string format, long value, IFormatProvider fp); // 0x1010AD90 + public static string NumberToString(string format, float value, IFormatProvider fp); // 0x1010A760 + public static string NumberToString(string format, double value, IFormatProvider fp); // 0x1010A3C0 + public static string NumberToString(string format, Decimal value, IFormatProvider fp); // 0x10109C40 + public static string NumberToString(uint value, IFormatProvider fp); // 0x1010AA50 + public static string NumberToString(int value, IFormatProvider fp); // 0x1010A240 + public static string NumberToString(ulong value, IFormatProvider fp); // 0x1010A5B0 + public static string NumberToString(long value, IFormatProvider fp); // 0x10109E30 + public static string NumberToString(float value, IFormatProvider fp); // 0x1010AFA0 + public static string NumberToString(double value, IFormatProvider fp); // 0x10109F00 + private string FastIntegerToString(int value, IFormatProvider fp); // 0x10106E30 + private string IntegerToString(string format, IFormatProvider fp); // 0x101098B0 + private string NumberToString(string format, NumberFormatInfo nfi); // 0x1010A0F0 + public string FormatCurrency(int precision, NumberFormatInfo nfi); // 0x10106F90 + private string FormatDecimal(int precision, NumberFormatInfo nfi); // 0x10107A10 + private string FormatHexadecimal(int precision); // 0x10108020 + public string FormatFixedPoint(int precision, NumberFormatInfo nfi); // 0x10107DC0 + private string FormatRoundtrip(double origval, NumberFormatInfo nfi); // 0x101084A0 + private string FormatRoundtrip(float origval, NumberFormatInfo nfi); // 0x10108570 + private string FormatGeneral(int precision, NumberFormatInfo nfi); // 0x10107F00 + public string FormatNumber(int precision, NumberFormatInfo nfi); // 0x10108160 + public string FormatPercent(int precision, NumberFormatInfo nfi); // 0x10108310 + public string FormatExponential(int precision, NumberFormatInfo nfi); // 0x10107AA0 + private string FormatExponential(int precision, NumberFormatInfo nfi, int expDigits); // 0x10107AE0 + public string FormatCustom(string format, NumberFormatInfo nfi); // 0x10107360 + private static void ZeroTrimEnd(StringBuilder sb, bool canEmpty); // 0x1010B740 + private static bool IsZeroOnly(StringBuilder sb); // 0x10109B80 + private static void AppendNonNegativeNumber(StringBuilder sb, int v); // 0x10106420 + private void AppendIntegerString(int minLength, StringBuilder sb); // 0x10106360 + private void AppendIntegerString(int minLength); // 0x101063D0 + private void AppendDecimalString(int precision, StringBuilder sb); // 0x10105CA0 + private void AppendDecimalString(int precision); // 0x10105C80 + private void AppendIntegerStringWithGroupSeparator(int[] groups, string groupSeparator); // 0x101061A0 + private void AppendExponent(NumberFormatInfo nfi, int exponent, int minDigits); // 0x10106060 + private void AppendOneDigit(int start); // 0x101065A0 + private void FastAppendDigits(int val, bool force); // 0x10106C30 + private void AppendDigits(int start, int end); // 0x10105CD0 + private void AppendDigits(int start, int end, StringBuilder sb); // 0x10105EA0 + private void Multiply10(int count); // 0x10109C20 + private void Divide10(int count); // 0x10106C10 + private NumberFormatter GetClone(); // 0x10108620 +} + +// Namespace: +private class CustomInfo // TypeDefIndex: 1706 +{ + // Fields + public bool UseGroup; // 0x08 + public int DecimalDigits; // 0x0C + public int DecimalPointPos; // 0x10 + public int DecimalTailSharpDigits; // 0x14 + public int IntegerDigits; // 0x18 + public int IntegerHeadSharpDigits; // 0x1C + public int IntegerHeadPos; // 0x20 + public bool UseExponent; // 0x24 + public int ExponentDigits; // 0x28 + public int ExponentTailSharpDigits; // 0x2C + public bool ExponentNegativeSignOnly; // 0x30 + public int DividePlaces; // 0x34 + public int Percents; // 0x38 + public int Permilles; // 0x3C + + // Methods + public void .ctor(); // 0x100F4240 + public static void GetActiveSection(string format, bool positive, bool zero, int offset, int length); // 0x100F3C20 + public static CustomInfo Parse(string format, int offset, int length, NumberFormatInfo nfi); // 0x100F3F40 + public string Format(string format, int offset, int length, NumberFormatInfo nfi, bool positive, StringBuilder sb_int, StringBuilder sb_dec, StringBuilder sb_exp); // 0x100F3660 +} + +// Namespace: System +[Serializable] +public class ObjectDisposedException : InvalidOperationException // TypeDefIndex: 1707 +{ + // Fields + private string obj_name; // 0x34 + private string msg; // 0x38 + + // Properties + public override string Message { get; } // 0x100EB210 + public string ObjectName { get; } // 0x100E9ED0 + + // Methods + public void .ctor(string objectName); // 0x100F8750 + public void .ctor(string objectName, string message); // 0x100F8720 + public void .ctor(string message, Exception innerException); // 0x100F8810 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100F87B0 + public override void GetObjectData(SerializationInfo info, StreamingContext context); // 0x100F86C0 +} + +// Namespace: System +[Serializable] +public sealed class OperatingSystem : ICloneable, ISerializable // TypeDefIndex: 1708 +{ + // Fields + private PlatformID _platform; // 0x08 + private Version _version; // 0x0C + private string _servicePack; // 0x10 + + // Properties + public PlatformID Platform { get; } // 0x100BF0C0 + public Version Version { get; } // 0x100C5B30 + public string ServicePack { get; } // 0x100BFC20 + public string VersionString { get; } // 0x100F8A80 + + // Methods + public void .ctor(PlatformID platform, Version version); // 0x100F8B70 + public object Clone(); // 0x100F8920 + public void GetObjectData(SerializationInfo info, StreamingContext context); // 0x100F89F0 + public override string ToString(); // 0x100F8A80 +} + +// Namespace: System +[Serializable] +public class OperationCanceledException : SystemException // TypeDefIndex: 1709 +{ + // Fields + private const int Result = -2146233029; // 0x00 + + // Methods + public void .ctor(); // 0x100F8C60 + public void .ctor(string message); // 0x100F8C10 + public void .ctor(string message, Exception innerException); // 0x100F8C30 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 +} + +// Namespace: System +[Serializable] +public class OutOfMemoryException : SystemException // TypeDefIndex: 1710 +{ + // Fields + private const int Result = -2147024882; // 0x00 + + // Methods + public void .ctor(); // 0x100F8F90 + public void .ctor(string message); // 0x100F8F70 + public void .ctor(string message, Exception innerException); // 0x100F8F40 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 +} + +// Namespace: System +[Serializable] +public class OverflowException : ArithmeticException // TypeDefIndex: 1711 +{ + // Fields + private const int Result = -2146233066; // 0x00 + + // Methods + public void .ctor(); // 0x100F9000 + public void .ctor(string message); // 0x100F9080 + public void .ctor(string message, Exception innerException); // 0x100F9050 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100F8FE0 +} + +// Namespace: System +[Serializable] +public enum PlatformID // TypeDefIndex: 1712 +{ + Win32S = 0, + Win32Windows = 1, + Win32NT = 2, + WinCE = 3, + Unix = 4, + Xbox = 5, + MacOSX = 6 +} + +// Namespace: System +[Serializable] +public class PlatformNotSupportedException : NotSupportedException // TypeDefIndex: 1713 +{ + // Fields + private const int Result = -2146233031; // 0x00 + + // Methods + public void .ctor(); // 0x100F90A0 + public void .ctor(string message); // 0x100F9120 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100F8FE0 + public void .ctor(string message, Exception inner); // 0x100F90F0 +} + +// Namespace: System +[Serializable] +public class Random // TypeDefIndex: 1714 +{ + // Fields + private const int MBIG = 2147483647; // 0x00 + private const int MSEED = 161803398; // 0x00 + private const int MZ = 0; // 0x00 + private int inext; // 0x08 + private int inextp; // 0x0C + private int[] SeedArray; // 0x10 + + // Methods + public void .ctor(); // 0x100F95D0 + public void .ctor(int Seed); // 0x100F9460 + protected virtual double Sample(); // 0x100F93B0 + public virtual int Next(); // 0x100F9380 + public virtual int Next(int maxValue); // 0x100F9220 + public virtual int Next(int minValue, int maxValue); // 0x100F92C0 + public virtual void NextBytes(byte[] buffer); // 0x100F9140 + public virtual double NextDouble(); // 0x100F9200 +} + +// Namespace: System +[Serializable] +public class RankException : SystemException // TypeDefIndex: 1715 +{ + // Fields + private const int Result = -2146233065; // 0x00 + + // Methods + public void .ctor(); // 0x100F95F0 + public void .ctor(string message); // 0x100F9640 + public void .ctor(string message, Exception innerException); // 0x100F9660 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 +} + +// Namespace: System +public class ResolveEventArgs : EventArgs // TypeDefIndex: 1716 +{ + // Fields + private string m_Name; // 0x08 + + // Properties + public string Name { get; } // 0x100BF0C0 + + // Methods + public void .ctor(string name); // 0x102093D0 +} + +// Namespace: System +[Serializable] +public struct RuntimeMethodHandle : ISerializable // TypeDefIndex: 1717 +{ + // Fields + private IntPtr value; // 0x08 + + // Properties + public IntPtr Value { get; } // 0x10003A80 + + // Methods + internal void .ctor(IntPtr v); // 0x10005950 + private void .ctor(SerializationInfo info, StreamingContext context); // 0x100066C0 + public void GetObjectData(SerializationInfo info, StreamingContext context); // 0x100065B0 + private static IntPtr GetFunctionPointer(IntPtr m); // 0x10104640 + public IntPtr GetFunctionPointer(); // 0x10006590 + public override bool Equals(object obj); // 0x100064E0 + public bool Equals(RuntimeMethodHandle handle); // 0x10006190 + public override int GetHashCode(); // 0x10006260 + public static bool op_Equality(RuntimeMethodHandle left, RuntimeMethodHandle right); // 0x10123830 + public static bool op_Inequality(RuntimeMethodHandle left, RuntimeMethodHandle right); // 0x10123840 +} + +// Namespace: System +public sealed class STAThreadAttribute : Attribute // TypeDefIndex: 1718 +{ + // Methods + public void .ctor(); // 0x100C5970 +} + +// Namespace: System +[Serializable] +public sealed class StackOverflowException : SystemException // TypeDefIndex: 1719 +{ + // Methods + public void .ctor(); // 0x10149C10 + public void .ctor(string message); // 0x100E5680 + public void .ctor(string message, Exception innerException); // 0x100E5670 + internal void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 +} + +// Namespace: System +[Serializable] +public abstract class StringComparer : IComparer`1, IEqualityComparer`1, IComparer, IEqualityComparer // TypeDefIndex: 1720 +{ + // Fields + private static StringComparer invariantCultureIgnoreCase; // 0x00 + private static StringComparer invariantCulture; // 0x04 + private static StringComparer ordinalIgnoreCase; // 0x08 + private static StringComparer ordinal; // 0x0C + + // Properties + public static StringComparer CurrentCulture { get; } // 0x1032B650 + public static StringComparer CurrentCultureIgnoreCase { get; } // 0x1032B5E0 + public static StringComparer InvariantCulture { get; } // 0x1032B710 + public static StringComparer InvariantCultureIgnoreCase { get; } // 0x1032B6C0 + public static StringComparer Ordinal { get; } // 0x1032B7B0 + public static StringComparer OrdinalIgnoreCase { get; } // 0x1032B760 + + // Methods + protected void .ctor(); // 0x100BF000 + private static void .cctor(); // 0x1032B4F0 + public static StringComparer Create(CultureInfo culture, bool ignoreCase); // 0x1032B330 + public int Compare(object x, object y); // 0x1032B1F0 + public bool Equals(object x, object y); // 0x1032B3B0 + public int GetHashCode(object obj); // 0x1032B450 + public abstract int Compare(string x, string y); + public abstract bool Equals(string x, string y); + public abstract int GetHashCode(string obj); +} + +// Namespace: System +[Serializable] +internal sealed class CultureAwareComparer : StringComparer // TypeDefIndex: 1721 +{ + // Fields + private readonly bool _ignoreCase; // 0x08 + private readonly CompareInfo _compareInfo; // 0x0C + + // Methods + public void .ctor(CultureInfo ci, bool ignore_case); // 0x102DE440 + public override int Compare(string x, string y); // 0x102DE300 + public override bool Equals(string x, string y); // 0x102DE340 + public override int GetHashCode(string s); // 0x102DE390 +} + +// Namespace: System +[Serializable] +internal sealed class OrdinalComparer : StringComparer // TypeDefIndex: 1722 +{ + // Fields + private readonly bool _ignoreCase; // 0x08 + + // Methods + public void .ctor(bool ignoreCase); // 0x100F8EE0 + public override int Compare(string x, string y); // 0x100F8CB0 + public override bool Equals(string x, string y); // 0x100F8D50 + public override int GetHashCode(string s); // 0x100F8E60 +} + +// Namespace: System +[Serializable] +public enum StringComparison // TypeDefIndex: 1723 +{ + CurrentCulture = 0, + CurrentCultureIgnoreCase = 1, + InvariantCulture = 2, + InvariantCultureIgnoreCase = 3, + Ordinal = 4, + OrdinalIgnoreCase = 5 +} + +// Namespace: System +public enum StringSplitOptions // TypeDefIndex: 1724 +{ + None = 0, + RemoveEmptyEntries = 1 +} + +// Namespace: System +[Serializable] +public class SystemException : Exception // TypeDefIndex: 1725 +{ + // Fields + private const int Result = -2146233087; // 0x00 + + // Methods + public void .ctor(); // 0x1032B980 + public void .ctor(string message); // 0x1032B9D0 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x1015EC80 + public void .ctor(string message, Exception innerException); // 0x1032B950 +} + +// Namespace: System +internal enum TermInfoBooleans // TypeDefIndex: 1726 +{ + AutoLeftMargin = 0, + AutoRightMargin = 1, + NoEscCtlc = 2, + CeolStandoutGlitch = 3, + EatNewlineGlitch = 4, + EraseOverstrike = 5, + GenericType = 6, + HardCopy = 7, + HasMetaKey = 8, + HasStatusLine = 9, + InsertNullGlitch = 10, + MemoryAbove = 11, + MemoryBelow = 12, + MoveInsertMode = 13, + MoveStandoutMode = 14, + OverStrike = 15, + StatusLineEscOk = 16, + DestTabsMagicSmso = 17, + TildeGlitch = 18, + TransparentUnderline = 19, + XonXoff = 20, + NeedsXonXoff = 21, + PrtrSilent = 22, + HardCursor = 23, + NonRevRmcup = 24, + NoPadChar = 25, + NonDestScrollRegion = 26, + CanChange = 27, + BackColorErase = 28, + HueLightnessSaturation = 29, + ColAddrGlitch = 30, + CrCancelsMicroMode = 31, + HasPrintWheel = 32, + RowAddrGlitch = 33, + SemiAutoRightMargin = 34, + CpiChangesRes = 35, + LpiChangesRes = 36, + Last = 37 +} + +// Namespace: System +[Serializable] +public class ThreadStaticAttribute : Attribute // TypeDefIndex: 1727 +{ + // Methods + public void .ctor(); // 0x100C5970 +} + +// Namespace: System +[Serializable] +public struct TimeSpan : IComparable, IComparable`1, IEquatable`1 // TypeDefIndex: 1728 +{ + // Fields + public const long TicksPerDay = 864000000000; // 0x00 + public const long TicksPerHour = 36000000000; // 0x00 + public const long TicksPerMillisecond = 10000; // 0x00 + public const long TicksPerMinute = 600000000; // 0x00 + public const long TicksPerSecond = 10000000; // 0x00 + public static readonly TimeSpan MaxValue; // 0x00 + public static readonly TimeSpan MinValue; // 0x08 + public static readonly TimeSpan Zero; // 0x10 + private long _ticks; // 0x08 + + // Properties + public int Days { get; } // 0x10019910 + public int Hours { get; } // 0x10019930 + public int Milliseconds { get; } // 0x10019960 + public int Minutes { get; } // 0x100199A0 + public int Seconds { get; } // 0x100199D0 + public long Ticks { get; } // 0x10019A10 + public double TotalDays { get; } // 0x10019A20 + public double TotalHours { get; } // 0x10019A50 + public double TotalMilliseconds { get; } // 0x10019A80 + public double TotalMinutes { get; } // 0x10019AB0 + public double TotalSeconds { get; } // 0x10019AE0 + + // Methods + public void .ctor(long ticks); // 0x100075A0 + public void .ctor(int hours, int minutes, int seconds); // 0x100197C0 + public void .ctor(int days, int hours, int minutes, int seconds); // 0x10019830 + public void .ctor(int days, int hours, int minutes, int seconds, int milliseconds); // 0x100198A0 + private static void .cctor(); // 0x1027D4A0 + internal static long CalculateTicks(int days, int hours, int minutes, int seconds, int milliseconds); // 0x1027C4C0 + public TimeSpan Add(TimeSpan ts); // 0x10019550 + public static int Compare(TimeSpan t1, TimeSpan t2); // 0x1027C780 + public int CompareTo(object value); // 0x10019570 + public int CompareTo(TimeSpan value); // 0x10019670 + public bool Equals(TimeSpan obj); // 0x10005120 + public TimeSpan Duration(); // 0x100196F0 + public override bool Equals(object value); // 0x10019700 + public static bool Equals(TimeSpan t1, TimeSpan t2); // 0x10272D80 + public static TimeSpan FromDays(double value); // 0x1027C8B0 + public static TimeSpan FromHours(double value); // 0x1027C920 + public static TimeSpan FromMinutes(double value); // 0x1027C9E0 + public static TimeSpan FromSeconds(double value); // 0x1027CA40 + public static TimeSpan FromMilliseconds(double value); // 0x1027C980 + private static TimeSpan From(double value, long tickMultiplicator); // 0x1027CAA0 + public static TimeSpan FromTicks(long value); // 0x1021FD30 + public override int GetHashCode(); // 0x10009D00 + public TimeSpan Negate(); // 0x10019780 + public static TimeSpan Parse(string s); // 0x1027CF40 + public static bool TryParse(string s, out TimeSpan result); // 0x1027D330 + public TimeSpan Subtract(TimeSpan ts); // 0x10019790 + public override string ToString(); // 0x100197B0 + public static TimeSpan op_Addition(TimeSpan t1, TimeSpan t2); // 0x1027D7F0 + public static bool op_Equality(TimeSpan t1, TimeSpan t2); // 0x10272D80 + public static bool op_GreaterThan(TimeSpan t1, TimeSpan t2); // 0x1027D830 + public static bool op_GreaterThanOrEqual(TimeSpan t1, TimeSpan t2); // 0x1027D810 + public static bool op_Inequality(TimeSpan t1, TimeSpan t2); // 0x10272DA0 + public static bool op_LessThan(TimeSpan t1, TimeSpan t2); // 0x1027D870 + public static bool op_LessThanOrEqual(TimeSpan t1, TimeSpan t2); // 0x1027D850 + public static TimeSpan op_Subtraction(TimeSpan t1, TimeSpan t2); // 0x1027D890 + public static TimeSpan op_UnaryNegation(TimeSpan t); // 0x1027D8B0 + public static TimeSpan op_UnaryPlus(TimeSpan t); // 0x1021FD30 +} + +// Namespace: +private class Parser // TypeDefIndex: 1729 +{ + // Fields + private string _src; // 0x08 + private int _cur; // 0x0C + private int _length; // 0x10 + private bool formatError; // 0x14 + + // Properties + public bool AtEnd { get; } // 0x102762E0 + + // Methods + public void .ctor(string src); // 0x102762B0 + private void ParseWhiteSpace(); // 0x10276230 + private bool ParseSign(); // 0x102760C0 + private int ParseInt(bool optional); // 0x10275EC0 + private bool ParseOptDot(); // 0x10276080 + private void ParseOptColon(); // 0x10276040 + private long ParseTicks(); // 0x10276100 + public TimeSpan Execute(); // 0x10275A80 +} + +// Namespace: System +[Serializable] +public abstract class TimeZone // TypeDefIndex: 1730 +{ + // Fields + private static TimeZone currentTimeZone; // 0x00 + [NonSerialized] private static object tz_lock; // 0x04 + [NonSerialized] private static long timezone_check; // 0x08 + + // Properties + public static TimeZone CurrentTimeZone { get; } // 0x1027E480 + public abstract string DaylightName { get; } + public abstract string StandardName { get; } + + // Methods + protected void .ctor(); // 0x100BF000 + private static void .cctor(); // 0x1027E430 + public abstract DaylightTime GetDaylightChanges(int year); + public abstract TimeSpan GetUtcOffset(DateTime time); + public virtual bool IsDaylightSavingTime(DateTime time); // 0x1027DDD0 + public static bool IsDaylightSavingTime(DateTime time, DaylightTime daylightTimes); // 0x1027DBB0 + public virtual DateTime ToLocalTime(DateTime time); // 0x1027DE60 + public virtual DateTime ToUniversalTime(DateTime time); // 0x1027E200 + internal TimeSpan GetLocalTimeDiff(DateTime time); // 0x1027D8D0 + internal TimeSpan GetLocalTimeDiff(DateTime time, TimeSpan utc_offset); // 0x1027D920 +} + +// Namespace: System +[Serializable] +internal class CurrentSystemTimeZone : TimeZone, IDeserializationCallback // TypeDefIndex: 1731 +{ + // Fields + private string m_standardName; // 0x08 + private string m_daylightName; // 0x0C + private Hashtable m_CachedDaylightChanges; // 0x10 + private long m_ticksOffset; // 0x18 + [NonSerialized] private TimeSpan utcOffsetWithOutDLS; // 0x20 + [NonSerialized] private TimeSpan utcOffsetWithDLS; // 0x28 + private static int this_year; // 0x00 + private static DaylightTime this_year_dlt; // 0x04 + + // Properties + public override string DaylightName { get; } // 0x100C5B30 + public override string StandardName { get; } // 0x100BF0C0 + + // Methods + internal void .ctor(); // 0x102DECD0 + internal void .ctor(long lnow); // 0x102DEAE0 + private void System.Runtime.Serialization.IDeserializationCallback.OnDeserialization(object sender); // 0x102DEAC0 + private static bool GetTimeZoneData(int year, out long[] data, out string[] names); // 0x102DE8B0 + public override DaylightTime GetDaylightChanges(int year); // 0x102DE4C0 + public override TimeSpan GetUtcOffset(DateTime time); // 0x102DE8D0 + private void OnDeserialization(DaylightTime dlt); // 0x102DE910 + private DaylightTime GetDaylightTimeFromData(long[] data); // 0x102DE7B0 +} + +// Namespace: +internal enum TimeZoneData // TypeDefIndex: 1732 +{ + DaylightSavingStartIdx = 0, + DaylightSavingEndIdx = 1, + UtcOffsetIdx = 2, + AdditionalDaylightOffsetIdx = 3 +} + +// Namespace: +internal enum TimeZoneNames // TypeDefIndex: 1733 +{ + StandardNameIdx = 0, + DaylightNameIdx = 1 +} + +// Namespace: System +[Serializable] +public class TimeoutException : SystemException // TypeDefIndex: 1734 +{ + // Fields + private const int Result = -2146233083; // 0x00 + + // Methods + public void .ctor(); // 0x1027E6C0 + public void .ctor(string message); // 0x1027E6A0 + public void .ctor(string message, Exception innerException); // 0x1027E710 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 +} + +// Namespace: System +[Serializable] +public enum TypeCode // TypeDefIndex: 1735 +{ + Empty = 0, + Object = 1, + DBNull = 2, + Boolean = 3, + Char = 4, + SByte = 5, + Byte = 6, + Int16 = 7, + UInt16 = 8, + Int32 = 9, + UInt32 = 10, + Int64 = 11, + UInt64 = 12, + Single = 13, + Double = 14, + Decimal = 15, + DateTime = 16, + String = 18 +} + +// Namespace: System +[Serializable] +public sealed class TypeInitializationException : SystemException // TypeDefIndex: 1736 +{ + // Fields + private string type_name; // 0x34 + + // Properties + public string TypeName { get; } // 0x100E9ED0 + + // Methods + public void .ctor(string fullTypeName, Exception innerException); // 0x1027EE90 + internal void .ctor(SerializationInfo info, StreamingContext context); // 0x1027EF10 + public override void GetObjectData(SerializationInfo info, StreamingContext context); // 0x1027EE30 +} + +// Namespace: System +[Serializable] +public class TypeLoadException : SystemException // TypeDefIndex: 1737 +{ + // Fields + private const int Result = -2146233054; // 0x00 + private string className; // 0x34 + private string assemblyName; // 0x38 + + // Properties + public override string Message { get; } // 0x1027F290 + public string TypeName { get; } // 0x1027F380 + + // Methods + public void .ctor(); // 0x1027F110 + public void .ctor(string message); // 0x1027F0F0 + public void .ctor(string message, Exception inner); // 0x1027F1C0 + internal void .ctor(string className, string assemblyName); // 0x1027F160 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x1027F1F0 + public override void GetObjectData(SerializationInfo info, StreamingContext context); // 0x1027EF90 +} + +// Namespace: System +[Serializable] +public class TypeUnloadedException : SystemException // TypeDefIndex: 1738 +{ + // Methods + public void .ctor(); // 0x1027F3E0 + public void .ctor(string message); // 0x100E5680 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 + public void .ctor(string message, Exception innerException); // 0x100E5670 +} + +// Namespace: System +[Serializable] +public class UnauthorizedAccessException : SystemException // TypeDefIndex: 1739 +{ + // Fields + private const int Result = -2146233088; // 0x00 + + // Methods + public void .ctor(); // 0x10349AD0 + public void .ctor(string message); // 0x10349A80 + public void .ctor(string message, Exception inner); // 0x10349AA0 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 +} + +// Namespace: System +[Serializable] +public class UnhandledExceptionEventArgs : EventArgs // TypeDefIndex: 1740 +{ + // Fields + private object exception; // 0x08 + private bool m_isTerminating; // 0x0C + + // Properties + public object ExceptionObject { get; } // 0x100BF0C0 + public bool IsTerminating { get; } // 0x100F8910 + + // Methods + public void .ctor(object exception, bool isTerminating); // 0x10349B20 +} + +// Namespace: System +[Serializable] +internal class UnitySerializationHolder : ISerializable, IObjectReference // TypeDefIndex: 1741 +{ + // Fields + private string _data; // 0x08 + private UnityType _unityType; // 0x0C + private string _assemblyName; // 0x10 + + // Methods + private void .ctor(SerializationInfo info, StreamingContext ctx); // 0x1034A070 + public static void GetTypeData(Type instance, SerializationInfo info, StreamingContext ctx); // 0x10349F80 + public static void GetDBNullData(DBNull instance, SerializationInfo info, StreamingContext ctx); // 0x10349C50 + public static void GetAssemblyData(Assembly instance, SerializationInfo info, StreamingContext ctx); // 0x10349B80 + public static void GetModuleData(Module instance, SerializationInfo info, StreamingContext ctx); // 0x10349D40 + public virtual void GetObjectData(SerializationInfo info, StreamingContext context); // 0x10349E10 + public virtual object GetRealObject(StreamingContext context); // 0x10349E60 +} + +// Namespace: +private enum UnityType : byte // TypeDefIndex: 1742 +{ + DBNull = 2, + Type = 4, + Module = 5, + Assembly = 6 +} + +// Namespace: System +internal struct Variant // TypeDefIndex: 1743 +{ + // Fields + public short vt; // 0x08 + public ushort wReserved1; // 0x0A + public ushort wReserved2; // 0x0C + public ushort wReserved3; // 0x0E + public long llVal; // 0x10 + public int lVal; // 0x10 + public byte bVal; // 0x10 + public short iVal; // 0x10 + public float fltVal; // 0x10 + public double dblVal; // 0x10 + public short boolVal; // 0x10 + public IntPtr bstrVal; // 0x10 + public sbyte cVal; // 0x10 + public ushort uiVal; // 0x10 + public uint ulVal; // 0x10 + public ulong ullVal; // 0x10 + public int intVal; // 0x10 + public uint uintVal; // 0x10 + public IntPtr pdispVal; // 0x10 + public BRECORD bRecord; // 0x10 + + // Methods + public void SetValue(object obj); // 0x100308C0 + public object GetValue(); // 0x100308B0 + public void Clear(); // 0x10030800 +} + +// Namespace: System +internal struct BRECORD // TypeDefIndex: 1744 +{ + // Fields + private IntPtr pvRecord; // 0x08 + private IntPtr pRecInfo; // 0x0C + +} + +// Namespace: System +[Serializable] +public sealed class Version : IComparable, ICloneable, IComparable`1, IEquatable`1 // TypeDefIndex: 1745 +{ + // Fields + private const int UNDEFINED = -1; // 0x00 + private int _Major; // 0x08 + private int _Minor; // 0x0C + private int _Build; // 0x10 + private int _Revision; // 0x14 + + // Properties + public int Build { get; } // 0x100BFC20 + public int Major { get; } // 0x100BF0C0 + public int Minor { get; } // 0x100C5B30 + public int Revision { get; } // 0x100EF0C0 + public short MajorRevision { get; } // 0x1034BCF0 + public short MinorRevision { get; } // 0x1034BD00 + + // Methods + public void .ctor(); // 0x1034BA60 + public void .ctor(string version); // 0x1034BB50 + public void .ctor(int major, int minor); // 0x1034BAB0 + public void .ctor(int major, int minor, int build); // 0x1034B970 + public void .ctor(int major, int minor, int build, int revision); // 0x1034BA30 + private void CheckedSet(int defined, int major, int minor, int build, int revision); // 0x1034AE60 + public object Clone(); // 0x1034AF40 + public int CompareTo(object version); // 0x1034B0D0 + public override bool Equals(object obj); // 0x1034B400 + public int CompareTo(Version value); // 0x1034B170 + public bool Equals(Version obj); // 0x1034B3A0 + public override int GetHashCode(); // 0x1034B490 + public override string ToString(); // 0x1034B860 + public string ToString(int fieldCount); // 0x1034B4B0 + internal static Version CreateFromString(string info); // 0x1034B1E0 + public static bool op_Equality(Version v1, Version v2); // 0x1034BD10 + public static bool op_Inequality(Version v1, Version v2); // 0x1034BD80 + public static bool op_GreaterThan(Version v1, Version v2); // 0x1034BD50 + public static bool op_GreaterThanOrEqual(Version v1, Version v2); // 0x1034BD20 + public static bool op_LessThan(Version v1, Version v2); // 0x1034BDD0 + public static bool op_LessThanOrEqual(Version v1, Version v2); // 0x1034BDA0 +} + +// Namespace: System +[Serializable] +public class WeakReference : ISerializable // TypeDefIndex: 1746 +{ + // Fields + private bool isLongReference; // 0x08 + private GCHandle gcHandle; // 0x0C + + // Properties + public virtual bool IsAlive { get; } // 0x1034C170 + public virtual object Target { get; set; } // 0x1034C1A0 0x1034C1C0 + public virtual bool TrackResurrection { get; } // 0x100EA020 + + // Methods + protected void .ctor(); // 0x100BF000 + public void .ctor(object target); // 0x1034C020 + public void .ctor(object target, bool trackResurrection); // 0x1034C050 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x1034C080 + private void AllocateHandle(object target); // 0x1034BE00 + protected override void Finalize(); // 0x1034BE30 + public virtual void GetObjectData(SerializationInfo info, StreamingContext context); // 0x1034BEE0 +} + +// Namespace: System +public interface _AppDomain // TypeDefIndex: 1747 +{ + // Properties + string BaseDirectory { get; } + string DynamicDirectory { get; } + Evidence Evidence { get; } + string FriendlyName { get; } + string RelativeSearchPath { get; } + bool ShadowCopyFiles { get; } + + // Events + event AssemblyLoadEventHandler AssemblyLoad { + add; // 0x00000000 + remove; // 0x00000000 + } + event ResolveEventHandler AssemblyResolve { + add; // 0x00000000 + remove; // 0x00000000 + } + event EventHandler DomainUnload { + add; // 0x00000000 + remove; // 0x00000000 + } + event EventHandler ProcessExit { + add; // 0x00000000 + remove; // 0x00000000 + } + event ResolveEventHandler ResourceResolve { + add; // 0x00000000 + remove; // 0x00000000 + } + event ResolveEventHandler TypeResolve { + add; // 0x00000000 + remove; // 0x00000000 + } + event UnhandledExceptionEventHandler UnhandledException { + add; // 0x00000000 + remove; // 0x00000000 + } + + // Methods + void AppendPrivatePath(string path); + void ClearPrivatePath(); + void ClearShadowCopyPath(); + ObjectHandle CreateInstance(string assemblyName, string typeName); + ObjectHandle CreateInstance(string assemblyName, string typeName, object[] activationAttributes); + ObjectHandle CreateInstance(string assemblyName, string typeName, bool ignoreCase, BindingFlags bindingAttr, Binder binder, object[] args, CultureInfo culture, object[] activationAttributes, Evidence securityAttributes); + ObjectHandle CreateInstanceFrom(string assemblyFile, string typeName); + ObjectHandle CreateInstanceFrom(string assemblyFile, string typeName, object[] activationAttributes); + ObjectHandle CreateInstanceFrom(string assemblyFile, string typeName, bool ignoreCase, BindingFlags bindingAttr, Binder binder, object[] args, CultureInfo culture, object[] activationAttributes, Evidence securityAttributes); + AssemblyBuilder DefineDynamicAssembly(AssemblyName name, AssemblyBuilderAccess access); + AssemblyBuilder DefineDynamicAssembly(AssemblyName name, AssemblyBuilderAccess access, Evidence evidence); + AssemblyBuilder DefineDynamicAssembly(AssemblyName name, AssemblyBuilderAccess access, string dir); + AssemblyBuilder DefineDynamicAssembly(AssemblyName name, AssemblyBuilderAccess access, string dir, Evidence evidence); + AssemblyBuilder DefineDynamicAssembly(AssemblyName name, AssemblyBuilderAccess access, PermissionSet requiredPermissions, PermissionSet optionalPermissions, PermissionSet refusedPermissions); + AssemblyBuilder DefineDynamicAssembly(AssemblyName name, AssemblyBuilderAccess access, Evidence evidence, PermissionSet requiredPermissions, PermissionSet optionalPermissions, PermissionSet refusedPermissions); + AssemblyBuilder DefineDynamicAssembly(AssemblyName name, AssemblyBuilderAccess access, string dir, PermissionSet requiredPermissions, PermissionSet optionalPermissions, PermissionSet refusedPermissions); + AssemblyBuilder DefineDynamicAssembly(AssemblyName name, AssemblyBuilderAccess access, string dir, Evidence evidence, PermissionSet requiredPermissions, PermissionSet optionalPermissions, PermissionSet refusedPermissions); + AssemblyBuilder DefineDynamicAssembly(AssemblyName name, AssemblyBuilderAccess access, string dir, Evidence evidence, PermissionSet requiredPermissions, PermissionSet optionalPermissions, PermissionSet refusedPermissions, bool isSynchronized); + void DoCallBack(CrossAppDomainDelegate theDelegate); + bool Equals(object other); + int ExecuteAssembly(string assemblyFile); + int ExecuteAssembly(string assemblyFile, Evidence assemblySecurity); + int ExecuteAssembly(string assemblyFile, Evidence assemblySecurity, string[] args); + Assembly[] GetAssemblies(); + object GetData(string name); + int GetHashCode(); + object GetLifetimeService(); + Type GetType(); + object InitializeLifetimeService(); + Assembly Load(AssemblyName assemblyRef); + Assembly Load(byte[] rawAssembly); + Assembly Load(string assemblyString); + Assembly Load(AssemblyName assemblyRef, Evidence assemblySecurity); + Assembly Load(byte[] rawAssembly, byte[] rawSymbolStore); + Assembly Load(string assemblyString, Evidence assemblySecurity); + Assembly Load(byte[] rawAssembly, byte[] rawSymbolStore, Evidence securityEvidence); + void SetAppDomainPolicy(PolicyLevel domainPolicy); + void SetCachePath(string s); + void SetData(string name, object data); + void SetPrincipalPolicy(PrincipalPolicy policy); + void SetShadowCopyPath(string s); + void SetThreadPrincipal(IPrincipal principal); + string ToString(); + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); +} + +// Namespace: System +internal class __ComObject : MarshalByRefObject // TypeDefIndex: 1748 +{ + // Fields + private IntPtr iunknown; // 0x0C + private IntPtr hash_table; // 0x10 + + // Properties + internal IntPtr IUnknown { get; } // 0x1034CC30 + internal IntPtr IDispatch { get; } // 0x1034CAE0 + internal static Guid IID_IUnknown { get; } // 0x1034CBE0 + internal static Guid IID_IDispatch { get; } // 0x1034CB90 + + // Methods + public void .ctor(); // 0x1034C9D0 + internal void .ctor(Type t); // 0x1034CA00 + internal void .ctor(IntPtr pItf); // 0x1034CA20 + internal static __ComObject CreateRCW(Type t); // 0x1034C2E0 + private void ReleaseInterfaces(); // 0x1034C9C0 + protected override void Finalize(); // 0x1034C3E0 + internal void Initialize(Type t); // 0x1034C680 + private static Guid GetCLSID(Type t); // 0x1034C490 + internal IntPtr GetInterfaceInternal(Type t, bool throwException); // 0x1034C620 + internal IntPtr GetInterface(Type t, bool throwException); // 0x1034C660 + internal IntPtr GetInterface(Type t); // 0x1034C640 + private void CheckIUnknown(); // 0x1034C1E0 + public override bool Equals(object obj); // 0x1034C2F0 + public override int GetHashCode(); // 0x1034C600 + private static extern int CoCreateInstance(Guid rclsid, IntPtr pUnkOuter, uint dwClsContext, Guid riid, out IntPtr pUnk); // 0x1034C250 +} + +// Namespace: Mono.Math.Prime +internal delegate bool PrimalityTest(BigInteger bi, ConfidenceFactor confidence); // TypeDefIndex: 1749; 0x10171D80 + +// Namespace: System.Reflection +[Serializable] +public delegate bool MemberFilter(MemberInfo m, object filterCriteria); // TypeDefIndex: 1750; 0x10170480 + +// Namespace: System.Reflection +[Serializable] +public delegate Module ModuleResolveEventHandler(object sender, ResolveEventArgs e); // TypeDefIndex: 1751; 0x10171D80 + +// Namespace: System.Reflection +internal delegate object GetterAdapter(object _this); // TypeDefIndex: 1752; 0x1016FF70 + +// Namespace: System.Reflection +internal delegate T Getter`2(T _this); // TypeDefIndex: 1753; 0x00000000 + +// Namespace: System.Reflection +[Serializable] +public delegate bool TypeFilter(Type m, object filterCriteria); // TypeDefIndex: 1754; 0x10170480 + +// Namespace: System.Runtime.InteropServices +public delegate IntPtr ObjectCreationDelegate(IntPtr aggregator); // TypeDefIndex: 1755; 0x101A87B0 + +// Namespace: System.Runtime.Remoting.Contexts +public delegate void CrossContextDelegate(); // TypeDefIndex: 1756; 0x101D1860 + +// Namespace: System.Runtime.Remoting.Messaging +public delegate object HeaderHandler(Header[] headers); // TypeDefIndex: 1757; 0x101D3090 + +// Namespace: System.Runtime.Remoting.Messaging +public delegate bool MessageSurrogateFilter(string key, object value); // TypeDefIndex: 1758; 0x101D6370 + +// Namespace: System.Threading +public delegate void ContextCallback(object state); // TypeDefIndex: 1759; 0x10273710 + +// Namespace: System.Threading +public delegate void IOCompletionCallback(uint errorCode, uint numBytes, void * pOVERLAP); // TypeDefIndex: 1760; 0x102744A0 + +// Namespace: System.Threading +public delegate void ParameterizedThreadStart(object obj); // TypeDefIndex: 1761; 0x10273710 + +// Namespace: System.Threading +public delegate void SendOrPostCallback(object state); // TypeDefIndex: 1762; 0x10273710 + +// Namespace: System.Threading +public delegate void ThreadStart(); // TypeDefIndex: 1763; 0x10279480 + +// Namespace: System.Threading +public delegate void TimerCallback(object state); // TypeDefIndex: 1764; 0x10273710 + +// Namespace: System.Threading +public delegate void WaitCallback(object state); // TypeDefIndex: 1765; 0x10273710 + +// Namespace: System.Threading +public delegate void WaitOrTimerCallback(object state, bool timedOut); // TypeDefIndex: 1766; 0x10202CA0 + +// Namespace: System +public delegate void Action`1(T obj); // TypeDefIndex: 1767; 0x00000000 + +// Namespace: System +[Serializable] +public delegate void AppDomainInitializer(string[] args); // TypeDefIndex: 1768; 0x1015A4E0 + +// Namespace: System +[Serializable] +public delegate void AssemblyLoadEventHandler(object sender, AssemblyLoadEventArgs args); // TypeDefIndex: 1769; 0x1016E5B0 + +// Namespace: System +public delegate int Comparison`1(T x, T y); // TypeDefIndex: 1770; 0x00000000 + +// Namespace: System +public delegate void ConsoleCancelEventHandler(object sender, ConsoleCancelEventArgs e); // TypeDefIndex: 1771; 0x1016E5B0 + +// Namespace: System +public delegate T Converter`2(T input); // TypeDefIndex: 1772; 0x00000000 + +// Namespace: System +public delegate void CrossAppDomainDelegate(); // TypeDefIndex: 1773; 0x102DE100 + +// Namespace: System +[Serializable] +public delegate void EventHandler`1(object sender, T e); // TypeDefIndex: 1774; 0x00000000 + +// Namespace: System +[Serializable] +public delegate void EventHandler(object sender, EventArgs e); // TypeDefIndex: 1775; 0x1016E5B0 + +// Namespace: System +public delegate bool Predicate`1(T obj); // TypeDefIndex: 1776; 0x00000000 + +// Namespace: System +[Serializable] +public delegate Assembly ResolveEventHandler(object sender, ResolveEventArgs args); // TypeDefIndex: 1777; 0x10171D80 + +// Namespace: System +[Serializable] +public delegate void UnhandledExceptionEventHandler(object sender, UnhandledExceptionEventArgs e); // TypeDefIndex: 1778; 0x1016E5B0 + +// Namespace: +internal class // TypeDefIndex: 1779 +{ + // Fields + internal static $ArrayType$56 $$field-0 = null; // 0x00 + internal static $ArrayType$24 $$field-1 = null; // 0x38 + internal static $ArrayType$24 $$field-2 = null; // 0x50 + internal static $ArrayType$24 $$field-3 = null; // 0x68 + internal static $ArrayType$24 $$field-4 = null; // 0x80 + internal static $ArrayType$16 $$field-5 = null; // 0x98 + internal static $ArrayType$16 $$field-6 = null; // 0xA8 + internal static $ArrayType$40 $$field-7 = null; // 0xB8 + internal static $ArrayType$40 $$field-8 = null; // 0xE0 + internal static $ArrayType$36 $$field-9 = null; // 0x108 + internal static $ArrayType$36 $$field-10 = null; // 0x12C + internal static $ArrayType$120 $$field-11 = null; // 0x150 + internal static $ArrayType$120 $$field-12 = null; // 0x1C8 + internal static $ArrayType$36 $$field-13 = null; // 0x240 + internal static $ArrayType$36 $$field-14 = null; // 0x264 + internal static $ArrayType$3132 $$field-15 = null; // 0x288 + internal static $ArrayType$20 $$field-16 = null; // 0xEC4 + internal static $ArrayType$32 $$field-17 = null; // 0xED8 + internal static $ArrayType$48 $$field-18 = null; // 0xEF8 + internal static $ArrayType$64 $$field-19 = null; // 0xF28 + internal static $ArrayType$64 $$field-20 = null; // 0xF68 + internal static $ArrayType$64 $$field-21 = null; // 0xFA8 + internal static $ArrayType$64 $$field-22 = null; // 0xFE8 + internal static $ArrayType$12 $$field-23 = null; // 0x1028 + internal static $ArrayType$12 $$field-24 = null; // 0x1034 + internal static $ArrayType$12 $$field-25 = null; // 0x1040 + internal static $ArrayType$16 $$field-26 = null; // 0x104C + internal static $ArrayType$136 $$field-27 = null; // 0x105C + internal static $ArrayType$8 $$field-28 = null; // 0x10E4 + internal static $ArrayType$84 $$field-29 = null; // 0x10EC + internal static $ArrayType$72 $$field-30 = null; // 0x1140 + internal static $ArrayType$8 $$field-31 = null; // 0x1188 + internal static $ArrayType$20 $$field-32 = null; // 0x1190 + internal static $ArrayType$64 $$field-33 = null; // 0x11A4 + internal static $ArrayType$124 $$field-34 = null; // 0x11E4 + internal static $ArrayType$32 $$field-35 = null; // 0x1260 + internal static $ArrayType$96 $$field-36 = null; // 0x1280 + internal static $ArrayType$2048 $$field-37 = null; // 0x12E0 + internal static $ArrayType$56 $$field-38 = null; // 0x1AE0 + internal static $ArrayType$16 $$field-39 = null; // 0x1B18 + internal static $ArrayType$48 $$field-40 = null; // 0x1B28 + internal static $ArrayType$2048 $$field-41 = null; // 0x1B58 + internal static $ArrayType$2048 $$field-42 = null; // 0x2358 + internal static $ArrayType$256 $$field-43 = null; // 0x2B58 + internal static $ArrayType$256 $$field-44 = null; // 0x2C58 + internal static $ArrayType$120 $$field-45 = null; // 0x2D58 + internal static $ArrayType$256 $$field-46 = null; // 0x2DD0 + internal static $ArrayType$256 $$field-47 = null; // 0x2ED0 + internal static $ArrayType$1024 $$field-48 = null; // 0x2FD0 + internal static $ArrayType$1024 $$field-49 = null; // 0x33D0 + internal static $ArrayType$1024 $$field-50 = null; // 0x37D0 + internal static $ArrayType$1024 $$field-51 = null; // 0x3BD0 + internal static $ArrayType$1024 $$field-52 = null; // 0x3FD0 + internal static $ArrayType$1024 $$field-53 = null; // 0x43D0 + internal static $ArrayType$1024 $$field-54 = null; // 0x47D0 + internal static $ArrayType$1024 $$field-55 = null; // 0x4BD0 + internal static $ArrayType$256 $$field-56 = null; // 0x4FD0 + internal static $ArrayType$640 $$field-57 = null; // 0x50D0 + internal static $ArrayType$96 $$field-58 = null; // 0x5350 + internal static $ArrayType$160 $$field-59 = null; // 0x53B0 + internal static $ArrayType$12 $$field-60 = null; // 0x5450 + internal static $ArrayType$380 $$field-61 = null; // 0x545C + internal static $ArrayType$128 $$field-62 = null; // 0x55D8 + internal static $ArrayType$256 $$field-63 = null; // 0x5658 + internal static $ArrayType$52 $$field-64 = null; // 0x5758 + internal static $ArrayType$52 $$field-65 = null; // 0x578C + internal static $ArrayType$1668 $$field-66 = null; // 0x57C0 + internal static $ArrayType$2100 $$field-67 = null; // 0x5E44 + internal static $ArrayType$1452 $$field-68 = null; // 0x6678 + + // Methods + public void .ctor(); // 0x100BF000 +} + +// Namespace: +private struct $ArrayType$56 // TypeDefIndex: 1780 +{ +} + +// Namespace: +private struct $ArrayType$24 // TypeDefIndex: 1781 +{ +} + +// Namespace: +private struct $ArrayType$16 // TypeDefIndex: 1782 +{ +} + +// Namespace: +private struct $ArrayType$40 // TypeDefIndex: 1783 +{ +} + +// Namespace: +private struct $ArrayType$36 // TypeDefIndex: 1784 +{ +} + +// Namespace: +private struct $ArrayType$120 // TypeDefIndex: 1785 +{ +} + +// Namespace: +private struct $ArrayType$3132 // TypeDefIndex: 1786 +{ +} + +// Namespace: +private struct $ArrayType$20 // TypeDefIndex: 1787 +{ +} + +// Namespace: +private struct $ArrayType$32 // TypeDefIndex: 1788 +{ +} + +// Namespace: +private struct $ArrayType$48 // TypeDefIndex: 1789 +{ +} + +// Namespace: +private struct $ArrayType$64 // TypeDefIndex: 1790 +{ +} + +// Namespace: +private struct $ArrayType$12 // TypeDefIndex: 1791 +{ +} + +// Namespace: +private struct $ArrayType$136 // TypeDefIndex: 1792 +{ +} + +// Namespace: +private struct $ArrayType$8 // TypeDefIndex: 1793 +{ +} + +// Namespace: +private struct $ArrayType$84 // TypeDefIndex: 1794 +{ +} + +// Namespace: +private struct $ArrayType$72 // TypeDefIndex: 1795 +{ +} + +// Namespace: +private struct $ArrayType$124 // TypeDefIndex: 1796 +{ +} + +// Namespace: +private struct $ArrayType$96 // TypeDefIndex: 1797 +{ +} + +// Namespace: +private struct $ArrayType$2048 // TypeDefIndex: 1798 +{ +} + +// Namespace: +private struct $ArrayType$256 // TypeDefIndex: 1799 +{ +} + +// Namespace: +private struct $ArrayType$1024 // TypeDefIndex: 1800 +{ +} + +// Namespace: +private struct $ArrayType$640 // TypeDefIndex: 1801 +{ +} + +// Namespace: +private struct $ArrayType$160 // TypeDefIndex: 1802 +{ +} + +// Namespace: +private struct $ArrayType$380 // TypeDefIndex: 1803 +{ +} + +// Namespace: +private struct $ArrayType$128 // TypeDefIndex: 1804 +{ +} + +// Namespace: +private struct $ArrayType$52 // TypeDefIndex: 1805 +{ +} + +// Namespace: +private struct $ArrayType$1668 // TypeDefIndex: 1806 +{ +} + +// Namespace: +private struct $ArrayType$2100 // TypeDefIndex: 1807 +{ +} + +// Namespace: +private struct $ArrayType$1452 // TypeDefIndex: 1808 +{ +} + +// Namespace: System +internal class __Il2CppComObject // TypeDefIndex: 1809 +{ + // Methods + protected override void Finalize(); // 0x1034CCA0 +} + +// Namespace: +internal class // TypeDefIndex: 1810 +{ +} + +// Namespace: Il2CppTests.TestSources +internal class GenericClass`1 // TypeDefIndex: 1811 +{ + // Methods + public void GenericMethodWithClassGenericTypeParameter(T v); + public void .ctor(); +} diff --git a/Il2CppTests/TestExpectedResults/GameAssembly-Methods.cs b/Il2CppTests/TestExpectedResults/GameAssembly-Methods.cs new file mode 100644 index 0000000..857cfd4 --- /dev/null +++ b/Il2CppTests/TestExpectedResults/GameAssembly-Methods.cs @@ -0,0 +1,37249 @@ +// Image 0: mscorlib.dll - 0 +// Image 1: Methods.dll - 1810 + +// Namespace: +internal class // TypeDefIndex: 0 +{ +} + +// Namespace: System +[Serializable] +public class Object // TypeDefIndex: 1 +{ + // Methods + public void .ctor(); // 0x100C5530 + public virtual bool Equals(object obj); // 0x100F8860 + public static bool Equals(object objA, object objB); // 0x100F8820 + protected override void Finalize(); // 0x100C5530 + public virtual int GetHashCode(); // 0x100F8870 + public Type GetType(); // 0x100ED2B0 + protected object MemberwiseClone(); // 0x100F8880 + public virtual string ToString(); // 0x100F8890 + public static bool ReferenceEquals(object objA, object objB); // 0x100F8860 + internal static int InternalGetHashCode(object o); // 0x100F8870 + internal IntPtr obj_address(); // 0x100F88D0 + private void FieldGetter(string typeName, string fieldName, object val); // 0x100C5530 + private void FieldSetter(string typeName, string fieldName, object val); // 0x100C5530 +} + +// Namespace: System +[Serializable] +public abstract class ValueType // TypeDefIndex: 2 +{ + // Methods + protected void .ctor(); // 0x100BF000 + private static bool InternalEquals(object o1, object o2, out object[] fields); // 0x1034A220 + internal static bool DefaultEquals(object o1, object o2); // 0x1034A0F0 + public override bool Equals(object obj); // 0x1034A0F0 + internal static int InternalGetHashCode(object o, out object[] fields); // 0x1034A240 + public override int GetHashCode(); // 0x1034A190 + public override string ToString(); // 0x1034A260 +} + +// Namespace: System +[Serializable] +public abstract class Attribute : _Attribute // TypeDefIndex: 3 +{ + // Properties + public virtual object TypeId { get; } // 0x1015CD60 + + // Methods + protected void .ctor(); // 0x100BF000 + private void System.Runtime.InteropServices._Attribute.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x10311FE0 + private void System.Runtime.InteropServices._Attribute.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x10312080 + private void System.Runtime.InteropServices._Attribute.GetTypeInfoCount(out uint pcTInfo); // 0x10312030 + private void System.Runtime.InteropServices._Attribute.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x103120D0 + private static void CheckParameters(object element, Type attributeType); // 0x10310D50 + private static Attribute FindAttribute(object[] attributes); // 0x10310EE0 + public static Attribute GetCustomAttribute(ParameterInfo element, Type attributeType); // 0x10310F80 + public static Attribute GetCustomAttribute(MemberInfo element, Type attributeType); // 0x10311110 + public static Attribute GetCustomAttribute(Assembly element, Type attributeType); // 0x10311020 + public static Attribute GetCustomAttribute(Module element, Type attributeType); // 0x10311070 + public static Attribute GetCustomAttribute(Module element, Type attributeType, bool inherit); // 0x10310FD0 + public static Attribute GetCustomAttribute(Assembly element, Type attributeType, bool inherit); // 0x103110C0 + public static Attribute GetCustomAttribute(ParameterInfo element, Type attributeType, bool inherit); // 0x10311180 + public static Attribute GetCustomAttribute(MemberInfo element, Type attributeType, bool inherit); // 0x103111D0 + public static Attribute[] GetCustomAttributes(Assembly element); // 0x10311AA0 + public static Attribute[] GetCustomAttributes(ParameterInfo element); // 0x103116E0 + public static Attribute[] GetCustomAttributes(MemberInfo element); // 0x10311A80 + public static Attribute[] GetCustomAttributes(Module element); // 0x10311230 + public static Attribute[] GetCustomAttributes(Assembly element, Type attributeType); // 0x10311650 + public static Attribute[] GetCustomAttributes(Module element, Type attributeType); // 0x10311840 + public static Attribute[] GetCustomAttributes(ParameterInfo element, Type attributeType); // 0x103119F0 + public static Attribute[] GetCustomAttributes(MemberInfo element, Type type); // 0x10311370 + public static Attribute[] GetCustomAttributes(Assembly element, Type attributeType, bool inherit); // 0x103112E0 + public static Attribute[] GetCustomAttributes(ParameterInfo element, Type attributeType, bool inherit); // 0x103115C0 + public static Attribute[] GetCustomAttributes(Module element, Type attributeType, bool inherit); // 0x10311530 + public static Attribute[] GetCustomAttributes(MemberInfo element, Type type, bool inherit); // 0x10311460 + public static Attribute[] GetCustomAttributes(Module element, bool inherit); // 0x10311B50 + public static Attribute[] GetCustomAttributes(Assembly element, bool inherit); // 0x10311C00 + public static Attribute[] GetCustomAttributes(MemberInfo element, bool inherit); // 0x103118D0 + public static Attribute[] GetCustomAttributes(ParameterInfo element, bool inherit); // 0x10311790 + public override int GetHashCode(); // 0x102110E0 + public virtual bool IsDefaultAttribute(); // 0x100EFBF0 + public static bool IsDefined(Module element, Type attributeType); // 0x10311E60 + public static bool IsDefined(ParameterInfo element, Type attributeType); // 0x10311F50 + public static bool IsDefined(MemberInfo element, Type attributeType); // 0x10311E00 + public static bool IsDefined(Assembly element, Type attributeType); // 0x10311E20 + public static bool IsDefined(MemberInfo element, Type attributeType, bool inherit); // 0x10311CF0 + public static bool IsDefined(Assembly element, Type attributeType, bool inherit); // 0x10311CB0 + public static bool IsDefined(Module element, Type attributeType, bool inherit); // 0x10311F10 + public static bool IsDefined(ParameterInfo element, Type attributeType, bool inherit); // 0x10311EA0 + public virtual bool Match(object obj); // 0x10311FC0 + public override bool Equals(object obj); // 0x10310E60 +} + +// Namespace: System.Runtime.InteropServices +public interface _Attribute // TypeDefIndex: 4 +{ + // Methods + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); +} + +// Namespace: System +[Serializable] +public struct Int32 : IFormattable, IConvertible, IComparable, IComparable`1, IEquatable`1 // TypeDefIndex: 5 +{ + // Fields + public const int MaxValue = 2147483647; // 0x00 + public const int MinValue = -2147483648; // 0x00 + internal int m_value; // 0x08 + + // Methods + private bool System.IConvertible.ToBoolean(IFormatProvider provider); // 0x10004860 + private byte System.IConvertible.ToByte(IFormatProvider provider); // 0x100048C0 + private char System.IConvertible.ToChar(IFormatProvider provider); // 0x10004920 + private DateTime System.IConvertible.ToDateTime(IFormatProvider provider); // 0x10004980 + private Decimal System.IConvertible.ToDecimal(IFormatProvider provider); // 0x100049F0 + private double System.IConvertible.ToDouble(IFormatProvider provider); // 0x10004A60 + private short System.IConvertible.ToInt16(IFormatProvider provider); // 0x10004AC0 + private int System.IConvertible.ToInt32(IFormatProvider provider); // 0x10003A80 + private long System.IConvertible.ToInt64(IFormatProvider provider); // 0x10004B20 + private sbyte System.IConvertible.ToSByte(IFormatProvider provider); // 0x10004B80 + private float System.IConvertible.ToSingle(IFormatProvider provider); // 0x10004BE0 + private object System.IConvertible.ToType(Type targetType, IFormatProvider provider); // 0x10004C40 + private ushort System.IConvertible.ToUInt16(IFormatProvider provider); // 0x10004CF0 + private uint System.IConvertible.ToUInt32(IFormatProvider provider); // 0x10004D50 + private ulong System.IConvertible.ToUInt64(IFormatProvider provider); // 0x10004DB0 + public int CompareTo(object value); // 0x100046F0 + public override bool Equals(object obj); // 0x100047C0 + public override int GetHashCode(); // 0x10003A80 + public int CompareTo(int value); // 0x100047A0 + public bool Equals(int obj); // 0x10004830 + internal static bool ProcessTrailingWhitespace(bool tryParse, string s, int position, Exception exc); // 0x100FB5B0 + internal static bool Parse(string s, bool tryParse, out int result, out Exception exc); // 0x100FA7E0 + public static int Parse(string s, IFormatProvider provider); // 0x100FA7C0 + public static int Parse(string s, NumberStyles style); // 0x100FB4B0 + internal static bool CheckStyle(NumberStyles style, bool tryParse, Exception exc); // 0x100F9F50 + internal static bool JumpOverWhite(int pos, string s, bool reportError, bool tryParse, Exception exc); // 0x100FA6D0 + internal static void FindSign(int pos, string s, NumberFormatInfo nfi, bool foundSign, bool negative); // 0x100FA5B0 + internal static void FindCurrency(int pos, string s, NumberFormatInfo nfi, bool foundCurrency); // 0x100FA150 + internal static bool FindExponent(int pos, string s, int exponent, bool tryParse, Exception exc); // 0x100FA200 + internal static bool FindOther(int pos, string s, string other); // 0x100FA510 + internal static bool ValidDigit(char e, bool allowHex); // 0x100FB870 + internal static Exception GetFormatException(); // 0x100FA670 + internal static bool Parse(string s, NumberStyles style, IFormatProvider fp, bool tryParse, out int result, out Exception exc); // 0x100FAA10 + public static int Parse(string s); // 0x100FB540 + public static int Parse(string s, NumberStyles style, IFormatProvider provider); // 0x100FB4D0 + public static bool TryParse(string s, out int result); // 0x100FB7E0 + public static bool TryParse(string s, NumberStyles style, IFormatProvider provider, out int result); // 0x100FB820 + public override string ToString(); // 0x10004ED0 + public string ToString(IFormatProvider provider); // 0x10004F30 + public string ToString(string format); // 0x10004E70 + public string ToString(string format, IFormatProvider provider); // 0x10004E10 + public TypeCode GetTypeCode(); // 0x10004850 +} + +// Namespace: System +public interface IFormattable // TypeDefIndex: 6 +{ + // Methods + string ToString(string format, IFormatProvider formatProvider); +} + +// Namespace: System +public interface IConvertible // TypeDefIndex: 7 +{ + // Methods + TypeCode GetTypeCode(); + bool ToBoolean(IFormatProvider provider); + byte ToByte(IFormatProvider provider); + char ToChar(IFormatProvider provider); + DateTime ToDateTime(IFormatProvider provider); + Decimal ToDecimal(IFormatProvider provider); + double ToDouble(IFormatProvider provider); + short ToInt16(IFormatProvider provider); + int ToInt32(IFormatProvider provider); + long ToInt64(IFormatProvider provider); + sbyte ToSByte(IFormatProvider provider); + float ToSingle(IFormatProvider provider); + string ToString(IFormatProvider provider); + object ToType(Type conversionType, IFormatProvider provider); + ushort ToUInt16(IFormatProvider provider); + uint ToUInt32(IFormatProvider provider); + ulong ToUInt64(IFormatProvider provider); +} + +// Namespace: System +public interface IComparable // TypeDefIndex: 8 +{ + // Methods + int CompareTo(object obj); +} + +// Namespace: System +public interface IComparable`1 // TypeDefIndex: 9 +{ + // Methods + int CompareTo(T other); +} + +// Namespace: System +public sealed class SerializableAttribute : Attribute // TypeDefIndex: 10 +{ + // Methods + public void .ctor(); // 0x100C5970 +} + +// Namespace: System +[Serializable] +public sealed class AttributeUsageAttribute : Attribute // TypeDefIndex: 11 +{ + // Fields + private AttributeTargets valid_on; // 0x08 + private bool allow_multiple; // 0x0C + private bool inherited; // 0x0D + + // Properties + public bool AllowMultiple { get; set; } // 0x100F8910 0x1016CBD0 + public bool Inherited { get; set; } // 0x10298460 0x10298470 + public AttributeTargets ValidOn { get; } // 0x100BF0C0 + + // Methods + public void .ctor(AttributeTargets validOn); // 0x10310D30 +} + +// Namespace: System.Runtime.InteropServices +public sealed class ComVisibleAttribute : Attribute // TypeDefIndex: 12 +{ + // Fields + private bool Visible; // 0x08 + + // Properties + public bool Value { get; } // 0x100EA020 + + // Methods + public void .ctor(bool visibility); // 0x100EA000 +} + +// Namespace: System +public interface IEquatable`1 // TypeDefIndex: 13 +{ + // Methods + bool Equals(T other); +} + +// Namespace: System +[Serializable] +public struct Int64 : IFormattable, IConvertible, IComparable, IComparable`1, IEquatable`1 // TypeDefIndex: 14 +{ + // Fields + public const long MaxValue = 9223372036854775807; // 0x00 + public const long MinValue = -9223372036854775808; // 0x00 + internal long m_value; // 0x08 + + // Methods + private bool System.IConvertible.ToBoolean(IFormatProvider provider); // 0x10005160 + private byte System.IConvertible.ToByte(IFormatProvider provider); // 0x100051C0 + private char System.IConvertible.ToChar(IFormatProvider provider); // 0x10005220 + private DateTime System.IConvertible.ToDateTime(IFormatProvider provider); // 0x10005280 + private Decimal System.IConvertible.ToDecimal(IFormatProvider provider); // 0x100052F0 + private double System.IConvertible.ToDouble(IFormatProvider provider); // 0x10005360 + private short System.IConvertible.ToInt16(IFormatProvider provider); // 0x100053C0 + private int System.IConvertible.ToInt32(IFormatProvider provider); // 0x10005420 + private long System.IConvertible.ToInt64(IFormatProvider provider); // 0x10005480 + private sbyte System.IConvertible.ToSByte(IFormatProvider provider); // 0x100054E0 + private float System.IConvertible.ToSingle(IFormatProvider provider); // 0x10005540 + private object System.IConvertible.ToType(Type targetType, IFormatProvider provider); // 0x100055A0 + private ushort System.IConvertible.ToUInt16(IFormatProvider provider); // 0x10005660 + private uint System.IConvertible.ToUInt32(IFormatProvider provider); // 0x100056C0 + private ulong System.IConvertible.ToUInt64(IFormatProvider provider); // 0x10005720 + public int CompareTo(object value); // 0x10004F90 + public override bool Equals(object obj); // 0x100050A0 + public override int GetHashCode(); // 0x10005140 + public int CompareTo(long value); // 0x10005060 + public bool Equals(long obj); // 0x10005120 + internal static bool Parse(string s, bool tryParse, out long result, out Exception exc); // 0x100FC880 + public static long Parse(string s, IFormatProvider provider); // 0x100FBA40 + public static long Parse(string s, NumberStyles style); // 0x100FB9B0 + internal static bool Parse(string s, NumberStyles style, IFormatProvider fp, bool tryParse, out long result, out Exception exc); // 0x100FBAD0 + public static long Parse(string s); // 0x100FB9D0 + public static long Parse(string s, NumberStyles style, IFormatProvider provider); // 0x100FBA60 + public static bool TryParse(string s, out long result); // 0x100FCD10 + public static bool TryParse(string s, NumberStyles style, IFormatProvider provider, out long result); // 0x100FCCC0 + public override string ToString(); // 0x10005780 + public string ToString(IFormatProvider provider); // 0x10005800 + public string ToString(string format); // 0x100057E0 + public string ToString(string format, IFormatProvider provider); // 0x100057F0 + public TypeCode GetTypeCode(); // 0x10005150 +} + +// Namespace: System +[Serializable] +public struct UInt32 : IFormattable, IConvertible, IComparable, IComparable`1, IEquatable`1 // TypeDefIndex: 15 +{ + // Fields + public const uint MaxValue = 4294967295; // 0x00 + public const uint MinValue = 0; // 0x00 + internal uint m_value; // 0x08 + + // Methods + private bool System.IConvertible.ToBoolean(IFormatProvider provider); // 0x1001A5B0 + private byte System.IConvertible.ToByte(IFormatProvider provider); // 0x1001A610 + private char System.IConvertible.ToChar(IFormatProvider provider); // 0x1001A670 + private DateTime System.IConvertible.ToDateTime(IFormatProvider provider); // 0x1001A6D0 + private Decimal System.IConvertible.ToDecimal(IFormatProvider provider); // 0x1001A740 + private double System.IConvertible.ToDouble(IFormatProvider provider); // 0x1001A7B0 + private short System.IConvertible.ToInt16(IFormatProvider provider); // 0x1001A810 + private int System.IConvertible.ToInt32(IFormatProvider provider); // 0x1001A870 + private long System.IConvertible.ToInt64(IFormatProvider provider); // 0x1001A8D0 + private sbyte System.IConvertible.ToSByte(IFormatProvider provider); // 0x1001A930 + private float System.IConvertible.ToSingle(IFormatProvider provider); // 0x1001A990 + private object System.IConvertible.ToType(Type targetType, IFormatProvider provider); // 0x1001A9F0 + private ushort System.IConvertible.ToUInt16(IFormatProvider provider); // 0x1001AAA0 + private uint System.IConvertible.ToUInt32(IFormatProvider provider); // 0x10003A80 + private ulong System.IConvertible.ToUInt64(IFormatProvider provider); // 0x1001AB00 + public int CompareTo(object value); // 0x1001A480 + public override bool Equals(object obj); // 0x1001A530 + public override int GetHashCode(); // 0x10003A80 + public int CompareTo(uint value); // 0x1001A460 + public bool Equals(uint obj); // 0x10004830 + internal static bool Parse(string s, bool tryParse, out uint result, out Exception exc); // 0x10284480 + internal static bool Parse(string s, NumberStyles style, IFormatProvider provider, bool tryParse, out uint result, out Exception exc); // 0x102839C0 + public static uint Parse(string s); // 0x10284410 + public static uint Parse(string s, NumberStyles style, IFormatProvider provider); // 0x102843A0 + public static uint Parse(string s, IFormatProvider provider); // 0x102839A0 + public static uint Parse(string s, NumberStyles style); // 0x10284380 + public static bool TryParse(string s, out uint result); // 0x10284830 + public static bool TryParse(string s, NumberStyles style, IFormatProvider provider, out uint result); // 0x102847E0 + public override string ToString(); // 0x1001AC80 + public string ToString(IFormatProvider provider); // 0x1001AC20 + public string ToString(string format); // 0x1001ABC0 + public string ToString(string format, IFormatProvider provider); // 0x1001AB60 + public TypeCode GetTypeCode(); // 0x1001A5A0 +} + +// Namespace: System +[Serializable] +public sealed class CLSCompliantAttribute : Attribute // TypeDefIndex: 16 +{ + // Fields + private bool is_compliant; // 0x08 + + // Properties + public bool IsCompliant { get; } // 0x100EA020 + + // Methods + public void .ctor(bool isCompliant); // 0x10315760 +} + +// Namespace: System +[Serializable] +public struct UInt64 : IFormattable, IConvertible, IComparable, IComparable`1, IEquatable`1 // TypeDefIndex: 17 +{ + // Fields + public const ulong MaxValue = 18446744073709551615; // 0x00 + public const ulong MinValue = 0; // 0x00 + internal ulong m_value; // 0x08 + + // Methods + private bool System.IConvertible.ToBoolean(IFormatProvider provider); // 0x1001AE80 + private byte System.IConvertible.ToByte(IFormatProvider provider); // 0x1001AEE0 + private char System.IConvertible.ToChar(IFormatProvider provider); // 0x1001AF40 + private DateTime System.IConvertible.ToDateTime(IFormatProvider provider); // 0x1001AFA0 + private Decimal System.IConvertible.ToDecimal(IFormatProvider provider); // 0x1001B010 + private double System.IConvertible.ToDouble(IFormatProvider provider); // 0x1001B080 + private short System.IConvertible.ToInt16(IFormatProvider provider); // 0x1001B0E0 + private int System.IConvertible.ToInt32(IFormatProvider provider); // 0x1001B140 + private long System.IConvertible.ToInt64(IFormatProvider provider); // 0x1001B1A0 + private sbyte System.IConvertible.ToSByte(IFormatProvider provider); // 0x1001B200 + private float System.IConvertible.ToSingle(IFormatProvider provider); // 0x1001B260 + private object System.IConvertible.ToType(Type targetType, IFormatProvider provider); // 0x1001B2C0 + private ushort System.IConvertible.ToUInt16(IFormatProvider provider); // 0x1001B380 + private uint System.IConvertible.ToUInt32(IFormatProvider provider); // 0x1001B3E0 + private ulong System.IConvertible.ToUInt64(IFormatProvider provider); // 0x10019A10 + public int CompareTo(object value); // 0x1001ACE0 + public override bool Equals(object obj); // 0x1001ADF0 + public override int GetHashCode(); // 0x10005140 + public int CompareTo(ulong value); // 0x1001ADB0 + public bool Equals(ulong obj); // 0x10005120 + public static ulong Parse(string s); // 0x102848F0 + public static ulong Parse(string s, IFormatProvider provider); // 0x10285470 + public static ulong Parse(string s, NumberStyles style); // 0x10284910 + internal static bool Parse(string s, NumberStyles style, IFormatProvider provider, bool tryParse, out ulong result, out Exception exc); // 0x102849A0 + public static ulong Parse(string s, NumberStyles style, IFormatProvider provider); // 0x10284930 + public static bool TryParse(string s, out ulong result); // 0x10285660 + public static bool TryParse(string s, NumberStyles style, IFormatProvider provider, out ulong result); // 0x10285610 + public override string ToString(); // 0x1001B510 + public string ToString(IFormatProvider provider); // 0x1001B4A0 + public string ToString(string format); // 0x1001B440 + public string ToString(string format, IFormatProvider provider); // 0x1001B500 + public TypeCode GetTypeCode(); // 0x1001AE70 +} + +// Namespace: System +[Serializable] +public struct Byte : IFormattable, IConvertible, IComparable, IComparable`1, IEquatable`1 // TypeDefIndex: 18 +{ + // Fields + public const byte MinValue = 0; // 0x00 + public const byte MaxValue = 255; // 0x00 + internal byte m_value; // 0x08 + + // Methods + private object System.IConvertible.ToType(Type targetType, IFormatProvider provider); // 0x1001FBB0 + private bool System.IConvertible.ToBoolean(IFormatProvider provider); // 0x1001F820 + private byte System.IConvertible.ToByte(IFormatProvider provider); // 0x10007100 + private char System.IConvertible.ToChar(IFormatProvider provider); // 0x1001F880 + private DateTime System.IConvertible.ToDateTime(IFormatProvider provider); // 0x1001F8E0 + private Decimal System.IConvertible.ToDecimal(IFormatProvider provider); // 0x1001F900 + private double System.IConvertible.ToDouble(IFormatProvider provider); // 0x1001F970 + private short System.IConvertible.ToInt16(IFormatProvider provider); // 0x1001F9D0 + private int System.IConvertible.ToInt32(IFormatProvider provider); // 0x1001FA30 + private long System.IConvertible.ToInt64(IFormatProvider provider); // 0x1001FA90 + private sbyte System.IConvertible.ToSByte(IFormatProvider provider); // 0x1001FAF0 + private float System.IConvertible.ToSingle(IFormatProvider provider); // 0x1001FB50 + private ushort System.IConvertible.ToUInt16(IFormatProvider provider); // 0x1001FC60 + private uint System.IConvertible.ToUInt32(IFormatProvider provider); // 0x1001FCC0 + private ulong System.IConvertible.ToUInt64(IFormatProvider provider); // 0x1001FD20 + public int CompareTo(object value); // 0x1001F690 + public override bool Equals(object obj); // 0x1001F790 + public override int GetHashCode(); // 0x1001F800 + public int CompareTo(byte value); // 0x1001F750 + public bool Equals(byte obj); // 0x1001F770 + public static byte Parse(string s, IFormatProvider provider); // 0x10315450 + public static byte Parse(string s, NumberStyles style); // 0x10315410 + public static byte Parse(string s, NumberStyles style, IFormatProvider provider); // 0x10315470 + public static byte Parse(string s); // 0x10315430 + public static bool TryParse(string s, out byte result); // 0x10315710 + public static bool TryParse(string s, NumberStyles style, IFormatProvider provider, out byte result); // 0x103156C0 + public override string ToString(); // 0x1001FE40 + public string ToString(string format); // 0x1001FD80 + public string ToString(IFormatProvider provider); // 0x1001FDE0 + public string ToString(string format, IFormatProvider provider); // 0x1001FEA0 + public TypeCode GetTypeCode(); // 0x1001F810 +} + +// Namespace: System +[Serializable] +public struct SByte : IFormattable, IConvertible, IComparable, IComparable`1, IEquatable`1 // TypeDefIndex: 19 +{ + // Fields + public const sbyte MinValue = 128; // 0x00 + public const sbyte MaxValue = 127; // 0x00 + internal sbyte m_value; // 0x08 + + // Methods + private bool System.IConvertible.ToBoolean(IFormatProvider provider); // 0x10006D80 + private byte System.IConvertible.ToByte(IFormatProvider provider); // 0x10006DE0 + private char System.IConvertible.ToChar(IFormatProvider provider); // 0x10006E40 + private DateTime System.IConvertible.ToDateTime(IFormatProvider provider); // 0x10006EA0 + private Decimal System.IConvertible.ToDecimal(IFormatProvider provider); // 0x10006F10 + private double System.IConvertible.ToDouble(IFormatProvider provider); // 0x10006F80 + private short System.IConvertible.ToInt16(IFormatProvider provider); // 0x10006FE0 + private int System.IConvertible.ToInt32(IFormatProvider provider); // 0x10007040 + private long System.IConvertible.ToInt64(IFormatProvider provider); // 0x100070A0 + private sbyte System.IConvertible.ToSByte(IFormatProvider provider); // 0x10007100 + private float System.IConvertible.ToSingle(IFormatProvider provider); // 0x10007110 + private object System.IConvertible.ToType(Type targetType, IFormatProvider provider); // 0x10007170 + private ushort System.IConvertible.ToUInt16(IFormatProvider provider); // 0x10007220 + private uint System.IConvertible.ToUInt32(IFormatProvider provider); // 0x10007280 + private ulong System.IConvertible.ToUInt64(IFormatProvider provider); // 0x100072E0 + public int CompareTo(object obj); // 0x10006C00 + public override bool Equals(object obj); // 0x10006CF0 + public override int GetHashCode(); // 0x10006D60 + public int CompareTo(sbyte value); // 0x10006CB0 + public bool Equals(sbyte obj); // 0x10006CD0 + internal static bool Parse(string s, bool tryParse, out sbyte result, out Exception exc); // 0x10123C00 + public static sbyte Parse(string s, IFormatProvider provider); // 0x10123BE0 + public static sbyte Parse(string s, NumberStyles style); // 0x10123B50 + public static sbyte Parse(string s, NumberStyles style, IFormatProvider provider); // 0x10123EE0 + public static sbyte Parse(string s); // 0x10123B70 + public static bool TryParse(string s, out sbyte result); // 0x10124080 + public static bool TryParse(string s, NumberStyles style, IFormatProvider provider, out sbyte result); // 0x101240C0 + public override string ToString(); // 0x10007340 + public string ToString(IFormatProvider provider); // 0x10007400 + public string ToString(string format); // 0x10007460 + public string ToString(string format, IFormatProvider provider); // 0x100073A0 + public TypeCode GetTypeCode(); // 0x10006D70 +} + +// Namespace: System +[Serializable] +public struct Int16 : IFormattable, IConvertible, IComparable, IComparable`1, IEquatable`1 // TypeDefIndex: 20 +{ + // Fields + public const short MaxValue = 32767; // 0x00 + public const short MinValue = -32768; // 0x00 + internal short m_value; // 0x08 + + // Methods + private bool System.IConvertible.ToBoolean(IFormatProvider provider); // 0x10003FF0 + private byte System.IConvertible.ToByte(IFormatProvider provider); // 0x10004050 + private char System.IConvertible.ToChar(IFormatProvider provider); // 0x100040B0 + private DateTime System.IConvertible.ToDateTime(IFormatProvider provider); // 0x10004110 + private Decimal System.IConvertible.ToDecimal(IFormatProvider provider); // 0x10004180 + private double System.IConvertible.ToDouble(IFormatProvider provider); // 0x100041F0 + private short System.IConvertible.ToInt16(IFormatProvider provider); // 0x10004250 + private int System.IConvertible.ToInt32(IFormatProvider provider); // 0x100042B0 + private long System.IConvertible.ToInt64(IFormatProvider provider); // 0x10004310 + private sbyte System.IConvertible.ToSByte(IFormatProvider provider); // 0x10004370 + private float System.IConvertible.ToSingle(IFormatProvider provider); // 0x100043D0 + private object System.IConvertible.ToType(Type targetType, IFormatProvider provider); // 0x10004430 + private ushort System.IConvertible.ToUInt16(IFormatProvider provider); // 0x100044E0 + private uint System.IConvertible.ToUInt32(IFormatProvider provider); // 0x10004540 + private ulong System.IConvertible.ToUInt64(IFormatProvider provider); // 0x100045A0 + public int CompareTo(object value); // 0x10003E80 + public override bool Equals(object obj); // 0x10003F60 + public override int GetHashCode(); // 0x10003FD0 + public int CompareTo(short value); // 0x10003E50 + public bool Equals(short obj); // 0x10003F40 + internal static bool Parse(string s, bool tryParse, out short result, out Exception exc); // 0x100F9960 + public static short Parse(string s, IFormatProvider provider); // 0x100F9940 + public static short Parse(string s, NumberStyles style); // 0x100F9BB0 + public static short Parse(string s, NumberStyles style, IFormatProvider provider); // 0x100F9BD0 + public static short Parse(string s); // 0x100F9C50 + public static bool TryParse(string s, out short result); // 0x100F9F10 + public static bool TryParse(string s, NumberStyles style, IFormatProvider provider, out short result); // 0x100F9EB0 + public override string ToString(); // 0x10004690 + public string ToString(IFormatProvider provider); // 0x10004600 + public string ToString(string format); // 0x10004660 + public string ToString(string format, IFormatProvider provider); // 0x10004680 + public TypeCode GetTypeCode(); // 0x10003FE0 +} + +// Namespace: System +[Serializable] +public struct UInt16 : IFormattable, IConvertible, IComparable, IComparable`1, IEquatable`1 // TypeDefIndex: 21 +{ + // Fields + public const ushort MaxValue = 65535; // 0x00 + public const ushort MinValue = 0; // 0x00 + internal ushort m_value; // 0x08 + + // Methods + private bool System.IConvertible.ToBoolean(IFormatProvider provider); // 0x10019D20 + private byte System.IConvertible.ToByte(IFormatProvider provider); // 0x10019D80 + private char System.IConvertible.ToChar(IFormatProvider provider); // 0x10019DE0 + private DateTime System.IConvertible.ToDateTime(IFormatProvider provider); // 0x10019E40 + private Decimal System.IConvertible.ToDecimal(IFormatProvider provider); // 0x10019EB0 + private double System.IConvertible.ToDouble(IFormatProvider provider); // 0x10019F20 + private short System.IConvertible.ToInt16(IFormatProvider provider); // 0x10019F80 + private int System.IConvertible.ToInt32(IFormatProvider provider); // 0x10019FE0 + private long System.IConvertible.ToInt64(IFormatProvider provider); // 0x1001A040 + private sbyte System.IConvertible.ToSByte(IFormatProvider provider); // 0x1001A0A0 + private float System.IConvertible.ToSingle(IFormatProvider provider); // 0x1001A100 + private object System.IConvertible.ToType(Type targetType, IFormatProvider provider); // 0x1001A160 + private ushort System.IConvertible.ToUInt16(IFormatProvider provider); // 0x1001A210 + private uint System.IConvertible.ToUInt32(IFormatProvider provider); // 0x1001A220 + private ulong System.IConvertible.ToUInt64(IFormatProvider provider); // 0x1001A280 + public int CompareTo(object value); // 0x10019BE0 + public override bool Equals(object obj); // 0x10019C90 + public override int GetHashCode(); // 0x10019D00 + public int CompareTo(ushort value); // 0x10019BC0 + public bool Equals(ushort obj); // 0x10003F40 + public static ushort Parse(string s, IFormatProvider provider); // 0x102836C0 + public static ushort Parse(string s, NumberStyles style); // 0x102836A0 + public static ushort Parse(string s, NumberStyles style, IFormatProvider provider); // 0x102836E0 + public static ushort Parse(string s); // 0x10283680 + public static bool TryParse(string s, out ushort result); // 0x102838E0 + public static bool TryParse(string s, NumberStyles style, IFormatProvider provider, out ushort result); // 0x10283880 + public override string ToString(); // 0x1001A400 + public string ToString(IFormatProvider provider); // 0x1001A340 + public string ToString(string format); // 0x1001A3A0 + public string ToString(string format, IFormatProvider provider); // 0x1001A2E0 + public TypeCode GetTypeCode(); // 0x10019D10 +} + +// Namespace: System.Collections +public interface IEnumerator // TypeDefIndex: 22 +{ + // Properties + object Current { get; } + + // Methods + bool MoveNext(); + void Reset(); +} + +// Namespace: System.Collections +public interface IEnumerable // TypeDefIndex: 23 +{ + // Methods + IEnumerator GetEnumerator(); +} + +// Namespace: System +public interface IDisposable // TypeDefIndex: 24 +{ + // Methods + void Dispose(); +} + +// Namespace: System.Collections.Generic +public interface IEnumerator`1 : IEnumerator, IDisposable // TypeDefIndex: 25 +{ + // Properties + T Current { get; } + +} + +// Namespace: System +[Serializable] +public struct Char : IConvertible, IComparable, IComparable`1, IEquatable`1 // TypeDefIndex: 26 +{ + // Fields + public const char MaxValue = '\xffff'; // 0x00 + public const char MinValue = '\x0000'; // 0x00 + internal char m_value; // 0x08 + private static readonly void * category_data; // 0x00 + private static readonly void * numeric_data; // 0x04 + private static readonly void * numeric_data_values; // 0x08 + private static readonly void * to_lower_data_low; // 0x0C + private static readonly void * to_lower_data_high; // 0x10 + private static readonly void * to_upper_data_low; // 0x14 + private static readonly void * to_upper_data_high; // 0x18 + + // Methods + private static void .cctor(); // 0x10317C80 + private object System.IConvertible.ToType(Type targetType, IFormatProvider provider); // 0x10020310 + private bool System.IConvertible.ToBoolean(IFormatProvider provider); // 0x10020090 + private byte System.IConvertible.ToByte(IFormatProvider provider); // 0x100200B0 + private char System.IConvertible.ToChar(IFormatProvider provider); // 0x1001A210 + private DateTime System.IConvertible.ToDateTime(IFormatProvider provider); // 0x10020110 + private Decimal System.IConvertible.ToDecimal(IFormatProvider provider); // 0x10020130 + private double System.IConvertible.ToDouble(IFormatProvider provider); // 0x10020150 + private short System.IConvertible.ToInt16(IFormatProvider provider); // 0x10020170 + private int System.IConvertible.ToInt32(IFormatProvider provider); // 0x100201D0 + private long System.IConvertible.ToInt64(IFormatProvider provider); // 0x10020230 + private sbyte System.IConvertible.ToSByte(IFormatProvider provider); // 0x10020290 + private float System.IConvertible.ToSingle(IFormatProvider provider); // 0x100202F0 + private ushort System.IConvertible.ToUInt16(IFormatProvider provider); // 0x100203C0 + private uint System.IConvertible.ToUInt32(IFormatProvider provider); // 0x10020420 + private ulong System.IConvertible.ToUInt64(IFormatProvider provider); // 0x10020480 + private static void GetDataTablePointers(out void * category_data, out void * numeric_data, out void * numeric_data_values, out void * to_lower_data_low, out void * to_lower_data_high, out void * to_upper_data_low, out void * to_upper_data_high); // 0x10316020 + public int CompareTo(object value); // 0x1001FF00 + public override bool Equals(object obj); // 0x10020010 + public int CompareTo(char value); // 0x1001FFC0 + public static string ConvertFromUtf32(int utf32); // 0x10315AE0 + public static int ConvertToUtf32(char highSurrogate, char lowSurrogate); // 0x10315EF0 + public static int ConvertToUtf32(string s, int index); // 0x10315C30 + public bool Equals(char obj); // 0x1001FFF0 + public static bool IsSurrogatePair(char highSurrogate, char lowSurrogate); // 0x10316E30 + public static bool IsSurrogatePair(string s, int index); // 0x10316E70 + public override int GetHashCode(); // 0x10019D00 + public static double GetNumericValue(char c); // 0x10316190 + public static double GetNumericValue(string s, int index); // 0x10316060 + public static UnicodeCategory GetUnicodeCategory(char c); // 0x10316300 + public static UnicodeCategory GetUnicodeCategory(string s, int index); // 0x10316240 + public static bool IsControl(char c); // 0x10316360 + public static bool IsControl(string s, int index); // 0x103163C0 + public static bool IsDigit(char c); // 0x10316480 + public static bool IsDigit(string s, int index); // 0x103164E0 + public static bool IsHighSurrogate(char c); // 0x10316630 + public static bool IsHighSurrogate(string s, int index); // 0x103165A0 + public static bool IsLetter(char c); // 0x10316860 + public static bool IsLetter(string s, int index); // 0x103167A0 + public static bool IsLetterOrDigit(char c); // 0x10316730 + public static bool IsLetterOrDigit(string s, int index); // 0x10316660 + public static bool IsLower(char c); // 0x10316A40 + public static bool IsLower(string s, int index); // 0x10316980 + public static bool IsLowSurrogate(char c); // 0x103168C0 + public static bool IsLowSurrogate(string s, int index); // 0x103168F0 + public static bool IsNumber(char c); // 0x10316AA0 + public static bool IsNumber(string s, int index); // 0x10316B00 + public static bool IsPunctuation(char c); // 0x10316CA0 + public static bool IsPunctuation(string s, int index); // 0x10316BD0 + public static bool IsSeparator(char c); // 0x10316D00 + public static bool IsSeparator(string s, int index); // 0x10316D60 + public static bool IsSurrogate(char c); // 0x10317000 + public static bool IsSurrogate(string s, int index); // 0x10316F40 + public static bool IsSymbol(char c); // 0x10317130 + public static bool IsSymbol(string s, int index); // 0x10317060 + public static bool IsUpper(char c); // 0x10317250 + public static bool IsUpper(string s, int index); // 0x10317190 + public static bool IsWhiteSpace(char c); // 0x103172B0 + public static bool IsWhiteSpace(string s, int index); // 0x10317340 + private static void CheckParameter(string s, int index); // 0x10315A40 + public static bool TryParse(string s, out char result); // 0x10317C40 + public static char Parse(string s); // 0x10317440 + public static char ToLower(char c); // 0x103178B0 + public static char ToLowerInvariant(char c); // 0x10317680 + public static char ToLower(char c, CultureInfo culture); // 0x10317730 + public static char ToUpper(char c); // 0x10317BB0 + public static char ToUpperInvariant(char c); // 0x10317980 + public static char ToUpper(char c, CultureInfo culture); // 0x10317A30 + public override string ToString(); // 0x100204E0 + public static string ToString(char c); // 0x10317960 + public string ToString(IFormatProvider provider); // 0x100204E0 + public TypeCode GetTypeCode(); // 0x10020080 +} + +// Namespace: System +[Serializable] +public sealed class String : IConvertible, IComparable, IEnumerable, ICloneable, IComparable`1, IEquatable`1, IEnumerable`1 // TypeDefIndex: 27 +{ + // Fields + [NonSerialized] private int length; // 0x08 + [NonSerialized] private char start_char; // 0x0C + public static readonly string Empty; // 0x00 + private static readonly char[] WhiteChars; // 0x04 + + // Properties + public char Chars { get; } // 0x10153D10 + public int Length { get; } // 0x100BF0C0 + + // Methods + public void .ctor(void * value); // 0x10153C90 + public void .ctor(void * value, int startIndex, int length); // 0x10153CD0 + public void .ctor(void * value); // 0x10153C90 + public void .ctor(void * value, int startIndex, int length); // 0x10153CD0 + public void .ctor(void * value, int startIndex, int length, Encoding enc); // 0x10153CF0 + public void .ctor(char[] value, int startIndex, int length); // 0x10153CD0 + public void .ctor(char[] value); // 0x10153C90 + public void .ctor(char c, int count); // 0x10153CB0 + private static void .cctor(); // 0x10153C30 + private bool System.IConvertible.ToBoolean(IFormatProvider provider); // 0x10152B40 + private byte System.IConvertible.ToByte(IFormatProvider provider); // 0x10152B90 + private char System.IConvertible.ToChar(IFormatProvider provider); // 0x10152BE0 + private DateTime System.IConvertible.ToDateTime(IFormatProvider provider); // 0x10152C30 + private Decimal System.IConvertible.ToDecimal(IFormatProvider provider); // 0x10152CA0 + private double System.IConvertible.ToDouble(IFormatProvider provider); // 0x10152D10 + private short System.IConvertible.ToInt16(IFormatProvider provider); // 0x10152D60 + private int System.IConvertible.ToInt32(IFormatProvider provider); // 0x10152DB0 + private long System.IConvertible.ToInt64(IFormatProvider provider); // 0x10152E00 + private sbyte System.IConvertible.ToSByte(IFormatProvider provider); // 0x10152E50 + private float System.IConvertible.ToSingle(IFormatProvider provider); // 0x10152EA0 + private object System.IConvertible.ToType(Type targetType, IFormatProvider provider); // 0x10152EF0 + private ushort System.IConvertible.ToUInt16(IFormatProvider provider); // 0x10152F80 + private uint System.IConvertible.ToUInt32(IFormatProvider provider); // 0x10152FD0 + private ulong System.IConvertible.ToUInt64(IFormatProvider provider); // 0x10153020 + private IEnumerator`1 System.Collections.Generic.IEnumerable.GetEnumerator(); // 0x10152AA0 + private IEnumerator System.Collections.IEnumerable.GetEnumerator(); // 0x10152AF0 + public static bool Equals(string a, string b); // 0x1014D090 + public override bool Equals(object obj); // 0x1014D020 + public bool Equals(string value); // 0x1014CF70 + public object Clone(); // 0x100F7810 + public TypeCode GetTypeCode(); // 0x1014DD10 + public void CopyTo(int sourceIndex, char[] destination, int destinationIndex, int count); // 0x1014BF20 + public char[] ToCharArray(); // 0x101531A0 + public char[] ToCharArray(int startIndex, int length); // 0x10153070 + public string[] Split(char[] separator); // 0x10151D60 + public string[] Split(char[] separator, int count); // 0x101521A0 + public string[] Split(char[] separator, int count, StringSplitOptions options); // 0x101522F0 + public string[] Split(string[] separator, int count, StringSplitOptions options); // 0x10151DD0 + public string[] Split(char[] separator, StringSplitOptions options); // 0x101522D0 + public string[] Split(string[] separator, StringSplitOptions options); // 0x101522B0 + public string Substring(int startIndex); // 0x10152A20 + public string Substring(int startIndex, int length); // 0x10152930 + internal string SubstringUnchecked(int startIndex, int length); // 0x10152880 + public string Trim(); // 0x10153B50 + public string Trim(char[] trimChars); // 0x101539B0 + public string TrimStart(char[] trimChars); // 0x10153900 + public string TrimEnd(char[] trimChars); // 0x10153850 + private int FindNotWhiteSpace(int pos, int target, int change); // 0x1014D1D0 + private int FindNotInTable(int pos, int target, int change, char[] table); // 0x1014D150 + public static int Compare(string strA, string strB); // 0x1014AF40 + public static int Compare(string strA, string strB, bool ignoreCase); // 0x1014A6B0 + public static int Compare(string strA, string strB, bool ignoreCase, CultureInfo culture); // 0x1014A4B0 + public static int Compare(string strA, int indexA, string strB, int indexB, int length); // 0x1014A420 + public static int Compare(string strA, int indexA, string strB, int indexB, int length, bool ignoreCase); // 0x1014A620 + public static int Compare(string strA, int indexA, string strB, int indexB, int length, bool ignoreCase, CultureInfo culture); // 0x1014A750 + public static int Compare(string strA, string strB, StringComparison comparisonType); // 0x1014ACE0 + public static int Compare(string strA, int indexA, string strB, int indexB, int length, StringComparison comparisonType); // 0x1014A930 + public static bool Equals(string a, string b, StringComparison comparisonType); // 0x1014CF10 + public bool Equals(string value, StringComparison comparisonType); // 0x1014CFC0 + public static int Compare(string strA, string strB, CultureInfo culture, CompareOptions options); // 0x1014A890 + public static int Compare(string strA, int indexA, string strB, int indexB, int length, CultureInfo culture, CompareOptions options); // 0x1014A550 + public int CompareTo(object value); // 0x1014A310 + public int CompareTo(string strB); // 0x1014A3C0 + public static int CompareOrdinal(string strA, string strB); // 0x1014A2B0 + public static int CompareOrdinal(string strA, int indexA, string strB, int indexB, int length); // 0x1014A1F0 + internal static int CompareOrdinalCaseInsensitive(string strA, int indexA, string strB, int indexB, int length); // 0x1014A040 + internal static int CompareOrdinalUnchecked(string strA, int indexA, int lenA, string strB, int indexB, int lenB); // 0x1014A100 + internal static int CompareOrdinalCaseInsensitiveUnchecked(string strA, int indexA, int lenA, string strB, int indexB, int lenB); // 0x10149EE0 + public bool EndsWith(string value); // 0x1014CB80 + public bool EndsWith(string value, bool ignoreCase, CultureInfo culture); // 0x1014CAB0 + public int IndexOfAny(char[] anyOf); // 0x1014DF10 + public int IndexOfAny(char[] anyOf, int startIndex); // 0x1014DF90 + public int IndexOfAny(char[] anyOf, int startIndex, int count); // 0x1014DE30 + private int IndexOfAnyUnchecked(char[] anyOf, int startIndex, int count); // 0x1014DD20 + public int IndexOf(string value, StringComparison comparisonType); // 0x1014E870 + public int IndexOf(string value, int startIndex, StringComparison comparisonType); // 0x1014EDD0 + public int IndexOf(string value, int startIndex, int count, StringComparison comparisonType); // 0x1014E890 + internal int IndexOfOrdinal(string value, int startIndex, int count, CompareOptions options); // 0x1014E370 + internal int IndexOfOrdinalUnchecked(string value, int startIndex, int count); // 0x1014E220 + internal int IndexOfOrdinalIgnoreCaseUnchecked(string value, int startIndex, int count); // 0x1014E030 + public int LastIndexOf(string value, StringComparison comparisonType); // 0x10150440 + public int LastIndexOf(string value, int startIndex, StringComparison comparisonType); // 0x101506C0 + public int LastIndexOf(string value, int startIndex, int count, StringComparison comparisonType); // 0x101506E0 + internal int LastIndexOfOrdinal(string value, int startIndex, int count, CompareOptions options); // 0x1014FE10 + internal int LastIndexOfOrdinalUnchecked(string value, int startIndex, int count); // 0x1014FCC0 + internal int LastIndexOfOrdinalIgnoreCaseUnchecked(string value, int startIndex, int count); // 0x1014FAD0 + public int IndexOf(char value); // 0x1014EAB0 + public int IndexOf(char value, int startIndex); // 0x1014EBD0 + public int IndexOf(char value, int startIndex, int count); // 0x1014E640 + internal int IndexOfUnchecked(char value, int startIndex, int count); // 0x1014E550 + internal int IndexOfOrdinalIgnoreCase(char value, int startIndex, int count); // 0x1014E160 + public int IndexOf(string value); // 0x1014EAE0 + public int IndexOf(string value, int startIndex); // 0x1014E720 + public int IndexOf(string value, int startIndex, int count); // 0x1014EC80 + public int LastIndexOfAny(char[] anyOf); // 0x1014FA60 + public int LastIndexOfAny(char[] anyOf, int startIndex); // 0x1014F9A0 + public int LastIndexOfAny(char[] anyOf, int startIndex, int count); // 0x1014F890 + private int LastIndexOfAnyUnchecked(char[] anyOf, int startIndex, int count); // 0x1014F7E0 + public int LastIndexOf(char value); // 0x101503E0 + public int LastIndexOf(char value, int startIndex); // 0x10150510 + public int LastIndexOf(char value, int startIndex, int count); // 0x101505D0 + internal int LastIndexOfUnchecked(char value, int startIndex, int count); // 0x10150110 + internal int LastIndexOfOrdinalIgnoreCase(char value, int startIndex, int count); // 0x1014FC00 + public int LastIndexOf(string value); // 0x101503A0 + public int LastIndexOf(string value, int startIndex); // 0x10150410 + public int LastIndexOf(string value, int startIndex, int count); // 0x10150210 + public bool Contains(string value); // 0x1014BF00 + public static bool IsNullOrEmpty(string value); // 0x1014F320 + public string Normalize(); // 0x10150900 + public string Normalize(NormalizationForm normalizationForm); // 0x10150950 + public bool IsNormalized(); // 0x1014F2D0 + public bool IsNormalized(NormalizationForm normalizationForm); // 0x1014F1C0 + public string Remove(int startIndex); // 0x101514A0 + public string PadLeft(int totalWidth); // 0x10150A60 + public string PadLeft(int totalWidth, char paddingChar); // 0x10150B80 + public string PadRight(int totalWidth); // 0x10150DC0 + public string PadRight(int totalWidth, char paddingChar); // 0x10150CA0 + public bool StartsWith(string value); // 0x101524F0 + public bool StartsWith(string value, StringComparison comparisonType); // 0x101525C0 + public bool EndsWith(string value, StringComparison comparisonType); // 0x1014CC50 + public bool StartsWith(string value, bool ignoreCase, CultureInfo culture); // 0x10152450 + public string Replace(char oldChar, char newChar); // 0x10151B40 + public string Replace(string oldValue, string newValue); // 0x10151C80 + private string ReplaceUnchecked(string oldValue, string newValue); // 0x10151730 + private string ReplaceFallback(string oldValue, string newValue, int testedCount); // 0x10151620 + public string Remove(int startIndex, int count); // 0x10151370 + public string ToLower(); // 0x10153390 + public string ToLower(CultureInfo culture); // 0x101533F0 + public string ToLowerInvariant(); // 0x101532A0 + public string ToUpper(); // 0x10153750 + public string ToUpper(CultureInfo culture); // 0x10153690 + public string ToUpperInvariant(); // 0x101535A0 + public override string ToString(); // 0x100F7810 + public string ToString(IFormatProvider provider); // 0x100F7810 + public static string Format(string format, object arg0); // 0x1014D7F0 + public static string Format(string format, object arg0, object arg1); // 0x1014D910 + public static string Format(string format, object arg0, object arg1, object arg2); // 0x1014DA10 + public static string Format(string format, object[] args); // 0x1014D8B0 + public static string Format(IFormatProvider provider, string format, object[] args); // 0x1014D780 + internal static StringBuilder FormatHelper(StringBuilder result, IFormatProvider provider, string format, object[] args); // 0x1014D300 + public static string Copy(string str); // 0x1014C0C0 + public static string Concat(object arg0); // 0x1014BB90 + public static string Concat(object arg0, object arg1); // 0x1014B1E0 + public static string Concat(object arg0, object arg1, object arg2); // 0x1014B850 + public static string Concat(object arg0, object arg1, object arg2, object arg3); // 0x1014B980 + public static string Concat(string str0, string str1); // 0x1014B400 + public static string Concat(string str0, string str1, string str2); // 0x1014BC00 + public static string Concat(string str0, string str1, string str2, string str3); // 0x1014B510 + public static string Concat(object[] args); // 0x1014B280 + public static string Concat(string[] values); // 0x1014B120 + private static string ConcatInternal(string[] values, int length); // 0x1014AFD0 + public string Insert(int startIndex, string value); // 0x1014EE00 + public static string Intern(string str); // 0x1014EF70 + public static string IsInterned(string str); // 0x1014F140 + public static string Join(string separator, string[] value); // 0x1014F5B0 + public static string Join(string separator, string[] value, int startIndex, int count); // 0x1014F670 + private static string JoinUnchecked(string separator, string[] value, int startIndex, int count); // 0x1014F340 + public CharEnumerator GetEnumerator(); // 0x1014DC60 + private static void ParseFormatSpecifier(string str, int ptr, out int n, out int width, out bool left_align, out string format); // 0x10150FA0 + private static int ParseDecimal(string str, int ptr); // 0x10150EE0 + internal void InternalSetChar(int idx, char val); // 0x1014F020 + internal void InternalSetLength(int newLength); // 0x1014F090 + public override int GetHashCode(); // 0x1014DCB0 + internal int GetCaseInsensitiveHashCode(); // 0x1014DB60 + private string CreateString(void * value); // 0x1014C810 + private string CreateString(void * value, int startIndex, int length); // 0x1014C660 + private string CreateString(void * value, int startIndex, int length, Encoding enc); // 0x1014C280 + private string CreateString(void * value); // 0x1014C1A0 + private string CreateString(void * value, int startIndex, int length); // 0x1014C990 + private string CreateString(char[] val, int startIndex, int length); // 0x1014C680 + private string CreateString(char[] val); // 0x1014C8A0 + private string CreateString(char c, int count); // 0x1014C570 + internal static void memset(void * dest, int val, int len); // 0x101540B0 + private static void memcpy4(void * dest, void * src, int size); // 0x10153E90 + private static void memcpy2(void * dest, void * src, int size); // 0x10153E10 + private static void memcpy1(void * dest, void * src, int size); // 0x10153D70 + internal static void memcpy(void * dest, void * src, int size); // 0x10153F20 + internal static void CharCopy(void * dest, void * src, int count); // 0x10149DA0 + internal static void CharCopyReverse(void * dest, void * src, int count); // 0x10149CE0 + internal static void CharCopy(string target, int targetIndex, string source, int sourceIndex, int count); // 0x10149E60 + internal static void CharCopy(string target, int targetIndex, char[] source, int sourceIndex, int count); // 0x10149D10 + internal static void CharCopyReverse(string target, int targetIndex, string source, int sourceIndex, int count); // 0x10149C50 + private string[] InternalSplit(char[] separator, int count, int options); // 0x1014F120 + internal static string InternalAllocateStr(int length); // 0x1014EFF0 + private static string InternalIntern(string str); // 0x1014F000 + private static string InternalIsInterned(string str); // 0x1014F010 + public static bool op_Equality(string a, string b); // 0x10154170 + public static bool op_Inequality(string a, string b); // 0x101541C0 +} + +// Namespace: System +public interface ICloneable // TypeDefIndex: 28 +{ + // Methods + object Clone(); +} + +// Namespace: System.Collections.Generic +public interface IEnumerable`1 : IEnumerable // TypeDefIndex: 29 +{ + // Methods + IEnumerator`1 GetEnumerator(); +} + +// Namespace: System +[Serializable] +public struct Single : IFormattable, IConvertible, IComparable, IComparable`1, IEquatable`1 // TypeDefIndex: 30 +{ + // Fields + public const float Epsilon = 1E-45; // 0x00 + public const float MaxValue = 3.4028235E+38; // 0x00 + public const float MinValue = -3.4028235E+38; // 0x00 + public const float NaN = NaN; // 0x00 + public const float PositiveInfinity = ∞; // 0x00 + public const float NegativeInfinity = -∞; // 0x00 + private const double MaxValueEpsilon = 3.6147112457961776E+29; // 0x00 + internal float m_value; // 0x08 + + // Methods + private bool System.IConvertible.ToBoolean(IFormatProvider provider); // 0x100082F0 + private byte System.IConvertible.ToByte(IFormatProvider provider); // 0x10008360 + private char System.IConvertible.ToChar(IFormatProvider provider); // 0x100083D0 + private DateTime System.IConvertible.ToDateTime(IFormatProvider provider); // 0x10008440 + private Decimal System.IConvertible.ToDecimal(IFormatProvider provider); // 0x100084C0 + private double System.IConvertible.ToDouble(IFormatProvider provider); // 0x10008540 + private short System.IConvertible.ToInt16(IFormatProvider provider); // 0x100085B0 + private int System.IConvertible.ToInt32(IFormatProvider provider); // 0x10008620 + private long System.IConvertible.ToInt64(IFormatProvider provider); // 0x10008690 + private sbyte System.IConvertible.ToSByte(IFormatProvider provider); // 0x10008700 + private float System.IConvertible.ToSingle(IFormatProvider provider); // 0x10008770 + private object System.IConvertible.ToType(Type targetType, IFormatProvider provider); // 0x100087E0 + private ushort System.IConvertible.ToUInt16(IFormatProvider provider); // 0x10008890 + private uint System.IConvertible.ToUInt32(IFormatProvider provider); // 0x10008900 + private ulong System.IConvertible.ToUInt64(IFormatProvider provider); // 0x10008970 + public int CompareTo(object value); // 0x10008090 + public override bool Equals(object obj); // 0x10008220 + public int CompareTo(float value); // 0x100080A0 + public bool Equals(float obj); // 0x100081D0 + public override int GetHashCode(); // 0x100082C0 + public static bool IsInfinity(float f); // 0x10149680 + public static bool IsNaN(float f); // 0x101496B0 + public static bool IsNegativeInfinity(float f); // 0x101496D0 + public static bool IsPositiveInfinity(float f); // 0x10149710 + public static float Parse(string s); // 0x10149750 + public static float Parse(string s, IFormatProvider provider); // 0x101498B0 + public static float Parse(string s, NumberStyles style); // 0x10149960 + public static float Parse(string s, NumberStyles style, IFormatProvider provider); // 0x10149800 + public static bool TryParse(string s, NumberStyles style, IFormatProvider provider, out float result); // 0x10149AF0 + public static bool TryParse(string s, out float result); // 0x10149B80 + public override string ToString(); // 0x10008AC0 + public string ToString(IFormatProvider provider); // 0x10008B30 + public string ToString(string format); // 0x10008A50 + public string ToString(string format, IFormatProvider provider); // 0x100089E0 + public TypeCode GetTypeCode(); // 0x100082E0 +} + +// Namespace: System +[Serializable] +public struct Double : IFormattable, IConvertible, IComparable, IComparable`1, IEquatable`1 // TypeDefIndex: 31 +{ + // Fields + public const double Epsilon = 5E-324; // 0x00 + public const double MaxValue = 1.7976931348623157E+308; // 0x00 + public const double MinValue = -1.7976931348623157E+308; // 0x00 + public const double NaN = NaN; // 0x00 + public const double NegativeInfinity = -∞; // 0x00 + public const double PositiveInfinity = ∞; // 0x00 + private const int State_AllowSign = 1; // 0x00 + private const int State_Digits = 2; // 0x00 + private const int State_Decimal = 3; // 0x00 + private const int State_ExponentSign = 4; // 0x00 + private const int State_Exponent = 5; // 0x00 + private const int State_ConsumeWhiteSpace = 6; // 0x00 + private const int State_Exit = 7; // 0x00 + internal double m_value; // 0x08 + + // Methods + private object System.IConvertible.ToType(Type targetType, IFormatProvider provider); // 0x1000A170 + private bool System.IConvertible.ToBoolean(IFormatProvider provider); // 0x10009D30 + private byte System.IConvertible.ToByte(IFormatProvider provider); // 0x10009DA0 + private char System.IConvertible.ToChar(IFormatProvider provider); // 0x10009E10 + private DateTime System.IConvertible.ToDateTime(IFormatProvider provider); // 0x10009E30 + private Decimal System.IConvertible.ToDecimal(IFormatProvider provider); // 0x10009E50 + private double System.IConvertible.ToDouble(IFormatProvider provider); // 0x10009ED0 + private short System.IConvertible.ToInt16(IFormatProvider provider); // 0x10009F40 + private int System.IConvertible.ToInt32(IFormatProvider provider); // 0x10009FB0 + private long System.IConvertible.ToInt64(IFormatProvider provider); // 0x1000A020 + private sbyte System.IConvertible.ToSByte(IFormatProvider provider); // 0x1000A090 + private float System.IConvertible.ToSingle(IFormatProvider provider); // 0x1000A100 + private ushort System.IConvertible.ToUInt16(IFormatProvider provider); // 0x1000A220 + private uint System.IConvertible.ToUInt32(IFormatProvider provider); // 0x1000A290 + private ulong System.IConvertible.ToUInt64(IFormatProvider provider); // 0x1000A300 + public int CompareTo(object value); // 0x10009AC0 + public override bool Equals(object obj); // 0x10009C60 + public int CompareTo(double value); // 0x10009AD0 + public bool Equals(double obj); // 0x10009C10 + public override int GetHashCode(); // 0x10009D00 + public static bool IsInfinity(double d); // 0x101BDDA0 + public static bool IsNaN(double d); // 0x101BDDD0 + public static bool IsNegativeInfinity(double d); // 0x101BDDF0 + public static bool IsPositiveInfinity(double d); // 0x101BDE30 + public static double Parse(string s); // 0x101BDEB0 + public static double Parse(string s, IFormatProvider provider); // 0x101BDE90 + public static double Parse(string s, NumberStyles style); // 0x101BEB40 + public static double Parse(string s, NumberStyles style, IFormatProvider provider); // 0x101BEAD0 + internal static bool Parse(string s, NumberStyles style, IFormatProvider provider, bool tryParse, out double result, out Exception exc); // 0x101BDED0 + private static bool TryParseStringConstant(string format, string s, int start, int end); // 0x101BECE0 + private static bool ParseImpl(void * byte_ptr, out double value); // 0x101BDE70 + public static bool TryParse(string s, NumberStyles style, IFormatProvider provider, out double result); // 0x101BED60 + public static bool TryParse(string s, out double result); // 0x101BEDB0 + public override string ToString(); // 0x1000A4D0 + public string ToString(IFormatProvider provider); // 0x1000A3E0 + public string ToString(string format); // 0x1000A370 + public string ToString(string format, IFormatProvider provider); // 0x1000A450 + public TypeCode GetTypeCode(); // 0x10009D20 +} + +// Namespace: System +[Serializable] +public struct Decimal : IFormattable, IConvertible, IComparable, IComparable`1, IEquatable`1 // TypeDefIndex: 32 +{ + // Fields + public static readonly Decimal MinValue; // 0x00 + public static readonly Decimal MaxValue; // 0x10 + public static readonly Decimal MinusOne; // 0x20 + public static readonly Decimal One; // 0x30 + public static readonly Decimal Zero; // 0x40 + private const int DECIMAL_DIVIDE_BY_ZERO = 5; // 0x00 + private const uint MAX_SCALE = 28; // 0x00 + private const int iMAX_SCALE = 28; // 0x00 + private const uint SIGN_FLAG = 2147483648; // 0x00 + private const uint SCALE_MASK = 16711680; // 0x00 + private const int SCALE_SHIFT = 16; // 0x00 + private const uint RESERVED_SS32_BITS = 2130771967; // 0x00 + private static readonly Decimal MaxValueDiv10; // 0x50 + private uint flags; // 0x08 + private uint hi; // 0x0C + private uint lo; // 0x10 + private uint mid; // 0x14 + + // Methods + public void .ctor(int lo, int mid, int hi, bool isNegative, byte scale); // 0x1001EDE0 + public void .ctor(int value); // 0x1001ED80 + public void .ctor(uint value); // 0x1001EE70 + public void .ctor(long value); // 0x1001EE20 + public void .ctor(ulong value); // 0x1001EEB0 + public void .ctor(float value); // 0x1001EDF0 + public void .ctor(double value); // 0x1001EDB0 + public void .ctor(int[] bits); // 0x1001EEA0 + private static void .cctor(); // 0x102EF620 + private object System.IConvertible.ToType(Type targetType, IFormatProvider provider); // 0x1001EAD0 + private bool System.IConvertible.ToBoolean(IFormatProvider provider); // 0x1001E710 + private byte System.IConvertible.ToByte(IFormatProvider provider); // 0x1001E780 + private char System.IConvertible.ToChar(IFormatProvider provider); // 0x1001E7F0 + private DateTime System.IConvertible.ToDateTime(IFormatProvider provider); // 0x1001E810 + private Decimal System.IConvertible.ToDecimal(IFormatProvider provider); // 0x1001DA80 + private double System.IConvertible.ToDouble(IFormatProvider provider); // 0x1001E830 + private short System.IConvertible.ToInt16(IFormatProvider provider); // 0x1001E8A0 + private int System.IConvertible.ToInt32(IFormatProvider provider); // 0x1001E910 + private long System.IConvertible.ToInt64(IFormatProvider provider); // 0x1001E980 + private sbyte System.IConvertible.ToSByte(IFormatProvider provider); // 0x1001E9F0 + private float System.IConvertible.ToSingle(IFormatProvider provider); // 0x1001EA60 + private ushort System.IConvertible.ToUInt16(IFormatProvider provider); // 0x1001EB80 + private uint System.IConvertible.ToUInt32(IFormatProvider provider); // 0x1001EBF0 + private ulong System.IConvertible.ToUInt64(IFormatProvider provider); // 0x1001EC60 + public static Decimal FromOACurrency(long cy); // 0x102ECEE0 + public static int[] GetBits(Decimal d); // 0x102ECFB0 + public static Decimal Negate(Decimal d); // 0x102ED130 + public static Decimal Add(Decimal d1, Decimal d2); // 0x102ECAF0 + public static Decimal Subtract(Decimal d1, Decimal d2); // 0x102EE0A0 + public override int GetHashCode(); // 0x1001E6B0 + private static ulong u64(Decimal value); // 0x102F1950 + private static long s64(Decimal value); // 0x102F0FA0 + public static bool Equals(Decimal d1, Decimal d2); // 0x102ECD20 + public override bool Equals(object value); // 0x1001E570 + private bool IsZero(); // 0x1001E6F0 + private bool IsNegative(); // 0x1001E6E0 + public static Decimal Floor(Decimal d); // 0x102ECE80 + public static Decimal Truncate(Decimal d); // 0x102EF4B0 + public static Decimal Round(Decimal d, int decimals); // 0x102EDAA0 + public static Decimal Round(Decimal d, int decimals, MidpointRounding mode); // 0x102EDB40 + public static Decimal Round(Decimal d); // 0x102EDB10 + public static Decimal Round(Decimal d, MidpointRounding mode); // 0x102EDA70 + public static Decimal Multiply(Decimal d1, Decimal d2); // 0x102ED060 + public static Decimal Divide(Decimal d1, Decimal d2); // 0x102ECC10 + public static Decimal Remainder(Decimal d1, Decimal d2); // 0x102ED790 + public static int Compare(Decimal d1, Decimal d2); // 0x102ECBC0 + public int CompareTo(object value); // 0x1001E480 + public int CompareTo(Decimal value); // 0x1001E3C0 + public bool Equals(Decimal value); // 0x1001E630 + public static Decimal Ceiling(Decimal d); // 0x102ECB90 + public static Decimal Parse(string s); // 0x102ED310 + public static Decimal Parse(string s, NumberStyles style); // 0x102ED230 + public static Decimal Parse(string s, IFormatProvider provider); // 0x102ED2A0 + private static void ThrowAtPos(int pos); // 0x102EE230 + private static void ThrowInvalidExp(); // 0x102EE2D0 + private static string stripStyles(string s, NumberStyles style, NumberFormatInfo nfi, out int decPos, out bool isNegative, out bool expFlag, out int exp, bool throwex); // 0x102F1060 + public static Decimal Parse(string s, NumberStyles style, IFormatProvider provider); // 0x102ED150 + public static bool TryParse(string s, out Decimal result); // 0x102EF510 + public static bool TryParse(string s, NumberStyles style, IFormatProvider provider, out Decimal result); // 0x102EF590 + private static bool PerformParse(string s, NumberStyles style, IFormatProvider provider, out Decimal res, bool throwex); // 0x102ED380 + public TypeCode GetTypeCode(); // 0x1001E6D0 + public static byte ToByte(Decimal value); // 0x102EE330 + public static double ToDouble(Decimal d); // 0x102EE510 + public static short ToInt16(Decimal value); // 0x102EE570 + public static int ToInt32(Decimal d); // 0x102EE750 + public static long ToInt64(Decimal d); // 0x102EE930 + public static long ToOACurrency(Decimal value); // 0x102EEAE0 + public static sbyte ToSByte(Decimal value); // 0x102EEBC0 + public static float ToSingle(Decimal d); // 0x102EEDA0 + public static ushort ToUInt16(Decimal value); // 0x102EEEF0 + public static uint ToUInt32(Decimal d); // 0x102EF0D0 + public static ulong ToUInt64(Decimal d); // 0x102EF2D0 + public string ToString(string format, IFormatProvider provider); // 0x1001ED30 + public override string ToString(); // 0x1001ED40 + public string ToString(string format); // 0x1001ECD0 + public string ToString(IFormatProvider provider); // 0x1001ECF0 + private static int decimal2UInt64(Decimal val, out ulong result); // 0x102EFD30 + private static int decimal2Int64(Decimal val, out long result); // 0x102EFD10 + private static int decimalIncr(Decimal d1, Decimal d2); // 0x102EFDF0 + internal static int decimal2string(Decimal val, int digits, int decimals, char[] bufDigits, int bufSize, out int decPos, out int sign); // 0x102EFD60 + internal static int string2decimal(out Decimal val, string sDigits, uint decPos, int sign); // 0x102F1040 + internal static int decimalSetExponent(Decimal val, int exp); // 0x102EFE50 + private static double decimal2double(Decimal val); // 0x102EFD50 + private static void decimalFloorAndTrunc(Decimal val, int floorFlag); // 0x102EFDD0 + private static int decimalMult(Decimal pd1, Decimal pd2); // 0x102EFE30 + private static int decimalDiv(out Decimal pc, Decimal pa, Decimal pb); // 0x102EFDB0 + private static int decimalIntDiv(out Decimal pc, Decimal pa, Decimal pb); // 0x102EFE10 + private static int decimalCompare(Decimal d1, Decimal d2); // 0x102EFD90 + public static Decimal op_Addition(Decimal d1, Decimal d2); // 0x102EFE70 + public static Decimal op_Decrement(Decimal d); // 0x102EFEE0 + public static Decimal op_Increment(Decimal d); // 0x102F0A00 + public static Decimal op_Subtraction(Decimal d1, Decimal d2); // 0x102F0E00 + public static Decimal op_UnaryNegation(Decimal d); // 0x102F0F40 + public static Decimal op_UnaryPlus(Decimal d); // 0x1021D800 + public static Decimal op_Multiply(Decimal d1, Decimal d2); // 0x102F0CD0 + public static Decimal op_Division(Decimal d1, Decimal d2); // 0x102EFF70 + public static Decimal op_Modulus(Decimal d1, Decimal d2); // 0x102F0C60 + public static byte op_Explicit(Decimal value); // 0x102F0140 + public static sbyte op_Explicit(Decimal value); // 0x102F02F0 + public static char op_Explicit(Decimal value); // 0x102F04A0 + public static short op_Explicit(Decimal value); // 0x102F05D0 + public static ushort op_Explicit(Decimal value); // 0x102F0220 + public static int op_Explicit(Decimal value); // 0x102F0650 + public static uint op_Explicit(Decimal value); // 0x102F0550 + public static long op_Explicit(Decimal value); // 0x102F0440 + public static ulong op_Explicit(Decimal value); // 0x102F01C0 + public static Decimal op_Implicit(byte value); // 0x102F0900 + public static Decimal op_Implicit(sbyte value); // 0x102F08C0 + public static Decimal op_Implicit(short value); // 0x102F0880 + public static Decimal op_Implicit(ushort value); // 0x102F09A0 + public static Decimal op_Implicit(char value); // 0x102F09A0 + public static Decimal op_Implicit(int value); // 0x102F0930 + public static Decimal op_Implicit(uint value); // 0x102F09D0 + public static Decimal op_Implicit(long value); // 0x102F0830 + public static Decimal op_Implicit(ulong value); // 0x102F0970 + public static Decimal op_Explicit(float value); // 0x102F0410 + public static Decimal op_Explicit(double value); // 0x102F0520 + public static float op_Explicit(Decimal value); // 0x102F0370 + public static double op_Explicit(Decimal value); // 0x102F02A0 + public static bool op_Inequality(Decimal d1, Decimal d2); // 0x102F0A90 + public static bool op_Equality(Decimal d1, Decimal d2); // 0x102F00D0 + public static bool op_GreaterThan(Decimal d1, Decimal d2); // 0x102F0780 + public static bool op_GreaterThanOrEqual(Decimal d1, Decimal d2); // 0x102F06D0 + public static bool op_LessThan(Decimal d1, Decimal d2); // 0x102F0BB0 + public static bool op_LessThanOrEqual(Decimal d1, Decimal d2); // 0x102F0B00 +} + +// Namespace: System +[Serializable] +public struct Boolean : IConvertible, IComparable, IComparable`1, IEquatable`1 // TypeDefIndex: 33 +{ + // Fields + public static readonly string FalseString; // 0x00 + public static readonly string TrueString; // 0x04 + internal bool m_value; // 0x08 + + // Methods + private static void .cctor(); // 0x10314F70 + private object System.IConvertible.ToType(Type targetType, IFormatProvider provider); // 0x1001F490 + private bool System.IConvertible.ToBoolean(IFormatProvider provider); // 0x1001F130 + private byte System.IConvertible.ToByte(IFormatProvider provider); // 0x1001F140 + private char System.IConvertible.ToChar(IFormatProvider provider); // 0x1001F1A0 + private DateTime System.IConvertible.ToDateTime(IFormatProvider provider); // 0x1001F1C0 + private Decimal System.IConvertible.ToDecimal(IFormatProvider provider); // 0x1001F1E0 + private double System.IConvertible.ToDouble(IFormatProvider provider); // 0x1001F250 + private short System.IConvertible.ToInt16(IFormatProvider provider); // 0x1001F2B0 + private int System.IConvertible.ToInt32(IFormatProvider provider); // 0x1001F310 + private long System.IConvertible.ToInt64(IFormatProvider provider); // 0x1001F370 + private sbyte System.IConvertible.ToSByte(IFormatProvider provider); // 0x1001F3D0 + private float System.IConvertible.ToSingle(IFormatProvider provider); // 0x1001F430 + private ushort System.IConvertible.ToUInt16(IFormatProvider provider); // 0x1001F540 + private uint System.IConvertible.ToUInt32(IFormatProvider provider); // 0x1001F5A0 + private ulong System.IConvertible.ToUInt64(IFormatProvider provider); // 0x1001F600 + public int CompareTo(object obj); // 0x1001EFA0 + public override bool Equals(object obj); // 0x1001F060 + public int CompareTo(bool value); // 0x1001EF70 + public bool Equals(bool obj); // 0x1001F0F0 + public override int GetHashCode(); // 0x1001F110 + public static bool Parse(string value); // 0x10314B20 + public static bool TryParse(string value, out bool result); // 0x10314E00 + public override string ToString(); // 0x1001F680 + public TypeCode GetTypeCode(); // 0x1001F120 + public string ToString(IFormatProvider provider); // 0x1001F660 +} + +// Namespace: System +[Serializable] +public struct IntPtr : ISerializable // TypeDefIndex: 34 +{ + // Fields + private void * m_value; // 0x08 + public static readonly IntPtr Zero; // 0x00 + + // Properties + public static int Size { get; } // 0x100FCEA0 + + // Methods + public void .ctor(int value); // 0x10005950 + public void .ctor(long value); // 0x10005950 + public void .ctor(void * value); // 0x10005950 + private void .ctor(SerializationInfo info, StreamingContext context); // 0x10005960 + private void System.Runtime.Serialization.ISerializable.GetObjectData(SerializationInfo info, StreamingContext context); // 0x10005880 + public override bool Equals(object obj); // 0x10005810 + public override int GetHashCode(); // 0x10003A80 + public int ToInt32(); // 0x10003A80 + public long ToInt64(); // 0x10005900 + public void * ToPointer(); // 0x10003A80 + public override string ToString(); // 0x10005930 + public string ToString(string format); // 0x10005910 + public static bool op_Equality(IntPtr value1, IntPtr value2); // 0x100F8860 + public static bool op_Inequality(IntPtr value1, IntPtr value2); // 0x100FCEC0 + public static IntPtr op_Explicit(int value); // 0x100F7810 + public static IntPtr op_Explicit(long value); // 0x100F7810 + public static IntPtr op_Explicit(void * value); // 0x100F7810 + public static int op_Explicit(IntPtr value); // 0x100F7810 + public static long op_Explicit(IntPtr value); // 0x100FCEB0 + public static void * op_Explicit(IntPtr value); // 0x100F7810 +} + +// Namespace: System.Runtime.Serialization +public interface ISerializable // TypeDefIndex: 35 +{ + // Methods + void GetObjectData(SerializationInfo info, StreamingContext context); +} + +// Namespace: System +[Serializable] +public struct UIntPtr : ISerializable // TypeDefIndex: 36 +{ + // Fields + public static readonly UIntPtr Zero; // 0x00 + private void * _pointer; // 0x08 + + // Properties + public static int Size { get; } // 0x100FCEA0 + + // Methods + public void .ctor(ulong value); // 0x100307E0 + public void .ctor(uint value); // 0x10005950 + public void .ctor(void * value); // 0x10005950 + private static void .cctor(); // 0x103499A0 + private void System.Runtime.Serialization.ISerializable.GetObjectData(SerializationInfo info, StreamingContext context); // 0x10030730 + public override bool Equals(object obj); // 0x100306C0 + public override int GetHashCode(); // 0x10003A80 + public uint ToUInt32(); // 0x10003A80 + public ulong ToUInt64(); // 0x100307D0 + public void * ToPointer(); // 0x10003A80 + public override string ToString(); // 0x100307B0 + public static bool op_Equality(UIntPtr value1, UIntPtr value2); // 0x100F8860 + public static bool op_Inequality(UIntPtr value1, UIntPtr value2); // 0x100FCEC0 + public static ulong op_Explicit(UIntPtr value); // 0x1021FB60 + public static uint op_Explicit(UIntPtr value); // 0x100F7810 + public static UIntPtr op_Explicit(ulong value); // 0x10349A50 + public static UIntPtr op_Explicit(void * value); // 0x100F7810 + public static void * op_Explicit(UIntPtr value); // 0x100F7810 + public static UIntPtr op_Explicit(uint value); // 0x100F7810 +} + +// Namespace: System +[Serializable] +public abstract class MulticastDelegate : Delegate // TypeDefIndex: 37 +{ + // Fields + private MulticastDelegate prev; // 0x2C + private MulticastDelegate kpm_next; // 0x30 + + // Methods + protected void .ctor(object target, string method); // 0x101052B0 + protected void .ctor(Type target, string method); // 0x10105280 + public override void GetObjectData(SerializationInfo info, StreamingContext context); // 0x10104EE0 + protected sealed override object DynamicInvokeImpl(object[] args); // 0x10104B70 + public sealed override bool Equals(object obj); // 0x10104BA0 + public sealed override int GetHashCode(); // 0x10104C40 + public sealed override Delegate[] GetInvocationList(); // 0x10104C50 + protected sealed override Delegate CombineImpl(Delegate follow); // 0x101048A0 + private bool BaseEquals(MulticastDelegate value); // 0x10104890 + private static MulticastDelegate KPM(MulticastDelegate needle, MulticastDelegate haystack, out MulticastDelegate tail); // 0x10104F00 + protected sealed override Delegate RemoveImpl(Delegate value); // 0x10104FF0 + public static bool op_Equality(MulticastDelegate d1, MulticastDelegate d2); // 0x101052E0 + public static bool op_Inequality(MulticastDelegate d1, MulticastDelegate d2); // 0x10105310 +} + +// Namespace: System +[Serializable] +public abstract class Delegate : ICloneable, ISerializable // TypeDefIndex: 38 +{ + // Fields + private IntPtr method_ptr; // 0x08 + private IntPtr invoke_impl; // 0x0C + private object m_target; // 0x10 + private IntPtr method; // 0x14 + private IntPtr delegate_trampoline; // 0x18 + private IntPtr method_code; // 0x1C + private MethodInfo method_info; // 0x20 + private MethodInfo original_method_info; // 0x24 + private DelegateData data; // 0x28 + + // Properties + public MethodInfo Method { get; } // 0x102F3B30 + public object Target { get; } // 0x100BFC20 + + // Methods + protected void .ctor(object target, string method); // 0x102F3A10 + protected void .ctor(Type target, string method); // 0x102F3950 + internal static Delegate CreateDelegate_internal(Type type, object target, MethodInfo info, bool throwOnBindFailure); // 0x102F2460 + internal void SetMulticastInvoke(); // 0x102F3940 + private static bool arg_type_match(Type delArgType, Type argType); // 0x102F3AD0 + private static bool return_type_match(Type delReturnType, Type returnType); // 0x102F3C10 + public static Delegate CreateDelegate(Type type, object firstArgument, MethodInfo method, bool throwOnBindFailure); // 0x102F2720 + public static Delegate CreateDelegate(Type type, object firstArgument, MethodInfo method); // 0x102F2FA0 + public static Delegate CreateDelegate(Type type, MethodInfo method, bool throwOnBindFailure); // 0x102F2F80 + public static Delegate CreateDelegate(Type type, MethodInfo method); // 0x102F2650 + public static Delegate CreateDelegate(Type type, object target, string method); // 0x102F2670 + private static MethodInfo GetCandidateMethod(Type type, Type target, string method, BindingFlags bflags, bool ignoreCase, bool throwOnBindFailure); // 0x102F3480 + public static Delegate CreateDelegate(Type type, Type target, string method, bool ignoreCase, bool throwOnBindFailure); // 0x102F2520 + public static Delegate CreateDelegate(Type type, Type target, string method); // 0x102F2700 + public static Delegate CreateDelegate(Type type, Type target, string method, bool ignoreCase); // 0x102F2F60 + public static Delegate CreateDelegate(Type type, object target, string method, bool ignoreCase, bool throwOnBindFailure); // 0x102F2480 + public static Delegate CreateDelegate(Type type, object target, string method, bool ignoreCase); // 0x102F25B0 + public object DynamicInvoke(object[] args); // 0x102F3380 + protected virtual object DynamicInvokeImpl(object[] args); // 0x102F2FC0 + public virtual object Clone(); // 0x10216010 + public override bool Equals(object obj); // 0x102F33A0 + public override int GetHashCode(); // 0x102F3770 + protected virtual MethodInfo GetMethodImpl(); // 0x102F3850 + public virtual void GetObjectData(SerializationInfo info, StreamingContext context); // 0x102F3860 + public virtual Delegate[] GetInvocationList(); // 0x102F37C0 + public static Delegate Combine(Delegate a, Delegate b); // 0x102F22A0 + public static Delegate Combine(Delegate[] delegates); // 0x102F2350 + protected virtual Delegate CombineImpl(Delegate d); // 0x102F2220 + public static Delegate Remove(Delegate source, Delegate value); // 0x102F3910 + protected virtual Delegate RemoveImpl(Delegate d); // 0x102F38E0 + public static Delegate RemoveAll(Delegate source, Delegate value); // 0x102F3880 + public static bool op_Equality(Delegate d1, Delegate d2); // 0x102F3B90 + public static bool op_Inequality(Delegate d1, Delegate d2); // 0x102F3BD0 +} + +// Namespace: System +[Serializable] +public abstract struct Enum : IFormattable, IConvertible, IComparable // TypeDefIndex: 39 +{ + // Fields + private static char[] split_char; // 0x00 + + // Properties + private object Value { get; } // 0x101C27B0 + + // Methods + protected void .ctor(); // 0x100C5970 + private static void .cctor(); // 0x101C2720 + private bool System.IConvertible.ToBoolean(IFormatProvider provider); // 0x101C1960 + private byte System.IConvertible.ToByte(IFormatProvider provider); // 0x101C19C0 + private char System.IConvertible.ToChar(IFormatProvider provider); // 0x101C1A20 + private DateTime System.IConvertible.ToDateTime(IFormatProvider provider); // 0x101C1A80 + private Decimal System.IConvertible.ToDecimal(IFormatProvider provider); // 0x101C1AF0 + private double System.IConvertible.ToDouble(IFormatProvider provider); // 0x101C1B60 + private short System.IConvertible.ToInt16(IFormatProvider provider); // 0x101C1BC0 + private int System.IConvertible.ToInt32(IFormatProvider provider); // 0x101C1C20 + private long System.IConvertible.ToInt64(IFormatProvider provider); // 0x101C1C80 + private sbyte System.IConvertible.ToSByte(IFormatProvider provider); // 0x101C1CE0 + private float System.IConvertible.ToSingle(IFormatProvider provider); // 0x101C1D40 + private object System.IConvertible.ToType(Type targetType, IFormatProvider provider); // 0x101C1DA0 + private ushort System.IConvertible.ToUInt16(IFormatProvider provider); // 0x101C1F40 + private uint System.IConvertible.ToUInt32(IFormatProvider provider); // 0x101C1FA0 + private ulong System.IConvertible.ToUInt64(IFormatProvider provider); // 0x101C2000 + public TypeCode GetTypeCode(); // 0x101C0B80 + private object get_value(); // 0x101C27B0 + public static Array GetValues(Type enumType); // 0x101C0E10 + public static string[] GetNames(Type enumType); // 0x101C0A70 + private static int FindPosition(object value, Array values); // 0x101BF210 + public static string GetName(Type enumType, object value); // 0x101C0910 + public static bool IsDefined(Type enumType, object value); // 0x101C0F10 + private static Type get_underlying_type(Type enumType); // 0x101C27C0 + public static Type GetUnderlyingType(Type enumType); // 0x101C0C10 + public static object Parse(Type enumType, string value); // 0x101C1160 + private static int FindName(Hashtable name_hash, string[] names, string name, bool ignoreCase); // 0x101BF080 + private static ulong GetValue(object value, TypeCode typeCode); // 0x101C0CD0 + public static object Parse(Type enumType, string value, bool ignoreCase); // 0x101C11C0 + private int compare_value_to(object other); // 0x101C2790 + public int CompareTo(object target); // 0x101BEFA0 + public override string ToString(); // 0x101C24D0 + public string ToString(IFormatProvider provider); // 0x101C2650 + public string ToString(string format); // 0x101C25A0 + public string ToString(string format, IFormatProvider provider); // 0x101C2420 + public static object ToObject(Type enumType, byte value); // 0x101C2170 + public static object ToObject(Type enumType, short value); // 0x101C2250 + public static object ToObject(Type enumType, int value); // 0x101C21E0 + public static object ToObject(Type enumType, long value); // 0x101C2060 + public static object ToObject(Type enumType, object value); // 0x101C2150 + public static object ToObject(Type enumType, sbyte value); // 0x101C20E0 + public static object ToObject(Type enumType, ushort value); // 0x101C22C0 + public static object ToObject(Type enumType, uint value); // 0x101C23B0 + public static object ToObject(Type enumType, ulong value); // 0x101C2330 + public override bool Equals(object obj); // 0x101BF070 + private int get_hashcode(); // 0x101C0900 + public override int GetHashCode(); // 0x101C0900 + private static string FormatSpecifier_X(Type enumType, object value, bool upper); // 0x101C00D0 + private static string FormatFlags(Type enumType, object value); // 0x101BF3E0 + public static string Format(Type enumType, object value, string format); // 0x101C0350 +} + +// Namespace: System +[Serializable] +public abstract class Array : IEnumerable, ICloneable, ICollection, IList // TypeDefIndex: 40 +{ + // Properties + private object System.Collections.IList.Item { get; set; } // 0x1030FDA0 0x1030FE90 + private int System.Collections.ICollection.Count { get; } // 0x1030E370 + public int Length { get; } // 0x1030E370 + public long LongLength { get; } // 0x10310480 + public int Rank { get; } // 0x1030DA60 + public bool IsSynchronized { get; } // 0x100EFBF0 + public object SyncRoot { get; } // 0x100F7810 + public bool IsFixedSize { get; } // 0x100E5880 + public bool IsReadOnly { get; } // 0x100EFBF0 + + // Methods + private void .ctor(); // 0x100BF000 + private int System.Collections.IList.Add(object value); // 0x1030FA90 + private void System.Collections.IList.Clear(); // 0x1030FAE0 + private bool System.Collections.IList.Contains(object value); // 0x1030FB40 + private int System.Collections.IList.IndexOf(object value); // 0x1030FBF0 + private void System.Collections.IList.Insert(int index, object value); // 0x1030FCB0 + private void System.Collections.IList.Remove(object value); // 0x1030FD50 + private void System.Collections.IList.RemoveAt(int index); // 0x1030FD00 + internal int InternalArray__ICollection_get_Count(); // 0x1030E370 + internal bool InternalArray__ICollection_get_IsReadOnly(); // 0x100E5880 + internal IEnumerator`1 InternalArray__IEnumerable_GetEnumerator(); + internal void InternalArray__ICollection_Clear(); // 0x1030E320 + internal void InternalArray__ICollection_Add(T item); + internal bool InternalArray__ICollection_Remove(T item); + internal bool InternalArray__ICollection_Contains(T item); + internal void InternalArray__ICollection_CopyTo(T[] array, int index); + internal void InternalArray__Insert(int index, T item); + internal void InternalArray__RemoveAt(int index); // 0x1030E3C0 + internal int InternalArray__IndexOf(T item); + internal T InternalArray__get_Item(int index); + internal void InternalArray__set_Item(int index, T item); + internal void GetGenericValueImpl(int pos, out T value); + internal void SetGenericValueImpl(int pos, T value); + private int GetRank(); // 0x1030DA60 + public int GetLength(int dimension); // 0x1030DA00 + public long GetLongLength(int dimension); // 0x1030DA20 + public int GetLowerBound(int dimension); // 0x1030DA40 + public object GetValue(int[] indices); // 0x1030DCF0 + public void SetValue(object value, int[] indices); // 0x1030ECA0 + internal object GetValueImpl(int pos); // 0x1030DAA0 + internal void SetValueImpl(object value, int pos); // 0x1030EB40 + internal static bool FastCopy(Array source, int source_idx, Array dest, int dest_idx, int length); // 0x1030D840 + internal static Array CreateInstanceImpl(Type elementType, int[] lengths, int[] bounds); // 0x1030CF70 + public IEnumerator GetEnumerator(); // 0x1030D860 + public int GetUpperBound(int dimension); // 0x1030DA70 + public object GetValue(int index); // 0x1030DD80 + public object GetValue(int index1, int index2); // 0x1030DAC0 + public object GetValue(int index1, int index2, int index3); // 0x1030DE70 + public object GetValue(long index); // 0x1030E040 + public object GetValue(long index1, long index2); // 0x1030DF10 + public object GetValue(long index1, long index2, long index3); // 0x1030DB50 + public void SetValue(object value, long index); // 0x1030EB60 + public void SetValue(object value, long index1, long index2); // 0x1030ECC0 + public void SetValue(object value, long index1, long index2, long index3); // 0x1030EE40 + public void SetValue(object value, int index); // 0x1030F070 + public void SetValue(object value, int index1, int index2); // 0x1030EFE0 + public void SetValue(object value, int index1, int index2, int index3); // 0x1030EC00 + public static Array CreateInstance(Type elementType, int length); // 0x1030D090 + public static Array CreateInstance(Type elementType, int length1, int length2); // 0x1030CF90 + public static Array CreateInstance(Type elementType, int length1, int length2, int length3); // 0x1030D100 + public static Array CreateInstance(Type elementType, int[] lengths); // 0x1030D1A0 + public static Array CreateInstance(Type elementType, int[] lengths, int[] lowerBounds); // 0x1030D340 + private static int[] GetIntArray(long[] values); // 0x1030D910 + public static Array CreateInstance(Type elementType, long[] lengths); // 0x1030D010 + public object GetValue(long[] indices); // 0x1030DD10 + public void SetValue(object value, long[] indices); // 0x1030EDD0 + public static int BinarySearch(Array array, object value); // 0x1030C0E0 + public static int BinarySearch(Array array, object value, IComparer comparer); // 0x1030C210 + public static int BinarySearch(Array array, int index, int length, object value); // 0x1030BEF0 + public static int BinarySearch(Array array, int index, int length, object value, IComparer comparer); // 0x1030BCE0 + private static int DoBinarySearch(Array array, int index, int length, object value, IComparer comparer); // 0x1030D6A0 + public static void Clear(Array array, int index, int length); // 0x1030C370 + private static void ClearInternal(Array a, int index, int count); // 0x1030C350 + public object Clone(); // 0x1030C450 + public static void Copy(Array sourceArray, Array destinationArray, int length); // 0x1030CED0 + public static void Copy(Array sourceArray, int sourceIndex, Array destinationArray, int destinationIndex, int length); // 0x1030C850 + public static void Copy(Array sourceArray, long sourceIndex, Array destinationArray, long destinationIndex, long length); // 0x1030C690 + public static void Copy(Array sourceArray, Array destinationArray, long length); // 0x1030CE30 + public static int IndexOf(Array array, object value); // 0x1030E220 + public static int IndexOf(Array array, object value, int startIndex); // 0x1030E2A0 + public static int IndexOf(Array array, object value, int startIndex, int count); // 0x1030E0D0 + public void Initialize(); // 0x100C5530 + public static int LastIndexOf(Array array, object value); // 0x1030E410 + public static int LastIndexOf(Array array, object value, int startIndex); // 0x1030E600 + public static int LastIndexOf(Array array, object value, int startIndex, int count); // 0x1030E4A0 + private static Swapper get_swapper(Array array); // 0x103104D0 + private static Swapper get_swapper(T[] array); + public static void Reverse(Array array); // 0x1030EAC0 + public static void Reverse(Array array, int index, int length); // 0x1030E780 + public static void Sort(Array array); // 0x1030F950 + public static void Sort(Array keys, Array items); // 0x1030F8D0 + public static void Sort(Array array, IComparer comparer); // 0x1030F180 + public static void Sort(Array array, int index, int length); // 0x1030F160 + public static void Sort(Array keys, Array items, IComparer comparer); // 0x1030F9D0 + public static void Sort(Array keys, Array items, int index, int length); // 0x1030FA50 + public static void Sort(Array array, int index, int length, IComparer comparer); // 0x1030FA70 + public static void Sort(Array keys, Array items, int index, int length, IComparer comparer); // 0x1030F200 + private void int_swapper(int i, int j); // 0x103105C0 + private void obj_swapper(int i, int j); // 0x103106A0 + private void slow_swapper(int i, int j); // 0x10310910 + private void double_swapper(int i, int j); // 0x103103E0 + private static int new_gap(int gap); // 0x10310660 + private static void combsort(double[] array, int start, int size, Swapper swap_items); // 0x103100B0 + private static void combsort(int[] array, int start, int size, Swapper swap_items); // 0x10310200 + private static void combsort(char[] array, int start, int size, Swapper swap_items); // 0x1030FF80 + private static void qsort(Array keys, Array items, int low0, int high0, IComparer comparer); // 0x103107B0 + private static void swap(Array keys, Array items, int i, int j); // 0x10310950 + private static int compare(object value1, object value2, IComparer comparer); // 0x10310330 + public static void Sort(T[] array); + public static void Sort(T[] keys, T[] items); + public static void Sort(T[] array, IComparer`1 comparer); + public static void Sort(T[] keys, T[] items, IComparer`1 comparer); + public static void Sort(T[] array, int index, int length); + public static void Sort(T[] keys, T[] items, int index, int length); + public static void Sort(T[] array, int index, int length, IComparer`1 comparer); + public static void Sort(T[] keys, T[] items, int index, int length, IComparer`1 comparer); + public static void Sort(T[] array, Comparison`1 comparison); + internal static void Sort(T[] array, int length, Comparison`1 comparison); + private static void qsort(T[] keys, T[] items, int low0, int high0, IComparer`1 comparer); + private static int compare(T value1, T value2, IComparer`1 comparer); + private static void qsort(T[] array, int low0, int high0, Comparison`1 comparison); + private static void swap(T[] keys, T[] items, int i, int j); + private static void swap(T[] array, int i, int j); + public void CopyTo(Array array, int index); // 0x1030C470 + public void CopyTo(Array array, long index); // 0x1030C5F0 + public static void Resize(T[] array, int newSize); + internal static void Resize(T[] array, int length, int newSize); + public static bool TrueForAll(T[] array, Predicate`1 match); + public static void ForEach(T[] array, Action`1 action); + public static T[] ConvertAll(T[] array, Converter`2 converter); + public static int FindLastIndex(T[] array, Predicate`1 match); + public static int FindLastIndex(T[] array, int startIndex, Predicate`1 match); + public static int FindLastIndex(T[] array, int startIndex, int count, Predicate`1 match); + public static int FindIndex(T[] array, Predicate`1 match); + public static int FindIndex(T[] array, int startIndex, Predicate`1 match); + public static int FindIndex(T[] array, int startIndex, int count, Predicate`1 match); + public static int BinarySearch(T[] array, T value); + public static int BinarySearch(T[] array, T value, IComparer`1 comparer); + public static int BinarySearch(T[] array, int index, int length, T value); + public static int BinarySearch(T[] array, int index, int length, T value, IComparer`1 comparer); + public static int IndexOf(T[] array, T value); + public static int IndexOf(T[] array, T value, int startIndex); + public static int IndexOf(T[] array, T value, int startIndex, int count); + public static int LastIndexOf(T[] array, T value); + public static int LastIndexOf(T[] array, T value, int startIndex); + public static int LastIndexOf(T[] array, T value, int startIndex, int count); + public static T[] FindAll(T[] array, Predicate`1 match); + public static bool Exists(T[] array, Predicate`1 match); + public static ReadOnlyCollection`1 AsReadOnly(T[] array); + public static T Find(T[] array, Predicate`1 match); + public static T FindLast(T[] array, Predicate`1 match); + public static void ConstrainedCopy(Array sourceArray, int sourceIndex, Array destinationArray, int destinationIndex, int length); // 0x1030C460 +} + +// Namespace: +internal struct InternalEnumerator`1 : IEnumerator, IDisposable, IEnumerator`1 // TypeDefIndex: 41 +{ + // Fields + private const int NOT_STARTED = -2; // 0x00 + private const int FINISHED = -1; // 0x00 + private Array array; // 0x00 + private int idx; // 0x00 + + // Properties + private object System.Collections.IEnumerator.Current { get; } + public T Current { get; } + + // Methods + internal void .ctor(Array array); + private void System.Collections.IEnumerator.Reset(); + public void Dispose(); + public bool MoveNext(); +} + +// Namespace: +internal class SimpleEnumerator : IEnumerator, ICloneable // TypeDefIndex: 42 +{ + // Fields + private Array enumeratee; // 0x08 + private int currentpos; // 0x0C + private int length; // 0x10 + + // Properties + public object Current { get; } // 0x1031AC40 + + // Methods + public void .ctor(Array arrayToEnumerate); // 0x1031AAA0 + public bool MoveNext(); // 0x1031A990 + public void Reset(); // 0x10113480 + public object Clone(); // 0x10216010 +} + +// Namespace: +private class ArrayReadOnlyList`1 : IEnumerable, IList`1, ICollection`1, IEnumerable`1 // TypeDefIndex: 43 +{ + // Fields + private T[] array; // 0x00 + + // Properties + public T Item { get; set; } + public int Count { get; } + public bool IsReadOnly { get; } + + // Methods + public void .ctor(T[] array); + private IEnumerator System.Collections.IEnumerable.GetEnumerator(); + public void Add(T item); + public void Clear(); + public bool Contains(T item); + public void CopyTo(T[] array, int index); + public IEnumerator`1 GetEnumerator(); + public int IndexOf(T item); + public void Insert(int index, T item); + public bool Remove(T item); + public void RemoveAt(int index); + private static Exception ReadOnlyError(); +} + +// Namespace: +private sealed class c__Iterator0 : IEnumerator, IDisposable, IEnumerator`1 // TypeDefIndex: 44 +{ + // Fields + internal int __0; // 0x00 + internal int $PC; // 0x00 + internal T $current; // 0x00 + internal ArrayReadOnlyList`1 <>f__this; // 0x00 + + // Properties + private T System.Collections.Generic.IEnumerator.Current { get; } + private object System.Collections.IEnumerator.Current { get; } + + // Methods + public void .ctor(); + public bool MoveNext(); + public void Dispose(); + public void Reset(); +} + +// Namespace: +private delegate void Swapper(int i, int j); // TypeDefIndex: 45; 0x1031AD70 + +// Namespace: System.Collections +public interface ICollection : IEnumerable // TypeDefIndex: 46 +{ + // Properties + int Count { get; } + bool IsSynchronized { get; } + object SyncRoot { get; } + + // Methods + void CopyTo(Array array, int index); +} + +// Namespace: System.Collections +public interface IList : IEnumerable, ICollection // TypeDefIndex: 47 +{ + // Properties + bool IsFixedSize { get; } + bool IsReadOnly { get; } + object Item { get; set; } + + // Methods + int Add(object value); + void Clear(); + bool Contains(object value); + int IndexOf(object value); + void Insert(int index, object value); + void Remove(object value); + void RemoveAt(int index); +} + +// Namespace: System.Collections.Generic +public interface IList`1 : IEnumerable, ICollection`1, IEnumerable`1 // TypeDefIndex: 48 +{ + // Properties + T Item { get; set; } + + // Methods + int IndexOf(T item); + void Insert(int index, T item); + void RemoveAt(int index); +} + +// Namespace: System.Collections.Generic +public interface ICollection`1 : IEnumerable, IEnumerable`1 // TypeDefIndex: 49 +{ + // Properties + int Count { get; } + bool IsReadOnly { get; } + + // Methods + void Add(T item); + void Clear(); + bool Contains(T item); + void CopyTo(T[] array, int arrayIndex); + bool Remove(T item); +} + +// Namespace: System +[Serializable] +public struct Void // TypeDefIndex: 50 +{ +} + +// Namespace: System +[Serializable] +public abstract class Type : MemberInfo, IReflect, _Type // TypeDefIndex: 51 +{ + // Fields + internal const BindingFlags DefaultBindingFlags = 28; // 0x00 + internal RuntimeTypeHandle _impl; // 0x08 + public static readonly char Delimiter; // 0x00 + public static readonly Type[] EmptyTypes; // 0x04 + public static readonly MemberFilter FilterAttribute; // 0x08 + public static readonly MemberFilter FilterName; // 0x0C + public static readonly MemberFilter FilterNameIgnoreCase; // 0x10 + public static readonly object Missing; // 0x14 + + // Properties + public abstract Assembly Assembly { get; } + public abstract string AssemblyQualifiedName { get; } + public TypeAttributes Attributes { get; } // 0x10282700 + public abstract Type BaseType { get; } + public override Type DeclaringType { get; } // 0x100C5600 + public static Binder DefaultBinder { get; } // 0x10282720 + public abstract string FullName { get; } + public abstract Guid GUID { get; } + public bool HasElementType { get; } // 0x10282880 + public bool IsAbstract { get; } // 0x102828A0 + public bool IsAnsiClass { get; } // 0x102828D0 + public bool IsArray { get; } // 0x10282900 + public bool IsAutoClass { get; } // 0x10282920 + public bool IsAutoLayout { get; } // 0x10282950 + public bool IsByRef { get; } // 0x10282980 + public bool IsClass { get; } // 0x102829C0 + public bool IsCOMObject { get; } // 0x102829A0 + public bool IsContextful { get; } // 0x10282A10 + public bool IsEnum { get; } // 0x10282A30 + public bool IsExplicitLayout { get; } // 0x10282AA0 + public bool IsImport { get; } // 0x10282AF0 + public bool IsInterface { get; } // 0x10282B20 + public bool IsLayoutSequential { get; } // 0x10282B50 + public bool IsMarshalByRef { get; } // 0x10282B80 + public bool IsNestedAssembly { get; } // 0x10282BA0 + public bool IsNestedFamANDAssem { get; } // 0x10282BD0 + public bool IsNestedFamily { get; } // 0x10282C30 + public bool IsNestedFamORAssem { get; } // 0x10282C00 + public bool IsNestedPrivate { get; } // 0x10282C60 + public bool IsNestedPublic { get; } // 0x10282C90 + public bool IsNotPublic { get; } // 0x10282CF0 + public bool IsPointer { get; } // 0x10282D20 + public bool IsPrimitive { get; } // 0x10282D40 + public bool IsPublic { get; } // 0x10282D60 + public bool IsSealed { get; } // 0x10282D90 + public bool IsSerializable { get; } // 0x10282DC0 + public bool IsSpecialName { get; } // 0x10282F70 + public bool IsUnicodeClass { get; } // 0x10282FE0 + public bool IsValueType { get; } // 0x10283130 + public override MemberTypes MemberType { get; } // 0x102831C0 + public abstract Module Module { get; } + public abstract string Namespace { get; } + public override Type ReflectedType { get; } // 0x100C5600 + public virtual RuntimeTypeHandle TypeHandle { get; } // 0x100C5600 + public ConstructorInfo TypeInitializer { get; } // 0x102832D0 + public abstract Type UnderlyingSystemType { get; } + internal bool IsSystemType { get; } // 0x10282FA0 + public virtual bool ContainsGenericParameters { get; } // 0x100EFBF0 + public virtual bool IsGenericTypeDefinition { get; } // 0x10282AD0 + public virtual bool IsGenericType { get; } // 0x10282AE0 + public virtual bool IsGenericParameter { get; } // 0x100EFBF0 + public bool IsNested { get; } // 0x10282CC0 + public bool IsVisible { get; } // 0x10283150 + public virtual int GenericParameterPosition { get; } // 0x10282820 + public virtual GenericParameterAttributes GenericParameterAttributes { get; } // 0x102827B0 + public virtual MethodBase DeclaringMethod { get; } // 0x100C5600 + public virtual StructLayoutAttribute StructLayoutAttribute { get; } // 0x102831D0 + internal bool IsUserType { get; } // 0x10283010 + + // Methods + protected void .ctor(); // 0x100C5970 + private static void .cctor(); // 0x10282600 + private void System.Runtime.InteropServices._Type.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x102824A0 + private void System.Runtime.InteropServices._Type.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x10282540 + private void System.Runtime.InteropServices._Type.GetTypeInfoCount(out uint pcTInfo); // 0x102824F0 + private void System.Runtime.InteropServices._Type.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x10282590 + private static bool FilterName_impl(MemberInfo m, object filterCriteria); // 0x1027F940 + private static bool FilterNameIgnoreCase_impl(MemberInfo m, object filterCriteria); // 0x1027F7C0 + private static bool FilterAttribute_impl(MemberInfo m, object filterCriteria); // 0x1027F520 + public override bool Equals(object o); // 0x1027F440 + public bool Equals(Type o); // 0x1027F4C0 + internal bool EqualsInternal(Type type); // 0x1027F420 + private static Type internal_from_handle(IntPtr handle); // 0x10283340 + private static Type internal_from_name(string name, bool throwOnError, bool ignoreCase); // 0x10283350 + public static Type GetType(string typeName); // 0x10281A60 + public static Type GetType(string typeName, bool throwOnError); // 0x10281880 + public static Type GetType(string typeName, bool throwOnError, bool ignoreCase); // 0x10281970 + public static Type[] GetTypeArray(object[] args); // 0x102812F0 + internal static TypeCode GetTypeCodeInternal(Type type); // 0x10281410 + public static TypeCode GetTypeCode(Type type); // 0x10281420 + public static Type GetTypeFromCLSID(Guid clsid); // 0x10281600 + public static Type GetTypeFromCLSID(Guid clsid, bool throwOnError); // 0x10281560 + public static Type GetTypeFromCLSID(Guid clsid, string server); // 0x10281510 + public static Type GetTypeFromCLSID(Guid clsid, string server, bool throwOnError); // 0x102815B0 + public static Type GetTypeFromHandle(RuntimeTypeHandle handle); // 0x10281650 + public static Type GetTypeFromProgID(string progID); // 0x10281710 + public static Type GetTypeFromProgID(string progID, bool throwOnError); // 0x102817B0 + public static Type GetTypeFromProgID(string progID, string server); // 0x102816C0 + public static Type GetTypeFromProgID(string progID, string server, bool throwOnError); // 0x10281760 + public static RuntimeTypeHandle GetTypeHandle(object o); // 0x10281800 + internal static bool type_is_subtype_of(Type a, Type b, bool check_interfaces); // 0x102833B0 + internal static bool type_is_assignable_from(Type a, Type b); // 0x10283390 + public Type GetType(); // 0x1015CD60 + public virtual bool IsSubclassOf(Type c); // 0x10281DD0 + public virtual Type[] FindInterfaces(TypeFilter filter, object filterCriteria); // 0x1027FA70 + public Type GetInterface(string name); // 0x10280920 + public abstract Type GetInterface(string name, bool ignoreCase); + internal static void GetInterfaceMapData(Type t, Type iface, out MethodInfo[] targets, out MethodInfo[] methods); // 0x10280770 + public virtual InterfaceMapping GetInterfaceMap(Type interfaceType); // 0x10280790 + public abstract Type[] GetInterfaces(); + public virtual bool IsAssignableFrom(Type c); // 0x10281B80 + public virtual bool IsInstanceOfType(object o); // 0x10281D30 + public virtual int GetArrayRank(); // 0x10280260 + public abstract Type GetElementType(); + public EventInfo GetEvent(string name); // 0x102804E0 + public abstract EventInfo GetEvent(string name, BindingFlags bindingAttr); + public virtual EventInfo[] GetEvents(); // 0x10280510 + public abstract EventInfo[] GetEvents(BindingFlags bindingAttr); + public FieldInfo GetField(string name); // 0x10280580 + public abstract FieldInfo GetField(string name, BindingFlags bindingAttr); + public FieldInfo[] GetFields(); // 0x102805B0 + public abstract FieldInfo[] GetFields(BindingFlags bindingAttr); + public override int GetHashCode(); // 0x10280720 + public MemberInfo[] GetMember(string name); // 0x10280A40 + public virtual MemberInfo[] GetMember(string name, BindingFlags bindingAttr); // 0x10280A70 + public virtual MemberInfo[] GetMember(string name, MemberTypes type, BindingFlags bindingAttr); // 0x10280950 + public MemberInfo[] GetMembers(); // 0x10280AA0 + public abstract MemberInfo[] GetMembers(BindingFlags bindingAttr); + public MethodInfo GetMethod(string name); // 0x10280AF0 + public MethodInfo GetMethod(string name, BindingFlags bindingAttr); // 0x10280B70 + public MethodInfo GetMethod(string name, Type[] types); // 0x10280BF0 + public MethodInfo GetMethod(string name, Type[] types, ParameterModifier[] modifiers); // 0x10280C90 + public MethodInfo GetMethod(string name, BindingFlags bindingAttr, Binder binder, Type[] types, ParameterModifier[] modifiers); // 0x10280C10 + public MethodInfo GetMethod(string name, BindingFlags bindingAttr, Binder binder, CallingConventions callConvention, Type[] types, ParameterModifier[] modifiers); // 0x10280CC0 + protected abstract MethodInfo GetMethodImpl(string name, BindingFlags bindingAttr, Binder binder, CallingConventions callConvention, Type[] types, ParameterModifier[] modifiers); + internal MethodInfo GetMethodImplInternal(string name, BindingFlags bindingAttr, Binder binder, CallingConventions callConvention, Type[] types, ParameterModifier[] modifiers); // 0x10280AC0 + internal virtual MethodInfo GetMethod(MethodInfo fromNoninstanciated); // 0x10280C40 + internal virtual ConstructorInfo GetConstructor(ConstructorInfo fromNoninstanciated); // 0x102802B0 + internal virtual FieldInfo GetField(FieldInfo fromNoninstanciated); // 0x10280530 + public MethodInfo[] GetMethods(); // 0x10280DA0 + public abstract MethodInfo[] GetMethods(BindingFlags bindingAttr); + public Type GetNestedType(string name); // 0x10280DC0 + public abstract Type GetNestedType(string name, BindingFlags bindingAttr); + public Type[] GetNestedTypes(); // 0x10280DF0 + public abstract Type[] GetNestedTypes(BindingFlags bindingAttr); + public PropertyInfo[] GetProperties(); // 0x10280E30 + public abstract PropertyInfo[] GetProperties(BindingFlags bindingAttr); + public PropertyInfo GetProperty(string name); // 0x10280EB0 + public PropertyInfo GetProperty(string name, BindingFlags bindingAttr); // 0x102810B0 + public PropertyInfo GetProperty(string name, Type returnType); // 0x10281030 + public PropertyInfo GetProperty(string name, Type[] types); // 0x10281010 + public PropertyInfo GetProperty(string name, Type returnType, Type[] types); // 0x10281130 + public PropertyInfo GetProperty(string name, Type returnType, Type[] types, ParameterModifier[] modifiers); // 0x10280E80 + public PropertyInfo GetProperty(string name, BindingFlags bindingAttr, Binder binder, Type returnType, Type[] types, ParameterModifier[] modifiers); // 0x10280F30 + protected abstract PropertyInfo GetPropertyImpl(string name, BindingFlags bindingAttr, Binder binder, Type returnType, Type[] types, ParameterModifier[] modifiers); + internal PropertyInfo GetPropertyImplInternal(string name, BindingFlags bindingAttr, Binder binder, Type returnType, Type[] types, ParameterModifier[] modifiers); // 0x10280E50 + protected abstract ConstructorInfo GetConstructorImpl(BindingFlags bindingAttr, Binder binder, CallingConventions callConvention, Type[] types, ParameterModifier[] modifiers); + protected abstract TypeAttributes GetAttributeFlagsImpl(); + protected abstract bool HasElementTypeImpl(); + protected abstract bool IsArrayImpl(); + protected abstract bool IsByRefImpl(); + protected abstract bool IsCOMObjectImpl(); + protected abstract bool IsPointerImpl(); + protected abstract bool IsPrimitiveImpl(); + internal static bool IsArrayImpl(Type type); // 0x10281B70 + protected virtual bool IsValueTypeImpl(); // 0x10281EC0 + protected virtual bool IsContextfulImpl(); // 0x10281CB0 + protected virtual bool IsMarshalByRefImpl(); // 0x10281D50 + public ConstructorInfo GetConstructor(Type[] types); // 0x10280300 + public ConstructorInfo GetConstructor(BindingFlags bindingAttr, Binder binder, Type[] types, ParameterModifier[] modifiers); // 0x10280320 + public ConstructorInfo GetConstructor(BindingFlags bindingAttr, Binder binder, CallingConventions callConvention, Type[] types, ParameterModifier[] modifiers); // 0x10280340 + public ConstructorInfo[] GetConstructors(); // 0x102803F0 + public abstract ConstructorInfo[] GetConstructors(BindingFlags bindingAttr); + public virtual MemberInfo[] GetDefaultMembers(); // 0x10280410 + public virtual MemberInfo[] FindMembers(MemberTypes memberType, BindingFlags bindingAttr, MemberFilter filter, object filterCriteria); // 0x1027FC50 + public object InvokeMember(string name, BindingFlags invokeAttr, Binder binder, object target, object[] args); // 0x10281AF0 + public object InvokeMember(string name, BindingFlags invokeAttr, Binder binder, object target, object[] args, CultureInfo culture); // 0x10281B30 + public abstract object InvokeMember(string name, BindingFlags invokeAttr, Binder binder, object target, object[] args, ParameterModifier[] modifiers, CultureInfo culture, string[] namedParameters); + public override string ToString(); // 0x102825E0 + public virtual Type[] GetGenericArguments(); // 0x102805D0 + internal Type GetGenericTypeDefinition_impl(); // 0x102806C0 + public virtual Type GetGenericTypeDefinition(); // 0x102806D0 + private static Type MakeGenericType(Type gt, Type[] types); // 0x10282020 + public virtual Type MakeGenericType(Type[] typeArguments); // 0x10282040 + private int GetGenericParameterPosition(); // 0x102806B0 + private GenericParameterAttributes GetGenericParameterAttributes(); // 0x10280620 + private Type[] GetGenericParameterConstraints_impl(); // 0x10280630 + public virtual Type[] GetGenericParameterConstraints(); // 0x10280640 + private Type make_array_type(int rank); // 0x10283370 + public virtual Type MakeArrayType(); // 0x10282000 + public virtual Type MakeArrayType(int rank); // 0x10281FA0 + private Type make_byref_type(); // 0x10282010 + public virtual Type MakeByRefType(); // 0x10282010 + public virtual Type MakePointerType(); // 0x102822E0 + public static Type ReflectionOnlyGetType(string typeName, bool throwIfNotFound, bool ignoreCase); // 0x102822F0 + private void GetPacking(out int packing, out int size); // 0x10280E10 + internal object[] GetPseudoCustomAttributes(); // 0x10281160 +} + +// Namespace: System.Reflection +[Serializable] +public abstract class MemberInfo : ICustomAttributeProvider, _MemberInfo // TypeDefIndex: 52 +{ + // Properties + public abstract Type DeclaringType { get; } + public abstract MemberTypes MemberType { get; } + public abstract string Name { get; } + public abstract Type ReflectedType { get; } + public virtual Module Module { get; } // 0x101711F0 + public virtual int MetadataToken { get; } // 0x101711E0 + + // Methods + protected void .ctor(); // 0x100BF000 + private void System.Runtime.InteropServices._MemberInfo.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x101710A0 + private void System.Runtime.InteropServices._MemberInfo.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x10171140 + private void System.Runtime.InteropServices._MemberInfo.GetTypeInfoCount(out uint pcTInfo); // 0x101710F0 + private void System.Runtime.InteropServices._MemberInfo.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x10171190 + public abstract bool IsDefined(Type attributeType, bool inherit); + public abstract object[] GetCustomAttributes(bool inherit); + public abstract object[] GetCustomAttributes(Type attributeType, bool inherit); + virtual Type System.Runtime.InteropServices._MemberInfo.GetType(); // 0x1015CD60 +} + +// Namespace: System.Reflection +public interface ICustomAttributeProvider // TypeDefIndex: 53 +{ + // Methods + object[] GetCustomAttributes(bool inherit); + object[] GetCustomAttributes(Type attributeType, bool inherit); + bool IsDefined(Type attributeType, bool inherit); +} + +// Namespace: System.Runtime.InteropServices +public interface _MemberInfo // TypeDefIndex: 54 +{ + // Properties + Type DeclaringType { get; } + MemberTypes MemberType { get; } + string Name { get; } + Type ReflectedType { get; } + + // Methods + bool Equals(object other); + object[] GetCustomAttributes(bool inherit); + object[] GetCustomAttributes(Type attributeType, bool inherit); + int GetHashCode(); + Type GetType(); + bool IsDefined(Type attributeType, bool inherit); + string ToString(); + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); +} + +// Namespace: System.Reflection +public interface IReflect // TypeDefIndex: 55 +{ + // Properties + Type UnderlyingSystemType { get; } + + // Methods + FieldInfo GetField(string name, BindingFlags bindingAttr); + FieldInfo[] GetFields(BindingFlags bindingAttr); + MemberInfo[] GetMember(string name, BindingFlags bindingAttr); + MemberInfo[] GetMembers(BindingFlags bindingAttr); + MethodInfo GetMethod(string name, BindingFlags bindingAttr); + MethodInfo GetMethod(string name, BindingFlags bindingAttr, Binder binder, Type[] types, ParameterModifier[] modifiers); + MethodInfo[] GetMethods(BindingFlags bindingAttr); + PropertyInfo[] GetProperties(BindingFlags bindingAttr); + PropertyInfo GetProperty(string name, BindingFlags bindingAttr); + PropertyInfo GetProperty(string name, BindingFlags bindingAttr, Binder binder, Type returnType, Type[] types, ParameterModifier[] modifiers); + object InvokeMember(string name, BindingFlags invokeAttr, Binder binder, object target, object[] args, ParameterModifier[] modifiers, CultureInfo culture, string[] namedParameters); +} + +// Namespace: System.Runtime.InteropServices +public interface _Type // TypeDefIndex: 56 +{ + // Properties + Assembly Assembly { get; } + string AssemblyQualifiedName { get; } + TypeAttributes Attributes { get; } + Type BaseType { get; } + Type DeclaringType { get; } + string FullName { get; } + Guid GUID { get; } + bool HasElementType { get; } + bool IsAbstract { get; } + bool IsAnsiClass { get; } + bool IsArray { get; } + bool IsAutoClass { get; } + bool IsAutoLayout { get; } + bool IsByRef { get; } + bool IsClass { get; } + bool IsCOMObject { get; } + bool IsContextful { get; } + bool IsEnum { get; } + bool IsExplicitLayout { get; } + bool IsImport { get; } + bool IsInterface { get; } + bool IsLayoutSequential { get; } + bool IsMarshalByRef { get; } + bool IsNestedAssembly { get; } + bool IsNestedFamANDAssem { get; } + bool IsNestedFamily { get; } + bool IsNestedFamORAssem { get; } + bool IsNestedPrivate { get; } + bool IsNestedPublic { get; } + bool IsNotPublic { get; } + bool IsPointer { get; } + bool IsPrimitive { get; } + bool IsPublic { get; } + bool IsSealed { get; } + bool IsSerializable { get; } + bool IsSpecialName { get; } + bool IsUnicodeClass { get; } + bool IsValueType { get; } + MemberTypes MemberType { get; } + Module Module { get; } + string Name { get; } + string Namespace { get; } + Type ReflectedType { get; } + RuntimeTypeHandle TypeHandle { get; } + ConstructorInfo TypeInitializer { get; } + Type UnderlyingSystemType { get; } + + // Methods + bool Equals(object other); + bool Equals(Type o); + Type[] FindInterfaces(TypeFilter filter, object filterCriteria); + MemberInfo[] FindMembers(MemberTypes memberType, BindingFlags bindingAttr, MemberFilter filter, object filterCriteria); + int GetArrayRank(); + ConstructorInfo GetConstructor(Type[] types); + ConstructorInfo GetConstructor(BindingFlags bindingAttr, Binder binder, Type[] types, ParameterModifier[] modifiers); + ConstructorInfo GetConstructor(BindingFlags bindingAttr, Binder binder, CallingConventions callConvention, Type[] types, ParameterModifier[] modifiers); + ConstructorInfo[] GetConstructors(); + ConstructorInfo[] GetConstructors(BindingFlags bindingAttr); + object[] GetCustomAttributes(bool inherit); + object[] GetCustomAttributes(Type attributeType, bool inherit); + MemberInfo[] GetDefaultMembers(); + Type GetElementType(); + EventInfo GetEvent(string name); + EventInfo GetEvent(string name, BindingFlags bindingAttr); + EventInfo[] GetEvents(); + EventInfo[] GetEvents(BindingFlags bindingAttr); + FieldInfo GetField(string name); + FieldInfo GetField(string name, BindingFlags bindingAttr); + FieldInfo[] GetFields(); + FieldInfo[] GetFields(BindingFlags bindingAttr); + int GetHashCode(); + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); + Type GetInterface(string name); + Type GetInterface(string name, bool ignoreCase); + InterfaceMapping GetInterfaceMap(Type interfaceType); + Type[] GetInterfaces(); + MemberInfo[] GetMember(string name); + MemberInfo[] GetMember(string name, MemberTypes type, BindingFlags bindingAttr); + MemberInfo[] GetMember(string name, BindingFlags bindingAttr); + MemberInfo[] GetMembers(); + MemberInfo[] GetMembers(BindingFlags bindingAttr); + MethodInfo GetMethod(string name); + MethodInfo GetMethod(string name, BindingFlags bindingAttr); + MethodInfo GetMethod(string name, Type[] types); + MethodInfo GetMethod(string name, Type[] types, ParameterModifier[] modifiers); + MethodInfo GetMethod(string name, BindingFlags bindingAttr, Binder binder, Type[] types, ParameterModifier[] modifiers); + MethodInfo GetMethod(string name, BindingFlags bindingAttr, Binder binder, CallingConventions callConvention, Type[] types, ParameterModifier[] modifiers); + MethodInfo[] GetMethods(); + MethodInfo[] GetMethods(BindingFlags bindingAttr); + Type GetNestedType(string name); + Type GetNestedType(string name, BindingFlags bindingAttr); + Type[] GetNestedTypes(); + Type[] GetNestedTypes(BindingFlags bindingAttr); + PropertyInfo[] GetProperties(); + PropertyInfo[] GetProperties(BindingFlags bindingAttr); + PropertyInfo GetProperty(string name); + PropertyInfo GetProperty(string name, BindingFlags bindingAttr); + PropertyInfo GetProperty(string name, Type returnType); + PropertyInfo GetProperty(string name, Type[] types); + PropertyInfo GetProperty(string name, Type returnType, Type[] types); + PropertyInfo GetProperty(string name, Type returnType, Type[] types, ParameterModifier[] modifiers); + PropertyInfo GetProperty(string name, BindingFlags bindingAttr, Binder binder, Type returnType, Type[] types, ParameterModifier[] modifiers); + Type GetType(); + object InvokeMember(string name, BindingFlags invokeAttr, Binder binder, object target, object[] args); + object InvokeMember(string name, BindingFlags invokeAttr, Binder binder, object target, object[] args, CultureInfo culture); + object InvokeMember(string name, BindingFlags invokeAttr, Binder binder, object target, object[] args, ParameterModifier[] modifiers, CultureInfo culture, string[] namedParameters); + bool IsAssignableFrom(Type c); + bool IsDefined(Type attributeType, bool inherit); + bool IsInstanceOfType(object o); + bool IsSubclassOf(Type c); + string ToString(); +} + +// Namespace: System +[Serializable] +public class Exception : ISerializable, _Exception // TypeDefIndex: 57 +{ + // Fields + private IntPtr[] trace_ips; // 0x08 + private Exception inner_exception; // 0x0C + internal string message; // 0x10 + private string help_link; // 0x14 + private string class_name; // 0x18 + private string stack_trace; // 0x1C + private string _remoteStackTraceString; // 0x20 + private int remote_stack_index; // 0x24 + internal int hresult; // 0x28 + private string source; // 0x2C + private IDictionary _data; // 0x30 + + // Properties + public Exception InnerException { get; } // 0x100C5B30 + public virtual string HelpLink { get; set; } // 0x100EF0C0 0x10127B00 + protected int HResult { get; set; } // 0x100EB040 0x100EB250 + private string ClassName { get; } // 0x101C5200 + public virtual string Message { get; } // 0x101C5290 + public virtual string Source { get; set; } // 0x101C5340 0x100EB260 + public virtual string StackTrace { get; } // 0x101C5450 + public MethodBase TargetSite { get; } // 0x101C5720 + public virtual IDictionary Data { get; } // 0x101C5240 + + // Methods + public void .ctor(); // 0x101C51B0 + public void .ctor(string message); // 0x101C51D0 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x101C4F40 + public void .ctor(string message, Exception innerException); // 0x101C4F10 + internal void SetMessage(string s); // 0x100C5B40 + internal void SetStackTrace(string s); // 0x10113F50 + public virtual Exception GetBaseException(); // 0x101C48C0 + public virtual void GetObjectData(SerializationInfo info, StreamingContext context); // 0x101C4BC0 + public override string ToString(); // 0x101C4D70 + internal Exception FixRemotingException(); // 0x101C47F0 + internal void GetFullNameForStackTrace(StringBuilder sb, MethodBase mi); // 0x101C48F0 + public Type GetType(); // 0x1015CD60 +} + +// Namespace: System.Runtime.InteropServices +public interface _Exception // TypeDefIndex: 58 +{ + // Properties + string HelpLink { get; set; } + Exception InnerException { get; } + string Message { get; } + string Source { get; set; } + string StackTrace { get; } + MethodBase TargetSite { get; } + + // Methods + bool Equals(object obj); + Exception GetBaseException(); + int GetHashCode(); + void GetObjectData(SerializationInfo info, StreamingContext context); + Type GetType(); + string ToString(); +} + +// Namespace: System +[Serializable] +public struct RuntimeFieldHandle : ISerializable // TypeDefIndex: 59 +{ + // Fields + private IntPtr value; // 0x08 + + // Properties + public IntPtr Value { get; } // 0x10003A80 + + // Methods + internal void .ctor(IntPtr v); // 0x10005950 + private void .ctor(SerializationInfo info, StreamingContext context); // 0x10006390 + public void GetObjectData(SerializationInfo info, StreamingContext context); // 0x10006280 + public override bool Equals(object obj); // 0x100061B0 + public bool Equals(RuntimeFieldHandle handle); // 0x10006190 + public override int GetHashCode(); // 0x10006260 + public static bool op_Equality(RuntimeFieldHandle left, RuntimeFieldHandle right); // 0x10123830 + public static bool op_Inequality(RuntimeFieldHandle left, RuntimeFieldHandle right); // 0x10123840 +} + +// Namespace: System +[Serializable] +public struct RuntimeTypeHandle : ISerializable // TypeDefIndex: 60 +{ + // Fields + private IntPtr value; // 0x08 + + // Properties + public IntPtr Value { get; } // 0x10003A80 + + // Methods + internal void .ctor(IntPtr val); // 0x10005950 + private void .ctor(SerializationInfo info, StreamingContext context); // 0x10006AB0 + public void GetObjectData(SerializationInfo info, StreamingContext context); // 0x10006990 + public override bool Equals(object obj); // 0x10006810 + public bool Equals(RuntimeTypeHandle handle); // 0x10006190 + public override int GetHashCode(); // 0x10006260 + public ModuleHandle GetModuleHandle(); // 0x100068C0 + public static bool op_Equality(RuntimeTypeHandle left, object right); // 0x10123970 + public static bool op_Inequality(RuntimeTypeHandle left, object right); // 0x101239E0 + public static bool op_Equality(object left, RuntimeTypeHandle right); // 0x10123900 + public static bool op_Inequality(object left, RuntimeTypeHandle right); // 0x10123A60 +} + +// Namespace: System +public sealed class ParamArrayAttribute : Attribute // TypeDefIndex: 61 +{ + // Methods + public void .ctor(); // 0x100C5970 +} + +// Namespace: System.Runtime.InteropServices +public sealed class OutAttribute : Attribute // TypeDefIndex: 62 +{ + // Methods + public void .ctor(); // 0x100C5970 +} + +// Namespace: System +[Serializable] +public sealed class ObsoleteAttribute : Attribute // TypeDefIndex: 63 +{ + // Fields + private string _message; // 0x08 + private bool _error; // 0x0C + + // Properties + public string Message { get; } // 0x100BF0C0 + public bool IsError { get; } // 0x100F8910 + + // Methods + public void .ctor(); // 0x100C5970 + public void .ctor(string message); // 0x100E5940 + public void .ctor(string message, bool error); // 0x100F88E0 +} + +// Namespace: System.Runtime.InteropServices +public sealed class DllImportAttribute : Attribute // TypeDefIndex: 64 +{ + // Fields + public CallingConvention CallingConvention; // 0x08 + public CharSet CharSet; // 0x0C + private string Dll; // 0x10 + public string EntryPoint; // 0x14 + public bool ExactSpelling; // 0x18 + public bool PreserveSig; // 0x00 + public bool SetLastError; // 0x00 + public bool BestFitMapping; // 0x00 + public bool ThrowOnUnmappableChar; // 0x00 + + // Properties + public string Value { get; } // 0x100BFC20 + + // Methods + public void .ctor(string dllName); // 0x101A2F30 +} + +// Namespace: System.Runtime.CompilerServices +[Serializable] +public sealed class MethodImplAttribute : Attribute // TypeDefIndex: 65 +{ + // Fields + private MethodImplOptions _val; // 0x08 + public MethodCodeType MethodCodeType; // 0x0C + + // Properties + public MethodImplOptions Value { get; } // 0x100BF0C0 + + // Methods + public void .ctor(); // 0x100C5970 + public void .ctor(short value); // 0x101A3760 + public void .ctor(MethodImplOptions methodImplOptions); // 0x100E5940 +} + +// Namespace: System.Runtime.InteropServices +public sealed class MarshalAsAttribute : Attribute // TypeDefIndex: 66 +{ + // Fields + private UnmanagedType utype; // 0x08 + public UnmanagedType ArraySubType; // 0x0C + public string MarshalCookie; // 0x10 + public string MarshalType; // 0x14 + public Type MarshalTypeRef; // 0x18 + public VarEnum SafeArraySubType; // 0x1C + public int SizeConst; // 0x20 + public short SizeParamIndex; // 0x24 + public Type SafeArrayUserDefinedSubType; // 0x28 + public int IidParameterIndex; // 0x2C + + // Properties + public UnmanagedType Value { get; } // 0x100BF0C0 + + // Methods + public void .ctor(short unmanagedType); // 0x101A3760 + public void .ctor(UnmanagedType unmanagedType); // 0x100E5940 +} + +// Namespace: System.Runtime.InteropServices +public sealed class InAttribute : Attribute // TypeDefIndex: 67 +{ + // Methods + public void .ctor(); // 0x100C5970 +} + +// Namespace: System.Runtime.CompilerServices +[Serializable] +public sealed class IndexerNameAttribute : Attribute // TypeDefIndex: 68 +{ + // Methods + public void .ctor(string indexerName); // 0x10207B10 +} + +// Namespace: System.Diagnostics +[Serializable] +public sealed class ConditionalAttribute : Attribute // TypeDefIndex: 69 +{ + // Fields + private string myCondition; // 0x08 + + // Properties + public string ConditionString { get; } // 0x100BF0C0 + + // Methods + public void .ctor(string conditionString); // 0x100E5940 +} + +// Namespace: System.Security.Permissions +[Serializable] +public abstract class SecurityAttribute : Attribute // TypeDefIndex: 70 +{ + // Fields + private SecurityAction m_Action; // 0x08 + private bool m_Unrestricted; // 0x0C + + // Properties + public bool Unrestricted { get; set; } // 0x100F8910 0x1016CBD0 + public SecurityAction Action { get; set; } // 0x100BF0C0 0x100EB270 + + // Methods + protected void .ctor(SecurityAction action); // 0x100E5940 + public abstract IPermission CreatePermission(); +} + +// Namespace: System.Runtime.CompilerServices +[Serializable] +public sealed class RequiredAttributeAttribute : Attribute // TypeDefIndex: 71 +{ + // Properties + public Type RequiredContract { get; } // 0x10209380 + + // Methods + public void .ctor(Type requiredContract); // 0x10207B10 +} + +// Namespace: System.Runtime.InteropServices +public sealed class GuidAttribute : Attribute // TypeDefIndex: 72 +{ + // Fields + private string guidValue; // 0x08 + + // Properties + public string Value { get; } // 0x100BF0C0 + + // Methods + public void .ctor(string guid); // 0x100E5940 +} + +// Namespace: System.Reflection +public sealed class AssemblyCultureAttribute : Attribute // TypeDefIndex: 73 +{ + // Fields + private string name; // 0x08 + + // Properties + public string Culture { get; } // 0x100BF0C0 + + // Methods + public void .ctor(string culture); // 0x100E5940 +} + +// Namespace: System.Reflection +public sealed class AssemblyVersionAttribute : Attribute // TypeDefIndex: 74 +{ + // Fields + private string name; // 0x08 + + // Properties + public string Version { get; } // 0x100BF0C0 + + // Methods + public void .ctor(string version); // 0x100E5940 +} + +// Namespace: System.Runtime.InteropServices +public sealed class ComImportAttribute : Attribute // TypeDefIndex: 75 +{ + // Methods + public void .ctor(); // 0x100C5970 +} + +// Namespace: System.Runtime.InteropServices +public sealed class CoClassAttribute : Attribute // TypeDefIndex: 76 +{ + // Fields + private Type klass; // 0x08 + + // Properties + public Type CoClass { get; } // 0x100BF0C0 + + // Methods + public void .ctor(Type coClass); // 0x100E5940 +} + +// Namespace: System.Runtime.InteropServices +public sealed class OptionalAttribute : Attribute // TypeDefIndex: 77 +{ + // Methods + public void .ctor(); // 0x100C5970 +} + +// Namespace: System.Runtime.InteropServices +public sealed class DefaultCharSetAttribute : Attribute // TypeDefIndex: 78 +{ + // Fields + private CharSet _set; // 0x08 + + // Properties + public CharSet CharSet { get; } // 0x100BF0C0 + + // Methods + public void .ctor(CharSet charSet); // 0x100E5940 +} + +// Namespace: System.Runtime.CompilerServices +public sealed class TypeForwardedToAttribute : Attribute // TypeDefIndex: 79 +{ + // Fields + private Type destination; // 0x08 + + // Properties + public Type Destination { get; } // 0x100BF0C0 + + // Methods + public void .ctor(Type destination); // 0x100E5940 +} + +// Namespace: System.Runtime.CompilerServices +public sealed class FixedBufferAttribute : Attribute // TypeDefIndex: 80 +{ + // Fields + private Type elementType; // 0x08 + private int length; // 0x0C + + // Properties + public Type ElementType { get; } // 0x100BF0C0 + public int Length { get; } // 0x100C5B30 + + // Methods + public void .ctor(Type elementType, int length); // 0x101237E0 +} + +// Namespace: System.Runtime.CompilerServices +[Serializable] +public sealed class CompilerGeneratedAttribute : Attribute // TypeDefIndex: 81 +{ + // Methods + public void .ctor(); // 0x100C5970 +} + +// Namespace: System.Runtime.CompilerServices +public sealed class InternalsVisibleToAttribute : Attribute // TypeDefIndex: 82 +{ + // Fields + private string assemblyName; // 0x08 + private bool all_visible; // 0x0C + + // Properties + public string AssemblyName { get; } // 0x100BF0C0 + public bool AllInternalsVisible { get; set; } // 0x100F8910 0x1016CBD0 + + // Methods + public void .ctor(string assemblyName); // 0x10207B30 +} + +// Namespace: System.Runtime.CompilerServices +[Serializable] +public sealed class RuntimeCompatibilityAttribute : Attribute // TypeDefIndex: 83 +{ + // Fields + private bool wrap_non_exception_throws; // 0x08 + + // Properties + public bool WrapNonExceptionThrows { get; set; } // 0x100EA020 0x10155000 + + // Methods + public void .ctor(); // 0x100C5970 +} + +// Namespace: System.Diagnostics +[Serializable] +public sealed class DebuggerHiddenAttribute : Attribute // TypeDefIndex: 84 +{ + // Methods + public void .ctor(); // 0x100C5970 +} + +// Namespace: System.Runtime.CompilerServices +[Serializable] +public sealed class UnsafeValueTypeAttribute : Attribute // TypeDefIndex: 85 +{ + // Methods + public void .ctor(); // 0x100C5970 +} + +// Namespace: System.Reflection +[Serializable] +public sealed class DefaultMemberAttribute : Attribute // TypeDefIndex: 86 +{ + // Fields + private string member_name; // 0x08 + + // Properties + public string MemberName { get; } // 0x100BF0C0 + + // Methods + public void .ctor(string memberName); // 0x100E5940 +} + +// Namespace: System.Runtime.CompilerServices +[Serializable] +public sealed class DecimalConstantAttribute : Attribute // TypeDefIndex: 87 +{ + // Fields + private byte scale; // 0x08 + private bool sign; // 0x09 + private int hi; // 0x0C + private int mid; // 0x10 + private int low; // 0x14 + + // Properties + public Decimal Value { get; } // 0x10203460 + + // Methods + public void .ctor(byte scale, byte sign, uint hi, uint mid, uint low); // 0x102033E0 + public void .ctor(byte scale, byte sign, int hi, int mid, int low); // 0x10203360 +} + +// Namespace: System.Runtime.InteropServices +public sealed class StructLayoutAttribute : Attribute // TypeDefIndex: 88 +{ + // Fields + public CharSet CharSet; // 0x08 + public int Pack; // 0x0C + public int Size; // 0x10 + private LayoutKind lkind; // 0x14 + + // Properties + public LayoutKind Value { get; } // 0x100EF0C0 + + // Methods + public void .ctor(short layoutKind); // 0x101AA4D0 + public void .ctor(LayoutKind layoutKind); // 0x101AA4A0 +} + +// Namespace: System.Runtime.InteropServices +public sealed class FieldOffsetAttribute : Attribute // TypeDefIndex: 89 +{ + // Fields + private int val; // 0x08 + + // Properties + public int Value { get; } // 0x100BF0C0 + + // Methods + public void .ctor(int offset); // 0x100E5940 +} + +// Namespace: System +public struct RuntimeArgumentHandle // TypeDefIndex: 90 +{ + // Fields + internal IntPtr args; // 0x08 + +} + +// Namespace: System +[Serializable] +public delegate void AsyncCallback(IAsyncResult ar); // TypeDefIndex: 91; 0x10310A30 + +// Namespace: System +public interface IAsyncResult // TypeDefIndex: 92 +{ + // Properties + object AsyncState { get; } + WaitHandle AsyncWaitHandle { get; } + bool CompletedSynchronously { get; } + bool IsCompleted { get; } + +} + +// Namespace: System +public struct TypedReference // TypeDefIndex: 93 +{ + // Fields + private RuntimeTypeHandle type; // 0x08 + private IntPtr value; // 0x0C + private IntPtr klass; // 0x10 + + // Methods + public override bool Equals(object o); // 0x10019B10 + public override int GetHashCode(); // 0x10019B30 + public static Type GetTargetType(TypedReference value); // 0x10283430 + public static TypedReference MakeTypedReference(object target, FieldInfo[] flds); // 0x10283480 + public static void SetTypedReference(TypedReference target, object value); // 0x10283560 + public static RuntimeTypeHandle TargetTypeToken(TypedReference value); // 0x100F7810 + public static object ToObject(TypedReference value); // 0x102835E0 +} + +// Namespace: System +public struct ArgIterator // TypeDefIndex: 94 +{ + // Fields + private IntPtr sig; // 0x08 + private IntPtr args; // 0x0C + private int next_arg; // 0x10 + private int num_args; // 0x14 + + // Methods + public void .ctor(RuntimeArgumentHandle arglist); // 0x10008F40 + public void .ctor(RuntimeArgumentHandle arglist, void * ptr); // 0x10008FA0 + private void Setup(IntPtr argsp, IntPtr start); // 0x10008F20 + public void End(); // 0x10008C90 + public override bool Equals(object o); // 0x10008CA0 + public override int GetHashCode(); // 0x10006260 + public TypedReference GetNextArg(); // 0x10008DE0 + private TypedReference IntGetNextArg(); // 0x10008EB0 + public TypedReference GetNextArg(RuntimeTypeHandle rth); // 0x10008D40 + private TypedReference IntGetNextArg(IntPtr rth); // 0x10008EE0 + public RuntimeTypeHandle GetNextArgType(); // 0x10008CC0 + private IntPtr IntGetNextArgType(); // 0x10008E90 + public int GetRemainingCount(); // 0x10008E80 +} + +// Namespace: System +[Serializable] +public abstract class MarshalByRefObject // TypeDefIndex: 95 +{ + // Fields + [NonSerialized] private ServerIdentity _identity; // 0x08 + + // Properties + internal ServerIdentity ObjectIdentity { get; set; } // 0x100BF0C0 0x100EB270 + + // Methods + protected void .ctor(); // 0x100BF000 + internal Identity GetObjectIdentity(MarshalByRefObject obj, out bool IsClient); // 0x100FD7F0 + public virtual ObjRef CreateObjRef(Type requestedType); // 0x100FD750 + public object GetLifetimeService(); // 0x100FD7D0 + public virtual object InitializeLifetimeService(); // 0x100FD8A0 + protected MarshalByRefObject MemberwiseClone(bool cloneIdentity); // 0x100FD8F0 +} + +// Namespace: System +[Serializable] +public struct Nullable`1 // TypeDefIndex: 96 +{ + // Fields + internal T value; // 0x00 + internal bool has_value; // 0x00 + + // Properties + public bool HasValue { get; } + public T Value { get; } + + // Methods + public void .ctor(T value); + public override bool Equals(object other); + private bool Equals(Nullable`1 other); + public override int GetHashCode(); + public T GetValueOrDefault(); + public T GetValueOrDefault(T defaultValue); + public override string ToString(); + private static object Box(Nullable`1 o); + private static Nullable`1 Unbox(object o); + public static Nullable`1 op_Implicit(T value); + public static T op_Explicit(Nullable`1 value); +} + +// Namespace: System.Runtime.CompilerServices +public static class RuntimeHelpers // TypeDefIndex: 97 +{ + // Properties + public static int OffsetToStringData { get; } // 0x10211340 + + // Methods + private static void InitializeArray(Array array, IntPtr fldHandle); // 0x10211180 + public static void InitializeArray(Array array, RuntimeFieldHandle fldHandle); // 0x10211100 + public static int GetHashCode(object o); // 0x102110E0 + public static bool Equals(object o1, object o2); // 0x10211070 + public static object GetObjectValue(object obj); // 0x102110F0 + private static void RunClassConstructor(IntPtr type); // 0x10211280 + public static void RunClassConstructor(RuntimeTypeHandle type); // 0x10211200 + public static void ExecuteCodeWithGuaranteedCleanup(TryCode code, CleanupCode backoutCode, object userData); // 0x100C5530 + public static void PrepareConstrainedRegions(); // 0x100C5530 + public static void PrepareConstrainedRegionsNoOP(); // 0x100C5530 + public static void ProbeForSufficientStack(); // 0x100C5530 + public static void PrepareDelegate(Delegate d); // 0x102111A0 + public static void PrepareMethod(RuntimeMethodHandle method); // 0x100C5530 + public static void PrepareMethod(RuntimeMethodHandle method, RuntimeTypeHandle[] instantiation); // 0x100C5530 + public static void RunModuleConstructor(ModuleHandle module); // 0x102112A0 + public static void RunModuleConstructor(IntPtr module); // 0x10211290 +} + +// Namespace: +public delegate void TryCode(object userData); // TypeDefIndex: 98; 0x1015A4E0 + +// Namespace: +public delegate void CleanupCode(object userData, bool exceptionThrown); // TypeDefIndex: 99; 0x10202CA0 + +// Namespace: +internal static class Consts // TypeDefIndex: 100 +{ + // Fields + public const string MonoVersion = "2.6.5.0"; // 0x00 + public const string MonoCompany = "MONO development team"; // 0x00 + public const string MonoProduct = "MONO Common language infrastructure"; // 0x00 + public const string MonoCopyright = "(c) various MONO Authors"; // 0x00 + public const string FxVersion = "2.0.0.0"; // 0x00 + public const string VsVersion = "8.0.0.0"; // 0x00 + public const string FxFileVersion = "2.0.50727.1433"; // 0x00 + public const string VsFileVersion = "8.0.50727.1433"; // 0x00 + public const string AssemblyI18N = "I18N, Version=2.0.0.0, Culture=neutral, PublicKeyToken=0738eb9f132ed756"; // 0x00 + public const string AssemblyMicrosoft_VisualStudio = "Microsoft.VisualStudio, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + public const string AssemblyMicrosoft_VisualStudio_Web = "Microsoft.VisualStudio.Web, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + public const string AssemblyMicrosoft_VSDesigner = "Microsoft.VSDesigner, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + public const string AssemblyMono_Http = "Mono.Http, Version=2.0.0.0, Culture=neutral, PublicKeyToken=0738eb9f132ed756"; // 0x00 + public const string AssemblyMono_Posix = "Mono.Posix, Version=2.0.0.0, Culture=neutral, PublicKeyToken=0738eb9f132ed756"; // 0x00 + public const string AssemblyMono_Security = "Mono.Security, Version=2.0.0.0, Culture=neutral, PublicKeyToken=0738eb9f132ed756"; // 0x00 + public const string AssemblyMono_Messaging_RabbitMQ = "Mono.Messaging.RabbitMQ, Version=2.0.0.0, Culture=neutral, PublicKeyToken=0738eb9f132ed756"; // 0x00 + public const string AssemblyCorlib = "mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"; // 0x00 + public const string AssemblySystem = "System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"; // 0x00 + public const string AssemblySystem_Data = "System.Data, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"; // 0x00 + public const string AssemblySystem_Design = "System.Design, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + public const string AssemblySystem_DirectoryServices = "System.DirectoryServices, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + public const string AssemblySystem_Drawing = "System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + public const string AssemblySystem_Drawing_Design = "System.Drawing.Design, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + public const string AssemblySystem_Messaging = "System.Messaging, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + public const string AssemblySystem_Security = "System.Security, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + public const string AssemblySystem_ServiceProcess = "System.ServiceProcess, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + public const string AssemblySystem_Web = "System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + public const string AssemblySystem_Windows_Forms = "System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"; // 0x00 + public const string AssemblySystem_Core = "System.Core, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"; // 0x00 + +} + +// Namespace: +internal sealed class Locale // TypeDefIndex: 101 +{ + // Methods + private void .ctor(); // 0x100BF000 + public static string GetText(string msg); // 0x100F7810 + public static string GetText(string fmt, object[] args); // 0x10261460 +} + +// Namespace: System +internal class MonoTODOAttribute : Attribute // TypeDefIndex: 102 +{ + // Fields + private string comment; // 0x08 + + // Properties + public string Comment { get; } // 0x100BF0C0 + + // Methods + public void .ctor(); // 0x100C5970 + public void .ctor(string comment); // 0x100E5940 +} + +// Namespace: System +internal class MonoDocumentationNoteAttribute : MonoTODOAttribute // TypeDefIndex: 103 +{ + // Methods + public void .ctor(string comment); // 0x100E5940 +} + +// Namespace: System +internal class MonoExtensionAttribute : MonoTODOAttribute // TypeDefIndex: 104 +{ + // Methods + public void .ctor(string comment); // 0x100E5940 +} + +// Namespace: System +internal class MonoInternalNoteAttribute : MonoTODOAttribute // TypeDefIndex: 105 +{ + // Methods + public void .ctor(string comment); // 0x100E5940 +} + +// Namespace: System +internal class MonoLimitationAttribute : MonoTODOAttribute // TypeDefIndex: 106 +{ + // Methods + public void .ctor(string comment); // 0x100E5940 +} + +// Namespace: System +internal class MonoNotSupportedAttribute : MonoTODOAttribute // TypeDefIndex: 107 +{ + // Methods + public void .ctor(string comment); // 0x100E5940 +} + +// Namespace: Microsoft.Win32.SafeHandles +public abstract class CriticalHandleMinusOneIsInvalid : CriticalHandle, IDisposable // TypeDefIndex: 108 +{ + // Properties + public override bool IsInvalid { get; } // 0x1025BBF0 + + // Methods + protected void .ctor(); // 0x1025BBD0 +} + +// Namespace: Microsoft.Win32.SafeHandles +public abstract class CriticalHandleZeroOrMinusOneIsInvalid : CriticalHandle, IDisposable // TypeDefIndex: 109 +{ + // Properties + public override bool IsInvalid { get; } // 0x1025BC20 + + // Methods + protected void .ctor(); // 0x1025BBD0 +} + +// Namespace: Microsoft.Win32.SafeHandles +public sealed class SafeFileHandle : SafeHandleZeroOrMinusOneIsInvalid // TypeDefIndex: 110 +{ + // Methods + public void .ctor(IntPtr preexistingHandle, bool ownsHandle); // 0x102689D0 + internal void .ctor(); // 0x10268A00 + protected override bool ReleaseHandle(); // 0x10268960 +} + +// Namespace: Microsoft.Win32.SafeHandles +public abstract class SafeHandleMinusOneIsInvalid : SafeHandle, IDisposable // TypeDefIndex: 111 +{ + // Properties + public override bool IsInvalid { get; } // 0x1025BBF0 + + // Methods + protected void .ctor(bool ownsHandle); // 0x10268A20 +} + +// Namespace: Microsoft.Win32.SafeHandles +public abstract class SafeHandleZeroOrMinusOneIsInvalid : SafeHandle, IDisposable // TypeDefIndex: 112 +{ + // Properties + public override bool IsInvalid { get; } // 0x10268A40 + + // Methods + protected void .ctor(bool ownsHandle); // 0x10268A20 +} + +// Namespace: Microsoft.Win32.SafeHandles +public sealed class SafeWaitHandle : SafeHandleZeroOrMinusOneIsInvalid // TypeDefIndex: 113 +{ + // Methods + public void .ctor(IntPtr existingHandle, bool ownsHandle); // 0x102689D0 + protected override bool ReleaseHandle(); // 0x10268A90 +} + +// Namespace: Microsoft.Win32 +internal interface IRegistryApi // TypeDefIndex: 114 +{ + // Methods + RegistryKey CreateSubKey(RegistryKey rkey, string keyname); + RegistryKey OpenRemoteBaseKey(RegistryHive hKey, string machineName); + RegistryKey OpenSubKey(RegistryKey rkey, string keyname, bool writtable); + void Flush(RegistryKey rkey); + void Close(RegistryKey rkey); + object GetValue(RegistryKey rkey, string name, object default_value, RegistryValueOptions options); + void SetValue(RegistryKey rkey, string name, object value); + int SubKeyCount(RegistryKey rkey); + int ValueCount(RegistryKey rkey); + void DeleteValue(RegistryKey rkey, string value, bool throw_if_missing); + void DeleteKey(RegistryKey rkey, string keyName, bool throw_if_missing); + string[] GetSubKeyNames(RegistryKey rkey); + string[] GetValueNames(RegistryKey rkey); + string ToString(RegistryKey rkey); + void SetValue(RegistryKey rkey, string name, object value, RegistryValueKind valueKind); +} + +// Namespace: Microsoft.Win32 +public static class Registry // TypeDefIndex: 115 +{ + // Fields + public static readonly RegistryKey ClassesRoot; // 0x00 + public static readonly RegistryKey CurrentConfig; // 0x04 + public static readonly RegistryKey CurrentUser; // 0x08 + public static readonly RegistryKey DynData; // 0x0C + public static readonly RegistryKey LocalMachine; // 0x10 + public static readonly RegistryKey PerformanceData; // 0x14 + public static readonly RegistryKey Users; // 0x18 + private static Dictionary`2 <>f__switch$map0; // 0x1C + + // Methods + private static void .cctor(); // 0x10268760 + private static RegistryKey ToKey(string keyName, bool setting); // 0x10268330 + public static void SetValue(string keyName, string valueName, object value); // 0x10268260 + public static void SetValue(string keyName, string valueName, object value, RegistryValueKind valueKind); // 0x10268190 + public static object GetValue(string keyName, string valueName, object defaultValue); // 0x10268120 +} + +// Namespace: Microsoft.Win32 +[Serializable] +public enum RegistryHive // TypeDefIndex: 116 +{ + ClassesRoot = -2147483648, + CurrentUser = -2147483647, + LocalMachine = -2147483646, + Users = -2147483645, + PerformanceData = -2147483644, + CurrentConfig = -2147483643, + DynData = -2147483642 +} + +// Namespace: Microsoft.Win32 +public sealed class RegistryKey : MarshalByRefObject, IDisposable // TypeDefIndex: 117 +{ + // Fields + private object handle; // 0x0C + private object hive; // 0x10 + private readonly string qname; // 0x14 + private readonly bool isRemoteRoot; // 0x18 + private readonly bool isWritable; // 0x19 + private static readonly IRegistryApi RegistryApi; // 0x00 + + // Properties + public string Name { get; } // 0x100EF0C0 + public int SubKeyCount { get; } // 0x10267FA0 + public int ValueCount { get; } // 0x10268060 + internal bool IsRoot { get; } // 0x101253B0 + private bool IsWritable { get; } // 0x10267F90 + internal RegistryHive Hive { get; } // 0x10267F10 + internal object Handle { get; } // 0x100C5B30 + + // Methods + internal void .ctor(RegistryHive hiveId); // 0x10267EA0 + internal void .ctor(RegistryHive hiveId, IntPtr keyHandle, bool remoteRoot); // 0x10267CA0 + internal void .ctor(object data, string keyName, bool writable); // 0x10267EE0 + private static void .cctor(); // 0x10267BC0 + private void System.IDisposable.Dispose(); // 0x10267A70 + protected override void Finalize(); // 0x10266D20 + public void Flush(); // 0x10266DE0 + public void Close(); // 0x10266180 + public void SetValue(string name, object value); // 0x10267710 + public void SetValue(string name, object value, RegistryValueKind valueKind); // 0x102678C0 + public RegistryKey OpenSubKey(string name); // 0x102674E0 + public RegistryKey OpenSubKey(string name, bool writable); // 0x10267500 + public object GetValue(string name); // 0x102672B0 + public object GetValue(string name, object defaultValue); // 0x102672D0 + public object GetValue(string name, object defaultValue, RegistryValueOptions options); // 0x102671E0 + public RegistryValueKind GetValueKind(string name); // 0x102670D0 + public RegistryKey CreateSubKey(string subkey); // 0x10266300 + public RegistryKey CreateSubKey(string subkey, RegistryKeyPermissionCheck permissionCheck); // 0x102664E0 + public RegistryKey CreateSubKey(string subkey, RegistryKeyPermissionCheck permissionCheck, RegistrySecurity registrySecurity); // 0x102662B0 + public void DeleteSubKey(string subkey); // 0x10266930 + public void DeleteSubKey(string subkey, bool throwOnMissingSubKey); // 0x10266950 + public void DeleteSubKeyTree(string subkey); // 0x102667F0 + public void DeleteValue(string name); // 0x10266D00 + public void DeleteValue(string name, bool throwOnMissingValue); // 0x10266BD0 + public RegistrySecurity GetAccessControl(); // 0x10266EA0 + public RegistrySecurity GetAccessControl(AccessControlSections includeSections); // 0x10266E50 + public string[] GetSubKeyNames(); // 0x10267010 + public string[] GetValueNames(); // 0x10267120 + public static RegistryKey OpenRemoteBaseKey(RegistryHive hKey, string machineName); // 0x102673A0 + public RegistryKey OpenSubKey(string name, RegistryKeyPermissionCheck permissionCheck); // 0x10267670 + public RegistryKey OpenSubKey(string name, RegistryKeyPermissionCheck permissionCheck, RegistryRights rights); // 0x10267490 + public void SetAccessControl(RegistrySecurity registrySecurity); // 0x102676C0 + public override string ToString(); // 0x10267A90 + private void AssertKeyStillValid(); // 0x10266120 + private void AssertKeyNameNotNull(string subKeyName); // 0x102660C0 + private void AssertKeyNameLength(string name); // 0x10266050 + private void DeleteChildKeysAndValues(); // 0x102665E0 + internal static string DecodeString(byte[] data); // 0x10266530 + internal static IOException CreateMarkedForDeletionException(); // 0x10266260 + private static string GetHiveName(RegistryHive hive); // 0x10266EF0 +} + +// Namespace: Microsoft.Win32 +public enum RegistryKeyPermissionCheck // TypeDefIndex: 118 +{ + Default = 0, + ReadSubTree = 1, + ReadWriteSubTree = 2 +} + +// Namespace: Microsoft.Win32 +public enum RegistryValueKind // TypeDefIndex: 119 +{ + Unknown = 0, + String = 1, + ExpandString = 2, + Binary = 3, + DWord = 4, + MultiString = 7, + QWord = 11 +} + +// Namespace: Microsoft.Win32 +public enum RegistryValueOptions // TypeDefIndex: 120 +{ + None = 0, + DoNotExpandEnvironmentNames = 1 +} + +// Namespace: Microsoft.Win32 +internal class ExpandString // TypeDefIndex: 121 +{ + // Fields + private string value; // 0x08 + + // Methods + public void .ctor(string s); // 0x10113500 + public override string ToString(); // 0x100BF0C0 + public string Expand(); // 0x1025DEC0 +} + +// Namespace: Microsoft.Win32 +internal class KeyHandler // TypeDefIndex: 122 +{ + // Fields + private static Hashtable key_to_handler; // 0x00 + private static Hashtable dir_to_handler; // 0x04 + public string Dir; // 0x08 + private Hashtable values; // 0x0C + private string file; // 0x10 + private bool dirty; // 0x14 + private static Dictionary`2 <>f__switch$map1; // 0x08 + + // Properties + public int ValueCount { get; } // 0x102612C0 + public bool IsMarkedForDeletion { get; } // 0x10261130 + private static string UserStore { get; } // 0x10261260 + private static string MachineStore { get; } // 0x102611B0 + + // Methods + private void .ctor(RegistryKey rkey, string basedir); // 0x10260FF0 + private static void .cctor(); // 0x10260F40 + public void Load(); // 0x1025F5F0 + private void LoadKey(SecurityElement se); // 0x1025F090 + public RegistryKey Ensure(RegistryKey rkey, string extra, bool writable); // 0x1025EA20 + public RegistryKey Probe(RegistryKey rkey, string extra, bool writable); // 0x1025FFD0 + private static string CombineName(RegistryKey rkey, string extra); // 0x1025E070 + public static KeyHandler Lookup(RegistryKey rkey, bool createNonExisting); // 0x1025FA60 + public static void Drop(RegistryKey rkey); // 0x1025E130 + public static void Drop(string dir); // 0x1025E4F0 + public object GetValue(string name, RegistryValueOptions options); // 0x1025EF90 + public void SetValue(string name, object value); // 0x10260DB0 + public string[] GetValueNames(); // 0x1025EEB0 + public void SetValue(string name, object value, RegistryValueKind valueKind); // 0x10260AB0 + private void SetDirty(); // 0x10260950 + public void DirtyTimeout(object state); // 0x1025E110 + public void Flush(); // 0x1025ED90 + public bool ValueExists(string name); // 0x10260EC0 + public void RemoveValue(string name); // 0x10260300 + protected override void Finalize(); // 0x1025ECD0 + private void Save(); // 0x10260350 + private void AssertNotMarkedForDeletion(); // 0x1025E010 +} + +// Namespace: Microsoft.Win32 +internal class UnixRegistryApi : IRegistryApi // TypeDefIndex: 123 +{ + // Methods + public void .ctor(); // 0x100BF000 + private static string ToUnix(string keyname); // 0x102707D0 + private static bool IsWellKnownKey(string parentKeyName, string keyname); // 0x10270100 + public RegistryKey CreateSubKey(RegistryKey rkey, string keyname); // 0x1026FA40 + public RegistryKey OpenRemoteBaseKey(RegistryHive hKey, string machineName); // 0x10270260 + public RegistryKey OpenSubKey(RegistryKey rkey, string keyname, bool writable); // 0x102702B0 + public void Flush(RegistryKey rkey); // 0x1026FC90 + public void Close(RegistryKey rkey); // 0x1026F920 + public object GetValue(RegistryKey rkey, string name, object default_value, RegistryValueOptions options); // 0x1026FF90 + public void SetValue(RegistryKey rkey, string name, object value); // 0x102704F0 + public void SetValue(RegistryKey rkey, string name, object value, RegistryValueKind valueKind); // 0x10270680 + public int SubKeyCount(RegistryKey rkey); // 0x10270710 + public int ValueCount(RegistryKey rkey); // 0x10270820 + public void DeleteValue(RegistryKey rkey, string name, bool throw_if_missing); // 0x1026FBB0 + public void DeleteKey(RegistryKey rkey, string keyname, bool throw_if_missing); // 0x1026FA60 + public string[] GetSubKeyNames(RegistryKey rkey); // 0x1026FCF0 + public string[] GetValueNames(RegistryKey rkey); // 0x1026FE20 + public string ToString(RegistryKey rkey); // 0x102707B0 + private RegistryKey CreateSubKey(RegistryKey rkey, string keyname, bool writable); // 0x1026F970 +} + +// Namespace: Microsoft.Win32 +internal class Win32RegistryApi : IRegistryApi // TypeDefIndex: 124 +{ + // Fields + private const int OpenRegKeyRead = 131097; // 0x00 + private const int OpenRegKeyWrite = 131078; // 0x00 + private const int Int32ByteSize = 4; // 0x00 + private const int BufferMaxLength = 1024; // 0x00 + private readonly int NativeBytesPerCharacter; // 0x08 + + // Methods + public void .ctor(); // 0x10272BB0 + private static extern int RegCreateKey(IntPtr keyBase, string keyName, out IntPtr keyHandle); // 0x10271A80 + private static extern int RegCloseKey(IntPtr keyHandle); // 0x10271970 + private static extern int RegConnectRegistry(string machineName, IntPtr hKey, out IntPtr keyHandle); // 0x102719F0 + private static extern int RegFlushKey(IntPtr keyHandle); // 0x10271DA0 + private static extern int RegOpenKeyEx(IntPtr keyBase, string keyName, IntPtr reserved, int access, out IntPtr keyHandle); // 0x10271E20 + private static extern int RegDeleteKey(IntPtr keyHandle, string valueName); // 0x10271B10 + private static extern int RegDeleteValue(IntPtr keyHandle, string valueName); // 0x10271BA0 + private static extern int RegEnumKey(IntPtr keyBase, int index, StringBuilder nameBuffer, int bufferLength); // 0x10271C30 + private static extern int RegEnumValue(IntPtr keyBase, int index, StringBuilder nameBuffer, int nameLength, IntPtr reserved, RegistryValueKind type, IntPtr data, IntPtr dataLength); // 0x10271CE0 + private static extern int RegSetValueEx(IntPtr keyBase, string valueName, IntPtr reserved, RegistryValueKind type, string data, int rawDataLength); // 0x10272180 + private static extern int RegSetValueEx(IntPtr keyBase, string valueName, IntPtr reserved, RegistryValueKind type, byte[] rawData, int rawDataLength); // 0x10272220 + private static extern int RegSetValueEx(IntPtr keyBase, string valueName, IntPtr reserved, RegistryValueKind type, int data, int rawDataLength); // 0x102720E0 + private static extern int RegQueryValueEx(IntPtr keyBase, string valueName, IntPtr reserved, RegistryValueKind type, IntPtr zero, int dataSize); // 0x10271EB0 + private static extern int RegQueryValueEx(IntPtr keyBase, string valueName, IntPtr reserved, RegistryValueKind type, out byte[] data, int dataSize); // 0x10271FF0 + private static extern int RegQueryValueEx(IntPtr keyBase, string valueName, IntPtr reserved, RegistryValueKind type, int data, int dataSize); // 0x10271F50 + private static IntPtr GetHandle(RegistryKey key); // 0x10271080 + private static bool IsHandleValid(RegistryKey key); // 0x10271700 + public object GetValue(RegistryKey rkey, string name, object defaultValue, RegistryValueOptions options); // 0x102713A0 + public void SetValue(RegistryKey rkey, string name, object value, RegistryValueKind valueKind); // 0x10272640 + public void SetValue(RegistryKey rkey, string name, object value); // 0x102722C0 + private int GetBinaryValue(RegistryKey rkey, string name, RegistryValueKind type, out byte[] data, int size); // 0x10270F50 + public int SubKeyCount(RegistryKey rkey); // 0x10272A00 + public int ValueCount(RegistryKey rkey); // 0x10272AC0 + public RegistryKey OpenRemoteBaseKey(RegistryHive hKey, string machineName); // 0x10271720 + public RegistryKey OpenSubKey(RegistryKey rkey, string keyName, bool writable); // 0x10271820 + public void Flush(RegistryKey rkey); // 0x10270DC0 + public void Close(RegistryKey rkey); // 0x10270900 + public RegistryKey CreateSubKey(RegistryKey rkey, string keyName); // 0x10270A10 + public void DeleteKey(RegistryKey rkey, string keyName, bool shouldThrowWhenKeyMissing); // 0x10270B60 + public void DeleteValue(RegistryKey rkey, string value, bool shouldThrowWhenKeyMissing); // 0x10270C90 + public string[] GetSubKeyNames(RegistryKey rkey); // 0x102710E0 + public string[] GetValueNames(RegistryKey rkey); // 0x10271200 + private void GenerateException(int errorCode); // 0x10270E60 + public string ToString(RegistryKey rkey); // 0x102707B0 + internal static string CombineName(RegistryKey rkey, string localName); // 0x102709A0 +} + +// Namespace: Microsoft.Win32 +internal class Win32ResultCode // TypeDefIndex: 125 +{ + // Fields + public const int Success = 0; // 0x00 + public const int FileNotFound = 2; // 0x00 + public const int AccessDenied = 5; // 0x00 + public const int InvalidParameter = 87; // 0x00 + public const int MoreData = 234; // 0x00 + public const int NetworkPathNotFound = 53; // 0x00 + public const int NoMoreEntries = 259; // 0x00 + public const int MarkedForDeletion = 1018; // 0x00 + + // Methods + public void .ctor(); // 0x100BF000 +} + +// Namespace: Mono.Globalization.Unicode +internal class CodePointIndexer // TypeDefIndex: 126 +{ + // Fields + private readonly TableRange[] ranges; // 0x08 + public readonly int TotalCount; // 0x0C + private int defaultIndex; // 0x10 + private int defaultCP; // 0x14 + + // Methods + public void .ctor(int[] starts, int[] ends, int defaultIndex, int defaultCP); // 0x1025B020 + public static Array CompressArray(Array source, Type type, CodePointIndexer indexer); // 0x1025AE30 + public int ToIndex(int cp); // 0x1025AF80 + public int ToCodePoint(int i); // 0x1025AEE0 +} + +// Namespace: +[Serializable] +internal struct TableRange // TypeDefIndex: 127 +{ + // Fields + public readonly int Start; // 0x08 + public readonly int End; // 0x0C + public readonly int Count; // 0x10 + public readonly int IndexStart; // 0x14 + public readonly int IndexEnd; // 0x18 + + // Methods + public void .ctor(int start, int end, int indexStart); // 0x100191B0 +} + +// Namespace: Mono.Globalization.Unicode +internal class TailoringInfo // TypeDefIndex: 128 +{ + // Fields + public readonly int LCID; // 0x08 + public readonly int TailoringIndex; // 0x0C + public readonly int TailoringCount; // 0x10 + public readonly bool FrenchSort; // 0x14 + + // Methods + public void .ctor(int lcid, int tailoringIndex, int tailoringCount, bool frenchSort); // 0x102AF050 +} + +// Namespace: Mono.Globalization.Unicode +internal class Contraction // TypeDefIndex: 129 +{ + // Fields + public readonly char[] Source; // 0x08 + public readonly string Replacement; // 0x0C + public readonly byte[] SortKey; // 0x10 + + // Methods + public void .ctor(char[] source, string replacement, byte[] sortkey); // 0x10127920 +} + +// Namespace: Mono.Globalization.Unicode +internal class ContractionComparer : IComparer // TypeDefIndex: 130 +{ + // Fields + public static readonly ContractionComparer Instance; // 0x00 + + // Methods + public void .ctor(); // 0x100BF000 + private static void .cctor(); // 0x1025B340 + public int Compare(object o1, object o2); // 0x1025B1E0 +} + +// Namespace: Mono.Globalization.Unicode +internal class Level2Map // TypeDefIndex: 131 +{ + // Fields + public byte Source; // 0x08 + public byte Replace; // 0x09 + + // Methods + public void .ctor(byte source, byte replace); // 0x10261430 +} + +// Namespace: Mono.Globalization.Unicode +internal class Level2MapComparer : IComparer // TypeDefIndex: 132 +{ + // Fields + public static readonly Level2MapComparer Instance; // 0x00 + + // Methods + public void .ctor(); // 0x100BF000 + private static void .cctor(); // 0x102613E0 + public int Compare(object o1, object o2); // 0x10261320 +} + +// Namespace: Mono.Globalization.Unicode +internal class MSCompatUnicodeTable // TypeDefIndex: 133 +{ + // Fields + private const int ResourceVersionSize = 1; // 0x00 + public static int MaxExpansionLength; // 0x00 + private static readonly void * ignorableFlags; // 0x04 + private static readonly void * categories; // 0x08 + private static readonly void * level1; // 0x0C + private static readonly void * level2; // 0x10 + private static readonly void * level3; // 0x14 + private static void * cjkCHScategory; // 0x18 + private static void * cjkCHTcategory; // 0x1C + private static void * cjkJAcategory; // 0x20 + private static void * cjkKOcategory; // 0x24 + private static void * cjkCHSlv1; // 0x28 + private static void * cjkCHTlv1; // 0x2C + private static void * cjkJAlv1; // 0x30 + private static void * cjkKOlv1; // 0x34 + private static void * cjkKOlv2; // 0x38 + private static readonly char[] tailoringArr; // 0x3C + private static readonly TailoringInfo[] tailoringInfos; // 0x40 + private static object forLock; // 0x44 + public static readonly bool isReady; // 0x48 + private static Dictionary`2 <>f__switch$map2; // 0x4C + private static Dictionary`2 <>f__switch$map3; // 0x50 + private static Dictionary`2 <>f__switch$map4; // 0x54 + + // Properties + public static bool IsReady { get; } // 0x10263A10 + + // Methods + public void .ctor(); // 0x100BF000 + private static void .cctor(); // 0x10263670 + public static TailoringInfo GetTailoringInfo(int lcid); // 0x10262950 + public static void BuildTailoringTables(CultureInfo culture, TailoringInfo t, Contraction[] contractions, Level2Map[] diacriticals); // 0x10261A80 + private static void SetCJKReferences(string name, CodePointIndexer cjkIndexer, void * catTable, void * lv1Table, CodePointIndexer lv2Indexer, void * lv2Table); // 0x10263180 + public static byte Category(int cp); // 0x10261FC0 + public static byte Level1(int cp); // 0x10262FD0 + public static byte Level2(int cp); // 0x10263060 + public static byte Level3(int cp); // 0x102630F0 + public static bool IsSortable(string s); // 0x10262F40 + public static bool IsSortable(int cp); // 0x10262E20 + public static bool IsIgnorable(int cp); // 0x10262CB0 + public static bool IsIgnorable(int cp, byte flag); // 0x10262BB0 + public static bool IsIgnorableSymbol(int cp); // 0x10262B60 + public static bool IsIgnorableNonSpacing(int cp); // 0x10262B10 + public static int ToKanaTypeInsensitive(int i); // 0x102634A0 + public static int ToWidthCompat(int i); // 0x102634C0 + public static bool HasSpecialWeight(char c); // 0x10262A30 + public static byte GetJapaneseDashType(char c); // 0x10262890 + public static bool IsHalfWidthKana(char c); // 0x10262AB0 + public static bool IsHiragana(char c); // 0x10262AE0 + public static bool IsJapaneseSmallLetter(char c); // 0x10262D00 + private static IntPtr GetResource(string name); // 0x102628E0 + private static uint UInt32FromBytePtr(void * raw, uint idx); // 0x10263640 + public static void FillCJK(string culture, CodePointIndexer cjkIndexer, void * catTable, void * lv1Table, CodePointIndexer lv2Indexer, void * lv2Table); // 0x10262730 + private static void FillCJKCore(string culture, CodePointIndexer cjkIndexer, void * catTable, void * lv1Table, CodePointIndexer cjkLv2Indexer, void * lv2Table); // 0x10262050 +} + +// Namespace: Mono.Globalization.Unicode +internal class MSCompatUnicodeTableUtil // TypeDefIndex: 134 +{ + // Fields + public const byte ResourceVersion = 3; // 0x00 + public static readonly CodePointIndexer Ignorable; // 0x00 + public static readonly CodePointIndexer Category; // 0x04 + public static readonly CodePointIndexer Level1; // 0x08 + public static readonly CodePointIndexer Level2; // 0x0C + public static readonly CodePointIndexer Level3; // 0x10 + public static readonly CodePointIndexer CjkCHS; // 0x14 + public static readonly CodePointIndexer Cjk; // 0x18 + + // Methods + public void .ctor(); // 0x100BF000 + private static void .cctor(); // 0x102614B0 +} + +// Namespace: Mono.Globalization.Unicode +internal enum NormalizationCheck // TypeDefIndex: 135 +{ + Yes = 0, + No = 1, + Maybe = 2 +} + +// Namespace: Mono.Globalization.Unicode +internal class Normalization // TypeDefIndex: 136 +{ + // Fields + public const int NoNfd = 1; // 0x00 + public const int NoNfkd = 2; // 0x00 + public const int NoNfc = 4; // 0x00 + public const int MaybeNfc = 8; // 0x00 + public const int NoNfkc = 16; // 0x00 + public const int MaybeNfkc = 32; // 0x00 + public const int FullCompositionExclusion = 64; // 0x00 + public const int IsUnsafe = 128; // 0x00 + private const int HangulSBase = 44032; // 0x00 + private const int HangulLBase = 4352; // 0x00 + private const int HangulVBase = 4449; // 0x00 + private const int HangulTBase = 4519; // 0x00 + private const int HangulLCount = 19; // 0x00 + private const int HangulVCount = 21; // 0x00 + private const int HangulTCount = 28; // 0x00 + private const int HangulNCount = 588; // 0x00 + private const int HangulSCount = 11172; // 0x00 + private static void * props; // 0x00 + private static void * mappedChars; // 0x04 + private static void * charMapIndex; // 0x08 + private static void * helperIndex; // 0x0C + private static void * mapIdxToComposite; // 0x10 + private static void * combiningClass; // 0x14 + private static object forLock; // 0x18 + public static readonly bool isReady; // 0x1C + + // Properties + public static bool IsReady { get; } // 0x10265E10 + + // Methods + public void .ctor(); // 0x100BF000 + private static void .cctor(); // 0x10265C30 + private static uint PropValue(int cp); // 0x10265790 + private static int CharMapIdx(int cp); // 0x10264160 + private static int GetNormalizedStringLength(int ch); // 0x10264F10 + private static byte GetCombiningClass(int c); // 0x10264E80 + private static int GetPrimaryCompositeFromMapIndex(int src); // 0x10265290 + private static int GetPrimaryCompositeHelperIndex(int cp); // 0x10265330 + private static int GetPrimaryCompositeCharIndex(object chars, int start); // 0x10264FD0 + private static string Compose(string source, int checkType); // 0x10264570 + private static StringBuilder Combine(string source, int start, int checkType); // 0x10264460 + private static bool CanBePrimaryComposite(int i); // 0x102640C0 + private static void Combine(StringBuilder sb, int start, int checkType); // 0x102641E0 + private static int GetPrimaryCompositeMapIndex(object o, int cur, int bufferPos); // 0x102653D0 + private static string Decompose(string source, int checkType); // 0x10264A30 + private static void Decompose(string source, StringBuilder sb, int checkType); // 0x10264910 + private static void ReorderCanonical(string src, StringBuilder sb, int start); // 0x102659C0 + private static void DecomposeChar(StringBuilder sb, int[] buf, string s, int i, int start); // 0x10264740 + public static NormalizationCheck QuickCheck(char c, int type); // 0x10265860 + private static bool GetCanonicalHangul(int s, int[] buf, int bufIdx); // 0x10264AB0 + public static void GetCanonical(int c, int[] buf, int bufIdx); // 0x10264BE0 + public static bool IsNormalized(string source, int type); // 0x10265480 + public static string Normalize(string source, int type); // 0x10265690 + private static void load_normalization_resource(out IntPtr props, out IntPtr mappedChars, out IntPtr charMapIndex, out IntPtr helperIndex, out IntPtr mapIdxToComposite, out IntPtr combiningClass); // 0x10265E60 +} + +// Namespace: Mono.Globalization.Unicode +internal class NormalizationTableUtil // TypeDefIndex: 137 +{ + // Fields + public static readonly CodePointIndexer Prop; // 0x00 + public static readonly CodePointIndexer Map; // 0x04 + public static readonly CodePointIndexer Combining; // 0x08 + public static readonly CodePointIndexer Composite; // 0x0C + public static readonly CodePointIndexer Helper; // 0x10 + + // Properties + public static int PropCount { get; } // 0x10264060 + public static int MapCount { get; } // 0x10264000 + + // Methods + public void .ctor(); // 0x100BF000 + private static void .cctor(); // 0x10263D00 + public static int PropIdx(int cp); // 0x10263C90 + public static int PropCP(int index); // 0x10263C20 + public static int MapIdx(int cp); // 0x10263BB0 + public static int MapCP(int index); // 0x10263B40 + public static int CbIdx(int cp); // 0x10263AD0 + public static int CbCP(int index); // 0x10263A60 +} + +// Namespace: Mono.Globalization.Unicode +internal class SimpleCollator // TypeDefIndex: 138 +{ + // Fields + private const int UnsafeFlagLength = 96; // 0x00 + private static bool QuickCheckDisabled; // 0x00 + private static SimpleCollator invariant; // 0x04 + private readonly TextInfo textInfo; // 0x08 + private readonly bool frenchSort; // 0x0C + private readonly void * cjkCatTable; // 0x10 + private readonly void * cjkLv1Table; // 0x14 + private readonly CodePointIndexer cjkIndexer; // 0x18 + private readonly void * cjkLv2Table; // 0x1C + private readonly CodePointIndexer cjkLv2Indexer; // 0x20 + private readonly int lcid; // 0x24 + private readonly Contraction[] contractions; // 0x28 + private readonly Level2Map[] level2Maps; // 0x2C + private readonly byte[] unsafeFlags; // 0x30 + + // Methods + public void .ctor(CultureInfo culture); // 0x1026EBD0 + private static void .cctor(); // 0x1026EB10 + private void SetCJKTable(CultureInfo culture, CodePointIndexer cjkIndexer, void * catTable, void * lv1Table, CodePointIndexer lv2Indexer, void * lv2Table); // 0x1026E9A0 + private static CultureInfo GetNeutralCulture(CultureInfo info); // 0x1026B5F0 + private byte Category(int cp); // 0x10268AB0 + private byte Level1(int cp); // 0x1026DAC0 + private byte Level2(int cp, ExtenderType ext); // 0x1026DB50 + private static bool IsHalfKana(int cp, CompareOptions opt); // 0x1026CA60 + private Contraction GetContraction(string s, int start, int end); // 0x1026B3F0 + private Contraction GetContraction(string s, int start, int end, Contraction[] clist); // 0x1026B2E0 + private Contraction GetTailContraction(string s, int start, int end); // 0x1026BD40 + private Contraction GetTailContraction(string s, int start, int end, Contraction[] clist); // 0x1026BB60 + private Contraction GetContraction(char c); // 0x1026B490 + private Contraction GetContraction(char c, Contraction[] clist); // 0x1026B250 + private int FilterOptions(int i, CompareOptions opt); // 0x1026AFA0 + private ExtenderType GetExtenderType(int i); // 0x1026B520 + private static byte ToDashTypeValue(ExtenderType ext, CompareOptions opt); // 0x1026EAD0 + private int FilterExtender(int i, ExtenderType ext, CompareOptions opt); // 0x1026ADE0 + private static bool IsIgnorable(int i, CompareOptions opt); // 0x1026CAD0 + private bool IsSafe(int i); // 0x1026CC90 + public SortKey GetSortKey(string s); // 0x1026B7B0 + public SortKey GetSortKey(string s, CompareOptions options); // 0x1026B710 + public SortKey GetSortKey(string s, int start, int length, CompareOptions options); // 0x1026B680 + private void GetSortKey(string s, int start, int end, SortKeyBuffer buf, CompareOptions opt); // 0x1026B850 + private void FillSortKeyRaw(int i, ExtenderType ext, SortKeyBuffer buf, CompareOptions opt); // 0x1026A9C0 + private void FillSurrogateSortKeyRaw(int i, SortKeyBuffer buf); // 0x1026AD30 + public int Compare(string s1, string s2); // 0x1026A800 + public int Compare(string s1, string s2, CompareOptions options); // 0x1026A840 + private int CompareOrdinal(string s1, int idx1, int len1, string s2, int idx2, int len2); // 0x10269FF0 + private int CompareQuick(string s1, int idx1, int len1, string s2, int idx2, int len2, out bool sourceConsumed, out bool targetConsumed, bool immediateBreakup); // 0x1026A2B0 + private int CompareOrdinalIgnoreCase(string s1, int idx1, int len1, string s2, int idx2, int len2); // 0x10269C90 + public int Compare(string s1, int idx1, int len1, string s2, int idx2, int len2, CompareOptions options); // 0x1026A880 + private void ClearBuffer(void * buffer, int size); // 0x10268B40 + private bool QuickCheckPossible(string s1, int idx1, int end1, string s2, int idx2, int end2); // 0x100EFBF0 + private int CompareInternal(string s1, int idx1, int len1, string s2, int idx2, int len2, out bool targetConsumed, out bool sourceConsumed, bool skipHeadingExtenders, bool immediateBreakup, Context ctx); // 0x10268B80 + private int CompareFlagPair(bool b1, bool b2); // 0x10268B60 + public bool IsPrefix(string src, string target, CompareOptions opt); // 0x1026CB50 + public bool IsPrefix(string s, string target, int start, int length, CompareOptions opt); // 0x1026CB80 + private bool IsPrefix(string s, string target, int start, int length, bool skipHeadingExtenders, Context ctx); // 0x1026CC40 + public bool IsSuffix(string src, string target, CompareOptions opt); // 0x1026CD00 + public bool IsSuffix(string s, string target, int start, int length, CompareOptions opt); // 0x1026CD80 + public int IndexOf(string s, string target, CompareOptions opt); // 0x1026C720 + private int QuickIndexOf(string s, string target, int start, int length, out bool testWasUnable); // 0x1026E870 + public int IndexOf(string s, string target, int start, int length, CompareOptions opt); // 0x1026C3D0 + private int IndexOfOrdinal(string s, string target, int start, int length); // 0x1026BFC0 + private int IndexOfOrdinalIgnoreCase(string s, string target, int start, int length); // 0x1026BE80 + public int IndexOf(string s, char target, CompareOptions opt); // 0x1026CA30 + public int IndexOf(string s, char target, int start, int length, CompareOptions opt); // 0x1026C750 + private int IndexOfOrdinal(string s, char target, int start, int length); // 0x1026BF70 + private int IndexOfOrdinalIgnoreCase(string s, char target, int start, int length); // 0x1026BDE0 + private int IndexOfSortKey(string s, int start, int length, void * sortkey, char target, int ti, bool noLv4, Context ctx); // 0x1026C050 + private int IndexOf(string s, string target, int start, int length, void * targetSortKey, Context ctx); // 0x1026C0A0 + public int LastIndexOf(string s, string target, CompareOptions opt); // 0x1026D1F0 + public int LastIndexOf(string s, string target, int start, int length, CompareOptions opt); // 0x1026D520 + private int LastIndexOfOrdinal(string s, string target, int start, int length); // 0x1026D030 + private int LastIndexOfOrdinalIgnoreCase(string s, string target, int start, int length); // 0x1026CEB0 + public int LastIndexOf(string s, char target, CompareOptions opt); // 0x1026D4F0 + public int LastIndexOf(string s, char target, int start, int length, CompareOptions opt); // 0x1026D220 + private int LastIndexOfOrdinal(string s, char target, int start, int length); // 0x1026D130 + private int LastIndexOfOrdinalIgnoreCase(string s, char target, int start, int length); // 0x1026CE00 + private int LastIndexOfSortKey(string s, int start, int orgStart, int length, void * sortkey, int ti, bool noLv4, Context ctx); // 0x1026D190 + private int LastIndexOf(string s, string target, int start, int length, void * targetSortKey, Context ctx); // 0x1026D710 + private bool MatchesForward(string s, int idx, int end, int ti, void * sortkey, bool noLv4, Context ctx); // 0x1026E550 + private bool MatchesForwardCore(string s, int idx, int end, int ti, void * sortkey, bool noLv4, ExtenderType ext, Contraction ct, Context ctx); // 0x1026E250 + private bool MatchesPrimitive(CompareOptions opt, void * source, int si, ExtenderType ext, void * target, int ti, bool noLv4); // 0x1026E6A0 + private bool MatchesBackward(string s, int idx, int end, int orgStart, int ti, void * sortkey, bool noLv4, Context ctx); // 0x1026E100 + private bool MatchesBackwardCore(string s, int idx, int end, int orgStart, int ti, void * sortkey, bool noLv4, ExtenderType ext, Contraction ct, Context ctx); // 0x1026DCC0 +} + +// Namespace: +internal struct Context // TypeDefIndex: 139 +{ + // Fields + public readonly CompareOptions Option; // 0x08 + public readonly void * NeverMatchFlags; // 0x0C + public readonly void * AlwaysMatchFlags; // 0x10 + public void * Buffer1; // 0x14 + public void * Buffer2; // 0x18 + public int PrevCode; // 0x1C + public void * PrevSortKey; // 0x20 + public readonly bool QuickCheckPossible; // 0x24 + + // Methods + public void .ctor(CompareOptions opt, void * alwaysMatchFlags, void * neverMatchFlags, void * buffer1, void * buffer2, void * prev1, bool quickCheckPossible); // 0x1001B880 + public void ClearPrevInfo(); // 0x1001B860 +} + +// Namespace: +private struct PreviousInfo // TypeDefIndex: 140 +{ + // Fields + public int Code; // 0x08 + public void * SortKey; // 0x0C + + // Methods + public void .ctor(bool dummy); // 0x1001B9C0 +} + +// Namespace: +private struct Escape // TypeDefIndex: 141 +{ + // Fields + public string Source; // 0x08 + public int Index; // 0x0C + public int Start; // 0x10 + public int End; // 0x14 + public int Optional; // 0x18 + +} + +// Namespace: +private enum ExtenderType // TypeDefIndex: 142 +{ + None = 0, + Simple = 1, + Voiced = 2, + Conditional = 3, + Buggy = 4 +} + +// Namespace: System.Globalization +[Serializable] +public class SortKey // TypeDefIndex: 143 +{ + // Fields + private readonly string source; // 0x08 + private readonly CompareOptions options; // 0x0C + private readonly byte[] key; // 0x10 + private readonly int lcid; // 0x14 + + // Properties + public virtual string OriginalString { get; } // 0x100BF0C0 + public virtual byte[] KeyData { get; } // 0x100BFC20 + + // Methods + internal void .ctor(int lcid, string source, CompareOptions opt); // 0x102C26C0 + internal void .ctor(int lcid, string source, byte[] buffer, CompareOptions opt, int lv1Length, int lv2Length, int lv3Length, int kanaSmallLength, int markTypeLength, int katakanaLength, int kanaWidthLength, int identLength); // 0x102C2690 + public static int Compare(SortKey sortkey1, SortKey sortkey2); // 0x102C2190 + public override bool Equals(object value); // 0x102C2320 + public override int GetHashCode(); // 0x102C23B0 + public override string ToString(); // 0x102C2410 +} + +// Namespace: Mono.Globalization.Unicode +internal class SortKeyBuffer // TypeDefIndex: 144 +{ + // Fields + private int l1; // 0x08 + private int l2; // 0x0C + private int l3; // 0x10 + private int l4s; // 0x14 + private int l4t; // 0x18 + private int l4k; // 0x1C + private int l4w; // 0x20 + private int l5; // 0x24 + private byte[] l1b; // 0x28 + private byte[] l2b; // 0x2C + private byte[] l3b; // 0x30 + private byte[] l4sb; // 0x34 + private byte[] l4tb; // 0x38 + private byte[] l4kb; // 0x3C + private byte[] l4wb; // 0x40 + private byte[] l5b; // 0x44 + private string source; // 0x48 + private bool processLevel2; // 0x4C + private bool frenchSort; // 0x4D + private bool frenchSorted; // 0x4E + private int lcid; // 0x50 + private CompareOptions options; // 0x54 + + // Methods + public void .ctor(int lcid); // 0x101AA300 + public void Reset(); // 0x102AF000 + internal void ClearBuffer(); // 0x102AEA00 + internal void Initialize(CompareOptions options, int lcid, string s, bool frenchSort); // 0x102AEEB0 + internal void AppendCJKExtension(byte lv1msb, byte lv1lsb); // 0x102AE680 + internal void AppendKana(byte category, byte lv1, byte lv2, byte lv3, bool isSmallKana, byte markType, bool isKatakana, bool isHalfWidth); // 0x102AE700 + internal void AppendNormal(byte category, byte lv1, byte lv2, byte lv3); // 0x102AE830 + private void AppendLevel5(byte category, byte lv1); // 0x102AE7A0 + private void AppendBufferPrimitive(byte value, byte[] buf, int bidx); // 0x102AE5E0 + public SortKey GetResultAndReset(); // 0x102AEA90 + private int GetOptimizedLength(byte[] data, int len, byte defaultValue); // 0x102AEA40 + public SortKey GetResult(); // 0x102AEAF0 +} + +// Namespace: Mono.Interop +internal class ComInteropProxy : RealProxy, IRemotingTypeInfo // TypeDefIndex: 145 +{ + // Fields + private __ComObject com_object; // 0x28 + private int ref_count; // 0x2C + private string type_name; // 0x30 + + // Properties + public string TypeName { get; set; } // 0x100EA580 0x100C15B0 + + // Methods + private void .ctor(Type t); // 0x102A1D00 + private void .ctor(IntPtr pUnk); // 0x102A1D30 + internal void .ctor(IntPtr pUnk, Type t); // 0x102A1E00 + private static void AddProxy(IntPtr pItf, ComInteropProxy proxy); // 0x101B65B0 + internal static ComInteropProxy FindProxy(IntPtr pItf); // 0x10104640 + private void CacheProxy(); // 0x102A18A0 + internal static ComInteropProxy GetProxy(IntPtr pItf, Type t); // 0x102A1AB0 + internal static ComInteropProxy CreateProxy(Type t); // 0x102A19A0 + public override IMessage Invoke(IMessage msg); // 0x102A1C70 + public bool CanCastTo(Type fromType, object o); // 0x102A18D0 +} + +// Namespace: Mono.Interop +internal interface IDispatch // TypeDefIndex: 146 +{ +} + +// Namespace: Mono.Interop +internal interface IUnknown // TypeDefIndex: 147 +{ +} + +// Namespace: Mono.Math.Prime.Generator +internal class NextPrimeFinder : SequentialSearchPrimeGeneratorBase // TypeDefIndex: 148 +{ + // Methods + public void .ctor(); // 0x100BF000 + protected override BigInteger GenerateSearchBase(int bits, object Context); // 0x102AC230 +} + +// Namespace: Mono.Math.Prime.Generator +internal abstract class PrimeGeneratorBase // TypeDefIndex: 149 +{ + // Properties + public virtual ConfidenceFactor Confidence { get; } // 0x1016F1E0 + public virtual PrimalityTest PrimalityTest { get; } // 0x102AE170 + public virtual int TrialDivisionBounds { get; } // 0x102AE1C0 + + // Methods + protected void .ctor(); // 0x100BF000 + protected bool PostTrialDivisionTests(BigInteger bi); // 0x102AE120 + public abstract BigInteger GenerateNewPrime(int bits); +} + +// Namespace: Mono.Math.Prime.Generator +internal class SequentialSearchPrimeGeneratorBase : PrimeGeneratorBase // TypeDefIndex: 150 +{ + // Methods + public void .ctor(); // 0x100BF000 + protected virtual BigInteger GenerateSearchBase(int bits, object context); // 0x102AE510 + public override BigInteger GenerateNewPrime(int bits); // 0x1020A380 + public virtual BigInteger GenerateNewPrime(int bits, object context); // 0x102AE1F0 + protected virtual bool IsPrimeAcceptable(BigInteger bi, object context); // 0x100E5880 +} + +// Namespace: Mono.Math.Prime +internal enum ConfidenceFactor // TypeDefIndex: 151 +{ + ExtraLow = 0, + Low = 1, + Medium = 2, + High = 3, + ExtraHigh = 4, + Provable = 5 +} + +// Namespace: Mono.Math.Prime +internal sealed class PrimalityTests // TypeDefIndex: 152 +{ + // Methods + private void .ctor(); // 0x100BF000 + private static int GetSPPRounds(BigInteger bi, ConfidenceFactor confidence); // 0x102AD9F0 + public static bool Test(BigInteger n, ConfidenceFactor confidence); // 0x102AE0E0 + public static bool RabinMillerTest(BigInteger n, ConfidenceFactor confidence); // 0x102ADB80 + public static bool SmallPrimeSppTest(BigInteger bi, ConfidenceFactor confidence); // 0x102ADEE0 +} + +// Namespace: Mono.Math +internal class BigInteger // TypeDefIndex: 153 +{ + // Fields + private const uint DEFAULT_LEN = 20; // 0x00 + private const string WouldReturnNegVal = "Operation would return a negative value"; // 0x00 + private uint length; // 0x08 + private uint[] data; // 0x0C + internal static readonly uint[] smallPrimes; // 0x00 + private static RandomNumberGenerator rng; // 0x04 + + // Properties + private static RandomNumberGenerator Rng { get; } // 0x1029FD70 + + // Methods + public void .ctor(); // 0x1029FC60 + public void .ctor(Sign sign, uint len); // 0x1029FC00 + public void .ctor(BigInteger bi); // 0x1029F640 + public void .ctor(BigInteger bi, uint len); // 0x1029FCC0 + public void .ctor(byte[] inData); // 0x1029F910 + public void .ctor(uint[] inData); // 0x1029F6E0 + public void .ctor(uint ui); // 0x1029F890 + public void .ctor(ulong ul); // 0x1029F7F0 + private static void .cctor(); // 0x1029F5F0 + public static BigInteger Parse(string number); // 0x1029EC60 + public static BigInteger Add(BigInteger bi1, BigInteger bi2); // 0x1029DDF0 + public static BigInteger Subtract(BigInteger bi1, BigInteger bi2); // 0x1029F150 + public static int Modulus(BigInteger bi, int i); // 0x1029EA80 + public static uint Modulus(BigInteger bi, uint ui); // 0x1029E9B0 + public static BigInteger Modulus(BigInteger bi1, BigInteger bi2); // 0x1029EA00 + public static BigInteger Divid(BigInteger bi, int i); // 0x1029DF60 + public static BigInteger Divid(BigInteger bi1, BigInteger bi2); // 0x1029E010 + public static BigInteger Multiply(BigInteger bi1, BigInteger bi2); // 0x1029EAF0 + public static BigInteger Multiply(BigInteger bi, int i); // 0x1029EB40 + public static BigInteger GenerateRandom(int bits, RandomNumberGenerator rng); // 0x1029E260 + public static BigInteger GenerateRandom(int bits); // 0x1029E200 + public void Randomize(RandomNumberGenerator rng); // 0x1029EEE0 + public void Randomize(); // 0x1029EE80 + public int BitCount(); // 0x1029DE40 + public bool TestBit(uint bitNum); // 0x1029F1A0 + public bool TestBit(int bitNum); // 0x1029F1F0 + public void SetBit(uint bitNum); // 0x1029F100 + public void ClearBit(uint bitNum); // 0x1029DEA0 + public void SetBit(uint bitNum, bool value); // 0x1029F090 + public int LowestSetBit(); // 0x1029E880 + public byte[] GetBytes(); // 0x1029E3F0 + public Sign Compare(BigInteger bi); // 0x1029DF50 + public string ToString(uint radix); // 0x1029F2D0 + public string ToString(uint radix, string characterSet); // 0x1029F310 + private void Normalize(); // 0x1029EC00 + public void Clear(); // 0x1029DEF0 + public override int GetHashCode(); // 0x1029E550 + public override string ToString(); // 0x1029F290 + public override bool Equals(object o); // 0x1029E090 + public BigInteger GCD(BigInteger bi); // 0x1029E190 + public BigInteger ModInverse(BigInteger modulus); // 0x1029E940 + public BigInteger ModPow(BigInteger exp, BigInteger n); // 0x1029E950 + public bool IsProbablePrime(); // 0x1029E660 + public static BigInteger NextHighestPrime(BigInteger bi); // 0x1029EB90 + public static BigInteger GeneratePseudoPrime(int bits); // 0x1029E1A0 + public void Incr2(); // 0x1029E5A0 + public static BigInteger op_Implicit(uint value); // 0x102A0150 + public static BigInteger op_Implicit(int value); // 0x102A01A0 + public static BigInteger op_Implicit(ulong value); // 0x102A0220 + public static BigInteger op_Addition(BigInteger bi1, BigInteger bi2); // 0x1029FE30 + public static BigInteger op_Subtraction(BigInteger bi1, BigInteger bi2); // 0x102A0930 + public static int op_Modulus(BigInteger bi, int i); // 0x102A0460 + public static uint op_Modulus(BigInteger bi, uint ui); // 0x102A0450 + public static BigInteger op_Modulus(BigInteger bi1, BigInteger bi2); // 0x102A0490 + public static BigInteger op_Division(BigInteger bi, int i); // 0x1029FF50 + public static BigInteger op_Division(BigInteger bi1, BigInteger bi2); // 0x1029FFC0 + public static BigInteger op_Multiply(BigInteger bi1, BigInteger bi2); // 0x102A04D0 + public static BigInteger op_Multiply(BigInteger bi, int i); // 0x102A0700 + public static BigInteger op_LeftShift(BigInteger bi1, int shiftVal); // 0x102A0400 + public static BigInteger op_RightShift(BigInteger bi1, int shiftVal); // 0x102A0920 + public static bool op_Equality(BigInteger bi1, uint ui); // 0x102A00B0 + public static bool op_Inequality(BigInteger bi1, uint ui); // 0x102A02F0 + public static bool op_Equality(BigInteger bi1, BigInteger bi2); // 0x102A0000 + public static bool op_Inequality(BigInteger bi1, BigInteger bi2); // 0x102A0350 + public static bool op_GreaterThan(BigInteger bi1, BigInteger bi2); // 0x102A0130 + public static bool op_LessThan(BigInteger bi1, BigInteger bi2); // 0x102A0430 + public static bool op_GreaterThanOrEqual(BigInteger bi1, BigInteger bi2); // 0x102A0110 + public static bool op_LessThanOrEqual(BigInteger bi1, BigInteger bi2); // 0x102A0410 +} + +// Namespace: +public enum Sign // TypeDefIndex: 154 +{ + Negative = -1, + Zero = 0, + Positive = 1 +} + +// Namespace: +internal sealed class ModulusRing // TypeDefIndex: 155 +{ + // Fields + private BigInteger mod; // 0x08 + private BigInteger constant; // 0x0C + + // Methods + public void .ctor(BigInteger modulus); // 0x102ABE70 + public void BarrettReduction(BigInteger x); // 0x102AB5C0 + public BigInteger Multiply(BigInteger a, BigInteger b); // 0x102ABA30 + public BigInteger Difference(BigInteger a, BigInteger b); // 0x102AB830 + public BigInteger Pow(BigInteger a, BigInteger k); // 0x102ABCD0 + public BigInteger Pow(uint b, BigInteger exp); // 0x102ABC80 +} + +// Namespace: +internal sealed class Montgomery // TypeDefIndex: 156 +{ + // Methods + private void .ctor(); // 0x100BF000 + public static uint Inverse(uint n); // 0x102ABF90 + public static BigInteger ToMont(BigInteger n, BigInteger m); // 0x102AC180 + public static BigInteger Reduce(BigInteger n, BigInteger m, uint mPrime); // 0x102ABFC0 +} + +// Namespace: +private sealed class Kernel // TypeDefIndex: 157 +{ + // Methods + public void .ctor(); // 0x100BF000 + public static BigInteger AddSameSign(BigInteger bi1, BigInteger bi2); // 0x102A6ED0 + public static BigInteger Subtract(BigInteger big, BigInteger small); // 0x102A8470 + public static void MinusEq(BigInteger big, BigInteger small); // 0x102A79B0 + public static void PlusEq(BigInteger bi1, BigInteger bi2); // 0x102A7E00 + public static Sign Compare(BigInteger bi1, BigInteger bi2); // 0x102A70B0 + public static uint SingleByteDivideInPlace(BigInteger n, uint d); // 0x102A81C0 + public static uint DwordMod(BigInteger n, uint d); // 0x102A7620 + public static BigInteger DwordDiv(BigInteger n, uint d); // 0x102A74A0 + public static BigInteger[] DwordDivMod(BigInteger n, uint d); // 0x102A71F0 + public static BigInteger[] multiByteDivide(BigInteger bi1, BigInteger bi2); // 0x102A8FD0 + public static BigInteger LeftShift(BigInteger bi, int n); // 0x102A76A0 + public static BigInteger RightShift(BigInteger bi, int n); // 0x102A7FA0 + public static BigInteger MultiplyByDword(BigInteger n, uint f); // 0x102A7AC0 + public static void Multiply(uint[] x, uint xOffset, uint xLen, uint[] y, uint yOffset, uint yLen, uint[] d, uint dOffset); // 0x102A7D00 + public static void MultiplyMod2p32pmod(uint[] x, int xOffset, int xLen, uint[] y, int yOffest, int yLen, uint[] d, int dOffset, int mod); // 0x102A7BE0 + public static void SquarePositive(BigInteger bi, uint[] wkSpace); // 0x102A82B0 + public static BigInteger gcd(BigInteger a, BigInteger b); // 0x102A8620 + public static uint modInverse(BigInteger bi, uint modulus); // 0x102A8850 + public static BigInteger modInverse(BigInteger bi, BigInteger modulus); // 0x102A8900 +} + +// Namespace: Mono.Security.Authenticode +internal enum Authority // TypeDefIndex: 158 +{ + Individual = 0, + Commercial = 1, + Maximum = 2 +} + +// Namespace: Mono.Security.Authenticode +internal class AuthenticodeBase // TypeDefIndex: 159 +{ + // Fields + public const string spcIndirectDataContext = "1.3.6.1.4.1.311.2.1.4"; // 0x00 + private byte[] fileblock; // 0x08 + private FileStream fs; // 0x0C + private int blockNo; // 0x10 + private int blockLength; // 0x14 + private int peOffset; // 0x18 + private int dirSecurityOffset; // 0x1C + private int dirSecuritySize; // 0x20 + private int coffSymbolTableOffset; // 0x24 + + // Properties + internal int PEOffset { get; } // 0x1029C050 + internal int CoffSymbolTableOffset { get; } // 0x1029C030 + internal int SecurityOffset { get; } // 0x1029C070 + + // Methods + public void .ctor(); // 0x1029BFE0 + internal void Open(string filename); // 0x1029BD30 + internal void Close(); // 0x1029B680 + internal bool ReadFirstBlock(); // 0x1029BDB0 + internal byte[] GetSecurityEntry(); // 0x1029BB70 + internal byte[] GetHash(HashAlgorithm hash); // 0x1029B6C0 + protected byte[] HashFile(string fileName, string hashName); // 0x1029BC30 +} + +// Namespace: Mono.Security.Authenticode +internal class AuthenticodeDeformatter : AuthenticodeBase // TypeDefIndex: 160 +{ + // Fields + private string filename; // 0x28 + private byte[] hash; // 0x2C + private X509CertificateCollection coll; // 0x30 + private ASN1 signedHash; // 0x34 + private DateTime timestamp; // 0x38 + private X509Certificate signingCertificate; // 0x48 + private int reason; // 0x4C + private bool trustedRoot; // 0x50 + private bool trustedTimestampRoot; // 0x51 + private byte[] entry; // 0x54 + private X509Chain signerChain; // 0x58 + private X509Chain timestampChain; // 0x5C + private static Dictionary`2 <>f__switch$map5; // 0x00 + private static Dictionary`2 <>f__switch$map6; // 0x04 + private static Dictionary`2 <>f__switch$map7; // 0x08 + + // Properties + public string FileName { get; set; } // 0x100EB040 0x1029DC40 + public byte[] Hash { get; } // 0x1029D9A0 + public int Reason { get; } // 0x1029DA20 + public byte[] Signature { get; } // 0x1029DBB0 + public DateTime Timestamp { get; } // 0x1029DC20 + public X509CertificateCollection Certificates { get; } // 0x100EA580 + public X509Certificate SigningCertificate { get; } // 0x10145560 + + // Methods + public void .ctor(); // 0x1029D850 + public void .ctor(string fileName); // 0x1029D8F0 + public bool IsTrusted(); // 0x1029C500 + private bool CheckSignature(string fileName); // 0x1029C090 + private bool CompareIssuerSerial(string issuer, byte[] serial, X509Certificate x509); // 0x1029C3E0 + private bool VerifySignature(SignedData sd, byte[] calculatedMessageDigest, HashAlgorithm ha); // 0x1029CF10 + private bool VerifyCounterSignature(SignerInfo cs, byte[] signature); // 0x1029C720 + private void Reset(); // 0x1029C660 +} + +// Namespace: Mono.Security.Cryptography +internal sealed class CryptoConvert // TypeDefIndex: 161 +{ + // Methods + private void .ctor(); // 0x100BF000 + private static int ToInt32LE(byte[] bytes, int offset); // 0x102A44F0 + private static uint ToUInt32LE(byte[] bytes, int offset); // 0x102A44F0 + private static byte[] GetBytesLE(int val); // 0x102A3440 + private static byte[] Trim(byte[] array); // 0x102A4590 + public static RSA FromCapiPrivateKeyBlob(byte[] blob); // 0x102A2BA0 + public static RSA FromCapiPrivateKeyBlob(byte[] blob, int offset); // 0x102A26C0 + public static DSA FromCapiPrivateKeyBlobDSA(byte[] blob); // 0x102A26A0 + public static DSA FromCapiPrivateKeyBlobDSA(byte[] blob, int offset); // 0x102A2310 + public static byte[] ToCapiPrivateKeyBlob(RSA rsa); // 0x102A37A0 + public static byte[] ToCapiPrivateKeyBlob(DSA dsa); // 0x102A3B70 + public static RSA FromCapiPublicKeyBlob(byte[] blob); // 0x102A2F70 + public static RSA FromCapiPublicKeyBlob(byte[] blob, int offset); // 0x102A2F90 + public static DSA FromCapiPublicKeyBlobDSA(byte[] blob); // 0x102A2F50 + public static DSA FromCapiPublicKeyBlobDSA(byte[] blob, int offset); // 0x102A2BC0 + public static byte[] ToCapiPublicKeyBlob(RSA rsa); // 0x102A3E60 + public static byte[] ToCapiPublicKeyBlob(DSA dsa); // 0x102A4110 + public static RSA FromCapiKeyBlob(byte[] blob); // 0x102A20D0 + public static RSA FromCapiKeyBlob(byte[] blob, int offset); // 0x102A21F0 + public static DSA FromCapiKeyBlobDSA(byte[] blob); // 0x102A1EC0 + public static DSA FromCapiKeyBlobDSA(byte[] blob, int offset); // 0x102A1FC0 + public static byte[] ToCapiKeyBlob(AsymmetricAlgorithm keypair, bool includePrivateKey); // 0x102A3580 + public static byte[] ToCapiKeyBlob(RSA rsa, bool includePrivateKey); // 0x102A3500 + public static byte[] ToCapiKeyBlob(DSA dsa, bool includePrivateKey); // 0x102A3720 + public static string ToHex(byte[] input); // 0x102A4400 + private static byte FromHexChar(char c); // 0x102A3290 + public static byte[] FromHex(string hex); // 0x102A3320 +} + +// Namespace: Mono.Security.Cryptography +internal sealed class KeyBuilder // TypeDefIndex: 162 +{ + // Fields + private static RandomNumberGenerator rng; // 0x00 + + // Properties + private static RandomNumberGenerator Rng { get; } // 0x102A97F0 + + // Methods + private void .ctor(); // 0x100BF000 + public static byte[] Key(int size); // 0x102A9740 + public static byte[] IV(int size); // 0x102A9690 +} + +// Namespace: Mono.Security.Cryptography +internal class BlockProcessor // TypeDefIndex: 163 +{ + // Fields + private ICryptoTransform transform; // 0x08 + private byte[] block; // 0x0C + private int blockSize; // 0x10 + private int blockCount; // 0x14 + + // Methods + public void .ctor(ICryptoTransform transform); // 0x102A17C0 + public void .ctor(ICryptoTransform transform, int blockSize); // 0x102A1770 + protected override void Finalize(); // 0x102A1680 + public void Initialize(); // 0x102A1740 + public void Core(byte[] rgb); // 0x102A1600 + public void Core(byte[] rgb, int ib, int cb); // 0x102A1480 + public byte[] Final(); // 0x102A1630 +} + +// Namespace: Mono.Security.Cryptography +internal class DSAManaged : DSA // TypeDefIndex: 164 +{ + // Fields + private const int defaultKeySize = 1024; // 0x00 + private bool keypairGenerated; // 0x10 + private bool m_disposed; // 0x11 + private BigInteger p; // 0x14 + private BigInteger q; // 0x18 + private BigInteger g; // 0x1C + private BigInteger x; // 0x20 + private BigInteger y; // 0x24 + private BigInteger j; // 0x28 + private BigInteger seed; // 0x2C + private int counter; // 0x30 + private bool j_missing; // 0x34 + private RandomNumberGenerator rng; // 0x38 + private KeyGeneratedEventHandler KeyGenerated; // 0x3C + + // Properties + private RandomNumberGenerator Random { get; } // 0x102A6150 + public override int KeySize { get; } // 0x102A60C0 + public override string KeyExchangeAlgorithm { get; } // 0x100C5600 + public bool PublicOnly { get; } // 0x102A60F0 + public override string SignatureAlgorithm { get; } // 0x102A6170 + + // Events + public event KeyGeneratedEventHandler KeyGenerated { + add; // 0x102A5FC0 + remove; // 0x102A61A0 + } + + // Methods + public void .ctor(); // 0x102A5E40 + public void .ctor(int dwKeySize); // 0x102A5F00 + protected override void Finalize(); // 0x1010BCA0 + private void Generate(); // 0x102A56B0 + private void GenerateKeyPair(); // 0x102A4ED0 + private void add(byte[] a, byte[] b, int value); // 0x102A6020 + private void GenerateParams(int keyLength); // 0x102A5120 + private byte[] NormalizeArray(byte[] array); // 0x102A5980 + public override DSAParameters ExportParameters(bool includePrivateParameters); // 0x102A4C60 + public override void ImportParameters(DSAParameters parameters); // 0x102A56F0 + public override byte[] CreateSignature(byte[] rgbHash); // 0x102A4630 + public override bool VerifySignature(byte[] rgbHash, byte[] rgbSignature); // 0x102A5A10 + protected override void Dispose(bool disposing); // 0x102A49F0 +} + +// Namespace: +public delegate void KeyGeneratedEventHandler(object sender, EventArgs e); // TypeDefIndex: 165; 0x1016E5B0 + +// Namespace: Mono.Security.Cryptography +internal class HMACAlgorithm // TypeDefIndex: 166 +{ + // Fields + private byte[] key; // 0x08 + private byte[] hash; // 0x0C + private HashAlgorithm algo; // 0x10 + private string hashName; // 0x14 + private BlockProcessor block; // 0x18 + + // Properties + public HashAlgorithm Algo { get; } // 0x100BFC20 + public string HashName { get; set; } // 0x100EF0C0 0x102A6E20 + public byte[] Key { get; set; } // 0x100BF0C0 0x102A6E30 + + // Methods + public void .ctor(string algoName); // 0x102A6E00 + protected override void Finalize(); // 0x102A6BF0 + private void CreateHash(string algoName); // 0x102A69E0 + public void Dispose(); // 0x102A6A80 + public void Initialize(); // 0x102A6CB0 + private byte[] KeySetup(byte[] key, byte padding); // 0x102A6D40 + public void Core(byte[] rgb, int ib, int cb); // 0x102A69B0 + public byte[] Final(); // 0x102A6AA0 +} + +// Namespace: Mono.Security.Cryptography +internal class KeyPairPersistence // TypeDefIndex: 167 +{ + // Fields + private static bool _userPathExists; // 0x00 + private static string _userPath; // 0x04 + private static bool _machinePathExists; // 0x08 + private static string _machinePath; // 0x0C + private CspParameters _params; // 0x08 + private string _keyvalue; // 0x0C + private string _filename; // 0x10 + private string _container; // 0x14 + private static object lockobj; // 0x10 + + // Properties + public string Filename { get; } // 0x102AA560 + public string KeyValue { get; set; } // 0x100C5B30 0x102AB1C0 + public CspParameters Parameters { get; } // 0x102AACA0 + private static string UserPath { get; } // 0x102AAD00 + private static string MachinePath { get; } // 0x102AA7D0 + private bool CanChange { get; } // 0x101D0E10 + private bool UseDefaultKeyContainer { get; } // 0x102AACC0 + private bool UseMachineKeyStore { get; } // 0x102AACE0 + private string ContainerName { get; } // 0x102AA400 + + // Methods + public void .ctor(CspParameters parameters); // 0x102AA300 + public void .ctor(CspParameters parameters, string keyPair); // 0x102AA380 + private static void .cctor(); // 0x102AA2A0 + public bool Load(); // 0x102A9B80 + public void Save(); // 0x102A9F30 + public void Remove(); // 0x102A9F00 + internal static bool _CanSecure(string root); // 0x100E9F80 + internal static bool _ProtectUser(string path); // 0x100E9F80 + internal static bool _ProtectMachine(string path); // 0x100E9F80 + internal static bool _IsUserProtected(string path); // 0x100E9F80 + internal static bool _IsMachineProtected(string path); // 0x100E9F80 + private static bool CanSecure(string path); // 0x102A9840 + private static bool ProtectUser(string path); // 0x102A9E80 + private static bool ProtectMachine(string path); // 0x102A9E00 + private static bool IsUserProtected(string path); // 0x102A9B00 + private static bool IsMachineProtected(string path); // 0x102A9A80 + private CspParameters Copy(CspParameters p); // 0x102A98F0 + private void FromXml(string xml); // 0x102A9970 + private string ToXml(); // 0x102AA150 +} + +// Namespace: Mono.Security.Cryptography +internal class MACAlgorithm // TypeDefIndex: 168 +{ + // Fields + private SymmetricAlgorithm algo; // 0x08 + private ICryptoTransform enc; // 0x0C + private byte[] block; // 0x10 + private int blockSize; // 0x14 + private int blockCount; // 0x18 + + // Methods + public void .ctor(SymmetricAlgorithm algorithm); // 0x102AB500 + public void Initialize(byte[] key); // 0x102AB490 + public void Core(byte[] rgb, int ib, int cb); // 0x102AB1E0 + public byte[] Final(); // 0x102AB360 +} + +// Namespace: Mono.Security.Cryptography +internal sealed class PKCS1 // TypeDefIndex: 169 +{ + // Fields + private static byte[] emptySHA1; // 0x00 + private static byte[] emptySHA256; // 0x04 + private static byte[] emptySHA384; // 0x08 + private static byte[] emptySHA512; // 0x0C + + // Methods + private void .ctor(); // 0x100BF000 + private static void .cctor(); // 0x102AD650 + private static bool Compare(byte[] array1, byte[] array2); // 0x102AC320 + private static byte[] xor(byte[] array1, byte[] array2); // 0x102AD720 + private static byte[] GetEmptyHash(HashAlgorithm hash); // 0x102ACE80 + public static byte[] I2OSP(int x, int size); // 0x102AD010 + public static byte[] I2OSP(byte[] x, int size); // 0x102AD090 + public static byte[] OS2IP(byte[] x); // 0x102AD290 + public static byte[] RSAEP(RSA rsa, byte[] m); // 0x102AD360 + public static byte[] RSADP(RSA rsa, byte[] c); // 0x102AD330 + public static byte[] RSASP1(RSA rsa, byte[] m); // 0x102AD330 + public static byte[] RSAVP1(RSA rsa, byte[] s); // 0x102AD360 + public static byte[] Encrypt_OAEP(RSA rsa, HashAlgorithm hash, RandomNumberGenerator rng, byte[] M); // 0x102ACA90 + public static byte[] Decrypt_OAEP(RSA rsa, HashAlgorithm hash, byte[] C); // 0x102AC3A0 + public static byte[] Encrypt_v15(RSA rsa, RandomNumberGenerator rng, byte[] M); // 0x102ACCF0 + public static byte[] Decrypt_v15(RSA rsa, byte[] C); // 0x102AC640 + public static byte[] Sign_v15(RSA rsa, HashAlgorithm hash, byte[] hashValue); // 0x102AD390 + public static bool Verify_v15(RSA rsa, HashAlgorithm hash, byte[] hashValue, byte[] signature); // 0x102AD5F0 + public static bool Verify_v15(RSA rsa, HashAlgorithm hash, byte[] hashValue, byte[] signature, bool tryNonStandardEncoding); // 0x102AD440 + public static byte[] Encode_v15(HashAlgorithm hash, byte[] hashValue, int emLength); // 0x102AC7D0 + public static byte[] MGF1(HashAlgorithm hash, byte[] mgfSeed, int maskLen); // 0x102AD100 +} + +// Namespace: Mono.Security.Cryptography +internal sealed class PKCS8 // TypeDefIndex: 170 +{ + // Methods + private void .ctor(); // 0x100BF000 + public static KeyInfo GetType(byte[] data); // 0x102AD7E0 +} + +// Namespace: +public enum KeyInfo // TypeDefIndex: 171 +{ + PrivateKey = 0, + EncryptedPrivateKey = 1, + Unknown = 2 +} + +// Namespace: +public class PrivateKeyInfo // TypeDefIndex: 172 +{ + // Fields + private int _version; // 0x08 + private string _algorithm; // 0x0C + private byte[] _key; // 0x10 + private ArrayList _list; // 0x14 + + // Properties + public string Algorithm { get; set; } // 0x100C5B30 0x100C5B50 + public ArrayList Attributes { get; } // 0x100EF0C0 + public byte[] PrivateKey { get; set; } // 0x101F4A60 0x101F4AD0 + public int Version { get; set; } // 0x100BF0C0 0x101F4B70 + + // Methods + public void .ctor(); // 0x101F4A00 + public void .ctor(byte[] data); // 0x101F49A0 + private void Decode(byte[] data); // 0x101F4000 + public byte[] GetBytes(); // 0x101F4510 + private static byte[] RemoveLeadingZero(byte[] bigInt); // 0x101F4910 + private static byte[] Normalize(byte[] bigInt, int length); // 0x101F4890 + public static RSA DecodeRSA(byte[] keypair); // 0x101F3C90 + public static byte[] Encode(RSA rsa); // 0x101F4200 + public static DSA DecodeDSA(byte[] privateKey, DSAParameters dsaParameters); // 0x101F3BC0 + public static byte[] Encode(DSA dsa); // 0x101F4370 + public static byte[] Encode(AsymmetricAlgorithm aa); // 0x101F43E0 +} + +// Namespace: +public class EncryptedPrivateKeyInfo // TypeDefIndex: 173 +{ + // Fields + private string _algorithm; // 0x08 + private byte[] _salt; // 0x0C + private int _iterations; // 0x10 + private byte[] _data; // 0x14 + + // Properties + public string Algorithm { get; set; } // 0x100BF0C0 0x100EB270 + public byte[] EncryptedData { get; set; } // 0x102A6730 0x102A6850 + public byte[] Salt { get; set; } // 0x102A67A0 0x102A6930 + public int IterationCount { get; set; } // 0x100BFC20 0x102A68C0 + + // Methods + public void .ctor(); // 0x100BF000 + public void .ctor(byte[] data); // 0x102A6710 + private void Decode(byte[] data); // 0x102A6200 + public byte[] GetBytes(); // 0x102A6500 +} + +// Namespace: Mono.Security.Cryptography +internal class RSAManaged : RSA // TypeDefIndex: 174 +{ + // Fields + private const int defaultKeySize = 1024; // 0x00 + private bool isCRTpossible; // 0x10 + private bool keyBlinding; // 0x11 + private bool keypairGenerated; // 0x12 + private bool m_disposed; // 0x13 + private BigInteger d; // 0x14 + private BigInteger p; // 0x18 + private BigInteger q; // 0x1C + private BigInteger dp; // 0x20 + private BigInteger dq; // 0x24 + private BigInteger qInv; // 0x28 + private BigInteger n; // 0x2C + private BigInteger e; // 0x30 + private KeyGeneratedEventHandler KeyGenerated; // 0x34 + + // Properties + public override int KeySize { get; } // 0x101F6490 + public override string KeyExchangeAlgorithm { get; } // 0x101F6460 + public bool PublicOnly { get; } // 0x101F64D0 + public override string SignatureAlgorithm { get; } // 0x101F6570 + public bool UseKeyBlinding { get; set; } // 0x101F65A0 0x101F6610 + public bool IsCrtPossible { get; } // 0x101F6430 + + // Events + public event KeyGeneratedEventHandler KeyGenerated { + add; // 0x101F63D0 + remove; // 0x101F65B0 + } + + // Methods + public void .ctor(); // 0x101F63B0 + public void .ctor(int keySize); // 0x101F62E0 + protected override void Finalize(); // 0x1010BCA0 + private void GenerateKeyPair(); // 0x101F55D0 + public override byte[] DecryptValue(byte[] rgb); // 0x101F4BD0 + public override byte[] EncryptValue(byte[] rgb); // 0x101F51D0 + public override RSAParameters ExportParameters(bool includePrivateParameters); // 0x101F52C0 + public override void ImportParameters(RSAParameters parameters); // 0x101F5900 + protected override void Dispose(bool disposing); // 0x101F4F10 + public override string ToXmlString(bool includePrivateParameters); // 0x101F5DF0 + private byte[] GetPaddedValue(BigInteger value, int length); // 0x101F5870 +} + +// Namespace: +public delegate void KeyGeneratedEventHandler(object sender, EventArgs e); // TypeDefIndex: 175; 0x1016E5B0 + +// Namespace: Mono.Security.Cryptography +internal abstract class SymmetricTransform : IDisposable, ICryptoTransform // TypeDefIndex: 176 +{ + // Fields + protected SymmetricAlgorithm algo; // 0x08 + protected bool encrypt; // 0x0C + private int BlockSizeByte; // 0x10 + private byte[] temp; // 0x14 + private byte[] temp2; // 0x18 + private byte[] workBuff; // 0x1C + private byte[] workout; // 0x20 + private int FeedBackByte; // 0x24 + private int FeedBackIter; // 0x28 + private bool m_disposed; // 0x2C + private bool lastBlock; // 0x2D + private RandomNumberGenerator _rng; // 0x30 + + // Properties + public virtual bool CanTransformMultipleBlocks { get; } // 0x100E5880 + public virtual bool CanReuseTransform { get; } // 0x100EFBF0 + public virtual int InputBlockSize { get; } // 0x100BFC20 + public virtual int OutputBlockSize { get; } // 0x100BFC20 + private bool KeepLastBlock { get; } // 0x101FD660 + + // Methods + public void .ctor(SymmetricAlgorithm symmAlgo, bool encryption, byte[] rgbIV); // 0x101FD430 + private void System.IDisposable.Dispose(); // 0x101FCE70 + protected override void Finalize(); // 0x101FCB30 + protected virtual void Dispose(bool disposing); // 0x101FC480 + protected virtual void Transform(byte[] input, byte[] output); // 0x101FD290 + protected abstract void ECB(byte[] input, byte[] output); + protected virtual void CBC(byte[] input, byte[] output); // 0x101FC060 + protected virtual void CFB(byte[] input, byte[] output); // 0x101FC180 + protected virtual void OFB(byte[] input, byte[] output); // 0x101FCD90 + protected virtual void CTS(byte[] input, byte[] output); // 0x101FC330 + private void CheckInput(byte[] inputBuffer, int inputOffset, int inputCount); // 0x101FC380 + public virtual int TransformBlock(byte[] inputBuffer, int inputOffset, int inputCount, byte[] outputBuffer, int outputOffset); // 0x101FD010 + private int InternalTransformBlock(byte[] inputBuffer, int inputOffset, int inputCount, byte[] outputBuffer, int outputOffset); // 0x101FCBF0 + private void Random(byte[] buffer, int start, int length); // 0x101FCDE0 + private void ThrowBadPaddingException(PaddingMode padding, int length, int position); // 0x101FCEA0 + private byte[] FinalEncrypt(byte[] inputBuffer, int inputOffset, int inputCount); // 0x101FC7F0 + private byte[] FinalDecrypt(byte[] inputBuffer, int inputOffset, int inputCount); // 0x101FC4D0 + public virtual byte[] TransformFinalBlock(byte[] inputBuffer, int inputOffset, int inputCount); // 0x101FD1F0 +} + +// Namespace: Mono.Security.X509.Extensions +internal class BasicConstraintsExtension : X509Extension // TypeDefIndex: 177 +{ + // Fields + public const int NoPathLengthConstraint = -1; // 0x00 + private bool cA; // 0x14 + private int pathLenConstraint; // 0x18 + + // Properties + public bool CertificateAuthority { get; set; } // 0x100C5670 0x10142260 + public override string Name { get; } // 0x101E8BB0 + public int PathLenConstraint { get; set; } // 0x100EE580 0x101E8BE0 + + // Methods + public void .ctor(); // 0x101E8B50 + public void .ctor(ASN1 asn1); // 0x101E8B40 + public void .ctor(X509Extension extension); // 0x101E8BA0 + protected override void Decode(); // 0x101E8810 + protected override void Encode(); // 0x101E8920 + public override string ToString(); // 0x101E8A30 +} + +// Namespace: Mono.Security.X509.Extensions +internal enum KeyUsages // TypeDefIndex: 178 +{ + none = 0, + encipherOnly = 1, + cRLSign = 2, + keyCertSign = 4, + keyAgreement = 8, + dataEncipherment = 16, + keyEncipherment = 32, + nonRepudiation = 64, + digitalSignature = 128, + decipherOnly = 2048 +} + +// Namespace: Mono.Security.X509.Extensions +internal class KeyUsageExtension : X509Extension // TypeDefIndex: 179 +{ + // Fields + private int kubits; // 0x14 + + // Properties + public KeyUsages KeyUsage { get; set; } // 0x100EF0C0 0x101EA240 + public override string Name { get; } // 0x101EA210 + + // Methods + public void .ctor(ASN1 asn1); // 0x101E8B40 + public void .ctor(X509Extension extension); // 0x101E8BA0 + public void .ctor(); // 0x101EA1D0 + protected override void Decode(); // 0x101E9B80 + protected override void Encode(); // 0x101E9C80 + public bool Support(KeyUsages usage); // 0x101E9E20 + public override string ToString(); // 0x101E9ED0 +} + +// Namespace: Mono.Security.X509.Extensions +internal class SubjectKeyIdentifierExtension : X509Extension // TypeDefIndex: 180 +{ + // Fields + private byte[] ski; // 0x14 + + // Properties + public override string Name { get; } // 0x101FC030 + public byte[] Identifier { get; } // 0x101FBFC0 + + // Methods + public void .ctor(); // 0x101FBF80 + public void .ctor(ASN1 asn1); // 0x101E8B40 + public void .ctor(X509Extension extension); // 0x101E8BA0 + protected override void Decode(); // 0x101FBDB0 + public override string ToString(); // 0x101FBE60 +} + +// Namespace: Mono.Security.X509 +internal class PKCS5 // TypeDefIndex: 181 +{ + // Fields + public const string pbeWithMD2AndDESCBC = "1.2.840.113549.1.5.1"; // 0x00 + public const string pbeWithMD5AndDESCBC = "1.2.840.113549.1.5.3"; // 0x00 + public const string pbeWithMD2AndRC2CBC = "1.2.840.113549.1.5.4"; // 0x00 + public const string pbeWithMD5AndRC2CBC = "1.2.840.113549.1.5.6"; // 0x00 + public const string pbeWithSHA1AndDESCBC = "1.2.840.113549.1.5.10"; // 0x00 + public const string pbeWithSHA1AndRC2CBC = "1.2.840.113549.1.5.11"; // 0x00 + + // Methods + public void .ctor(); // 0x100BF000 +} + +// Namespace: Mono.Security.X509 +internal class PKCS9 // TypeDefIndex: 182 +{ + // Fields + public const string friendlyName = "1.2.840.113549.1.9.20"; // 0x00 + public const string localKeyId = "1.2.840.113549.1.9.21"; // 0x00 + + // Methods + public void .ctor(); // 0x100BF000 +} + +// Namespace: Mono.Security.X509 +internal class SafeBag // TypeDefIndex: 183 +{ + // Fields + private string _bagOID; // 0x08 + private ASN1 _asn1; // 0x0C + + // Properties + public string BagOID { get; } // 0x100BF0C0 + public ASN1 ASN1 { get; } // 0x100C5B30 + + // Methods + public void .ctor(string bagOID, ASN1 asn1); // 0x100F97B0 +} + +// Namespace: Mono.Security.X509 +internal class PKCS12 : ICloneable // TypeDefIndex: 184 +{ + // Fields + public const string pbeWithSHAAnd128BitRC4 = "1.2.840.113549.1.12.1.1"; // 0x00 + public const string pbeWithSHAAnd40BitRC4 = "1.2.840.113549.1.12.1.2"; // 0x00 + public const string pbeWithSHAAnd3KeyTripleDESCBC = "1.2.840.113549.1.12.1.3"; // 0x00 + public const string pbeWithSHAAnd2KeyTripleDESCBC = "1.2.840.113549.1.12.1.4"; // 0x00 + public const string pbeWithSHAAnd128BitRC2CBC = "1.2.840.113549.1.12.1.5"; // 0x00 + public const string pbeWithSHAAnd40BitRC2CBC = "1.2.840.113549.1.12.1.6"; // 0x00 + public const string keyBag = "1.2.840.113549.1.12.10.1.1"; // 0x00 + public const string pkcs8ShroudedKeyBag = "1.2.840.113549.1.12.10.1.2"; // 0x00 + public const string certBag = "1.2.840.113549.1.12.10.1.3"; // 0x00 + public const string crlBag = "1.2.840.113549.1.12.10.1.4"; // 0x00 + public const string secretBag = "1.2.840.113549.1.12.10.1.5"; // 0x00 + public const string safeContentsBag = "1.2.840.113549.1.12.10.1.6"; // 0x00 + public const string x509Certificate = "1.2.840.113549.1.9.22.1"; // 0x00 + public const string sdsiCertificate = "1.2.840.113549.1.9.22.2"; // 0x00 + public const string x509Crl = "1.2.840.113549.1.9.23.1"; // 0x00 + public const int CryptoApiPasswordLimit = 32; // 0x00 + private static int recommendedIterationCount; // 0x00 + private byte[] _password; // 0x08 + private ArrayList _keyBags; // 0x0C + private ArrayList _secretBags; // 0x10 + private X509CertificateCollection _certs; // 0x14 + private bool _keyBagsChanged; // 0x18 + private bool _secretBagsChanged; // 0x19 + private bool _certsChanged; // 0x1A + private int _iterations; // 0x1C + private ArrayList _safeBags; // 0x20 + private RandomNumberGenerator _rng; // 0x24 + private static int password_max_length; // 0x04 + private static Dictionary`2 <>f__switch$map8; // 0x08 + private static Dictionary`2 <>f__switch$map9; // 0x0C + private static Dictionary`2 <>f__switch$mapA; // 0x10 + private static Dictionary`2 <>f__switch$mapB; // 0x14 + private static Dictionary`2 <>f__switch$mapC; // 0x18 + private static Dictionary`2 <>f__switch$mapD; // 0x1C + private static Dictionary`2 <>f__switch$mapE; // 0x20 + private static Dictionary`2 <>f__switch$mapF; // 0x24 + + // Properties + public string Password { set; } // 0x101F37B0 + public int IterationCount { get; set; } // 0x100F85F0 0x10113F50 + public ArrayList Keys { get; } // 0x101F2EA0 + public ArrayList Secrets { get; } // 0x101F3430 + public X509CertificateCollection Certificates { get; } // 0x101F2BB0 + internal RandomNumberGenerator RNG { get; } // 0x101F3410 + public static int MaximumPasswordLength { get; set; } // 0x101F3370 0x101F36D0 + + // Methods + public void .ctor(); // 0x101F2A30 + public void .ctor(byte[] data); // 0x101F2B60 + public void .ctor(byte[] data, string password); // 0x101F2B00 + public void .ctor(byte[] data, byte[] password); // 0x101F2B30 + private static void .cctor(); // 0x101F29F0 + private void Decode(byte[] data); // 0x101EB800 + protected override void Finalize(); // 0x101EC4D0 + private bool Compare(byte[] expected, byte[] actual); // 0x101EB780 + private SymmetricAlgorithm GetSymmetricAlgorithm(string algorithmOid, byte[] salt, int iterationCount); // 0x101EF6D0 + public byte[] Decrypt(string algorithmOid, byte[] salt, int iterationCount, byte[] encryptedData); // 0x101EBFA0 + public byte[] Decrypt(EncryptedData ed); // 0x101EBEA0 + public byte[] Encrypt(string algorithmOid, byte[] salt, int iterationCount, byte[] data); // 0x101EC0F0 + private DSAParameters GetExistingParameters(out bool found); // 0x101EF100 + private void AddPrivateKey(PrivateKeyInfo pki); // 0x101EAB00 + private void ReadSafeBag(ASN1 safeBag); // 0x101F1070 + private ASN1 Pkcs8ShroudedKeyBagSafeBag(AsymmetricAlgorithm aa, IDictionary attributes); // 0x101F07C0 + private ASN1 KeyBagSafeBag(AsymmetricAlgorithm aa, IDictionary attributes); // 0x101EFB00 + private ASN1 SecretBagSafeBag(byte[] secret, IDictionary attributes); // 0x101F2330 + private ASN1 CertificateSafeBag(X509Certificate x509, IDictionary attributes); // 0x101EAE10 + private byte[] MAC(byte[] password, byte[] salt, int iterations, byte[] data); // 0x101F06B0 + public byte[] GetBytes(); // 0x101ED4F0 + private ContentInfo EncryptedContentInfo(ASN1 safeBags, string algorithmOid); // 0x101EC230 + public void AddCertificate(X509Certificate cert); // 0x101EA520 + public void AddCertificate(X509Certificate cert, IDictionary attributes); // 0x101EA2E0 + public void RemoveCertificate(X509Certificate cert); // 0x101F17A0 + public void RemoveCertificate(X509Certificate cert, IDictionary attrs); // 0x101F17C0 + private bool CompareAsymmetricAlgorithm(AsymmetricAlgorithm a1, AsymmetricAlgorithm a2); // 0x101EB6B0 + public void AddPkcs8ShroudedKeyBag(AsymmetricAlgorithm aa); // 0x101EAAE0 + public void AddPkcs8ShroudedKeyBag(AsymmetricAlgorithm aa, IDictionary attributes); // 0x101EA7E0 + public void RemovePkcs8ShroudedKeyBag(AsymmetricAlgorithm aa); // 0x101F1DB0 + public void AddKeyBag(AsymmetricAlgorithm aa); // 0x101EA7C0 + public void AddKeyBag(AsymmetricAlgorithm aa, IDictionary attributes); // 0x101EA540 + public void RemoveKeyBag(AsymmetricAlgorithm aa); // 0x101F1B70 + public void AddSecretBag(byte[] secret); // 0x101EADF0 + public void AddSecretBag(byte[] secret, IDictionary attributes); // 0x101EAC40 + public void RemoveSecretBag(byte[] secret); // 0x101F2070 + public AsymmetricAlgorithm GetAsymmetricAlgorithm(IDictionary attrs); // 0x101EC5A0 + public byte[] GetSecret(IDictionary attrs); // 0x101EF2F0 + public X509Certificate GetCertificate(IDictionary attrs); // 0x101EECB0 + public IDictionary GetAttributes(AsymmetricAlgorithm aa); // 0x101ECF60 + public IDictionary GetAttributes(X509Certificate cert); // 0x101ECB70 + public void SaveToFile(string filename); // 0x101F21D0 + public object Clone(); // 0x101EB5A0 + private static byte[] LoadFile(string filename); // 0x101F03A0 + public static PKCS12 LoadFromFile(string filename); // 0x101F05E0 + public static PKCS12 LoadFromFile(string filename, string password); // 0x101F0530 +} + +// Namespace: +public class DeriveBytes // TypeDefIndex: 185 +{ + // Fields + private static byte[] keyDiversifier; // 0x00 + private static byte[] ivDiversifier; // 0x04 + private static byte[] macDiversifier; // 0x08 + private string _hashName; // 0x08 + private int _iterations; // 0x0C + private byte[] _password; // 0x10 + private byte[] _salt; // 0x14 + + // Properties + public string HashName { get; set; } // 0x100BF0C0 0x100EB270 + public int IterationCount { get; set; } // 0x100C5B30 0x100C5B50 + public byte[] Password { get; set; } // 0x10160C80 0x10160D60 + public byte[] Salt { get; set; } // 0x10160CF0 0x10160DF0 + + // Methods + public void .ctor(); // 0x100BF000 + private static void .cctor(); // 0x10160BE0 + private void Adjust(byte[] a, int aOff, byte[] b); // 0x10160630 + private byte[] Derive(byte[] diversifier, int n); // 0x10160840 + public byte[] DeriveKey(int size); // 0x10160780 + public byte[] DeriveIV(int size); // 0x10160720 + public byte[] DeriveMAC(int size); // 0x101607E0 +} + +// Namespace: +public enum Purpose // TypeDefIndex: 186 +{ + Key = 0, + IV = 1, + MAC = 2 +} + +// Namespace: Mono.Security.X509 +internal sealed class X501 // TypeDefIndex: 187 +{ + // Fields + private static byte[] countryName; // 0x00 + private static byte[] organizationName; // 0x04 + private static byte[] organizationalUnitName; // 0x08 + private static byte[] commonName; // 0x0C + private static byte[] localityName; // 0x10 + private static byte[] stateOrProvinceName; // 0x14 + private static byte[] streetAddress; // 0x18 + private static byte[] domainComponent; // 0x1C + private static byte[] userid; // 0x20 + private static byte[] email; // 0x24 + private static byte[] dnQualifier; // 0x28 + private static byte[] title; // 0x2C + private static byte[] surname; // 0x30 + private static byte[] givenName; // 0x34 + private static byte[] initial; // 0x38 + private static Dictionary`2 <>f__switch$map10; // 0x3C + + // Methods + private void .ctor(); // 0x100BF000 + private static void .cctor(); // 0x10165600 + public static string ToString(ASN1 seq); // 0x10165510 + public static string ToString(ASN1 seq, bool reversed, string separator, bool quotes); // 0x101653A0 + private static void AppendEntry(StringBuilder sb, ASN1 entry, bool quotes); // 0x10163930 + private static AttributeTypeAndValue GetAttributeFromOid(string attributeType); // 0x101641D0 + private static bool IsOid(string oid); // 0x10164A40 + private static AttributeTypeAndValue ReadAttribute(string value, int pos); // 0x10164B10 + private static bool IsHex(char c); // 0x10164970 + private static string ReadHex(string value, int pos); // 0x10164DE0 + private static int ReadEscaped(StringBuilder sb, string value, int pos); // 0x10164C70 + private static int ReadQuoted(StringBuilder sb, string value, int pos); // 0x10165030 + private static string ReadValue(string value, int pos); // 0x10165160 + public static ASN1 FromString(string rdn); // 0x10164090 +} + +// Namespace: Mono.Security.X509 +internal class X509Crl // TypeDefIndex: 188 +{ + // Fields + private string issuer; // 0x08 + private byte version; // 0x0C + private DateTime thisUpdate; // 0x10 + private DateTime nextUpdate; // 0x20 + private ArrayList entries; // 0x30 + private string signatureOID; // 0x34 + private byte[] signature; // 0x38 + private X509ExtensionCollection extensions; // 0x3C + private byte[] encoded; // 0x40 + private byte[] hash_value; // 0x44 + private static Dictionary`2 <>f__switch$map11; // 0x00 + private static Dictionary`2 <>f__switch$map12; // 0x04 + + // Properties + public ArrayList Entries { get; } // 0x1016B0F0 + public X509CrlEntry Item { get; } // 0x1016B3B0 + public X509CrlEntry Item { get; } // 0x1016B450 + public X509ExtensionCollection Extensions { get; } // 0x100EB220 + public byte[] Hash { get; } // 0x1016B150 + public string IssuerName { get; } // 0x100BF0C0 + public DateTime NextUpdate { get; } // 0x10168A50 + public DateTime ThisUpdate { get; } // 0x10168A30 + public string SignatureAlgorithm { get; } // 0x100E9ED0 + public byte[] Signature { get; } // 0x1016B4D0 + public byte[] RawData { get; } // 0x1016B460 + public byte Version { get; } // 0x100F8910 + public bool IsCurrent { get; } // 0x1016B200 + + // Methods + public void .ctor(byte[] crl); // 0x1016B030 + private void Parse(byte[] crl); // 0x1016A270 + public bool WasCurrent(DateTime instant); // 0x1016AED0 + public byte[] GetBytes(); // 0x10169E00 + private bool Compare(byte[] array1, byte[] array2); // 0x10165E80 + public X509CrlEntry GetCrlEntry(X509Certificate x509); // 0x1016A050 + public X509CrlEntry GetCrlEntry(byte[] serialNumber); // 0x10169E80 + public bool VerifySignature(X509Certificate x509); // 0x1016AC80 + private string GetHashName(); // 0x1016A0D0 + internal bool VerifySignature(DSA dsa); // 0x1016A9A0 + internal bool VerifySignature(RSA rsa); // 0x1016ABF0 + public bool VerifySignature(AsymmetricAlgorithm aa); // 0x1016A860 + public static X509Crl CreateFromFile(string filename); // 0x10169C50 +} + +// Namespace: +public class X509CrlEntry // TypeDefIndex: 189 +{ + // Fields + private byte[] sn; // 0x08 + private DateTime revocationDate; // 0x10 + private X509ExtensionCollection extensions; // 0x20 + + // Properties + public byte[] SerialNumber { get; } // 0x10169BE0 + public DateTime RevocationDate { get; } // 0x10168A30 + public X509ExtensionCollection Extensions { get; } // 0x100EACD0 + + // Methods + internal void .ctor(byte[] serialNumber, DateTime revocationDate, X509ExtensionCollection extensions); // 0x10169AB0 + internal void .ctor(ASN1 entry); // 0x10169B20 + public byte[] GetBytes(); // 0x101699B0 +} + +// Namespace: Mono.Security.X509 +internal class X509Certificate : ISerializable // TypeDefIndex: 190 +{ + // Fields + private ASN1 decoder; // 0x08 + private byte[] m_encodedcert; // 0x0C + private DateTime m_from; // 0x10 + private DateTime m_until; // 0x20 + private ASN1 issuer; // 0x30 + private string m_issuername; // 0x34 + private string m_keyalgo; // 0x38 + private byte[] m_keyalgoparams; // 0x3C + private ASN1 subject; // 0x40 + private string m_subject; // 0x44 + private byte[] m_publickey; // 0x48 + private byte[] signature; // 0x4C + private string m_signaturealgo; // 0x50 + private byte[] m_signaturealgoparams; // 0x54 + private byte[] certhash; // 0x58 + private RSA _rsa; // 0x5C + private DSA _dsa; // 0x60 + private int version; // 0x64 + private byte[] serialnumber; // 0x68 + private byte[] issuerUniqueID; // 0x6C + private byte[] subjectUniqueID; // 0x70 + private X509ExtensionCollection extensions; // 0x74 + private static string encoding_error; // 0x00 + private static Dictionary`2 <>f__switch$map13; // 0x04 + private static Dictionary`2 <>f__switch$map14; // 0x08 + private static Dictionary`2 <>f__switch$map15; // 0x0C + + // Properties + public DSA DSA { get; set; } // 0x10167C10 0x10168A70 + public X509ExtensionCollection Extensions { get; } // 0x10167E60 + public byte[] Hash { get; } // 0x10167E70 + public virtual string IssuerName { get; } // 0x100E9ED0 + public virtual string KeyAlgorithm { get; } // 0x100EB210 + public virtual byte[] KeyAlgorithmParameters { get; set; } // 0x10168320 0x101455F0 + public virtual byte[] PublicKey { get; } // 0x10168390 + public virtual RSA RSA { get; set; } // 0x10168400 0x10168A90 + public virtual byte[] RawData { get; } // 0x10168530 + public virtual byte[] SerialNumber { get; } // 0x101685A0 + public virtual byte[] Signature { get; } // 0x10168680 + public virtual string SignatureAlgorithm { get; } // 0x10132810 + public virtual byte[] SignatureAlgorithmParameters { get; } // 0x10168610 + public virtual string SubjectName { get; } // 0x10145530 + public virtual DateTime ValidFrom { get; } // 0x10168A30 + public virtual DateTime ValidUntil { get; } // 0x10168A50 + public int Version { get; } // 0x10145590 + public bool IsCurrent { get; } // 0x101680D0 + public byte[] IssuerUniqueIdentifier { get; } // 0x101682B0 + public byte[] SubjectUniqueIdentifier { get; } // 0x101689C0 + public bool IsSelfSigned { get; } // 0x10168220 + + // Methods + public void .ctor(byte[] data); // 0x10167970 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x101678A0 + private static void .cctor(); // 0x10167860 + private void Parse(byte[] data); // 0x10166AE0 + private byte[] GetUnsignedBigInteger(byte[] integer); // 0x10166940 + public bool WasCurrent(DateTime instant); // 0x10167760 + internal bool VerifySignature(DSA dsa); // 0x101676C0 + internal string GetHashNameFromOID(string oid); // 0x10166760 + internal bool VerifySignature(RSA rsa); // 0x10167260 + public bool VerifySignature(AsymmetricAlgorithm aa); // 0x101674E0 + public bool CheckSignature(byte[] hash, string hashAlgorithm, byte[] signature); // 0x101666F0 + public ASN1 GetIssuerName(); // 0x100EA580 + public ASN1 GetSubjectName(); // 0x100E9E80 + public virtual void GetObjectData(SerializationInfo info, StreamingContext context); // 0x101668F0 + private static byte[] PEM(string type, byte[] data); // 0x101669C0 +} + +// Namespace: Mono.Security.X509 +[Serializable] +internal class X509CertificateCollection : CollectionBase, IEnumerable // TypeDefIndex: 191 +{ + // Properties + public X509Certificate Item { get; set; } // 0x10166390 0x10166430 + + // Methods + public void .ctor(); // 0x100C5970 + public void .ctor(X509Certificate[] value); // 0x101662C0 + public void .ctor(X509CertificateCollection value); // 0x101662A0 + private IEnumerator System.Collections.IEnumerable.GetEnumerator(); // 0x10166260 + public int Add(X509Certificate value); // 0x10165DF0 + public void AddRange(X509Certificate[] value); // 0x10165C60 + public void AddRange(X509CertificateCollection value); // 0x10165D20 + public bool Contains(X509Certificate value); // 0x10165EF0 + public void CopyTo(X509Certificate[] array, int index); // 0x10165F10 + public X509CertificateEnumerator GetEnumerator(); // 0x10165F50 + public override int GetHashCode(); // 0x10165FE0 + public int IndexOf(X509Certificate value); // 0x10166020 + public void Insert(int index, X509Certificate value); // 0x101661E0 + public void Remove(X509Certificate value); // 0x10166220 + private bool Compare(byte[] array1, byte[] array2); // 0x10165E80 +} + +// Namespace: +public class X509CertificateEnumerator : IEnumerator // TypeDefIndex: 192 +{ + // Fields + private IEnumerator enumerator; // 0x08 + + // Properties + private object System.Collections.IEnumerator.Current { get; } // 0x101665B0 + public X509Certificate Current { get; } // 0x10166660 + + // Methods + public void .ctor(X509CertificateCollection mappings); // 0x10166600 + private bool System.Collections.IEnumerator.MoveNext(); // 0x10166510 + private void System.Collections.IEnumerator.Reset(); // 0x10166560 + public bool MoveNext(); // 0x10166470 + public void Reset(); // 0x101664C0 +} + +// Namespace: Mono.Security.X509 +internal class X509Chain // TypeDefIndex: 193 +{ + // Fields + private X509CertificateCollection roots; // 0x08 + private X509CertificateCollection certs; // 0x0C + private X509Certificate _root; // 0x10 + private X509CertificateCollection _chain; // 0x14 + private X509ChainStatusFlags _status; // 0x18 + + // Properties + public X509CertificateCollection Chain { get; } // 0x100EF0C0 + public X509Certificate Root { get; } // 0x100BFC20 + public X509ChainStatusFlags Status { get; } // 0x100EE580 + public X509CertificateCollection TrustAnchors { get; set; } // 0x10169870 0x100EB270 + + // Methods + public void .ctor(); // 0x10169780 + public void .ctor(X509CertificateCollection chain); // 0x101697D0 + public void LoadCertificate(X509Certificate x509); // 0x101696D0 + public void LoadCertificates(X509CertificateCollection collection); // 0x10169700 + public X509Certificate FindByIssuerName(string issuerName); // 0x10168DF0 + public bool Build(X509Certificate leaf); // 0x10168AB0 + public void Reset(); // 0x10169730 + private bool IsValid(X509Certificate cert); // 0x10169560 + private X509Certificate FindCertificateParent(X509Certificate child); // 0x10168FF0 + private X509Certificate FindCertificateRoot(X509Certificate potentialRoot); // 0x101691A0 + private bool IsTrusted(X509Certificate potentialTrusted); // 0x10169530 + private bool IsParent(X509Certificate child, X509Certificate parent); // 0x101693D0 +} + +// Namespace: Mono.Security.X509 +[Serializable] +internal enum X509ChainStatusFlags // TypeDefIndex: 194 +{ + NoError = 0, + NotTimeValid = 1, + NotTimeNested = 2, + NotSignatureValid = 8, + UntrustedRoot = 32, + InvalidBasicConstraints = 1024, + PartialChain = 65536 +} + +// Namespace: Mono.Security.X509 +internal class X509Extension // TypeDefIndex: 195 +{ + // Fields + protected string extnOid; // 0x08 + protected bool extnCritical; // 0x0C + protected ASN1 extnValue; // 0x10 + + // Properties + public ASN1 ASN1 { get; } // 0x1016CAB0 + public string Oid { get; } // 0x100BF0C0 + public bool Critical { get; set; } // 0x100F8910 0x1016CBD0 + public virtual string Name { get; } // 0x100BF0C0 + public ASN1 Value { get; } // 0x1016CBA0 + + // Methods + protected void .ctor(); // 0x1016C710 + public void .ctor(ASN1 asn1); // 0x1016C730 + public void .ctor(X509Extension extension); // 0x1016C9A0 + protected virtual void Decode(); // 0x100C5530 + protected virtual void Encode(); // 0x100C5530 + public override bool Equals(object obj); // 0x1016C2F0 + public byte[] GetBytes(); // 0x1016C450 + public override int GetHashCode(); // 0x10140690 + private void WriteLine(StringBuilder sb, int n, int pos); // 0x1016C560 + public override string ToString(); // 0x1016C490 +} + +// Namespace: Mono.Security.X509 +internal sealed class X509ExtensionCollection : CollectionBase, IEnumerable // TypeDefIndex: 196 +{ + // Fields + private bool readOnly; // 0x0C + + // Properties + public X509Extension Item { get; } // 0x1016C250 + public X509Extension Item { get; } // 0x1016C190 + + // Methods + public void .ctor(); // 0x100C5970 + public void .ctor(ASN1 asn1); // 0x1016C0B0 + private IEnumerator System.Collections.IEnumerable.GetEnumerator(); // 0x10166260 + public int Add(X509Extension extension); // 0x1016B7E0 + public void AddRange(X509Extension[] extension); // 0x1016B540 + public void AddRange(X509ExtensionCollection collection); // 0x1016B640 + public bool Contains(X509Extension extension); // 0x1016B8C0 + public bool Contains(string oid); // 0x1016B8A0 + public void CopyTo(X509Extension[] extensions, int index); // 0x1016BA10 + public int IndexOf(X509Extension extension); // 0x1016BD90 + public int IndexOf(string oid); // 0x1016BC20 + public void Insert(int index, X509Extension extension); // 0x1016BEF0 + public void Remove(X509Extension extension); // 0x1016C020 + public void Remove(string oid); // 0x1016BF80 + public byte[] GetBytes(); // 0x1016BAA0 +} + +// Namespace: Mono.Security.X509 +internal class X509Store // TypeDefIndex: 197 +{ + // Fields + private string _storePath; // 0x08 + private X509CertificateCollection _certificates; // 0x0C + private ArrayList _crls; // 0x10 + private bool _crl; // 0x14 + private string _name; // 0x18 + + // Properties + public X509CertificateCollection Certificates { get; } // 0x1016DF20 + public ArrayList Crls { get; } // 0x1016DF50 + public string Name { get; } // 0x1016DFC0 + + // Methods + internal void .ctor(string path, bool crl); // 0x1016DEF0 + public void Clear(); // 0x1016D540 + public void Import(X509Certificate certificate); // 0x1016D810 + public void Import(X509Crl crl); // 0x1016D9C0 + public void Remove(X509Certificate certificate); // 0x1016DDF0 + public void Remove(X509Crl crl); // 0x1016DE70 + private string GetUniqueName(X509Certificate certificate); // 0x1016D790 + private string GetUniqueName(X509Crl crl); // 0x1016D690 + private byte[] GetUniqueName(X509ExtensionCollection extensions); // 0x1016D710 + private string GetUniqueName(string method, byte[] name, string fileExtension); // 0x1016D590 + private byte[] Load(string filename); // 0x1016DC60 + private X509Certificate LoadCertificate(string filename); // 0x1016DBA0 + private X509Crl LoadCrl(string filename); // 0x1016DC00 + private bool CheckStore(string path, bool throwException); // 0x1016D430 + private X509CertificateCollection BuildCertificatesCollection(string storeName); // 0x1016D130 + private ArrayList BuildCrlsCollection(string storeName); // 0x1016D2B0 +} + +// Namespace: Mono.Security.X509 +internal sealed class X509StoreManager // TypeDefIndex: 198 +{ + // Fields + private static X509Stores _userStore; // 0x00 + private static X509Stores _machineStore; // 0x04 + + // Properties + public static X509Stores CurrentUser { get; } // 0x1016CBE0 + public static X509Stores LocalMachine { get; } // 0x1016CE20 + public static X509CertificateCollection IntermediateCACertificates { get; } // 0x1016CC90 + public static ArrayList IntermediateCACrls { get; } // 0x1016CD60 + public static X509CertificateCollection TrustedRootCertificates { get; } // 0x1016CF90 + public static ArrayList TrustedRootCACrls { get; } // 0x1016CED0 + public static X509CertificateCollection UntrustedCertificates { get; } // 0x1016D060 + + // Methods + private void .ctor(); // 0x100BF000 +} + +// Namespace: Mono.Security.X509 +internal class X509Stores // TypeDefIndex: 199 +{ + // Fields + private string _storePath; // 0x08 + private X509Store _personal; // 0x0C + private X509Store _other; // 0x10 + private X509Store _intermediate; // 0x14 + private X509Store _trusted; // 0x18 + private X509Store _untrusted; // 0x1C + + // Properties + public X509Store Personal { get; } // 0x1016E3C0 + public X509Store OtherPeople { get; } // 0x1016E330 + public X509Store IntermediateCA { get; } // 0x1016E2A0 + public X509Store TrustedRoot { get; } // 0x1016E450 + public X509Store Untrusted { get; } // 0x1016E4E0 + + // Methods + internal void .ctor(string path); // 0x10113500 + public void Clear(); // 0x1016E050 + public X509Store Open(string storeName, bool create); // 0x1016E1D0 +} + +// Namespace: +public class Names // TypeDefIndex: 200 +{ + // Fields + public const string Personal = "My"; // 0x00 + public const string OtherPeople = "AddressBook"; // 0x00 + public const string IntermediateCA = "CA"; // 0x00 + public const string TrustedRoot = "Trust"; // 0x00 + public const string Untrusted = "Disallowed"; // 0x00 + + // Methods + public void .ctor(); // 0x100BF000 +} + +// Namespace: Mono.Security.X509 +internal class X520 // TypeDefIndex: 201 +{ + // Methods + public void .ctor(); // 0x100BF000 +} + +// Namespace: +public abstract class AttributeTypeAndValue // TypeDefIndex: 202 +{ + // Fields + private string oid; // 0x08 + private string attrValue; // 0x0C + private int upperBound; // 0x10 + private byte encoding; // 0x14 + + // Properties + public string Value { get; set; } // 0x100C5B30 0x101604D0 + public ASN1 ASN1 { get; } // 0x10160380 + + // Methods + protected void .ctor(string oid, int upperBound); // 0x10160470 + protected void .ctor(string oid, int upperBound, byte encoding); // 0x101604A0 + internal ASN1 GetASN1(byte encoding); // 0x10160160 + internal ASN1 GetASN1(); // 0x10160380 + public byte[] GetBytes(byte encoding); // 0x101603A0 + public byte[] GetBytes(); // 0x101603E0 + private byte SelectBestEncoding(); // 0x10160420 +} + +// Namespace: +public class Name : AttributeTypeAndValue // TypeDefIndex: 203 +{ + // Methods + public void .ctor(); // 0x10161050 +} + +// Namespace: +public class CommonName : AttributeTypeAndValue // TypeDefIndex: 204 +{ + // Methods + public void .ctor(); // 0x10160590 +} + +// Namespace: +public class SerialNumber : AttributeTypeAndValue // TypeDefIndex: 205 +{ + // Methods + public void .ctor(); // 0x101615E0 +} + +// Namespace: +public class LocalityName : AttributeTypeAndValue // TypeDefIndex: 206 +{ + // Methods + public void .ctor(); // 0x10161000 +} + +// Namespace: +public class StateOrProvinceName : AttributeTypeAndValue // TypeDefIndex: 207 +{ + // Methods + public void .ctor(); // 0x101637F0 +} + +// Namespace: +public class OrganizationName : AttributeTypeAndValue // TypeDefIndex: 208 +{ + // Methods + public void .ctor(); // 0x101610D0 +} + +// Namespace: +public class OrganizationalUnitName : AttributeTypeAndValue // TypeDefIndex: 209 +{ + // Methods + public void .ctor(); // 0x10161120 +} + +// Namespace: +public class EmailAddress : AttributeTypeAndValue // TypeDefIndex: 210 +{ + // Methods + public void .ctor(); // 0x10160F10 +} + +// Namespace: +public class DomainComponent : AttributeTypeAndValue // TypeDefIndex: 211 +{ + // Methods + public void .ctor(); // 0x10160EC0 +} + +// Namespace: +public class UserId : AttributeTypeAndValue // TypeDefIndex: 212 +{ + // Methods + public void .ctor(); // 0x101638E0 +} + +// Namespace: +public class Oid : AttributeTypeAndValue // TypeDefIndex: 213 +{ + // Methods + public void .ctor(string oid); // 0x101610A0 +} + +// Namespace: +public class Title : AttributeTypeAndValue // TypeDefIndex: 214 +{ + // Methods + public void .ctor(); // 0x10163890 +} + +// Namespace: +public class CountryName : AttributeTypeAndValue // TypeDefIndex: 215 +{ + // Methods + public void .ctor(); // 0x101605E0 +} + +// Namespace: +public class DnQualifier : AttributeTypeAndValue // TypeDefIndex: 216 +{ + // Methods + public void .ctor(); // 0x10160E70 +} + +// Namespace: +public class Surname : AttributeTypeAndValue // TypeDefIndex: 217 +{ + // Methods + public void .ctor(); // 0x10163840 +} + +// Namespace: +public class GivenName : AttributeTypeAndValue // TypeDefIndex: 218 +{ + // Methods + public void .ctor(); // 0x10160F60 +} + +// Namespace: +public class Initial : AttributeTypeAndValue // TypeDefIndex: 219 +{ + // Methods + public void .ctor(); // 0x10160FB0 +} + +// Namespace: Mono.Security +internal class ASN1 // TypeDefIndex: 220 +{ + // Fields + private byte m_nTag; // 0x08 + private byte[] m_aValue; // 0x0C + private ArrayList elist; // 0x10 + + // Properties + public int Count { get; } // 0x1029B420 + public byte Tag { get; } // 0x100EA020 + public int Length { get; } // 0x1029B560 + public byte[] Value { get; set; } // 0x1029B580 0x1029B610 + public ASN1 Item { get; } // 0x1029B450 + + // Methods + public void .ctor(); // 0x1029B3A0 + public void .ctor(byte tag); // 0x1029B3C0 + public void .ctor(byte tag, byte[] data); // 0x1029B3F0 + public void .ctor(byte[] data); // 0x1029B260 + private bool CompareArray(byte[] array1, byte[] array2); // 0x1029A4C0 + public bool Equals(byte[] asn1); // 0x1029A8F0 + public bool CompareValue(byte[] value); // 0x1029A540 + public ASN1 Add(ASN1 asn1); // 0x1029A440 + public virtual byte[] GetBytes(); // 0x1029A920 + protected void Decode(byte[] asn1, int anPos, int anLength); // 0x1029A660 + protected void DecodeTLV(byte[] asn1, int pos, out byte tag, out int length, out byte[] content); // 0x1029A560 + public ASN1 Element(int index, byte anTag); // 0x1029A7E0 + public override string ToString(); // 0x1029B0A0 + public void SaveToFile(string filename); // 0x1029AF30 +} + +// Namespace: Mono.Security +internal static class ASN1Convert // TypeDefIndex: 221 +{ + // Methods + public static ASN1 FromDateTime(DateTime dt); // 0x10299730 + public static ASN1 FromInt32(int value); // 0x10299950 + public static ASN1 FromOid(string oid); // 0x10299B40 + public static ASN1 FromUnsignedBigInteger(byte[] big); // 0x10299BE0 + public static int ToInt32(ASN1 asn1); // 0x1029A0F0 + public static string ToOid(ASN1 asn1); // 0x1029A1F0 + public static DateTime ToDateTime(ASN1 time); // 0x10299CA0 +} + +// Namespace: Mono.Security +internal sealed class BitConverterLE // TypeDefIndex: 222 +{ + // Methods + private void .ctor(); // 0x100BF000 + private static byte[] GetUShortBytes(void * bytes); // 0x102A0F70 + private static byte[] GetUIntBytes(void * bytes); // 0x102A0BD0 + private static byte[] GetULongBytes(void * bytes); // 0x102A0D10 + internal static byte[] GetBytes(bool value); // 0x102A0B70 + internal static byte[] GetBytes(char value); // 0x102A0B50 + internal static byte[] GetBytes(short value); // 0x102A0B50 + internal static byte[] GetBytes(int value); // 0x102A0B30 + internal static byte[] GetBytes(long value); // 0x102A0B10 + internal static byte[] GetBytes(ushort value); // 0x102A0B50 + internal static byte[] GetBytes(uint value); // 0x102A0B30 + internal static byte[] GetBytes(ulong value); // 0x102A0B10 + internal static byte[] GetBytes(float value); // 0x102A0B30 + internal static byte[] GetBytes(double value); // 0x102A0B10 + private static void UShortFromBytes(void * dst, byte[] src, int startIndex); // 0x102A13A0 + private static void UIntFromBytes(void * dst, byte[] src, int startIndex); // 0x102A1180 + private static void ULongFromBytes(void * dst, byte[] src, int startIndex); // 0x102A12E0 + internal static bool ToBoolean(byte[] value, int startIndex); // 0x102A1050 + internal static char ToChar(byte[] value, int startIndex); // 0x102A1090 + internal static short ToInt16(byte[] value, int startIndex); // 0x102A1090 + internal static int ToInt32(byte[] value, int startIndex); // 0x102A10F0 + internal static long ToInt64(byte[] value, int startIndex); // 0x102A1120 + internal static ushort ToUInt16(byte[] value, int startIndex); // 0x102A1090 + internal static uint ToUInt32(byte[] value, int startIndex); // 0x102A10F0 + internal static ulong ToUInt64(byte[] value, int startIndex); // 0x102A1120 + internal static float ToSingle(byte[] value, int startIndex); // 0x102A1150 + internal static double ToDouble(byte[] value, int startIndex); // 0x102A10C0 +} + +// Namespace: Mono.Security +internal sealed class PKCS7 // TypeDefIndex: 223 +{ + // Methods + private void .ctor(); // 0x100BF000 + public static ASN1 Attribute(string oid, ASN1 value); // 0x101F39F0 + public static ASN1 AlgorithmIdentifier(string oid); // 0x101F3960 + public static ASN1 AlgorithmIdentifier(string oid, ASN1 parameters); // 0x101F38F0 + public static ASN1 IssuerAndSerialNumber(X509Certificate x509); // 0x101F3A90 +} + +// Namespace: +public class Oid // TypeDefIndex: 224 +{ + // Fields + public const string rsaEncryption = "1.2.840.113549.1.1.1"; // 0x00 + public const string data = "1.2.840.113549.1.7.1"; // 0x00 + public const string signedData = "1.2.840.113549.1.7.2"; // 0x00 + public const string envelopedData = "1.2.840.113549.1.7.3"; // 0x00 + public const string signedAndEnvelopedData = "1.2.840.113549.1.7.4"; // 0x00 + public const string digestedData = "1.2.840.113549.1.7.5"; // 0x00 + public const string encryptedData = "1.2.840.113549.1.7.6"; // 0x00 + public const string contentType = "1.2.840.113549.1.9.3"; // 0x00 + public const string messageDigest = "1.2.840.113549.1.9.4"; // 0x00 + public const string signingTime = "1.2.840.113549.1.9.5"; // 0x00 + public const string countersignature = "1.2.840.113549.1.9.6"; // 0x00 + + // Methods + public void .ctor(); // 0x100BF000 +} + +// Namespace: +public class ContentInfo // TypeDefIndex: 225 +{ + // Fields + private string contentType; // 0x08 + private ASN1 content; // 0x0C + + // Properties + public ASN1 ASN1 { get; } // 0x101E8FB0 + public ASN1 Content { get; set; } // 0x100C5B30 0x100C5B50 + public string ContentType { get; set; } // 0x100BF0C0 0x100EB270 + + // Methods + public void .ctor(); // 0x101E8F50 + public void .ctor(string oid); // 0x101E8EA0 + public void .ctor(byte[] data); // 0x101E8F00 + public void .ctor(ASN1 asn1); // 0x101E8D60 + internal ASN1 GetASN1(); // 0x101E8C90 + public byte[] GetBytes(); // 0x101E8D20 +} + +// Namespace: +public class EncryptedData // TypeDefIndex: 226 +{ + // Fields + private byte _version; // 0x08 + private ContentInfo _content; // 0x0C + private ContentInfo _encryptionAlgorithm; // 0x10 + private byte[] _encrypted; // 0x14 + + // Properties + public ASN1 ASN1 { get; } // 0x100C5600 + public ContentInfo ContentInfo { get; } // 0x100C5B30 + public ContentInfo EncryptionAlgorithm { get; } // 0x100BFC20 + public byte[] EncryptedContent { get; } // 0x101E93F0 + public byte Version { get; set; } // 0x100EA020 0x10155000 + + // Methods + public void .ctor(); // 0x101E9380 + public void .ctor(byte[] data); // 0x101E93A0 + public void .ctor(ASN1 asn1); // 0x101E9110 + internal ASN1 GetASN1(); // 0x100C5600 + public byte[] GetBytes(); // 0x101E9100 +} + +// Namespace: +public class EnvelopedData // TypeDefIndex: 227 +{ + // Fields + private byte _version; // 0x08 + private ContentInfo _content; // 0x0C + private ContentInfo _encryptionAlgorithm; // 0x10 + private ArrayList _recipientInfos; // 0x14 + private byte[] _encrypted; // 0x18 + + // Properties + public ArrayList RecipientInfos { get; } // 0x100EF0C0 + public ASN1 ASN1 { get; } // 0x101E9460 + public ContentInfo ContentInfo { get; } // 0x100C5B30 + public ContentInfo EncryptionAlgorithm { get; } // 0x100BFC20 + public byte[] EncryptedContent { get; } // 0x101E9B10 + public byte Version { get; set; } // 0x100EA020 0x10155000 + + // Methods + public void .ctor(); // 0x101E9A10 + public void .ctor(byte[] data); // 0x101E99C0 + public void .ctor(ASN1 asn1); // 0x101E9500 + internal ASN1 GetASN1(); // 0x101E9460 + public byte[] GetBytes(); // 0x101E94A0 +} + +// Namespace: +public class RecipientInfo // TypeDefIndex: 228 +{ + // Fields + private int _version; // 0x08 + private string _oid; // 0x0C + private byte[] _key; // 0x10 + private byte[] _ski; // 0x14 + private string _issuer; // 0x18 + private byte[] _serial; // 0x1C + + // Properties + public string Oid { get; } // 0x100C5B30 + public byte[] Key { get; } // 0x101F67E0 + public byte[] SubjectKeyIdentifier { get; } // 0x101F68C0 + public string Issuer { get; } // 0x100EE580 + public byte[] Serial { get; } // 0x101F6850 + public int Version { get; } // 0x100BF0C0 + + // Methods + public void .ctor(); // 0x100BF000 + public void .ctor(ASN1 data); // 0x101F6620 +} + +// Namespace: +public class SignedData // TypeDefIndex: 229 +{ + // Fields + private byte version; // 0x08 + private string hashAlgorithm; // 0x0C + private ContentInfo contentInfo; // 0x10 + private X509CertificateCollection certs; // 0x14 + private ArrayList crls; // 0x18 + private SignerInfo signerInfo; // 0x1C + private bool mda; // 0x20 + private bool signed; // 0x21 + private static Dictionary`2 <>f__switch$map16; // 0x00 + + // Properties + public ASN1 ASN1 { get; } // 0x101F7E90 + public X509CertificateCollection Certificates { get; } // 0x100EF0C0 + public ContentInfo ContentInfo { get; } // 0x100BFC20 + public ArrayList Crls { get; } // 0x100EE580 + public string HashName { get; set; } // 0x100C5B30 0x101F7EA0 + public SignerInfo SignerInfo { get; } // 0x100F85F0 + public byte Version { get; set; } // 0x100EA020 0x10155000 + public bool UseAuthenticatedAttributes { get; set; } // 0x101B94D0 0x101D3670 + + // Methods + public void .ctor(); // 0x101F7DB0 + public void .ctor(byte[] data); // 0x101F7D60 + public void .ctor(ASN1 asn1); // 0x101F76C0 + public bool VerifySignature(AsymmetricAlgorithm aa); // 0x101F7310 + internal string OidToName(string oid); // 0x101F7180 + internal ASN1 GetASN1(); // 0x101F6930 + public byte[] GetBytes(); // 0x101F7140 +} + +// Namespace: +public class SignerInfo // TypeDefIndex: 230 +{ + // Fields + private byte version; // 0x08 + private X509Certificate x509; // 0x0C + private string hashAlgorithm; // 0x10 + private AsymmetricAlgorithm key; // 0x14 + private ArrayList authenticatedAttributes; // 0x18 + private ArrayList unauthenticatedAttributes; // 0x1C + private byte[] signature; // 0x20 + private string issuer; // 0x24 + private byte[] serial; // 0x28 + private byte[] ski; // 0x2C + + // Properties + public string IssuerName { get; } // 0x100EAD50 + public byte[] SerialNumber { get; } // 0x101F8AF0 + public byte[] SubjectKeyIdentifier { get; } // 0x101F8BD0 + public ASN1 ASN1 { get; } // 0x101F8AE0 + public ArrayList AuthenticatedAttributes { get; } // 0x100EE580 + public X509Certificate Certificate { get; set; } // 0x100C5B30 0x100C5B50 + public string HashName { get; set; } // 0x100BFC20 0x100C5B40 + public AsymmetricAlgorithm Key { get; set; } // 0x100EF0C0 0x10127B00 + public byte[] Signature { get; set; } // 0x101F8B60 0x101F8C40 + public ArrayList UnauthenticatedAttributes { get; } // 0x100F85F0 + public byte Version { get; set; } // 0x100EA020 0x10155000 + + // Methods + public void .ctor(); // 0x101F8A70 + public void .ctor(byte[] data); // 0x101F8680 + public void .ctor(ASN1 asn1); // 0x101F86D0 + internal ASN1 GetASN1(); // 0x101F7EC0 + public byte[] GetBytes(); // 0x101F8640 +} + +// Namespace: Mono.Security +internal sealed class StrongName // TypeDefIndex: 231 +{ + // Fields + private RSA rsa; // 0x08 + private byte[] publicKey; // 0x0C + private byte[] keyToken; // 0x10 + private string tokenAlgorithm; // 0x14 + private static object lockObject; // 0x00 + private static bool initialized; // 0x04 + + // Properties + public bool CanSign { get; } // 0x101FB530 + public RSA RSA { get; set; } // 0x101FBC10 0x101FBC70 + public byte[] PublicKey { get; } // 0x101FB800 + public byte[] PublicKeyToken { get; } // 0x101FB6F0 + public string TokenAlgorithm { get; set; } // 0x101FBC30 0x101FBC90 + + // Methods + public void .ctor(); // 0x100BF000 + public void .ctor(int keySize); // 0x101FB320 + public void .ctor(byte[] data); // 0x101FB370 + public void .ctor(RSA rsa); // 0x101FB4B0 + private static void .cctor(); // 0x101FB2D0 + private void InvalidateCache(); // 0x101F9FB0 + public byte[] GetBytes(); // 0x101F9F30 + private uint RVAtoPosition(uint r, int sections, byte[] headers); // 0x101FA520 + internal StrongNameSignature StrongHash(Stream stream, StrongNameOptions options); // 0x101FA8F0 + public byte[] Hash(string fileName); // 0x101F9F60 + public bool Sign(string fileName); // 0x101FA5B0 + public bool Verify(string fileName); // 0x101FAFA0 + public bool Verify(Stream stream); // 0x101FB0D0 + public static bool IsAssemblyStrongnamed(string assemblyName); // 0x101F9FD0 + public static bool VerifySignature(byte[] publicKey, int algorithm, byte[] hash, byte[] signature); // 0x101FAEA0 + private static bool Verify(RSA rsa, AssemblyHashAlgorithm algorithm, byte[] hash, byte[] signature); // 0x101FB230 +} + +// Namespace: +internal class StrongNameSignature // TypeDefIndex: 232 +{ + // Fields + private byte[] hash; // 0x08 + private byte[] signature; // 0x0C + private uint signaturePosition; // 0x10 + private uint signatureLength; // 0x14 + private uint metadataPosition; // 0x18 + private uint metadataLength; // 0x1C + private byte cliFlag; // 0x20 + private uint cliFlagPosition; // 0x24 + + // Properties + public byte[] Hash { get; set; } // 0x100BF0C0 0x100EB270 + public byte[] Signature { get; set; } // 0x100C5B30 0x100C5B50 + public uint MetadataPosition { get; set; } // 0x100EE580 0x10113F40 + public uint MetadataLength { get; set; } // 0x100F85F0 0x10113F50 + public uint SignaturePosition { get; set; } // 0x100BFC20 0x100C5B40 + public uint SignatureLength { get; set; } // 0x100EF0C0 0x10127B00 + public byte CliFlag { get; set; } // 0x101B94D0 0x101D3670 + public uint CliFlagPosition { get; set; } // 0x100EAD50 0x100EB240 + + // Methods + public void .ctor(); // 0x100BF000 +} + +// Namespace: +internal enum StrongNameOptions // TypeDefIndex: 233 +{ + Metadata = 0, + Signature = 1 +} + +// Namespace: Mono.Security +internal class StrongNameManager // TypeDefIndex: 234 +{ + // Fields + private static Hashtable mappings; // 0x00 + private static Hashtable tokens; // 0x04 + + // Methods + public void .ctor(); // 0x100BF000 + private static void .cctor(); // 0x100C5530 + public static void LoadConfig(string filename); // 0x101F8D90 + private static void LoadMapping(SecurityElement mapping); // 0x101F9030 + private static void LoadVerificationSettings(SecurityElement settings); // 0x101F9440 + public static byte[] GetMappedPublicKey(byte[] token); // 0x101F8CB0 + public static bool MustVerify(AssemblyName an); // 0x101F9980 + public override string ToString(); // 0x101F9AE0 +} + +// Namespace: +private class Element // TypeDefIndex: 235 +{ + // Fields + internal Hashtable assemblies; // 0x08 + + // Methods + public void .ctor(); // 0x101E90B0 + public void .ctor(string assembly, string users); // 0x101E9030 + public string GetUsers(string assembly); // 0x101E8FC0 +} + +// Namespace: Mono.Security +internal enum UriPartial // TypeDefIndex: 236 +{ + Scheme = 0, + Authority = 1, + Path = 2 +} + +// Namespace: Mono.Security +internal class Uri // TypeDefIndex: 237 +{ + // Fields + private bool isUnixFilePath; // 0x08 + private string source; // 0x0C + private string scheme; // 0x10 + private string host; // 0x14 + private int port; // 0x18 + private string path; // 0x1C + private string query; // 0x20 + private string fragment; // 0x24 + private string userinfo; // 0x28 + private bool isUnc; // 0x2C + private bool isOpaquePart; // 0x2D + private string[] segments; // 0x30 + private bool userEscaped; // 0x34 + private string cachedAbsoluteUri; // 0x38 + private string cachedToString; // 0x3C + private string cachedLocalPath; // 0x40 + private int cachedHashCode; // 0x44 + private bool reduce; // 0x48 + private static readonly string hexUpperChars; // 0x00 + public static readonly string SchemeDelimiter; // 0x04 + public static readonly string UriSchemeFile; // 0x08 + public static readonly string UriSchemeFtp; // 0x0C + public static readonly string UriSchemeGopher; // 0x10 + public static readonly string UriSchemeHttp; // 0x14 + public static readonly string UriSchemeHttps; // 0x18 + public static readonly string UriSchemeMailto; // 0x1C + public static readonly string UriSchemeNews; // 0x20 + public static readonly string UriSchemeNntp; // 0x24 + private static UriScheme[] schemes; // 0x28 + private static Dictionary`2 <>f__switch$map17; // 0x2C + + // Properties + public string AbsolutePath { get; } // 0x100F85F0 + public string AbsoluteUri { get; } // 0x10201B50 + public string Authority { get; } // 0x10201BD0 + public string Fragment { get; } // 0x100EAD50 + public string Host { get; } // 0x100EF0C0 + public bool IsDefaultPort { get; } // 0x10201C80 + public bool IsFile { get; } // 0x10201CE0 + public bool IsLoopback { get; } // 0x10201D60 + public bool IsUnc { get; } // 0x10201E40 + public string LocalPath { get; } // 0x10201E50 + public string PathAndQuery { get; } // 0x10202110 + public int Port { get; } // 0x100EE580 + public string Query { get; } // 0x100EACD0 + public string Scheme { get; } // 0x100BFC20 + public string[] Segments { get; } // 0x10202170 + public bool UserEscaped { get; } // 0x100C00E0 + public string UserInfo { get; } // 0x100EB040 + + // Methods + public void .ctor(string uriString); // 0x102019B0 + public void .ctor(string uriString, bool dontEscape); // 0x10201A90 + public void .ctor(string uriString, bool dontEscape, bool reduce); // 0x102018E0 + public void .ctor(Uri baseUri, string relativeUri); // 0x10201A70 + public void .ctor(Uri baseUri, string relativeUri, bool dontEscape); // 0x102011A0 + private static void .cctor(); // 0x10200E60 + internal static bool IsIPv4Address(string name); // 0x101FEFF0 + internal static bool IsDomainAddress(string name); // 0x101FED20 + public static bool CheckSchemeName(string schemeName); // 0x101FD6D0 + public override bool Equals(object comparant); // 0x101FD7C0 + public override int GetHashCode(); // 0x101FE050 + public string GetLeftPart(UriPartial part); // 0x101FE0F0 + public static int FromHex(char digit); // 0x101FDE90 + public static string HexEscape(char character); // 0x101FE870 + public static char HexUnescape(string pattern, int index); // 0x101FE9B0 + public static bool IsHexDigit(char digit); // 0x101FEE90 + public static bool IsHexEncoding(string pattern, int index); // 0x101FEED0 + public string MakeRelative(Uri toUri); // 0x101FF390 + public override string ToString(); // 0x10200BC0 + protected void Escape(); // 0x101FDDF0 + protected static string EscapeString(string str); // 0x101FDB20 + internal static string EscapeString(string str, bool escapeReserved, bool escapeHex, bool escapeBrackets); // 0x101FDB80 + protected void Parse(); // 0x10200820 + protected string Unescape(string str); // 0x10200CF0 + internal string Unescape(string str, bool excludeSharp); // 0x10200D10 + private void ParseAsWindowsUNC(string uriString); // 0x101FF920 + private void ParseAsWindowsAbsoluteFilePath(string uriString); // 0x101FF7F0 + private void ParseAsUnixAbsoluteFilePath(string uriString); // 0x101FF680 + private void Parse(string uriString); // 0x101FFAA0 + private static string Reduce(string path); // 0x102008A0 + internal static string GetSchemeDelimiter(string scheme); // 0x101FE730 + internal static int GetDefaultPort(string scheme); // 0x101FDF30 + private string GetOpaqueWiseSchemeDelimiter(); // 0x101FE5A0 + protected bool IsBadFileSystemCharacter(char ch); // 0x101FECB0 + protected static bool IsExcludedCharacter(char ch); // 0x101FEE20 + private static bool IsPredefinedScheme(string scheme); // 0x101FF180 + protected bool IsReservedCharacter(char ch); // 0x101FF340 +} + +// Namespace: +private struct UriScheme // TypeDefIndex: 238 +{ + // Fields + public string scheme; // 0x08 + public string delimiter; // 0x0C + public int defaultPort; // 0x10 + + // Methods + public void .ctor(string s, string d, int p); // 0x100074C0 +} + +// Namespace: Mono.Xml +internal class SecurityParser : SmallXmlParser, IContentHandler // TypeDefIndex: 239 +{ + // Fields + private SecurityElement root; // 0x38 + private SecurityElement current; // 0x3C + private Stack stack; // 0x40 + + // Methods + public void .ctor(); // 0x101614A0 + public void LoadXml(string xml); // 0x10161170 + public SecurityElement ToXml(); // 0x100EB210 + public void OnStartParsing(SmallXmlParser parser); // 0x100C5530 + public void OnProcessingInstruction(string name, string text); // 0x100C5530 + public void OnIgnorableWhitespace(string s); // 0x100C5530 + public void OnStartElement(string name, IAttrList attrs); // 0x101612D0 + public void OnEndElement(string name); // 0x10161260 + public void OnChars(string ch); // 0x101611F0 + public void OnEndParsing(SmallXmlParser parser); // 0x100C5530 +} + +// Namespace: Mono.Xml +internal class DefaultHandler : IContentHandler // TypeDefIndex: 240 +{ + // Methods + public void .ctor(); // 0x100BF000 + public void OnStartParsing(SmallXmlParser parser); // 0x100C5530 + public void OnEndParsing(SmallXmlParser parser); // 0x100C5530 + public void OnStartElement(string name, IAttrList attrs); // 0x100C5530 + public void OnEndElement(string name); // 0x100C5530 + public void OnChars(string s); // 0x100C5530 + public void OnIgnorableWhitespace(string s); // 0x100C5530 + public void OnProcessingInstruction(string name, string text); // 0x100C5530 +} + +// Namespace: Mono.Xml +internal class SmallXmlParser // TypeDefIndex: 241 +{ + // Fields + private IContentHandler handler; // 0x08 + private TextReader reader; // 0x0C + private Stack elementNames; // 0x10 + private Stack xmlSpaces; // 0x14 + private string xmlSpace; // 0x18 + private StringBuilder buffer; // 0x1C + private char[] nameBuffer; // 0x20 + private bool isWhitespace; // 0x24 + private AttrListImpl attributes; // 0x28 + private int line; // 0x2C + private int column; // 0x30 + private bool resetColumn; // 0x34 + private static Dictionary`2 <>f__switch$map18; // 0x00 + + // Methods + public void .ctor(); // 0x101636E0 + private Exception Error(string msg); // 0x101617B0 + private Exception UnexpectedEndError(); // 0x10163610 + private bool IsNameChar(char c, bool start); // 0x10161B60 + private bool IsWhitespace(int c); // 0x10161C50 + public void SkipWhitespaces(); // 0x101635F0 + private void HandleWhitespaces(); // 0x10161A50 + public void SkipWhitespaces(bool expected); // 0x101634F0 + private int Peek(); // 0x10161EA0 + private int Read(); // 0x10163490 + public void Expect(int c); // 0x10161890 + private string ReadUntil(char until, bool handleReferences); // 0x10163360 + public string ReadName(); // 0x10162ED0 + public void Parse(TextReader input, IContentHandler handler); // 0x10161C90 + private void Cleanup(); // 0x101616E0 + public void ReadContent(); // 0x10162520 + private void HandleBufferedContent(); // 0x101619B0 + private void ReadCharacters(); // 0x101622B0 + private void ReadReference(); // 0x10163040 + private int ReadCharacterReference(); // 0x101621A0 + private void ReadAttribute(AttrListImpl a); // 0x10161ED0 + private void ReadCDATASection(); // 0x10162050 + private void ReadComment(); // 0x101623D0 +} + +// Namespace: +public interface IContentHandler // TypeDefIndex: 242 +{ + // Methods + void OnStartParsing(SmallXmlParser parser); + void OnEndParsing(SmallXmlParser parser); + void OnStartElement(string name, IAttrList attrs); + void OnEndElement(string name); + void OnProcessingInstruction(string name, string text); + void OnChars(string text); + void OnIgnorableWhitespace(string text); +} + +// Namespace: +public interface IAttrList // TypeDefIndex: 243 +{ + // Properties + int Length { get; } + bool IsEmpty { get; } + string[] Names { get; } + string[] Values { get; } + + // Methods + string GetName(int i); + string GetValue(int i); + string GetValue(string name); +} + +// Namespace: +private class AttrListImpl : IAttrList // TypeDefIndex: 244 +{ + // Fields + private ArrayList attrNames; // 0x08 + private ArrayList attrValues; // 0x0C + + // Properties + public int Length { get; } // 0x101273C0 + public bool IsEmpty { get; } // 0x1015FFD0 + public string[] Names { get; } // 0x10160000 + public string[] Values { get; } // 0x101600B0 + + // Methods + public void .ctor(); // 0x1015FF60 + public string GetName(int i); // 0x1015FD80 + public string GetValue(int i); // 0x1015FEF0 + public string GetValue(string name); // 0x1015FDF0 + internal void Clear(); // 0x1015FD30 + internal void Add(string name, string value); // 0x1015FCE0 +} + +// Namespace: Mono.Xml +internal class SmallXmlParserException : SystemException // TypeDefIndex: 245 +{ + // Fields + private int line; // 0x34 + private int column; // 0x38 + + // Properties + public int Line { get; } // 0x100E9ED0 + public int Column { get; } // 0x100EB210 + + // Methods + public void .ctor(string msg, int line, int column); // 0x10161630 +} + +// Namespace: Mono +internal abstract class DataConverter // TypeDefIndex: 246 +{ + // Fields + private static DataConverter SwapConv; // 0x00 + private static DataConverter CopyConv; // 0x04 + public static readonly bool IsLittleEndian; // 0x08 + + // Properties + public static DataConverter LittleEndian { get; } // 0x1025DD80 + public static DataConverter BigEndian { get; } // 0x1025DCE0 + public static DataConverter Native { get; } // 0x1025DE20 + + // Methods + protected void .ctor(); // 0x100BF000 + private static void .cctor(); // 0x1025DBC0 + public abstract double GetDouble(byte[] data, int index); + public abstract float GetFloat(byte[] data, int index); + public abstract long GetInt64(byte[] data, int index); + public abstract int GetInt32(byte[] data, int index); + public abstract short GetInt16(byte[] data, int index); + public abstract uint GetUInt32(byte[] data, int index); + public abstract ushort GetUInt16(byte[] data, int index); + public abstract ulong GetUInt64(byte[] data, int index); + public abstract void PutBytes(byte[] dest, int destIdx, double value); + public abstract void PutBytes(byte[] dest, int destIdx, float value); + public abstract void PutBytes(byte[] dest, int destIdx, int value); + public abstract void PutBytes(byte[] dest, int destIdx, long value); + public abstract void PutBytes(byte[] dest, int destIdx, short value); + public abstract void PutBytes(byte[] dest, int destIdx, ushort value); + public abstract void PutBytes(byte[] dest, int destIdx, uint value); + public abstract void PutBytes(byte[] dest, int destIdx, ulong value); + public byte[] GetBytes(double value); // 0x1025BFE0 + public byte[] GetBytes(float value); // 0x1025BDA0 + public byte[] GetBytes(int value); // 0x1025BF20 + public byte[] GetBytes(long value); // 0x1025BE00 + public byte[] GetBytes(short value); // 0x1025BF80 + public byte[] GetBytes(ushort value); // 0x1025BD40 + public byte[] GetBytes(uint value); // 0x1025BEC0 + public byte[] GetBytes(ulong value); // 0x1025BE60 + private static int Align(int current, int align); // 0x1025BC80 + public static byte[] Pack(string description, object[] args); // 0x1025CD10 + public static byte[] PackEnumerable(string description, IEnumerable args); // 0x1025C040 + private static bool PackOne(PackContext b, object oarg); // 0x1025C1F0 + private static bool Prepare(byte[] buffer, int idx, int size, bool align); // 0x1025CE80 + public static IList Unpack(string description, byte[] buffer, int startIndex); // 0x1025CF10 + internal void Check(byte[] dest, int destIdx, int size); // 0x1025BCA0 +} + +// Namespace: +private class PackContext // TypeDefIndex: 247 +{ + // Fields + public byte[] buffer; // 0x08 + private int next; // 0x0C + public string description; // 0x10 + public int i; // 0x14 + public DataConverter conv; // 0x18 + public int repeat; // 0x1C + public int align; // 0x20 + + // Methods + public void .ctor(); // 0x100BF000 + public void Add(byte[] group); // 0x10265E80 + public byte[] Get(); // 0x10265FE0 +} + +// Namespace: +private class CopyConverter : DataConverter // TypeDefIndex: 248 +{ + // Methods + public void .ctor(); // 0x1025BB80 + public override double GetDouble(byte[] data, int index); // 0x1025B390 + public override ulong GetUInt64(byte[] data, int index); // 0x1025B9B0 + public override long GetInt64(byte[] data, int index); // 0x1025B710 + public override float GetFloat(byte[] data, int index); // 0x1025B470 + public override int GetInt32(byte[] data, int index); // 0x1025B630 + public override uint GetUInt32(byte[] data, int index); // 0x1025B8D0 + public override short GetInt16(byte[] data, int index); // 0x1025B550 + public override ushort GetUInt16(byte[] data, int index); // 0x1025B7F0 + public override void PutBytes(byte[] dest, int destIdx, double value); // 0x1025BA90 + public override void PutBytes(byte[] dest, int destIdx, float value); // 0x1025BB30 + public override void PutBytes(byte[] dest, int destIdx, int value); // 0x1025BB30 + public override void PutBytes(byte[] dest, int destIdx, uint value); // 0x1025BB30 + public override void PutBytes(byte[] dest, int destIdx, long value); // 0x1025BA90 + public override void PutBytes(byte[] dest, int destIdx, ulong value); // 0x1025BA90 + public override void PutBytes(byte[] dest, int destIdx, short value); // 0x1025BAE0 + public override void PutBytes(byte[] dest, int destIdx, ushort value); // 0x1025BAE0 +} + +// Namespace: +private class SwapConverter : DataConverter // TypeDefIndex: 249 +{ + // Methods + public void .ctor(); // 0x1026F8D0 + public override double GetDouble(byte[] data, int index); // 0x1026EFD0 + public override ulong GetUInt64(byte[] data, int index); // 0x1026F5F0 + public override long GetInt64(byte[] data, int index); // 0x1026F350 + public override float GetFloat(byte[] data, int index); // 0x1026F0B0 + public override int GetInt32(byte[] data, int index); // 0x1026F270 + public override uint GetUInt32(byte[] data, int index); // 0x1026F510 + public override short GetInt16(byte[] data, int index); // 0x1026F190 + public override ushort GetUInt16(byte[] data, int index); // 0x1026F430 + public override void PutBytes(byte[] dest, int destIdx, double value); // 0x1026F6D0 + public override void PutBytes(byte[] dest, int destIdx, float value); // 0x1026F870 + public override void PutBytes(byte[] dest, int destIdx, int value); // 0x1026F7B0 + public override void PutBytes(byte[] dest, int destIdx, uint value); // 0x1026F7B0 + public override void PutBytes(byte[] dest, int destIdx, long value); // 0x1026F6D0 + public override void PutBytes(byte[] dest, int destIdx, ulong value); // 0x1026F810 + public override void PutBytes(byte[] dest, int destIdx, short value); // 0x1026F750 + public override void PutBytes(byte[] dest, int destIdx, ushort value); // 0x1026F750 +} + +// Namespace: Mono +internal class Runtime // TypeDefIndex: 250 +{ + // Methods + public void .ctor(); // 0x100BF000 + private static void mono_runtime_install_handlers(); // 0x102AE1E0 + internal static void InstallSignalHandlers(); // 0x102AE1E0 + internal static string GetDisplayName(); // 0x102AE1D0 +} + +// Namespace: System.Collections.Generic +internal sealed class CollectionDebuggerView`1 // TypeDefIndex: 251 +{ + // Fields + private readonly ICollection`1 c; // 0x00 + + // Properties + public T[] Items { get; } + + // Methods + public void .ctor(ICollection`1 col); +} + +// Namespace: System.Collections.Generic +internal sealed class CollectionDebuggerView`2 // TypeDefIndex: 252 +{ + // Fields + private readonly ICollection`1> c; // 0x00 + + // Properties + public KeyValuePair`2[] Items { get; } + + // Methods + public void .ctor(ICollection`1> col); +} + +// Namespace: System.Collections.Generic +[Serializable] +public abstract class Comparer`1 : IComparer`1, IComparer // TypeDefIndex: 253 +{ + // Fields + private static readonly Comparer`1 _default; // 0x00 + + // Properties + public static Comparer`1 Default { get; } + + // Methods + protected void .ctor(); + private static void .cctor(); + private int System.Collections.IComparer.Compare(object x, object y); + public abstract int Compare(T x, T y); +} + +// Namespace: +private sealed class DefaultComparer : Comparer`1 // TypeDefIndex: 254 +{ + // Methods + public void .ctor(); + public override int Compare(T x, T y); +} + +// Namespace: System.Collections.Generic +[Serializable] +internal sealed class GenericComparer`1 : Comparer`1 // TypeDefIndex: 255 +{ + // Methods + public void .ctor(); + public override int Compare(T x, T y); +} + +// Namespace: System.Collections.Generic +internal struct Link // TypeDefIndex: 256 +{ + // Fields + public int HashCode; // 0x08 + public int Next; // 0x0C + +} + +// Namespace: System.Collections.Generic +[Serializable] +public class Dictionary`2 : IEnumerable, ISerializable, ICollection, ICollection`1>, IEnumerable`1>, IDictionary`2, IDictionary, IDeserializationCallback // TypeDefIndex: 257 +{ + // Fields + private const int INITIAL_SIZE = 10; // 0x00 + private const float DEFAULT_LOAD_FACTOR = 0.9; // 0x00 + private const int NO_SLOT = -1; // 0x00 + private const int HASH_FLAG = -2147483648; // 0x00 + private int[] table; // 0x00 + private Link[] linkSlots; // 0x00 + private T[] keySlots; // 0x00 + private T[] valueSlots; // 0x00 + private int touchedSlots; // 0x00 + private int emptySlot; // 0x00 + private int count; // 0x00 + private int threshold; // 0x00 + private IEqualityComparer`1 hcp; // 0x00 + private SerializationInfo serialization_info; // 0x00 + private int generation; // 0x00 + private static Transform`1 <>f__am$cacheB; // 0x00 + + // Properties + private ICollection`1 System.Collections.Generic.IDictionary.Keys { get; } + private ICollection`1 System.Collections.Generic.IDictionary.Values { get; } + private ICollection System.Collections.IDictionary.Keys { get; } + private ICollection System.Collections.IDictionary.Values { get; } + private bool System.Collections.IDictionary.IsFixedSize { get; } + private bool System.Collections.IDictionary.IsReadOnly { get; } + private object System.Collections.IDictionary.Item { get; set; } + private bool System.Collections.ICollection.IsSynchronized { get; } + private object System.Collections.ICollection.SyncRoot { get; } + private bool System.Collections.Generic.ICollection>.IsReadOnly { get; } + public int Count { get; } + public T Item { get; set; } + public IEqualityComparer`1 Comparer { get; } + public KeyCollection Keys { get; } + public ValueCollection Values { get; } + + // Methods + public void .ctor(); + public void .ctor(IEqualityComparer`1 comparer); + public void .ctor(IDictionary`2 dictionary); + public void .ctor(int capacity); + public void .ctor(IDictionary`2 dictionary, IEqualityComparer`1 comparer); + public void .ctor(int capacity, IEqualityComparer`1 comparer); + protected void .ctor(SerializationInfo info, StreamingContext context); + private void System.Collections.IDictionary.Add(object key, object value); + private bool System.Collections.IDictionary.Contains(object key); + private void System.Collections.IDictionary.Remove(object key); + private void System.Collections.Generic.ICollection>.Add(KeyValuePair`2 keyValuePair); + private bool System.Collections.Generic.ICollection>.Contains(KeyValuePair`2 keyValuePair); + private void System.Collections.Generic.ICollection>.CopyTo(KeyValuePair`2[] array, int index); + private bool System.Collections.Generic.ICollection>.Remove(KeyValuePair`2 keyValuePair); + private void System.Collections.ICollection.CopyTo(Array array, int index); + private IEnumerator System.Collections.IEnumerable.GetEnumerator(); + private IEnumerator`1> System.Collections.Generic.IEnumerable>.GetEnumerator(); + private IDictionaryEnumerator System.Collections.IDictionary.GetEnumerator(); + private void Init(int capacity, IEqualityComparer`1 hcp); + private void InitArrays(int size); + private void CopyToCheck(Array array, int index); + private void Do_CopyTo(T[] array, int index, Transform`1 transform); + private static KeyValuePair`2 make_pair(T key, T value); + private static T pick_key(T key, T value); + private static T pick_value(T key, T value); + private void CopyTo(KeyValuePair`2[] array, int index); + private void Do_ICollectionCopyTo(Array array, int index, Transform`1 transform); + private void Resize(); + public void Add(T key, T value); + public void Clear(); + public bool ContainsKey(T key); + public bool ContainsValue(T value); + public virtual void GetObjectData(SerializationInfo info, StreamingContext context); + public virtual void OnDeserialization(object sender); + public bool Remove(T key); + public bool TryGetValue(T key, out T value); + private T ToTKey(object key); + private T ToTValue(object value); + private bool ContainsKeyValuePair(KeyValuePair`2 pair); + public Enumerator GetEnumerator(); + private static DictionaryEntry m__0(T key, T value); +} + +// Namespace: +[Serializable] +private class ShimEnumerator : IEnumerator, IDictionaryEnumerator // TypeDefIndex: 258 +{ + // Fields + private Enumerator host_enumerator; // 0x00 + + // Properties + public DictionaryEntry Entry { get; } + public object Key { get; } + public object Value { get; } + public object Current { get; } + + // Methods + public void .ctor(Dictionary`2 host); + public void Dispose(); + public bool MoveNext(); + public void Reset(); +} + +// Namespace: +[Serializable] +public struct Enumerator : IEnumerator, IDisposable, IEnumerator`1>, IDictionaryEnumerator // TypeDefIndex: 259 +{ + // Fields + private Dictionary`2 dictionary; // 0x00 + private int next; // 0x00 + private int stamp; // 0x00 + internal KeyValuePair`2 current; // 0x00 + + // Properties + private object System.Collections.IEnumerator.Current { get; } + private DictionaryEntry System.Collections.IDictionaryEnumerator.Entry { get; } + private object System.Collections.IDictionaryEnumerator.Key { get; } + private object System.Collections.IDictionaryEnumerator.Value { get; } + public KeyValuePair`2 Current { get; } + internal T CurrentKey { get; } + internal T CurrentValue { get; } + + // Methods + internal void .ctor(Dictionary`2 dictionary); + private void System.Collections.IEnumerator.Reset(); + public bool MoveNext(); + internal void Reset(); + private void VerifyState(); + private void VerifyCurrent(); + public void Dispose(); +} + +// Namespace: +[Serializable] +public sealed class KeyCollection : IEnumerable, ICollection, ICollection`1, IEnumerable`1 // TypeDefIndex: 260 +{ + // Fields + private Dictionary`2 dictionary; // 0x00 + + // Properties + private bool System.Collections.Generic.ICollection.IsReadOnly { get; } + private bool System.Collections.ICollection.IsSynchronized { get; } + private object System.Collections.ICollection.SyncRoot { get; } + public int Count { get; } + + // Methods + public void .ctor(Dictionary`2 dictionary); + private void System.Collections.Generic.ICollection.Add(T item); + private void System.Collections.Generic.ICollection.Clear(); + private bool System.Collections.Generic.ICollection.Contains(T item); + private bool System.Collections.Generic.ICollection.Remove(T item); + private IEnumerator`1 System.Collections.Generic.IEnumerable.GetEnumerator(); + private void System.Collections.ICollection.CopyTo(Array array, int index); + private IEnumerator System.Collections.IEnumerable.GetEnumerator(); + public void CopyTo(T[] array, int index); + public Enumerator GetEnumerator(); +} + +// Namespace: +[Serializable] +public struct Enumerator : IEnumerator, IDisposable, IEnumerator`1 // TypeDefIndex: 261 +{ + // Fields + private Enumerator host_enumerator; // 0x00 + + // Properties + private object System.Collections.IEnumerator.Current { get; } + public T Current { get; } + + // Methods + internal void .ctor(Dictionary`2 host); + private void System.Collections.IEnumerator.Reset(); + public void Dispose(); + public bool MoveNext(); +} + +// Namespace: +[Serializable] +public sealed class ValueCollection : IEnumerable, ICollection, ICollection`1, IEnumerable`1 // TypeDefIndex: 262 +{ + // Fields + private Dictionary`2 dictionary; // 0x00 + + // Properties + private bool System.Collections.Generic.ICollection.IsReadOnly { get; } + private bool System.Collections.ICollection.IsSynchronized { get; } + private object System.Collections.ICollection.SyncRoot { get; } + public int Count { get; } + + // Methods + public void .ctor(Dictionary`2 dictionary); + private void System.Collections.Generic.ICollection.Add(T item); + private void System.Collections.Generic.ICollection.Clear(); + private bool System.Collections.Generic.ICollection.Contains(T item); + private bool System.Collections.Generic.ICollection.Remove(T item); + private IEnumerator`1 System.Collections.Generic.IEnumerable.GetEnumerator(); + private void System.Collections.ICollection.CopyTo(Array array, int index); + private IEnumerator System.Collections.IEnumerable.GetEnumerator(); + public void CopyTo(T[] array, int index); + public Enumerator GetEnumerator(); +} + +// Namespace: +[Serializable] +public struct Enumerator : IEnumerator, IDisposable, IEnumerator`1 // TypeDefIndex: 263 +{ + // Fields + private Enumerator host_enumerator; // 0x00 + + // Properties + private object System.Collections.IEnumerator.Current { get; } + public T Current { get; } + + // Methods + internal void .ctor(Dictionary`2 host); + private void System.Collections.IEnumerator.Reset(); + public void Dispose(); + public bool MoveNext(); +} + +// Namespace: +private delegate T Transform`1(T key, T value); // TypeDefIndex: 264; 0x00000000 + +// Namespace: System.Collections.Generic +[Serializable] +public abstract class EqualityComparer`1 : IEqualityComparer`1, IEqualityComparer // TypeDefIndex: 265 +{ + // Fields + private static readonly EqualityComparer`1 _default; // 0x00 + + // Properties + public static EqualityComparer`1 Default { get; } + + // Methods + protected void .ctor(); + private static void .cctor(); + private int System.Collections.IEqualityComparer.GetHashCode(object obj); + private bool System.Collections.IEqualityComparer.Equals(object x, object y); + public abstract int GetHashCode(T obj); + public abstract bool Equals(T x, T y); +} + +// Namespace: +[Serializable] +private sealed class DefaultComparer : EqualityComparer`1 // TypeDefIndex: 266 +{ + // Methods + public void .ctor(); + public override int GetHashCode(T obj); + public override bool Equals(T x, T y); +} + +// Namespace: System.Collections.Generic +[Serializable] +internal sealed class GenericEqualityComparer`1 : EqualityComparer`1 // TypeDefIndex: 267 +{ + // Methods + public void .ctor(); + public override int GetHashCode(T obj); + public override bool Equals(T x, T y); +} + +// Namespace: System.Collections.Generic +public interface IComparer`1 // TypeDefIndex: 268 +{ + // Methods + int Compare(T x, T y); +} + +// Namespace: System.Collections.Generic +public interface IDictionary`2 : IEnumerable, ICollection`1>, IEnumerable`1> // TypeDefIndex: 269 +{ + // Properties + T Item { get; set; } + ICollection`1 Keys { get; } + ICollection`1 Values { get; } + + // Methods + void Add(T key, T value); + bool ContainsKey(T key); + bool Remove(T key); + bool TryGetValue(T key, out T value); +} + +// Namespace: System.Collections.Generic +public interface IEqualityComparer`1 // TypeDefIndex: 270 +{ + // Methods + bool Equals(T x, T y); + int GetHashCode(T obj); +} + +// Namespace: System.Collections.Generic +[Serializable] +public class KeyNotFoundException : SystemException, ISerializable // TypeDefIndex: 271 +{ + // Methods + public void .ctor(); // 0x10227B50 + public void .ctor(string message); // 0x100E5680 + public void .ctor(string message, Exception innerException); // 0x100E5670 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 +} + +// Namespace: System.Collections.Generic +[Serializable] +public struct KeyValuePair`2 // TypeDefIndex: 272 +{ + // Fields + private T key; // 0x00 + private T value; // 0x00 + + // Properties + public T Key { get; set; } + public T Value { get; set; } + + // Methods + public void .ctor(T key, T value); + public override string ToString(); +} + +// Namespace: System.Collections.Generic +[Serializable] +public class List`1 : IEnumerable, ICollection, IList, ICollection`1, IEnumerable`1, IList`1 // TypeDefIndex: 273 +{ + // Fields + private const int DefaultCapacity = 4; // 0x00 + private T[] _items; // 0x00 + private int _size; // 0x00 + private int _version; // 0x00 + private static readonly T[] EmptyArray; // 0x00 + + // Properties + private bool System.Collections.Generic.ICollection.IsReadOnly { get; } + private bool System.Collections.ICollection.IsSynchronized { get; } + private object System.Collections.ICollection.SyncRoot { get; } + private bool System.Collections.IList.IsFixedSize { get; } + private bool System.Collections.IList.IsReadOnly { get; } + private object System.Collections.IList.Item { get; set; } + public int Capacity { get; set; } + public int Count { get; } + public T Item { get; set; } + + // Methods + public void .ctor(); + public void .ctor(IEnumerable`1 collection); + public void .ctor(int capacity); + internal void .ctor(T[] data, int size); + private static void .cctor(); + private IEnumerator`1 System.Collections.Generic.IEnumerable.GetEnumerator(); + private void System.Collections.ICollection.CopyTo(Array array, int arrayIndex); + private IEnumerator System.Collections.IEnumerable.GetEnumerator(); + private int System.Collections.IList.Add(object item); + private bool System.Collections.IList.Contains(object item); + private int System.Collections.IList.IndexOf(object item); + private void System.Collections.IList.Insert(int index, object item); + private void System.Collections.IList.Remove(object item); + public void Add(T item); + private void GrowIfNeeded(int newCount); + private void CheckRange(int idx, int count); + private void AddCollection(ICollection`1 collection); + private void AddEnumerable(IEnumerable`1 enumerable); + public void AddRange(IEnumerable`1 collection); + public ReadOnlyCollection`1 AsReadOnly(); + public int BinarySearch(T item); + public int BinarySearch(T item, IComparer`1 comparer); + public int BinarySearch(int index, int count, T item, IComparer`1 comparer); + public void Clear(); + public bool Contains(T item); + public List`1 ConvertAll(Converter`2 converter); + public void CopyTo(T[] array); + public void CopyTo(T[] array, int arrayIndex); + public void CopyTo(int index, T[] array, int arrayIndex, int count); + public bool Exists(Predicate`1 match); + public T Find(Predicate`1 match); + private static void CheckMatch(Predicate`1 match); + public List`1 FindAll(Predicate`1 match); + private List`1 FindAllStackBits(Predicate`1 match); + private List`1 FindAllList(Predicate`1 match); + public int FindIndex(Predicate`1 match); + public int FindIndex(int startIndex, Predicate`1 match); + public int FindIndex(int startIndex, int count, Predicate`1 match); + private int GetIndex(int startIndex, int count, Predicate`1 match); + public T FindLast(Predicate`1 match); + public int FindLastIndex(Predicate`1 match); + public int FindLastIndex(int startIndex, Predicate`1 match); + public int FindLastIndex(int startIndex, int count, Predicate`1 match); + private int GetLastIndex(int startIndex, int count, Predicate`1 match); + public void ForEach(Action`1 action); + public Enumerator GetEnumerator(); + public List`1 GetRange(int index, int count); + public int IndexOf(T item); + public int IndexOf(T item, int index); + public int IndexOf(T item, int index, int count); + private void Shift(int start, int delta); + private void CheckIndex(int index); + public void Insert(int index, T item); + private void CheckCollection(IEnumerable`1 collection); + public void InsertRange(int index, IEnumerable`1 collection); + private void InsertCollection(int index, ICollection`1 collection); + private void InsertEnumeration(int index, IEnumerable`1 enumerable); + public int LastIndexOf(T item); + public int LastIndexOf(T item, int index); + public int LastIndexOf(T item, int index, int count); + public bool Remove(T item); + public int RemoveAll(Predicate`1 match); + public void RemoveAt(int index); + public void RemoveRange(int index, int count); + public void Reverse(); + public void Reverse(int index, int count); + public void Sort(); + public void Sort(IComparer`1 comparer); + public void Sort(Comparison`1 comparison); + public void Sort(int index, int count, IComparer`1 comparer); + public T[] ToArray(); + public void TrimExcess(); + public bool TrueForAll(Predicate`1 match); +} + +// Namespace: +[Serializable] +public struct Enumerator : IEnumerator, IDisposable, IEnumerator`1 // TypeDefIndex: 274 +{ + // Fields + private List`1 l; // 0x00 + private int next; // 0x00 + private int ver; // 0x00 + private T current; // 0x00 + + // Properties + private object System.Collections.IEnumerator.Current { get; } + public T Current { get; } + + // Methods + internal void .ctor(List`1 l); + private void System.Collections.IEnumerator.Reset(); + public void Dispose(); + private void VerifyState(); + public bool MoveNext(); +} + +// Namespace: System.Collections.ObjectModel +[Serializable] +public class Collection`1 : IEnumerable, ICollection, IList, ICollection`1, IList`1, IEnumerable`1 // TypeDefIndex: 275 +{ + // Fields + private IList`1 list; // 0x00 + private object syncRoot; // 0x00 + + // Properties + private bool System.Collections.Generic.ICollection.IsReadOnly { get; } + private bool System.Collections.ICollection.IsSynchronized { get; } + private object System.Collections.ICollection.SyncRoot { get; } + private bool System.Collections.IList.IsFixedSize { get; } + private bool System.Collections.IList.IsReadOnly { get; } + private object System.Collections.IList.Item { get; set; } + protected IList`1 Items { get; } + public int Count { get; } + public T Item { get; set; } + + // Methods + public void .ctor(); + public void .ctor(IList`1 list); + private void System.Collections.ICollection.CopyTo(Array array, int index); + private IEnumerator System.Collections.IEnumerable.GetEnumerator(); + private int System.Collections.IList.Add(object value); + private bool System.Collections.IList.Contains(object value); + private int System.Collections.IList.IndexOf(object value); + private void System.Collections.IList.Insert(int index, object value); + private void System.Collections.IList.Remove(object value); + public void Add(T item); + public void Clear(); + protected virtual void ClearItems(); + public bool Contains(T item); + public void CopyTo(T[] array, int index); + public IEnumerator`1 GetEnumerator(); + public int IndexOf(T item); + public void Insert(int index, T item); + protected virtual void InsertItem(int index, T item); + public bool Remove(T item); + public void RemoveAt(int index); + protected virtual void RemoveItem(int index); + protected virtual void SetItem(int index, T item); + internal static bool IsValidItem(object item); + internal static T ConvertItem(object item); + internal static void CheckWritable(IList`1 list); + internal static bool IsSynchronized(IList`1 list); + internal static bool IsFixedSize(IList`1 list); +} + +// Namespace: System.Collections.ObjectModel +[Serializable] +public abstract class KeyedCollection`2 : Collection`1 // TypeDefIndex: 276 +{ + // Fields + private Dictionary`2 dictionary; // 0x00 + private IEqualityComparer`1 comparer; // 0x00 + private int dictionaryCreationThreshold; // 0x00 + + // Properties + public IEqualityComparer`1 Comparer { get; } + public T Item { get; } + protected IDictionary`2 Dictionary { get; } + + // Methods + protected void .ctor(); + protected void .ctor(IEqualityComparer`1 comparer); + protected void .ctor(IEqualityComparer`1 comparer, int dictionaryCreationThreshold); + public bool Contains(T key); + private int IndexOfKey(T key); + public bool Remove(T key); + protected void ChangeItemKey(T item, T newKey); + protected override void ClearItems(); + protected abstract T GetKeyForItem(T item); + protected override void InsertItem(int index, T item); + protected override void RemoveItem(int index); + protected override void SetItem(int index, T item); +} + +// Namespace: System.Collections.ObjectModel +[Serializable] +public class ReadOnlyCollection`1 : IEnumerable, ICollection, IList, ICollection`1, IList`1, IEnumerable`1 // TypeDefIndex: 277 +{ + // Fields + private IList`1 list; // 0x00 + + // Properties + private T System.Collections.Generic.IList.Item { get; set; } + private bool System.Collections.Generic.ICollection.IsReadOnly { get; } + private bool System.Collections.ICollection.IsSynchronized { get; } + private object System.Collections.ICollection.SyncRoot { get; } + private bool System.Collections.IList.IsFixedSize { get; } + private bool System.Collections.IList.IsReadOnly { get; } + private object System.Collections.IList.Item { get; set; } + public int Count { get; } + protected IList`1 Items { get; } + public T Item { get; } + + // Methods + public void .ctor(IList`1 list); + private void System.Collections.Generic.ICollection.Add(T item); + private void System.Collections.Generic.ICollection.Clear(); + private void System.Collections.Generic.IList.Insert(int index, T item); + private bool System.Collections.Generic.ICollection.Remove(T item); + private void System.Collections.Generic.IList.RemoveAt(int index); + private void System.Collections.ICollection.CopyTo(Array array, int index); + private IEnumerator System.Collections.IEnumerable.GetEnumerator(); + private int System.Collections.IList.Add(object value); + private void System.Collections.IList.Clear(); + private bool System.Collections.IList.Contains(object value); + private int System.Collections.IList.IndexOf(object value); + private void System.Collections.IList.Insert(int index, object value); + private void System.Collections.IList.Remove(object value); + private void System.Collections.IList.RemoveAt(int index); + public bool Contains(T value); + public void CopyTo(T[] array, int index); + public IEnumerator`1 GetEnumerator(); + public int IndexOf(T value); +} + +// Namespace: System.Collections +[Serializable] +public class ArrayList : IEnumerable, ICloneable, ICollection, IList // TypeDefIndex: 278 +{ + // Fields + private const int DefaultInitialCapacity = 4; // 0x00 + private int _size; // 0x08 + private object[] _items; // 0x0C + private int _version; // 0x10 + private static readonly object[] EmptyArray; // 0x00 + + // Properties + public virtual object Item { get; set; } // 0x1030BA00 0x1030BB60 + public virtual int Count { get; } // 0x100BF0C0 + public virtual int Capacity { get; set; } // 0x10129580 0x1030BAB0 + public virtual bool IsFixedSize { get; } // 0x100EFBF0 + public virtual bool IsReadOnly { get; } // 0x100EFBF0 + public virtual bool IsSynchronized { get; } // 0x100EFBF0 + public virtual object SyncRoot { get; } // 0x100F7810 + + // Methods + public void .ctor(); // 0x1030B7B0 + public void .ctor(ICollection c); // 0x1030B810 + public void .ctor(int capacity); // 0x1030B710 + private void .ctor(int initialCapacity, bool forceZeroSize); // 0x1030B990 + private void .ctor(object[] array, int index, int count); // 0x1030B920 + private static void .cctor(); // 0x1030B6D0 + private void EnsureCapacity(int count); // 0x1030A3D0 + private void Shift(int index, int count); // 0x1030B1E0 + public virtual int Add(object value); // 0x10309CE0 + public virtual void Clear(); // 0x1030A190 + public virtual bool Contains(object item); // 0x1030A290 + internal virtual bool Contains(object value, int startIndex, int count); // 0x1030A260 + public virtual int IndexOf(object value); // 0x1030A940 + public virtual int IndexOf(object value, int startIndex); // 0x1030A7E0 + public virtual int IndexOf(object value, int startIndex, int count); // 0x1030A810 + public virtual int LastIndexOf(object value); // 0x1030AC30 + public virtual int LastIndexOf(object value, int startIndex); // 0x1030AC00 + public virtual int LastIndexOf(object value, int startIndex, int count); // 0x1030AC60 + public virtual void Insert(int index, object value); // 0x1030AB10 + public virtual void InsertRange(int index, ICollection c); // 0x1030A970 + public virtual void Remove(object obj); // 0x1030AF40 + public virtual void RemoveAt(int index); // 0x1030ADE0 + public virtual void RemoveRange(int index, int count); // 0x1030AEC0 + public virtual void Reverse(); // 0x1030B080 + public virtual void Reverse(int index, int count); // 0x1030B0A0 + public virtual void CopyTo(Array array); // 0x1030A3B0 + public virtual void CopyTo(Array array, int arrayIndex); // 0x1030A380 + public virtual void CopyTo(int index, Array array, int arrayIndex, int count); // 0x1030A2C0 + public virtual IEnumerator GetEnumerator(); // 0x1030A640 + public virtual IEnumerator GetEnumerator(int index, int count); // 0x1030A5A0 + public virtual void AddRange(ICollection c); // 0x10309CB0 + public virtual int BinarySearch(object value); // 0x10309D70 + public virtual int BinarySearch(object value, IComparer comparer); // 0x10309E70 + public virtual int BinarySearch(int index, int count, object value, IComparer comparer); // 0x10309F80 + public virtual ArrayList GetRange(int index, int count); // 0x1030A6F0 + public virtual void SetRange(int index, ICollection c); // 0x1030B110 + public virtual void TrimToSize(); // 0x1030B650 + public virtual void Sort(); // 0x1030B380 + public virtual void Sort(IComparer comparer); // 0x1030B2F0 + public virtual void Sort(int index, int count, IComparer comparer); // 0x1030B310 + public virtual object[] ToArray(); // 0x1030B5B0 + public virtual Array ToArray(Type type); // 0x1030B610 + public virtual object Clone(); // 0x1030A1C0 + internal static void CheckRange(int index, int count, int listCount); // 0x1030A080 + internal static void ThrowNewArgumentOutOfRangeException(string name, object actual, string message); // 0x1030B550 + public static ArrayList Adapter(IList list); // 0x10309BC0 + public static ArrayList Synchronized(ArrayList list); // 0x1030B4A0 + public static IList Synchronized(IList list); // 0x1030B3D0 + public static ArrayList ReadOnly(ArrayList list); // 0x1030AD40 + public static IList ReadOnly(IList list); // 0x1030ACA0 + public static ArrayList FixedSize(ArrayList list); // 0x1030A460 + public static IList FixedSize(IList list); // 0x1030A500 + public static ArrayList Repeat(object value, int count); // 0x1030AF80 +} + +// Namespace: +private sealed class ArrayListEnumerator : IEnumerator, ICloneable // TypeDefIndex: 279 +{ + // Fields + private int m_Pos; // 0x08 + private int m_Index; // 0x0C + private int m_Count; // 0x10 + private object m_Current; // 0x14 + private ArrayList m_List; // 0x18 + private int m_ExpectedStateChanges; // 0x1C + + // Properties + public object Current { get; } // 0x10309190 + + // Methods + public void .ctor(ArrayList list); // 0x103090E0 + public void .ctor(ArrayList list, int index, int count); // 0x10309140 + public object Clone(); // 0x10216010 + public bool MoveNext(); // 0x10309020 + public void Reset(); // 0x103090C0 +} + +// Namespace: +private sealed class SimpleEnumerator : IEnumerator, ICloneable // TypeDefIndex: 280 +{ + // Fields + private ArrayList list; // 0x08 + private int index; // 0x0C + private int version; // 0x10 + private object currentElement; // 0x14 + private static object endFlag; // 0x00 + + // Properties + public object Current { get; } // 0x1031ABA0 + + // Methods + public void .ctor(ArrayList list); // 0x1031AB20 + private static void .cctor(); // 0x1031AA50 + public object Clone(); // 0x10216010 + public bool MoveNext(); // 0x1031A8B0 + public void Reset(); // 0x1031A9B0 +} + +// Namespace: +[Serializable] +private sealed class ArrayListAdapter : ArrayList // TypeDefIndex: 281 +{ + // Fields + private IList m_Adaptee; // 0x14 + + // Properties + public override object Item { get; set; } // 0x10308EB0 0x10308FD0 + public override int Count { get; } // 0x10308D70 + public override int Capacity { get; set; } // 0x10308D20 0x10308F50 + public override bool IsFixedSize { get; } // 0x10308DC0 + public override bool IsReadOnly { get; } // 0x10308E10 + public override object SyncRoot { get; } // 0x10308F00 + public override bool IsSynchronized { get; } // 0x10308E60 + + // Methods + public void .ctor(IList adaptee); // 0x10308CA0 + public override int Add(object value); // 0x10306C30 + public override void Clear(); // 0x10307050 + public override bool Contains(object value); // 0x103070F0 + public override int IndexOf(object value); // 0x10307920 + public override int IndexOf(object value, int startIndex); // 0x10307970 + public override int IndexOf(object value, int startIndex, int count); // 0x10307730 + public override int LastIndexOf(object value); // 0x10307EC0 + public override int LastIndexOf(object value, int startIndex); // 0x10307EA0 + public override int LastIndexOf(object value, int startIndex, int count); // 0x10307CE0 + public override void Insert(int index, object value); // 0x10307C90 + public override void InsertRange(int index, ICollection c); // 0x103079D0 + public override void Remove(object value); // 0x103082B0 + public override void RemoveAt(int index); // 0x10308160 + public override void RemoveRange(int index, int count); // 0x103081B0 + public override void Reverse(); // 0x10308300 + public override void Reverse(int index, int count); // 0x10308360 + public override void SetRange(int index, ICollection c); // 0x103085E0 + public override void CopyTo(Array array); // 0x10307140 + public override void CopyTo(Array array, int index); // 0x10307190 + public override void CopyTo(int index, Array array, int arrayIndex, int count); // 0x103071E0 + public override IEnumerator GetEnumerator(); // 0x103074A0 + public override IEnumerator GetEnumerator(int index, int count); // 0x103074F0 + public override void AddRange(ICollection c); // 0x10306A30 + public override int BinarySearch(object value); // 0x10306DD0 + public override int BinarySearch(object value, IComparer comparer); // 0x10306C80 + public override int BinarySearch(int index, int count, object value, IComparer comparer); // 0x10306F20 + public override object Clone(); // 0x103070A0 + public override ArrayList GetRange(int index, int count); // 0x10307680 + public override void TrimToSize(); // 0x100C5530 + public override void Sort(); // 0x103089C0 + public override void Sort(IComparer comparer); // 0x103088C0 + public override void Sort(int index, int count, IComparer comparer); // 0x103087F0 + private static void Swap(IList list, int x, int y); // 0x10308B10 + internal static void QuickSort(IList list, int left, int right, IComparer comparer); // 0x10307F20 + public override object[] ToArray(); // 0x10308BA0 + public override Array ToArray(Type elementType); // 0x10308C20 +} + +// Namespace: +private sealed class EnumeratorWithRange : IEnumerator, ICloneable // TypeDefIndex: 282 +{ + // Fields + private int m_StartIndex; // 0x08 + private int m_Count; // 0x0C + private int m_MaxCount; // 0x10 + private IEnumerator m_Enumerator; // 0x14 + + // Properties + public object Current { get; } // 0x10317F10 + + // Methods + public void .ctor(IEnumerator enumerator, int index, int count); // 0x10317E10 + public object Clone(); // 0x10216010 + public bool MoveNext(); // 0x10317CD0 + public void Reset(); // 0x10317D30 +} + +// Namespace: +[Serializable] +private class ArrayListWrapper : ArrayList // TypeDefIndex: 283 +{ + // Fields + protected ArrayList m_InnerArrayList; // 0x14 + + // Properties + public override object Item { get; set; } // 0x10309AF0 0x10309B80 + public override int Count { get; } // 0x10309A30 + public override int Capacity { get; set; } // 0x10309A00 0x10309B50 + public override bool IsFixedSize { get; } // 0x10309A60 + public override bool IsReadOnly { get; } // 0x10309A90 + public override bool IsSynchronized { get; } // 0x10309AC0 + public override object SyncRoot { get; } // 0x10309B20 + + // Methods + public void .ctor(ArrayList innerArrayList); // 0x10309960 + public override int Add(object value); // 0x10309230 + public override void Clear(); // 0x10309310 + public override bool Contains(object value); // 0x10309370 + public override int IndexOf(object value); // 0x10309540 + public override int IndexOf(object value, int startIndex); // 0x10309570 + public override int IndexOf(object value, int startIndex, int count); // 0x10309500 + public override int LastIndexOf(object value); // 0x10309670 + public override int LastIndexOf(object value, int startIndex); // 0x103096A0 + public override int LastIndexOf(object value, int startIndex, int count); // 0x10309630 + public override void Insert(int index, object value); // 0x103095F0 + public override void InsertRange(int index, ICollection c); // 0x103095B0 + public override void Remove(object value); // 0x10309750 + public override void RemoveAt(int index); // 0x103096E0 + public override void RemoveRange(int index, int count); // 0x10309710 + public override void Reverse(); // 0x103097C0 + public override void Reverse(int index, int count); // 0x10309780 + public override void SetRange(int index, ICollection c); // 0x103097F0 + public override void CopyTo(Array array); // 0x103093E0 + public override void CopyTo(Array array, int index); // 0x10309410 + public override void CopyTo(int index, Array array, int arrayIndex, int count); // 0x103093A0 + public override IEnumerator GetEnumerator(); // 0x10309450 + public override IEnumerator GetEnumerator(int index, int count); // 0x10309480 + public override void AddRange(ICollection c); // 0x10309200 + public override int BinarySearch(object value); // 0x103092E0 + public override int BinarySearch(object value, IComparer comparer); // 0x10309260 + public override int BinarySearch(int index, int count, object value, IComparer comparer); // 0x103092A0 + public override object Clone(); // 0x10309340 + public override ArrayList GetRange(int index, int count); // 0x103094C0 + public override void TrimToSize(); // 0x10309930 + public override void Sort(); // 0x103098A0 + public override void Sort(IComparer comparer); // 0x10309830 + public override void Sort(int index, int count, IComparer comparer); // 0x10309860 + public override object[] ToArray(); // 0x103098D0 + public override Array ToArray(Type elementType); // 0x10309900 +} + +// Namespace: +[Serializable] +private sealed class SynchronizedArrayListWrapper : ArrayListWrapper // TypeDefIndex: 284 +{ + // Fields + private object m_SyncRoot; // 0x18 + + // Properties + public override object Item { get; set; } // 0x1031D2E0 0x1031D4C0 + public override int Count { get; } // 0x1031D010 + public override int Capacity { get; set; } // 0x1031CF20 0x1031D3E0 + public override bool IsFixedSize { get; } // 0x1031D100 + public override bool IsReadOnly { get; } // 0x1031D1F0 + public override bool IsSynchronized { get; } // 0x100E5880 + public override object SyncRoot { get; } // 0x100EE580 + + // Methods + internal void .ctor(ArrayList innerArrayList); // 0x1031CEE0 + public override int Add(object value); // 0x1031B080 + public override void Clear(); // 0x1031B480 + public override bool Contains(object value); // 0x1031B650 + public override int IndexOf(object value); // 0x1031BE00 + public override int IndexOf(object value, int startIndex); // 0x1031BF00 + public override int IndexOf(object value, int startIndex, int count); // 0x1031BD00 + public override int LastIndexOf(object value); // 0x1031C2E0 + public override int LastIndexOf(object value, int startIndex); // 0x1031C1E0 + public override int LastIndexOf(object value, int startIndex, int count); // 0x1031C3E0 + public override void Insert(int index, object value); // 0x1031C0F0 + public override void InsertRange(int index, ICollection c); // 0x1031C000 + public override void Remove(object value); // 0x1031C6B0 + public override void RemoveAt(int index); // 0x1031C4E0 + public override void RemoveRange(int index, int count); // 0x1031C5C0 + public override void Reverse(); // 0x1031C790 + public override void Reverse(int index, int count); // 0x1031C870 + public override void CopyTo(Array array); // 0x1031B750 + public override void CopyTo(Array array, int index); // 0x1031B920 + public override void CopyTo(int index, Array array, int arrayIndex, int count); // 0x1031B830 + public override IEnumerator GetEnumerator(); // 0x1031BB10 + public override IEnumerator GetEnumerator(int index, int count); // 0x1031BA10 + public override void AddRange(ICollection c); // 0x1031AFA0 + public override int BinarySearch(object value); // 0x1031B180 + public override int BinarySearch(object value, IComparer comparer); // 0x1031B280 + public override int BinarySearch(int index, int count, object value, IComparer comparer); // 0x1031B380 + public override object Clone(); // 0x1031B560 + public override ArrayList GetRange(int index, int count); // 0x1031BC00 + public override void TrimToSize(); // 0x1031CE00 + public override void Sort(); // 0x1031C960 + public override void Sort(IComparer comparer); // 0x1031CA40 + public override void Sort(int index, int count, IComparer comparer); // 0x1031CB20 + public override object[] ToArray(); // 0x1031CC10 + public override Array ToArray(Type elementType); // 0x1031CD00 +} + +// Namespace: +[Serializable] +private class FixedSizeArrayListWrapper : ArrayListWrapper // TypeDefIndex: 285 +{ + // Properties + protected virtual string ErrorMessage { get; } // 0x103182D0 + public override int Capacity { get; set; } // 0x10309A00 0x10318300 + public override bool IsFixedSize { get; } // 0x100E5880 + + // Methods + public void .ctor(ArrayList innerList); // 0x103182C0 + public override int Add(object value); // 0x10317FC0 + public override void AddRange(ICollection c); // 0x10317F60 + public override void Clear(); // 0x10318020 + public override void Insert(int index, object value); // 0x103180E0 + public override void InsertRange(int index, ICollection c); // 0x10318080 + public override void Remove(object value); // 0x10318200 + public override void RemoveAt(int index); // 0x10318140 + public override void RemoveRange(int index, int count); // 0x103181A0 + public override void TrimToSize(); // 0x10318260 +} + +// Namespace: +[Serializable] +private sealed class ReadOnlyArrayListWrapper : FixedSizeArrayListWrapper // TypeDefIndex: 286 +{ + // Properties + protected override string ErrorMessage { get; } // 0x1031A740 + public override bool IsReadOnly { get; } // 0x100E5880 + public override object Item { get; set; } // 0x10309AF0 0x1031A770 + + // Methods + public void .ctor(ArrayList innerArrayList); // 0x103182C0 + public override void Reverse(); // 0x1031A500 + public override void Reverse(int index, int count); // 0x1031A560 + public override void SetRange(int index, ICollection c); // 0x1031A5C0 + public override void Sort(); // 0x1031A6E0 + public override void Sort(IComparer comparer); // 0x1031A680 + public override void Sort(int index, int count, IComparer comparer); // 0x1031A620 +} + +// Namespace: +[Serializable] +private sealed class RangedArrayList : ArrayListWrapper // TypeDefIndex: 287 +{ + // Fields + private int m_InnerIndex; // 0x18 + private int m_InnerCount; // 0x1C + private int m_InnerStateChanges; // 0x20 + + // Properties + public override bool IsSynchronized { get; } // 0x100EFBF0 + public override object Item { get; set; } // 0x1031A380 0x1031A470 + public override int Count { get; } // 0x1031A360 + public override int Capacity { get; set; } // 0x10309A00 0x1031A410 + + // Methods + public void .ctor(ArrayList innerList, int index, int count); // 0x1031A320 + private void VerifyStateChanges(); // 0x1031A2B0 + public override int Add(object value); // 0x10318B00 + public override void Clear(); // 0x10318C80 + public override bool Contains(object value); // 0x10318DC0 + public override int IndexOf(object value); // 0x103192C0 + public override int IndexOf(object value, int startIndex); // 0x10319160 + public override int IndexOf(object value, int startIndex, int count); // 0x10319410 + public override int LastIndexOf(object value); // 0x103198F0 + public override int LastIndexOf(object value, int startIndex); // 0x10319720 + public override int LastIndexOf(object value, int startIndex, int count); // 0x103197E0 + public override void Insert(int index, object value); // 0x10319650 + public override void InsertRange(int index, ICollection c); // 0x10319560 + public override void Remove(object value); // 0x10319B30 + public override void RemoveAt(int index); // 0x103199B0 + public override void RemoveRange(int index, int count); // 0x10319A80 + public override void Reverse(); // 0x10319D50 + public override void Reverse(int index, int count); // 0x10319DF0 + public override void SetRange(int index, ICollection c); // 0x10319E90 + public override void CopyTo(Array array); // 0x10318E90 + public override void CopyTo(Array array, int index); // 0x10318E00 + public override void CopyTo(int index, Array array, int arrayIndex, int count); // 0x10318F20 + public override IEnumerator GetEnumerator(); // 0x10318FB0 + public override IEnumerator GetEnumerator(int index, int count); // 0x10319040 + public override void AddRange(ICollection c); // 0x10318A70 + public override int BinarySearch(object value); // 0x10318B60 + public override int BinarySearch(object value, IComparer comparer); // 0x10318BD0 + public override int BinarySearch(int index, int count, object value, IComparer comparer); // 0x10318BF0 + public override object Clone(); // 0x10318CE0 + public override ArrayList GetRange(int index, int count); // 0x103190D0 + public override void TrimToSize(); // 0x1031A260 + public override void Sort(); // 0x1031A0B0 + public override void Sort(IComparer comparer); // 0x10319F60 + public override void Sort(int index, int count, IComparer comparer); // 0x1031A000 + public override object[] ToArray(); // 0x1031A1F0 + public override Array ToArray(Type elementType); // 0x1031A1A0 +} + +// Namespace: +[Serializable] +private sealed class SynchronizedListWrapper : ListWrapper // TypeDefIndex: 288 +{ + // Fields + private object m_SyncRoot; // 0x0C + + // Properties + public override int Count { get; } // 0x1031DF50 + public override bool IsSynchronized { get; } // 0x100E5880 + public override object SyncRoot { get; } // 0x1031E390 + public override bool IsFixedSize { get; } // 0x1031E060 + public override bool IsReadOnly { get; } // 0x1031E170 + public override object Item { get; set; } // 0x1031E280 0x1031E4A0 + + // Methods + public void .ctor(IList innerList); // 0x1031DEF0 + public override int Add(object value); // 0x1031D5B0 + public override void Clear(); // 0x1031D6C0 + public override bool Contains(object value); // 0x1031D7C0 + public override int IndexOf(object value); // 0x1031DAE0 + public override void Insert(int index, object value); // 0x1031DBF0 + public override void Remove(object value); // 0x1031DDF0 + public override void RemoveAt(int index); // 0x1031DCF0 + public override void CopyTo(Array array, int index); // 0x1031D8D0 + public override IEnumerator GetEnumerator(); // 0x1031D9D0 +} + +// Namespace: +[Serializable] +private class FixedSizeListWrapper : ListWrapper // TypeDefIndex: 289 +{ + // Properties + protected virtual string ErrorMessage { get; } // 0x10318540 + public override bool IsFixedSize { get; } // 0x100E5880 + + // Methods + public void .ctor(IList innerList); // 0x10113500 + public override int Add(object value); // 0x10318360 + public override void Clear(); // 0x103183C0 + public override void Insert(int index, object value); // 0x10318420 + public override void Remove(object value); // 0x103184E0 + public override void RemoveAt(int index); // 0x10318480 +} + +// Namespace: +[Serializable] +private sealed class ReadOnlyListWrapper : FixedSizeListWrapper // TypeDefIndex: 290 +{ + // Properties + protected override string ErrorMessage { get; } // 0x1031A7D0 + public override bool IsReadOnly { get; } // 0x100E5880 + public override object Item { get; set; } // 0x1031A800 0x1031A850 + + // Methods + public void .ctor(IList innerList); // 0x10113500 +} + +// Namespace: +[Serializable] +private class ListWrapper : IEnumerable, ICollection, IList // TypeDefIndex: 291 +{ + // Fields + protected IList m_InnerList; // 0x08 + + // Properties + public virtual object Item { get; set; } // 0x10318980 0x10318A20 + public virtual int Count { get; } // 0x10318840 + public virtual bool IsSynchronized { get; } // 0x10318930 + public virtual object SyncRoot { get; } // 0x103189D0 + public virtual bool IsFixedSize { get; } // 0x10318890 + public virtual bool IsReadOnly { get; } // 0x103188E0 + + // Methods + public void .ctor(IList innerList); // 0x10113500 + public virtual int Add(object value); // 0x10318570 + public virtual void Clear(); // 0x103185C0 + public virtual bool Contains(object value); // 0x10318610 + public virtual int IndexOf(object value); // 0x10318700 + public virtual void Insert(int index, object value); // 0x10318750 + public virtual void Remove(object value); // 0x103187F0 + public virtual void RemoveAt(int index); // 0x103187A0 + public virtual void CopyTo(Array array, int index); // 0x10318660 + public virtual IEnumerator GetEnumerator(); // 0x103186B0 +} + +// Namespace: System.Collections +[Serializable] +public sealed class BitArray : IEnumerable, ICloneable, ICollection // TypeDefIndex: 292 +{ + // Fields + private int[] m_array; // 0x08 + private int m_length; // 0x0C + private int _version; // 0x10 + + // Properties + public int Count { get; } // 0x100C5B30 + public bool IsReadOnly { get; } // 0x100EFBF0 + public bool IsSynchronized { get; } // 0x100EFBF0 + public bool Item { get; set; } // 0x10312A80 0x10312C90 + public int Length { get; set; } // 0x100C5B30 0x10313520 + public object SyncRoot { get; } // 0x100F7810 + + // Methods + public void .ctor(BitArray bits); // 0x103131E0 + public void .ctor(bool[] values); // 0x10312E00 + public void .ctor(byte[] bytes); // 0x10312F80 + public void .ctor(int[] values); // 0x10313140 + public void .ctor(int length); // 0x103130B0 + public void .ctor(int length, bool defaultValue); // 0x103132C0 + private void .ctor(int[] array, int length); // 0x100F97B0 + private byte getByte(int byteIndex); // 0x10313430 + private void setByte(int byteIndex, byte value); // 0x10313490 + private void checkOperand(BitArray operand); // 0x103133A0 + public object Clone(); // 0x103125D0 + public void CopyTo(Array array, int index); // 0x103126E0 + public BitArray Not(); // 0x10312B20 + public BitArray And(BitArray value); // 0x10312540 + public BitArray Or(BitArray value); // 0x10312B80 + public BitArray Xor(BitArray value); // 0x10312D70 + public bool Get(int index); // 0x10312A80 + public void Set(int index, bool value); // 0x10312C90 + public void SetAll(bool value); // 0x10312C10 + public IEnumerator GetEnumerator(); // 0x10312A30 +} + +// Namespace: +[Serializable] +private class BitArrayEnumerator : IEnumerator, ICloneable // TypeDefIndex: 293 +{ + // Fields + private BitArray _bitArray; // 0x08 + private bool _current; // 0x0C + private int _index; // 0x10 + private int _version; // 0x14 + + // Properties + public object Current { get; } // 0x10216150 + + // Methods + public void .ctor(BitArray ba); // 0x102160A0 + public object Clone(); // 0x10216010 + public bool MoveNext(); // 0x10216020 + public void Reset(); // 0x10216080 + private void checkVersion(); // 0x102160E0 +} + +// Namespace: System.Collections +[Serializable] +public class CaseInsensitiveComparer : IComparer // TypeDefIndex: 294 +{ + // Fields + private static CaseInsensitiveComparer defaultComparer; // 0x00 + private static CaseInsensitiveComparer defaultInvariantComparer; // 0x04 + private CultureInfo culture; // 0x08 + + // Properties + public static CaseInsensitiveComparer Default { get; } // 0x102166A0 + public static CaseInsensitiveComparer DefaultInvariant { get; } // 0x10216650 + + // Methods + public void .ctor(); // 0x102165F0 + private void .ctor(bool invariant); // 0x101AA300 + public void .ctor(CultureInfo culture); // 0x10216510 + private static void .cctor(); // 0x10216460 + public int Compare(object a, object b); // 0x102161F0 +} + +// Namespace: System.Collections +[Serializable] +public class CaseInsensitiveHashCodeProvider : IHashCodeProvider // TypeDefIndex: 295 +{ + // Fields + private static readonly CaseInsensitiveHashCodeProvider singletonInvariant; // 0x00 + private static CaseInsensitiveHashCodeProvider singleton; // 0x04 + private static readonly object sync; // 0x08 + private TextInfo m_text; // 0x08 + + // Properties + public static CaseInsensitiveHashCodeProvider Default { get; } // 0x10216D90 + public static CaseInsensitiveHashCodeProvider DefaultInvariant { get; } // 0x10216D40 + + // Methods + public void .ctor(); // 0x10216B70 + public void .ctor(CultureInfo culture); // 0x10216C60 + private static void .cctor(); // 0x10216A10 + private static bool AreEqual(CultureInfo a, CultureInfo b); // 0x10216780 + private static bool AreEqual(TextInfo info, CultureInfo culture); // 0x102166F0 + public int GetHashCode(object obj); // 0x10216820 +} + +// Namespace: System.Collections +[Serializable] +public abstract class CollectionBase : IEnumerable, ICollection, IList // TypeDefIndex: 296 +{ + // Fields + private ArrayList list; // 0x08 + + // Properties + private object System.Collections.ICollection.SyncRoot { get; } // 0x102173C0 + private bool System.Collections.ICollection.IsSynchronized { get; } // 0x10217350 + private bool System.Collections.IList.IsFixedSize { get; } // 0x102179E0 + private bool System.Collections.IList.IsReadOnly { get; } // 0x10217A50 + private object System.Collections.IList.Item { get; set; } // 0x10217AC0 0x10217B30 + public int Count { get; } // 0x10217E10 + public int Capacity { get; set; } // 0x10217DA0 0x10217ED0 + protected ArrayList InnerList { get; } // 0x10217E80 + protected IList List { get; } // 0x100F7810 + + // Methods + protected void .ctor(); // 0x100BF000 + protected void .ctor(int capacity); // 0x10217D50 + private void System.Collections.ICollection.CopyTo(Array array, int index); // 0x102172D0 + private int System.Collections.IList.Add(object value); // 0x10217430 + private bool System.Collections.IList.Contains(object value); // 0x10217610 + private int System.Collections.IList.IndexOf(object value); // 0x10217680 + private void System.Collections.IList.Insert(int index, object value); // 0x102176F0 + private void System.Collections.IList.Remove(object value); // 0x10217870 + public IEnumerator GetEnumerator(); // 0x102170F0 + public void Clear(); // 0x10217050 + public void RemoveAt(int index); // 0x102171C0 + protected virtual void OnClear(); // 0x100C5530 + protected virtual void OnClearComplete(); // 0x100C5530 + protected virtual void OnInsert(int index, object value); // 0x100C5530 + protected virtual void OnInsertComplete(int index, object value); // 0x100C5530 + protected virtual void OnRemove(int index, object value); // 0x100C5530 + protected virtual void OnRemoveComplete(int index, object value); // 0x100C5530 + protected virtual void OnSet(int index, object oldValue, object newValue); // 0x100C5530 + protected virtual void OnSetComplete(int index, object oldValue, object newValue); // 0x100C5530 + protected virtual void OnValidate(object value); // 0x10217160 +} + +// Namespace: System.Collections +internal sealed class CollectionDebuggerView // TypeDefIndex: 297 +{ + // Fields + private readonly ICollection c; // 0x08 + + // Properties + public object[] Items { get; } // 0x10217F40 + + // Methods + public void .ctor(ICollection col); // 0x10113500 +} + +// Namespace: System.Collections +[Serializable] +public sealed class Comparer : ISerializable, IComparer // TypeDefIndex: 298 +{ + // Fields + public static readonly Comparer Default; // 0x00 + public static readonly Comparer DefaultInvariant; // 0x04 + private CompareInfo m_compareInfo; // 0x08 + + // Methods + private void .ctor(); // 0x100BF000 + public void .ctor(CultureInfo culture); // 0x10218330 + private static void .cctor(); // 0x10218230 + public int Compare(object a, object b); // 0x10218010 + public void GetObjectData(SerializationInfo info, StreamingContext context); // 0x10218190 +} + +// Namespace: System.Collections +[Serializable] +public abstract class DictionaryBase : IEnumerable, ICollection, IDictionary // TypeDefIndex: 299 +{ + // Fields + private Hashtable hashtable; // 0x08 + + // Properties + private bool System.Collections.IDictionary.IsFixedSize { get; } // 0x100EFBF0 + private bool System.Collections.IDictionary.IsReadOnly { get; } // 0x100EFBF0 + private object System.Collections.IDictionary.Item { get; set; } // 0x102241A0 0x102241F0 + private ICollection System.Collections.IDictionary.Keys { get; } // 0x1019CEC0 + private ICollection System.Collections.IDictionary.Values { get; } // 0x1019CEF0 + private bool System.Collections.ICollection.IsSynchronized { get; } // 0x10223E70 + private object System.Collections.ICollection.SyncRoot { get; } // 0x10223EA0 + public int Count { get; } // 0x101273C0 + protected IDictionary Dictionary { get; } // 0x100F7810 + protected Hashtable InnerHashtable { get; } // 0x100BF0C0 + + // Methods + protected void .ctor(); // 0x10224360 + private void System.Collections.IDictionary.Add(object key, object value); // 0x10223ED0 + private void System.Collections.IDictionary.Remove(object key); // 0x10224010 + private bool System.Collections.IDictionary.Contains(object key); // 0x1019CD20 + private IEnumerator System.Collections.IEnumerable.GetEnumerator(); // 0x1019CDA0 + public void Clear(); // 0x10223AB0 + public void CopyTo(Array array, int index); // 0x10223B10 + private void DoCopy(Array array, int index); // 0x10223C50 + public IDictionaryEnumerator GetEnumerator(); // 0x1019CDA0 + protected virtual void OnClear(); // 0x100C5530 + protected virtual void OnClearComplete(); // 0x100C5530 + protected virtual object OnGet(object key, object currentValue); // 0x10223E60 + protected virtual void OnInsert(object key, object value); // 0x100C5530 + protected virtual void OnInsertComplete(object key, object value); // 0x100C5530 + protected virtual void OnSet(object key, object oldValue, object newValue); // 0x100C5530 + protected virtual void OnSetComplete(object key, object oldValue, object newValue); // 0x100C5530 + protected virtual void OnRemove(object key, object value); // 0x100C5530 + protected virtual void OnRemoveComplete(object key, object value); // 0x100C5530 + protected virtual void OnValidate(object key, object value); // 0x100C5530 +} + +// Namespace: System.Collections +[Serializable] +public struct DictionaryEntry // TypeDefIndex: 300 +{ + // Fields + private object _key; // 0x08 + private object _value; // 0x0C + + // Properties + public object Key { get; set; } // 0x10003A80 0x10005950 + public object Value { get; set; } // 0x10003A90 0x10018AB0 + + // Methods + public void .ctor(object key, object value); // 0x100075A0 +} + +// Namespace: System.Collections +[Serializable] +public class Hashtable : IEnumerable, ICloneable, ISerializable, ICollection, IDictionary, IDeserializationCallback // TypeDefIndex: 301 +{ + // Fields + private const int CHAIN_MARKER = -2147483648; // 0x00 + private int inUse; // 0x08 + private int modificationCount; // 0x0C + private float loadFactor; // 0x10 + private Slot[] table; // 0x14 + private int[] hashes; // 0x18 + private int threshold; // 0x1C + private HashKeys hashKeys; // 0x20 + private HashValues hashValues; // 0x24 + private IHashCodeProvider hcpRef; // 0x28 + private IComparer comparerRef; // 0x2C + private SerializationInfo serializationInfo; // 0x30 + private IEqualityComparer equalityComparer; // 0x34 + private static readonly int[] primeTbl; // 0x00 + + // Properties + protected IComparer comparer { get; set; } // 0x100EB200 0x100EB260 + protected IHashCodeProvider hcp { get; set; } // 0x100EB040 0x100EB250 + protected IEqualityComparer EqualityComparer { get; } // 0x100E9ED0 + public virtual int Count { get; } // 0x100BF0C0 + public virtual bool IsSynchronized { get; } // 0x100EFBF0 + public virtual object SyncRoot { get; } // 0x100F7810 + public virtual bool IsFixedSize { get; } // 0x100EFBF0 + public virtual bool IsReadOnly { get; } // 0x100EFBF0 + public virtual ICollection Keys { get; } // 0x102279E0 + public virtual ICollection Values { get; } // 0x10227A60 + public virtual object Item { get; set; } // 0x10227880 0x10227AE0 + + // Methods + public void .ctor(); // 0x10227250 + public void .ctor(int capacity, float loadFactor, IHashCodeProvider hcp, IComparer comparer); // 0x102276B0 + public void .ctor(int capacity, float loadFactor); // 0x10227850 + public void .ctor(int capacity); // 0x10227680 + internal void .ctor(Hashtable source); // 0x10227300 + public void .ctor(int capacity, IHashCodeProvider hcp, IComparer comparer); // 0x10227270 + public void .ctor(IDictionary d, float loadFactor, IHashCodeProvider hcp, IComparer comparer); // 0x10227420 + public void .ctor(IDictionary d, float loadFactor); // 0x102271A0 + public void .ctor(IDictionary d); // 0x102273F0 + public void .ctor(IDictionary d, IHashCodeProvider hcp, IComparer comparer); // 0x102272D0 + public void .ctor(IHashCodeProvider hcp, IComparer comparer); // 0x10227650 + public void .ctor(SerializationInfo info, StreamingContext context); // 0x10227200 + public void .ctor(IDictionary d, IEqualityComparer equalityComparer); // 0x10227220 + public void .ctor(IDictionary d, float loadFactor, IEqualityComparer equalityComparer); // 0x102271D0 + public void .ctor(IEqualityComparer equalityComparer); // 0x102272A0 + public void .ctor(int capacity, IEqualityComparer equalityComparer); // 0x10227620 + public void .ctor(int capacity, float loadFactor, IEqualityComparer equalityComparer); // 0x10227170 + private static void .cctor(); // 0x10227120 + private IEnumerator System.Collections.IEnumerable.GetEnumerator(); // 0x10226EB0 + public virtual void CopyTo(Array array, int arrayIndex); // 0x10225B70 + public virtual void Add(object key, object value); // 0x102255F0 + public virtual void Clear(); // 0x102256E0 + public virtual bool Contains(object key); // 0x10225A10 + public virtual IDictionaryEnumerator GetEnumerator(); // 0x10225EB0 + public virtual void Remove(object key); // 0x10226CB0 + public virtual bool ContainsKey(object key); // 0x102258A0 + public virtual bool ContainsValue(object value); // 0x102258C0 + public virtual object Clone(); // 0x10225780 + public virtual void GetObjectData(SerializationInfo info, StreamingContext context); // 0x10225FD0 + public virtual void OnDeserialization(object sender); // 0x10226250 + public static Hashtable Synchronized(Hashtable table); // 0x10226E30 + protected virtual int GetHash(object key); // 0x10225F40 + protected virtual bool KeyEquals(object item, object key); // 0x10226140 + private void AdjustThreshold(); // 0x10225610 + private void SetTable(Slot[] table, int[] hashes); // 0x10226DA0 + private int Find(object key); // 0x10225D60 + private void Rehash(); // 0x10226AE0 + private void PutImpl(object key, object value, bool overwrite); // 0x102267E0 + private void CopyToArray(Array arr, int i, EnumeratorMode mode); // 0x10225A30 + internal static bool TestPrime(int x); // 0x10226F40 + internal static int CalcPrime(int x); // 0x10225650 + internal static int ToPrime(int x); // 0x10226FA0 +} + +// Namespace: +[Serializable] +internal struct Slot // TypeDefIndex: 302 +{ + // Fields + internal object key; // 0x08 + internal object value; // 0x0C + +} + +// Namespace: +[Serializable] +internal class KeyMarker // TypeDefIndex: 303 +{ + // Fields + public static readonly KeyMarker Removed; // 0x00 + + // Methods + public void .ctor(); // 0x100BF000 + private static void .cctor(); // 0x10227B00 +} + +// Namespace: +private enum EnumeratorMode // TypeDefIndex: 304 +{ + KEY_MODE = 0, + VALUE_MODE = 1, + ENTRY_MODE = 2 +} + +// Namespace: +[Serializable] +private sealed class Enumerator : IEnumerator, IDictionaryEnumerator // TypeDefIndex: 305 +{ + // Fields + private Hashtable host; // 0x08 + private int stamp; // 0x0C + private int pos; // 0x10 + private int size; // 0x14 + private EnumeratorMode mode; // 0x18 + private object currentKey; // 0x1C + private object currentValue; // 0x20 + private static readonly string xstr; // 0x00 + + // Properties + public DictionaryEntry Entry { get; } // 0x10224E80 + public object Key { get; } // 0x10224F90 + public object Value { get; } // 0x10225140 + public object Current { get; } // 0x10224DB0 + + // Methods + public void .ctor(Hashtable host, EnumeratorMode mode); // 0x10224AC0 + public void .ctor(Hashtable host); // 0x10224A10 + private static void .cctor(); // 0x102248D0 + private void FailFast(); // 0x10224450 + public void Reset(); // 0x10224800 + public bool MoveNext(); // 0x102245E0 +} + +// Namespace: +[Serializable] +private class HashKeys : IEnumerable, ICollection // TypeDefIndex: 306 +{ + // Fields + private Hashtable host; // 0x08 + + // Properties + public virtual int Count { get; } // 0x101273C0 + public virtual bool IsSynchronized { get; } // 0x10223E70 + public virtual object SyncRoot { get; } // 0x10223EA0 + + // Methods + public void .ctor(Hashtable host); // 0x10225360 + public virtual void CopyTo(Array array, int arrayIndex); // 0x102251B0 + public virtual IEnumerator GetEnumerator(); // 0x102252D0 +} + +// Namespace: +[Serializable] +private class HashValues : IEnumerable, ICollection // TypeDefIndex: 307 +{ + // Fields + private Hashtable host; // 0x08 + + // Properties + public virtual int Count { get; } // 0x101273C0 + public virtual bool IsSynchronized { get; } // 0x10223E70 + public virtual object SyncRoot { get; } // 0x10223EA0 + + // Methods + public void .ctor(Hashtable host); // 0x10225580 + public virtual void CopyTo(Array array, int arrayIndex); // 0x102253D0 + public virtual IEnumerator GetEnumerator(); // 0x102254F0 +} + +// Namespace: +[Serializable] +private class SyncHashtable : Hashtable, IEnumerable // TypeDefIndex: 308 +{ + // Fields + private Hashtable host; // 0x38 + + // Properties + public override int Count { get; } // 0x1022C240 + public override bool IsSynchronized { get; } // 0x100E5880 + public override object SyncRoot { get; } // 0x1022C400 + public override bool IsFixedSize { get; } // 0x1022C270 + public override bool IsReadOnly { get; } // 0x1022C2A0 + public override ICollection Keys { get; } // 0x1022C300 + public override ICollection Values { get; } // 0x1022C430 + public override object Item { get; set; } // 0x1022C2D0 0x1022C530 + + // Methods + public void .ctor(Hashtable host); // 0x1022C0B0 + internal void .ctor(SerializationInfo info, StreamingContext context); // 0x1022C140 + private IEnumerator System.Collections.IEnumerable.GetEnumerator(); // 0x1022C020 + public override void GetObjectData(SerializationInfo info, StreamingContext context); // 0x1022BEE0 + public override void CopyTo(Array array, int arrayIndex); // 0x1022BE10 + public override void Add(object key, object value); // 0x1022B9F0 + public override void Clear(); // 0x1022BAF0 + public override bool Contains(object key); // 0x1022BDE0 + public override IDictionaryEnumerator GetEnumerator(); // 0x1022BE50 + public override void Remove(object key); // 0x1022BF30 + public override bool ContainsKey(object key); // 0x1022BD80 + public override bool ContainsValue(object value); // 0x1022BDB0 + public override object Clone(); // 0x1022BBE0 +} + +// Namespace: System.Collections +public interface IComparer // TypeDefIndex: 309 +{ + // Methods + int Compare(object x, object y); +} + +// Namespace: System.Collections +public interface IDictionary : IEnumerable, ICollection // TypeDefIndex: 310 +{ + // Properties + bool IsFixedSize { get; } + bool IsReadOnly { get; } + object Item { get; set; } + ICollection Keys { get; } + ICollection Values { get; } + + // Methods + void Add(object key, object value); + void Clear(); + bool Contains(object key); + IDictionaryEnumerator GetEnumerator(); + void Remove(object key); +} + +// Namespace: System.Collections +public interface IDictionaryEnumerator : IEnumerator // TypeDefIndex: 311 +{ + // Properties + DictionaryEntry Entry { get; } + object Key { get; } + object Value { get; } + +} + +// Namespace: System.Collections +public interface IEqualityComparer // TypeDefIndex: 312 +{ + // Methods + bool Equals(object x, object y); + int GetHashCode(object obj); +} + +// Namespace: System.Collections +public interface IHashCodeProvider // TypeDefIndex: 313 +{ + // Methods + int GetHashCode(object obj); +} + +// Namespace: System.Collections +[Serializable] +public class Queue : IEnumerable, ICloneable, ICollection // TypeDefIndex: 314 +{ + // Fields + private object[] _array; // 0x08 + private int _head; // 0x0C + private int _size; // 0x10 + private int _tail; // 0x14 + private int _growFactor; // 0x18 + private int _version; // 0x1C + + // Properties + public virtual int Count { get; } // 0x100BFC20 + public virtual bool IsSynchronized { get; } // 0x100EFBF0 + public virtual object SyncRoot { get; } // 0x100F7810 + + // Methods + public void .ctor(); // 0x10228E70 + public void .ctor(int capacity); // 0x10228EC0 + public void .ctor(ICollection col); // 0x10228C70 + public void .ctor(int capacity, float growFactor); // 0x10228EE0 + public virtual void CopyTo(Array array, int index); // 0x102286D0 + public virtual IEnumerator GetEnumerator(); // 0x10228A10 + public virtual object Clone(); // 0x10228580 + public virtual void Clear(); // 0x10228510 + public virtual bool Contains(object obj); // 0x10228620 + public virtual object Dequeue(); // 0x10228840 + public virtual void Enqueue(object obj); // 0x102288F0 + public virtual object Peek(); // 0x10228A70 + public static Queue Synchronized(Queue queue); // 0x10228AF0 + public virtual object[] ToArray(); // 0x10228BA0 + public virtual void TrimToSize(); // 0x10228C00 + private void grow(); // 0x10228FB0 +} + +// Namespace: +private class SyncQueue : Queue // TypeDefIndex: 315 +{ + // Fields + private Queue queue; // 0x20 + + // Properties + public override int Count { get; } // 0x1022D070 + public override bool IsSynchronized { get; } // 0x100E5880 + public override object SyncRoot { get; } // 0x1022D160 + + // Methods + internal void .ctor(Queue queue); // 0x1022D020 + public override void CopyTo(Array array, int index); // 0x1022C9C0 + public override IEnumerator GetEnumerator(); // 0x1022CC70 + public override object Clone(); // 0x1022C710 + public override void Clear(); // 0x1022C630 + public override void TrimToSize(); // 0x1022CF40 + public override bool Contains(object obj); // 0x1022C8C0 + public override object Dequeue(); // 0x1022CAA0 + public override void Enqueue(object obj); // 0x1022CB90 + public override object Peek(); // 0x1022CD60 + public override object[] ToArray(); // 0x1022CE50 +} + +// Namespace: +[Serializable] +private class QueueEnumerator : IEnumerator, ICloneable // TypeDefIndex: 316 +{ + // Fields + private Queue queue; // 0x08 + private int _version; // 0x0C + private int current; // 0x10 + + // Properties + public virtual object Current { get; } // 0x10228470 + + // Methods + internal void .ctor(Queue q); // 0x10228430 + public object Clone(); // 0x102282B0 + public virtual bool MoveNext(); // 0x10228330 + public virtual void Reset(); // 0x102283C0 +} + +// Namespace: System.Collections +[Serializable] +public abstract class ReadOnlyCollectionBase : IEnumerable, ICollection // TypeDefIndex: 317 +{ + // Fields + private ArrayList list; // 0x08 + + // Properties + private object System.Collections.ICollection.SyncRoot { get; } // 0x1019CEF0 + private bool System.Collections.ICollection.IsSynchronized { get; } // 0x1019CEC0 + public virtual int Count { get; } // 0x101273C0 + protected ArrayList InnerList { get; } // 0x100BF0C0 + + // Methods + protected void .ctor(); // 0x10229150 + private IEnumerator System.Collections.IEnumerable.GetEnumerator(); // 0x1020EED0 + private void System.Collections.ICollection.CopyTo(Array array, int index); // 0x10229070 + public virtual IEnumerator GetEnumerator(); // 0x10229040 +} + +// Namespace: System.Collections +[Serializable] +public class SortedList : IEnumerable, ICloneable, ICollection, IDictionary // TypeDefIndex: 318 +{ + // Fields + private static readonly int INITIAL_SIZE; // 0x00 + private int inUse; // 0x08 + private int modificationCount; // 0x0C + private Slot[] table; // 0x10 + private IComparer comparer; // 0x14 + private int defaultCapacity; // 0x18 + + // Properties + public virtual int Count { get; } // 0x100BF0C0 + public virtual bool IsSynchronized { get; } // 0x100EFBF0 + public virtual object SyncRoot { get; } // 0x100F7810 + public virtual bool IsFixedSize { get; } // 0x100EFBF0 + public virtual bool IsReadOnly { get; } // 0x100EFBF0 + public virtual ICollection Keys { get; } // 0x1022ADA0 + public virtual ICollection Values { get; } // 0x1022ADF0 + public virtual object Item { get; set; } // 0x1022AD00 0x1022AF10 + public virtual int Capacity { get; set; } // 0x101780C0 0x1022AE40 + + // Methods + public void .ctor(); // 0x1022AC80 + public void .ctor(int initialCapacity); // 0x1022ACE0 + public void .ctor(IComparer comparer, int capacity); // 0x1022A8E0 + public void .ctor(IComparer comparer); // 0x1022A9C0 + public void .ctor(IDictionary d); // 0x1022A8C0 + public void .ctor(IDictionary d, IComparer comparer); // 0x1022AA60 + private static void .cctor(); // 0x1022A890 + private IEnumerator System.Collections.IEnumerable.GetEnumerator(); // 0x1022A780 + public virtual void Add(object key, object value); // 0x102291A0 + public virtual void Clear(); // 0x102291C0 + public virtual bool Contains(object key); // 0x102293D0 + public virtual IDictionaryEnumerator GetEnumerator(); // 0x10229B80 + public virtual void Remove(object key); // 0x1022A520 + public virtual void CopyTo(Array array, int arrayIndex); // 0x102296A0 + public virtual object Clone(); // 0x10229230 + public virtual IList GetKeyList(); // 0x10229C20 + public virtual IList GetValueList(); // 0x10229D10 + public virtual void RemoveAt(int index); // 0x1022A430 + public virtual int IndexOfKey(object key); // 0x10229D60 + public virtual int IndexOfValue(object value); // 0x10229E70 + public virtual bool ContainsKey(object key); // 0x10229290 + public virtual bool ContainsValue(object value); // 0x102293A0 + public virtual object GetByIndex(int index); // 0x10229AE0 + public virtual void SetByIndex(int index, object value); // 0x1022A5D0 + public virtual object GetKey(int index); // 0x10229C70 + public static SortedList Synchronized(SortedList list); // 0x1022A670 + public virtual void TrimToSize(); // 0x1022A7D0 + private void Resize(int n, bool copy); // 0x1022A560 + private void EnsureCapacity(int n, int free); // 0x10229890 + private void PutImpl(object key, object value, bool overwrite); // 0x10229F40 + private object GetImpl(object key); // 0x10229BD0 + private void InitTable(int capacity, bool forceSize); // 0x10229EE0 + private void CopyToArray(Array arr, int i, EnumeratorMode mode); // 0x102294E0 + private int Find(object key); // 0x102299E0 +} + +// Namespace: +[Serializable] +internal struct Slot // TypeDefIndex: 319 +{ + // Fields + internal object key; // 0x08 + internal object value; // 0x0C + +} + +// Namespace: +private enum EnumeratorMode // TypeDefIndex: 320 +{ + KEY_MODE = 0, + VALUE_MODE = 1, + ENTRY_MODE = 2 +} + +// Namespace: +private sealed class Enumerator : IEnumerator, ICloneable, IDictionaryEnumerator // TypeDefIndex: 321 +{ + // Fields + private SortedList host; // 0x08 + private int stamp; // 0x0C + private int pos; // 0x10 + private int size; // 0x14 + private EnumeratorMode mode; // 0x18 + private object currentKey; // 0x1C + private object currentValue; // 0x20 + private bool invalid; // 0x24 + private static readonly string xstr; // 0x00 + + // Properties + public DictionaryEntry Entry { get; } // 0x10224EF0 + public object Key { get; } // 0x10225000 + public object Value { get; } // 0x102250A0 + public object Current { get; } // 0x10224BB0 + + // Methods + public void .ctor(SortedList host, EnumeratorMode mode); // 0x10224900 + public void .ctor(SortedList host); // 0x102249F0 + private static void .cctor(); // 0x102248A0 + public void Reset(); // 0x10224740 + public bool MoveNext(); // 0x102244F0 + public object Clone(); // 0x102243C0 +} + +// Namespace: +[Serializable] +private class ListKeys : IEnumerable, ICollection, IList // TypeDefIndex: 322 +{ + // Fields + private SortedList host; // 0x08 + + // Properties + public virtual int Count { get; } // 0x10227E70 + public virtual bool IsSynchronized { get; } // 0x10227EA0 + public virtual object SyncRoot { get; } // 0x101273C0 + public virtual bool IsFixedSize { get; } // 0x100E5880 + public virtual bool IsReadOnly { get; } // 0x100E5880 + public virtual object Item { get; set; } // 0x10227ED0 0x10227F00 + + // Methods + public void .ctor(SortedList host); // 0x10227E00 + public virtual void CopyTo(Array array, int arrayIndex); // 0x10227C60 + public virtual int Add(object value); // 0x10227B90 + public virtual void Clear(); // 0x10227BE0 + public virtual bool Contains(object key); // 0x10227C30 + public virtual int IndexOf(object key); // 0x10227CE0 + public virtual void Insert(int index, object value); // 0x10227D10 + public virtual void Remove(object value); // 0x10227DB0 + public virtual void RemoveAt(int index); // 0x10227D60 + public virtual IEnumerator GetEnumerator(); // 0x10227C90 +} + +// Namespace: +[Serializable] +private class ListValues : IEnumerable, ICollection, IList // TypeDefIndex: 323 +{ + // Fields + private SortedList host; // 0x08 + + // Properties + public virtual int Count { get; } // 0x10227E70 + public virtual bool IsSynchronized { get; } // 0x10227EA0 + public virtual object SyncRoot { get; } // 0x101273C0 + public virtual bool IsFixedSize { get; } // 0x100E5880 + public virtual bool IsReadOnly { get; } // 0x100E5880 + public virtual object Item { get; set; } // 0x10228230 0x10228260 + + // Methods + public void .ctor(SortedList host); // 0x102281C0 + public virtual void CopyTo(Array array, int arrayIndex); // 0x10228020 + public virtual int Add(object value); // 0x10227F50 + public virtual void Clear(); // 0x10227FA0 + public virtual bool Contains(object value); // 0x10227FF0 + public virtual int IndexOf(object value); // 0x102280A0 + public virtual void Insert(int index, object value); // 0x102280D0 + public virtual void Remove(object value); // 0x10228170 + public virtual void RemoveAt(int index); // 0x10228120 + public virtual IEnumerator GetEnumerator(); // 0x10228050 +} + +// Namespace: +private class SynchedSortedList : SortedList // TypeDefIndex: 324 +{ + // Fields + private SortedList host; // 0x1C + + // Properties + public override int Capacity { get; set; } // 0x1022EFB0 0x1022F4B0 + public override int Count { get; } // 0x1022F0B0 + public override bool IsSynchronized { get; } // 0x100E5880 + public override object SyncRoot { get; } // 0x1022F380 + public override bool IsFixedSize { get; } // 0x1022F0E0 + public override bool IsReadOnly { get; } // 0x1022F110 + public override ICollection Keys { get; } // 0x1022F280 + public override ICollection Values { get; } // 0x1022F3B0 + public override object Item { get; set; } // 0x1022F140 0x1022F5A0 + + // Methods + public void .ctor(SortedList host); // 0x1022EEE0 + public override void CopyTo(Array array, int arrayIndex); // 0x1022E2D0 + public override void Add(object key, object value); // 0x1022DC70 + public override void Clear(); // 0x1022DD60 + public override bool Contains(object key); // 0x1022E1D0 + public override IDictionaryEnumerator GetEnumerator(); // 0x1022E4D0 + public override void Remove(object key); // 0x1022EC00 + public override bool ContainsKey(object key); // 0x1022DFD0 + public override bool ContainsValue(object value); // 0x1022E0D0 + public override object Clone(); // 0x1022DE50 + public override object GetByIndex(int index); // 0x1022E3D0 + public override object GetKey(int index); // 0x1022E6F0 + public override IList GetKeyList(); // 0x1022E5D0 + public override IList GetValueList(); // 0x1022E7F0 + public override void RemoveAt(int index); // 0x1022EB10 + public override int IndexOfKey(object key); // 0x1022E910 + public override int IndexOfValue(object val); // 0x1022EA10 + public override void SetByIndex(int index, object value); // 0x1022ECF0 + public override void TrimToSize(); // 0x1022EDF0 +} + +// Namespace: System.Collections +[Serializable] +public class Stack : IEnumerable, ICloneable, ICollection // TypeDefIndex: 325 +{ + // Fields + private const int default_capacity = 16; // 0x00 + private object[] contents; // 0x08 + private int current; // 0x0C + private int count; // 0x10 + private int capacity; // 0x14 + private int modCount; // 0x18 + + // Properties + public virtual int Count { get; } // 0x100BFC20 + public virtual bool IsSynchronized { get; } // 0x100EFBF0 + public virtual object SyncRoot { get; } // 0x100F7810 + + // Methods + public void .ctor(); // 0x1022B690 + public void .ctor(ICollection col); // 0x1022B6F0 + public void .ctor(int initialCapacity); // 0x1022B960 + private void Resize(int ncapacity); // 0x1022B510 + public static Stack Synchronized(Stack stack); // 0x1022B570 + public virtual void Clear(); // 0x1022AFF0 + public virtual object Clone(); // 0x1022B050 + public virtual bool Contains(object obj); // 0x1022B0C0 + public virtual void CopyTo(Array array, int index); // 0x1022B170 + public virtual IEnumerator GetEnumerator(); // 0x1022B2E0 + public virtual object Peek(); // 0x1022B340 + public virtual object Pop(); // 0x1022B3C0 + public virtual void Push(object obj); // 0x1022B480 + public virtual object[] ToArray(); // 0x1022B630 +} + +// Namespace: +[Serializable] +private class SyncStack : Stack // TypeDefIndex: 326 +{ + // Fields + private Stack stack; // 0x1C + + // Properties + public override int Count { get; } // 0x1022DB80 + public override bool IsSynchronized { get; } // 0x100E5880 + public override object SyncRoot { get; } // 0x101A1970 + + // Methods + internal void .ctor(Stack s); // 0x1022DB20 + public override void Clear(); // 0x1022D190 + public override object Clone(); // 0x1022D270 + public override bool Contains(object obj); // 0x1022D470 + public override void CopyTo(Array array, int index); // 0x1022D570 + public override IEnumerator GetEnumerator(); // 0x1022D650 + public override object Peek(); // 0x1022D770 + public override object Pop(); // 0x1022D860 + public override void Push(object obj); // 0x1022D950 + public override object[] ToArray(); // 0x1022DA30 +} + +// Namespace: +private class Enumerator : IEnumerator, ICloneable // TypeDefIndex: 327 +{ + // Fields + private const int EOF = -1; // 0x00 + private const int BOF = -2; // 0x00 + private Stack stack; // 0x08 + private int modCount; // 0x0C + private int current; // 0x10 + + // Properties + public virtual object Current { get; } // 0x10224B20 + + // Methods + internal void .ctor(Stack s); // 0x10224A80 + public object Clone(); // 0x10216010 + public virtual bool MoveNext(); // 0x102246B0 + public virtual void Reset(); // 0x10224830 +} + +// Namespace: System.Configuration.Assemblies +[Serializable] +public struct AssemblyHash : ICloneable // TypeDefIndex: 328 +{ + // Fields + private AssemblyHashAlgorithm _algorithm; // 0x08 + private byte[] _value; // 0x0C + public static readonly AssemblyHash Empty; // 0x00 + + // Properties + public AssemblyHashAlgorithm Algorithm { get; set; } // 0x10003A80 0x10005950 + + // Methods + public void .ctor(AssemblyHashAlgorithm algorithm, byte[] value); // 0x10018AE0 + public void .ctor(byte[] value); // 0x10018AC0 + private static void .cctor(); // 0x10215F30 + public object Clone(); // 0x10018A40 + public byte[] GetValue(); // 0x10003A90 + public void SetValue(byte[] value); // 0x10018AB0 +} + +// Namespace: System.Configuration.Assemblies +[Serializable] +public enum AssemblyHashAlgorithm // TypeDefIndex: 329 +{ + None = 0, + MD5 = 32771, + SHA1 = 32772 +} + +// Namespace: System.Configuration.Assemblies +[Serializable] +public enum AssemblyVersionCompatibility // TypeDefIndex: 330 +{ + SameMachine = 1, + SameProcess = 2, + SameDomain = 3 +} + +// Namespace: System.Deployment.Internal +public static class InternalActivationContextHelper // TypeDefIndex: 331 +{ + // Methods + public static object GetActivationContextData(ActivationContext appInfo); // 0x102F3C70 + public static object GetApplicationComponentManifest(ActivationContext appInfo); // 0x102F3CC0 + public static byte[] GetApplicationManifestBytes(ActivationContext appInfo); // 0x102F3D10 + public static object GetDeploymentComponentManifest(ActivationContext appInfo); // 0x102F3D60 + public static byte[] GetDeploymentManifestBytes(ActivationContext appInfo); // 0x102F3DB0 + public static bool IsFirstRun(ActivationContext appInfo); // 0x102F3E00 + public static void PrepareForExecution(ActivationContext appInfo); // 0x102F3E50 +} + +// Namespace: System.Deployment.Internal +public static class InternalApplicationIdentityHelper // TypeDefIndex: 332 +{ + // Methods + public static object GetActivationContextData(ActivationContext appInfo); // 0x102F3EA0 + public static object GetInternalAppId(ApplicationIdentity id); // 0x102F3EF0 +} + +// Namespace: System.Diagnostics.CodeAnalysis +public sealed class SuppressMessageAttribute : Attribute // TypeDefIndex: 333 +{ + // Fields + private string category; // 0x08 + private string checkId; // 0x0C + private string justification; // 0x10 + private string messageId; // 0x14 + private string scope; // 0x18 + private string target; // 0x1C + + // Properties + public string Category { get; } // 0x100BF0C0 + public string CheckId { get; } // 0x100C5B30 + public string Justification { get; set; } // 0x100BFC20 0x100C5B40 + public string MessageId { get; set; } // 0x100EF0C0 0x10127B00 + public string Scope { get; set; } // 0x100EE580 0x10113F40 + public string Target { get; set; } // 0x100F85F0 0x10113F50 + + // Methods + public void .ctor(string category, string checkId); // 0x101237E0 +} + +// Namespace: System.Diagnostics.SymbolStore +public interface ISymbolBinder // TypeDefIndex: 334 +{ + // Methods + ISymbolReader GetReader(int importer, string filename, string searchPath); +} + +// Namespace: System.Diagnostics.SymbolStore +public interface ISymbolBinder1 // TypeDefIndex: 335 +{ + // Methods + ISymbolReader GetReader(IntPtr importer, string filename, string searchPath); +} + +// Namespace: System.Diagnostics.SymbolStore +public interface ISymbolDocument // TypeDefIndex: 336 +{ + // Properties + Guid CheckSumAlgorithmId { get; } + Guid DocumentType { get; } + bool HasEmbeddedSource { get; } + Guid Language { get; } + Guid LanguageVendor { get; } + int SourceLength { get; } + string URL { get; } + + // Methods + int FindClosestLine(int line); + byte[] GetCheckSum(); + byte[] GetSourceRange(int startLine, int startColumn, int endLine, int endColumn); +} + +// Namespace: System.Diagnostics.SymbolStore +public interface ISymbolDocumentWriter // TypeDefIndex: 337 +{ + // Methods + void SetCheckSum(Guid algorithmId, byte[] checkSum); + void SetSource(byte[] source); +} + +// Namespace: System.Diagnostics.SymbolStore +public interface ISymbolMethod // TypeDefIndex: 338 +{ + // Properties + ISymbolScope RootScope { get; } + int SequencePointCount { get; } + SymbolToken Token { get; } + + // Methods + ISymbolNamespace GetNamespace(); + int GetOffset(ISymbolDocument document, int line, int column); + ISymbolVariable[] GetParameters(); + int[] GetRanges(ISymbolDocument document, int line, int column); + ISymbolScope GetScope(int offset); + void GetSequencePoints(int[] offsets, ISymbolDocument[] documents, int[] lines, int[] columns, int[] endLines, int[] endColumns); + bool GetSourceStartEnd(ISymbolDocument[] docs, int[] lines, int[] columns); +} + +// Namespace: System.Diagnostics.SymbolStore +public interface ISymbolNamespace // TypeDefIndex: 339 +{ + // Properties + string Name { get; } + + // Methods + ISymbolNamespace[] GetNamespaces(); + ISymbolVariable[] GetVariables(); +} + +// Namespace: System.Diagnostics.SymbolStore +public interface ISymbolReader // TypeDefIndex: 340 +{ + // Properties + SymbolToken UserEntryPoint { get; } + + // Methods + ISymbolDocument GetDocument(string url, Guid language, Guid languageVendor, Guid documentType); + ISymbolDocument[] GetDocuments(); + ISymbolVariable[] GetGlobalVariables(); + ISymbolMethod GetMethod(SymbolToken method); + ISymbolMethod GetMethod(SymbolToken method, int version); + ISymbolMethod GetMethodFromDocumentPosition(ISymbolDocument document, int line, int column); + ISymbolNamespace[] GetNamespaces(); + byte[] GetSymAttribute(SymbolToken parent, string name); + ISymbolVariable[] GetVariables(SymbolToken parent); +} + +// Namespace: System.Diagnostics.SymbolStore +public interface ISymbolScope // TypeDefIndex: 341 +{ + // Properties + int EndOffset { get; } + ISymbolMethod Method { get; } + ISymbolScope Parent { get; } + int StartOffset { get; } + + // Methods + ISymbolScope[] GetChildren(); + ISymbolVariable[] GetLocals(); + ISymbolNamespace[] GetNamespaces(); +} + +// Namespace: System.Diagnostics.SymbolStore +public interface ISymbolVariable // TypeDefIndex: 342 +{ + // Properties + int AddressField1 { get; } + int AddressField2 { get; } + int AddressField3 { get; } + SymAddressKind AddressKind { get; } + object Attributes { get; } + int EndOffset { get; } + string Name { get; } + int StartOffset { get; } + + // Methods + byte[] GetSignature(); +} + +// Namespace: System.Diagnostics.SymbolStore +public interface ISymbolWriter // TypeDefIndex: 343 +{ + // Methods + void Close(); + void CloseMethod(); + void CloseNamespace(); + void CloseScope(int endOffset); + ISymbolDocumentWriter DefineDocument(string url, Guid language, Guid languageVendor, Guid documentType); + void DefineField(SymbolToken parent, string name, FieldAttributes attributes, byte[] signature, SymAddressKind addrKind, int addr1, int addr2, int addr3); + void DefineGlobalVariable(string name, FieldAttributes attributes, byte[] signature, SymAddressKind addrKind, int addr1, int addr2, int addr3); + void DefineLocalVariable(string name, FieldAttributes attributes, byte[] signature, SymAddressKind addrKind, int addr1, int addr2, int addr3, int startOffset, int endOffset); + void DefineParameter(string name, ParameterAttributes attributes, int sequence, SymAddressKind addrKind, int addr1, int addr2, int addr3); + void DefineSequencePoints(ISymbolDocumentWriter document, int[] offsets, int[] lines, int[] columns, int[] endLines, int[] endColumns); + void Initialize(IntPtr emitter, string filename, bool fFullBuild); + void OpenMethod(SymbolToken method); + void OpenNamespace(string name); + int OpenScope(int startOffset); + void SetMethodSourceRange(ISymbolDocumentWriter startDoc, int startLine, int startColumn, ISymbolDocumentWriter endDoc, int endLine, int endColumn); + void SetScopeRange(int scopeID, int startOffset, int endOffset); + void SetSymAttribute(SymbolToken parent, string name, byte[] data); + void SetUnderlyingWriter(IntPtr underlyingWriter); + void SetUserEntryPoint(SymbolToken entryMethod); + void UsingNamespace(string fullName); +} + +// Namespace: System.Diagnostics.SymbolStore +[Serializable] +public enum SymAddressKind // TypeDefIndex: 344 +{ + ILOffset = 1, + NativeRVA = 2, + NativeRegister = 3, + NativeRegisterRelative = 4, + NativeOffset = 5, + NativeRegisterRegister = 6, + NativeRegisterStack = 7, + NativeStackRegister = 8, + BitField = 9, + NativeSectionOffset = 10 +} + +// Namespace: System.Diagnostics.SymbolStore +public class SymDocumentType // TypeDefIndex: 345 +{ + // Fields + public static readonly Guid Text; // 0x00 + + // Methods + public void .ctor(); // 0x100BF000 +} + +// Namespace: System.Diagnostics.SymbolStore +public class SymLanguageType // TypeDefIndex: 346 +{ + // Fields + public static readonly Guid Basic; // 0x00 + public static readonly Guid C; // 0x10 + public static readonly Guid Cobol; // 0x20 + public static readonly Guid CPlusPlus; // 0x30 + public static readonly Guid CSharp; // 0x40 + public static readonly Guid ILAssembly; // 0x50 + public static readonly Guid Java; // 0x60 + public static readonly Guid JScript; // 0x70 + public static readonly Guid MCPlusPlus; // 0x80 + public static readonly Guid Pascal; // 0x90 + public static readonly Guid SMC; // 0xA0 + + // Methods + public void .ctor(); // 0x100BF000 +} + +// Namespace: System.Diagnostics.SymbolStore +public class SymLanguageVendor // TypeDefIndex: 347 +{ + // Fields + public static readonly Guid Microsoft; // 0x00 + + // Methods + public void .ctor(); // 0x100BF000 +} + +// Namespace: System.Diagnostics.SymbolStore +public struct SymbolToken // TypeDefIndex: 348 +{ + // Fields + private int _val; // 0x08 + + // Methods + public void .ctor(int val); // 0x10005950 + public override bool Equals(object obj); // 0x1000A5C0 + public bool Equals(SymbolToken obj); // 0x10004830 + public override int GetHashCode(); // 0x10006260 + public int GetToken(); // 0x10003A80 + public static bool op_Equality(SymbolToken a, SymbolToken b); // 0x101C6A60 + public static bool op_Inequality(SymbolToken a, SymbolToken b); // 0x101C6A70 +} + +// Namespace: System.Diagnostics +public sealed class DebuggableAttribute : Attribute // TypeDefIndex: 349 +{ + // Fields + private bool JITTrackingEnabledFlag; // 0x08 + private bool JITOptimizerDisabledFlag; // 0x09 + private DebuggingModes debuggingModes; // 0x0C + + // Properties + public DebuggingModes DebuggingFlags { get; } // 0x100C5B30 + public bool IsJITTrackingEnabled { get; } // 0x100EA020 + public bool IsJITOptimizerDisabled { get; } // 0x10117290 + + // Methods + public void .ctor(bool isJITTrackingEnabled, bool isJITOptimizerDisabled); // 0x102EC860 + public void .ctor(DebuggingModes modes); // 0x102EC8A0 +} + +// Namespace: +public enum DebuggingModes // TypeDefIndex: 350 +{ + None = 0, + Default = 1, + IgnoreSymbolStoreSequencePoints = 2, + EnableEditAndContinue = 4, + DisableOptimizations = 256 +} + +// Namespace: System.Diagnostics +public sealed class Debugger // TypeDefIndex: 351 +{ + // Fields + public static readonly string DefaultCategory; // 0x00 + + // Properties + public static bool IsAttached { get; } // 0x102ECAB0 + + // Methods + public void .ctor(); // 0x100BF000 + private static void .cctor(); // 0x102ECA50 + private static bool IsAttached_internal(); // 0x102EC9F0 + public static void Break(); // 0x100C5530 + public static bool IsLogging(); // 0x100EFBF0 + public static bool Launch(); // 0x102ECA00 + public static void Log(int level, string category, string message); // 0x100C5530 +} + +// Namespace: System.Diagnostics +public sealed class DebuggerBrowsableAttribute : Attribute // TypeDefIndex: 352 +{ + // Fields + private DebuggerBrowsableState state; // 0x08 + + // Properties + public DebuggerBrowsableState State { get; } // 0x100BF0C0 + + // Methods + public void .ctor(DebuggerBrowsableState state); // 0x100E5940 +} + +// Namespace: System.Diagnostics +public enum DebuggerBrowsableState // TypeDefIndex: 353 +{ + Never = 0, + Collapsed = 2, + RootHidden = 3 +} + +// Namespace: System.Diagnostics +public sealed class DebuggerDisplayAttribute : Attribute // TypeDefIndex: 354 +{ + // Fields + private string value; // 0x08 + private string type; // 0x0C + private string name; // 0x10 + private string target_type_name; // 0x14 + private Type target_type; // 0x18 + + // Properties + public string Value { get; } // 0x100BF0C0 + public Type Target { get; set; } // 0x100EE580 0x102EC970 + public string TargetTypeName { get; set; } // 0x100EF0C0 0x10127B00 + public string Type { get; set; } // 0x100C5B30 0x100C5B50 + public string Name { get; set; } // 0x100BFC20 0x100C5B40 + + // Methods + public void .ctor(string value); // 0x102EC8D0 +} + +// Namespace: System.Diagnostics +[Serializable] +public sealed class DebuggerNonUserCodeAttribute : Attribute // TypeDefIndex: 355 +{ + // Methods + public void .ctor(); // 0x100C5970 +} + +// Namespace: System.Diagnostics +[Serializable] +public sealed class DebuggerStepThroughAttribute : Attribute // TypeDefIndex: 356 +{ + // Methods + public void .ctor(); // 0x100C5970 +} + +// Namespace: System.Diagnostics +[Serializable] +public sealed class DebuggerStepperBoundaryAttribute : Attribute // TypeDefIndex: 357 +{ + // Methods + public void .ctor(); // 0x100C5970 +} + +// Namespace: System.Diagnostics +public sealed class DebuggerTypeProxyAttribute : Attribute // TypeDefIndex: 358 +{ + // Fields + private string proxy_type_name; // 0x08 + private string target_type_name; // 0x0C + private Type target_type; // 0x10 + + // Properties + public string ProxyTypeName { get; } // 0x100BF0C0 + public Type Target { get; set; } // 0x100BFC20 0x101BD6C0 + public string TargetTypeName { get; set; } // 0x100C5B30 0x100C5B50 + + // Methods + public void .ctor(string typeName); // 0x100E5940 + public void .ctor(Type type); // 0x101BD680 +} + +// Namespace: System.Diagnostics +public sealed class DebuggerVisualizerAttribute : Attribute // TypeDefIndex: 359 +{ + // Fields + private string description; // 0x08 + private string visualizerSourceName; // 0x0C + private string visualizerName; // 0x10 + private string targetTypeName; // 0x14 + private Type target; // 0x18 + + // Properties + public string Description { get; set; } // 0x100BF0C0 0x100EB270 + public Type Target { get; set; } // 0x100EE580 0x101BD990 + public string TargetTypeName { get; set; } // 0x100EF0C0 0x10127B00 + public string VisualizerObjectSourceTypeName { get; } // 0x100C5B30 + public string VisualizerTypeName { get; } // 0x100BFC20 + + // Methods + public void .ctor(string visualizerTypeName); // 0x101A2F30 + public void .ctor(Type visualizer); // 0x101BD880 + public void .ctor(string visualizerTypeName, string visualizerObjectSourceTypeName); // 0x101BD7C0 + public void .ctor(string visualizerTypeName, Type visualizerObjectSource); // 0x101BD900 + public void .ctor(Type visualizer, string visualizerObjectSourceTypeName); // 0x101BD7F0 + public void .ctor(Type visualizer, Type visualizerObjectSource); // 0x101BD700 +} + +// Namespace: System.Diagnostics +[Serializable] +public class StackFrame // TypeDefIndex: 360 +{ + // Fields + public const int OFFSET_UNKNOWN = -1; // 0x00 + private int ilOffset; // 0x08 + private int nativeOffset; // 0x0C + private MethodBase methodBase; // 0x10 + private string fileName; // 0x14 + private int lineNumber; // 0x18 + private int columnNumber; // 0x1C + private string internalMethodName; // 0x20 + + // Methods + public void .ctor(); // 0x101C5DA0 + public void .ctor(bool fNeedFileInfo); // 0x101C5DF0 + public void .ctor(int skipFrames); // 0x101C5E90 + public void .ctor(int skipFrames, bool fNeedFileInfo); // 0x101C5E40 + public void .ctor(string fileName, int lineNumber); // 0x101C5EE0 + public void .ctor(string fileName, int lineNumber, int colNumber); // 0x101C5D40 + private static bool get_frame_info(int skip, bool needFileInfo, out MethodBase method, out int iloffset, out int native_offset, out string file, out int line, out int column); // 0x101C5F40 + public virtual int GetFileLineNumber(); // 0x100EE580 + public virtual int GetFileColumnNumber(); // 0x100F85F0 + public virtual string GetFileName(); // 0x100EF0C0 + internal string GetSecureFileName(); // 0x101C5B00 + public virtual int GetILOffset(); // 0x100BF0C0 + public virtual MethodBase GetMethod(); // 0x100BFC20 + public virtual int GetNativeOffset(); // 0x100C5B30 + internal string GetInternalMethodName(); // 0x100EACD0 + public override string ToString(); // 0x101C5BE0 +} + +// Namespace: System.Diagnostics +[Serializable] +public class StackTrace // TypeDefIndex: 361 +{ + // Fields + public const int METHODS_TO_SKIP = 0; // 0x00 + private StackFrame[] frames; // 0x08 + private bool debug_info; // 0x0C + + // Properties + public virtual int FrameCount { get; } // 0x101C6850 + + // Methods + public void .ctor(); // 0x101C63D0 + public void .ctor(bool fNeedFileInfo); // 0x101C63A0 + public void .ctor(int skipFrames); // 0x101C6410 + public void .ctor(int skipFrames, bool fNeedFileInfo); // 0x101C6480 + public void .ctor(Exception e); // 0x101C63F0 + public void .ctor(Exception e, bool fNeedFileInfo); // 0x101C6460 + public void .ctor(Exception e, int skipFrames); // 0x101C67D0 + public void .ctor(Exception e, int skipFrames, bool fNeedFileInfo); // 0x101C6440 + internal void .ctor(Exception e, int skipFrames, bool fNeedFileInfo, bool returnNativeFrames); // 0x101C6540 + public void .ctor(StackFrame frame); // 0x101C64A0 + public void .ctor(Thread targetThread, bool needFileInfo); // 0x101C67F0 + private void init_frames(int skipFrames, bool fNeedFileInfo); // 0x101C6890 + private static StackFrame[] get_trace(Exception e, int skipFrames, bool fNeedFileInfo); // 0x101C6870 + public virtual StackFrame GetFrame(int index); // 0x101C5F70 + public virtual StackFrame[] GetFrames(); // 0x100BF0C0 + public override string ToString(); // 0x101C5FD0 +} + +// Namespace: System.Globalization +[Serializable] +public abstract class Calendar : ICloneable // TypeDefIndex: 362 +{ + // Fields + public const int CurrentEra = 0; // 0x00 + [NonSerialized] private bool m_isReadOnly; // 0x08 + [NonSerialized] internal int twoDigitYearMax; // 0x0C + [NonSerialized] private int M_MaxYearValue; // 0x10 + [NonSerialized] internal string[] M_AbbrEraNames; // 0x14 + [NonSerialized] internal string[] M_EraNames; // 0x18 + internal int m_currentEraValue; // 0x1C + + // Properties + internal virtual int M_DaysInWeek { get; } // 0x101B30F0 + public abstract int[] Eras { get; } + public virtual CalendarAlgorithmType AlgorithmType { get; } // 0x100C5600 + public virtual DateTime MaxSupportedDateTime { get; } // 0x101B3180 + public virtual DateTime MinSupportedDateTime { get; } // 0x101B31E0 + public bool IsReadOnly { get; } // 0x100EA020 + internal virtual int M_MaxYear { get; } // 0x101B3100 + public virtual int TwoDigitYearMax { get; set; } // 0x100C5B30 0x101B3540 + internal string[] AbbreviatedEraNames { get; set; } // 0x101B2F70 0x101B3240 + internal string[] EraNames { get; set; } // 0x101B3030 0x101B33C0 + + // Methods + protected void .ctor(); // 0x101B2F50 + internal string M_ValidValues(object a, object b); // 0x101B2CF0 + internal void M_ArgumentInRange(string param, int arg, int a, int b); // 0x101B2A10 + internal void M_CheckHMSM(int hour, int minute, int second, int milliseconds); // 0x101B2AB0 + public virtual object Clone(); // 0x101B2430 + public virtual int GetLeapMonth(int year); // 0x101B25B0 + public virtual int GetLeapMonth(int year, int era); // 0x101B2540 + public static Calendar ReadOnly(Calendar calendar); // 0x101B2D70 + internal void CheckReadOnly(); // 0x101B23D0 + internal virtual void M_CheckYE(int year, int era); // 0x100C5530 + public virtual DateTime AddDays(DateTime time, int days); // 0x101B2100 + public virtual DateTime AddHours(DateTime time, int hours); // 0x101B2180 + public virtual DateTime AddMilliseconds(DateTime time, double milliseconds); // 0x101B2200 + public virtual DateTime AddMinutes(DateTime time, int minutes); // 0x101B2280 + public abstract DateTime AddMonths(DateTime time, int months); + public virtual DateTime AddSeconds(DateTime time, int seconds); // 0x101B2300 + public virtual DateTime AddWeeks(DateTime time, int weeks); // 0x101B2380 + public abstract DateTime AddYears(DateTime time, int years); + public abstract int GetDayOfMonth(DateTime time); + public abstract DayOfWeek GetDayOfWeek(DateTime time); + public abstract int GetDayOfYear(DateTime time); + public virtual int GetDaysInMonth(int year, int month); // 0x101B24B0 + public abstract int GetDaysInMonth(int year, int month, int era); + public virtual int GetDaysInYear(int year); // 0x101B24E0 + public abstract int GetDaysInYear(int year, int era); + public abstract int GetEra(DateTime time); + public virtual int GetHour(DateTime time); // 0x101B2510 + public virtual double GetMilliseconds(DateTime time); // 0x101B2620 + public virtual int GetMinute(DateTime time); // 0x101B2660 + public abstract int GetMonth(DateTime time); + public virtual int GetMonthsInYear(int year); // 0x101B2690 + public abstract int GetMonthsInYear(int year, int era); + public virtual int GetSecond(DateTime time); // 0x101B26C0 + internal int M_DiffDays(DateTime timeA, DateTime timeB); // 0x101B2B40 + internal DateTime M_GetFirstDayOfSecondWeekOfYear(int year, CalendarWeekRule rule, DayOfWeek firstDayOfWeek); // 0x101B2BB0 + public virtual int GetWeekOfYear(DateTime time, CalendarWeekRule rule, DayOfWeek firstDayOfWeek); // 0x101B26F0 + public abstract int GetYear(DateTime time); + public virtual bool IsLeapDay(int year, int month, int day); // 0x101B2980 + public abstract bool IsLeapDay(int year, int month, int day, int era); + public virtual bool IsLeapMonth(int year, int month); // 0x101B29B0 + public abstract bool IsLeapMonth(int year, int month, int era); + public virtual bool IsLeapYear(int year); // 0x101B29E0 + public abstract bool IsLeapYear(int year, int era); + public virtual DateTime ToDateTime(int year, int month, int day, int hour, int minute, int second, int millisecond); // 0x101B2E10 + public abstract DateTime ToDateTime(int year, int month, int day, int hour, int minute, int second, int millisecond, int era); + public virtual int ToFourDigitYear(int year); // 0x101B2E60 +} + +// Namespace: System.Globalization +public enum CalendarAlgorithmType // TypeDefIndex: 363 +{ + Unknown = 0, + SolarCalendar = 1, + LunarCalendar = 2, + LunisolarCalendar = 3 +} + +// Namespace: System.Globalization +[Serializable] +public enum CalendarWeekRule // TypeDefIndex: 364 +{ + FirstDay = 0, + FirstFullWeek = 1, + FirstFourDayWeek = 2 +} + +// Namespace: System.Globalization +internal class CCMath // TypeDefIndex: 365 +{ + // Methods + public void .ctor(); // 0x100BF000 + public static double round(double x); // 0x101B2080 + public static double mod(double x, double y); // 0x101B2050 + public static int div(int x, int y); // 0x101B1F70 + public static int mod(int x, int y); // 0x101B2000 + public static int div_mod(out int remainder, int x, int y); // 0x101B1FB0 + public static int signum(double x); // 0x101B20D0 + public static int signum(int x); // 0x101B20B0 + public static double amod(double x, double y); // 0x101B1F00 + public static int amod(int x, int y); // 0x101B1EB0 +} + +// Namespace: System.Globalization +internal class CCFixed // TypeDefIndex: 366 +{ + // Methods + public void .ctor(); // 0x100BF000 + public static DateTime ToDateTime(int date); // 0x101AF6C0 + public static DateTime ToDateTime(int date, int hour, int minute, int second, double milliseconds); // 0x101AF5D0 + public static int FromDateTime(DateTime time); // 0x101AF5A0 + public static DayOfWeek day_of_week(int date); // 0x101AF700 + public static int kday_on_or_before(int date, int k); // 0x101AF8D0 + public static int kday_on_or_after(int date, int k); // 0x101AF870 + public static int kd_nearest(int date, int k); // 0x101AF750 + public static int kday_after(int date, int k); // 0x101AF7B0 + public static int kday_before(int date, int k); // 0x101AF810 +} + +// Namespace: System.Globalization +internal class CCGregorianCalendar // TypeDefIndex: 367 +{ + // Fields + private const int epoch = 1; // 0x00 + + // Methods + public void .ctor(); // 0x100BF000 + public static bool is_leap_year(int year); // 0x101B00A0 + public static int fixed_from_dmy(int day, int month, int year); // 0x101AFF90 + public static int year_from_fixed(int date); // 0x101B0210 + public static void my_from_fixed(out int month, out int year, int date); // 0x101B0170 + public static void dmy_from_fixed(out int day, out int month, out int year, int date); // 0x101AFF40 + public static int month_from_fixed(int date); // 0x101B0140 + public static int day_from_fixed(int date); // 0x101AFE90 + public static int date_difference(int dayA, int monthA, int yearA, int dayB, int monthB, int yearB); // 0x101AFE60 + public static int day_number(int day, int month, int year); // 0x101AFEE0 + public static int days_remaining(int day, int month, int year); // 0x101AFF10 + public static DateTime AddMonths(DateTime time, int months); // 0x101AF920 + public static DateTime AddYears(DateTime time, int years); // 0x101AFA60 + public static int GetDayOfMonth(DateTime time); // 0x101AFB60 + public static int GetDayOfYear(DateTime time); // 0x101AFBD0 + public static int GetDaysInMonth(int year, int month); // 0x101AFC20 + public static int GetDaysInYear(int year); // 0x101AFC60 + public static int GetMonth(DateTime time); // 0x101AFC90 + public static int GetYear(DateTime time); // 0x101AFCF0 + public static bool IsLeapDay(int year, int month, int day); // 0x101AFD30 + public static DateTime ToDateTime(int year, int month, int day, int hour, int minute, int second, int milliseconds); // 0x101AFD60 +} + +// Namespace: +public enum Month // TypeDefIndex: 368 +{ + january = 1, + february = 2, + march = 3, + april = 4, + may = 5, + june = 6, + july = 7, + august = 8, + september = 9, + october = 10, + november = 11, + december = 12 +} + +// Namespace: System.Globalization +internal class CCJulianCalendar // TypeDefIndex: 369 +{ + // Fields + private const int epoch = -1; // 0x00 + + // Methods + public void .ctor(); // 0x100BF000 + public static bool is_leap_year(int year); // 0x101B1C70 + public static int fixed_from_dmy(int day, int month, int year); // 0x101B1B70 + public static int year_from_fixed(int date); // 0x101B1E60 + public static void my_from_fixed(out int month, out int year, int date); // 0x101B1D00 + public static void dmy_from_fixed(out int day, out int month, out int year, int date); // 0x101B1B30 + public static int month_from_fixed(int date); // 0x101B1CD0 + public static int day_from_fixed(int date); // 0x101B1A80 + public static int date_difference(int dayA, int monthA, int yearA, int dayB, int monthB, int yearB); // 0x101B1A50 + public static int day_number(int day, int month, int year); // 0x101B1AD0 + public static int days_remaining(int day, int month, int year); // 0x101B1B00 +} + +// Namespace: +public enum Month // TypeDefIndex: 370 +{ + january = 1, + february = 2, + march = 3, + april = 4, + may = 5, + june = 6, + july = 7, + august = 8, + september = 9, + october = 10, + november = 11, + december = 12 +} + +// Namespace: System.Globalization +internal class CCHebrewCalendar // TypeDefIndex: 371 +{ + // Fields + private const int epoch = -1373427; // 0x00 + + // Methods + public void .ctor(); // 0x100BF000 + public static bool is_leap_year(int year); // 0x101B0FE0 + public static int last_month_of_year(int year); // 0x101B11E0 + public static int elapsed_days(int year); // 0x101B0D90 + public static int new_year_delay(int year); // 0x101B1400 + public static int last_day_of_month(int month, int year); // 0x101B1040 + public static bool long_heshvan(int year); // 0x101B1240 + public static bool short_kislev(int year); // 0x101B1460 + public static int days_in_year(int year); // 0x101B0CE0 + public static int fixed_from_dmy(int day, int month, int year); // 0x101B0EC0 + public static int year_from_fixed(int date); // 0x101B14D0 + public static void my_from_fixed(out int month, out int year, int date); // 0x101B12E0 + public static void dmy_from_fixed(out int day, out int month, out int year, int date); // 0x101B0D50 + public static int month_from_fixed(int date); // 0x101B12B0 + public static int day_from_fixed(int date); // 0x101B0C60 + public static int date_difference(int dayA, int monthA, int yearA, int dayB, int monthB, int yearB); // 0x101B0C30 + public static int day_number(int day, int month, int year); // 0x101B0CB0 + public static int days_remaining(int day, int month, int year); // 0x101B0D10 +} + +// Namespace: +public enum Month // TypeDefIndex: 372 +{ + nisan = 1, + iyyar = 2, + sivan = 3, + tammuz = 4, + av = 5, + elul = 6, + tishri = 7, + heshvan = 8, + kislev = 9, + teveth = 10, + shevat = 11, + adar = 12, + adar_I = 12, + adar_II = 13 +} + +// Namespace: System.Globalization +internal class CCHijriCalendar // TypeDefIndex: 373 +{ + // Fields + private const int epoch = 227014; // 0x00 + + // Methods + public void .ctor(); // 0x100BF000 + public static bool is_leap_year(int year); // 0x101B1890 + public static int fixed_from_dmy(int day, int month, int year); // 0x101B1800 + public static int year_from_fixed(int date); // 0x101B1A00 + public static void my_from_fixed(out int month, out int year, int date); // 0x101B1920 + public static void dmy_from_fixed(out int day, out int month, out int year, int date); // 0x101B1760 + public static int month_from_fixed(int date); // 0x101B18F0 + public static int day_from_fixed(int date); // 0x101B1670 + public static int date_difference(int dayA, int monthA, int yearA, int dayB, int monthB, int yearB); // 0x101B1580 + public static int day_number(int day, int month, int year); // 0x101B1720 + public static int days_remaining(int day, int month, int year); // 0x101B1740 +} + +// Namespace: +public enum Month // TypeDefIndex: 374 +{ + muharram = 1, + safar = 2, + rabi_I = 3, + rabi_II = 4, + jumada_I = 5, + jumada_II = 6, + rajab = 7, + shaban = 8, + ramadan = 9, + shawwal = 10, + dhu_al_quada = 11, + dhu_al_hijja = 12 +} + +// Namespace: System.Globalization +internal class CCEastAsianLunisolarCalendar // TypeDefIndex: 375 +{ + // Fields + private const int initial_epact = 29; // 0x00 + + // Methods + public void .ctor(); // 0x100BF000 + public static int fixed_from_dmy(int day, int month, int year); // 0x101AEB80 + public static int year_from_fixed(int date); // 0x101AEC20 + public static void my_from_fixed(out int month, out int year, int date); // 0x101AEBD0 + public static void dmy_from_fixed(out int day, out int month, out int year, int date); // 0x101AEB30 + public static DateTime AddMonths(DateTime date, int months); // 0x101AE770 + public static DateTime AddYears(DateTime date, int years); // 0x101AE7C0 + public static int GetDayOfMonth(DateTime date); // 0x101AE810 + public static int GetDayOfYear(DateTime date); // 0x101AE860 + public static int GetDaysInMonth(int gyear, int month); // 0x101AE8B0 + public static int GetDaysInYear(int year); // 0x101AE900 + public static int GetMonth(DateTime date); // 0x101AE950 + public static bool IsLeapMonth(int gyear, int month); // 0x101AE9A0 + public static bool IsLeapYear(int gyear); // 0x101AEA50 + public static DateTime ToDateTime(int year, int month, int day, int hour, int minute, int second, int millisecond); // 0x101AEAE0 +} + +// Namespace: System.Globalization +[Serializable] +internal class CCGregorianEraHandler // TypeDefIndex: 376 +{ + // Fields + private SortedList _Eras; // 0x08 + + // Properties + public int[] Eras { get; } // 0x101B0B10 + + // Methods + public void .ctor(); // 0x101B08F0 + public void appendEra(int nr, int rd_start, int rd_end); // 0x101B0940 + public void appendEra(int nr, int rd_start); // 0x101B09F0 + public int GregorianYear(int year, int era); // 0x101B05D0 + public int EraYear(out int era, int date); // 0x101B03A0 + public void CheckDateTime(DateTime time); // 0x101B0300 + public bool ValidDate(int date); // 0x101B0680 + public bool ValidEra(int era); // 0x101B0880 +} + +// Namespace: +[Serializable] +private struct Era // TypeDefIndex: 377 +{ + // Fields + private int _nr; // 0x08 + private int _start; // 0x0C + private int _gregorianYearStart; // 0x10 + private int _end; // 0x14 + private int _maxYear; // 0x18 + + // Properties + public int Nr { get; } // 0x10003A80 + + // Methods + public void .ctor(int nr, int start, int end); // 0x1000A5A0 + public int GregorianYear(int year); // 0x1000A580 + public bool Covers(int date); // 0x1000A540 + public int EraYear(out int era, int date); // 0x1000A560 +} + +// Namespace: System.Globalization +[Serializable] +internal class CCEastAsianLunisolarEraHandler // TypeDefIndex: 378 +{ + // Fields + private SortedList _Eras; // 0x08 + + // Properties + public int[] Eras { get; } // 0x101AF480 + + // Methods + public void .ctor(); // 0x101AF260 + public void appendEra(int nr, int rd_start, int rd_end); // 0x101AF3D0 + public void appendEra(int nr, int rd_start); // 0x101AF2B0 + public int GregorianYear(int year, int era); // 0x101AEF40 + public int EraYear(out int era, int date); // 0x101AED10 + public void CheckDateTime(DateTime time); // 0x101AEC70 + public bool ValidDate(int date); // 0x101AEFF0 + public bool ValidEra(int era); // 0x101AF1F0 +} + +// Namespace: +[Serializable] +private struct Era // TypeDefIndex: 379 +{ + // Fields + private int _nr; // 0x08 + private int _start; // 0x0C + private int _gregorianYearStart; // 0x10 + private int _end; // 0x14 + private int _maxYear; // 0x18 + + // Properties + public int Nr { get; } // 0x10003A80 + + // Methods + public void .ctor(int nr, int start, int end); // 0x1000A5B0 + public int GregorianYear(int year); // 0x1000A590 + public bool Covers(int date); // 0x1000A540 + public int EraYear(out int era, int date); // 0x1000A570 +} + +// Namespace: System.Globalization +public sealed class CharUnicodeInfo // TypeDefIndex: 380 +{ + // Methods + private void .ctor(); // 0x100BF000 + public static int GetDecimalDigitValue(char ch); // 0x101B3610 + public static int GetDecimalDigitValue(string s, int index); // 0x101B38B0 + public static int GetDigitValue(char ch); // 0x101B3930 + public static int GetDigitValue(string s, int index); // 0x101B3A00 + public static double GetNumericValue(char ch); // 0x101B3B00 + public static double GetNumericValue(string s, int index); // 0x101B3A80 + public static UnicodeCategory GetUnicodeCategory(char ch); // 0x101B40E0 + public static UnicodeCategory GetUnicodeCategory(string s, int index); // 0x101B4130 +} + +// Namespace: System.Globalization +[Serializable] +public class ChineseLunisolarCalendar : EastAsianLunisolarCalendar // TypeDefIndex: 381 +{ + // Fields + public const int ChineseEra = 1; // 0x00 + internal static readonly CCEastAsianLunisolarEraHandler era_handler; // 0x00 + private static DateTime ChineseMin; // 0x08 + private static DateTime ChineseMax; // 0x18 + + // Properties + public override int[] Eras { get; } // 0x101B4510 + public override DateTime MinSupportedDateTime { get; } // 0x101B4720 + public override DateTime MaxSupportedDateTime { get; } // 0x101B46C0 + + // Methods + public void .ctor(); // 0x101B44B0 + private static void .cctor(); // 0x101B4260 + public override int GetEra(DateTime time); // 0x101B41C0 +} + +// Namespace: System.Globalization +[Serializable] +internal sealed class CodePageDataItem // TypeDefIndex: 382 +{ + // Fields + private string m_bodyName; // 0x08 + private int m_codePage; // 0x0C + private int m_dataIndex; // 0x10 + private string m_description; // 0x14 + private uint m_flags; // 0x18 + private string m_headerName; // 0x1C + private int m_uiFamilyCodePage; // 0x20 + private string m_webName; // 0x24 + + // Methods + private void .ctor(); // 0x100BF000 +} + +// Namespace: System.Globalization +[Serializable] +public class CompareInfo : IDeserializationCallback // TypeDefIndex: 383 +{ + // Fields + private const CompareOptions ValidCompareOptions_NoStringSort = 1342177311; // 0x00 + private const CompareOptions ValidCompareOptions = 1879048223; // 0x00 + private static readonly bool useManagedCollation; // 0x00 + private int culture; // 0x08 + [NonSerialized] private string icu_name; // 0x0C + private int win32LCID; // 0x10 + private string m_name; // 0x14 + [NonSerialized] private SimpleCollator collator; // 0x18 + private static Hashtable collators; // 0x04 + [NonSerialized] private static object monitor; // 0x08 + + // Properties + internal static bool UseManagedCollation { get; } // 0x101B65E0 + public int LCID { get; } // 0x100BF0C0 + public virtual string Name { get; } // 0x100C5B30 + + // Methods + private void .ctor(); // 0x100BF000 + internal void .ctor(CultureInfo ci); // 0x101B6200 + private static void .cctor(); // 0x101B60F0 + private void System.Runtime.Serialization.IDeserializationCallback.OnDeserialization(object sender); // 0x101B5EF0 + private void construct_compareinfo(string locale); // 0x101B65B0 + private void free_internal_collator(); // 0x101B65D0 + private int internal_compare(string str1, int offset1, int length1, string str2, int offset2, int length2, CompareOptions options); // 0x101B6680 + private void assign_sortkey(object key, string source, CompareOptions options); // 0x101B6590 + private int internal_index(string source, int sindex, int count, char value, CompareOptions options, bool first); // 0x101B67B0 + private int internal_index(string source, int sindex, int count, string value, CompareOptions options, bool first); // 0x101B67B0 + protected override void Finalize(); // 0x101B4C20 + private int internal_compare_managed(string str1, int offset1, int length1, string str2, int offset2, int length2, CompareOptions options); // 0x101B66B0 + private int internal_compare_switch(string str1, int offset1, int length1, string str2, int offset2, int length2, CompareOptions options); // 0x101B66E0 + public virtual int Compare(string string1, string string2); // 0x101B4890 + public virtual int Compare(string string1, string string2, CompareOptions options); // 0x101B47B0 + public virtual int Compare(string string1, int offset1, string string2, int offset2); // 0x101B4780 + public virtual int Compare(string string1, int offset1, string string2, int offset2, CompareOptions options); // 0x101B4A70 + public virtual int Compare(string string1, int offset1, int length1, string string2, int offset2, int length2); // 0x101B4860 + public virtual int Compare(string string1, int offset1, int length1, string string2, int offset2, int length2, CompareOptions options); // 0x101B48C0 + public override bool Equals(object value); // 0x101B4BB0 + public static CompareInfo GetCompareInfo(int culture); // 0x101B4D70 + public static CompareInfo GetCompareInfo(string name); // 0x101B4CD0 + public static CompareInfo GetCompareInfo(int culture, Assembly assembly); // 0x101B4F70 + public static CompareInfo GetCompareInfo(string name, Assembly assembly); // 0x101B4DE0 + public override int GetHashCode(); // 0x100BF0C0 + public virtual SortKey GetSortKey(string source); // 0x101B50E0 + public virtual SortKey GetSortKey(string source, CompareOptions options); // 0x101B5110 + public virtual int IndexOf(string source, char value); // 0x101B5650 + public virtual int IndexOf(string source, string value); // 0x101B55A0 + public virtual int IndexOf(string source, char value, CompareOptions options); // 0x101B5390 + public virtual int IndexOf(string source, char value, int startIndex); // 0x101B5610 + public virtual int IndexOf(string source, string value, CompareOptions options); // 0x101B56D0 + public virtual int IndexOf(string source, string value, int startIndex); // 0x101B5690 + public virtual int IndexOf(string source, char value, int startIndex, CompareOptions options); // 0x101B5560 + public virtual int IndexOf(string source, char value, int startIndex, int count); // 0x101B5360 + public virtual int IndexOf(string source, string value, int startIndex, CompareOptions options); // 0x101B5520 + public virtual int IndexOf(string source, string value, int startIndex, int count); // 0x101B55E0 + private int internal_index_managed(string s, int sindex, int count, char c, CompareOptions opt, bool first); // 0x101B6840 + private int internal_index_switch(string s, int sindex, int count, char c, CompareOptions opt, bool first); // 0x101B68A0 + public virtual int IndexOf(string source, char value, int startIndex, int count, CompareOptions options); // 0x101B5210 + private int internal_index_managed(string s1, int sindex, int count, string s2, CompareOptions opt, bool first); // 0x101B67E0 + private int internal_index_switch(string s1, int sindex, int count, string s2, CompareOptions opt, bool first); // 0x101B69B0 + public virtual int IndexOf(string source, string value, int startIndex, int count, CompareOptions options); // 0x101B53D0 + public virtual bool IsPrefix(string source, string prefix); // 0x101B5710 + public virtual bool IsPrefix(string source, string prefix, CompareOptions options); // 0x101B5740 + public virtual bool IsSuffix(string source, string suffix); // 0x101B5A10 + public virtual bool IsSuffix(string source, string suffix, CompareOptions options); // 0x101B5900 + public virtual int LastIndexOf(string source, char value); // 0x101B5A70 + public virtual int LastIndexOf(string source, string value); // 0x101B5EB0 + public virtual int LastIndexOf(string source, char value, CompareOptions options); // 0x101B5B80 + public virtual int LastIndexOf(string source, char value, int startIndex); // 0x101B5E50 + public virtual int LastIndexOf(string source, string value, CompareOptions options); // 0x101B5B40 + public virtual int LastIndexOf(string source, string value, int startIndex); // 0x101B5A40 + public virtual int LastIndexOf(string source, char value, int startIndex, CompareOptions options); // 0x101B5AE0 + public virtual int LastIndexOf(string source, char value, int startIndex, int count); // 0x101B5E80 + public virtual int LastIndexOf(string source, string value, int startIndex, CompareOptions options); // 0x101B5B10 + public virtual int LastIndexOf(string source, string value, int startIndex, int count); // 0x101B5AB0 + public virtual int LastIndexOf(string source, char value, int startIndex, int count, CompareOptions options); // 0x101B5D00 + public virtual int LastIndexOf(string source, string value, int startIndex, int count, CompareOptions options); // 0x101B5BC0 + public static bool IsSortable(char ch); // 0x101B5850 + public static bool IsSortable(string text); // 0x101B58B0 + public override string ToString(); // 0x101B6070 +} + +// Namespace: System.Globalization +[Serializable] +public enum CompareOptions // TypeDefIndex: 384 +{ + None = 0, + IgnoreCase = 1, + IgnoreNonSpace = 2, + IgnoreSymbols = 4, + IgnoreKanaType = 8, + IgnoreWidth = 16, + OrdinalIgnoreCase = 268435456, + StringSort = 536870912, + Ordinal = 1073741824 +} + +// Namespace: System.Globalization +[Serializable] +public class CultureInfo : ICloneable, IFormatProvider // TypeDefIndex: 385 +{ + // Fields + private const int NumOptionalCalendars = 5; // 0x00 + private const int GregorianTypeMask = 16777215; // 0x00 + private const int CalendarTypeBits = 24; // 0x00 + private const int InvariantCultureId = 127; // 0x00 + private static CultureInfo invariant_culture_info; // 0x00 + private static object shared_table_lock; // 0x04 + internal static int BootstrapCultureID; // 0x08 + private bool m_isReadOnly; // 0x08 + private int cultureID; // 0x0C + [NonSerialized] private int parent_lcid; // 0x10 + [NonSerialized] private int specific_lcid; // 0x14 + [NonSerialized] private int datetime_index; // 0x18 + [NonSerialized] private int number_index; // 0x1C + private bool m_useUserOverride; // 0x20 + [NonSerialized] private NumberFormatInfo numInfo; // 0x24 + private DateTimeFormatInfo dateTimeInfo; // 0x28 + private TextInfo textInfo; // 0x2C + private string m_name; // 0x30 + [NonSerialized] private string displayname; // 0x34 + [NonSerialized] private string englishname; // 0x38 + [NonSerialized] private string nativename; // 0x3C + [NonSerialized] private string iso3lang; // 0x40 + [NonSerialized] private string iso2lang; // 0x44 + [NonSerialized] private string icu_name; // 0x48 + [NonSerialized] private string win3lang; // 0x4C + [NonSerialized] private string territory; // 0x50 + private CompareInfo compareInfo; // 0x54 + [NonSerialized] private readonly void * calendar_data; // 0x58 + [NonSerialized] private readonly void * textinfo_data; // 0x5C + [NonSerialized] private Calendar[] optional_calendars; // 0x60 + [NonSerialized] private CultureInfo parent_culture; // 0x64 + private int m_dataItem; // 0x68 + private Calendar calendar; // 0x6C + [NonSerialized] private bool constructed; // 0x70 + [NonSerialized] internal byte[] cached_serialized_form; // 0x74 + private static readonly string MSG_READONLY; // 0x0C + private static Hashtable shared_by_number; // 0x10 + private static Hashtable shared_by_name; // 0x14 + private static Dictionary`2 <>f__switch$map19; // 0x18 + private static Dictionary`2 <>f__switch$map1A; // 0x1C + + // Properties + public static CultureInfo InvariantCulture { get; } // 0x101B8F50 + public static CultureInfo CurrentCulture { get; } // 0x101B8B40 + public static CultureInfo CurrentUICulture { get; } // 0x101B8BA0 + internal string Territory { get; } // 0x10132810 + public virtual int LCID { get; } // 0x100C5B30 + public virtual string Name { get; } // 0x100EA580 + public virtual string NativeName { get; } // 0x101B8FF0 + public virtual Calendar Calendar { get; } // 0x101B89D0 + public virtual Calendar[] OptionalCalendars { get; } // 0x101B9180 + public virtual CultureInfo Parent { get; } // 0x101B9250 + public virtual TextInfo TextInfo { get; } // 0x101B9320 + public virtual string ThreeLetterISOLanguageName { get; } // 0x101B9440 + public virtual string ThreeLetterWindowsLanguageName { get; } // 0x101B9470 + public virtual string TwoLetterISOLanguageName { get; } // 0x101B94A0 + public bool UseUserOverride { get; } // 0x101B94D0 + internal string IcuName { get; } // 0x101B8EC0 + public virtual CompareInfo CompareInfo { get; } // 0x101B8A00 + public virtual bool IsNeutralCulture { get; } // 0x101B8FA0 + public virtual NumberFormatInfo NumberFormat { get; set; } // 0x101B9020 0x101B9750 + public virtual DateTimeFormatInfo DateTimeFormat { get; set; } // 0x101B8C00 0x101B9670 + public virtual string DisplayName { get; } // 0x101B8E60 + public virtual string EnglishName { get; } // 0x101B8E90 + public static CultureInfo InstalledUICulture { get; } // 0x101B8EF0 + public bool IsReadOnly { get; } // 0x100EA020 + + // Methods + public void .ctor(int culture); // 0x101B8920 + public void .ctor(int culture, bool useUserOverride); // 0x101B8780 + private void .ctor(int culture, bool useUserOverride, bool read_only); // 0x101B87E0 + public void .ctor(string name); // 0x101B87A0 + public void .ctor(string name, bool useUserOverride); // 0x101B87C0 + private void .ctor(string name, bool useUserOverride, bool read_only); // 0x101B8520 + private void .ctor(); // 0x101B8900 + private static void .cctor(); // 0x101B8470 + public static CultureInfo CreateSpecificCulture(string name); // 0x101B76F0 + internal static CultureInfo ConstructCurrentCulture(); // 0x101B6F30 + internal static CultureInfo ConstructCurrentUICulture(); // 0x101B7040 + public void ClearCachedData(); // 0x101B6B70 + public virtual object Clone(); // 0x101B6BF0 + public override bool Equals(object value); // 0x101B7910 + public static CultureInfo[] GetCultures(CultureTypes types); // 0x101B8030 + public override int GetHashCode(); // 0x100C5B30 + public static CultureInfo ReadOnly(CultureInfo ci); // 0x101B8310 + public override string ToString(); // 0x100EA580 + internal static bool IsIDNeutralCulture(int lcid); // 0x101B8240 + internal void CheckNeutral(); // 0x101B6AC0 + public virtual object GetFormat(Type formatType); // 0x101B8170 + private void Construct(); // 0x101B7670 + private bool ConstructInternalLocaleFromName(string locale); // 0x101B7200 + private bool ConstructInternalLocaleFromLcid(int lcid); // 0x101B71E0 + private static bool ConstructInternalLocaleFromSpecificName(CultureInfo ci, string name); // 0x101B7360 + private static bool ConstructInternalLocaleFromCurrentLocale(CultureInfo ci); // 0x101B7190 + private bool construct_internal_locale_from_lcid(int lcid); // 0x101B8960 + private bool construct_internal_locale_from_name(string name); // 0x101B8980 + private static bool construct_internal_locale_from_specific_name(CultureInfo ci, string name); // 0x101B89A0 + private static bool construct_internal_locale_from_current_locale(CultureInfo ci); // 0x101B8950 + private static CultureInfo[] internal_get_cultures(bool neutral, bool specific, bool installed); // 0x101B9630 + private void construct_datetime_format(); // 0x101B8940 + private void construct_number_format(); // 0x101B89C0 + private static bool internal_is_lcid_neutral(int lcid, out bool is_neutral); // 0x101B9650 + private void ConstructInvariant(bool read_only); // 0x101B73C0 + private TextInfo CreateTextInfo(bool readOnly); // 0x101B78B0 + private static void insert_into_shared_tables(CultureInfo c); // 0x101B94E0 + public static CultureInfo GetCultureInfo(int culture); // 0x101B7B50 + public static CultureInfo GetCultureInfo(string name); // 0x101B7E10 + public static CultureInfo GetCultureInfo(string name, string altName); // 0x101B7D80 + public static CultureInfo GetCultureInfoByIetfLanguageTag(string name); // 0x101B7980 + internal static CultureInfo CreateCulture(string name, bool reference); // 0x101B7690 + internal void ConstructCalendars(); // 0x101B6D60 +} + +// Namespace: System.Globalization +[Serializable] +public enum CultureTypes // TypeDefIndex: 386 +{ + NeutralCultures = 1, + SpecificCultures = 2, + InstalledWin32Cultures = 4, + AllCultures = 7, + UserCustomCulture = 8, + ReplacementCultures = 16, + WindowsOnlyCultures = 32, + FrameworkCultures = 64 +} + +// Namespace: System.Globalization +internal enum DateTimeFormatFlags // TypeDefIndex: 387 +{ + Unused = 0, + But = 1, + Serialized = 2, + By = 3, + Microsoft = 4 +} + +// Namespace: System.Globalization +[Serializable] +public sealed class DateTimeFormatInfo : ICloneable, IFormatProvider // TypeDefIndex: 388 +{ + // Fields + private const string _RoundtripPattern = "yyyy'-'MM'-'dd'T'HH':'mm':'ss.fffffffK"; // 0x00 + private static readonly string MSG_READONLY; // 0x00 + private static readonly string MSG_ARRAYSIZE_MONTH; // 0x04 + private static readonly string MSG_ARRAYSIZE_DAY; // 0x08 + private static readonly string[] INVARIANT_ABBREVIATED_DAY_NAMES; // 0x0C + private static readonly string[] INVARIANT_DAY_NAMES; // 0x10 + private static readonly string[] INVARIANT_ABBREVIATED_MONTH_NAMES; // 0x14 + private static readonly string[] INVARIANT_MONTH_NAMES; // 0x18 + private static readonly string[] INVARIANT_SHORT_DAY_NAMES; // 0x1C + private static DateTimeFormatInfo theInvariantDateTimeFormatInfo; // 0x20 + private bool m_isReadOnly; // 0x08 + private string amDesignator; // 0x0C + private string pmDesignator; // 0x10 + private string dateSeparator; // 0x14 + private string timeSeparator; // 0x18 + private string shortDatePattern; // 0x1C + private string longDatePattern; // 0x20 + private string shortTimePattern; // 0x24 + private string longTimePattern; // 0x28 + private string monthDayPattern; // 0x2C + private string yearMonthPattern; // 0x30 + private string fullDateTimePattern; // 0x34 + private string _RFC1123Pattern; // 0x38 + private string _SortableDateTimePattern; // 0x3C + private string _UniversalSortableDateTimePattern; // 0x40 + private int firstDayOfWeek; // 0x44 + private Calendar calendar; // 0x48 + private int calendarWeekRule; // 0x4C + private string[] abbreviatedDayNames; // 0x50 + private string[] dayNames; // 0x54 + private string[] monthNames; // 0x58 + private string[] abbreviatedMonthNames; // 0x5C + private string[] allShortDatePatterns; // 0x60 + private string[] allLongDatePatterns; // 0x64 + private string[] allShortTimePatterns; // 0x68 + private string[] allLongTimePatterns; // 0x6C + private string[] monthDayPatterns; // 0x70 + private string[] yearMonthPatterns; // 0x74 + private string[] shortDayNames; // 0x78 + private int nDataItem; // 0x7C + private bool m_useUserOverride; // 0x80 + private bool m_isDefaultCalendar; // 0x81 + private int CultureID; // 0x84 + private bool bUseCalendarInfo; // 0x88 + private string generalShortTimePattern; // 0x8C + private string generalLongTimePattern; // 0x90 + private string[] m_eraNames; // 0x94 + private string[] m_abbrevEraNames; // 0x98 + private string[] m_abbrevEnglishEraNames; // 0x9C + private string[] m_dateWords; // 0xA0 + private int[] optionalCalendars; // 0xA4 + private string[] m_superShortDayNames; // 0xA8 + private string[] genitiveMonthNames; // 0xAC + private string[] m_genitiveAbbreviatedMonthNames; // 0xB0 + private string[] leapYearMonthNames; // 0xB4 + private DateTimeFormatFlags formatFlags; // 0xB8 + private string m_name; // 0xBC + private string[] all_date_time_patterns; // 0xC0 + + // Properties + public bool IsReadOnly { get; } // 0x100EA020 + public string[] AbbreviatedDayNames { get; set; } // 0x101BC0A0 0x101BC5B0 + internal string[] RawAbbreviatedDayNames { get; set; } // 0x10132810 0x101BC5B0 + public string[] AbbreviatedMonthNames { get; set; } // 0x101BC120 0x101BC740 + internal string[] RawAbbreviatedMonthNames { get; set; } // 0x10145580 0x101BC740 + public string[] DayNames { get; set; } // 0x101BC210 0x101BCAD0 + internal string[] RawDayNames { get; set; } // 0x10145520 0x101BCAD0 + public string[] MonthNames { get; set; } // 0x101BC3F0 0x101BD020 + internal string[] RawMonthNames { get; set; } // 0x10145540 0x101BD020 + public string AMDesignator { get; set; } // 0x100C5B30 0x101BC4F0 + public string PMDesignator { get; set; } // 0x100BFC20 0x101BD190 + public string DateSeparator { get; set; } // 0x100EF0C0 0x101BCA10 + public string TimeSeparator { get; set; } // 0x100EE580 0x101BD500 + public string LongDatePattern { get; set; } // 0x100EACD0 0x101BCDC0 + public string ShortDatePattern { get; set; } // 0x100F85F0 0x101BD250 + public string ShortTimePattern { get; set; } // 0x100EAD50 0x101BD310 + public string LongTimePattern { get; set; } // 0x100EB040 0x101BCE80 + public string MonthDayPattern { get; set; } // 0x100EB200 0x101BCF40 + public string YearMonthPattern { get; set; } // 0x100EA580 0x101BD5C0 + public string FullDateTimePattern { get; set; } // 0x101BC280 0x101BCD00 + public static DateTimeFormatInfo CurrentInfo { get; } // 0x101BC190 + public static DateTimeFormatInfo InvariantInfo { get; } // 0x101BC2F0 + public DayOfWeek FirstDayOfWeek { get; set; } // 0x10145530 0x101BCC40 + public Calendar Calendar { get; set; } // 0x10145560 0x101BC950 + public CalendarWeekRule CalendarWeekRule { get; set; } // 0x10145570 0x101BC8B0 + public string RFC1123Pattern { get; } // 0x100EB210 + internal string RoundtripPattern { get; } // 0x101BC4B0 + public string SortableDateTimePattern { get; } // 0x100EB220 + public string UniversalSortableDateTimePattern { get; } // 0x100E9E80 + public string[] AbbreviatedMonthGenitiveNames { get; set; } // 0x101BC110 0x101BC720 + public string[] MonthGenitiveNames { get; set; } // 0x101BC3E0 0x101BD000 + public string NativeCalendarName { get; } // 0x101BC460 + public string[] ShortestDayNames { get; set; } // 0x101BC4E0 0x101BD3D0 + + // Methods + internal void .ctor(bool read_only); // 0x101BBF40 + public void .ctor(); // 0x101BBF10 + private static void .cctor(); // 0x101BAF00 + public static DateTimeFormatInfo GetInstance(IFormatProvider provider); // 0x101BA9E0 + public static DateTimeFormatInfo ReadOnly(DateTimeFormatInfo dtfi); // 0x101BAD90 + public object Clone(); // 0x101B9830 + public object GetFormat(Type formatType); // 0x101BA9C0 + public string GetAbbreviatedEraName(int era); // 0x101B9F90 + public string GetAbbreviatedMonthName(int month); // 0x101BA060 + public int GetEra(string eraName); // 0x101BA800 + public string GetEraName(int era); // 0x101BA730 + public string GetMonthName(int month); // 0x101BAB60 + public string[] GetAllDateTimePatterns(); // 0x101BA110 + internal string[] GetAllDateTimePatternsInternal(); // 0x101BA0E0 + private void FillAllDateTimePatterns(); // 0x101B9890 + public string[] GetAllDateTimePatterns(char format); // 0x101BA190 + internal string[] GetAllRawDateTimePatterns(char format); // 0x101BA210 + public string GetDayName(DayOfWeek dayofweek); // 0x101BA6B0 + public string GetAbbreviatedDayName(DayOfWeek dayofweek); // 0x101B9F00 + private void FillInvariantPatterns(); // 0x101B9B50 + private string[] PopulateCombinedList(string[] dates, string[] times); // 0x101BAC60 + public string GetShortestDayName(DayOfWeek dayOfWeek); // 0x101BABE0 + public void SetAllDateTimePatterns(string[] patterns, char format); // 0x101BADF0 +} + +// Namespace: System.Globalization +[Serializable] +public enum DateTimeStyles // TypeDefIndex: 389 +{ + None = 0, + AllowLeadingWhite = 1, + AllowTrailingWhite = 2, + AllowInnerWhite = 4, + AllowWhiteSpaces = 7, + NoCurrentDateDefault = 8, + AdjustToUniversal = 16, + AssumeLocal = 32, + AssumeUniversal = 64, + RoundtripKind = 128 +} + +// Namespace: System.Globalization +[Serializable] +public class DaylightTime // TypeDefIndex: 390 +{ + // Fields + private DateTime m_start; // 0x08 + private DateTime m_end; // 0x18 + private TimeSpan m_delta; // 0x28 + + // Properties + public DateTime Start { get; } // 0x10192480 + public DateTime End { get; } // 0x102B29F0 + public TimeSpan Delta { get; } // 0x101D5290 + + // Methods + public void .ctor(DateTime start, DateTime end, TimeSpan delta); // 0x102B29B0 +} + +// Namespace: System.Globalization +[Serializable] +public enum DigitShapes // TypeDefIndex: 391 +{ + Context = 0, + None = 1, + NativeNational = 2 +} + +// Namespace: System.Globalization +[Serializable] +public abstract class EastAsianLunisolarCalendar : Calendar // TypeDefIndex: 392 +{ + // Fields + internal readonly CCEastAsianLunisolarEraHandler M_EraHandler; // 0x20 + + // Properties + public override int TwoDigitYearMax { get; set; } // 0x100C5B30 0x102B5320 + internal virtual int ActualCurrentEra { get; } // 0x100EF660 + public override CalendarAlgorithmType AlgorithmType { get; } // 0x10158A50 + + // Methods + internal void .ctor(CCEastAsianLunisolarEraHandler eraHandler); // 0x102B5300 + internal void M_CheckDateTime(DateTime time); // 0x102B4F70 + internal void M_CheckEra(int era); // 0x102B4FA0 + internal int M_CheckYEG(int year, int era); // 0x102B5040 + internal override void M_CheckYE(int year, int era); // 0x102B50F0 + internal int M_CheckYMEG(int year, int month, int era); // 0x102B5180 + internal int M_CheckYMDEG(int year, int month, int day, int era); // 0x102B5100 + public override DateTime AddMonths(DateTime time, int months); // 0x102B4AB0 + public override DateTime AddYears(DateTime time, int years); // 0x102B4B10 + public override int GetDayOfMonth(DateTime time); // 0x102B4BE0 + public override DayOfWeek GetDayOfWeek(DateTime time); // 0x102B4C30 + public override int GetDayOfYear(DateTime time); // 0x102B4C80 + public override int GetDaysInMonth(int year, int month, int era); // 0x102B4CD0 + public override int GetDaysInYear(int year, int era); // 0x102B4D00 + public override int GetLeapMonth(int year, int era); // 0x102B4D30 + public override int GetMonth(DateTime time); // 0x102B4D40 + public override int GetMonthsInYear(int year, int era); // 0x102B4D90 + public override int GetYear(DateTime time); // 0x102B4E90 + public override bool IsLeapDay(int year, int month, int day, int era); // 0x102B4EE0 + public override bool IsLeapMonth(int year, int month, int era); // 0x102B4F10 + public override bool IsLeapYear(int year, int era); // 0x102B4F40 + public override DateTime ToDateTime(int year, int month, int day, int hour, int minute, int second, int millisecond, int era); // 0x102B5200 + public override int ToFourDigitYear(int year); // 0x102B5270 + public int GetCelestialStem(int sexagenaryYear); // 0x102B4B70 + public virtual int GetSexagenaryYear(DateTime time); // 0x102B4DE0 + public int GetTerrestrialBranch(int sexagenaryYear); // 0x102B4E20 +} + +// Namespace: System.Globalization +[Serializable] +public class GregorianCalendar : Calendar // TypeDefIndex: 393 +{ + // Fields + public const int ADEra = 1; // 0x00 + [NonSerialized] internal GregorianCalendarTypes m_type; // 0x20 + private static Nullable`1 Min; // 0x00 + private static Nullable`1 Max; // 0x18 + + // Properties + public override int[] Eras { get; } // 0x102B5AC0 + public override int TwoDigitYearMax { get; set; } // 0x100C5B30 0x102B5CF0 + public virtual GregorianCalendarTypes CalendarType { get; set; } // 0x100EACD0 0x102B5CD0 + public override DateTime MinSupportedDateTime { get; } // 0x102B5C00 + public override DateTime MaxSupportedDateTime { get; } // 0x102B5B20 + + // Methods + public void .ctor(GregorianCalendarTypes type); // 0x102B5870 + public void .ctor(); // 0x102B59A0 + internal void M_CheckEra(int era); // 0x102B55D0 + internal override void M_CheckYE(int year, int era); // 0x102B5640 + internal void M_CheckYME(int year, int month, int era); // 0x102B5760 + internal void M_CheckYMDE(int year, int month, int day, int era); // 0x102B56F0 + public override DateTime AddMonths(DateTime time, int months); // 0x102B5380 + public override DateTime AddYears(DateTime time, int years); // 0x102B53B0 + public override int GetDayOfMonth(DateTime time); // 0x102B53E0 + public override DayOfWeek GetDayOfWeek(DateTime time); // 0x102B5400 + public override int GetDayOfYear(DateTime time); // 0x102B5430 + public override int GetDaysInMonth(int year, int month, int era); // 0x102B5450 + public override int GetDaysInYear(int year, int era); // 0x102B5480 + public override int GetEra(DateTime time); // 0x100EF660 + public override int GetLeapMonth(int year, int era); // 0x100C5600 + public override int GetMonth(DateTime time); // 0x102B54B0 + public override int GetMonthsInYear(int year, int era); // 0x102B54D0 + public override int GetWeekOfYear(DateTime time, CalendarWeekRule rule, DayOfWeek firstDayOfWeek); // 0x102B5500 + public override int GetYear(DateTime time); // 0x102B5530 + public override bool IsLeapDay(int year, int month, int day, int era); // 0x102B5550 + public override bool IsLeapMonth(int year, int month, int era); // 0x102B5580 + public override bool IsLeapYear(int year, int era); // 0x102B55A0 + public override DateTime ToDateTime(int year, int month, int day, int hour, int minute, int second, int millisecond, int era); // 0x102B57F0 + public override int ToFourDigitYear(int year); // 0x102B5860 +} + +// Namespace: System.Globalization +[Serializable] +public enum GregorianCalendarTypes // TypeDefIndex: 394 +{ + Localized = 1, + USEnglish = 2, + MiddleEastFrench = 9, + Arabic = 10, + TransliteratedEnglish = 11, + TransliteratedFrench = 12 +} + +// Namespace: System.Globalization +[Serializable] +public class HebrewCalendar : Calendar // TypeDefIndex: 395 +{ + // Fields + internal const long M_MinTicks = 499147488000000000; // 0x00 + internal const long M_MaxTicks = 706783967999999999; // 0x00 + internal const int M_MinYear = 5343; // 0x00 + public static readonly int HebrewEra; // 0x00 + private static DateTime Min; // 0x08 + private static DateTime Max; // 0x18 + + // Properties + internal override int M_MaxYear { get; } // 0x102B8DA0 + public override int[] Eras { get; } // 0x102B8D20 + public override int TwoDigitYearMax { get; set; } // 0x100C5B30 0x102B8E70 + public override DateTime MinSupportedDateTime { get; } // 0x102B8E10 + public override DateTime MaxSupportedDateTime { get; } // 0x102B8DB0 + + // Methods + public void .ctor(); // 0x102B8C10 + private static void .cctor(); // 0x102B8B70 + internal void M_CheckDateTime(DateTime time); // 0x102B8620 + internal void M_CheckEra(int era); // 0x102B86C0 + internal override void M_CheckYE(int year, int era); // 0x102B8770 + internal void M_CheckYME(int year, int month, int era); // 0x102B8910 + internal void M_CheckYMDE(int year, int month, int day, int era); // 0x102B88A0 + public override DateTime AddMonths(DateTime time, int months); // 0x102B7F60 + public override DateTime AddYears(DateTime time, int years); // 0x102B80E0 + public override int GetDayOfMonth(DateTime time); // 0x102B81A0 + public override DayOfWeek GetDayOfWeek(DateTime time); // 0x102B81E0 + public override int GetDayOfYear(DateTime time); // 0x102B8220 + internal int M_CCMonth(int month, int year); // 0x102B85E0 + internal int M_Month(int ccmonth, int year); // 0x102B89F0 + public override int GetDaysInMonth(int year, int month, int era); // 0x102B8280 + public override int GetDaysInYear(int year, int era); // 0x102B8310 + public override int GetEra(DateTime time); // 0x102B8360 + public override int GetLeapMonth(int year, int era); // 0x102B83D0 + public override int GetMonth(DateTime time); // 0x102B8400 + public override int GetMonthsInYear(int year, int era); // 0x102B8490 + public override int GetYear(DateTime time); // 0x102B84C0 + public override bool IsLeapDay(int year, int month, int day, int era); // 0x102B8500 + public override bool IsLeapMonth(int year, int month, int era); // 0x102B8560 + public override bool IsLeapYear(int year, int era); // 0x102B85B0 + public override DateTime ToDateTime(int year, int month, int day, int hour, int minute, int second, int millisecond, int era); // 0x102B8A20 + public override int ToFourDigitYear(int year); // 0x102B8AE0 +} + +// Namespace: System.Globalization +[Serializable] +public class HijriCalendar : Calendar // TypeDefIndex: 396 +{ + // Fields + public static readonly int HijriEra; // 0x00 + internal static readonly int M_MinFixed; // 0x04 + internal static readonly int M_MaxFixed; // 0x08 + internal int M_AddHijriDate; // 0x20 + private static DateTime Min; // 0x10 + private static DateTime Max; // 0x20 + + // Properties + public override int[] Eras { get; } // 0x102B9F00 + public int HijriAdjustment { get; set; } // 0x102B9F80 0x102BA0D0 + public override int TwoDigitYearMax { get; set; } // 0x100C5B30 0x102BA120 + internal virtual int AddHijriDate { get; set; } // 0x100EACD0 0x102BA090 + public override DateTime MinSupportedDateTime { get; } // 0x102BA030 + public override DateTime MaxSupportedDateTime { get; } // 0x102B9FD0 + + // Methods + public void .ctor(); // 0x102B9DF0 + private static void .cctor(); // 0x102B9D10 + internal void M_CheckFixedHijri(string param, int rdHijri); // 0x102B9640 + internal void M_CheckDateTime(DateTime time); // 0x102B9520 + internal int M_FromDateTime(DateTime time); // 0x102B9B90 + internal DateTime M_ToDateTime(int rd); // 0x102B9C30 + internal DateTime M_ToDateTime(int date, int hour, int minute, int second, int milliseconds); // 0x102B9BD0 + internal void M_CheckEra(int era); // 0x102B9590 + internal override void M_CheckYE(int year, int era); // 0x102B9930 + internal void M_CheckYME(int year, int month, int era); // 0x102B9AE0 + internal void M_CheckYMDE(int year, int month, int day, int era); // 0x102B9A20 + public override DateTime AddMonths(DateTime time, int months); // 0x102B8EE0 + public override DateTime AddYears(DateTime time, int years); // 0x102B8FF0 + public override int GetDayOfMonth(DateTime time); // 0x102B90F0 + public override DayOfWeek GetDayOfWeek(DateTime time); // 0x102B9160 + public override int GetDayOfYear(DateTime time); // 0x102B91D0 + public override int GetDaysInMonth(int year, int month, int era); // 0x102B9250 + public override int GetDaysInYear(int year, int era); // 0x102B92A0 + public override int GetEra(DateTime time); // 0x102B92F0 + public override int GetLeapMonth(int year, int era); // 0x100C5600 + public override int GetMonth(DateTime time); // 0x102B93A0 + public override int GetMonthsInYear(int year, int era); // 0x102B54D0 + public override int GetYear(DateTime time); // 0x102B9410 + public override bool IsLeapDay(int year, int month, int day, int era); // 0x102B9480 + public override bool IsLeapMonth(int year, int month, int era); // 0x102B94D0 + public override bool IsLeapYear(int year, int era); // 0x102B94F0 + public override DateTime ToDateTime(int year, int month, int day, int hour, int minute, int second, int millisecond, int era); // 0x102B9C70 + public override int ToFourDigitYear(int year); // 0x102B5860 +} + +// Namespace: System.Globalization +public sealed class IdnMapping // TypeDefIndex: 397 +{ + // Fields + private bool allow_unassigned; // 0x08 + private bool use_std3; // 0x09 + private Punycode puny; // 0x0C + + // Properties + public bool AllowUnassigned { get; set; } // 0x100EA020 0x10155000 + public bool UseStd3AsciiRules { get; set; } // 0x10117290 0x10155020 + + // Methods + public void .ctor(); // 0x102BB300 + public override bool Equals(object obj); // 0x102BA340 + public override int GetHashCode(); // 0x102BA550 + public string GetAscii(string unicode); // 0x102BA3A0 + public string GetAscii(string unicode, int index); // 0x102BA410 + public string GetAscii(string unicode, int index, int count); // 0x102BA490 + private string Convert(string input, int index, int count, bool toAscii); // 0x102BA180 + private string ToAscii(string s, int offset); // 0x102BA840 + private void VerifyLength(string s, int offset); // 0x102BAD40 + private string NamePrep(string s, int offset); // 0x102BA720 + private void VerifyProhibitedCharacters(string s, int offset); // 0x102BAE70 + private void VerifyStd3AsciiRules(string s, int offset); // 0x102BB0B0 + public string GetUnicode(string ascii); // 0x102BA6B0 + public string GetUnicode(string ascii, int index); // 0x102BA630 + public string GetUnicode(string ascii, int index, int count); // 0x102BA570 + private string ToUnicode(string s, int offset); // 0x102BAB90 +} + +// Namespace: System.Globalization +internal class Bootstring // TypeDefIndex: 398 +{ + // Fields + private readonly char delimiter; // 0x08 + private readonly int base_num; // 0x0C + private readonly int tmin; // 0x10 + private readonly int tmax; // 0x14 + private readonly int skew; // 0x18 + private readonly int damp; // 0x1C + private readonly int initial_bias; // 0x20 + private readonly int initial_n; // 0x24 + + // Methods + public void .ctor(char delimiter, int baseNum, int tmin, int tmax, int skew, int damp, int initialBias, int initialN); // 0x101AE720 + public string Encode(string s, int offset); // 0x101AE380 + private char EncodeDigit(int d); // 0x101AE360 + private int DecodeDigit(char c); // 0x101AE0E0 + private int Adapt(int delta, int numPoints, bool firstTime); // 0x101AE060 + public string Decode(string s, int offset); // 0x101AE110 +} + +// Namespace: System.Globalization +internal class Punycode : Bootstring // TypeDefIndex: 399 +{ + // Methods + public void .ctor(); // 0x102C1AC0 +} + +// Namespace: System.Globalization +[Serializable] +public class JapaneseCalendar : Calendar // TypeDefIndex: 400 +{ + // Fields + internal static readonly CCGregorianEraHandler M_EraHandler; // 0x00 + private static DateTime JapanMin; // 0x08 + private static DateTime JapanMax; // 0x18 + + // Properties + public override int[] Eras { get; } // 0x102BC000 + public override int TwoDigitYearMax { get; set; } // 0x100C5B30 0x102BC160 + public override DateTime MinSupportedDateTime { get; } // 0x102BC100 + public override DateTime MaxSupportedDateTime { get; } // 0x102BC0A0 + + // Methods + public void .ctor(); // 0x102BBD00 + private static void .cctor(); // 0x102BBB50 + internal void M_CheckDateTime(DateTime time); // 0x102BB710 + internal void M_CheckEra(int era); // 0x102BB780 + internal int M_CheckYEG(int year, int era); // 0x102BB830 + internal override void M_CheckYE(int year, int era); // 0x102BB940 + internal int M_CheckYMEG(int year, int month, int era); // 0x102BB9D0 + internal int M_CheckYMDEG(int year, int month, int day, int era); // 0x102BB950 + public override DateTime AddMonths(DateTime time, int months); // 0x102BB370 + public override DateTime AddYears(DateTime time, int years); // 0x102BB3C0 + public override int GetDayOfMonth(DateTime time); // 0x102BB410 + public override DayOfWeek GetDayOfWeek(DateTime time); // 0x102BB450 + public override int GetDayOfYear(DateTime time); // 0x102BB490 + public override int GetDaysInMonth(int year, int month, int era); // 0x102BB4D0 + public override int GetDaysInYear(int year, int era); // 0x102BB500 + public override int GetEra(DateTime time); // 0x102BB530 + public override int GetLeapMonth(int year, int era); // 0x100C5600 + public override int GetMonth(DateTime time); // 0x102BB5C0 + public override int GetMonthsInYear(int year, int era); // 0x102B54D0 + public override int GetWeekOfYear(DateTime time, CalendarWeekRule rule, DayOfWeek firstDayOfWeek); // 0x102B5500 + public override int GetYear(DateTime time); // 0x102BB600 + public override bool IsLeapDay(int year, int month, int day, int era); // 0x102BB690 + public override bool IsLeapMonth(int year, int month, int era); // 0x102BB6C0 + public override bool IsLeapYear(int year, int era); // 0x102BB6E0 + public override DateTime ToDateTime(int year, int month, int day, int hour, int minute, int second, int millisecond, int era); // 0x102BBA50 + public override int ToFourDigitYear(int year); // 0x102BBAC0 +} + +// Namespace: System.Globalization +[Serializable] +public class JapaneseLunisolarCalendar : EastAsianLunisolarCalendar // TypeDefIndex: 401 +{ + // Fields + public const int JapaneseEra = 1; // 0x00 + internal static readonly CCEastAsianLunisolarEraHandler era_handler; // 0x00 + private static DateTime JapanMin; // 0x08 + private static DateTime JapanMax; // 0x18 + + // Properties + internal override int ActualCurrentEra { get; } // 0x100FCEA0 + public override int[] Eras { get; } // 0x102BC3E0 + public override DateTime MinSupportedDateTime { get; } // 0x102BC4E0 + public override DateTime MaxSupportedDateTime { get; } // 0x102BC480 + + // Methods + public void .ctor(); // 0x102BC380 + private static void .cctor(); // 0x102BC250 + public override int GetEra(DateTime time); // 0x102BC1C0 +} + +// Namespace: System.Globalization +[Serializable] +public class JulianCalendar : Calendar // TypeDefIndex: 402 +{ + // Fields + public static readonly int JulianEra; // 0x00 + private static DateTime JulianMin; // 0x08 + private static DateTime JulianMax; // 0x18 + + // Properties + public override int[] Eras { get; } // 0x102BCE10 + public override int TwoDigitYearMax { get; set; } // 0x100C5B30 0x102BCF50 + public override CalendarAlgorithmType AlgorithmType { get; } // 0x100EF660 + public override DateTime MinSupportedDateTime { get; } // 0x102BCEF0 + public override DateTime MaxSupportedDateTime { get; } // 0x102BCE90 + + // Methods + public void .ctor(); // 0x102BCD00 + private static void .cctor(); // 0x102BCC60 + internal void M_CheckEra(int era); // 0x102BC900 + internal override void M_CheckYE(int year, int era); // 0x102BC9B0 + internal void M_CheckYME(int year, int month, int era); // 0x102BCB50 + internal void M_CheckYMDE(int year, int month, int day, int era); // 0x102BCAA0 + public override DateTime AddMonths(DateTime time, int months); // 0x102BC540 + public override DateTime AddYears(DateTime time, int years); // 0x102BC600 + public override int GetDayOfMonth(DateTime time); // 0x102BC6A0 + public override DayOfWeek GetDayOfWeek(DateTime time); // 0x102B5400 + public override int GetDayOfYear(DateTime time); // 0x102BC6D0 + public override int GetDaysInMonth(int year, int month, int era); // 0x102BC710 + public override int GetDaysInYear(int year, int era); // 0x102BC760 + public override int GetEra(DateTime time); // 0x102BC7B0 + public override int GetLeapMonth(int year, int era); // 0x100C5600 + public override int GetMonth(DateTime time); // 0x102BC800 + public override int GetMonthsInYear(int year, int era); // 0x102B54D0 + public override int GetYear(DateTime time); // 0x102BC830 + public override bool IsLeapDay(int year, int month, int day, int era); // 0x102BC860 + public override bool IsLeapMonth(int year, int month, int era); // 0x102BC8B0 + public override bool IsLeapYear(int year, int era); // 0x102BC8D0 + public override DateTime ToDateTime(int year, int month, int day, int hour, int minute, int second, int millisecond, int era); // 0x102BCBE0 + public override int ToFourDigitYear(int year); // 0x102B5860 +} + +// Namespace: System.Globalization +[Serializable] +public class KoreanCalendar : Calendar // TypeDefIndex: 403 +{ + // Fields + public const int KoreanEra = 1; // 0x00 + internal static readonly CCGregorianEraHandler M_EraHandler; // 0x00 + private static DateTime KoreanMin; // 0x08 + private static DateTime KoreanMax; // 0x18 + + // Properties + public override int[] Eras { get; } // 0x102BD710 + public override int TwoDigitYearMax { get; set; } // 0x100C5B30 0x102BD870 + public override DateTime MinSupportedDateTime { get; } // 0x102BD810 + public override DateTime MaxSupportedDateTime { get; } // 0x102BD7B0 + + // Methods + public void .ctor(); // 0x102BD600 + private static void .cctor(); // 0x102BD510 + internal void M_CheckEra(int era); // 0x102BD1D0 + internal int M_CheckYEG(int year, int era); // 0x102BD280 + internal override void M_CheckYE(int year, int era); // 0x102BD390 + internal int M_CheckYMEG(int year, int month, int era); // 0x102BD420 + internal int M_CheckYMDEG(int year, int month, int day, int era); // 0x102BD3A0 + public override DateTime AddMonths(DateTime time, int months); // 0x102B5380 + public override DateTime AddYears(DateTime time, int years); // 0x102B53B0 + public override int GetDayOfMonth(DateTime time); // 0x102B53E0 + public override DayOfWeek GetDayOfWeek(DateTime time); // 0x102B5400 + public override int GetDayOfYear(DateTime time); // 0x102B5430 + public override int GetDaysInMonth(int year, int month, int era); // 0x102BCFB0 + public override int GetDaysInYear(int year, int era); // 0x102BCFE0 + public override int GetEra(DateTime time); // 0x102BD010 + public override int GetLeapMonth(int year, int era); // 0x100C5600 + public override int GetMonth(DateTime time); // 0x102B54B0 + public override int GetMonthsInYear(int year, int era); // 0x102BD0A0 + public override int GetWeekOfYear(DateTime time, CalendarWeekRule rule, DayOfWeek firstDayOfWeek); // 0x102B5500 + public override int GetYear(DateTime time); // 0x102BD0C0 + public override bool IsLeapDay(int year, int month, int day, int era); // 0x102BD150 + public override bool IsLeapMonth(int year, int month, int era); // 0x102BD180 + public override bool IsLeapYear(int year, int era); // 0x102BD1A0 + public override DateTime ToDateTime(int year, int month, int day, int hour, int minute, int second, int millisecond, int era); // 0x102BD4A0 + public override int ToFourDigitYear(int year); // 0x102B5860 +} + +// Namespace: System.Globalization +[Serializable] +public class KoreanLunisolarCalendar : EastAsianLunisolarCalendar // TypeDefIndex: 404 +{ + // Fields + public const int GregorianEra = 1; // 0x00 + internal static readonly CCEastAsianLunisolarEraHandler era_handler; // 0x00 + private static DateTime KoreanMin; // 0x08 + private static DateTime KoreanMax; // 0x18 + + // Properties + public override int[] Eras { get; } // 0x102BDAD0 + public override DateTime MinSupportedDateTime { get; } // 0x102BDBD0 + public override DateTime MaxSupportedDateTime { get; } // 0x102BDB70 + + // Methods + public void .ctor(); // 0x102BDA70 + private static void .cctor(); // 0x102BD960 + public override int GetEra(DateTime time); // 0x102BD8D0 +} + +// Namespace: System.Globalization +[Serializable] +public sealed class NumberFormatInfo : ICloneable, IFormatProvider // TypeDefIndex: 405 +{ + // Fields + private bool isReadOnly; // 0x08 + private string decimalFormats; // 0x0C + private string currencyFormats; // 0x10 + private string percentFormats; // 0x14 + private string digitPattern; // 0x18 + private string zeroPattern; // 0x1C + private int currencyDecimalDigits; // 0x20 + private string currencyDecimalSeparator; // 0x24 + private string currencyGroupSeparator; // 0x28 + private int[] currencyGroupSizes; // 0x2C + private int currencyNegativePattern; // 0x30 + private int currencyPositivePattern; // 0x34 + private string currencySymbol; // 0x38 + private string nanSymbol; // 0x3C + private string negativeInfinitySymbol; // 0x40 + private string negativeSign; // 0x44 + private int numberDecimalDigits; // 0x48 + private string numberDecimalSeparator; // 0x4C + private string numberGroupSeparator; // 0x50 + private int[] numberGroupSizes; // 0x54 + private int numberNegativePattern; // 0x58 + private int percentDecimalDigits; // 0x5C + private string percentDecimalSeparator; // 0x60 + private string percentGroupSeparator; // 0x64 + private int[] percentGroupSizes; // 0x68 + private int percentNegativePattern; // 0x6C + private int percentPositivePattern; // 0x70 + private string percentSymbol; // 0x74 + private string perMilleSymbol; // 0x78 + private string positiveInfinitySymbol; // 0x7C + private string positiveSign; // 0x80 + private string ansiCurrencySymbol; // 0x84 + private int m_dataItem; // 0x88 + private bool m_useUserOverride; // 0x8C + private bool validForParseAsNumber; // 0x8D + private bool validForParseAsCurrency; // 0x8E + private string[] nativeDigits; // 0x90 + private int digitSubstitution; // 0x94 + private static readonly string[] invariantNativeDigits; // 0x00 + + // Properties + public int CurrencyDecimalDigits { get; set; } // 0x100EACD0 0x102BF730 + public string CurrencyDecimalSeparator { get; set; } // 0x100EAD50 0x102BF7D0 + public string CurrencyGroupSeparator { get; set; } // 0x100EB040 0x102BF870 + public int[] CurrencyGroupSizes { get; set; } // 0x102BF480 0x102BF910 + internal int[] RawCurrencyGroupSizes { get; set; } // 0x100EB200 0x102C0520 + public int CurrencyNegativePattern { get; set; } // 0x100EA580 0x102BF920 + public int CurrencyPositivePattern { get; set; } // 0x100E9ED0 0x102BF9C0 + public string CurrencySymbol { get; set; } // 0x100EB210 0x102BFA60 + public static NumberFormatInfo CurrentInfo { get; } // 0x102BF4F0 + public static NumberFormatInfo InvariantInfo { get; } // 0x102BF570 + public bool IsReadOnly { get; } // 0x100EA020 + public string NaNSymbol { get; set; } // 0x100EB220 0x102BFB00 + public string NegativeInfinitySymbol { get; set; } // 0x100E9E80 0x102BFBA0 + public string NegativeSign { get; set; } // 0x10145530 0x102BFC40 + public int NumberDecimalDigits { get; set; } // 0x10145560 0x102BFCE0 + public string NumberDecimalSeparator { get; set; } // 0x10145570 0x102BFD80 + public string NumberGroupSeparator { get; set; } // 0x10132810 0x102BFE20 + public int[] NumberGroupSizes { get; set; } // 0x102BF620 0x102BFEC0 + internal int[] RawNumberGroupSizes { get; set; } // 0x10145520 0x102C0690 + public int NumberNegativePattern { get; set; } // 0x10145540 0x102BFED0 + public int PercentDecimalDigits { get; set; } // 0x10145580 0x102C0010 + public string PercentDecimalSeparator { get; set; } // 0x10145550 0x102C00B0 + public string PercentGroupSeparator { get; set; } // 0x10145590 0x102C0150 + public int[] PercentGroupSizes { get; set; } // 0x102BF690 0x102C01F0 + internal int[] RawPercentGroupSizes { get; set; } // 0x1013F890 0x102C0800 + public int PercentNegativePattern { get; set; } // 0x102BF700 0x102C0200 + public int PercentPositivePattern { get; set; } // 0x101356C0 0x102C02A0 + public string PercentSymbol { get; set; } // 0x10167E60 0x102C0340 + public string PerMilleSymbol { get; set; } // 0x101BC4E0 0x102BFF70 + public string PositiveInfinitySymbol { get; set; } // 0x102BF710 0x102C03E0 + public string PositiveSign { get; set; } // 0x102BF720 0x102C0480 + + // Methods + internal void .ctor(int lcid, bool read_only); // 0x102BF280 + internal void .ctor(bool read_only); // 0x102BF240 + public void .ctor(); // 0x102BF260 + private static void .cctor(); // 0x102BEEC0 + private void InitPatterns(); // 0x102BDE70 + public object GetFormat(Type formatType); // 0x102BDC90 + public object Clone(); // 0x102BDC30 + public static NumberFormatInfo ReadOnly(NumberFormatInfo nfi); // 0x102BEE20 + public static NumberFormatInfo GetInstance(IFormatProvider formatProvider); // 0x102BDCF0 +} + +// Namespace: System.Globalization +[Serializable] +public enum NumberStyles // TypeDefIndex: 406 +{ + None = 0, + AllowLeadingWhite = 1, + AllowTrailingWhite = 2, + AllowLeadingSign = 4, + Integer = 7, + AllowTrailingSign = 8, + AllowParentheses = 16, + AllowDecimalPoint = 32, + AllowThousands = 64, + Number = 111, + AllowExponent = 128, + Float = 167, + AllowCurrencySymbol = 256, + Currency = 383, + Any = 511, + AllowHexSpecifier = 512, + HexNumber = 515 +} + +// Namespace: System.Globalization +[Serializable] +public class PersianCalendar : Calendar // TypeDefIndex: 407 +{ + // Fields + internal const long M_MinTicks = 196036416000000000; // 0x00 + internal const int M_MinYear = 1; // 0x00 + internal const int epoch = 226895; // 0x00 + public static readonly int PersianEra; // 0x00 + private static DateTime PersianMin; // 0x08 + private static DateTime PersianMax; // 0x18 + + // Properties + public override int[] Eras { get; } // 0x102C1830 + public override int TwoDigitYearMax { get; set; } // 0x100C5B30 0x102C1A30 + public override CalendarAlgorithmType AlgorithmType { get; } // 0x100EF660 + public override DateTime MinSupportedDateTime { get; } // 0x102C1910 + public override DateTime MaxSupportedDateTime { get; } // 0x102C18B0 + + // Methods + public void .ctor(); // 0x102C15E0 + private static void .cctor(); // 0x102C1540 + internal void M_CheckDateTime(DateTime time); // 0x102C1020 + internal void M_CheckEra(int era); // 0x102C10A0 + internal override void M_CheckYE(int year, int era); // 0x102C1150 + internal void M_CheckYME(int year, int month, int era); // 0x102C1350 + internal void M_CheckYMDE(int year, int month, int day, int era); // 0x102C1280 + internal int fixed_from_dmy(int day, int month, int year); // 0x102C17D0 + internal int year_from_fixed(int date); // 0x102C1A90 + internal void my_from_fixed(out int month, out int year, int date); // 0x102C1990 + internal void dmy_from_fixed(out int day, out int month, out int year, int date); // 0x102C16F0 + internal bool is_leap_year(int year); // 0x102C1970 + public override DateTime AddMonths(DateTime time, int months); // 0x102C09E0 + public override DateTime AddYears(DateTime time, int years); // 0x102C0B00 + public override int GetDayOfMonth(DateTime time); // 0x102C0C00 + public override DayOfWeek GetDayOfWeek(DateTime time); // 0x102C0C70 + public override int GetDayOfYear(DateTime time); // 0x102C0CB0 + public override int GetDaysInMonth(int year, int month, int era); // 0x102C0D30 + public override int GetDaysInYear(int year, int era); // 0x102C0D90 + public override int GetEra(DateTime time); // 0x102C0DE0 + public override int GetLeapMonth(int year, int era); // 0x100C5600 + public override int GetMonth(DateTime time); // 0x102C0E50 + public override int GetMonthsInYear(int year, int era); // 0x102B54D0 + public override int GetYear(DateTime time); // 0x102C0F10 + public override bool IsLeapDay(int year, int month, int day, int era); // 0x102C0F70 + public override bool IsLeapMonth(int year, int month, int era); // 0x102C0FC0 + public override bool IsLeapYear(int year, int era); // 0x102C0FE0 + public override DateTime ToDateTime(int year, int month, int day, int hour, int minute, int second, int millisecond, int era); // 0x102C1410 + public override int ToFourDigitYear(int year); // 0x102C14D0 +} + +// Namespace: System.Globalization +[Serializable] +public class RegionInfo // TypeDefIndex: 408 +{ + // Fields + private static RegionInfo currentRegion; // 0x00 + private int lcid; // 0x08 + private int regionId; // 0x0C + private string iso2Name; // 0x10 + private string iso3Name; // 0x14 + private string win3Name; // 0x18 + private string englishName; // 0x1C + private string currencySymbol; // 0x20 + private string isoCurrencySymbol; // 0x24 + private string currencyEnglishName; // 0x28 + private static Dictionary`2 <>f__switch$map1B; // 0x04 + + // Properties + public static RegionInfo CurrentRegion { get; } // 0x102C1EC0 + public virtual string CurrencyEnglishName { get; } // 0x100EB040 + public virtual string CurrencySymbol { get; } // 0x100EACD0 + public virtual string DisplayName { get; } // 0x100F85F0 + public virtual string EnglishName { get; } // 0x100F85F0 + public virtual int GeoId { get; } // 0x100C5B30 + public virtual bool IsMetric { get; } // 0x102C2080 + public virtual string ISOCurrencySymbol { get; } // 0x100EAD50 + public virtual string NativeName { get; } // 0x102C2170 + public virtual string CurrencyNativeName { get; } // 0x102C1E70 + public virtual string Name { get; } // 0x100BFC20 + public virtual string ThreeLetterISORegionName { get; } // 0x100EF0C0 + public virtual string ThreeLetterWindowsRegionName { get; } // 0x100EE580 + public virtual string TwoLetterISORegionName { get; } // 0x100BFC20 + + // Methods + public void .ctor(int culture); // 0x102C1C50 + public void .ctor(string name); // 0x102C1D30 + private bool GetByTerritory(CultureInfo ci); // 0x102C1B70 + private bool construct_internal_region_from_name(string name); // 0x102C1E50 + public override bool Equals(object value); // 0x102C1AF0 + public override int GetHashCode(); // 0x102C1C30 + public override string ToString(); // 0x10208CB0 +} + +// Namespace: System.Globalization +[Serializable] +public class StringInfo // TypeDefIndex: 409 +{ + // Fields + private string s; // 0x08 + private int length; // 0x0C + + // Properties + public int LengthInTextElements { get; } // 0x102C3080 + public string String { get; set; } // 0x100BF0C0 0x102C3290 + + // Methods + public void .ctor(); // 0x100BF000 + public void .ctor(string value); // 0x102C3000 + public override bool Equals(object value); // 0x102C26F0 + public override int GetHashCode(); // 0x10140690 + public string SubstringByTextElements(int startingTextElement); // 0x102C2F40 + public string SubstringByTextElements(int startingTextElement, int lengthInTextElements); // 0x102C2E20 + public static string GetNextTextElement(string str); // 0x102C2950 + public static string GetNextTextElement(string str, int index); // 0x102C29C0 + private static int GetNextTextElementLength(string str, int index); // 0x102C2790 + public static TextElementEnumerator GetTextElementEnumerator(string str); // 0x102C2AE0 + public static TextElementEnumerator GetTextElementEnumerator(string str, int index); // 0x102C2A20 + public static int[] ParseCombiningCharacters(string str); // 0x102C2B80 +} + +// Namespace: System.Globalization +[Serializable] +public class TaiwanCalendar : Calendar // TypeDefIndex: 410 +{ + // Fields + internal static readonly CCGregorianEraHandler M_EraHandler; // 0x00 + private static DateTime TaiwanMin; // 0x08 + private static DateTime TaiwanMax; // 0x18 + + // Properties + public override int[] Eras { get; } // 0x102C3CF0 + public override int TwoDigitYearMax { get; set; } // 0x100C5B30 0x102C3E50 + public override DateTime MinSupportedDateTime { get; } // 0x102C3DF0 + public override DateTime MaxSupportedDateTime { get; } // 0x102C3D90 + + // Methods + public void .ctor(); // 0x102C3BF0 + private static void .cctor(); // 0x102C3B00 + internal void M_CheckDateTime(DateTime time); // 0x102C36C0 + internal void M_CheckEra(int era); // 0x102C3730 + internal int M_CheckYEG(int year, int era); // 0x102C37E0 + internal override void M_CheckYE(int year, int era); // 0x102C38F0 + internal int M_CheckYMEG(int year, int month, int era); // 0x102C3980 + internal int M_CheckYMDEG(int year, int month, int day, int era); // 0x102C3900 + public override DateTime AddMonths(DateTime time, int months); // 0x102C3300 + public override DateTime AddYears(DateTime time, int years); // 0x102C3350 + public override int GetDayOfMonth(DateTime time); // 0x102C33A0 + public override DayOfWeek GetDayOfWeek(DateTime time); // 0x102C33E0 + public override int GetDayOfYear(DateTime time); // 0x102C3420 + public override int GetDaysInMonth(int year, int month, int era); // 0x102C3460 + public override int GetDaysInYear(int year, int era); // 0x102C3490 + public override int GetEra(DateTime time); // 0x102C34C0 + public override int GetLeapMonth(int year, int era); // 0x100C5600 + public override int GetMonth(DateTime time); // 0x102C3550 + public override int GetMonthsInYear(int year, int era); // 0x102C3590 + public override int GetWeekOfYear(DateTime time, CalendarWeekRule rule, DayOfWeek firstDayOfWeek); // 0x102B5500 + public override int GetYear(DateTime time); // 0x102C35B0 + public override bool IsLeapDay(int year, int month, int day, int era); // 0x102C3640 + public override bool IsLeapMonth(int year, int month, int era); // 0x102C3670 + public override bool IsLeapYear(int year, int era); // 0x102C3690 + public override DateTime ToDateTime(int year, int month, int day, int hour, int minute, int second, int millisecond, int era); // 0x102C3A00 + public override int ToFourDigitYear(int year); // 0x102C3A70 +} + +// Namespace: System.Globalization +[Serializable] +public class TaiwanLunisolarCalendar : EastAsianLunisolarCalendar // TypeDefIndex: 411 +{ + // Fields + private const int TaiwanEra = 1; // 0x00 + internal static readonly CCEastAsianLunisolarEraHandler era_handler; // 0x00 + private static DateTime TaiwanMin; // 0x08 + private static DateTime TaiwanMax; // 0x18 + + // Properties + public override int[] Eras { get; } // 0x102C40B0 + public override DateTime MinSupportedDateTime { get; } // 0x102C41B0 + public override DateTime MaxSupportedDateTime { get; } // 0x102C4150 + + // Methods + public void .ctor(); // 0x102C4050 + private static void .cctor(); // 0x102C3F40 + public override int GetEra(DateTime time); // 0x102C3EB0 +} + +// Namespace: System.Globalization +[Serializable] +public class TextElementEnumerator : IEnumerator // TypeDefIndex: 412 +{ + // Fields + private int index; // 0x08 + private int elementindex; // 0x0C + private int startpos; // 0x10 + private string str; // 0x14 + private string element; // 0x18 + + // Properties + public object Current { get; } // 0x102C4370 + public int ElementIndex { get; } // 0x102C43D0 + + // Methods + internal void .ctor(string str, int startpos); // 0x102C4320 + public string GetTextElement(); // 0x102C4210 + public bool MoveNext(); // 0x102C4270 + public void Reset(); // 0x102C4300 +} + +// Namespace: System.Globalization +[Serializable] +public class TextInfo : ICloneable, IDeserializationCallback // TypeDefIndex: 413 +{ + // Fields + private string m_listSeparator; // 0x08 + private bool m_isReadOnly; // 0x0C + private string customCultureName; // 0x10 + [NonSerialized] private int m_nDataItem; // 0x14 + private bool m_useUserOverride; // 0x18 + private int m_win32LangID; // 0x1C + [NonSerialized] private readonly CultureInfo ci; // 0x20 + [NonSerialized] private readonly bool handleDotI; // 0x24 + [NonSerialized] private readonly Data data; // 0x28 + + // Properties + public virtual int ANSICodePage { get; } // 0x102C5150 + public virtual int EBCDICCodePage { get; } // 0x102C51B0 + public int LCID { get; } // 0x100F85F0 + public virtual string ListSeparator { get; set; } // 0x102C52C0 0x100EB270 + public virtual int MacCodePage { get; } // 0x102C5300 + public virtual int OEMCodePage { get; } // 0x102C5320 + public string CultureName { get; } // 0x102C5170 + public bool IsReadOnly { get; } // 0x100F8910 + public bool IsRightToLeft { get; } // 0x102C51D0 + + // Methods + internal void .ctor(CultureInfo ci, int lcid, void * data, bool read_only); // 0x102C5030 + private void .ctor(TextInfo textInfo); // 0x102C4F90 + private void System.Runtime.Serialization.IDeserializationCallback.OnDeserialization(object sender); // 0x100C5530 + public override bool Equals(object obj); // 0x102C4480 + public override int GetHashCode(); // 0x100F85F0 + public override string ToString(); // 0x102C4840 + public string ToTitleCase(string str); // 0x102C4980 + public virtual char ToLower(char c); // 0x102C46C0 + public virtual char ToUpper(char c); // 0x102C4C90 + private char ToTitleCase(char c); // 0x102C48C0 + public virtual string ToLower(string str); // 0x102C4590 + public virtual string ToUpper(string str); // 0x102C4E60 + public static TextInfo ReadOnly(TextInfo textInfo); // 0x102C4500 + public virtual object Clone(); // 0x102C4430 +} + +// Namespace: +private struct Data // TypeDefIndex: 414 +{ + // Fields + public int ansi; // 0x08 + public int ebcdic; // 0x0C + public int mac; // 0x10 + public int oem; // 0x14 + public byte list_sep; // 0x18 + +} + +// Namespace: System.Globalization +[Serializable] +public class ThaiBuddhistCalendar : Calendar // TypeDefIndex: 415 +{ + // Fields + public const int ThaiBuddhistEra = 1; // 0x00 + internal static readonly CCGregorianEraHandler M_EraHandler; // 0x00 + private static DateTime ThaiMin; // 0x08 + private static DateTime ThaiMax; // 0x18 + + // Properties + public override int[] Eras { get; } // 0x102C5A80 + public override int TwoDigitYearMax { get; set; } // 0x100C5B30 0x102C5BE0 + public override DateTime MinSupportedDateTime { get; } // 0x102C5B80 + public override DateTime MaxSupportedDateTime { get; } // 0x102C5B20 + + // Methods + public void .ctor(); // 0x102C5970 + private static void .cctor(); // 0x102C5880 + internal void M_CheckEra(int era); // 0x102C5540 + internal int M_CheckYEG(int year, int era); // 0x102C55F0 + internal override void M_CheckYE(int year, int era); // 0x102C5700 + internal int M_CheckYMEG(int year, int month, int era); // 0x102C5790 + internal int M_CheckYMDEG(int year, int month, int day, int era); // 0x102C5710 + public override DateTime AddMonths(DateTime time, int months); // 0x102B5380 + public override DateTime AddYears(DateTime time, int years); // 0x102B53B0 + public override int GetDayOfMonth(DateTime time); // 0x102B53E0 + public override DayOfWeek GetDayOfWeek(DateTime time); // 0x102B5400 + public override int GetDayOfYear(DateTime time); // 0x102B5430 + public override int GetDaysInMonth(int year, int month, int era); // 0x102C5340 + public override int GetDaysInYear(int year, int era); // 0x102C5370 + public override int GetEra(DateTime time); // 0x102C53A0 + public override int GetLeapMonth(int year, int era); // 0x100C5600 + public override int GetMonth(DateTime time); // 0x102B54B0 + public override int GetMonthsInYear(int year, int era); // 0x102B54D0 + public override int GetWeekOfYear(DateTime time, CalendarWeekRule rule, DayOfWeek firstDayOfWeek); // 0x102B5500 + public override int GetYear(DateTime time); // 0x102C5430 + public override bool IsLeapDay(int year, int month, int day, int era); // 0x102C54C0 + public override bool IsLeapMonth(int year, int month, int era); // 0x102C54F0 + public override bool IsLeapYear(int year, int era); // 0x102C5510 + public override DateTime ToDateTime(int year, int month, int day, int hour, int minute, int second, int millisecond, int era); // 0x102C5810 + public override int ToFourDigitYear(int year); // 0x102B5860 +} + +// Namespace: System.Globalization +[Serializable] +public class UmAlQuraCalendar : Calendar // TypeDefIndex: 416 +{ + // Fields + public const int UmAlQuraEra = 1; // 0x00 + internal static readonly int M_MinFixed; // 0x00 + internal static readonly int M_MaxFixed; // 0x04 + internal int M_AddHijriDate; // 0x20 + private static DateTime Min; // 0x08 + private static DateTime Max; // 0x18 + + // Properties + public override int[] Eras { get; } // 0x102C6A10 + public override int TwoDigitYearMax { get; set; } // 0x100C5B30 0x102C6B70 + internal virtual int AddHijriDate { get; set; } // 0x100EACD0 0x102C6B30 + public override DateTime MinSupportedDateTime { get; } // 0x102C6AD0 + public override DateTime MaxSupportedDateTime { get; } // 0x102C6A70 + + // Methods + public void .ctor(); // 0x102C6900 + private static void .cctor(); // 0x102C6830 + internal void M_CheckFixedHijri(string param, int rdHijri); // 0x102C62A0 + internal void M_CheckDateTime(DateTime time); // 0x102C61C0 + internal int M_FromDateTime(DateTime time); // 0x102B9B90 + internal DateTime M_ToDateTime(int rd); // 0x102B9C30 + internal DateTime M_ToDateTime(int date, int hour, int minute, int second, int milliseconds); // 0x102B9BD0 + internal void M_CheckEra(int era); // 0x102C6230 + internal override void M_CheckYE(int year, int era); // 0x102C6590 + internal void M_CheckYME(int year, int month, int era); // 0x102C66E0 + internal void M_CheckYMDE(int year, int month, int day, int era); // 0x102C6640 + public override DateTime AddMonths(DateTime time, int months); // 0x102C5C40 + public override DateTime AddYears(DateTime time, int years); // 0x102C5D50 + public override int GetDayOfMonth(DateTime time); // 0x102C5E50 + public override DayOfWeek GetDayOfWeek(DateTime time); // 0x102C5EC0 + public override int GetDayOfYear(DateTime time); // 0x102C5F30 + public override int GetDaysInMonth(int year, int month, int era); // 0x102C5FB0 + public override int GetDaysInYear(int year, int era); // 0x102B92A0 + public override int GetEra(DateTime time); // 0x102C6000 + public override int GetLeapMonth(int year, int era); // 0x100C5600 + public override int GetMonth(DateTime time); // 0x102C6070 + public override int GetMonthsInYear(int year, int era); // 0x102B54D0 + public override int GetYear(DateTime time); // 0x102C60E0 + public override bool IsLeapDay(int year, int month, int day, int era); // 0x102C6150 + public override bool IsLeapMonth(int year, int month, int era); // 0x102C61A0 + public override bool IsLeapYear(int year, int era); // 0x102B94F0 + public override DateTime ToDateTime(int year, int month, int day, int hour, int minute, int second, int millisecond, int era); // 0x102C6790 + public override int ToFourDigitYear(int year); // 0x102B5860 +} + +// Namespace: System.Globalization +[Serializable] +public enum UnicodeCategory // TypeDefIndex: 417 +{ + UppercaseLetter = 0, + LowercaseLetter = 1, + TitlecaseLetter = 2, + ModifierLetter = 3, + OtherLetter = 4, + NonSpacingMark = 5, + SpacingCombiningMark = 6, + EnclosingMark = 7, + DecimalDigitNumber = 8, + LetterNumber = 9, + OtherNumber = 10, + SpaceSeparator = 11, + LineSeparator = 12, + ParagraphSeparator = 13, + Control = 14, + Format = 15, + Surrogate = 16, + PrivateUse = 17, + ConnectorPunctuation = 18, + DashPunctuation = 19, + OpenPunctuation = 20, + ClosePunctuation = 21, + InitialQuotePunctuation = 22, + FinalQuotePunctuation = 23, + OtherPunctuation = 24, + MathSymbol = 25, + CurrencySymbol = 26, + ModifierSymbol = 27, + OtherSymbol = 28, + OtherNotAssigned = 29 +} + +// Namespace: System.IO.IsolatedStorage +public interface INormalizeForIsolatedStorage // TypeDefIndex: 418 +{ + // Methods + object Normalize(); +} + +// Namespace: System.IO.IsolatedStorage +public abstract class IsolatedStorage : MarshalByRefObject // TypeDefIndex: 419 +{ + // Fields + internal IsolatedStorageScope storage_scope; // 0x0C + internal object _assemblyIdentity; // 0x10 + internal object _domainIdentity; // 0x14 + internal object _applicationIdentity; // 0x18 + + // Properties + public object ApplicationIdentity { get; } // 0x102D56D0 + public object AssemblyIdentity { get; } // 0x102D57B0 + public virtual ulong CurrentSize { get; } // 0x102D5860 + public object DomainIdentity { get; } // 0x102D58C0 + public virtual ulong MaximumSize { get; } // 0x102D5970 + public IsolatedStorageScope Scope { get; } // 0x100C5B30 + protected virtual char SeparatorExternal { get; } // 0x102D59D0 + protected virtual char SeparatorInternal { get; } // 0x102D5A20 + + // Methods + protected void .ctor(); // 0x100C5970 + protected abstract IsolatedStoragePermission GetPermission(PermissionSet ps); + protected void InitStore(IsolatedStorageScope scope, Type domainEvidenceType, Type assemblyEvidenceType); // 0x102D55F0 + protected void InitStore(IsolatedStorageScope scope, Type appEvidenceType); // 0x102D5560 + public abstract void Remove(); +} + +// Namespace: System.IO.IsolatedStorage +[Serializable] +public class IsolatedStorageException : Exception // TypeDefIndex: 420 +{ + // Methods + public void .ctor(); // 0x102D20A0 + public void .ctor(string message); // 0x10211F30 + public void .ctor(string message, Exception inner); // 0x10211F80 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x1015EC80 +} + +// Namespace: System.IO.IsolatedStorage +public sealed class IsolatedStorageFile : IsolatedStorage, IDisposable // TypeDefIndex: 421 +{ + // Fields + private bool _resolved; // 0x1C + private ulong _maxSize; // 0x20 + private Evidence _fullEvidences; // 0x28 + private static Mutex mutex; // 0x00 + private DirectoryInfo directory; // 0x2C + + // Properties + public override ulong CurrentSize { get; } // 0x102D5260 + public override ulong MaximumSize { get; } // 0x102D52C0 + internal string Root { get; } // 0x102D5530 + + // Methods + private void .ctor(IsolatedStorageScope scope); // 0x101862C0 + internal void .ctor(IsolatedStorageScope scope, string location); // 0x102D51B0 + private static void .cctor(); // 0x102D5160 + public static IEnumerator GetEnumerator(IsolatedStorageScope scope); // 0x102D3810 + public static IsolatedStorageFile GetStore(IsolatedStorageScope scope, Evidence domainEvidence, Type domainEvidenceType, Evidence assemblyEvidence, Type assemblyEvidenceType); // 0x102D4320 + public static IsolatedStorageFile GetStore(IsolatedStorageScope scope, object domainIdentity, object assemblyIdentity); // 0x102D4550 + public static IsolatedStorageFile GetStore(IsolatedStorageScope scope, Type domainEvidenceType, Type assemblyEvidenceType); // 0x102D4140 + public static IsolatedStorageFile GetStore(IsolatedStorageScope scope, object applicationIdentity); // 0x102D4670 + public static IsolatedStorageFile GetStore(IsolatedStorageScope scope, Type applicationEvidenceType); // 0x102D40A0 + public static IsolatedStorageFile GetMachineStoreForApplication(); // 0x102D3C20 + public static IsolatedStorageFile GetMachineStoreForAssembly(); // 0x102D3CA0 + public static IsolatedStorageFile GetMachineStoreForDomain(); // 0x102D3D40 + public static IsolatedStorageFile GetUserStoreForApplication(); // 0x102D48D0 + public static IsolatedStorageFile GetUserStoreForAssembly(); // 0x102D4950 + public static IsolatedStorageFile GetUserStoreForDomain(); // 0x102D49F0 + public static void Remove(IsolatedStorageScope scope); // 0x102D4DB0 + internal static string GetIsolatedStorageRoot(IsolatedStorageScope scope); // 0x102D3B10 + private static void Demand(IsolatedStorageScope scope); // 0x102D2FC0 + private static IsolatedStorageContainment ScopeToContainment(IsolatedStorageScope scope); // 0x102D50D0 + internal static ulong GetDirectorySize(DirectoryInfo di); // 0x102D3420 + protected override void Finalize(); // 0x101CF660 + private void PostInit(); // 0x102D4AB0 + public void Close(); // 0x100C5530 + public void CreateDirectory(string dir); // 0x102D2BE0 + public void DeleteDirectory(string dir); // 0x102D2DF0 + public void DeleteFile(string file); // 0x102D2F30 + public void Dispose(); // 0x102D30F0 + public string[] GetDirectoryNames(string searchPattern); // 0x102D3250 + private string[] GetNames(FileSystemInfo[] afsi); // 0x102D3EF0 + public string[] GetFileNames(string searchPattern); // 0x102D3940 + public override void Remove(); // 0x102D4E10 + protected override IsolatedStoragePermission GetPermission(PermissionSet ps); // 0x102D3FE0 + private string GetNameFromIdentity(object identity); // 0x102D3E00 + private static object GetTypeFromEvidence(Evidence e, Type t); // 0x102D4740 + internal static object GetAssemblyIdentityFromEvidence(Evidence e); // 0x102D3100 + internal static object GetDomainIdentityFromEvidence(Evidence e); // 0x102D3720 + private void SaveIdentities(string root); // 0x102D4E40 +} + +// Namespace: +[Serializable] +private struct Identities // TypeDefIndex: 422 +{ + // Fields + public object Application; // 0x08 + public object Assembly; // 0x0C + public object Domain; // 0x10 + + // Methods + public void .ctor(object application, object assembly, object domain); // 0x100074C0 +} + +// Namespace: System.IO.IsolatedStorage +internal class IsolatedStorageFileEnumerator : IEnumerator // TypeDefIndex: 423 +{ + // Fields + private IsolatedStorageScope _scope; // 0x08 + private string[] _storages; // 0x0C + private int _pos; // 0x10 + + // Properties + public object Current { get; } // 0x102D2180 + + // Methods + public void .ctor(IsolatedStorageScope scope, string root); // 0x102D2110 + public bool MoveNext(); // 0x102D20E0 + public void Reset(); // 0x102D2100 +} + +// Namespace: System.IO.IsolatedStorage +public class IsolatedStorageFileStream : FileStream // TypeDefIndex: 424 +{ + // Properties + public override bool CanRead { get; } // 0x102CD660 + public override bool CanSeek { get; } // 0x102CD680 + public override bool CanWrite { get; } // 0x102CD690 + public override SafeFileHandle SafeFileHandle { get; } // 0x102D2B80 + public override IntPtr Handle { get; } // 0x102D2B10 + public override bool IsAsync { get; } // 0x10298460 + public override long Length { get; } // 0x102D2B70 + public override long Position { get; set; } // 0x102CD830 0x102CD980 + + // Methods + public void .ctor(string path, FileMode mode); // 0x102D28F0 + public void .ctor(string path, FileMode mode, FileAccess access); // 0x102D2940 + public void .ctor(string path, FileMode mode, FileAccess access, FileShare share); // 0x102D29E0 + public void .ctor(string path, FileMode mode, FileAccess access, FileShare share, int bufferSize); // 0x102D2AD0 + public void .ctor(string path, FileMode mode, FileAccess access, FileShare share, int bufferSize, IsolatedStorageFile isf); // 0x102D2990 + public void .ctor(string path, FileMode mode, FileAccess access, FileShare share, IsolatedStorageFile isf); // 0x102D28A0 + public void .ctor(string path, FileMode mode, FileAccess access, IsolatedStorageFile isf); // 0x102D2A30 + public void .ctor(string path, FileMode mode, IsolatedStorageFile isf); // 0x102D2A80 + private static string CreateIsolatedPath(IsolatedStorageFile isf, string path, FileMode mode); // 0x102D22C0 + public override IAsyncResult BeginRead(byte[] buffer, int offset, int numBytes, AsyncCallback userCallback, object stateObject); // 0x102D22A0 + public override IAsyncResult BeginWrite(byte[] buffer, int offset, int numBytes, AsyncCallback userCallback, object stateObject); // 0x102D22B0 + public override int EndRead(IAsyncResult asyncResult); // 0x102D2800 + public override void EndWrite(IAsyncResult asyncResult); // 0x102D2810 + public override void Flush(); // 0x102CB4A0 + public override int Read(byte[] buffer, int offset, int count); // 0x102D2830 + public override int ReadByte(); // 0x102D2820 + public override long Seek(long offset, SeekOrigin origin); // 0x102D2840 + public override void SetLength(long value); // 0x102D2860 + public override void Write(byte[] buffer, int offset, int count); // 0x102D2890 + public override void WriteByte(byte value); // 0x102D2880 + protected override void Dispose(bool disposing); // 0x102D27F0 +} + +// Namespace: System.IO.IsolatedStorage +[Serializable] +public enum IsolatedStorageScope // TypeDefIndex: 425 +{ + None = 0, + User = 1, + Domain = 2, + Assembly = 4, + Roaming = 8, + Machine = 16, + Application = 32 +} + +// Namespace: System.IO +public class BinaryReader : IDisposable // TypeDefIndex: 426 +{ + // Fields + private const int MaxBufferSize = 128; // 0x00 + private Stream m_stream; // 0x08 + private Encoding m_encoding; // 0x0C + private byte[] m_buffer; // 0x10 + private Decoder decoder; // 0x14 + private char[] charBuffer; // 0x18 + private bool m_disposed; // 0x1C + + // Properties + public virtual Stream BaseStream { get; } // 0x100BF0C0 + + // Methods + public void .ctor(Stream input); // 0x102B03F0 + public void .ctor(Stream input, Encoding encoding); // 0x102B02F0 + private void System.IDisposable.Dispose(); // 0x102B02D0 + public virtual void Close(); // 0x102AF0F0 + protected virtual void Dispose(bool disposing); // 0x102AF120 + protected virtual void FillBuffer(int numBytes); // 0x102AF170 + public virtual int PeekChar(); // 0x102AF290 + public virtual int Read(); // 0x102AFF90 + public virtual int Read(byte[] buffer, int index, int count); // 0x102B0180 + public virtual int Read(char[] buffer, int index, int count); // 0x102B0030 + private int ReadCharBytes(char[] buffer, int index, int count, out int bytes_read); // 0x102AF6F0 + protected int Read7BitEncodedInt(); // 0x102AF3F0 + public virtual bool ReadBoolean(); // 0x102AF490 + public virtual byte ReadByte(); // 0x102AF4C0 + public virtual byte[] ReadBytes(int count); // 0x102AF5A0 + public virtual char ReadChar(); // 0x102AF7A0 + public virtual char[] ReadChars(int count); // 0x102AF810 + public virtual Decimal ReadDecimal(); // 0x102AF910 + public virtual double ReadDouble(); // 0x102AFA30 + public virtual short ReadInt16(); // 0x102AFA60 + public virtual int ReadInt32(); // 0x102AFAD0 + public virtual long ReadInt64(); // 0x102AFB80 + public virtual sbyte ReadSByte(); // 0x102AFD20 + public virtual string ReadString(); // 0x102AFD70 + public virtual float ReadSingle(); // 0x102AFD40 + public virtual ushort ReadUInt16(); // 0x102AFA60 + public virtual uint ReadUInt32(); // 0x102AFAD0 + public virtual ulong ReadUInt64(); // 0x102AFB80 + private void CheckBuffer(int length); // 0x102AF080 +} + +// Namespace: System.IO +[Serializable] +public class BinaryWriter : IDisposable // TypeDefIndex: 427 +{ + // Fields + public static readonly BinaryWriter Null; // 0x00 + protected Stream OutStream; // 0x08 + private Encoding m_encoding; // 0x0C + private byte[] buffer; // 0x10 + private bool disposed; // 0x14 + private byte[] stringBuffer; // 0x18 + private int maxCharsPerRound; // 0x1C + + // Properties + public virtual Stream BaseStream { get; } // 0x100BF0C0 + + // Methods + protected void .ctor(); // 0x102B1870 + public void .ctor(Stream output); // 0x102B18F0 + public void .ctor(Stream output, Encoding encoding); // 0x102B1770 + private static void .cctor(); // 0x102B16B0 + private void System.IDisposable.Dispose(); // 0x102B02D0 + public virtual void Close(); // 0x102B02D0 + protected virtual void Dispose(bool disposing); // 0x102B0530 + public virtual void Flush(); // 0x102B0570 + public virtual long Seek(int offset, SeekOrigin origin); // 0x102B05A0 + public virtual void Write(bool value); // 0x102B07B0 + public virtual void Write(byte value); // 0x102B10D0 + public virtual void Write(byte[] buffer); // 0x102B0950 + public virtual void Write(byte[] buffer, int index, int count); // 0x102B15F0 + public virtual void Write(char ch); // 0x102B1500 + public virtual void Write(char[] chars); // 0x102B0860 + public virtual void Write(char[] chars, int index, int count); // 0x102B12D0 + public virtual void Write(Decimal value); // 0x102B1160 + public virtual void Write(double value); // 0x102B0BD0 + public virtual void Write(short value); // 0x102B0F40 + public virtual void Write(int value); // 0x102B13C0 + public virtual void Write(long value); // 0x102B0E60 + public virtual void Write(sbyte value); // 0x102B1020 + public virtual void Write(float value); // 0x102B0C80 + public virtual void Write(string value); // 0x102B0630 + public virtual void Write(ushort value); // 0x102B0AF0 + public virtual void Write(uint value); // 0x102B0D20 + public virtual void Write(ulong value); // 0x102B0A10 + protected void Write7BitEncodedInt(int value); // 0x102B05E0 +} + +// Namespace: System.IO +public sealed class BufferedStream : Stream // TypeDefIndex: 428 +{ + // Fields + private Stream m_stream; // 0x08 + private byte[] m_buffer; // 0x0C + private int m_buffer_pos; // 0x10 + private int m_buffer_read_ahead; // 0x14 + private bool m_buffer_reading; // 0x18 + private bool disposed; // 0x19 + + // Properties + public override bool CanRead { get; } // 0x102B26F0 + public override bool CanWrite { get; } // 0x102B2750 + public override bool CanSeek { get; } // 0x102B2720 + public override long Length { get; } // 0x102B2780 + public override long Position { get; set; } // 0x102B27C0 0x102B2820 + + // Methods + public void .ctor(Stream stream); // 0x102B2420 + public void .ctor(Stream stream, int bufferSize); // 0x102B2570 + protected override void Dispose(bool disposing); // 0x102B19C0 + public override void Flush(); // 0x102B1A10 + public override long Seek(long offset, SeekOrigin origin); // 0x102B1DE0 + public override void SetLength(long value); // 0x102B1EA0 + public override int ReadByte(); // 0x102B1AD0 + public override void WriteByte(byte value); // 0x102B21D0 + public override int Read(out byte[] array, int offset, int count); // 0x102B1B50 + public override void Write(byte[] array, int offset, int count); // 0x102B2250 + private void CheckObjectDisposedException(); // 0x102B1950 +} + +// Namespace: System.IO +public static class Directory // TypeDefIndex: 429 +{ + // Methods + public static DirectoryInfo CreateDirectory(string path); // 0x102B2C50 + private static DirectoryInfo CreateDirectoriesInternal(string path); // 0x102B2B20 + public static void Delete(string path); // 0x102B3060 + private static void RecursiveDelete(string path); // 0x102B4660 + public static void Delete(string path, bool recursive); // 0x102B2F30 + public static bool Exists(string path); // 0x102B3320 + public static DateTime GetLastAccessTime(string path); // 0x102B3E80 + public static DateTime GetLastAccessTimeUtc(string path); // 0x102B3E40 + public static DateTime GetLastWriteTime(string path); // 0x102B3EF0 + public static DateTime GetLastWriteTimeUtc(string path); // 0x102B3EB0 + public static DateTime GetCreationTime(string path); // 0x102B33D0 + public static DateTime GetCreationTimeUtc(string path); // 0x102B3390 + public static string GetCurrentDirectory(); // 0x102B3400 + public static string[] GetDirectories(string path); // 0x102B3670 + public static string[] GetDirectories(string path, string searchPattern); // 0x102B3560 + public static string[] GetDirectories(string path, string searchPattern, SearchOption searchOption); // 0x102B3580 + private static void GetDirectoriesRecurse(string path, string searchPattern, ArrayList all); // 0x102B34A0 + public static string GetDirectoryRoot(string path); // 0x102B36B0 + public static string[] GetFiles(string path); // 0x102B3D10 + public static string[] GetFiles(string path, string searchPattern); // 0x102B3CF0 + public static string[] GetFiles(string path, string searchPattern, SearchOption searchOption); // 0x102B3D50 + private static void GetFilesRecurse(string path, string searchPattern, ArrayList all); // 0x102B3C30 + public static string[] GetFileSystemEntries(string path); // 0x102B3BD0 + public static string[] GetFileSystemEntries(string path, string searchPattern); // 0x102B3C10 + public static string[] GetLogicalDrives(); // 0x102B3F20 + private static bool IsRootDirectory(string path); // 0x102B41C0 + public static DirectoryInfo GetParent(string path); // 0x102B3F30 + public static void Move(string sourceDirName, string destDirName); // 0x102B42B0 + public static void SetCreationTime(string path, DateTime creationTime); // 0x102B4840 + public static void SetCreationTimeUtc(string path, DateTime creationTimeUtc); // 0x102B4800 + public static void SetCurrentDirectory(string path); // 0x102B4860 + public static void SetLastAccessTime(string path, DateTime lastAccessTime); // 0x102B4A30 + public static void SetLastAccessTimeUtc(string path, DateTime lastAccessTimeUtc); // 0x102B49F0 + public static void SetLastWriteTime(string path, DateTime lastWriteTime); // 0x102B4A90 + public static void SetLastWriteTimeUtc(string path, DateTime lastWriteTimeUtc); // 0x102B4A50 + private static void CheckPathExceptions(string path); // 0x102B2A10 + private static string[] GetFileSystemEntries(string path, string searchPattern, FileAttributes mask, FileAttributes attrs); // 0x102B3710 +} + +// Namespace: System.IO +[Serializable] +public sealed class DirectoryInfo : FileSystemInfo // TypeDefIndex: 430 +{ + // Fields + private string current; // 0x48 + private string parent; // 0x4C + + // Properties + public override bool Exists { get; } // 0x102C7E10 + public override string Name { get; } // 0x10145560 + public DirectoryInfo Parent { get; } // 0x102C7E90 + public DirectoryInfo Root { get; } // 0x102C7EF0 + + // Methods + public void .ctor(string path); // 0x102C7C40 + internal void .ctor(string path, bool simpleOriginalPath); // 0x102C7D10 + private void .ctor(SerializationInfo info, StreamingContext context); // 0x102C7C10 + private void Initialize(); // 0x102C78E0 + public void Create(); // 0x102C6C60 + public DirectoryInfo CreateSubdirectory(string path); // 0x102C6BD0 + public FileInfo[] GetFiles(); // 0x102C7760 + public FileInfo[] GetFiles(string searchPattern); // 0x102C77A0 + public DirectoryInfo[] GetDirectories(); // 0x102C7030 + public DirectoryInfo[] GetDirectories(string searchPattern); // 0x102C6CC0 + public FileSystemInfo[] GetFileSystemInfos(); // 0x102C7070 + public FileSystemInfo[] GetFileSystemInfos(string searchPattern); // 0x102C70B0 + public override void Delete(); // 0x102C6C80 + public void Delete(bool recursive); // 0x102C6CA0 + public void MoveTo(string destDirName); // 0x102C7B40 + public override string ToString(); // 0x100BFC20 + public DirectoryInfo[] GetDirectories(string searchPattern, SearchOption searchOption); // 0x102C6E00 + internal int GetFilesSubdirs(ArrayList l, string pattern); // 0x102C72E0 + public FileInfo[] GetFiles(string searchPattern, SearchOption searchOption); // 0x102C7470 +} + +// Namespace: System.IO +[Serializable] +public class DirectoryNotFoundException : IOException // TypeDefIndex: 431 +{ + // Methods + public void .ctor(); // 0x102C7F70 + public void .ctor(string message); // 0x100E5680 + public void .ctor(string message, Exception innerException); // 0x100E5670 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 +} + +// Namespace: System.IO +[Serializable] +public sealed class DriveInfo : ISerializable // TypeDefIndex: 432 +{ + // Fields + private _DriveType _drive_type; // 0x08 + private string drive_format; // 0x0C + private string path; // 0x10 + + // Properties + public long AvailableFreeSpace { get; } // 0x102C8840 + public long TotalFreeSpace { get; } // 0x102C8910 + public long TotalSize { get; } // 0x102C8970 + public string VolumeLabel { get; set; } // 0x100BFC20 0x102C89D0 + public string DriveFormat { get; } // 0x100C5B30 + public DriveType DriveType { get; } // 0x102C88A0 + public string Name { get; } // 0x100BFC20 + public DirectoryInfo RootDirectory { get; } // 0x102C88C0 + public bool IsReady { get; } // 0x100E5880 + + // Methods + private void .ctor(_DriveType _drive_type, string path, string fstype); // 0x102C8810 + public void .ctor(string driveName); // 0x102C86D0 + private void System.Runtime.Serialization.ISerializable.GetObjectData(SerializationInfo info, StreamingContext context); // 0x102C8360 + private static void GetDiskFreeSpace(string path, out ulong availableFreeSpace, out ulong totalSize, out ulong totalFreeSpace); // 0x102C7FD0 + private static StreamReader TryOpen(string name); // 0x102C83B0 + private static DriveInfo[] LinuxGetDrives(); // 0x102C80A0 + private static DriveInfo[] UnixGetDrives(); // 0x102C8440 + private static DriveInfo[] WindowsGetDrives(); // 0x102C8680 + public static DriveInfo[] GetDrives(); // 0x102C8070 + public override string ToString(); // 0x100BFC20 + private static bool GetDiskFreeSpaceInternal(string pathName, out ulong freeBytesAvail, out ulong totalNumberOfBytes, out ulong totalNumberOfFreeBytes, out MonoIOError error); // 0x102C7FB0 + private static uint GetDriveTypeInternal(string rootPathName); // 0x102C8060 +} + +// Namespace: +private enum _DriveType // TypeDefIndex: 433 +{ + GenericUnix = 0, + Linux = 1, + Windows = 2 +} + +// Namespace: System.IO +[Serializable] +public class DriveNotFoundException : IOException // TypeDefIndex: 434 +{ + // Fields + private const int ErrorCode = -2147024893; // 0x00 + + // Methods + public void .ctor(); // 0x102C8A20 + public void .ctor(string message); // 0x102C8A90 + public void .ctor(string message, Exception innerException); // 0x102C8A60 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 +} + +// Namespace: System.IO +[Serializable] +public enum DriveType // TypeDefIndex: 435 +{ + Unknown = 0, + NoRootDirectory = 1, + Removable = 2, + Fixed = 3, + Network = 4, + CDRom = 5, + Ram = 6 +} + +// Namespace: System.IO +[Serializable] +public class EndOfStreamException : IOException // TypeDefIndex: 436 +{ + // Methods + public void .ctor(); // 0x102C8AB0 + public void .ctor(string message); // 0x100E5680 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 + public void .ctor(string message, Exception innerException); // 0x100E5670 +} + +// Namespace: System.IO +public static class File // TypeDefIndex: 437 +{ + // Fields + private static Nullable`1 defaultLocalFileTime; // 0x00 + + // Properties + private static DateTime DefaultLocalFileTime { get; } // 0x102D1F80 + + // Methods + public static void AppendAllText(string path, string contents); // 0x102CEA70 + public static void AppendAllText(string path, string contents, Encoding encoding); // 0x102CE960 + public static StreamWriter AppendText(string path); // 0x102CEB80 + public static void Copy(string sourceFileName, string destFileName); // 0x102CED00 + public static void Copy(string sourceFileName, string destFileName, bool overwrite); // 0x102CED20 + public static FileStream Create(string path); // 0x102CF330 + public static FileStream Create(string path, int bufferSize); // 0x102CF2E0 + public static StreamWriter CreateText(string path); // 0x102CF290 + public static void Delete(string path); // 0x102CF3F0 + public static bool Exists(string path); // 0x102CF700 + public static FileAttributes GetAttributes(string path); // 0x102CF820 + public static DateTime GetCreationTime(string path); // 0x102CFAE0 + public static DateTime GetCreationTimeUtc(string path); // 0x102CF9C0 + public static DateTime GetLastAccessTime(string path); // 0x102CFD20 + public static DateTime GetLastAccessTimeUtc(string path); // 0x102CFC00 + public static DateTime GetLastWriteTime(string path); // 0x102CFF60 + public static DateTime GetLastWriteTimeUtc(string path); // 0x102CFE40 + public static void Move(string sourceFileName, string destFileName); // 0x102D0080 + public static FileStream Open(string path, FileMode mode); // 0x102D0630 + public static FileStream Open(string path, FileMode mode, FileAccess access); // 0x102D05D0 + public static FileStream Open(string path, FileMode mode, FileAccess access, FileShare share); // 0x102D0690 + public static FileStream OpenRead(string path); // 0x102D0480 + public static StreamReader OpenText(string path); // 0x102D04E0 + public static FileStream OpenWrite(string path); // 0x102D0570 + public static void Replace(string sourceFileName, string destinationFileName, string destinationBackupFileName); // 0x102D0DD0 + public static void Replace(string sourceFileName, string destinationFileName, string destinationBackupFileName, bool ignoreMetadataErrors); // 0x102D0DF0 + public static void SetAttributes(string path, FileAttributes fileAttributes); // 0x102D1450 + public static void SetCreationTime(string path, DateTime creationTime); // 0x102D1500 + public static void SetCreationTimeUtc(string path, DateTime creationTimeUtc); // 0x102B4800 + public static void SetLastAccessTime(string path, DateTime lastAccessTime); // 0x102D16C0 + public static void SetLastAccessTimeUtc(string path, DateTime lastAccessTimeUtc); // 0x102B49F0 + public static void SetLastWriteTime(string path, DateTime lastWriteTime); // 0x102D1880 + public static void SetLastWriteTimeUtc(string path, DateTime lastWriteTimeUtc); // 0x102B4A50 + private static void CheckPathExceptions(string path); // 0x102CEBD0 + public static byte[] ReadAllBytes(string path); // 0x102D06F0 + public static string[] ReadAllLines(string path); // 0x102D09B0 + public static string[] ReadAllLines(string path, Encoding encoding); // 0x102D0B30 + private static string[] ReadAllLines(StreamReader reader); // 0x102D08F0 + public static string ReadAllText(string path); // 0x102D0C40 + public static string ReadAllText(string path, Encoding encoding); // 0x102D0CA0 + public static void WriteAllBytes(string path, byte[] bytes); // 0x102D1A40 + public static void WriteAllLines(string path, string[] contents); // 0x102D1D10 + public static void WriteAllLines(string path, string[] contents, Encoding encoding); // 0x102D1C10 + private static void WriteAllLines(StreamWriter writer, string[] contents); // 0x102D1BA0 + public static void WriteAllText(string path, string contents); // 0x102D1F20 + public static void WriteAllText(string path, string contents, Encoding encoding); // 0x102D1E10 + public static void Encrypt(string path); // 0x102CF6A0 + public static void Decrypt(string path); // 0x102CF390 +} + +// Namespace: System.IO +[Serializable] +public enum FileAccess // TypeDefIndex: 438 +{ + Read = 1, + Write = 2, + ReadWrite = 3 +} + +// Namespace: System.IO +[Serializable] +public enum FileAttributes // TypeDefIndex: 439 +{ + ReadOnly = 1, + Hidden = 2, + System = 4, + Directory = 16, + Archive = 32, + Device = 64, + Normal = 128, + Temporary = 256, + SparseFile = 512, + ReparsePoint = 1024, + Compressed = 2048, + Offline = 4096, + NotContentIndexed = 8192, + Encrypted = 16384 +} + +// Namespace: System.IO +[Serializable] +public sealed class FileInfo : FileSystemInfo // TypeDefIndex: 440 +{ + // Fields + private bool exists; // 0x48 + + // Properties + public override bool Exists { get; } // 0x102C9A20 + public override string Name { get; } // 0x102C97C0 + public bool IsReadOnly { get; set; } // 0x102C9AA0 0x102C9C20 + public long Length { get; } // 0x102C9B60 + public string DirectoryName { get; } // 0x102C9930 + public DirectoryInfo Directory { get; } // 0x102C9990 + + // Methods + public void .ctor(string fileName); // 0x102C9840 + private void .ctor(SerializationInfo info, StreamingContext context); // 0x102C9820 + internal override void InternalRefresh(); // 0x102C90F0 + public void Encrypt(); // 0x102C9090 + public void Decrypt(); // 0x102C8E70 + public StreamReader OpenText(); // 0x102C92D0 + public StreamWriter CreateText(); // 0x102C8D80 + public StreamWriter AppendText(); // 0x102C8AF0 + public FileStream Create(); // 0x102C8E10 + public FileStream OpenRead(); // 0x102C9270 + public FileStream OpenWrite(); // 0x102C9400 + public FileStream Open(FileMode mode); // 0x102C9520 + public FileStream Open(FileMode mode, FileAccess access); // 0x102C94C0 + public FileStream Open(FileMode mode, FileAccess access, FileShare share); // 0x102C9460 + public override void Delete(); // 0x102C8ED0 + public void MoveTo(string destFileName); // 0x102C9110 + public FileInfo CopyTo(string destFileName); // 0x102C8C90 + public FileInfo CopyTo(string destFileName, bool overwrite); // 0x102C8B80 + public override string ToString(); // 0x102C97C0 + public FileInfo Replace(string destinationFileName, string destinationBackupFileName); // 0x102C9580 + public FileInfo Replace(string destinationFileName, string destinationBackupFileName, bool ignoreMetadataErrors); // 0x102C9770 +} + +// Namespace: System.IO +[Serializable] +public class FileLoadException : IOException // TypeDefIndex: 441 +{ + // Fields + private const int Result = -2147024894; // 0x00 + private string msg; // 0x34 + private string fileName; // 0x38 + private string fusionLog; // 0x3C + + // Properties + public override string Message { get; } // 0x100E9ED0 + public string FileName { get; } // 0x100EB210 + public string FusionLog { get; } // 0x100EB220 + + // Methods + public void .ctor(); // 0x102C9F20 + public void .ctor(string message); // 0x102CA0A0 + public void .ctor(string message, string fileName); // 0x102CA040 + public void .ctor(string message, Exception inner); // 0x102CA070 + public void .ctor(string message, string fileName, Exception inner); // 0x102CA010 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x102C9F80 + public override void GetObjectData(SerializationInfo info, StreamingContext context); // 0x102C9D90 + public override string ToString(); // 0x102C9E00 +} + +// Namespace: System.IO +[Serializable] +public enum FileMode // TypeDefIndex: 442 +{ + CreateNew = 1, + Create = 2, + Open = 3, + OpenOrCreate = 4, + Truncate = 5, + Append = 6 +} + +// Namespace: System.IO +[Serializable] +public class FileNotFoundException : IOException // TypeDefIndex: 443 +{ + // Fields + private const int Result = -2146232799; // 0x00 + private string fileName; // 0x34 + private string fusionLog; // 0x38 + + // Properties + public string FileName { get; } // 0x100E9ED0 + public string FusionLog { get; } // 0x100EB210 + public override string Message { get; } // 0x102CA3F0 + + // Methods + public void .ctor(); // 0x102CA370 + public void .ctor(string message); // 0x102CA2B0 + public void .ctor(string message, Exception innerException); // 0x102CA280 + public void .ctor(string message, string fileName); // 0x102CA2D0 + public void .ctor(string message, string fileName, Exception innerException); // 0x102CA3C0 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x102CA300 + public override void GetObjectData(SerializationInfo info, StreamingContext context); // 0x102CA0D0 + public override string ToString(); // 0x102CA140 +} + +// Namespace: System.IO +[Serializable] +public enum FileOptions // TypeDefIndex: 444 +{ + WriteThrough = -2147483648, + None = 0, + Encrypted = 16384, + DeleteOnClose = 67108864, + SequentialScan = 134217728, + RandomAccess = 268435456, + Asynchronous = 1073741824 +} + +// Namespace: System.IO +[Serializable] +public enum FileShare // TypeDefIndex: 445 +{ + None = 0, + Read = 1, + Write = 2, + ReadWrite = 3, + Delete = 4, + Inheritable = 16 +} + +// Namespace: System.IO +public class FileStream : Stream // TypeDefIndex: 446 +{ + // Fields + internal const int DefaultBufferSize = 8192; // 0x00 + private FileAccess access; // 0x08 + private bool owner; // 0x0C + private bool async; // 0x0D + private bool canseek; // 0x0E + private long append_startpos; // 0x10 + private bool anonymous; // 0x18 + private byte[] buf; // 0x1C + private int buf_size; // 0x20 + private int buf_length; // 0x24 + private int buf_offset; // 0x28 + private bool buf_dirty; // 0x2C + private long buf_start; // 0x30 + private string name; // 0x38 + private IntPtr handle; // 0x3C + private SafeFileHandle safeHandle; // 0x40 + + // Properties + public override bool CanRead { get; } // 0x102CD660 + public override bool CanWrite { get; } // 0x102CD690 + public override bool CanSeek { get; } // 0x102CD680 + public virtual bool IsAsync { get; } // 0x10298460 + public string Name { get; } // 0x100EB210 + public override long Length { get; } // 0x102CD6B0 + public override long Position { get; set; } // 0x102CD830 0x102CD980 + public virtual IntPtr Handle { get; } // 0x100EB220 + public virtual SafeFileHandle SafeFileHandle { get; } // 0x102CD910 + + // Methods + public void .ctor(IntPtr handle, FileAccess access); // 0x102CD5D0 + public void .ctor(IntPtr handle, FileAccess access, bool ownsHandle); // 0x102CD2F0 + public void .ctor(IntPtr handle, FileAccess access, bool ownsHandle, int bufferSize); // 0x102CD210 + public void .ctor(IntPtr handle, FileAccess access, bool ownsHandle, int bufferSize, bool isAsync); // 0x102CD600 + internal void .ctor(IntPtr handle, FileAccess access, bool ownsHandle, int bufferSize, bool isAsync, bool noBuffering); // 0x102CD350 + public void .ctor(string path, FileMode mode); // 0x102CCAB0 + public void .ctor(string path, FileMode mode, FileAccess access); // 0x102CD280 + public void .ctor(string path, FileMode mode, FileAccess access, FileShare share); // 0x102CD630 + public void .ctor(string path, FileMode mode, FileAccess access, FileShare share, int bufferSize); // 0x102CD320 + public void .ctor(string path, FileMode mode, FileAccess access, FileShare share, int bufferSize, bool useAsync); // 0x102CD2C0 + internal void .ctor(string path, FileMode mode, FileAccess access, FileShare share, int bufferSize, bool isAsync, bool anonymous); // 0x102CD240 + internal void .ctor(string path, FileMode mode, FileAccess access, FileShare share, int bufferSize, bool anonymous, FileOptions options); // 0x102CCAF0 + public override int ReadByte(); // 0x102CB930 + public override void WriteByte(byte value); // 0x102CC5A0 + public override int Read(out byte[] array, int offset, int count); // 0x102CBCC0 + private int ReadInternal(byte[] dest, int offset, int count); // 0x102CBBA0 + public override IAsyncResult BeginRead(byte[] array, int offset, int numBytes, AsyncCallback userCallback, object stateObject); // 0x102CA6F0 + public override int EndRead(IAsyncResult asyncResult); // 0x102CAED0 + public override void Write(byte[] array, int offset, int count); // 0x102CC8E0 + private void WriteInternal(byte[] src, int offset, int count); // 0x102CC720 + public override IAsyncResult BeginWrite(byte[] array, int offset, int numBytes, AsyncCallback userCallback, object stateObject); // 0x102CA940 + public override void EndWrite(IAsyncResult asyncResult); // 0x102CB0D0 + public override long Seek(long offset, SeekOrigin origin); // 0x102CBF80 + public override void SetLength(long value); // 0x102CC1F0 + public override void Flush(); // 0x102CB4A0 + public virtual void Lock(long position, long length); // 0x102CB740 + public virtual void Unlock(long position, long length); // 0x102CC410 + protected override void Finalize(); // 0x10257750 + protected override void Dispose(bool disposing); // 0x102CACE0 + private int ReadSegment(byte[] dest, int dest_offset, int count); // 0x102CBC80 + private int WriteSegment(byte[] src, int src_offset, int count); // 0x102CC890 + private void FlushBuffer(Stream st); // 0x102CB2E0 + private void FlushBuffer(); // 0x102CB480 + private void FlushBufferIfDirty(); // 0x102CB2C0 + private void RefillBuffer(); // 0x102CBF50 + private int ReadData(IntPtr handle, byte[] buf, int offset, int count); // 0x102CBAA0 + private void InitBuffer(int size, bool noBuffering); // 0x102CB690 + private string GetSecureFileName(string filename); // 0x102CB5D0 + private string GetSecureFileName(string filename, bool full); // 0x102CB540 +} + +// Namespace: +private delegate int ReadDelegate(byte[] buffer, int offset, int count); // TypeDefIndex: 447; 0x102DB3D0 + +// Namespace: +private delegate void WriteDelegate(byte[] buffer, int offset, int count); // TypeDefIndex: 448; 0x102DDD00 + +// Namespace: System.IO +internal class FileStreamAsyncResult : IAsyncResult // TypeDefIndex: 449 +{ + // Fields + private object state; // 0x08 + private bool completed; // 0x0C + private bool done; // 0x0D + private Exception exc; // 0x10 + private ManualResetEvent wh; // 0x14 + private AsyncCallback cb; // 0x18 + private bool completedSynch; // 0x1C + public byte[] Buffer; // 0x20 + public int Offset; // 0x24 + public int Count; // 0x28 + public int OriginalCount; // 0x2C + public int BytesRead; // 0x30 + private AsyncCallback realcb; // 0x34 + + // Properties + public object AsyncState { get; } // 0x100BF0C0 + public bool CompletedSynchronously { get; } // 0x10172890 + public WaitHandle AsyncWaitHandle { get; } // 0x100EF0C0 + public bool IsCompleted { get; } // 0x100F8910 + public Exception Exception { get; } // 0x100BFC20 + public bool Done { get; set; } // 0x10298460 0x10298470 + + // Methods + public void .ctor(AsyncCallback cb, object state); // 0x102CA660 + private static void CBWrapper(IAsyncResult ares); // 0x102CA4F0 + public void SetComplete(Exception e); // 0x102CA5D0 + public void SetComplete(Exception e, int nbytes); // 0x102CA580 + public void SetComplete(Exception e, int nbytes, bool synch); // 0x102CA610 +} + +// Namespace: System.IO +[Serializable] +public abstract class FileSystemInfo : MarshalByRefObject, ISerializable // TypeDefIndex: 450 +{ + // Fields + protected string FullPath; // 0x0C + protected string OriginalPath; // 0x10 + internal MonoIOStat stat; // 0x18 + internal bool valid; // 0x40 + + // Properties + public abstract bool Exists { get; } + public abstract string Name { get; } + public virtual string FullName { get; } // 0x100C5B30 + public string Extension { get; } // 0x102CDEE0 + public FileAttributes Attributes { get; set; } // 0x102CDDA0 0x102CE280 + public DateTime CreationTime { get; set; } // 0x102CDE50 0x102CE470 + public DateTime CreationTimeUtc { get; set; } // 0x102CDDC0 0x102CE360 + public DateTime LastAccessTime { get; set; } // 0x102CE0E0 0x102CE670 + public DateTime LastAccessTimeUtc { get; set; } // 0x102CE040 0x102CE560 + public DateTime LastWriteTime { get; set; } // 0x102CE200 0x102CE870 + public DateTime LastWriteTimeUtc { get; set; } // 0x102CE160 0x102CE760 + + // Methods + protected void .ctor(); // 0x102CDD80 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x102CDCF0 + public virtual void GetObjectData(SerializationInfo info, StreamingContext context); // 0x102CDB80 + public abstract void Delete(); + public void Refresh(); // 0x102CDCD0 + internal void Refresh(bool force); // 0x102CDC30 + internal virtual void InternalRefresh(); // 0x100C5530 + internal void CheckPath(string path); // 0x102CDAB0 +} + +// Namespace: System.IO +[Serializable] +public class IOException : SystemException // TypeDefIndex: 451 +{ + // Methods + public void .ctor(); // 0x102D2060 + public void .ctor(string message); // 0x100E5680 + public void .ctor(string message, Exception innerException); // 0x100E5670 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 + public void .ctor(string message, int hresult); // 0x100FCF70 +} + +// Namespace: System.IO +[Serializable] +public class MemoryStream : Stream // TypeDefIndex: 452 +{ + // Fields + private bool canWrite; // 0x08 + private bool allowGetBuffer; // 0x09 + private int capacity; // 0x0C + private int length; // 0x10 + private byte[] internalBuffer; // 0x14 + private int initialIndex; // 0x18 + private bool expandable; // 0x1C + private bool streamClosed; // 0x1D + private int position; // 0x20 + private int dirty_bytes; // 0x24 + + // Properties + public override bool CanRead { get; } // 0x102D6950 + public override bool CanSeek { get; } // 0x102D6950 + public override bool CanWrite { get; } // 0x102D6960 + public virtual int Capacity { get; set; } // 0x102D6980 0x102D6AD0 + public override long Length { get; } // 0x102D69F0 + public override long Position { get; set; } // 0x102D6A60 0x102D6CF0 + + // Methods + public void .ctor(); // 0x102D6710 + public void .ctor(int capacity); // 0x102D6790 + public void .ctor(byte[] buffer); // 0x102D65A0 + public void .ctor(byte[] buffer, bool writable); // 0x102D6840 + public void .ctor(byte[] buffer, int index, int count); // 0x102D68E0 + public void .ctor(byte[] buffer, int index, int count, bool writable); // 0x102D6640 + public void .ctor(byte[] buffer, int index, int count, bool writable, bool publiclyVisible); // 0x102D66B0 + private void InternalConstructor(byte[] buffer, int index, int count, bool writable, bool publicallyVisible); // 0x102D5B80 + private void CheckIfClosedThrowDisposed(); // 0x102D5A50 + protected override void Dispose(bool disposing); // 0x102D5AB0 + public override void Flush(); // 0x100C5530 + public virtual byte[] GetBuffer(); // 0x102D5B20 + public override int Read(out byte[] buffer, int offset, int count); // 0x102D5D20 + public override int ReadByte(); // 0x102D5C80 + public override long Seek(long offset, SeekOrigin loc); // 0x102D5E90 + private int CalculateNewCapacity(int minimum); // 0x102D5A30 + private void Expand(int newSize); // 0x102D5AC0 + public override void SetLength(long value); // 0x102D6030 + public virtual byte[] ToArray(); // 0x102D61C0 + public override void Write(byte[] buffer, int offset, int count); // 0x102D63F0 + public override void WriteByte(byte value); // 0x102D6220 + public virtual void WriteTo(Stream stream); // 0x102D6320 +} + +// Namespace: System.IO +internal enum MonoFileType // TypeDefIndex: 453 +{ + Unknown = 0, + Disk = 1, + Char = 2, + Pipe = 3, + Remote = 32768 +} + +// Namespace: System.IO +internal sealed class MonoIO // TypeDefIndex: 454 +{ + // Fields + public static readonly FileAttributes InvalidFileAttributes; // 0x00 + public static readonly IntPtr InvalidHandle; // 0x04 + + // Properties + public static IntPtr ConsoleOutput { get; } // 0x102D7D30 + public static IntPtr ConsoleInput { get; } // 0x102D7D20 + public static IntPtr ConsoleError { get; } // 0x102D7D10 + public static char VolumeSeparatorChar { get; } // 0x102D7D60 + public static char DirectorySeparatorChar { get; } // 0x102D7D40 + public static char AltDirectorySeparatorChar { get; } // 0x102D7D00 + public static char PathSeparator { get; } // 0x102D7D50 + + // Methods + public void .ctor(); // 0x100BF000 + private static void .cctor(); // 0x102D7CB0 + public static Exception GetException(MonoIOError error); // 0x102D70C0 + public static Exception GetException(string path, MonoIOError error); // 0x102D71A0 + public static bool CreateDirectory(string path, out MonoIOError error); // 0x102D6E20 + public static bool RemoveDirectory(string path, out MonoIOError error); // 0x102D7860 + public static string[] GetFileSystemEntries(string path, string path_with_pattern, int attrs, int mask, out MonoIOError error); // 0x102D7750 + public static string GetCurrentDirectory(out MonoIOError error); // 0x102D70B0 + public static bool SetCurrentDirectory(string path, out MonoIOError error); // 0x102D7930 + public static bool MoveFile(string path, string dest, out MonoIOError error); // 0x102D77E0 + public static bool CopyFile(string path, string dest, bool overwrite, out MonoIOError error); // 0x102D6E00 + public static bool DeleteFile(string path, out MonoIOError error); // 0x102D6E60 + public static bool ReplaceFile(string sourceFileName, string destinationFileName, string destinationBackupFileName, bool ignoreMetadataErrors, out MonoIOError error); // 0x102D7880 + public static FileAttributes GetFileAttributes(string path, out MonoIOError error); // 0x102D7710 + public static bool SetFileAttributes(string path, FileAttributes attrs, out MonoIOError error); // 0x102D7950 + public static MonoFileType GetFileType(IntPtr handle, out MonoIOError error); // 0x102D7770 + public static bool Exists(string path, out MonoIOError error); // 0x102D7030 + public static bool ExistsFile(string path, out MonoIOError error); // 0x102D6F50 + public static bool ExistsDirectory(string path, out MonoIOError error); // 0x102D6EB0 + public static bool ExistsSymlink(string path, out MonoIOError error); // 0x102D6FC0 + public static bool GetFileStat(string path, out MonoIOStat stat, out MonoIOError error); // 0x102D7730 + public static IntPtr Open(string filename, FileMode mode, FileAccess access, FileShare share, FileOptions options, out MonoIOError error); // 0x102D7800 + public static bool Close(IntPtr handle, out MonoIOError error); // 0x102D6DE0 + public static int Read(IntPtr handle, byte[] dest, int dest_offset, int count, out MonoIOError error); // 0x102D7820 + public static int Write(IntPtr handle, byte[] src, int src_offset, int count, out MonoIOError error); // 0x102D7C90 + public static long Seek(IntPtr handle, long offset, SeekOrigin origin, out MonoIOError error); // 0x102D78A0 + public static bool Flush(IntPtr handle, out MonoIOError error); // 0x102D7090 + public static long GetLength(IntPtr handle, out MonoIOError error); // 0x102D7790 + public static bool SetLength(IntPtr handle, long length, out MonoIOError error); // 0x102D7C50 + public static bool SetFileTime(IntPtr handle, long creation_time, long last_access_time, long last_write_time, out MonoIOError error); // 0x102D7B40 + public static bool SetFileTime(string path, long creation_time, long last_access_time, long last_write_time, out MonoIOError error); // 0x102D7A90 + public static bool SetCreationTime(string path, DateTime dateTime, out MonoIOError error); // 0x102D78C0 + public static bool SetLastAccessTime(string path, DateTime dateTime, out MonoIOError error); // 0x102D7B70 + public static bool SetLastWriteTime(string path, DateTime dateTime, out MonoIOError error); // 0x102D7BE0 + public static bool SetFileTime(string path, int type, long creation_time, long last_access_time, long last_write_time, DateTime dateTime, out MonoIOError error); // 0x102D7970 + public static void Lock(IntPtr handle, long position, long length, out MonoIOError error); // 0x102D77C0 + public static void Unlock(IntPtr handle, long position, long length, out MonoIOError error); // 0x102D7C70 + public static bool CreatePipe(out IntPtr read_handle, out IntPtr write_handle); // 0x102D6E40 + public static bool DuplicateHandle(IntPtr source_process_handle, IntPtr source_handle, IntPtr target_process_handle, out IntPtr target_handle, int access, int inherit, int options); // 0x102D6E80 + public static int GetTempPath(out string path); // 0x102D77B0 + public static bool RemapPath(string path, out string newPath); // 0x102D7840 +} + +// Namespace: System.IO +internal enum MonoIOError // TypeDefIndex: 455 +{ + ERROR_SUCCESS = 0, + ERROR_FILE_NOT_FOUND = 2, + ERROR_PATH_NOT_FOUND = 3, + ERROR_TOO_MANY_OPEN_FILES = 4, + ERROR_ACCESS_DENIED = 5, + ERROR_INVALID_HANDLE = 6, + ERROR_INVALID_DRIVE = 15, + ERROR_NOT_SAME_DEVICE = 17, + ERROR_NO_MORE_FILES = 18, + ERROR_WRITE_FAULT = 29, + ERROR_READ_FAULT = 30, + ERROR_GEN_FAILURE = 31, + ERROR_SHARING_VIOLATION = 32, + ERROR_LOCK_VIOLATION = 33, + ERROR_HANDLE_DISK_FULL = 39, + ERROR_FILE_EXISTS = 80, + ERROR_CANNOT_MAKE = 82, + ERROR_INVALID_PARAMETER = 87, + ERROR_BROKEN_PIPE = 109, + ERROR_INVALID_NAME = 123, + ERROR_DIR_NOT_EMPTY = 145, + ERROR_ALREADY_EXISTS = 183, + ERROR_FILENAME_EXCED_RANGE = 206, + ERROR_ENCRYPTION_FAILED = 6000 +} + +// Namespace: System.IO +internal struct MonoIOStat // TypeDefIndex: 456 +{ + // Fields + public string Name; // 0x08 + public FileAttributes Attributes; // 0x0C + public long Length; // 0x10 + public long CreationTime; // 0x18 + public long LastAccessTime; // 0x20 + public long LastWriteTime; // 0x28 + +} + +// Namespace: System.IO +public static class Path // TypeDefIndex: 457 +{ + // Fields + public static readonly char[] InvalidPathChars; // 0x00 + public static readonly char AltDirectorySeparatorChar; // 0x04 + public static readonly char DirectorySeparatorChar; // 0x06 + public static readonly char PathSeparator; // 0x08 + internal static readonly string DirectorySeparatorStr; // 0x0C + public static readonly char VolumeSeparatorChar; // 0x10 + internal static readonly char[] PathSeparatorChars; // 0x14 + private static readonly bool dirEqualsVolume; // 0x18 + + // Methods + private static void .cctor(); // 0x102DB100 + public static string ChangeExtension(string path, string extension); // 0x102D85F0 + public static string Combine(string path1, string path2); // 0x102D8C00 + internal static string CleanPath(string s); // 0x102D8820 + public static string GetDirectoryName(string path); // 0x102D8E90 + public static string GetExtension(string path); // 0x102D91B0 + public static string GetFileName(string path); // 0x102D9320 + public static string GetFileNameWithoutExtension(string path); // 0x102D92C0 + public static string GetFullPath(string path); // 0x102D9410 + internal static string WindowsDriveAdjustment(string path); // 0x102DAE60 + internal static string InsecureGetFullPath(string path); // 0x102DA1E0 + private static bool IsDsc(char c); // 0x102DA7B0 + public static string GetPathRoot(string path); // 0x102D9560 + public static string GetTempFileName(); // 0x102D9BF0 + public static string GetTempPath(); // 0x102D9FC0 + private static string get_temp_path(); // 0x102DB350 + public static bool HasExtension(string path); // 0x102DA0E0 + public static bool IsPathRooted(string path); // 0x102DA840 + public static char[] GetInvalidFileNameChars(); // 0x102D9460 + public static char[] GetInvalidPathChars(); // 0x102D94F0 + public static string GetRandomFileName(); // 0x102D99D0 + private static int findExtension(string path); // 0x102DB2D0 + private static string GetServerAndShare(string path); // 0x102D9AC0 + private static bool SameRoot(string root, string path); // 0x102DAB60 + private static string CanonicalizePath(string path); // 0x102D7E30 + internal static bool IsPathSubsetOf(string subset, string path); // 0x102DA9E0 +} + +// Namespace: System.IO +[Serializable] +public class PathTooLongException : IOException // TypeDefIndex: 458 +{ + // Methods + public void .ctor(); // 0x102D7DF0 + public void .ctor(string message); // 0x100E5680 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 + public void .ctor(string message, Exception innerException); // 0x100E5670 +} + +// Namespace: System.IO +[Serializable] +public enum SearchOption // TypeDefIndex: 459 +{ + TopDirectoryOnly = 0, + AllDirectories = 1 +} + +// Namespace: System.IO +internal class SearchPattern // TypeDefIndex: 460 +{ + // Fields + private Op ops; // 0x08 + private bool ignore; // 0x0C + internal static readonly char[] WildcardChars; // 0x00 + internal static readonly char[] InvalidChars; // 0x04 + + // Methods + public void .ctor(string pattern); // 0x102DBCE0 + public void .ctor(string pattern, bool ignore); // 0x102DBD10 + private static void .cctor(); // 0x102DBBC0 + public bool IsMatch(string text); // 0x102DBA50 + private void Compile(string pattern); // 0x102DB7D0 + private bool Match(Op op, string text, int ptr); // 0x102DBA70 +} + +// Namespace: +private class Op // TypeDefIndex: 461 +{ + // Fields + public OpCode Code; // 0x08 + public string Argument; // 0x0C + public Op Next; // 0x10 + + // Methods + public void .ctor(OpCode code); // 0x102D7DC0 +} + +// Namespace: +private enum OpCode // TypeDefIndex: 462 +{ + ExactString = 0, + AnyChar = 1, + AnyString = 2, + End = 3, + True = 4 +} + +// Namespace: System.IO +[Serializable] +public enum SeekOrigin // TypeDefIndex: 463 +{ + Begin = 0, + Current = 1, + End = 2 +} + +// Namespace: System.IO +[Serializable] +public abstract class Stream : IDisposable // TypeDefIndex: 464 +{ + // Fields + public static readonly Stream Null; // 0x00 + + // Properties + public abstract bool CanRead { get; } + public abstract bool CanSeek { get; } + public abstract bool CanWrite { get; } + public virtual bool CanTimeout { get; } // 0x100EFBF0 + public abstract long Length { get; } + public abstract long Position { get; set; } + public virtual int ReadTimeout { get; set; } // 0x102DDB50 0x102DDBF0 + public virtual int WriteTimeout { get; set; } // 0x102DDBA0 0x102DDC40 + + // Methods + protected void .ctor(); // 0x100BF000 + private static void .cctor(); // 0x102DDAC0 + public void Dispose(); // 0x10208CB0 + protected virtual void Dispose(bool disposing); // 0x100C5530 + public virtual void Close(); // 0x10257710 + public static Stream Synchronized(Stream stream); // 0x102DD9F0 + protected virtual WaitHandle CreateWaitHandle(); // 0x102DD6D0 + public abstract void Flush(); + public abstract int Read(out byte[] buffer, int offset, int count); + public virtual int ReadByte(); // 0x102DD970 + public abstract long Seek(long offset, SeekOrigin origin); + public abstract void SetLength(long value); + public abstract void Write(byte[] buffer, int offset, int count); + public virtual void WriteByte(byte value); // 0x102DDA40 + public virtual IAsyncResult BeginRead(byte[] buffer, int offset, int count, AsyncCallback callback, object state); // 0x102DD3E0 + public virtual IAsyncResult BeginWrite(byte[] buffer, int offset, int count, AsyncCallback callback, object state); // 0x102DD560 + public virtual int EndRead(IAsyncResult asyncResult); // 0x102DD710 + public virtual void EndWrite(IAsyncResult asyncResult); // 0x102DD840 +} + +// Namespace: System.IO +internal class NullStream : Stream // TypeDefIndex: 465 +{ + // Properties + public override bool CanRead { get; } // 0x100E5880 + public override bool CanSeek { get; } // 0x100E5880 + public override bool CanWrite { get; } // 0x100E5880 + public override long Length { get; } // 0x100ED740 + public override long Position { get; set; } // 0x100ED740 0x100C5530 + + // Methods + public void .ctor(); // 0x102D7D70 + public override void Flush(); // 0x100C5530 + public override int Read(byte[] buffer, int offset, int count); // 0x100C5600 + public override int ReadByte(); // 0x10105770 + public override long Seek(long offset, SeekOrigin origin); // 0x100ED740 + public override void SetLength(long value); // 0x100C5530 + public override void Write(byte[] buffer, int offset, int count); // 0x100C5530 + public override void WriteByte(byte value); // 0x100C5530 +} + +// Namespace: System.IO +internal class StreamAsyncResult : IAsyncResult // TypeDefIndex: 466 +{ + // Fields + private object state; // 0x08 + private bool completed; // 0x0C + private bool done; // 0x0D + private Exception exc; // 0x10 + private int nbytes; // 0x14 + private ManualResetEvent wh; // 0x18 + + // Properties + public object AsyncState { get; } // 0x100BF0C0 + public WaitHandle AsyncWaitHandle { get; } // 0x102DBE60 + public virtual bool CompletedSynchronously { get; } // 0x100E5880 + public bool IsCompleted { get; } // 0x100F8910 + public Exception Exception { get; } // 0x100BFC20 + public int NBytes { get; } // 0x100EF0C0 + public bool Done { get; set; } // 0x10298460 0x10298470 + + // Methods + public void .ctor(object state); // 0x102DBE30 + public void SetComplete(Exception e); // 0x102DBD40 + public void SetComplete(Exception e, int nbytes); // 0x102DBE10 +} + +// Namespace: System.IO +[Serializable] +public class StreamReader : TextReader // TypeDefIndex: 467 +{ + // Fields + private const int DefaultBufferSize = 1024; // 0x00 + private const int DefaultFileBufferSize = 4096; // 0x00 + private const int MinimumBufferSize = 128; // 0x00 + private byte[] input_buffer; // 0x08 + private char[] decoded_buffer; // 0x0C + private int decoded_count; // 0x10 + private int pos; // 0x14 + private int buffer_size; // 0x18 + private int do_checks; // 0x1C + private Encoding encoding; // 0x20 + private Decoder decoder; // 0x24 + private Stream base_stream; // 0x28 + private bool mayBlock; // 0x2C + private StringBuilder line_builder; // 0x30 + public static readonly StreamReader Null; // 0x00 + private bool foundCR; // 0x34 + + // Properties + public virtual Stream BaseStream { get; } // 0x100EB040 + public virtual Encoding CurrentEncoding { get; } // 0x102DD350 + public bool EndOfStream { get; } // 0x102DD3B0 + + // Methods + internal void .ctor(); // 0x102DD130 + public void .ctor(Stream stream); // 0x102DD180 + public void .ctor(Stream stream, bool detectEncodingFromByteOrderMarks); // 0x102DCE10 + public void .ctor(Stream stream, Encoding encoding); // 0x102DD2E0 + public void .ctor(Stream stream, Encoding encoding, bool detectEncodingFromByteOrderMarks); // 0x102DD270 + public void .ctor(Stream stream, Encoding encoding, bool detectEncodingFromByteOrderMarks, int bufferSize); // 0x102DD0D0 + public void .ctor(string path); // 0x102DCEC0 + public void .ctor(string path, bool detectEncodingFromByteOrderMarks); // 0x102DCDB0 + public void .ctor(string path, Encoding encoding); // 0x102DD230 + public void .ctor(string path, Encoding encoding, bool detectEncodingFromByteOrderMarks); // 0x102DD250 + public void .ctor(string path, Encoding encoding, bool detectEncodingFromByteOrderMarks, int bufferSize); // 0x102DCF20 + private static void .cctor(); // 0x102DCD60 + internal void Initialize(Stream stream, Encoding encoding, bool detectEncodingFromByteOrderMarks, int bufferSize); // 0x102DC460 + public override void Close(); // 0x1010CA30 + protected override void Dispose(bool disposing); // 0x102DBFF0 + private int DoChecks(int count); // 0x102DC050 + public void DiscardBufferedData(); // 0x102DBFA0 + private int ReadBuffer(); // 0x102DC6C0 + public override int Peek(); // 0x102DC610 + internal bool DataAvailable(); // 0x102DBF80 + public override int Read(); // 0x102DCCB0 + public override int Read(out char[] buffer, int index, int count); // 0x102DCB10 + private int FindNextEOL(); // 0x102DC3B0 + public override string ReadLine(); // 0x102DC820 + public override string ReadToEnd(); // 0x102DCA00 +} + +// Namespace: +private class NullStreamReader : StreamReader // TypeDefIndex: 468 +{ + // Properties + public override Stream BaseStream { get; } // 0x10105820 + public override Encoding CurrentEncoding { get; } // 0x10105870 + + // Methods + public void .ctor(); // 0x101057D0 + public override int Peek(); // 0x10105770 + public override int Read(); // 0x10105770 + public override int Read(out char[] buffer, int index, int count); // 0x100C5600 + public override string ReadLine(); // 0x100C5600 + public override string ReadToEnd(); // 0x10105780 +} + +// Namespace: System.IO +[Serializable] +public class StreamWriter : TextWriter // TypeDefIndex: 469 +{ + // Fields + private const int DefaultBufferSize = 1024; // 0x00 + private const int DefaultFileBufferSize = 4096; // 0x00 + private const int MinimumBufferSize = 256; // 0x00 + private Encoding internalEncoding; // 0x10 + private Stream internalStream; // 0x14 + private bool iflush; // 0x18 + private byte[] byte_buf; // 0x1C + private int byte_pos; // 0x20 + private char[] decode_buf; // 0x24 + private int decode_pos; // 0x28 + private bool DisposedAlready; // 0x2C + private bool preamble_done; // 0x2D + public static readonly StreamWriter Null; // 0x00 + + // Properties + public virtual bool AutoFlush { get; set; } // 0x1010C980 0x1010C990 + public virtual Stream BaseStream { get; } // 0x100EF0C0 + public override Encoding Encoding { get; } // 0x100BFC20 + + // Methods + public void .ctor(Stream stream); // 0x1010C840 + public void .ctor(Stream stream, Encoding encoding); // 0x1010C8A0 + public void .ctor(Stream stream, Encoding encoding, int bufferSize); // 0x1010C6F0 + public void .ctor(string path); // 0x1010C920 + public void .ctor(string path, bool append); // 0x1010C8C0 + public void .ctor(string path, bool append, Encoding encoding); // 0x1010C560 + public void .ctor(string path, bool append, Encoding encoding, int bufferSize); // 0x1010C580 + private static void .cctor(); // 0x1010C4C0 + internal void Initialize(Encoding encoding, int bufferSize); // 0x1010BEA0 + protected override void Dispose(bool disposing); // 0x1010BB00 + public override void Flush(); // 0x1010BE00 + private void FlushBytes(); // 0x1010BD60 + private void Decode(); // 0x1010BAA0 + public override void Write(char[] buffer, int index, int count); // 0x1010C380 + private void LowLevelWrite(char[] buffer, int index, int count); // 0x1010BF80 + private void LowLevelWrite(string s); // 0x1010C000 + public override void Write(char value); // 0x1010C2B0 + public override void Write(char[] buffer); // 0x1010C0E0 + public override void Write(string value); // 0x1010C170 + public override void Close(); // 0x1010BA80 + protected override void Finalize(); // 0x1010BCA0 +} + +// Namespace: System.IO +[Serializable] +public class StringReader : TextReader // TypeDefIndex: 470 +{ + // Fields + private string source; // 0x08 + private int nextChar; // 0x0C + private int sourceLength; // 0x10 + + // Methods + public void .ctor(string s); // 0x1010CD20 + public override void Close(); // 0x1010CA30 + protected override void Dispose(bool disposing); // 0x1010CA50 + public override int Peek(); // 0x1010CA70 + public override int Read(); // 0x1010CBC0 + public override int Read(out char[] buffer, int index, int count); // 0x1010CC10 + public override string ReadLine(); // 0x1010CAB0 + public override string ReadToEnd(); // 0x1010CB80 + private void CheckObjectDisposedException(); // 0x1010C9C0 +} + +// Namespace: System.IO +[Serializable] +public class StringWriter : TextWriter // TypeDefIndex: 471 +{ + // Fields + private StringBuilder internalString; // 0x10 + private bool disposed; // 0x14 + + // Properties + public override Encoding Encoding { get; } // 0x1010D240 + + // Methods + public void .ctor(); // 0x1010D140 + public void .ctor(IFormatProvider formatProvider); // 0x1010D0F0 + public void .ctor(StringBuilder sb); // 0x1010D0D0 + public void .ctor(StringBuilder sb, IFormatProvider formatProvider); // 0x1010D190 + public override void Close(); // 0x1010CDC0 + protected override void Dispose(bool disposing); // 0x1010CDF0 + public virtual StringBuilder GetStringBuilder(); // 0x100BFC20 + public override string ToString(); // 0x1010CE20 + public override void Write(char value); // 0x1010D040 + public override void Write(string value); // 0x1010CFB0 + public override void Write(char[] buffer, int index, int count); // 0x1010CE50 +} + +// Namespace: System.IO +[Serializable] +public abstract class TextReader : IDisposable // TypeDefIndex: 472 +{ + // Fields + public static readonly TextReader Null; // 0x00 + + // Methods + protected void .ctor(); // 0x100BF000 + private static void .cctor(); // 0x10110030 + public virtual void Close(); // 0x1010CA30 + public void Dispose(); // 0x1010CA30 + protected virtual void Dispose(bool disposing); // 0x1010FDC0 + public virtual int Peek(); // 0x10105770 + public virtual int Read(); // 0x10105770 + public virtual int Read(out char[] buffer, int index, int count); // 0x1010FED0 + public virtual int ReadBlock(out char[] buffer, int index, int count); // 0x1010FDE0 + public virtual string ReadLine(); // 0x1010FE30 + public virtual string ReadToEnd(); // 0x1010FE80 + public static TextReader Synchronized(TextReader reader); // 0x1010FF40 +} + +// Namespace: +private class NullTextReader : TextReader // TypeDefIndex: 473 +{ + // Methods + public void .ctor(); // 0x101058C0 + public override string ReadLine(); // 0x100C5600 +} + +// Namespace: System.IO +[Serializable] +internal class SynchronizedReader : TextReader // TypeDefIndex: 474 +{ + // Fields + private TextReader reader; // 0x08 + + // Methods + public void .ctor(TextReader reader); // 0x1010D930 + public override void Close(); // 0x1010D290 + public override int Peek(); // 0x1010D370 + public override int ReadBlock(char[] buffer, int index, int count); // 0x1010D460 + public override string ReadLine(); // 0x1010D560 + public override string ReadToEnd(); // 0x1010D650 + public override int Read(); // 0x1010D840 + public override int Read(char[] buffer, int index, int count); // 0x1010D740 +} + +// Namespace: System.IO +[Serializable] +public abstract class TextWriter : IDisposable // TypeDefIndex: 475 +{ + // Fields + protected char[] CoreNewLine; // 0x08 + internal IFormatProvider internalFormatProvider; // 0x0C + public static readonly TextWriter Null; // 0x00 + + // Properties + public abstract Encoding Encoding { get; } + public virtual IFormatProvider FormatProvider { get; } // 0x100C5B30 + public virtual string NewLine { get; set; } // 0x10110D80 0x10110DA0 + + // Methods + protected void .ctor(); // 0x10110D00 + protected void .ctor(IFormatProvider formatProvider); // 0x10110D40 + private static void .cctor(); // 0x10110C60 + public virtual void Close(); // 0x1010BA80 + protected virtual void Dispose(bool disposing); // 0x1010FDC0 + public void Dispose(); // 0x101100C0 + public virtual void Flush(); // 0x100C5530 + public static TextWriter Synchronized(TextWriter writer); // 0x101100F0 + internal static TextWriter Synchronized(TextWriter writer, bool neverClose); // 0x101101E0 + public virtual void Write(bool value); // 0x10110B60 + public virtual void Write(char value); // 0x100C5530 + public virtual void Write(char[] buffer); // 0x10110BC0 + public virtual void Write(Decimal value); // 0x10110AC0 + public virtual void Write(double value); // 0x10110760 + public virtual void Write(int value); // 0x101108A0 + public virtual void Write(long value); // 0x10110AF0 + public virtual void Write(object value); // 0x10110BF0 + public virtual void Write(float value); // 0x10110B90 + public virtual void Write(string value); // 0x10110A20 + public virtual void Write(uint value); // 0x10110910 + public virtual void Write(ulong value); // 0x10110C30 + public virtual void Write(string format, object arg0); // 0x10110A50 + public virtual void Write(string format, object[] arg); // 0x10110940 + public virtual void Write(char[] buffer, int index, int count); // 0x10110790 + public virtual void Write(string format, object arg0, object arg1); // 0x101106F0 + public virtual void Write(string format, object arg0, object arg1, object arg2); // 0x101109B0 + public virtual void WriteLine(); // 0x101104D0 + public virtual void WriteLine(bool value); // 0x10110390 + public virtual void WriteLine(char value); // 0x10110630 + public virtual void WriteLine(char[] buffer); // 0x101105F0 + public virtual void WriteLine(Decimal value); // 0x10110570 + public virtual void WriteLine(double value); // 0x101104F0 + public virtual void WriteLine(int value); // 0x10110410 + public virtual void WriteLine(long value); // 0x10110310 + public virtual void WriteLine(object value); // 0x10110670 + public virtual void WriteLine(float value); // 0x10110490 + public virtual void WriteLine(string value); // 0x10110530 + public virtual void WriteLine(uint value); // 0x101102D0 + public virtual void WriteLine(ulong value); // 0x101105B0 + public virtual void WriteLine(string format, object arg0); // 0x10110450 + public virtual void WriteLine(string format, object[] arg); // 0x101103D0 + public virtual void WriteLine(char[] buffer, int index, int count); // 0x10110350 + public virtual void WriteLine(string format, object arg0, object arg1); // 0x10110290 + public virtual void WriteLine(string format, object arg0, object arg1, object arg2); // 0x101106B0 +} + +// Namespace: +private sealed class NullTextWriter : TextWriter // TypeDefIndex: 476 +{ + // Properties + public override Encoding Encoding { get; } // 0x10105980 + + // Methods + public void .ctor(); // 0x10105910 + public override void Write(string s); // 0x100C5530 + public override void Write(char value); // 0x100C5530 + public override void Write(char[] value, int index, int count); // 0x100C5530 +} + +// Namespace: System.IO +[Serializable] +internal class SynchronizedWriter : TextWriter // TypeDefIndex: 477 +{ + // Fields + private TextWriter writer; // 0x10 + private bool neverClose; // 0x14 + + // Properties + public override Encoding Encoding { get; } // 0x1010FA10 + public override IFormatProvider FormatProvider { get; } // 0x1010FB00 + public override string NewLine { get; set; } // 0x1010FBF0 0x1010FCE0 + + // Methods + public void .ctor(TextWriter writer); // 0x1010F9F0 + public void .ctor(TextWriter writer, bool neverClose); // 0x1010F970 + public override void Close(); // 0x1010D990 + public override void Flush(); // 0x1010DA80 + public override void Write(bool value); // 0x1010EB50 + public override void Write(char value); // 0x1010F430 + public override void Write(char[] value); // 0x1010F7B0 + public override void Write(Decimal value); // 0x1010EFB0 + public override void Write(int value); // 0x1010F0B0 + public override void Write(long value); // 0x1010EDF0 + public override void Write(object value); // 0x1010F270 + public override void Write(float value); // 0x1010EED0 + public override void Write(string value); // 0x1010F350 + public override void Write(uint value); // 0x1010ED10 + public override void Write(ulong value); // 0x1010F510 + public override void Write(string format, object value); // 0x1010F890 + public override void Write(string format, object[] value); // 0x1010F5F0 + public override void Write(char[] buffer, int index, int count); // 0x1010EC30 + public override void Write(string format, object arg0, object arg1); // 0x1010F190 + public override void Write(string format, object arg0, object arg1, object arg2); // 0x1010F6D0 + public override void WriteLine(); // 0x1010E970 + public override void WriteLine(bool value); // 0x1010E890 + public override void WriteLine(char value); // 0x1010E6D0 + public override void WriteLine(char[] value); // 0x1010E510 + public override void WriteLine(Decimal value); // 0x1010EA50 + public override void WriteLine(double value); // 0x1010E260 + public override void WriteLine(int value); // 0x1010DB60 + public override void WriteLine(long value); // 0x1010E0A0 + public override void WriteLine(object value); // 0x1010DE00 + public override void WriteLine(float value); // 0x1010DEE0 + public override void WriteLine(string value); // 0x1010DC40 + public override void WriteLine(uint value); // 0x1010E430 + public override void WriteLine(ulong value); // 0x1010E350 + public override void WriteLine(string format, object value); // 0x1010E5F0 + public override void WriteLine(string format, object[] value); // 0x1010DD20 + public override void WriteLine(char[] buffer, int index, int count); // 0x1010DFC0 + public override void WriteLine(string format, object arg0, object arg1); // 0x1010E7B0 + public override void WriteLine(string format, object arg0, object arg1, object arg2); // 0x1010E180 +} + +// Namespace: System.IO +internal class UnexceptionalStreamReader : StreamReader // TypeDefIndex: 478 +{ + // Fields + private static bool[] newline; // 0x00 + private static char newlineChar; // 0x04 + + // Methods + public void .ctor(Stream stream); // 0x101116F0 + public void .ctor(Stream stream, bool detect_encoding_from_bytemarks); // 0x10111740 + public void .ctor(Stream stream, Encoding encoding); // 0x10111560 + public void .ctor(Stream stream, Encoding encoding, bool detect_encoding_from_bytemarks); // 0x10111790 + public void .ctor(Stream stream, Encoding encoding, bool detect_encoding_from_bytemarks, int buffer_size); // 0x101117E0 + public void .ctor(string path); // 0x101116A0 + public void .ctor(string path, bool detect_encoding_from_bytemarks); // 0x10111600 + public void .ctor(string path, Encoding encoding); // 0x10111650 + public void .ctor(string path, Encoding encoding, bool detect_encoding_from_bytemarks); // 0x10111510 + public void .ctor(string path, Encoding encoding, bool detect_encoding_from_bytemarks, int buffer_size); // 0x101115B0 + private static void .cctor(); // 0x10111490 + public override int Peek(); // 0x10110F90 + public override int Read(); // 0x101111D0 + public override int Read(out char[] dest_buffer, int index, int count); // 0x10111290 + private bool CheckEOL(char current); // 0x10110DE0 + public override string ReadLine(); // 0x10111050 + public override string ReadToEnd(); // 0x10111110 +} + +// Namespace: System.IO +internal class UnexceptionalStreamWriter : StreamWriter // TypeDefIndex: 479 +{ + // Methods + public void .ctor(Stream stream); // 0x101122C0 + public void .ctor(Stream stream, Encoding encoding); // 0x10112260 + public void .ctor(Stream stream, Encoding encoding, int bufferSize); // 0x10112120 + public void .ctor(string path); // 0x10112020 + public void .ctor(string path, bool append); // 0x101121C0 + public void .ctor(string path, bool append, Encoding encoding); // 0x101120C0 + public void .ctor(string path, bool append, Encoding encoding, int bufferSize); // 0x10112170 + public override void Flush(); // 0x10111830 + public override void Write(char[] buffer, int index, int count); // 0x10111B60 + public override void Write(char value); // 0x10111EA0 + public override void Write(char[] value); // 0x10111D60 + public override void Write(string value); // 0x10111980 +} + +// Namespace: System.IO +public class UnmanagedMemoryStream : Stream // TypeDefIndex: 480 +{ + // Fields + private long length; // 0x08 + private bool closed; // 0x10 + private long capacity; // 0x18 + private FileAccess fileaccess; // 0x20 + private IntPtr initial_pointer; // 0x24 + private long initial_position; // 0x28 + private long current_position; // 0x30 + private EventHandler Closed; // 0x38 + + // Properties + public override bool CanRead { get; } // 0x10112F40 + public override bool CanSeek { get; } // 0x10112F60 + public override bool CanWrite { get; } // 0x10112F70 + public long Capacity { get; } // 0x10112F90 + public override long Length { get; } // 0x10113000 + public override long Position { get; set; } // 0x10113110 0x10113290 + public void * PositionPointer { get; set; } // 0x10113070 0x101131E0 + + // Events + internal event EventHandler Closed { + add; // 0x10112EE0 + remove; // 0x10113180 + } + + // Methods + protected void .ctor(); // 0x10112E80 + public void .ctor(void * pointer, long length); // 0x10112E10 + public void .ctor(void * pointer, long length, long capacity, FileAccess access); // 0x10112DA0 + public override int Read(out byte[] buffer, int offset, int count); // 0x10112640 + public override int ReadByte(); // 0x10112550 + public override long Seek(long offset, SeekOrigin loc); // 0x10112820 + public override void SetLength(long value); // 0x10112930 + public override void Flush(); // 0x10112390 + protected override void Dispose(bool disposing); // 0x10112360 + public override void Write(byte[] buffer, int offset, int count); // 0x10112B70 + public override void WriteByte(byte value); // 0x10112A60 + protected void Initialize(void * pointer, long length, long capacity, FileAccess access); // 0x101123F0 +} + +// Namespace: System.Reflection.Emit +internal enum NativeResourceType // TypeDefIndex: 481 +{ + None = 0, + Unmanaged = 1, + Assembly = 2, + Explicit = 3 +} + +// Namespace: System.Reflection.Emit +internal struct RefEmitPermissionSet // TypeDefIndex: 482 +{ + // Fields + public SecurityAction action; // 0x08 + public string pset; // 0x0C + + // Methods + public void .ctor(SecurityAction action, string pset); // 0x100075A0 +} + +// Namespace: System.Reflection.Emit +internal struct MonoResource // TypeDefIndex: 483 +{ + // Fields + public byte[] data; // 0x08 + public string name; // 0x0C + public string filename; // 0x10 + public ResourceAttributes attrs; // 0x14 + public int offset; // 0x18 + public Stream stream; // 0x1C + +} + +// Namespace: System.Reflection.Emit +internal struct MonoWin32Resource // TypeDefIndex: 484 +{ + // Fields + public int res_type; // 0x08 + public int res_id; // 0x0C + public int lang_id; // 0x10 + public byte[] data; // 0x14 + + // Methods + public void .ctor(int res_type, int res_id, int lang_id, byte[] data); // 0x10005CA0 +} + +// Namespace: System.Reflection.Emit +public sealed class AssemblyBuilder : Assembly, _AssemblyBuilder // TypeDefIndex: 485 +{ + // Fields + private const AssemblyBuilderAccess COMPILER_ACCESS = 2048; // 0x00 + private UIntPtr dynamic_assembly; // 0x30 + private MethodInfo entry_point; // 0x34 + private ModuleBuilder[] modules; // 0x38 + private string name; // 0x3C + private string dir; // 0x40 + private CustomAttributeBuilder[] cattrs; // 0x44 + private MonoResource[] resources; // 0x48 + private byte[] public_key; // 0x4C + private string version; // 0x50 + private string culture; // 0x54 + private uint algid; // 0x58 + private uint flags; // 0x5C + private PEFileKinds pekind; // 0x60 + private bool delay_sign; // 0x64 + private uint access; // 0x68 + private Module[] loaded_modules; // 0x6C + private MonoWin32Resource[] win32_resources; // 0x70 + private RefEmitPermissionSet[] permissions_minimum; // 0x74 + private RefEmitPermissionSet[] permissions_optional; // 0x78 + private RefEmitPermissionSet[] permissions_refused; // 0x7C + private PortableExecutableKinds peKind; // 0x80 + private ImageFileMachine machine; // 0x84 + private bool corlib_internal; // 0x88 + private Type[] type_forwarders; // 0x8C + private byte[] pktoken; // 0x90 + internal Type corlib_object_type; // 0x94 + internal Type corlib_value_type; // 0x98 + internal Type corlib_enum_type; // 0x9C + internal Type corlib_void_type; // 0xA0 + private ArrayList resource_writers; // 0xA4 + private Win32VersionResource version_res; // 0xA8 + private bool created; // 0xAC + private bool is_module_only; // 0xAD + private StrongName sn; // 0xB0 + private NativeResourceType native_resource; // 0xB4 + private readonly bool is_compiler_context; // 0xB8 + private string versioninfo_culture; // 0xBC + private ModuleBuilder manifest_module; // 0xC0 + + // Properties + public override string CodeBase { get; } // 0x100E9E90 + public override MethodInfo EntryPoint { get; } // 0x100E9ED0 + public override string Location { get; } // 0x100E9F40 + public override string ImageRuntimeVersion { get; } // 0x100E9EE0 + public override bool ReflectionOnly { get; } // 0x100E9F80 + internal bool IsCompilerContext { get; } // 0x100E9EF0 + internal bool IsSave { get; } // 0x100E9F30 + internal bool IsRun { get; } // 0x100E9F10 + internal string AssemblyDir { get; } // 0x100E9E80 + internal bool IsModuleOnly { get; set; } // 0x100E9F00 0x100E9FE0 + + // Methods + internal void .ctor(AssemblyName n, string directory, AssemblyBuilderAccess access, bool corlib_internal); // 0x100E8DE0 + private void System.Runtime.InteropServices._AssemblyBuilder.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x100E8C00 + private void System.Runtime.InteropServices._AssemblyBuilder.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x100E8CA0 + private void System.Runtime.InteropServices._AssemblyBuilder.GetTypeInfoCount(out uint pcTInfo); // 0x100E8C50 + private void System.Runtime.InteropServices._AssemblyBuilder.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x100E8CF0 + private static void basic_init(AssemblyBuilder ab); // 0x100E9230 + public void AddResourceFile(string name, string fileName); // 0x100E5A70 + public void AddResourceFile(string name, string fileName, ResourceAttributes attribute); // 0x100E5BD0 + private void AddResourceFile(string name, string fileName, ResourceAttributes attribute, bool fileNeedsToExists); // 0x100E5A90 + internal void AddPermissionRequests(PermissionSet required, PermissionSet optional, PermissionSet refused); // 0x100C5530 + internal void EmbedResourceFile(string name, string fileName); // 0x100E7710 + internal void EmbedResourceFile(string name, string fileName, ResourceAttributes attribute); // 0x100E74A0 + internal void EmbedResource(string name, byte[] blob, ResourceAttributes attribute); // 0x100E7730 + internal void AddTypeForwarder(Type t); // 0x100E5BF0 + public ModuleBuilder DefineDynamicModule(string name); // 0x100E5F30 + public ModuleBuilder DefineDynamicModule(string name, bool emitSymbolInfo); // 0x100E5F10 + public ModuleBuilder DefineDynamicModule(string name, string fileName); // 0x100E5ED0 + public ModuleBuilder DefineDynamicModule(string name, string fileName, bool emitSymbolInfo); // 0x100E5EF0 + private ModuleBuilder DefineDynamicModule(string name, string fileName, bool emitSymbolInfo, bool transient); // 0x100E5F50 + private Module InternalAddModule(string fileName); // 0x100E7EB0 + internal Module AddModule(string fileName); // 0x100E5960 + public IResourceWriter DefineResource(string name, string description, string fileName); // 0x100E64E0 + public IResourceWriter DefineResource(string name, string description, string fileName, ResourceAttributes attribute); // 0x100E6590 + private void AddUnmanagedResource(Win32Resource res); // 0x100E5D60 + public void DefineUnmanagedResource(byte[] resource); // 0x100E6A40 + public void DefineUnmanagedResource(string resourceFileName); // 0x100E6640 + public void DefineVersionInfoResource(); // 0x100E7400 + public void DefineVersionInfoResource(string product, string productVersion, string company, string copyright, string trademark); // 0x100E7280 + internal void DefineIconResource(string iconFileName); // 0x100E61A0 + private void DefineVersionInfoResourceImpl(string fileName); // 0x100E6B00 + public ModuleBuilder GetDynamicModule(string name); // 0x100E78B0 + public override Type[] GetExportedTypes(); // 0x100E7A00 + public override FileStream GetFile(string name); // 0x100E7A40 + public override FileStream[] GetFiles(bool getResourceModules); // 0x100E7A80 + internal override Module[] GetModulesInternal(); // 0x100E7C10 + internal override Type[] GetTypes(bool exportedOnly); // 0x100E7C90 + public override ManifestResourceInfo GetManifestResourceInfo(string resourceName); // 0x100E7B10 + public override string[] GetManifestResourceNames(); // 0x100E7B50 + public override Stream GetManifestResourceStream(string name); // 0x100E7B90 + public override Stream GetManifestResourceStream(Type type, string name); // 0x100E7BD0 + internal override Module GetManifestModule(); // 0x100E7AC0 + public void Save(string assemblyFileName, PortableExecutableKinds portableExecutableKind, ImageFileMachine imageFileMachine); // 0x100E7EF0 + public void Save(string assemblyFileName); // 0x100E7ED0 + public void SetEntryPoint(MethodInfo entryMethod); // 0x100E8A60 + public void SetEntryPoint(MethodInfo entryMethod, PEFileKinds fileKind); // 0x100E8B30 + public void SetCustomAttribute(CustomAttributeBuilder customBuilder); // 0x100E8590 + public void SetCustomAttribute(ConstructorInfo con, byte[] binaryAttribute); // 0x100E89C0 + internal void SetCorlibTypeBuilders(Type corlib_object_type, Type corlib_value_type, Type corlib_enum_type); // 0x100E8530 + internal void SetCorlibTypeBuilders(Type corlib_object_type, Type corlib_value_type, Type corlib_enum_type, Type corlib_void_type); // 0x100E8560 + private Exception not_supported(); // 0x100E9F90 + private void check_name_and_filename(string name, string fileName, bool fileNeedsToExists); // 0x100E9240 + private string create_assembly_version(string version); // 0x100E97F0 + private string GetCultureString(string str); // 0x100E7820 + internal override AssemblyName UnprotectedGetName(); // 0x100E8D40 +} + +// Namespace: System.Reflection.Emit +[Serializable] +public enum AssemblyBuilderAccess // TypeDefIndex: 486 +{ + Run = 1, + Save = 2, + RunAndSave = 3, + ReflectionOnly = 6 +} + +// Namespace: System.Reflection.Emit +public sealed class ConstructorBuilder : ConstructorInfo, _ConstructorBuilder // TypeDefIndex: 487 +{ + // Fields + private RuntimeMethodHandle mhandle; // 0x08 + private ILGenerator ilgen; // 0x0C + internal Type[] parameters; // 0x10 + private MethodAttributes attrs; // 0x14 + private MethodImplAttributes iattrs; // 0x18 + private int table_idx; // 0x1C + private CallingConventions call_conv; // 0x20 + private TypeBuilder type; // 0x24 + internal ParameterBuilder[] pinfo; // 0x28 + private CustomAttributeBuilder[] cattrs; // 0x2C + private bool init_locals; // 0x30 + private Type[][] paramModReq; // 0x34 + private Type[][] paramModOpt; // 0x38 + private RefEmitPermissionSet[] permissions; // 0x3C + + // Properties + public override CallingConventions CallingConvention { get; } // 0x100EACD0 + public bool InitLocals { get; set; } // 0x100EF0D0 0x100EF3A0 + internal TypeBuilder TypeBuilder { get; } // 0x100EAD50 + public override RuntimeMethodHandle MethodHandle { get; } // 0x100EF180 + public override MethodAttributes Attributes { get; } // 0x100EF0C0 + public override Type ReflectedType { get; } // 0x100EAD50 + public override Type DeclaringType { get; } // 0x100EAD50 + public Type ReturnType { get; } // 0x100C5600 + public override string Name { get; } // 0x100EF1D0 + public string Signature { get; } // 0x100EF250 + public override Module Module { get; } // 0x100EF1C0 + private bool IsCompilerContext { get; } // 0x100EF0E0 + + // Methods + internal void .ctor(TypeBuilder tb, MethodAttributes attributes, CallingConventions callingConvention, Type[] parameterTypes, Type[][] paramModReq, Type[][] paramModOpt); // 0x100EEE20 + private void System.Runtime.InteropServices._ConstructorBuilder.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x100EEC70 + private void System.Runtime.InteropServices._ConstructorBuilder.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x100EED10 + private void System.Runtime.InteropServices._ConstructorBuilder.GetTypeInfoCount(out uint pcTInfo); // 0x100EECC0 + private void System.Runtime.InteropServices._ConstructorBuilder.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x100EED60 + public override MethodImplAttributes GetMethodImplementationFlags(); // 0x100EE580 + public override ParameterInfo[] GetParameters(); // 0x100EE6F0 + internal ParameterInfo[] GetParametersInternal(); // 0x100EE5D0 + internal override int GetParameterCount(); // 0x100EE5B0 + public override object Invoke(object obj, BindingFlags invokeAttr, Binder binder, object[] parameters, CultureInfo culture); // 0x100EE780 + public override object Invoke(BindingFlags invokeAttr, Binder binder, object[] parameters, CultureInfo culture); // 0x100EE7C0 + public void AddDeclarativeSecurity(SecurityAction action, PermissionSet pset); // 0x100C5530 + public ParameterBuilder DefineParameter(int iSequence, ParameterAttributes attributes, string strParamName); // 0x100EDF60 + public override bool IsDefined(Type attributeType, bool inherit); // 0x100EE800 + public override object[] GetCustomAttributes(bool inherit); // 0x100EE300 + public override object[] GetCustomAttributes(Type attributeType, bool inherit); // 0x100EE260 + public ILGenerator GetILGenerator(); // 0x100EE3A0 + public ILGenerator GetILGenerator(int streamSize); // 0x100EE490 + public void SetCustomAttribute(CustomAttributeBuilder customBuilder); // 0x100EE8B0 + public void SetCustomAttribute(ConstructorInfo con, byte[] binaryAttribute); // 0x100EEB00 + public void SetImplementationFlags(MethodImplAttributes attributes); // 0x100EEBA0 + public Module GetModule(); // 0x100EE590 + public MethodToken GetToken(); // 0x100EE770 + public void SetSymCustomAttribute(string name, byte[] data); // 0x100EEC10 + public override string ToString(); // 0x100EEDB0 + internal void fixup(); // 0x100EEFD0 + internal void GenerateDebugInfo(ISymbolWriter symbolWriter); // 0x100EE090 + internal override int get_next_table_index(object obj, int table, bool inc); // 0x100EF280 + private void RejectIfCreated(); // 0x100EE840 + private Exception not_supported(); // 0x100EF350 + private Exception not_after_created(); // 0x100EF2B0 + private Exception not_created(); // 0x100EF300 +} + +// Namespace: System.Reflection.Emit +internal class ConstructorOnTypeBuilderInst : ConstructorInfo // TypeDefIndex: 488 +{ + // Fields + private MonoGenericClass instantiation; // 0x08 + private ConstructorBuilder cb; // 0x0C + + // Properties + public override Type DeclaringType { get; } // 0x100BF0C0 + public override string Name { get; } // 0x100EFD20 + public override Type ReflectedType { get; } // 0x100BF0C0 + public override int MetadataToken { get; } // 0x100EFC00 + public override RuntimeMethodHandle MethodHandle { get; } // 0x100EFCF0 + public override MethodAttributes Attributes { get; } // 0x100EFBB0 + public override CallingConventions CallingConvention { get; } // 0x100EFBD0 + public override bool ContainsGenericParameters { get; } // 0x100EFBF0 + public override bool IsGenericMethodDefinition { get; } // 0x100EFBF0 + public override bool IsGenericMethod { get; } // 0x100EFBF0 + + // Methods + public void .ctor(MonoGenericClass instantiation, ConstructorBuilder cb); // 0x100EFB50 + public override bool IsDefined(Type attributeType, bool inherit); // 0x100EFB20 + public override object[] GetCustomAttributes(bool inherit); // 0x100EF670 + public override object[] GetCustomAttributes(Type attributeType, bool inherit); // 0x100EF710 + public override MethodImplAttributes GetMethodImplementationFlags(); // 0x100EF7F0 + public override ParameterInfo[] GetParameters(); // 0x100EF840 + internal override int GetParameterCount(); // 0x100EF810 + public override object Invoke(object obj, BindingFlags invokeAttr, Binder binder, object[] parameters, CultureInfo culture); // 0x100EFA90 + public override Type[] GetGenericArguments(); // 0x100EF7C0 + public override object Invoke(BindingFlags invokeAttr, Binder binder, object[] parameters, CultureInfo culture); // 0x100EFAD0 +} + +// Namespace: System.Reflection.Emit +public class CustomAttributeBuilder : _CustomAttributeBuilder // TypeDefIndex: 489 +{ + // Fields + private ConstructorInfo ctor; // 0x08 + private byte[] data; // 0x0C + private static Dictionary`2 <>f__switch$map1C; // 0x00 + + // Properties + internal ConstructorInfo Ctor { get; } // 0x100BF0C0 + internal byte[] Data { get; } // 0x100C5B30 + + // Methods + internal void .ctor(ConstructorInfo con, byte[] cdata); // 0x100F0DC0 + public void .ctor(ConstructorInfo con, object[] constructorArgs); // 0x100F0C70 + public void .ctor(ConstructorInfo con, object[] constructorArgs, FieldInfo[] namedFields, object[] fieldValues); // 0x100F0D60 + public void .ctor(ConstructorInfo con, object[] constructorArgs, PropertyInfo[] namedProperties, object[] propertyValues); // 0x100F0CF0 + public void .ctor(ConstructorInfo con, object[] constructorArgs, PropertyInfo[] namedProperties, object[] propertyValues, FieldInfo[] namedFields, object[] fieldValues); // 0x100F0D50 + private void System.Runtime.InteropServices._CustomAttributeBuilder.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x100F0B30 + private void System.Runtime.InteropServices._CustomAttributeBuilder.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x100F0BD0 + private void System.Runtime.InteropServices._CustomAttributeBuilder.GetTypeInfoCount(out uint pcTInfo); // 0x100F0B80 + private void System.Runtime.InteropServices._CustomAttributeBuilder.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x100F0C20 + private static byte[] GetBlob(Assembly asmb, ConstructorInfo con, object[] constructorArgs, PropertyInfo[] namedProperties, object[] propertyValues, FieldInfo[] namedFields, object[] fieldValues); // 0x100EFD50 + private bool IsValidType(Type t); // 0x100F0A80 + private void Initialize(ConstructorInfo con, object[] constructorArgs, PropertyInfo[] namedProperties, object[] propertyValues, FieldInfo[] namedFields, object[] fieldValues); // 0x100EFDF0 + internal static int decode_len(byte[] data, int pos, out int rpos); // 0x100F1750 + internal static string string_from_bytes(byte[] data, int pos, int len); // 0x100F2170 + internal string string_arg(); // 0x100F2130 + internal static UnmanagedMarshal get_umarshal(CustomAttributeBuilder customBuilder, bool is_field); // 0x100F1A00 + private static Type elementTypeToType(int elementType); // 0x100F1880 + private static object decode_cattr_value(Type t, byte[] data, int pos, out int rpos); // 0x100F1430 + internal static CustomAttributeInfo decode_cattr(CustomAttributeBuilder customBuilder); // 0x100F0E40 + private static ParameterInfo[] GetParameters(ConstructorInfo ctor); // 0x100EFD80 +} + +// Namespace: +internal struct CustomAttributeInfo // TypeDefIndex: 490 +{ + // Fields + public ConstructorInfo ctor; // 0x08 + public object[] ctorArgs; // 0x0C + public string[] namedParamNames; // 0x10 + public object[] namedParamValues; // 0x14 + +} + +// Namespace: System.Reflection.Emit +internal enum TypeKind // TypeDefIndex: 491 +{ + ARRAY = 20, + SZARRAY = 29 +} + +// Namespace: System.Reflection.Emit +internal abstract class DerivedType : Type // TypeDefIndex: 492 +{ + // Fields + internal Type elementType; // 0x0C + + // Properties + public override bool ContainsGenericParameters { get; } // 0x100F6AC0 + public override GenericParameterAttributes GenericParameterAttributes { get; } // 0x100F6B80 + public override StructLayoutAttribute StructLayoutAttribute { get; } // 0x100F6C70 + public override Assembly Assembly { get; } // 0x100F6A90 + public override string AssemblyQualifiedName { get; } // 0x100F69B0 + public override string FullName { get; } // 0x100F6AF0 + public override string Name { get; } // 0x100F6C00 + public override Guid GUID { get; } // 0x100F6B30 + public override Module Module { get; } // 0x100F6BD0 + public override string Namespace { get; } // 0x100F6C40 + public override RuntimeTypeHandle TypeHandle { get; } // 0x100F6CC0 + public override Type UnderlyingSystemType { get; } // 0x100F6D10 + + // Methods + internal void .ctor(Type elementType); // 0x100EDEB0 + internal static void create_unmanaged_type(Type type); // 0x100F69A0 + internal abstract string FormatName(string elementName); + public override Type GetInterface(string name, bool ignoreCase); // 0x100F63B0 + public override Type[] GetInterfaces(); // 0x100F6400 + public override Type GetElementType(); // 0x100C5B30 + public override EventInfo GetEvent(string name, BindingFlags bindingAttr); // 0x100F6220 + public override EventInfo[] GetEvents(BindingFlags bindingAttr); // 0x100F6270 + public override FieldInfo GetField(string name, BindingFlags bindingAttr); // 0x100F62C0 + public override FieldInfo[] GetFields(BindingFlags bindingAttr); // 0x100F6310 + public override MemberInfo[] GetMembers(BindingFlags bindingAttr); // 0x100F6450 + protected override MethodInfo GetMethodImpl(string name, BindingFlags bindingAttr, Binder binder, CallingConventions callConvention, Type[] types, ParameterModifier[] modifiers); // 0x100F64A0 + public override MethodInfo[] GetMethods(BindingFlags bindingAttr); // 0x100F64F0 + public override Type GetNestedType(string name, BindingFlags bindingAttr); // 0x100F6540 + public override Type[] GetNestedTypes(BindingFlags bindingAttr); // 0x100F6590 + public override PropertyInfo[] GetProperties(BindingFlags bindingAttr); // 0x100F65E0 + protected override PropertyInfo GetPropertyImpl(string name, BindingFlags bindingAttr, Binder binder, Type returnType, Type[] types, ParameterModifier[] modifiers); // 0x100F6630 + protected override ConstructorInfo GetConstructorImpl(BindingFlags bindingAttr, Binder binder, CallingConventions callConvention, Type[] types, ParameterModifier[] modifiers); // 0x100F60E0 + protected override TypeAttributes GetAttributeFlagsImpl(); // 0x100F60B0 + protected override bool HasElementTypeImpl(); // 0x100E5880 + protected override bool IsArrayImpl(); // 0x100EFBF0 + protected override bool IsByRefImpl(); // 0x100EFBF0 + protected override bool IsCOMObjectImpl(); // 0x100EFBF0 + protected override bool IsPointerImpl(); // 0x100EFBF0 + protected override bool IsPrimitiveImpl(); // 0x100EFBF0 + public override ConstructorInfo[] GetConstructors(BindingFlags bindingAttr); // 0x100F6130 + public override object InvokeMember(string name, BindingFlags invokeAttr, Binder binder, object target, object[] args, ParameterModifier[] modifiers, CultureInfo culture, string[] namedParameters); // 0x100F6680 + public override InterfaceMapping GetInterfaceMap(Type interfaceType); // 0x100F6360 + public override bool IsInstanceOfType(object o); // 0x100EFBF0 + public override bool IsAssignableFrom(Type c); // 0x100EFBF0 + public override Type MakeGenericType(Type[] typeArguments); // 0x100F68C0 + public override Type MakeArrayType(); // 0x100F6720 + public override Type MakeArrayType(int rank); // 0x100F67B0 + public override Type MakeByRefType(); // 0x100F6830 + public override Type MakePointerType(); // 0x100F6910 + public override string ToString(); // 0x100F6960 + public override bool IsDefined(Type attributeType, bool inherit); // 0x100F66D0 + public override object[] GetCustomAttributes(bool inherit); // 0x100F61D0 + public override object[] GetCustomAttributes(Type attributeType, bool inherit); // 0x100F6180 +} + +// Namespace: System.Reflection.Emit +internal class ArrayType : DerivedType // TypeDefIndex: 493 +{ + // Fields + private int rank; // 0x10 + + // Properties + public override Type BaseType { get; } // 0x100E58F0 + + // Methods + internal void .ctor(Type elementType, int rank); // 0x100E5890 + protected override bool IsArrayImpl(); // 0x100E5880 + public override int GetArrayRank(); // 0x100E5760 + protected override TypeAttributes GetAttributeFlagsImpl(); // 0x100E5780 + internal override string FormatName(string elementName); // 0x100E5690 +} + +// Namespace: System.Reflection.Emit +internal class ByRefType : DerivedType // TypeDefIndex: 494 +{ + // Properties + public override Type BaseType { get; } // 0x100EDF10 + + // Methods + internal void .ctor(Type elementType); // 0x100EDEB0 + protected override bool IsByRefImpl(); // 0x100E5880 + internal override string FormatName(string elementName); // 0x100EDD10 + public override Type MakeArrayType(); // 0x100EDDC0 + public override Type MakeArrayType(int rank); // 0x100EDD70 + public override Type MakeByRefType(); // 0x100EDE10 + public override Type MakePointerType(); // 0x100EDE60 +} + +// Namespace: System.Reflection.Emit +internal class PointerType : DerivedType // TypeDefIndex: 495 +{ + // Properties + public override Type BaseType { get; } // 0x1013F290 + + // Methods + internal void .ctor(Type elementType); // 0x1013F280 + protected override bool IsPointerImpl(); // 0x100E5880 + internal override string FormatName(string elementName); // 0x1013F220 +} + +// Namespace: System.Reflection.Emit +public class DynamicILInfo // TypeDefIndex: 496 +{ + // Properties + public DynamicMethod DynamicMethod { get; } // 0x100F7140 + + // Methods + internal void .ctor(); // 0x100C5530 + public int GetTokenFor(byte[] signature); // 0x100F6F10 + public int GetTokenFor(DynamicMethod method); // 0x100F6E70 + public int GetTokenFor(RuntimeFieldHandle field); // 0x100F6D30 + public int GetTokenFor(RuntimeMethodHandle method); // 0x100F6DD0 + public int GetTokenFor(RuntimeTypeHandle type); // 0x100F6E20 + public int GetTokenFor(string literal); // 0x100F6EC0 + public int GetTokenFor(RuntimeMethodHandle method, RuntimeTypeHandle contextType); // 0x100F6D80 + public void SetCode(byte[] code, int maxStackSize); // 0x100F6FB0 + public void SetCode(void * code, int codeSize, int maxStackSize); // 0x100F6F60 + public void SetExceptions(byte[] exceptions); // 0x100F7000 + public void SetExceptions(void * exceptions, int exceptionsSize); // 0x100F7050 + public void SetLocalSignature(byte[] localSignature); // 0x100F70A0 + public void SetLocalSignature(void * localSignature, int signatureSize); // 0x100F70F0 +} + +// Namespace: System.Reflection.Emit +public sealed class DynamicMethod : MethodInfo // TypeDefIndex: 497 +{ + // Fields + private RuntimeMethodHandle mhandle; // 0x08 + private string name; // 0x0C + private Type returnType; // 0x10 + private Type[] parameters; // 0x14 + private MethodAttributes attributes; // 0x18 + private CallingConventions callingConvention; // 0x1C + private Module module; // 0x20 + private bool skipVisibility; // 0x24 + private bool init_locals; // 0x25 + private ILGenerator ilgen; // 0x28 + private int nrefs; // 0x2C + private object[] refs; // 0x30 + private IntPtr referenced_by; // 0x34 + private Type owner; // 0x38 + private Delegate deleg; // 0x3C + private MonoMethod method; // 0x40 + private ParameterBuilder[] pinfo; // 0x44 + internal bool creating; // 0x48 + + // Properties + public override MethodAttributes Attributes { get; } // 0x100EE580 + public override CallingConventions CallingConvention { get; } // 0x100F85F0 + public override Type DeclaringType { get; } // 0x100C5600 + public bool InitLocals { get; set; } // 0x100F8600 0x100F86B0 + public override RuntimeMethodHandle MethodHandle { get; } // 0x100BF0C0 + public override Module Module { get; } // 0x100EACD0 + public override string Name { get; } // 0x100C5B30 + public override Type ReflectedType { get; } // 0x100C5600 + public override ParameterInfo ReturnParameter { get; } // 0x100F8610 + public override Type ReturnType { get; } // 0x100BFC20 + public override ICustomAttributeProvider ReturnTypeCustomAttributes { get; } // 0x100F8660 + + // Methods + public void .ctor(string name, Type returnType, Type[] parameterTypes, Module m); // 0x100F8500 + public void .ctor(string name, Type returnType, Type[] parameterTypes, Type owner); // 0x100F8220 + public void .ctor(string name, Type returnType, Type[] parameterTypes, Module m, bool skipVisibility); // 0x100F8560 + public void .ctor(string name, Type returnType, Type[] parameterTypes, Type owner, bool skipVisibility); // 0x100F84B0 + public void .ctor(string name, MethodAttributes attributes, CallingConventions callingConvention, Type returnType, Type[] parameterTypes, Type owner, bool skipVisibility); // 0x100F8170 + public void .ctor(string name, MethodAttributes attributes, CallingConventions callingConvention, Type returnType, Type[] parameterTypes, Module m, bool skipVisibility); // 0x100F8530 + public void .ctor(string name, Type returnType, Type[] parameterTypes); // 0x100F81C0 + public void .ctor(string name, Type returnType, Type[] parameterTypes, bool restrictedSkipVisibility); // 0x100F81F0 + private void .ctor(string name, MethodAttributes attributes, CallingConventions callingConvention, Type returnType, Type[] parameterTypes, Type owner, Module m, bool skipVisibility, bool anonHosted); // 0x100F8270 + private void create_dynamic_method(DynamicMethod m); // 0x100F8590 + private void destroy_dynamic_method(DynamicMethod m); // 0x100F85C0 + private void CreateDynMethod(); // 0x100F73B0 + protected override void Finalize(); // 0x100F7770 + public Delegate CreateDelegate(Type delegateType); // 0x100F72B0 + public Delegate CreateDelegate(Type delegateType, object target); // 0x100F7330 + public ParameterBuilder DefineParameter(int position, ParameterAttributes attributes, string parameterName); // 0x100F75F0 + public override MethodInfo GetBaseDefinition(); // 0x100F7810 + public override object[] GetCustomAttributes(bool inherit); // 0x100F7820 + public override object[] GetCustomAttributes(Type attributeType, bool inherit); // 0x100F7870 + public DynamicILInfo GetDynamicILInfo(); // 0x100F78C0 + public ILGenerator GetILGenerator(); // 0x100F7990 + public ILGenerator GetILGenerator(int streamSize); // 0x100F7910 + public override MethodImplAttributes GetMethodImplementationFlags(); // 0x100C5600 + public override ParameterInfo[] GetParameters(); // 0x100F7A00 + public override object Invoke(object obj, BindingFlags invokeAttr, Binder binder, object[] parameters, CultureInfo culture); // 0x100F7B20 + public override bool IsDefined(Type attributeType, bool inherit); // 0x100F7C50 + public override string ToString(); // 0x100F7D10 + private void RejectIfCreated(); // 0x100F7CA0 + internal int AddRef(object reference); // 0x100F7190 +} + +// Namespace: +private class AnonHostModuleHolder // TypeDefIndex: 498 +{ + // Fields + public static Module anon_host_module; // 0x00 + + // Methods + public void .ctor(); // 0x100BF000 + private static void .cctor(); // 0x101289D0 +} + +// Namespace: System.Reflection.Emit +internal class DynamicMethodTokenGenerator : TokenGenerator // TypeDefIndex: 499 +{ + // Fields + private DynamicMethod m; // 0x08 + + // Methods + public void .ctor(DynamicMethod m); // 0x10113500 + public int GetToken(string str); // 0x10128A60 + public int GetToken(MethodInfo method, Type[] opt_param_types); // 0x10128A90 + public int GetToken(MemberInfo member); // 0x10128A60 + public int GetToken(SignatureHelper helper); // 0x10128A60 +} + +// Namespace: System.Reflection.Emit +public sealed class EnumBuilder : Type, _EnumBuilder // TypeDefIndex: 500 +{ + // Fields + private TypeBuilder _tb; // 0x0C + private FieldBuilder _underlyingField; // 0x10 + private Type _underlyingType; // 0x14 + + // Properties + public override Assembly Assembly { get; } // 0x101294D0 + public override string AssemblyQualifiedName { get; } // 0x101294A0 + public override Type BaseType { get; } // 0x100EFBB0 + public override Type DeclaringType { get; } // 0x100EF7F0 + public override string FullName { get; } // 0x10129500 + public override Guid GUID { get; } // 0x10129520 + public override Module Module { get; } // 0x10129560 + public override string Name { get; } // 0x10129580 + public override string Namespace { get; } // 0x101295A0 + public override Type ReflectedType { get; } // 0x100EF7F0 + public override RuntimeTypeHandle TypeHandle { get; } // 0x101295C0 + public TypeToken TypeToken { get; } // 0x101295F0 + public FieldBuilder UnderlyingField { get; } // 0x100BFC20 + public override Type UnderlyingSystemType { get; } // 0x100EF0C0 + + // Methods + internal void .ctor(ModuleBuilder mb, string name, TypeAttributes visibility, Type underlyingType); // 0x101293D0 + private void System.Runtime.InteropServices._EnumBuilder.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x10129290 + private void System.Runtime.InteropServices._EnumBuilder.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x10129330 + private void System.Runtime.InteropServices._EnumBuilder.GetTypeInfoCount(out uint pcTInfo); // 0x101292E0 + private void System.Runtime.InteropServices._EnumBuilder.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x10129380 + internal TypeBuilder GetTypeBuilder(); // 0x100C5B30 + public Type CreateType(); // 0x10128B30 + private void setup_enum_type(Type t); // 0x10129620 + public FieldBuilder DefineLiteral(string literalName, object literalValue); // 0x10128B60 + protected override TypeAttributes GetAttributeFlagsImpl(); // 0x10128BB0 + protected override ConstructorInfo GetConstructorImpl(BindingFlags bindingAttr, Binder binder, CallingConventions callConvention, Type[] types, ParameterModifier[] modifiers); // 0x10128BD0 + public override ConstructorInfo[] GetConstructors(BindingFlags bindingAttr); // 0x10128C00 + public override object[] GetCustomAttributes(bool inherit); // 0x10128C60 + public override object[] GetCustomAttributes(Type attributeType, bool inherit); // 0x10128C30 + public override Type GetElementType(); // 0x10128C90 + public override EventInfo GetEvent(string name, BindingFlags bindingAttr); // 0x10128CC0 + public override EventInfo[] GetEvents(); // 0x10128D20 + public override EventInfo[] GetEvents(BindingFlags bindingAttr); // 0x10128CF0 + public override FieldInfo GetField(string name, BindingFlags bindingAttr); // 0x10128D50 + public override FieldInfo[] GetFields(BindingFlags bindingAttr); // 0x10128D80 + public override Type GetInterface(string name, bool ignoreCase); // 0x10128DF0 + public override InterfaceMapping GetInterfaceMap(Type interfaceType); // 0x10128DB0 + public override Type[] GetInterfaces(); // 0x10128E20 + public override MemberInfo[] GetMember(string name, MemberTypes type, BindingFlags bindingAttr); // 0x10128E50 + public override MemberInfo[] GetMembers(BindingFlags bindingAttr); // 0x10128E80 + protected override MethodInfo GetMethodImpl(string name, BindingFlags bindingAttr, Binder binder, CallingConventions callConvention, Type[] types, ParameterModifier[] modifiers); // 0x10128EB0 + public override MethodInfo[] GetMethods(BindingFlags bindingAttr); // 0x10128F00 + public override Type GetNestedType(string name, BindingFlags bindingAttr); // 0x10128F30 + public override Type[] GetNestedTypes(BindingFlags bindingAttr); // 0x10128F60 + public override PropertyInfo[] GetProperties(BindingFlags bindingAttr); // 0x10128F90 + protected override PropertyInfo GetPropertyImpl(string name, BindingFlags bindingAttr, Binder binder, Type returnType, Type[] types, ParameterModifier[] modifiers); // 0x10128FC0 + protected override bool HasElementTypeImpl(); // 0x10129000 + public override object InvokeMember(string name, BindingFlags invokeAttr, Binder binder, object target, object[] args, ParameterModifier[] modifiers, CultureInfo culture, string[] namedParameters); // 0x10129030 + protected override bool IsArrayImpl(); // 0x100EFBF0 + protected override bool IsByRefImpl(); // 0x100EFBF0 + protected override bool IsCOMObjectImpl(); // 0x100EFBF0 + protected override bool IsPointerImpl(); // 0x100EFBF0 + protected override bool IsPrimitiveImpl(); // 0x100EFBF0 + protected override bool IsValueTypeImpl(); // 0x100E5880 + public override bool IsDefined(Type attributeType, bool inherit); // 0x10129060 + public override Type MakeArrayType(); // 0x10129090 + public override Type MakeArrayType(int rank); // 0x101290E0 + public override Type MakeByRefType(); // 0x10129160 + public override Type MakePointerType(); // 0x101291B0 + public void SetCustomAttribute(CustomAttributeBuilder customBuilder); // 0x10129260 + public void SetCustomAttribute(ConstructorInfo con, byte[] binaryAttribute); // 0x10129200 + private Exception CreateNotSupportedException(); // 0x10128AE0 +} + +// Namespace: System.Reflection.Emit +public sealed class EventBuilder : _EventBuilder // TypeDefIndex: 501 +{ + // Fields + internal string name; // 0x08 + private Type type; // 0x0C + private TypeBuilder typeb; // 0x10 + private CustomAttributeBuilder[] cattrs; // 0x14 + internal MethodBuilder add_method; // 0x18 + internal MethodBuilder remove_method; // 0x1C + internal MethodBuilder raise_method; // 0x20 + internal MethodBuilder[] other_methods; // 0x24 + internal EventAttributes attrs; // 0x28 + private int table_idx; // 0x2C + + // Methods + internal void .ctor(TypeBuilder tb, string eventName, EventAttributes eventAttrs, Type eventType); // 0x10129CB0 + private void System.Runtime.InteropServices._EventBuilder.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x10129B70 + private void System.Runtime.InteropServices._EventBuilder.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x10129C10 + private void System.Runtime.InteropServices._EventBuilder.GetTypeInfoCount(out uint pcTInfo); // 0x10129BC0 + private void System.Runtime.InteropServices._EventBuilder.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x10129C60 + internal int get_next_table_index(object obj, int table, bool inc); // 0x10129D00 + public void AddOtherMethod(MethodBuilder mdBuilder); // 0x10129640 + public EventToken GetEventToken(); // 0x10129750 + public void SetAddOnMethod(MethodBuilder mdBuilder); // 0x101297D0 + public void SetRaiseMethod(MethodBuilder mdBuilder); // 0x10129A90 + public void SetRemoveOnMethod(MethodBuilder mdBuilder); // 0x10129B00 + public void SetCustomAttribute(CustomAttributeBuilder customBuilder); // 0x10129840 + public void SetCustomAttribute(ConstructorInfo con, byte[] binaryAttribute); // 0x101299F0 + private void RejectIfCreated(); // 0x10129760 +} + +// Namespace: System.Reflection.Emit +internal class EventOnTypeBuilderInst : EventInfo // TypeDefIndex: 502 +{ + // Fields + private MonoGenericClass instantiation; // 0x0C + private EventBuilder evt; // 0x10 + + // Properties + public override EventAttributes Attributes { get; } // 0x1012A0D0 + public override Type DeclaringType { get; } // 0x100C5B30 + public override string Name { get; } // 0x1012A0F0 + public override Type ReflectedType { get; } // 0x100C5B30 + + // Methods + internal void .ctor(MonoGenericClass instantiation, EventBuilder evt); // 0x1012A0A0 + public override MethodInfo GetAddMethod(bool nonPublic); // 0x10129D30 + public override MethodInfo GetRaiseMethod(bool nonPublic); // 0x10129F90 + public override MethodInfo GetRemoveMethod(bool nonPublic); // 0x10129FF0 + public override MethodInfo[] GetOtherMethods(bool nonPublic); // 0x10129E30 + public override bool IsDefined(Type attributeType, bool inherit); // 0x1012A050 + public override object[] GetCustomAttributes(bool inherit); // 0x10129D90 + public override object[] GetCustomAttributes(Type attributeType, bool inherit); // 0x10129DE0 +} + +// Namespace: System.Reflection.Emit +[Serializable] +public struct EventToken // TypeDefIndex: 503 +{ + // Fields + internal int tokValue; // 0x08 + public static readonly EventToken Empty; // 0x00 + + // Properties + public int Token { get; } // 0x10003A80 + + // Methods + internal void .ctor(int val); // 0x10005950 + private static void .cctor(); // 0x1012A110 + public override bool Equals(object obj); // 0x100077D0 + public bool Equals(EventToken obj); // 0x10005A50 + public override int GetHashCode(); // 0x10003A80 + public static bool op_Equality(EventToken a, EventToken b); // 0x1012A140 + public static bool op_Inequality(EventToken a, EventToken b); // 0x1012A1A0 +} + +// Namespace: System.Reflection.Emit +public sealed class FieldBuilder : FieldInfo, _FieldBuilder // TypeDefIndex: 504 +{ + // Fields + private FieldAttributes attrs; // 0x08 + private Type type; // 0x0C + private string name; // 0x10 + private object def_value; // 0x14 + private int offset; // 0x18 + private int table_idx; // 0x1C + internal TypeBuilder typeb; // 0x20 + private byte[] rva_data; // 0x24 + private CustomAttributeBuilder[] cattrs; // 0x28 + private UnmanagedMarshal marshal_info; // 0x2C + private RuntimeFieldHandle handle; // 0x30 + private Type[] modReq; // 0x34 + private Type[] modOpt; // 0x38 + + // Properties + public override FieldAttributes Attributes { get; } // 0x100BF0C0 + public override Type DeclaringType { get; } // 0x100EACD0 + public override RuntimeFieldHandle FieldHandle { get; } // 0x1012AAD0 + public override Type FieldType { get; } // 0x100C5B30 + public override string Name { get; } // 0x100BFC20 + public override Type ReflectedType { get; } // 0x100EACD0 + internal override UnmanagedMarshal UMarshal { get; } // 0x100EB200 + public override Module Module { get; } // 0x100EF1C0 + + // Methods + internal void .ctor(TypeBuilder tb, string fieldName, Type type, FieldAttributes attributes, Type[] modReq, Type[] modOpt); // 0x1012AA20 + private void System.Runtime.InteropServices._FieldBuilder.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x1012A8E0 + private void System.Runtime.InteropServices._FieldBuilder.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x1012A980 + private void System.Runtime.InteropServices._FieldBuilder.GetTypeInfoCount(out uint pcTInfo); // 0x1012A930 + private void System.Runtime.InteropServices._FieldBuilder.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x1012A9D0 + public override object[] GetCustomAttributes(bool inherit); // 0x1012A260 + public override object[] GetCustomAttributes(Type attributeType, bool inherit); // 0x1012A2F0 + public FieldToken GetToken(); // 0x1012A380 + public override object GetValue(object obj); // 0x1012A3A0 + public override bool IsDefined(Type attributeType, bool inherit); // 0x1012A3E0 + internal override int GetFieldOffset(); // 0x100C5600 + internal void SetRVAData(byte[] data); // 0x1012A820 + public void SetConstant(object defaultValue); // 0x1012A490 + public void SetCustomAttribute(CustomAttributeBuilder customBuilder); // 0x1012A4B0 + public void SetCustomAttribute(ConstructorInfo con, byte[] binaryAttribute); // 0x1012A770 + public void SetMarshal(UnmanagedMarshal unmanagedMarshal); // 0x1012A7D0 + public void SetOffset(int iOffset); // 0x1012A800 + public override void SetValue(object obj, object val, BindingFlags invokeAttr, Binder binder, CultureInfo culture); // 0x1012A8A0 + private Exception CreateNotSupportedException(); // 0x1012A210 + private void RejectIfCreated(); // 0x1012A420 +} + +// Namespace: System.Reflection.Emit +internal class FieldOnTypeBuilderInst : FieldInfo // TypeDefIndex: 505 +{ + // Fields + internal MonoGenericClass instantiation; // 0x08 + internal FieldBuilder fb; // 0x0C + + // Properties + public override Type DeclaringType { get; } // 0x100BF0C0 + public override string Name { get; } // 0x101295A0 + public override Type ReflectedType { get; } // 0x100BF0C0 + public override FieldAttributes Attributes { get; } // 0x1012AE00 + public override RuntimeFieldHandle FieldHandle { get; } // 0x1012AE20 + public override int MetadataToken { get; } // 0x1012AF80 + public override Type FieldType { get; } // 0x1012AE70 + + // Methods + public void .ctor(MonoGenericClass instantiation, FieldBuilder fb); // 0x101237E0 + public override bool IsDefined(Type attributeType, bool inherit); // 0x1012AC00 + public override object[] GetCustomAttributes(bool inherit); // 0x1012AB10 + public override object[] GetCustomAttributes(Type attributeType, bool inherit); // 0x1012AB60 + public override string ToString(); // 0x1012ACA0 + public override object GetValue(object obj); // 0x1012ABB0 + public override void SetValue(object obj, object value, BindingFlags invokeAttr, Binder binder, CultureInfo culture); // 0x1012AC50 +} + +// Namespace: System.Reflection.Emit +[Serializable] +public struct FieldToken // TypeDefIndex: 506 +{ + // Fields + internal int tokValue; // 0x08 + public static readonly FieldToken Empty; // 0x00 + + // Properties + public int Token { get; } // 0x10003A80 + + // Methods + internal void .ctor(int val); // 0x10005950 + private static void .cctor(); // 0x1012B090 + public override bool Equals(object obj); // 0x10007850 + public bool Equals(FieldToken obj); // 0x10005A50 + public override int GetHashCode(); // 0x10003A80 + public static bool op_Equality(FieldToken a, FieldToken b); // 0x1012B0C0 + public static bool op_Inequality(FieldToken a, FieldToken b); // 0x1012B120 +} + +// Namespace: System.Reflection.Emit +[Serializable] +public enum FlowControl // TypeDefIndex: 507 +{ + Branch = 0, + Break = 1, + Call = 2, + Cond_Branch = 3, + Meta = 4, + Next = 5, + Phi = 6, + Return = 7, + Throw = 8 +} + +// Namespace: System.Reflection.Emit +public sealed class GenericTypeParameterBuilder : Type // TypeDefIndex: 508 +{ + // Fields + private TypeBuilder tbuilder; // 0x0C + private MethodBuilder mbuilder; // 0x10 + private string name; // 0x14 + private int index; // 0x18 + private Type base_type; // 0x1C + private Type[] iface_constraints; // 0x20 + private CustomAttributeBuilder[] cattrs; // 0x24 + private GenericParameterAttributes attrs; // 0x28 + + // Properties + public override Type UnderlyingSystemType { get; } // 0x100F7810 + public override Assembly Assembly { get; } // 0x101294D0 + public override string AssemblyQualifiedName { get; } // 0x100C5600 + public override Type BaseType { get; } // 0x100F85F0 + public override string FullName { get; } // 0x100C5600 + public override Guid GUID { get; } // 0x1012C210 + public override string Name { get; } // 0x100EF0C0 + public override string Namespace { get; } // 0x100C5600 + public override Module Module { get; } // 0x10129560 + public override Type DeclaringType { get; } // 0x1012C1F0 + public override Type ReflectedType { get; } // 0x1012C1F0 + public override RuntimeTypeHandle TypeHandle { get; } // 0x1012C330 + public override bool ContainsGenericParameters { get; } // 0x100E5880 + public override bool IsGenericParameter { get; } // 0x100E5880 + public override bool IsGenericType { get; } // 0x100EFBF0 + public override bool IsGenericTypeDefinition { get; } // 0x100EFBF0 + public override GenericParameterAttributes GenericParameterAttributes { get; } // 0x1012C250 + public override int GenericParameterPosition { get; } // 0x100EE580 + public override MethodBase DeclaringMethod { get; } // 0x100BFC20 + + // Methods + internal void .ctor(TypeBuilder tbuilder, MethodBuilder mbuilder, string name, int index); // 0x1012C180 + public void SetBaseTypeConstraint(Type baseTypeConstraint); // 0x1012BE10 + public void SetInterfaceConstraints(Type[] interfaceConstraints); // 0x100EB230 + public void SetGenericParameterAttributes(GenericParameterAttributes genericParameterAttributes); // 0x100EB250 + private void initialize(); // 0x1012C370 + public override bool IsSubclassOf(Type c); // 0x1012BB40 + protected override TypeAttributes GetAttributeFlagsImpl(); // 0x1012B1A0 + protected override ConstructorInfo GetConstructorImpl(BindingFlags bindingAttr, Binder binder, CallingConventions callConvention, Type[] types, ParameterModifier[] modifiers); // 0x1012B270 + public override ConstructorInfo[] GetConstructors(BindingFlags bindingAttr); // 0x1012B2B0 + public override EventInfo GetEvent(string name, BindingFlags bindingAttr); // 0x1012B3B0 + public override EventInfo[] GetEvents(); // 0x1012B3F0 + public override EventInfo[] GetEvents(BindingFlags bindingAttr); // 0x1012B430 + public override FieldInfo GetField(string name, BindingFlags bindingAttr); // 0x1012B470 + public override FieldInfo[] GetFields(BindingFlags bindingAttr); // 0x1012B4B0 + public override Type GetInterface(string name, bool ignoreCase); // 0x1012B7C0 + public override Type[] GetInterfaces(); // 0x1012B800 + public override MemberInfo[] GetMembers(BindingFlags bindingAttr); // 0x1012B880 + public override MemberInfo[] GetMember(string name, MemberTypes type, BindingFlags bindingAttr); // 0x1012B840 + public override MethodInfo[] GetMethods(BindingFlags bindingAttr); // 0x1012B900 + protected override MethodInfo GetMethodImpl(string name, BindingFlags bindingAttr, Binder binder, CallingConventions callConvention, Type[] types, ParameterModifier[] modifiers); // 0x1012B8C0 + public override Type GetNestedType(string name, BindingFlags bindingAttr); // 0x1012B940 + public override Type[] GetNestedTypes(BindingFlags bindingAttr); // 0x1012B980 + public override PropertyInfo[] GetProperties(BindingFlags bindingAttr); // 0x1012B9C0 + protected override PropertyInfo GetPropertyImpl(string name, BindingFlags bindingAttr, Binder binder, Type returnType, Type[] types, ParameterModifier[] modifiers); // 0x1012BA00 + protected override bool HasElementTypeImpl(); // 0x100EFBF0 + public override bool IsAssignableFrom(Type c); // 0x1012BA80 + public override bool IsInstanceOfType(object o); // 0x1012BB00 + protected override bool IsArrayImpl(); // 0x100EFBF0 + protected override bool IsByRefImpl(); // 0x100EFBF0 + protected override bool IsCOMObjectImpl(); // 0x100EFBF0 + protected override bool IsPointerImpl(); // 0x100EFBF0 + protected override bool IsPrimitiveImpl(); // 0x100EFBF0 + protected override bool IsValueTypeImpl(); // 0x1012BC60 + public override object InvokeMember(string name, BindingFlags invokeAttr, Binder binder, object target, object[] args, ParameterModifier[] modifiers, CultureInfo culture, string[] namedParameters); // 0x1012BA40 + public override Type GetElementType(); // 0x1012B370 + public override bool IsDefined(Type attributeType, bool inherit); // 0x1012BAC0 + public override object[] GetCustomAttributes(bool inherit); // 0x1012B330 + public override object[] GetCustomAttributes(Type attributeType, bool inherit); // 0x1012B2F0 + public override InterfaceMapping GetInterfaceMap(Type interfaceType); // 0x1012B780 + public override Type[] GetGenericArguments(); // 0x1012B4F0 + public override Type GetGenericTypeDefinition(); // 0x1012B720 + public override Type[] GetGenericParameterConstraints(); // 0x1012B540 + public void SetCustomAttribute(CustomAttributeBuilder customBuilder); // 0x1012BE80 + public void SetCustomAttribute(ConstructorInfo con, byte[] binaryAttribute); // 0x1012BFE0 + private Exception not_supported(); // 0x1012C380 + public override string ToString(); // 0x100EF0C0 + public override bool Equals(object o); // 0x1012B190 + public override int GetHashCode(); // 0x1012B770 + public override Type MakeArrayType(); // 0x1012BC90 + public override Type MakeArrayType(int rank); // 0x1012BCE0 + public override Type MakeByRefType(); // 0x1012BD60 + public override Type MakeGenericType(Type[] typeArguments); // 0x1012BDB0 + public override Type MakePointerType(); // 0x1012BDC0 +} + +// Namespace: System.Reflection.Emit +internal struct ILExceptionBlock // TypeDefIndex: 509 +{ + // Fields + public const int CATCH = 0; // 0x00 + public const int FILTER = 1; // 0x00 + public const int FINALLY = 2; // 0x00 + public const int FAULT = 4; // 0x00 + public const int FILTER_START = -1; // 0x00 + internal Type extype; // 0x08 + internal int type; // 0x0C + internal int start; // 0x10 + internal int len; // 0x14 + internal int filter_offset; // 0x18 + + // Methods + internal void Debug(); // 0x10003900 +} + +// Namespace: System.Reflection.Emit +internal struct ILExceptionInfo // TypeDefIndex: 510 +{ + // Fields + private ILExceptionBlock[] handlers; // 0x08 + internal int start; // 0x0C + private int len; // 0x10 + internal Label end; // 0x14 + + // Methods + internal int NumHandlers(); // 0x100079B0 + internal void AddCatch(Type extype, int offset); // 0x100078F0 + internal void AddFinally(int offset); // 0x10007920 + internal void AddFault(int offset); // 0x10007900 + internal void AddFilter(int offset); // 0x10007910 + internal void End(int offset); // 0x10007930 + internal int LastClauseType(); // 0x10007970 + internal void PatchFilterClause(int start); // 0x100079D0 + internal void Debug(int b); // 0x10003900 + private void add_block(int offset); // 0x100079E0 +} + +// Namespace: System.Reflection.Emit +internal struct ILTokenInfo // TypeDefIndex: 511 +{ + // Fields + public MemberInfo member; // 0x08 + public int code_pos; // 0x0C + +} + +// Namespace: System.Reflection.Emit +internal interface TokenGenerator // TypeDefIndex: 512 +{ + // Methods + int GetToken(string str); + int GetToken(MemberInfo member); + int GetToken(MethodInfo method, Type[] opt_param_types); + int GetToken(SignatureHelper helper); +} + +// Namespace: System.Reflection.Emit +public class ILGenerator : _ILGenerator // TypeDefIndex: 513 +{ + // Fields + private const int defaultFixupSize = 4; // 0x00 + private const int defaultLabelsSize = 4; // 0x00 + private const int defaultExceptionStackSize = 2; // 0x00 + private static readonly Type void_type; // 0x00 + private byte[] code; // 0x08 + private int code_len; // 0x0C + private int max_stack; // 0x10 + private int cur_stack; // 0x14 + private LocalBuilder[] locals; // 0x18 + private ILExceptionInfo[] ex_handlers; // 0x1C + private int num_token_fixups; // 0x20 + private ILTokenInfo[] token_fixups; // 0x24 + private LabelData[] labels; // 0x28 + private int num_labels; // 0x2C + private LabelFixup[] fixups; // 0x30 + private int num_fixups; // 0x34 + internal Module module; // 0x38 + private int cur_block; // 0x3C + private Stack open_blocks; // 0x40 + private TokenGenerator token_gen; // 0x44 + private ArrayList sequencePointLists; // 0x48 + private SequencePointList currentSequence; // 0x4C + + // Properties + internal bool HasDebugInfo { get; } // 0x10130350 + + // Methods + internal void .ctor(Module m, TokenGenerator token_gen, int size); // 0x10130150 + private static void .cctor(); // 0x101300F0 + private void System.Runtime.InteropServices._ILGenerator.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x1012FD90 + private void System.Runtime.InteropServices._ILGenerator.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x1012FE30 + private void System.Runtime.InteropServices._ILGenerator.GetTypeInfoCount(out uint pcTInfo); // 0x1012FDE0 + private void System.Runtime.InteropServices._ILGenerator.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x1012FE80 + private void add_token_fixup(MemberInfo mi); // 0x101301C0 + private void make_room(int nbytes); // 0x10130600 + private void emit_int(int val); // 0x10130280 + private void ll_emit(OpCode opcode); // 0x101304E0 + private static int target_len(OpCode opcode); // 0x10130680 + private void InternalEndClause(); // 0x1012FA60 + public virtual void BeginCatchBlock(Type exceptionType); // 0x1012C7E0 + public virtual void BeginExceptFilterBlock(); // 0x1012CA20 + public virtual Label BeginExceptionBlock(); // 0x1012CB00 + public virtual void BeginFaultBlock(); // 0x1012CC40 + public virtual void BeginFinallyBlock(); // 0x1012CE30 + public virtual void BeginScope(); // 0x100C5530 + public virtual LocalBuilder DeclareLocal(Type localType); // 0x1012D1C0 + public virtual LocalBuilder DeclareLocal(Type localType, bool pinned); // 0x1012D020 + public virtual Label DefineLabel(); // 0x1012D1F0 + public virtual void Emit(OpCode opcode); // 0x1012E3E0 + public virtual void Emit(OpCode opcode, byte arg); // 0x1012DCE0 + public virtual void Emit(OpCode opcode, ConstructorInfo con); // 0x1012E5F0 + public virtual void Emit(OpCode opcode, double arg); // 0x1012E6E0 + public virtual void Emit(OpCode opcode, FieldInfo field); // 0x1012EDD0 + public virtual void Emit(OpCode opcode, short arg); // 0x1012E350 + public virtual void Emit(OpCode opcode, int arg); // 0x1012EB10 + public virtual void Emit(OpCode opcode, long arg); // 0x1012E410 + public virtual void Emit(OpCode opcode, Label label); // 0x1012DD40 + public virtual void Emit(OpCode opcode, Label[] labels); // 0x1012F080 + public virtual void Emit(OpCode opcode, LocalBuilder local); // 0x1012DED0 + public virtual void Emit(OpCode opcode, MethodInfo meth); // 0x1012EB40 + private void Emit(OpCode opcode, MethodInfo method, int token); // 0x1012EA00 + public void Emit(OpCode opcode, sbyte arg); // 0x1012DCE0 + public virtual void Emit(OpCode opcode, SignatureHelper signature); // 0x1012E290 + public virtual void Emit(OpCode opcode, float arg); // 0x1012EE90 + public virtual void Emit(OpCode opcode, string str); // 0x1012E1D0 + public virtual void Emit(OpCode opcode, Type cls); // 0x1012DC70 + public virtual void EmitCall(OpCode opcode, MethodInfo methodInfo, Type[] optionalParameterTypes); // 0x1012D2B0 + public virtual void EmitCalli(OpCode opcode, CallingConvention unmanagedCallConv, Type returnType, Type[] parameterTypes); // 0x1012D630 + public virtual void EmitCalli(OpCode opcode, CallingConventions callingConvention, Type returnType, Type[] parameterTypes, Type[] optionalParameterTypes); // 0x1012D670 + public virtual void EmitWriteLine(FieldInfo fld); // 0x1012D8E0 + public virtual void EmitWriteLine(LocalBuilder localBuilder); // 0x1012D700 + public virtual void EmitWriteLine(string value); // 0x1012DB10 + public virtual void EndExceptionBlock(); // 0x1012F2A0 + public virtual void EndScope(); // 0x100C5530 + public virtual void MarkLabel(Label loc); // 0x1012FBD0 + public virtual void MarkSequencePoint(ISymbolDocumentWriter document, int startLine, int startColumn, int endLine, int endColumn); // 0x1012FCB0 + internal void GenerateDebugInfo(ISymbolWriter symbolWriter); // 0x1012F510 + public virtual void ThrowException(Type excType); // 0x1012FED0 + public virtual void UsingNamespace(string usingNamespace); // 0x101300A0 + internal void label_fixup(); // 0x10130360 + internal static int Mono_GetCurrentOffset(ILGenerator ig); // 0x1012FD70 +} + +// Namespace: +private struct LabelFixup // TypeDefIndex: 514 +{ + // Fields + public int offset; // 0x08 + public int pos; // 0x0C + public int label_idx; // 0x10 + +} + +// Namespace: +private struct LabelData // TypeDefIndex: 515 +{ + // Fields + public int addr; // 0x08 + public int maxStack; // 0x0C + + // Methods + public void .ctor(int addr, int maxStack); // 0x100075A0 +} + +// Namespace: System.Reflection.Emit +internal class SequencePointList // TypeDefIndex: 516 +{ + // Fields + private const int arrayGrow = 10; // 0x00 + private ISymbolDocumentWriter doc; // 0x08 + private SequencePoint[] points; // 0x0C + private int count; // 0x10 + + // Properties + public ISymbolDocumentWriter Document { get; } // 0x100BF0C0 + public int StartLine { get; } // 0x1017ADD0 + public int EndLine { get; } // 0x1017AD60 + public int StartColumn { get; } // 0x1017ADA0 + public int EndColumn { get; } // 0x1017AD20 + + // Methods + public void .ctor(ISymbolDocumentWriter doc); // 0x10113500 + public int[] GetOffsets(); // 0x1017AC90 + public int[] GetLines(); // 0x1017AC00 + public int[] GetColumns(); // 0x1017AA50 + public int[] GetEndLines(); // 0x1017AB70 + public int[] GetEndColumns(); // 0x1017AAE0 + public void AddSequencePoint(int offset, int line, int col, int endLine, int endCol); // 0x1017A970 +} + +// Namespace: System.Reflection.Emit +internal struct SequencePoint // TypeDefIndex: 517 +{ + // Fields + public int Offset; // 0x08 + public int Line; // 0x0C + public int Col; // 0x10 + public int EndLine; // 0x14 + public int EndCol; // 0x18 + +} + +// Namespace: System.Reflection.Emit +[Serializable] +public struct Label // TypeDefIndex: 518 +{ + // Fields + internal int label; // 0x08 + + // Methods + internal void .ctor(int val); // 0x10005950 + public override bool Equals(object obj); // 0x10007A30 + public bool Equals(Label obj); // 0x10005A50 + public override int GetHashCode(); // 0x10006260 + public static bool op_Equality(Label a, Label b); // 0x100F8860 + public static bool op_Inequality(Label a, Label b); // 0x100FCEC0 +} + +// Namespace: System.Reflection.Emit +public sealed class LocalBuilder : LocalVariableInfo, _LocalBuilder // TypeDefIndex: 519 +{ + // Fields + private string name; // 0x10 + internal ILGenerator ilgen; // 0x14 + private int startOffset; // 0x18 + private int endOffset; // 0x1C + + // Properties + public override Type LocalType { get; } // 0x100BF0C0 + public override bool IsPinned { get; } // 0x100F8910 + public override int LocalIndex { get; } // 0x101308F0 + internal string Name { get; } // 0x100BFC20 + internal int StartOffset { get; } // 0x100EE580 + internal int EndOffset { get; } // 0x100F85F0 + + // Methods + internal void .ctor(Type t, ILGenerator ilgen); // 0x101308C0 + private void System.Runtime.InteropServices._LocalBuilder.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x10130780 + private void System.Runtime.InteropServices._LocalBuilder.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x10130820 + private void System.Runtime.InteropServices._LocalBuilder.GetTypeInfoCount(out uint pcTInfo); // 0x101307D0 + private void System.Runtime.InteropServices._LocalBuilder.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x10130870 + public void SetLocalSymInfo(string name, int startOffset, int endOffset); // 0x10130760 + public void SetLocalSymInfo(string name); // 0x10130740 + internal static int Mono_GetLocalIndex(LocalBuilder builder); // 0x10130720 +} + +// Namespace: System.Reflection.Emit +public sealed class MethodBuilder : MethodInfo, _MethodBuilder // TypeDefIndex: 520 +{ + // Fields + private RuntimeMethodHandle mhandle; // 0x08 + private Type rtype; // 0x0C + internal Type[] parameters; // 0x10 + private MethodAttributes attrs; // 0x14 + private MethodImplAttributes iattrs; // 0x18 + private string name; // 0x1C + private int table_idx; // 0x20 + private byte[] code; // 0x24 + private ILGenerator ilgen; // 0x28 + private TypeBuilder type; // 0x2C + internal ParameterBuilder[] pinfo; // 0x30 + private CustomAttributeBuilder[] cattrs; // 0x34 + private MethodInfo override_method; // 0x38 + private string pi_dll; // 0x3C + private string pi_entry; // 0x40 + private CharSet charset; // 0x44 + private uint extra_flags; // 0x48 + private CallingConvention native_cc; // 0x4C + private CallingConventions call_conv; // 0x50 + private bool init_locals; // 0x54 + private IntPtr generic_container; // 0x58 + internal GenericTypeParameterBuilder[] generic_params; // 0x5C + private Type[] returnModReq; // 0x60 + private Type[] returnModOpt; // 0x64 + private Type[][] paramModReq; // 0x68 + private Type[][] paramModOpt; // 0x6C + private RefEmitPermissionSet[] permissions; // 0x70 + private static Dictionary`2 <>f__switch$map1D; // 0x00 + + // Properties + public override bool ContainsGenericParameters { get; } // 0x10132820 + public bool InitLocals { get; set; } // 0x10132870 0x10132990 + internal TypeBuilder TypeBuilder { get; } // 0x100EB200 + public override RuntimeMethodHandle MethodHandle { get; } // 0x10132890 + public override Type ReturnType { get; } // 0x100C5B30 + public override Type ReflectedType { get; } // 0x100EB200 + public override Type DeclaringType { get; } // 0x100EB200 + public override string Name { get; } // 0x100F85F0 + public override MethodAttributes Attributes { get; } // 0x100EF0C0 + public override ICustomAttributeProvider ReturnTypeCustomAttributes { get; } // 0x100C5600 + public override CallingConventions CallingConvention { get; } // 0x10132810 + public string Signature { get; } // 0x101328D0 + internal bool BestFitMapping { set; } // 0x10132950 + internal bool ThrowOnUnmappableChar { set; } // 0x101329C0 + internal bool ExactSpelling { set; } // 0x10132970 + internal bool SetLastError { set; } // 0x101329A0 + public override bool IsGenericMethodDefinition { get; } // 0x10132880 + public override bool IsGenericMethod { get; } // 0x10132880 + public override Module Module { get; } // 0x100EF1C0 + + // Methods + internal void .ctor(TypeBuilder tb, string name, MethodAttributes attributes, CallingConventions callingConvention, Type returnType, Type[] returnModReq, Type[] returnModOpt, Type[] parameterTypes, Type[][] paramModReq, Type[][] paramModOpt); // 0x10132490 + internal void .ctor(TypeBuilder tb, string name, MethodAttributes attributes, CallingConventions callingConvention, Type returnType, Type[] returnModReq, Type[] returnModOpt, Type[] parameterTypes, Type[][] paramModReq, Type[][] paramModOpt, string dllName, string entryName, CallingConvention nativeCConv, CharSet nativeCharset); // 0x10132440 + private void System.Runtime.InteropServices._MethodBuilder.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x101320F0 + private void System.Runtime.InteropServices._MethodBuilder.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x10132190 + private void System.Runtime.InteropServices._MethodBuilder.GetTypeInfoCount(out uint pcTInfo); // 0x10132140 + private void System.Runtime.InteropServices._MethodBuilder.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x101321E0 + public MethodToken GetToken(); // 0x10131590 + public override MethodInfo GetBaseDefinition(); // 0x100F7810 + public override MethodImplAttributes GetMethodImplementationFlags(); // 0x100EE580 + public override ParameterInfo[] GetParameters(); // 0x10131440 + internal override int GetParameterCount(); // 0x100EE5B0 + public Module GetModule(); // 0x10131420 + public void CreateMethodBody(byte[] il, int count); // 0x10130900 + public override object Invoke(object obj, BindingFlags invokeAttr, Binder binder, object[] parameters, CultureInfo culture); // 0x101315A0 + public override bool IsDefined(Type attributeType, bool inherit); // 0x101315E0 + public override object[] GetCustomAttributes(bool inherit); // 0x10130F10 + public override object[] GetCustomAttributes(Type attributeType, bool inherit); // 0x10130E80 + public ILGenerator GetILGenerator(); // 0x101312C0 + public ILGenerator GetILGenerator(int size); // 0x10131150 + public ParameterBuilder DefineParameter(int position, ParameterAttributes attributes, string strParamName); // 0x10130B50 + internal void check_override(); // 0x10132640 + internal void fixup(); // 0x10132700 + internal void GenerateDebugInfo(ISymbolWriter symbolWriter); // 0x10130CC0 + public void SetCustomAttribute(CustomAttributeBuilder customBuilder); // 0x101317A0 + public void SetCustomAttribute(ConstructorInfo con, byte[] binaryAttribute); // 0x10131700 + public void SetImplementationFlags(MethodImplAttributes attributes); // 0x10131E80 + public void AddDeclarativeSecurity(SecurityAction action, PermissionSet pset); // 0x100C5530 + public void SetMarshal(UnmanagedMarshal unmanagedMarshal); // 0x10131EA0 + public void SetSymCustomAttribute(string name, byte[] data); // 0x10132090 + public override string ToString(); // 0x10132230 + public override bool Equals(object obj); // 0x10123830 + public override int GetHashCode(); // 0x10131120 + internal override int get_next_table_index(object obj, int table, bool inc); // 0x10132920 + internal void set_override(MethodInfo mdecl); // 0x100EB290 + private void RejectIfCreated(); // 0x10131690 + private Exception NotSupported(); // 0x10131640 + public override MethodInfo MakeGenericMethod(Type[] typeArguments); // 0x10131620 + public override MethodInfo GetGenericMethodDefinition(); // 0x101310C0 + public override Type[] GetGenericArguments(); // 0x10130FA0 + public GenericTypeParameterBuilder[] DefineGenericParameters(string[] names); // 0x10130A00 + public void SetReturnType(Type returnType); // 0x100C5B50 + public void SetParameters(Type[] parameterTypes); // 0x10131F00 + public void SetSignature(Type returnType, Type[] returnTypeRequiredCustomModifiers, Type[] returnTypeOptionalCustomModifiers, Type[] parameterTypes, Type[][] parameterTypeRequiredCustomModifiers, Type[][] parameterTypeOptionalCustomModifiers); // 0x10131FB0 +} + +// Namespace: System.Reflection.Emit +internal class MethodOnTypeBuilderInst : MethodInfo // TypeDefIndex: 521 +{ + // Fields + private MonoGenericClass instantiation; // 0x08 + internal MethodBuilder mb; // 0x0C + private Type[] method_arguments; // 0x10 + private MethodOnTypeBuilderInst generic_method_definition; // 0x14 + + // Properties + public override Type DeclaringType { get; } // 0x100BF0C0 + public override string Name { get; } // 0x101334A0 + public override Type ReflectedType { get; } // 0x100BF0C0 + public override Type ReturnType { get; } // 0x10133510 + public override int MetadataToken { get; } // 0x10133360 + public override RuntimeMethodHandle MethodHandle { get; } // 0x10133450 + public override MethodAttributes Attributes { get; } // 0x100EFBB0 + public override CallingConventions CallingConvention { get; } // 0x10133230 + public override bool ContainsGenericParameters { get; } // 0x10133250 + public override bool IsGenericMethodDefinition { get; } // 0x10133310 + public override bool IsGenericMethod { get; } // 0x10133340 + public override ICustomAttributeProvider ReturnTypeCustomAttributes { get; } // 0x101334C0 + + // Methods + public void .ctor(MonoGenericClass instantiation, MethodBuilder mb); // 0x101237E0 + internal void .ctor(MethodOnTypeBuilderInst gmd, Type[] typeArguments); // 0x101331B0 + public override bool IsDefined(Type attributeType, bool inherit); // 0x10132DE0 + public override object[] GetCustomAttributes(bool inherit); // 0x10132A80 + public override object[] GetCustomAttributes(Type attributeType, bool inherit); // 0x10132A30 + public override string ToString(); // 0x10132FC0 + public override MethodImplAttributes GetMethodImplementationFlags(); // 0x100EF7F0 + public override ParameterInfo[] GetParameters(); // 0x10132B70 + internal override int GetParameterCount(); // 0x100EF810 + public override object Invoke(object obj, BindingFlags invokeAttr, Binder binder, object[] parameters, CultureInfo culture); // 0x10132D90 + public override MethodInfo MakeGenericMethod(Type[] typeArguments); // 0x10132E30 + public override Type[] GetGenericArguments(); // 0x10132AD0 + public override MethodInfo GetGenericMethodDefinition(); // 0x10132B50 + public override MethodInfo GetBaseDefinition(); // 0x101329E0 +} + +// Namespace: System.Reflection.Emit +public sealed class MethodRental : _MethodRental // TypeDefIndex: 522 +{ + // Fields + public const int JitImmediate = 1; // 0x00 + public const int JitOnDemand = 0; // 0x00 + + // Methods + private void .ctor(); // 0x100BF000 + private void System.Runtime.InteropServices._MethodRental.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x10133770 + private void System.Runtime.InteropServices._MethodRental.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x10133810 + private void System.Runtime.InteropServices._MethodRental.GetTypeInfoCount(out uint pcTInfo); // 0x101337C0 + private void System.Runtime.InteropServices._MethodRental.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x10133860 + public static void SwapMethodBody(Type cls, int methodtoken, IntPtr rgIL, int methodSize, int flags); // 0x10133600 +} + +// Namespace: System.Reflection.Emit +[Serializable] +public struct MethodToken // TypeDefIndex: 523 +{ + // Fields + internal int tokValue; // 0x08 + public static readonly MethodToken Empty; // 0x00 + + // Properties + public int Token { get; } // 0x10003A80 + + // Methods + internal void .ctor(int val); // 0x10005950 + private static void .cctor(); // 0x101338B0 + public override bool Equals(object obj); // 0x10007AB0 + public bool Equals(MethodToken obj); // 0x10005A50 + public override int GetHashCode(); // 0x10003A80 + public static bool op_Equality(MethodToken a, MethodToken b); // 0x101338E0 + public static bool op_Inequality(MethodToken a, MethodToken b); // 0x10133940 +} + +// Namespace: System.Reflection.Emit +public class ModuleBuilder : Module, _ModuleBuilder // TypeDefIndex: 524 +{ + // Fields + private UIntPtr dynamic_image; // 0x24 + private int num_types; // 0x28 + private TypeBuilder[] types; // 0x2C + private CustomAttributeBuilder[] cattrs; // 0x30 + private byte[] guid; // 0x34 + private int table_idx; // 0x38 + internal AssemblyBuilder assemblyb; // 0x3C + private MethodBuilder[] global_methods; // 0x40 + private FieldBuilder[] global_fields; // 0x44 + private bool is_main; // 0x48 + private MonoResource[] resources; // 0x4C + private TypeBuilder global_type; // 0x50 + private Type global_type_created; // 0x54 + private Hashtable name_cache; // 0x58 + private Hashtable us_string_cache; // 0x5C + private int[] table_indexes; // 0x60 + private bool transient; // 0x64 + private ModuleBuilderTokenGenerator token_gen; // 0x68 + private Hashtable resource_writers; // 0x6C + private ISymbolWriter symbolWriter; // 0x70 + private static readonly char[] type_modifiers; // 0x00 + + // Properties + public override string FullyQualifiedName { get; } // 0x100BFC20 + internal string FileName { get; } // 0x100BFC20 + internal bool IsMain { set; } // 0x10137540 + + // Methods + internal void .ctor(AssemblyBuilder assb, string name, string fullyqname, bool emitSymbolInfo, bool transient); // 0x10136C60 + private static void .cctor(); // 0x10136BC0 + private void System.Runtime.InteropServices._ModuleBuilder.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x10136A60 + private void System.Runtime.InteropServices._ModuleBuilder.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x10136B00 + private void System.Runtime.InteropServices._ModuleBuilder.GetTypeInfoCount(out uint pcTInfo); // 0x10136AB0 + private void System.Runtime.InteropServices._ModuleBuilder.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x10136B50 + private static void basic_init(ModuleBuilder ab); // 0x101371B0 + private static void set_wrappers_type(ModuleBuilder mb, Type ab); // 0x10137550 + public bool IsTransient(); // 0x10135FF0 + public void CreateGlobalFunctions(); // 0x10133BE0 + public FieldBuilder DefineInitializedData(string name, byte[] data, FieldAttributes attributes); // 0x10134220 + public FieldBuilder DefineUninitializedData(string name, int size, FieldAttributes attributes); // 0x10134BF0 + private void addGlobalMethod(MethodBuilder mb); // 0x10137080 + public MethodBuilder DefineGlobalMethod(string name, MethodAttributes attributes, Type returnType, Type[] parameterTypes); // 0x10134110 + public MethodBuilder DefineGlobalMethod(string name, MethodAttributes attributes, CallingConventions callingConvention, Type returnType, Type[] parameterTypes); // 0x10133EE0 + public MethodBuilder DefineGlobalMethod(string name, MethodAttributes attributes, CallingConventions callingConvention, Type returnType, Type[] requiredReturnTypeCustomModifiers, Type[] optionalReturnTypeCustomModifiers, Type[] parameterTypes, Type[][] requiredParameterTypeCustomModifiers, Type[][] optionalParameterTypeCustomModifiers); // 0x10134000 + public MethodBuilder DefinePInvokeMethod(string name, string dllName, MethodAttributes attributes, CallingConventions callingConvention, Type returnType, Type[] parameterTypes, CallingConvention nativeCallConv, CharSet nativeCharSet); // 0x10134600 + public MethodBuilder DefinePInvokeMethod(string name, string dllName, string entryName, MethodAttributes attributes, CallingConventions callingConvention, Type returnType, Type[] parameterTypes, CallingConvention nativeCallConv, CharSet nativeCharSet); // 0x101344F0 + public TypeBuilder DefineType(string name); // 0x10134AF0 + public TypeBuilder DefineType(string name, TypeAttributes attr); // 0x10134980 + public TypeBuilder DefineType(string name, TypeAttributes attr, Type parent); // 0x10134950 + private void AddType(TypeBuilder tb); // 0x10133B10 + private TypeBuilder DefineType(string name, TypeAttributes attr, Type parent, Type[] interfaces, PackingSize packingSize, int typesize); // 0x10134A10 + internal void RegisterTypeName(TypeBuilder tb, string name); // 0x10136060 + internal TypeBuilder GetRegisteredType(string name); // 0x101354F0 + public TypeBuilder DefineType(string name, TypeAttributes attr, Type parent, Type[] interfaces); // 0x10134B60 + public TypeBuilder DefineType(string name, TypeAttributes attr, Type parent, int typesize); // 0x10134950 + public TypeBuilder DefineType(string name, TypeAttributes attr, Type parent, PackingSize packsize); // 0x10134B90 + public TypeBuilder DefineType(string name, TypeAttributes attr, Type parent, PackingSize packingSize, int typesize); // 0x10134BC0 + public MethodInfo GetArrayMethod(Type arrayClass, string methodName, CallingConventions callingConvention, Type returnType, Type[] parameterTypes); // 0x10135150 + public EnumBuilder DefineEnum(string name, TypeAttributes visibility, Type underlyingType); // 0x10133D60 + public override Type GetType(string className); // 0x10135BF0 + public override Type GetType(string className, bool ignoreCase); // 0x10135E90 + private TypeBuilder search_in_array(TypeBuilder[] arr, int validElementsInArray, string className); // 0x10137340 + private TypeBuilder search_nested_in_array(TypeBuilder[] arr, int validElementsInArray, string className); // 0x10137440 + private static Type create_modified_type(TypeBuilder tb, string modifiers); // 0x101371D0 + private TypeBuilder GetMaybeNested(TypeBuilder t, string className); // 0x10135320 + public override Type GetType(string className, bool throwOnError, bool ignoreCase); // 0x10135C20 + internal int get_next_table_index(object obj, int table, bool inc); // 0x10137250 + public void SetCustomAttribute(CustomAttributeBuilder customBuilder); // 0x10136690 + public void SetCustomAttribute(ConstructorInfo con, byte[] binaryAttribute); // 0x101367C0 + public ISymbolWriter GetSymWriter(); // 0x101356C0 + public ISymbolDocumentWriter DefineDocument(string url, Guid language, Guid languageVendor, Guid documentType); // 0x10133CA0 + public override Type[] GetTypes(); // 0x10135EC0 + public IResourceWriter DefineResource(string name, string description, ResourceAttributes attribute); // 0x10134710 + public IResourceWriter DefineResource(string name, string description); // 0x10134930 + public void DefineUnmanagedResource(byte[] resource); // 0x10134FB0 + public void DefineUnmanagedResource(string resourceFileName); // 0x10134E40 + public void DefineManifestResource(string name, Stream stream, ResourceAttributes attribute); // 0x10134310 + public void SetSymCustomAttribute(string name, byte[] data); // 0x10136920 + public void SetUserEntryPoint(MethodInfo entryPoint); // 0x10136970 + public MethodToken GetMethodToken(MethodInfo method); // 0x101353E0 + public MethodToken GetArrayMethodToken(Type arrayClass, string methodName, CallingConventions callingConvention, Type returnType, Type[] parameterTypes); // 0x10135030 + public MethodToken GetConstructorToken(ConstructorInfo con); // 0x101351A0 + public FieldToken GetFieldToken(FieldInfo field); // 0x10135240 + public SignatureToken GetSignatureToken(byte[] sigBytes, int sigLength); // 0x10135560 + public SignatureToken GetSignatureToken(SignatureHelper sigHelper); // 0x101355B0 + public StringToken GetStringConstant(string str); // 0x10135650 + public TypeToken GetTypeToken(Type type); // 0x10135AA0 + public TypeToken GetTypeToken(string name); // 0x10135930 + private static int getUSIndex(ModuleBuilder mb, string str); // 0x10137230 + private static int getToken(ModuleBuilder mb, object obj); // 0x10137210 + private static int getMethodToken(ModuleBuilder mb, MethodInfo method, Type[] opt_param_types); // 0x101371F0 + internal int GetToken(string str); // 0x10135730 + internal int GetToken(MemberInfo member); // 0x10135880 + internal int GetToken(MethodInfo method, Type[] opt_param_types); // 0x101358D0 + internal int GetToken(SignatureHelper helper); // 0x10135830 + internal void RegisterToken(object obj, int token); // 0x10136040 + internal TokenGenerator GetTokenGenerator(); // 0x101356D0 + private static void build_metadata(ModuleBuilder mb); // 0x101371C0 + private void WriteToFile(IntPtr handle); // 0x10136BA0 + internal void Save(); // 0x101360A0 + internal void CreateGlobalType(); // 0x10133C50 + internal override Guid GetModuleVersionId(); // 0x101354C0 + internal static Guid Mono_GetGuid(ModuleBuilder mb); // 0x10136000 +} + +// Namespace: System.Reflection.Emit +internal class ModuleBuilderTokenGenerator : TokenGenerator // TypeDefIndex: 525 +{ + // Fields + private ModuleBuilder mb; // 0x08 + + // Methods + public void .ctor(ModuleBuilder mb); // 0x10113500 + public int GetToken(string str); // 0x10133A80 + public int GetToken(MemberInfo member); // 0x10133AB0 + public int GetToken(MethodInfo method, Type[] opt_param_types); // 0x10133A10 + public int GetToken(SignatureHelper helper); // 0x101339B0 +} + +// Namespace: System.Reflection +internal class MonoArrayMethod : MethodInfo // TypeDefIndex: 526 +{ + // Fields + internal RuntimeMethodHandle mhandle; // 0x08 + internal Type parent; // 0x0C + internal Type ret; // 0x10 + internal Type[] parameters; // 0x14 + internal string name; // 0x18 + internal int table_idx; // 0x1C + internal CallingConventions call_conv; // 0x20 + + // Properties + public override Type ReturnType { get; } // 0x100BFC20 + public override ICustomAttributeProvider ReturnTypeCustomAttributes { get; } // 0x100C5600 + public override RuntimeMethodHandle MethodHandle { get; } // 0x100BF0C0 + public override MethodAttributes Attributes { get; } // 0x100C5600 + public override Type ReflectedType { get; } // 0x100C5B30 + public override Type DeclaringType { get; } // 0x100C5B30 + public override string Name { get; } // 0x100EE580 + + // Methods + internal void .ctor(Type arrayClass, string methodName, CallingConventions callingConvention, Type returnType, Type[] parameterTypes); // 0x10174020 + public override MethodInfo GetBaseDefinition(); // 0x100F7810 + public override MethodImplAttributes GetMethodImplementationFlags(); // 0x100C5600 + public override ParameterInfo[] GetParameters(); // 0x10173A00 + public override object Invoke(object obj, BindingFlags invokeAttr, Binder binder, object[] parameters, CultureInfo culture); // 0x10173A30 + public override bool IsDefined(Type attributeType, bool inherit); // 0x10173A80 + public override object[] GetCustomAttributes(bool inherit); // 0x101739B0 + public override object[] GetCustomAttributes(Type attributeType, bool inherit); // 0x10173960 + public override string ToString(); // 0x10173AD0 +} + +// Namespace: System.Reflection.Emit +public struct OpCode // TypeDefIndex: 527 +{ + // Fields + internal byte op1; // 0x00 + internal byte op2; // 0x00 + private byte push; // 0x00 + private byte pop; // 0x00 + private byte size; // 0x00 + private byte type; // 0x00 + private byte args; // 0x00 + private byte flow; // 0x00 + + // Properties + public string Name { get; } // 0x10007D50 + public int Size { get; } // 0x10007D80 + public OpCodeType OpCodeType { get; } // 0x10007D60 + public OperandType OperandType { get; } // 0x10007D70 + public FlowControl FlowControl { get; } // 0x10007D40 + public StackBehaviour StackBehaviourPop { get; } // 0x10007D90 + public StackBehaviour StackBehaviourPush { get; } // 0x10007DA0 + public short Value { get; } // 0x10007DB0 + + // Methods + internal void .ctor(int p, int q); // 0x10007D00 + public override int GetHashCode(); // 0x10007CB0 + public override bool Equals(object obj); // 0x10007C00 + public bool Equals(OpCode obj); // 0x10007C80 + public override string ToString(); // 0x10007CE0 + public static bool op_Equality(OpCode a, OpCode b); // 0x1013C240 + public static bool op_Inequality(OpCode a, OpCode b); // 0x1013C260 +} + +// Namespace: System.Reflection.Emit +internal class OpCodeNames // TypeDefIndex: 528 +{ + // Fields + internal static readonly string[] names; // 0x00 + + // Methods + public void .ctor(); // 0x100BF000 + private static void .cctor(); // 0x101375D0 +} + +// Namespace: System.Reflection.Emit +[Serializable] +public enum OpCodeType // TypeDefIndex: 529 +{ + Annotation = 0, + Macro = 1, + Nternal = 2, + Objmodel = 3, + Prefix = 4, + Primitive = 5 +} + +// Namespace: System.Reflection.Emit +public class OpCodes // TypeDefIndex: 530 +{ + // Fields + public static readonly OpCode Nop; // 0x00 + public static readonly OpCode Break; // 0x08 + public static readonly OpCode Ldarg_0; // 0x10 + public static readonly OpCode Ldarg_1; // 0x18 + public static readonly OpCode Ldarg_2; // 0x20 + public static readonly OpCode Ldarg_3; // 0x28 + public static readonly OpCode Ldloc_0; // 0x30 + public static readonly OpCode Ldloc_1; // 0x38 + public static readonly OpCode Ldloc_2; // 0x40 + public static readonly OpCode Ldloc_3; // 0x48 + public static readonly OpCode Stloc_0; // 0x50 + public static readonly OpCode Stloc_1; // 0x58 + public static readonly OpCode Stloc_2; // 0x60 + public static readonly OpCode Stloc_3; // 0x68 + public static readonly OpCode Ldarg_S; // 0x70 + public static readonly OpCode Ldarga_S; // 0x78 + public static readonly OpCode Starg_S; // 0x80 + public static readonly OpCode Ldloc_S; // 0x88 + public static readonly OpCode Ldloca_S; // 0x90 + public static readonly OpCode Stloc_S; // 0x98 + public static readonly OpCode Ldnull; // 0xA0 + public static readonly OpCode Ldc_I4_M1; // 0xA8 + public static readonly OpCode Ldc_I4_0; // 0xB0 + public static readonly OpCode Ldc_I4_1; // 0xB8 + public static readonly OpCode Ldc_I4_2; // 0xC0 + public static readonly OpCode Ldc_I4_3; // 0xC8 + public static readonly OpCode Ldc_I4_4; // 0xD0 + public static readonly OpCode Ldc_I4_5; // 0xD8 + public static readonly OpCode Ldc_I4_6; // 0xE0 + public static readonly OpCode Ldc_I4_7; // 0xE8 + public static readonly OpCode Ldc_I4_8; // 0xF0 + public static readonly OpCode Ldc_I4_S; // 0xF8 + public static readonly OpCode Ldc_I4; // 0x100 + public static readonly OpCode Ldc_I8; // 0x108 + public static readonly OpCode Ldc_R4; // 0x110 + public static readonly OpCode Ldc_R8; // 0x118 + public static readonly OpCode Dup; // 0x120 + public static readonly OpCode Pop; // 0x128 + public static readonly OpCode Jmp; // 0x130 + public static readonly OpCode Call; // 0x138 + public static readonly OpCode Calli; // 0x140 + public static readonly OpCode Ret; // 0x148 + public static readonly OpCode Br_S; // 0x150 + public static readonly OpCode Brfalse_S; // 0x158 + public static readonly OpCode Brtrue_S; // 0x160 + public static readonly OpCode Beq_S; // 0x168 + public static readonly OpCode Bge_S; // 0x170 + public static readonly OpCode Bgt_S; // 0x178 + public static readonly OpCode Ble_S; // 0x180 + public static readonly OpCode Blt_S; // 0x188 + public static readonly OpCode Bne_Un_S; // 0x190 + public static readonly OpCode Bge_Un_S; // 0x198 + public static readonly OpCode Bgt_Un_S; // 0x1A0 + public static readonly OpCode Ble_Un_S; // 0x1A8 + public static readonly OpCode Blt_Un_S; // 0x1B0 + public static readonly OpCode Br; // 0x1B8 + public static readonly OpCode Brfalse; // 0x1C0 + public static readonly OpCode Brtrue; // 0x1C8 + public static readonly OpCode Beq; // 0x1D0 + public static readonly OpCode Bge; // 0x1D8 + public static readonly OpCode Bgt; // 0x1E0 + public static readonly OpCode Ble; // 0x1E8 + public static readonly OpCode Blt; // 0x1F0 + public static readonly OpCode Bne_Un; // 0x1F8 + public static readonly OpCode Bge_Un; // 0x200 + public static readonly OpCode Bgt_Un; // 0x208 + public static readonly OpCode Ble_Un; // 0x210 + public static readonly OpCode Blt_Un; // 0x218 + public static readonly OpCode Switch; // 0x220 + public static readonly OpCode Ldind_I1; // 0x228 + public static readonly OpCode Ldind_U1; // 0x230 + public static readonly OpCode Ldind_I2; // 0x238 + public static readonly OpCode Ldind_U2; // 0x240 + public static readonly OpCode Ldind_I4; // 0x248 + public static readonly OpCode Ldind_U4; // 0x250 + public static readonly OpCode Ldind_I8; // 0x258 + public static readonly OpCode Ldind_I; // 0x260 + public static readonly OpCode Ldind_R4; // 0x268 + public static readonly OpCode Ldind_R8; // 0x270 + public static readonly OpCode Ldind_Ref; // 0x278 + public static readonly OpCode Stind_Ref; // 0x280 + public static readonly OpCode Stind_I1; // 0x288 + public static readonly OpCode Stind_I2; // 0x290 + public static readonly OpCode Stind_I4; // 0x298 + public static readonly OpCode Stind_I8; // 0x2A0 + public static readonly OpCode Stind_R4; // 0x2A8 + public static readonly OpCode Stind_R8; // 0x2B0 + public static readonly OpCode Add; // 0x2B8 + public static readonly OpCode Sub; // 0x2C0 + public static readonly OpCode Mul; // 0x2C8 + public static readonly OpCode Div; // 0x2D0 + public static readonly OpCode Div_Un; // 0x2D8 + public static readonly OpCode Rem; // 0x2E0 + public static readonly OpCode Rem_Un; // 0x2E8 + public static readonly OpCode And; // 0x2F0 + public static readonly OpCode Or; // 0x2F8 + public static readonly OpCode Xor; // 0x300 + public static readonly OpCode Shl; // 0x308 + public static readonly OpCode Shr; // 0x310 + public static readonly OpCode Shr_Un; // 0x318 + public static readonly OpCode Neg; // 0x320 + public static readonly OpCode Not; // 0x328 + public static readonly OpCode Conv_I1; // 0x330 + public static readonly OpCode Conv_I2; // 0x338 + public static readonly OpCode Conv_I4; // 0x340 + public static readonly OpCode Conv_I8; // 0x348 + public static readonly OpCode Conv_R4; // 0x350 + public static readonly OpCode Conv_R8; // 0x358 + public static readonly OpCode Conv_U4; // 0x360 + public static readonly OpCode Conv_U8; // 0x368 + public static readonly OpCode Callvirt; // 0x370 + public static readonly OpCode Cpobj; // 0x378 + public static readonly OpCode Ldobj; // 0x380 + public static readonly OpCode Ldstr; // 0x388 + public static readonly OpCode Newobj; // 0x390 + public static readonly OpCode Castclass; // 0x398 + public static readonly OpCode Isinst; // 0x3A0 + public static readonly OpCode Conv_R_Un; // 0x3A8 + public static readonly OpCode Unbox; // 0x3B0 + public static readonly OpCode Throw; // 0x3B8 + public static readonly OpCode Ldfld; // 0x3C0 + public static readonly OpCode Ldflda; // 0x3C8 + public static readonly OpCode Stfld; // 0x3D0 + public static readonly OpCode Ldsfld; // 0x3D8 + public static readonly OpCode Ldsflda; // 0x3E0 + public static readonly OpCode Stsfld; // 0x3E8 + public static readonly OpCode Stobj; // 0x3F0 + public static readonly OpCode Conv_Ovf_I1_Un; // 0x3F8 + public static readonly OpCode Conv_Ovf_I2_Un; // 0x400 + public static readonly OpCode Conv_Ovf_I4_Un; // 0x408 + public static readonly OpCode Conv_Ovf_I8_Un; // 0x410 + public static readonly OpCode Conv_Ovf_U1_Un; // 0x418 + public static readonly OpCode Conv_Ovf_U2_Un; // 0x420 + public static readonly OpCode Conv_Ovf_U4_Un; // 0x428 + public static readonly OpCode Conv_Ovf_U8_Un; // 0x430 + public static readonly OpCode Conv_Ovf_I_Un; // 0x438 + public static readonly OpCode Conv_Ovf_U_Un; // 0x440 + public static readonly OpCode Box; // 0x448 + public static readonly OpCode Newarr; // 0x450 + public static readonly OpCode Ldlen; // 0x458 + public static readonly OpCode Ldelema; // 0x460 + public static readonly OpCode Ldelem_I1; // 0x468 + public static readonly OpCode Ldelem_U1; // 0x470 + public static readonly OpCode Ldelem_I2; // 0x478 + public static readonly OpCode Ldelem_U2; // 0x480 + public static readonly OpCode Ldelem_I4; // 0x488 + public static readonly OpCode Ldelem_U4; // 0x490 + public static readonly OpCode Ldelem_I8; // 0x498 + public static readonly OpCode Ldelem_I; // 0x4A0 + public static readonly OpCode Ldelem_R4; // 0x4A8 + public static readonly OpCode Ldelem_R8; // 0x4B0 + public static readonly OpCode Ldelem_Ref; // 0x4B8 + public static readonly OpCode Stelem_I; // 0x4C0 + public static readonly OpCode Stelem_I1; // 0x4C8 + public static readonly OpCode Stelem_I2; // 0x4D0 + public static readonly OpCode Stelem_I4; // 0x4D8 + public static readonly OpCode Stelem_I8; // 0x4E0 + public static readonly OpCode Stelem_R4; // 0x4E8 + public static readonly OpCode Stelem_R8; // 0x4F0 + public static readonly OpCode Stelem_Ref; // 0x4F8 + public static readonly OpCode Ldelem; // 0x500 + public static readonly OpCode Stelem; // 0x508 + public static readonly OpCode Unbox_Any; // 0x510 + public static readonly OpCode Conv_Ovf_I1; // 0x518 + public static readonly OpCode Conv_Ovf_U1; // 0x520 + public static readonly OpCode Conv_Ovf_I2; // 0x528 + public static readonly OpCode Conv_Ovf_U2; // 0x530 + public static readonly OpCode Conv_Ovf_I4; // 0x538 + public static readonly OpCode Conv_Ovf_U4; // 0x540 + public static readonly OpCode Conv_Ovf_I8; // 0x548 + public static readonly OpCode Conv_Ovf_U8; // 0x550 + public static readonly OpCode Refanyval; // 0x558 + public static readonly OpCode Ckfinite; // 0x560 + public static readonly OpCode Mkrefany; // 0x568 + public static readonly OpCode Ldtoken; // 0x570 + public static readonly OpCode Conv_U2; // 0x578 + public static readonly OpCode Conv_U1; // 0x580 + public static readonly OpCode Conv_I; // 0x588 + public static readonly OpCode Conv_Ovf_I; // 0x590 + public static readonly OpCode Conv_Ovf_U; // 0x598 + public static readonly OpCode Add_Ovf; // 0x5A0 + public static readonly OpCode Add_Ovf_Un; // 0x5A8 + public static readonly OpCode Mul_Ovf; // 0x5B0 + public static readonly OpCode Mul_Ovf_Un; // 0x5B8 + public static readonly OpCode Sub_Ovf; // 0x5C0 + public static readonly OpCode Sub_Ovf_Un; // 0x5C8 + public static readonly OpCode Endfinally; // 0x5D0 + public static readonly OpCode Leave; // 0x5D8 + public static readonly OpCode Leave_S; // 0x5E0 + public static readonly OpCode Stind_I; // 0x5E8 + public static readonly OpCode Conv_U; // 0x5F0 + public static readonly OpCode Prefix7; // 0x5F8 + public static readonly OpCode Prefix6; // 0x600 + public static readonly OpCode Prefix5; // 0x608 + public static readonly OpCode Prefix4; // 0x610 + public static readonly OpCode Prefix3; // 0x618 + public static readonly OpCode Prefix2; // 0x620 + public static readonly OpCode Prefix1; // 0x628 + public static readonly OpCode Prefixref; // 0x630 + public static readonly OpCode Arglist; // 0x638 + public static readonly OpCode Ceq; // 0x640 + public static readonly OpCode Cgt; // 0x648 + public static readonly OpCode Cgt_Un; // 0x650 + public static readonly OpCode Clt; // 0x658 + public static readonly OpCode Clt_Un; // 0x660 + public static readonly OpCode Ldftn; // 0x668 + public static readonly OpCode Ldvirtftn; // 0x670 + public static readonly OpCode Ldarg; // 0x678 + public static readonly OpCode Ldarga; // 0x680 + public static readonly OpCode Starg; // 0x688 + public static readonly OpCode Ldloc; // 0x690 + public static readonly OpCode Ldloca; // 0x698 + public static readonly OpCode Stloc; // 0x6A0 + public static readonly OpCode Localloc; // 0x6A8 + public static readonly OpCode Endfilter; // 0x6B0 + public static readonly OpCode Unaligned; // 0x6B8 + public static readonly OpCode Volatile; // 0x6C0 + public static readonly OpCode Tailcall; // 0x6C8 + public static readonly OpCode Initobj; // 0x6D0 + public static readonly OpCode Constrained; // 0x6D8 + public static readonly OpCode Cpblk; // 0x6E0 + public static readonly OpCode Initblk; // 0x6E8 + public static readonly OpCode Rethrow; // 0x6F0 + public static readonly OpCode Sizeof; // 0x6F8 + public static readonly OpCode Refanytype; // 0x700 + public static readonly OpCode Readonly; // 0x708 + + // Methods + internal void .ctor(); // 0x100BF000 + private static void .cctor(); // 0x1013C2B0 + public static bool TakesSingleByteArgument(OpCode inst); // 0x1013C280 +} + +// Namespace: System.Reflection.Emit +[Serializable] +public enum OperandType // TypeDefIndex: 531 +{ + InlineBrTarget = 0, + InlineField = 1, + InlineI = 2, + InlineI8 = 3, + InlineMethod = 4, + InlineNone = 5, + InlinePhi = 6, + InlineR = 7, + InlineSig = 9, + InlineString = 10, + InlineSwitch = 11, + InlineTok = 12, + InlineType = 13, + InlineVar = 14, + ShortInlineBrTarget = 15, + ShortInlineI = 16, + ShortInlineR = 17, + ShortInlineVar = 18 +} + +// Namespace: System.Reflection.Emit +[Serializable] +public enum PEFileKinds // TypeDefIndex: 532 +{ + Dll = 1, + ConsoleApplication = 2, + WindowApplication = 3 +} + +// Namespace: System.Reflection.Emit +[Serializable] +public enum PackingSize // TypeDefIndex: 533 +{ + Unspecified = 0, + Size1 = 1, + Size2 = 2, + Size4 = 4, + Size8 = 8, + Size16 = 16, + Size32 = 32, + Size64 = 64, + Size128 = 128 +} + +// Namespace: System.Reflection.Emit +public class ParameterBuilder : _ParameterBuilder // TypeDefIndex: 534 +{ + // Fields + private MethodBase methodb; // 0x08 + private string name; // 0x0C + private CustomAttributeBuilder[] cattrs; // 0x10 + private UnmanagedMarshal marshal_info; // 0x14 + private ParameterAttributes attrs; // 0x18 + private int position; // 0x1C + private int table_idx; // 0x20 + private object def_value; // 0x24 + + // Properties + public virtual int Attributes { get; } // 0x100EE580 + public bool IsIn { get; } // 0x1013F0F0 + public bool IsOut { get; } // 0x1013F110 + public bool IsOptional { get; } // 0x1013F100 + public virtual string Name { get; } // 0x100C5B30 + public virtual int Position { get; } // 0x100F85F0 + + // Methods + internal void .ctor(MethodBase mb, int pos, ParameterAttributes attributes, string strParamName); // 0x1013F060 + private void System.Runtime.InteropServices._ParameterBuilder.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x1013EF20 + private void System.Runtime.InteropServices._ParameterBuilder.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x1013EFC0 + private void System.Runtime.InteropServices._ParameterBuilder.GetTypeInfoCount(out uint pcTInfo); // 0x1013EF70 + private void System.Runtime.InteropServices._ParameterBuilder.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x1013F010 + public virtual ParameterToken GetToken(); // 0x1013EBD0 + public virtual void SetConstant(object defaultValue); // 0x1013EBE0 + public void SetCustomAttribute(CustomAttributeBuilder customBuilder); // 0x1013EC00 + public void SetCustomAttribute(ConstructorInfo con, byte[] binaryAttribute); // 0x1013EEB0 + public virtual void SetMarshal(UnmanagedMarshal unmanagedMarshal); // 0x1013EF00 +} + +// Namespace: System.Reflection.Emit +[Serializable] +public struct ParameterToken // TypeDefIndex: 535 +{ + // Fields + internal int tokValue; // 0x08 + public static readonly ParameterToken Empty; // 0x00 + + // Properties + public int Token { get; } // 0x10003A80 + + // Methods + internal void .ctor(int val); // 0x10005950 + private static void .cctor(); // 0x1013F120 + public override bool Equals(object obj); // 0x10007DE0 + public bool Equals(ParameterToken obj); // 0x10005A50 + public override int GetHashCode(); // 0x10003A80 + public static bool op_Equality(ParameterToken a, ParameterToken b); // 0x1013F150 + public static bool op_Inequality(ParameterToken a, ParameterToken b); // 0x1013F1B0 +} + +// Namespace: System.Reflection.Emit +public sealed class PropertyBuilder : PropertyInfo, _PropertyBuilder // TypeDefIndex: 536 +{ + // Fields + private PropertyAttributes attrs; // 0x08 + private string name; // 0x0C + private Type type; // 0x10 + private Type[] parameters; // 0x14 + private CustomAttributeBuilder[] cattrs; // 0x18 + private object def_value; // 0x1C + private MethodBuilder set_method; // 0x20 + private MethodBuilder get_method; // 0x24 + private int table_idx; // 0x28 + internal TypeBuilder typeb; // 0x2C + private Type[] returnModReq; // 0x30 + private Type[] returnModOpt; // 0x34 + private Type[][] paramModReq; // 0x38 + private Type[][] paramModOpt; // 0x3C + + // Properties + public override PropertyAttributes Attributes { get; } // 0x100BF0C0 + public override bool CanRead { get; } // 0x1013F820 + public override bool CanWrite { get; } // 0x1013F830 + public override Type DeclaringType { get; } // 0x100EB200 + public override string Name { get; } // 0x100C5B30 + public PropertyToken PropertyToken { get; } // 0x100C5600 + public override Type PropertyType { get; } // 0x100BFC20 + public override Type ReflectedType { get; } // 0x100EB200 + public override Module Module { get; } // 0x100EF1C0 + + // Methods + internal void .ctor(TypeBuilder tb, string name, PropertyAttributes attributes, Type returnType, Type[] returnModReq, Type[] returnModOpt, Type[] parameterTypes, Type[][] paramModReq, Type[][] paramModOpt); // 0x1013F760 + private void System.Runtime.InteropServices._PropertyBuilder.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x1013F620 + private void System.Runtime.InteropServices._PropertyBuilder.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x1013F6C0 + private void System.Runtime.InteropServices._PropertyBuilder.GetTypeInfoCount(out uint pcTInfo); // 0x1013F670 + private void System.Runtime.InteropServices._PropertyBuilder.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x1013F710 + public void AddOtherMethod(MethodBuilder mdBuilder); // 0x100C5530 + public override MethodInfo[] GetAccessors(bool nonPublic); // 0x100C5600 + public override object[] GetCustomAttributes(bool inherit); // 0x1013F320 + public override object[] GetCustomAttributes(Type attributeType, bool inherit); // 0x1013F2E0 + public override MethodInfo GetGetMethod(bool nonPublic); // 0x100EAD50 + public override ParameterInfo[] GetIndexParameters(); // 0x1013F360 + public override MethodInfo GetSetMethod(bool nonPublic); // 0x100EACD0 + public override object GetValue(object obj, object[] index); // 0x100C5600 + public override object GetValue(object obj, BindingFlags invokeAttr, Binder binder, object[] index, CultureInfo culture); // 0x1013F3A0 + public override bool IsDefined(Type attributeType, bool inherit); // 0x1013F3E0 + public void SetConstant(object defaultValue); // 0x10113F50 + public void SetCustomAttribute(CustomAttributeBuilder customBuilder); // 0x1013F420 + public void SetCustomAttribute(ConstructorInfo con, byte[] binaryAttribute); // 0x1013F5D0 + public void SetGetMethod(MethodBuilder mdBuilder); // 0x100EB240 + public void SetSetMethod(MethodBuilder mdBuilder); // 0x100EB230 + public override void SetValue(object obj, object value, object[] index); // 0x100C5530 + public override void SetValue(object obj, object value, BindingFlags invokeAttr, Binder binder, object[] index, CultureInfo culture); // 0x100C5530 + private Exception not_supported(); // 0x1013F840 +} + +// Namespace: System.Reflection.Emit +internal class PropertyOnTypeBuilderInst : PropertyInfo // TypeDefIndex: 537 +{ + // Fields + private MonoGenericClass instantiation; // 0x08 + private PropertyInfo prop; // 0x0C + + // Properties + public override PropertyAttributes Attributes { get; } // 0x1017A6B0 + public override bool CanRead { get; } // 0x1017A700 + public override bool CanWrite { get; } // 0x1017A750 + public override Type PropertyType { get; } // 0x1017A820 + public override Type DeclaringType { get; } // 0x1017A7A0 + public override Type ReflectedType { get; } // 0x100BF0C0 + public override string Name { get; } // 0x1017A7F0 + + // Methods + internal void .ctor(MonoGenericClass instantiation, PropertyInfo prop); // 0x1017A680 + public override MethodInfo[] GetAccessors(bool nonPublic); // 0x1017A1F0 + public override MethodInfo GetGetMethod(bool nonPublic); // 0x1017A3B0 + public override ParameterInfo[] GetIndexParameters(); // 0x1017A420 + public override MethodInfo GetSetMethod(bool nonPublic); // 0x1017A490 + public override string ToString(); // 0x1017A5F0 + public override object GetValue(object obj, BindingFlags invokeAttr, Binder binder, object[] index, CultureInfo culture); // 0x1017A500 + public override void SetValue(object obj, object value, BindingFlags invokeAttr, Binder binder, object[] index, CultureInfo culture); // 0x1017A5A0 + public override bool IsDefined(Type attributeType, bool inherit); // 0x1017A550 + public override object[] GetCustomAttributes(bool inherit); // 0x1017A310 + public override object[] GetCustomAttributes(Type attributeType, bool inherit); // 0x1017A360 +} + +// Namespace: System.Reflection.Emit +[Serializable] +public struct PropertyToken // TypeDefIndex: 538 +{ + // Fields + internal int tokValue; // 0x08 + public static readonly PropertyToken Empty; // 0x00 + + // Properties + public int Token { get; } // 0x10003A80 + + // Methods + internal void .ctor(int val); // 0x10005950 + private static void .cctor(); // 0x1017A870 + public override bool Equals(object obj); // 0x10009250 + public bool Equals(PropertyToken obj); // 0x10005A50 + public override int GetHashCode(); // 0x10003A80 + public static bool op_Equality(PropertyToken a, PropertyToken b); // 0x1017A8A0 + public static bool op_Inequality(PropertyToken a, PropertyToken b); // 0x1017A900 +} + +// Namespace: System.Reflection.Emit +public sealed class SignatureHelper : _SignatureHelper // TypeDefIndex: 539 +{ + // Fields + private ModuleBuilder module; // 0x08 + private Type[] arguments; // 0x0C + private SignatureHelperType type; // 0x10 + private Type returnType; // 0x14 + private CallingConventions callConv; // 0x18 + private CallingConvention unmanagedCallConv; // 0x1C + private Type[][] modreqs; // 0x20 + private Type[][] modopts; // 0x24 + + // Methods + internal void .ctor(ModuleBuilder module, SignatureHelperType type); // 0x1017BF40 + private void System.Runtime.InteropServices._SignatureHelper.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x1017BBA0 + private void System.Runtime.InteropServices._SignatureHelper.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x1017BC40 + private void System.Runtime.InteropServices._SignatureHelper.GetTypeInfoCount(out uint pcTInfo); // 0x1017BBF0 + private void System.Runtime.InteropServices._SignatureHelper.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x1017BC90 + public static SignatureHelper GetFieldSigHelper(Module mod); // 0x1017B510 + public static SignatureHelper GetLocalVarSigHelper(Module mod); // 0x1017B610 + public static SignatureHelper GetLocalVarSigHelper(); // 0x1017B710 + public static SignatureHelper GetMethodSigHelper(CallingConventions callingConvention, Type returnType); // 0x1017B7C0 + public static SignatureHelper GetMethodSigHelper(CallingConvention unmanagedCallingConvention, Type returnType); // 0x1017BA20 + public static SignatureHelper GetMethodSigHelper(Module mod, CallingConventions callingConvention, Type returnType); // 0x1017B7A0 + public static SignatureHelper GetMethodSigHelper(Module mod, CallingConvention unmanagedCallConv, Type returnType); // 0x1017B780 + public static SignatureHelper GetMethodSigHelper(Module mod, Type returnType, Type[] parameterTypes); // 0x1017B760 + public static SignatureHelper GetPropertySigHelper(Module mod, Type returnType, Type[] parameterTypes); // 0x1017BA90 + private static int AppendArray(Type[] array, Type t); // 0x1017B1B0 + private static void AppendArrayAt(Type[][] array, Type[] t, int pos); // 0x1017B0F0 + private static void ValidateParameterModifiers(string name, Type[] parameter_modifiers); // 0x1017BE00 + private static void ValidateCustomModifier(int n, Type[][] custom_modifiers, string name); // 0x1017BD10 + private static Exception MissingFeature(); // 0x1017BB50 + public void AddArguments(Type[] arguments, Type[][] requiredCustomModifiers, Type[][] optionalCustomModifiers); // 0x1017AFB0 + public void AddArgument(Type argument, bool pinned); // 0x1017AE00 + public void AddArgument(Type argument, Type[] requiredCustomModifiers, Type[] optionalCustomModifiers); // 0x1017AE70 + public static SignatureHelper GetPropertySigHelper(Module mod, Type returnType, Type[] requiredReturnTypeCustomModifiers, Type[] optionalReturnTypeCustomModifiers, Type[] parameterTypes, Type[][] requiredParameterTypeCustomModifiers, Type[][] optionalParameterTypeCustomModifiers); // 0x1017BA40 + public void AddArgument(Type clsArgument); // 0x1017AF40 + public void AddSentinel(); // 0x1017B0A0 + private static bool CompareOK(Type[][] one, Type[][] two); // 0x1017B2E0 + public override bool Equals(object obj); // 0x1017B3F0 + public override int GetHashCode(); // 0x100C5600 + internal byte[] get_signature_local(); // 0x1017BF80 + internal byte[] get_signature_field(); // 0x1017BF70 + public byte[] GetSignature(); // 0x1017BAE0 + public override string ToString(); // 0x1017BCE0 + internal static SignatureHelper GetMethodSigHelper(Module mod, CallingConventions callingConvention, CallingConvention unmanagedCallingConvention, Type returnType, Type[] parameters); // 0x1017B7E0 +} + +// Namespace: +internal enum SignatureHelperType // TypeDefIndex: 540 +{ + HELPER_FIELD = 0, + HELPER_LOCAL = 1, + HELPER_METHOD = 2, + HELPER_PROPERTY = 3 +} + +// Namespace: System.Reflection.Emit +public struct SignatureToken // TypeDefIndex: 541 +{ + // Fields + internal int tokValue; // 0x08 + public static readonly SignatureToken Empty; // 0x00 + + // Properties + public int Token { get; } // 0x10003A80 + + // Methods + internal void .ctor(int val); // 0x10005950 + private static void .cctor(); // 0x1017BF90 + public override bool Equals(object obj); // 0x10009330 + public bool Equals(SignatureToken obj); // 0x10005A50 + public override int GetHashCode(); // 0x10003A80 + public static bool op_Equality(SignatureToken a, SignatureToken b); // 0x1017BFC0 + public static bool op_Inequality(SignatureToken a, SignatureToken b); // 0x1017C020 +} + +// Namespace: System.Reflection.Emit +[Serializable] +public enum StackBehaviour // TypeDefIndex: 542 +{ + Pop0 = 0, + Pop1 = 1, + Pop1_pop1 = 2, + Popi = 3, + Popi_pop1 = 4, + Popi_popi = 5, + Popi_popi8 = 6, + Popi_popi_popi = 7, + Popi_popr4 = 8, + Popi_popr8 = 9, + Popref = 10, + Popref_pop1 = 11, + Popref_popi = 12, + Popref_popi_popi = 13, + Popref_popi_popi8 = 14, + Popref_popi_popr4 = 15, + Popref_popi_popr8 = 16, + Popref_popi_popref = 17, + Push0 = 18, + Push1 = 19, + Push1_push1 = 20, + Pushi = 21, + Pushi8 = 22, + Pushr4 = 23, + Pushr8 = 24, + Pushref = 25, + Varpop = 26, + Varpush = 27, + Popref_popi_pop1 = 28 +} + +// Namespace: System.Reflection.Emit +[Serializable] +public struct StringToken // TypeDefIndex: 543 +{ + // Fields + internal int tokValue; // 0x08 + + // Properties + public int Token { get; } // 0x10003A80 + + // Methods + internal void .ctor(int val); // 0x10005950 + private static void .cctor(); // 0x100C5530 + public override bool Equals(object obj); // 0x100093B0 + public bool Equals(StringToken obj); // 0x10005A50 + public override int GetHashCode(); // 0x10003A80 + public static bool op_Equality(StringToken a, StringToken b); // 0x1017C090 + public static bool op_Inequality(StringToken a, StringToken b); // 0x1017C0F0 +} + +// Namespace: System.Reflection.Emit +public sealed class TypeBuilder : Type, _TypeBuilder // TypeDefIndex: 544 +{ + // Fields + public const int UnspecifiedTypeSize = 0; // 0x00 + private string tname; // 0x0C + private string nspace; // 0x10 + private Type parent; // 0x14 + private Type nesting_type; // 0x18 + internal Type[] interfaces; // 0x1C + internal int num_methods; // 0x20 + internal MethodBuilder[] methods; // 0x24 + internal ConstructorBuilder[] ctors; // 0x28 + internal PropertyBuilder[] properties; // 0x2C + internal int num_fields; // 0x30 + internal FieldBuilder[] fields; // 0x34 + internal EventBuilder[] events; // 0x38 + private CustomAttributeBuilder[] cattrs; // 0x3C + internal TypeBuilder[] subtypes; // 0x40 + internal TypeAttributes attrs; // 0x44 + private int table_idx; // 0x48 + private ModuleBuilder pmodule; // 0x4C + private int class_size; // 0x50 + private PackingSize packing_size; // 0x54 + private IntPtr generic_container; // 0x58 + private GenericTypeParameterBuilder[] generic_params; // 0x5C + private RefEmitPermissionSet[] permissions; // 0x60 + private Type created; // 0x64 + private string fullname; // 0x68 + private bool createTypeCalled; // 0x6C + private Type underlying_type; // 0x70 + private static Dictionary`2 <>f__switch$map1E; // 0x00 + + // Properties + public override Assembly Assembly { get; } // 0x101819B0 + public override string AssemblyQualifiedName { get; } // 0x10181920 + public override Type BaseType { get; } // 0x100EF0C0 + public override Type DeclaringType { get; } // 0x100EE580 + public override Type UnderlyingSystemType { get; } // 0x10181AF0 + public override string FullName { get; } // 0x1013F890 + public override Guid GUID { get; } // 0x101819D0 + public override Module Module { get; } // 0x10145570 + public override string Name { get; } // 0x100C5B30 + public override string Namespace { get; } // 0x100BFC20 + public PackingSize PackingSize { get; } // 0x10145520 + public int Size { get; } // 0x10132810 + public override Type ReflectedType { get; } // 0x100EE580 + public override RuntimeTypeHandle TypeHandle { get; } // 0x10181A80 + public TypeToken TypeToken { get; } // 0x10181AE0 + internal bool IsCompilerContext { get; } // 0x10181A40 + internal bool is_created { get; } // 0x10180650 + public override bool ContainsGenericParameters { get; } // 0x10132880 + public override bool IsGenericParameter { get; } // 0x10181A70 + public override GenericParameterAttributes GenericParameterAttributes { get; } // 0x100C5600 + public override bool IsGenericTypeDefinition { get; } // 0x10132880 + public override bool IsGenericType { get; } // 0x10132880 + public override int GenericParameterPosition { get; } // 0x100C5600 + public override MethodBase DeclaringMethod { get; } // 0x100C5600 + + // Methods + internal void .ctor(ModuleBuilder mb, TypeAttributes attr, int table_idx); // 0x101813C0 + internal void .ctor(ModuleBuilder mb, string name, TypeAttributes attr, Type parent, Type[] interfaces, PackingSize packing_size, int type_size, Type nesting_type); // 0x101814C0 + private void System.Runtime.InteropServices._TypeBuilder.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x10181280 + private void System.Runtime.InteropServices._TypeBuilder.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x10181320 + private void System.Runtime.InteropServices._TypeBuilder.GetTypeInfoCount(out uint pcTInfo); // 0x101812D0 + private void System.Runtime.InteropServices._TypeBuilder.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x10181370 + protected override TypeAttributes GetAttributeFlagsImpl(); // 0x10145530 + private void setup_internal_class(TypeBuilder tb); // 0x10181DA0 + private void create_internal_class(TypeBuilder tb); // 0x101818E0 + private void setup_generic_class(); // 0x10181D90 + private void create_generic_class(); // 0x101818D0 + private EventInfo get_event_info(EventBuilder eb); // 0x10181BA0 + private string GetFullName(); // 0x1017F1F0 + public void AddDeclarativeSecurity(SecurityAction action, PermissionSet pset); // 0x100C5530 + public void AddInterfaceImplementation(Type interfaceType); // 0x1017C160 + protected override ConstructorInfo GetConstructorImpl(BindingFlags bindingAttr, Binder binder, CallingConventions callConvention, Type[] types, ParameterModifier[] modifiers); // 0x1017E480 + public override bool IsDefined(Type attributeType, bool inherit); // 0x10180660 + public override object[] GetCustomAttributes(bool inherit); // 0x1017EAC0 + public override object[] GetCustomAttributes(Type attributeType, bool inherit); // 0x1017EA50 + public TypeBuilder DefineNestedType(string name); // 0x1017D850 + public TypeBuilder DefineNestedType(string name, TypeAttributes attr); // 0x1017D890 + public TypeBuilder DefineNestedType(string name, TypeAttributes attr, Type parent); // 0x1017D7F0 + private TypeBuilder DefineNestedType(string name, TypeAttributes attr, Type parent, Type[] interfaces, PackingSize packSize, int typeSize); // 0x1017D8D0 + public TypeBuilder DefineNestedType(string name, TypeAttributes attr, Type parent, Type[] interfaces); // 0x1017D820 + public TypeBuilder DefineNestedType(string name, TypeAttributes attr, Type parent, int typeSize); // 0x1017DAB0 + public TypeBuilder DefineNestedType(string name, TypeAttributes attr, Type parent, PackingSize packSize); // 0x1017DAE0 + public ConstructorBuilder DefineConstructor(MethodAttributes attributes, CallingConventions callingConvention, Type[] parameterTypes); // 0x1017CC20 + public ConstructorBuilder DefineConstructor(MethodAttributes attributes, CallingConventions callingConvention, Type[] parameterTypes, Type[][] requiredCustomModifiers, Type[][] optionalCustomModifiers); // 0x1017CA70 + public ConstructorBuilder DefineDefaultConstructor(MethodAttributes attributes); // 0x1017CC40 + private void append_method(MethodBuilder mb); // 0x101816A0 + public MethodBuilder DefineMethod(string name, MethodAttributes attributes, Type returnType, Type[] parameterTypes); // 0x1017D660 + public MethodBuilder DefineMethod(string name, MethodAttributes attributes, CallingConventions callingConvention, Type returnType, Type[] parameterTypes); // 0x1017D6A0 + public MethodBuilder DefineMethod(string name, MethodAttributes attributes, CallingConventions callingConvention, Type returnType, Type[] returnTypeRequiredCustomModifiers, Type[] returnTypeOptionalCustomModifiers, Type[] parameterTypes, Type[][] parameterTypeRequiredCustomModifiers, Type[][] parameterTypeOptionalCustomModifiers); // 0x1017D4E0 + public MethodBuilder DefinePInvokeMethod(string name, string dllName, string entryName, MethodAttributes attributes, CallingConventions callingConvention, Type returnType, Type[] parameterTypes, CallingConvention nativeCallConv, CharSet nativeCharSet); // 0x1017DD40 + public MethodBuilder DefinePInvokeMethod(string name, string dllName, string entryName, MethodAttributes attributes, CallingConventions callingConvention, Type returnType, Type[] returnTypeRequiredCustomModifiers, Type[] returnTypeOptionalCustomModifiers, Type[] parameterTypes, Type[][] parameterTypeRequiredCustomModifiers, Type[][] parameterTypeOptionalCustomModifiers, CallingConvention nativeCallConv, CharSet nativeCharSet); // 0x1017DC20 + public MethodBuilder DefinePInvokeMethod(string name, string dllName, MethodAttributes attributes, CallingConventions callingConvention, Type returnType, Type[] parameterTypes, CallingConvention nativeCallConv, CharSet nativeCharSet); // 0x1017DB10 + public MethodBuilder DefineMethod(string name, MethodAttributes attributes); // 0x1017D680 + public MethodBuilder DefineMethod(string name, MethodAttributes attributes, CallingConventions callingConvention); // 0x1017D640 + public void DefineMethodOverride(MethodInfo methodInfoBody, MethodInfo methodInfoDeclaration); // 0x1017D3E0 + public FieldBuilder DefineField(string fieldName, Type type, FieldAttributes attributes); // 0x1017CFB0 + public FieldBuilder DefineField(string fieldName, Type type, Type[] requiredCustomModifiers, Type[] optionalCustomModifiers, FieldAttributes attributes); // 0x1017CFE0 + public PropertyBuilder DefineProperty(string name, PropertyAttributes attributes, Type returnType, Type[] parameterTypes); // 0x1017DE50 + public PropertyBuilder DefineProperty(string name, PropertyAttributes attributes, Type returnType, Type[] returnTypeRequiredCustomModifiers, Type[] returnTypeOptionalCustomModifiers, Type[] parameterTypes, Type[][] parameterTypeRequiredCustomModifiers, Type[][] parameterTypeOptionalCustomModifiers); // 0x1017DE80 + public ConstructorBuilder DefineTypeInitializer(); // 0x1017E0B0 + private Type create_runtime_class(TypeBuilder tb); // 0x10181900 + private bool is_nested_in(Type t); // 0x10181D00 + private bool has_ctor_method(); // 0x10181BF0 + public Type CreateType(); // 0x1017C2D0 + internal void GenerateDebugInfo(ISymbolWriter symbolWriter); // 0x1017E2A0 + public override ConstructorInfo[] GetConstructors(BindingFlags bindingAttr); // 0x1017E9B0 + internal ConstructorInfo[] GetConstructorsInternal(BindingFlags bindingAttr); // 0x1017E870 + public override Type GetElementType(); // 0x1017EB20 + public override EventInfo GetEvent(string name, BindingFlags bindingAttr); // 0x1017EB70 + public override EventInfo[] GetEvents(); // 0x1017ED90 + public override EventInfo[] GetEvents(BindingFlags bindingAttr); // 0x1017EE30 + internal EventInfo[] GetEvents_internal(BindingFlags bindingAttr); // 0x1017EBE0 + public override FieldInfo GetField(string name, BindingFlags bindingAttr); // 0x1017EED0 + public override FieldInfo[] GetFields(BindingFlags bindingAttr); // 0x1017F080 + public override Type GetInterface(string name, bool ignoreCase); // 0x1017F420 + public override Type[] GetInterfaces(); // 0x1017F490 + public override MemberInfo[] GetMember(string name, MemberTypes type, BindingFlags bindingAttr); // 0x1017F540 + public override MemberInfo[] GetMembers(BindingFlags bindingAttr); // 0x1017F5B0 + private MethodInfo[] GetMethodsByName(string name, BindingFlags bindingAttr, bool ignoreCase, Type reflected_type); // 0x1017FBA0 + public override MethodInfo[] GetMethods(BindingFlags bindingAttr); // 0x1017FF50 + protected override MethodInfo GetMethodImpl(string name, BindingFlags bindingAttr, Binder binder, CallingConventions callConvention, Type[] types, ParameterModifier[] modifiers); // 0x1017F610 + public override Type GetNestedType(string name, BindingFlags bindingAttr); // 0x1017FF70 + public override Type[] GetNestedTypes(BindingFlags bindingAttr); // 0x101800C0 + public override PropertyInfo[] GetProperties(BindingFlags bindingAttr); // 0x10180240 + protected override PropertyInfo GetPropertyImpl(string name, BindingFlags bindingAttr, Binder binder, Type returnType, Type[] types, ParameterModifier[] modifiers); // 0x10180400 + protected override bool HasElementTypeImpl(); // 0x10180440 + public override object InvokeMember(string name, BindingFlags invokeAttr, Binder binder, object target, object[] args, ParameterModifier[] modifiers, CultureInfo culture, string[] namedParameters); // 0x10180470 + protected override bool IsArrayImpl(); // 0x100EFBF0 + protected override bool IsByRefImpl(); // 0x100EFBF0 + protected override bool IsCOMObjectImpl(); // 0x10180640 + protected override bool IsPointerImpl(); // 0x100EFBF0 + protected override bool IsPrimitiveImpl(); // 0x100EFBF0 + protected override bool IsValueTypeImpl(); // 0x10180840 + public override Type MakeArrayType(); // 0x10180930 + public override Type MakeArrayType(int rank); // 0x10180980 + public override Type MakeByRefType(); // 0x10180A00 + public override Type MakeGenericType(Type[] typeArguments); // 0x1012BDB0 + public override Type MakePointerType(); // 0x10180A50 + internal void SetCharSet(TypeAttributes ta); // 0x101455B0 + public void SetCustomAttribute(CustomAttributeBuilder customBuilder); // 0x10180AB0 + public void SetCustomAttribute(ConstructorInfo con, byte[] binaryAttribute); // 0x10181120 + public EventBuilder DefineEvent(string name, EventAttributes attributes, Type eventtype); // 0x1017CE00 + public FieldBuilder DefineInitializedData(string name, byte[] data, FieldAttributes attributes); // 0x1017D350 + public FieldBuilder DefineUninitializedData(string name, int size, FieldAttributes attributes); // 0x1017E0D0 + public void SetParent(Type parent); // 0x10181170 + internal int get_next_table_index(object obj, int table, bool inc); // 0x10181BC0 + public override InterfaceMapping GetInterfaceMap(Type interfaceType); // 0x1017F390 + private Exception not_supported(); // 0x10181D40 + private void check_not_created(); // 0x10181870 + private void check_created(); // 0x10181770 + private void check_name(string argName, string name); // 0x101817C0 + public override string ToString(); // 0x1013F890 + public override bool IsAssignableFrom(Type c); // 0x101804F0 + public override bool IsSubclassOf(Type c); // 0x10180710 + internal bool IsAssignableTo(Type c); // 0x10180500 + public bool IsCreated(); // 0x10180650 + public override Type[] GetGenericArguments(); // 0x1017F2C0 + public override Type GetGenericTypeDefinition(); // 0x1017F330 + public GenericTypeParameterBuilder[] DefineGenericParameters(string[] names); // 0x1017D200 + public static ConstructorInfo GetConstructor(Type type, ConstructorInfo constructor); // 0x1017E7C0 + private static bool IsValidGetMethodType(Type type); // 0x10180720 + public static MethodInfo GetMethod(Type type, MethodInfo method); // 0x1017F950 + public static FieldInfo GetField(Type type, FieldInfo field); // 0x1017F000 +} + +// Namespace: System.Reflection.Emit +[Serializable] +public struct TypeToken // TypeDefIndex: 545 +{ + // Fields + internal int tokValue; // 0x08 + public static readonly TypeToken Empty; // 0x00 + + // Properties + public int Token { get; } // 0x10003A80 + + // Methods + internal void .ctor(int val); // 0x10005950 + private static void .cctor(); // 0x10181DC0 + public override bool Equals(object obj); // 0x10009430 + public bool Equals(TypeToken obj); // 0x10005A50 + public override int GetHashCode(); // 0x10003A80 + public static bool op_Equality(TypeToken a, TypeToken b); // 0x10181DF0 + public static bool op_Inequality(TypeToken a, TypeToken b); // 0x10181E50 +} + +// Namespace: System.Reflection.Emit +[Serializable] +public sealed class UnmanagedMarshal // TypeDefIndex: 546 +{ + // Fields + private int count; // 0x08 + private UnmanagedType t; // 0x0C + private UnmanagedType tbase; // 0x10 + private string guid; // 0x14 + private string mcookie; // 0x18 + private string marshaltype; // 0x1C + private Type marshaltyperef; // 0x20 + private int param_num; // 0x24 + private bool has_size; // 0x28 + + // Properties + public UnmanagedType BaseType { get; } // 0x101822E0 + public int ElementCount { get; } // 0x100BF0C0 + public UnmanagedType GetUnmanagedType { get; } // 0x100C5B30 + public Guid IIDGuid { get; } // 0x10182340 + + // Methods + private void .ctor(UnmanagedType maint, int cnt); // 0x101822B0 + private void .ctor(UnmanagedType maint, UnmanagedType elemt); // 0x10182280 + public static UnmanagedMarshal DefineByValArray(int elemCount); // 0x10181EC0 + public static UnmanagedMarshal DefineByValTStr(int elemCount); // 0x10181F20 + public static UnmanagedMarshal DefineLPArray(UnmanagedType elemType); // 0x101820E0 + public static UnmanagedMarshal DefineSafeArray(UnmanagedType elemType); // 0x10182140 + public static UnmanagedMarshal DefineUnmanagedMarshal(UnmanagedType unmanagedType); // 0x101821A0 + public static UnmanagedMarshal DefineCustom(Type typeref, string cookie, string mtype, Guid id); // 0x10181F80 + internal static UnmanagedMarshal DefineLPArrayInternal(UnmanagedType elemType, int sizeConst, int sizeParamIndex); // 0x10182080 + internal MarshalAsAttribute ToMarshalAsAttribute(); // 0x101821F0 +} + +// Namespace: System.Reflection +[Serializable] +public sealed class AmbiguousMatchException : SystemException // TypeDefIndex: 547 +{ + // Methods + public void .ctor(); // 0x100E5630 + public void .ctor(string message); // 0x100E5680 + public void .ctor(string message, Exception inner); // 0x100E5670 + internal void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 +} + +// Namespace: System.Reflection +[Serializable] +public class Assembly : ICustomAttributeProvider, _Assembly // TypeDefIndex: 548 +{ + // Fields + private IntPtr _mono_assembly; // 0x08 + private ResolveEventHolder resolve_event_holder; // 0x0C + private Evidence _evidence; // 0x10 + internal PermissionSet _minimum; // 0x14 + internal PermissionSet _optional; // 0x18 + internal PermissionSet _refuse; // 0x1C + private PermissionSet _granted; // 0x20 + private PermissionSet _denied; // 0x24 + private bool fromByteArray; // 0x28 + private string assemblyName; // 0x2C + + // Properties + public virtual string CodeBase { get; } // 0x100ED4A0 + public virtual string EscapedCodeBase { get; } // 0x100ED5E0 + public virtual string FullName { get; } // 0x100ED600 + public virtual MethodInfo EntryPoint { get; } // 0x100ED5D0 + public virtual Evidence Evidence { get; } // 0x100ED5F0 + public bool GlobalAssemblyCache { get; } // 0x100E9F80 + internal bool FromByteArray { set; } // 0x100ED880 + public virtual string Location { get; } // 0x100ED750 + public virtual string ImageRuntimeVersion { get; } // 0x100E9EE0 + public long HostContext { get; } // 0x100ED740 + public Module ManifestModule { get; } // 0x100ED7B0 + public virtual bool ReflectionOnly { get; } // 0x100E9F80 + internal PermissionSet GrantedPermissionSet { get; } // 0x100ED620 + internal PermissionSet DeniedPermissionSet { get; } // 0x100ED4B0 + + // Events + public event ModuleResolveEventHandler ModuleResolve { + add; // 0x100ED430 + remove; // 0x100ED810 + } + + // Methods + internal void .ctor(); // 0x100ED3F0 + private string get_code_base(bool escaped); // 0x100EB660 + private string get_fullname(); // 0x100ED7D0 + private string get_location(); // 0x100ED7E0 + private string InternalImageRuntimeVersion(); // 0x100E9EE0 + private string GetCodeBase(bool escaped); // 0x100EB660 + internal Evidence UnprotectedGetEvidence(); // 0x100ED2E0 + private bool get_global_assembly_cache(); // 0x100E9F80 + public virtual void GetObjectData(SerializationInfo info, StreamingContext context); // 0x100EC370 + public virtual bool IsDefined(Type attributeType, bool inherit); // 0x100EC840 + public virtual object[] GetCustomAttributes(bool inherit); // 0x100EB6D0 + public virtual object[] GetCustomAttributes(Type attributeType, bool inherit); // 0x100EB680 + private object GetFilesInternal(string name, bool getResourceModules); // 0x100EB870 + public virtual FileStream[] GetFiles(); // 0x100EB890 + public virtual FileStream[] GetFiles(bool getResourceModules); // 0x100EB8B0 + public virtual FileStream GetFile(string name); // 0x100EB780 + internal IntPtr GetManifestResourceInternal(string name, out int size, out Module module); // 0x100EBC40 + public virtual Stream GetManifestResourceStream(string name); // 0x100EBD60 + public virtual Stream GetManifestResourceStream(Type type, string name); // 0x100EBC70 + internal virtual Type[] GetTypes(bool exportedOnly); // 0x100EC7E0 + public virtual Type[] GetTypes(); // 0x100EC7C0 + public virtual Type[] GetExportedTypes(); // 0x100EB760 + public virtual Type GetType(string name, bool throwOnError); // 0x100EC7A0 + public virtual Type GetType(string name); // 0x100EC6D0 + internal Type InternalGetType(Module module, string name, bool throwOnError, bool ignoreCase); // 0x100EC820 + public Type GetType(string name, bool throwOnError, bool ignoreCase); // 0x100EC6F0 + internal static void InternalGetAssemblyName(string assemblyFile, AssemblyName aname); // 0x100EC800 + private static void FillName(Assembly ass, AssemblyName aname); // 0x100EB5C0 + public virtual AssemblyName GetName(bool copiedName); // 0x100EC2C0 + public virtual AssemblyName GetName(); // 0x100EC340 + internal virtual AssemblyName UnprotectedGetName(); // 0x100ED3A0 + public override string ToString(); // 0x100ED2C0 + public static string CreateQualifiedName(string assemblyName, string typeName); // 0x100EB560 + public static Assembly GetAssembly(Type type); // 0x100EB5E0 + public static Assembly GetEntryAssembly(); // 0x100EB720 + public Assembly GetSatelliteAssembly(CultureInfo culture); // 0x100EC410 + public Assembly GetSatelliteAssembly(CultureInfo culture, Version version); // 0x100EC6B0 + internal Assembly GetSatelliteAssemblyNoThrow(CultureInfo culture, Version version); // 0x100EC3F0 + private Assembly GetSatelliteAssembly(CultureInfo culture, Version version, bool throwOnError); // 0x100EC430 + private static Assembly LoadFrom(string assemblyFile, bool refonly); // 0x100ECC60 + public static Assembly LoadFrom(string assemblyFile); // 0x100ECB60 + public static Assembly LoadFrom(string assemblyFile, Evidence securityEvidence); // 0x100ECC80 + public static Assembly LoadFrom(string assemblyFile, Evidence securityEvidence, byte[] hashValue, AssemblyHashAlgorithm hashAlgorithm); // 0x100ECB70 + public static Assembly LoadFile(string path, Evidence securityEvidence); // 0x100ECA90 + public static Assembly LoadFile(string path); // 0x100ECA90 + public static Assembly Load(string assemblyString); // 0x100ECF60 + public static Assembly Load(string assemblyString, Evidence assemblySecurity); // 0x100ECF00 + public static Assembly Load(AssemblyName assemblyRef); // 0x100ECFF0 + public static Assembly Load(AssemblyName assemblyRef, Evidence assemblySecurity); // 0x100ECED0 + public static Assembly Load(byte[] rawAssembly); // 0x100ECFC0 + public static Assembly Load(byte[] rawAssembly, byte[] rawSymbolStore); // 0x100ECF30 + public static Assembly Load(byte[] rawAssembly, byte[] rawSymbolStore, Evidence securityEvidence); // 0x100ECF90 + public static Assembly ReflectionOnlyLoad(byte[] rawAssembly); // 0x100ED0A0 + public static Assembly ReflectionOnlyLoad(string assemblyString); // 0x100ED0D0 + public static Assembly ReflectionOnlyLoadFrom(string assemblyFile); // 0x100ED030 + public static Assembly LoadWithPartialName(string partialName); // 0x100ECE60 + public Module LoadModule(string moduleName, byte[] rawModule); // 0x100ECCA0 + public Module LoadModule(string moduleName, byte[] rawModule, byte[] rawSymbolStore); // 0x100ECCF0 + private static Assembly load_with_partial_name(string name, Evidence e); // 0x100ED7F0 + public static Assembly LoadWithPartialName(string partialName, Evidence securityEvidence); // 0x100ECD70 + internal static Assembly LoadWithPartialName(string partialName, Evidence securityEvidence, bool oldBehavior); // 0x100ECDD0 + public object CreateInstance(string typeName); // 0x100EB310 + public object CreateInstance(string typeName, bool ignoreCase); // 0x100EB330 + public object CreateInstance(string typeName, bool ignoreCase, BindingFlags bindingAttr, Binder binder, object[] args, CultureInfo culture, object[] activationAttributes); // 0x100EB440 + public Module[] GetLoadedModules(); // 0x100EBB20 + public Module[] GetLoadedModules(bool getResourceModules); // 0x100EBB40 + public Module[] GetModules(); // 0x100EBB20 + public Module GetModule(string name); // 0x100EC010 + internal virtual Module[] GetModulesInternal(); // 0x100EC170 + public Module[] GetModules(bool getResourceModules); // 0x100EC180 + internal string[] GetNamespaces(); // 0x100EC360 + public virtual string[] GetManifestResourceNames(); // 0x100EBC60 + public static Assembly GetExecutingAssembly(); // 0x100EB730 + public static Assembly GetCallingAssembly(); // 0x100EB650 + public AssemblyName[] GetReferencedAssemblies(); // 0x100EC3E0 + private bool GetManifestResourceInfoInternal(string name, ManifestResourceInfo info); // 0x100EBB60 + public virtual ManifestResourceInfo GetManifestResourceInfo(string resourceName); // 0x100EBB80 + internal static int MonoDebugger_GetMethodToken(MethodBase method); // 0x100ED020 + internal virtual Module GetManifestModule(); // 0x100EBB50 + internal Module GetManifestModuleInternal(); // 0x100EBB50 + internal void Resolve(); // 0x100ED100 + internal static bool LoadPermissions(Assembly a, IntPtr minimum, int minLength, IntPtr optional, int optLength, IntPtr refused, int refLength); // 0x100ECD40 + private void LoadAssemblyPermissions(); // 0x100EC890 + virtual Type System.Runtime.InteropServices._Assembly.GetType(); // 0x100ED2B0 +} + +// Namespace: +internal class ResolveEventHolder // TypeDefIndex: 549 +{ + // Fields + private ModuleResolveEventHandler ModuleResolve; // 0x08 + + // Events + public event ModuleResolveEventHandler ModuleResolve { + add; // 0x100F9690 + remove; // 0x100F96F0 + } + + // Methods + public void .ctor(); // 0x100C5530 +} + +// Namespace: +private class ResourceCloseHandler // TypeDefIndex: 550 +{ + // Fields + private Module module; // 0x08 + + // Methods + public void .ctor(Module module); // 0x100EB270 + public void OnClose(object sender, EventArgs e); // 0x100F9750 +} + +// Namespace: System.Reflection +public sealed class AssemblyAlgorithmIdAttribute : Attribute // TypeDefIndex: 551 +{ + // Fields + private uint id; // 0x08 + + // Properties + public uint AlgorithmId { get; } // 0x100BF0C0 + + // Methods + public void .ctor(AssemblyHashAlgorithm algorithmId); // 0x100E5940 + public void .ctor(uint algorithmId); // 0x100E5940 +} + +// Namespace: System.Reflection +public sealed class AssemblyCompanyAttribute : Attribute // TypeDefIndex: 552 +{ + // Fields + private string name; // 0x08 + + // Properties + public string Company { get; } // 0x100BF0C0 + + // Methods + public void .ctor(string company); // 0x100E5940 +} + +// Namespace: System.Reflection +public sealed class AssemblyConfigurationAttribute : Attribute // TypeDefIndex: 553 +{ + // Fields + private string name; // 0x08 + + // Properties + public string Configuration { get; } // 0x100BF0C0 + + // Methods + public void .ctor(string configuration); // 0x100E5940 +} + +// Namespace: System.Reflection +public sealed class AssemblyCopyrightAttribute : Attribute // TypeDefIndex: 554 +{ + // Fields + private string name; // 0x08 + + // Properties + public string Copyright { get; } // 0x100BF0C0 + + // Methods + public void .ctor(string copyright); // 0x100E5940 +} + +// Namespace: System.Reflection +public sealed class AssemblyDefaultAliasAttribute : Attribute // TypeDefIndex: 555 +{ + // Fields + private string name; // 0x08 + + // Properties + public string DefaultAlias { get; } // 0x100BF0C0 + + // Methods + public void .ctor(string defaultAlias); // 0x100E5940 +} + +// Namespace: System.Reflection +public sealed class AssemblyDelaySignAttribute : Attribute // TypeDefIndex: 556 +{ + // Fields + private bool delay; // 0x08 + + // Properties + public bool DelaySign { get; } // 0x100EA020 + + // Methods + public void .ctor(bool delaySign); // 0x100EA000 +} + +// Namespace: System.Reflection +public sealed class AssemblyDescriptionAttribute : Attribute // TypeDefIndex: 557 +{ + // Fields + private string name; // 0x08 + + // Properties + public string Description { get; } // 0x100BF0C0 + + // Methods + public void .ctor(string description); // 0x100E5940 +} + +// Namespace: System.Reflection +public sealed class AssemblyFileVersionAttribute : Attribute // TypeDefIndex: 558 +{ + // Fields + private string name; // 0x08 + + // Properties + public string Version { get; } // 0x100BF0C0 + + // Methods + public void .ctor(string version); // 0x100EA030 +} + +// Namespace: System.Reflection +public sealed class AssemblyFlagsAttribute : Attribute // TypeDefIndex: 559 +{ + // Fields + private uint flags; // 0x08 + + // Properties + public uint Flags { get; } // 0x100BF0C0 + public int AssemblyFlags { get; } // 0x100BF0C0 + + // Methods + public void .ctor(uint flags); // 0x100E5940 + public void .ctor(int assemblyFlags); // 0x100E5940 + public void .ctor(AssemblyNameFlags assemblyFlags); // 0x100E5940 +} + +// Namespace: System.Reflection +public sealed class AssemblyInformationalVersionAttribute : Attribute // TypeDefIndex: 560 +{ + // Fields + private string name; // 0x08 + + // Properties + public string InformationalVersion { get; } // 0x100BF0C0 + + // Methods + public void .ctor(string informationalVersion); // 0x100E5940 +} + +// Namespace: System.Reflection +public sealed class AssemblyKeyFileAttribute : Attribute // TypeDefIndex: 561 +{ + // Fields + private string name; // 0x08 + + // Properties + public string KeyFile { get; } // 0x100BF0C0 + + // Methods + public void .ctor(string keyFile); // 0x100E5940 +} + +// Namespace: System.Reflection +public sealed class AssemblyKeyNameAttribute : Attribute // TypeDefIndex: 562 +{ + // Fields + private string name; // 0x08 + + // Properties + public string KeyName { get; } // 0x100BF0C0 + + // Methods + public void .ctor(string keyName); // 0x100E5940 +} + +// Namespace: System.Reflection +[Serializable] +public sealed class AssemblyName : ICloneable, ISerializable, _AssemblyName, IDeserializationCallback // TypeDefIndex: 563 +{ + // Fields + private string name; // 0x08 + private string codebase; // 0x0C + private int major; // 0x10 + private int minor; // 0x14 + private int build; // 0x18 + private int revision; // 0x1C + private CultureInfo cultureinfo; // 0x20 + private AssemblyNameFlags flags; // 0x24 + private AssemblyHashAlgorithm hashalg; // 0x28 + private StrongNameKeyPair keypair; // 0x2C + private byte[] publicKey; // 0x30 + private byte[] keyToken; // 0x34 + private AssemblyVersionCompatibility versioncompat; // 0x38 + private Version version; // 0x3C + private ProcessorArchitecture processor_architecture; // 0x40 + + // Properties + public ProcessorArchitecture ProcessorArchitecture { get; set; } // 0x100E9E80 0x100EB280 + public string Name { get; set; } // 0x100BF0C0 0x100EB270 + public string CodeBase { get; set; } // 0x100C5B30 0x100C5B50 + public string EscapedCodeBase { get; } // 0x100EACE0 + public CultureInfo CultureInfo { get; set; } // 0x100EACD0 0x100EB230 + public AssemblyNameFlags Flags { get; set; } // 0x100EAD50 0x100EB240 + public string FullName { get; } // 0x100EAD70 + public AssemblyHashAlgorithm HashAlgorithm { get; set; } // 0x100EB040 0x100EB250 + public StrongNameKeyPair KeyPair { get; set; } // 0x100EB200 0x100EB260 + public Version Version { get; set; } // 0x100EB220 0x100EB2A0 + public AssemblyVersionCompatibility VersionCompatibility { get; set; } // 0x100EB210 0x100EB290 + private bool IsPublicKeyValid { get; } // 0x100EB050 + + // Methods + public void .ctor(); // 0x100EA920 + public void .ctor(string assemblyName); // 0x100EA930 + internal void .ctor(SerializationInfo si, StreamingContext sc); // 0x100EAA00 + private void System.Runtime.InteropServices._AssemblyName.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x100EA790 + private void System.Runtime.InteropServices._AssemblyName.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x100EA830 + private void System.Runtime.InteropServices._AssemblyName.GetTypeInfoCount(out uint pcTInfo); // 0x100EA7E0 + private void System.Runtime.InteropServices._AssemblyName.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x100EA880 + private static bool ParseName(AssemblyName aname, string assemblyName); // 0x100EA650 + public override string ToString(); // 0x100EA8D0 + public byte[] GetPublicKey(); // 0x100EA580 + public byte[] GetPublicKeyToken(); // 0x100EA4E0 + private byte[] InternalGetPublicKeyToken(); // 0x100EA590 + private byte[] ComputePublicKeyToken(); // 0x100EA1F0 + public static bool ReferenceMatchesDefinition(AssemblyName reference, AssemblyName definition); // 0x100EA670 + public void SetPublicKey(byte[] publicKey); // 0x100EA760 + public void SetPublicKeyToken(byte[] publicKeyToken); // 0x100EA750 + public void GetObjectData(SerializationInfo info, StreamingContext context); // 0x100EA330 + public object Clone(); // 0x100EA150 + public void OnDeserialization(object sender); // 0x100EA630 + public static AssemblyName GetAssemblyName(string assemblyFile); // 0x100EA280 +} + +// Namespace: System.Reflection +[Serializable] +public enum AssemblyNameFlags // TypeDefIndex: 564 +{ + None = 0, + PublicKey = 1, + Retargetable = 256, + EnableJITcompileOptimizer = 16384, + EnableJITcompileTracking = 32768 +} + +// Namespace: System.Reflection +public class AssemblyNameProxy : MarshalByRefObject // TypeDefIndex: 565 +{ + // Methods + public void .ctor(); // 0x100C5970 + public AssemblyName GetAssemblyName(string assemblyFile); // 0x100EA0A0 +} + +// Namespace: System.Reflection +public sealed class AssemblyProductAttribute : Attribute // TypeDefIndex: 566 +{ + // Fields + private string name; // 0x08 + + // Properties + public string Product { get; } // 0x100BF0C0 + + // Methods + public void .ctor(string product); // 0x100E5940 +} + +// Namespace: System.Reflection +public sealed class AssemblyTitleAttribute : Attribute // TypeDefIndex: 567 +{ + // Fields + private string name; // 0x08 + + // Properties + public string Title { get; } // 0x100BF0C0 + + // Methods + public void .ctor(string title); // 0x100E5940 +} + +// Namespace: System.Reflection +public sealed class AssemblyTrademarkAttribute : Attribute // TypeDefIndex: 568 +{ + // Fields + private string name; // 0x08 + + // Properties + public string Trademark { get; } // 0x100BF0C0 + + // Methods + public void .ctor(string trademark); // 0x100E5940 +} + +// Namespace: System.Reflection +[Serializable] +public abstract class Binder // TypeDefIndex: 569 +{ + // Fields + private static Binder default_binder; // 0x00 + + // Properties + internal static Binder DefaultBinder { get; } // 0x100EDCC0 + + // Methods + protected void .ctor(); // 0x100C5530 + private static void .cctor(); // 0x100EDC40 + public abstract FieldInfo BindToField(BindingFlags bindingAttr, FieldInfo[] match, object value, CultureInfo culture); + public abstract MethodBase BindToMethod(BindingFlags bindingAttr, MethodBase[] match, object[] args, ParameterModifier[] modifiers, CultureInfo culture, string[] names, out object state); + public abstract object ChangeType(object value, Type type, CultureInfo culture); + public abstract void ReorderArgumentArray(object[] args, object state); + public abstract MethodBase SelectMethod(BindingFlags bindingAttr, MethodBase[] match, Type[] types, ParameterModifier[] modifiers); + public abstract PropertyInfo SelectProperty(BindingFlags bindingAttr, PropertyInfo[] match, Type returnType, Type[] indexes, ParameterModifier[] modifiers); + internal static bool ConvertArgs(Binder binder, object[] args, ParameterInfo[] pinfo, CultureInfo culture); // 0x100ED890 + internal static int GetDerivedLevel(Type type); // 0x100EDBD0 + internal static MethodBase FindMostDerivedMatch(MethodBase[] match); // 0x100ED9F0 +} + +// Namespace: +internal sealed class Default : Binder // TypeDefIndex: 570 +{ + // Methods + public void .ctor(); // 0x100F53D0 + public override FieldInfo BindToField(BindingFlags bindingAttr, FieldInfo[] match, object value, CultureInfo culture); // 0x100F4260 + public override MethodBase BindToMethod(BindingFlags bindingAttr, MethodBase[] match, object[] args, ParameterModifier[] modifiers, CultureInfo culture, string[] names, out object state); // 0x100F4340 + private void ReorderParameters(string[] names, object[] args, MethodBase selected); // 0x100F4CA0 + private static bool IsArrayAssignable(Type object_type, Type target_type); // 0x100F4C10 + public override object ChangeType(object value, Type type, CultureInfo culture); // 0x100F44A0 + public override void ReorderArgumentArray(object[] args, object state); // 0x100C5530 + private static bool check_type(Type from, Type to); // 0x100F55E0 + private static bool check_arguments(Type[] types, ParameterInfo[] args, bool allowByRefMatch); // 0x100F5410 + public override MethodBase SelectMethod(BindingFlags bindingAttr, MethodBase[] match, Type[] types, ParameterModifier[] modifiers); // 0x100F51A0 + private MethodBase SelectMethod(BindingFlags bindingAttr, MethodBase[] match, Type[] types, ParameterModifier[] modifiers, bool allowByRefMatch); // 0x100F4E30 + private MethodBase GetBetterMethod(MethodBase m1, MethodBase m2, Type[] types); // 0x100F4950 + private int CompareCloserType(Type t1, Type t2); // 0x100F4780 + public override PropertyInfo SelectProperty(BindingFlags bindingAttr, PropertyInfo[] match, Type returnType, Type[] indexes, ParameterModifier[] modifiers); // 0x100F51C0 + private static int check_arguments_with_score(Type[] types, ParameterInfo[] args); // 0x100F5530 + private static int check_type_with_score(Type from, Type to); // 0x100F5DE0 +} + +// Namespace: System.Reflection +[Serializable] +public enum BindingFlags // TypeDefIndex: 571 +{ + Default = 0, + IgnoreCase = 1, + DeclaredOnly = 2, + Instance = 4, + Static = 8, + Public = 16, + NonPublic = 32, + FlattenHierarchy = 64, + InvokeMethod = 256, + CreateInstance = 512, + GetField = 1024, + SetField = 2048, + GetProperty = 4096, + SetProperty = 8192, + PutDispProperty = 16384, + PutRefDispProperty = 32768, + ExactBinding = 65536, + SuppressChangeType = 131072, + OptionalParamBinding = 262144, + IgnoreReturn = 16777216 +} + +// Namespace: System.Reflection +[Serializable] +public enum CallingConventions // TypeDefIndex: 572 +{ + Standard = 1, + VarArgs = 2, + Any = 3, + HasThis = 32, + ExplicitThis = 64 +} + +// Namespace: System.Reflection +[Serializable] +public abstract class ConstructorInfo : MethodBase, _ConstructorInfo // TypeDefIndex: 573 +{ + // Fields + public static readonly string ConstructorName; // 0x00 + public static readonly string TypeConstructorName; // 0x04 + + // Properties + public override MemberTypes MemberType { get; } // 0x100EF660 + + // Methods + protected void .ctor(); // 0x100C5970 + private static void .cctor(); // 0x100EF620 + private void System.Runtime.InteropServices._ConstructorInfo.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x100EF410 + private void System.Runtime.InteropServices._ConstructorInfo.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x100EF4B0 + private void System.Runtime.InteropServices._ConstructorInfo.GetTypeInfoCount(out uint pcTInfo); // 0x100EF460 + private void System.Runtime.InteropServices._ConstructorInfo.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x100EF5D0 + private object System.Runtime.InteropServices._ConstructorInfo.Invoke_2(object obj, BindingFlags invokeAttr, Binder binder, object[] parameters, CultureInfo culture); // 0x100EF500 + private object System.Runtime.InteropServices._ConstructorInfo.Invoke_3(object obj, object[] parameters); // 0x100EF530 + private object System.Runtime.InteropServices._ConstructorInfo.Invoke_4(BindingFlags invokeAttr, Binder binder, object[] parameters, CultureInfo culture); // 0x100EF540 + private object System.Runtime.InteropServices._ConstructorInfo.Invoke_5(object[] parameters); // 0x100EF570 + public object Invoke(object[] parameters); // 0x100EF3B0 + public abstract object Invoke(BindingFlags invokeAttr, Binder binder, object[] parameters, CultureInfo culture); + virtual Type System.Runtime.InteropServices._ConstructorInfo.GetType(); // 0x100ED2B0 +} + +// Namespace: System.Reflection +[Serializable] +public sealed class CustomAttributeData // TypeDefIndex: 574 +{ + // Fields + private ConstructorInfo ctorInfo; // 0x08 + private IList`1 ctorArgs; // 0x0C + private IList`1 namedArgs; // 0x10 + + // Properties + public ConstructorInfo Constructor { get; } // 0x100BF0C0 + public IList`1 ConstructorArguments { get; } // 0x100C5B30 + public IList`1 NamedArguments { get; } // 0x100BFC20 + + // Methods + internal void .ctor(ConstructorInfo ctorInfo, object[] ctorArgs, object[] namedArgs); // 0x100F2D90 + public static IList`1 GetCustomAttributes(Assembly target); // 0x100F2570 + public static IList`1 GetCustomAttributes(MemberInfo target); // 0x100F2520 + public static IList`1 GetCustomAttributes(Module target); // 0x100F24D0 + public static IList`1 GetCustomAttributes(ParameterInfo target); // 0x100F2480 + public override string ToString(); // 0x100F2910 + private static T[] UnboxValues(object[] values); + public override bool Equals(object obj); // 0x100F21F0 + public override int GetHashCode(); // 0x100F25C0 +} + +// Namespace: System.Reflection +[Serializable] +public class CustomAttributeFormatException : FormatException // TypeDefIndex: 575 +{ + // Methods + public void .ctor(); // 0x100F2E50 + public void .ctor(string message); // 0x100F2EA0 + public void .ctor(string message, Exception inner); // 0x100F2E90 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100F2E30 +} + +// Namespace: System.Reflection +[Serializable] +public struct CustomAttributeNamedArgument // TypeDefIndex: 576 +{ + // Fields + private CustomAttributeTypedArgument typedArgument; // 0x08 + private MemberInfo memberInfo; // 0x10 + + // Properties + public MemberInfo MemberInfo { get; } // 0x100039B0 + public CustomAttributeTypedArgument TypedValue { get; } // 0x100039C0 + + // Methods + internal void .ctor(MemberInfo memberInfo, object typedArgument); // 0x10003940 + public override string ToString(); // 0x10003930 + public override bool Equals(object obj); // 0x10003910 + public override int GetHashCode(); // 0x10003920 + public static bool op_Equality(CustomAttributeNamedArgument left, CustomAttributeNamedArgument right); // 0x100F3070 + public static bool op_Inequality(CustomAttributeNamedArgument left, CustomAttributeNamedArgument right); // 0x100F30D0 +} + +// Namespace: System.Reflection +[Serializable] +public struct CustomAttributeTypedArgument // TypeDefIndex: 577 +{ + // Fields + private Type argumentType; // 0x08 + private object value; // 0x0C + + // Properties + public Type ArgumentType { get; } // 0x10003A80 + public object Value { get; } // 0x10003A90 + + // Methods + internal void .ctor(Type argumentType, object value); // 0x10003A70 + public override string ToString(); // 0x10003A60 + public override bool Equals(object obj); // 0x100039F0 + public override int GetHashCode(); // 0x10003A00 + public static bool op_Equality(CustomAttributeTypedArgument left, CustomAttributeTypedArgument right); // 0x100F35A0 + public static bool op_Inequality(CustomAttributeTypedArgument left, CustomAttributeTypedArgument right); // 0x100F3600 +} + +// Namespace: System.Reflection +[Serializable] +public enum EventAttributes // TypeDefIndex: 578 +{ + None = 0, + SpecialName = 512, + ReservedMask = 1024, + RTSpecialName = 1024 +} + +// Namespace: System.Reflection +[Serializable] +public abstract class EventInfo : MemberInfo, _EventInfo // TypeDefIndex: 579 +{ + // Fields + private AddEventAdapter cached_add_event; // 0x08 + + // Properties + public abstract EventAttributes Attributes { get; } + public Type EventHandlerType { get; } // 0x1016F140 + public bool IsMulticast { get; } // 0x100E5880 + public bool IsSpecialName { get; } // 0x1016F1B0 + public override MemberTypes MemberType { get; } // 0x1016F1E0 + + // Methods + protected void .ctor(); // 0x100BF000 + private void System.Runtime.InteropServices._EventInfo.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x1016F000 + private void System.Runtime.InteropServices._EventInfo.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x1016F0A0 + private void System.Runtime.InteropServices._EventInfo.GetTypeInfoCount(out uint pcTInfo); // 0x1016F050 + private void System.Runtime.InteropServices._EventInfo.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x1016F0F0 + public void AddEventHandler(object target, Delegate handler); // 0x1016E970 + public MethodInfo GetAddMethod(); // 0x1016EE70 + public abstract MethodInfo GetAddMethod(bool nonPublic); + public MethodInfo GetRaiseMethod(); // 0x100EB890 + public abstract MethodInfo GetRaiseMethod(bool nonPublic); + public MethodInfo GetRemoveMethod(); // 0x1016EEE0 + public abstract MethodInfo GetRemoveMethod(bool nonPublic); + public virtual MethodInfo[] GetOtherMethods(bool nonPublic); // 0x1016EEB0 + public MethodInfo[] GetOtherMethods(); // 0x1016EE90 + public void RemoveEventHandler(object target, Delegate handler); // 0x1016EF00 + private static void AddEventFrame(AddEvent`2 addEvent, object obj, object dele); + private static void StaticAddEventAdapterFrame(StaticAddEvent`1 addEvent, object obj, object dele); + private static AddEventAdapter CreateAddEventDelegate(MethodInfo method); // 0x1016EAF0 + virtual Type System.Runtime.InteropServices._EventInfo.GetType(); // 0x1015CD60 +} + +// Namespace: +private delegate void AddEventAdapter(object _this, Delegate dele); // TypeDefIndex: 580; 0x1016E5B0 + +// Namespace: +private delegate void AddEvent`2(T _this, T dele); // TypeDefIndex: 581; 0x00000000 + +// Namespace: +private delegate void StaticAddEvent`1(T dele); // TypeDefIndex: 582; 0x00000000 + +// Namespace: System.Reflection +public sealed class ExceptionHandlingClause // TypeDefIndex: 583 +{ + // Fields + internal Type catch_type; // 0x08 + internal int filter_offset; // 0x0C + internal ExceptionHandlingClauseOptions flags; // 0x10 + internal int try_offset; // 0x14 + internal int try_length; // 0x18 + internal int handler_offset; // 0x1C + internal int handler_length; // 0x20 + + // Properties + public Type CatchType { get; } // 0x100BF0C0 + public int FilterOffset { get; } // 0x100C5B30 + public ExceptionHandlingClauseOptions Flags { get; } // 0x100BFC20 + public int HandlerLength { get; } // 0x100EACD0 + public int HandlerOffset { get; } // 0x100F85F0 + public int TryLength { get; } // 0x100EE580 + public int TryOffset { get; } // 0x100EF0C0 + + // Methods + internal void .ctor(); // 0x100BF000 + public override string ToString(); // 0x1016F1F0 +} + +// Namespace: System.Reflection +public enum ExceptionHandlingClauseOptions // TypeDefIndex: 584 +{ + Clause = 0, + Filter = 1, + Finally = 2, + Fault = 4 +} + +// Namespace: System.Reflection +[Serializable] +public enum FieldAttributes // TypeDefIndex: 585 +{ + PrivateScope = 0, + Private = 1, + FamANDAssem = 2, + Assembly = 3, + Family = 4, + FamORAssem = 5, + Public = 6, + FieldAccessMask = 7, + Static = 16, + InitOnly = 32, + Literal = 64, + NotSerialized = 128, + HasFieldRVA = 256, + SpecialName = 512, + RTSpecialName = 1024, + HasFieldMarshal = 4096, + PinvokeImpl = 8192, + HasDefault = 32768, + ReservedMask = 38144 +} + +// Namespace: System.Reflection +[Serializable] +public abstract class FieldInfo : MemberInfo, _FieldInfo // TypeDefIndex: 586 +{ + // Properties + public abstract FieldAttributes Attributes { get; } + public abstract RuntimeFieldHandle FieldHandle { get; } + public abstract Type FieldType { get; } + public override MemberTypes MemberType { get; } // 0x100FCEA0 + public bool IsLiteral { get; } // 0x1016FE00 + public bool IsStatic { get; } // 0x1016FF20 + public bool IsInitOnly { get; } // 0x1016FDD0 + public bool IsPublic { get; } // 0x1016FEC0 + public bool IsPrivate { get; } // 0x1016FE90 + public bool IsFamily { get; } // 0x1016FDA0 + public bool IsAssembly { get; } // 0x1016FD10 + public bool IsFamilyAndAssembly { get; } // 0x1016FD40 + public bool IsFamilyOrAssembly { get; } // 0x1016FD70 + public bool IsPinvokeImpl { get; } // 0x1016FE60 + public bool IsSpecialName { get; } // 0x1016FEF0 + public bool IsNotSerialized { get; } // 0x1016FE30 + internal virtual UnmanagedMarshal UMarshal { get; } // 0x10104640 + + // Methods + protected void .ctor(); // 0x100BF000 + private void System.Runtime.InteropServices._FieldInfo.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x1016FBD0 + private void System.Runtime.InteropServices._FieldInfo.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x1016FC70 + private void System.Runtime.InteropServices._FieldInfo.GetTypeInfoCount(out uint pcTInfo); // 0x1016FC20 + private void System.Runtime.InteropServices._FieldInfo.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x1016FCC0 + public abstract object GetValue(object obj); + public abstract void SetValue(object obj, object value, BindingFlags invokeAttr, Binder binder, CultureInfo culture); + public void SetValue(object obj, object value); // 0x1016FBA0 + private static FieldInfo internal_from_handle_type(IntPtr field_handle, IntPtr type_handle); // 0x1016FF50 + public static FieldInfo GetFieldFromHandle(RuntimeFieldHandle handle); // 0x1016F640 + public static FieldInfo GetFieldFromHandle(RuntimeFieldHandle handle, RuntimeTypeHandle declaringType); // 0x1016F5B0 + internal virtual int GetFieldOffset(); // 0x1016F6C0 + public virtual object GetValueDirect(TypedReference obj); // 0x1016FB00 + public virtual void SetValueDirect(TypedReference obj, object value); // 0x1016FB50 + private UnmanagedMarshal GetUnmanagedMarshal(); // 0x10104640 + internal object[] GetPseudoCustomAttributes(); // 0x1016F770 + private Type[] GetTypeModifiers(bool optional); // 0x1016FAE0 + public virtual Type[] GetOptionalCustomModifiers(); // 0x1016F710 + public virtual Type[] GetRequiredCustomModifiers(); // 0x1016FA80 + public virtual object GetRawConstantValue(); // 0x1016FA30 + virtual Type System.Runtime.InteropServices._FieldInfo.GetType(); // 0x1015CD60 +} + +// Namespace: System.Reflection +public enum GenericParameterAttributes // TypeDefIndex: 587 +{ + None = 0, + Covariant = 1, + Contravariant = 2, + VarianceMask = 3, + ReferenceTypeConstraint = 4, + NotNullableValueTypeConstraint = 8, + DefaultConstructorConstraint = 16, + SpecialConstraintMask = 28 +} + +// Namespace: System.Reflection +[Serializable] +public enum ImageFileMachine // TypeDefIndex: 588 +{ + I386 = 332, + IA64 = 512, + AMD64 = 34404 +} + +// Namespace: System.Reflection +public struct InterfaceMapping // TypeDefIndex: 589 +{ + // Fields + public MethodInfo[] InterfaceMethods; // 0x08 + public Type InterfaceType; // 0x0C + public MethodInfo[] TargetMethods; // 0x10 + public Type TargetType; // 0x14 + +} + +// Namespace: System.Reflection +[Serializable] +public class InvalidFilterCriteriaException : ApplicationException // TypeDefIndex: 590 +{ + // Methods + public void .ctor(); // 0x10170340 + public void .ctor(string message); // 0x10170380 + public void .ctor(string message, Exception inner); // 0x10170330 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 +} + +// Namespace: System.Reflection +public class LocalVariableInfo // TypeDefIndex: 591 +{ + // Fields + internal Type type; // 0x08 + internal bool is_pinned; // 0x0C + internal ushort position; // 0x0E + + // Properties + public virtual bool IsPinned { get; } // 0x100F8910 + public virtual int LocalIndex { get; } // 0x101308F0 + public virtual Type LocalType { get; } // 0x100BF0C0 + + // Methods + internal void .ctor(); // 0x100BF000 + public override string ToString(); // 0x10170390 +} + +// Namespace: System.Reflection +public class ManifestResourceInfo // TypeDefIndex: 592 +{ + // Fields + private Assembly _assembly; // 0x08 + private string _filename; // 0x0C + private ResourceLocation _location; // 0x10 + + // Properties + public virtual string FileName { get; } // 0x100C5B30 + public virtual Assembly ReferencedAssembly { get; } // 0x100BF0C0 + public virtual ResourceLocation ResourceLocation { get; } // 0x100BFC20 + + // Methods + internal void .ctor(); // 0x100BF000 + internal void .ctor(Assembly assembly, string filename, ResourceLocation location); // 0x10127920 +} + +// Namespace: System.Reflection +[Serializable] +internal class MemberInfoSerializationHolder : ISerializable, IObjectReference // TypeDefIndex: 593 +{ + // Fields + private const BindingFlags DefaultBinding = 60; // 0x00 + private readonly string _memberName; // 0x08 + private readonly string _memberSignature; // 0x0C + private readonly MemberTypes _memberType; // 0x10 + private readonly Type _reflectedType; // 0x14 + private readonly Type[] _genericArguments; // 0x18 + + // Methods + private void .ctor(SerializationInfo info, StreamingContext ctx); // 0x10170FC0 + public static void Serialize(SerializationInfo info, string name, Type klass, string signature, MemberTypes type); // 0x10170FA0 + public static void Serialize(SerializationInfo info, string name, Type klass, string signature, MemberTypes type, Type[] genericArguments); // 0x10170E20 + public void GetObjectData(SerializationInfo info, StreamingContext context); // 0x10170830 + public object GetRealObject(StreamingContext context); // 0x10170880 +} + +// Namespace: System.Reflection +[Serializable] +public enum MemberTypes // TypeDefIndex: 594 +{ + Constructor = 1, + Event = 2, + Field = 4, + Method = 8, + Property = 16, + TypeInfo = 32, + Custom = 64, + NestedType = 128, + All = 191 +} + +// Namespace: System.Reflection +[Serializable] +public enum MethodAttributes // TypeDefIndex: 595 +{ + PrivateScope = 0, + ReuseSlot = 0, + Private = 1, + FamANDAssem = 2, + Assembly = 3, + Family = 4, + FamORAssem = 5, + Public = 6, + MemberAccessMask = 7, + UnmanagedExport = 8, + Static = 16, + Final = 32, + Virtual = 64, + HideBySig = 128, + VtableLayoutMask = 256, + NewSlot = 256, + CheckAccessOnOverride = 512, + Abstract = 1024, + SpecialName = 2048, + RTSpecialName = 4096, + PinvokeImpl = 8192, + HasSecurity = 16384, + RequireSecObject = 32768, + ReservedMask = 53248 +} + +// Namespace: System.Reflection +[Serializable] +public abstract class MethodBase : MemberInfo, _MethodBase // TypeDefIndex: 596 +{ + // Properties + public abstract RuntimeMethodHandle MethodHandle { get; } + public abstract MethodAttributes Attributes { get; } + public virtual CallingConventions CallingConvention { get; } // 0x100EF660 + public bool IsPublic { get; } // 0x10171880 + public bool IsPrivate { get; } // 0x10171850 + public bool IsFamily { get; } // 0x101717C0 + public bool IsAssembly { get; } // 0x101716A0 + public bool IsFamilyAndAssembly { get; } // 0x10171760 + public bool IsFamilyOrAssembly { get; } // 0x10171790 + public bool IsStatic { get; } // 0x101718E0 + public bool IsFinal { get; } // 0x101717F0 + public bool IsVirtual { get; } // 0x10171910 + public bool IsHideBySig { get; } // 0x10171820 + public bool IsAbstract { get; } // 0x10171670 + public bool IsSpecialName { get; } // 0x101718B0 + public bool IsConstructor { get; } // 0x101716D0 + public virtual bool ContainsGenericParameters { get; } // 0x100EFBF0 + public virtual bool IsGenericMethodDefinition { get; } // 0x100EFBF0 + public virtual bool IsGenericMethod { get; } // 0x100EFBF0 + + // Methods + protected void .ctor(); // 0x100BF000 + private void System.Runtime.InteropServices._MethodBase.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x10171530 + private void System.Runtime.InteropServices._MethodBase.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x101715D0 + private void System.Runtime.InteropServices._MethodBase.GetTypeInfoCount(out uint pcTInfo); // 0x10171580 + private void System.Runtime.InteropServices._MethodBase.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x10171620 + public static MethodBase GetCurrentMethod(); // 0x10171230 + internal static MethodBase GetMethodFromHandleNoGenericCheck(RuntimeMethodHandle handle); // 0x10171340 + private static MethodBase GetMethodFromIntPtr(IntPtr handle, IntPtr declaringType); // 0x10171450 + public static MethodBase GetMethodFromHandle(RuntimeMethodHandle handle); // 0x10171380 + private static MethodBase GetMethodFromHandleInternalType(IntPtr method_handle, IntPtr type_handle); // 0x10171320 + public static MethodBase GetMethodFromHandle(RuntimeMethodHandle handle, RuntimeTypeHandle declaringType); // 0x10171440 + public abstract MethodImplAttributes GetMethodImplementationFlags(); + public abstract ParameterInfo[] GetParameters(); + internal virtual int GetParameterCount(); // 0x101714D0 + public object Invoke(object obj, object[] parameters); // 0x10171500 + public abstract object Invoke(object obj, BindingFlags invokeAttr, Binder binder, object[] parameters, CultureInfo culture); + internal virtual int get_next_table_index(object obj, int table, bool inc); // 0x10171940 + public virtual Type[] GetGenericArguments(); // 0x10171270 + internal static MethodBody GetMethodBodyInternal(IntPtr handle); // 0x101712C0 + internal static MethodBody GetMethodBody(IntPtr handle); // 0x101712C0 + public virtual MethodBody GetMethodBody(); // 0x101712D0 + virtual Type System.Runtime.InteropServices._MethodBase.GetType(); // 0x1015CD60 +} + +// Namespace: System.Reflection +public sealed class MethodBody // TypeDefIndex: 597 +{ + // Fields + private ExceptionHandlingClause[] clauses; // 0x08 + private LocalVariableInfo[] locals; // 0x0C + private byte[] il; // 0x10 + private bool init_locals; // 0x14 + private int sig_token; // 0x18 + private int max_stack; // 0x1C + + // Properties + public IList`1 ExceptionHandlingClauses { get; } // 0x10171A00 + public IList`1 LocalVariables { get; } // 0x10171A40 + public bool InitLocals { get; } // 0x100C5670 + public int LocalSignatureMetadataToken { get; } // 0x100EE580 + public int MaxStackSize { get; } // 0x100F85F0 + + // Methods + internal void .ctor(); // 0x100BF000 + public byte[] GetILAsByteArray(); // 0x100BFC20 +} + +// Namespace: System.Reflection +[Serializable] +public enum MethodImplAttributes // TypeDefIndex: 598 +{ + IL = 0, + Managed = 0, + Native = 1, + OPTIL = 2, + CodeTypeMask = 3, + Runtime = 3, + ManagedMask = 4, + Unmanaged = 4, + NoInlining = 8, + ForwardRef = 16, + Synchronized = 32, + PreserveSig = 128, + InternalCall = 4096, + MaxMethodImplVal = 65535 +} + +// Namespace: System.Reflection +[Serializable] +public abstract class MethodInfo : MethodBase, _MethodInfo // TypeDefIndex: 599 +{ + // Properties + public override MemberTypes MemberType { get; } // 0x10171CD0 + public virtual Type ReturnType { get; } // 0x100C5600 + public abstract ICustomAttributeProvider ReturnTypeCustomAttributes { get; } + public override bool IsGenericMethod { get; } // 0x100EFBF0 + public override bool IsGenericMethodDefinition { get; } // 0x100EFBF0 + public override bool ContainsGenericParameters { get; } // 0x100EFBF0 + public virtual ParameterInfo ReturnParameter { get; } // 0x10171CE0 + + // Methods + protected void .ctor(); // 0x100BF000 + private void System.Runtime.InteropServices._MethodInfo.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x10171B90 + private void System.Runtime.InteropServices._MethodInfo.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x10171C30 + private void System.Runtime.InteropServices._MethodInfo.GetTypeInfoCount(out uint pcTInfo); // 0x10171BE0 + private void System.Runtime.InteropServices._MethodInfo.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x10171C80 + public abstract MethodInfo GetBaseDefinition(); + public virtual MethodInfo GetGenericMethodDefinition(); // 0x10171AD0 + public virtual MethodInfo MakeGenericMethod(Type[] typeArguments); // 0x10171B20 + public override Type[] GetGenericArguments(); // 0x10171A80 + virtual Type System.Runtime.InteropServices._MethodInfo.GetType(); // 0x1015CD60 +} + +// Namespace: System.Reflection +[Serializable] +public sealed class Missing : ISerializable // TypeDefIndex: 600 +{ + // Fields + public static readonly Missing Value; // 0x00 + + // Methods + internal void .ctor(); // 0x100BF000 + private static void .cctor(); // 0x10171D30 + private void System.Runtime.Serialization.ISerializable.GetObjectData(SerializationInfo info, StreamingContext context); // 0x100C5530 +} + +// Namespace: System.Reflection +internal enum ResolveTokenError // TypeDefIndex: 601 +{ + OutOfRange = 0, + BadTable = 1, + Other = 2 +} + +// Namespace: System.Reflection +[Serializable] +public class Module : ISerializable, ICustomAttributeProvider, _Module // TypeDefIndex: 602 +{ + // Fields + private const BindingFlags defaultBindingFlags = 28; // 0x00 + public static readonly TypeFilter FilterTypeName; // 0x00 + public static readonly TypeFilter FilterTypeNameIgnoreCase; // 0x04 + private IntPtr _impl; // 0x08 + internal Assembly assembly; // 0x0C + internal string fqname; // 0x10 + internal string name; // 0x14 + internal string scopename; // 0x18 + internal bool is_resource; // 0x1C + internal int token; // 0x20 + + // Properties + public Assembly Assembly { get; } // 0x100C5B30 + public virtual string FullyQualifiedName { get; } // 0x100BFC20 + public string Name { get; } // 0x100EF0C0 + public string ScopeName { get; } // 0x100EE580 + public ModuleHandle ModuleHandle { get; } // 0x100BF0C0 + public int MetadataToken { get; } // 0x10173720 + public int MDStreamVersion { get; } // 0x10173690 + internal Guid MvId { get; } // 0x10173730 + public Guid ModuleVersionId { get; } // 0x10173730 + + // Methods + internal void .ctor(); // 0x100BF000 + private static void .cctor(); // 0x10173420 + private void System.Runtime.InteropServices._Module.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x101732E0 + private void System.Runtime.InteropServices._Module.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x10173380 + private void System.Runtime.InteropServices._Module.GetTypeInfoCount(out uint pcTInfo); // 0x10173330 + private void System.Runtime.InteropServices._Module.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x101733D0 + internal static int GetMDStreamVersion(IntPtr module_handle); // 0x101724C0 + public virtual Type[] FindTypes(TypeFilter filter, object filterCriteria); // 0x10172140 + public virtual object[] GetCustomAttributes(bool inherit); // 0x101722A0 + public virtual object[] GetCustomAttributes(Type attributeType, bool inherit); // 0x101722F0 + public FieldInfo GetField(string name); // 0x10172380 + public FieldInfo GetField(string name, BindingFlags bindingAttr); // 0x10172340 + public FieldInfo[] GetFields(); // 0x101723C0 + public MethodInfo GetMethod(string name); // 0x10172500 + public MethodInfo GetMethod(string name, Type[] types); // 0x10172560 + public MethodInfo GetMethod(string name, BindingFlags bindingAttr, Binder binder, CallingConventions callConvention, Type[] types, ParameterModifier[] modifiers); // 0x10172530 + protected virtual MethodInfo GetMethodImpl(string name, BindingFlags bindingAttr, Binder binder, CallingConventions callConvention, Type[] types, ParameterModifier[] modifiers); // 0x101724D0 + public MethodInfo[] GetMethods(); // 0x10172600 + public MethodInfo[] GetMethods(BindingFlags bindingFlags); // 0x10172590 + public FieldInfo[] GetFields(BindingFlags bindingFlags); // 0x10172430 + public virtual void GetObjectData(SerializationInfo info, StreamingContext context); // 0x10172690 + public virtual Type GetType(string className); // 0x10135BF0 + public virtual Type GetType(string className, bool ignoreCase); // 0x10135E90 + public virtual Type GetType(string className, bool throwOnError, bool ignoreCase); // 0x10172750 + private Type[] InternalGetTypes(); // 0x10172830 + public virtual Type[] GetTypes(); // 0x10172830 + public virtual bool IsDefined(Type attributeType, bool inherit); // 0x10172840 + public bool IsResource(); // 0x10172890 + public override string ToString(); // 0x100EF0C0 + public void GetPEKind(out PortableExecutableKinds peKind, out ImageFileMachine machine); // 0x10172720 + private Exception resolve_token_exception(int metadataToken, ResolveTokenError error, string tokenType); // 0x10173850 + private IntPtr[] ptrs_from_types(Type[] types); // 0x10173760 + public FieldInfo ResolveField(int metadataToken); // 0x10172AB0 + public FieldInfo ResolveField(int metadataToken, Type[] genericTypeArguments, Type[] genericMethodArguments); // 0x10172980 + public MemberInfo ResolveMember(int metadataToken); // 0x10172CC0 + public MemberInfo ResolveMember(int metadataToken, Type[] genericTypeArguments, Type[] genericMethodArguments); // 0x10172C00 + public MethodBase ResolveMethod(int metadataToken); // 0x10172DA0 + public MethodBase ResolveMethod(int metadataToken, Type[] genericTypeArguments, Type[] genericMethodArguments); // 0x10172E90 + public string ResolveString(int metadataToken); // 0x10173050 + public Type ResolveType(int metadataToken); // 0x10173100 + public Type ResolveType(int metadataToken, Type[] genericTypeArguments, Type[] genericMethodArguments); // 0x101731F0 + public byte[] ResolveSignature(int metadataToken); // 0x10172F80 + internal static Type MonoDebugger_ResolveType(Module module, int token); // 0x101728A0 + internal static Guid Mono_GetGuid(Module module); // 0x10136000 + internal virtual Guid GetModuleVersionId(); // 0x10172660 + private static bool filter_by_type_name(Type m, object filterCriteria); // 0x101735B0 + private static bool filter_by_type_name_ignore_case(Type m, object filterCriteria); // 0x101734A0 + internal IntPtr GetHINSTANCE(); // 0x10104640 + private string GetGuidInternal(); // 0x101724B0 + private Type GetGlobalType(); // 0x101724A0 + internal static IntPtr ResolveTypeToken(IntPtr module, int token, IntPtr[] type_args, IntPtr[] method_args, out ResolveTokenError error); // 0x101730E0 + internal static IntPtr ResolveMethodToken(IntPtr module, int token, IntPtr[] type_args, IntPtr[] method_args, out ResolveTokenError error); // 0x10172D80 + internal static IntPtr ResolveFieldToken(IntPtr module, int token, IntPtr[] type_args, IntPtr[] method_args, out ResolveTokenError error); // 0x10172960 + internal static string ResolveStringToken(IntPtr module, int token, out ResolveTokenError error); // 0x10173030 + internal static MemberInfo ResolveMemberToken(IntPtr module, int token, IntPtr[] type_args, IntPtr[] method_args, out ResolveTokenError error); // 0x10172BE0 + internal static byte[] ResolveSignature(IntPtr module, int metadataToken, out ResolveTokenError error); // 0x10173010 + internal static void GetPEKind(IntPtr module, out PortableExecutableKinds peKind, out ImageFileMachine machine); // 0x10172700 +} + +// Namespace: System.Reflection +internal struct MonoEventInfo // TypeDefIndex: 603 +{ + // Fields + public Type declaring_type; // 0x08 + public Type reflected_type; // 0x0C + public string name; // 0x10 + public MethodInfo add_method; // 0x14 + public MethodInfo remove_method; // 0x18 + public MethodInfo raise_method; // 0x1C + public EventAttributes attrs; // 0x20 + public MethodInfo[] other_methods; // 0x24 + + // Methods + private static void get_event_info(MonoEvent ev, out MonoEventInfo info); // 0x101749D0 + internal static MonoEventInfo GetEventInfo(MonoEvent ev); // 0x101749A0 +} + +// Namespace: System.Reflection +[Serializable] +internal sealed class MonoEvent : EventInfo, ISerializable // TypeDefIndex: 604 +{ + // Fields + private IntPtr klass; // 0x0C + private IntPtr handle; // 0x10 + + // Properties + public override EventAttributes Attributes { get; } // 0x10174F70 + public override Type DeclaringType { get; } // 0x10174FA0 + public override Type ReflectedType { get; } // 0x10175000 + public override string Name { get; } // 0x10174FD0 + + // Methods + public void .ctor(); // 0x100BF000 + public override MethodInfo GetAddMethod(bool nonPublic); // 0x101749F0 + public override MethodInfo GetRaiseMethod(bool nonPublic); // 0x10174D80 + public override MethodInfo GetRemoveMethod(bool nonPublic); // 0x10174DE0 + public override MethodInfo[] GetOtherMethods(bool nonPublic); // 0x10174C20 + public override string ToString(); // 0x10174E90 + public override bool IsDefined(Type attributeType, bool inherit); // 0x10174E40 + public override object[] GetCustomAttributes(bool inherit); // 0x10174AA0 + public override object[] GetCustomAttributes(Type attributeType, bool inherit); // 0x10174A50 + public void GetObjectData(SerializationInfo info, StreamingContext context); // 0x10174AF0 +} + +// Namespace: System.Reflection +[Serializable] +internal class MonoField : FieldInfo, ISerializable // TypeDefIndex: 605 +{ + // Fields + internal IntPtr klass; // 0x08 + internal RuntimeFieldHandle fhandle; // 0x0C + private string name; // 0x10 + private Type type; // 0x14 + private FieldAttributes attrs; // 0x18 + + // Properties + public override FieldAttributes Attributes { get; } // 0x100EE580 + public override RuntimeFieldHandle FieldHandle { get; } // 0x100C5B30 + public override Type FieldType { get; } // 0x100EF0C0 + public override Type ReflectedType { get; } // 0x10175810 + public override Type DeclaringType { get; } // 0x10175800 + public override string Name { get; } // 0x100BFC20 + + // Methods + public void .ctor(); // 0x100BF000 + private Type GetParentType(bool declaring); // 0x10175240 + public override bool IsDefined(Type attributeType, bool inherit); // 0x10175410 + public override object[] GetCustomAttributes(bool inherit); // 0x10175130 + public override object[] GetCustomAttributes(Type attributeType, bool inherit); // 0x10175180 + internal override int GetFieldOffset(); // 0x101751D0 + private object GetValueInternal(object obj); // 0x10175270 + public override object GetValue(object obj); // 0x10175290 + public override string ToString(); // 0x101757A0 + private static void SetValueInternal(FieldInfo fi, object obj, object value); // 0x10175460 + public override void SetValue(object obj, object val, BindingFlags invokeAttr, Binder binder, CultureInfo culture); // 0x10175480 + internal MonoField Clone(string newName); // 0x101750C0 + public void GetObjectData(SerializationInfo info, StreamingContext context); // 0x101751E0 + public override object GetRawConstantValue(); // 0x10175260 + private void CheckGeneric(); // 0x10175030 +} + +// Namespace: System.Reflection +internal class MonoGenericClass : MonoType // TypeDefIndex: 606 +{ + // Fields + private const BindingFlags flags = 62; // 0x00 + internal TypeBuilder generic_type; // 0x10 + private Type[] type_arguments; // 0x14 + private bool initialized; // 0x18 + private Hashtable fields; // 0x1C + private Hashtable ctors; // 0x20 + private Hashtable methods; // 0x24 + private int event_count; // 0x28 + + // Properties + public override Type BaseType { get; } // 0x10178010 + public override Type UnderlyingSystemType { get; } // 0x100F7810 + public override string Name { get; } // 0x101780C0 + public override string Namespace { get; } // 0x101780E0 + public override string FullName { get; } // 0x10178050 + public override string AssemblyQualifiedName { get; } // 0x10177FF0 + public override Guid GUID { get; } // 0x10178070 + + // Methods + internal void .ctor(); // 0x10177D20 + internal void .ctor(TypeBuilder tb, Type[] args); // 0x10177D80 + private void initialize(MethodInfo[] methods, ConstructorInfo[] ctors, FieldInfo[] fields, PropertyInfo[] properties, EventInfo[] events); // 0x10178240 + private void initialize(); // 0x10178100 + private Type GetParentType(); // 0x101771A0 + internal Type InflateType(Type type); // 0x10177970 + internal Type InflateType(Type type, Type[] method_args); // 0x101775D0 + private Type[] GetInterfacesInternal(); // 0x101769A0 + public override Type[] GetInterfaces(); // 0x10176AA0 + protected override bool IsValueTypeImpl(); // 0x10177B60 + internal override MethodInfo GetMethod(MethodInfo fromNoninstanciated); // 0x10176BD0 + internal override ConstructorInfo GetConstructor(ConstructorInfo fromNoninstanciated); // 0x10175910 + internal override FieldInfo GetField(FieldInfo fromNoninstanciated); // 0x101763C0 + public override MethodInfo[] GetMethods(BindingFlags bf); // 0x10176F40 + private MethodInfo[] GetMethodsInternal(BindingFlags bf, MonoGenericClass reftype); // 0x10176DA0 + public override ConstructorInfo[] GetConstructors(BindingFlags bf); // 0x10175C90 + private ConstructorInfo[] GetConstructorsInternal(BindingFlags bf, MonoGenericClass reftype); // 0x10175AE0 + public override FieldInfo[] GetFields(BindingFlags bf); // 0x10176780 + private FieldInfo[] GetFieldsInternal(BindingFlags bf, MonoGenericClass reftype); // 0x101765E0 + public override PropertyInfo[] GetProperties(BindingFlags bf); // 0x101773A0 + private PropertyInfo[] GetPropertiesInternal(BindingFlags bf, MonoGenericClass reftype); // 0x101771D0 + public override EventInfo[] GetEvents(BindingFlags bf); // 0x101761E0 + private EventInfo[] GetEventsInternal(BindingFlags bf, MonoGenericClass reftype); // 0x10176040 + public override Type[] GetNestedTypes(BindingFlags bf); // 0x10177170 + public override bool IsAssignableFrom(Type c); // 0x101779E0 + private string format_name(bool full_name, bool assembly_qualified); // 0x10177DB0 + public override string ToString(); // 0x10177D00 + public override Type MakeArrayType(); // 0x10177C10 + public override Type MakeArrayType(int rank); // 0x10177B90 + public override Type MakeByRefType(); // 0x10177C60 + public override Type MakePointerType(); // 0x10177CB0 + protected override bool IsCOMObjectImpl(); // 0x100EFBF0 + protected override bool IsPrimitiveImpl(); // 0x100EFBF0 + protected override TypeAttributes GetAttributeFlagsImpl(); // 0x10175890 + public override Type GetInterface(string name, bool ignoreCase); // 0x10176950 + public override EventInfo GetEvent(string name, BindingFlags bindingAttr); // 0x10175F00 + public override FieldInfo GetField(string name, BindingFlags bindingAttr); // 0x10176590 + public override MemberInfo[] GetMembers(BindingFlags bindingAttr); // 0x10176B30 + public override Type GetNestedType(string name, BindingFlags bindingAttr); // 0x10177120 + public override object InvokeMember(string name, BindingFlags invokeAttr, Binder binder, object target, object[] args, ParameterModifier[] modifiers, CultureInfo culture, string[] namedParameters); // 0x10177990 + protected override MethodInfo GetMethodImpl(string name, BindingFlags bindingAttr, Binder binder, CallingConventions callConvention, Type[] types, ParameterModifier[] modifiers); // 0x10176B80 + protected override PropertyInfo GetPropertyImpl(string name, BindingFlags bindingAttr, Binder binder, Type returnType, Type[] types, ParameterModifier[] modifiers); // 0x10177580 + protected override ConstructorInfo GetConstructorImpl(BindingFlags bindingAttr, Binder binder, CallingConventions callConvention, Type[] types, ParameterModifier[] modifiers); // 0x101758C0 + public override bool IsDefined(Type attributeType, bool inherit); // 0x10177B10 + public override object[] GetCustomAttributes(bool inherit); // 0x10175E60 + public override object[] GetCustomAttributes(Type attributeType, bool inherit); // 0x10175EB0 +} + +// Namespace: System.Reflection +[Serializable] +internal class MonoGenericMethod : MonoMethod // TypeDefIndex: 607 +{ + // Properties + public override Type ReflectedType { get; } // 0x101782C0 + + // Methods + internal void .ctor(); // 0x10178260 +} + +// Namespace: System.Reflection +[Serializable] +internal class MonoGenericCMethod : MonoCMethod // TypeDefIndex: 608 +{ + // Properties + public override Type ReflectedType { get; } // 0x10175880 + + // Methods + internal void .ctor(); // 0x10175820 +} + +// Namespace: System.Reflection +internal struct MonoMethodInfo // TypeDefIndex: 609 +{ + // Fields + private Type parent; // 0x08 + private Type ret; // 0x0C + internal MethodAttributes attrs; // 0x10 + internal MethodImplAttributes iattrs; // 0x14 + private CallingConventions callconv; // 0x18 + + // Methods + private static void get_method_info(IntPtr handle, out MonoMethodInfo info); // 0x10178490 + internal static MonoMethodInfo GetMethodInfo(IntPtr handle); // 0x10178390 + internal static Type GetDeclaringType(IntPtr handle); // 0x10178330 + internal static Type GetReturnType(IntPtr handle); // 0x10178460 + internal static MethodAttributes GetAttributes(IntPtr handle); // 0x101782D0 + internal static CallingConventions GetCallingConvention(IntPtr handle); // 0x10178300 + internal static MethodImplAttributes GetMethodImplementationFlags(IntPtr handle); // 0x10178360 + private static ParameterInfo[] get_parameter_info(IntPtr handle, MemberInfo member); // 0x101783C0 + internal static ParameterInfo[] GetParametersInfo(IntPtr handle, MemberInfo member); // 0x101783C0 + private static UnmanagedMarshal get_retval_marshal(IntPtr handle); // 0x10104640 + internal static ParameterInfo GetReturnParameterInfo(MonoMethod method); // 0x101783E0 +} + +// Namespace: System.Reflection +[Serializable] +internal class MonoMethod : MethodInfo, ISerializable // TypeDefIndex: 610 +{ + // Fields + internal IntPtr mhandle; // 0x08 + private string name; // 0x0C + private Type reftype; // 0x10 + + // Properties + public override ParameterInfo ReturnParameter { get; } // 0x10179270 + public override Type ReturnType { get; } // 0x10179280 + public override ICustomAttributeProvider ReturnTypeCustomAttributes { get; } // 0x10179270 + public override RuntimeMethodHandle MethodHandle { get; } // 0x100BF0C0 + public override MethodAttributes Attributes { get; } // 0x101748F0 + public override CallingConventions CallingConvention { get; } // 0x10174920 + public override Type ReflectedType { get; } // 0x100BFC20 + public override Type DeclaringType { get; } // 0x10174950 + public override string Name { get; } // 0x10174980 + public override bool IsGenericMethodDefinition { get; } // 0x10179250 + public override bool IsGenericMethod { get; } // 0x10179260 + public override bool ContainsGenericParameters { get; } // 0x10179180 + + // Methods + internal void .ctor(); // 0x100BF000 + internal void .ctor(RuntimeMethodHandle mhandle); // 0x10113500 + internal static string get_name(MethodBase method); // 0x101792B0 + internal static MonoMethod get_base_definition(MonoMethod method); // 0x101784B0 + public override MethodInfo GetBaseDefinition(); // 0x101784B0 + public override MethodImplAttributes GetMethodImplementationFlags(); // 0x10174180 + public override ParameterInfo[] GetParameters(); // 0x101786A0 + internal object InternalInvoke(object obj, object[] parameters, out Exception exc); // 0x10178880 + public override object Invoke(object obj, BindingFlags invokeAttr, Binder binder, object[] parameters, CultureInfo culture); // 0x101788A0 + public override bool IsDefined(Type attributeType, bool inherit); // 0x10178C30 + public override object[] GetCustomAttributes(bool inherit); // 0x10178510 + public override object[] GetCustomAttributes(Type attributeType, bool inherit); // 0x101784C0 + internal static DllImportAttribute GetDllImportAttribute(IntPtr mhandle); // 0x10178560 + internal object[] GetPseudoCustomAttributes(); // 0x10178710 + private static bool ShouldPrintFullName(Type type); // 0x10178E10 + public override string ToString(); // 0x10178EB0 + public void GetObjectData(SerializationInfo info, StreamingContext context); // 0x101785F0 + public override MethodInfo MakeGenericMethod(Type[] methodInstantiation); // 0x10178CA0 + private MethodInfo MakeGenericMethod_impl(Type[] types); // 0x10178C80 + public override Type[] GetGenericArguments(); // 0x10178570 + private MethodInfo GetGenericMethodDefinition_impl(); // 0x10178580 + public override MethodInfo GetGenericMethodDefinition(); // 0x10178590 + public override MethodBody GetMethodBody(); // 0x10174160 +} + +// Namespace: System.Reflection +internal class MonoCMethod : ConstructorInfo, ISerializable // TypeDefIndex: 611 +{ + // Fields + internal IntPtr mhandle; // 0x08 + private string name; // 0x0C + private Type reftype; // 0x10 + + // Properties + public override RuntimeMethodHandle MethodHandle { get; } // 0x100BF0C0 + public override MethodAttributes Attributes { get; } // 0x101748F0 + public override CallingConventions CallingConvention { get; } // 0x10174920 + public override Type ReflectedType { get; } // 0x100BFC20 + public override Type DeclaringType { get; } // 0x10174950 + public override string Name { get; } // 0x10174980 + + // Methods + public void .ctor(); // 0x101748A0 + public override MethodImplAttributes GetMethodImplementationFlags(); // 0x10174180 + public override ParameterInfo[] GetParameters(); // 0x10174210 + internal object InternalInvoke(object obj, object[] parameters, out Exception exc); // 0x10174230 + public override object Invoke(object obj, BindingFlags invokeAttr, Binder binder, object[] parameters, CultureInfo culture); // 0x10174280 + public override object Invoke(BindingFlags invokeAttr, Binder binder, object[] parameters, CultureInfo culture); // 0x10174250 + public override bool IsDefined(Type attributeType, bool inherit); // 0x10174700 + public override object[] GetCustomAttributes(bool inherit); // 0x10174110 + public override object[] GetCustomAttributes(Type attributeType, bool inherit); // 0x101740C0 + public override MethodBody GetMethodBody(); // 0x10174160 + public override string ToString(); // 0x10174750 + public void GetObjectData(SerializationInfo info, StreamingContext context); // 0x101741B0 +} + +// Namespace: System.Reflection +internal struct MonoPropertyInfo // TypeDefIndex: 612 +{ + // Fields + public Type parent; // 0x08 + public string name; // 0x0C + public MethodInfo get_method; // 0x10 + public MethodInfo set_method; // 0x14 + public PropertyAttributes attrs; // 0x18 + + // Methods + internal static void get_property_info(MonoProperty prop, MonoPropertyInfo info, PInfo req_info); // 0x10207C10 + internal static Type[] GetTypeModifiers(MonoProperty prop, bool optional); // 0x10207BF0 +} + +// Namespace: System.Reflection +internal enum PInfo // TypeDefIndex: 613 +{ + Attributes = 1, + GetMethod = 2, + SetMethod = 4, + ReflectedType = 8, + DeclaringType = 16, + Name = 32 +} + +// Namespace: System.Reflection +[Serializable] +internal class MonoProperty : PropertyInfo, ISerializable // TypeDefIndex: 614 +{ + // Fields + internal IntPtr klass; // 0x08 + internal IntPtr prop; // 0x0C + private MonoPropertyInfo info; // 0x10 + private PInfo cached; // 0x24 + private GetterAdapter cached_getter; // 0x28 + + // Properties + public override PropertyAttributes Attributes { get; } // 0x1017A020 + public override bool CanRead { get; } // 0x1017A050 + public override bool CanWrite { get; } // 0x1017A080 + public override Type PropertyType { get; } // 0x1017A110 + public override Type ReflectedType { get; } // 0x1017A1C0 + public override Type DeclaringType { get; } // 0x1017A0B0 + public override string Name { get; } // 0x1017A0E0 + + // Methods + public void .ctor(); // 0x1017A010 + private void CachePropertyInfo(PInfo flags); // 0x101792C0 + public override MethodInfo[] GetAccessors(bool nonPublic); // 0x101795F0 + public override MethodInfo GetGetMethod(bool nonPublic); // 0x10179830 + public override ParameterInfo[] GetIndexParameters(); // 0x10179890 + public override MethodInfo GetSetMethod(bool nonPublic); // 0x10179B20 + public override bool IsDefined(Type attributeType, bool inherit); // 0x10179D50 + public override object[] GetCustomAttributes(bool inherit); // 0x101797D0 + public override object[] GetCustomAttributes(Type attributeType, bool inherit); // 0x10179770 + private static object GetterAdapterFrame(Getter`2 getter, object obj); + private static object StaticGetterAdapterFrame(StaticGetter`1 getter, object obj); + private static GetterAdapter CreateGetterDelegate(MethodInfo method); // 0x101792F0 + public override object GetValue(object obj, object[] index); // 0x10179D20 + public override object GetValue(object obj, BindingFlags invokeAttr, Binder binder, object[] index, CultureInfo culture); // 0x10179B80 + public override void SetValue(object obj, object value, BindingFlags invokeAttr, Binder binder, object[] index, CultureInfo culture); // 0x10179DB0 + public override string ToString(); // 0x10179F60 + public override Type[] GetOptionalCustomModifiers(); // 0x10179A60 + public override Type[] GetRequiredCustomModifiers(); // 0x10179AC0 + public void GetObjectData(SerializationInfo info, StreamingContext context); // 0x10179A00 +} + +// Namespace: +private delegate object GetterAdapter(object _this); // TypeDefIndex: 615; 0x102034B0 + +// Namespace: +private delegate T Getter`2(T _this); // TypeDefIndex: 616; 0x00000000 + +// Namespace: +private delegate T StaticGetter`1(); // TypeDefIndex: 617; 0x00000000 + +// Namespace: System.Reflection +public sealed class ObfuscateAssemblyAttribute : Attribute // TypeDefIndex: 618 +{ + // Fields + private bool is_private; // 0x08 + private bool strip; // 0x09 + + // Properties + public bool AssemblyIsPrivate { get; } // 0x100EA020 + public bool StripAfterObfuscation { get; set; } // 0x10117290 0x10155020 + + // Methods + public void .ctor(bool assemblyIsPrivate); // 0x10207DD0 +} + +// Namespace: System.Reflection +public sealed class ObfuscationAttribute : Attribute // TypeDefIndex: 619 +{ + // Fields + private bool exclude; // 0x08 + private bool strip; // 0x09 + private bool applyToMembers; // 0x0A + private string feature; // 0x0C + + // Properties + public bool Exclude { get; set; } // 0x100EA020 0x10155000 + public bool StripAfterObfuscation { get; set; } // 0x10117290 0x10155020 + public bool ApplyToMembers { get; set; } // 0x101172F0 0x10155010 + public string Feature { get; set; } // 0x100C5B30 0x100C5B50 + + // Methods + public void .ctor(); // 0x10207DF0 +} + +// Namespace: System.Reflection +[Serializable] +public enum ParameterAttributes // TypeDefIndex: 620 +{ + None = 0, + In = 1, + Out = 2, + Lcid = 4, + Retval = 8, + Optional = 16, + HasDefault = 4096, + HasFieldMarshal = 8192, + Reserved3 = 16384, + Reserved4 = 32768, + ReservedMask = 61440 +} + +// Namespace: System.Reflection +[Serializable] +public class ParameterInfo : ICustomAttributeProvider, _ParameterInfo // TypeDefIndex: 621 +{ + // Fields + protected Type ClassImpl; // 0x08 + protected object DefaultValueImpl; // 0x0C + protected MemberInfo MemberImpl; // 0x10 + protected string NameImpl; // 0x14 + protected int PositionImpl; // 0x18 + protected ParameterAttributes AttrsImpl; // 0x1C + private UnmanagedMarshal marshalAs; // 0x20 + + // Properties + public virtual Type ParameterType { get; } // 0x100BF0C0 + public virtual ParameterAttributes Attributes { get; } // 0x100F85F0 + public virtual object DefaultValue { get; } // 0x102087B0 + public bool IsIn { get; } // 0x102089E0 + public bool IsLcid { get; } // 0x10208A00 + public bool IsOptional { get; } // 0x10208A30 + public bool IsOut { get; } // 0x10208A60 + public bool IsRetval { get; } // 0x10208A80 + public virtual MemberInfo Member { get; } // 0x100BFC20 + public virtual string Name { get; } // 0x100EF0C0 + public virtual int Position { get; } // 0x100EE580 + public int MetadataToken { get; } // 0x10208AB0 + public virtual object RawDefaultValue { get; } // 0x10208CB0 + + // Methods + protected void .ctor(); // 0x100BF000 + internal void .ctor(ParameterBuilder pb, Type type, MemberInfo member, int position); // 0x10208630 + internal void .ctor(ParameterInfo pinfo, MemberInfo member); // 0x102086B0 + internal void .ctor(Type type, MemberInfo member, UnmanagedMarshal marshalAs); // 0x10208730 + private void System.Runtime.InteropServices._ParameterInfo.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x102082E0 + private void System.Runtime.InteropServices._ParameterInfo.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x10208380 + private void System.Runtime.InteropServices._ParameterInfo.GetTypeInfoCount(out uint pcTInfo); // 0x10208330 + private void System.Runtime.InteropServices._ParameterInfo.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x102083D0 + public override string ToString(); // 0x10208420 + private int GetMetadataToken(); // 0x10207EE0 + public virtual object[] GetCustomAttributes(bool inherit); // 0x10207E90 + public virtual object[] GetCustomAttributes(Type attributeType, bool inherit); // 0x10207E40 + public virtual bool IsDefined(Type attributeType, bool inherit); // 0x10208290 + internal object[] GetPseudoCustomAttributes(); // 0x10207F50 + private Type[] GetTypeModifiers(bool optional); // 0x10208270 + public virtual Type[] GetOptionalCustomModifiers(); // 0x10207EF0 + public virtual Type[] GetRequiredCustomModifiers(); // 0x10208210 +} + +// Namespace: System.Reflection +[Serializable] +public struct ParameterModifier // TypeDefIndex: 622 +{ + // Fields + private bool[] _byref; // 0x08 + + // Properties + public bool Item { get; set; } // 0x10018720 0x10018760 + + // Methods + public void .ctor(int parameterCount); // 0x100186B0 +} + +// Namespace: System.Reflection +[Serializable] +public sealed class Pointer : ISerializable // TypeDefIndex: 623 +{ + // Fields + private void * data; // 0x08 + private Type type; // 0x0C + + // Methods + private void .ctor(); // 0x100BF000 + private void System.Runtime.Serialization.ISerializable.GetObjectData(SerializationInfo info, StreamingContext context); // 0x10208DA0 + public static object Box(void * ptr, Type type); // 0x10208CD0 + public static void * Unbox(object ptr); // 0x10208DF0 +} + +// Namespace: System.Reflection +[Serializable] +public enum PortableExecutableKinds // TypeDefIndex: 624 +{ + NotAPortableExecutableImage = 0, + ILOnly = 1, + Required32Bit = 2, + PE32Plus = 4, + Unmanaged32Bit = 8 +} + +// Namespace: System.Reflection +[Serializable] +public enum ProcessorArchitecture // TypeDefIndex: 625 +{ + None = 0, + MSIL = 1, + X86 = 2, + IA64 = 3, + Amd64 = 4 +} + +// Namespace: System.Reflection +[Serializable] +public enum PropertyAttributes // TypeDefIndex: 626 +{ + None = 0, + SpecialName = 512, + RTSpecialName = 1024, + HasDefault = 4096, + Reserved2 = 8192, + Reserved3 = 16384, + Reserved4 = 32768, + ReservedMask = 62464 +} + +// Namespace: System.Reflection +[Serializable] +public abstract class PropertyInfo : MemberInfo, _PropertyInfo // TypeDefIndex: 627 +{ + // Properties + public abstract PropertyAttributes Attributes { get; } + public abstract bool CanRead { get; } + public abstract bool CanWrite { get; } + public bool IsSpecialName { get; } // 0x10209150 + public override MemberTypes MemberType { get; } // 0x10209180 + public abstract Type PropertyType { get; } + + // Methods + protected void .ctor(); // 0x100C5970 + private void System.Runtime.InteropServices._PropertyInfo.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x10209010 + private void System.Runtime.InteropServices._PropertyInfo.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x102090B0 + private void System.Runtime.InteropServices._PropertyInfo.GetTypeInfoCount(out uint pcTInfo); // 0x10209060 + private void System.Runtime.InteropServices._PropertyInfo.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x10209100 + public MethodInfo[] GetAccessors(); // 0x10208E60 + public abstract MethodInfo[] GetAccessors(bool nonPublic); + public MethodInfo GetGetMethod(); // 0x10208ED0 + public abstract MethodInfo GetGetMethod(bool nonPublic); + public abstract ParameterInfo[] GetIndexParameters(); + public MethodInfo GetSetMethod(); // 0x100EC340 + public abstract MethodInfo GetSetMethod(bool nonPublic); + public virtual object GetValue(object obj, object[] index); // 0x10179D20 + public abstract object GetValue(object obj, BindingFlags invokeAttr, Binder binder, object[] index, CultureInfo culture); + public virtual void SetValue(object obj, object value, object[] index); // 0x10208FE0 + public abstract void SetValue(object obj, object value, BindingFlags invokeAttr, Binder binder, object[] index, CultureInfo culture); + public virtual Type[] GetOptionalCustomModifiers(); // 0x10208EF0 + public virtual Type[] GetRequiredCustomModifiers(); // 0x10208F90 + public virtual object GetConstantValue(); // 0x10208E80 + public virtual object GetRawConstantValue(); // 0x10208F40 + virtual Type System.Runtime.InteropServices._PropertyInfo.GetType(); // 0x1015CD60 +} + +// Namespace: System.Reflection +[Serializable] +public sealed class ReflectionTypeLoadException : SystemException // TypeDefIndex: 628 +{ + // Fields + private Exception[] loaderExceptions; // 0x34 + private Type[] types; // 0x38 + + // Properties + public Type[] Types { get; } // 0x100EB210 + public Exception[] LoaderExceptions { get; } // 0x100E9ED0 + + // Methods + public void .ctor(Type[] classes, Exception[] exceptions); // 0x10209330 + public void .ctor(Type[] classes, Exception[] exceptions, string message); // 0x10209200 + private void .ctor(SerializationInfo info, StreamingContext sc); // 0x10209230 + public override void GetObjectData(SerializationInfo info, StreamingContext context); // 0x10209190 +} + +// Namespace: System.Reflection +[Serializable] +public enum ResourceAttributes // TypeDefIndex: 629 +{ + Public = 1, + Private = 2 +} + +// Namespace: System.Reflection +[Serializable] +public enum ResourceLocation // TypeDefIndex: 630 +{ + Embedded = 1, + ContainedInAnotherAssembly = 2, + ContainedInManifestFile = 4 +} + +// Namespace: System.Reflection +[Serializable] +public class StrongNameKeyPair : ISerializable, IDeserializationCallback // TypeDefIndex: 631 +{ + // Fields + private byte[] _publicKey; // 0x08 + private string _keyPairContainer; // 0x0C + private bool _keyPairExported; // 0x10 + private byte[] _keyPairArray; // 0x14 + [NonSerialized] private RSA _rsa; // 0x18 + + // Properties + public byte[] PublicKey { get; } // 0x10211C70 + + // Methods + public void .ctor(byte[] keyPairArray); // 0x10211BF0 + public void .ctor(FileStream keyPairFile); // 0x10211B00 + public void .ctor(string keyPairContainer); // 0x10211A80 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x10211950 + private void System.Runtime.Serialization.ISerializable.GetObjectData(SerializationInfo info, StreamingContext context); // 0x10211880 + private void System.Runtime.Serialization.IDeserializationCallback.OnDeserialization(object sender); // 0x100C5530 + private RSA GetRSA(); // 0x102115B0 + private void LoadKey(byte[] key); // 0x10211690 + internal StrongName StrongName(); // 0x10211800 +} + +// Namespace: System.Reflection +[Serializable] +public class TargetException : Exception // TypeDefIndex: 632 +{ + // Methods + public void .ctor(); // 0x10211F40 + public void .ctor(string message); // 0x10211F30 + public void .ctor(string message, Exception inner); // 0x10211F80 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x1015EC80 +} + +// Namespace: System.Reflection +[Serializable] +public sealed class TargetInvocationException : Exception // TypeDefIndex: 633 +{ + // Methods + public void .ctor(Exception inner); // 0x10211F90 + public void .ctor(string message, Exception inner); // 0x10211F80 + internal void .ctor(SerializationInfo info, StreamingContext sc); // 0x1015EC80 +} + +// Namespace: System.Reflection +[Serializable] +public sealed class TargetParameterCountException : Exception // TypeDefIndex: 634 +{ + // Methods + public void .ctor(); // 0x10211FD0 + public void .ctor(string message); // 0x10211F30 + public void .ctor(string message, Exception inner); // 0x10211F80 + internal void .ctor(SerializationInfo info, StreamingContext context); // 0x1015EC80 +} + +// Namespace: System.Reflection +[Serializable] +public enum TypeAttributes // TypeDefIndex: 635 +{ + NotPublic = 0, + AutoLayout = 0, + Class = 0, + AnsiClass = 0, + Public = 1, + NestedPublic = 2, + NestedPrivate = 3, + NestedFamily = 4, + NestedAssembly = 5, + NestedFamANDAssem = 6, + VisibilityMask = 7, + NestedFamORAssem = 7, + SequentialLayout = 8, + ExplicitLayout = 16, + LayoutMask = 24, + ClassSemanticsMask = 32, + Interface = 32, + Abstract = 128, + Sealed = 256, + SpecialName = 1024, + RTSpecialName = 2048, + Import = 4096, + Serializable = 8192, + UnicodeClass = 65536, + AutoClass = 131072, + StringFormatMask = 196608, + CustomFormatClass = 196608, + HasSecurity = 262144, + ReservedMask = 264192, + BeforeFieldInit = 1048576, + CustomFormatMask = 12582912 +} + +// Namespace: System.Reflection +[Serializable] +public class TypeDelegator : Type // TypeDefIndex: 636 +{ + // Fields + protected Type typeImpl; // 0x0C + + // Properties + public override Assembly Assembly { get; } // 0x100F6A90 + public override string AssemblyQualifiedName { get; } // 0x10212750 + public override Type BaseType { get; } // 0x10212780 + public override string FullName { get; } // 0x102127B0 + public override Guid GUID { get; } // 0x102127E0 + public override Module Module { get; } // 0x100F6BD0 + public override string Name { get; } // 0x1017A7F0 + public override string Namespace { get; } // 0x100F6C40 + public override RuntimeTypeHandle TypeHandle { get; } // 0x10212850 + public override Type UnderlyingSystemType { get; } // 0x10212880 + public override int MetadataToken { get; } // 0x10212820 + + // Methods + protected void .ctor(); // 0x10212700 + public void .ctor(Type delegatingType); // 0x10212670 + protected override TypeAttributes GetAttributeFlagsImpl(); // 0x100F60B0 + protected override ConstructorInfo GetConstructorImpl(BindingFlags bindingAttr, Binder binder, CallingConventions callConvention, Type[] types, ParameterModifier[] modifiers); // 0x10128BD0 + public override ConstructorInfo[] GetConstructors(BindingFlags bindingAttr); // 0x102120A0 + public override object[] GetCustomAttributes(bool inherit); // 0x10212110 + public override object[] GetCustomAttributes(Type attributeType, bool inherit); // 0x102120D0 + public override Type GetElementType(); // 0x10212140 + public override EventInfo GetEvent(string name, BindingFlags bindingAttr); // 0x10212170 + public override EventInfo[] GetEvents(); // 0x102121B0 + public override EventInfo[] GetEvents(BindingFlags bindingAttr); // 0x102121D0 + public override FieldInfo GetField(string name, BindingFlags bindingAttr); // 0x10212200 + public override FieldInfo[] GetFields(BindingFlags bindingAttr); // 0x10212240 + public override Type GetInterface(string name, bool ignoreCase); // 0x102122B0 + public override InterfaceMapping GetInterfaceMap(Type interfaceType); // 0x10212270 + public override Type[] GetInterfaces(); // 0x102122F0 + public override MemberInfo[] GetMember(string name, MemberTypes type, BindingFlags bindingAttr); // 0x10212320 + public override MemberInfo[] GetMembers(BindingFlags bindingAttr); // 0x10212360 + protected override MethodInfo GetMethodImpl(string name, BindingFlags bindingAttr, Binder binder, CallingConventions callConvention, Type[] types, ParameterModifier[] modifiers); // 0x10212390 + public override MethodInfo[] GetMethods(BindingFlags bindingAttr); // 0x102123C0 + public override Type GetNestedType(string name, BindingFlags bindingAttr); // 0x102123F0 + public override Type[] GetNestedTypes(BindingFlags bindingAttr); // 0x10212430 + public override PropertyInfo[] GetProperties(BindingFlags bindingAttr); // 0x10212460 + protected override PropertyInfo GetPropertyImpl(string name, BindingFlags bindingAttr, Binder binder, Type returnType, Type[] types, ParameterModifier[] modifiers); // 0x10212490 + protected override bool HasElementTypeImpl(); // 0x10129000 + public override object InvokeMember(string name, BindingFlags invokeAttr, Binder binder, object target, object[] args, ParameterModifier[] modifiers, CultureInfo culture, string[] namedParameters); // 0x102124C0 + protected override bool IsArrayImpl(); // 0x10212510 + protected override bool IsByRefImpl(); // 0x10212540 + protected override bool IsCOMObjectImpl(); // 0x10212570 + public override bool IsDefined(Type attributeType, bool inherit); // 0x102125A0 + protected override bool IsPointerImpl(); // 0x102125E0 + protected override bool IsPrimitiveImpl(); // 0x10212610 + protected override bool IsValueTypeImpl(); // 0x10212640 +} + +// Namespace: System.Resources +public interface IResourceReader : IEnumerable, IDisposable // TypeDefIndex: 637 +{ + // Methods + void Close(); + IDictionaryEnumerator GetEnumerator(); +} + +// Namespace: System.Resources +public interface IResourceWriter : IDisposable // TypeDefIndex: 638 +{ + // Methods + void AddResource(string name, byte[] value); + void AddResource(string name, object value); + void AddResource(string name, string value); + void Close(); + void Generate(); +} + +// Namespace: System.Resources +[Serializable] +public class MissingManifestResourceException : SystemException // TypeDefIndex: 639 +{ + // Methods + public void .ctor(); // 0x10207B50 + public void .ctor(string message); // 0x100E5680 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 + public void .ctor(string message, Exception inner); // 0x100E5670 +} + +// Namespace: System.Resources +[Serializable] +public class MissingSatelliteAssemblyException : SystemException // TypeDefIndex: 640 +{ + // Fields + private string culture; // 0x34 + + // Properties + public string CultureName { get; } // 0x100E9ED0 + + // Methods + public void .ctor(); // 0x10207B90 + public void .ctor(string message); // 0x100E5680 + public void .ctor(string message, string cultureName); // 0x10207BD0 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 + public void .ctor(string message, Exception inner); // 0x100E5670 +} + +// Namespace: System.Resources +public sealed class NeutralResourcesLanguageAttribute : Attribute // TypeDefIndex: 641 +{ + // Fields + private string culture; // 0x08 + private UltimateResourceFallbackLocation loc; // 0x0C + + // Properties + public string CultureName { get; } // 0x100BF0C0 + public UltimateResourceFallbackLocation Location { get; } // 0x100C5B30 + + // Methods + public void .ctor(string cultureName); // 0x10207CF0 + public void .ctor(string cultureName, UltimateResourceFallbackLocation location); // 0x10207D60 +} + +// Namespace: System.Resources +[Serializable] +public class ResourceManager // TypeDefIndex: 642 +{ + // Fields + private static Hashtable ResourceCache; // 0x00 + private static Hashtable NonExistent; // 0x04 + public static readonly int HeaderVersionNumber; // 0x08 + public static readonly int MagicNumber; // 0x0C + protected string BaseNameField; // 0x08 + protected Assembly MainAssembly; // 0x0C + protected Hashtable ResourceSets; // 0x10 + private bool ignoreCase; // 0x14 + private Type resourceSource; // 0x18 + private Type resourceSetType; // 0x1C + private string resourceDir; // 0x20 + private CultureInfo neutral_culture; // 0x24 + private UltimateResourceFallbackLocation fallbackLocation; // 0x28 + + // Properties + public virtual string BaseName { get; } // 0x100BF0C0 + public virtual bool IgnoreCase { get; set; } // 0x100C5670 0x10142260 + public virtual Type ResourceSetType { get; } // 0x100F85F0 + protected UltimateResourceFallbackLocation FallbackLocation { get; set; } // 0x100EB040 0x100EB250 + + // Methods + protected void .ctor(); // 0x1020BB90 + public void .ctor(Type resourceSource); // 0x1020BE20 + public void .ctor(string baseName, Assembly assembly); // 0x1020BC00 + public void .ctor(string baseName, Assembly assembly, Type usingResourceSet); // 0x1020BA80 + private void .ctor(string baseName, string resourceDir, Type usingResourceSet); // 0x1020BD00 + private static void .cctor(); // 0x1020B9D0 + private static Hashtable GetResourceSets(Assembly assembly, string basename); // 0x1020A670 + private Type CheckResourceSetType(Type usingResourceSet, bool verifyType); // 0x10209BB0 + public static ResourceManager CreateFileBasedResourceManager(string baseName, string resourceDir, Type usingResourceSet); // 0x10209C80 + public virtual object GetObject(string name); // 0x1020A380 + public virtual object GetObject(string name, CultureInfo culture); // 0x1020A0D0 + public virtual ResourceSet GetResourceSet(CultureInfo culture, bool createIfNotExists, bool tryParents); // 0x1020A530 + public virtual string GetString(string name); // 0x101B50E0 + public virtual string GetString(string name, CultureInfo culture); // 0x1020ACE0 + protected virtual string GetResourceFileName(CultureInfo culture); // 0x1020A3B0 + private string GetResourceFilePath(CultureInfo culture); // 0x1020A4B0 + private Stream GetManifestResourceStreamNoCase(Assembly ass, string fn); // 0x10209EA0 + public UnmanagedMemoryStream GetStream(string name); // 0x1020AAD0 + public UnmanagedMemoryStream GetStream(string name, CultureInfo culture); // 0x1020AAF0 + protected virtual ResourceSet InternalGetResourceSet(CultureInfo culture, bool createIfNotExists, bool tryParents); // 0x1020AF90 + public virtual void ReleaseAllResources(); // 0x1020B730 + protected static CultureInfo GetNeutralResourcesLanguage(Assembly a); // 0x10209FD0 + protected static Version GetSatelliteContractVersion(Assembly a); // 0x1020A9F0 + private MissingManifestResourceException AssemblyResourceMissing(string fileName); // 0x10209AA0 + private string GetManifestResourceName(string fn); // 0x10209DD0 +} + +// Namespace: System.Resources +internal enum PredefinedResourceType // TypeDefIndex: 643 +{ + Null = 0, + String = 1, + Bool = 2, + Char = 3, + Byte = 4, + SByte = 5, + Int16 = 6, + UInt16 = 7, + Int32 = 8, + UInt32 = 9, + Int64 = 10, + UInt64 = 11, + Single = 12, + Double = 13, + Decimal = 14, + DateTime = 15, + TimeSpan = 16, + ByteArray = 32, + Stream = 33, + FistCustom = 64 +} + +// Namespace: System.Resources +public sealed class ResourceReader : IEnumerable, IDisposable, IResourceReader // TypeDefIndex: 644 +{ + // Fields + private BinaryReader reader; // 0x08 + private object readerLock; // 0x0C + private IFormatter formatter; // 0x10 + internal int resourceCount; // 0x14 + private int typeCount; // 0x18 + private string[] typeNames; // 0x1C + private int[] hashes; // 0x20 + private ResourceInfo[] infos; // 0x24 + private int dataSectionOffset; // 0x28 + private long nameSectionOffset; // 0x30 + private int resource_ver; // 0x38 + private ResourceCacheItem[] cache; // 0x3C + private object cache_lock; // 0x40 + + // Methods + public void .ctor(Stream stream); // 0x1020E370 + public void .ctor(string fileName); // 0x1020E4E0 + private IEnumerator System.Collections.IEnumerable.GetEnumerator(); // 0x1020E330 + private void System.IDisposable.Dispose(); // 0x1020BF30 + private void ReadHeaders(); // 0x1020CAA0 + private void CreateResourceInfo(long position, ResourceInfo info); // 0x1020BF90 + private int Read7BitEncodedInt(); // 0x1020CA50 + private object ReadValueVer2(int type_index); // 0x1020D9B0 + private object ReadValueVer1(Type type); // 0x1020D390 + private object ReadNonPredefinedValue(Type exp_type); // 0x1020D290 + private void LoadResourceValues(ResourceCacheItem[] store); // 0x1020C810 + internal UnmanagedMemoryStream ResourceValueAsStream(string name, int index); // 0x1020DEC0 + public void Close(); // 0x1020BF30 + public IDictionaryEnumerator GetEnumerator(); // 0x1020C1A0 + public void GetResourceData(string resourceName, out string resourceType, out byte[] resourceData); // 0x1020C640 + private void GetResourceDataAt(int index, out string resourceType, out byte[] data); // 0x1020C230 + private void Dispose(bool disposing); // 0x1020C150 +} + +// Namespace: +private struct ResourceInfo // TypeDefIndex: 645 +{ + // Fields + public readonly long ValuePosition; // 0x08 + public readonly string ResourceName; // 0x10 + public readonly int TypeIndex; // 0x14 + + // Methods + public void .ctor(string resourceName, long valuePosition, int type_index); // 0x100189A0 +} + +// Namespace: +private struct ResourceCacheItem // TypeDefIndex: 646 +{ + // Fields + public readonly string ResourceName; // 0x08 + public readonly object ResourceValue; // 0x0C + + // Methods + public void .ctor(string name, object value); // 0x100075A0 +} + +// Namespace: +internal sealed class ResourceEnumerator : IEnumerator, IDictionaryEnumerator // TypeDefIndex: 647 +{ + // Fields + private ResourceReader reader; // 0x08 + private int index; // 0x0C + private bool finished; // 0x10 + + // Properties + public int Index { get; } // 0x100C5B30 + public DictionaryEntry Entry { get; } // 0x10209710 + public object Key { get; } // 0x10209880 + public object Value { get; } // 0x102099F0 + public UnmanagedMemoryStream ValueAsStream { get; } // 0x10209930 + public object Current { get; } // 0x102096C0 + + // Methods + internal void .ctor(ResourceReader readerToEnumerate); // 0x10209690 + public bool MoveNext(); // 0x10209580 + public void Reset(); // 0x10209610 + private void FillCache(); // 0x10209430 +} + +// Namespace: +private sealed class c__AnonStorey2 // TypeDefIndex: 648 +{ + // Fields + internal IntPtr ptr; // 0x08 + + // Methods + public void .ctor(); // 0x100BF000 + internal void <>m__1(object o, EventArgs e); // 0x102128B0 +} + +// Namespace: System.Resources +[Serializable] +public class ResourceSet : IEnumerable, IDisposable // TypeDefIndex: 649 +{ + // Fields + [NonSerialized] protected IResourceReader Reader; // 0x08 + protected Hashtable Table; // 0x0C + private bool resources_read; // 0x10 + [NonSerialized] private bool disposed; // 0x11 + + // Methods + protected void .ctor(); // 0x1020F130 + public void .ctor(IResourceReader reader); // 0x1020F0A0 + public void .ctor(Stream stream); // 0x1020F190 + internal void .ctor(UnmanagedMemoryStream stream); // 0x1020EEF0 + public void .ctor(string fileName); // 0x1020EF60 + private IEnumerator System.Collections.IEnumerable.GetEnumerator(); // 0x1020EED0 + public virtual void Close(); // 0x1020E5D0 + public void Dispose(); // 0x1020E5D0 + protected virtual void Dispose(bool disposing); // 0x1020E600 + public virtual Type GetDefaultReader(); // 0x1020E660 + public virtual Type GetDefaultWriter(); // 0x1020E6B0 + public virtual IDictionaryEnumerator GetEnumerator(); // 0x1020E700 + private object GetObjectInternal(string name, bool ignoreCase); // 0x1020E7A0 + public virtual object GetObject(string name); // 0x1020EAB0 + public virtual object GetObject(string name, bool ignoreCase); // 0x1020EAA0 + private string GetStringInternal(string name, bool ignoreCase); // 0x1020EC10 + public virtual string GetString(string name); // 0x1020ECC0 + public virtual string GetString(string name, bool ignoreCase); // 0x1020ECE0 + protected virtual void ReadResources(); // 0x1020ECF0 + internal UnmanagedMemoryStream GetStream(string name, bool ignoreCase); // 0x1020EAD0 +} + +// Namespace: System.Resources +public sealed class ResourceWriter : IDisposable, IResourceWriter // TypeDefIndex: 650 +{ + // Fields + private SortedList resources; // 0x08 + private Stream stream; // 0x0C + + // Properties + internal Stream Stream { get; } // 0x100C5B30 + + // Methods + public void .ctor(Stream stream); // 0x10210F30 + public void .ctor(string fileName); // 0x10210E20 + public void AddResource(string name, byte[] value); // 0x1020F410 + public void AddResource(string name, object value); // 0x1020F670 + public void AddResource(string name, string value); // 0x1020F540 + public void Close(); // 0x1020F7A0 + public void Dispose(); // 0x1020F7A0 + private void Dispose(bool disposing); // 0x1020F7F0 + public void AddResourceData(string name, string typeName, byte[] serializedData); // 0x1020F200 + public void Generate(); // 0x1020F860 + private int GetHash(string name); // 0x10210D70 + private void Write7BitEncodedInt(BinaryWriter writer, int value); // 0x10210DC0 +} + +// Namespace: +private class TypeByNameObject // TypeDefIndex: 651 +{ + // Fields + public readonly string TypeName; // 0x08 + public readonly byte[] Value; // 0x0C + + // Methods + public void .ctor(string typeName, byte[] value); // 0x10212010 +} + +// Namespace: System.Resources +[Serializable] +internal class RuntimeResourceSet : ResourceSet // TypeDefIndex: 652 +{ + // Methods + public void .ctor(UnmanagedMemoryStream stream); // 0x1020EEF0 + public void .ctor(Stream stream); // 0x1020F190 + public void .ctor(string fileName); // 0x1020EF60 + public override object GetObject(string name); // 0x102113C0 + public override object GetObject(string name, bool ignoreCase); // 0x10211440 + private object CloneDisposableObjectIfPossible(object value); // 0x10211350 +} + +// Namespace: System.Resources +public sealed class SatelliteContractVersionAttribute : Attribute // TypeDefIndex: 653 +{ + // Fields + private Version ver; // 0x08 + + // Properties + public string Version { get; } // 0x10211580 + + // Methods + public void .ctor(string version); // 0x10211530 +} + +// Namespace: System.Resources +[Serializable] +public enum UltimateResourceFallbackLocation // TypeDefIndex: 654 +{ + MainAssembly = 0, + Satellite = 1 +} + +// Namespace: System.Resources +internal enum Win32ResourceType // TypeDefIndex: 655 +{ + RT_CURSOR = 1, + RT_BITMAP = 2, + RT_ICON = 3, + RT_MENU = 4, + RT_DIALOG = 5, + RT_STRING = 6, + RT_FONTDIR = 7, + RT_FONT = 8, + RT_ACCELERATOR = 9, + RT_RCDATA = 10, + RT_MESSAGETABLE = 11, + RT_GROUP_CURSOR = 12, + RT_GROUP_ICON = 14, + RT_VERSION = 16, + RT_DLGINCLUDE = 17, + RT_PLUGPLAY = 19, + RT_VXD = 20, + RT_ANICURSOR = 21, + RT_ANIICON = 22, + RT_HTML = 23 +} + +// Namespace: System.Resources +internal class NameOrId // TypeDefIndex: 656 +{ + // Fields + private string name; // 0x08 + private int id; // 0x0C + + // Properties + public bool IsName { get; } // 0x101253D0 + public string Name { get; } // 0x100BF0C0 + public int Id { get; } // 0x100C5B30 + + // Methods + public void .ctor(string name); // 0x10113500 + public void .ctor(int id); // 0x10158F90 + public override string ToString(); // 0x10207C30 +} + +// Namespace: System.Resources +internal abstract class Win32Resource // TypeDefIndex: 657 +{ + // Fields + private NameOrId type; // 0x08 + private NameOrId name; // 0x0C + private int language; // 0x10 + + // Properties + public Win32ResourceType ResourceType { get; } // 0x10213B90 + public NameOrId Name { get; } // 0x100C5B30 + public NameOrId Type { get; } // 0x100BF0C0 + public int Language { get; } // 0x100BFC20 + + // Methods + internal void .ctor(NameOrId type, NameOrId name, int language); // 0x10127920 + internal void .ctor(Win32ResourceType type, int name, int language); // 0x10213B10 + public abstract void WriteTo(Stream s); + public override string ToString(); // 0x102138E0 +} + +// Namespace: System.Resources +internal class Win32EncodedResource : Win32Resource // TypeDefIndex: 658 +{ + // Fields + private byte[] data; // 0x14 + + // Properties + public byte[] Data { get; } // 0x100EF0C0 + + // Methods + internal void .ctor(NameOrId type, NameOrId name, int language, byte[] data); // 0x10212950 + public override void WriteTo(Stream s); // 0x10212910 +} + +// Namespace: System.Resources +internal class Win32IconResource : Win32Resource // TypeDefIndex: 659 +{ + // Fields + private ICONDIRENTRY icon; // 0x14 + + // Properties + public ICONDIRENTRY Icon { get; } // 0x100EF0C0 + + // Methods + public void .ctor(int id, int language, ICONDIRENTRY icon); // 0x102130A0 + public override void WriteTo(Stream s); // 0x10213060 +} + +// Namespace: System.Resources +internal class Win32GroupIconResource : Win32Resource // TypeDefIndex: 660 +{ + // Fields + private Win32IconResource[] icons; // 0x14 + + // Methods + public void .ctor(int id, int language, Win32IconResource[] icons); // 0x10212C20 + public override void WriteTo(Stream s); // 0x10212980 +} + +// Namespace: System.Resources +internal class Win32VersionResource : Win32Resource // TypeDefIndex: 661 +{ + // Fields + public string[] WellKnownProperties; // 0x14 + private long signature; // 0x18 + private int struct_version; // 0x20 + private long file_version; // 0x28 + private long product_version; // 0x30 + private int file_flags_mask; // 0x38 + private int file_flags; // 0x3C + private int file_os; // 0x40 + private int file_type; // 0x44 + private int file_subtype; // 0x48 + private long file_date; // 0x50 + private int file_lang; // 0x58 + private int file_codepage; // 0x5C + private Hashtable properties; // 0x60 + + // Properties + public string Version { get; set; } // 0x10214F60 0x10215D10 + public virtual string Item { set; } // 0x10215820 + public virtual string Comments { get; set; } // 0x10214B00 0x10215370 + public virtual string CompanyName { get; set; } // 0x10214B70 0x10215410 + public virtual string LegalCopyright { get; set; } // 0x10214D30 0x10215860 + public virtual string LegalTrademarks { get; set; } // 0x10214DA0 0x10215900 + public virtual string OriginalFilename { get; set; } // 0x10214E10 0x102159A0 + public virtual string ProductName { get; set; } // 0x10214E80 0x10215A40 + public virtual string ProductVersion { get; set; } // 0x10214EF0 0x10215AE0 + public virtual string InternalName { get; set; } // 0x10214CC0 0x10215780 + public virtual string FileDescription { get; set; } // 0x10214BE0 0x102154B0 + public virtual int FileLanguage { get; set; } // 0x10145540 0x101455C0 + public virtual string FileVersion { get; set; } // 0x10214C50 0x10215550 + + // Methods + public void .ctor(int id, int language, bool compilercontext); // 0x10214670 + private void emit_padding(BinaryWriter w); // 0x10214A90 + private void patch_length(BinaryWriter w, long len_pos); // 0x102152D0 + public override void WriteTo(Stream ms); // 0x10213BC0 +} + +// Namespace: System.Resources +internal class Win32ResFileReader // TypeDefIndex: 662 +{ + // Fields + private Stream res_file; // 0x08 + + // Methods + public void .ctor(Stream s); // 0x10113500 + private int read_int16(); // 0x102135C0 + private int read_int32(); // 0x10213630 + private void read_padding(); // 0x10213850 + private NameOrId read_ordinal(); // 0x10213670 + public ICollection ReadResources(); // 0x102130D0 +} + +// Namespace: System.Resources +internal class ICONDIRENTRY // TypeDefIndex: 663 +{ + // Fields + public byte bWidth; // 0x08 + public byte bHeight; // 0x09 + public byte bColorCount; // 0x0A + public byte bReserved; // 0x0B + public short wPlanes; // 0x0C + public short wBitCount; // 0x0E + public int dwBytesInRes; // 0x10 + public int dwImageOffset; // 0x14 + public byte[] image; // 0x18 + + // Methods + public void .ctor(); // 0x100BF000 + public override string ToString(); // 0x10203C90 +} + +// Namespace: System.Resources +internal class Win32IconFileReader // TypeDefIndex: 664 +{ + // Fields + private Stream iconFile; // 0x08 + + // Methods + public void .ctor(Stream s); // 0x10113500 + public ICONDIRENTRY[] ReadIcons(); // 0x10212C50 +} + +// Namespace: System.Runtime.CompilerServices +public sealed class AccessedThroughPropertyAttribute : Attribute // TypeDefIndex: 665 +{ + // Fields + private string name; // 0x08 + + // Properties + public string PropertyName { get; } // 0x100BF0C0 + + // Methods + public void .ctor(string propertyName); // 0x100E5940 +} + +// Namespace: System.Runtime.CompilerServices +public class CallConvCdecl // TypeDefIndex: 666 +{ + // Methods + public void .ctor(); // 0x100BF000 +} + +// Namespace: System.Runtime.CompilerServices +public class CallConvFastcall // TypeDefIndex: 667 +{ + // Methods + public void .ctor(); // 0x100BF000 +} + +// Namespace: System.Runtime.CompilerServices +public class CallConvStdcall // TypeDefIndex: 668 +{ + // Methods + public void .ctor(); // 0x100BF000 +} + +// Namespace: System.Runtime.CompilerServices +public class CallConvThiscall // TypeDefIndex: 669 +{ + // Methods + public void .ctor(); // 0x100BF000 +} + +// Namespace: System.Runtime.CompilerServices +[Serializable] +public enum CompilationRelaxations // TypeDefIndex: 670 +{ + NoStringInterning = 8 +} + +// Namespace: System.Runtime.CompilerServices +[Serializable] +public class CompilationRelaxationsAttribute : Attribute // TypeDefIndex: 671 +{ + // Fields + private int relax; // 0x08 + + // Properties + public int CompilationRelaxations { get; } // 0x100BF0C0 + + // Methods + public void .ctor(int relaxations); // 0x100E5940 + public void .ctor(CompilationRelaxations relaxations); // 0x100E5940 +} + +// Namespace: System.Runtime.CompilerServices +[Serializable] +public class CompilerGlobalScopeAttribute : Attribute // TypeDefIndex: 672 +{ + // Methods + public void .ctor(); // 0x100C5970 +} + +// Namespace: System.Runtime.CompilerServices +public static class CompilerMarshalOverride // TypeDefIndex: 673 +{ +} + +// Namespace: System.Runtime.CompilerServices +[Serializable] +public abstract class CustomConstantAttribute : Attribute // TypeDefIndex: 674 +{ + // Properties + public abstract object Value { get; } + + // Methods + protected void .ctor(); // 0x100C5970 +} + +// Namespace: System.Runtime.CompilerServices +[Serializable] +public sealed class DateTimeConstantAttribute : CustomConstantAttribute // TypeDefIndex: 675 +{ + // Fields + private long ticks; // 0x08 + + // Properties + internal long Ticks { get; } // 0x10203300 + public override object Value { get; } // 0x10203310 + + // Methods + public void .ctor(long ticks); // 0x101237E0 +} + +// Namespace: System.Runtime.CompilerServices +[Serializable] +public sealed class DefaultDependencyAttribute : Attribute // TypeDefIndex: 676 +{ + // Fields + private LoadHint hint; // 0x08 + + // Properties + public LoadHint LoadHint { get; } // 0x100BF0C0 + + // Methods + public void .ctor(LoadHint loadHintArgument); // 0x100E5940 +} + +// Namespace: System.Runtime.CompilerServices +[Serializable] +public sealed class DependencyAttribute : Attribute // TypeDefIndex: 677 +{ + // Fields + private string dependentAssembly; // 0x08 + private LoadHint hint; // 0x0C + + // Properties + public string DependentAssembly { get; } // 0x100BF0C0 + public LoadHint LoadHint { get; } // 0x100C5B30 + + // Methods + public void .ctor(string dependentAssemblyArgument, LoadHint loadHintArgument); // 0x101237E0 +} + +// Namespace: System.Runtime.CompilerServices +public class DiscardableAttribute : Attribute // TypeDefIndex: 678 +{ + // Methods + public void .ctor(); // 0x100C5970 +} + +// Namespace: System.Runtime.CompilerServices +[Serializable] +public sealed class FixedAddressValueTypeAttribute : Attribute // TypeDefIndex: 679 +{ + // Methods + public void .ctor(); // 0x100C5970 +} + +// Namespace: System.Runtime.CompilerServices +[Serializable] +public sealed class HasCopySemanticsAttribute : Attribute // TypeDefIndex: 680 +{ + // Methods + public void .ctor(); // 0x100C5970 +} + +// Namespace: System.Runtime.CompilerServices +[Serializable] +public sealed class IDispatchConstantAttribute : CustomConstantAttribute // TypeDefIndex: 681 +{ + // Properties + public override object Value { get; } // 0x100C5600 + + // Methods + public void .ctor(); // 0x100C5970 +} + +// Namespace: System.Runtime.CompilerServices +[Serializable] +public sealed class IUnknownConstantAttribute : CustomConstantAttribute // TypeDefIndex: 682 +{ + // Properties + public override object Value { get; } // 0x100C5600 + + // Methods + public void .ctor(); // 0x100C5970 +} + +// Namespace: System.Runtime.CompilerServices +public static class IsBoxed // TypeDefIndex: 683 +{ +} + +// Namespace: System.Runtime.CompilerServices +public static class IsByValue // TypeDefIndex: 684 +{ +} + +// Namespace: System.Runtime.CompilerServices +public static class IsConst // TypeDefIndex: 685 +{ +} + +// Namespace: System.Runtime.CompilerServices +public static class IsCopyConstructed // TypeDefIndex: 686 +{ +} + +// Namespace: System.Runtime.CompilerServices +public static class IsExplicitlyDereferenced // TypeDefIndex: 687 +{ +} + +// Namespace: System.Runtime.CompilerServices +public static class IsImplicitlyDereferenced // TypeDefIndex: 688 +{ +} + +// Namespace: System.Runtime.CompilerServices +public static class IsJitIntrinsic // TypeDefIndex: 689 +{ +} + +// Namespace: System.Runtime.CompilerServices +public static class IsLong // TypeDefIndex: 690 +{ +} + +// Namespace: System.Runtime.CompilerServices +public static class IsPinned // TypeDefIndex: 691 +{ +} + +// Namespace: System.Runtime.CompilerServices +public static class IsSignUnspecifiedByte // TypeDefIndex: 692 +{ +} + +// Namespace: System.Runtime.CompilerServices +public static class IsUdtReturn // TypeDefIndex: 693 +{ +} + +// Namespace: System.Runtime.CompilerServices +public static class IsVolatile // TypeDefIndex: 694 +{ +} + +// Namespace: System.Runtime.CompilerServices +[Serializable] +public enum LoadHint // TypeDefIndex: 695 +{ + Default = 0, + Always = 1, + Sometimes = 2 +} + +// Namespace: System.Runtime.CompilerServices +[Serializable] +public enum MethodCodeType // TypeDefIndex: 696 +{ + IL = 0, + Native = 1, + OPTIL = 2, + Runtime = 3 +} + +// Namespace: System.Runtime.CompilerServices +[Serializable] +public enum MethodImplOptions // TypeDefIndex: 697 +{ + Unmanaged = 4, + NoInlining = 8, + ForwardRef = 16, + Synchronized = 32, + NoOptimization = 64, + PreserveSig = 128, + InternalCall = 4096 +} + +// Namespace: System.Runtime.CompilerServices +[Serializable] +public sealed class NativeCppClassAttribute : Attribute // TypeDefIndex: 698 +{ + // Methods + public void .ctor(); // 0x100C5970 +} + +// Namespace: System.Runtime.CompilerServices +[Serializable] +public sealed class RuntimeWrappedException : Exception // TypeDefIndex: 699 +{ + // Fields + private object wrapped_exception; // 0x34 + + // Properties + public object WrappedException { get; } // 0x100E9ED0 + + // Methods + private void .ctor(); // 0x10211520 + public override void GetObjectData(SerializationInfo info, StreamingContext context); // 0x102114C0 +} + +// Namespace: System.Runtime.CompilerServices +[Serializable] +public sealed class ScopelessEnumAttribute : Attribute // TypeDefIndex: 700 +{ + // Methods + public void .ctor(); // 0x100C5970 +} + +// Namespace: System.Runtime.CompilerServices +public sealed class SpecialNameAttribute : Attribute // TypeDefIndex: 701 +{ + // Methods + public void .ctor(); // 0x100C5970 +} + +// Namespace: System.Runtime.CompilerServices +[Serializable] +public sealed class StringFreezingAttribute : Attribute // TypeDefIndex: 702 +{ + // Methods + public void .ctor(); // 0x100C5970 +} + +// Namespace: System.Runtime.CompilerServices +public sealed class SuppressIldasmAttribute : Attribute // TypeDefIndex: 703 +{ + // Methods + public void .ctor(); // 0x100C5970 +} + +// Namespace: System.Runtime.ConstrainedExecution +[Serializable] +public enum Cer // TypeDefIndex: 704 +{ + None = 0, + MayFail = 1, + Success = 2 +} + +// Namespace: System.Runtime.ConstrainedExecution +[Serializable] +public enum Consistency // TypeDefIndex: 705 +{ + MayCorruptProcess = 0, + MayCorruptAppDomain = 1, + MayCorruptInstance = 2, + WillNotCorruptState = 3 +} + +// Namespace: System.Runtime.ConstrainedExecution +public abstract class CriticalFinalizerObject // TypeDefIndex: 706 +{ + // Methods + protected void .ctor(); // 0x100BF000 + protected override void Finalize(); // 0x101CF660 +} + +// Namespace: System.Runtime.ConstrainedExecution +public sealed class PrePrepareMethodAttribute : Attribute // TypeDefIndex: 707 +{ + // Methods + public void .ctor(); // 0x100C5970 +} + +// Namespace: System.Runtime.ConstrainedExecution +public sealed class ReliabilityContractAttribute : Attribute // TypeDefIndex: 708 +{ + // Fields + private Consistency consistency; // 0x08 + private Cer cer; // 0x0C + + // Properties + public Cer Cer { get; } // 0x100C5B30 + public Consistency ConsistencyGuarantee { get; } // 0x100BF0C0 + + // Methods + public void .ctor(Consistency consistencyGuarantee, Cer cer); // 0x101237E0 +} + +// Namespace: System.Runtime.Hosting +[Serializable] +public sealed class ActivationArguments // TypeDefIndex: 709 +{ + // Fields + private ActivationContext _context; // 0x08 + private ApplicationIdentity _identity; // 0x0C + private string[] _data; // 0x10 + + // Properties + public ActivationContext ActivationContext { get; } // 0x100BF0C0 + public string[] ActivationData { get; } // 0x100BFC20 + public ApplicationIdentity ApplicationIdentity { get; } // 0x100C5B30 + + // Methods + public void .ctor(ActivationContext activationData); // 0x10202490 + public void .ctor(ApplicationIdentity applicationIdentity); // 0x10202500 + public void .ctor(ActivationContext activationContext, string[] activationData); // 0x10202410 + public void .ctor(ApplicationIdentity applicationIdentity, string[] activationData); // 0x10202570 +} + +// Namespace: System.Runtime.Hosting +public class ApplicationActivator // TypeDefIndex: 710 +{ + // Methods + public void .ctor(); // 0x100BF000 + public virtual ObjectHandle CreateInstance(ActivationContext activationContext); // 0x10202800 + public virtual ObjectHandle CreateInstance(ActivationContext activationContext, string[] activationCustomData); // 0x10202830 + protected static ObjectHandle CreateInstanceHelper(AppDomainSetup adSetup); // 0x102025E0 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +public struct BINDPTR // TypeDefIndex: 711 +{ + // Fields + public IntPtr lpfuncdesc; // 0x08 + public IntPtr lptcomp; // 0x08 + public IntPtr lpvardesc; // 0x08 + +} + +// Namespace: System.Runtime.InteropServices.ComTypes +public struct BIND_OPTS // TypeDefIndex: 712 +{ + // Fields + public int cbStruct; // 0x08 + public int grfFlags; // 0x0C + public int grfMode; // 0x10 + public int dwTickCountDeadline; // 0x14 + +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[Serializable] +public enum CALLCONV // TypeDefIndex: 713 +{ + CC_CDECL = 1, + CC_PASCAL = 2, + CC_MSCPASCAL = 2, + CC_MACPASCAL = 3, + CC_STDCALL = 4, + CC_RESERVED = 5, + CC_SYSCALL = 6, + CC_MPWCDECL = 7, + CC_MPWPASCAL = 8, + CC_MAX = 9 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +public struct CONNECTDATA // TypeDefIndex: 714 +{ + // Fields + public object pUnk; // 0x08 + public int dwCookie; // 0x0C + +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[Serializable] +public enum DESCKIND // TypeDefIndex: 715 +{ + DESCKIND_NONE = 0, + DESCKIND_FUNCDESC = 1, + DESCKIND_VARDESC = 2, + DESCKIND_TYPECOMP = 3, + DESCKIND_IMPLICITAPPOBJ = 4, + DESCKIND_MAX = 5 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +public struct DISPPARAMS // TypeDefIndex: 716 +{ + // Fields + public IntPtr rgvarg; // 0x08 + public IntPtr rgdispidNamedArgs; // 0x0C + public int cArgs; // 0x10 + public int cNamedArgs; // 0x14 + +} + +// Namespace: System.Runtime.InteropServices.ComTypes +public struct ELEMDESC // TypeDefIndex: 717 +{ + // Fields + public TYPEDESC tdesc; // 0x08 + public DESCUNION desc; // 0x10 + +} + +// Namespace: +public struct DESCUNION // TypeDefIndex: 718 +{ + // Fields + public IDLDESC idldesc; // 0x08 + public PARAMDESC paramdesc; // 0x08 + +} + +// Namespace: System.Runtime.InteropServices.ComTypes +public struct EXCEPINFO // TypeDefIndex: 719 +{ + // Fields + public short wCode; // 0x08 + public short wReserved; // 0x0A + public string bstrSource; // 0x0C + public string bstrDescription; // 0x10 + public string bstrHelpFile; // 0x14 + public int dwHelpContext; // 0x18 + public IntPtr pvReserved; // 0x1C + public IntPtr pfnDeferredFillIn; // 0x20 + public int scode; // 0x24 + +} + +// Namespace: System.Runtime.InteropServices.ComTypes +public struct FILETIME // TypeDefIndex: 720 +{ + // Fields + public int dwLowDateTime; // 0x08 + public int dwHighDateTime; // 0x0C + +} + +// Namespace: System.Runtime.InteropServices.ComTypes +public struct FUNCDESC // TypeDefIndex: 721 +{ + // Fields + public int memid; // 0x08 + public IntPtr lprgscode; // 0x0C + public IntPtr lprgelemdescParam; // 0x10 + public FUNCKIND funckind; // 0x14 + public INVOKEKIND invkind; // 0x18 + public CALLCONV callconv; // 0x1C + public short cParams; // 0x20 + public short cParamsOpt; // 0x22 + public short oVft; // 0x24 + public short cScodes; // 0x26 + public ELEMDESC elemdescFunc; // 0x28 + public short wFuncFlags; // 0x38 + +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[Serializable] +public enum FUNCFLAGS // TypeDefIndex: 722 +{ + FUNCFLAG_FRESTRICTED = 1, + FUNCFLAG_FSOURCE = 2, + FUNCFLAG_FBINDABLE = 4, + FUNCFLAG_FREQUESTEDIT = 8, + FUNCFLAG_FDISPLAYBIND = 16, + FUNCFLAG_FDEFAULTBIND = 32, + FUNCFLAG_FHIDDEN = 64, + FUNCFLAG_FUSESGETLASTERROR = 128, + FUNCFLAG_FDEFAULTCOLLELEM = 256, + FUNCFLAG_FUIDEFAULT = 512, + FUNCFLAG_FNONBROWSABLE = 1024, + FUNCFLAG_FREPLACEABLE = 2048, + FUNCFLAG_FIMMEDIATEBIND = 4096 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[Serializable] +public enum FUNCKIND // TypeDefIndex: 723 +{ + FUNC_VIRTUAL = 0, + FUNC_PUREVIRTUAL = 1, + FUNC_NONVIRTUAL = 2, + FUNC_STATIC = 3, + FUNC_DISPATCH = 4 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[ComImport]public interface IBindCtx // TypeDefIndex: 724 +{ + // Methods + void RegisterObjectBound(object punk); // 0x10203A50 + void RevokeObjectBound(object punk); // 0x10203B90 + void ReleaseBoundObjects(); // 0x10203B60 + void SetBindOptions(BIND_OPTS pbindopts); // 0x10203C60 + void GetBindOptions(BIND_OPTS pbindopts); // 0x102038C0 + void GetRunningObjectTable(out IRunningObjectTable pprot); // 0x102039A0 + void RegisterObjectParam(string pszKey, object punk); // 0x10203AD0 + void GetObjectParam(string pszKey, out object ppunk); // 0x102038F0 + void EnumObjectParam(out IEnumString ppenum); // 0x10203810 + int RevokeObjectParam(string pszKey); // 0x10203C10 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[ComImport]public interface IConnectionPoint // TypeDefIndex: 725 +{ + // Methods + void GetConnectionInterface(out Guid pIID); // 0x10204200 + void GetConnectionPointContainer(out IConnectionPointContainer ppCPC); // 0x10204230 + void Advise(object pUnkSink, out int pdwCookie); // 0x102040D0 + void Unadvise(int dwCookie); // 0x102042E0 + void EnumConnections(out IEnumConnections ppEnum); // 0x10204150 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[ComImport]public interface IConnectionPointContainer // TypeDefIndex: 726 +{ + // Methods + void EnumConnectionPoints(out IEnumConnectionPoints ppEnum); // 0x10203F70 + void FindConnectionPoint(Guid riid, out IConnectionPoint ppCP); // 0x10204020 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +public struct IDLDESC // TypeDefIndex: 727 +{ + // Fields + public IntPtr dwReserved; // 0x08 + public IDLFLAG wIDLFlags; // 0x0C + +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[Serializable] +public enum IDLFLAG // TypeDefIndex: 728 +{ + IDLFLAG_NONE = 0, + IDLFLAG_FIN = 1, + IDLFLAG_FOUT = 2, + IDLFLAG_FLCID = 4, + IDLFLAG_FRETVAL = 8 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[ComImport]public interface IEnumConnectionPoints // TypeDefIndex: 729 +{ + // Methods + int Next(int celt, out IConnectionPoint[] rgelt, IntPtr pceltFetched); // 0x102043C0 + int Skip(int celt); // 0x10204410 + void Reset(); // 0x102043E0 + void Clone(out IEnumConnectionPoints ppenum); // 0x10204310 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[ComImport]public interface IEnumConnections // TypeDefIndex: 730 +{ + // Methods + int Next(int celt, out CONNECTDATA[] rgelt, IntPtr pceltFetched); // 0x10204500 + int Skip(int celt); // 0x10204680 + void Reset(); // 0x10204650 + void Clone(out IEnumConnections ppenum); // 0x10204450 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[ComImport]public interface IEnumMoniker // TypeDefIndex: 731 +{ + // Methods + int Next(int celt, out IMoniker[] rgelt, IntPtr pceltFetched); // 0x10204770 + int Skip(int celt); // 0x102047C0 + void Reset(); // 0x10204790 + void Clone(out IEnumMoniker ppenum); // 0x102046C0 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[ComImport]public interface IEnumString // TypeDefIndex: 732 +{ + // Methods + int Next(int celt, out string[] rgelt, IntPtr pceltFetched); // 0x102048B0 + int Skip(int celt); // 0x102049C0 + void Reset(); // 0x10204990 + void Clone(out IEnumString ppenum); // 0x10204800 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[ComImport]public interface IEnumVARIANT // TypeDefIndex: 733 +{ + // Methods + int Next(int celt, out object[] rgVar, IntPtr pceltFetched); // 0x10204AB0 + int Skip(int celt); // 0x10204B10 + int Reset(); // 0x10204AD0 + IEnumVARIANT Clone(); // 0x10204A00 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[Serializable] +public enum IMPLTYPEFLAGS // TypeDefIndex: 734 +{ + IMPLTYPEFLAG_FDEFAULT = 1, + IMPLTYPEFLAG_FSOURCE = 2, + IMPLTYPEFLAG_FRESTRICTED = 4, + IMPLTYPEFLAG_FDEFAULTVTABLE = 8 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[ComImport]public interface IMoniker // TypeDefIndex: 735 +{ + // Methods + void GetClassID(out Guid pClassID); // 0x10205060 + int IsDirty(); // 0x10205340 + void Load(IStream pStm); // 0x10205570 + void Save(IStream pStm, bool fClearDirty); // 0x102059B0 + void GetSizeMax(out long pcbSize); // 0x10205170 + void BindToObject(IBindCtx pbc, IMoniker pmkToLeft, Guid riidResult, out object ppvResult); // 0x10204B50 + void BindToStorage(IBindCtx pbc, IMoniker pmkToLeft, Guid riid, out object ppvObj); // 0x10204C90 + void Reduce(IBindCtx pbc, int dwReduceHowFar, IMoniker ppmkToLeft, out IMoniker ppmkReduced); // 0x10205730 + void ComposeWith(IMoniker pmkRight, bool fOnlyIfNotGeneric, out IMoniker ppmkComposite); // 0x10204EC0 + void Enum(bool fForward, out IEnumMoniker ppenumMoniker); // 0x10204FB0 + int IsEqual(IMoniker pmkOtherMoniker); // 0x10205380 + void Hash(out int pdwHash); // 0x10205260 + int IsRunning(IBindCtx pbc, IMoniker pmkToLeft, IMoniker pmkNewlyRunning); // 0x10205410 + void GetTimeOfLastChange(IBindCtx pbc, IMoniker pmkToLeft, out FILETIME pFileTime); // 0x102051A0 + void Inverse(out IMoniker ppmk); // 0x10205290 + void CommonPrefixWith(IMoniker pmkOther, out IMoniker ppmkPrefix); // 0x10204DD0 + void RelativePathTo(IMoniker pmkOther, out IMoniker ppmkRelPath); // 0x102058C0 + void GetDisplayName(IBindCtx pbc, IMoniker pmkToLeft, out string ppszDisplayName); // 0x10205090 + void ParseDisplayName(IBindCtx pbc, IMoniker pmkToLeft, string pszDisplayName, out int pchEaten, out IMoniker ppmkOut); // 0x102055F0 + int IsSystemMoniker(out int pdwMksys); // 0x10205530 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[Serializable] +public enum INVOKEKIND // TypeDefIndex: 736 +{ + INVOKE_FUNC = 1, + INVOKE_PROPERTYGET = 2, + INVOKE_PROPERTYPUT = 4, + INVOKE_PROPERTYPUTREF = 8 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[ComImport]public interface IPersistFile // TypeDefIndex: 737 +{ + // Methods + void GetClassID(out Guid pClassID); // 0x10205A30 + int IsDirty(); // 0x10205AB0 + void Load(string pszFileName, int dwMode); // 0x10205AF0 + void Save(string pszFileName, bool fRemember); // 0x10205B70 + void SaveCompleted(string pszFileName); // 0x10205B30 + void GetCurFile(out string ppszFileName); // 0x10205A60 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[ComImport]public interface IRunningObjectTable // TypeDefIndex: 738 +{ + // Methods + int Register(int grfFlags, object punkObject, IMoniker pmkObjectName); // 0x10205EB0 + void Revoke(int dwRegister); // 0x10205F80 + int IsRunning(IMoniker pmkObjectName); // 0x10205DF0 + int GetObject(IMoniker pmkObjectName, out object ppunkObject); // 0x10205C60 + void NoteChangeTime(int dwRegister, FILETIME pfiletime); // 0x10205E80 + int GetTimeOfLastChange(IMoniker pmkObjectName, out FILETIME pfiletime); // 0x10205D60 + void EnumRunning(out IEnumMoniker ppenumMoniker); // 0x10205BB0 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[ComImport]public interface IStream // TypeDefIndex: 739 +{ + // Methods + void Read(out byte[] pv, int cb, IntPtr pcbRead); // 0x10206150 + void Write(byte[] pv, int cb, IntPtr pcbWritten); // 0x10206370 + void Seek(long dlibMove, int dwOrigin, IntPtr plibNewPosition); // 0x10206210 + void SetSize(long libNewSize); // 0x10206250 + void CopyTo(IStream pstm, long cb, IntPtr pcbRead, IntPtr pcbWritten); // 0x10206090 + void Commit(int grfCommitFlags); // 0x10206060 + void Revert(); // 0x102061E0 + void LockRegion(long libOffset, long cb, int dwLockType); // 0x10206110 + void UnlockRegion(long libOffset, long cb, int dwLockType); // 0x10206330 + void Stat(out STATSTG pstatstg, int grfStatFlag); // 0x10206280 + void Clone(out IStream ppstm); // 0x10205FB0 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[ComImport]public interface ITypeComp // TypeDefIndex: 740 +{ + // Methods + void Bind(string szName, int lHashVal, short wFlags, out ITypeInfo ppTInfo, out DESCKIND pDescKind, out BINDPTR pBindPtr); // 0x102064D0 + void BindType(string szName, int lHashVal, out ITypeInfo ppTInfo, out ITypeComp ppTComp); // 0x102063B0 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[ComImport]public interface ITypeInfo // TypeDefIndex: 741 +{ + // Methods + void GetTypeAttr(out IntPtr ppTypeAttr); // 0x102078E0 + void GetTypeComp(out ITypeComp ppTComp); // 0x10207910 + void GetFuncDesc(int index, out IntPtr ppFuncDesc); // 0x10207540 + void GetVarDesc(int index, out IntPtr ppVarDesc); // 0x102079C0 + void GetNames(int memid, out string[] rgBstrNames, int cMaxNames, out int pcNames); // 0x10207730 + void GetRefTypeOfImplType(int index, out int href); // 0x102078B0 + void GetImplTypeFlags(int index, out IMPLTYPEFLAGS pImplTypeFlags); // 0x102076A0 + void GetIDsOfNames(string[] rgszNames, int cNames, out int[] pMemId); // 0x10207570 + void Invoke(object pvInstance, int memid, short wFlags, DISPPARAMS pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, out int puArgErr); // 0x102079F0 + void GetDocumentation(int index, out string strName, out string strDocString, out int dwHelpContext, out string strHelpFile); // 0x10207490 + void GetDllEntry(int memid, INVOKEKIND invKind, IntPtr pBstrDllName, IntPtr pBstrName, IntPtr pwOrdinal); // 0x10207450 + void GetRefTypeInfo(int hRef, out ITypeInfo ppTI); // 0x10207800 + void AddressOfMember(int memid, INVOKEKIND invKind, out IntPtr ppv); // 0x10207270 + void CreateInstance(object pUnkOuter, Guid riid, out object ppvObj); // 0x102072B0 + void GetMops(int memid, out string pBstrMops); // 0x102076D0 + void GetContainingTypeLib(out ITypeLib ppTLB, out int pIndex); // 0x102073A0 + void ReleaseTypeAttr(IntPtr pTypeAttr); // 0x10207AB0 + void ReleaseFuncDesc(IntPtr pFuncDesc); // 0x10207A80 + void ReleaseVarDesc(IntPtr pVarDesc); // 0x10207AE0 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[ComImport]public interface ITypeInfo2 : ITypeInfo // TypeDefIndex: 742 +{ + // Methods + void AddressOfMember(int memid, INVOKEKIND invKind, out IntPtr ppv); // 0x10206590 + void CreateInstance(object pUnkOuter, Guid riid, out object ppvObj); // 0x102065D0 + void GetContainingTypeLib(out ITypeLib ppTLB, out int pIndex); // 0x102067D0 + void GetDllEntry(int memid, INVOKEKIND invKind, IntPtr pBstrDllName, IntPtr pBstrName, IntPtr pwOrdinal); // 0x102068E0 + void GetDocumentation(int index, out string strName, out string strDocString, out int dwHelpContext, out string strHelpFile); // 0x102069A0 + void GetIDsOfNames(string[] rgszNames, int cNames, out int[] pMemId); // 0x10206B20 + void GetImplTypeFlags(int index, out IMPLTYPEFLAGS pImplTypeFlags); // 0x10206CB0 + void GetTypeKind(out TYPEKIND pTypeKind); // 0x10207060 + void GetTypeFlags(out int pTypeFlags); // 0x10207030 + void GetFuncDesc(int index, out IntPtr ppFuncDesc); // 0x10206AB0 + void GetMops(int memid, out string pBstrMops); // 0x10206CE0 + void GetNames(int memid, out string[] rgBstrNames, int cMaxNames, out int pcNames); // 0x10206D40 + void GetRefTypeInfo(int hRef, out ITypeInfo ppTI); // 0x10206E70 + void GetRefTypeOfImplType(int index, out int href); // 0x10206F20 + void GetTypeAttr(out IntPtr ppTypeAttr); // 0x10206F50 + void GetTypeComp(out ITypeComp ppTComp); // 0x10206F80 + void GetVarDesc(int index, out IntPtr ppVarDesc); // 0x102070F0 + void GetFuncIndexOfMemId(int memid, INVOKEKIND invKind, out int pFuncIndex); // 0x10206AE0 + void GetVarIndexOfMemId(int memid, out int pVarIndex); // 0x10207120 + void GetCustData(Guid guid, out object pVarVal); // 0x10206880 + void GetFuncCustData(int index, Guid guid, out object pVarVal); // 0x10206A50 + void GetParamCustData(int indexFunc, int indexParam, Guid guid, out object pVarVal); // 0x10206E10 + void GetVarCustData(int index, Guid guid, out object pVarVal); // 0x10207090 + void GetImplTypeCustData(int index, Guid guid, out object pVarVal); // 0x10206C50 + void GetDocumentation2(int memid, out string pbstrHelpString, out int pdwHelpStringContext, out string pbstrHelpStringDll); // 0x10206920 + void GetAllCustData(IntPtr pCustData); // 0x102066C0 + void GetAllFuncCustData(int index, IntPtr pCustData); // 0x102066F0 + void GetAllParamCustData(int indexFunc, int indexParam, IntPtr pCustData); // 0x10206760 + void GetAllVarCustData(int index, IntPtr pCustData); // 0x102067A0 + void GetAllImplTypeCustData(int index, IntPtr pCustData); // 0x10206720 + void Invoke(object pvInstance, int memid, short wFlags, DISPPARAMS pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, out int puArgErr); // 0x10207150 + void ReleaseTypeAttr(IntPtr pTypeAttr); // 0x10207210 + void ReleaseFuncDesc(IntPtr pFuncDesc); // 0x102071E0 + void ReleaseVarDesc(IntPtr pVarDesc); // 0x10207240 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[ComImport]public interface ITypeLib // TypeDefIndex: 743 +{ + // Methods + int GetTypeInfoCount(); // 0x101A3E60 + void GetTypeInfo(int index, out ITypeInfo ppTI); // 0x101A3F80 + void GetTypeInfoType(int index, out TYPEKIND pTKind); // 0x101A3F50 + void GetTypeInfoOfGuid(Guid guid, out ITypeInfo ppTInfo); // 0x101A3EA0 + void GetLibAttr(out IntPtr ppTLibAttr); // 0x101A3D80 + void GetTypeComp(out ITypeComp ppTComp); // 0x101A3DB0 + void GetDocumentation(int index, out string strName, out string strDocString, out int dwHelpContext, out string strHelpFile); // 0x101A3CD0 + bool IsName(string szNameBuf, int lHashVal); // 0x101A4030 + void FindName(string szNameBuf, int lHashVal, out ITypeInfo[] ppTInfo, out int[] rgMemId, short pcFound); // 0x101A3780 + void ReleaseTLibAttr(IntPtr pTLibAttr); // 0x101A4090 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[ComImport]public interface ITypeLib2 : ITypeLib // TypeDefIndex: 744 +{ + // Methods + void FindName(string szNameBuf, int lHashVal, out ITypeInfo[] ppTInfo, out int[] rgMemId, short pcFound); // 0x101A3780 + void GetCustData(Guid guid, out object pVarVal); // 0x101A37D0 + void GetDocumentation(int index, out string strName, out string strDocString, out int dwHelpContext, out string strHelpFile); // 0x101A38B0 + void GetLibAttr(out IntPtr ppTLibAttr); // 0x101A3960 + void GetLibStatistics(IntPtr pcUniqueNames, out int pcchUniqueNames); // 0x101A3990 + void GetDocumentation2(int index, out string pbstrHelpString, out int pdwHelpStringContext, out string pbstrHelpStringDll); // 0x101A3830 + void GetAllCustData(IntPtr pCustData); // 0x101A37A0 + void GetTypeComp(out ITypeComp ppTComp); // 0x101A39C0 + void GetTypeInfo(int index, out ITypeInfo ppTI); // 0x101A3B90 + void GetTypeInfoOfGuid(Guid guid, out ITypeInfo ppTInfo); // 0x101A3AB0 + void GetTypeInfoType(int index, out TYPEKIND pTKind); // 0x101A3B60 + bool IsName(string szNameBuf, int lHashVal); // 0x101A3C40 + void ReleaseTLibAttr(IntPtr pTLibAttr); // 0x101A3CA0 + int GetTypeInfoCount(); // 0x101A3A70 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[Serializable] +public enum LIBFLAGS // TypeDefIndex: 745 +{ + LIBFLAG_FRESTRICTED = 1, + LIBFLAG_FCONTROL = 2, + LIBFLAG_FHIDDEN = 4, + LIBFLAG_FHASDISKIMAGE = 8 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +public struct PARAMDESC // TypeDefIndex: 746 +{ + // Fields + public IntPtr lpVarValue; // 0x08 + public PARAMFLAG wParamFlags; // 0x0C + +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[Serializable] +public enum PARAMFLAG // TypeDefIndex: 747 +{ + PARAMFLAG_NONE = 0, + PARAMFLAG_FIN = 1, + PARAMFLAG_FOUT = 2, + PARAMFLAG_FLCID = 4, + PARAMFLAG_FRETVAL = 8, + PARAMFLAG_FOPT = 16, + PARAMFLAG_FHASDEFAULT = 32, + PARAMFLAG_FHASCUSTDATA = 64 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +public struct STATSTG // TypeDefIndex: 748 +{ + // Fields + public string pwcsName; // 0x08 + public int type; // 0x0C + public long cbSize; // 0x10 + public FILETIME mtime; // 0x18 + public FILETIME ctime; // 0x20 + public FILETIME atime; // 0x28 + public int grfMode; // 0x30 + public int grfLocksSupported; // 0x34 + public Guid clsid; // 0x38 + public int grfStateBits; // 0x48 + public int reserved; // 0x4C + +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[Serializable] +public enum SYSKIND // TypeDefIndex: 749 +{ + SYS_WIN16 = 0, + SYS_WIN32 = 1, + SYS_MAC = 2, + SYS_WIN64 = 3 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +public struct TYPEATTR // TypeDefIndex: 750 +{ + // Fields + public const int MEMBER_ID_NIL = -1; // 0x00 + public Guid guid; // 0x08 + public int lcid; // 0x18 + public int dwReserved; // 0x1C + public int memidConstructor; // 0x20 + public int memidDestructor; // 0x24 + public IntPtr lpstrSchema; // 0x28 + public int cbSizeInstance; // 0x2C + public TYPEKIND typekind; // 0x30 + public short cFuncs; // 0x34 + public short cVars; // 0x36 + public short cImplTypes; // 0x38 + public short cbSizeVft; // 0x3A + public short cbAlignment; // 0x3C + public TYPEFLAGS wTypeFlags; // 0x40 + public short wMajorVerNum; // 0x44 + public short wMinorVerNum; // 0x46 + public TYPEDESC tdescAlias; // 0x48 + public IDLDESC idldescType; // 0x50 + +} + +// Namespace: System.Runtime.InteropServices.ComTypes +public struct TYPEDESC // TypeDefIndex: 751 +{ + // Fields + public IntPtr lpValue; // 0x08 + public short vt; // 0x0C + +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[Serializable] +public enum TYPEFLAGS // TypeDefIndex: 752 +{ + TYPEFLAG_FAPPOBJECT = 1, + TYPEFLAG_FCANCREATE = 2, + TYPEFLAG_FLICENSED = 4, + TYPEFLAG_FPREDECLID = 8, + TYPEFLAG_FHIDDEN = 16, + TYPEFLAG_FCONTROL = 32, + TYPEFLAG_FDUAL = 64, + TYPEFLAG_FNONEXTENSIBLE = 128, + TYPEFLAG_FOLEAUTOMATION = 256, + TYPEFLAG_FRESTRICTED = 512, + TYPEFLAG_FAGGREGATABLE = 1024, + TYPEFLAG_FREPLACEABLE = 2048, + TYPEFLAG_FDISPATCHABLE = 4096, + TYPEFLAG_FREVERSEBIND = 8192, + TYPEFLAG_FPROXY = 16384 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[Serializable] +public enum TYPEKIND // TypeDefIndex: 753 +{ + TKIND_ENUM = 0, + TKIND_RECORD = 1, + TKIND_MODULE = 2, + TKIND_INTERFACE = 3, + TKIND_DISPATCH = 4, + TKIND_COCLASS = 5, + TKIND_ALIAS = 6, + TKIND_UNION = 7, + TKIND_MAX = 8 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[Serializable] +public struct TYPELIBATTR // TypeDefIndex: 754 +{ + // Fields + public Guid guid; // 0x08 + public int lcid; // 0x18 + public SYSKIND syskind; // 0x1C + public short wMajorVerNum; // 0x20 + public short wMinorVerNum; // 0x22 + public LIBFLAGS wLibFlags; // 0x24 + +} + +// Namespace: System.Runtime.InteropServices.ComTypes +public struct VARDESC // TypeDefIndex: 755 +{ + // Fields + public int memid; // 0x08 + public string lpstrSchema; // 0x0C + public DESCUNION desc; // 0x10 + public ELEMDESC elemdescVar; // 0x14 + public short wVarFlags; // 0x24 + public VARKIND varkind; // 0x28 + +} + +// Namespace: +public struct DESCUNION // TypeDefIndex: 756 +{ + // Fields + public IntPtr lpvarValue; // 0x08 + public int oInst; // 0x08 + +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[Serializable] +public enum VARFLAGS // TypeDefIndex: 757 +{ + VARFLAG_FREADONLY = 1, + VARFLAG_FSOURCE = 2, + VARFLAG_FBINDABLE = 4, + VARFLAG_FREQUESTEDIT = 8, + VARFLAG_FDISPLAYBIND = 16, + VARFLAG_FDEFAULTBIND = 32, + VARFLAG_FHIDDEN = 64, + VARFLAG_FRESTRICTED = 128, + VARFLAG_FDEFAULTCOLLELEM = 256, + VARFLAG_FUIDEFAULT = 512, + VARFLAG_FNONBROWSABLE = 1024, + VARFLAG_FREPLACEABLE = 2048, + VARFLAG_FIMMEDIATEBIND = 4096 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[Serializable] +public enum VARKIND // TypeDefIndex: 758 +{ + VAR_PERINSTANCE = 0, + VAR_STATIC = 1, + VAR_CONST = 2, + VAR_DISPATCH = 3 +} + +// Namespace: System.Runtime.InteropServices.Expando +public interface IExpando : IReflect // TypeDefIndex: 759 +{ + // Methods + FieldInfo AddField(string name); + MethodInfo AddMethod(string name, Delegate method); + PropertyInfo AddProperty(string name); + void RemoveMember(MemberInfo m); +} + +// Namespace: System.Runtime.InteropServices +public sealed class AllowReversePInvokeCallsAttribute : Attribute // TypeDefIndex: 760 +{ + // Methods + public void .ctor(); // 0x100C5970 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public struct ArrayWithOffset // TypeDefIndex: 761 +{ + // Fields + private object array; // 0x08 + private int offset; // 0x0C + + // Methods + public void .ctor(object array, int offset); // 0x100075A0 + public override bool Equals(object obj); // 0x100182A0 + public bool Equals(ArrayWithOffset obj); // 0x10018320 + public override int GetHashCode(); // 0x10003A90 + public object GetArray(); // 0x10003A80 + public int GetOffset(); // 0x10003A90 + public static bool op_Equality(ArrayWithOffset a, ArrayWithOffset b); // 0x102028B0 + public static bool op_Inequality(ArrayWithOffset a, ArrayWithOffset b); // 0x102028D0 +} + +// Namespace: System.Runtime.InteropServices +public enum AssemblyRegistrationFlags // TypeDefIndex: 762 +{ + None = 0, + SetCodeBase = 1 +} + +// Namespace: System.Runtime.InteropServices +public sealed class AutomationProxyAttribute : Attribute // TypeDefIndex: 763 +{ + // Fields + private bool val; // 0x08 + + // Properties + public bool Value { get; } // 0x100EA020 + + // Methods + public void .ctor(bool val); // 0x100EA000 +} + +// Namespace: System.Runtime.InteropServices +public struct BINDPTR // TypeDefIndex: 764 +{ + // Fields + public IntPtr lpfuncdesc; // 0x08 + public IntPtr lptcomp; // 0x08 + public IntPtr lpvardesc; // 0x08 + +} + +// Namespace: System.Runtime.InteropServices +public struct BIND_OPTS // TypeDefIndex: 765 +{ + // Fields + public int cbStruct; // 0x08 + public int grfFlags; // 0x0C + public int grfMode; // 0x10 + public int dwTickCountDeadline; // 0x14 + +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public sealed class BStrWrapper // TypeDefIndex: 766 +{ + // Fields + private string _value; // 0x08 + + // Properties + public string WrappedObject { get; } // 0x100BF0C0 + + // Methods + public void .ctor(string value); // 0x10113500 +} + +// Namespace: System.Runtime.InteropServices +public sealed class BestFitMappingAttribute : Attribute // TypeDefIndex: 767 +{ + // Fields + private bool bfm; // 0x08 + public bool ThrowOnUnmappableChar; // 0x09 + + // Properties + public bool BestFitMapping { get; } // 0x100EA020 + + // Methods + public void .ctor(bool BestFitMapping); // 0x100EA000 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum CALLCONV // TypeDefIndex: 768 +{ + CC_CDECL = 1, + CC_PASCAL = 2, + CC_MSCPASCAL = 2, + CC_MACPASCAL = 3, + CC_STDCALL = 4, + CC_RESERVED = 5, + CC_SYSCALL = 6, + CC_MPWCDECL = 7, + CC_MPWPASCAL = 8, + CC_MAX = 9 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public class COMException : ExternalException // TypeDefIndex: 769 +{ + // Methods + public void .ctor(); // 0x10202C20 + public void .ctor(string message); // 0x10202C10 + public void .ctor(string message, Exception inner); // 0x10202C30 + public void .ctor(string message, int errorCode); // 0x10202C00 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100F8FE0 + public override string ToString(); // 0x102028F0 +} + +// Namespace: System.Runtime.InteropServices +public struct CONNECTDATA // TypeDefIndex: 770 +{ + // Fields + public object pUnk; // 0x08 + public int dwCookie; // 0x0C + +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum CallingConvention // TypeDefIndex: 771 +{ + Winapi = 1, + Cdecl = 2, + StdCall = 3, + ThisCall = 4, + FastCall = 5 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum CharSet // TypeDefIndex: 772 +{ + None = 1, + Ansi = 2, + Unicode = 3, + Auto = 4 +} + +// Namespace: System.Runtime.InteropServices +public sealed class ClassInterfaceAttribute : Attribute // TypeDefIndex: 773 +{ + // Fields + private ClassInterfaceType ciType; // 0x08 + + // Properties + public ClassInterfaceType Value { get; } // 0x100BF0C0 + + // Methods + public void .ctor(short classInterfaceType); // 0x101A3760 + public void .ctor(ClassInterfaceType classInterfaceType); // 0x100E5940 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum ClassInterfaceType // TypeDefIndex: 774 +{ + None = 0, + AutoDispatch = 1, + AutoDual = 2 +} + +// Namespace: System.Runtime.InteropServices +public sealed class ComAliasNameAttribute : Attribute // TypeDefIndex: 775 +{ + // Fields + private string val; // 0x08 + + // Properties + public string Value { get; } // 0x100BF0C0 + + // Methods + public void .ctor(string alias); // 0x100E5940 +} + +// Namespace: System.Runtime.InteropServices +public sealed class ComCompatibleVersionAttribute : Attribute // TypeDefIndex: 776 +{ + // Fields + private int major; // 0x08 + private int minor; // 0x0C + private int build; // 0x10 + private int revision; // 0x14 + + // Properties + public int MajorVersion { get; } // 0x100BF0C0 + public int MinorVersion { get; } // 0x100C5B30 + public int BuildNumber { get; } // 0x100BFC20 + public int RevisionNumber { get; } // 0x100EF0C0 + + // Methods + public void .ctor(int major, int minor, int build, int revision); // 0x10203050 +} + +// Namespace: System.Runtime.InteropServices +public sealed class ComConversionLossAttribute : Attribute // TypeDefIndex: 777 +{ + // Methods + public void .ctor(); // 0x100C5970 +} + +// Namespace: System.Runtime.InteropServices +public sealed class ComDefaultInterfaceAttribute : Attribute // TypeDefIndex: 778 +{ + // Fields + private Type _type; // 0x08 + + // Properties + public Type Value { get; } // 0x100BF0C0 + + // Methods + public void .ctor(Type defaultInterface); // 0x100E5940 +} + +// Namespace: System.Runtime.InteropServices +public sealed class ComEventInterfaceAttribute : Attribute // TypeDefIndex: 779 +{ + // Fields + private Type si; // 0x08 + private Type ep; // 0x0C + + // Properties + public Type EventProvider { get; } // 0x100C5B30 + public Type SourceInterface { get; } // 0x100BF0C0 + + // Methods + public void .ctor(Type SourceInterface, Type EventProvider); // 0x101237E0 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum ComInterfaceType // TypeDefIndex: 780 +{ + InterfaceIsDual = 0, + InterfaceIsIUnknown = 1, + InterfaceIsIDispatch = 2 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum ComMemberType // TypeDefIndex: 781 +{ + Method = 0, + PropGet = 1, + PropSet = 2 +} + +// Namespace: System.Runtime.InteropServices +public sealed class ComRegisterFunctionAttribute : Attribute // TypeDefIndex: 782 +{ + // Methods + public void .ctor(); // 0x100C5970 +} + +// Namespace: System.Runtime.InteropServices +public sealed class ComSourceInterfacesAttribute : Attribute // TypeDefIndex: 783 +{ + // Fields + private string internalValue; // 0x08 + + // Properties + public string Value { get; } // 0x100BF0C0 + + // Methods + public void .ctor(string sourceInterfaces); // 0x100E5940 + public void .ctor(Type sourceInterface); // 0x101AA7B0 + public void .ctor(Type sourceInterface1, Type sourceInterface2); // 0x10203080 + public void .ctor(Type sourceInterface1, Type sourceInterface2, Type sourceInterface3); // 0x10203230 + public void .ctor(Type sourceInterface1, Type sourceInterface2, Type sourceInterface3, Type sourceInterface4); // 0x10203130 +} + +// Namespace: System.Runtime.InteropServices +public sealed class ComUnregisterFunctionAttribute : Attribute // TypeDefIndex: 784 +{ + // Methods + public void .ctor(); // 0x100C5970 +} + +// Namespace: System.Runtime.InteropServices +public abstract class CriticalHandle : CriticalFinalizerObject, IDisposable // TypeDefIndex: 785 +{ + // Fields + protected IntPtr handle; // 0x08 + private bool _disposed; // 0x0C + + // Properties + public bool IsClosed { get; } // 0x100F8910 + public abstract bool IsInvalid { get; } + + // Methods + protected void .ctor(IntPtr invalidHandleValue); // 0x100E5940 + protected override void Finalize(); // 0x101A1D60 + public void Close(); // 0x101A1CD0 + public void Dispose(); // 0x101A1CD0 + protected virtual void Dispose(bool disposing); // 0x101A1CF0 + protected abstract bool ReleaseHandle(); + protected void SetHandle(IntPtr handle); // 0x100EB270 + public void SetHandleAsInvalid(); // 0x101A1E20 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public sealed class CurrencyWrapper // TypeDefIndex: 786 +{ + // Fields + private Decimal currency; // 0x08 + + // Properties + public Decimal WrappedObject { get; } // 0x10192480 + + // Methods + public void .ctor(Decimal obj); // 0x10192460 + public void .ctor(object obj); // 0x101A2DA0 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum DESCKIND // TypeDefIndex: 787 +{ + DESCKIND_NONE = 0, + DESCKIND_FUNCDESC = 1, + DESCKIND_VARDESC = 2, + DESCKIND_TYPECOMP = 3, + DESCKIND_IMPLICITAPPOBJ = 4, + DESCKIND_MAX = 5 +} + +// Namespace: System.Runtime.InteropServices +public struct DISPPARAMS // TypeDefIndex: 788 +{ + // Fields + public IntPtr rgvarg; // 0x08 + public IntPtr rgdispidNamedArgs; // 0x0C + public int cArgs; // 0x10 + public int cNamedArgs; // 0x14 + +} + +// Namespace: System.Runtime.InteropServices +public sealed class DispIdAttribute : Attribute // TypeDefIndex: 789 +{ + // Fields + private int id; // 0x08 + + // Properties + public int Value { get; } // 0x100BF0C0 + + // Methods + public void .ctor(int dispId); // 0x100E5940 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public sealed class DispatchWrapper // TypeDefIndex: 790 +{ + // Fields + private object wrappedObject; // 0x08 + + // Properties + public object WrappedObject { get; } // 0x100BF0C0 + + // Methods + public void .ctor(object obj); // 0x101A2E80 +} + +// Namespace: System.Runtime.InteropServices +public struct ELEMDESC // TypeDefIndex: 791 +{ + // Fields + public TYPEDESC tdesc; // 0x08 + public DESCUNION desc; // 0x10 + +} + +// Namespace: +public struct DESCUNION // TypeDefIndex: 792 +{ + // Fields + public IDLDESC idldesc; // 0x08 + public PARAMDESC paramdesc; // 0x08 + +} + +// Namespace: System.Runtime.InteropServices +public struct EXCEPINFO // TypeDefIndex: 793 +{ + // Fields + public short wCode; // 0x08 + public short wReserved; // 0x0A + public string bstrSource; // 0x0C + public string bstrDescription; // 0x10 + public string bstrHelpFile; // 0x14 + public int dwHelpContext; // 0x18 + public IntPtr pvReserved; // 0x1C + public IntPtr pfnDeferredFillIn; // 0x20 + +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public sealed class ErrorWrapper // TypeDefIndex: 794 +{ + // Fields + private int errorCode; // 0x08 + + // Properties + public int ErrorCode { get; } // 0x100BF0C0 + + // Methods + public void .ctor(Exception e); // 0x101A2F50 + public void .ctor(int errorCode); // 0x10113500 + public void .ctor(object errorCode); // 0x101A2FC0 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum ExporterEventKind // TypeDefIndex: 795 +{ + NOTIF_TYPECONVERTED = 0, + NOTIF_CONVERTWARNING = 1, + ERROR_REFTOINVALIDASSEMBLY = 2 +} + +// Namespace: System.Runtime.InteropServices +public sealed class ExtensibleClassFactory // TypeDefIndex: 796 +{ + // Fields + private static Hashtable hashtable; // 0x00 + + // Methods + private void .ctor(); // 0x100BF000 + private static void .cctor(); // 0x101A3350 + internal static ObjectCreationDelegate GetObjectCreationCallback(Type t); // 0x101A3170 + public static void RegisterObjectCreationCallback(ObjectCreationDelegate callback); // 0x101A31F0 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public class ExternalException : SystemException // TypeDefIndex: 797 +{ + // Properties + public virtual int ErrorCode { get; } // 0x100EB040 + + // Methods + public void .ctor(); // 0x101A33F0 + public void .ctor(string message); // 0x101A33A0 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 + public void .ctor(string message, Exception inner); // 0x101A33C0 + public void .ctor(string message, int errorCode); // 0x100FCF70 +} + +// Namespace: System.Runtime.InteropServices +public struct FILETIME // TypeDefIndex: 798 +{ + // Fields + public int dwLowDateTime; // 0x08 + public int dwHighDateTime; // 0x0C + +} + +// Namespace: System.Runtime.InteropServices +public struct FUNCDESC // TypeDefIndex: 799 +{ + // Fields + public int memid; // 0x08 + public IntPtr lprgscode; // 0x0C + public IntPtr lprgelemdescParam; // 0x10 + public FUNCKIND funckind; // 0x14 + public INVOKEKIND invkind; // 0x18 + public CALLCONV callconv; // 0x1C + public short cParams; // 0x20 + public short cParamsOpt; // 0x22 + public short oVft; // 0x24 + public short cScodes; // 0x26 + public ELEMDESC elemdescFunc; // 0x28 + public short wFuncFlags; // 0x38 + +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum FUNCFLAGS // TypeDefIndex: 800 +{ + FUNCFLAG_FRESTRICTED = 1, + FUNCFLAG_FSOURCE = 2, + FUNCFLAG_FBINDABLE = 4, + FUNCFLAG_FREQUESTEDIT = 8, + FUNCFLAG_FDISPLAYBIND = 16, + FUNCFLAG_FDEFAULTBIND = 32, + FUNCFLAG_FHIDDEN = 64, + FUNCFLAG_FUSESGETLASTERROR = 128, + FUNCFLAG_FDEFAULTCOLLELEM = 256, + FUNCFLAG_FUIDEFAULT = 512, + FUNCFLAG_FNONBROWSABLE = 1024, + FUNCFLAG_FREPLACEABLE = 2048, + FUNCFLAG_FIMMEDIATEBIND = 4096 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum FUNCKIND // TypeDefIndex: 801 +{ + FUNC_VIRTUAL = 0, + FUNC_PUREVIRTUAL = 1, + FUNC_NONVIRTUAL = 2, + FUNC_STATIC = 3, + FUNC_DISPATCH = 4 +} + +// Namespace: System.Runtime.InteropServices +public struct GCHandle // TypeDefIndex: 802 +{ + // Fields + private int handle; // 0x08 + + // Properties + public bool IsAllocated { get; } // 0x10009740 + public object Target { get; set; } // 0x10009750 0x100097D0 + + // Methods + private void .ctor(IntPtr h); // 0x10009720 + private void .ctor(object obj); // 0x100096D0 + private void .ctor(object value, GCHandleType type); // 0x100096F0 + public IntPtr AddrOfPinnedObject(); // 0x100095E0 + public static GCHandle Alloc(object value); // 0x101A3470 + public static GCHandle Alloc(object value, GCHandleType type); // 0x101A3440 + public void Free(); // 0x100096B0 + private static bool CheckCurrentDomain(int handle); // 0x101A3490 + private static object GetTarget(int handle); // 0x101A3610 + private static int GetTargetHandle(object obj, int handle, GCHandleType type); // 0x101A35F0 + private static void FreeHandle(int handle); // 0x101A3510 + private static IntPtr GetAddrOfPinnedObject(int handle); // 0x101A35E0 + public override bool Equals(object o); // 0x100096A0 + public override int GetHashCode(); // 0x10006260 + public static GCHandle FromIntPtr(IntPtr value); // 0x101A3540 + public static IntPtr ToIntPtr(GCHandle value); // 0x101A3620 + public static IntPtr op_Explicit(GCHandle value); // 0x101A3620 + public static GCHandle op_Explicit(IntPtr value); // 0x101A3540 + public static bool op_Equality(GCHandle a, GCHandle b); // 0x101A36A0 + public static bool op_Inequality(GCHandle a, GCHandle b); // 0x101A36F0 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum GCHandleType // TypeDefIndex: 803 +{ + Weak = 0, + WeakTrackResurrection = 1, + Normal = 2, + Pinned = 3 +} + +// Namespace: System.Runtime.InteropServices +public struct HandleRef // TypeDefIndex: 804 +{ + // Fields + private object wrapper; // 0x08 + private IntPtr handle; // 0x0C + + // Properties + public IntPtr Handle { get; } // 0x10003A90 + public object Wrapper { get; } // 0x10003A80 + + // Methods + public void .ctor(object wrapper, IntPtr handle); // 0x100075A0 + public static IntPtr ToIntPtr(HandleRef value); // 0x10102390 + public static IntPtr op_Explicit(HandleRef value); // 0x10102390 +} + +// Namespace: System.Runtime.InteropServices +public interface ICustomAdapter // TypeDefIndex: 805 +{ + // Methods + object GetUnderlyingObject(); +} + +// Namespace: System.Runtime.InteropServices +public interface ICustomFactory // TypeDefIndex: 806 +{ + // Methods + MarshalByRefObject CreateInstance(Type serverType); +} + +// Namespace: System.Runtime.InteropServices +public interface ICustomMarshaler // TypeDefIndex: 807 +{ + // Methods + void CleanUpManagedData(object ManagedObj); + void CleanUpNativeData(IntPtr pNativeData); + int GetNativeDataSize(); + IntPtr MarshalManagedToNative(object ManagedObj); + object MarshalNativeToManaged(IntPtr pNativeData); +} + +// Namespace: System.Runtime.InteropServices +public struct IDLDESC // TypeDefIndex: 808 +{ + // Fields + public int dwReserved; // 0x08 + public IDLFLAG wIDLFlags; // 0x0C + +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum IDLFLAG // TypeDefIndex: 809 +{ + IDLFLAG_NONE = 0, + IDLFLAG_FIN = 1, + IDLFLAG_FOUT = 2, + IDLFLAG_FLCID = 4, + IDLFLAG_FRETVAL = 8 +} + +// Namespace: System.Runtime.InteropServices +public sealed class IDispatchImplAttribute : Attribute // TypeDefIndex: 810 +{ + // Fields + private IDispatchImplType Impl; // 0x08 + + // Properties + public IDispatchImplType Value { get; } // 0x100BF0C0 + + // Methods + public void .ctor(IDispatchImplType implType); // 0x100E5940 + public void .ctor(short implType); // 0x101A3760 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum IDispatchImplType // TypeDefIndex: 811 +{ + SystemDefinedImpl = 0, + InternalImpl = 1, + CompatibleImpl = 2 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum IMPLTYPEFLAGS // TypeDefIndex: 812 +{ + IMPLTYPEFLAG_FDEFAULT = 1, + IMPLTYPEFLAG_FSOURCE = 2, + IMPLTYPEFLAG_FRESTRICTED = 4, + IMPLTYPEFLAG_FDEFAULTVTABLE = 8 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum INVOKEKIND // TypeDefIndex: 813 +{ + INVOKE_FUNC = 1, + INVOKE_PROPERTYGET = 2, + INVOKE_PROPERTYPUT = 4, + INVOKE_PROPERTYPUTREF = 8 +} + +// Namespace: System.Runtime.InteropServices +public interface IRegistrationServices // TypeDefIndex: 814 +{ + // Methods + Guid GetManagedCategoryGuid(); + string GetProgIdForType(Type type); + Type[] GetRegistrableTypesInAssembly(Assembly assembly); + bool RegisterAssembly(Assembly assembly, AssemblyRegistrationFlags flags); + void RegisterTypeForComClients(Type type, Guid g); + bool TypeRepresentsComType(Type type); + bool TypeRequiresRegistration(Type type); + bool UnregisterAssembly(Assembly assembly); +} + +// Namespace: System.Runtime.InteropServices +public interface ITypeLibConverter // TypeDefIndex: 815 +{ + // Methods + object ConvertAssemblyToTypeLib(Assembly assembly, string typeLibName, TypeLibExporterFlags flags, ITypeLibExporterNotifySink notifySink); + AssemblyBuilder ConvertTypeLibToAssembly(object typeLib, string asmFileName, int flags, ITypeLibImporterNotifySink notifySink, byte[] publicKey, StrongNameKeyPair keyPair, bool unsafeInterfaces); + AssemblyBuilder ConvertTypeLibToAssembly(object typeLib, string asmFileName, TypeLibImporterFlags flags, ITypeLibImporterNotifySink notifySink, byte[] publicKey, StrongNameKeyPair keyPair, string asmNamespace, Version asmVersion); + bool GetPrimaryInteropAssembly(Guid g, int major, int minor, int lcid, out string asmName, out string asmCodeBase); +} + +// Namespace: System.Runtime.InteropServices +public interface ITypeLibExporterNameProvider // TypeDefIndex: 816 +{ + // Methods + string[] GetNames(); +} + +// Namespace: System.Runtime.InteropServices +public interface ITypeLibExporterNotifySink // TypeDefIndex: 817 +{ + // Methods + void ReportEvent(ExporterEventKind eventKind, int eventCode, string eventMsg); + object ResolveRef(Assembly assembly); +} + +// Namespace: System.Runtime.InteropServices +public interface ITypeLibImporterNotifySink // TypeDefIndex: 818 +{ + // Methods + void ReportEvent(ImporterEventKind eventKind, int eventCode, string eventMsg); + Assembly ResolveRef(object typeLib); +} + +// Namespace: System.Runtime.InteropServices +public sealed class ImportedFromTypeLibAttribute : Attribute // TypeDefIndex: 819 +{ + // Fields + private string TlbFile; // 0x08 + + // Properties + public string Value { get; } // 0x100BF0C0 + + // Methods + public void .ctor(string tlbFile); // 0x100E5940 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum ImporterEventKind // TypeDefIndex: 820 +{ + NOTIF_TYPECONVERTED = 0, + NOTIF_CONVERTWARNING = 1, + ERROR_REFTOINVALIDTYPELIB = 2 +} + +// Namespace: System.Runtime.InteropServices +public sealed class InterfaceTypeAttribute : Attribute // TypeDefIndex: 821 +{ + // Fields + private ComInterfaceType intType; // 0x08 + + // Properties + public ComInterfaceType Value { get; } // 0x100BF0C0 + + // Methods + public void .ctor(ComInterfaceType interfaceType); // 0x100E5940 + public void .ctor(short interfaceType); // 0x101A3760 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public class InvalidComObjectException : SystemException // TypeDefIndex: 822 +{ + // Fields + private const int ErrorCode = -2146233049; // 0x00 + + // Methods + public void .ctor(); // 0x101A40C0 + public void .ctor(string message); // 0x101A4110 + public void .ctor(string message, Exception inner); // 0x101A4130 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public class InvalidOleVariantTypeException : SystemException // TypeDefIndex: 823 +{ + // Fields + private const int ErrorCode = -2146233039; // 0x00 + + // Methods + public void .ctor(); // 0x101A4180 + public void .ctor(string message); // 0x101A4160 + public void .ctor(string message, Exception inner); // 0x101A41D0 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 +} + +// Namespace: System.Runtime.InteropServices +public sealed class LCIDConversionAttribute : Attribute // TypeDefIndex: 824 +{ + // Fields + private int id; // 0x08 + + // Properties + public int Value { get; } // 0x100BF0C0 + + // Methods + public void .ctor(int lcid); // 0x100E5940 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum LIBFLAGS // TypeDefIndex: 825 +{ + LIBFLAG_FRESTRICTED = 1, + LIBFLAG_FCONTROL = 2, + LIBFLAG_FHIDDEN = 4, + LIBFLAG_FHASDISKIMAGE = 8 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum LayoutKind // TypeDefIndex: 826 +{ + Sequential = 0, + Explicit = 2, + Auto = 3 +} + +// Namespace: System.Runtime.InteropServices +public static class Marshal // TypeDefIndex: 827 +{ + // Fields + public static readonly int SystemMaxDBCSCharSize; // 0x00 + public static readonly int SystemDefaultCharSize; // 0x04 + + // Methods + private static void .cctor(); // 0x101A85A0 + private static int AddRefInternal(IntPtr pUnk); // 0x101A42A0 + public static int AddRef(IntPtr pUnk); // 0x101A42B0 + public static IntPtr AllocCoTaskMem(int cb); // 0x101A4350 + public static IntPtr AllocHGlobal(IntPtr cb); // 0x101A43C0 + public static IntPtr AllocHGlobal(int cb); // 0x101A4360 + public static object BindToMoniker(string monikerName); // 0x101A43D0 + public static void ChangeWrapperHandleStrength(object otp, bool fIsWeak); // 0x101A4420 + private static void copy_to_unmanaged(Array source, int startIndex, IntPtr destination, int length); // 0x101A8620 + private static void copy_from_unmanaged(IntPtr source, int startIndex, Array destination, int length); // 0x101A8600 + public static void Copy(byte[] source, int startIndex, IntPtr destination, int length); // 0x101A4B70 + public static void Copy(char[] source, int startIndex, IntPtr destination, int length); // 0x101A4BD0 + public static void Copy(short[] source, int startIndex, IntPtr destination, int length); // 0x101A4B10 + public static void Copy(int[] source, int startIndex, IntPtr destination, int length); // 0x101A4690 + public static void Copy(long[] source, int startIndex, IntPtr destination, int length); // 0x101A48D0 + public static void Copy(float[] source, int startIndex, IntPtr destination, int length); // 0x101A4930 + public static void Copy(double[] source, int startIndex, IntPtr destination, int length); // 0x101A4870 + public static void Copy(IntPtr[] source, int startIndex, IntPtr destination, int length); // 0x101A49F0 + public static void Copy(IntPtr source, byte[] destination, int startIndex, int length); // 0x101A4810 + public static void Copy(IntPtr source, char[] destination, int startIndex, int length); // 0x101A46F0 + public static void Copy(IntPtr source, short[] destination, int startIndex, int length); // 0x101A4990 + public static void Copy(IntPtr source, int[] destination, int startIndex, int length); // 0x101A4750 + public static void Copy(IntPtr source, long[] destination, int startIndex, int length); // 0x101A4AB0 + public static void Copy(IntPtr source, float[] destination, int startIndex, int length); // 0x101A4A50 + public static void Copy(IntPtr source, double[] destination, int startIndex, int length); // 0x101A4630 + public static void Copy(IntPtr source, IntPtr[] destination, int startIndex, int length); // 0x101A47B0 + public static IntPtr CreateAggregatedObject(IntPtr pOuter, object o); // 0x101A4C30 + public static object CreateWrapperOfType(object o, Type t); // 0x101A4C80 + public static void DestroyStructure(IntPtr ptr, Type structuretype); // 0x101A4E60 + public static void FreeBSTR(IntPtr ptr); // 0x101A4FA0 + public static void FreeCoTaskMem(IntPtr ptr); // 0x101A4FB0 + public static void FreeHGlobal(IntPtr hglobal); // 0x101A4FC0 + private static void ClearBSTR(IntPtr ptr); // 0x101A4500 + public static void ZeroFreeBSTR(IntPtr s); // 0x101A8340 + private static void ClearAnsi(IntPtr ptr); // 0x101A4470 + private static void ClearUnicode(IntPtr ptr); // 0x101A45A0 + public static void ZeroFreeCoTaskMemAnsi(IntPtr s); // 0x101A8420 + public static void ZeroFreeCoTaskMemUnicode(IntPtr s); // 0x101A8480 + public static void ZeroFreeGlobalAllocAnsi(IntPtr s); // 0x101A84E0 + public static void ZeroFreeGlobalAllocUnicode(IntPtr s); // 0x101A8540 + public static Guid GenerateGuidForType(Type type); // 0x101A4FD0 + public static string GenerateProgIdForType(Type type); // 0x101A5010 + public static object GetActiveObject(string progID); // 0x101A5060 + private static IntPtr GetCCW(object o, Type T); // 0x101A50B0 + private static IntPtr GetComInterfaceForObjectInternal(object o, Type T); // 0x101A5120 + public static IntPtr GetComInterfaceForObject(object o, Type T); // 0x101A5220 + public static IntPtr GetComInterfaceForObjectInContext(object o, Type t); // 0x101A50D0 + public static object GetComObjectData(object obj, object key); // 0x101A5380 + private static int GetComSlotForMethodInfoInternal(MemberInfo m); // 0x101A53D0 + public static int GetComSlotForMethodInfo(MemberInfo m); // 0x101A53E0 + public static int GetEndComSlot(Type t); // 0x101A5690 + public static int GetExceptionCode(); // 0x101A56E0 + public static IntPtr GetExceptionPointers(); // 0x101A5850 + public static IntPtr GetHINSTANCE(Module m); // 0x101A5930 + public static int GetHRForException(Exception e); // 0x101A59A0 + public static int GetHRForLastWin32Error(); // 0x101A59C0 + private static IntPtr GetIDispatchForObjectInternal(object o); // 0x101A5A60 + public static IntPtr GetIDispatchForObject(object o); // 0x101A5A70 + public static IntPtr GetIDispatchForObjectInContext(object o); // 0x101A5A10 + public static IntPtr GetITypeInfoForType(Type t); // 0x101A5AD0 + private static IntPtr GetIUnknownForObjectInternal(object o); // 0x101A5B70 + public static IntPtr GetIUnknownForObject(object o); // 0x101A5B80 + public static IntPtr GetIUnknownForObjectInContext(object o); // 0x101A5B20 + public static IntPtr GetManagedThunkForUnmanagedMethodPtr(IntPtr pfnMethodToWrap, IntPtr pbSignature, int cbSignature); // 0x101A5BF0 + public static MemberInfo GetMethodInfoForComSlot(Type t, int slot, ComMemberType memberType); // 0x101A5C40 + public static void GetNativeVariantForObject(object obj, IntPtr pDstNativeVariant); // 0x101A5C90 + private static object GetObjectForCCW(IntPtr pUnk); // 0x101A5D20 + public static object GetObjectForIUnknown(IntPtr pUnk); // 0x101A5D30 + public static object GetObjectForNativeVariant(IntPtr pSrcNativeVariant); // 0x101A5DE0 + public static object[] GetObjectsForNativeVariants(IntPtr aSrcNativeVariant, int cVars); // 0x101A5EB0 + public static int GetStartComSlot(Type t); // 0x101A5FF0 + public static Thread GetThreadFromFiberCookie(int cookie); // 0x101A6040 + public static object GetTypedObjectForIUnknown(IntPtr pUnk, Type t); // 0x101A6400 + public static Type GetTypeForITypeInfo(IntPtr piTypeInfo); // 0x101A6090 + public static string GetTypeInfoName(UCOMITypeInfo pTI); // 0x101A6130 + public static string GetTypeInfoName(ITypeInfo typeInfo); // 0x101A60E0 + public static Guid GetTypeLibGuid(UCOMITypeLib pTLB); // 0x101A61D0 + public static Guid GetTypeLibGuid(ITypeLib typelib); // 0x101A6220 + public static Guid GetTypeLibGuidForAssembly(Assembly asm); // 0x101A6180 + public static int GetTypeLibLcid(UCOMITypeLib pTLB); // 0x101A62C0 + public static int GetTypeLibLcid(ITypeLib typelib); // 0x101A6270 + public static string GetTypeLibName(UCOMITypeLib pTLB); // 0x101A6310 + public static string GetTypeLibName(ITypeLib typelib); // 0x101A6360 + public static void GetTypeLibVersionForAssembly(Assembly inputAssembly, out int majorVersion, out int minorVersion); // 0x101A63B0 + public static object GetUniqueObjectForIUnknown(IntPtr unknown); // 0x101A6550 + public static IntPtr GetUnmanagedThunkForManagedMethodPtr(IntPtr pfnMethodToWrap, IntPtr pbSignature, int cbSignature); // 0x101A65A0 + public static bool IsComObject(object o); // 0x101A65F0 + public static bool IsTypeVisibleFromCom(Type t); // 0x101A6600 + public static int NumParamBytes(MethodInfo m); // 0x101A6650 + public static int GetLastWin32Error(); // 0x101A5BE0 + public static IntPtr OffsetOf(Type t, string fieldName); // 0x101A66A0 + public static void Prelink(MethodInfo m); // 0x101A66D0 + public static void PrelinkAll(Type c); // 0x101A66C0 + public static string PtrToStringAnsi(IntPtr ptr); // 0x101A6700 + public static string PtrToStringAnsi(IntPtr ptr, int len); // 0x101A66E0 + public static string PtrToStringAuto(IntPtr ptr); // 0x101A67B0 + public static string PtrToStringAuto(IntPtr ptr, int len); // 0x101A6710 + public static string PtrToStringUni(IntPtr ptr); // 0x101A6860 + public static string PtrToStringUni(IntPtr ptr, int len); // 0x101A6870 + public static string PtrToStringBSTR(IntPtr ptr); // 0x101A6850 + public static void PtrToStructure(IntPtr ptr, object structure); // 0x101A68B0 + public static object PtrToStructure(IntPtr ptr, Type structureType); // 0x101A6890 + private static int QueryInterfaceInternal(IntPtr pUnk, Guid iid, out IntPtr ppv); // 0x101A68D0 + public static int QueryInterface(IntPtr pUnk, Guid iid, out IntPtr ppv); // 0x101A68F0 + public static byte ReadByte(IntPtr ptr); // 0x101A6A40 + public static byte ReadByte(IntPtr ptr, int ofs); // 0x101A6A20 + public static byte ReadByte(object ptr, int ofs); // 0x101A69D0 + public static short ReadInt16(IntPtr ptr); // 0x101A6B00 + public static short ReadInt16(IntPtr ptr, int ofs); // 0x101A6A90 + public static short ReadInt16(object ptr, int ofs); // 0x101A6AB0 + public static int ReadInt32(IntPtr ptr); // 0x101A6B70 + public static int ReadInt32(IntPtr ptr, int ofs); // 0x101A6B50 + public static int ReadInt32(object ptr, int ofs); // 0x101A6BC0 + public static long ReadInt64(IntPtr ptr); // 0x101A6C80 + public static long ReadInt64(IntPtr ptr, int ofs); // 0x101A6C60 + public static long ReadInt64(object ptr, int ofs); // 0x101A6C10 + public static IntPtr ReadIntPtr(IntPtr ptr); // 0x101A6CD0 + public static IntPtr ReadIntPtr(IntPtr ptr, int ofs); // 0x101A6B50 + public static IntPtr ReadIntPtr(object ptr, int ofs); // 0x101A6D20 + public static IntPtr ReAllocCoTaskMem(IntPtr pv, int cb); // 0x101A6990 + public static IntPtr ReAllocHGlobal(IntPtr pv, IntPtr cb); // 0x101A69B0 + private static int ReleaseInternal(IntPtr pUnk); // 0x101A6E50 + public static int Release(IntPtr pUnk); // 0x101A6EB0 + private static int ReleaseComObjectInternal(object co); // 0x101A6D70 + public static int ReleaseComObject(object o); // 0x101A6D80 + public static void ReleaseThreadCache(); // 0x101A6E60 + public static bool SetComObjectData(object obj, object key, object data); // 0x101A77F0 + public static int SizeOf(object structure); // 0x101A7850 + public static int SizeOf(Type t); // 0x101A7840 + public static IntPtr StringToBSTR(string s); // 0x101A78C0 + public static IntPtr StringToCoTaskMemAnsi(string s); // 0x101A78D0 + public static IntPtr StringToCoTaskMemAuto(string s); // 0x101A79D0 + public static IntPtr StringToCoTaskMemUni(string s); // 0x101A7C10 + public static IntPtr StringToHGlobalAnsi(string s); // 0x101A7CD0 + public static IntPtr StringToHGlobalAuto(string s); // 0x101A7CE0 + public static IntPtr StringToHGlobalUni(string s); // 0x101A7D80 + public static IntPtr SecureStringToBSTR(SecureString s); // 0x101A6F50 + public static IntPtr SecureStringToCoTaskMemAnsi(SecureString s); // 0x101A71E0 + public static IntPtr SecureStringToCoTaskMemUnicode(SecureString s); // 0x101A7470 + public static IntPtr SecureStringToGlobalAllocAnsi(SecureString s); // 0x101A76D0 + public static IntPtr SecureStringToGlobalAllocUnicode(SecureString s); // 0x101A7760 + public static void StructureToPtr(object structure, IntPtr ptr, bool fDeleteOld); // 0x101A7D90 + public static void ThrowExceptionForHR(int errorCode); // 0x101A7E20 + public static void ThrowExceptionForHR(int errorCode, IntPtr errorInfo); // 0x101A7DB0 + public static IntPtr UnsafeAddrOfPinnedArrayElement(Array arr, int index); // 0x101A7ED0 + public static void WriteByte(IntPtr ptr, byte val); // 0x101A7EF0 + public static void WriteByte(IntPtr ptr, int ofs, byte val); // 0x101A7F40 + public static void WriteByte(out object ptr, int ofs, byte val); // 0x101A7F60 + public static void WriteInt16(IntPtr ptr, short val); // 0x101A7FB0 + public static void WriteInt16(IntPtr ptr, int ofs, short val); // 0x101A8000 + public static void WriteInt16(out object ptr, int ofs, short val); // 0x101A80C0 + public static void WriteInt16(IntPtr ptr, char val); // 0x101A8070 + public static void WriteInt16(IntPtr ptr, int ofs, char val); // 0x101A8000 + public static void WriteInt16(out object ptr, int ofs, char val); // 0x101A8020 + public static void WriteInt32(IntPtr ptr, int val); // 0x101A8180 + public static void WriteInt32(IntPtr ptr, int ofs, int val); // 0x101A8160 + public static void WriteInt32(out object ptr, int ofs, int val); // 0x101A8110 + public static void WriteInt64(IntPtr ptr, long val); // 0x101A8220 + public static void WriteInt64(IntPtr ptr, int ofs, long val); // 0x101A8280 + public static void WriteInt64(out object ptr, int ofs, long val); // 0x101A81D0 + public static void WriteIntPtr(IntPtr ptr, IntPtr val); // 0x101A82A0 + public static void WriteIntPtr(IntPtr ptr, int ofs, IntPtr val); // 0x101A8160 + public static void WriteIntPtr(out object ptr, int ofs, IntPtr val); // 0x101A82F0 + public static Exception GetExceptionForHR(int errorCode); // 0x101A5730 + public static Exception GetExceptionForHR(int errorCode, IntPtr errorInfo); // 0x101A5780 + public static int FinalReleaseComObject(object o); // 0x101A4E80 + private static Delegate GetDelegateForFunctionPointerInternal(IntPtr ptr, Type t); // 0x101A5500 + public static Delegate GetDelegateForFunctionPointer(IntPtr ptr, Type t); // 0x101A5520 + private static IntPtr GetFunctionPointerForDelegateInternal(Delegate d); // 0x101A58A0 + public static IntPtr GetFunctionPointerForDelegate(Delegate d); // 0x101A58B0 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public class MarshalDirectiveException : SystemException // TypeDefIndex: 828 +{ + // Fields + private const int ErrorCode = -2146233035; // 0x00 + + // Methods + public void .ctor(); // 0x101A4230 + public void .ctor(string message); // 0x101A4280 + public void .ctor(string message, Exception inner); // 0x101A4200 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 +} + +// Namespace: System.Runtime.InteropServices +public struct PARAMDESC // TypeDefIndex: 829 +{ + // Fields + public IntPtr lpVarValue; // 0x08 + public PARAMFLAG wParamFlags; // 0x0C + +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum PARAMFLAG // TypeDefIndex: 830 +{ + PARAMFLAG_NONE = 0, + PARAMFLAG_FIN = 1, + PARAMFLAG_FOUT = 2, + PARAMFLAG_FLCID = 4, + PARAMFLAG_FRETVAL = 8, + PARAMFLAG_FOPT = 16, + PARAMFLAG_FHASDEFAULT = 32, + PARAMFLAG_FHASCUSTDATA = 64 +} + +// Namespace: System.Runtime.InteropServices +public sealed class PreserveSigAttribute : Attribute // TypeDefIndex: 831 +{ + // Methods + public void .ctor(); // 0x100C5970 +} + +// Namespace: System.Runtime.InteropServices +public sealed class PrimaryInteropAssemblyAttribute : Attribute // TypeDefIndex: 832 +{ + // Fields + private int major; // 0x08 + private int minor; // 0x0C + + // Properties + public int MajorVersion { get; } // 0x100BF0C0 + public int MinorVersion { get; } // 0x100C5B30 + + // Methods + public void .ctor(int major, int minor); // 0x101237E0 +} + +// Namespace: System.Runtime.InteropServices +public sealed class ProgIdAttribute : Attribute // TypeDefIndex: 833 +{ + // Fields + private string pid; // 0x08 + + // Properties + public string Value { get; } // 0x100BF0C0 + + // Methods + public void .ctor(string progId); // 0x100E5940 +} + +// Namespace: System.Runtime.InteropServices +public enum RegistrationClassContext // TypeDefIndex: 834 +{ + InProcessServer = 1, + InProcessHandler = 2, + LocalServer = 4, + InProcessServer16 = 8, + RemoteServer = 16, + InProcessHandler16 = 32, + Reserved1 = 64, + Reserved2 = 128, + Reserved3 = 256, + Reserved4 = 512, + NoCodeDownload = 1024, + Reserved5 = 2048, + NoCustomMarshal = 4096, + EnableCodeDownload = 8192, + NoFailureLog = 16384, + DisableActivateAsActivator = 32768, + EnableActivateAsActivator = 65536, + FromDefaultContext = 131072 +} + +// Namespace: System.Runtime.InteropServices +public enum RegistrationConnectionType // TypeDefIndex: 835 +{ + SingleUse = 0, + MultipleUse = 1, + MultiSeparate = 2, + Suspended = 4, + Surrogate = 8 +} + +// Namespace: System.Runtime.InteropServices +public class RegistrationServices : IRegistrationServices // TypeDefIndex: 836 +{ + // Methods + public void .ctor(); // 0x100BF000 + public virtual Guid GetManagedCategoryGuid(); // 0x101A89C0 + public virtual string GetProgIdForType(Type type); // 0x101A8A10 + public virtual Type[] GetRegistrableTypesInAssembly(Assembly assembly); // 0x101A8A60 + public virtual bool RegisterAssembly(Assembly assembly, AssemblyRegistrationFlags flags); // 0x101A8AB0 + public virtual void RegisterTypeForComClients(Type type, Guid g); // 0x101A8B50 + public virtual bool TypeRepresentsComType(Type type); // 0x101A8BA0 + public virtual bool TypeRequiresRegistration(Type type); // 0x101A8BF0 + public virtual bool UnregisterAssembly(Assembly assembly); // 0x101A8C40 + public virtual int RegisterTypeForComClients(Type type, RegistrationClassContext classContext, RegistrationConnectionType flags); // 0x101A8B00 + public virtual void UnregisterTypeForComClients(int cookie); // 0x101A8C90 +} + +// Namespace: System.Runtime.InteropServices +public class RuntimeEnvironment // TypeDefIndex: 837 +{ + // Properties + public static string SystemConfigurationFile { get; } // 0x101A9750 + + // Methods + public void .ctor(); // 0x100BF000 + public static bool FromGlobalAccessCache(Assembly a); // 0x101A93B0 + public static string GetRuntimeDirectory(); // 0x101A93E0 + public static string GetSystemVersion(); // 0x101A94A0 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public class SEHException : ExternalException // TypeDefIndex: 838 +{ + // Methods + public void .ctor(); // 0x101A33F0 + public void .ctor(string message); // 0x101A33A0 + public void .ctor(string message, Exception inner); // 0x101A33C0 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 + public virtual bool CanResume(); // 0x100EFBF0 +} + +// Namespace: System.Runtime.InteropServices +public struct STATSTG // TypeDefIndex: 839 +{ + // Fields + public string pwcsName; // 0x08 + public int type; // 0x0C + public long cbSize; // 0x10 + public FILETIME mtime; // 0x18 + public FILETIME ctime; // 0x20 + public FILETIME atime; // 0x28 + public int grfMode; // 0x30 + public int grfLocksSupported; // 0x34 + public Guid clsid; // 0x38 + public int grfStateBits; // 0x48 + public int reserved; // 0x4C + +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum SYSKIND // TypeDefIndex: 840 +{ + SYS_WIN16 = 0, + SYS_WIN32 = 1, + SYS_MAC = 2 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public class SafeArrayRankMismatchException : SystemException // TypeDefIndex: 841 +{ + // Fields + private const int ErrorCode = -2146233032; // 0x00 + + // Methods + public void .ctor(); // 0x101A9800 + public void .ctor(string message); // 0x101A97E0 + public void .ctor(string message, Exception inner); // 0x101A9850 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public class SafeArrayTypeMismatchException : SystemException // TypeDefIndex: 842 +{ + // Fields + private const int ErrorCode = -2146233037; // 0x00 + + // Methods + public void .ctor(); // 0x101A98B0 + public void .ctor(string message); // 0x101A9900 + public void .ctor(string message, Exception inner); // 0x101A9880 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 +} + +// Namespace: System.Runtime.InteropServices +public abstract class SafeHandle : CriticalFinalizerObject, IDisposable // TypeDefIndex: 843 +{ + // Fields + protected IntPtr handle; // 0x08 + private IntPtr invalid_handle_value; // 0x0C + private int refcount; // 0x10 + private bool owns_handle; // 0x14 + + // Properties + public bool IsClosed { get; } // 0x101A9EA0 + public abstract bool IsInvalid { get; } + + // Methods + protected void .ctor(); // 0x101A9E40 + protected void .ctor(IntPtr invalidHandleValue, bool ownsHandle); // 0x101A9E10 + public void Close(); // 0x101A9920 + public void DangerousAddRef(bool success); // 0x101A9A00 + public IntPtr DangerousGetHandle(); // 0x101A9AA0 + public void DangerousRelease(); // 0x101A9B20 + public void Dispose(); // 0x101A9CF0 + public void SetHandleAsInvalid(); // 0x101A9E00 + protected virtual void Dispose(bool disposing); // 0x101A9C00 + protected abstract bool ReleaseHandle(); + protected void SetHandle(IntPtr handle); // 0x100EB270 + protected override void Finalize(); // 0x101A9D20 +} + +// Namespace: System.Runtime.InteropServices +public sealed class SetWin32ContextInIDispatchAttribute : Attribute // TypeDefIndex: 844 +{ + // Methods + public void .ctor(); // 0x100C5970 +} + +// Namespace: System.Runtime.InteropServices +public struct TYPEATTR // TypeDefIndex: 845 +{ + // Fields + public const int MEMBER_ID_NIL = -1; // 0x00 + public Guid guid; // 0x08 + public int lcid; // 0x18 + public int dwReserved; // 0x1C + public int memidConstructor; // 0x20 + public int memidDestructor; // 0x24 + public IntPtr lpstrSchema; // 0x28 + public int cbSizeInstance; // 0x2C + public TYPEKIND typekind; // 0x30 + public short cFuncs; // 0x34 + public short cVars; // 0x36 + public short cImplTypes; // 0x38 + public short cbSizeVft; // 0x3A + public short cbAlignment; // 0x3C + public TYPEFLAGS wTypeFlags; // 0x40 + public short wMajorVerNum; // 0x44 + public short wMinorVerNum; // 0x46 + public TYPEDESC tdescAlias; // 0x48 + public IDLDESC idldescType; // 0x50 + +} + +// Namespace: System.Runtime.InteropServices +public struct TYPEDESC // TypeDefIndex: 846 +{ + // Fields + public IntPtr lpValue; // 0x08 + public short vt; // 0x0C + +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum TYPEFLAGS // TypeDefIndex: 847 +{ + TYPEFLAG_FAPPOBJECT = 1, + TYPEFLAG_FCANCREATE = 2, + TYPEFLAG_FLICENSED = 4, + TYPEFLAG_FPREDECLID = 8, + TYPEFLAG_FHIDDEN = 16, + TYPEFLAG_FCONTROL = 32, + TYPEFLAG_FDUAL = 64, + TYPEFLAG_FNONEXTENSIBLE = 128, + TYPEFLAG_FOLEAUTOMATION = 256, + TYPEFLAG_FRESTRICTED = 512, + TYPEFLAG_FAGGREGATABLE = 1024, + TYPEFLAG_FREPLACEABLE = 2048, + TYPEFLAG_FDISPATCHABLE = 4096, + TYPEFLAG_FREVERSEBIND = 8192, + TYPEFLAG_FPROXY = 16384 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum TYPEKIND // TypeDefIndex: 848 +{ + TKIND_ENUM = 0, + TKIND_RECORD = 1, + TKIND_MODULE = 2, + TKIND_INTERFACE = 3, + TKIND_DISPATCH = 4, + TKIND_COCLASS = 5, + TKIND_ALIAS = 6, + TKIND_UNION = 7, + TKIND_MAX = 8 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public struct TYPELIBATTR // TypeDefIndex: 849 +{ + // Fields + public Guid guid; // 0x08 + public int lcid; // 0x18 + public SYSKIND syskind; // 0x1C + public short wMajorVerNum; // 0x20 + public short wMinorVerNum; // 0x22 + public LIBFLAGS wLibFlags; // 0x24 + +} + +// Namespace: System.Runtime.InteropServices +public sealed class TypeLibConverter : ITypeLibConverter // TypeDefIndex: 850 +{ + // Methods + public void .ctor(); // 0x100BF000 + public object ConvertAssemblyToTypeLib(Assembly assembly, string strTypeLibName, TypeLibExporterFlags flags, ITypeLibExporterNotifySink notifySink); // 0x101AA670 + public AssemblyBuilder ConvertTypeLibToAssembly(object typeLib, string asmFileName, int flags, ITypeLibImporterNotifySink notifySink, byte[] publicKey, StrongNameKeyPair keyPair, bool unsafeInterfaces); // 0x101AA6C0 + public AssemblyBuilder ConvertTypeLibToAssembly(object typeLib, string asmFileName, TypeLibImporterFlags flags, ITypeLibImporterNotifySink notifySink, byte[] publicKey, StrongNameKeyPair keyPair, string asmNamespace, Version asmVersion); // 0x101AA710 + public bool GetPrimaryInteropAssembly(Guid g, int major, int minor, int lcid, out string asmName, out string asmCodeBase); // 0x101AA760 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum TypeLibExporterFlags // TypeDefIndex: 851 +{ + None = 0, + OnlyReferenceRegistered = 1, + CallerResolvedReferences = 2, + OldNames = 4, + ExportAs32Bit = 16, + ExportAs64Bit = 32 +} + +// Namespace: System.Runtime.InteropServices +public sealed class TypeLibFuncAttribute : Attribute // TypeDefIndex: 852 +{ + // Fields + private TypeLibFuncFlags flags; // 0x08 + + // Properties + public TypeLibFuncFlags Value { get; } // 0x100BF0C0 + + // Methods + public void .ctor(short flags); // 0x101A3760 + public void .ctor(TypeLibFuncFlags flags); // 0x100E5940 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum TypeLibFuncFlags // TypeDefIndex: 853 +{ + FRestricted = 1, + FSource = 2, + FBindable = 4, + FRequestEdit = 8, + FDisplayBind = 16, + FDefaultBind = 32, + FHidden = 64, + FUsesGetLastError = 128, + FDefaultCollelem = 256, + FUiDefault = 512, + FNonBrowsable = 1024, + FReplaceable = 2048, + FImmediateBind = 4096 +} + +// Namespace: System.Runtime.InteropServices +public sealed class TypeLibImportClassAttribute : Attribute // TypeDefIndex: 854 +{ + // Fields + private string _importClass; // 0x08 + + // Properties + public string Value { get; } // 0x100BF0C0 + + // Methods + public void .ctor(Type importClass); // 0x101AA7B0 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum TypeLibImporterFlags // TypeDefIndex: 855 +{ + None = 0, + PrimaryInteropAssembly = 1, + UnsafeInterfaces = 2, + SafeArrayAsSystemArray = 4, + TransformDispRetVals = 8, + PreventClassMembers = 16, + SerializableValueClasses = 32, + ImportAsX86 = 256, + ImportAsX64 = 512, + ImportAsItanium = 1024, + ImportAsAgnostic = 2048, + ReflectionOnlyLoading = 4096 +} + +// Namespace: System.Runtime.InteropServices +public sealed class TypeLibTypeAttribute : Attribute // TypeDefIndex: 856 +{ + // Fields + private TypeLibTypeFlags flags; // 0x08 + + // Properties + public TypeLibTypeFlags Value { get; } // 0x100BF0C0 + + // Methods + public void .ctor(short flags); // 0x101A3760 + public void .ctor(TypeLibTypeFlags flags); // 0x100E5940 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum TypeLibTypeFlags // TypeDefIndex: 857 +{ + FAppObject = 1, + FCanCreate = 2, + FLicensed = 4, + FPreDeclId = 8, + FHidden = 16, + FControl = 32, + FDual = 64, + FNonExtensible = 128, + FOleAutomation = 256, + FRestricted = 512, + FAggregatable = 1024, + FReplaceable = 2048, + FDispatchable = 4096, + FReverseBind = 8192 +} + +// Namespace: System.Runtime.InteropServices +public sealed class TypeLibVarAttribute : Attribute // TypeDefIndex: 858 +{ + // Fields + private TypeLibVarFlags flags; // 0x08 + + // Properties + public TypeLibVarFlags Value { get; } // 0x100BF0C0 + + // Methods + public void .ctor(short flags); // 0x101A3760 + public void .ctor(TypeLibVarFlags flags); // 0x100E5940 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum TypeLibVarFlags // TypeDefIndex: 859 +{ + FReadOnly = 1, + FSource = 2, + FBindable = 4, + FRequestEdit = 8, + FDisplayBind = 16, + FDefaultBind = 32, + FHidden = 64, + FRestricted = 128, + FDefaultCollelem = 256, + FUiDefault = 512, + FNonBrowsable = 1024, + FReplaceable = 2048, + FImmediateBind = 4096 +} + +// Namespace: System.Runtime.InteropServices +public sealed class TypeLibVersionAttribute : Attribute // TypeDefIndex: 860 +{ + // Fields + private int major; // 0x08 + private int minor; // 0x0C + + // Properties + public int MajorVersion { get; } // 0x100BF0C0 + public int MinorVersion { get; } // 0x100C5B30 + + // Methods + public void .ctor(int major, int minor); // 0x101237E0 +} + +// Namespace: System.Runtime.InteropServices +[ComImport]public interface UCOMIBindCtx // TypeDefIndex: 861 +{ + // Methods + void RegisterObjectBound(object punk); // 0x101AAA30 + void RevokeObjectBound(object punk); // 0x101AAB70 + void ReleaseBoundObjects(); // 0x101AAB40 + void SetBindOptions(BIND_OPTS pbindopts); // 0x101AAC30 + void GetBindOptions(BIND_OPTS pbindopts); // 0x101AA8A0 + void GetRunningObjectTable(out UCOMIRunningObjectTable pprot); // 0x101AA980 + void RegisterObjectParam(string pszKey, object punk); // 0x101AAAB0 + void GetObjectParam(string pszKey, out object ppunk); // 0x101AA8D0 + void EnumObjectParam(out UCOMIEnumString ppenum); // 0x101AA7F0 + void RevokeObjectParam(string pszKey); // 0x101AABF0 +} + +// Namespace: System.Runtime.InteropServices +[ComImport]public interface UCOMIConnectionPoint // TypeDefIndex: 862 +{ + // Methods + void GetConnectionInterface(out Guid pIID); // 0x101AAEF0 + void GetConnectionPointContainer(out UCOMIConnectionPointContainer ppCPC); // 0x101AAF20 + void Advise(object pUnkSink, out int pdwCookie); // 0x101AADC0 + void Unadvise(int dwCookie); // 0x101AAFD0 + void EnumConnections(out UCOMIEnumConnections ppEnum); // 0x101AAE40 +} + +// Namespace: System.Runtime.InteropServices +[ComImport]public interface UCOMIConnectionPointContainer // TypeDefIndex: 863 +{ + // Methods + void EnumConnectionPoints(out UCOMIEnumConnectionPoints ppEnum); // 0x101AAC60 + void FindConnectionPoint(Guid riid, out UCOMIConnectionPoint ppCP); // 0x101AAD10 +} + +// Namespace: System.Runtime.InteropServices +[ComImport]public interface UCOMIEnumConnectionPoints // TypeDefIndex: 864 +{ + // Methods + int Next(int celt, out UCOMIConnectionPoint[] rgelt, out int pceltFetched); // 0x101AB0B0 + int Skip(int celt); // 0x101AB110 + int Reset(); // 0x101AB0D0 + void Clone(out UCOMIEnumConnectionPoints ppenum); // 0x101AB000 +} + +// Namespace: System.Runtime.InteropServices +[ComImport]public interface UCOMIEnumConnections // TypeDefIndex: 865 +{ + // Methods + int Next(int celt, out CONNECTDATA[] rgelt, out int pceltFetched); // 0x101AB200 + int Skip(int celt); // 0x101AB310 + void Reset(); // 0x101AB2E0 + void Clone(out UCOMIEnumConnections ppenum); // 0x101AB150 +} + +// Namespace: System.Runtime.InteropServices +[ComImport]public interface UCOMIEnumMoniker // TypeDefIndex: 866 +{ + // Methods + int Next(int celt, out UCOMIMoniker[] rgelt, out int pceltFetched); // 0x101AB400 + int Skip(int celt); // 0x101AB460 + int Reset(); // 0x101AB420 + void Clone(out UCOMIEnumMoniker ppenum); // 0x101AB350 +} + +// Namespace: System.Runtime.InteropServices +[ComImport]public interface UCOMIEnumString // TypeDefIndex: 867 +{ + // Methods + int Next(int celt, out string[] rgelt, out int pceltFetched); // 0x101AB550 + int Skip(int celt); // 0x101AB670 + int Reset(); // 0x101AB630 + void Clone(out UCOMIEnumString ppenum); // 0x101AB4A0 +} + +// Namespace: System.Runtime.InteropServices +[ComImport]public interface UCOMIEnumVARIANT // TypeDefIndex: 868 +{ + // Methods + int Next(int celt, int rgvar, int pceltFetched); // 0x101AB6E0 + int Skip(int celt); // 0x101AB770 + int Reset(); // 0x101AB730 + void Clone(int ppenum); // 0x101AB6B0 +} + +// Namespace: System.Runtime.InteropServices +[ComImport]public interface UCOMIMoniker // TypeDefIndex: 869 +{ + // Methods + void GetClassID(out Guid pClassID); // 0x101ABCC0 + int IsDirty(); // 0x101ABFA0 + void Load(UCOMIStream pStm); // 0x101AC1A0 + void Save(UCOMIStream pStm, bool fClearDirty); // 0x101AC5E0 + void GetSizeMax(out long pcbSize); // 0x101ABDD0 + void BindToObject(UCOMIBindCtx pbc, UCOMIMoniker pmkToLeft, Guid riidResult, out object ppvResult); // 0x101AB7B0 + void BindToStorage(UCOMIBindCtx pbc, UCOMIMoniker pmkToLeft, Guid riid, out object ppvObj); // 0x101AB8F0 + void Reduce(UCOMIBindCtx pbc, int dwReduceHowFar, UCOMIMoniker ppmkToLeft, out UCOMIMoniker ppmkReduced); // 0x101AC360 + void ComposeWith(UCOMIMoniker pmkRight, bool fOnlyIfNotGeneric, out UCOMIMoniker ppmkComposite); // 0x101ABB20 + void Enum(bool fForward, out UCOMIEnumMoniker ppenumMoniker); // 0x101ABC10 + void IsEqual(UCOMIMoniker pmkOtherMoniker); // 0x101ABFE0 + void Hash(out int pdwHash); // 0x101ABEC0 + void IsRunning(UCOMIBindCtx pbc, UCOMIMoniker pmkToLeft, UCOMIMoniker pmkNewlyRunning); // 0x101AC060 + void GetTimeOfLastChange(UCOMIBindCtx pbc, UCOMIMoniker pmkToLeft, out FILETIME pFileTime); // 0x101ABE00 + void Inverse(out UCOMIMoniker ppmk); // 0x101ABEF0 + void CommonPrefixWith(UCOMIMoniker pmkOther, out UCOMIMoniker ppmkPrefix); // 0x101ABA30 + void RelativePathTo(UCOMIMoniker pmkOther, out UCOMIMoniker ppmkRelPath); // 0x101AC4F0 + void GetDisplayName(UCOMIBindCtx pbc, UCOMIMoniker pmkToLeft, out string ppszDisplayName); // 0x101ABCF0 + void ParseDisplayName(UCOMIBindCtx pbc, UCOMIMoniker pmkToLeft, string pszDisplayName, out int pchEaten, out UCOMIMoniker ppmkOut); // 0x101AC220 + void IsSystemMoniker(out int pdwMksys); // 0x101AC170 +} + +// Namespace: System.Runtime.InteropServices +[ComImport]public interface UCOMIPersistFile // TypeDefIndex: 870 +{ + // Methods + void GetClassID(out Guid pClassID); // 0x101AC660 + int IsDirty(); // 0x101AC6E0 + void Load(string pszFileName, int dwMode); // 0x101AC720 + void Save(string pszFileName, bool fRemember); // 0x101AC7A0 + void SaveCompleted(string pszFileName); // 0x101AC760 + void GetCurFile(out string ppszFileName); // 0x101AC690 +} + +// Namespace: System.Runtime.InteropServices +[ComImport]public interface UCOMIRunningObjectTable // TypeDefIndex: 871 +{ + // Methods + void Register(int grfFlags, object punkObject, UCOMIMoniker pmkObjectName, out int pdwRegister); // 0x101ACAB0 + void Revoke(int dwRegister); // 0x101ACB70 + void IsRunning(UCOMIMoniker pmkObjectName); // 0x101ACA00 + void GetObject(UCOMIMoniker pmkObjectName, out object ppunkObject); // 0x101AC890 + void NoteChangeTime(int dwRegister, FILETIME pfiletime); // 0x101ACA80 + void GetTimeOfLastChange(UCOMIMoniker pmkObjectName, out FILETIME pfiletime); // 0x101AC980 + void EnumRunning(out UCOMIEnumMoniker ppenumMoniker); // 0x101AC7E0 +} + +// Namespace: System.Runtime.InteropServices +[ComImport]public interface UCOMIStream // TypeDefIndex: 872 +{ + // Methods + void Read(out byte[] pv, int cb, IntPtr pcbRead); // 0x101ACD40 + void Write(byte[] pv, int cb, IntPtr pcbWritten); // 0x101ACFB0 + void Seek(long dlibMove, int dwOrigin, IntPtr plibNewPosition); // 0x101ACE00 + void SetSize(long libNewSize); // 0x101ACE40 + void CopyTo(UCOMIStream pstm, long cb, IntPtr pcbRead, IntPtr pcbWritten); // 0x101ACC80 + void Commit(int grfCommitFlags); // 0x101ACC50 + void Revert(); // 0x101ACDD0 + void LockRegion(long libOffset, long cb, int dwLockType); // 0x101ACD00 + void UnlockRegion(long libOffset, long cb, int dwLockType); // 0x101ACF70 + void Stat(out STATSTG pstatstg, int grfStatFlag); // 0x101ACE70 + void Clone(out UCOMIStream ppstm); // 0x101ACBA0 +} + +// Namespace: System.Runtime.InteropServices +[ComImport]public interface UCOMITypeComp // TypeDefIndex: 873 +{ + // Methods + void Bind(string szName, int lHashVal, short wFlags, out UCOMITypeInfo ppTInfo, out DESCKIND pDescKind, out BINDPTR pBindPtr); // 0x101AD110 + void BindType(string szName, int lHashVal, out UCOMITypeInfo ppTInfo, out UCOMITypeComp ppTComp); // 0x101ACFF0 +} + +// Namespace: System.Runtime.InteropServices +[ComImport]public interface UCOMITypeInfo // TypeDefIndex: 874 +{ + // Methods + void GetTypeAttr(out IntPtr ppTypeAttr); // 0x101AD890 + void GetTypeComp(out UCOMITypeComp ppTComp); // 0x101AD8C0 + void GetFuncDesc(int index, out IntPtr ppFuncDesc); // 0x101AD4F0 + void GetVarDesc(int index, out IntPtr ppVarDesc); // 0x101AD970 + void GetNames(int memid, out string[] rgBstrNames, int cMaxNames, out int pcNames); // 0x101AD6E0 + void GetRefTypeOfImplType(int index, out int href); // 0x101AD860 + void GetImplTypeFlags(int index, out int pImplTypeFlags); // 0x101AD650 + void GetIDsOfNames(string[] rgszNames, int cNames, out int[] pMemId); // 0x101AD520 + void Invoke(object pvInstance, int memid, short wFlags, DISPPARAMS pDispParams, out object pVarResult, out EXCEPINFO pExcepInfo, out int puArgErr); // 0x101AD9A0 + void GetDocumentation(int index, out string strName, out string strDocString, out int dwHelpContext, out string strHelpFile); // 0x101AD440 + void GetDllEntry(int memid, INVOKEKIND invKind, out string pBstrDllName, out string pBstrName, out short pwOrdinal); // 0x101AD3B0 + void GetRefTypeInfo(int hRef, out UCOMITypeInfo ppTI); // 0x101AD7B0 + void AddressOfMember(int memid, INVOKEKIND invKind, out IntPtr ppv); // 0x101AD1D0 + void CreateInstance(object pUnkOuter, Guid riid, out object ppvObj); // 0x101AD210 + void GetMops(int memid, out string pBstrMops); // 0x101AD680 + void GetContainingTypeLib(out UCOMITypeLib ppTLB, out int pIndex); // 0x101AD300 + void ReleaseTypeAttr(IntPtr pTypeAttr); // 0x101ADB10 + void ReleaseFuncDesc(IntPtr pFuncDesc); // 0x101ADAE0 + void ReleaseVarDesc(IntPtr pVarDesc); // 0x101ADB40 +} + +// Namespace: System.Runtime.InteropServices +[ComImport]public interface UCOMITypeLib // TypeDefIndex: 875 +{ + // Methods + int GetTypeInfoCount(); // 0x101ADD20 + void GetTypeInfo(int index, out UCOMITypeInfo ppTI); // 0x101ADE40 + void GetTypeInfoType(int index, out TYPEKIND pTKind); // 0x101ADE10 + void GetTypeInfoOfGuid(Guid guid, out UCOMITypeInfo ppTInfo); // 0x101ADD60 + void GetLibAttr(out IntPtr ppTLibAttr); // 0x101ADC40 + void GetTypeComp(out UCOMITypeComp ppTComp); // 0x101ADC70 + void GetDocumentation(int index, out string strName, out string strDocString, out int dwHelpContext, out string strHelpFile); // 0x101ADB90 + bool IsName(string szNameBuf, int lHashVal); // 0x101ADEF0 + void FindName(string szNameBuf, int lHashVal, out UCOMITypeInfo[] ppTInfo, out int[] rgMemId, short pcFound); // 0x101ADB70 + void ReleaseTLibAttr(IntPtr pTLibAttr); // 0x101ADF50 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public sealed class UnknownWrapper // TypeDefIndex: 876 +{ + // Fields + private object InternalObject; // 0x08 + + // Properties + public object WrappedObject { get; } // 0x100BF0C0 + + // Methods + public void .ctor(object obj); // 0x10113500 +} + +// Namespace: System.Runtime.InteropServices +public sealed class UnmanagedFunctionPointerAttribute : Attribute // TypeDefIndex: 877 +{ + // Fields + private CallingConvention call_conv; // 0x08 + public CharSet CharSet; // 0x0C + public bool SetLastError; // 0x10 + public bool BestFitMapping; // 0x11 + public bool ThrowOnUnmappableChar; // 0x12 + + // Properties + public CallingConvention CallingConvention { get; } // 0x100BF0C0 + + // Methods + public void .ctor(CallingConvention callingConvention); // 0x100E5940 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum UnmanagedType // TypeDefIndex: 878 +{ + Bool = 2, + I1 = 3, + U1 = 4, + I2 = 5, + U2 = 6, + I4 = 7, + U4 = 8, + I8 = 9, + U8 = 10, + R4 = 11, + R8 = 12, + Currency = 15, + BStr = 19, + LPStr = 20, + LPWStr = 21, + LPTStr = 22, + ByValTStr = 23, + IUnknown = 25, + IDispatch = 26, + Struct = 27, + Interface = 28, + SafeArray = 29, + ByValArray = 30, + SysInt = 31, + SysUInt = 32, + VBByRefStr = 34, + AnsiBStr = 35, + TBStr = 36, + VariantBool = 37, + FunctionPtr = 38, + AsAny = 40, + LPArray = 42, + LPStruct = 43, + CustomMarshaler = 44, + Error = 45 +} + +// Namespace: System.Runtime.InteropServices +public struct VARDESC // TypeDefIndex: 879 +{ + // Fields + public int memid; // 0x08 + public string lpstrSchema; // 0x0C + public ELEMDESC elemdescVar; // 0x10 + public short wVarFlags; // 0x20 + public VarEnum varkind; // 0x24 + +} + +// Namespace: +public struct DESCUNION // TypeDefIndex: 880 +{ + // Fields + public IntPtr lpvarValue; // 0x08 + public int oInst; // 0x08 + +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum VARFLAGS // TypeDefIndex: 881 +{ + VARFLAG_FREADONLY = 1, + VARFLAG_FSOURCE = 2, + VARFLAG_FBINDABLE = 4, + VARFLAG_FREQUESTEDIT = 8, + VARFLAG_FDISPLAYBIND = 16, + VARFLAG_FDEFAULTBIND = 32, + VARFLAG_FHIDDEN = 64, + VARFLAG_FRESTRICTED = 128, + VARFLAG_FDEFAULTCOLLELEM = 256, + VARFLAG_FUIDEFAULT = 512, + VARFLAG_FNONBROWSABLE = 1024, + VARFLAG_FREPLACEABLE = 2048, + VARFLAG_FIMMEDIATEBIND = 4096 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum VarEnum // TypeDefIndex: 882 +{ + VT_EMPTY = 0, + VT_NULL = 1, + VT_I2 = 2, + VT_I4 = 3, + VT_R4 = 4, + VT_R8 = 5, + VT_CY = 6, + VT_DATE = 7, + VT_BSTR = 8, + VT_DISPATCH = 9, + VT_ERROR = 10, + VT_BOOL = 11, + VT_VARIANT = 12, + VT_UNKNOWN = 13, + VT_DECIMAL = 14, + VT_I1 = 16, + VT_UI1 = 17, + VT_UI2 = 18, + VT_UI4 = 19, + VT_I8 = 20, + VT_UI8 = 21, + VT_INT = 22, + VT_UINT = 23, + VT_VOID = 24, + VT_HRESULT = 25, + VT_PTR = 26, + VT_SAFEARRAY = 27, + VT_CARRAY = 28, + VT_USERDEFINED = 29, + VT_LPSTR = 30, + VT_LPWSTR = 31, + VT_RECORD = 36, + VT_FILETIME = 64, + VT_BLOB = 65, + VT_STREAM = 66, + VT_STORAGE = 67, + VT_STREAMED_OBJECT = 68, + VT_STORED_OBJECT = 69, + VT_BLOB_OBJECT = 70, + VT_CF = 71, + VT_CLSID = 72, + VT_VECTOR = 4096, + VT_ARRAY = 8192, + VT_BYREF = 16384 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public sealed class VariantWrapper // TypeDefIndex: 883 +{ + // Fields + private object _wrappedObject; // 0x08 + + // Properties + public object WrappedObject { get; } // 0x100BF0C0 + + // Methods + public void .ctor(object obj); // 0x10113500 +} + +// Namespace: System.Runtime.InteropServices +public interface _Activator // TypeDefIndex: 884 +{ + // Methods + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); +} + +// Namespace: System.Runtime.InteropServices +public interface _Assembly // TypeDefIndex: 885 +{ + // Properties + string CodeBase { get; } + string EscapedCodeBase { get; } + string FullName { get; } + MethodInfo EntryPoint { get; } + string Location { get; } + + // Events + event ModuleResolveEventHandler ModuleResolve { + add; // 0x00000000 + remove; // 0x00000000 + } + + // Methods + string ToString(); + bool Equals(object other); + int GetHashCode(); + Type GetType(); + AssemblyName GetName(); + AssemblyName GetName(bool copiedName); + Type GetType(string name); + Type GetType(string name, bool throwOnError); + Type[] GetExportedTypes(); + Type[] GetTypes(); + Stream GetManifestResourceStream(Type type, string name); + Stream GetManifestResourceStream(string name); + FileStream GetFile(string name); + FileStream[] GetFiles(); + FileStream[] GetFiles(bool getResourceModules); + string[] GetManifestResourceNames(); + ManifestResourceInfo GetManifestResourceInfo(string resourceName); + object[] GetCustomAttributes(Type attributeType, bool inherit); + object[] GetCustomAttributes(bool inherit); + bool IsDefined(Type attributeType, bool inherit); + void GetObjectData(SerializationInfo info, StreamingContext context); + Type GetType(string name, bool throwOnError, bool ignoreCase); + Assembly GetSatelliteAssembly(CultureInfo culture); + Assembly GetSatelliteAssembly(CultureInfo culture, Version version); + Module LoadModule(string moduleName, byte[] rawModule); + Module LoadModule(string moduleName, byte[] rawModule, byte[] rawSymbolStore); + object CreateInstance(string typeName); + object CreateInstance(string typeName, bool ignoreCase); + object CreateInstance(string typeName, bool ignoreCase, BindingFlags bindingAttr, Binder binder, object[] args, CultureInfo culture, object[] activationAttributes); + Module[] GetLoadedModules(); + Module[] GetLoadedModules(bool getResourceModules); + Module[] GetModules(); + Module[] GetModules(bool getResourceModules); + Module GetModule(string name); + AssemblyName[] GetReferencedAssemblies(); +} + +// Namespace: System.Runtime.InteropServices +public interface _AssemblyBuilder // TypeDefIndex: 886 +{ + // Methods + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); +} + +// Namespace: System.Runtime.InteropServices +public interface _AssemblyName // TypeDefIndex: 887 +{ + // Methods + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); +} + +// Namespace: System.Runtime.InteropServices +public interface _ConstructorBuilder // TypeDefIndex: 888 +{ + // Methods + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); +} + +// Namespace: System.Runtime.InteropServices +public interface _ConstructorInfo // TypeDefIndex: 889 +{ + // Properties + MethodAttributes Attributes { get; } + CallingConventions CallingConvention { get; } + Type DeclaringType { get; } + bool IsAbstract { get; } + bool IsAssembly { get; } + bool IsConstructor { get; } + bool IsFamily { get; } + bool IsFamilyAndAssembly { get; } + bool IsFamilyOrAssembly { get; } + bool IsFinal { get; } + bool IsHideBySig { get; } + bool IsPrivate { get; } + bool IsPublic { get; } + bool IsSpecialName { get; } + bool IsStatic { get; } + bool IsVirtual { get; } + MemberTypes MemberType { get; } + RuntimeMethodHandle MethodHandle { get; } + string Name { get; } + Type ReflectedType { get; } + + // Methods + bool Equals(object other); + object[] GetCustomAttributes(bool inherit); + object[] GetCustomAttributes(Type attributeType, bool inherit); + int GetHashCode(); + MethodImplAttributes GetMethodImplementationFlags(); + ParameterInfo[] GetParameters(); + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); + Type GetType(); + object Invoke_5(object[] parameters); + object Invoke_3(object obj, object[] parameters); + object Invoke_4(BindingFlags invokeAttr, Binder binder, object[] parameters, CultureInfo culture); + object Invoke_2(object obj, BindingFlags invokeAttr, Binder binder, object[] parameters, CultureInfo culture); + bool IsDefined(Type attributeType, bool inherit); + string ToString(); +} + +// Namespace: System.Runtime.InteropServices +public interface _CustomAttributeBuilder // TypeDefIndex: 890 +{ + // Methods + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); +} + +// Namespace: System.Runtime.InteropServices +public interface _EnumBuilder // TypeDefIndex: 891 +{ + // Methods + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); +} + +// Namespace: System.Runtime.InteropServices +public interface _EventBuilder // TypeDefIndex: 892 +{ + // Methods + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); +} + +// Namespace: System.Runtime.InteropServices +public interface _EventInfo // TypeDefIndex: 893 +{ + // Properties + EventAttributes Attributes { get; } + Type DeclaringType { get; } + Type EventHandlerType { get; } + bool IsMulticast { get; } + bool IsSpecialName { get; } + MemberTypes MemberType { get; } + string Name { get; } + Type ReflectedType { get; } + + // Methods + void AddEventHandler(object target, Delegate handler); + bool Equals(object other); + MethodInfo GetAddMethod(); + MethodInfo GetAddMethod(bool nonPublic); + object[] GetCustomAttributes(bool inherit); + object[] GetCustomAttributes(Type attributeType, bool inherit); + int GetHashCode(); + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); + MethodInfo GetRaiseMethod(); + MethodInfo GetRaiseMethod(bool nonPublic); + MethodInfo GetRemoveMethod(); + MethodInfo GetRemoveMethod(bool nonPublic); + Type GetType(); + bool IsDefined(Type attributeType, bool inherit); + void RemoveEventHandler(object target, Delegate handler); + string ToString(); +} + +// Namespace: System.Runtime.InteropServices +public interface _FieldBuilder // TypeDefIndex: 894 +{ + // Methods + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); +} + +// Namespace: System.Runtime.InteropServices +public interface _FieldInfo // TypeDefIndex: 895 +{ + // Properties + FieldAttributes Attributes { get; } + Type DeclaringType { get; } + RuntimeFieldHandle FieldHandle { get; } + Type FieldType { get; } + bool IsAssembly { get; } + bool IsFamily { get; } + bool IsFamilyAndAssembly { get; } + bool IsFamilyOrAssembly { get; } + bool IsInitOnly { get; } + bool IsLiteral { get; } + bool IsNotSerialized { get; } + bool IsPinvokeImpl { get; } + bool IsPrivate { get; } + bool IsPublic { get; } + bool IsSpecialName { get; } + bool IsStatic { get; } + MemberTypes MemberType { get; } + string Name { get; } + Type ReflectedType { get; } + + // Methods + bool Equals(object other); + object[] GetCustomAttributes(bool inherit); + object[] GetCustomAttributes(Type attributeType, bool inherit); + int GetHashCode(); + Type GetType(); + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); + object GetValue(object obj); + object GetValueDirect(TypedReference obj); + bool IsDefined(Type attributeType, bool inherit); + void SetValue(object obj, object value); + void SetValue(object obj, object value, BindingFlags invokeAttr, Binder binder, CultureInfo culture); + void SetValueDirect(TypedReference obj, object value); + string ToString(); +} + +// Namespace: System.Runtime.InteropServices +public interface _ILGenerator // TypeDefIndex: 896 +{ + // Methods + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); +} + +// Namespace: System.Runtime.InteropServices +public interface _LocalBuilder // TypeDefIndex: 897 +{ + // Methods + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); +} + +// Namespace: System.Runtime.InteropServices +public interface _MethodBase // TypeDefIndex: 898 +{ + // Properties + MethodAttributes Attributes { get; } + CallingConventions CallingConvention { get; } + Type DeclaringType { get; } + bool IsAbstract { get; } + bool IsAssembly { get; } + bool IsConstructor { get; } + bool IsFamily { get; } + bool IsFamilyAndAssembly { get; } + bool IsFamilyOrAssembly { get; } + bool IsFinal { get; } + bool IsHideBySig { get; } + bool IsPrivate { get; } + bool IsPublic { get; } + bool IsSpecialName { get; } + bool IsStatic { get; } + bool IsVirtual { get; } + MemberTypes MemberType { get; } + RuntimeMethodHandle MethodHandle { get; } + string Name { get; } + Type ReflectedType { get; } + + // Methods + bool Equals(object other); + object[] GetCustomAttributes(bool inherit); + object[] GetCustomAttributes(Type attributeType, bool inherit); + int GetHashCode(); + MethodImplAttributes GetMethodImplementationFlags(); + ParameterInfo[] GetParameters(); + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); + Type GetType(); + object Invoke(object obj, object[] parameters); + object Invoke(object obj, BindingFlags invokeAttr, Binder binder, object[] parameters, CultureInfo culture); + bool IsDefined(Type attributeType, bool inherit); + string ToString(); +} + +// Namespace: System.Runtime.InteropServices +public interface _MethodBuilder // TypeDefIndex: 899 +{ + // Methods + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); +} + +// Namespace: System.Runtime.InteropServices +public interface _MethodInfo // TypeDefIndex: 900 +{ + // Properties + MethodAttributes Attributes { get; } + CallingConventions CallingConvention { get; } + Type DeclaringType { get; } + bool IsAbstract { get; } + bool IsAssembly { get; } + bool IsConstructor { get; } + bool IsFamily { get; } + bool IsFamilyAndAssembly { get; } + bool IsFamilyOrAssembly { get; } + bool IsFinal { get; } + bool IsHideBySig { get; } + bool IsPrivate { get; } + bool IsPublic { get; } + bool IsSpecialName { get; } + bool IsStatic { get; } + bool IsVirtual { get; } + MemberTypes MemberType { get; } + RuntimeMethodHandle MethodHandle { get; } + string Name { get; } + Type ReflectedType { get; } + Type ReturnType { get; } + ICustomAttributeProvider ReturnTypeCustomAttributes { get; } + + // Methods + bool Equals(object other); + MethodInfo GetBaseDefinition(); + object[] GetCustomAttributes(bool inherit); + object[] GetCustomAttributes(Type attributeType, bool inherit); + int GetHashCode(); + MethodImplAttributes GetMethodImplementationFlags(); + ParameterInfo[] GetParameters(); + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); + Type GetType(); + object Invoke(object obj, object[] parameters); + object Invoke(object obj, BindingFlags invokeAttr, Binder binder, object[] parameters, CultureInfo culture); + bool IsDefined(Type attributeType, bool inherit); + string ToString(); +} + +// Namespace: System.Runtime.InteropServices +public interface _MethodRental // TypeDefIndex: 901 +{ + // Methods + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); +} + +// Namespace: System.Runtime.InteropServices +public interface _Module // TypeDefIndex: 902 +{ + // Methods + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); +} + +// Namespace: System.Runtime.InteropServices +public interface _ModuleBuilder // TypeDefIndex: 903 +{ + // Methods + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); +} + +// Namespace: System.Runtime.InteropServices +public interface _ParameterBuilder // TypeDefIndex: 904 +{ + // Methods + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); +} + +// Namespace: System.Runtime.InteropServices +public interface _ParameterInfo // TypeDefIndex: 905 +{ + // Methods + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); +} + +// Namespace: System.Runtime.InteropServices +public interface _PropertyBuilder // TypeDefIndex: 906 +{ + // Methods + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); +} + +// Namespace: System.Runtime.InteropServices +public interface _PropertyInfo // TypeDefIndex: 907 +{ + // Properties + PropertyAttributes Attributes { get; } + bool CanRead { get; } + bool CanWrite { get; } + Type DeclaringType { get; } + bool IsSpecialName { get; } + MemberTypes MemberType { get; } + string Name { get; } + Type PropertyType { get; } + Type ReflectedType { get; } + + // Methods + bool Equals(object other); + MethodInfo[] GetAccessors(); + MethodInfo[] GetAccessors(bool nonPublic); + object[] GetCustomAttributes(bool inherit); + object[] GetCustomAttributes(Type attributeType, bool inherit); + MethodInfo GetGetMethod(); + MethodInfo GetGetMethod(bool nonPublic); + int GetHashCode(); + ParameterInfo[] GetIndexParameters(); + MethodInfo GetSetMethod(); + MethodInfo GetSetMethod(bool nonPublic); + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); + Type GetType(); + object GetValue(object obj, object[] index); + object GetValue(object obj, BindingFlags invokeAttr, Binder binder, object[] index, CultureInfo culture); + bool IsDefined(Type attributeType, bool inherit); + void SetValue(object obj, object value, object[] index); + void SetValue(object obj, object value, BindingFlags invokeAttr, Binder binder, object[] index, CultureInfo culture); + string ToString(); +} + +// Namespace: System.Runtime.InteropServices +public interface _SignatureHelper // TypeDefIndex: 908 +{ + // Methods + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); +} + +// Namespace: System.Runtime.InteropServices +public interface _Thread // TypeDefIndex: 909 +{ + // Methods + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); +} + +// Namespace: System.Runtime.InteropServices +public interface _TypeBuilder // TypeDefIndex: 910 +{ + // Methods + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); +} + +// Namespace: System.Runtime.Remoting.Activation +internal class ActivationServices // TypeDefIndex: 911 +{ + // Fields + private static IActivator _constructionActivator; // 0x00 + + // Properties + private static IActivator ConstructionActivator { get; } // 0x1019BD20 + + // Methods + public void .ctor(); // 0x100BF000 + public static IMessage Activate(RemotingProxy proxy, ConstructionCall ctorCall); // 0x1019AE20 + public static IMessage RemoteActivate(IConstructionCallMessage ctorCall); // 0x1019BC10 + public static object CreateProxyFromAttributes(Type type, object[] activationAttributes); // 0x1019BA00 + public static ConstructionCall CreateConstructionCall(Type type, string activationUrl, object[] activationAttributes); // 0x1019AFC0 + public static IMessage CreateInstanceFromMessage(IConstructionCallMessage ctorCall); // 0x1019B650 + public static object CreateProxyForType(Type type); // 0x1019B8D0 + public static object AllocateUninitializedClassInstance(Type type); // 0x1019AFB0 + public static void EnableProxyActivation(Type type, bool enable); // 0x1019BBF0 +} + +// Namespace: System.Runtime.Remoting.Activation +[Serializable] +public enum ActivatorLevel // TypeDefIndex: 912 +{ + Construction = 4, + Context = 8, + AppDomain = 12, + Process = 16, + Machine = 20 +} + +// Namespace: System.Runtime.Remoting.Activation +internal class AppDomainLevelActivator : IActivator // TypeDefIndex: 913 +{ + // Fields + private string _activationUrl; // 0x08 + private IActivator _next; // 0x0C + + // Properties + public ActivatorLevel Level { get; } // 0x1019CC40 + public IActivator NextActivator { get; set; } // 0x100C5B30 0x100C5B50 + + // Methods + public void .ctor(string activationUrl, IActivator next); // 0x100F97B0 + public IConstructionReturnMessage Activate(IConstructionCallMessage ctorCall); // 0x1019C950 +} + +// Namespace: System.Runtime.Remoting.Activation +[Serializable] +internal class ConstructionLevelActivator : IActivator // TypeDefIndex: 914 +{ + // Properties + public ActivatorLevel Level { get; } // 0x100FCEA0 + public IActivator NextActivator { get; set; } // 0x100C5600 0x100C5530 + + // Methods + public void .ctor(); // 0x100BF000 + public IConstructionReturnMessage Activate(IConstructionCallMessage msg); // 0x101A19F0 +} + +// Namespace: System.Runtime.Remoting.Activation +[Serializable] +internal class ContextLevelActivator : IActivator // TypeDefIndex: 915 +{ + // Fields + private IActivator m_NextActivator; // 0x08 + + // Properties + public ActivatorLevel Level { get; } // 0x10171CD0 + public IActivator NextActivator { get; set; } // 0x100BF0C0 0x100EB270 + + // Methods + public void .ctor(IActivator next); // 0x10113500 + public IConstructionReturnMessage Activate(IConstructionCallMessage ctorCall); // 0x101A1AA0 +} + +// Namespace: System.Runtime.Remoting.Activation +public interface IActivator // TypeDefIndex: 916 +{ + // Properties + ActivatorLevel Level { get; } + IActivator NextActivator { get; set; } + + // Methods + IConstructionReturnMessage Activate(IConstructionCallMessage msg); +} + +// Namespace: System.Runtime.Remoting.Activation +public interface IConstructionCallMessage : IMessage, IMethodCallMessage, IMethodMessage // TypeDefIndex: 917 +{ + // Properties + Type ActivationType { get; } + string ActivationTypeName { get; } + IActivator Activator { get; set; } + object[] CallSiteActivationAttributes { get; } + IList ContextProperties { get; } + +} + +// Namespace: System.Runtime.Remoting.Activation +public interface IConstructionReturnMessage : IMessage, IMethodMessage, IMethodReturnMessage // TypeDefIndex: 918 +{ +} + +// Namespace: System.Runtime.Remoting.Activation +internal class RemoteActivationAttribute : Attribute, IContextAttribute // TypeDefIndex: 919 +{ + // Fields + private IList _contextProperties; // 0x08 + + // Methods + public void .ctor(); // 0x100C5970 + public void .ctor(IList contextProperties); // 0x100E5940 + public bool IsContextOK(Context ctx, IConstructionCallMessage ctor); // 0x100EFBF0 + public void GetPropertiesForNewContext(IConstructionCallMessage ctor); // 0x101A8CE0 +} + +// Namespace: System.Runtime.Remoting.Activation +internal class RemoteActivator : MarshalByRefObject, IActivator // TypeDefIndex: 920 +{ + // Properties + public ActivatorLevel Level { get; } // 0x101A92C0 + public IActivator NextActivator { get; set; } // 0x101A9310 0x101A9360 + + // Methods + public void .ctor(); // 0x100C5970 + public IConstructionReturnMessage Activate(IConstructionCallMessage msg); // 0x101A8F60 + public override object InitializeLifetimeService(); // 0x101A91A0 +} + +// Namespace: System.Runtime.Remoting.Activation +[Serializable] +public sealed class UrlAttribute : ContextAttribute // TypeDefIndex: 921 +{ + // Fields + private string url; // 0x0C + + // Properties + public string UrlValue { get; } // 0x100C5B30 + + // Methods + public void .ctor(string callsiteURL); // 0x101AE040 + public override bool Equals(object o); // 0x101ADF80 + public override int GetHashCode(); // 0x101AE010 + public override void GetPropertiesForNewContext(IConstructionCallMessage ctorMsg); // 0x100C5530 + public override bool IsContextOK(Context ctx, IConstructionCallMessage msg); // 0x100E5880 +} + +// Namespace: System.Runtime.Remoting.Channels +internal class AggregateDictionary : IEnumerable, ICollection, IDictionary // TypeDefIndex: 922 +{ + // Fields + private IDictionary[] dictionaries; // 0x08 + private ArrayList _values; // 0x0C + private ArrayList _keys; // 0x10 + + // Properties + public bool IsFixedSize { get; } // 0x100E5880 + public bool IsReadOnly { get; } // 0x100E5880 + public object Item { get; set; } // 0x1019C280 0x1019C5B0 + public ICollection Keys { get; } // 0x1019C330 + public ICollection Values { get; } // 0x1019C470 + public int Count { get; } // 0x1019C180 + public bool IsSynchronized { get; } // 0x100EFBF0 + public object SyncRoot { get; } // 0x100F7810 + + // Methods + public void .ctor(IDictionary[] dics); // 0x10113500 + private IEnumerator System.Collections.IEnumerable.GetEnumerator(); // 0x1019C130 + public void Add(object key, object value); // 0x1019BD80 + public void Clear(); // 0x1019BDD0 + public bool Contains(object ob); // 0x1019BE20 + public IDictionaryEnumerator GetEnumerator(); // 0x1019C090 + public void Remove(object ob); // 0x1019C0E0 + public void CopyTo(Array array, int index); // 0x1019BEC0 +} + +// Namespace: System.Runtime.Remoting.Channels +internal class AggregateEnumerator : IEnumerator, IDictionaryEnumerator // TypeDefIndex: 923 +{ + // Fields + private IDictionary[] dictionaries; // 0x08 + private int pos; // 0x0C + private IDictionaryEnumerator currente; // 0x10 + + // Properties + public DictionaryEntry Entry { get; } // 0x1019C810 + public object Key { get; } // 0x1019C8B0 + public object Value { get; } // 0x1019C900 + public object Current { get; } // 0x1019C7C0 + + // Methods + public void .ctor(IDictionary[] dics); // 0x1019C730 + public bool MoveNext(); // 0x1019C600 + public void Reset(); // 0x1019C6B0 +} + +// Namespace: System.Runtime.Remoting.Channels +public abstract class BaseChannelObjectWithProperties : IEnumerable, ICollection, IDictionary // TypeDefIndex: 924 +{ + // Fields + private Hashtable table; // 0x08 + + // Properties + public virtual int Count { get; } // 0x101273C0 + public virtual bool IsFixedSize { get; } // 0x100E5880 + public virtual bool IsReadOnly { get; } // 0x100EFBF0 + public virtual bool IsSynchronized { get; } // 0x100EFBF0 + public virtual object Item { get; set; } // 0x1019CE70 0x1019CF20 + public virtual ICollection Keys { get; } // 0x1019CEC0 + public virtual IDictionary Properties { get; } // 0x100F7810 + public virtual object SyncRoot { get; } // 0x100F7810 + public virtual ICollection Values { get; } // 0x1019CEF0 + + // Methods + protected void .ctor(); // 0x1019CE20 + private IEnumerator System.Collections.IEnumerable.GetEnumerator(); // 0x1019CDA0 + public virtual void Add(object key, object value); // 0x1019CC80 + public virtual void Clear(); // 0x1019CCD0 + public virtual bool Contains(object key); // 0x1019CD20 + public virtual void CopyTo(Array array, int index); // 0x1019CD50 + public virtual IDictionaryEnumerator GetEnumerator(); // 0x1019CDA0 + public virtual void Remove(object key); // 0x1019CDD0 +} + +// Namespace: System.Runtime.Remoting.Channels +public abstract class BaseChannelSinkWithProperties : BaseChannelObjectWithProperties // TypeDefIndex: 925 +{ + // Methods + protected void .ctor(); // 0x1019CE20 +} + +// Namespace: System.Runtime.Remoting.Channels +public abstract class BaseChannelWithProperties : BaseChannelObjectWithProperties // TypeDefIndex: 926 +{ + // Fields + protected IChannelSinkBase SinksWithProperties; // 0x0C + + // Properties + public override IDictionary Properties { get; } // 0x1019CF70 + + // Methods + protected void .ctor(); // 0x1019CE20 +} + +// Namespace: System.Runtime.Remoting.Channels +[Serializable] +public class ChannelDataStore : IChannelDataStore // TypeDefIndex: 927 +{ + // Fields + private string[] _channelURIs; // 0x08 + private DictionaryEntry[] _extraData; // 0x0C + + // Properties + public string[] ChannelUris { get; set; } // 0x100BF0C0 0x100EB270 + public object Item { get; set; } // 0x1019D330 0x1019D3B0 + + // Methods + public void .ctor(string[] channelURIs); // 0x10113500 +} + +// Namespace: System.Runtime.Remoting +[Serializable] +internal class ChannelInfo : IChannelInfo // TypeDefIndex: 928 +{ + // Fields + private object[] channelData; // 0x08 + + // Properties + public object[] ChannelData { get; set; } // 0x100BF0C0 0x100EB270 + + // Methods + public void .ctor(); // 0x1019DD60 + public void .ctor(object remoteChannelData); // 0x1019DDC0 +} + +// Namespace: System.Runtime.Remoting.Channels +public sealed class ChannelServices // TypeDefIndex: 929 +{ + // Fields + private static ArrayList registeredChannels; // 0x00 + private static ArrayList delayedClientChannels; // 0x04 + private static CrossContextChannel _crossContextSink; // 0x08 + internal static string CrossContextUrl; // 0x0C + private static IList oldStartModeTypes; // 0x10 + + // Properties + internal static CrossContextChannel CrossContextChannel { get; } // 0x101A10D0 + public static IChannel[] RegisteredChannels { get; } // 0x101A1120 + + // Methods + private void .ctor(); // 0x100BF000 + private static void .cctor(); // 0x101A0F80 + internal static IMessageSink CreateClientChannelSinkChain(string url, object remoteChannelData, out string objectUri); // 0x1019E260 + internal static IMessageSink CreateClientChannelSinkChain(IChannelSender sender, string url, object[] channelDataArray, out string objectUri); // 0x1019E7B0 + public static IServerChannelSink CreateServerChannelSinkChain(IServerChannelSinkProvider provider, IChannelReceiver channel); // 0x1019EC00 + public static ServerProcessing DispatchMessage(IServerChannelSinkStack sinkStack, IMessage msg, out IMessage replyMsg); // 0x1019ED60 + public static IChannel GetChannel(string name); // 0x1019F280 + public static IDictionary GetChannelSinkProperties(object obj); // 0x1019EF10 + public static string[] GetUrlsForObject(MarshalByRefObject obj); // 0x1019F880 + public static void RegisterChannel(IChannel chnl); // 0x101A0650 + public static void RegisterChannel(IChannel chnl, bool ensureSecurity); // 0x101A06A0 + internal static void RegisterChannelConfig(ChannelData channel); // 0x1019FC80 + private static object CreateProvider(ProviderData prov); // 0x1019E890 + public static IMessage SyncDispatchMessage(IMessage msg); // 0x101A0C30 + public static IMessageCtrl AsyncDispatchMessage(IMessage msg, IMessageSink replySink); // 0x1019DE60 + private static ReturnMessage CheckIncomingMessage(IMessage msg); // 0x1019DFB0 + internal static IMessage CheckReturnMessage(IMessage callMsg, IMessage retMsg); // 0x1019E150 + private static bool IsLocalCall(IMessage callMsg); // 0x100E5880 + public static void UnregisterChannel(IChannel chnl); // 0x101A0D00 + internal static object[] GetCurrentChannelInfo(); // 0x1019F580 +} + +// Namespace: System.Runtime.Remoting.Channels +internal class ExceptionFilterSink : IMessageSink // TypeDefIndex: 930 +{ + // Fields + private IMessageSink _next; // 0x08 + private IMessage _call; // 0x0C + + // Properties + public IMessageSink NextSink { get; } // 0x100BF0C0 + + // Methods + public void .ctor(IMessage call, IMessageSink next); // 0x10194DC0 + public IMessage SyncProcessMessage(IMessage msg); // 0x101A30F0 + public IMessageCtrl AsyncProcessMessage(IMessage msg, IMessageSink replySink); // 0x101A30A0 +} + +// Namespace: System.Runtime.Remoting.Channels +internal class ChanelSinkStackEntry // TypeDefIndex: 931 +{ + // Fields + public IChannelSinkBase Sink; // 0x08 + public object State; // 0x0C + public ChanelSinkStackEntry Next; // 0x10 + + // Methods + public void .ctor(IChannelSinkBase sink, object state, ChanelSinkStackEntry next); // 0x10127920 +} + +// Namespace: System.Runtime.Remoting.Channels +public class ClientChannelSinkStack : IClientChannelSinkStack, IClientResponseChannelSinkStack // TypeDefIndex: 932 +{ + // Fields + private IMessageSink _replySink; // 0x08 + private ChanelSinkStackEntry _sinkStack; // 0x0C + + // Methods + public void .ctor(); // 0x100BF000 + public void .ctor(IMessageSink replySink); // 0x10113500 + public void AsyncProcessResponse(ITransportHeaders headers, Stream stream); // 0x101A1570 + public void DispatchException(Exception e); // 0x101A1690 + public void DispatchReplyMessage(IMessage msg); // 0x101A1710 + public object Pop(IClientChannelSink sink); // 0x101A1760 + public void Push(IClientChannelSink sink, object state); // 0x101A17E0 +} + +// Namespace: System.Runtime.Remoting.Channels +[Serializable] +internal class CrossAppDomainData // TypeDefIndex: 933 +{ + // Fields + private object _ContextID; // 0x08 + private int _DomainID; // 0x0C + private string _processGuid; // 0x10 + + // Properties + internal int DomainID { get; } // 0x100C5B30 + internal string ProcessID { get; } // 0x100BFC20 + + // Methods + internal void .ctor(int domainId); // 0x101A22F0 +} + +// Namespace: System.Runtime.Remoting.Channels +[Serializable] +internal class CrossAppDomainChannel : IChannel, IChannelReceiver, IChannelSender // TypeDefIndex: 934 +{ + // Fields + private const string _strName = "MONOCAD"; // 0x00 + private const string _strBaseURI = "MONOCADURI"; // 0x00 + private static object s_lock; // 0x00 + + // Properties + public virtual string ChannelName { get; } // 0x101A22B0 + public virtual int ChannelPriority { get; } // 0x101A22E0 + public virtual object ChannelData { get; } // 0x101A21D0 + + // Methods + public void .ctor(); // 0x100BF000 + private static void .cctor(); // 0x101A2180 + internal static void RegisterCrossAppDomainChannel(); // 0x101A1FF0 + public string Parse(string url, out string objectURI); // 0x101A1FD0 + public virtual string[] GetUrlsForUri(string objectURI); // 0x101A1F80 + public virtual void StartListening(object data); // 0x100C5530 + public virtual void StopListening(object data); // 0x100C5530 + public virtual IMessageSink CreateMessageSink(string url, object data, out string uri); // 0x101A1E30 +} + +// Namespace: System.Runtime.Remoting.Channels +internal class CrossAppDomainSink : IMessageSink // TypeDefIndex: 935 +{ + // Fields + private static Hashtable s_sinks; // 0x00 + private static MethodInfo processMessageMethod; // 0x04 + private int _domainID; // 0x08 + + // Properties + internal int TargetDomainId { get; } // 0x100BF0C0 + public IMessageSink NextSink { get; } // 0x100C5600 + + // Methods + internal void .ctor(int domainID); // 0x10113500 + private static void .cctor(); // 0x101A2D00 + internal static CrossAppDomainSink GetSink(int domainID); // 0x101A23F0 + private static ProcessMessageRes ProcessMessageInDomain(byte[] arrRequest, CADMethodCallMessage cadMsg); // 0x101A26C0 + public virtual IMessage SyncProcessMessage(IMessage msgRequest); // 0x101A28A0 + public virtual IMessageCtrl AsyncProcessMessage(IMessage reqMsg, IMessageSink replySink); // 0x101A2370 + public void SendAsyncMessage(object data); // 0x101A27F0 +} + +// Namespace: +private struct ProcessMessageRes // TypeDefIndex: 936 +{ + // Fields + public byte[] arrResponse; // 0x08 + public CADMethodReturnMessage cadMrm; // 0x0C + +} + +// Namespace: System.Runtime.Remoting.Channels +internal class CADSerializer // TypeDefIndex: 937 +{ + // Methods + public void .ctor(); // 0x100BF000 + internal static IMessage DeserializeMessage(MemoryStream mem, IMethodCallMessage msg); // 0x1019D090 + internal static MemoryStream SerializeMessage(IMessage msg); // 0x1019D1D0 + internal static MemoryStream SerializeObject(object obj); // 0x1019D280 + internal static object DeserializeObject(MemoryStream mem); // 0x1019D150 +} + +// Namespace: System.Runtime.Remoting.Channels +internal class AsyncRequest // TypeDefIndex: 938 +{ + // Fields + internal IMessageSink ReplySink; // 0x08 + internal IMessage MsgRequest; // 0x0C + + // Methods + public void .ctor(IMessage msgRequest, IMessageSink replySink); // 0x1019CC50 +} + +// Namespace: System.Runtime.Remoting.Channels +public interface IChannel // TypeDefIndex: 939 +{ + // Properties + string ChannelName { get; } + int ChannelPriority { get; } + + // Methods + string Parse(string url, out string objectURI); +} + +// Namespace: System.Runtime.Remoting.Channels +public interface IChannelDataStore // TypeDefIndex: 940 +{ + // Properties + string[] ChannelUris { get; } + object Item { get; set; } + +} + +// Namespace: System.Runtime.Remoting.Channels +public interface IChannelReceiver : IChannel // TypeDefIndex: 941 +{ + // Properties + object ChannelData { get; } + + // Methods + string[] GetUrlsForUri(string objectURI); + void StartListening(object data); + void StopListening(object data); +} + +// Namespace: System.Runtime.Remoting.Channels +public interface IChannelReceiverHook // TypeDefIndex: 942 +{ + // Properties + string ChannelScheme { get; } + IServerChannelSink ChannelSinkChain { get; } + bool WantsToListen { get; } + + // Methods + void AddHookChannelUri(string channelUri); +} + +// Namespace: System.Runtime.Remoting.Channels +public interface IChannelSender : IChannel // TypeDefIndex: 943 +{ + // Methods + IMessageSink CreateMessageSink(string url, object remoteChannelData, out string objectURI); +} + +// Namespace: System.Runtime.Remoting.Channels +public interface IChannelSinkBase // TypeDefIndex: 944 +{ + // Properties + IDictionary Properties { get; } + +} + +// Namespace: System.Runtime.Remoting.Channels +public interface IClientChannelSink : IChannelSinkBase // TypeDefIndex: 945 +{ + // Properties + IClientChannelSink NextChannelSink { get; } + + // Methods + void AsyncProcessRequest(IClientChannelSinkStack sinkStack, IMessage msg, ITransportHeaders headers, Stream stream); + void AsyncProcessResponse(IClientResponseChannelSinkStack sinkStack, object state, ITransportHeaders headers, Stream stream); + Stream GetRequestStream(IMessage msg, ITransportHeaders headers); + void ProcessMessage(IMessage msg, ITransportHeaders requestHeaders, Stream requestStream, out ITransportHeaders responseHeaders, out Stream responseStream); +} + +// Namespace: System.Runtime.Remoting.Channels +public interface IClientChannelSinkProvider // TypeDefIndex: 946 +{ + // Properties + IClientChannelSinkProvider Next { get; set; } + + // Methods + IClientChannelSink CreateSink(IChannelSender channel, string url, object remoteChannelData); +} + +// Namespace: System.Runtime.Remoting.Channels +public interface IClientChannelSinkStack : IClientResponseChannelSinkStack // TypeDefIndex: 947 +{ + // Methods + object Pop(IClientChannelSink sink); + void Push(IClientChannelSink sink, object state); +} + +// Namespace: System.Runtime.Remoting.Channels +public interface IClientFormatterSink : IChannelSinkBase, IClientChannelSink, IMessageSink // TypeDefIndex: 948 +{ +} + +// Namespace: System.Runtime.Remoting.Channels +public interface IClientFormatterSinkProvider : IClientChannelSinkProvider // TypeDefIndex: 949 +{ +} + +// Namespace: System.Runtime.Remoting.Channels +public interface IClientResponseChannelSinkStack // TypeDefIndex: 950 +{ + // Methods + void AsyncProcessResponse(ITransportHeaders headers, Stream stream); + void DispatchException(Exception e); + void DispatchReplyMessage(IMessage msg); +} + +// Namespace: System.Runtime.Remoting.Channels +public interface ISecurableChannel // TypeDefIndex: 951 +{ + // Properties + bool IsSecured { get; set; } + +} + +// Namespace: System.Runtime.Remoting.Channels +public interface IServerChannelSink : IChannelSinkBase // TypeDefIndex: 952 +{ + // Properties + IServerChannelSink NextChannelSink { get; } + + // Methods + void AsyncProcessResponse(IServerResponseChannelSinkStack sinkStack, object state, IMessage msg, ITransportHeaders headers, Stream stream); + Stream GetResponseStream(IServerResponseChannelSinkStack sinkStack, object state, IMessage msg, ITransportHeaders headers); + ServerProcessing ProcessMessage(IServerChannelSinkStack sinkStack, IMessage requestMsg, ITransportHeaders requestHeaders, Stream requestStream, out IMessage responseMsg, out ITransportHeaders responseHeaders, out Stream responseStream); +} + +// Namespace: System.Runtime.Remoting.Channels +public interface IServerChannelSinkProvider // TypeDefIndex: 953 +{ + // Properties + IServerChannelSinkProvider Next { get; set; } + + // Methods + IServerChannelSink CreateSink(IChannelReceiver channel); + void GetChannelData(IChannelDataStore channelData); +} + +// Namespace: System.Runtime.Remoting.Channels +public interface IServerChannelSinkStack : IServerResponseChannelSinkStack // TypeDefIndex: 954 +{ + // Methods + object Pop(IServerChannelSink sink); + void Push(IServerChannelSink sink, object state); + void ServerCallback(IAsyncResult ar); + void Store(IServerChannelSink sink, object state); + void StoreAndDispatch(IServerChannelSink sink, object state); +} + +// Namespace: System.Runtime.Remoting.Channels +public interface IServerFormatterSinkProvider : IServerChannelSinkProvider // TypeDefIndex: 955 +{ +} + +// Namespace: System.Runtime.Remoting.Channels +public interface IServerResponseChannelSinkStack // TypeDefIndex: 956 +{ + // Methods + void AsyncProcessResponse(IMessage msg, ITransportHeaders headers, Stream stream); + Stream GetResponseStream(IMessage msg, ITransportHeaders headers); +} + +// Namespace: System.Runtime.Remoting.Channels +public interface ITransportHeaders // TypeDefIndex: 957 +{ + // Properties + object Item { get; set; } + + // Methods + IEnumerator GetEnumerator(); +} + +// Namespace: System.Runtime.Remoting.Channels +public class ServerChannelSinkStack : IServerChannelSinkStack, IServerResponseChannelSinkStack // TypeDefIndex: 958 +{ + // Fields + private ChanelSinkStackEntry _sinkStack; // 0x08 + + // Methods + public void .ctor(); // 0x100BF000 + public Stream GetResponseStream(IMessage msg, ITransportHeaders headers); // 0x101A9FD0 + public object Pop(IServerChannelSink sink); // 0x101AA0F0 + public void Push(IServerChannelSink sink, object state); // 0x101AA170 + public void ServerCallback(IAsyncResult ar); // 0x101AA1D0 + public void Store(IServerChannelSink sink, object state); // 0x101AA270 + public void StoreAndDispatch(IServerChannelSink sink, object state); // 0x101AA220 + public void AsyncProcessResponse(IMessage msg, ITransportHeaders headers, Stream stream); // 0x101A9EB0 +} + +// Namespace: System.Runtime.Remoting.Channels +internal class ServerDispatchSink : IChannelSinkBase, IServerChannelSink // TypeDefIndex: 959 +{ + // Properties + public IServerChannelSink NextChannelSink { get; } // 0x100C5600 + public IDictionary Properties { get; } // 0x100C5600 + + // Methods + public void .ctor(); // 0x100BF000 + public void AsyncProcessResponse(IServerResponseChannelSinkStack sinkStack, object state, IMessage msg, ITransportHeaders headers, Stream stream); // 0x101AA370 + public Stream GetResponseStream(IServerResponseChannelSinkStack sinkStack, object state, IMessage msg, ITransportHeaders headers); // 0x100C5600 + public ServerProcessing ProcessMessage(IServerChannelSinkStack sinkStack, IMessage requestMsg, ITransportHeaders requestHeaders, Stream requestStream, out IMessage responseMsg, out ITransportHeaders responseHeaders, out Stream responseStream); // 0x101AA3C0 +} + +// Namespace: System.Runtime.Remoting.Channels +internal class ServerDispatchSinkProvider : IServerChannelSinkProvider, IServerFormatterSinkProvider // TypeDefIndex: 960 +{ + // Properties + public IServerChannelSinkProvider Next { get; set; } // 0x100C5600 0x101AA320 + + // Methods + public void .ctor(); // 0x100BF000 + public void .ctor(IDictionary properties, ICollection providerData); // 0x101AA300 + public IServerChannelSink CreateSink(IChannelReceiver channel); // 0x101AA2C0 + public void GetChannelData(IChannelDataStore channelData); // 0x100C5530 +} + +// Namespace: System.Runtime.Remoting.Channels +[Serializable] +public enum ServerProcessing // TypeDefIndex: 961 +{ + Complete = 0, + OneWay = 1, + Async = 2 +} + +// Namespace: System.Runtime.Remoting.Channels +public class SinkProviderData // TypeDefIndex: 962 +{ + // Fields + private string sinkName; // 0x08 + private ArrayList children; // 0x0C + private Hashtable properties; // 0x10 + + // Properties + public IList Children { get; } // 0x100C5B30 + public string Name { get; } // 0x100BF0C0 + public IDictionary Properties { get; } // 0x100BFC20 + + // Methods + public void .ctor(string name); // 0x101AA430 +} + +// Namespace: System.Runtime.Remoting.Channels +[Serializable] +public class TransportHeaders : ITransportHeaders // TypeDefIndex: 963 +{ + // Fields + private Hashtable hash_table; // 0x08 + + // Properties + public object Item { get; set; } // 0x1013FCE0 0x101AA630 + + // Methods + public void .ctor(); // 0x101AA500 + public IEnumerator GetEnumerator(); // 0x1019CDA0 +} + +// Namespace: System.Runtime.Remoting.Contexts +public class Context // TypeDefIndex: 964 +{ + // Fields + private int domain_id; // 0x08 + private int context_id; // 0x0C + private UIntPtr static_data; // 0x10 + private static IMessageSink default_server_context_sink; // 0x00 + private IMessageSink server_context_sink_chain; // 0x14 + private IMessageSink client_context_sink_chain; // 0x18 + private object[] datastore; // 0x1C + private ArrayList context_properties; // 0x20 + private bool frozen; // 0x24 + private static int global_count; // 0x04 + private static Hashtable namedSlots; // 0x08 + private static DynamicPropertyCollection global_dynamic_properties; // 0x0C + private DynamicPropertyCollection context_dynamic_properties; // 0x28 + private ContextCallbackObject callback_object; // 0x2C + + // Properties + public static Context DefaultContext { get; } // 0x101D0C30 + public virtual int ContextID { get; } // 0x100C5B30 + public virtual IContextProperty[] ContextProperties { get; } // 0x101D0B80 + internal bool IsDefaultContext { get; } // 0x101D0E10 + internal bool NeedsContextSink { get; } // 0x101D0E20 + internal static bool HasGlobalDynamicSinks { get; } // 0x101D0D60 + internal bool HasDynamicSinks { get; } // 0x101D0C40 + internal bool HasExitSinks { get; } // 0x101D0C90 + + // Methods + public void .ctor(); // 0x101D0AF0 + private static void .cctor(); // 0x101D0AA0 + protected override void Finalize(); // 0x101CF660 + public static bool RegisterDynamicProperty(IDynamicProperty prop, ContextBoundObject obj, Context ctx); // 0x101D0640 + public static bool UnregisterDynamicProperty(string name, ContextBoundObject obj, Context ctx); // 0x101D0A30 + private static DynamicPropertyCollection GetDynamicPropertyCollection(ContextBoundObject obj, Context ctx); // 0x101CFDB0 + internal static void NotifyGlobalDynamicSinks(bool start, IMessage req_msg, bool client_site, bool async); // 0x101D0550 + internal void NotifyDynamicSinks(bool start, IMessage req_msg, bool client_site, bool async); // 0x101D0500 + public virtual IContextProperty GetProperty(string name); // 0x101D01B0 + public virtual void SetProperty(IContextProperty prop); // 0x101D0890 + public virtual void Freeze(); // 0x101CF7F0 + public override string ToString(); // 0x101D09B0 + internal IMessageSink GetServerContextSinkChain(); // 0x101D03B0 + internal IMessageSink GetClientContextSinkChain(); // 0x101CFA20 + internal IMessageSink CreateServerObjectSinkChain(MarshalByRefObject obj, bool forceInternalExecute); // 0x101CF3E0 + internal IMessageSink CreateEnvoySink(MarshalByRefObject serverObject); // 0x101CEC30 + internal static Context SwitchToContext(Context newContext); // 0x101D09A0 + internal static Context CreateNewContext(IConstructionCallMessage msg); // 0x101CEE50 + public void DoCallBack(CrossContextDelegate deleg); // 0x101CF510 + public static LocalDataStoreSlot AllocateDataSlot(); // 0x101CEA40 + public static LocalDataStoreSlot AllocateNamedDataSlot(string name); // 0x101CEA80 + public static void FreeNamedDataSlot(string name); // 0x101CF690 + public static object GetData(LocalDataStoreSlot slot); // 0x101CFC40 + public static LocalDataStoreSlot GetNamedDataSlot(string name); // 0x101CFFF0 + public static void SetData(LocalDataStoreSlot slot, object data); // 0x101D06B0 +} + +// Namespace: System.Runtime.Remoting.Contexts +internal class DynamicPropertyCollection // TypeDefIndex: 965 +{ + // Fields + private ArrayList _properties; // 0x08 + + // Properties + public bool HasProperties { get; } // 0x101D2E30 + + // Methods + public void .ctor(); // 0x101D2DD0 + public bool RegisterDynamicProperty(IDynamicProperty prop); // 0x101D2A50 + public bool UnregisterDynamicProperty(string name); // 0x101D2C40 + public void NotifyMessage(bool start, IMessage msg, bool client_site, bool async); // 0x101D26E0 + private int FindProperty(string name); // 0x101D2580 +} + +// Namespace: +private class DynamicPropertyReg // TypeDefIndex: 966 +{ + // Fields + public IDynamicProperty Property; // 0x08 + public IDynamicMessageSink Sink; // 0x0C + + // Methods + public void .ctor(); // 0x100BF000 +} + +// Namespace: System.Runtime.Remoting.Contexts +internal class ContextCallbackObject : ContextBoundObject // TypeDefIndex: 967 +{ + // Methods + public void .ctor(); // 0x1017A010 + public void DoCallBack(CrossContextDelegate deleg); // 0x100C5530 +} + +// Namespace: System.Runtime.Remoting.Contexts +[Serializable] +public class ContextAttribute : Attribute, IContextAttribute, IContextProperty // TypeDefIndex: 968 +{ + // Fields + protected string AttributeName; // 0x08 + + // Properties + public virtual string Name { get; } // 0x100BF0C0 + + // Methods + public void .ctor(string name); // 0x100E5940 + public override bool Equals(object o); // 0x101CE520 + public virtual void Freeze(Context newContext); // 0x100C5530 + public override int GetHashCode(); // 0x101CE5E0 + public virtual void GetPropertiesForNewContext(IConstructionCallMessage ctorMsg); // 0x101CE610 + public virtual bool IsContextOK(Context ctx, IConstructionCallMessage ctorMsg); // 0x101CE6A0 + public virtual bool IsNewContextOK(Context newCtx); // 0x100E5880 +} + +// Namespace: System.Runtime.Remoting.Contexts +public class ContextProperty // TypeDefIndex: 969 +{ + // Fields + private string name; // 0x08 + private object prop; // 0x0C + + // Properties + public virtual string Name { get; } // 0x100BF0C0 + public virtual object Property { get; } // 0x100C5B30 + + // Methods + private void .ctor(string name, object prop); // 0x100F97B0 +} + +// Namespace: System.Runtime.Remoting.Contexts +internal class CrossContextChannel : IMessageSink // TypeDefIndex: 970 +{ + // Properties + public IMessageSink NextSink { get; } // 0x100C5600 + + // Methods + public void .ctor(); // 0x100BF000 + public IMessage SyncProcessMessage(IMessage msg); // 0x101D1350 + public IMessageCtrl AsyncProcessMessage(IMessage msg, IMessageSink replySink); // 0x101D0F10 +} + +// Namespace: +private class ContextRestoreSink : IMessageSink // TypeDefIndex: 971 +{ + // Fields + private IMessageSink _next; // 0x08 + private Context _context; // 0x0C + private IMessage _call; // 0x10 + + // Properties + public IMessageSink NextSink { get; } // 0x100BF0C0 + + // Methods + public void .ctor(IMessageSink next, Context context, IMessage call); // 0x10127920 + public IMessage SyncProcessMessage(IMessage msg); // 0x101CE7D0 + public IMessageCtrl AsyncProcessMessage(IMessage msg, IMessageSink replySink); // 0x101CE780 +} + +// Namespace: System.Runtime.Remoting.Contexts +public interface IContextAttribute // TypeDefIndex: 972 +{ + // Methods + void GetPropertiesForNewContext(IConstructionCallMessage msg); + bool IsContextOK(Context ctx, IConstructionCallMessage msg); +} + +// Namespace: System.Runtime.Remoting.Contexts +public interface IContextProperty // TypeDefIndex: 973 +{ + // Properties + string Name { get; } + + // Methods + void Freeze(Context newContext); + bool IsNewContextOK(Context newCtx); +} + +// Namespace: System.Runtime.Remoting.Contexts +public interface IContextPropertyActivator // TypeDefIndex: 974 +{ + // Methods + void CollectFromClientContext(IConstructionCallMessage msg); + void CollectFromServerContext(IConstructionReturnMessage msg); + bool DeliverClientContextToServerContext(IConstructionCallMessage msg); + bool DeliverServerContextToClientContext(IConstructionReturnMessage msg); + bool IsOKToActivate(IConstructionCallMessage msg); +} + +// Namespace: System.Runtime.Remoting.Contexts +public interface IContributeClientContextSink // TypeDefIndex: 975 +{ + // Methods + IMessageSink GetClientContextSink(IMessageSink nextSink); +} + +// Namespace: System.Runtime.Remoting.Contexts +public interface IContributeDynamicSink // TypeDefIndex: 976 +{ + // Methods + IDynamicMessageSink GetDynamicSink(); +} + +// Namespace: System.Runtime.Remoting.Contexts +public interface IContributeEnvoySink // TypeDefIndex: 977 +{ + // Methods + IMessageSink GetEnvoySink(MarshalByRefObject obj, IMessageSink nextSink); +} + +// Namespace: System.Runtime.Remoting.Contexts +public interface IContributeObjectSink // TypeDefIndex: 978 +{ + // Methods + IMessageSink GetObjectSink(MarshalByRefObject obj, IMessageSink nextSink); +} + +// Namespace: System.Runtime.Remoting.Contexts +public interface IContributeServerContextSink // TypeDefIndex: 979 +{ + // Methods + IMessageSink GetServerContextSink(IMessageSink nextSink); +} + +// Namespace: System.Runtime.Remoting.Contexts +public interface IDynamicMessageSink // TypeDefIndex: 980 +{ + // Methods + void ProcessMessageFinish(IMessage replyMsg, bool bCliSide, bool bAsync); + void ProcessMessageStart(IMessage reqMsg, bool bCliSide, bool bAsync); +} + +// Namespace: System.Runtime.Remoting.Contexts +public interface IDynamicProperty // TypeDefIndex: 981 +{ + // Properties + string Name { get; } + +} + +// Namespace: System.Runtime.Remoting.Contexts +[Serializable] +public class SynchronizationAttribute : ContextAttribute, IContributeClientContextSink, IContributeServerContextSink // TypeDefIndex: 982 +{ + // Fields + public const int NOT_SUPPORTED = 1; // 0x00 + public const int SUPPORTED = 2; // 0x00 + public const int REQUIRED = 4; // 0x00 + public const int REQUIRES_NEW = 8; // 0x00 + private bool _bReEntrant; // 0x0C + private int _flavor; // 0x10 + [NonSerialized] private bool _locked; // 0x14 + [NonSerialized] private int _lockCount; // 0x18 + [NonSerialized] private Mutex _mutex; // 0x1C + [NonSerialized] private Thread _ownerThread; // 0x20 + + // Properties + public virtual bool IsReEntrant { get; } // 0x100F8910 + public virtual bool Locked { get; set; } // 0x100C5670 0x101DDF00 + + // Methods + public void .ctor(); // 0x101DDD50 + public void .ctor(bool reEntrant); // 0x101DDDC0 + public void .ctor(int flag); // 0x101DDEE0 + public void .ctor(int flag, bool reEntrant); // 0x101DDE30 + internal void AcquireLock(); // 0x101DD700 + internal void ReleaseLock(); // 0x101DDC10 + public override void GetPropertiesForNewContext(IConstructionCallMessage ctorMsg); // 0x101DDA80 + public virtual IMessageSink GetClientContextSink(IMessageSink nextSink); // 0x101DDA30 + public virtual IMessageSink GetServerContextSink(IMessageSink nextSink); // 0x101DDAF0 + public override bool IsContextOK(Context ctx, IConstructionCallMessage msg); // 0x101DDB40 + internal static void ExitContext(); // 0x101DD930 + internal static void EnterContext(); // 0x101DD830 +} + +// Namespace: System.Runtime.Remoting.Contexts +internal class SynchronizedClientContextSink : IMessageSink // TypeDefIndex: 983 +{ + // Fields + private IMessageSink _next; // 0x08 + private SynchronizationAttribute _att; // 0x0C + + // Properties + public IMessageSink NextSink { get; } // 0x100BF0C0 + + // Methods + public void .ctor(IMessageSink next, SynchronizationAttribute att); // 0x101DE330 + public IMessageCtrl AsyncProcessMessage(IMessage msg, IMessageSink replySink); // 0x101DE110 + public IMessage SyncProcessMessage(IMessage msg); // 0x101DE1C0 +} + +// Namespace: System.Runtime.Remoting.Contexts +internal class SynchronizedServerContextSink : IMessageSink // TypeDefIndex: 984 +{ + // Fields + private IMessageSink _next; // 0x08 + private SynchronizationAttribute _att; // 0x0C + + // Properties + public IMessageSink NextSink { get; } // 0x100BF0C0 + + // Methods + public void .ctor(IMessageSink next, SynchronizationAttribute att); // 0x101DE330 + public IMessageCtrl AsyncProcessMessage(IMessage msg, IMessageSink replySink); // 0x101DE520 + public IMessage SyncProcessMessage(IMessage msg); // 0x101DE5B0 +} + +// Namespace: System.Runtime.Remoting.Contexts +internal class SynchronizedContextReplySink : IMessageSink // TypeDefIndex: 985 +{ + // Fields + private IMessageSink _next; // 0x08 + private bool _newLock; // 0x0C + private SynchronizationAttribute _att; // 0x10 + + // Properties + public IMessageSink NextSink { get; } // 0x100BF0C0 + + // Methods + public void .ctor(IMessageSink next, SynchronizationAttribute att, bool newLock); // 0x101DE4F0 + public IMessageCtrl AsyncProcessMessage(IMessage msg, IMessageSink replySink); // 0x101DE360 + public IMessage SyncProcessMessage(IMessage msg); // 0x101DE3B0 +} + +// Namespace: System.Runtime.Remoting.Lifetime +public class ClientSponsor : MarshalByRefObject, ISponsor // TypeDefIndex: 986 +{ + // Fields + private TimeSpan renewal_time; // 0x10 + private Hashtable registered_objects; // 0x18 + + // Properties + public TimeSpan RenewalTime { get; set; } // 0x10113EB0 0x10113EF0 + + // Methods + public void .ctor(); // 0x101CA5B0 + public void .ctor(TimeSpan renewalTime); // 0x101CA630 + public void Close(); // 0x101CA0F0 + protected override void Finalize(); // 0x101CA390 + public override object InitializeLifetimeService(); // 0x101862B0 + public bool Register(MarshalByRefObject obj); // 0x101CA450 + public TimeSpan Renewal(ILease lease); // 0x10113EB0 + public void Unregister(MarshalByRefObject obj); // 0x101CA500 +} + +// Namespace: System.Runtime.Remoting.Lifetime +public interface ILease // TypeDefIndex: 987 +{ + // Properties + TimeSpan CurrentLeaseTime { get; } + LeaseState CurrentState { get; } + TimeSpan InitialLeaseTime { get; set; } + TimeSpan RenewOnCallTime { get; set; } + TimeSpan SponsorshipTimeout { get; set; } + + // Methods + void Register(ISponsor obj); + void Register(ISponsor obj, TimeSpan renewalTime); + TimeSpan Renew(TimeSpan renewalTime); + void Unregister(ISponsor obj); +} + +// Namespace: System.Runtime.Remoting.Lifetime +public interface ISponsor // TypeDefIndex: 988 +{ + // Methods + TimeSpan Renewal(ILease lease); +} + +// Namespace: System.Runtime.Remoting.Lifetime +internal class Lease : MarshalByRefObject, ILease // TypeDefIndex: 989 +{ + // Fields + private DateTime _leaseExpireTime; // 0x10 + private LeaseState _currentState; // 0x20 + private TimeSpan _initialLeaseTime; // 0x28 + private TimeSpan _renewOnCallTime; // 0x30 + private TimeSpan _sponsorshipTimeout; // 0x38 + private ArrayList _sponsors; // 0x40 + private Queue _renewingSponsors; // 0x44 + private RenewalDelegate _renewalDelegate; // 0x48 + + // Properties + public TimeSpan CurrentLeaseTime { get; } // 0x101D5210 + public LeaseState CurrentState { get; } // 0x100EACD0 + public TimeSpan InitialLeaseTime { get; set; } // 0x101D5290 0x101D52C0 + public TimeSpan RenewOnCallTime { get; set; } // 0x101D52A0 0x101D5420 + public TimeSpan SponsorshipTimeout { get; set; } // 0x101D52B0 0x101D54E0 + + // Methods + public void .ctor(); // 0x101D5060 + public void Activate(); // 0x101D46F0 + public void Register(ISponsor obj); // 0x101D4C70 + public void Register(ISponsor obj, TimeSpan renewalTime); // 0x101D4AF0 + public TimeSpan Renew(TimeSpan renewalTime); // 0x101D4CD0 + public void Unregister(ISponsor obj); // 0x101D4D90 + internal void UpdateState(); // 0x101D4ED0 + private void CheckNextSponsor(); // 0x101D4700 + private void ProcessSponsorResponse(object state, bool timedOut); // 0x101D4910 +} + +// Namespace: +private delegate TimeSpan RenewalDelegate(ILease lease); // TypeDefIndex: 990; 0x101DCA70 + +// Namespace: System.Runtime.Remoting.Lifetime +internal class LeaseManager // TypeDefIndex: 991 +{ + // Fields + private ArrayList _objects; // 0x08 + private Timer _timer; // 0x0C + + // Methods + public void .ctor(); // 0x101D4450 + public void SetPollTime(TimeSpan timeSpan); // 0x101D3EA0 + public void TrackLifetime(ServerIdentity identity); // 0x101D41F0 + public void StopTrackingLifetime(ServerIdentity identity); // 0x101D4100 + public void StartManager(); // 0x101D3F90 + public void StopManager(); // 0x101D40D0 + public void ManageLeases(object state); // 0x101D3C70 +} + +// Namespace: System.Runtime.Remoting.Lifetime +internal class LeaseSink : IMessageSink // TypeDefIndex: 992 +{ + // Fields + private IMessageSink _nextSink; // 0x08 + + // Properties + public IMessageSink NextSink { get; } // 0x100BF0C0 + + // Methods + public void .ctor(IMessageSink nextSink); // 0x10113500 + public IMessage SyncProcessMessage(IMessage msg); // 0x101D4690 + public IMessageCtrl AsyncProcessMessage(IMessage msg, IMessageSink replySink); // 0x101D44B0 + private void RenewLease(IMessage msg); // 0x101D4510 +} + +// Namespace: System.Runtime.Remoting.Lifetime +[Serializable] +public enum LeaseState // TypeDefIndex: 993 +{ + Null = 0, + Initial = 1, + Active = 2, + Renewing = 3, + Expired = 4 +} + +// Namespace: System.Runtime.Remoting.Lifetime +public sealed class LifetimeServices // TypeDefIndex: 994 +{ + // Fields + private static TimeSpan _leaseManagerPollTime; // 0x00 + private static TimeSpan _leaseTime; // 0x08 + private static TimeSpan _renewOnCallTime; // 0x10 + private static TimeSpan _sponsorshipTimeout; // 0x18 + private static LeaseManager _leaseManager; // 0x20 + + // Properties + public static TimeSpan LeaseManagerPollTime { get; set; } // 0x101D57C0 0x101D5900 + public static TimeSpan LeaseTime { get; set; } // 0x101D5810 0x101D5980 + public static TimeSpan RenewOnCallTime { get; set; } // 0x101D5860 0x101D5A40 + public static TimeSpan SponsorshipTimeout { get; set; } // 0x101D58B0 0x101D5B00 + + // Methods + public void .ctor(); // 0x100BF000 + private static void .cctor(); // 0x101D5680 + internal static void TrackLifetime(ServerIdentity identity); // 0x101D5610 + internal static void StopTrackingLifetime(ServerIdentity identity); // 0x101D55A0 +} + +// Namespace: System.Runtime.Remoting.Messaging +internal enum ArgInfoType : byte // TypeDefIndex: 995 +{ + In = 0, + Out = 1 +} + +// Namespace: System.Runtime.Remoting.Messaging +internal class ArgInfo // TypeDefIndex: 996 +{ + // Fields + private int[] _paramMap; // 0x08 + private int _inoutArgCount; // 0x0C + private MethodBase _method; // 0x10 + + // Methods + public void .ctor(MethodBase method, ArgInfoType type); // 0x101C6C30 + public int GetInOutArgIndex(int inoutArgNum); // 0x101C6A80 + public virtual string GetInOutArgName(int index); // 0x101C6AC0 + public int GetInOutArgCount(); // 0x100C5B30 + public object[] GetInOutArgs(object[] args); // 0x101C6B50 +} + +// Namespace: System.Runtime.Remoting.Messaging +public class AsyncResult : IAsyncResult, IMessageSink // TypeDefIndex: 997 +{ + // Fields + private object async_state; // 0x08 + private WaitHandle handle; // 0x0C + private object async_delegate; // 0x10 + private IntPtr data; // 0x14 + private object object_data; // 0x18 + private bool sync_completed; // 0x1C + private bool completed; // 0x1D + private bool endinvoke_called; // 0x1E + private object async_callback; // 0x20 + private ExecutionContext current; // 0x24 + private ExecutionContext original; // 0x28 + private int gchandle; // 0x2C + private MonoMethodMessage call_message; // 0x30 + private IMessageCtrl message_ctrl; // 0x34 + private IMessage reply_message; // 0x38 + + // Properties + public virtual object AsyncState { get; } // 0x100BF0C0 + public virtual WaitHandle AsyncWaitHandle { get; } // 0x101C7020 + public virtual bool CompletedSynchronously { get; } // 0x10172890 + public virtual bool IsCompleted { get; } // 0x101C7150 + public bool EndInvokeCalled { get; set; } // 0x101C7140 0x101C7160 + public virtual object AsyncDelegate { get; } // 0x100BFC20 + public IMessageSink NextSink { get; } // 0x100C5600 + internal MonoMethodMessage CallMessage { get; set; } // 0x100EA580 0x100C15B0 + + // Methods + internal void .ctor(); // 0x100BF000 + public virtual IMessageCtrl AsyncProcessMessage(IMessage msg, IMessageSink replySink); // 0x101C6DD0 + public virtual IMessage GetReplyMessage(); // 0x100EB210 + public virtual void SetMessageCtrl(IMessageCtrl mc); // 0x100EA750 + internal void SetCompletedSynchronously(bool completed); // 0x101C6EB0 + internal IMessage EndInvoke(); // 0x101C6E20 + public virtual IMessage SyncProcessMessage(IMessage msg); // 0x101C6EC0 +} + +// Namespace: System.Runtime.Remoting.Messaging +internal class CADArgHolder // TypeDefIndex: 998 +{ + // Fields + public int index; // 0x08 + + // Methods + public void .ctor(int i); // 0x10113500 +} + +// Namespace: System.Runtime.Remoting.Messaging +internal class CADObjRef // TypeDefIndex: 999 +{ + // Fields + private ObjRef objref; // 0x08 + public int SourceDomain; // 0x0C + + // Properties + public string TypeName { get; } // 0x101C91A0 + public string URI { get; } // 0x100C7840 + + // Methods + public void .ctor(ObjRef o, int sourceDomain); // 0x100F97B0 +} + +// Namespace: System.Runtime.Remoting.Messaging +internal class CADMessageBase // TypeDefIndex: 1000 +{ + // Fields + protected object[] _args; // 0x08 + protected byte[] _serializedArgs; // 0x0C + protected int _propertyCount; // 0x10 + protected CADArgHolder _callContext; // 0x14 + + // Methods + public void .ctor(); // 0x100BF000 + internal static int MarshalProperties(IDictionary dict, ArrayList args); // 0x101C76B0 + internal static void UnmarshalProperties(IDictionary dict, int count, ArrayList args); // 0x101C8520 + private static bool IsPossibleToIgnoreMarshal(object obj); // 0x101C71F0 + protected object MarshalArgument(object arg, ArrayList args); // 0x101C7330 + protected object UnmarshalArgument(object arg, ArrayList args); // 0x101C7BD0 + internal object[] MarshalArguments(object[] arguments, ArrayList args); // 0x101C75D0 + internal object[] UnmarshalArguments(object[] arguments, ArrayList args); // 0x101C8440 + protected void SaveLogicalCallContext(IMethodMessage msg, ArrayList serializeList); // 0x101C7AB0 + internal LogicalCallContext GetLogicalCallContext(ArrayList args); // 0x101C7170 +} + +// Namespace: System.Runtime.Remoting.Messaging +internal class CADMethodCallMessage : CADMessageBase // TypeDefIndex: 1001 +{ + // Fields + private string _uri; // 0x18 + internal RuntimeMethodHandle MethodHandle; // 0x1C + internal string FullTypeName; // 0x20 + + // Properties + internal string Uri { get; } // 0x100EE580 + internal int PropertiesCount { get; } // 0x100BFC20 + + // Methods + internal void .ctor(IMethodCallMessage callMsg); // 0x101C8CA0 + internal static CADMethodCallMessage Create(IMessage callMsg); // 0x101C8630 + internal ArrayList GetArguments(); // 0x101C86B0 + internal object[] GetArgs(ArrayList args); // 0x101C8690 + private static Type[] GetSignature(MethodBase methodBase, bool load); // 0x101C8B80 + internal MethodBase GetMethod(); // 0x101C8760 +} + +// Namespace: System.Runtime.Remoting.Messaging +internal class CADMethodReturnMessage : CADMessageBase // TypeDefIndex: 1002 +{ + // Fields + private object _returnValue; // 0x18 + private CADArgHolder _exception; // 0x1C + + // Properties + internal int PropertiesCount { get; } // 0x100BFC20 + + // Methods + internal void .ctor(IMethodReturnMessage retMsg); // 0x101C9000 + internal static CADMethodReturnMessage Create(IMessage callMsg); // 0x101C8E10 + internal ArrayList GetArguments(); // 0x101C8E70 + internal object[] GetArgs(ArrayList args); // 0x101C8690 + internal object GetReturnValue(ArrayList args); // 0x101C8FC0 + internal Exception GetException(ArrayList args); // 0x101C8F20 +} + +// Namespace: System.Runtime.Remoting.Messaging +[Serializable] +public sealed class CallContext // TypeDefIndex: 1003 +{ + // Fields + private static Header[] Headers; // 0x80000000 + private static Hashtable datastore; // 0x80000004 + + // Properties + public static object HostContext { get; set; } // 0x101C9AD0 0x101C9B20 + private static Hashtable Datastore { get; } // 0x101C9A70 + + // Methods + private void .ctor(); // 0x100BF000 + public static void FreeNamedDataSlot(string name); // 0x101C94F0 + public static object GetData(string name); // 0x101C9530 + public static void SetData(string name, object data); // 0x101C9780 + public static object LogicalGetData(string name); // 0x101C95A0 + public static void LogicalSetData(string name, object data); // 0x101C95F0 + public static Header[] GetHeaders(); // 0x101C9570 + public static void SetHeaders(Header[] headers); // 0x101C97C0 + internal static LogicalCallContext CreateLogicalCallContext(bool createEmpty); // 0x101C9260 + internal static object SetCurrentCallContext(LogicalCallContext ctx); // 0x101C96C0 + internal static void UpdateCurrentCallContext(LogicalCallContext ctx); // 0x101C9800 + internal static void RestoreCallContext(object oldContext); // 0x101C9640 +} + +// Namespace: System.Runtime.Remoting.Messaging +public interface ILogicalThreadAffinative // TypeDefIndex: 1004 +{ +} + +// Namespace: System.Runtime.Remoting.Messaging +internal class ClientContextTerminatorSink : IMessageSink // TypeDefIndex: 1005 +{ + // Fields + private Context _context; // 0x08 + + // Properties + public IMessageSink NextSink { get; } // 0x100C5600 + + // Methods + public void .ctor(Context ctx); // 0x10113500 + public IMessage SyncProcessMessage(IMessage msg); // 0x101C9F20 + public IMessageCtrl AsyncProcessMessage(IMessage msg, IMessageSink replySink); // 0x101C9C90 +} + +// Namespace: System.Runtime.Remoting.Messaging +internal class ClientContextReplySink : IMessageSink // TypeDefIndex: 1006 +{ + // Fields + private IMessageSink _replySink; // 0x08 + private Context _context; // 0x0C + + // Properties + public IMessageSink NextSink { get; } // 0x100BF0C0 + + // Methods + public void .ctor(Context ctx, IMessageSink replySink); // 0x1019CC50 + public IMessage SyncProcessMessage(IMessage msg); // 0x101C9BC0 + public IMessageCtrl AsyncProcessMessage(IMessage msg, IMessageSink replySink); // 0x101C9B70 +} + +// Namespace: System.Runtime.Remoting.Messaging +[Serializable] +public class ConstructionCall : MethodCall, IConstructionCallMessage, IMessage, IMethodCallMessage, IMethodMessage // TypeDefIndex: 1007 +{ + // Fields + private IActivator _activator; // 0x38 + private object[] _activationAttributes; // 0x3C + private IList _contextProperties; // 0x40 + private Type _activationType; // 0x44 + private string _activationTypeName; // 0x48 + private bool _isContextOk; // 0x4C + [NonSerialized] private RemotingProxy _sourceProxy; // 0x50 + private static Dictionary`2 <>f__switch$map20; // 0x00 + + // Properties + internal bool IsContextOk { get; set; } // 0x101CE180 0x101CE1C0 + public Type ActivationType { get; } // 0x101CE0B0 + public string ActivationTypeName { get; } // 0x10145560 + public IActivator Activator { get; set; } // 0x100EB210 0x100EB290 + public object[] CallSiteActivationAttributes { get; } // 0x100EB220 + public IList ContextProperties { get; } // 0x101CE130 + public override IDictionary Properties { get; } // 0x101CE190 + internal RemotingProxy SourceProxy { get; set; } // 0x10132810 0x101CE1D0 + + // Methods + public void .ctor(IMessage m); // 0x101CDF60 + internal void .ctor(Type type); // 0x101CE060 + public void .ctor(Header[] headers); // 0x101CDEC0 + internal void .ctor(SerializationInfo info, StreamingContext context); // 0x101CDFD0 + internal override void InitDictionary(); // 0x101CDC10 + internal void SetActivationAttributes(object[] attributes); // 0x101455F0 + internal override void InitMethodProperty(string key, object value); // 0x101CDCD0 + public override void GetObjectData(SerializationInfo info, StreamingContext context); // 0x101CDB40 +} + +// Namespace: System.Runtime.Remoting.Messaging +internal class ConstructionCallDictionary : MethodDictionary // TypeDefIndex: 1008 +{ + // Fields + public static string[] InternalKeys; // 0x00 + private static Dictionary`2 <>f__switch$map23; // 0x04 + private static Dictionary`2 <>f__switch$map24; // 0x08 + + // Methods + public void .ctor(IConstructionCallMessage message); // 0x101CDAD0 + private static void .cctor(); // 0x101CD700 + protected override object GetMethodProperty(string key); // 0x101CD1C0 + protected override void SetMethodProperty(string key, object value); // 0x101CD4B0 +} + +// Namespace: System.Runtime.Remoting.Messaging +[Serializable] +public class ConstructionResponse : MethodResponse, IConstructionReturnMessage, IMessage, IMethodMessage, IMethodReturnMessage // TypeDefIndex: 1009 +{ + // Properties + public override IDictionary Properties { get; } // 0x101CE4A0 + + // Methods + public void .ctor(Header[] h, IMethodCallMessage mcm); // 0x101CE370 + internal void .ctor(object resultObject, LogicalCallContext callCtx, IMethodCallMessage msg); // 0x101CE1E0 + internal void .ctor(Exception e, IMethodCallMessage msg); // 0x101CE2D0 + internal void .ctor(SerializationInfo info, StreamingContext context); // 0x101CE250 +} + +// Namespace: System.Runtime.Remoting.Messaging +[Serializable] +internal class EnvoyTerminatorSink : IMessageSink // TypeDefIndex: 1010 +{ + // Fields + public static EnvoyTerminatorSink Instance; // 0x00 + + // Properties + public IMessageSink NextSink { get; } // 0x100C5600 + + // Methods + public void .ctor(); // 0x100BF000 + private static void .cctor(); // 0x101D2F60 + public IMessage SyncProcessMessage(IMessage msg); // 0x101D2EE0 + public IMessageCtrl AsyncProcessMessage(IMessage msg, IMessageSink replySink); // 0x101D2E60 +} + +// Namespace: System.Runtime.Remoting.Messaging +[Serializable] +internal class ErrorMessage : IMessage, IMethodCallMessage, IMethodMessage // TypeDefIndex: 1011 +{ + // Fields + private string _uri; // 0x08 + + // Properties + public int ArgCount { get; } // 0x100C5600 + public object[] Args { get; } // 0x100C5600 + public bool HasVarArgs { get; } // 0x100EFBF0 + public MethodBase MethodBase { get; } // 0x100C5600 + public string MethodName { get; } // 0x101D3020 + public object MethodSignature { get; } // 0x100C5600 + public virtual IDictionary Properties { get; } // 0x100C5600 + public string TypeName { get; } // 0x101D3050 + public string Uri { get; set; } // 0x100BF0C0 0x100EB270 + public int InArgCount { get; } // 0x100C5600 + public object[] InArgs { get; } // 0x100C5600 + public LogicalCallContext LogicalCallContext { get; } // 0x100C5600 + + // Methods + public void .ctor(); // 0x101D2FE0 + public object GetArg(int arg_num); // 0x100C5600 + public string GetArgName(int arg_num); // 0x101D2FB0 + public string GetInArgName(int index); // 0x100C5600 + public object GetInArg(int argNum); // 0x100C5600 +} + +// Namespace: System.Runtime.Remoting.Messaging +[Serializable] +public class Header // TypeDefIndex: 1012 +{ + // Fields + public string HeaderNamespace; // 0x08 + public bool MustUnderstand; // 0x0C + public string Name; // 0x10 + public object Value; // 0x14 + + // Methods + public void .ctor(string _Name, object _Value); // 0x101D3460 + public void .ctor(string _Name, object _Value, bool _MustUnderstand); // 0x101D3430 + public void .ctor(string _Name, object _Value, bool _MustUnderstand, string _HeaderNamespace); // 0x101D3400 +} + +// Namespace: System.Runtime.Remoting.Messaging +internal interface IInternalMessage // TypeDefIndex: 1013 +{ + // Properties + Identity TargetIdentity { get; set; } + string Uri { get; set; } + +} + +// Namespace: System.Runtime.Remoting.Messaging +public interface IMessage // TypeDefIndex: 1014 +{ + // Properties + IDictionary Properties { get; } + +} + +// Namespace: System.Runtime.Remoting.Messaging +public interface IMessageCtrl // TypeDefIndex: 1015 +{ + // Methods + void Cancel(int msToCancel); +} + +// Namespace: System.Runtime.Remoting.Messaging +public interface IMessageSink // TypeDefIndex: 1016 +{ + // Properties + IMessageSink NextSink { get; } + + // Methods + IMessage SyncProcessMessage(IMessage msg); + IMessageCtrl AsyncProcessMessage(IMessage msg, IMessageSink replySink); +} + +// Namespace: System.Runtime.Remoting.Messaging +public interface IMethodCallMessage : IMessage, IMethodMessage // TypeDefIndex: 1017 +{ + // Properties + int InArgCount { get; } + object[] InArgs { get; } + + // Methods + object GetInArg(int argNum); + string GetInArgName(int index); +} + +// Namespace: System.Runtime.Remoting.Messaging +public interface IMethodMessage : IMessage // TypeDefIndex: 1018 +{ + // Properties + int ArgCount { get; } + object[] Args { get; } + bool HasVarArgs { get; } + LogicalCallContext LogicalCallContext { get; } + MethodBase MethodBase { get; } + string MethodName { get; } + object MethodSignature { get; } + string TypeName { get; } + string Uri { get; } + + // Methods + object GetArg(int argNum); + string GetArgName(int index); +} + +// Namespace: System.Runtime.Remoting.Messaging +public interface IMethodReturnMessage : IMessage, IMethodMessage // TypeDefIndex: 1019 +{ + // Properties + Exception Exception { get; } + int OutArgCount { get; } + object[] OutArgs { get; } + object ReturnValue { get; } + + // Methods + object GetOutArg(int argNum); + string GetOutArgName(int index); +} + +// Namespace: System.Runtime.Remoting.Messaging +public interface IRemotingFormatter : IFormatter // TypeDefIndex: 1020 +{ + // Methods + object Deserialize(Stream serializationStream, HeaderHandler handler); + void Serialize(Stream serializationStream, object graph, Header[] headers); +} + +// Namespace: System.Runtime.Remoting.Messaging +internal interface ISerializationRootObject // TypeDefIndex: 1021 +{ + // Methods + void RootSetObjectData(SerializationInfo info, StreamingContext context); +} + +// Namespace: System.Runtime.Remoting.Messaging +public class InternalMessageWrapper // TypeDefIndex: 1022 +{ + // Fields + protected IMessage WrappedMessage; // 0x08 + + // Methods + public void .ctor(IMessage msg); // 0x10113500 +} + +// Namespace: System.Runtime.Remoting.Messaging +[Serializable] +public sealed class LogicalCallContext : ICloneable, ISerializable // TypeDefIndex: 1023 +{ + // Fields + private Hashtable _data; // 0x08 + private CallContextRemotingData _remotingData; // 0x0C + + // Properties + public bool HasInfo { get; } // 0x101D6340 + internal Hashtable Datastore { get; } // 0x100BF0C0 + + // Methods + internal void .ctor(); // 0x101D62E0 + internal void .ctor(SerializationInfo info, StreamingContext context); // 0x101D61D0 + public void FreeNamedDataSlot(string name); // 0x101D5ED0 + public object GetData(string name); // 0x101D5F00 + public void GetObjectData(SerializationInfo info, StreamingContext context); // 0x101D5F40 + public void SetData(string name, object data); // 0x101D6150 + public object Clone(); // 0x101D5BC0 +} + +// Namespace: System.Runtime.Remoting.Messaging +[Serializable] +internal class CallContextRemotingData : ICloneable // TypeDefIndex: 1024 +{ + // Fields + private string _logicalCallID; // 0x08 + + // Properties + public string LogicalCallID { get; set; } // 0x100BF0C0 0x100EB270 + + // Methods + public void .ctor(); // 0x100BF000 + public object Clone(); // 0x101C9200 +} + +// Namespace: System.Runtime.Remoting.Messaging +[Serializable] +public class MethodCall : ISerializable, IInternalMessage, IMessage, IMethodCallMessage, IMethodMessage, ISerializationRootObject // TypeDefIndex: 1025 +{ + // Fields + private string _uri; // 0x08 + private string _typeName; // 0x0C + private string _methodName; // 0x10 + private object[] _args; // 0x14 + private Type[] _methodSignature; // 0x18 + private MethodBase _methodBase; // 0x1C + private LogicalCallContext _callContext; // 0x20 + private ArgInfo _inArgInfo; // 0x24 + private Identity _targetIdentity; // 0x28 + private Type[] _genericArguments; // 0x2C + protected IDictionary ExternalProperties; // 0x30 + protected IDictionary InternalProperties; // 0x34 + private static Dictionary`2 <>f__switch$map1F; // 0x00 + + // Properties + private string System.Runtime.Remoting.Messaging.IInternalMessage.Uri { get; set; } // 0x100BF0C0 0x100EB270 + private Identity System.Runtime.Remoting.Messaging.IInternalMessage.TargetIdentity { get; set; } // 0x100EB040 0x100EB250 + public int ArgCount { get; } // 0x101D88B0 + public object[] Args { get; } // 0x100EF0C0 + public bool HasVarArgs { get; } // 0x101D8920 + public int InArgCount { get; } // 0x101D8960 + public object[] InArgs { get; } // 0x101D89D0 + public LogicalCallContext LogicalCallContext { get; } // 0x101D8A40 + public MethodBase MethodBase { get; } // 0x101D8A90 + public string MethodName { get; } // 0x101D8AB0 + public object MethodSignature { get; } // 0x101D8AF0 + public virtual IDictionary Properties { get; } // 0x101CE190 + public string TypeName { get; } // 0x101D8C10 + public string Uri { get; set; } // 0x100BF0C0 0x100EB270 + private Type[] GenericArguments { get; } // 0x101D88D0 + + // Methods + public void .ctor(Header[] h1); // 0x101CDEC0 + internal void .ctor(SerializationInfo info, StreamingContext context); // 0x101CDFD0 + internal void .ctor(CADMethodCallMessage msg); // 0x101D8350 + public void .ctor(IMessage msg); // 0x101D8500 + internal void .ctor(string uri, string typeName, string methodName, object[] args); // 0x101D8860 + internal void .ctor(); // 0x100BF000 + internal void CopyFrom(IMethodMessage call); // 0x101D7380 + internal virtual void InitMethodProperty(string key, object value); // 0x101D7A40 + public virtual void GetObjectData(SerializationInfo info, StreamingContext context); // 0x101D7660 + internal virtual void InitDictionary(); // 0x101D79C0 + public object GetArg(int argNum); // 0x101D74F0 + public string GetArgName(int index); // 0x101D7480 + public object GetInArg(int argNum); // 0x101D75B0 + public string GetInArgName(int index); // 0x101D7530 + public virtual object HeaderHandler(Header[] h); // 0x101D7970 + public virtual void Init(); // 0x100C5530 + public void ResolveMethod(); // 0x101D7CB0 + private Type CastTo(string clientType, Type serverType); // 0x101D7140 + private static string GetTypeNameFromAssemblyQualifiedName(string aqname); // 0x101D78E0 + public void RootSetObjectData(SerializationInfo info, StreamingContext ctx); // 0x101D8300 +} + +// Namespace: System.Runtime.Remoting.Messaging +internal class MethodCallDictionary : MethodDictionary // TypeDefIndex: 1026 +{ + // Fields + public static string[] InternalKeys; // 0x00 + + // Methods + public void .ctor(IMethodMessage message); // 0x101D6910 + private static void .cctor(); // 0x101D66D0 +} + +// Namespace: System.Runtime.Remoting.Messaging +public class MethodCallMessageWrapper : InternalMessageWrapper, IMessage, IMethodCallMessage, IMethodMessage // TypeDefIndex: 1027 +{ + // Fields + private object[] _args; // 0x0C + private ArgInfo _inArgInfo; // 0x10 + private DictionaryWrapper _properties; // 0x14 + + // Properties + public virtual int ArgCount { get; } // 0x101D6B90 + public virtual object[] Args { get; set; } // 0x100C5B30 0x100C5B50 + public virtual bool HasVarArgs { get; } // 0x101D6C10 + public virtual int InArgCount { get; } // 0x101780C0 + public virtual object[] InArgs { get; } // 0x101D6C90 + public virtual LogicalCallContext LogicalCallContext { get; } // 0x101D6CC0 + public virtual MethodBase MethodBase { get; } // 0x101D6D40 + public virtual string MethodName { get; } // 0x101D6DC0 + public virtual object MethodSignature { get; } // 0x101D6E40 + public virtual IDictionary Properties { get; } // 0x101D6EC0 + public virtual string TypeName { get; } // 0x101D6FB0 + public virtual string Uri { get; set; } // 0x101D7030 0x101D70B0 + + // Methods + public void .ctor(IMethodCallMessage msg); // 0x101D6AD0 + public virtual object GetArg(int argNum); // 0x101D6A00 + public virtual string GetArgName(int index); // 0x101D6980 + public virtual object GetInArg(int argNum); // 0x101D6A70 + public virtual string GetInArgName(int index); // 0x101D6A40 +} + +// Namespace: +private class DictionaryWrapper : MethodCallDictionary // TypeDefIndex: 1028 +{ + // Fields + private IDictionary _wrappedDictionary; // 0x18 + private static string[] _keys; // 0x00 + + // Methods + public void .ctor(IMethodMessage message, IDictionary wrappedDictionary); // 0x101D2430 + private static void .cctor(); // 0x101D2310 + protected override IDictionary AllocInternalProperties(); // 0x100EE580 + protected override void SetMethodProperty(string key, object value); // 0x101D2100 + protected override object GetMethodProperty(string key); // 0x101D1E70 +} + +// Namespace: System.Runtime.Remoting.Messaging +[Serializable] +internal class MethodDictionary : IEnumerable, ICollection, IDictionary // TypeDefIndex: 1029 +{ + // Fields + private IDictionary _internalProperties; // 0x08 + protected IMethodMessage _message; // 0x0C + private string[] _methodKeys; // 0x10 + private bool _ownProperties; // 0x14 + private static Dictionary`2 <>f__switch$map21; // 0x00 + private static Dictionary`2 <>f__switch$map22; // 0x04 + + // Properties + internal bool HasInternalProperties { get; } // 0x101D9800 + internal IDictionary InternalProperties { get; } // 0x101D98B0 + public string[] MethodKeys { get; set; } // 0x100BFC20 0x100C5B40 + public bool IsFixedSize { get; } // 0x100EFBF0 + public bool IsReadOnly { get; } // 0x100EFBF0 + public object Item { get; set; } // 0x101D9950 0x101D8C70 + public ICollection Keys { get; } // 0x101D9A70 + public ICollection Values { get; } // 0x101D9D40 + public int Count { get; } // 0x101D9790 + public bool IsSynchronized { get; } // 0x100EFBF0 + public object SyncRoot { get; } // 0x100F7810 + + // Methods + public void .ctor(IMethodMessage message); // 0x10158F90 + public void .ctor(string[] keys); // 0x101D9770 + private IEnumerator System.Collections.IEnumerable.GetEnumerator(); // 0x101D9720 + protected virtual IDictionary AllocInternalProperties(); // 0x101D8DB0 + public IDictionary GetInternalProperties(); // 0x101D9050 + private bool IsOverridenKey(string key); // 0x101D9360 + protected virtual object GetMethodProperty(string key); // 0x101D9080 + protected virtual void SetMethodProperty(string key, object value); // 0x101D9540 + public void Add(object key, object value); // 0x101D8C70 + public void Clear(); // 0x101D8E00 + public bool Contains(object key); // 0x101D8E40 + public void Remove(object key); // 0x101D9410 + public void CopyTo(Array array, int index); // 0x101D8F60 + public IDictionaryEnumerator GetEnumerator(); // 0x101D9000 +} + +// Namespace: +private class DictionaryEnumerator : IEnumerator, IDictionaryEnumerator // TypeDefIndex: 1030 +{ + // Fields + private MethodDictionary _methodDictionary; // 0x08 + private IDictionaryEnumerator _hashtableEnum; // 0x0C + private int _posMethod; // 0x10 + + // Properties + public object Current { get; } // 0x101D1BB0 + public DictionaryEntry Entry { get; } // 0x101D1BD0 + public object Key { get; } // 0x101D1D10 + public object Value { get; } // 0x101D1BB0 + + // Methods + public void .ctor(MethodDictionary methodDictionary); // 0x101D1B30 + public bool MoveNext(); // 0x101D1A00 + public void Reset(); // 0x101D1AE0 +} + +// Namespace: System.Runtime.Remoting.Messaging +[Serializable] +public class MethodResponse : ISerializable, IInternalMessage, IMessage, IMethodMessage, IMethodReturnMessage, ISerializationRootObject // TypeDefIndex: 1031 +{ + // Fields + private string _methodName; // 0x08 + private string _uri; // 0x0C + private string _typeName; // 0x10 + private MethodBase _methodBase; // 0x14 + private object _returnValue; // 0x18 + private Exception _exception; // 0x1C + private Type[] _methodSignature; // 0x20 + private ArgInfo _inArgInfo; // 0x24 + private object[] _args; // 0x28 + private object[] _outArgs; // 0x2C + private IMethodCallMessage _callMsg; // 0x30 + private LogicalCallContext _callContext; // 0x34 + private Identity _targetIdentity; // 0x38 + protected IDictionary ExternalProperties; // 0x3C + protected IDictionary InternalProperties; // 0x40 + private static Dictionary`2 <>f__switch$map25; // 0x00 + + // Properties + private string System.Runtime.Remoting.Messaging.IInternalMessage.Uri { get; set; } // 0x101DA860 0x100C5B50 + private Identity System.Runtime.Remoting.Messaging.IInternalMessage.TargetIdentity { get; set; } // 0x100EB210 0x100EB290 + public int ArgCount { get; } // 0x101DAB70 + public object[] Args { get; } // 0x100EB040 + public Exception Exception { get; } // 0x100F85F0 + public bool HasVarArgs { get; } // 0x101DAB90 + public LogicalCallContext LogicalCallContext { get; } // 0x101DABD0 + public MethodBase MethodBase { get; } // 0x101DAC20 + public string MethodName { get; } // 0x101DAD40 + public object MethodSignature { get; } // 0x101DAD90 + public int OutArgCount { get; } // 0x101DAE10 + public object[] OutArgs { get; } // 0x101DAE90 + public virtual IDictionary Properties { get; } // 0x101CE4A0 + public object ReturnValue { get; } // 0x100EE580 + public string TypeName { get; } // 0x101DAF20 + public string Uri { get; set; } // 0x101DA860 0x100C5B50 + + // Methods + public void .ctor(Header[] h1, IMethodCallMessage mcm); // 0x101CE370 + internal void .ctor(Exception e, IMethodCallMessage msg); // 0x101CE2D0 + internal void .ctor(object returnValue, object[] outArgs, LogicalCallContext callCtx, IMethodCallMessage msg); // 0x101DA8B0 + internal void .ctor(IMethodCallMessage msg, CADMethodReturnMessage retmsg); // 0x101DA920 + internal void .ctor(SerializationInfo info, StreamingContext context); // 0x101CE250 + internal void InitMethodProperty(string key, object value); // 0x101DA580 + public object GetArg(int argNum); // 0x101DA0D0 + public string GetArgName(int index); // 0x101DA060 + public virtual void GetObjectData(SerializationInfo info, StreamingContext context); // 0x101DA100 + public object GetOutArg(int argNum); // 0x101DA470 + public string GetOutArgName(int index); // 0x101DA3A0 + public virtual object HeaderHandler(Header[] h); // 0x101DA530 + public void RootSetObjectData(SerializationInfo info, StreamingContext ctx); // 0x101DA810 +} + +// Namespace: System.Runtime.Remoting.Messaging +internal class MethodReturnDictionary : MethodDictionary // TypeDefIndex: 1032 +{ + // Fields + public static string[] InternalReturnKeys; // 0x00 + public static string[] InternalExceptionKeys; // 0x04 + + // Methods + public void .ctor(IMethodReturnMessage message); // 0x101DB270 + private static void .cctor(); // 0x101DAF70 +} + +// Namespace: System.Runtime.Remoting.Messaging +public class MethodReturnMessageWrapper : InternalMessageWrapper, IMessage, IMethodMessage, IMethodReturnMessage // TypeDefIndex: 1033 +{ + // Fields + private object[] _args; // 0x0C + private ArgInfo _outArgInfo; // 0x10 + private DictionaryWrapper _properties; // 0x14 + private Exception _exception; // 0x18 + private object _return; // 0x1C + + // Properties + public virtual int ArgCount { get; } // 0x10129580 + public virtual object[] Args { get; set; } // 0x100C5B30 0x100C5B50 + public virtual Exception Exception { get; set; } // 0x100EE580 0x10113F40 + public virtual bool HasVarArgs { get; } // 0x101DB490 + public virtual LogicalCallContext LogicalCallContext { get; } // 0x101DB510 + public virtual MethodBase MethodBase { get; } // 0x101DB590 + public virtual string MethodName { get; } // 0x101DB610 + public virtual object MethodSignature { get; } // 0x101DB690 + public virtual int OutArgCount { get; } // 0x101DB710 + public virtual object[] OutArgs { get; } // 0x101DB730 + public virtual IDictionary Properties { get; } // 0x101DB750 + public virtual object ReturnValue { get; set; } // 0x100F85F0 0x10113F50 + public virtual string TypeName { get; } // 0x101DB840 + public string Uri { get; set; } // 0x101DB8C0 0x101DB940 + + // Methods + public void .ctor(IMethodReturnMessage msg); // 0x101DB3A0 + public virtual object GetArg(int argNum); // 0x101D6A00 + public virtual string GetArgName(int index); // 0x101DB320 + public virtual object GetOutArg(int argNum); // 0x101D6A70 + public virtual string GetOutArgName(int index); // 0x101D6A40 +} + +// Namespace: +private class DictionaryWrapper : MethodReturnDictionary // TypeDefIndex: 1034 +{ + // Fields + private IDictionary _wrappedDictionary; // 0x18 + private static string[] _keys; // 0x00 + + // Methods + public void .ctor(IMethodReturnMessage message, IDictionary wrappedDictionary); // 0x101D23A0 + private static void .cctor(); // 0x101D2230 + protected override IDictionary AllocInternalProperties(); // 0x100EE580 + protected override void SetMethodProperty(string key, object value); // 0x101D1F60 + protected override object GetMethodProperty(string key); // 0x101D1D20 +} + +// Namespace: System.Runtime.Remoting.Messaging +[Serializable] +internal class MonoMethodMessage : IInternalMessage, IMessage, IMethodCallMessage, IMethodMessage, IMethodReturnMessage // TypeDefIndex: 1035 +{ + // Fields + private MonoMethod method; // 0x08 + private object[] args; // 0x0C + private string[] names; // 0x10 + private byte[] arg_types; // 0x14 + public LogicalCallContext ctx; // 0x18 + public object rval; // 0x1C + public Exception exc; // 0x20 + private AsyncResult asyncResult; // 0x24 + private CallType call_type; // 0x28 + private string uri; // 0x2C + private MethodCallDictionary properties; // 0x30 + private Type[] methodSignature; // 0x34 + private Identity identity; // 0x38 + + // Properties + private Identity System.Runtime.Remoting.Messaging.IInternalMessage.TargetIdentity { get; set; } // 0x100EB210 0x100EB290 + public IDictionary Properties { get; } // 0x101DC3C0 + public int ArgCount { get; } // 0x101DBE70 + public object[] Args { get; } // 0x100C5B30 + public bool HasVarArgs { get; } // 0x100EFBF0 + public LogicalCallContext LogicalCallContext { get; set; } // 0x100EE580 0x10113F40 + public MethodBase MethodBase { get; } // 0x100BF0C0 + public string MethodName { get; } // 0x101DC0B0 + public object MethodSignature { get; } // 0x101DC120 + public string TypeName { get; } // 0x101DC410 + public string Uri { get; set; } // 0x100EB200 0x100EB260 + public int InArgCount { get; } // 0x101DBF10 + public object[] InArgs { get; } // 0x101DBF90 + public Exception Exception { get; } // 0x100EACD0 + public int OutArgCount { get; } // 0x101DC240 + public object[] OutArgs { get; } // 0x101DC2A0 + public object ReturnValue { get; } // 0x100F85F0 + public bool IsAsync { get; } // 0x1013F820 + public AsyncResult AsyncResult { get; } // 0x100EAD50 + internal CallType CallType { get; } // 0x101DBEA0 + + // Methods + public void .ctor(MethodBase method, object[] out_args); // 0x101DBDE0 + public void .ctor(Type type, string method_name, object[] in_args); // 0x101DBCB0 + internal void InitMessage(MonoMethod method, object[] out_args); // 0x101DBC10 + public object GetArg(int arg_num); // 0x101DBA20 + public string GetArgName(int arg_num); // 0x101DB9A0 + public object GetInArg(int arg_num); // 0x101DBAC0 + public string GetInArgName(int arg_num); // 0x101DBA50 + public object GetOutArg(int arg_num); // 0x101DBBA0 + public string GetOutArgName(int arg_num); // 0x101DBB30 + public bool NeedsOutProcessing(out int outCount); // 0x101DBC30 +} + +// Namespace: System.Runtime.Remoting.Messaging +internal enum CallType // TypeDefIndex: 1036 +{ + Sync = 0, + BeginInvoke = 1, + EndInvoke = 2, + OneWay = 3 +} + +// Namespace: System.Runtime.Remoting.Messaging +public class OneWayAttribute : Attribute // TypeDefIndex: 1037 +{ + // Methods + public void .ctor(); // 0x100C5970 +} + +// Namespace: System.Runtime.Remoting.Messaging +internal class RemotingSurrogate : ISerializationSurrogate // TypeDefIndex: 1038 +{ + // Methods + public void .ctor(); // 0x100BF000 + public virtual void GetObjectData(object obj, SerializationInfo si, StreamingContext sc); // 0x101DC8E0 + public virtual object SetObjectData(object obj, SerializationInfo si, StreamingContext sc, ISurrogateSelector selector); // 0x101DC9F0 +} + +// Namespace: System.Runtime.Remoting.Messaging +internal class ObjRefSurrogate : ISerializationSurrogate // TypeDefIndex: 1039 +{ + // Methods + public void .ctor(); // 0x100BF000 + public virtual void GetObjectData(object obj, SerializationInfo si, StreamingContext sc); // 0x101DC4A0 + public virtual object SetObjectData(object obj, SerializationInfo si, StreamingContext sc, ISurrogateSelector selector); // 0x101DC550 +} + +// Namespace: System.Runtime.Remoting.Messaging +public class RemotingSurrogateSelector : ISurrogateSelector // TypeDefIndex: 1040 +{ + // Fields + private static Type s_cachedTypeObjRef; // 0x00 + private static ObjRefSurrogate _objRefSurrogate; // 0x04 + private static RemotingSurrogate _objRemotingSurrogate; // 0x08 + private object _rootObj; // 0x08 + private MessageSurrogateFilter _filter; // 0x0C + private ISurrogateSelector _next; // 0x10 + + // Properties + public MessageSurrogateFilter Filter { get; set; } // 0x100C5B30 0x100C5B50 + + // Methods + public void .ctor(); // 0x100BF000 + private static void .cctor(); // 0x101DC840 + public virtual void ChainSelector(ISurrogateSelector selector); // 0x101DC5A0 + public virtual ISurrogateSelector GetNextSelector(); // 0x100BFC20 + public object GetRootObject(); // 0x100BF0C0 + public virtual ISerializationSurrogate GetSurrogate(Type type, StreamingContext context, out ISurrogateSelector ssout); // 0x101DC600 + public void SetRootObject(object obj); // 0x101DC790 + public virtual void UseSoapFormat(); // 0x101DC7F0 +} + +// Namespace: System.Runtime.Remoting.Messaging +public class ReturnMessage : IInternalMessage, IMessage, IMethodMessage, IMethodReturnMessage // TypeDefIndex: 1041 +{ + // Fields + private object[] _outArgs; // 0x08 + private object[] _args; // 0x0C + private int _outArgsCount; // 0x10 + private LogicalCallContext _callCtx; // 0x14 + private object _returnValue; // 0x18 + private string _uri; // 0x1C + private Exception _exception; // 0x20 + private MethodBase _methodBase; // 0x24 + private string _methodName; // 0x28 + private Type[] _methodSignature; // 0x2C + private string _typeName; // 0x30 + private MethodReturnDictionary _properties; // 0x34 + private Identity _targetIdentity; // 0x38 + private ArgInfo _inArgInfo; // 0x3C + + // Properties + private string System.Runtime.Remoting.Messaging.IInternalMessage.Uri { get; set; } // 0x100F85F0 0x10113F50 + private Identity System.Runtime.Remoting.Messaging.IInternalMessage.TargetIdentity { get; set; } // 0x100EB210 0x100EB290 + public int ArgCount { get; } // 0x10129580 + public object[] Args { get; } // 0x100C5B30 + public bool HasVarArgs { get; } // 0x101DD0B0 + public LogicalCallContext LogicalCallContext { get; } // 0x101DD0E0 + public MethodBase MethodBase { get; } // 0x100EAD50 + public string MethodName { get; } // 0x101DD130 + public object MethodSignature { get; } // 0x101DD170 + public virtual IDictionary Properties { get; } // 0x101DD390 + public string TypeName { get; } // 0x101DD3E0 + public string Uri { get; set; } // 0x100F85F0 0x10113F50 + public Exception Exception { get; } // 0x100EACD0 + public int OutArgCount { get; } // 0x101DD290 + public object[] OutArgs { get; } // 0x101DD310 + public virtual object ReturnValue { get; } // 0x100EE580 + + // Methods + public void .ctor(object ret, object[] outArgs, int outArgsCount, LogicalCallContext callCtx, IMethodCallMessage mcm); // 0x101DCF90 + public void .ctor(Exception e, IMethodCallMessage mcm); // 0x101DD030 + public object GetArg(int argNum); // 0x101D6A00 + public string GetArgName(int index); // 0x101DCDF0 + public object GetOutArg(int argNum); // 0x101DCEE0 + public string GetOutArgName(int index); // 0x101DCE60 +} + +// Namespace: System.Runtime.Remoting.Messaging +internal class ServerContextTerminatorSink : IMessageSink // TypeDefIndex: 1042 +{ + // Properties + public IMessageSink NextSink { get; } // 0x100C5600 + + // Methods + public void .ctor(); // 0x100BF000 + public IMessage SyncProcessMessage(IMessage msg); // 0x101DD500 + public IMessageCtrl AsyncProcessMessage(IMessage msg, IMessageSink replySink); // 0x101DD440 +} + +// Namespace: System.Runtime.Remoting.Messaging +internal class ServerObjectTerminatorSink : IMessageSink // TypeDefIndex: 1043 +{ + // Fields + private IMessageSink _nextSink; // 0x08 + + // Properties + public IMessageSink NextSink { get; } // 0x100BF0C0 + + // Methods + public void .ctor(IMessageSink nextSink); // 0x10113500 + public IMessage SyncProcessMessage(IMessage msg); // 0x10190CF0 + public IMessageCtrl AsyncProcessMessage(IMessage msg, IMessageSink replySink); // 0x10190BC0 +} + +// Namespace: System.Runtime.Remoting.Messaging +internal class ServerObjectReplySink : IMessageSink // TypeDefIndex: 1044 +{ + // Fields + private IMessageSink _replySink; // 0x08 + private ServerIdentity _identity; // 0x0C + + // Properties + public IMessageSink NextSink { get; } // 0x100BF0C0 + + // Methods + public void .ctor(ServerIdentity identity, IMessageSink replySink); // 0x1019CC50 + public IMessage SyncProcessMessage(IMessage msg); // 0x101DD660 + public IMessageCtrl AsyncProcessMessage(IMessage msg, IMessageSink replySink); // 0x101DD610 +} + +// Namespace: System.Runtime.Remoting.Messaging +internal class StackBuilderSink : IMessageSink // TypeDefIndex: 1045 +{ + // Fields + private MarshalByRefObject _target; // 0x08 + private RealProxy _rp; // 0x0C + + // Properties + public IMessageSink NextSink { get; } // 0x100C5600 + + // Methods + public void .ctor(MarshalByRefObject obj, bool forceInternalExecute); // 0x10198F60 + public IMessage SyncProcessMessage(IMessage msg); // 0x10198EA0 + public IMessageCtrl AsyncProcessMessage(IMessage msg, IMessageSink replySink); // 0x10198920 + private void ExecuteAsyncMessage(object ob); // 0x10198D40 + private void CheckParameters(IMessage msg); // 0x10198A20 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +public interface ISoapXsd // TypeDefIndex: 1046 +{ + // Methods + string GetXsdType(); +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapAnyUri : ISoapXsd // TypeDefIndex: 1047 +{ + // Fields + private string _value; // 0x08 + + // Properties + public string Value { get; set; } // 0x100BF0C0 0x100EB270 + public static string XsdType { get; } // 0x101912C0 + + // Methods + public void .ctor(); // 0x100BF000 + public void .ctor(string value); // 0x10113500 + public string GetXsdType(); // 0x101912C0 + public static SoapAnyUri Parse(string value); // 0x101912F0 + public override string ToString(); // 0x100BF0C0 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapBase64Binary : ISoapXsd // TypeDefIndex: 1048 +{ + // Fields + private byte[] _value; // 0x08 + + // Properties + public byte[] Value { get; set; } // 0x100BF0C0 0x100EB270 + public static string XsdType { get; } // 0x10191340 + + // Methods + public void .ctor(); // 0x100BF000 + public void .ctor(byte[] value); // 0x10113500 + public string GetXsdType(); // 0x10191340 + public static SoapBase64Binary Parse(string value); // 0x10191370 + public override string ToString(); // 0x101913E0 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapDate : ISoapXsd // TypeDefIndex: 1049 +{ + // Fields + private static readonly string[] _datetimeFormats; // 0x00 + private int _sign; // 0x08 + private DateTime _value; // 0x10 + + // Properties + public int Sign { get; set; } // 0x100BF0C0 0x100EB270 + public DateTime Value { get; set; } // 0x10168A30 0x101921F0 + public static string XsdType { get; } // 0x101921C0 + + // Methods + public void .ctor(); // 0x100BF000 + public void .ctor(DateTime value); // 0x10192170 + public void .ctor(DateTime value, int sign); // 0x10192190 + private static void .cctor(); // 0x10191F30 + public string GetXsdType(); // 0x10191D50 + public static SoapDate Parse(string value); // 0x10191DB0 + public override string ToString(); // 0x10191E90 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +public sealed class SoapDateTime // TypeDefIndex: 1050 +{ + // Fields + private static readonly string[] _datetimeFormats; // 0x00 + + // Properties + public static string XsdType { get; } // 0x10191D20 + + // Methods + public void .ctor(); // 0x100BF000 + private static void .cctor(); // 0x10191530 + public static DateTime Parse(string value); // 0x10191440 + public static string ToString(DateTime value); // 0x101914D0 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapDay : ISoapXsd // TypeDefIndex: 1051 +{ + // Fields + private static readonly string[] _datetimeFormats; // 0x00 + private DateTime _value; // 0x08 + + // Properties + public DateTime Value { get; set; } // 0x10192480 0x101924D0 + public static string XsdType { get; } // 0x101924A0 + + // Methods + public void .ctor(); // 0x100BF000 + public void .ctor(DateTime value); // 0x10192460 + private static void .cctor(); // 0x10192380 + public string GetXsdType(); // 0x10192200 + public static SoapDay Parse(string value); // 0x10192260 + public override string ToString(); // 0x10192310 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +public sealed class SoapDuration // TypeDefIndex: 1052 +{ + // Properties + public static string XsdType { get; } // 0x10192BE0 + + // Methods + public void .ctor(); // 0x100BF000 + public static TimeSpan Parse(string value); // 0x101924E0 + public static string ToString(TimeSpan timeSpan); // 0x101928D0 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapEntities : ISoapXsd // TypeDefIndex: 1053 +{ + // Fields + private string _value; // 0x08 + + // Properties + public string Value { get; set; } // 0x100BF0C0 0x100EB270 + public static string XsdType { get; } // 0x10192C10 + + // Methods + public void .ctor(); // 0x100BF000 + public void .ctor(string value); // 0x10113500 + public string GetXsdType(); // 0x10192C10 + public static SoapEntities Parse(string value); // 0x10192C40 + public override string ToString(); // 0x100BF0C0 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapEntity : ISoapXsd // TypeDefIndex: 1054 +{ + // Fields + private string _value; // 0x08 + + // Properties + public string Value { get; set; } // 0x100BF0C0 0x100EB270 + public static string XsdType { get; } // 0x10192C90 + + // Methods + public void .ctor(); // 0x100BF000 + public void .ctor(string value); // 0x10113500 + public string GetXsdType(); // 0x10192C90 + public static SoapEntity Parse(string value); // 0x10192CC0 + public override string ToString(); // 0x100BF0C0 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +internal class SoapHelper // TypeDefIndex: 1055 +{ + // Methods + public void .ctor(); // 0x100BF000 + public static Exception GetException(ISoapXsd type, string msg); // 0x10192DD0 + public static string Normalize(string s); // 0x100F7810 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapHexBinary : ISoapXsd // TypeDefIndex: 1056 +{ + // Fields + private byte[] _value; // 0x08 + private StringBuilder sb; // 0x0C + + // Properties + public byte[] Value { get; set; } // 0x100BF0C0 0x100EB270 + public static string XsdType { get; } // 0x10193250 + + // Methods + public void .ctor(); // 0x101933E0 + public void .ctor(byte[] value); // 0x10193440 + public string GetXsdType(); // 0x10193250 + public static SoapHexBinary Parse(string value); // 0x10193280 + internal static byte[] FromBinHexString(string value); // 0x10192FF0 + private static byte FromHex(char hexDigit, string value); // 0x10193140 + private static Exception CreateInvalidValueException(string value); // 0x10192E70 + public override string ToString(); // 0x10193310 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapId : ISoapXsd // TypeDefIndex: 1057 +{ + // Fields + private string _value; // 0x08 + + // Properties + public string Value { get; set; } // 0x100BF0C0 0x100EB270 + public static string XsdType { get; } // 0x101934A0 + + // Methods + public void .ctor(); // 0x100BF000 + public void .ctor(string value); // 0x10113500 + public string GetXsdType(); // 0x101934A0 + public static SoapId Parse(string value); // 0x101934D0 + public override string ToString(); // 0x100BF0C0 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapIdref : ISoapXsd // TypeDefIndex: 1058 +{ + // Fields + private string _value; // 0x08 + + // Properties + public string Value { get; set; } // 0x100BF0C0 0x100EB270 + public static string XsdType { get; } // 0x10193520 + + // Methods + public void .ctor(); // 0x100BF000 + public void .ctor(string value); // 0x10113500 + public string GetXsdType(); // 0x10193520 + public static SoapIdref Parse(string value); // 0x10193550 + public override string ToString(); // 0x100BF0C0 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapIdrefs : ISoapXsd // TypeDefIndex: 1059 +{ + // Fields + private string _value; // 0x08 + + // Properties + public string Value { get; set; } // 0x100BF0C0 0x100EB270 + public static string XsdType { get; } // 0x101935A0 + + // Methods + public void .ctor(); // 0x100BF000 + public void .ctor(string value); // 0x10113500 + public string GetXsdType(); // 0x101935A0 + public static SoapIdrefs Parse(string value); // 0x101935D0 + public override string ToString(); // 0x100BF0C0 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapInteger : ISoapXsd // TypeDefIndex: 1060 +{ + // Fields + private Decimal _value; // 0x08 + + // Properties + public Decimal Value { get; set; } // 0x10192480 0x101924D0 + public static string XsdType { get; } // 0x10193620 + + // Methods + public void .ctor(); // 0x100BF000 + public void .ctor(Decimal value); // 0x10192460 + public string GetXsdType(); // 0x10193620 + public static SoapInteger Parse(string value); // 0x10193650 + public override string ToString(); // 0x101936D0 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapLanguage : ISoapXsd // TypeDefIndex: 1061 +{ + // Fields + private string _value; // 0x08 + + // Properties + public string Value { get; set; } // 0x100BF0C0 0x100EB270 + public static string XsdType { get; } // 0x101936F0 + + // Methods + public void .ctor(); // 0x100BF000 + public void .ctor(string value); // 0x10113500 + public string GetXsdType(); // 0x101936F0 + public static SoapLanguage Parse(string value); // 0x10193720 + public override string ToString(); // 0x100BF0C0 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapMonth : ISoapXsd // TypeDefIndex: 1062 +{ + // Fields + private static readonly string[] _datetimeFormats; // 0x00 + private DateTime _value; // 0x08 + + // Properties + public DateTime Value { get; set; } // 0x10192480 0x101924D0 + public static string XsdType { get; } // 0x10193ED0 + + // Methods + public void .ctor(); // 0x100BF000 + public void .ctor(DateTime value); // 0x10192460 + private static void .cctor(); // 0x10193DF0 + public string GetXsdType(); // 0x10193C70 + public static SoapMonth Parse(string value); // 0x10193CD0 + public override string ToString(); // 0x10193D80 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapMonthDay : ISoapXsd // TypeDefIndex: 1063 +{ + // Fields + private static readonly string[] _datetimeFormats; // 0x00 + private DateTime _value; // 0x08 + + // Properties + public DateTime Value { get; set; } // 0x10192480 0x101924D0 + public static string XsdType { get; } // 0x10193C40 + + // Methods + public void .ctor(); // 0x100BF000 + public void .ctor(DateTime value); // 0x10192460 + private static void .cctor(); // 0x10193B60 + public string GetXsdType(); // 0x101939E0 + public static SoapMonthDay Parse(string value); // 0x10193A40 + public override string ToString(); // 0x10193AF0 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapName : ISoapXsd // TypeDefIndex: 1064 +{ + // Fields + private string _value; // 0x08 + + // Properties + public string Value { get; set; } // 0x100BF0C0 0x100EB270 + public static string XsdType { get; } // 0x10193F00 + + // Methods + public void .ctor(); // 0x100BF000 + public void .ctor(string value); // 0x10113500 + public string GetXsdType(); // 0x10193F00 + public static SoapName Parse(string value); // 0x10193F30 + public override string ToString(); // 0x100BF0C0 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapNcName : ISoapXsd // TypeDefIndex: 1065 +{ + // Fields + private string _value; // 0x08 + + // Properties + public string Value { get; set; } // 0x100BF0C0 0x100EB270 + public static string XsdType { get; } // 0x10193F80 + + // Methods + public void .ctor(); // 0x100BF000 + public void .ctor(string value); // 0x10113500 + public string GetXsdType(); // 0x10193F80 + public static SoapNcName Parse(string value); // 0x10193FB0 + public override string ToString(); // 0x100BF0C0 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapNegativeInteger : ISoapXsd // TypeDefIndex: 1066 +{ + // Fields + private Decimal _value; // 0x08 + + // Properties + public Decimal Value { get; set; } // 0x10192480 0x101924D0 + public static string XsdType { get; } // 0x10194000 + + // Methods + public void .ctor(); // 0x100BF000 + public void .ctor(Decimal value); // 0x10194190 + public string GetXsdType(); // 0x10194000 + public static SoapNegativeInteger Parse(string value); // 0x10194030 + public override string ToString(); // 0x101936D0 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapNmtoken : ISoapXsd // TypeDefIndex: 1067 +{ + // Fields + private string _value; // 0x08 + + // Properties + public string Value { get; set; } // 0x100BF0C0 0x100EB270 + public static string XsdType { get; } // 0x10194290 + + // Methods + public void .ctor(); // 0x100BF000 + public void .ctor(string value); // 0x10113500 + public string GetXsdType(); // 0x10194290 + public static SoapNmtoken Parse(string value); // 0x101942C0 + public override string ToString(); // 0x100BF0C0 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapNmtokens : ISoapXsd // TypeDefIndex: 1068 +{ + // Fields + private string _value; // 0x08 + + // Properties + public string Value { get; set; } // 0x100BF0C0 0x100EB270 + public static string XsdType { get; } // 0x10194310 + + // Methods + public void .ctor(); // 0x100BF000 + public void .ctor(string value); // 0x10113500 + public string GetXsdType(); // 0x10194310 + public static SoapNmtokens Parse(string value); // 0x10194340 + public override string ToString(); // 0x100BF0C0 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapNonNegativeInteger : ISoapXsd // TypeDefIndex: 1069 +{ + // Fields + private Decimal _value; // 0x08 + + // Properties + public Decimal Value { get; set; } // 0x10192480 0x101924D0 + public static string XsdType { get; } // 0x10194390 + + // Methods + public void .ctor(); // 0x100BF000 + public void .ctor(Decimal value); // 0x10194520 + public string GetXsdType(); // 0x10194390 + public static SoapNonNegativeInteger Parse(string value); // 0x101943C0 + public override string ToString(); // 0x101936D0 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapNonPositiveInteger : ISoapXsd // TypeDefIndex: 1070 +{ + // Fields + private Decimal _value; // 0x08 + + // Properties + public Decimal Value { get; set; } // 0x10192480 0x101924D0 + public static string XsdType { get; } // 0x10194620 + + // Methods + public void .ctor(); // 0x100BF000 + public void .ctor(Decimal value); // 0x101947B0 + public string GetXsdType(); // 0x10194620 + public static SoapNonPositiveInteger Parse(string value); // 0x10194650 + public override string ToString(); // 0x101936D0 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapNormalizedString : ISoapXsd // TypeDefIndex: 1071 +{ + // Fields + private string _value; // 0x08 + + // Properties + public string Value { get; set; } // 0x100BF0C0 0x100EB270 + public static string XsdType { get; } // 0x101948B0 + + // Methods + public void .ctor(); // 0x100BF000 + public void .ctor(string value); // 0x10113500 + public string GetXsdType(); // 0x101948B0 + public static SoapNormalizedString Parse(string value); // 0x101948E0 + public override string ToString(); // 0x100BF0C0 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapNotation : ISoapXsd // TypeDefIndex: 1072 +{ + // Fields + private string _value; // 0x08 + + // Properties + public string Value { get; set; } // 0x100BF0C0 0x100EB270 + public static string XsdType { get; } // 0x10194930 + + // Methods + public void .ctor(); // 0x100BF000 + public void .ctor(string value); // 0x10113500 + public string GetXsdType(); // 0x10194930 + public static SoapNotation Parse(string value); // 0x10194960 + public override string ToString(); // 0x100BF0C0 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapPositiveInteger : ISoapXsd // TypeDefIndex: 1073 +{ + // Fields + private Decimal _value; // 0x08 + + // Properties + public Decimal Value { get; set; } // 0x10192480 0x101924D0 + public static string XsdType { get; } // 0x101949B0 + + // Methods + public void .ctor(); // 0x100BF000 + public void .ctor(Decimal value); // 0x10194B40 + public string GetXsdType(); // 0x101949B0 + public static SoapPositiveInteger Parse(string value); // 0x101949E0 + public override string ToString(); // 0x101936D0 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapQName : ISoapXsd // TypeDefIndex: 1074 +{ + // Fields + private string _name; // 0x08 + private string _key; // 0x0C + private string _namespace; // 0x10 + + // Properties + public string Key { get; set; } // 0x100C5B30 0x100C5B50 + public string Name { get; set; } // 0x100BF0C0 0x100EB270 + public string Namespace { get; set; } // 0x100BFC20 0x100C5B40 + public static string XsdType { get; } // 0x10194C40 + + // Methods + public void .ctor(); // 0x100BF000 + public void .ctor(string value); // 0x10113500 + public void .ctor(string key, string name); // 0x10194DC0 + public void .ctor(string key, string name, string namespaceValue); // 0x10194DF0 + public string GetXsdType(); // 0x10194C40 + public static SoapQName Parse(string value); // 0x10194C70 + public override string ToString(); // 0x10194D10 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapTime : ISoapXsd // TypeDefIndex: 1075 +{ + // Fields + private static readonly string[] _datetimeFormats; // 0x00 + private DateTime _value; // 0x08 + + // Properties + public DateTime Value { get; set; } // 0x10192480 0x101924D0 + public static string XsdType { get; } // 0x10197D30 + + // Methods + public void .ctor(); // 0x100BF000 + public void .ctor(DateTime value); // 0x10192460 + private static void .cctor(); // 0x10197540 + public string GetXsdType(); // 0x101973C0 + public static SoapTime Parse(string value); // 0x10197420 + public override string ToString(); // 0x101974D0 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapToken : ISoapXsd // TypeDefIndex: 1076 +{ + // Fields + private string _value; // 0x08 + + // Properties + public string Value { get; set; } // 0x100BF0C0 0x100EB270 + public static string XsdType { get; } // 0x10197D60 + + // Methods + public void .ctor(); // 0x100BF000 + public void .ctor(string value); // 0x10113500 + public string GetXsdType(); // 0x10197D60 + public static SoapToken Parse(string value); // 0x10197D90 + public override string ToString(); // 0x100BF0C0 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapYear : ISoapXsd // TypeDefIndex: 1077 +{ + // Fields + private static readonly string[] _datetimeFormats; // 0x00 + private int _sign; // 0x08 + private DateTime _value; // 0x10 + + // Properties + public int Sign { get; set; } // 0x100BF0C0 0x100EB270 + public DateTime Value { get; set; } // 0x10168A30 0x101921F0 + public static string XsdType { get; } // 0x101988F0 + + // Methods + public void .ctor(); // 0x100BF000 + public void .ctor(DateTime value); // 0x10192170 + public void .ctor(DateTime value, int sign); // 0x10192190 + private static void .cctor(); // 0x101986B0 + public string GetXsdType(); // 0x101984D0 + public static SoapYear Parse(string value); // 0x10198530 + public override string ToString(); // 0x10198610 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapYearMonth : ISoapXsd // TypeDefIndex: 1078 +{ + // Fields + private static readonly string[] _datetimeFormats; // 0x00 + private int _sign; // 0x08 + private DateTime _value; // 0x10 + + // Properties + public int Sign { get; set; } // 0x100BF0C0 0x100EB270 + public DateTime Value { get; set; } // 0x10168A30 0x101921F0 + public static string XsdType { get; } // 0x101984A0 + + // Methods + public void .ctor(); // 0x100BF000 + public void .ctor(DateTime value); // 0x10192170 + public void .ctor(DateTime value, int sign); // 0x10192190 + private static void .cctor(); // 0x10198260 + public string GetXsdType(); // 0x10198080 + public static SoapYearMonth Parse(string value); // 0x101980E0 + public override string ToString(); // 0x101981C0 +} + +// Namespace: System.Runtime.Remoting.Metadata +public class SoapAttribute : Attribute // TypeDefIndex: 1079 +{ + // Fields + private bool _nested; // 0x08 + private bool _useAttribute; // 0x09 + protected string ProtXmlNamespace; // 0x0C + protected object ReflectInfo; // 0x10 + + // Properties + public virtual bool Embedded { get; set; } // 0x100EA020 0x10155000 + public virtual bool UseAttribute { get; set; } // 0x10117290 0x10155020 + public virtual string XmlNamespace { get; set; } // 0x100C5B30 0x100C5B50 + + // Methods + public void .ctor(); // 0x100C5970 + internal virtual void SetReflectionObject(object reflectionObject); // 0x100C5B40 +} + +// Namespace: System.Runtime.Remoting.Metadata +public sealed class SoapFieldAttribute : SoapAttribute // TypeDefIndex: 1080 +{ + // Fields + private int _order; // 0x14 + private string _elementName; // 0x18 + private bool _isElement; // 0x1C + + // Properties + public int Order { get; set; } // 0x100EF0C0 0x10127B00 + public string XmlElementName { get; set; } // 0x100EE580 0x10192DB0 + + // Methods + public void .ctor(); // 0x100C5970 + public bool IsInteropXmlElement(); // 0x10172890 + internal override void SetReflectionObject(object reflectionObject); // 0x10192D10 +} + +// Namespace: System.Runtime.Remoting.Metadata +public sealed class SoapMethodAttribute : SoapAttribute // TypeDefIndex: 1081 +{ + // Fields + private string _responseElement; // 0x14 + private string _responseNamespace; // 0x18 + private string _returnElement; // 0x1C + private string _soapAction; // 0x20 + private bool _useAttribute; // 0x24 + private string _namespace; // 0x28 + + // Properties + public string ResponseXmlElementName { get; set; } // 0x100EF0C0 0x10127B00 + public string ResponseXmlNamespace { get; set; } // 0x100EE580 0x10113F40 + public string ReturnXmlElementName { get; set; } // 0x100F85F0 0x10113F50 + public string SoapAction { get; set; } // 0x100EACD0 0x100EB230 + public override bool UseAttribute { get; set; } // 0x101939C0 0x101939D0 + public override string XmlNamespace { get; set; } // 0x100EB040 0x100EB250 + + // Methods + public void .ctor(); // 0x100C5970 + internal override void SetReflectionObject(object reflectionObject); // 0x10193770 +} + +// Namespace: System.Runtime.Remoting.Metadata +[Serializable] +public enum SoapOption // TypeDefIndex: 1082 +{ + None = 0, + AlwaysIncludeTypes = 1, + XsdString = 2, + EmbedAll = 4, + Option1 = 8, + Option2 = 16 +} + +// Namespace: System.Runtime.Remoting.Metadata +public sealed class SoapParameterAttribute : SoapAttribute // TypeDefIndex: 1083 +{ + // Methods + public void .ctor(); // 0x100C5970 +} + +// Namespace: System.Runtime.Remoting.Metadata +public sealed class SoapTypeAttribute : SoapAttribute // TypeDefIndex: 1084 +{ + // Fields + private SoapOption _soapOption; // 0x14 + private bool _useAttribute; // 0x18 + private string _xmlElementName; // 0x1C + private XmlFieldOrderOption _xmlFieldOrder; // 0x20 + private string _xmlNamespace; // 0x24 + private string _xmlTypeName; // 0x28 + private string _xmlTypeNamespace; // 0x2C + private bool _isType; // 0x30 + private bool _isElement; // 0x31 + + // Properties + public SoapOption SoapOptions { get; set; } // 0x100EF0C0 0x10127B00 + public override bool UseAttribute { get; set; } // 0x1010C980 0x10197FF0 + public string XmlElementName { get; set; } // 0x100F85F0 0x10198000 + public XmlFieldOrderOption XmlFieldOrder { get; set; } // 0x100EACD0 0x100EB230 + public override string XmlNamespace { get; set; } // 0x100EAD50 0x10198020 + public string XmlTypeName { get; set; } // 0x100EB040 0x10198040 + public string XmlTypeNamespace { get; set; } // 0x100EB200 0x10198060 + internal bool IsInteropXmlElement { get; } // 0x10197FE0 + internal bool IsInteropXmlType { get; } // 0x100EF0D0 + + // Methods + public void .ctor(); // 0x100C5970 + internal override void SetReflectionObject(object reflectionObject); // 0x10197DE0 +} + +// Namespace: System.Runtime.Remoting.Metadata +[Serializable] +public enum XmlFieldOrderOption // TypeDefIndex: 1085 +{ + All = 0, + Sequence = 1, + Choice = 2 +} + +// Namespace: System.Runtime.Remoting.Proxies +public class ProxyAttribute : Attribute, IContextAttribute // TypeDefIndex: 1086 +{ + // Methods + public void .ctor(); // 0x100C5970 + public virtual MarshalByRefObject CreateInstance(Type serverType); // 0x10186830 + public virtual RealProxy CreateProxy(ObjRef objRef, Type serverType, object serverObject, Context serverContext); // 0x10186930 + public void GetPropertiesForNewContext(IConstructionCallMessage msg); // 0x100C5530 + public bool IsContextOK(Context ctx, IConstructionCallMessage msg); // 0x100E5880 +} + +// Namespace: System.Runtime.Remoting.Proxies +internal class TransparentProxy // TypeDefIndex: 1087 +{ + // Fields + public RealProxy _rp; // 0x08 + private IntPtr _class; // 0x0C + private bool _custom_type_info; // 0x10 + + // Methods + public void .ctor(); // 0x100BF000 +} + +// Namespace: System.Runtime.Remoting.Proxies +public abstract class RealProxy // TypeDefIndex: 1088 +{ + // Fields + private Type class_to_proxy; // 0x08 + internal Context _targetContext; // 0x0C + private MarshalByRefObject _server; // 0x10 + private int _targetDomainId; // 0x14 + internal string _targetUri; // 0x18 + internal Identity _objectIdentity; // 0x1C + private object _objTP; // 0x20 + private object _stubData; // 0x24 + + // Properties + internal Identity ObjectIdentity { get; set; } // 0x100F85F0 0x10113F50 + + // Methods + protected void .ctor(); // 0x10187B70 + protected void .ctor(Type classToProxy); // 0x10187CB0 + internal void .ctor(Type classToProxy, ClientIdentity identity); // 0x10187C70 + protected void .ctor(Type classToProxy, IntPtr stub, object stubData); // 0x10187B90 + private static Type InternalGetProxyType(object transparentProxy); // 0x10186F70 + public Type GetProxiedType(); // 0x10186D50 + public virtual ObjRef CreateObjRef(Type requestedType); // 0x10186990 + public virtual void GetObjectData(SerializationInfo info, StreamingContext context); // 0x10186BC0 + public virtual IntPtr GetCOMIUnknown(bool fIsMarshalled); // 0x10186B70 + public virtual void SetCOMIUnknown(IntPtr i); // 0x10187AB0 + public virtual IntPtr SupportsInterface(Guid iid); // 0x10187B20 + public static object GetStubData(RealProxy rp); // 0x10186DE0 + public static void SetStubData(RealProxy rp, object stubData); // 0x10187B00 + public abstract IMessage Invoke(IMessage msg); + internal static object PrivateInvoke(RealProxy rp, IMessage msg, out Exception exc, out object[] out_args); // 0x10186FA0 + internal virtual object InternalGetTransparentProxy(string className); // 0x10186F80 + public virtual object GetTransparentProxy(); // 0x10186E00 + public IConstructionReturnMessage InitializeServerObject(IConstructionCallMessage ctorMsg); // 0x10186F20 + protected void AttachServer(MarshalByRefObject s); // 0x100C5B40 + protected MarshalByRefObject DetachServer(); // 0x10186A50 + protected MarshalByRefObject GetUnwrappedServer(); // 0x100BFC20 + internal void SetTargetDomain(int domainId); // 0x10127B00 + internal object GetAppDomainTarget(); // 0x10186A70 + private static object[] ProcessResponse(IMethodReturnMessage mrm, MonoMethodMessage call); // 0x10187630 +} + +// Namespace: System.Runtime.Remoting.Proxies +internal class RemotingProxy : RealProxy, IRemotingTypeInfo // TypeDefIndex: 1089 +{ + // Fields + private static MethodInfo _cache_GetTypeMethod; // 0x00 + private static MethodInfo _cache_GetHashCodeMethod; // 0x04 + private IMessageSink _sink; // 0x28 + private bool _hasEnvoySink; // 0x2C + private ConstructionCall _ctorCall; // 0x30 + + // Properties + public string TypeName { get; set; } // 0x1018B960 0x1018BA60 + + // Methods + internal void .ctor(Type type, ClientIdentity identity); // 0x1018B890 + internal void .ctor(Type type, string activationUrl, object[] activationAttributes); // 0x1018B900 + private static void .cctor(); // 0x1018B7E0 + public override IMessage Invoke(IMessage request); // 0x1018B420 + internal void AttachIdentity(Identity identity); // 0x1018AE20 + internal IMessage ActivateRemoteObject(IMethodMessage request); // 0x1018AD80 + public bool CanCastTo(Type fromType, object o); // 0x1018B110 + protected override void Finalize(); // 0x1018B2F0 +} + +// Namespace: System.Runtime.Remoting.Services +public sealed class EnterpriseServicesHelper // TypeDefIndex: 1090 +{ + // Methods + public void .ctor(); // 0x100BF000 + public static IConstructionReturnMessage CreateConstructionReturnMessage(IConstructionCallMessage ctorMsg, MarshalByRefObject retObj); // 0x10183700 + public static void SwitchWrappers(RealProxy oldcp, RealProxy newcp); // 0x10183750 + public static object WrapIUnknownWithComObject(IntPtr punk); // 0x101837A0 +} + +// Namespace: System.Runtime.Remoting.Services +public interface ITrackingHandler // TypeDefIndex: 1091 +{ + // Methods + void DisconnectedObject(object obj); + void MarshaledObject(object obj, ObjRef or); + void UnmarshaledObject(object obj, ObjRef or); +} + +// Namespace: System.Runtime.Remoting.Services +public class TrackingServices // TypeDefIndex: 1092 +{ + // Fields + private static ArrayList _handlers; // 0x00 + + // Properties + public static ITrackingHandler[] RegisteredHandlers { get; } // 0x10199D30 + + // Methods + public void .ctor(); // 0x100BF000 + private static void .cctor(); // 0x10199CE0 + public static void RegisterTrackingHandler(ITrackingHandler handler); // 0x101998C0 + public static void UnregisterTrackingHandler(ITrackingHandler handler); // 0x10199AD0 + internal static void NotifyMarshaledObject(object obj, ObjRef or); // 0x101992E0 + internal static void NotifyUnmarshaledObject(object obj, ObjRef or); // 0x101995D0 + internal static void NotifyDisconnectedObject(object obj); // 0x10199000 +} + +// Namespace: System.Runtime.Remoting +public class ActivatedClientTypeEntry : TypeEntry // TypeDefIndex: 1093 +{ + // Fields + private string applicationUrl; // 0x10 + private Type obj_type; // 0x14 + + // Properties + public string ApplicationUrl { get; } // 0x100BFC20 + public IContextAttribute[] ContextAttributes { get; set; } // 0x100C5600 0x100C5530 + public Type ObjectType { get; } // 0x100EF0C0 + + // Methods + public void .ctor(Type type, string appUrl); // 0x1019AB20 + public void .ctor(string typeName, string assemblyName, string appUrl); // 0x1019ABA0 + public override string ToString(); // 0x1019AAC0 +} + +// Namespace: System.Runtime.Remoting +public class ActivatedServiceTypeEntry : TypeEntry // TypeDefIndex: 1094 +{ + // Fields + private Type obj_type; // 0x10 + + // Properties + public IContextAttribute[] ContextAttributes { get; set; } // 0x100C5600 0x100C5530 + public Type ObjectType { get; } // 0x100BFC20 + + // Methods + public void .ctor(Type type); // 0x1019ADB0 + public void .ctor(string typeName, string assemblyName); // 0x1019ACE0 + public override string ToString(); // 0x1019AC80 +} + +// Namespace: System.Runtime.Remoting +public enum CustomErrorsModes // TypeDefIndex: 1095 +{ + On = 0, + Off = 1, + RemoteOnly = 2 +} + +// Namespace: System.Runtime.Remoting +[Serializable] +internal class EnvoyInfo : IEnvoyInfo // TypeDefIndex: 1096 +{ + // Fields + private IMessageSink envoySinks; // 0x08 + + // Properties + public IMessageSink EnvoySinks { get; set; } // 0x100BF0C0 0x100EB270 + + // Methods + public void .ctor(IMessageSink sinks); // 0x10113500 +} + +// Namespace: System.Runtime.Remoting +public interface IChannelInfo // TypeDefIndex: 1097 +{ + // Properties + object[] ChannelData { get; set; } + +} + +// Namespace: System.Runtime.Remoting +public interface IEnvoyInfo // TypeDefIndex: 1098 +{ + // Properties + IMessageSink EnvoySinks { get; set; } + +} + +// Namespace: System.Runtime.Remoting +public interface IObjectHandle // TypeDefIndex: 1099 +{ + // Methods + object Unwrap(); +} + +// Namespace: System.Runtime.Remoting +public interface IRemotingTypeInfo // TypeDefIndex: 1100 +{ + // Properties + string TypeName { get; set; } + + // Methods + bool CanCastTo(Type fromType, object o); +} + +// Namespace: System.Runtime.Remoting +internal abstract class Identity // TypeDefIndex: 1101 +{ + // Fields + protected string _objectUri; // 0x08 + protected IMessageSink _channelSink; // 0x0C + protected IMessageSink _envoySink; // 0x10 + private DynamicPropertyCollection _clientDynamicProperties; // 0x14 + private DynamicPropertyCollection _serverDynamicProperties; // 0x18 + protected ObjRef _objRef; // 0x1C + private bool _disposed; // 0x20 + + // Properties + public bool IsFromThisAppDomain { get; } // 0x101D0E10 + public IMessageSink ChannelSink { get; set; } // 0x100C5B30 0x100C5B50 + public IMessageSink EnvoySink { get; } // 0x100BFC20 + public string ObjectUri { get; set; } // 0x100BF0C0 0x100EB270 + public bool IsConnected { get; } // 0x101253D0 + public bool Disposed { get; set; } // 0x101B94D0 0x101D3670 + public DynamicPropertyCollection ClientDynamicProperties { get; } // 0x101D3530 + public DynamicPropertyCollection ServerDynamicProperties { get; } // 0x101D3620 + public bool HasClientDynamicSinks { get; } // 0x101D3580 + public bool HasServerDynamicSinks { get; } // 0x101D35D0 + + // Methods + public void .ctor(string objectUri); // 0x10113500 + public abstract ObjRef CreateObjRef(Type requestedType); + public void NotifyClientDynamicSinks(bool start, IMessage req_msg, bool client_site, bool async); // 0x101D3490 + public void NotifyServerDynamicSinks(bool start, IMessage req_msg, bool client_site, bool async); // 0x101D34E0 +} + +// Namespace: System.Runtime.Remoting +internal class ClientIdentity : Identity // TypeDefIndex: 1102 +{ + // Fields + private WeakReference _proxyReference; // 0x24 + + // Properties + public MarshalByRefObject ClientProxy { get; set; } // 0x101A18E0 0x101A19A0 + public string TargetUri { get; } // 0x101A1970 + + // Methods + public void .ctor(string objectUri, ObjRef objRef); // 0x101A1840 + public override ObjRef CreateObjRef(Type requestedType); // 0x100F85F0 +} + +// Namespace: System.Runtime.Remoting +public class InternalRemotingServices // TypeDefIndex: 1103 +{ + // Fields + private static Hashtable _soapAttributes; // 0x00 + + // Methods + public void .ctor(); // 0x100BF000 + private static void .cctor(); // 0x101D3C20 + public static void DebugOutChnl(string s); // 0x101D3680 + public static SoapAttribute GetCachedSoapAttribute(object reflectionObject); // 0x101D36D0 + public static void RemotingAssert(bool condition, string message); // 0x101D3AC0 + public static void RemotingTrace(object[] messages); // 0x101D3B10 + public static void SetServerIdentity(MethodCall m, object srvID); // 0x101D3B60 +} + +// Namespace: System.Runtime.Remoting +[Serializable] +public class ObjRef : ISerializable, IObjectReference // TypeDefIndex: 1104 +{ + // Fields + private IChannelInfo channel_info; // 0x08 + private string uri; // 0x0C + private IRemotingTypeInfo typeInfo; // 0x10 + private IEnvoyInfo envoyInfo; // 0x14 + private int flags; // 0x18 + private Type _serverType; // 0x1C + private static int MarshalledObjectRef; // 0x00 + private static int WellKnowObjectRef; // 0x04 + private static Dictionary`2 <>f__switch$map26; // 0x08 + + // Properties + internal bool IsReferenceToWellKnow { get; } // 0x101861B0 + public virtual IChannelInfo ChannelInfo { get; set; } // 0x100BF0C0 0x100EB270 + public virtual IEnvoyInfo EnvoyInfo { get; set; } // 0x100EF0C0 0x10127B00 + public virtual IRemotingTypeInfo TypeInfo { get; set; } // 0x100BFC20 0x100C5B40 + public virtual string URI { get; set; } // 0x100C5B30 0x100C5B50 + internal Type ServerType { get; } // 0x10186210 + + // Methods + public void .ctor(); // 0x10185CE0 + internal void .ctor(string typeName, string uri, IChannelInfo cinfo); // 0x10185FB0 + internal void .ctor(ObjRef o, bool unmarshalAsProxy); // 0x10186060 + public void .ctor(MarshalByRefObject o, Type requestedType); // 0x10185D30 + internal void .ctor(Type type, string url, object remoteChannelData); // 0x10186100 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x10185930 + private static void .cctor(); // 0x101858F0 + internal bool IsPossibleToCAD(); // 0x100EFBF0 + public virtual void GetObjectData(SerializationInfo info, StreamingContext context); // 0x10185510 + public virtual object GetRealObject(StreamingContext context); // 0x10185610 + public bool IsFromThisAppDomain(); // 0x101856E0 + public bool IsFromThisProcess(); // 0x10185750 + internal void UpdateChannelInfo(); // 0x101858A0 +} + +// Namespace: System.Runtime.Remoting +public class ObjectHandle : MarshalByRefObject, IObjectHandle // TypeDefIndex: 1105 +{ + // Fields + private object _wrapped; // 0x0C + + // Methods + public void .ctor(object o); // 0x101862C0 + public override object InitializeLifetimeService(); // 0x101862B0 + public object Unwrap(); // 0x100C5B30 +} + +// Namespace: System.Runtime.Remoting +public static class RemotingConfiguration // TypeDefIndex: 1106 +{ + // Fields + private static string applicationID; // 0x00 + private static string applicationName; // 0x04 + private static string processGuid; // 0x08 + private static bool defaultConfigRead; // 0x0C + private static bool defaultDelayedConfigRead; // 0x0D + private static string _errorMode; // 0x10 + private static Hashtable wellKnownClientEntries; // 0x14 + private static Hashtable activatedClientEntries; // 0x18 + private static Hashtable wellKnownServiceEntries; // 0x1C + private static Hashtable activatedServiceEntries; // 0x20 + private static Hashtable channelTemplates; // 0x24 + private static Hashtable clientProviderTemplates; // 0x28 + private static Hashtable serverProviderTemplates; // 0x2C + + // Properties + public static string ApplicationId { get; } // 0x1018AAD0 + public static string ApplicationName { get; set; } // 0x1018AB70 0x1018ACD0 + public static CustomErrorsModes CustomErrorsMode { get; set; } // 0x1018ABC0 0x1018AD30 + public static string ProcessId { get; } // 0x1018AC10 + + // Methods + private static void .cctor(); // 0x1018A970 + public static void Configure(string filename, bool ensureSecurity); // 0x10187CF0 + public static void Configure(string filename); // 0x10187EA0 + private static void ReadConfigFile(string filename); // 0x10188F70 + internal static void LoadDefaultDelayedChannels(); // 0x10188CE0 + public static ActivatedClientTypeEntry[] GetRegisteredActivatedClientTypes(); // 0x10187FF0 + public static ActivatedServiceTypeEntry[] GetRegisteredActivatedServiceTypes(); // 0x101881B0 + public static WellKnownClientTypeEntry[] GetRegisteredWellKnownClientTypes(); // 0x10188370 + public static WellKnownServiceTypeEntry[] GetRegisteredWellKnownServiceTypes(); // 0x10188530 + public static bool IsActivationAllowed(Type svrType); // 0x101886F0 + public static ActivatedClientTypeEntry IsRemotelyActivatedClientType(Type svrType); // 0x101888F0 + public static ActivatedClientTypeEntry IsRemotelyActivatedClientType(string typeName, string assemblyName); // 0x10188860 + public static WellKnownClientTypeEntry IsWellKnownClientType(Type svrType); // 0x10188AA0 + public static WellKnownClientTypeEntry IsWellKnownClientType(string typeName, string assemblyName); // 0x10188C50 + public static void RegisterActivatedClientType(ActivatedClientTypeEntry entry); // 0x10189240 + public static void RegisterActivatedClientType(Type type, string appUrl); // 0x10189180 + public static void RegisterActivatedServiceType(ActivatedServiceTypeEntry entry); // 0x10189550 + public static void RegisterActivatedServiceType(Type type); // 0x101894E0 + public static void RegisterWellKnownClientType(Type type, string objectUrl); // 0x1018A460 + public static void RegisterWellKnownClientType(WellKnownClientTypeEntry entry); // 0x1018A1C0 + public static void RegisterWellKnownServiceType(Type type, string objectUri, WellKnownObjectMode mode); // 0x1018A580 + public static void RegisterWellKnownServiceType(WellKnownServiceTypeEntry entry); // 0x1018A650 + internal static void RegisterChannelTemplate(ChannelData channel); // 0x101896B0 + internal static void RegisterClientProviderTemplate(ProviderData prov); // 0x10189DC0 + internal static void RegisterServerProviderTemplate(ProviderData prov); // 0x10189E40 + internal static void RegisterChannels(ArrayList channels, bool onlyDelayed); // 0x10189730 + internal static void RegisterTypes(ArrayList types); // 0x10189EC0 + public static bool CustomErrorsEnabled(bool isLocalRequest); // 0x10187EF0 + internal static void SetCustomErrorsMode(string mode); // 0x1018A7F0 +} + +// Namespace: System.Runtime.Remoting +internal class ConfigHandler : IContentHandler // TypeDefIndex: 1107 +{ + // Fields + private ArrayList typeEntries; // 0x08 + private ArrayList channelInstances; // 0x0C + private ChannelData currentChannel; // 0x10 + private Stack currentProviderData; // 0x14 + private string currentClientUrl; // 0x18 + private string appName; // 0x1C + private string currentXmlPath; // 0x20 + private bool onlyDelayedChannels; // 0x24 + private static Dictionary`2 <>f__switch$map27; // 0x00 + private static Dictionary`2 <>f__switch$map28; // 0x04 + + // Methods + public void .ctor(bool onlyDelayedChannels); // 0x101CD120 + private void ValidatePath(string element, string[] paths); // 0x101CD040 + private bool CheckPath(string path); // 0x101CA690 + public void OnStartParsing(SmallXmlParser parser); // 0x100C5530 + public void OnProcessingInstruction(string name, string text); // 0x100C5530 + public void OnIgnorableWhitespace(string s); // 0x100C5530 + public void OnStartElement(string name, IAttrList attrs); // 0x101CAAC0 + public void ParseElement(string name, IAttrList attrs); // 0x101CAC50 + public void OnEndElement(string name); // 0x101CA940 + private void ReadCustomProviderData(string name, IAttrList attrs); // 0x101CC140 + private void ReadLifetine(IAttrList attrs); // 0x101CC630 + private TimeSpan ParseTime(string s); // 0x101CB870 + private void ReadChannel(IAttrList attrs, bool isTemplate); // 0x101CBCB0 + private ProviderData ReadProvider(string name, IAttrList attrs, bool isTemplate); // 0x101CCB40 + private void ReadClientActivated(IAttrList attrs); // 0x101CBF80 + private void ReadServiceActivated(IAttrList attrs); // 0x101CCE20 + private void ReadClientWellKnown(IAttrList attrs); // 0x101CC090 + private void ReadServiceWellKnown(IAttrList attrs); // 0x101CCEB0 + private void ReadInteropXml(IAttrList attrs, bool isElement); // 0x101CC470 + private void ReadPreload(IAttrList attrs); // 0x101CC9E0 + private string GetNotNull(IAttrList attrs, string name); // 0x101CA860 + private string ExtractAssembly(string type); // 0x101CA790 + public void OnChars(string ch); // 0x100C5530 + public void OnEndParsing(SmallXmlParser parser); // 0x101CA9C0 +} + +// Namespace: System.Runtime.Remoting +internal class ChannelData // TypeDefIndex: 1108 +{ + // Fields + internal string Ref; // 0x08 + internal string Type; // 0x0C + internal string Id; // 0x10 + internal string DelayLoadAsClientChannel; // 0x14 + private ArrayList _serverProviders; // 0x18 + private ArrayList _clientProviders; // 0x1C + private Hashtable _customProperties; // 0x20 + + // Properties + internal ArrayList ServerProviders { get; } // 0x1019DD10 + public ArrayList ClientProviders { get; } // 0x1019DC70 + public Hashtable CustomProperties { get; } // 0x1019DCC0 + + // Methods + public void .ctor(); // 0x1019DBF0 + public void CopyFrom(ChannelData other); // 0x1019D4F0 +} + +// Namespace: System.Runtime.Remoting +internal class ProviderData // TypeDefIndex: 1109 +{ + // Fields + internal string Ref; // 0x08 + internal string Type; // 0x0C + internal string Id; // 0x10 + internal Hashtable CustomProperties; // 0x14 + internal IList CustomData; // 0x18 + + // Methods + public void .ctor(); // 0x101867D0 + public void CopyFrom(ProviderData other); // 0x101862E0 +} + +// Namespace: System.Runtime.Remoting +internal class FormatterData : ProviderData // TypeDefIndex: 1110 +{ + // Methods + public void .ctor(); // 0x101D3080 +} + +// Namespace: System.Runtime.Remoting +[Serializable] +public class RemotingException : SystemException // TypeDefIndex: 1111 +{ + // Methods + public void .ctor(); // 0x10156930 + public void .ctor(string message); // 0x100E5680 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 + public void .ctor(string message, Exception InnerException); // 0x100E5670 +} + +// Namespace: System.Runtime.Remoting +public sealed class RemotingServices // TypeDefIndex: 1112 +{ + // Fields + private static Hashtable uri_hash; // 0x00 + private static BinaryFormatter _serializationFormatter; // 0x04 + private static BinaryFormatter _deserializationFormatter; // 0x08 + internal static string app_id; // 0x0C + private static int next_id; // 0x10 + private static readonly BindingFlags methodBindings; // 0x14 + private static readonly MethodInfo FieldSetterMethod; // 0x18 + private static readonly MethodInfo FieldGetterMethod; // 0x1C + + // Methods + private void .ctor(); // 0x100BF000 + private static void .cctor(); // 0x101904E0 + internal static object InternalExecute(MethodBase method, object obj, object[] parameters, out object[] out_args); // 0x1018EB70 + internal static MethodBase GetVirtualMethod(Type type, MethodBase method); // 0x1018E5C0 + public static bool IsTransparentProxy(object proxy); // 0x100E9F80 + internal static IMethodReturnMessage InternalExecuteMessage(MarshalByRefObject target, IMethodCallMessage reqMsg); // 0x1018E5E0 + public static IMethodReturnMessage ExecuteMessage(MarshalByRefObject target, IMethodCallMessage reqMsg); // 0x1018C870 + public static object Connect(Type classToProxy, string url); // 0x1018BAB0 + public static object Connect(Type classToProxy, string url, object data); // 0x1018BB90 + public static bool Disconnect(MarshalByRefObject obj); // 0x1018C490 + public static Type GetServerTypeForUri(string URI); // 0x1018E4E0 + public static string GetObjectUri(MarshalByRefObject obj); // 0x1018DC70 + public static object Unmarshal(ObjRef objectRef); // 0x101900A0 + public static object Unmarshal(ObjRef objectRef, bool fRefine); // 0x101900F0 + public static ObjRef Marshal(MarshalByRefObject Obj); // 0x1018F4A0 + public static ObjRef Marshal(MarshalByRefObject Obj, string URI); // 0x1018F500 + public static ObjRef Marshal(MarshalByRefObject Obj, string ObjURI, Type RequestedType); // 0x1018F0A0 + private static string NewUri(); // 0x1018F560 + public static RealProxy GetRealProxy(object proxy); // 0x1018E280 + public static MethodBase GetMethodBaseFromMethodMessage(IMethodMessage msg); // 0x1018D5C0 + internal static MethodBase GetMethodBaseFromName(Type type, string methodName, Type[] signature); // 0x1018D760 + private static MethodBase FindInterfaceMethod(Type type, string methodName, Type[] signature); // 0x1018C960 + public static void GetObjectData(object obj, SerializationInfo info, StreamingContext context); // 0x1018DA90 + public static ObjRef GetObjRefForProxy(MarshalByRefObject obj); // 0x1018DA20 + public static object GetLifetimeService(MarshalByRefObject obj); // 0x1018D2E0 + public static IMessageSink GetEnvoyChainForProxy(MarshalByRefObject obj); // 0x1018CE80 + public static void LogRemotingStage(int stage); // 0x1018F050 + public static string GetSessionIdForMethodMessage(IMethodMessage msg); // 0x1018E570 + public static bool IsMethodOverloaded(IMethodMessage msg); // 0x1018ED30 + public static bool IsObjectOutOfAppDomain(object tp); // 0x1018EE10 + public static bool IsObjectOutOfContext(object tp); // 0x1018EEF0 + public static bool IsOneWay(MethodBase method); // 0x1018EFD0 + internal static bool IsAsyncMessage(IMessage msg); // 0x1018EB90 + public static void SetObjectUriForMarshal(MarshalByRefObject obj, string uri); // 0x1018FF30 + internal static object CreateClientProxy(ActivatedClientTypeEntry entry, object[] activationAttributes); // 0x1018BFE0 + internal static object CreateClientProxy(Type objectType, string url, object[] activationAttributes); // 0x1018BE90 + internal static object CreateClientProxy(WellKnownClientTypeEntry entry); // 0x1018C120 + internal static object CreateClientProxyForContextBound(Type type, object[] activationAttributes); // 0x1018BD20 + internal static Identity GetIdentityForUri(string uri); // 0x1018CFB0 + private static string RemoveAppNameFromUri(string uri); // 0x1018FA40 + internal static Identity GetObjectIdentity(MarshalByRefObject obj); // 0x1018DBD0 + internal static ClientIdentity GetOrCreateClientIdentity(ObjRef objRef, Type proxyType, out object clientProxy); // 0x1018DD70 + private static IMessageSink GetClientChannelSinkChain(string url, object channelData, out string objectUri); // 0x1018CAB0 + internal static ClientActivatedIdentity CreateContextBoundObjectIdentity(Type objectType); // 0x1018C1F0 + internal static ClientActivatedIdentity CreateClientActivatedServerIdentity(MarshalByRefObject realObject, Type objectType, string objectUri); // 0x1018BC10 + internal static ServerIdentity CreateWellKnownServerIdentity(Type objectType, string objectUri, WellKnownObjectMode mode); // 0x1018C2B0 + private static void RegisterServerIdentity(ServerIdentity identity); // 0x1018F810 + internal static object GetProxyForRemoteObject(ObjRef objref, Type classToProxy); // 0x1018E190 + internal static object GetRemoteObject(ObjRef objRef, Type proxyType); // 0x1018E380 + internal static object GetServerObject(string uri); // 0x1018E3F0 + internal static byte[] SerializeCallData(object obj); // 0x1018FB40 + internal static object DeserializeCallData(byte[] array); // 0x1018C380 + internal static byte[] SerializeExceptionData(Exception ex); // 0x1018FC30 + internal static object GetDomainProxy(AppDomain domain); // 0x1018CBC0 + private static void RegisterInternalChannels(); // 0x1018F7C0 + internal static void DisposeIdentity(Identity ident); // 0x1018C680 + internal static Identity GetMessageTargetIdentity(IMessage msg); // 0x1018D300 + internal static void SetMessageTargetIdentity(IMessage msg, Identity ident); // 0x1018FEA0 + internal static bool UpdateOutArgObject(ParameterInfo pi, object local, object remote); // 0x101903A0 + private static string GetNormalizedUri(string uri); // 0x1018D9C0 +} + +// Namespace: +[Serializable] +private class CACD // TypeDefIndex: 1113 +{ + // Fields + public object d; // 0x08 + public object c; // 0x0C + + // Methods + public void .ctor(); // 0x100BF000 +} + +// Namespace: System.Runtime.Remoting +[Serializable] +public class RemotingTimeoutException : RemotingException // TypeDefIndex: 1114 +{ + // Methods + public void .ctor(); // 0x10156930 + public void .ctor(string message); // 0x100E5680 + public void .ctor(string message, Exception InnerException); // 0x100E5670 + internal void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 +} + +// Namespace: System.Runtime.Remoting +[Serializable] +public class ServerException : SystemException // TypeDefIndex: 1115 +{ + // Methods + public void .ctor(); // 0x10156930 + public void .ctor(string message); // 0x100E5680 + public void .ctor(string message, Exception InnerException); // 0x100E5670 + internal void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 +} + +// Namespace: System.Runtime.Remoting +internal abstract class ServerIdentity : Identity // TypeDefIndex: 1116 +{ + // Fields + protected Type _objectType; // 0x24 + protected MarshalByRefObject _serverObject; // 0x28 + protected IMessageSink _serverSink; // 0x2C + protected Context _context; // 0x30 + protected Lease _lease; // 0x34 + + // Properties + public Type ObjectType { get; } // 0x100EAD50 + public Lease Lease { get; } // 0x100E9ED0 + public Context Context { get; set; } // 0x100EA580 0x100C15B0 + + // Methods + public void .ctor(string objectUri, Context context, Type objectType); // 0x10190B90 + public void StartTrackingLifetime(ILease lease); // 0x10190A90 + public virtual void OnLifetimeExpired(); // 0x10190A80 + public override ObjRef CreateObjRef(Type requestedType); // 0x10190880 + public void AttachServerObject(MarshalByRefObject serverObject, Context context); // 0x10190790 + public abstract IMessage SyncObjectProcessMessage(IMessage msg); + public abstract IMessageCtrl AsyncObjectProcessMessage(IMessage msg, IMessageSink replySink); + protected void DisposeServerObject(); // 0x10190A10 +} + +// Namespace: System.Runtime.Remoting +internal class ClientActivatedIdentity : ServerIdentity // TypeDefIndex: 1117 +{ + // Fields + private MarshalByRefObject _targetThis; // 0x38 + + // Methods + public void .ctor(string objectUri, Type objectType); // 0x101A1550 + public MarshalByRefObject GetServerObject(); // 0x100EB040 + public MarshalByRefObject GetClientProxy(); // 0x100EB210 + public void SetClientProxy(MarshalByRefObject obj); // 0x100EB290 + public override void OnLifetimeExpired(); // 0x101A1470 + public override IMessage SyncObjectProcessMessage(IMessage msg); // 0x101A14D0 + public override IMessageCtrl AsyncObjectProcessMessage(IMessage msg, IMessageSink replySink); // 0x101A13B0 +} + +// Namespace: System.Runtime.Remoting +internal class SingletonIdentity : ServerIdentity // TypeDefIndex: 1118 +{ + // Methods + public void .ctor(string objectUri, Context context, Type objectType); // 0x10190B90 + public MarshalByRefObject GetServerObject(); // 0x10191090 + public override IMessage SyncObjectProcessMessage(IMessage msg); // 0x10191240 + public override IMessageCtrl AsyncObjectProcessMessage(IMessage msg, IMessageSink replySink); // 0x10191010 +} + +// Namespace: System.Runtime.Remoting +internal class SingleCallIdentity : ServerIdentity // TypeDefIndex: 1119 +{ + // Methods + public void .ctor(string objectUri, Context context, Type objectType); // 0x10190B90 + public override IMessage SyncObjectProcessMessage(IMessage msg); // 0x10190EF0 + public override IMessageCtrl AsyncObjectProcessMessage(IMessage msg, IMessageSink replySink); // 0x10190DD0 +} + +// Namespace: System.Runtime.Remoting +internal class DisposerReplySink : IMessageSink // TypeDefIndex: 1120 +{ + // Fields + private IMessageSink _next; // 0x08 + private IDisposable _disposable; // 0x0C + + // Properties + public IMessageSink NextSink { get; } // 0x100BF0C0 + + // Methods + public void .ctor(IMessageSink next, IDisposable disposable); // 0x100F97B0 + public IMessage SyncProcessMessage(IMessage msg); // 0x101D2510 + public IMessageCtrl AsyncProcessMessage(IMessage msg, IMessageSink replySink); // 0x101D24C0 +} + +// Namespace: System.Runtime.Remoting +public class SoapServices // TypeDefIndex: 1121 +{ + // Fields + private static Hashtable _xmlTypes; // 0x00 + private static Hashtable _xmlElements; // 0x04 + private static Hashtable _soapActions; // 0x08 + private static Hashtable _soapActionsMethods; // 0x0C + private static Hashtable _typeInfos; // 0x10 + + // Properties + public static string XmlNsForClrType { get; } // 0x10197390 + public static string XmlNsForClrTypeWithAssembly { get; } // 0x10197300 + public static string XmlNsForClrTypeWithNs { get; } // 0x10197360 + public static string XmlNsForClrTypeWithNsAndAssembly { get; } // 0x10197330 + + // Methods + private void .ctor(); // 0x100BF000 + private static void .cctor(); // 0x10197230 + public static string CodeXmlNamespaceForClrTypeNamespace(string typeNamespace, string assemblyName); // 0x10194E20 + public static bool DecodeXmlNamespaceForClrTypeNamespace(string inNamespace, out string typeNamespace, out string assemblyName); // 0x101950A0 + public static void GetInteropFieldTypeAndNameFromXmlAttribute(Type containingType, string xmlAttribute, string xmlNamespace, out Type type, out string name); // 0x10195690 + public static void GetInteropFieldTypeAndNameFromXmlElement(Type containingType, string xmlElement, string xmlNamespace, out Type type, out string name); // 0x10195780 + private static void GetInteropFieldInfo(Hashtable fields, string xmlName, string xmlNamespace, out Type type, out string name); // 0x10195590 + private static string GetNameKey(string name, string namspace); // 0x10195C70 + public static Type GetInteropTypeFromXmlElement(string xmlElement, string xmlNamespace); // 0x10195870 + public static Type GetInteropTypeFromXmlType(string xmlType, string xmlTypeNamespace); // 0x10195A70 + private static string GetAssemblyName(MethodBase mb); // 0x10195450 + public static string GetSoapActionFromMethodBase(MethodBase mb); // 0x10195CE0 + public static bool GetTypeAndMethodNameFromSoapAction(string soapAction, out string typeName, out string methodName); // 0x10195D30 + public static bool GetXmlElementForInteropType(Type type, out string xmlElement, out string xmlNamespace); // 0x101960E0 + public static string GetXmlNamespaceForMethodCall(MethodBase mb); // 0x10196180 + public static string GetXmlNamespaceForMethodResponse(MethodBase mb); // 0x10196220 + public static bool GetXmlTypeForInteropType(Type type, out string xmlType, out string xmlTypeNamespace); // 0x101962C0 + public static bool IsClrTypeNamespace(string namespaceString); // 0x101965C0 + public static bool IsSoapActionValidForMethodBase(string soapAction, MethodBase mb); // 0x10196640 + public static void PreLoad(Assembly assembly); // 0x10196C80 + public static void PreLoad(Type type); // 0x10196770 + public static void RegisterInteropXmlElement(string xmlElement, string xmlNamespace, Type type); // 0x10196D30 + public static void RegisterInteropXmlType(string xmlType, string xmlTypeNamespace, Type type); // 0x10196EC0 + public static void RegisterSoapActionForMethodBase(MethodBase mb); // 0x101971E0 + private static string InternalGetSoapAction(MethodBase mb); // 0x10196360 + public static void RegisterSoapActionForMethodBase(MethodBase mb, string soapAction); // 0x10197050 + private static string EncodeNs(string ns); // 0x101953D0 + private static string DecodeNs(string ns); // 0x10195020 +} + +// Namespace: +private class TypeInfo // TypeDefIndex: 1122 +{ + // Fields + public Hashtable Attributes; // 0x08 + public Hashtable Elements; // 0x0C + + // Methods + public void .ctor(); // 0x100BF000 +} + +// Namespace: System.Runtime.Remoting +public class TypeEntry // TypeDefIndex: 1123 +{ + // Fields + private string assembly_name; // 0x08 + private string type_name; // 0x0C + + // Properties + public string AssemblyName { get; set; } // 0x100BF0C0 0x100EB270 + public string TypeName { get; set; } // 0x100C5B30 0x100C5B50 + + // Methods + protected void .ctor(); // 0x100BF000 +} + +// Namespace: System.Runtime.Remoting +[Serializable] +internal class TypeInfo : IRemotingTypeInfo // TypeDefIndex: 1124 +{ + // Fields + private string serverType; // 0x08 + private string[] serverHierarchy; // 0x0C + private string[] interfacesImplemented; // 0x10 + + // Properties + public string TypeName { get; set; } // 0x100BF0C0 0x100EB270 + + // Methods + public void .ctor(Type type); // 0x1019A210 + public bool CanCastTo(Type fromType, object o); // 0x10199F70 +} + +// Namespace: System.Runtime.Remoting +public class WellKnownClientTypeEntry : TypeEntry // TypeDefIndex: 1125 +{ + // Fields + private Type obj_type; // 0x10 + private string obj_url; // 0x14 + private string app_url; // 0x18 + + // Properties + public string ApplicationUrl { get; set; } // 0x100EE580 0x10113F40 + public Type ObjectType { get; } // 0x100BFC20 + public string ObjectUrl { get; } // 0x100EF0C0 + + // Methods + public void .ctor(Type type, string objectUrl); // 0x1019A6F0 + public void .ctor(string typeName, string assemblyName, string objectUrl); // 0x1019A610 + public override string ToString(); // 0x1019A570 +} + +// Namespace: System.Runtime.Remoting +[Serializable] +public enum WellKnownObjectMode // TypeDefIndex: 1126 +{ + Singleton = 1, + SingleCall = 2 +} + +// Namespace: System.Runtime.Remoting +public class WellKnownServiceTypeEntry : TypeEntry // TypeDefIndex: 1127 +{ + // Fields + private Type obj_type; // 0x10 + private string obj_uri; // 0x14 + private WellKnownObjectMode obj_mode; // 0x18 + + // Properties + public IContextAttribute[] ContextAttributes { get; set; } // 0x100C5600 0x100C5530 + public WellKnownObjectMode Mode { get; } // 0x100EE580 + public Type ObjectType { get; } // 0x100BFC20 + public string ObjectUri { get; } // 0x100EF0C0 + + // Methods + public void .ctor(Type type, string objectUri, WellKnownObjectMode mode); // 0x1019AA40 + public void .ctor(string typeName, string assemblyName, string objectUri, WellKnownObjectMode mode); // 0x1019A960 + public override string ToString(); // 0x1019A770 +} + +// Namespace: System.Runtime.Serialization.Formatters.Binary +internal class BinaryCommon // TypeDefIndex: 1128 +{ + // Fields + public static byte[] BinaryHeader; // 0x00 + private static Type[] _typeCodesToType; // 0x04 + private static byte[] _typeCodeMap; // 0x08 + public static bool UseReflectionSerialization; // 0x0C + + // Methods + public void .ctor(); // 0x100BF000 + private static void .cctor(); // 0x10182C30 + public static bool IsPrimitive(Type type); // 0x10182880 + public static byte GetTypeCode(Type type); // 0x10182720 + public static Type GetTypeFromCode(int code); // 0x10182800 + public static void CheckSerializable(Type type, ISurrogateSelector selector, StreamingContext context); // 0x101825E0 + public static void SwapBytes(byte[] byteArray, int size, int dataSize); // 0x101829B0 +} + +// Namespace: System.Runtime.Serialization.Formatters.Binary +internal enum BinaryElement : byte // TypeDefIndex: 1129 +{ + Header = 0, + RefTypeObject = 1, + UntypedRuntimeObject = 2, + UntypedExternalObject = 3, + RuntimeObject = 4, + ExternalObject = 5, + String = 6, + GenericArray = 7, + BoxedPrimitiveTypeValue = 8, + ObjectReference = 9, + NullValue = 10, + End = 11, + Assembly = 12, + ArrayFiller8b = 13, + ArrayFiller32b = 14, + ArrayOfPrimitiveType = 15, + ArrayOfObject = 16, + ArrayOfString = 17, + Method = 18, + _Unknown4 = 19, + _Unknown5 = 20, + MethodCall = 21, + MethodResponse = 22 +} + +// Namespace: System.Runtime.Serialization.Formatters.Binary +internal enum TypeTag : byte // TypeDefIndex: 1130 +{ + PrimitiveType = 0, + String = 1, + ObjectType = 2, + RuntimeType = 3, + GenericType = 4, + ArrayOfObject = 5, + ArrayOfString = 6, + ArrayOfPrimitiveType = 7 +} + +// Namespace: System.Runtime.Serialization.Formatters.Binary +internal enum ArrayStructure : byte // TypeDefIndex: 1131 +{ + SingleDimensional = 0, + Jagged = 1, + MultiDimensional = 2 +} + +// Namespace: System.Runtime.Serialization.Formatters.Binary +internal enum MethodFlags // TypeDefIndex: 1132 +{ + NoArguments = 1, + PrimitiveArguments = 2, + ArgumentsInSimpleArray = 4, + ArgumentsInMultiArray = 8, + FormatMask = 15, + ExcludeLogicalCallContext = 16, + IncludesLogicalCallContext = 64, + IncludesSignature = 128, + GenericArguments = 32768, + NeedsInfoArrayMask = 32972 +} + +// Namespace: System.Runtime.Serialization.Formatters.Binary +internal enum ReturnTypeTag : byte // TypeDefIndex: 1133 +{ + Null = 2, + PrimitiveType = 8, + ObjectType = 16, + Exception = 32 +} + +// Namespace: System.Runtime.Serialization.Formatters.Binary +internal enum BinaryTypeCode : byte // TypeDefIndex: 1134 +{ + Boolean = 1, + Byte = 2, + Char = 3, + Decimal = 5, + Double = 6, + Int16 = 7, + Int32 = 8, + Int64 = 9, + SByte = 10, + Single = 11, + TimeSpan = 12, + DateTime = 13, + UInt16 = 14, + UInt32 = 15, + UInt64 = 16, + Null = 17, + String = 18 +} + +// Namespace: System.Runtime.Serialization.Formatters.Binary +public sealed class BinaryFormatter : IRemotingFormatter, IFormatter // TypeDefIndex: 1135 +{ + // Fields + private FormatterAssemblyStyle assembly_format; // 0x08 + private SerializationBinder binder; // 0x0C + private StreamingContext context; // 0x10 + private ISurrogateSelector surrogate_selector; // 0x18 + private FormatterTypeStyle type_format; // 0x1C + private TypeFilterLevel filter_level; // 0x20 + private static ISurrogateSelector k__BackingField; // 0x00 + + // Properties + public static ISurrogateSelector DefaultSurrogateSelector { get; set; } // 0x10113EC0 0x10113F10 + public FormatterAssemblyStyle AssemblyFormat { get; set; } // 0x100BF0C0 0x100EB270 + public SerializationBinder Binder { get; set; } // 0x100C5B30 0x100C5B50 + public StreamingContext Context { get; set; } // 0x10113EB0 0x10113EF0 + public ISurrogateSelector SurrogateSelector { get; set; } // 0x100EE580 0x10113F40 + public FormatterTypeStyle TypeFormat { get; set; } // 0x100F85F0 0x10113F50 + public TypeFilterLevel FilterLevel { get; set; } // 0x100EACD0 0x100EB230 + + // Methods + public void .ctor(); // 0x10113E10 + public void .ctor(ISurrogateSelector selector, StreamingContext context); // 0x10113E70 + public object Deserialize(Stream serializationStream); // 0x101137F0 + public object Deserialize(Stream serializationStream, HeaderHandler handler); // 0x101137E0 + private object NoCheckDeserialize(Stream serializationStream, HeaderHandler handler); // 0x10113940 + public object DeserializeMethodResponse(Stream serializationStream, HeaderHandler handler, IMethodCallMessage methodCallMessage); // 0x101137D0 + private object NoCheckDeserializeMethodResponse(Stream serializationStream, HeaderHandler handler, IMethodCallMessage methodCallMessage); // 0x10113810 + public void Serialize(Stream serializationStream, object graph); // 0x10113B80 + public void Serialize(Stream serializationStream, object graph, Header[] headers); // 0x10113BA0 + public object UnsafeDeserialize(Stream serializationStream, HeaderHandler handler); // 0x101137E0 + public object UnsafeDeserializeMethodResponse(Stream serializationStream, HeaderHandler handler, IMethodCallMessage methodCallMessage); // 0x101137D0 + private void WriteBinaryHeader(BinaryWriter writer, bool hasHeaders); // 0x10113D80 + private void ReadBinaryHeader(BinaryReader reader, out bool hasHeaders); // 0x10113B00 +} + +// Namespace: System.Runtime.Serialization.Formatters.Binary +internal class CodeGenerator // TypeDefIndex: 1136 +{ + // Fields + private static object monitor; // 0x00 + private static ModuleBuilder _module; // 0x04 + + // Methods + public void .ctor(); // 0x100BF000 + private static void .cctor(); // 0x10116DB0 + public static Type GenerateMetadataType(Type type, StreamingContext context); // 0x10116590 + public static Type GenerateMetadataTypeInternal(Type type, StreamingContext context); // 0x10114FD0 + public static void LoadFromPtr(ILGenerator ig, Type t); // 0x101166D0 + private static void EmitWriteTypeSpec(ILGenerator gen, Type type, string member); // 0x10114830 + private static void EmitLoadTypeAssembly(ILGenerator gen, Type type, string member); // 0x101142A0 + private static void EmitWrite(ILGenerator gen, Type type); // 0x10114C80 + public static void EmitWritePrimitiveValue(ILGenerator gen, Type type); // 0x10114400 + public static Type EnumToUnderlying(Type t); // 0x10114DB0 +} + +// Namespace: System.Runtime.Serialization.Formatters.Binary +internal class MessageFormatter // TypeDefIndex: 1137 +{ + // Methods + public void .ctor(); // 0x100BF000 + public static void WriteMethodCall(BinaryWriter writer, object obj, Header[] headers, ISurrogateSelector surrogateSelector, StreamingContext context, FormatterAssemblyStyle assemblyFormat, FormatterTypeStyle typeFormat); // 0x101196E0 + public static void WriteMethodResponse(BinaryWriter writer, object obj, Header[] headers, ISurrogateSelector surrogateSelector, StreamingContext context, FormatterAssemblyStyle assemblyFormat, FormatterTypeStyle typeFormat); // 0x10119DD0 + public static object ReadMethodCall(BinaryReader reader, bool hasHeaders, HeaderHandler headerHandler, BinaryFormatter formatter); // 0x10118900 + public static object ReadMethodCall(BinaryElement elem, BinaryReader reader, bool hasHeaders, HeaderHandler headerHandler, BinaryFormatter formatter); // 0x10118950 + public static object ReadMethodResponse(BinaryReader reader, bool hasHeaders, HeaderHandler headerHandler, IMethodCallMessage methodCallMessage, BinaryFormatter formatter); // 0x10119690 + public static object ReadMethodResponse(BinaryElement elem, BinaryReader reader, bool hasHeaders, HeaderHandler headerHandler, IMethodCallMessage methodCallMessage, BinaryFormatter formatter); // 0x10119060 + private static bool AllTypesArePrimitive(object[] objects); // 0x10118490 + public static bool IsMethodPrimitive(Type type); // 0x10118800 + private static object[] GetExtraProperties(IDictionary properties, string[] internalKeys); // 0x10118500 + private static bool IsInternalKey(string key, string[] internalKeys); // 0x10118760 +} + +// Namespace: System.Runtime.Serialization.Formatters.Binary +internal class ObjectReader // TypeDefIndex: 1138 +{ + // Fields + private ISurrogateSelector _surrogateSelector; // 0x08 + private StreamingContext _context; // 0x0C + private SerializationBinder _binder; // 0x14 + private TypeFilterLevel _filterLevel; // 0x18 + private ObjectManager _manager; // 0x1C + private Hashtable _registeredAssemblies; // 0x20 + private Hashtable _typeMetadataCache; // 0x24 + private object _lastObject; // 0x28 + private long _lastObjectID; // 0x30 + private long _rootObjectID; // 0x38 + private byte[] arrayBuffer; // 0x40 + private int ArrayBufferLength; // 0x44 + + // Properties + public object CurrentObject { get; } // 0x100EB040 + + // Methods + public void .ctor(BinaryFormatter formatter); // 0x1011F2B0 + public void ReadObjectGraph(BinaryReader reader, bool readHeaders, out object result, out Header[] headers); // 0x1011D5A0 + public void ReadObjectGraph(BinaryElement elem, BinaryReader reader, bool readHeaders, out object result, out Header[] headers); // 0x1011D2C0 + private bool ReadNextObject(BinaryElement element, BinaryReader reader); // 0x1011CF00 + public bool ReadNextObject(BinaryReader reader); // 0x1011CDC0 + private void ReadObject(BinaryElement element, BinaryReader reader, out long objectId, out object value, out SerializationInfo info); // 0x1011D650 + private void ReadAssembly(BinaryReader reader); // 0x1011CA90 + private void ReadObjectInstance(BinaryReader reader, bool isRuntimeObject, bool hasTypeInfo, out long objectId, out object value, out SerializationInfo info); // 0x1011D5F0 + private void ReadRefTypeObjectInstance(BinaryReader reader, out long objectId, out object value, out SerializationInfo info); // 0x1011DF50 + private void ReadObjectContent(BinaryReader reader, TypeMetadata metadata, long objectId, out object objectInstance, out SerializationInfo info); // 0x1011D020 + private void RegisterObject(long objectId, object objectInstance, SerializationInfo info, long parentObjectId, MemberInfo parentObjectMemeber, int[] indices); // 0x1011EF60 + private void ReadStringIntance(BinaryReader reader, out long objectId, out object value); // 0x1011E1A0 + private void ReadGenericArray(BinaryReader reader, out long objectId, out object val); // 0x1011CB70 + private object ReadBoxedPrimitiveTypeValue(BinaryReader reader); // 0x1011CB40 + private void ReadArrayOfPrimitiveType(BinaryReader reader, out long objectId, out object val); // 0x1011C0A0 + private void BlockRead(BinaryReader reader, Array array, int dataSize); // 0x1011BD80 + private void ReadArrayOfObject(BinaryReader reader, out long objectId, out object array); // 0x1011C030 + private void ReadArrayOfString(BinaryReader reader, out long objectId, out object array); // 0x1011CA20 + private void ReadSimpleArray(BinaryReader reader, Type elementType, out long objectId, out object val); // 0x1011E0A0 + private TypeMetadata ReadTypeMetadata(BinaryReader reader, bool isRuntimeObject, bool hasTypeInfo); // 0x1011E1F0 + private void ReadValue(BinaryReader reader, object parentObject, long parentObjectId, SerializationInfo info, Type valueType, string fieldName, MemberInfo memberInfo, int[] indices); // 0x1011EBC0 + private void SetObjectValue(object parentObject, string fieldName, MemberInfo memberInfo, SerializationInfo info, object value, Type valueType, int[] indices); // 0x1011F060 + private void RecordFixup(long parentObjectId, long childObjectId, object parentObject, SerializationInfo info, string fieldName, MemberInfo memberInfo, int[] indices); // 0x1011EDD0 + private Type GetDeserializationType(long assemblyId, string className); // 0x1011BEE0 + public Type ReadType(BinaryReader reader, TypeTag code); // 0x1011E830 + public static object ReadPrimitiveTypeValue(BinaryReader reader, Type type); // 0x1011DA70 +} + +// Namespace: +private class TypeMetadata // TypeDefIndex: 1139 +{ + // Fields + public Type Type; // 0x08 + public Type[] MemberTypes; // 0x0C + public string[] MemberNames; // 0x10 + public MemberInfo[] MemberInfos; // 0x14 + public int FieldCount; // 0x18 + public bool NeedsSerializationInfo; // 0x1C + + // Methods + public void .ctor(); // 0x100BF000 +} + +// Namespace: +private class ArrayNullFiller // TypeDefIndex: 1140 +{ + // Fields + public int NullCount; // 0x08 + + // Methods + public void .ctor(int count); // 0x10113500 +} + +// Namespace: System.Runtime.Serialization.Formatters.Binary +internal abstract class TypeMetadata // TypeDefIndex: 1141 +{ + // Fields + public string TypeAssemblyName; // 0x08 + public string InstanceTypeName; // 0x0C + + // Properties + public abstract bool RequiresTypes { get; } + + // Methods + protected void .ctor(); // 0x100BF000 + public abstract void WriteAssemblies(ObjectWriter ow, BinaryWriter writer); + public abstract void WriteTypeData(ObjectWriter ow, BinaryWriter writer, bool writeTypes); + public abstract void WriteObjectData(ObjectWriter ow, BinaryWriter writer, object data); + public virtual bool IsCompatible(TypeMetadata other); // 0x100E5880 +} + +// Namespace: System.Runtime.Serialization.Formatters.Binary +internal abstract class ClrTypeMetadata : TypeMetadata // TypeDefIndex: 1142 +{ + // Fields + public Type InstanceType; // 0x10 + + // Properties + public override bool RequiresTypes { get; } // 0x100EFBF0 + + // Methods + public void .ctor(Type instanceType); // 0x10114230 +} + +// Namespace: System.Runtime.Serialization.Formatters.Binary +internal class SerializableTypeMetadata : TypeMetadata // TypeDefIndex: 1143 +{ + // Fields + private Type[] types; // 0x10 + private string[] names; // 0x14 + + // Properties + public override bool RequiresTypes { get; } // 0x100E5880 + + // Methods + public void .ctor(Type itype, SerializationInfo info); // 0x101246E0 + public override bool IsCompatible(TypeMetadata other); // 0x10124110 + public override void WriteAssemblies(ObjectWriter ow, BinaryWriter writer); // 0x10124330 + public override void WriteTypeData(ObjectWriter ow, BinaryWriter writer, bool writeTypes); // 0x10124570 + public override void WriteObjectData(ObjectWriter ow, BinaryWriter writer, object data); // 0x101243D0 +} + +// Namespace: System.Runtime.Serialization.Formatters.Binary +internal class MemberTypeMetadata : ClrTypeMetadata // TypeDefIndex: 1144 +{ + // Fields + private MemberInfo[] members; // 0x14 + + // Methods + public void .ctor(Type type, StreamingContext context); // 0x10118410 + public override void WriteAssemblies(ObjectWriter ow, BinaryWriter writer); // 0x10117F10 + public override void WriteTypeData(ObjectWriter ow, BinaryWriter writer, bool writeTypes); // 0x10118180 + public override void WriteObjectData(ObjectWriter ow, BinaryWriter writer, object data); // 0x10118030 +} + +// Namespace: System.Runtime.Serialization.Formatters.Binary +internal class ObjectWriter // TypeDefIndex: 1145 +{ + // Fields + private ObjectIDGenerator _idGenerator; // 0x08 + private Hashtable _cachedMetadata; // 0x0C + private Queue _pendingObjects; // 0x10 + private Hashtable _assemblyCache; // 0x14 + private static Hashtable _cachedTypes; // 0x00 + internal static Assembly CorlibAssembly; // 0x04 + internal static string CorlibAssemblyName; // 0x08 + private ISurrogateSelector _surrogateSelector; // 0x18 + private StreamingContext _context; // 0x1C + private FormatterAssemblyStyle _assemblyFormat; // 0x24 + private FormatterTypeStyle _typeFormat; // 0x28 + private byte[] arrayBuffer; // 0x2C + private int ArrayBufferLength; // 0x30 + private SerializationObjectManager _manager; // 0x34 + + // Methods + public void .ctor(ISurrogateSelector surrogateSelector, StreamingContext context, FormatterAssemblyStyle assemblyFormat, FormatterTypeStyle typeFormat); // 0x10123640 + private static void .cctor(); // 0x10123550 + public void WriteObjectGraph(BinaryWriter writer, object obj, Header[] headers); // 0x10121890 + public void QueueObject(object obj); // 0x10120C40 + public void WriteQueuedObjects(BinaryWriter writer); // 0x10122BD0 + public void WriteObjectInstance(BinaryWriter writer, object obj, bool isValueObject); // 0x101219E0 + public static void WriteSerializationEnd(BinaryWriter writer); // 0x10122C40 + private void WriteObject(BinaryWriter writer, long id, object obj); // 0x10121BA0 + private void GetObjectData(object obj, out TypeMetadata metadata, out object data); // 0x101202C0 + private TypeMetadata CreateMemberTypeMetadata(Type type); // 0x101200B0 + private void WriteArray(BinaryWriter writer, long id, Array array); // 0x10120D90 + private void WriteGenericArray(BinaryWriter writer, long id, Array array); // 0x10121310 + private void WriteObjectArray(BinaryWriter writer, long id, Array array); // 0x101217C0 + private void WriteStringArray(BinaryWriter writer, long id, Array array); // 0x10122E70 + private void WritePrimitiveTypeArray(BinaryWriter writer, long id, Array array); // 0x10121EB0 + private void BlockWrite(BinaryWriter writer, Array array, int dataSize); // 0x1011FF70 + private void WriteSingleDimensionArrayElements(BinaryWriter writer, Array array, Type elementType); // 0x10122C70 + private void WriteNullFiller(BinaryWriter writer, int numNulls); // 0x10121710 + private void WriteObjectReference(BinaryWriter writer, long id); // 0x10121B60 + public void WriteValue(BinaryWriter writer, Type valueType, object val); // 0x101232E0 + private void WriteString(BinaryWriter writer, long id, string str); // 0x10122F40 + public int WriteAssembly(BinaryWriter writer, Assembly assembly); // 0x101212D0 + public int WriteAssemblyName(BinaryWriter writer, string assembly); // 0x10121060 + public int GetAssemblyId(Assembly assembly); // 0x101201B0 + public int GetAssemblyNameId(string assembly); // 0x10120240 + private int RegisterAssembly(string assembly, out bool firstTime); // 0x10120C70 + public static void WritePrimitiveValue(BinaryWriter writer, object value); // 0x10122700 + public static void WriteTypeCode(BinaryWriter writer, Type type); // 0x10122FA0 + public static TypeTag GetTypeTag(Type type); // 0x101209C0 + public void WriteTypeSpec(BinaryWriter writer, Type type); // 0x10123020 +} + +// Namespace: +private class MetadataReference // TypeDefIndex: 1146 +{ + // Fields + public TypeMetadata Metadata; // 0x08 + public long ObjectID; // 0x10 + + // Methods + public void .ctor(TypeMetadata metadata, long id); // 0x1011A500 +} + +// Namespace: System.Runtime.Serialization.Formatters +[Serializable] +public enum FormatterAssemblyStyle // TypeDefIndex: 1147 +{ + Simple = 0, + Full = 1 +} + +// Namespace: System.Runtime.Serialization.Formatters +[Serializable] +public enum FormatterTypeStyle // TypeDefIndex: 1148 +{ + TypesWhenNeeded = 0, + TypesAlways = 1, + XsdString = 2 +} + +// Namespace: System.Runtime.Serialization.Formatters +public interface IFieldInfo // TypeDefIndex: 1149 +{ + // Properties + string[] FieldNames { get; set; } + Type[] FieldTypes { get; set; } + +} + +// Namespace: System.Runtime.Serialization.Formatters +public interface ISoapMessage // TypeDefIndex: 1150 +{ + // Properties + Header[] Headers { get; set; } + string MethodName { get; set; } + string[] ParamNames { get; set; } + Type[] ParamTypes { get; set; } + object[] ParamValues { get; set; } + string XmlNameSpace { get; set; } + +} + +// Namespace: System.Runtime.Serialization.Formatters +public sealed class InternalRM // TypeDefIndex: 1151 +{ + // Methods + public void .ctor(); // 0x100BF000 + public static void InfoSoap(object[] messages); // 0x10117C90 + public static bool SoapCheckEnabled(); // 0x10117CE0 +} + +// Namespace: System.Runtime.Serialization.Formatters +public sealed class InternalST // TypeDefIndex: 1152 +{ + // Methods + private void .ctor(); // 0x100BF000 + public static void InfoSoap(object[] messages); // 0x10117D30 + public static Assembly LoadAssemblyFromString(string assemblyString); // 0x10117D80 + public static void SerializationSetValue(FieldInfo fi, object target, object value); // 0x10117DD0 + public static void Soap(object[] messages); // 0x10117EC0 + public static void SoapAssert(bool condition, string message); // 0x10117E20 + public static bool SoapCheckEnabled(); // 0x10117E70 +} + +// Namespace: System.Runtime.Serialization.Formatters +[Serializable] +public sealed class ServerFault // TypeDefIndex: 1153 +{ + // Fields + private string exceptionType; // 0x08 + private string message; // 0x0C + private string stackTrace; // 0x10 + private Exception exception; // 0x14 + + // Properties + public string ExceptionType { get; set; } // 0x100BF0C0 0x100EB270 + public string ExceptionMessage { get; set; } // 0x100C5B30 0x100C5B50 + public string StackTrace { get; set; } // 0x100BFC20 0x100C5B40 + + // Methods + public void .ctor(string exceptionType, string message, string stackTrace); // 0x10127920 +} + +// Namespace: System.Runtime.Serialization.Formatters +[Serializable] +public sealed class SoapFault : ISerializable // TypeDefIndex: 1154 +{ + // Fields + private string code; // 0x08 + private string actor; // 0x0C + private string faultString; // 0x10 + private object detail; // 0x14 + + // Properties + public object Detail { get; set; } // 0x100EF0C0 0x10127B00 + public string FaultActor { get; set; } // 0x100C5B30 0x100C5B50 + public string FaultCode { get; set; } // 0x100BF0C0 0x100EB270 + public string FaultString { get; set; } // 0x100BFC20 0x100C5B40 + + // Methods + public void .ctor(); // 0x100BF000 + private void .ctor(SerializationInfo info, StreamingContext context); // 0x10127A20 + public void .ctor(string faultCode, string faultString, string faultActor, ServerFault serverFault); // 0x10127AD0 + public void GetObjectData(SerializationInfo info, StreamingContext context); // 0x10127950 +} + +// Namespace: System.Runtime.Serialization.Formatters +[Serializable] +public class SoapMessage : ISoapMessage // TypeDefIndex: 1155 +{ + // Fields + private Header[] headers; // 0x08 + private string methodName; // 0x0C + private string[] paramNames; // 0x10 + private Type[] paramTypes; // 0x14 + private object[] paramValues; // 0x18 + private string xmlNameSpace; // 0x1C + + // Properties + public Header[] Headers { get; set; } // 0x100BF0C0 0x100EB270 + public string MethodName { get; set; } // 0x100C5B30 0x100C5B50 + public string[] ParamNames { get; set; } // 0x100BFC20 0x100C5B40 + public Type[] ParamTypes { get; set; } // 0x100EF0C0 0x10127B00 + public object[] ParamValues { get; set; } // 0x100EE580 0x10113F40 + public string XmlNameSpace { get; set; } // 0x100F85F0 0x10113F50 + + // Methods + public void .ctor(); // 0x100BF000 +} + +// Namespace: System.Runtime.Serialization.Formatters +public enum TypeFilterLevel // TypeDefIndex: 1156 +{ + Low = 2, + Full = 3 +} + +// Namespace: System.Runtime.Serialization +[Serializable] +public abstract class Formatter : IFormatter // TypeDefIndex: 1157 +{ + // Fields + protected ObjectIDGenerator m_idGenerator; // 0x08 + protected Queue m_objectQueue; // 0x0C + + // Properties + public abstract SerializationBinder Binder { get; set; } + public abstract StreamingContext Context { get; set; } + public abstract ISurrogateSelector SurrogateSelector { get; set; } + + // Methods + protected void .ctor(); // 0x101854A0 + public abstract object Deserialize(Stream serializationStream); + protected virtual object GetNext(out long objID); // 0x10184C40 + protected virtual long Schedule(object obj); // 0x10184CE0 + public abstract void Serialize(Stream serializationStream, object graph); + protected abstract void WriteArray(object obj, string name, Type memberType); + protected abstract void WriteBoolean(bool val, string name); + protected abstract void WriteByte(byte val, string name); + protected abstract void WriteChar(char val, string name); + protected abstract void WriteDateTime(DateTime val, string name); + protected abstract void WriteDecimal(Decimal val, string name); + protected abstract void WriteDouble(double val, string name); + protected abstract void WriteInt16(short val, string name); + protected abstract void WriteInt32(int val, string name); + protected abstract void WriteInt64(long val, string name); + protected virtual void WriteMember(string memberName, object data); // 0x10184D60 + protected abstract void WriteObjectRef(object obj, string name, Type memberType); + protected abstract void WriteSByte(sbyte val, string name); + protected abstract void WriteSingle(float val, string name); + protected abstract void WriteTimeSpan(TimeSpan val, string name); + protected abstract void WriteUInt16(ushort val, string name); + protected abstract void WriteUInt32(uint val, string name); + protected abstract void WriteUInt64(ulong val, string name); + protected abstract void WriteValueType(object obj, string name, Type memberType); +} + +// Namespace: System.Runtime.Serialization +public class FormatterConverter : IFormatterConverter // TypeDefIndex: 1158 +{ + // Methods + public void .ctor(); // 0x100BF000 + public object Convert(object value, Type type); // 0x10183830 + public object Convert(object value, TypeCode typeCode); // 0x10183880 + public bool ToBoolean(object value); // 0x101838D0 + public byte ToByte(object value); // 0x10183960 + public char ToChar(object value); // 0x101839F0 + public DateTime ToDateTime(object value); // 0x10183A80 + public Decimal ToDecimal(object value); // 0x10183B20 + public double ToDouble(object value); // 0x10183BC0 + public short ToInt16(object value); // 0x10183C50 + public int ToInt32(object value); // 0x10183CE0 + public long ToInt64(object value); // 0x10183D70 + public float ToSingle(object value); // 0x10183E90 + public string ToString(object value); // 0x10183F20 + public sbyte ToSByte(object value); // 0x10183E00 + public ushort ToUInt16(object value); // 0x10183FB0 + public uint ToUInt32(object value); // 0x10184040 + public ulong ToUInt64(object value); // 0x101840D0 +} + +// Namespace: System.Runtime.Serialization +public sealed class FormatterServices // TypeDefIndex: 1159 +{ + // Fields + private const BindingFlags fieldFlags = 54; // 0x00 + + // Methods + private void .ctor(); // 0x100BF000 + public static object[] GetObjectData(object obj, MemberInfo[] members); // 0x101844C0 + public static MemberInfo[] GetSerializableMembers(Type type); // 0x10184920 + public static MemberInfo[] GetSerializableMembers(Type type, StreamingContext context); // 0x101847A0 + private static void GetFields(Type reflectedType, Type type, ArrayList fields); // 0x10184360 + public static Type GetTypeFromAssembly(Assembly assem, string name); // 0x10184960 + public static object GetUninitializedObject(Type type); // 0x101846D0 + public static object PopulateObjectMembers(object obj, MemberInfo[] members, object[] data); // 0x101849F0 + public static void CheckTypeSecurity(Type t, TypeFilterLevel securityLevel); // 0x101842B0 + private static void CheckNotAssignable(Type basetype, Type type); // 0x10184160 + public static object GetSafeUninitializedObject(Type type); // 0x101846D0 +} + +// Namespace: System.Runtime.Serialization +public interface IDeserializationCallback // TypeDefIndex: 1160 +{ + // Methods + void OnDeserialization(object sender); +} + +// Namespace: System.Runtime.Serialization +public interface IFormatter // TypeDefIndex: 1161 +{ + // Properties + SerializationBinder Binder { get; set; } + StreamingContext Context { get; set; } + ISurrogateSelector SurrogateSelector { get; set; } + + // Methods + object Deserialize(Stream serializationStream); + void Serialize(Stream serializationStream, object graph); +} + +// Namespace: System.Runtime.Serialization +public interface IFormatterConverter // TypeDefIndex: 1162 +{ + // Methods + object Convert(object value, Type type); + object Convert(object value, TypeCode typeCode); + bool ToBoolean(object value); + byte ToByte(object value); + char ToChar(object value); + DateTime ToDateTime(object value); + Decimal ToDecimal(object value); + double ToDouble(object value); + short ToInt16(object value); + int ToInt32(object value); + long ToInt64(object value); + sbyte ToSByte(object value); + float ToSingle(object value); + string ToString(object value); + ushort ToUInt16(object value); + uint ToUInt32(object value); + ulong ToUInt64(object value); +} + +// Namespace: System.Runtime.Serialization +public interface IObjectReference // TypeDefIndex: 1163 +{ + // Methods + object GetRealObject(StreamingContext context); +} + +// Namespace: System.Runtime.Serialization +public interface ISerializationSurrogate // TypeDefIndex: 1164 +{ + // Methods + void GetObjectData(object obj, SerializationInfo info, StreamingContext context); + object SetObjectData(object obj, SerializationInfo info, StreamingContext context, ISurrogateSelector selector); +} + +// Namespace: System.Runtime.Serialization +public interface ISurrogateSelector // TypeDefIndex: 1165 +{ + // Methods + void ChainSelector(ISurrogateSelector selector); + ISurrogateSelector GetNextSelector(); + ISerializationSurrogate GetSurrogate(Type type, StreamingContext context, out ISurrogateSelector selector); +} + +// Namespace: System.Runtime.Serialization +[Serializable] +public class ObjectIDGenerator // TypeDefIndex: 1166 +{ + // Fields + private Hashtable table; // 0x08 + private long current; // 0x10 + private static InstanceComparer comparer; // 0x00 + + // Properties + internal long NextId { get; } // 0x1011A870 + + // Methods + public void .ctor(); // 0x1011A7E0 + private static void .cctor(); // 0x1011A790 + public virtual long GetId(object obj, out bool firstTime); // 0x1011A5A0 + public virtual long HasId(object obj, out bool firstTime); // 0x1011A6D0 +} + +// Namespace: +private class InstanceComparer : IComparer, IHashCodeProvider // TypeDefIndex: 1167 +{ + // Methods + public void .ctor(); // 0x100BF000 + private int System.Collections.IComparer.Compare(object o1, object o2); // 0x10117C00 + private int System.Collections.IHashCodeProvider.GetHashCode(object o); // 0x10117C70 +} + +// Namespace: System.Runtime.Serialization +public class ObjectManager // TypeDefIndex: 1168 +{ + // Fields + private ObjectRecord _objectRecordChain; // 0x08 + private ObjectRecord _lastObjectRecord; // 0x0C + private ArrayList _deserializedRecords; // 0x10 + private ArrayList _onDeserializedCallbackRecords; // 0x14 + private Hashtable _objectRecords; // 0x18 + private bool _finalFixup; // 0x1C + private ISurrogateSelector _selector; // 0x20 + private StreamingContext _context; // 0x24 + private int _registeredObjectsCount; // 0x2C + + // Methods + public void .ctor(ISurrogateSelector selector, StreamingContext context); // 0x1011BCF0 + public virtual void DoFixups(); // 0x1011A8E0 + internal ObjectRecord GetObjectRecord(long objectID); // 0x1011AC40 + public virtual object GetObject(long objectID); // 0x1011AE40 + public virtual void RaiseDeserializationEvent(); // 0x1011AF50 + public void RaiseOnDeserializingEvent(object obj); // 0x1011B2A0 + private void RaiseOnDeserializedEvent(object obj); // 0x1011B1C0 + private void AddFixup(BaseFixupRecord record); // 0x1011A8A0 + public virtual void RecordArrayElementFixup(long arrayToBeFixed, int index, long objectRequired); // 0x1011B4A0 + public virtual void RecordArrayElementFixup(long arrayToBeFixed, int[] indices, long objectRequired); // 0x1011B380 + public virtual void RecordDelayedFixup(long objectToBeFixed, string memberName, long objectRequired); // 0x1011B5B0 + public virtual void RecordFixup(long objectToBeFixed, MemberInfo member, long objectRequired); // 0x1011B6D0 + private void RegisterObjectInternal(object obj, ObjectRecord record); // 0x1011B7F0 + public virtual void RegisterObject(object obj, long objectID); // 0x1011BB30 + public void RegisterObject(object obj, long objectID, SerializationInfo info); // 0x1011BC20 + public void RegisterObject(object obj, long objectID, SerializationInfo info, long idOfContainingObj, MemberInfo member); // 0x1011BBF0 + public void RegisterObject(object obj, long objectID, SerializationInfo info, long idOfContainingObj, MemberInfo member, int[] arrayIndex); // 0x1011BA40 +} + +// Namespace: System.Runtime.Serialization +internal abstract class BaseFixupRecord // TypeDefIndex: 1169 +{ + // Fields + protected internal ObjectRecord ObjectToBeFixed; // 0x08 + protected internal ObjectRecord ObjectRequired; // 0x0C + public BaseFixupRecord NextSameContainer; // 0x10 + public BaseFixupRecord NextSameRequired; // 0x14 + + // Methods + public void .ctor(ObjectRecord objectToBeFixed, ObjectRecord objectRequired); // 0x100F97B0 + public bool DoFixup(ObjectManager manager, bool strict); // 0x10182440 + protected abstract void FixupImpl(ObjectManager manager); +} + +// Namespace: System.Runtime.Serialization +internal class ArrayFixupRecord : BaseFixupRecord // TypeDefIndex: 1170 +{ + // Fields + private int _index; // 0x18 + + // Methods + public void .ctor(ObjectRecord objectToBeFixed, int index, ObjectRecord objectRequired); // 0x10182410 + protected override void FixupImpl(ObjectManager manager); // 0x10182370 +} + +// Namespace: System.Runtime.Serialization +internal class MultiArrayFixupRecord : BaseFixupRecord // TypeDefIndex: 1171 +{ + // Fields + private int[] _indices; // 0x18 + + // Methods + public void .ctor(ObjectRecord objectToBeFixed, int[] indices, ObjectRecord objectRequired); // 0x1011A570 + protected override void FixupImpl(ObjectManager manager); // 0x1011A530 +} + +// Namespace: System.Runtime.Serialization +internal class FixupRecord : BaseFixupRecord // TypeDefIndex: 1172 +{ + // Fields + public MemberInfo _member; // 0x18 + + // Methods + public void .ctor(ObjectRecord objectToBeFixed, MemberInfo member, ObjectRecord objectRequired); // 0x10182410 + protected override void FixupImpl(ObjectManager manager); // 0x101837F0 +} + +// Namespace: System.Runtime.Serialization +internal class DelayedFixupRecord : BaseFixupRecord // TypeDefIndex: 1173 +{ + // Fields + public string _memberName; // 0x18 + + // Methods + public void .ctor(ObjectRecord objectToBeFixed, string memberName, ObjectRecord objectRequired); // 0x10182410 + protected override void FixupImpl(ObjectManager manager); // 0x101836C0 +} + +// Namespace: System.Runtime.Serialization +internal enum ObjectRecordStatus : byte // TypeDefIndex: 1174 +{ + Unregistered = 0, + ReferenceUnsolved = 1, + ReferenceSolvingDelayed = 2, + ReferenceSolved = 3 +} + +// Namespace: System.Runtime.Serialization +internal class ObjectRecord // TypeDefIndex: 1175 +{ + // Fields + public ObjectRecordStatus Status; // 0x08 + public object OriginalObject; // 0x0C + public object ObjectInstance; // 0x10 + public long ObjectID; // 0x18 + public SerializationInfo Info; // 0x20 + public long IdOfContainingObj; // 0x28 + public ISerializationSurrogate Surrogate; // 0x30 + public ISurrogateSelector SurrogateSelector; // 0x34 + public MemberInfo Member; // 0x38 + public int[] ArrayIndex; // 0x3C + public BaseFixupRecord FixupChainAsContainer; // 0x40 + public BaseFixupRecord FixupChainAsRequired; // 0x44 + public ObjectRecord Next; // 0x48 + + // Properties + public bool IsInstanceReady { get; } // 0x1011FEF0 + public bool IsUnsolvedObjectReference { get; } // 0x1011FF60 + public bool IsRegistered { get; } // 0x1011FF50 + public bool HasPendingFixups { get; } // 0x1011FEE0 + + // Methods + public void .ctor(); // 0x100BF000 + public void SetMemberValue(ObjectManager manager, MemberInfo member, object value); // 0x1011FC70 + public void SetArrayValue(ObjectManager manager, object value, int[] indices); // 0x1011FB30 + public void SetMemberValue(ObjectManager manager, string memberName, object value); // 0x1011FBE0 + public bool DoFixups(bool asContainer, ObjectManager manager, bool strict); // 0x1011F440 + public void RemoveFixup(BaseFixupRecord fixupToRemove, bool asContainer); // 0x1011FAD0 + private void UnchainFixup(BaseFixupRecord fixup, BaseFixupRecord prevFixup, bool asContainer); // 0x1011FE90 + public void ChainFixup(BaseFixupRecord fixup, bool asContainer); // 0x1011F400 + public bool LoadData(ObjectManager manager, ISurrogateSelector selector, StreamingContext context); // 0x1011F4E0 +} + +// Namespace: System.Runtime.Serialization +public sealed class OnDeserializedAttribute : Attribute // TypeDefIndex: 1176 +{ + // Methods + public void .ctor(); // 0x100C5970 +} + +// Namespace: System.Runtime.Serialization +public sealed class OnDeserializingAttribute : Attribute // TypeDefIndex: 1177 +{ + // Methods + public void .ctor(); // 0x100C5970 +} + +// Namespace: System.Runtime.Serialization +public sealed class OnSerializedAttribute : Attribute // TypeDefIndex: 1178 +{ + // Methods + public void .ctor(); // 0x100C5970 +} + +// Namespace: System.Runtime.Serialization +public sealed class OnSerializingAttribute : Attribute // TypeDefIndex: 1179 +{ + // Methods + public void .ctor(); // 0x100C5970 +} + +// Namespace: System.Runtime.Serialization +public sealed class OptionalFieldAttribute : Attribute // TypeDefIndex: 1180 +{ + // Fields + private int version_added; // 0x08 + + // Properties + public int VersionAdded { get; set; } // 0x100BF0C0 0x100EB270 + + // Methods + public void .ctor(); // 0x100C5970 +} + +// Namespace: System.Runtime.Serialization +[Serializable] +public abstract class SerializationBinder // TypeDefIndex: 1181 +{ + // Methods + protected void .ctor(); // 0x100BF000 + public abstract Type BindToType(string assemblyName, string typeName); +} + +// Namespace: System.Runtime.Serialization +internal sealed class SerializationCallbacks // TypeDefIndex: 1182 +{ + // Fields + private const BindingFlags DefaultBindingFlags = 54; // 0x00 + private readonly ArrayList onSerializingList; // 0x08 + private readonly ArrayList onSerializedList; // 0x0C + private readonly ArrayList onDeserializingList; // 0x10 + private readonly ArrayList onDeserializedList; // 0x14 + private static Hashtable cache; // 0x00 + private static object cache_lock; // 0x04 + + // Properties + public bool HasSerializingCallbacks { get; } // 0x101253D0 + public bool HasSerializedCallbacks { get; } // 0x101253C0 + public bool HasDeserializingCallbacks { get; } // 0x101253B0 + public bool HasDeserializedCallbacks { get; } // 0x101253A0 + + // Methods + public void .ctor(Type type); // 0x101252C0 + private static void .cctor(); // 0x10125250 + private static ArrayList GetMethodsByAttribute(Type type, Type attr); // 0x10124970 + private static void Invoke(ArrayList list, object target, StreamingContext context); // 0x10124EC0 + public void RaiseOnSerializing(object target, StreamingContext contex); // 0x101251F0 + public void RaiseOnSerialized(object target, StreamingContext contex); // 0x10125190 + public void RaiseOnDeserializing(object target, StreamingContext contex); // 0x10125130 + public void RaiseOnDeserialized(object target, StreamingContext contex); // 0x101250D0 + public static SerializationCallbacks GetSerializationCallbacks(Type t); // 0x10124B50 +} + +// Namespace: +public delegate void CallbackHandler(StreamingContext context); // TypeDefIndex: 1183; 0x10113FE0 + +// Namespace: System.Runtime.Serialization +public struct SerializationEntry // TypeDefIndex: 1184 +{ + // Fields + private string name; // 0x08 + private Type objectType; // 0x0C + private object value; // 0x10 + + // Properties + public string Name { get; } // 0x10003A80 + public Type ObjectType { get; } // 0x10003A90 + public object Value { get; } // 0x100039B0 + + // Methods + internal void .ctor(string name, Type type, object value); // 0x100074C0 +} + +// Namespace: System.Runtime.Serialization +[Serializable] +public class SerializationException : SystemException // TypeDefIndex: 1185 +{ + // Methods + public void .ctor(); // 0x101253E0 + public void .ctor(string message); // 0x100E5680 + public void .ctor(string message, Exception innerException); // 0x100E5670 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 +} + +// Namespace: System.Runtime.Serialization +public sealed class SerializationInfo // TypeDefIndex: 1186 +{ + // Fields + private Hashtable serialized; // 0x08 + private ArrayList values; // 0x0C + private string assemblyName; // 0x10 + private string fullTypeName; // 0x14 + private IFormatterConverter converter; // 0x18 + + // Properties + public string AssemblyName { get; set; } // 0x100BFC20 0x10127540 + public string FullTypeName { get; set; } // 0x100EF0C0 0x101275A0 + public int MemberCount { get; } // 0x101273C0 + + // Methods + private void .ctor(Type type); // 0x10127000 + private void .ctor(Type type, SerializationEntry[] data); // 0x10127200 + public void .ctor(Type type, IFormatterConverter converter); // 0x101270E0 + public void AddValue(string name, object value, Type type); // 0x10125660 + public object GetValue(string name, Type type); // 0x10126D70 + public void SetType(Type type); // 0x10126F50 + public SerializationInfoEnumerator GetEnumerator(); // 0x10126510 + public void AddValue(string name, short value); // 0x10125C70 + public void AddValue(string name, ushort value); // 0x10125A60 + public void AddValue(string name, int value); // 0x101257D0 + public void AddValue(string name, byte value); // 0x101259E0 + public void AddValue(string name, bool value); // 0x10125AE0 + public void AddValue(string name, char value); // 0x10125850 + public void AddValue(string name, sbyte value); // 0x10125E10 + public void AddValue(string name, double value); // 0x10125F20 + public void AddValue(string name, Decimal value); // 0x101258D0 + public void AddValue(string name, DateTime value); // 0x10125CF0 + public void AddValue(string name, float value); // 0x10125D80 + public void AddValue(string name, uint value); // 0x10125960 + public void AddValue(string name, long value); // 0x10125BE0 + public void AddValue(string name, ulong value); // 0x10125E90 + public void AddValue(string name, object value); // 0x10125B60 + public bool GetBoolean(string name); // 0x10125FB0 + public byte GetByte(string name); // 0x10126090 + public char GetChar(string name); // 0x10126170 + public DateTime GetDateTime(string name); // 0x10126250 + public Decimal GetDecimal(string name); // 0x10126340 + public double GetDouble(string name); // 0x10126430 + public short GetInt16(string name); // 0x10126580 + public int GetInt32(string name); // 0x10126660 + public long GetInt64(string name); // 0x10126740 + public sbyte GetSByte(string name); // 0x10126820 + public float GetSingle(string name); // 0x10126900 + public string GetString(string name); // 0x101269E0 + public ushort GetUInt16(string name); // 0x10126AD0 + public uint GetUInt32(string name); // 0x10126BB0 + public ulong GetUInt64(string name); // 0x10126C90 + private SerializationEntry[] get_entries(); // 0x101273F0 +} + +// Namespace: System.Runtime.Serialization +public sealed class SerializationInfoEnumerator : IEnumerator // TypeDefIndex: 1187 +{ + // Fields + private IEnumerator enumerator; // 0x08 + + // Properties + private object System.Collections.IEnumerator.Current { get; } // 0x101254C0 + public SerializationEntry Current { get; } // 0x10125550 + public string Name { get; } // 0x101255D0 + public Type ObjectType { get; } // 0x10125600 + public object Value { get; } // 0x10125630 + + // Methods + internal void .ctor(ArrayList list); // 0x10125510 + public bool MoveNext(); // 0x10125420 + public void Reset(); // 0x10125470 +} + +// Namespace: System.Runtime.Serialization +public sealed class SerializationObjectManager // TypeDefIndex: 1188 +{ + // Fields + private readonly StreamingContext context; // 0x08 + private readonly Hashtable seen; // 0x10 + private CallbackHandler callbacks; // 0x14 + + // Events + private event CallbackHandler callbacks { + add; // 0x10127860 + remove; // 0x101278C0 + } + + // Methods + public void .ctor(StreamingContext context); // 0x10127800 + public void RegisterObject(object obj); // 0x10127620 + public void RaiseOnSerializedEvent(); // 0x10127600 +} + +// Namespace: +private sealed class c__AnonStorey3 // TypeDefIndex: 1189 +{ + // Fields + internal SerializationCallbacks sc; // 0x08 + internal object obj; // 0x0C + + // Methods + public void .ctor(); // 0x100BF000 + internal void <>m__2(StreamingContext ctx); // 0x10128080 +} + +// Namespace: System.Runtime.Serialization +[Serializable] +public struct StreamingContext // TypeDefIndex: 1190 +{ + // Fields + private StreamingContextStates state; // 0x08 + private object additional; // 0x0C + + // Properties + public object Context { get; } // 0x10003A90 + public StreamingContextStates State { get; } // 0x10003A80 + + // Methods + public void .ctor(StreamingContextStates state); // 0x10007580 + public void .ctor(StreamingContextStates state, object additional); // 0x100075A0 + public override bool Equals(object obj); // 0x10007500 + public override int GetHashCode(); // 0x10003A80 +} + +// Namespace: System.Runtime.Serialization +[Serializable] +public enum StreamingContextStates // TypeDefIndex: 1191 +{ + CrossProcess = 1, + CrossMachine = 2, + File = 4, + Persistence = 8, + Remoting = 16, + Other = 32, + Clone = 64, + CrossAppDomain = 128, + All = 255 +} + +// Namespace: System.Runtime.Serialization +public class SurrogateSelector : ISurrogateSelector // TypeDefIndex: 1192 +{ + // Fields + private Hashtable Surrogates; // 0x08 + private ISurrogateSelector nextSelector; // 0x0C + + // Methods + public void .ctor(); // 0x10128020 + public virtual void AddSurrogate(Type type, StreamingContext context, ISerializationSurrogate surrogate); // 0x10127B50 + public virtual void ChainSelector(ISurrogateSelector selector); // 0x10127D10 + public virtual ISurrogateSelector GetNextSelector(); // 0x100C5B30 + public virtual ISerializationSurrogate GetSurrogate(Type type, StreamingContext context, out ISurrogateSelector selector); // 0x10127D90 + public virtual void RemoveSurrogate(Type type, StreamingContext context); // 0x10127F10 +} + +// Namespace: System.Runtime.Versioning +public sealed class ResourceConsumptionAttribute : Attribute // TypeDefIndex: 1193 +{ + // Fields + private ResourceScope resource; // 0x08 + private ResourceScope consumption; // 0x0C + + // Properties + public ResourceScope ConsumptionScope { get; } // 0x100C5B30 + public ResourceScope ResourceScope { get; } // 0x100BF0C0 + + // Methods + public void .ctor(ResourceScope resourceScope); // 0x10123810 + public void .ctor(ResourceScope resourceScope, ResourceScope consumptionScope); // 0x101237E0 +} + +// Namespace: System.Runtime.Versioning +public sealed class ResourceExposureAttribute : Attribute // TypeDefIndex: 1194 +{ + // Fields + private ResourceScope exposure; // 0x08 + + // Properties + public ResourceScope ResourceExposureLevel { get; } // 0x100BF0C0 + + // Methods + public void .ctor(ResourceScope exposureLevel); // 0x100E5940 +} + +// Namespace: System.Runtime.Versioning +public enum ResourceScope // TypeDefIndex: 1195 +{ + None = 0, + Machine = 1, + Process = 2, + AppDomain = 4, + Library = 8, + Private = 16, + Assembly = 32 +} + +// Namespace: System.Runtime.Versioning +public static class VersioningHelper // TypeDefIndex: 1196 +{ + // Methods + private static int GetDomainId(); // 0x100C5600 + private static int GetProcessId(); // 0x100C5600 + private static string SafeName(string name, bool process, bool appdomain); // 0x10128740 + private static string ConvertFromMachine(string name, ResourceScope to, Type type); // 0x10128170 + private static string ConvertFromProcess(string name, ResourceScope to, Type type); // 0x101282B0 + private static string ConvertFromAppDomain(string name, ResourceScope to, Type type); // 0x101280F0 + public static string MakeVersionSafeName(string name, ResourceScope from, ResourceScope to); // 0x101283B0 + public static string MakeVersionSafeName(string name, ResourceScope from, ResourceScope to, Type type); // 0x101283D0 +} + +// Namespace: System.Runtime +[Serializable] +public enum GCLatencyMode // TypeDefIndex: 1197 +{ + Batch = 0, + Interactive = 1, + LowLatency = 2 +} + +// Namespace: System.Runtime +public static class GCSettings // TypeDefIndex: 1198 +{ + // Properties + public static bool IsServerGC { get; } // 0x100EFBF0 + public static GCLatencyMode LatencyMode { get; set; } // 0x100EF660 0x100C5530 + +} + +// Namespace: System.Runtime +public sealed class MemoryFailPoint : CriticalFinalizerObject, IDisposable // TypeDefIndex: 1199 +{ + // Methods + public void .ctor(int sizeInMegabytes); // 0x101A86C0 + protected override void Finalize(); // 0x101A8690 + public void Dispose(); // 0x101A8640 +} + +// Namespace: System.Security.AccessControl +public enum AccessControlActions // TypeDefIndex: 1200 +{ + None = 0, + View = 1, + Change = 2 +} + +// Namespace: System.Security.AccessControl +public enum AccessControlModification // TypeDefIndex: 1201 +{ + Add = 0, + Set = 1, + Reset = 2, + Remove = 3, + RemoveAll = 4, + RemoveSpecific = 5 +} + +// Namespace: System.Security.AccessControl +public enum AccessControlSections // TypeDefIndex: 1202 +{ + None = 0, + Audit = 1, + Access = 2, + Owner = 4, + Group = 8, + All = 15 +} + +// Namespace: System.Security.AccessControl +public enum AccessControlType // TypeDefIndex: 1203 +{ + Allow = 0, + Deny = 1 +} + +// Namespace: System.Security.AccessControl +public abstract class AccessRule : AuthorizationRule // TypeDefIndex: 1204 +{ + // Fields + private AccessControlType type; // 0x1C + + // Properties + public AccessControlType AccessControlType { get; } // 0x100F85F0 + + // Methods + protected void .ctor(IdentityReference identity, int accessMask, bool isInherited, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AccessControlType type); // 0x10113350 +} + +// Namespace: System.Security.AccessControl +public sealed class AceEnumerator : IEnumerator // TypeDefIndex: 1205 +{ + // Fields + private GenericAcl owner; // 0x08 + private int current; // 0x0C + + // Properties + private object System.Collections.IEnumerator.Current { get; } // 0x10113490 + public GenericAce Current { get; } // 0x10113490 + + // Methods + internal void .ctor(GenericAcl owner); // 0x101134D0 + public bool MoveNext(); // 0x10113430 + public void Reset(); // 0x10113480 +} + +// Namespace: System.Security.AccessControl +public enum AceFlags : byte // TypeDefIndex: 1206 +{ + None = 0, + ObjectInherit = 1, + ContainerInherit = 2, + NoPropagateInherit = 4, + InheritOnly = 8, + InheritanceFlags = 15, + Inherited = 16, + SuccessfulAccess = 64, + FailedAccess = 128, + AuditFlags = 192 +} + +// Namespace: System.Security.AccessControl +public enum AceQualifier // TypeDefIndex: 1207 +{ + AccessAllowed = 0, + AccessDenied = 1, + SystemAudit = 2, + SystemAlarm = 3 +} + +// Namespace: System.Security.AccessControl +public enum AceType // TypeDefIndex: 1208 +{ + AccessAllowed = 0, + AccessDenied = 1, + SystemAudit = 2, + SystemAlarm = 3, + AccessAllowedCompound = 4, + AccessAllowedObject = 5, + AccessDeniedObject = 6, + SystemAuditObject = 7, + SystemAlarmObject = 8, + AccessAllowedCallback = 9, + AccessDeniedCallback = 10, + AccessAllowedCallbackObject = 11, + AccessDeniedCallbackObject = 12, + SystemAuditCallback = 13, + SystemAlarmCallback = 14, + SystemAuditCallbackObject = 15, + SystemAlarmCallbackObject = 16, + MaxDefinedAceType = 16 +} + +// Namespace: System.Security.AccessControl +public enum AuditFlags // TypeDefIndex: 1209 +{ + None = 0, + Success = 1, + Failure = 2 +} + +// Namespace: System.Security.AccessControl +public abstract class AuditRule : AuthorizationRule // TypeDefIndex: 1210 +{ + // Fields + private AuditFlags auditFlags; // 0x1C + + // Properties + public AuditFlags AuditFlags { get; } // 0x100F85F0 + + // Methods + protected void .ctor(IdentityReference identity, int accessMask, bool isInherited, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AuditFlags auditFlags); // 0x10113520 +} + +// Namespace: System.Security.AccessControl +public abstract class AuthorizationRule // TypeDefIndex: 1211 +{ + // Fields + private IdentityReference identity; // 0x08 + private int accessMask; // 0x0C + private bool isInherited; // 0x10 + private InheritanceFlags inheritanceFlags; // 0x14 + private PropagationFlags propagationFlags; // 0x18 + + // Properties + public IdentityReference IdentityReference { get; } // 0x100BF0C0 + public InheritanceFlags InheritanceFlags { get; } // 0x100EF0C0 + public bool IsInherited { get; } // 0x101137C0 + public PropagationFlags PropagationFlags { get; } // 0x100EE580 + protected internal int AccessMask { get; } // 0x100C5B30 + + // Methods + internal void .ctor(); // 0x100BF000 + protected internal void .ctor(IdentityReference identity, int accessMask, bool isInherited, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags); // 0x10113700 +} + +// Namespace: System.Security.AccessControl +public sealed class AuthorizationRuleCollection : ReadOnlyCollectionBase // TypeDefIndex: 1212 +{ + // Properties + public AuthorizationRule Item { get; } // 0x10113660 + + // Methods + private void .ctor(AuthorizationRule[] rules); // 0x10113620 + public void CopyTo(AuthorizationRule[] rules, int index); // 0x101135E0 +} + +// Namespace: System.Security.AccessControl +public sealed class CommonAce : QualifiedAce // TypeDefIndex: 1213 +{ + // Properties + public override int BinaryLength { get; } // 0x10116F50 + + // Methods + public void .ctor(AceFlags flags, AceQualifier qualifier, int accessMask, SecurityIdentifier sid, bool isCallback, byte[] opaque); // 0x10116F20 + public override void GetBinaryForm(byte[] binaryForm, int offset); // 0x10116E80 + public static int MaxOpaqueLength(bool isCallback); // 0x10116ED0 +} + +// Namespace: System.Security.AccessControl +public abstract class CommonAcl : GenericAcl // TypeDefIndex: 1214 +{ + // Fields + private const int default_capacity = 10; // 0x00 + private bool is_container; // 0x08 + private bool is_ds; // 0x09 + private byte revision; // 0x0A + private List`1 list; // 0x0C + + // Properties + public sealed override int BinaryLength { get; } // 0x101171B0 + public sealed override int Count { get; } // 0x10117200 + public bool IsCanonical { get; } // 0x10117240 + public bool IsContainer { get; } // 0x100EA020 + public bool IsDS { get; } // 0x10117290 + public sealed override GenericAce Item { get; set; } // 0x101172A0 0x10117300 + public sealed override byte Revision { get; } // 0x101172F0 + + // Methods + internal void .ctor(bool isContainer, bool isDS, byte revision); // 0x10117120 + internal void .ctor(bool isContainer, bool isDS, byte revision, int capacity); // 0x10117090 + public sealed override void GetBinaryForm(byte[] binaryForm, int offset); // 0x10116FA0 + public void Purge(SecurityIdentifier sid); // 0x10116FF0 + public void RemoveInheritedAces(); // 0x10117040 +} + +// Namespace: System.Security.AccessControl +public abstract class CommonObjectSecurity : ObjectSecurity // TypeDefIndex: 1215 +{ + // Fields + private List`1 access_rules; // 0x10 + private List`1 audit_rules; // 0x14 + + // Methods + protected void .ctor(bool isContainer); // 0x10117B80 + public AuthorizationRuleCollection GetAccessRules(bool includeExplicit, bool includeInherited, Type targetType); // 0x101173F0 + public AuthorizationRuleCollection GetAuditRules(bool includeExplicit, bool includeInherited, Type targetType); // 0x10117440 + protected void AddAccessRule(AccessRule rule); // 0x10117350 + protected bool RemoveAccessRule(AccessRule rule); // 0x10117950 + protected void RemoveAccessRuleAll(AccessRule rule); // 0x101178B0 + protected void RemoveAccessRuleSpecific(AccessRule rule); // 0x10117900 + protected void ResetAccessRule(AccessRule rule); // 0x10117A90 + protected void SetAccessRule(AccessRule rule); // 0x10117AE0 + protected override bool ModifyAccess(AccessControlModification modification, AccessRule rule, out bool modified); // 0x10117490 + protected void AddAuditRule(AuditRule rule); // 0x101173A0 + protected bool RemoveAuditRule(AuditRule rule); // 0x10117A40 + protected void RemoveAuditRuleAll(AuditRule rule); // 0x101179A0 + protected void RemoveAuditRuleSpecific(AuditRule rule); // 0x101179F0 + protected void SetAuditRule(AuditRule rule); // 0x10117B30 + protected override bool ModifyAudit(AccessControlModification modification, AuditRule rule, out bool modified); // 0x101176A0 +} + +// Namespace: System.Security.AccessControl +public sealed class CommonSecurityDescriptor : GenericSecurityDescriptor // TypeDefIndex: 1216 +{ + // Fields + private bool isContainer; // 0x08 + private bool isDS; // 0x09 + private ControlFlags flags; // 0x0C + private SecurityIdentifier owner; // 0x10 + private SecurityIdentifier group; // 0x14 + private SystemAcl systemAcl; // 0x18 + private DiscretionaryAcl discretionaryAcl; // 0x1C + + // Properties + public override ControlFlags ControlFlags { get; } // 0x100C5B30 + public DiscretionaryAcl DiscretionaryAcl { get; set; } // 0x100F85F0 0x10113F50 + public override SecurityIdentifier Group { get; set; } // 0x100EF0C0 0x10127B00 + public bool IsContainer { get; } // 0x100EA020 + public bool IsDiscretionaryAclCanonical { get; } // 0x10288550 + public bool IsDS { get; } // 0x10117290 + public bool IsSystemAclCanonical { get; } // 0x102885A0 + public override SecurityIdentifier Owner { get; set; } // 0x100BFC20 0x100C5B40 + public SystemAcl SystemAcl { get; set; } // 0x100EE580 0x10113F40 + + // Methods + public void .ctor(bool isContainer, bool isDS, RawSecurityDescriptor rawSecurityDescriptor); // 0x10288490 + public void .ctor(bool isContainer, bool isDS, string sddlForm); // 0x102884F0 + public void .ctor(bool isContainer, bool isDS, byte[] binaryForm, int offset); // 0x10288430 + public void .ctor(bool isContainer, bool isDS, ControlFlags flags, SecurityIdentifier owner, SecurityIdentifier group, SystemAcl systemAcl, DiscretionaryAcl discretionaryAcl); // 0x10288390 + public void PurgeAccessControl(SecurityIdentifier sid); // 0x10288250 + public void PurgeAudit(SecurityIdentifier sid); // 0x102882A0 + public void SetDiscretionaryAclProtection(bool isProtected, bool preserveInheritance); // 0x102882F0 + public void SetSystemAclProtection(bool isProtected, bool preserveInheritance); // 0x10288340 +} + +// Namespace: System.Security.AccessControl +public sealed class CompoundAce : KnownAce // TypeDefIndex: 1217 +{ + // Fields + private CompoundAceType compound_ace_type; // 0x20 + + // Properties + public override int BinaryLength { get; } // 0x10288680 + public CompoundAceType CompoundAceType { get; set; } // 0x100EACD0 0x100EB230 + + // Methods + public void .ctor(AceFlags flags, int accessMask, CompoundAceType compoundAceType, SecurityIdentifier sid); // 0x10288640 + public override void GetBinaryForm(byte[] binaryForm, int offset); // 0x102885F0 +} + +// Namespace: System.Security.AccessControl +public enum CompoundAceType // TypeDefIndex: 1218 +{ + Impersonation = 1 +} + +// Namespace: System.Security.AccessControl +public enum ControlFlags // TypeDefIndex: 1219 +{ + None = 0, + OwnerDefaulted = 1, + GroupDefaulted = 2, + DiscretionaryAclPresent = 4, + DiscretionaryAclDefaulted = 8, + SystemAclPresent = 16, + SystemAclDefaulted = 32, + DiscretionaryAclUntrusted = 64, + ServerSecurity = 128, + DiscretionaryAclAutoInheritRequired = 256, + SystemAclAutoInheritRequired = 512, + DiscretionaryAclAutoInherited = 1024, + SystemAclAutoInherited = 2048, + DiscretionaryAclProtected = 4096, + SystemAclProtected = 8192, + RMControlValid = 16384, + SelfRelative = 32768 +} + +// Namespace: System.Security.AccessControl +public sealed class CryptoKeyAccessRule : AccessRule // TypeDefIndex: 1220 +{ + // Fields + private CryptoKeyRights rights; // 0x20 + + // Properties + public CryptoKeyRights CryptoKeyRights { get; } // 0x100EACD0 + + // Methods + public void .ctor(IdentityReference identity, CryptoKeyRights cryptoKeyRights, AccessControlType type); // 0x1028A8F0 + public void .ctor(string identity, CryptoKeyRights cryptoKeyRights, AccessControlType type); // 0x1028A920 +} + +// Namespace: System.Security.AccessControl +public sealed class CryptoKeyAuditRule : AuditRule // TypeDefIndex: 1221 +{ + // Fields + private CryptoKeyRights rights; // 0x20 + + // Properties + public CryptoKeyRights CryptoKeyRights { get; } // 0x100EACD0 + + // Methods + public void .ctor(IdentityReference identity, CryptoKeyRights cryptoKeyRights, AuditFlags flags); // 0x1028A980 + public void .ctor(string identity, CryptoKeyRights cryptoKeyRights, AuditFlags flags); // 0x1028A9B0 +} + +// Namespace: System.Security.AccessControl +public enum CryptoKeyRights // TypeDefIndex: 1222 +{ + GenericRead = -2147483648, + ReadData = 1, + WriteData = 2, + ReadExtendedAttributes = 8, + WriteExtendedAttributes = 16, + ReadAttributes = 128, + WriteAttributes = 256, + Delete = 65536, + ReadPermissions = 131072, + ChangePermissions = 262144, + TakeOwnership = 524288, + Synchronize = 1048576, + FullControl = 2032027, + GenericAll = 268435456, + GenericExecute = 536870912, + GenericWrite = 1073741824 +} + +// Namespace: System.Security.AccessControl +public sealed class CryptoKeySecurity : NativeObjectSecurity // TypeDefIndex: 1223 +{ + // Properties + public override Type AccessRightType { get; } // 0x1028AE80 + public override Type AccessRuleType { get; } // 0x1028AED0 + public override Type AuditRuleType { get; } // 0x1028AF20 + + // Methods + public void .ctor(); // 0x1028AE60 + public void .ctor(CommonSecurityDescriptor securityDescriptor); // 0x1028AE40 + public sealed override AccessRule AccessRuleFactory(IdentityReference identityReference, int accessMask, bool isInherited, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AccessControlType type); // 0x1028AA10 + public void AddAccessRule(CryptoKeyAccessRule rule); // 0x1028AA70 + public bool RemoveAccessRule(CryptoKeyAccessRule rule); // 0x1028AC10 + public void RemoveAccessRuleAll(CryptoKeyAccessRule rule); // 0x1028AB70 + public void RemoveAccessRuleSpecific(CryptoKeyAccessRule rule); // 0x1028ABC0 + public void ResetAccessRule(CryptoKeyAccessRule rule); // 0x1028AD50 + public void SetAccessRule(CryptoKeyAccessRule rule); // 0x1028ADA0 + public sealed override AuditRule AuditRuleFactory(IdentityReference identityReference, int accessMask, bool isInherited, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AuditFlags flags); // 0x1028AB10 + public void AddAuditRule(CryptoKeyAuditRule rule); // 0x1028AAC0 + public bool RemoveAuditRule(CryptoKeyAuditRule rule); // 0x1028AD00 + public void RemoveAuditRuleAll(CryptoKeyAuditRule rule); // 0x1028AC60 + public void RemoveAuditRuleSpecific(CryptoKeyAuditRule rule); // 0x1028ACB0 + public void SetAuditRule(CryptoKeyAuditRule rule); // 0x1028ADF0 +} + +// Namespace: System.Security.AccessControl +public sealed class CustomAce : GenericAce // TypeDefIndex: 1224 +{ + // Fields + private byte[] opaque; // 0x18 + public static readonly int MaxOpaqueLength; // 0x00 + + // Properties + public override int BinaryLength { get; } // 0x1028C5F0 + public int OpaqueLength { get; } // 0x1028C640 + + // Methods + public void .ctor(AceType type, AceFlags flags, byte[] opaque); // 0x1028C4F0 + public override void GetBinaryForm(byte[] binaryForm, int offset); // 0x1028C390 + public byte[] GetOpaque(); // 0x1028C3E0 + public void SetOpaque(byte[] opaque); // 0x1028C450 +} + +// Namespace: System.Security.AccessControl +public abstract class DirectoryObjectSecurity : ObjectSecurity // TypeDefIndex: 1225 +{ + // Methods + protected void .ctor(); // 0x102907F0 + protected void .ctor(CommonSecurityDescriptor securityDescriptor); // 0x10290810 + public virtual AccessRule AccessRuleFactory(IdentityReference identityReference, int accessMask, bool isInherited, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AccessControlType type, Guid objectType, Guid inheritedObjectType); // 0x102902A0 + public virtual AuditRule AuditRuleFactory(IdentityReference identityReference, int accessMask, bool isInherited, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AuditFlags flags, Guid objectType, Guid inheritedObjectType); // 0x10290390 + public AuthorizationRuleCollection GetAccessRules(bool includeExplicit, bool includeInherited, Type targetType); // 0x102903E0 + public AuthorizationRuleCollection GetAuditRules(bool includeExplicit, bool includeInherited, Type targetType); // 0x10290430 + protected void AddAccessRule(ObjectAccessRule rule); // 0x102902F0 + protected void AddAuditRule(ObjectAuditRule rule); // 0x10290340 + protected override bool ModifyAccess(AccessControlModification modification, AccessRule rule, out bool modified); // 0x10290480 + protected override bool ModifyAudit(AccessControlModification modification, AuditRule rule, out bool modified); // 0x102904D0 + protected bool RemoveAccessRule(ObjectAccessRule rule); // 0x102905C0 + protected void RemoveAccessRuleAll(ObjectAccessRule rule); // 0x10290520 + protected void RemoveAccessRuleSpecific(ObjectAccessRule rule); // 0x10290570 + protected bool RemoveAuditRule(ObjectAuditRule rule); // 0x102906B0 + protected void RemoveAuditRuleAll(ObjectAuditRule rule); // 0x10290610 + protected void RemoveAuditRuleSpecific(ObjectAuditRule rule); // 0x10290660 + protected void ResetAccessRule(ObjectAccessRule rule); // 0x10290700 + protected void SetAccessRule(ObjectAccessRule rule); // 0x10290750 + protected void SetAuditRule(ObjectAuditRule rule); // 0x102907A0 +} + +// Namespace: System.Security.AccessControl +public sealed class DirectorySecurity : FileSystemSecurity // TypeDefIndex: 1226 +{ + // Methods + public void .ctor(); // 0x10290900 + public void .ctor(string name, AccessControlSections includeSections); // 0x102908A0 +} + +// Namespace: System.Security.AccessControl +public sealed class DiscretionaryAcl : CommonAcl // TypeDefIndex: 1227 +{ + // Methods + public void .ctor(bool isContainer, bool isDS, int capacity); // 0x10290C00 + public void .ctor(bool isContainer, bool isDS, RawAcl rawAcl); // 0x10290BE0 + public void .ctor(bool isContainer, bool isDS, byte revision, int capacity); // 0x10290C60 + public void AddAccess(AccessControlType accessType, SecurityIdentifier sid, int accessMask, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags); // 0x10290960 + public void AddAccess(AccessControlType accessType, SecurityIdentifier sid, int accessMask, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, ObjectAceFlags objectFlags, Guid objectType, Guid inheritedObjectType); // 0x102909B0 + public bool RemoveAccess(AccessControlType accessType, SecurityIdentifier sid, int accessMask, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags); // 0x10290AA0 + public bool RemoveAccess(AccessControlType accessType, SecurityIdentifier sid, int accessMask, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, ObjectAceFlags objectFlags, Guid objectType, Guid inheritedObjectType); // 0x10290AF0 + public void RemoveAccessSpecific(AccessControlType accessType, SecurityIdentifier sid, int accessMask, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags); // 0x10290A00 + public void RemoveAccessSpecific(AccessControlType accessType, SecurityIdentifier sid, int accessMask, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, ObjectAceFlags objectFlags, Guid objectType, Guid inheritedObjectType); // 0x10290A50 + public void SetAccess(AccessControlType accessType, SecurityIdentifier sid, int accessMask, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags); // 0x10290B90 + public void SetAccess(AccessControlType accessType, SecurityIdentifier sid, int accessMask, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, ObjectAceFlags objectFlags, Guid objectType, Guid inheritedObjectType); // 0x10290B40 +} + +// Namespace: System.Security.AccessControl +public sealed class EventWaitHandleAccessRule : AccessRule // TypeDefIndex: 1228 +{ + // Fields + private EventWaitHandleRights rights; // 0x20 + + // Properties + public EventWaitHandleRights EventWaitHandleRights { get; } // 0x100EACD0 + + // Methods + public void .ctor(IdentityReference identity, EventWaitHandleRights eventRights, AccessControlType type); // 0x1028A8F0 + public void .ctor(string identity, EventWaitHandleRights eventRights, AccessControlType type); // 0x10290C70 +} + +// Namespace: System.Security.AccessControl +public sealed class EventWaitHandleAuditRule : AuditRule // TypeDefIndex: 1229 +{ + // Fields + private EventWaitHandleRights rights; // 0x20 + + // Properties + public EventWaitHandleRights EventWaitHandleRights { get; } // 0x100EACD0 + + // Methods + public void .ctor(IdentityReference identity, EventWaitHandleRights eventRights, AuditFlags flags); // 0x10290CD0 +} + +// Namespace: System.Security.AccessControl +public enum EventWaitHandleRights // TypeDefIndex: 1230 +{ + Modify = 2, + Delete = 65536, + ReadPermissions = 131072, + ChangePermissions = 262144, + TakeOwnership = 524288, + Synchronize = 1048576, + FullControl = 2031619 +} + +// Namespace: System.Security.AccessControl +public sealed class EventWaitHandleSecurity : NativeObjectSecurity // TypeDefIndex: 1231 +{ + // Properties + public override Type AccessRightType { get; } // 0x10291390 + public override Type AccessRuleType { get; } // 0x102913E0 + public override Type AuditRuleType { get; } // 0x10291430 + + // Methods + public void .ctor(); // 0x10291330 + public override AccessRule AccessRuleFactory(IdentityReference identityReference, int accessMask, bool isInherited, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AccessControlType type); // 0x10290E00 + public void AddAccessRule(EventWaitHandleAccessRule rule); // 0x10290E60 + public bool RemoveAccessRule(EventWaitHandleAccessRule rule); // 0x10291100 + public void RemoveAccessRuleAll(EventWaitHandleAccessRule rule); // 0x10291060 + public void RemoveAccessRuleSpecific(EventWaitHandleAccessRule rule); // 0x102910B0 + public void ResetAccessRule(EventWaitHandleAccessRule rule); // 0x10291240 + public void SetAccessRule(EventWaitHandleAccessRule rule); // 0x10291290 + public override AuditRule AuditRuleFactory(IdentityReference identityReference, int accessMask, bool isInherited, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AuditFlags flags); // 0x10290F00 + public void AddAuditRule(EventWaitHandleAuditRule rule); // 0x10290EB0 + public bool RemoveAuditRule(EventWaitHandleAuditRule rule); // 0x102911F0 + public void RemoveAuditRuleAll(EventWaitHandleAuditRule rule); // 0x10291150 + public void RemoveAuditRuleSpecific(EventWaitHandleAuditRule rule); // 0x102911A0 + public void SetAuditRule(EventWaitHandleAuditRule rule); // 0x102912E0 +} + +// Namespace: System.Security.AccessControl +public sealed class FileSecurity : FileSystemSecurity // TypeDefIndex: 1232 +{ + // Methods + public void .ctor(); // 0x102917D0 + public void .ctor(string fileName, AccessControlSections includeSections); // 0x10291770 +} + +// Namespace: System.Security.AccessControl +public sealed class FileSystemAccessRule : AccessRule // TypeDefIndex: 1233 +{ + // Fields + private FileSystemRights rights; // 0x20 + + // Properties + public FileSystemRights FileSystemRights { get; } // 0x100EACD0 + + // Methods + public void .ctor(IdentityReference identity, FileSystemRights fileSystemRights, AccessControlType type); // 0x10291890 + public void .ctor(string identity, FileSystemRights fileSystemRights, AccessControlType type); // 0x102918F0 + public void .ctor(IdentityReference identity, FileSystemRights fileSystemRights, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AccessControlType type); // 0x102918C0 + public void .ctor(string identity, FileSystemRights fileSystemRights, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AccessControlType type); // 0x10291830 +} + +// Namespace: System.Security.AccessControl +public sealed class FileSystemAuditRule : AuditRule // TypeDefIndex: 1234 +{ + // Fields + private FileSystemRights rights; // 0x20 + + // Properties + public FileSystemRights FileSystemRights { get; } // 0x100EACD0 + + // Methods + public void .ctor(IdentityReference identity, FileSystemRights fileSystemRights, AuditFlags flags); // 0x1028A980 + public void .ctor(string identity, FileSystemRights fileSystemRights, AuditFlags flags); // 0x102919B0 + public void .ctor(IdentityReference identity, FileSystemRights fileSystemRights, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AuditFlags flags); // 0x10291A10 + public void .ctor(string identity, FileSystemRights fileSystemRights, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AuditFlags flags); // 0x10291950 +} + +// Namespace: System.Security.AccessControl +public enum FileSystemRights // TypeDefIndex: 1235 +{ + ListDirectory = 1, + ReadData = 1, + CreateFiles = 2, + WriteData = 2, + AppendData = 4, + CreateDirectories = 4, + ReadExtendedAttributes = 8, + WriteExtendedAttributes = 16, + ExecuteFile = 32, + Traverse = 32, + DeleteSubdirectoriesAndFiles = 64, + ReadAttributes = 128, + WriteAttributes = 256, + Write = 278, + Delete = 65536, + ReadPermissions = 131072, + Read = 131209, + ReadAndExecute = 131241, + Modify = 197055, + ChangePermissions = 262144, + TakeOwnership = 524288, + Synchronize = 1048576, + FullControl = 2032127 +} + +// Namespace: System.Security.AccessControl +public abstract class FileSystemSecurity : NativeObjectSecurity // TypeDefIndex: 1236 +{ + // Properties + public override Type AccessRightType { get; } // 0x10291EA0 + public override Type AccessRuleType { get; } // 0x10291EF0 + public override Type AuditRuleType { get; } // 0x10291F40 + + // Methods + internal void .ctor(bool isContainer); // 0x10291E70 + internal void .ctor(bool isContainer, string name, AccessControlSections includeSections); // 0x10291E80 + public sealed override AccessRule AccessRuleFactory(IdentityReference identityReference, int accessMask, bool isInherited, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AccessControlType type); // 0x10291A40 + public void AddAccessRule(FileSystemAccessRule rule); // 0x10291AA0 + public bool RemoveAccessRule(FileSystemAccessRule rule); // 0x10291C40 + public void RemoveAccessRuleAll(FileSystemAccessRule rule); // 0x10291BA0 + public void RemoveAccessRuleSpecific(FileSystemAccessRule rule); // 0x10291BF0 + public void ResetAccessRule(FileSystemAccessRule rule); // 0x10291D80 + public void SetAccessRule(FileSystemAccessRule rule); // 0x10291DD0 + public sealed override AuditRule AuditRuleFactory(IdentityReference identityReference, int accessMask, bool isInherited, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AuditFlags flags); // 0x10291B40 + public void AddAuditRule(FileSystemAuditRule rule); // 0x10291AF0 + public bool RemoveAuditRule(FileSystemAuditRule rule); // 0x10291D30 + public void RemoveAuditRuleAll(FileSystemAuditRule rule); // 0x10291C90 + public void RemoveAuditRuleSpecific(FileSystemAuditRule rule); // 0x10291CE0 + public void SetAuditRule(FileSystemAuditRule rule); // 0x10291E20 +} + +// Namespace: System.Security.AccessControl +public abstract class GenericAce // TypeDefIndex: 1237 +{ + // Fields + private InheritanceFlags inheritance; // 0x08 + private PropagationFlags propagation; // 0x0C + private AceFlags aceflags; // 0x10 + private AceType ace_type; // 0x14 + + // Properties + public AceFlags AceFlags { get; set; } // 0x101137C0 0x10246B70 + public AceType AceType { get; } // 0x100EF0C0 + public AuditFlags AuditFlags { get; } // 0x10292C80 + public abstract int BinaryLength { get; } + public InheritanceFlags InheritanceFlags { get; } // 0x100BF0C0 + public bool IsInherited { get; } // 0x100EFBF0 + public PropagationFlags PropagationFlags { get; } // 0x100C5B30 + + // Methods + internal void .ctor(InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags); // 0x100F97B0 + internal void .ctor(AceType type); // 0x10292C10 + public GenericAce Copy(); // 0x10292AD0 + public static GenericAce CreateFromBinaryForm(byte[] binaryForm, int offset); // 0x10292B20 + public sealed override bool Equals(object o); // 0x10292B70 + public abstract void GetBinaryForm(byte[] binaryForm, int offset); + public sealed override int GetHashCode(); // 0x10292BC0 + public static bool op_Equality(GenericAce left, GenericAce right); // 0x10292CA0 + public static bool op_Inequality(GenericAce left, GenericAce right); // 0x10292CF0 +} + +// Namespace: System.Security.AccessControl +public abstract class GenericAcl : IEnumerable, ICollection // TypeDefIndex: 1238 +{ + // Fields + public static readonly byte AclRevision; // 0x00 + public static readonly byte AclRevisionDS; // 0x01 + public static readonly int MaxBinaryLength; // 0x04 + + // Properties + public abstract int BinaryLength { get; } + public abstract int Count { get; } + public bool IsSynchronized { get; } // 0x100EFBF0 + public abstract GenericAce Item { get; set; } + public abstract byte Revision { get; } + public object SyncRoot { get; } // 0x100F7810 + + // Methods + protected void .ctor(); // 0x100BF000 + private static void .cctor(); // 0x10292F80 + private void System.Collections.ICollection.CopyTo(Array array, int index); // 0x10292F10 + private IEnumerator System.Collections.IEnumerable.GetEnumerator(); // 0x10292EC0 + public void CopyTo(GenericAce[] array, int index); // 0x10292D40 + public abstract void GetBinaryForm(byte[] binaryForm, int offset); + public AceEnumerator GetEnumerator(); // 0x10292EC0 +} + +// Namespace: System.Security.AccessControl +public abstract class GenericSecurityDescriptor // TypeDefIndex: 1239 +{ + // Properties + public int BinaryLength { get; } // 0x102930C0 + public abstract ControlFlags ControlFlags { get; } + public abstract SecurityIdentifier Group { get; set; } + public abstract SecurityIdentifier Owner { get; set; } + public static byte Revision { get; } // 0x10293110 + + // Methods + protected void .ctor(); // 0x100BF000 + public void GetBinaryForm(byte[] binaryForm, int offset); // 0x10292FD0 + public string GetSddlForm(AccessControlSections includeSections); // 0x10293020 + public static bool IsSddlConversionSupported(); // 0x10293070 +} + +// Namespace: System.Security.AccessControl +public enum InheritanceFlags // TypeDefIndex: 1240 +{ + None = 0, + ContainerInherit = 1, + ObjectInherit = 2 +} + +// Namespace: System.Security.AccessControl +public abstract class KnownAce : GenericAce // TypeDefIndex: 1241 +{ + // Fields + private int access_mask; // 0x18 + private SecurityIdentifier identifier; // 0x1C + + // Properties + public int AccessMask { get; set; } // 0x100EE580 0x10113F40 + public SecurityIdentifier SecurityIdentifier { get; set; } // 0x100F85F0 0x10113F50 + + // Methods + internal void .ctor(InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags); // 0x100F97B0 +} + +// Namespace: System.Security.AccessControl +public sealed class MutexAccessRule : AccessRule // TypeDefIndex: 1242 +{ + // Fields + private MutexRights rights; // 0x20 + + // Properties + public MutexRights MutexRights { get; } // 0x100EACD0 + + // Methods + public void .ctor(IdentityReference identity, MutexRights eventRights, AccessControlType type); // 0x10297080 + public void .ctor(string identity, MutexRights eventRights, AccessControlType type); // 0x10297020 +} + +// Namespace: System.Security.AccessControl +public sealed class MutexAuditRule : AuditRule // TypeDefIndex: 1243 +{ + // Fields + private MutexRights rights; // 0x20 + + // Properties + public MutexRights MutexRights { get; } // 0x100EACD0 + + // Methods + public void .ctor(IdentityReference identity, MutexRights eventRights, AuditFlags flags); // 0x1028A980 +} + +// Namespace: System.Security.AccessControl +public enum MutexRights // TypeDefIndex: 1244 +{ + Modify = 1, + Delete = 65536, + ReadPermissions = 131072, + ChangePermissions = 262144, + TakeOwnership = 524288, + Synchronize = 1048576, + FullControl = 2031617 +} + +// Namespace: System.Security.AccessControl +public sealed class MutexSecurity : NativeObjectSecurity // TypeDefIndex: 1245 +{ + // Properties + public override Type AccessRightType { get; } // 0x102974E0 + public override Type AccessRuleType { get; } // 0x10297530 + public override Type AuditRuleType { get; } // 0x10297580 + + // Methods + public void .ctor(); // 0x1028AE60 + public void .ctor(string name, AccessControlSections includeSections); // 0x1028AE60 + public override AccessRule AccessRuleFactory(IdentityReference identityReference, int accessMask, bool isInherited, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AccessControlType type); // 0x102970B0 + public void AddAccessRule(MutexAccessRule rule); // 0x10297110 + public bool RemoveAccessRule(MutexAccessRule rule); // 0x102972B0 + public void RemoveAccessRuleAll(MutexAccessRule rule); // 0x10297210 + public void RemoveAccessRuleSpecific(MutexAccessRule rule); // 0x10297260 + public void ResetAccessRule(MutexAccessRule rule); // 0x102973F0 + public void SetAccessRule(MutexAccessRule rule); // 0x10297440 + public override AuditRule AuditRuleFactory(IdentityReference identityReference, int accessMask, bool isInherited, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AuditFlags flags); // 0x102971B0 + public void AddAuditRule(MutexAuditRule rule); // 0x10297160 + public bool RemoveAuditRule(MutexAuditRule rule); // 0x102973A0 + public void RemoveAuditRuleAll(MutexAuditRule rule); // 0x10297300 + public void RemoveAuditRuleSpecific(MutexAuditRule rule); // 0x10297350 + public void SetAuditRule(MutexAuditRule rule); // 0x10297490 +} + +// Namespace: System.Security.AccessControl +public abstract class NativeObjectSecurity : CommonObjectSecurity // TypeDefIndex: 1246 +{ + // Methods + internal void .ctor(); // 0x1028AE60 + protected void .ctor(bool isContainer, ResourceType resourceType); // 0x10291E80 + protected void .ctor(bool isContainer, ResourceType resourceType, ExceptionFromErrorCode exceptionFromErrorCode, object exceptionContext); // 0x10291E80 + protected void .ctor(bool isContainer, ResourceType resourceType, SafeHandle handle, AccessControlSections includeSections); // 0x10291E80 + protected void .ctor(bool isContainer, ResourceType resourceType, string name, AccessControlSections includeSections); // 0x10291E80 + protected void .ctor(bool isContainer, ResourceType resourceType, SafeHandle handle, AccessControlSections includeSections, ExceptionFromErrorCode exceptionFromErrorCode, object exceptionContext); // 0x10291E80 + protected void .ctor(bool isContainer, ResourceType resourceType, string name, AccessControlSections includeSections, ExceptionFromErrorCode exceptionFromErrorCode, object exceptionContext); // 0x10291E80 + protected sealed override void Persist(SafeHandle handle, AccessControlSections includeSections); // 0x10297620 + protected sealed override void Persist(string name, AccessControlSections includeSections); // 0x102975D0 + protected void Persist(SafeHandle handle, AccessControlSections includeSections, object exceptionContext); // 0x102976C0 + protected void Persist(string name, AccessControlSections includeSections, object exceptionContext); // 0x10297670 +} + +// Namespace: +protected internal delegate Exception ExceptionFromErrorCode(int errorCode, string name, SafeHandle handle, object context); // TypeDefIndex: 1247; 0x102914F0 + +// Namespace: System.Security.AccessControl +public abstract class ObjectAccessRule : AccessRule // TypeDefIndex: 1248 +{ + // Fields + private Guid object_type; // 0x20 + private Guid inherited_object_type; // 0x30 + + // Properties + public Guid InheritedObjectType { get; } // 0x10297750 + public ObjectAceFlags ObjectFlags { get; } // 0x10297770 + public Guid ObjectType { get; } // 0x10168A50 + + // Methods + protected void .ctor(IdentityReference identity, int accessMask, bool isInherited, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, Guid objectType, Guid inheritedObjectType, AccessControlType type); // 0x10297710 +} + +// Namespace: System.Security.AccessControl +public sealed class ObjectAce : QualifiedAce // TypeDefIndex: 1249 +{ + // Fields + private Guid object_ace_type; // 0x2C + private Guid inherited_object_type; // 0x3C + private ObjectAceFlags object_ace_flags; // 0x4C + + // Properties + public override int BinaryLength { get; } // 0x102979D0 + public Guid InheritedObjectAceType { get; set; } // 0x10297A20 0x10297A60 + public ObjectAceFlags ObjectAceFlags { get; set; } // 0x10145570 0x10145600 + public Guid ObjectAceType { get; set; } // 0x10297A40 0x10297A70 + + // Methods + public void .ctor(AceFlags aceFlags, AceQualifier qualifier, int accessMask, SecurityIdentifier sid, ObjectAceFlags flags, Guid type, Guid inheritedType, bool isCallback, byte[] opaque); // 0x102978F0 + public override void GetBinaryForm(byte[] binaryForm, int offset); // 0x10297850 + public static int MaxOpaqueLength(bool isCallback); // 0x102978A0 +} + +// Namespace: System.Security.AccessControl +public enum ObjectAceFlags // TypeDefIndex: 1250 +{ + None = 0, + ObjectAceTypePresent = 1, + InheritedObjectAceTypePresent = 2 +} + +// Namespace: System.Security.AccessControl +public abstract class ObjectAuditRule : AuditRule // TypeDefIndex: 1251 +{ + // Fields + private Guid inherited_object_type; // 0x20 + private Guid object_type; // 0x30 + + // Properties + public Guid InheritedObjectType { get; } // 0x10168A50 + public ObjectAceFlags ObjectFlags { get; } // 0x10297AC0 + public Guid ObjectType { get; } // 0x10297750 + + // Methods + protected void .ctor(IdentityReference identity, int accessMask, bool isInherited, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, Guid objectType, Guid inheritedObjectType, AuditFlags auditFlags); // 0x10297A80 +} + +// Namespace: System.Security.AccessControl +public abstract class ObjectSecurity // TypeDefIndex: 1252 +{ + // Fields + private bool is_container; // 0x08 + private bool is_ds; // 0x09 + private bool access_rules_modified; // 0x0A + private bool audit_rules_modified; // 0x0B + private bool group_modified; // 0x0C + private bool owner_modified; // 0x0D + + // Properties + public abstract Type AccessRightType { get; } + public abstract Type AccessRuleType { get; } + public abstract Type AuditRuleType { get; } + public bool AreAccessRulesCanonical { get; } // 0x10298320 + public bool AreAccessRulesProtected { get; } // 0x10298370 + public bool AreAuditRulesCanonical { get; } // 0x102983C0 + public bool AreAuditRulesProtected { get; } // 0x10298410 + protected bool AccessRulesModified { get; set; } // 0x101172F0 0x10155010 + protected bool AuditRulesModified { get; set; } // 0x10154FF0 0x10155030 + protected bool GroupModified { get; set; } // 0x100F8910 0x1016CBD0 + protected bool IsContainer { get; } // 0x100EA020 + protected bool IsDS { get; } // 0x10117290 + protected bool OwnerModified { get; set; } // 0x10298460 0x10298470 + + // Methods + internal void .ctor(); // 0x100BF000 + protected void .ctor(bool isContainer, bool isDS); // 0x10261430 + public abstract AccessRule AccessRuleFactory(IdentityReference identityReference, int accessMask, bool isInherited, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AccessControlType type); + public abstract AuditRule AuditRuleFactory(IdentityReference identityReference, int accessMask, bool isInherited, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AuditFlags flags); + public IdentityReference GetGroup(Type targetType); // 0x10297BA0 + public IdentityReference GetOwner(Type targetType); // 0x10297BF0 + public byte[] GetSecurityDescriptorBinaryForm(); // 0x10297C40 + public string GetSecurityDescriptorSddlForm(AccessControlSections includeSections); // 0x10297C90 + public static bool IsSddlConversionSupported(); // 0x10297CE0 + public virtual bool ModifyAccessRule(AccessControlModification modification, AccessRule rule, out bool modified); // 0x10297D30 + public virtual bool ModifyAuditRule(AccessControlModification modification, AuditRule rule, out bool modified); // 0x10297D80 + public virtual void PurgeAccessRules(IdentityReference identity); // 0x10297EC0 + public virtual void PurgeAuditRules(IdentityReference identity); // 0x10297F10 + public void SetAccessRuleProtection(bool isProtected, bool preserveInheritance); // 0x10298000 + public void SetAuditRuleProtection(bool isProtected, bool preserveInheritance); // 0x10298050 + public void SetGroup(IdentityReference identity); // 0x102980A0 + public void SetOwner(IdentityReference identity); // 0x102980F0 + public void SetSecurityDescriptorBinaryForm(byte[] binaryForm); // 0x10298190 + public void SetSecurityDescriptorBinaryForm(byte[] binaryForm, AccessControlSections includeSections); // 0x10298140 + public void SetSecurityDescriptorSddlForm(string sddlForm); // 0x10298230 + public void SetSecurityDescriptorSddlForm(string sddlForm, AccessControlSections includeSections); // 0x102981E0 + protected abstract bool ModifyAccess(AccessControlModification modification, AccessRule rule, out bool modified); + protected abstract bool ModifyAudit(AccessControlModification modification, AuditRule rule, out bool modified); + protected virtual void Persist(SafeHandle handle, AccessControlSections includeSections); // 0x10297DD0 + protected virtual void Persist(string name, AccessControlSections includeSections); // 0x10297E20 + protected virtual void Persist(bool enableOwnershipPrivilege, string name, AccessControlSections includeSections); // 0x10297E70 + protected void ReadLock(); // 0x10297F60 + protected void ReadUnlock(); // 0x10297FB0 + protected void WriteLock(); // 0x10298280 + protected void WriteUnlock(); // 0x102982D0 +} + +// Namespace: System.Security.AccessControl +[Serializable] +public sealed class PrivilegeNotHeldException : UnauthorizedAccessException, ISerializable // TypeDefIndex: 1253 +{ + // Properties + public string PrivilegeName { get; } // 0x10298500 + + // Methods + public void .ctor(); // 0x102984E0 + public void .ctor(string privilege); // 0x102984D0 + public void .ctor(string privilege, Exception inner); // 0x102984F0 + public override void GetObjectData(SerializationInfo info, StreamingContext context); // 0x10298480 +} + +// Namespace: System.Security.AccessControl +public enum PropagationFlags // TypeDefIndex: 1254 +{ + None = 0, + NoPropagateInherit = 1, + InheritOnly = 2 +} + +// Namespace: System.Security.AccessControl +public abstract class QualifiedAce : KnownAce // TypeDefIndex: 1255 +{ + // Fields + private AceQualifier ace_qualifier; // 0x20 + private bool is_callback; // 0x24 + private byte[] opaque; // 0x28 + + // Properties + public AceQualifier AceQualifier { get; } // 0x100EACD0 + public bool IsCallback { get; } // 0x101939C0 + public int OpaqueLength { get; } // 0x10298720 + + // Methods + internal void .ctor(InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AceQualifier aceQualifier, bool isCallback, byte[] opaque); // 0x10298660 + public byte[] GetOpaque(); // 0x10298550 + public void SetOpaque(byte[] opaque); // 0x102985C0 +} + +// Namespace: System.Security.AccessControl +public sealed class RawAcl : GenericAcl // TypeDefIndex: 1256 +{ + // Fields + private byte revision; // 0x08 + private List`1 list; // 0x0C + + // Properties + public override int BinaryLength { get; } // 0x10298910 + public override int Count { get; } // 0x10298960 + public override GenericAce Item { get; set; } // 0x102989A0 0x102989F0 + public override byte Revision { get; } // 0x100EA020 + + // Methods + public void .ctor(byte revision, int capacity); // 0x10298810 + public void .ctor(byte[] binaryForm, int offset); // 0x10298890 + public override void GetBinaryForm(byte[] binaryForm, int offset); // 0x10298740 + public void InsertAce(int index, GenericAce ace); // 0x10298790 + public void RemoveAce(int index); // 0x102987C0 +} + +// Namespace: System.Security.AccessControl +public sealed class RawSecurityDescriptor : GenericSecurityDescriptor // TypeDefIndex: 1257 +{ + // Properties + public override ControlFlags ControlFlags { get; } // 0x10298A90 + public RawAcl DiscretionaryAcl { get; set; } // 0x10298AE0 0x10298C70 + public override SecurityIdentifier Group { get; set; } // 0x10298B30 0x10298CC0 + public override SecurityIdentifier Owner { get; set; } // 0x10298B80 0x10298D10 + public byte ResourceManagerControl { get; set; } // 0x10298BD0 0x10298D60 + public RawAcl SystemAcl { get; set; } // 0x10298C20 0x10298DB0 + + // Methods + public void .ctor(string sddlForm); // 0x101AA300 + public void .ctor(byte[] binaryForm, int offset); // 0x101AA300 + public void .ctor(ControlFlags flags, SecurityIdentifier owner, SecurityIdentifier group, RawAcl systemAcl, RawAcl discretionaryAcl); // 0x101AA300 + public void SetFlags(ControlFlags flags); // 0x10298A40 +} + +// Namespace: System.Security.AccessControl +public sealed class RegistryAccessRule : AccessRule // TypeDefIndex: 1258 +{ + // Fields + private RegistryRights rights; // 0x20 + + // Properties + public RegistryRights RegistryRights { get; } // 0x100EACD0 + + // Methods + public void .ctor(IdentityReference identity, RegistryRights registryRights, AccessControlType type); // 0x10297080 + public void .ctor(string identity, RegistryRights registryRights, AccessControlType type); // 0x10298E90 + public void .ctor(IdentityReference identity, RegistryRights registryRights, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AccessControlType type); // 0x10298E60 + public void .ctor(string identity, RegistryRights registryRights, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AccessControlType type); // 0x10298E00 +} + +// Namespace: System.Security.AccessControl +public sealed class RegistryAuditRule : AuditRule // TypeDefIndex: 1259 +{ + // Fields + private RegistryRights rights; // 0x20 + + // Properties + public RegistryRights RegistryRights { get; } // 0x100EACD0 + + // Methods + public void .ctor(IdentityReference identity, RegistryRights registryRights, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AuditFlags flags); // 0x10291A10 + public void .ctor(string identity, RegistryRights registryRights, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AuditFlags flags); // 0x10298EF0 +} + +// Namespace: System.Security.AccessControl +public enum RegistryRights // TypeDefIndex: 1260 +{ + QueryValues = 1, + SetValue = 2, + CreateSubKey = 4, + EnumerateSubKeys = 8, + Notify = 16, + CreateLink = 32, + Delete = 65536, + ReadPermissions = 131072, + WriteKey = 131078, + ReadKey = 131097, + ExecuteKey = 131097, + ChangePermissions = 262144, + TakeOwnership = 524288, + FullControl = 983103 +} + +// Namespace: System.Security.AccessControl +public sealed class RegistrySecurity : NativeObjectSecurity // TypeDefIndex: 1261 +{ + // Properties + public override Type AccessRightType { get; } // 0x10299380 + public override Type AccessRuleType { get; } // 0x102993D0 + public override Type AuditRuleType { get; } // 0x10299420 + + // Methods + public void .ctor(); // 0x1028AE60 + public override AccessRule AccessRuleFactory(IdentityReference identityReference, int accessMask, bool isInherited, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AccessControlType type); // 0x10298F50 + public void AddAccessRule(RegistryAccessRule rule); // 0x10298FB0 + public void AddAuditRule(RegistryAuditRule rule); // 0x10299000 + public override AuditRule AuditRuleFactory(IdentityReference identityReference, int accessMask, bool isInherited, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AuditFlags flags); // 0x10299050 + public bool RemoveAccessRule(RegistryAccessRule rule); // 0x10299150 + public void RemoveAccessRuleAll(RegistryAccessRule rule); // 0x102990B0 + public void RemoveAccessRuleSpecific(RegistryAccessRule rule); // 0x10299100 + public bool RemoveAuditRule(RegistryAuditRule rule); // 0x10299240 + public void RemoveAuditRuleAll(RegistryAuditRule rule); // 0x102991A0 + public void RemoveAuditRuleSpecific(RegistryAuditRule rule); // 0x102991F0 + public void ResetAccessRule(RegistryAccessRule rule); // 0x10299290 + public void SetAccessRule(RegistryAccessRule rule); // 0x102992E0 + public void SetAuditRule(RegistryAuditRule rule); // 0x10299330 +} + +// Namespace: System.Security.AccessControl +public enum ResourceType // TypeDefIndex: 1262 +{ + Unknown = 0, + FileObject = 1, + Service = 2, + Printer = 3, + RegistryKey = 4, + LMShare = 5, + KernelObject = 6, + WindowObject = 7, + DSObject = 8, + DSObjectAll = 9, + ProviderDefined = 10, + WmiGuidObject = 11, + RegistryWow6432Key = 12 +} + +// Namespace: System.Security.AccessControl +public enum SecurityInfos // TypeDefIndex: 1263 +{ + Owner = 1, + Group = 2, + DiscretionaryAcl = 4, + SystemAcl = 8 +} + +// Namespace: System.Security.AccessControl +public sealed class SystemAcl : CommonAcl // TypeDefIndex: 1264 +{ + // Methods + public void .ctor(bool isContainer, bool isDS, int capacity); // 0x102996F0 + public void .ctor(bool isContainer, bool isDS, RawAcl rawAcl); // 0x10299710 + public void .ctor(bool isContainer, bool isDS, byte revision, int capacity); // 0x10290C60 + public void AddAudit(AuditFlags auditFlags, SecurityIdentifier sid, int accessMask, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags); // 0x10299470 + public void AddAudit(AuditFlags auditFlags, SecurityIdentifier sid, int accessMask, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, ObjectAceFlags objectFlags, Guid objectType, Guid inheritedObjectType); // 0x102994C0 + public bool RemoveAudit(AuditFlags auditFlags, SecurityIdentifier sid, int accessMask, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags); // 0x102995B0 + public bool RemoveAudit(AuditFlags auditFlags, SecurityIdentifier sid, int accessMask, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, ObjectAceFlags objectFlags, Guid objectType, Guid inheritedObjectType); // 0x10299600 + public void RemoveAuditSpecific(AuditFlags auditFlags, SecurityIdentifier sid, int accessMask, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags); // 0x10299560 + public void RemoveAuditSpecific(AuditFlags auditFlags, SecurityIdentifier sid, int accessMask, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, ObjectAceFlags objectFlags, Guid objectType, Guid inheritedObjectType); // 0x10299510 + public void SetAudit(AuditFlags auditFlags, SecurityIdentifier sid, int accessMask, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags); // 0x10299650 + public void SetAudit(AuditFlags auditFlags, SecurityIdentifier sid, int accessMask, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, ObjectAceFlags objectFlags, Guid objectType, Guid inheritedObjectType); // 0x102996A0 +} + +// Namespace: System.Security.Cryptography.X509Certificates +[Serializable] +public class X509Certificate : ISerializable, IDeserializationCallback // TypeDefIndex: 1265 +{ + // Fields + private X509Certificate x509; // 0x08 + private bool hideDates; // 0x0C + private byte[] cachedCertificateHash; // 0x10 + private string issuer_name; // 0x14 + private string subject_name; // 0x18 + + // Properties + public string Issuer { get; } // 0x1025AC20 + public string Subject { get; } // 0x1025ACD0 + public IntPtr Handle { get; } // 0x1025ABF0 + + // Methods + internal void .ctor(byte[] data, bool dates); // 0x1025A800 + public void .ctor(byte[] data); // 0x1025ABB0 + public void .ctor(IntPtr handle); // 0x1025AB10 + public void .ctor(X509Certificate cert); // 0x1025A840 + public void .ctor(); // 0x100BF000 + public void .ctor(byte[] rawData, string password); // 0x1025A7D0 + public void .ctor(byte[] rawData, SecureString password); // 0x1025AAB0 + public void .ctor(byte[] rawData, string password, X509KeyStorageFlags keyStorageFlags); // 0x1025AA80 + public void .ctor(byte[] rawData, SecureString password, X509KeyStorageFlags keyStorageFlags); // 0x1025A980 + public void .ctor(string fileName); // 0x1025A920 + public void .ctor(string fileName, string password); // 0x1025AAE0 + public void .ctor(string fileName, SecureString password); // 0x1025A950 + public void .ctor(string fileName, string password, X509KeyStorageFlags keyStorageFlags); // 0x1025A8F0 + public void .ctor(string fileName, SecureString password, X509KeyStorageFlags keyStorageFlags); // 0x1025A7A0 + public void .ctor(SerializationInfo info, StreamingContext context); // 0x1025A9B0 + private void System.Runtime.Serialization.IDeserializationCallback.OnDeserialization(object sender); // 0x100C5530 + private void System.Runtime.Serialization.ISerializable.GetObjectData(SerializationInfo info, StreamingContext context); // 0x1025A4B0 + private string tostr(byte[] data); // 0x1025AD80 + public static X509Certificate CreateFromCertFile(string filename); // 0x10258D20 + public static X509Certificate CreateFromSignedFile(string filename); // 0x10258D90 + private void InitFromHandle(IntPtr handle); // 0x1025A1D0 + public virtual bool Equals(X509Certificate other); // 0x10259050 + public virtual byte[] GetCertHash(); // 0x10259520 + public virtual string GetCertHashString(); // 0x102594F0 + public virtual string GetEffectiveDateString(); // 0x10259680 + public virtual string GetExpirationDateString(); // 0x10259740 + public virtual string GetFormat(); // 0x10259800 + public override int GetHashCode(); // 0x10259830 + public virtual string GetIssuerName(); // 0x102598F0 + public virtual string GetKeyAlgorithm(); // 0x10259A60 + public virtual byte[] GetKeyAlgorithmParameters(); // 0x102599A0 + public virtual string GetKeyAlgorithmParametersString(); // 0x10259970 + public virtual string GetName(); // 0x10259AE0 + public virtual byte[] GetPublicKey(); // 0x10259B90 + public virtual string GetPublicKeyString(); // 0x10259B60 + public virtual byte[] GetRawCertData(); // 0x10259CA0 + public virtual string GetRawCertDataString(); // 0x10259C10 + public virtual byte[] GetSerialNumber(); // 0x10259D60 + public virtual string GetSerialNumberString(); // 0x10259D20 + public override string ToString(); // 0x1025A520 + public virtual string ToString(bool fVerbose); // 0x1025A530 + private static byte[] Load(string fileName); // 0x1025A2F0 + public override bool Equals(object obj); // 0x10258FD0 + public virtual byte[] Export(X509ContentType contentType); // 0x10259210 + public virtual byte[] Export(X509ContentType contentType, string password); // 0x10259450 + public virtual byte[] Export(X509ContentType contentType, SecureString password); // 0x102591D0 + internal byte[] Export(X509ContentType contentType, byte[] password); // 0x10259230 + public virtual void Import(byte[] rawData); // 0x1025A110 + public virtual void Import(byte[] rawData, string password, X509KeyStorageFlags keyStorageFlags); // 0x10259DE0 + public virtual void Import(byte[] rawData, SecureString password, X509KeyStorageFlags keyStorageFlags); // 0x1025A140 + public virtual void Import(string fileName); // 0x1025A170 + public virtual void Import(string fileName, string password, X509KeyStorageFlags keyStorageFlags); // 0x1025A1A0 + public virtual void Import(string fileName, SecureString password, X509KeyStorageFlags keyStorageFlags); // 0x1025A0E0 + public virtual void Reset(); // 0x1025A480 +} + +// Namespace: +internal struct CertificateContext // TypeDefIndex: 1266 +{ + // Fields + public uint dwCertEncodingType; // 0x08 + public IntPtr pbCertEncoded; // 0x0C + public uint cbCertEncoded; // 0x10 + public IntPtr pCertInfo; // 0x14 + public IntPtr hCertStore; // 0x18 + +} + +// Namespace: System.Security.Cryptography.X509Certificates +public enum X509ContentType // TypeDefIndex: 1267 +{ + Unknown = 0, + Cert = 1, + SerializedCert = 2, + Pfx = 3, + Pkcs12 = 3, + SerializedStore = 4, + Pkcs7 = 5, + Authenticode = 6 +} + +// Namespace: System.Security.Cryptography.X509Certificates +[Serializable] +public enum X509KeyStorageFlags // TypeDefIndex: 1268 +{ + DefaultKeySet = 0, + UserKeySet = 1, + MachineKeySet = 2, + Exportable = 4, + UserProtected = 8, + PersistKeySet = 16 +} + +// Namespace: System.Security.Cryptography +public abstract class AsymmetricAlgorithm : IDisposable // TypeDefIndex: 1269 +{ + // Fields + protected int KeySizeValue; // 0x08 + protected KeySizes[] LegalKeySizesValue; // 0x0C + + // Properties + public abstract string KeyExchangeAlgorithm { get; } + public virtual int KeySize { get; set; } // 0x100BF0C0 0x10286F00 + public virtual KeySizes[] LegalKeySizes { get; } // 0x100C5B30 + public abstract string SignatureAlgorithm { get; } + + // Methods + protected void .ctor(); // 0x100BF000 + private void System.IDisposable.Dispose(); // 0x101100C0 + public void Clear(); // 0x10286BE0 + protected abstract void Dispose(bool disposing); + public abstract void FromXmlString(string xmlString); + public abstract string ToXmlString(bool includePrivateParameters); + public static AsymmetricAlgorithm Create(); // 0x10286C00 + public static AsymmetricAlgorithm Create(string algName); // 0x10286D00 + internal static byte[] GetNamedParam(string xml, string param); // 0x10286DE0 +} + +// Namespace: System.Security.Cryptography +public abstract class AsymmetricKeyExchangeDeformatter // TypeDefIndex: 1270 +{ + // Properties + public abstract string Parameters { get; set; } + + // Methods + protected void .ctor(); // 0x100BF000 + public abstract byte[] DecryptKeyExchange(byte[] rgb); + public abstract void SetKey(AsymmetricAlgorithm key); +} + +// Namespace: System.Security.Cryptography +public abstract class AsymmetricKeyExchangeFormatter // TypeDefIndex: 1271 +{ + // Properties + public abstract string Parameters { get; } + + // Methods + protected void .ctor(); // 0x100BF000 + public abstract byte[] CreateKeyExchange(byte[] data); + public abstract byte[] CreateKeyExchange(byte[] data, Type symAlgType); + public abstract void SetKey(AsymmetricAlgorithm key); +} + +// Namespace: System.Security.Cryptography +public abstract class AsymmetricSignatureDeformatter // TypeDefIndex: 1272 +{ + // Methods + protected void .ctor(); // 0x100BF000 + public abstract void SetHashAlgorithm(string strName); + public abstract void SetKey(AsymmetricAlgorithm key); + public abstract bool VerifySignature(byte[] rgbHash, byte[] rgbSignature); + public virtual bool VerifySignature(HashAlgorithm hash, byte[] rgbSignature); // 0x10287000 +} + +// Namespace: System.Security.Cryptography +public abstract class AsymmetricSignatureFormatter // TypeDefIndex: 1273 +{ + // Methods + protected void .ctor(); // 0x100BF000 + public abstract void SetHashAlgorithm(string strName); + public abstract void SetKey(AsymmetricAlgorithm key); + public abstract byte[] CreateSignature(byte[] rgbHash); + public virtual byte[] CreateSignature(HashAlgorithm hash); // 0x102870B0 +} + +// Namespace: System.Security.Cryptography +internal static class Base64Constants // TypeDefIndex: 1274 +{ + // Fields + public static readonly byte[] EncodeTable; // 0x00 + public static readonly byte[] DecodeTable; // 0x04 + + // Methods + private static void .cctor(); // 0x10287160 +} + +// Namespace: System.Security.Cryptography +[Serializable] +public enum CipherMode // TypeDefIndex: 1275 +{ + CBC = 1, + ECB = 2, + OFB = 3, + CFB = 4, + CTS = 5 +} + +// Namespace: System.Security.Cryptography +public sealed class CryptoAPITransform : IDisposable, ICryptoTransform // TypeDefIndex: 1276 +{ + // Fields + private bool m_disposed; // 0x08 + + // Properties + public bool CanReuseTransform { get; } // 0x100E5880 + public bool CanTransformMultipleBlocks { get; } // 0x100E5880 + public int InputBlockSize { get; } // 0x100C5600 + public IntPtr KeyHandle { get; } // 0x102886F0 + public int OutputBlockSize { get; } // 0x100C5600 + + // Methods + internal void .ctor(); // 0x101E9380 + private void System.IDisposable.Dispose(); // 0x102886D0 + public void Clear(); // 0x10257730 + private void Dispose(bool disposing); // 0x10257730 + public int TransformBlock(byte[] inputBuffer, int inputOffset, int inputCount, byte[] outputBuffer, int outputOffset); // 0x100C5600 + public byte[] TransformFinalBlock(byte[] inputBuffer, int inputOffset, int inputCount); // 0x100C5600 + public void Reset(); // 0x100C5530 +} + +// Namespace: System.Security.Cryptography +public class CryptoConfig // TypeDefIndex: 1277 +{ + // Fields + private const string defaultNamespace = "System.Security.Cryptography."; // 0x00 + private const string defaultSHA1 = "System.Security.Cryptography.SHA1CryptoServiceProvider"; // 0x00 + private const string defaultMD5 = "System.Security.Cryptography.MD5CryptoServiceProvider"; // 0x00 + private const string defaultSHA256 = "System.Security.Cryptography.SHA256Managed"; // 0x00 + private const string defaultSHA384 = "System.Security.Cryptography.SHA384Managed"; // 0x00 + private const string defaultSHA512 = "System.Security.Cryptography.SHA512Managed"; // 0x00 + private const string defaultRSA = "System.Security.Cryptography.RSACryptoServiceProvider"; // 0x00 + private const string defaultDSA = "System.Security.Cryptography.DSACryptoServiceProvider"; // 0x00 + private const string defaultDES = "System.Security.Cryptography.DESCryptoServiceProvider"; // 0x00 + private const string default3DES = "System.Security.Cryptography.TripleDESCryptoServiceProvider"; // 0x00 + private const string defaultRC2 = "System.Security.Cryptography.RC2CryptoServiceProvider"; // 0x00 + private const string defaultAES = "System.Security.Cryptography.RijndaelManaged"; // 0x00 + private const string defaultRNG = "System.Security.Cryptography.RNGCryptoServiceProvider"; // 0x00 + private const string defaultHMAC = "System.Security.Cryptography.HMACSHA1"; // 0x00 + private const string defaultMAC3DES = "System.Security.Cryptography.MACTripleDES"; // 0x00 + private const string defaultDSASigDesc = "System.Security.Cryptography.DSASignatureDescription"; // 0x00 + private const string defaultRSASigDesc = "System.Security.Cryptography.RSAPKCS1SHA1SignatureDescription"; // 0x00 + private const string defaultRIPEMD160 = "System.Security.Cryptography.RIPEMD160Managed"; // 0x00 + private const string defaultHMACMD5 = "System.Security.Cryptography.HMACMD5"; // 0x00 + private const string defaultHMACRIPEMD160 = "System.Security.Cryptography.HMACRIPEMD160"; // 0x00 + private const string defaultHMACSHA256 = "System.Security.Cryptography.HMACSHA256"; // 0x00 + private const string defaultHMACSHA384 = "System.Security.Cryptography.HMACSHA384"; // 0x00 + private const string defaultHMACSHA512 = "System.Security.Cryptography.HMACSHA512"; // 0x00 + private const string defaultC14N = "System.Security.Cryptography.Xml.XmlDsigC14NTransform, System.Security, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + private const string defaultC14NWithComments = "System.Security.Cryptography.Xml.XmlDsigC14NWithCommentsTransform, System.Security, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + private const string defaultBase64 = "System.Security.Cryptography.Xml.XmlDsigBase64Transform, System.Security, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + private const string defaultXPath = "System.Security.Cryptography.Xml.XmlDsigXPathTransform, System.Security, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + private const string defaultXslt = "System.Security.Cryptography.Xml.XmlDsigXsltTransform, System.Security, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + private const string defaultEnveloped = "System.Security.Cryptography.Xml.XmlDsigEnvelopedSignatureTransform, System.Security, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + private const string defaultXmlDecryption = "System.Security.Cryptography.Xml.XmlDecryptionTransform, System.Security, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + private const string defaultExcC14N = "System.Security.Cryptography.Xml.XmlDsigExcC14NTransform, System.Security, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + private const string defaultExcC14NWithComments = "System.Security.Cryptography.Xml.XmlDsigExcC14NWithCommentsTransform, System.Security, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + private const string defaultX509Data = "System.Security.Cryptography.Xml.KeyInfoX509Data, System.Security, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + private const string defaultKeyName = "System.Security.Cryptography.Xml.KeyInfoName, System.Security, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + private const string defaultKeyValueDSA = "System.Security.Cryptography.Xml.DSAKeyValue, System.Security, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + private const string defaultKeyValueRSA = "System.Security.Cryptography.Xml.RSAKeyValue, System.Security, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + private const string defaultRetrievalMethod = "System.Security.Cryptography.Xml.KeyInfoRetrievalMethod, System.Security, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + private const string managedSHA1 = "System.Security.Cryptography.SHA1Managed"; // 0x00 + private const string oidSHA1 = "1.3.14.3.2.26"; // 0x00 + private const string oidMD5 = "1.2.840.113549.2.5"; // 0x00 + private const string oidSHA256 = "2.16.840.1.101.3.4.2.1"; // 0x00 + private const string oidSHA384 = "2.16.840.1.101.3.4.2.2"; // 0x00 + private const string oidSHA512 = "2.16.840.1.101.3.4.2.3"; // 0x00 + private const string oidDSA = "1.2.840.10040.4.1"; // 0x00 + private const string oidDES = "1.3.14.3.2.7"; // 0x00 + private const string oid3DES = "1.2.840.113549.3.7"; // 0x00 + private const string oidRC2 = "1.2.840.113549.3.2"; // 0x00 + private const string oid3DESKeyWrap = "1.2.840.113549.1.9.16.3.6"; // 0x00 + private const string nameSHA1a = "SHA"; // 0x00 + private const string nameSHA1b = "SHA1"; // 0x00 + private const string nameSHA1c = "System.Security.Cryptography.SHA1"; // 0x00 + private const string nameSHA1d = "System.Security.Cryptography.HashAlgorithm"; // 0x00 + private const string nameMD5a = "MD5"; // 0x00 + private const string nameMD5b = "System.Security.Cryptography.MD5"; // 0x00 + private const string nameSHA256a = "SHA256"; // 0x00 + private const string nameSHA256b = "SHA-256"; // 0x00 + private const string nameSHA256c = "System.Security.Cryptography.SHA256"; // 0x00 + private const string nameSHA384a = "SHA384"; // 0x00 + private const string nameSHA384b = "SHA-384"; // 0x00 + private const string nameSHA384c = "System.Security.Cryptography.SHA384"; // 0x00 + private const string nameSHA512a = "SHA512"; // 0x00 + private const string nameSHA512b = "SHA-512"; // 0x00 + private const string nameSHA512c = "System.Security.Cryptography.SHA512"; // 0x00 + private const string nameRSAa = "RSA"; // 0x00 + private const string nameRSAb = "System.Security.Cryptography.RSA"; // 0x00 + private const string nameRSAc = "System.Security.Cryptography.AsymmetricAlgorithm"; // 0x00 + private const string nameDSAa = "DSA"; // 0x00 + private const string nameDSAb = "System.Security.Cryptography.DSA"; // 0x00 + private const string nameDESa = "DES"; // 0x00 + private const string nameDESb = "System.Security.Cryptography.DES"; // 0x00 + private const string name3DESa = "3DES"; // 0x00 + private const string name3DESb = "TripleDES"; // 0x00 + private const string name3DESc = "Triple DES"; // 0x00 + private const string name3DESd = "System.Security.Cryptography.TripleDES"; // 0x00 + private const string nameRC2a = "RC2"; // 0x00 + private const string nameRC2b = "System.Security.Cryptography.RC2"; // 0x00 + private const string nameAESa = "Rijndael"; // 0x00 + private const string nameAESb = "System.Security.Cryptography.Rijndael"; // 0x00 + private const string nameAESc = "System.Security.Cryptography.SymmetricAlgorithm"; // 0x00 + private const string nameRNGa = "RandomNumberGenerator"; // 0x00 + private const string nameRNGb = "System.Security.Cryptography.RandomNumberGenerator"; // 0x00 + private const string nameKeyHasha = "System.Security.Cryptography.KeyedHashAlgorithm"; // 0x00 + private const string nameHMACSHA1a = "HMACSHA1"; // 0x00 + private const string nameHMACSHA1b = "System.Security.Cryptography.HMACSHA1"; // 0x00 + private const string nameMAC3DESa = "MACTripleDES"; // 0x00 + private const string nameMAC3DESb = "System.Security.Cryptography.MACTripleDES"; // 0x00 + private const string name3DESKeyWrap = "TripleDESKeyWrap"; // 0x00 + private const string nameRIPEMD160a = "RIPEMD160"; // 0x00 + private const string nameRIPEMD160b = "RIPEMD-160"; // 0x00 + private const string nameRIPEMD160c = "System.Security.Cryptography.RIPEMD160"; // 0x00 + private const string nameHMACa = "HMAC"; // 0x00 + private const string nameHMACb = "System.Security.Cryptography.HMAC"; // 0x00 + private const string nameHMACMD5a = "HMACMD5"; // 0x00 + private const string nameHMACMD5b = "System.Security.Cryptography.HMACMD5"; // 0x00 + private const string nameHMACRIPEMD160a = "HMACRIPEMD160"; // 0x00 + private const string nameHMACRIPEMD160b = "System.Security.Cryptography.HMACRIPEMD160"; // 0x00 + private const string nameHMACSHA256a = "HMACSHA256"; // 0x00 + private const string nameHMACSHA256b = "System.Security.Cryptography.HMACSHA256"; // 0x00 + private const string nameHMACSHA384a = "HMACSHA384"; // 0x00 + private const string nameHMACSHA384b = "System.Security.Cryptography.HMACSHA384"; // 0x00 + private const string nameHMACSHA512a = "HMACSHA512"; // 0x00 + private const string nameHMACSHA512b = "System.Security.Cryptography.HMACSHA512"; // 0x00 + private const string urlXmlDsig = "http://www.w3.org/2000/09/xmldsig#"; // 0x00 + private const string urlDSASHA1 = "http://www.w3.org/2000/09/xmldsig#dsa-sha1"; // 0x00 + private const string urlRSASHA1 = "http://www.w3.org/2000/09/xmldsig#rsa-sha1"; // 0x00 + private const string urlSHA1 = "http://www.w3.org/2000/09/xmldsig#sha1"; // 0x00 + private const string urlC14N = "http://www.w3.org/TR/2001/REC-xml-c14n-20010315"; // 0x00 + private const string urlC14NWithComments = "http://www.w3.org/TR/2001/REC-xml-c14n-20010315#WithComments"; // 0x00 + private const string urlBase64 = "http://www.w3.org/2000/09/xmldsig#base64"; // 0x00 + private const string urlXPath = "http://www.w3.org/TR/1999/REC-xpath-19991116"; // 0x00 + private const string urlXslt = "http://www.w3.org/TR/1999/REC-xslt-19991116"; // 0x00 + private const string urlEnveloped = "http://www.w3.org/2000/09/xmldsig#enveloped-signature"; // 0x00 + private const string urlXmlDecryption = "http://www.w3.org/2002/07/decrypt#XML"; // 0x00 + private const string urlExcC14NWithComments = "http://www.w3.org/2001/10/xml-exc-c14n#WithComments"; // 0x00 + private const string urlExcC14N = "http://www.w3.org/2001/10/xml-exc-c14n#"; // 0x00 + private const string urlSHA256 = "http://www.w3.org/2001/04/xmlenc#sha256"; // 0x00 + private const string urlSHA512 = "http://www.w3.org/2001/04/xmlenc#sha512"; // 0x00 + private const string urlHMACSHA256 = "http://www.w3.org/2001/04/xmldsig-more#hmac-sha256"; // 0x00 + private const string urlHMACSHA384 = "http://www.w3.org/2001/04/xmldsig-more#hmac-sha384"; // 0x00 + private const string urlHMACSHA512 = "http://www.w3.org/2001/04/xmldsig-more#hmac-sha512"; // 0x00 + private const string urlHMACRIPEMD160 = "http://www.w3.org/2001/04/xmldsig-more#hmac-ripemd160"; // 0x00 + private const string urlX509Data = "http://www.w3.org/2000/09/xmldsig# X509Data"; // 0x00 + private const string urlKeyName = "http://www.w3.org/2000/09/xmldsig# KeyName"; // 0x00 + private const string urlKeyValueDSA = "http://www.w3.org/2000/09/xmldsig# KeyValue/DSAKeyValue"; // 0x00 + private const string urlKeyValueRSA = "http://www.w3.org/2000/09/xmldsig# KeyValue/RSAKeyValue"; // 0x00 + private const string urlRetrievalMethod = "http://www.w3.org/2000/09/xmldsig# RetrievalMethod"; // 0x00 + private const string oidX509SubjectKeyIdentifier = "2.5.29.14"; // 0x00 + private const string oidX509KeyUsage = "2.5.29.15"; // 0x00 + private const string oidX509BasicConstraints = "2.5.29.19"; // 0x00 + private const string oidX509EnhancedKeyUsage = "2.5.29.37"; // 0x00 + private const string nameX509SubjectKeyIdentifier = "System.Security.Cryptography.X509Certificates.X509SubjectKeyIdentifierExtension, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"; // 0x00 + private const string nameX509KeyUsage = "System.Security.Cryptography.X509Certificates.X509KeyUsageExtension, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"; // 0x00 + private const string nameX509BasicConstraints = "System.Security.Cryptography.X509Certificates.X509BasicConstraintsExtension, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"; // 0x00 + private const string nameX509EnhancedKeyUsage = "System.Security.Cryptography.X509Certificates.X509EnhancedKeyUsageExtension, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"; // 0x00 + private const string nameX509Chain = "X509Chain"; // 0x00 + private const string defaultX509Chain = "System.Security.Cryptography.X509Certificates.X509Chain, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"; // 0x00 + private static object lockObject; // 0x00 + private static Hashtable algorithms; // 0x04 + private static Hashtable oid; // 0x08 + + // Methods + public void .ctor(); // 0x100BF000 + private static void .cctor(); // 0x1028A050 + private static void Initialize(); // 0x10288FC0 + private static void LoadConfig(string filename, Hashtable algorithms, Hashtable oid); // 0x10289C50 + public static object CreateFromName(string name); // 0x102889C0 + public static object CreateFromName(string name, object[] args); // 0x10288720 + public static string MapNameToOID(string name); // 0x10289E50 + public static byte[] EncodeOID(string str); // 0x10288B70 + private static byte[] EncodeLongNumber(long x); // 0x10288A10 +} + +// Namespace: +private class CryptoHandler : IContentHandler // TypeDefIndex: 1278 +{ + // Fields + private Hashtable algorithms; // 0x08 + private Hashtable oid; // 0x0C + private Hashtable names; // 0x10 + private Hashtable classnames; // 0x14 + private int level; // 0x18 + + // Methods + public void .ctor(Hashtable algorithms, Hashtable oid); // 0x1028A870 + public void OnStartParsing(SmallXmlParser parser); // 0x100C5530 + public void OnEndParsing(SmallXmlParser parser); // 0x1028A330 + private string Get(IAttrList attrs, string name); // 0x1028A0A0 + public void OnStartElement(string name, IAttrList attrs); // 0x1028A570 + public void OnEndElement(string name); // 0x1028A1D0 + public void OnProcessingInstruction(string name, string text); // 0x100C5530 + public void OnChars(string text); // 0x100C5530 + public void OnIgnorableWhitespace(string text); // 0x100C5530 +} + +// Namespace: System.Security.Cryptography +public class CryptoStream : Stream // TypeDefIndex: 1279 +{ + // Fields + private Stream _stream; // 0x08 + private ICryptoTransform _transform; // 0x0C + private CryptoStreamMode _mode; // 0x10 + private byte[] _currentBlock; // 0x14 + private bool _disposed; // 0x18 + private bool _flushedFinalBlock; // 0x19 + private int _partialCount; // 0x1C + private bool _endOfStream; // 0x20 + private byte[] _waitingBlock; // 0x24 + private int _waitingCount; // 0x28 + private byte[] _transformedBlock; // 0x2C + private int _transformedPos; // 0x30 + private int _transformedCount; // 0x34 + private byte[] _workingBlock; // 0x38 + private int _workingCount; // 0x3C + + // Properties + public override bool CanRead { get; } // 0x1028BD70 + public override bool CanSeek { get; } // 0x100EFBF0 + public override bool CanWrite { get; } // 0x10157670 + public override long Length { get; } // 0x1028BD80 + public override long Position { get; set; } // 0x1028BDD0 0x1028BE20 + + // Methods + public void .ctor(Stream stream, ICryptoTransform transform, CryptoStreamMode mode); // 0x1028BB90 + protected override void Finalize(); // 0x10257750 + public void Clear(); // 0x10257D10 + public override void Close(); // 0x1028AF70 + public override int Read(out byte[] buffer, int offset, int count); // 0x1028B1D0 + public override void Write(byte[] buffer, int offset, int count); // 0x1028B700 + public override void Flush(); // 0x1028B1A0 + public void FlushFinalBlock(); // 0x1028B010 + public override long Seek(long offset, SeekOrigin origin); // 0x1028B660 + public override void SetLength(long value); // 0x1028B6B0 + protected override void Dispose(bool disposing); // 0x1028AFB0 +} + +// Namespace: System.Security.Cryptography +[Serializable] +public enum CryptoStreamMode // TypeDefIndex: 1280 +{ + Read = 0, + Write = 1 +} + +// Namespace: System.Security.Cryptography +[Serializable] +public class CryptographicException : SystemException, _Exception // TypeDefIndex: 1281 +{ + // Methods + public void .ctor(); // 0x1028BF50 + public void .ctor(int hr); // 0x1028BE70 + public void .ctor(string message); // 0x1028BF00 + public void .ctor(string message, Exception inner); // 0x1028BF20 + public void .ctor(string format, string insert); // 0x1028BE90 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 +} + +// Namespace: System.Security.Cryptography +[Serializable] +public class CryptographicUnexpectedOperationException : CryptographicException // TypeDefIndex: 1282 +{ + // Methods + public void .ctor(); // 0x1028C000 + public void .ctor(string message); // 0x1028BFA0 + public void .ctor(string message, Exception inner); // 0x1028BFC0 + public void .ctor(string format, string insert); // 0x1028C050 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 +} + +// Namespace: System.Security.Cryptography +public sealed class CspKeyContainerInfo // TypeDefIndex: 1283 +{ + // Fields + private CspParameters _params; // 0x08 + internal bool _random; // 0x0C + + // Properties + public bool Accessible { get; } // 0x100E5880 + public CryptoKeySecurity CryptoKeySecurity { get; } // 0x100C5600 + public bool Exportable { get; } // 0x100E5880 + public bool HardwareDevice { get; } // 0x100EFBF0 + public string KeyContainerName { get; } // 0x101DF620 + public KeyNumber KeyNumber { get; } // 0x1028C0E0 + public bool MachineKeyStore { get; } // 0x100EFBF0 + public bool Protected { get; } // 0x100EFBF0 + public string ProviderName { get; } // 0x1028C100 + public int ProviderType { get; } // 0x1028C120 + public bool RandomlyGenerated { get; } // 0x100F8910 + public bool Removable { get; } // 0x100EFBF0 + public string UniqueKeyContainerName { get; } // 0x1028C140 + + // Methods + public void .ctor(CspParameters parameters); // 0x1028C0C0 +} + +// Namespace: System.Security.Cryptography +public sealed class CspParameters // TypeDefIndex: 1284 +{ + // Fields + private CspProviderFlags _Flags; // 0x08 + public string KeyContainerName; // 0x0C + public int KeyNumber; // 0x10 + public string ProviderName; // 0x14 + public int ProviderType; // 0x18 + private SecureString _password; // 0x1C + private IntPtr _windowHandle; // 0x20 + + // Properties + public CspProviderFlags Flags { get; set; } // 0x100BF0C0 0x100EB270 + public CryptoKeySecurity CryptoKeySecurity { get; set; } // 0x1028C2F0 0x1028C340 + public SecureString KeyPassword { get; set; } // 0x100F85F0 0x10113F50 + public IntPtr ParentWindowHandle { get; set; } // 0x100EACD0 0x100EB230 + + // Methods + public void .ctor(); // 0x1028C2B0 + public void .ctor(int dwTypeIn); // 0x1028C280 + public void .ctor(int dwTypeIn, string strProviderNameIn); // 0x1028C280 + public void .ctor(int dwTypeIn, string strProviderNameIn, string strContainerNameIn); // 0x1028C200 + public void .ctor(int providerType, string providerName, string keyContainerName, CryptoKeySecurity cryptoKeySecurity, IntPtr parentWindowHandle); // 0x1028C1B0 + public void .ctor(int providerType, string providerName, string keyContainerName, CryptoKeySecurity cryptoKeySecurity, SecureString keyPassword); // 0x1028C230 +} + +// Namespace: System.Security.Cryptography +[Serializable] +public enum CspProviderFlags // TypeDefIndex: 1285 +{ + NoFlags = 0, + UseMachineKeyStore = 1, + UseDefaultKeyContainer = 2, + UseNonExportableKey = 4, + UseExistingKey = 8, + UseArchivableKey = 16, + UseUserProtectedKey = 32, + NoPrompt = 64 +} + +// Namespace: System.Security.Cryptography +public abstract class DES : SymmetricAlgorithm // TypeDefIndex: 1286 +{ + // Fields + private const int keySizeByte = 8; // 0x00 + internal static readonly byte[] weakKeys; // 0x00 + internal static readonly byte[] semiWeakKeys; // 0x04 + + // Properties + public override byte[] Key { get; set; } // 0x1028E530 0x1028E5C0 + + // Methods + protected void .ctor(); // 0x1028E3E0 + private static void .cctor(); // 0x1028E340 + public static DES Create(); // 0x1028DED0 + public static DES Create(string algName); // 0x1028DDF0 + public static bool IsWeakKey(byte[] rgbKey); // 0x1028E190 + public static bool IsSemiWeakKey(byte[] rgbKey); // 0x1028DFE0 +} + +// Namespace: System.Security.Cryptography +internal class DESTransform : SymmetricTransform // TypeDefIndex: 1287 +{ + // Fields + internal static readonly int KEY_BIT_SIZE; // 0x00 + internal static readonly int KEY_BYTE_SIZE; // 0x04 + internal static readonly int BLOCK_BIT_SIZE; // 0x08 + internal static readonly int BLOCK_BYTE_SIZE; // 0x0C + private byte[] keySchedule; // 0x34 + private byte[] byteBuff; // 0x38 + private uint[] dwordBuff; // 0x3C + private static readonly uint[] spBoxes; // 0x10 + private static readonly byte[] PC1; // 0x14 + private static readonly byte[] leftRotTotal; // 0x18 + private static readonly byte[] PC2; // 0x1C + internal static readonly uint[] ipTab; // 0x20 + internal static readonly uint[] fpTab; // 0x24 + + // Methods + internal void .ctor(SymmetricAlgorithm symmAlgo, bool encryption, byte[] key, byte[] iv); // 0x1028DC10 + private static void .cctor(); // 0x1028DAA0 + private uint CipherFunct(uint r, int n); // 0x1028CA10 + internal static void Permutation(byte[] input, byte[] output, uint[] permTab, bool preSwap); // 0x1028CEA0 + private static void BSwap(byte[] byteBuff); // 0x1028C940 + internal void SetKey(byte[] key); // 0x1028D760 + public void ProcessBlock(byte[] input, byte[] output); // 0x1028D410 + protected override void ECB(byte[] input, byte[] output); // 0x1028CD20 + internal static byte[] GetStrongKey(); // 0x1028CDB0 +} + +// Namespace: System.Security.Cryptography +public sealed class DESCryptoServiceProvider : DES // TypeDefIndex: 1288 +{ + // Methods + public void .ctor(); // 0x1028C7B0 + public override ICryptoTransform CreateDecryptor(byte[] rgbKey, byte[] rgbIV); // 0x1028C660 + public override ICryptoTransform CreateEncryptor(byte[] rgbKey, byte[] rgbIV); // 0x1028C6B0 + public override void GenerateIV(); // 0x1028C700 + public override void GenerateKey(); // 0x1028C760 +} + +// Namespace: System.Security.Cryptography +public abstract class DSA : AsymmetricAlgorithm // TypeDefIndex: 1289 +{ + // Methods + protected void .ctor(); // 0x100BF000 + public static DSA Create(); // 0x1028F990 + public static DSA Create(string algName); // 0x1028FA90 + public abstract byte[] CreateSignature(byte[] rgbHash); + public abstract DSAParameters ExportParameters(bool includePrivateParameters); + internal void ZeroizePrivateKey(DSAParameters parameters); // 0x10290280 + public override void FromXmlString(string xmlString); // 0x1028FB70 + public abstract void ImportParameters(DSAParameters parameters); + public override string ToXmlString(bool includePrivateParameters); // 0x1028FE10 + public abstract bool VerifySignature(byte[] rgbHash, byte[] rgbSignature); +} + +// Namespace: System.Security.Cryptography +public sealed class DSACryptoServiceProvider : DSA, ICspAsymmetricAlgorithm // TypeDefIndex: 1290 +{ + // Fields + private const int PROV_DSS_DH = 13; // 0x00 + private KeyPairPersistence store; // 0x10 + private bool persistKey; // 0x14 + private bool persisted; // 0x00 + private bool privateKeyExportable; // 0x00 + private bool m_disposed; // 0x00 + private DSAManaged dsa; // 0x00 + private static bool useMachineKeyStore; // 0x00 + + // Properties + public override string KeyExchangeAlgorithm { get; } // 0x100C5600 + public override int KeySize { get; } // 0x1028F330 + public bool PersistKeyInCsp { get; set; } // 0x100C5670 0x10142260 + public bool PublicOnly { get; } // 0x1028F360 + public override string SignatureAlgorithm { get; } // 0x1028F390 + public static bool UseMachineKeyStore { get; set; } // 0x1028F3C0 0x1028F410 + public CspKeyContainerInfo CspKeyContainerInfo { get; } // 0x100C5600 + + // Methods + public void .ctor(); // 0x1028F2F0 + public void .ctor(CspParameters parameters); // 0x1028F0B0 + public void .ctor(int dwKeySize); // 0x1028F310 + public void .ctor(int dwKeySize, CspParameters parameters); // 0x1028F0D0 + private static void .cctor(); // 0x100C5530 + protected override void Finalize(); // 0x1028E890 + public override DSAParameters ExportParameters(bool includePrivateParameters); // 0x1028E7E0 + public override void ImportParameters(DSAParameters parameters); // 0x1028EB80 + public override byte[] CreateSignature(byte[] rgbHash); // 0x100C4870 + public byte[] SignData(byte[] buffer); // 0x1028EC90 + public byte[] SignData(byte[] buffer, int offset, int count); // 0x1028EC40 + public byte[] SignData(Stream inputStream); // 0x1028ECE0 + public byte[] SignHash(byte[] rgbHash, string str); // 0x1028EE30 + public bool VerifyData(byte[] rgbData, byte[] rgbSignature); // 0x1028EF20 + public bool VerifyHash(byte[] rgbHash, string str, byte[] rgbSignature); // 0x1028EF70 + public override bool VerifySignature(byte[] rgbHash, byte[] rgbSignature); // 0x1028F070 + protected override void Dispose(bool disposing); // 0x1028E750 + private void OnKeyGenerated(object sender, EventArgs e); // 0x1028EBC0 + public byte[] ExportCspBlob(bool includePrivateParameters); // 0x1028E7B0 + public void ImportCspBlob(byte[] keyBlob); // 0x1028E990 +} + +// Namespace: System.Security.Cryptography +[Serializable] +public struct DSAParameters // TypeDefIndex: 1291 +{ + // Fields + public int Counter; // 0x08 + public byte[] G; // 0x0C + public byte[] J; // 0x10 + public byte[] P; // 0x14 + public byte[] Q; // 0x18 + public byte[] Seed; // 0x1C + [NonSerialized] public byte[] X; // 0x20 + public byte[] Y; // 0x24 + +} + +// Namespace: System.Security.Cryptography +public class DSASignatureDeformatter : AsymmetricSignatureDeformatter // TypeDefIndex: 1292 +{ + // Fields + private DSA dsa; // 0x08 + + // Methods + public void .ctor(); // 0x100BF000 + public void .ctor(AsymmetricAlgorithm key); // 0x1028F6C0 + public override void SetHashAlgorithm(string strName); // 0x1028F470 + public override void SetKey(AsymmetricAlgorithm key); // 0x1028F590 + public override bool VerifySignature(byte[] rgbHash, byte[] rgbSignature); // 0x1028F630 +} + +// Namespace: System.Security.Cryptography +public class DSASignatureFormatter : AsymmetricSignatureFormatter // TypeDefIndex: 1293 +{ + // Fields + private DSA dsa; // 0x08 + + // Methods + public void .ctor(); // 0x100BF000 + public void .ctor(AsymmetricAlgorithm key); // 0x1028F6C0 + public override byte[] CreateSignature(byte[] rgbHash); // 0x1028F750 + public override void SetHashAlgorithm(string strName); // 0x1028F7D0 + public override void SetKey(AsymmetricAlgorithm key); // 0x1028F8F0 +} + +// Namespace: System.Security.Cryptography +public abstract class DeriveBytes // TypeDefIndex: 1294 +{ + // Methods + protected void .ctor(); // 0x100BF000 + public abstract byte[] GetBytes(int cb); + public abstract void Reset(); +} + +// Namespace: System.Security.Cryptography +[Serializable] +public enum FromBase64TransformMode // TypeDefIndex: 1295 +{ + IgnoreWhiteSpaces = 0, + DoNotIgnoreWhiteSpaces = 1 +} + +// Namespace: System.Security.Cryptography +public class FromBase64Transform : IDisposable, ICryptoTransform // TypeDefIndex: 1296 +{ + // Fields + private const byte TerminatorByte = 61; // 0x00 + private FromBase64TransformMode mode; // 0x08 + private byte[] accumulator; // 0x0C + private int accPtr; // 0x10 + private bool m_disposed; // 0x14 + private byte[] lookupTable; // 0x18 + + // Properties + public bool CanTransformMultipleBlocks { get; } // 0x100EFBF0 + public virtual bool CanReuseTransform { get; } // 0x100E5880 + public int InputBlockSize { get; } // 0x100EF660 + public int OutputBlockSize { get; } // 0x10158A50 + + // Methods + public void .ctor(); // 0x10292970 + public void .ctor(FromBase64TransformMode whitespaces); // 0x102929D0 + private void System.IDisposable.Dispose(); // 0x10257D10 + protected override void Finalize(); // 0x10257750 + public void Clear(); // 0x10257710 + protected virtual void Dispose(bool disposing); // 0x10292110 + private byte lookup(byte input); // 0x10292A30 + private int ProcessBlock(byte[] output, int offset); // 0x10292150 + private void CheckInputParameters(byte[] inputBuffer, int inputOffset, int inputCount); // 0x10291F90 + public int TransformBlock(byte[] inputBuffer, int inputOffset, int inputCount, byte[] outputBuffer, int outputOffset); // 0x10292550 + public byte[] TransformFinalBlock(byte[] inputBuffer, int inputOffset, int inputCount); // 0x102926E0 +} + +// Namespace: System.Security.Cryptography +public abstract class HMAC : KeyedHashAlgorithm // TypeDefIndex: 1297 +{ + // Fields + private bool _disposed; // 0x1C + private string _hashName; // 0x20 + private HashAlgorithm _algo; // 0x24 + private BlockProcessor _block; // 0x28 + private int _blockSizeValue; // 0x2C + + // Properties + protected int BlockSizeValue { get; set; } // 0x100EB200 0x100EB260 + public string HashName { get; set; } // 0x100EACD0 0x102942D0 + public override byte[] Key { get; set; } // 0x10294220 0x102942F0 + internal BlockProcessor Block { get; } // 0x102941B0 + + // Methods + protected void .ctor(); // 0x10294180 + private byte[] KeySetup(byte[] key, byte padding); // 0x102940C0 + protected override void Dispose(bool disposing); // 0x10293C50 + protected override void HashCore(byte[] rgb, int ib, int cb); // 0x10293C80 + protected override byte[] HashFinal(); // 0x10293D20 + public override void Initialize(); // 0x10293FC0 + public static HMAC Create(); // 0x10293A70 + public static HMAC Create(string algorithmName); // 0x10293B70 +} + +// Namespace: System.Security.Cryptography +public class HMACMD5 : HMAC // TypeDefIndex: 1298 +{ + // Methods + public void .ctor(); // 0x10293160 + public void .ctor(byte[] key); // 0x102931E0 +} + +// Namespace: System.Security.Cryptography +public class HMACRIPEMD160 : HMAC // TypeDefIndex: 1299 +{ + // Methods + public void .ctor(); // 0x102932C0 + public void .ctor(byte[] key); // 0x10293250 +} + +// Namespace: System.Security.Cryptography +public class HMACSHA1 : HMAC // TypeDefIndex: 1300 +{ + // Methods + public void .ctor(); // 0x10293340 + public void .ctor(byte[] key); // 0x102933C0 + public void .ctor(byte[] key, bool useManagedSha1); // 0x10293430 +} + +// Namespace: System.Security.Cryptography +public class HMACSHA256 : HMAC // TypeDefIndex: 1301 +{ + // Methods + public void .ctor(); // 0x10293550 + public void .ctor(byte[] key); // 0x102934E0 +} + +// Namespace: System.Security.Cryptography +public class HMACSHA384 : HMAC // TypeDefIndex: 1302 +{ + // Fields + private static bool legacy_mode; // 0x00 + private bool legacy; // 0x30 + + // Properties + public bool ProduceLegacyHmacValues { get; set; } // 0x100EF0D0 0x10293810 + + // Methods + public void .ctor(); // 0x10293640 + public void .ctor(byte[] key); // 0x10293760 + private static void .cctor(); // 0x102935D0 +} + +// Namespace: System.Security.Cryptography +public class HMACSHA512 : HMAC // TypeDefIndex: 1303 +{ + // Fields + private static bool legacy_mode; // 0x00 + private bool legacy; // 0x30 + + // Properties + public bool ProduceLegacyHmacValues { get; set; } // 0x100EF0D0 0x10293810 + + // Methods + public void .ctor(); // 0x102938A0 + public void .ctor(byte[] key); // 0x102939C0 + private static void .cctor(); // 0x10293830 +} + +// Namespace: System.Security.Cryptography +public abstract class HashAlgorithm : IDisposable, ICryptoTransform // TypeDefIndex: 1304 +{ + // Fields + protected internal byte[] HashValue; // 0x08 + protected int HashSizeValue; // 0x0C + protected int State; // 0x10 + private bool disposed; // 0x14 + + // Properties + public virtual bool CanTransformMultipleBlocks { get; } // 0x100E5880 + public virtual bool CanReuseTransform { get; } // 0x100E5880 + public virtual byte[] Hash { get; } // 0x10294B20 + public virtual int HashSize { get; } // 0x100C5B30 + public virtual int InputBlockSize { get; } // 0x100EF660 + public virtual int OutputBlockSize { get; } // 0x100EF660 + + // Methods + protected void .ctor(); // 0x10294B00 + private void System.IDisposable.Dispose(); // 0x102947F0 + public void Clear(); // 0x102943A0 + public byte[] ComputeHash(byte[] buffer); // 0x10294660 + public byte[] ComputeHash(byte[] buffer, int offset, int count); // 0x102943C0 + public byte[] ComputeHash(Stream inputStream); // 0x10294540 + public static HashAlgorithm Create(); // 0x102946D0 + public static HashAlgorithm Create(string hashName); // 0x10294700 + protected abstract void HashCore(byte[] array, int ibStart, int cbSize); + protected abstract byte[] HashFinal(); + public abstract void Initialize(); + protected virtual void Dispose(bool disposing); // 0x102947E0 + public int TransformBlock(byte[] inputBuffer, int inputOffset, int inputCount, byte[] outputBuffer, int outputOffset); // 0x10294820 + public byte[] TransformFinalBlock(byte[] inputBuffer, int inputOffset, int inputCount); // 0x102949B0 +} + +// Namespace: System.Security.Cryptography +public interface ICryptoTransform : IDisposable // TypeDefIndex: 1305 +{ + // Properties + bool CanReuseTransform { get; } + bool CanTransformMultipleBlocks { get; } + int InputBlockSize { get; } + int OutputBlockSize { get; } + + // Methods + int TransformBlock(byte[] inputBuffer, int inputOffset, int inputCount, byte[] outputBuffer, int outputOffset); + byte[] TransformFinalBlock(byte[] inputBuffer, int inputOffset, int inputCount); +} + +// Namespace: System.Security.Cryptography +public interface ICspAsymmetricAlgorithm // TypeDefIndex: 1306 +{ + // Properties + CspKeyContainerInfo CspKeyContainerInfo { get; } + + // Methods + byte[] ExportCspBlob(bool includePrivateParameters); + void ImportCspBlob(byte[] rawData); +} + +// Namespace: System.Security.Cryptography +[Serializable] +public enum KeyNumber // TypeDefIndex: 1307 +{ + Exchange = 1, + Signature = 2 +} + +// Namespace: System.Security.Cryptography +public sealed class KeySizes // TypeDefIndex: 1308 +{ + // Fields + private int _maxSize; // 0x08 + private int _minSize; // 0x0C + private int _skipSize; // 0x10 + + // Properties + public int MaxSize { get; } // 0x100BF0C0 + public int MinSize { get; } // 0x100C5B30 + public int SkipSize { get; } // 0x100BFC20 + + // Methods + public void .ctor(int minSize, int maxSize, int skipSize); // 0x10294C70 + internal bool IsLegal(int keySize); // 0x10294C30 + internal static bool IsLegalKeySize(KeySizes[] legalKeys, int size); // 0x10294B90 +} + +// Namespace: System.Security.Cryptography +public abstract class KeyedHashAlgorithm : HashAlgorithm // TypeDefIndex: 1309 +{ + // Fields + protected byte[] KeyValue; // 0x18 + + // Properties + public virtual byte[] Key { get; set; } // 0x10294ED0 0x10294F40 + + // Methods + protected void .ctor(); // 0x10294B00 + protected override void Finalize(); // 0x100C34A0 + protected override void Dispose(bool disposing); // 0x10294E80 + private void ZeroizeKey(); // 0x10294EB0 + public static KeyedHashAlgorithm Create(); // 0x10294CA0 + public static KeyedHashAlgorithm Create(string algName); // 0x10294DA0 +} + +// Namespace: System.Security.Cryptography +public class MACTripleDES : KeyedHashAlgorithm // TypeDefIndex: 1310 +{ + // Fields + private TripleDES tdes; // 0x1C + private MACAlgorithm mac; // 0x20 + private bool m_disposed; // 0x24 + + // Properties + public PaddingMode Padding { get; set; } // 0x10295560 0x10295590 + + // Methods + public void .ctor(); // 0x10295470 + public void .ctor(byte[] rgbKey); // 0x102953F0 + public void .ctor(string strTripleDES, byte[] rgbKey); // 0x102954C0 + private void Setup(string strTripleDES, byte[] rgbKey); // 0x102952F0 + protected override void Finalize(); // 0x10295090 + protected override void Dispose(bool disposing); // 0x10295010 + public override void Initialize(); // 0x10295270 + protected override void HashCore(byte[] rgbData, int ibStart, int cbSize); // 0x10295150 + protected override byte[] HashFinal(); // 0x102951F0 +} + +// Namespace: System.Security.Cryptography +public abstract class MD5 : HashAlgorithm // TypeDefIndex: 1311 +{ + // Methods + protected void .ctor(); // 0x10297000 + public static MD5 Create(); // 0x10296E20 + public static MD5 Create(string algName); // 0x10296F20 +} + +// Namespace: System.Security.Cryptography +public sealed class MD5CryptoServiceProvider : MD5 // TypeDefIndex: 1312 +{ + // Fields + private const int BLOCK_SIZE_BYTES = 64; // 0x00 + private const int HASH_SIZE_BYTES = 16; // 0x00 + private uint[] _H; // 0x18 + private uint[] buff; // 0x1C + private ulong count; // 0x20 + private byte[] _ProcessingBuffer; // 0x28 + private int _ProcessingBufferCount; // 0x2C + private static readonly uint[] K; // 0x00 + + // Methods + public void .ctor(); // 0x10296D00 + private static void .cctor(); // 0x10296CB0 + protected override void Finalize(); // 0x10295760 + protected override void Dispose(bool disposing); // 0x102956E0 + protected override void HashCore(byte[] rgb, int ibStart, int cbSize); // 0x10295790 + protected override byte[] HashFinal(); // 0x10295880 + public override void Initialize(); // 0x10295930 + private void ProcessBlock(byte[] inputBuffer, int inputOffset); // 0x102959F0 + private void ProcessFinalBlock(byte[] inputBuffer, int inputOffset, int inputCount); // 0x10296B80 + internal void AddLength(ulong length, byte[] buffer, int position); // 0x102955C0 +} + +// Namespace: System.Security.Cryptography +public abstract class MaskGenerationMethod // TypeDefIndex: 1313 +{ + // Methods + protected void .ctor(); // 0x100BF000 + public abstract byte[] GenerateMask(byte[] rgbSeed, int cbReturn); +} + +// Namespace: System.Security.Cryptography +public class PKCS1MaskGenerationMethod : MaskGenerationMethod // TypeDefIndex: 1314 +{ + // Fields + private string hashName; // 0x08 + + // Properties + public string HashName { get; set; } // 0x100BF0C0 0x100BF0D0 + + // Methods + public void .ctor(); // 0x100BF080 + public override byte[] GenerateMask(byte[] rgbSeed, int cbReturn); // 0x100BF010 +} + +// Namespace: System.Security.Cryptography +[Serializable] +public enum PaddingMode // TypeDefIndex: 1315 +{ + None = 1, + PKCS7 = 2, + Zeros = 3, + ANSIX923 = 4, + ISO10126 = 5 +} + +// Namespace: System.Security.Cryptography +public class PasswordDeriveBytes : DeriveBytes // TypeDefIndex: 1316 +{ + // Fields + private string HashNameValue; // 0x08 + private byte[] SaltValue; // 0x0C + private int IterationsValue; // 0x10 + private HashAlgorithm hash; // 0x14 + private int state; // 0x18 + private byte[] password; // 0x1C + private byte[] initial; // 0x20 + private byte[] output; // 0x24 + private int position; // 0x28 + private int hashnumber; // 0x2C + + // Properties + public string HashName { get; set; } // 0x100BF0C0 0x100BFCA0 + public int IterationCount { get; set; } // 0x100BFC20 0x100BFD40 + public byte[] Salt { get; set; } // 0x100BFC30 0x100BFDF0 + + // Methods + public void .ctor(string strPassword, byte[] rgbSalt); // 0x100BF900 + public void .ctor(string strPassword, byte[] rgbSalt, CspParameters cspParams); // 0x100BFAE0 + public void .ctor(string strPassword, byte[] rgbSalt, string strHashName, int iterations); // 0x100BFB70 + public void .ctor(string strPassword, byte[] rgbSalt, string strHashName, int iterations, CspParameters cspParams); // 0x100BFA50 + public void .ctor(byte[] password, byte[] salt); // 0x100BF950 + public void .ctor(byte[] password, byte[] salt, CspParameters cspParams); // 0x100BF9C0 + public void .ctor(byte[] password, byte[] salt, string hashName, int iterations); // 0x100BF9A0 + public void .ctor(byte[] password, byte[] salt, string hashName, int iterations, CspParameters cspParams); // 0x100BFB90 + protected override void Finalize(); // 0x100BF1C0 + private void Prepare(string strPassword, byte[] rgbSalt, string strHashName, int iterations); // 0x100BF510 + private void Prepare(byte[] password, byte[] rgbSalt, string strHashName, int iterations); // 0x100BF5E0 + public byte[] CryptDeriveKey(string algname, string alghashname, int keySize, byte[] rgbIV); // 0x100BF120 + public override byte[] GetBytes(int cb); // 0x100BF2A0 + public override void Reset(); // 0x100BF850 +} + +// Namespace: System.Security.Cryptography +public abstract class RC2 : SymmetricAlgorithm // TypeDefIndex: 1317 +{ + // Fields + protected int EffectiveKeySizeValue; // 0x30 + + // Properties + public virtual int EffectiveKeySize { get; set; } // 0x100C00C0 0x100C15B0 + public override int KeySize { get; set; } // 0x100BFC20 0x100C15C0 + + // Methods + protected void .ctor(); // 0x100BFF80 + public static RC2 Create(); // 0x100C1500 + public static RC2 Create(string AlgName); // 0x100C1460 +} + +// Namespace: System.Security.Cryptography +public sealed class RC2CryptoServiceProvider : RC2 // TypeDefIndex: 1318 +{ + // Fields + private bool _useSalt; // 0x34 + + // Properties + public override int EffectiveKeySize { get; set; } // 0x100C00C0 0x100C00F0 + public bool UseSalt { get; set; } // 0x100C00E0 0x100C0160 + + // Methods + public void .ctor(); // 0x100BFF80 + public override ICryptoTransform CreateDecryptor(byte[] rgbKey, byte[] rgbIV); // 0x100BFEA0 + public override ICryptoTransform CreateEncryptor(byte[] rgbKey, byte[] rgbIV); // 0x100BFEF0 + public override void GenerateIV(); // 0x100BFF40 + public override void GenerateKey(); // 0x100BFF60 +} + +// Namespace: System.Security.Cryptography +internal class RC2Transform : SymmetricTransform // TypeDefIndex: 1319 +{ + // Fields + private ushort R0; // 0x34 + private ushort R1; // 0x36 + private ushort R2; // 0x38 + private ushort R3; // 0x3A + private ushort[] K; // 0x3C + private int j; // 0x40 + private static readonly byte[] pitable; // 0x00 + + // Methods + public void .ctor(RC2 rc2Algo, bool encryption, byte[] key, byte[] iv); // 0x100C0FC0 + private static void .cctor(); // 0x100C0F70 + protected override void ECB(byte[] input, byte[] output); // 0x100C0170 +} + +// Namespace: System.Security.Cryptography +public abstract class RIPEMD160 : HashAlgorithm // TypeDefIndex: 1320 +{ + // Methods + protected void .ctor(); // 0x100C3EF0 + public static RIPEMD160 Create(); // 0x100C3DA0 + public static RIPEMD160 Create(string hashName); // 0x100C3E50 +} + +// Namespace: System.Security.Cryptography +public class RIPEMD160Managed : RIPEMD160 // TypeDefIndex: 1321 +{ + // Fields + private const int BLOCK_SIZE_BYTES = 64; // 0x00 + private byte[] _ProcessingBuffer; // 0x18 + private uint[] _X; // 0x1C + private uint[] _HashValue; // 0x20 + private ulong _Length; // 0x28 + private int _ProcessingBufferCount; // 0x30 + + // Methods + public void .ctor(); // 0x100C3D20 + public override void Initialize(); // 0x100C3980 + protected override void HashCore(byte[] rgb, int ibStart, int cbSize); // 0x100C36D0 + protected override byte[] HashFinal(); // 0x100C37C0 + protected override void Finalize(); // 0x100C34A0 + private void ProcessBlock(byte[] buffer, int offset); // 0x100C3B60 + private void Compress(); // 0x100C1740 + private void CompressFinal(ulong length); // 0x100C15E0 + private uint ROL(uint x, int n); // 0x100C3CF0 + private uint F(uint x, uint y, uint z); // 0x100C3490 + private uint G(uint x, uint y, uint z); // 0x100C3600 + private uint H(uint x, uint y, uint z); // 0x100C36C0 + private uint I(uint x, uint y, uint z); // 0x100C3960 + private uint J(uint x, uint y, uint z); // 0x100C3B50 + private void FF(uint a, uint b, uint c, uint d, uint e, uint x, int s); // 0x100C3440 + private void GG(uint a, uint b, uint c, uint d, uint e, uint x, int s); // 0x100C35B0 + private void HH(uint a, uint b, uint c, uint d, uint e, uint x, int s); // 0x100C3670 + private void II(uint a, uint b, uint c, uint d, uint e, uint x, int s); // 0x100C3910 + private void JJ(uint a, uint b, uint c, uint d, uint e, uint x, int s); // 0x100C3B00 + private void FFF(uint a, uint b, uint c, uint d, uint e, uint x, int s); // 0x100C3440 + private void GGG(uint a, uint b, uint c, uint d, uint e, uint x, int s); // 0x100C3560 + private void HHH(uint a, uint b, uint c, uint d, uint e, uint x, int s); // 0x100C3620 + private void III(uint a, uint b, uint c, uint d, uint e, uint x, int s); // 0x100C38C0 + private void JJJ(uint a, uint b, uint c, uint d, uint e, uint x, int s); // 0x100C3AB0 +} + +// Namespace: System.Security.Cryptography +public sealed class RNGCryptoServiceProvider : RandomNumberGenerator // TypeDefIndex: 1322 +{ + // Fields + private static object _lock; // 0x00 + private IntPtr _handle; // 0x08 + + // Methods + public void .ctor(); // 0x100C4450 + private static void .cctor(); // 0x100C4400 + private void Check(); // 0x100C3F10 + private static bool RngOpen(); // 0x100C43F0 + private static IntPtr RngInitialize(byte[] seed); // 0x100C43E0 + private static IntPtr RngGetBytes(IntPtr handle, byte[] data); // 0x100C43C0 + private static void RngClose(IntPtr handle); // 0x100C43B0 + public override void GetBytes(byte[] data); // 0x100C40B0 + public override void GetNonZeroBytes(byte[] data); // 0x100C4290 + protected override void Finalize(); // 0x100C3F90 +} + +// Namespace: System.Security.Cryptography +public abstract class RSA : AsymmetricAlgorithm // TypeDefIndex: 1323 +{ + // Methods + protected void .ctor(); // 0x100C5970 + public static RSA Create(); // 0x100C6350 + public static RSA Create(string algName); // 0x100C6400 + public abstract byte[] EncryptValue(byte[] rgb); + public abstract byte[] DecryptValue(byte[] rgb); + public abstract RSAParameters ExportParameters(bool includePrivateParameters); + public abstract void ImportParameters(RSAParameters parameters); + internal void ZeroizePrivateKey(RSAParameters parameters); // 0x100C6B70 + public override void FromXmlString(string xmlString); // 0x100C64A0 + public override string ToXmlString(bool includePrivateParameters); // 0x100C6740 +} + +// Namespace: System.Security.Cryptography +public sealed class RSACryptoServiceProvider : RSA, ICspAsymmetricAlgorithm // TypeDefIndex: 1324 +{ + // Fields + private const int PROV_RSA_FULL = 1; // 0x00 + private KeyPairPersistence store; // 0x10 + private bool persistKey; // 0x14 + private bool persisted; // 0x00 + private bool privateKeyExportable; // 0x00 + private bool m_disposed; // 0x00 + private RSAManaged rsa; // 0x00 + private static bool useMachineKeyStore; // 0x00 + private static Dictionary`2 <>f__switch$map29; // 0x04 + + // Properties + public static bool UseMachineKeyStore { get; set; } // 0x100C56E0 0x100C57B0 + public override string KeyExchangeAlgorithm { get; } // 0x100C5610 + public override int KeySize { get; } // 0x100C5640 + public bool PersistKeyInCsp { get; set; } // 0x100C5670 0x100C5730 + public bool PublicOnly { get; } // 0x100C5680 + public override string SignatureAlgorithm { get; } // 0x100C56B0 + public CspKeyContainerInfo CspKeyContainerInfo { get; } // 0x100C5600 + + // Methods + public void .ctor(); // 0x100C55D0 + public void .ctor(CspParameters parameters); // 0x100C5570 + public void .ctor(int dwKeySize); // 0x100C55A0 + public void .ctor(int dwKeySize, CspParameters parameters); // 0x100C5540 + private static void .cctor(); // 0x100C5530 + private void Common(int dwKeySize, CspParameters p); // 0x100C44C0 + protected override void Finalize(); // 0x100C4A40 + public byte[] Decrypt(byte[] rgb, bool fOAEP); // 0x100C4760 + public override byte[] DecryptValue(byte[] rgb); // 0x100C46D0 + public byte[] Encrypt(byte[] rgb, bool fOAEP); // 0x100C48A0 + public override byte[] EncryptValue(byte[] rgb); // 0x100C4870 + public override RSAParameters ExportParameters(bool includePrivateParameters); // 0x100C4990 + public override void ImportParameters(RSAParameters parameters); // 0x100C5000 + private HashAlgorithm GetHash(object halg); // 0x100C4CF0 + public byte[] SignData(byte[] buffer, object halg); // 0x100C50C0 + public byte[] SignData(Stream inputStream, object halg); // 0x100C51A0 + public byte[] SignData(byte[] buffer, int offset, int count, object halg); // 0x100C5220 + private string GetHashNameFromOID(string oid); // 0x100C4B40 + public byte[] SignHash(byte[] rgbHash, string str); // 0x100C52B0 + public bool VerifyData(byte[] buffer, object halg, byte[] signature); // 0x100C5370 + public bool VerifyHash(byte[] rgbHash, string str, byte[] rgbSignature); // 0x100C5450 + protected override void Dispose(bool disposing); // 0x100C4820 + private void OnKeyGenerated(object sender, EventArgs e); // 0x100C5040 + public byte[] ExportCspBlob(bool includePrivateParameters); // 0x100C4940 + public void ImportCspBlob(byte[] keyBlob); // 0x100C4E10 +} + +// Namespace: System.Security.Cryptography +public class RSAOAEPKeyExchangeDeformatter : AsymmetricKeyExchangeDeformatter // TypeDefIndex: 1325 +{ + // Fields + private RSA rsa; // 0x08 + + // Properties + public override string Parameters { get; set; } // 0x100C5600 0x100C5530 + + // Methods + public void .ctor(); // 0x100C5970 + public void .ctor(AsymmetricAlgorithm key); // 0x100C5980 + public override byte[] DecryptKeyExchange(byte[] rgbData); // 0x100C5810 + public override void SetKey(AsymmetricAlgorithm key); // 0x100C58F0 +} + +// Namespace: System.Security.Cryptography +public class RSAOAEPKeyExchangeFormatter : AsymmetricKeyExchangeFormatter // TypeDefIndex: 1326 +{ + // Fields + private RSA rsa; // 0x08 + private RandomNumberGenerator random; // 0x0C + private byte[] param; // 0x10 + + // Properties + public byte[] Parameter { get; set; } // 0x100BFC20 0x100C5B40 + public override string Parameters { get; } // 0x100C5600 + public RandomNumberGenerator Rng { get; set; } // 0x100C5B30 0x100C5B50 + + // Methods + public void .ctor(); // 0x100C5B10 + public void .ctor(AsymmetricAlgorithm key); // 0x100C5980 + public override byte[] CreateKeyExchange(byte[] rgbData); // 0x100C59D0 + public override byte[] CreateKeyExchange(byte[] rgbData, Type symAlgType); // 0x100C59B0 + public override void SetKey(AsymmetricAlgorithm key); // 0x100C5A90 +} + +// Namespace: System.Security.Cryptography +public class RSAPKCS1KeyExchangeDeformatter : AsymmetricKeyExchangeDeformatter // TypeDefIndex: 1327 +{ + // Fields + private RSA rsa; // 0x08 + private RandomNumberGenerator random; // 0x0C + + // Properties + public override string Parameters { get; set; } // 0x100C5600 0x100C5530 + public RandomNumberGenerator RNG { get; set; } // 0x100C5B30 0x100C5B50 + + // Methods + public void .ctor(); // 0x100C5970 + public void .ctor(AsymmetricAlgorithm key); // 0x100C5980 + public override byte[] DecryptKeyExchange(byte[] rgbIn); // 0x100C5B60 + public override void SetKey(AsymmetricAlgorithm key); // 0x100C5C30 +} + +// Namespace: System.Security.Cryptography +public class RSAPKCS1KeyExchangeFormatter : AsymmetricKeyExchangeFormatter // TypeDefIndex: 1328 +{ + // Fields + private RSA rsa; // 0x08 + private RandomNumberGenerator random; // 0x0C + + // Properties + public RandomNumberGenerator Rng { get; set; } // 0x100C5B30 0x100C5B50 + public override string Parameters { get; } // 0x100C5E70 + + // Methods + public void .ctor(); // 0x100C5970 + public void .ctor(AsymmetricAlgorithm key); // 0x100C5E50 + public override byte[] CreateKeyExchange(byte[] rgbData); // 0x100C5CB0 + public override byte[] CreateKeyExchange(byte[] rgbData, Type symAlgType); // 0x100C59B0 + private void SetRSAKey(AsymmetricAlgorithm key); // 0x100C5DB0 + public override void SetKey(AsymmetricAlgorithm key); // 0x100C5DA0 +} + +// Namespace: System.Security.Cryptography +public class RSAPKCS1SignatureDeformatter : AsymmetricSignatureDeformatter // TypeDefIndex: 1329 +{ + // Fields + private RSA rsa; // 0x08 + private string hashName; // 0x0C + + // Methods + public void .ctor(); // 0x100C5970 + public void .ctor(AsymmetricAlgorithm key); // 0x100C6150 + public override void SetHashAlgorithm(string strName); // 0x100C5F10 + public override void SetKey(AsymmetricAlgorithm key); // 0x100C5F70 + public override bool VerifySignature(byte[] rgbHash, byte[] rgbSignature); // 0x100C6010 +} + +// Namespace: System.Security.Cryptography +public class RSAPKCS1SignatureFormatter : AsymmetricSignatureFormatter // TypeDefIndex: 1330 +{ + // Fields + private RSA rsa; // 0x08 + private HashAlgorithm hash; // 0x0C + + // Methods + public void .ctor(); // 0x100C5970 + public void .ctor(AsymmetricAlgorithm key); // 0x100C6150 + public override byte[] CreateSignature(byte[] rgbHash); // 0x100C6180 + public override void SetHashAlgorithm(string strName); // 0x100C6290 + public override void SetKey(AsymmetricAlgorithm key); // 0x100C62B0 +} + +// Namespace: System.Security.Cryptography +[Serializable] +public struct RSAParameters // TypeDefIndex: 1331 +{ + // Fields + [NonSerialized] public byte[] P; // 0x08 + [NonSerialized] public byte[] Q; // 0x0C + [NonSerialized] public byte[] D; // 0x10 + [NonSerialized] public byte[] DP; // 0x14 + [NonSerialized] public byte[] DQ; // 0x18 + [NonSerialized] public byte[] InverseQ; // 0x1C + public byte[] Modulus; // 0x20 + public byte[] Exponent; // 0x24 + +} + +// Namespace: System.Security.Cryptography +public abstract class RandomNumberGenerator // TypeDefIndex: 1332 +{ + // Methods + protected void .ctor(); // 0x100BF000 + public static RandomNumberGenerator Create(); // 0x100C6C00 + public static RandomNumberGenerator Create(string rngName); // 0x100C6CB0 + public abstract void GetBytes(byte[] data); + public abstract void GetNonZeroBytes(byte[] data); +} + +// Namespace: System.Security.Cryptography +public class Rfc2898DeriveBytes : DeriveBytes // TypeDefIndex: 1333 +{ + // Fields + private const int defaultIterations = 1000; // 0x00 + private int _iteration; // 0x08 + private byte[] _salt; // 0x0C + private HMACSHA1 _hmac; // 0x10 + private byte[] _buffer; // 0x14 + private int _pos; // 0x18 + private int _f; // 0x1C + + // Properties + public int IterationCount { get; set; } // 0x100BF0C0 0x100C75B0 + public byte[] Salt { get; set; } // 0x100C7540 0x100C7610 + + // Methods + public void .ctor(string password, byte[] salt); // 0x100C7060 + public void .ctor(string password, byte[] salt, int iterations); // 0x100C7450 + public void .ctor(byte[] password, byte[] salt, int iterations); // 0x100C7150 + public void .ctor(string password, int saltSize); // 0x100C7320 + public void .ctor(string password, int saltSize, int iterations); // 0x100C71F0 + private byte[] F(byte[] s, int c, int i); // 0x100C6D50 + public override byte[] GetBytes(int cb); // 0x100C6E90 + public override void Reset(); // 0x100C7040 +} + +// Namespace: System.Security.Cryptography +public abstract class Rijndael : SymmetricAlgorithm // TypeDefIndex: 1334 +{ + // Methods + protected void .ctor(); // 0x100C7970 + public static Rijndael Create(); // 0x100E5560 + public static Rijndael Create(string algName); // 0x100E54C0 +} + +// Namespace: System.Security.Cryptography +public sealed class RijndaelManaged : Rijndael // TypeDefIndex: 1335 +{ + // Methods + public void .ctor(); // 0x100C7970 + public override void GenerateIV(); // 0x100BFF40 + public override void GenerateKey(); // 0x100BFF60 + public override ICryptoTransform CreateDecryptor(byte[] rgbKey, byte[] rgbIV); // 0x100C78D0 + public override ICryptoTransform CreateEncryptor(byte[] rgbKey, byte[] rgbIV); // 0x100C7920 +} + +// Namespace: System.Security.Cryptography +internal class RijndaelTransform : SymmetricTransform // TypeDefIndex: 1336 +{ + // Fields + private uint[] expandedKey; // 0x34 + private int Nb; // 0x38 + private int Nk; // 0x3C + private int Nr; // 0x40 + private static readonly uint[] Rcon; // 0x00 + private static readonly byte[] SBox; // 0x04 + private static readonly byte[] iSBox; // 0x08 + private static readonly uint[] T0; // 0x0C + private static readonly uint[] T1; // 0x10 + private static readonly uint[] T2; // 0x14 + private static readonly uint[] T3; // 0x18 + private static readonly uint[] iT0; // 0x1C + private static readonly uint[] iT1; // 0x20 + private static readonly uint[] iT2; // 0x24 + private static readonly uint[] iT3; // 0x28 + + // Methods + public void .ctor(Rijndael algo, bool encryption, byte[] key, byte[] iv); // 0x100E4DA0 + private static void .cctor(); // 0x100E4B90 + public void Clear(); // 0x100C7AB0 + protected override void ECB(byte[] input, byte[] output); // 0x100D6280 + private uint SubByte(uint a); // 0x100E4AA0 + private void Encrypt128(byte[] indata, byte[] outdata, uint[] ekey); // 0x100D6360 + private void Encrypt192(byte[] indata, byte[] outdata, uint[] ekey); // 0x100D98F0 + private void Encrypt256(byte[] indata, byte[] outdata, uint[] ekey); // 0x100DE670 + private void Decrypt128(byte[] indata, byte[] outdata, uint[] ekey); // 0x100C7AD0 + private void Decrypt192(byte[] indata, byte[] outdata, uint[] ekey); // 0x100CB000 + private void Decrypt256(byte[] indata, byte[] outdata, uint[] ekey); // 0x100CFDD0 +} + +// Namespace: System.Security.Cryptography +public sealed class RijndaelManagedTransform : IDisposable, ICryptoTransform // TypeDefIndex: 1337 +{ + // Fields + private RijndaelTransform _st; // 0x08 + private int _bs; // 0x0C + + // Properties + public int BlockSizeValue { get; } // 0x100C5B30 + public bool CanTransformMultipleBlocks { get; } // 0x100C7840 + public bool CanReuseTransform { get; } // 0x100C7810 + public int InputBlockSize { get; } // 0x100C7870 + public int OutputBlockSize { get; } // 0x100C78A0 + + // Methods + internal void .ctor(Rijndael algo, bool encryption, byte[] key, byte[] iv); // 0x100C7790 + private void System.IDisposable.Dispose(); // 0x100C76E0 + public void Clear(); // 0x100C76E0 + public void Reset(); // 0x100C5530 + public int TransformBlock(byte[] inputBuffer, int inputOffset, int inputCount, byte[] outputBuffer, int outputOffset); // 0x100C7710 + public byte[] TransformFinalBlock(byte[] inputBuffer, int inputOffset, int inputCount); // 0x100C7750 +} + +// Namespace: System.Security.Cryptography +public abstract class SHA1 : HashAlgorithm // TypeDefIndex: 1338 +{ + // Methods + protected void .ctor(); // 0x100C3EF0 + public static SHA1 Create(); // 0x10253A20 + public static SHA1 Create(string hashName); // 0x10253AD0 +} + +// Namespace: System.Security.Cryptography +internal class SHA1Internal // TypeDefIndex: 1339 +{ + // Fields + private const int BLOCK_SIZE_BYTES = 64; // 0x00 + private const int HASH_SIZE_BYTES = 20; // 0x00 + private uint[] _H; // 0x08 + private ulong count; // 0x10 + private byte[] _ProcessingBuffer; // 0x18 + private int _ProcessingBufferCount; // 0x1C + private uint[] buff; // 0x20 + + // Methods + public void .ctor(); // 0x10253950 + public void HashCore(byte[] rgb, int ibStart, int cbSize); // 0x102522D0 + public byte[] HashFinal(); // 0x102523B0 + public void Initialize(); // 0x102530B0 + private void ProcessBlock(byte[] inputBuffer, uint inputOffset); // 0x10253190 + private static void InitialiseBuff(uint[] buff, byte[] input, uint inputOffset); // 0x10252470 + private static void FillBuff(uint[] buff); // 0x10252060 + private void ProcessFinalBlock(byte[] inputBuffer, int inputOffset, int inputCount); // 0x10253810 + internal void AddLength(ulong length, byte[] buffer, int position); // 0x10251F30 +} + +// Namespace: System.Security.Cryptography +public sealed class SHA1CryptoServiceProvider : SHA1 // TypeDefIndex: 1340 +{ + // Fields + private SHA1Internal sha; // 0x18 + + // Methods + public void .ctor(); // 0x10251ED0 + protected override void Finalize(); // 0x10251D80 + protected override void Dispose(bool disposing); // 0x10251D70 + protected override void HashCore(byte[] rgb, int ibStart, int cbSize); // 0x10251E40 + protected override byte[] HashFinal(); // 0x10251E70 + public override void Initialize(); // 0x10251EA0 +} + +// Namespace: System.Security.Cryptography +public class SHA1Managed : SHA1 // TypeDefIndex: 1341 +{ + // Fields + private SHA1Internal sha; // 0x18 + + // Methods + public void .ctor(); // 0x102539C0 + protected override void HashCore(byte[] rgb, int ibStart, int cbSize); // 0x10251E40 + protected override byte[] HashFinal(); // 0x10251E70 + public override void Initialize(); // 0x10251EA0 +} + +// Namespace: System.Security.Cryptography +public abstract class SHA256 : HashAlgorithm // TypeDefIndex: 1342 +{ + // Methods + protected void .ctor(); // 0x10254660 + public static SHA256 Create(); // 0x102545B0 + public static SHA256 Create(string hashName); // 0x10254510 +} + +// Namespace: System.Security.Cryptography +public class SHA256Managed : SHA256 // TypeDefIndex: 1343 +{ + // Fields + private const int BLOCK_SIZE_BYTES = 64; // 0x00 + private const int HASH_SIZE_BYTES = 32; // 0x00 + private uint[] _H; // 0x18 + private ulong count; // 0x20 + private byte[] _ProcessingBuffer; // 0x28 + private int _ProcessingBufferCount; // 0x2C + private uint[] buff; // 0x30 + + // Methods + public void .ctor(); // 0x10254490 + protected override void HashCore(byte[] rgb, int ibStart, int cbSize); // 0x10253B70 + protected override byte[] HashFinal(); // 0x10253C60 + public override void Initialize(); // 0x10253D20 + private void ProcessBlock(byte[] inputBuffer, int inputOffset); // 0x10253E90 + private void ProcessFinalBlock(byte[] inputBuffer, int inputOffset, int inputCount); // 0x10254360 + internal void AddLength(ulong length, byte[] buffer, int position); // 0x10251F30 +} + +// Namespace: System.Security.Cryptography +public abstract class SHA384 : HashAlgorithm // TypeDefIndex: 1344 +{ + // Methods + protected void .ctor(); // 0x10255750 + public static SHA384 Create(); // 0x10255600 + public static SHA384 Create(string hashName); // 0x102556B0 +} + +// Namespace: System.Security.Cryptography +public class SHA384Managed : SHA384 // TypeDefIndex: 1345 +{ + // Fields + private byte[] xBuf; // 0x18 + private int xBufOff; // 0x1C + private ulong byteCount1; // 0x20 + private ulong byteCount2; // 0x28 + private ulong H1; // 0x30 + private ulong H2; // 0x38 + private ulong H3; // 0x40 + private ulong H4; // 0x48 + private ulong H5; // 0x50 + private ulong H6; // 0x58 + private ulong H7; // 0x60 + private ulong H8; // 0x68 + private ulong[] W; // 0x70 + private int wOff; // 0x74 + + // Methods + public void .ctor(); // 0x10254B60 + private void Initialize(bool reuse); // 0x10254A00 + public override void Initialize(); // 0x10254B40 + protected override void HashCore(byte[] rgb, int ibStart, int cbSize); // 0x10254680 + protected override byte[] HashFinal(); // 0x102547F0 + private void update(byte input); // 0x10255590 + private void processWord(byte[] input, int inOff); // 0x10255250 + private void unpackWord(ulong word, byte[] output, int outOff); // 0x10255450 + private void adjustByteCounts(); // 0x10254C30 + private void processLength(ulong lowW, ulong hiW); // 0x102551D0 + private void processBlock(); // 0x10254C70 +} + +// Namespace: System.Security.Cryptography +public abstract class SHA512 : HashAlgorithm // TypeDefIndex: 1346 +{ + // Methods + protected void .ctor(); // 0x102568B0 + public static SHA512 Create(); // 0x10256760 + public static SHA512 Create(string hashName); // 0x10256810 +} + +// Namespace: System.Security.Cryptography +public class SHA512Managed : SHA512 // TypeDefIndex: 1347 +{ + // Fields + private byte[] xBuf; // 0x18 + private int xBufOff; // 0x1C + private ulong byteCount1; // 0x20 + private ulong byteCount2; // 0x28 + private ulong H1; // 0x30 + private ulong H2; // 0x38 + private ulong H3; // 0x40 + private ulong H4; // 0x48 + private ulong H5; // 0x50 + private ulong H6; // 0x58 + private ulong H7; // 0x60 + private ulong H8; // 0x68 + private ulong[] W; // 0x70 + private int wOff; // 0x74 + + // Methods + public void .ctor(); // 0x10255E60 + private void Initialize(bool reuse); // 0x10255B60 + public override void Initialize(); // 0x10255B40 + protected override void HashCore(byte[] rgb, int ibStart, int cbSize); // 0x102557A0 + protected override byte[] HashFinal(); // 0x10255910 + private void update(byte input); // 0x102566F0 + private void processWord(byte[] input, int inOff); // 0x102564B0 + private void unpackWord(ulong word, byte[] output, int outOff); // 0x10255450 + private void adjustByteCounts(); // 0x10254C30 + private void processLength(ulong lowW, ulong hiW); // 0x10256430 + private void processBlock(); // 0x10255F30 + private ulong rotateRight(ulong x, int n); // 0x102566B0 + private ulong Ch(ulong x, ulong y, ulong z); // 0x10255770 + private ulong Maj(ulong x, ulong y, ulong z); // 0x10255CA0 + private ulong Sum0(ulong x); // 0x10255D90 + private ulong Sum1(ulong x); // 0x10255E00 + private ulong Sigma0(ulong x); // 0x10255CD0 + private ulong Sigma1(ulong x); // 0x10255D30 +} + +// Namespace: System.Security.Cryptography +internal static class SHAConstants // TypeDefIndex: 1348 +{ + // Fields + public static readonly uint[] K1; // 0x00 + public static readonly ulong[] K2; // 0x04 + + // Methods + private static void .cctor(); // 0x102568D0 +} + +// Namespace: System.Security.Cryptography +public class SignatureDescription // TypeDefIndex: 1349 +{ + // Fields + private string _DeformatterAlgorithm; // 0x08 + private string _DigestAlgorithm; // 0x0C + private string _FormatterAlgorithm; // 0x10 + private string _KeyAlgorithm; // 0x14 + + // Properties + public string DeformatterAlgorithm { get; set; } // 0x100BF0C0 0x100EB270 + public string DigestAlgorithm { get; set; } // 0x100C5B30 0x100C5B50 + public string FormatterAlgorithm { get; set; } // 0x100BFC20 0x100C5B40 + public string KeyAlgorithm { get; set; } // 0x100EF0C0 0x10127B00 + + // Methods + public void .ctor(); // 0x100BF000 + public void .ctor(SecurityElement el); // 0x10256C80 + public virtual AsymmetricSignatureDeformatter CreateDeformatter(AsymmetricAlgorithm key); // 0x10256950 + public virtual HashAlgorithm CreateDigest(); // 0x10256A80 + public virtual AsymmetricSignatureFormatter CreateFormatter(AsymmetricAlgorithm key); // 0x10256B50 +} + +// Namespace: System.Security.Cryptography +internal class DSASignatureDescription : SignatureDescription // TypeDefIndex: 1350 +{ + // Methods + public void .ctor(); // 0x1028F6F0 +} + +// Namespace: System.Security.Cryptography +internal class RSAPKCS1SHA1SignatureDescription : SignatureDescription // TypeDefIndex: 1351 +{ + // Methods + public void .ctor(); // 0x100C5EB0 + public override AsymmetricSignatureDeformatter CreateDeformatter(AsymmetricAlgorithm key); // 0x100C5EA0 +} + +// Namespace: System.Security.Cryptography +public abstract class SymmetricAlgorithm : IDisposable // TypeDefIndex: 1352 +{ + // Fields + protected int BlockSizeValue; // 0x08 + protected byte[] IVValue; // 0x0C + protected int KeySizeValue; // 0x10 + protected byte[] KeyValue; // 0x14 + protected KeySizes[] LegalBlockSizesValue; // 0x18 + protected KeySizes[] LegalKeySizesValue; // 0x1C + protected int FeedbackSizeValue; // 0x20 + protected CipherMode ModeValue; // 0x24 + protected PaddingMode PaddingValue; // 0x28 + private bool m_disposed; // 0x2C + + // Properties + public virtual int BlockSize { get; set; } // 0x100BF0C0 0x102571E0 + public virtual int FeedbackSize { get; set; } // 0x100EACD0 0x10257270 + public virtual byte[] IV { get; set; } // 0x102570C0 0x102572E0 + public virtual byte[] Key { get; set; } // 0x10257150 0x10257440 + public virtual int KeySize { get; set; } // 0x100BFC20 0x102573C0 + public virtual KeySizes[] LegalBlockSizes { get; } // 0x100EE580 + public virtual KeySizes[] LegalKeySizes { get; } // 0x100F85F0 + public virtual CipherMode Mode { get; set; } // 0x100EAD50 0x10257530 + public virtual PaddingMode Padding { get; set; } // 0x100EB040 0x10257620 + + // Methods + protected void .ctor(); // 0x10257090 + private void System.IDisposable.Dispose(); // 0x101A9CF0 + protected override void Finalize(); // 0x10256FB0 + public void Clear(); // 0x101A1CD0 + protected virtual void Dispose(bool disposing); // 0x10256F70 + public virtual ICryptoTransform CreateDecryptor(); // 0x10256D80 + public abstract ICryptoTransform CreateDecryptor(byte[] rgbKey, byte[] rgbIV); + public virtual ICryptoTransform CreateEncryptor(); // 0x10256DD0 + public abstract ICryptoTransform CreateEncryptor(byte[] rgbKey, byte[] rgbIV); + public abstract void GenerateIV(); + public abstract void GenerateKey(); + public bool ValidKeySize(int bitLength); // 0x10257070 + public static SymmetricAlgorithm Create(); // 0x10256EC0 + public static SymmetricAlgorithm Create(string algName); // 0x10256E20 +} + +// Namespace: System.Security.Cryptography +public class ToBase64Transform : IDisposable, ICryptoTransform // TypeDefIndex: 1353 +{ + // Fields + private const int inputBlockSize = 3; // 0x00 + private const int outputBlockSize = 4; // 0x00 + private bool m_disposed; // 0x08 + + // Properties + public bool CanTransformMultipleBlocks { get; } // 0x100EFBF0 + public virtual bool CanReuseTransform { get; } // 0x100E5880 + public int InputBlockSize { get; } // 0x10158A50 + public int OutputBlockSize { get; } // 0x100FCEA0 + + // Methods + public void .ctor(); // 0x100BF000 + private void System.IDisposable.Dispose(); // 0x10257D10 + protected override void Finalize(); // 0x10257750 + public void Clear(); // 0x10257710 + protected virtual void Dispose(bool disposing); // 0x10257730 + public int TransformBlock(byte[] inputBuffer, int inputOffset, int inputCount, byte[] outputBuffer, int outputOffset); // 0x10257D40 + internal static void InternalTransformBlock(byte[] inputBuffer, int inputOffset, int inputCount, byte[] outputBuffer, int outputOffset); // 0x10257810 + public byte[] TransformFinalBlock(byte[] inputBuffer, int inputOffset, int inputCount); // 0x10257F80 + internal static byte[] InternalTransformFinalBlock(byte[] inputBuffer, int inputOffset, int inputCount); // 0x10257A10 +} + +// Namespace: System.Security.Cryptography +public abstract class TripleDES : SymmetricAlgorithm // TypeDefIndex: 1354 +{ + // Properties + public override byte[] Key { get; set; } // 0x10258B00 0x10258BC0 + + // Methods + protected void .ctor(); // 0x102581A0 + public static bool IsWeakKey(byte[] rgbKey); // 0x10258990 + public static TripleDES Create(); // 0x10258840 + public static TripleDES Create(string str); // 0x102588F0 +} + +// Namespace: System.Security.Cryptography +public sealed class TripleDESCryptoServiceProvider : TripleDES // TypeDefIndex: 1355 +{ + // Methods + public void .ctor(); // 0x102581A0 + public override void GenerateIV(); // 0x100BFF40 + public override void GenerateKey(); // 0x10258180 + public override ICryptoTransform CreateDecryptor(byte[] rgbKey, byte[] rgbIV); // 0x102580E0 + public override ICryptoTransform CreateEncryptor(byte[] rgbKey, byte[] rgbIV); // 0x10258130 +} + +// Namespace: System.Security.Cryptography +internal class TripleDESTransform : SymmetricTransform // TypeDefIndex: 1356 +{ + // Fields + private DESTransform E1; // 0x34 + private DESTransform D2; // 0x38 + private DESTransform E3; // 0x3C + private DESTransform D1; // 0x40 + private DESTransform E2; // 0x44 + private DESTransform D3; // 0x48 + + // Methods + public void .ctor(TripleDES algo, bool encryption, byte[] key, byte[] iv); // 0x102585E0 + protected override void ECB(byte[] input, byte[] output); // 0x102582F0 + internal static byte[] GetStrongKey(); // 0x10258410 +} + +// Namespace: System.Security.Permissions +[Serializable] +public abstract class CodeAccessSecurityAttribute : SecurityAttribute // TypeDefIndex: 1357 +{ + // Methods + protected void .ctor(SecurityAction action); // 0x10245600 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class EnvironmentPermission : CodeAccessPermission, IBuiltInPermission, IUnrestrictedPermission // TypeDefIndex: 1358 +{ + // Fields + private const int version = 1; // 0x00 + private PermissionState _state; // 0x08 + private ArrayList readList; // 0x0C + private ArrayList writeList; // 0x10 + + // Methods + public void .ctor(PermissionState state); // 0x102469D0 + public void .ctor(EnvironmentPermissionAccess flag, string pathList); // 0x10246A50 + private int System.Security.Permissions.IBuiltInPermission.GetTokenIndex(); // 0x100C5600 + public void AddPathList(EnvironmentPermissionAccess flag, string pathList); // 0x10245680 + public override IPermission Copy(); // 0x102459D0 + public override void FromXml(SecurityElement esd); // 0x10245A70 + public string GetPathList(EnvironmentPermissionAccess flag); // 0x10245B30 + public override IPermission Intersect(IPermission target); // 0x10245E30 + public override bool IsSubsetOf(IPermission target); // 0x10246100 + public bool IsUnrestricted(); // 0x102425E0 + public void SetPathList(EnvironmentPermissionAccess flag, string pathList); // 0x10246460 + public override SecurityElement ToXml(); // 0x102467E0 + public override IPermission Union(IPermission other); // 0x102468A0 + private bool IsEmpty(); // 0x102460A0 + private EnvironmentPermission Cast(IPermission target); // 0x10245950 + internal void ThrowInvalidFlag(EnvironmentPermissionAccess flag, bool context); // 0x10246720 + private string GetPathList(ArrayList list); // 0x10245BA0 +} + +// Namespace: System.Security.Permissions +[Serializable] +public enum EnvironmentPermissionAccess // TypeDefIndex: 1359 +{ + NoAccess = 0, + Read = 1, + Write = 2, + AllAccess = 3 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class EnvironmentPermissionAttribute : CodeAccessSecurityAttribute // TypeDefIndex: 1360 +{ + // Fields + private string read; // 0x10 + private string write; // 0x14 + + // Properties + public string All { get; set; } // 0x10245610 0x10245660 + public string Read { get; set; } // 0x100BFC20 0x100C5B40 + public string Write { get; set; } // 0x100EF0C0 0x10127B00 + + // Methods + public void .ctor(SecurityAction action); // 0x10245600 + public override IPermission CreatePermission(); // 0x100C5600 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class FileDialogPermission : CodeAccessPermission, IBuiltInPermission, IUnrestrictedPermission // TypeDefIndex: 1361 +{ + // Fields + private const int version = 1; // 0x00 + private FileDialogPermissionAccess _access; // 0x08 + + // Properties + public FileDialogPermissionAccess Access { get; set; } // 0x100BF0C0 0x10247130 + + // Methods + public void .ctor(PermissionState state); // 0x10246FB0 + public void .ctor(FileDialogPermissionAccess access); // 0x10246FF0 + private int System.Security.Permissions.IBuiltInPermission.GetTokenIndex(); // 0x100EF660 + public override IPermission Copy(); // 0x10246C00 + public override void FromXml(SecurityElement esd); // 0x10246C50 + public override IPermission Intersect(IPermission target); // 0x10246D70 + public override bool IsSubsetOf(IPermission target); // 0x10246DE0 + public bool IsUnrestricted(); // 0x10246E10 + public override SecurityElement ToXml(); // 0x10246E20 + public override IPermission Union(IPermission target); // 0x10246EC0 + private FileDialogPermission Cast(IPermission target); // 0x10246B80 +} + +// Namespace: System.Security.Permissions +[Serializable] +public enum FileDialogPermissionAccess // TypeDefIndex: 1362 +{ + None = 0, + Open = 1, + Save = 2, + OpenSave = 3 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class FileDialogPermissionAttribute : CodeAccessSecurityAttribute // TypeDefIndex: 1363 +{ + // Fields + private bool canOpen; // 0x10 + private bool canSave; // 0x11 + + // Properties + public bool Open { get; set; } // 0x101137C0 0x10246B70 + public bool Save { get; set; } // 0x101F65A0 0x101F6610 + + // Methods + public void .ctor(SecurityAction action); // 0x10245600 + public override IPermission CreatePermission(); // 0x10246AD0 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class FileIOPermission : CodeAccessPermission, IBuiltInPermission, IUnrestrictedPermission // TypeDefIndex: 1364 +{ + // Fields + private const int version = 1; // 0x00 + private static char[] BadPathNameCharacters; // 0x00 + private static char[] BadFileNameCharacters; // 0x04 + private bool m_Unrestricted; // 0x08 + private FileIOPermissionAccess m_AllFilesAccess; // 0x0C + private FileIOPermissionAccess m_AllLocalFilesAccess; // 0x10 + private ArrayList readList; // 0x14 + private ArrayList writeList; // 0x18 + private ArrayList appendList; // 0x1C + private ArrayList pathList; // 0x20 + + // Properties + public FileIOPermissionAccess AllFiles { get; set; } // 0x100C5B30 0x10249A20 + public FileIOPermissionAccess AllLocalFiles { get; set; } // 0x100BFC20 0x10249A40 + + // Methods + public void .ctor(PermissionState state); // 0x10249970 + public void .ctor(FileIOPermissionAccess access, string path); // 0x10249870 + public void .ctor(FileIOPermissionAccess access, string[] pathList); // 0x102497F0 + public void .ctor(FileIOPermissionAccess access, AccessControlActions control, string path); // 0x102499C0 + public void .ctor(FileIOPermissionAccess access, AccessControlActions control, string[] pathList); // 0x10249790 + private static void .cctor(); // 0x10249720 + private int System.Security.Permissions.IBuiltInPermission.GetTokenIndex(); // 0x1016F1E0 + internal void CreateLists(); // 0x102478F0 + public void AddPathList(FileIOPermissionAccess access, string path); // 0x10247410 + public void AddPathList(FileIOPermissionAccess access, string[] pathList); // 0x102474A0 + internal void AddPathInternal(FileIOPermissionAccess access, string path); // 0x10247320 + public override IPermission Copy(); // 0x10247690 + public override void FromXml(SecurityElement esd); // 0x10247980 + public string[] GetPathList(FileIOPermissionAccess access); // 0x10247B90 + public override IPermission Intersect(IPermission target); // 0x10248070 + public override bool IsSubsetOf(IPermission target); // 0x10248280 + public bool IsUnrestricted(); // 0x100EA020 + public void SetPathList(FileIOPermissionAccess access, string path); // 0x102487E0 + public void SetPathList(FileIOPermissionAccess access, string[] pathList); // 0x10248700 + public override SecurityElement ToXml(); // 0x10248C10 + public override IPermission Union(IPermission other); // 0x10249220 + public override bool Equals(object obj); // 0x100EFBF0 + public override int GetHashCode(); // 0x10247B80 + private bool IsEmpty(); // 0x102481E0 + private static FileIOPermission Cast(IPermission target); // 0x10247570 + internal static void ThrowInvalidFlag(FileIOPermissionAccess access, bool context); // 0x10248B50 + internal static void ThrowIfInvalidPath(string path); // 0x10248910 + internal static void ThrowIfInvalidPath(string[] paths); // 0x10248880 + internal void Clear(FileIOPermissionAccess access); // 0x102475F0 + internal static bool KeyIsSubsetOf(IList local, IList target); // 0x10248430 + internal static void UnionKeys(IList list, string[] paths); // 0x102490A0 + internal static void IntersectKeys(IList local, IList target, IList result); // 0x10247D30 +} + +// Namespace: System.Security.Permissions +[Serializable] +public enum FileIOPermissionAccess // TypeDefIndex: 1365 +{ + NoAccess = 0, + Read = 1, + Write = 2, + Append = 4, + PathDiscovery = 8, + AllAccess = 15 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class FileIOPermissionAttribute : CodeAccessSecurityAttribute // TypeDefIndex: 1366 +{ + // Fields + private string append; // 0x10 + private string path; // 0x14 + private string read; // 0x18 + private string write; // 0x1C + private FileIOPermissionAccess allFiles; // 0x20 + private FileIOPermissionAccess allLocalFiles; // 0x24 + private string changeAccessControl; // 0x28 + private string viewAccessControl; // 0x2C + + // Properties + public string All { get; set; } // 0x10247260 0x10247300 + public string Append { get; set; } // 0x100BFC20 0x100C5B40 + public string PathDiscovery { get; set; } // 0x100EF0C0 0x10127B00 + public string Read { get; set; } // 0x100EE580 0x10113F40 + public string Write { get; set; } // 0x100F85F0 0x10113F50 + public FileIOPermissionAccess AllFiles { get; set; } // 0x100EACD0 0x100EB230 + public FileIOPermissionAccess AllLocalFiles { get; set; } // 0x100EAD50 0x100EB240 + public string ChangeAccessControl { get; set; } // 0x100EB040 0x100EB250 + public string ViewAccessControl { get; set; } // 0x100EB200 0x100EB260 + public string ViewAndModify { get; set; } // 0x102472B0 0x10247300 + + // Methods + public void .ctor(SecurityAction action); // 0x10245600 + public override IPermission CreatePermission(); // 0x100C5600 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class GacIdentityPermission : CodeAccessPermission, IBuiltInPermission // TypeDefIndex: 1367 +{ + // Fields + private const int version = 1; // 0x00 + + // Methods + public void .ctor(); // 0x100C5970 + public void .ctor(PermissionState state); // 0x10240360 + private int System.Security.Permissions.IBuiltInPermission.GetTokenIndex(); // 0x10249C20 + public override IPermission Copy(); // 0x10249B20 + public override IPermission Intersect(IPermission target); // 0x10249BA0 + public override bool IsSubsetOf(IPermission target); // 0x10249C00 + public override IPermission Union(IPermission target); // 0x10249C50 + public override void FromXml(SecurityElement securityElement); // 0x10249B60 + public override SecurityElement ToXml(); // 0x10249C30 + private GacIdentityPermission Cast(IPermission target); // 0x10249AA0 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class GacIdentityPermissionAttribute : CodeAccessSecurityAttribute // TypeDefIndex: 1368 +{ + // Methods + public void .ctor(SecurityAction action); // 0x10245600 + public override IPermission CreatePermission(); // 0x10249A60 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class HostProtectionAttribute : CodeAccessSecurityAttribute // TypeDefIndex: 1369 +{ + // Fields + private HostProtectionResource _resources; // 0x10 + + // Properties + public bool ExternalProcessMgmt { get; set; } // 0x1023F250 0x1023F460 + public bool ExternalThreading { get; set; } // 0x1023F200 0x1023F390 + public bool MayLeakOnAbort { get; set; } // 0x1023F1C0 0x1023F2F0 + public bool SecurityInfrastructure { get; set; } // 0x1023F1E0 0x1023F340 + public bool SelfAffectingProcessMgmt { get; set; } // 0x1023F210 0x1023F3B0 + public bool SelfAffectingThreading { get; set; } // 0x1023F1D0 0x1023F320 + public bool SharedState { get; set; } // 0x1023F260 0x1023F480 + public bool Synchronization { get; set; } // 0x1023F190 0x1023F270 + public bool UI { get; set; } // 0x1023F240 0x1023F430 + public HostProtectionResource Resources { get; set; } // 0x100BFC20 0x100C5B40 + + // Methods + public void .ctor(); // 0x10249CA0 + public void .ctor(SecurityAction action); // 0x10249CC0 + public override IPermission CreatePermission(); // 0x100C5600 +} + +// Namespace: System.Security.Permissions +[Serializable] +internal sealed class HostProtectionPermission : CodeAccessPermission, IBuiltInPermission, IUnrestrictedPermission // TypeDefIndex: 1370 +{ + // Fields + private const int version = 1; // 0x00 + private HostProtectionResource _resources; // 0x08 + + // Properties + public HostProtectionResource Resources { get; set; } // 0x100BF0C0 0x1024A470 + + // Methods + public void .ctor(PermissionState state); // 0x1024A2F0 + public void .ctor(HostProtectionResource resources); // 0x1024A330 + private int System.Security.Permissions.IBuiltInPermission.GetTokenIndex(); // 0x1024A160 + public override IPermission Copy(); // 0x10249ED0 + public override IPermission Intersect(IPermission target); // 0x1024A010 + public override IPermission Union(IPermission target); // 0x1024A200 + public override bool IsSubsetOf(IPermission target); // 0x1024A0F0 + public override void FromXml(SecurityElement e); // 0x10249F20 + public override SecurityElement ToXml(); // 0x1024A170 + public bool IsUnrestricted(); // 0x1024A140 + private HostProtectionPermission Cast(IPermission target); // 0x10249E50 +} + +// Namespace: System.Security.Permissions +[Serializable] +public enum HostProtectionResource // TypeDefIndex: 1371 +{ + None = 0, + Synchronization = 1, + SharedState = 2, + ExternalProcessMgmt = 4, + SelfAffectingProcessMgmt = 8, + ExternalThreading = 16, + SelfAffectingThreading = 32, + SecurityInfrastructure = 64, + UI = 128, + MayLeakOnAbort = 256, + All = 511 +} + +// Namespace: System.Security.Permissions +internal interface IBuiltInPermission // TypeDefIndex: 1372 +{ + // Methods + int GetTokenIndex(); +} + +// Namespace: System.Security.Permissions +internal enum BuiltInToken // TypeDefIndex: 1373 +{ + Environment = 0, + FileDialog = 1, + FileIO = 2, + IsolatedStorageFile = 3, + Reflection = 4, + Registry = 5, + Security = 6, + UI = 7, + Principal = 8, + HostProtection = 9, + PublisherIdentity = 10, + SiteIdentity = 11, + StrongNameIdentity = 12, + UrlIdentity = 13, + ZoneIdentity = 14, + GacIdentity = 15, + KeyContainer = 16 +} + +// Namespace: System.Security.Permissions +public interface IUnrestrictedPermission // TypeDefIndex: 1374 +{ + // Methods + bool IsUnrestricted(); +} + +// Namespace: System.Security.Permissions +[Serializable] +public enum IsolatedStorageContainment // TypeDefIndex: 1375 +{ + None = 0, + DomainIsolationByUser = 16, + ApplicationIsolationByUser = 21, + AssemblyIsolationByUser = 32, + DomainIsolationByMachine = 48, + AssemblyIsolationByMachine = 64, + ApplicationIsolationByMachine = 69, + DomainIsolationByRoamingUser = 80, + AssemblyIsolationByRoamingUser = 96, + ApplicationIsolationByRoamingUser = 101, + AdministerIsolatedStorageByUser = 112, + UnrestrictedIsolatedStorage = 240 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class IsolatedStorageFilePermission : IsolatedStoragePermission, IBuiltInPermission // TypeDefIndex: 1376 +{ + // Fields + private const int version = 1; // 0x00 + + // Methods + public void .ctor(PermissionState state); // 0x1024AF30 + private int System.Security.Permissions.IBuiltInPermission.GetTokenIndex(); // 0x10158A50 + public override IPermission Copy(); // 0x1024AA30 + public override IPermission Intersect(IPermission target); // 0x1024AAD0 + public override bool IsSubsetOf(IPermission target); // 0x1024AC10 + public override IPermission Union(IPermission target); // 0x1024AD80 + public override SecurityElement ToXml(); // 0x1024ACA0 + private IsolatedStorageFilePermission Cast(IPermission target); // 0x1024A9B0 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class IsolatedStorageFilePermissionAttribute : IsolatedStoragePermissionAttribute // TypeDefIndex: 1377 +{ + // Methods + public void .ctor(SecurityAction action); // 0x10245600 + public override IPermission CreatePermission(); // 0x1024A8E0 +} + +// Namespace: System.Security.Permissions +[Serializable] +public abstract class IsolatedStoragePermission : CodeAccessPermission, IUnrestrictedPermission // TypeDefIndex: 1378 +{ + // Fields + private const int version = 1; // 0x00 + internal long m_userQuota; // 0x08 + internal long m_machineQuota; // 0x10 + internal long m_expirationDays; // 0x18 + internal bool m_permanentData; // 0x20 + internal IsolatedStorageContainment m_allowed; // 0x24 + + // Properties + public long UserQuota { get; set; } // 0x10203300 0x1024B2D0 + public IsolatedStorageContainment UsageAllowed { get; set; } // 0x100EAD50 0x1024B170 + + // Methods + protected void .ctor(PermissionState state); // 0x1024AF30 + public bool IsUnrestricted(); // 0x1024B150 + public override SecurityElement ToXml(); // 0x1024ACA0 + public override void FromXml(SecurityElement esd); // 0x1024AFA0 + internal bool IsEmpty(); // 0x1024B130 +} + +// Namespace: System.Security.Permissions +[Serializable] +public abstract class IsolatedStoragePermissionAttribute : CodeAccessSecurityAttribute // TypeDefIndex: 1379 +{ + // Fields + private IsolatedStorageContainment usage_allowed; // 0x10 + private long user_quota; // 0x18 + + // Properties + public IsolatedStorageContainment UsageAllowed { get; set; } // 0x100BFC20 0x100C5B40 + public long UserQuota { get; set; } // 0x1024AF70 0x1024AF80 + + // Methods + protected void .ctor(SecurityAction action); // 0x10245600 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class KeyContainerPermission : CodeAccessPermission, IBuiltInPermission, IUnrestrictedPermission // TypeDefIndex: 1380 +{ + // Fields + private const int version = 1; // 0x00 + private KeyContainerPermissionAccessEntryCollection _accessEntries; // 0x08 + private KeyContainerPermissionFlags _flags; // 0x0C + + // Properties + public KeyContainerPermissionAccessEntryCollection AccessEntries { get; } // 0x100BF0C0 + public KeyContainerPermissionFlags Flags { get; } // 0x100C5B30 + + // Methods + public void .ctor(PermissionState state); // 0x1024C730 + public void .ctor(KeyContainerPermissionFlags flags); // 0x1024C710 + public void .ctor(KeyContainerPermissionFlags flags, KeyContainerPermissionAccessEntry[] accessList); // 0x1024C760 + private int System.Security.Permissions.IBuiltInPermission.GetTokenIndex(); // 0x10209180 + public override IPermission Copy(); // 0x1024BDF0 + public override void FromXml(SecurityElement securityElement); // 0x1024BF00 + public override IPermission Intersect(IPermission target); // 0x100C5600 + public override bool IsSubsetOf(IPermission target); // 0x100EFBF0 + public bool IsUnrestricted(); // 0x1024C010 + public override SecurityElement ToXml(); // 0x1024C0F0 + public override IPermission Union(IPermission target); // 0x1024C160 + private void SetFlags(KeyContainerPermissionFlags flags); // 0x1024C030 + private KeyContainerPermission Cast(IPermission target); // 0x1024BD70 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class KeyContainerPermissionAccessEntry // TypeDefIndex: 1381 +{ + // Fields + private KeyContainerPermissionFlags _flags; // 0x08 + private string _containerName; // 0x0C + private int _spec; // 0x10 + private string _store; // 0x14 + private string _providerName; // 0x18 + private int _type; // 0x1C + + // Properties + public KeyContainerPermissionFlags Flags { get; set; } // 0x100BF0C0 0x1024BAB0 + public string KeyContainerName { get; set; } // 0x100C5B30 0x100C5B50 + public int KeySpec { get; set; } // 0x100BFC20 0x100C5B40 + public string KeyStore { get; set; } // 0x100EF0C0 0x10127B00 + public string ProviderName { get; set; } // 0x100EE580 0x10113F40 + public int ProviderType { get; set; } // 0x100F85F0 0x10113F50 + + // Methods + public void .ctor(CspParameters parameters, KeyContainerPermissionFlags flags); // 0x1024BA20 + public void .ctor(string keyContainerName, KeyContainerPermissionFlags flags); // 0x1024B9B0 + public void .ctor(string keyStore, string providerName, int providerType, string keyContainerName, int keySpec, KeyContainerPermissionFlags flags); // 0x1024B9E0 + public override bool Equals(object o); // 0x1024B830 + public override int GetHashCode(); // 0x1024B950 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class KeyContainerPermissionAccessEntryCollection : IEnumerable, ICollection // TypeDefIndex: 1382 +{ + // Fields + private ArrayList _list; // 0x08 + + // Properties + public int Count { get; } // 0x101273C0 + public bool IsSynchronized { get; } // 0x100EFBF0 + public KeyContainerPermissionAccessEntry Item { get; } // 0x1024B660 + public object SyncRoot { get; } // 0x100F7810 + + // Methods + internal void .ctor(); // 0x1024B610 + internal void .ctor(KeyContainerPermissionAccessEntry[] entries); // 0x1024B590 + private void System.Collections.ICollection.CopyTo(Array array, int index); // 0x101135E0 + private IEnumerator System.Collections.IEnumerable.GetEnumerator(); // 0x1024B520 + public int Add(KeyContainerPermissionAccessEntry accessEntry); // 0x1013FCE0 + public void Clear(); // 0x1013FD10 + public void CopyTo(KeyContainerPermissionAccessEntry[] array, int index); // 0x101135E0 + public KeyContainerPermissionAccessEntryEnumerator GetEnumerator(); // 0x1024B2F0 + public int IndexOf(KeyContainerPermissionAccessEntry accessEntry); // 0x1024B360 + public void Remove(KeyContainerPermissionAccessEntry accessEntry); // 0x1024B440 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class KeyContainerPermissionAccessEntryEnumerator : IEnumerator // TypeDefIndex: 1383 +{ + // Fields + private IEnumerator e; // 0x08 + + // Properties + private object System.Collections.IEnumerator.Current { get; } // 0x1024B770 + public KeyContainerPermissionAccessEntry Current { get; } // 0x1024B7C0 + + // Methods + internal void .ctor(ArrayList list); // 0x10125510 + public bool MoveNext(); // 0x1024B6D0 + public void Reset(); // 0x1024B720 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class KeyContainerPermissionAttribute : CodeAccessSecurityAttribute // TypeDefIndex: 1384 +{ + // Fields + private KeyContainerPermissionFlags _flags; // 0x10 + private string _containerName; // 0x14 + private int _spec; // 0x18 + private string _store; // 0x1C + private string _providerName; // 0x20 + private int _type; // 0x24 + + // Properties + public KeyContainerPermissionFlags Flags { get; set; } // 0x100BFC20 0x100C5B40 + public string KeyContainerName { get; set; } // 0x100EF0C0 0x10127B00 + public int KeySpec { get; set; } // 0x100EE580 0x10113F40 + public string KeyStore { get; set; } // 0x100F85F0 0x10113F50 + public string ProviderName { get; set; } // 0x100EACD0 0x100EB230 + public int ProviderType { get; set; } // 0x100EAD50 0x100EB240 + + // Methods + public void .ctor(SecurityAction action); // 0x1024BD40 + public override IPermission CreatePermission(); // 0x1024BB70 + private bool EmptyEntry(); // 0x1024BD10 +} + +// Namespace: System.Security.Permissions +[Serializable] +public enum KeyContainerPermissionFlags // TypeDefIndex: 1385 +{ + NoFlags = 0, + Create = 1, + Open = 2, + Delete = 4, + Import = 16, + Export = 32, + Sign = 256, + Decrypt = 512, + ViewAcl = 4096, + ChangeAcl = 8192, + AllFlags = 13111 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class PermissionSetAttribute : CodeAccessSecurityAttribute // TypeDefIndex: 1386 +{ + // Fields + private string file; // 0x10 + private string name; // 0x14 + private bool isUnicodeEncoded; // 0x18 + private string xml; // 0x1C + private string hex; // 0x20 + + // Properties + public string File { get; set; } // 0x100BFC20 0x100C5B40 + public string Hex { get; set; } // 0x100EACD0 0x100EB230 + public string Name { get; set; } // 0x100EF0C0 0x10127B00 + public bool UnicodeEncoded { get; set; } // 0x1010C980 0x10197FF0 + public string XML { get; set; } // 0x100F85F0 0x10113F50 + + // Methods + public void .ctor(SecurityAction action); // 0x10245600 + public override IPermission CreatePermission(); // 0x100C5600 + private PermissionSet CreateFromXml(string xml); // 0x100C5600 + public PermissionSet CreatePermissionSet(); // 0x100C5600 +} + +// Namespace: System.Security.Permissions +[Serializable] +public enum PermissionState // TypeDefIndex: 1387 +{ + None = 0, + Unrestricted = 1 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class PrincipalPermission : IBuiltInPermission, IUnrestrictedPermission, IPermission, ISecurityEncodable // TypeDefIndex: 1388 +{ + // Fields + private const int version = 1; // 0x00 + private ArrayList principals; // 0x08 + + // Methods + public void .ctor(PermissionState state); // 0x1024F220 + public void .ctor(string name, string role); // 0x1024F200 + public void .ctor(string name, string role, bool isAuthenticated); // 0x1024F2D0 + internal void .ctor(ArrayList principals); // 0x1024F370 + private int System.Security.Permissions.IBuiltInPermission.GetTokenIndex(); // 0x10171CD0 + public IPermission Copy(); // 0x1024D680 + public void Demand(); // 0x1024D6D0 + public void FromXml(SecurityElement elem); // 0x1024DE00 + public IPermission Intersect(IPermission target); // 0x1024E120 + public bool IsSubsetOf(IPermission target); // 0x1024E5B0 + public bool IsUnrestricted(); // 0x1024E9C0 + public override string ToString(); // 0x1024EBA0 + public SecurityElement ToXml(); // 0x1024EBD0 + public IPermission Union(IPermission other); // 0x1024EF60 + public override bool Equals(object obj); // 0x1024DA00 + public override int GetHashCode(); // 0x102110E0 + private PrincipalPermission Cast(IPermission target); // 0x1024D310 + private bool IsEmpty(); // 0x1015FFD0 + internal int CheckSecurityElement(SecurityElement se, string parameterName, int minimumVersion, int maximumVersion); // 0x1024D390 +} + +// Namespace: +internal class PrincipalInfo // TypeDefIndex: 1389 +{ + // Fields + private string _name; // 0x08 + private string _role; // 0x0C + private bool _isAuthenticated; // 0x10 + + // Properties + public string Name { get; } // 0x100BF0C0 + public string Role { get; } // 0x100C5B30 + public bool IsAuthenticated { get; } // 0x101137C0 + + // Methods + public void .ctor(string name, string role, bool isAuthenticated); // 0x1024D240 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class PrincipalPermissionAttribute : CodeAccessSecurityAttribute // TypeDefIndex: 1390 +{ + // Fields + private bool authenticated; // 0x10 + private string name; // 0x14 + private string role; // 0x18 + + // Properties + public bool Authenticated { get; set; } // 0x101137C0 0x10246B70 + public string Name { get; set; } // 0x100EF0C0 0x10127B00 + public string Role { get; set; } // 0x100EE580 0x10113F40 + + // Methods + public void .ctor(SecurityAction action); // 0x1024D2F0 + public override IPermission CreatePermission(); // 0x1024D270 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class PublisherIdentityPermission : CodeAccessPermission, IBuiltInPermission // TypeDefIndex: 1391 +{ + // Fields + private const int version = 1; // 0x00 + private X509Certificate x509; // 0x08 + + // Properties + public X509Certificate Certificate { get; set; } // 0x100BF0C0 0x1024FB80 + + // Methods + public void .ctor(PermissionState state); // 0x10240360 + public void .ctor(X509Certificate certificate); // 0x1024FB10 + private int System.Security.Permissions.IBuiltInPermission.GetTokenIndex(); // 0x1024F8F0 + public override IPermission Copy(); // 0x1024F5F0 + public override void FromXml(SecurityElement esd); // 0x1024F660 + public override IPermission Intersect(IPermission target); // 0x1024F740 + public override bool IsSubsetOf(IPermission target); // 0x1024F830 + public override SecurityElement ToXml(); // 0x1024F900 + public override IPermission Union(IPermission target); // 0x1024F980 + private PublisherIdentityPermission Cast(IPermission target); // 0x1024F570 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class PublisherIdentityPermissionAttribute : CodeAccessSecurityAttribute // TypeDefIndex: 1392 +{ + // Fields + private string certFile; // 0x10 + private string signedFile; // 0x14 + private string x509data; // 0x18 + + // Properties + public string CertFile { get; set; } // 0x100BFC20 0x100C5B40 + public string SignedFile { get; set; } // 0x100EF0C0 0x10127B00 + public string X509Certificate { get; set; } // 0x100EE580 0x10113F40 + + // Methods + public void .ctor(SecurityAction action); // 0x10245600 + public override IPermission CreatePermission(); // 0x1024F420 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class ReflectionPermission : CodeAccessPermission, IBuiltInPermission, IUnrestrictedPermission // TypeDefIndex: 1393 +{ + // Fields + private const int version = 1; // 0x00 + private ReflectionPermissionFlag flags; // 0x08 + + // Properties + public ReflectionPermissionFlag Flags { get; set; } // 0x100BF0C0 0x10250340 + + // Methods + public void .ctor(PermissionState state); // 0x102502F0 + public void .ctor(ReflectionPermissionFlag flag); // 0x10250320 + private int System.Security.Permissions.IBuiltInPermission.GetTokenIndex(); // 0x100FCEA0 + public override IPermission Copy(); // 0x1024FD50 + public override void FromXml(SecurityElement esd); // 0x1024FDA0 + public override IPermission Intersect(IPermission target); // 0x1024FEB0 + public override bool IsSubsetOf(IPermission target); // 0x1024FF70 + public bool IsUnrestricted(); // 0x1024FFC0 + public override SecurityElement ToXml(); // 0x1024FFD0 + public override IPermission Union(IPermission other); // 0x102501D0 + private ReflectionPermission Cast(IPermission target); // 0x1024FCD0 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class ReflectionPermissionAttribute : CodeAccessSecurityAttribute // TypeDefIndex: 1394 +{ + // Fields + private ReflectionPermissionFlag flags; // 0x10 + private bool memberAccess; // 0x14 + private bool reflectionEmit; // 0x15 + private bool typeInfo; // 0x16 + + // Properties + public ReflectionPermissionFlag Flags { get; set; } // 0x100BFC20 0x1024FBF0 + public bool MemberAccess { get; set; } // 0x100C5670 0x1024FC20 + public bool ReflectionEmit { get; set; } // 0x10142240 0x1024FC50 + public bool RestrictedMemberAccess { get; set; } // 0x1023F210 0x1024FC80 + public bool TypeInformation { get; set; } // 0x1024FBE0 0x1024FCA0 + + // Methods + public void .ctor(SecurityAction action); // 0x10245600 + public override IPermission CreatePermission(); // 0x100C5600 +} + +// Namespace: System.Security.Permissions +[Serializable] +public enum ReflectionPermissionFlag // TypeDefIndex: 1395 +{ + NoFlags = 0, + TypeInformation = 1, + MemberAccess = 2, + ReflectionEmit = 4, + AllFlags = 7, + RestrictedMemberAccess = 8 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class RegistryPermission : CodeAccessPermission, IBuiltInPermission, IUnrestrictedPermission // TypeDefIndex: 1396 +{ + // Fields + private const int version = 1; // 0x00 + private PermissionState _state; // 0x08 + private ArrayList createList; // 0x0C + private ArrayList readList; // 0x10 + private ArrayList writeList; // 0x14 + + // Methods + public void .ctor(PermissionState state); // 0x10251CE0 + public void .ctor(RegistryPermissionAccess access, string pathList); // 0x10251B00 + public void .ctor(RegistryPermissionAccess access, AccessControlActions control, string pathList); // 0x10251BA0 + private int System.Security.Permissions.IBuiltInPermission.GetTokenIndex(); // 0x10251780 + public void AddPathList(RegistryPermissionAccess access, string pathList); // 0x10250450 + public void AddPathList(RegistryPermissionAccess access, AccessControlActions control, string pathList); // 0x10250400 + public string GetPathList(RegistryPermissionAccess access); // 0x10250BB0 + public void SetPathList(RegistryPermissionAccess access, string pathList); // 0x102513F0 + public override IPermission Copy(); // 0x10250770 + public override void FromXml(SecurityElement esd); // 0x10250830 + public override IPermission Intersect(IPermission target); // 0x10250F40 + public override bool IsSubsetOf(IPermission target); // 0x102510B0 + public bool IsUnrestricted(); // 0x102425E0 + public override SecurityElement ToXml(); // 0x10251850 + public override IPermission Union(IPermission other); // 0x10251940 + private bool IsEmpty(); // 0x10251030 + private RegistryPermission Cast(IPermission target); // 0x102506F0 + internal void ThrowInvalidFlag(RegistryPermissionAccess flag, bool context); // 0x10251790 + private string GetPathList(ArrayList list); // 0x10250920 + internal bool KeyIsSubsetOf(IList local, IList target); // 0x10251150 + internal void AddWithUnionKey(IList list, string pathList); // 0x10250560 + internal void IntersectKeys(IList local, IList target, IList result); // 0x10250C40 +} + +// Namespace: System.Security.Permissions +[Serializable] +public enum RegistryPermissionAccess // TypeDefIndex: 1397 +{ + NoAccess = 0, + Read = 1, + Write = 2, + Create = 4, + AllAccess = 7 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class RegistryPermissionAttribute : CodeAccessSecurityAttribute // TypeDefIndex: 1398 +{ + // Fields + private string create; // 0x10 + private string read; // 0x14 + private string write; // 0x18 + private string changeAccessControl; // 0x1C + private string viewAccessControl; // 0x20 + + // Properties + public string All { get; set; } // 0x1023ECC0 0x1023ED60 + public string Create { get; set; } // 0x100BFC20 0x100C5B40 + public string Read { get; set; } // 0x100EF0C0 0x10127B00 + public string Write { get; set; } // 0x100EE580 0x10113F40 + public string ChangeAccessControl { get; set; } // 0x100F85F0 0x10113F50 + public string ViewAccessControl { get; set; } // 0x100EACD0 0x100EB230 + public string ViewAndModify { get; set; } // 0x1023ED10 0x1023ED60 + + // Methods + public void .ctor(SecurityAction action); // 0x1023ECB0 + public override IPermission CreatePermission(); // 0x1023EBF0 +} + +// Namespace: System.Security.Permissions +[Serializable] +public enum SecurityAction // TypeDefIndex: 1399 +{ + Demand = 2, + Assert = 3, + Deny = 4, + PermitOnly = 5, + LinkDemand = 6, + InheritanceDemand = 7, + RequestMinimum = 8, + RequestOptional = 9, + RequestRefuse = 10 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class SecurityPermission : CodeAccessPermission, IBuiltInPermission, IUnrestrictedPermission // TypeDefIndex: 1400 +{ + // Fields + private const int version = 1; // 0x00 + private SecurityPermissionFlag flags; // 0x08 + + // Properties + public SecurityPermissionFlag Flags { get; set; } // 0x100BF0C0 0x1023FAB0 + + // Methods + public void .ctor(PermissionState state); // 0x1023FA70 + public void .ctor(SecurityPermissionFlag flag); // 0x1023F9A0 + private int System.Security.Permissions.IBuiltInPermission.GetTokenIndex(); // 0x1023F7E0 + public bool IsUnrestricted(); // 0x1023F7C0 + public override IPermission Copy(); // 0x1023F520 + public override IPermission Intersect(IPermission target); // 0x1023F690 + public override IPermission Union(IPermission target); // 0x1023F8B0 + public override bool IsSubsetOf(IPermission target); // 0x1023F770 + public override void FromXml(SecurityElement esd); // 0x1023F570 + public override SecurityElement ToXml(); // 0x1023F7F0 + private bool IsEmpty(); // 0x1023F760 + private SecurityPermission Cast(IPermission target); // 0x1023F4A0 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class SecurityPermissionAttribute : CodeAccessSecurityAttribute // TypeDefIndex: 1401 +{ + // Fields + private SecurityPermissionFlag m_Flags; // 0x10 + + // Properties + public bool Assertion { get; set; } // 0x1023F190 0x1023F270 + public bool BindingRedirects { get; set; } // 0x1023F1A0 0x1023F290 + public bool ControlAppDomain { get; set; } // 0x1023F1B0 0x1023F2C0 + public bool ControlDomainPolicy { get; set; } // 0x1023F1C0 0x1023F2F0 + public bool ControlEvidence { get; set; } // 0x1023F1D0 0x1023F320 + public bool ControlPolicy { get; set; } // 0x1023F1E0 0x1023F340 + public bool ControlPrincipal { get; set; } // 0x1023F1F0 0x1023F360 + public bool ControlThread { get; set; } // 0x1023F200 0x1023F390 + public bool Execution { get; set; } // 0x1023F210 0x1023F3B0 + public bool Infrastructure { get; set; } // 0x1023F220 0x1023F3D0 + public bool RemotingConfiguration { get; set; } // 0x1023F230 0x1023F400 + public bool SerializationFormatter { get; set; } // 0x1023F240 0x1023F430 + public bool SkipVerification { get; set; } // 0x1023F250 0x1023F460 + public bool UnmanagedCode { get; set; } // 0x1023F260 0x1023F480 + public SecurityPermissionFlag Flags { get; set; } // 0x100BFC20 0x100C5B40 + + // Methods + public void .ctor(SecurityAction action); // 0x1023F170 + public override IPermission CreatePermission(); // 0x100C5600 +} + +// Namespace: System.Security.Permissions +[Serializable] +public enum SecurityPermissionFlag // TypeDefIndex: 1402 +{ + NoFlags = 0, + Assertion = 1, + UnmanagedCode = 2, + SkipVerification = 4, + Execution = 8, + ControlThread = 16, + ControlEvidence = 32, + ControlPolicy = 64, + SerializationFormatter = 128, + ControlDomainPolicy = 256, + ControlPrincipal = 512, + ControlAppDomain = 1024, + RemotingConfiguration = 2048, + Infrastructure = 4096, + BindingRedirects = 8192, + AllFlags = 16383 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class SiteIdentityPermission : CodeAccessPermission, IBuiltInPermission // TypeDefIndex: 1403 +{ + // Fields + private const int version = 1; // 0x00 + private string _site; // 0x08 + private static bool[] valid; // 0x00 + + // Properties + public string Site { get; set; } // 0x10240380 0x102403E0 + + // Methods + public void .ctor(PermissionState state); // 0x10240360 + public void .ctor(string site); // 0x10240340 + private static void .cctor(); // 0x102402F0 + private int System.Security.Permissions.IBuiltInPermission.GetTokenIndex(); // 0x10240160 + public override IPermission Copy(); // 0x1023FC90 + public override void FromXml(SecurityElement esd); // 0x1023FD00 + public override IPermission Intersect(IPermission target); // 0x1023FD70 + public override bool IsSubsetOf(IPermission target); // 0x1023FE30 + public override SecurityElement ToXml(); // 0x10240170 + public override IPermission Union(IPermission target); // 0x102401D0 + private bool IsEmpty(); // 0x1023F760 + private SiteIdentityPermission Cast(IPermission target); // 0x1023FC10 + private bool IsValid(string s); // 0x1023FF10 + private bool Match(string target); // 0x10240020 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class SiteIdentityPermissionAttribute : CodeAccessSecurityAttribute // TypeDefIndex: 1404 +{ + // Fields + private string site; // 0x10 + + // Properties + public string Site { get; set; } // 0x100BFC20 0x100C5B40 + + // Methods + public void .ctor(SecurityAction action); // 0x1023ECB0 + public override IPermission CreatePermission(); // 0x1023FB70 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class StrongNameIdentityPermission : CodeAccessPermission, IBuiltInPermission // TypeDefIndex: 1405 +{ + // Fields + private const int version = 1; // 0x00 + private static Version defaultVersion; // 0x00 + private PermissionState _state; // 0x08 + private ArrayList _list; // 0x0C + + // Properties + public string Name { get; set; } // 0x102433A0 0x10243610 + public StrongNamePublicKeyBlob PublicKey { get; set; } // 0x10243470 0x10243750 + public Version Version { get; set; } // 0x10243540 0x10243890 + + // Methods + public void .ctor(PermissionState state); // 0x102431E0 + public void .ctor(StrongNamePublicKeyBlob blob, string name, Version version); // 0x10243290 + internal void .ctor(StrongNameIdentityPermission snip); // 0x10242F70 + private static void .cctor(); // 0x10242F20 + private int System.Security.Permissions.IBuiltInPermission.GetTokenIndex(); // 0x1019CC40 + internal void ResetToDefault(); // 0x10242730 + public override IPermission Copy(); // 0x10241750 + public override void FromXml(SecurityElement e); // 0x10241A10 + private SNIP FromSecurityElement(SecurityElement se); // 0x10241860 + public override IPermission Intersect(IPermission target); // 0x10241CE0 + public override bool IsSubsetOf(IPermission target); // 0x10242270 + public override SecurityElement ToXml(); // 0x10242940 + private void ToSecurityElement(SecurityElement se, SNIP snip); // 0x102427D0 + public override IPermission Union(IPermission target); // 0x10242C70 + private bool IsUnrestricted(); // 0x102425E0 + private bool Contains(SNIP snip); // 0x102414E0 + private bool IsEmpty(SNIP snip); // 0x102421A0 + private bool IsEmpty(); // 0x102420A0 + private StrongNameIdentityPermission Cast(IPermission target); // 0x10241460 + private bool Match(string target); // 0x102425F0 +} + +// Namespace: +private struct SNIP // TypeDefIndex: 1406 +{ + // Fields + public StrongNamePublicKeyBlob PublicKey; // 0x08 + public string Name; // 0x0C + public Version AssemblyVersion; // 0x10 + + // Methods + internal void .ctor(StrongNamePublicKeyBlob pk, string name, Version version); // 0x100074C0 + internal static SNIP CreateDefault(); // 0x1023EED0 + internal bool IsNameSubsetOf(string target); // 0x100190E0 + internal bool IsSubsetOf(SNIP target); // 0x100190F0 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class StrongNameIdentityPermissionAttribute : CodeAccessSecurityAttribute // TypeDefIndex: 1407 +{ + // Fields + private string name; // 0x10 + private string key; // 0x14 + private string version; // 0x18 + + // Properties + public string Name { get; set; } // 0x100BFC20 0x100C5B40 + public string PublicKey { get; set; } // 0x100EF0C0 0x10127B00 + public string Version { get; set; } // 0x100EE580 0x10113F40 + + // Methods + public void .ctor(SecurityAction action); // 0x1023ECB0 + public override IPermission CreatePermission(); // 0x100C5600 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class StrongNamePublicKeyBlob // TypeDefIndex: 1408 +{ + // Fields + internal byte[] pubkey; // 0x08 + + // Methods + public void .ctor(byte[] publicKey); // 0x10243D00 + internal static StrongNamePublicKeyBlob FromString(string s); // 0x10243AA0 + private static byte CharToByte(char c); // 0x10243980 + public override bool Equals(object obj); // 0x102439F0 + public override int GetHashCode(); // 0x10243BD0 + public override string ToString(); // 0x10243C40 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class UIPermission : CodeAccessPermission, IBuiltInPermission, IUnrestrictedPermission // TypeDefIndex: 1409 +{ + // Fields + private const int version = 1; // 0x00 + private UIPermissionWindow _window; // 0x08 + private UIPermissionClipboard _clipboard; // 0x0C + + // Properties + public UIPermissionClipboard Clipboard { get; set; } // 0x100C5B30 0x102444A0 + public UIPermissionWindow Window { get; set; } // 0x100BF0C0 0x102445D0 + + // Methods + public void .ctor(PermissionState state); // 0x10244440 + public void .ctor(UIPermissionClipboard clipboardFlag); // 0x102443F0 + public void .ctor(UIPermissionWindow windowFlag); // 0x10244480 + public void .ctor(UIPermissionWindow windowFlag, UIPermissionClipboard clipboardFlag); // 0x10244410 + private int System.Security.Permissions.IBuiltInPermission.GetTokenIndex(); // 0x101B30F0 + public override IPermission Copy(); // 0x10243E90 + public override void FromXml(SecurityElement esd); // 0x10243EF0 + public override IPermission Intersect(IPermission target); // 0x102440C0 + public override bool IsSubsetOf(IPermission target); // 0x10244170 + public bool IsUnrestricted(); // 0x102441D0 + public override SecurityElement ToXml(); // 0x102441F0 + public override IPermission Union(IPermission target); // 0x10244300 + private bool IsEmpty(UIPermissionWindow w, UIPermissionClipboard c); // 0x10244150 + private UIPermission Cast(IPermission target); // 0x10243E10 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class UIPermissionAttribute : CodeAccessSecurityAttribute // TypeDefIndex: 1410 +{ + // Fields + private UIPermissionClipboard clipboard; // 0x10 + private UIPermissionWindow window; // 0x14 + + // Properties + public UIPermissionClipboard Clipboard { get; set; } // 0x100BFC20 0x100C5B40 + public UIPermissionWindow Window { get; set; } // 0x100EF0C0 0x10127B00 + + // Methods + public void .ctor(SecurityAction action); // 0x1023ECB0 + public override IPermission CreatePermission(); // 0x10243D70 +} + +// Namespace: System.Security.Permissions +[Serializable] +public enum UIPermissionClipboard // TypeDefIndex: 1411 +{ + NoClipboard = 0, + OwnClipboard = 1, + AllClipboard = 2 +} + +// Namespace: System.Security.Permissions +[Serializable] +public enum UIPermissionWindow // TypeDefIndex: 1412 +{ + NoWindows = 0, + SafeSubWindows = 1, + SafeTopLevelWindows = 2, + AllWindows = 3 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class UrlIdentityPermission : CodeAccessPermission, IBuiltInPermission // TypeDefIndex: 1413 +{ + // Fields + private const int version = 1; // 0x00 + private string url; // 0x08 + + // Properties + public string Url { get; set; } // 0x100BF0C0 0x10244E70 + + // Methods + public void .ctor(PermissionState state); // 0x10244D90 + public void .ctor(string site); // 0x10244E00 + private int System.Security.Permissions.IBuiltInPermission.GetTokenIndex(); // 0x10244C00 + public override IPermission Copy(); // 0x10244810 + public override void FromXml(SecurityElement esd); // 0x10244870 + public override IPermission Intersect(IPermission target); // 0x10244930 + public override bool IsSubsetOf(IPermission target); // 0x102449D0 + public override SecurityElement ToXml(); // 0x10244C10 + public override IPermission Union(IPermission target); // 0x10244C80 + private bool IsEmpty(); // 0x102449B0 + private UrlIdentityPermission Cast(IPermission target); // 0x10244790 + private bool Match(string target); // 0x10244AF0 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class UrlIdentityPermissionAttribute : CodeAccessSecurityAttribute // TypeDefIndex: 1414 +{ + // Fields + private string url; // 0x10 + + // Properties + public string Url { get; set; } // 0x100BFC20 0x100C5B40 + + // Methods + public void .ctor(SecurityAction action); // 0x1023ECB0 + public override IPermission CreatePermission(); // 0x10244700 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class ZoneIdentityPermission : CodeAccessPermission, IBuiltInPermission // TypeDefIndex: 1415 +{ + // Fields + private const int version = 1; // 0x00 + private SecurityZone zone; // 0x08 + + // Properties + public SecurityZone SecurityZone { get; set; } // 0x100BF0C0 0x102454D0 + + // Methods + public void .ctor(PermissionState state); // 0x10245360 + public void .ctor(SecurityZone zone); // 0x10245390 + private int System.Security.Permissions.IBuiltInPermission.GetTokenIndex(); // 0x102451D0 + public override IPermission Copy(); // 0x10245000 + public override bool IsSubsetOf(IPermission target); // 0x10245190 + public override IPermission Union(IPermission target); // 0x10245270 + public override IPermission Intersect(IPermission target); // 0x10245150 + public override void FromXml(SecurityElement esd); // 0x10245050 + public override SecurityElement ToXml(); // 0x102451E0 + private ZoneIdentityPermission Cast(IPermission target); // 0x10244F80 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class ZoneIdentityPermissionAttribute : CodeAccessSecurityAttribute // TypeDefIndex: 1416 +{ + // Fields + private SecurityZone zone; // 0x10 + + // Properties + public SecurityZone Zone { get; set; } // 0x100BFC20 0x100C5B40 + + // Methods + public void .ctor(SecurityAction action); // 0x10244F60 + public override IPermission CreatePermission(); // 0x10244EE0 +} + +// Namespace: System.Security.Policy +[Serializable] +public sealed class AllMembershipCondition : IConstantMembershipCondition, IMembershipCondition, ISecurityEncodable, ISecurityPolicyEncodable // TypeDefIndex: 1417 +{ + // Fields + private readonly int version; // 0x08 + + // Methods + public void .ctor(); // 0x10154960 + public bool Check(Evidence evidence); // 0x100E5880 + public IMembershipCondition Copy(); // 0x1022F690 + public override bool Equals(object o); // 0x1022F6E0 + public void FromXml(SecurityElement e); // 0x1022F720 + public void FromXml(SecurityElement e, PolicyLevel level); // 0x1022F720 + public override int GetHashCode(); // 0x1022F780 + public override string ToString(); // 0x1022F800 + public SecurityElement ToXml(); // 0x1022F830 + public SecurityElement ToXml(PolicyLevel level); // 0x1022F830 +} + +// Namespace: System.Security.Policy +[Serializable] +public sealed class ApplicationDirectory : IBuiltInEvidence // TypeDefIndex: 1418 +{ + // Fields + private string directory; // 0x08 + + // Properties + public string Directory { get; } // 0x100BF0C0 + + // Methods + public void .ctor(string name); // 0x10230000 + private int System.Security.Policy.IBuiltInEvidence.GetRequiredSize(bool verbose); // 0x101567F0 + private int System.Security.Policy.IBuiltInEvidence.InitFromBuffer(char[] buffer, int position); // 0x100C5600 + private int System.Security.Policy.IBuiltInEvidence.OutputToBuffer(char[] buffer, int position, bool verbose); // 0x100C5600 + public object Copy(); // 0x1022FCF0 + public override bool Equals(object o); // 0x1022FDD0 + public override int GetHashCode(); // 0x10140690 + public override string ToString(); // 0x1022FF40 + private void ThrowOnInvalid(string appdir); // 0x1022FE60 +} + +// Namespace: System.Security.Policy +[Serializable] +public sealed class ApplicationDirectoryMembershipCondition : IConstantMembershipCondition, IMembershipCondition, ISecurityEncodable, ISecurityPolicyEncodable // TypeDefIndex: 1419 +{ + // Fields + private readonly int version; // 0x08 + + // Methods + public void .ctor(); // 0x10154960 + public bool Check(Evidence evidence); // 0x1022F8C0 + public IMembershipCondition Copy(); // 0x1022FAC0 + public override bool Equals(object o); // 0x1022FB10 + public void FromXml(SecurityElement e); // 0x1022FB50 + public void FromXml(SecurityElement e, PolicyLevel level); // 0x1022FB50 + public override int GetHashCode(); // 0x1022FBB0 + public override string ToString(); // 0x1022FC30 + public SecurityElement ToXml(); // 0x1022FC60 + public SecurityElement ToXml(PolicyLevel level); // 0x1022FC60 +} + +// Namespace: System.Security.Policy +public sealed class ApplicationSecurityInfo // TypeDefIndex: 1420 +{ + // Fields + private ActivationContext _context; // 0x08 + private Evidence _evidence; // 0x0C + private ApplicationId _appid; // 0x10 + private PermissionSet _defaultSet; // 0x14 + private ApplicationId _deployid; // 0x18 + + // Properties + public Evidence ApplicationEvidence { get; set; } // 0x100C5B30 0x10230170 + public ApplicationId ApplicationId { get; set; } // 0x100BFC20 0x102301D0 + public PermissionSet DefaultRequestSet { get; set; } // 0x10230120 0x10230230 + public ApplicationId DeploymentId { get; set; } // 0x100EE580 0x10230290 + + // Methods + public void .ctor(ActivationContext activationContext); // 0x102300B0 +} + +// Namespace: System.Security.Policy +public static class ApplicationSecurityManager // TypeDefIndex: 1421 +{ + // Fields + private const string config = "ApplicationTrust.config"; // 0x00 + private static IApplicationTrustManager _appTrustManager; // 0x00 + private static ApplicationTrustCollection _userAppTrusts; // 0x04 + + // Properties + public static IApplicationTrustManager ApplicationTrustManager { get; } // 0x10230420 + public static ApplicationTrustCollection UserApplicationTrusts { get; } // 0x10230480 + + // Methods + public static bool DetermineApplicationTrust(ActivationContext activationContext, TrustManagerContext context); // 0x102302F0 +} + +// Namespace: System.Security.Policy +[Serializable] +public sealed class ApplicationTrust : ISecurityEncodable // TypeDefIndex: 1422 +{ + // Fields + private ApplicationIdentity _appid; // 0x08 + private PolicyStatement _defaultPolicy; // 0x0C + private object _xtranfo; // 0x10 + private bool _trustrun; // 0x14 + private bool _persist; // 0x15 + private IList`1 fullTrustAssemblies; // 0x18 + + // Properties + public ApplicationIdentity ApplicationIdentity { get; set; } // 0x100BF0C0 0x10232000 + public PolicyStatement DefaultGrantSet { get; set; } // 0x10231F30 0x100C5B50 + public object ExtraInfo { get; set; } // 0x100BFC20 0x100C5B40 + public bool IsApplicationTrustedToRun { get; set; } // 0x100C5670 0x10142260 + public bool Persist { get; set; } // 0x10142240 0x10142250 + + // Methods + public void .ctor(); // 0x10231E20 + public void .ctor(ApplicationIdentity applicationIdentity); // 0x10231E80 + internal void .ctor(PermissionSet defaultGrantSet, IEnumerable`1 fullTrustAssemblies); // 0x10231B70 + public void FromXml(SecurityElement element); // 0x10231390 + public SecurityElement ToXml(); // 0x102317F0 + private PolicyStatement GetDefaultGrantSet(); // 0x10231760 +} + +// Namespace: System.Security.Policy +public sealed class ApplicationTrustCollection : IEnumerable, ICollection // TypeDefIndex: 1423 +{ + // Fields + private ArrayList _list; // 0x08 + + // Properties + public int Count { get; } // 0x101273C0 + public bool IsSynchronized { get; } // 0x100EFBF0 + public object SyncRoot { get; } // 0x100F7810 + public ApplicationTrust Item { get; } // 0x10231050 + public ApplicationTrust Item { get; } // 0x102310C0 + + // Methods + internal void .ctor(); // 0x10231000 + private void System.Collections.ICollection.CopyTo(Array array, int index); // 0x101135E0 + private IEnumerator System.Collections.IEnumerable.GetEnumerator(); // 0x10230FA0 + public int Add(ApplicationTrust trust); // 0x10230760 + public void AddRange(ApplicationTrust[] trusts); // 0x10230520 + public void AddRange(ApplicationTrustCollection trusts); // 0x10230610 + public void Clear(); // 0x1013FD10 + public void CopyTo(ApplicationTrust[] array, int index); // 0x101135E0 + public ApplicationTrustCollection Find(ApplicationIdentity applicationIdentity, ApplicationVersionMatch versionMatch); // 0x10230830 + public ApplicationTrustEnumerator GetEnumerator(); // 0x10230B00 + public void Remove(ApplicationTrust trust); // 0x10230EF0 + public void Remove(ApplicationIdentity applicationIdentity, ApplicationVersionMatch versionMatch); // 0x10230DD0 + public void RemoveRange(ApplicationTrust[] trusts); // 0x10230BE0 + public void RemoveRange(ApplicationTrustCollection trusts); // 0x10230C80 + internal void RemoveAllInstances(ApplicationTrust trust); // 0x10230B50 +} + +// Namespace: System.Security.Policy +public sealed class ApplicationTrustEnumerator : IEnumerator // TypeDefIndex: 1424 +{ + // Fields + private IEnumerator e; // 0x08 + + // Properties + private object System.Collections.IEnumerator.Current { get; } // 0x10231260 + public ApplicationTrust Current { get; } // 0x10231320 + + // Methods + internal void .ctor(ApplicationTrustCollection collection); // 0x102312B0 + public bool MoveNext(); // 0x102311C0 + public void Reset(); // 0x10231210 +} + +// Namespace: System.Security.Policy +public enum ApplicationVersionMatch // TypeDefIndex: 1425 +{ + MatchExactVersion = 0, + MatchAllVersions = 1 +} + +// Namespace: System.Security.Policy +[Serializable] +public class CodeConnectAccess // TypeDefIndex: 1426 +{ + // Fields + public static readonly string AnyScheme; // 0x00 + public static readonly int DefaultPort; // 0x04 + public static readonly int OriginPort; // 0x08 + public static readonly string OriginScheme; // 0x0C + private string _scheme; // 0x08 + private int _port; // 0x0C + + // Properties + public int Port { get; } // 0x100C5B30 + public string Scheme { get; } // 0x100BF0C0 + + // Methods + public void .ctor(string allowScheme, int allowPort); // 0x10232290 + private static void .cctor(); // 0x10232230 + public override bool Equals(object o); // 0x10232140 + public override int GetHashCode(); // 0x10232200 + public static CodeConnectAccess CreateAnySchemeAccess(int allowPort); // 0x10232060 + public static CodeConnectAccess CreateOriginSchemeAccess(int allowPort); // 0x102320D0 +} + +// Namespace: System.Security.Policy +[Serializable] +public abstract class CodeGroup // TypeDefIndex: 1427 +{ + // Fields + private PolicyStatement m_policy; // 0x08 + private IMembershipCondition m_membershipCondition; // 0x0C + private string m_description; // 0x10 + private string m_name; // 0x14 + private ArrayList m_children; // 0x18 + private static Dictionary`2 <>f__switch$map2A; // 0x00 + + // Properties + public abstract string MergeLogic { get; } + public PolicyStatement PolicyStatement { get; set; } // 0x100BF0C0 0x100EB270 + public string Description { get; set; } // 0x100BFC20 0x100C5B40 + public IMembershipCondition MembershipCondition { get; set; } // 0x100C5B30 0x10233670 + public string Name { get; set; } // 0x100EF0C0 0x10127B00 + public IList Children { get; set; } // 0x100EE580 0x102335F0 + public virtual string AttributeString { get; } // 0x102334D0 + public virtual string PermissionSetName { get; } // 0x10233560 + + // Methods + protected void .ctor(IMembershipCondition membershipCondition, PolicyStatement policy); // 0x10233420 + internal void .ctor(SecurityElement e, PolicyLevel level); // 0x102333C0 + public abstract CodeGroup Copy(); + public abstract PolicyStatement Resolve(Evidence evidence); + public abstract CodeGroup ResolveMatchingCodeGroups(Evidence evidence); + public void AddChild(CodeGroup group); // 0x10232330 + public override bool Equals(object o); // 0x10232960 + public bool Equals(CodeGroup cg, bool compareChildren); // 0x10232700 + public void RemoveChild(CodeGroup group); // 0x10232FE0 + public override int GetHashCode(); // 0x10232F70 + public void FromXml(SecurityElement e); // 0x102329E0 + public void FromXml(SecurityElement e, PolicyLevel level); // 0x10232A00 + protected virtual void ParseXml(SecurityElement e, PolicyLevel level); // 0x100C5530 + public SecurityElement ToXml(); // 0x102333A0 + public SecurityElement ToXml(PolicyLevel level); // 0x10233020 + protected virtual void CreateXml(SecurityElement element, PolicyLevel level); // 0x100C5530 + internal static CodeGroup CreateFromXml(SecurityElement se, PolicyLevel level); // 0x102323D0 +} + +// Namespace: System.Security.Policy +internal static class DefaultPolicies // TypeDefIndex: 1428 +{ + // Fields + private const string DnsPermissionClass = "System.Net.DnsPermission, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"; // 0x00 + private const string EventLogPermissionClass = "System.Diagnostics.EventLogPermission, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"; // 0x00 + private const string PrintingPermissionClass = "System.Drawing.Printing.PrintingPermission, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + private const string SocketPermissionClass = "System.Net.SocketPermission, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"; // 0x00 + private const string WebPermissionClass = "System.Net.WebPermission, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"; // 0x00 + private const string PerformanceCounterPermissionClass = "System.Diagnostics.PerformanceCounterPermission, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"; // 0x00 + private const string DirectoryServicesPermissionClass = "System.DirectoryServices.DirectoryServicesPermission, System.DirectoryServices, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + private const string MessageQueuePermissionClass = "System.Messaging.MessageQueuePermission, System.Messaging, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + private const string ServiceControllerPermissionClass = "System.ServiceProcess.ServiceControllerPermission, System.ServiceProcess, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + private const string OleDbPermissionClass = "System.Data.OleDb.OleDbPermission, System.Data, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"; // 0x00 + private const string SqlClientPermissionClass = "System.Data.SqlClient.SqlClientPermission, System.Data, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"; // 0x00 + private const string DataProtectionPermissionClass = "System.Security.Permissions.DataProtectionPermission, System.Security, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + private const string StorePermissionClass = "System.Security.Permissions.StorePermission, System.Security, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + private static Version _fxVersion; // 0x00 + private static byte[] _ecmaKey; // 0x04 + private static StrongNamePublicKeyBlob _ecma; // 0x08 + private static byte[] _msFinalKey; // 0x0C + private static StrongNamePublicKeyBlob _msFinal; // 0x10 + private static NamedPermissionSet _fullTrust; // 0x14 + private static NamedPermissionSet _localIntranet; // 0x18 + private static NamedPermissionSet _internet; // 0x1C + private static NamedPermissionSet _skipVerification; // 0x20 + private static NamedPermissionSet _execution; // 0x24 + private static NamedPermissionSet _nothing; // 0x28 + private static NamedPermissionSet _everything; // 0x2C + private static Dictionary`2 <>f__switch$map2B; // 0x30 + + // Properties + public static PermissionSet FullTrust { get; } // 0x10234790 + public static PermissionSet LocalIntranet { get; } // 0x10234920 + public static PermissionSet Internet { get; } // 0x10234870 + public static PermissionSet SkipVerification { get; } // 0x10234AB0 + public static PermissionSet Execution { get; } // 0x10234660 + public static PermissionSet Nothing { get; } // 0x102349D0 + public static PermissionSet Everything { get; } // 0x102345B0 + + // Methods + private static void .cctor(); // 0x10234510 + public static PermissionSet GetSpecialPermissionSet(string name); // 0x10234150 + public static StrongNameMembershipCondition FullTrustMembership(string name, Key key); // 0x10233F10 + private static NamedPermissionSet BuildFullTrust(); // 0x10233A50 + private static NamedPermissionSet BuildLocalIntranet(); // 0x10233C40 + private static NamedPermissionSet BuildInternet(); // 0x10233AA0 + private static NamedPermissionSet BuildSkipVerification(); // 0x10233E70 + private static NamedPermissionSet BuildExecution(); // 0x102339B0 + private static NamedPermissionSet BuildNothing(); // 0x10233E20 + private static NamedPermissionSet BuildEverything(); // 0x102336D0 + private static SecurityElement PrintingPermission(string level); // 0x10234480 +} + +// Namespace: +public static class ReservedNames // TypeDefIndex: 1429 +{ + // Fields + public const string FullTrust = "FullTrust"; // 0x00 + public const string LocalIntranet = "LocalIntranet"; // 0x00 + public const string Internet = "Internet"; // 0x00 + public const string SkipVerification = "SkipVerification"; // 0x00 + public const string Execution = "Execution"; // 0x00 + public const string Nothing = "Nothing"; // 0x00 + public const string Everything = "Everything"; // 0x00 + private static Dictionary`2 <>f__switch$map2C; // 0x00 + + // Methods + public static bool IsReserved(string name); // 0x1023ED80 +} + +// Namespace: +public enum Key // TypeDefIndex: 1430 +{ + Ecma = 0, + MsFinal = 1 +} + +// Namespace: System.Security.Policy +[Serializable] +public sealed class Evidence : IEnumerable, ICollection // TypeDefIndex: 1431 +{ + // Fields + private bool _locked; // 0x08 + private ArrayList hostEvidenceList; // 0x0C + private ArrayList assemblyEvidenceList; // 0x10 + private int _hashCode; // 0x14 + + // Properties + public int Count { get; } // 0x10235A40 + public bool IsReadOnly { get; } // 0x100EFBF0 + public bool IsSynchronized { get; } // 0x100EFBF0 + public bool Locked { get; set; } // 0x100EA020 0x10155000 + public object SyncRoot { get; } // 0x100F7810 + internal ArrayList HostEvidenceList { get; } // 0x10235A90 + internal ArrayList AssemblyEvidenceList { get; } // 0x102359C0 + + // Methods + public void .ctor(); // 0x100BF000 + public void .ctor(Evidence evidence); // 0x10235990 + public void .ctor(object[] hostEvidence, object[] assemblyEvidence); // 0x10235910 + public void AddAssembly(object id); // 0x10234D40 + public void AddHost(object id); // 0x10234D90 + public void Clear(); // 0x10234E70 + public void CopyTo(Array array, int index); // 0x10234EC0 + public override bool Equals(object obj); // 0x10234F60 + public IEnumerator GetEnumerator(); // 0x10235240 + public IEnumerator GetAssemblyEnumerator(); // 0x102351C0 + public override int GetHashCode(); // 0x102352D0 + public IEnumerator GetHostEnumerator(); // 0x102353F0 + public void Merge(Evidence evidence); // 0x10235440 + public void RemoveType(Type t); // 0x10235830 + private static bool IsAuthenticodePresent(Assembly a); // 0x10235430 + internal static Evidence GetDefaultHostEvidence(Assembly a); // 0x10235200 +} + +// Namespace: +private class EvidenceEnumerator : IEnumerator // TypeDefIndex: 1432 +{ + // Fields + private IEnumerator currentEnum; // 0x08 + private IEnumerator hostEnum; // 0x0C + private IEnumerator assemblyEnum; // 0x10 + + // Properties + public object Current { get; } // 0x10234CF0 + + // Methods + public void .ctor(IEnumerator hostenum, IEnumerator assemblyenum); // 0x10234CC0 + public bool MoveNext(); // 0x10234BE0 + public void Reset(); // 0x10234C50 +} + +// Namespace: System.Security.Policy +[Serializable] +public sealed class FileCodeGroup : CodeGroup // TypeDefIndex: 1433 +{ + // Fields + private FileIOPermissionAccess m_access; // 0x1C + + // Properties + public override string MergeLogic { get; } // 0x10236580 + public override string AttributeString { get; } // 0x100C5600 + public override string PermissionSetName { get; } // 0x102365B0 + + // Methods + public void .ctor(IMembershipCondition membershipCondition, FileIOPermissionAccess access); // 0x10236560 + internal void .ctor(SecurityElement e, PolicyLevel level); // 0x102333C0 + public override CodeGroup Copy(); // 0x10235B10 + public override PolicyStatement Resolve(Evidence evidence); // 0x10236270 + public override CodeGroup ResolveMatchingCodeGroups(Evidence evidence); // 0x10235FC0 + public override bool Equals(object o); // 0x10235DD0 + public override int GetHashCode(); // 0x10235E50 + protected override void ParseXml(SecurityElement e, PolicyLevel level); // 0x10235ED0 + protected override void CreateXml(SecurityElement element, PolicyLevel level); // 0x10235D50 +} + +// Namespace: System.Security.Policy +[Serializable] +public sealed class FirstMatchCodeGroup : CodeGroup // TypeDefIndex: 1434 +{ + // Properties + public override string MergeLogic { get; } // 0x10236DB0 + + // Methods + public void .ctor(IMembershipCondition membershipCondition, PolicyStatement policy); // 0x10155800 + internal void .ctor(SecurityElement e, PolicyLevel level); // 0x102333C0 + public override CodeGroup Copy(); // 0x102366C0 + public override PolicyStatement Resolve(Evidence evidence); // 0x10236B50 + public override CodeGroup ResolveMatchingCodeGroups(Evidence evidence); // 0x102368D0 + private FirstMatchCodeGroup CopyNoChildren(); // 0x10236650 +} + +// Namespace: System.Security.Policy +[Serializable] +public sealed class GacInstalled : IBuiltInEvidence, IIdentityPermissionFactory // TypeDefIndex: 1435 +{ + // Methods + public void .ctor(); // 0x100BF000 + private int System.Security.Policy.IBuiltInEvidence.GetRequiredSize(bool verbose); // 0x100EF660 + private int System.Security.Policy.IBuiltInEvidence.InitFromBuffer(char[] buffer, int position); // 0x10223E60 + private int System.Security.Policy.IBuiltInEvidence.OutputToBuffer(char[] buffer, int position, bool verbose); // 0x10236EA0 + public object Copy(); // 0x10236DE0 + public IPermission CreateIdentityPermission(Evidence evidence); // 0x10236E20 + public override bool Equals(object o); // 0x10236E60 + public override int GetHashCode(); // 0x100C5600 + public override string ToString(); // 0x10236EE0 +} + +// Namespace: System.Security.Policy +[Serializable] +public sealed class GacMembershipCondition : IConstantMembershipCondition, IMembershipCondition, ISecurityEncodable, ISecurityPolicyEncodable // TypeDefIndex: 1436 +{ + // Fields + private readonly int version; // 0x08 + + // Methods + public void .ctor(); // 0x10154960 + public bool Check(Evidence evidence); // 0x10236F80 + public IMembershipCondition Copy(); // 0x10237030 + public override bool Equals(object o); // 0x10237080 + public void FromXml(SecurityElement e); // 0x102370C0 + public void FromXml(SecurityElement e, PolicyLevel level); // 0x102370C0 + public override int GetHashCode(); // 0x100C5600 + public override string ToString(); // 0x10237120 + public SecurityElement ToXml(); // 0x10237150 + public SecurityElement ToXml(PolicyLevel level); // 0x10237150 +} + +// Namespace: System.Security.Policy +[Serializable] +public sealed class Hash : ISerializable, IBuiltInEvidence // TypeDefIndex: 1437 +{ + // Fields + private Assembly assembly; // 0x08 + private byte[] data; // 0x0C + internal byte[] _md5; // 0x10 + internal byte[] _sha1; // 0x14 + + // Properties + public byte[] MD5 { get; } // 0x102380B0 + public byte[] SHA1 { get; } // 0x10238140 + + // Methods + public void .ctor(Assembly assembly); // 0x10237F80 + internal void .ctor(); // 0x100BF000 + internal void .ctor(SerializationInfo info, StreamingContext context); // 0x10238000 + private int System.Security.Policy.IBuiltInEvidence.GetRequiredSize(bool verbose); // 0x10237E10 + private int System.Security.Policy.IBuiltInEvidence.InitFromBuffer(char[] buffer, int position); // 0x100C5600 + private int System.Security.Policy.IBuiltInEvidence.OutputToBuffer(char[] buffer, int position, bool verbose); // 0x100C5600 + public byte[] GenerateHash(HashAlgorithm hashAlg); // 0x10237BE0 + public void GetObjectData(SerializationInfo info, StreamingContext context); // 0x10237D90 + public override string ToString(); // 0x10237E30 + private byte[] GetData(); // 0x10237C50 + public static Hash CreateMD5(byte[] md5); // 0x10237AC0 + public static Hash CreateSHA1(byte[] sha1); // 0x10237B50 +} + +// Namespace: System.Security.Policy +[Serializable] +public sealed class HashMembershipCondition : ISerializable, IDeserializationCallback, IMembershipCondition, ISecurityEncodable, ISecurityPolicyEncodable // TypeDefIndex: 1438 +{ + // Fields + private readonly int version; // 0x08 + private HashAlgorithm hash_algorithm; // 0x0C + private byte[] hash_value; // 0x10 + + // Properties + public HashAlgorithm HashAlgorithm { get; set; } // 0x102378D0 0x102379C0 + public byte[] HashValue { get; set; } // 0x10237920 0x10237A20 + + // Methods + internal void .ctor(); // 0x10154960 + public void .ctor(HashAlgorithm hashAlg, byte[] value); // 0x10237800 + private void System.Runtime.Serialization.IDeserializationCallback.OnDeserialization(object sender); // 0x100C5530 + private void System.Runtime.Serialization.ISerializable.GetObjectData(SerializationInfo info, StreamingContext context); // 0x100C5530 + public bool Check(Evidence evidence); // 0x102371E0 + public IMembershipCondition Copy(); // 0x10237330 + public override bool Equals(object o); // 0x10237430 + public SecurityElement ToXml(); // 0x10237700 + public SecurityElement ToXml(PolicyLevel level); // 0x10237700 + public void FromXml(SecurityElement e); // 0x102374D0 + public void FromXml(SecurityElement e, PolicyLevel level); // 0x102374D0 + public override int GetHashCode(); // 0x10237580 + public override string ToString(); // 0x10237600 + private bool Compare(byte[] expected, byte[] actual); // 0x102372C0 +} + +// Namespace: System.Security.Policy +public interface IApplicationTrustManager : ISecurityEncodable // TypeDefIndex: 1439 +{ + // Methods + ApplicationTrust DetermineApplicationTrust(ActivationContext activationContext, TrustManagerContext context); +} + +// Namespace: System.Security.Policy +internal interface IBuiltInEvidence // TypeDefIndex: 1440 +{ + // Methods + int GetRequiredSize(bool verbose); + int InitFromBuffer(char[] buffer, int position); + int OutputToBuffer(char[] buffer, int position, bool verbose); +} + +// Namespace: System.Security.Policy +internal interface IConstantMembershipCondition // TypeDefIndex: 1441 +{ +} + +// Namespace: System.Security.Policy +public interface IIdentityPermissionFactory // TypeDefIndex: 1442 +{ + // Methods + IPermission CreateIdentityPermission(Evidence evidence); +} + +// Namespace: System.Security.Policy +public interface IMembershipCondition : ISecurityEncodable, ISecurityPolicyEncodable // TypeDefIndex: 1443 +{ + // Methods + bool Check(Evidence evidence); + IMembershipCondition Copy(); + bool Equals(object obj); + string ToString(); +} + +// Namespace: System.Security.Policy +internal sealed class MembershipConditionHelper // TypeDefIndex: 1444 +{ + // Fields + private static readonly string XmlTag; // 0x00 + + // Methods + public void .ctor(); // 0x100BF000 + private static void .cctor(); // 0x10238590 + internal static int CheckSecurityElement(SecurityElement se, string parameterName, int minimumVersion, int maximumVersion); // 0x102381D0 + internal static SecurityElement Element(Type type, int version); // 0x10238450 +} + +// Namespace: System.Security.Policy +internal class MonoTrustManager : IApplicationTrustManager, ISecurityEncodable // TypeDefIndex: 1445 +{ + // Fields + private const string tag = "IApplicationTrustManager"; // 0x00 + + // Methods + public void .ctor(); // 0x100BF000 + public ApplicationTrust DetermineApplicationTrust(ActivationContext activationContext, TrustManagerContext context); // 0x102385C0 + public void FromXml(SecurityElement e); // 0x10238620 + public SecurityElement ToXml(); // 0x102386F0 +} + +// Namespace: System.Security.Policy +[Serializable] +public sealed class NetCodeGroup : CodeGroup // TypeDefIndex: 1446 +{ + // Fields + public static readonly string AbsentOriginScheme; // 0x00 + public static readonly string AnyOtherOriginScheme; // 0x04 + private Hashtable _rules; // 0x1C + private int _hashcode; // 0x20 + + // Properties + public override string AttributeString { get; } // 0x100C5600 + public override string MergeLogic { get; } // 0x10239A20 + public override string PermissionSetName { get; } // 0x10239A50 + + // Methods + public void .ctor(IMembershipCondition membershipCondition); // 0x102399D0 + internal void .ctor(SecurityElement e, PolicyLevel level); // 0x10239930 + private static void .cctor(); // 0x102398C0 + public void AddConnectAccess(string originScheme, CodeConnectAccess connectAccess); // 0x102387B0 + public override CodeGroup Copy(); // 0x10238A80 + private bool Equals(CodeConnectAccess[] rules1, CodeConnectAccess[] rules2); // 0x10238D00 + public override bool Equals(object o); // 0x10238D80 + public DictionaryEntry[] GetConnectAccessRules(); // 0x10239040 + public override int GetHashCode(); // 0x102390C0 + public override PolicyStatement Resolve(Evidence evidence); // 0x102395D0 + public void ResetConnectAccess(); // 0x10239320 + public override CodeGroup ResolveMatchingCodeGroups(Evidence evidence); // 0x10239350 + protected override void CreateXml(SecurityElement element, PolicyLevel level); // 0x100C5530 + protected override void ParseXml(SecurityElement e, PolicyLevel level); // 0x100C5530 +} + +// Namespace: System.Security.Policy +[Serializable] +public sealed class PermissionRequestEvidence : IBuiltInEvidence // TypeDefIndex: 1447 +{ + // Fields + private PermissionSet requested; // 0x08 + private PermissionSet optional; // 0x0C + private PermissionSet denied; // 0x10 + + // Properties + public PermissionSet DeniedPermissions { get; } // 0x100BFC20 + public PermissionSet OptionalPermissions { get; } // 0x100C5B30 + public PermissionSet RequestedPermissions { get; } // 0x100BF0C0 + + // Methods + public void .ctor(PermissionSet request, PermissionSet optional, PermissionSet denied); // 0x10239DE0 + private int System.Security.Policy.IBuiltInEvidence.GetRequiredSize(bool verbose); // 0x10239B60 + private int System.Security.Policy.IBuiltInEvidence.InitFromBuffer(char[] buffer, int position); // 0x100C5600 + private int System.Security.Policy.IBuiltInEvidence.OutputToBuffer(char[] buffer, int position, bool verbose); // 0x100C5600 + public PermissionRequestEvidence Copy(); // 0x10239A80 + public override string ToString(); // 0x10239C50 +} + +// Namespace: System.Security.Policy +[Serializable] +public class PolicyException : SystemException, _Exception // TypeDefIndex: 1448 +{ + // Methods + public void .ctor(); // 0x10239E80 + public void .ctor(string message); // 0x100E5680 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 + public void .ctor(string message, Exception exception); // 0x100E5670 +} + +// Namespace: System.Security.Policy +[Serializable] +public sealed class PolicyLevel // TypeDefIndex: 1449 +{ + // Fields + private string label; // 0x08 + private CodeGroup root_code_group; // 0x0C + private ArrayList full_trust_assemblies; // 0x10 + private ArrayList named_permission_sets; // 0x14 + private string _location; // 0x18 + private PolicyLevelType _type; // 0x1C + private Hashtable fullNames; // 0x20 + private SecurityElement xml; // 0x24 + + // Properties + public IList FullTrustAssemblies { get; } // 0x100BFC20 + public string Label { get; } // 0x100BF0C0 + public IList NamedPermissionSets { get; } // 0x100EF0C0 + public CodeGroup RootCodeGroup { get; set; } // 0x100C5B30 0x1023DA80 + public string StoreLocation { get; } // 0x100EE580 + public PolicyLevelType Type { get; } // 0x100F85F0 + + // Methods + internal void .ctor(string label, PolicyLevelType type); // 0x1023DA00 + internal void LoadFromFile(string filename); // 0x1023BFC0 + internal void LoadFromString(string xml); // 0x1023C320 + private SecurityElement FromString(string xml); // 0x1023B100 + public void AddFullTrustAssembly(StrongName sn); // 0x10239EC0 + public void AddFullTrustAssembly(StrongNameMembershipCondition snMC); // 0x10239F70 + public void AddNamedPermissionSet(NamedPermissionSet permSet); // 0x1023A190 + public NamedPermissionSet ChangeNamedPermissionSet(string name, PermissionSet pSet); // 0x1023A3F0 + public static PolicyLevel CreateAppDomainLevel(); // 0x1023A6F0 + public void FromXml(SecurityElement e); // 0x1023B410 + public NamedPermissionSet GetNamedPermissionSet(string name); // 0x1023BB50 + public void Recover(); // 0x1023C350 + public void RemoveFullTrustAssembly(StrongName sn); // 0x1023C500 + public void RemoveFullTrustAssembly(StrongNameMembershipCondition snMC); // 0x1023C6D0 + public NamedPermissionSet RemoveNamedPermissionSet(NamedPermissionSet permSet); // 0x1023CB00 + public NamedPermissionSet RemoveNamedPermissionSet(string name); // 0x1023C820 + public void Reset(); // 0x1023CB70 + public PolicyStatement Resolve(Evidence evidence); // 0x1023CDD0 + public CodeGroup ResolveMatchingCodeGroups(Evidence evidence); // 0x1023CD50 + public SecurityElement ToXml(); // 0x1023D0F0 + internal void Save(); // 0x1023CE60 + internal void CreateDefaultLevel(PolicyLevelType type); // 0x1023AA50 + internal void CreateDefaultFullTrustAssemblies(); // 0x1023A890 + internal void CreateDefaultNamedPermissionSets(); // 0x1023ADF0 + internal string ResolveClassName(string className); // 0x1023CCE0 + internal bool IsFullTrustAssembly(Assembly a); // 0x1023BD90 +} + +// Namespace: System.Security.Policy +[Serializable] +public sealed class PolicyStatement : ISecurityEncodable, ISecurityPolicyEncodable // TypeDefIndex: 1450 +{ + // Fields + private PermissionSet perms; // 0x08 + private PolicyStatementAttribute attrs; // 0x0C + + // Properties + public PermissionSet PermissionSet { get; set; } // 0x1023E0B0 0x100EB270 + public PolicyStatementAttribute Attributes { get; set; } // 0x100C5B30 0x1023E120 + public string AttributeString { get; } // 0x1023E030 + + // Methods + public void .ctor(PermissionSet permSet); // 0x1023DFD0 + public void .ctor(PermissionSet permSet, PolicyStatementAttribute attributes); // 0x1023DF80 + public PolicyStatement Copy(); // 0x1023DAE0 + public void FromXml(SecurityElement et); // 0x1023DE30 + public void FromXml(SecurityElement et, PolicyLevel level); // 0x1023DC90 + public SecurityElement ToXml(); // 0x1023DE90 + public SecurityElement ToXml(PolicyLevel level); // 0x1023DE90 + public override bool Equals(object obj); // 0x1023DC00 + public override int GetHashCode(); // 0x1023DE50 + internal static PolicyStatement Empty(); // 0x1023DB70 +} + +// Namespace: System.Security.Policy +[Serializable] +public enum PolicyStatementAttribute // TypeDefIndex: 1451 +{ + Nothing = 0, + Exclusive = 1, + LevelFinal = 2, + All = 3 +} + +// Namespace: System.Security.Policy +[Serializable] +public sealed class Publisher : IBuiltInEvidence, IIdentityPermissionFactory // TypeDefIndex: 1452 +{ + // Fields + private X509Certificate m_cert; // 0x08 + + // Properties + public X509Certificate Certificate { get; } // 0x1023EB70 + + // Methods + public void .ctor(X509Certificate cert); // 0x1023EAC0 + private int System.Security.Policy.IBuiltInEvidence.GetRequiredSize(bool verbose); // 0x1023E9B0 + private int System.Security.Policy.IBuiltInEvidence.InitFromBuffer(char[] buffer, int position); // 0x100C5600 + private int System.Security.Policy.IBuiltInEvidence.OutputToBuffer(char[] buffer, int position, bool verbose); // 0x100C5600 + public object Copy(); // 0x1023E7A0 + public IPermission CreateIdentityPermission(Evidence evidence); // 0x1023E880 + public override bool Equals(object o); // 0x1023E8D0 + public override int GetHashCode(); // 0x1023E980 + public override string ToString(); // 0x1023E9F0 +} + +// Namespace: System.Security.Policy +[Serializable] +public sealed class PublisherMembershipCondition : IConstantMembershipCondition, IMembershipCondition, ISecurityEncodable, ISecurityPolicyEncodable // TypeDefIndex: 1453 +{ + // Fields + private readonly int version; // 0x08 + private X509Certificate x509; // 0x0C + + // Properties + public X509Certificate Certificate { get; set; } // 0x100C5B30 0x1023E740 + + // Methods + internal void .ctor(); // 0x10154960 + public void .ctor(X509Certificate certificate); // 0x1023E680 + public bool Check(Evidence evidence); // 0x1023E1E0 + public IMembershipCondition Copy(); // 0x1023E2F0 + public override bool Equals(object o); // 0x1023E3E0 + public void FromXml(SecurityElement e); // 0x1023E450 + public void FromXml(SecurityElement e, PolicyLevel level); // 0x1023E450 + public override int GetHashCode(); // 0x1023E500 + public override string ToString(); // 0x1023E530 + public SecurityElement ToXml(); // 0x1023E5B0 + public SecurityElement ToXml(PolicyLevel level); // 0x1023E5B0 +} + +// Namespace: System.Security.Policy +[Serializable] +public sealed class Site : IBuiltInEvidence, IIdentityPermissionFactory // TypeDefIndex: 1454 +{ + // Fields + internal string origin_site; // 0x08 + + // Properties + public string Name { get; } // 0x100BF0C0 + + // Methods + public void .ctor(string name); // 0x102413A0 + private int System.Security.Policy.IBuiltInEvidence.GetRequiredSize(bool verbose); // 0x101567F0 + private int System.Security.Policy.IBuiltInEvidence.InitFromBuffer(char[] buffer, int position); // 0x100C5600 + private int System.Security.Policy.IBuiltInEvidence.OutputToBuffer(char[] buffer, int position, bool verbose); // 0x100C5600 + public static Site CreateFromUrl(string url); // 0x10240D10 + public object Copy(); // 0x10240CC0 + public IPermission CreateIdentityPermission(Evidence evidence); // 0x10240EF0 + public override bool Equals(object o); // 0x10240F40 + public override int GetHashCode(); // 0x10140690 + public override string ToString(); // 0x10241230 + internal static bool IsValid(string name); // 0x10241000 + internal static string UrlToSite(string url); // 0x102412D0 +} + +// Namespace: System.Security.Policy +[Serializable] +public sealed class SiteMembershipCondition : IConstantMembershipCondition, IMembershipCondition, ISecurityEncodable, ISecurityPolicyEncodable // TypeDefIndex: 1455 +{ + // Fields + private readonly int version; // 0x08 + private string _site; // 0x0C + + // Properties + public string Site { get; set; } // 0x100C5B30 0x10240C20 + + // Methods + internal void .ctor(); // 0x10154960 + public void .ctor(string site); // 0x10240B70 + public bool Check(Evidence evidence); // 0x10240530 + public IMembershipCondition Copy(); // 0x102407C0 + public override bool Equals(object o); // 0x102408A0 + public void FromXml(SecurityElement e); // 0x102409E0 + public void FromXml(SecurityElement e, PolicyLevel level); // 0x102409E0 + public override int GetHashCode(); // 0x101AE010 + public override string ToString(); // 0x10240A60 + public SecurityElement ToXml(); // 0x10240AC0 + public SecurityElement ToXml(PolicyLevel level); // 0x10240AC0 +} + +// Namespace: System.Security.Policy +[Serializable] +public sealed class StrongName : IBuiltInEvidence, IIdentityPermissionFactory // TypeDefIndex: 1456 +{ + // Fields + private StrongNamePublicKeyBlob publickey; // 0x08 + private string name; // 0x0C + private Version version; // 0x10 + + // Properties + public string Name { get; } // 0x100C5B30 + public StrongNamePublicKeyBlob PublicKey { get; } // 0x100BF0C0 + public Version Version { get; } // 0x100BFC20 + + // Methods + public void .ctor(StrongNamePublicKeyBlob blob, string name, Version version); // 0x10154E80 + private int System.Security.Policy.IBuiltInEvidence.GetRequiredSize(bool verbose); // 0x10154D40 + private int System.Security.Policy.IBuiltInEvidence.InitFromBuffer(char[] buffer, int position); // 0x100C5600 + private int System.Security.Policy.IBuiltInEvidence.OutputToBuffer(char[] buffer, int position, bool verbose); // 0x100C5600 + public object Copy(); // 0x10154AB0 + public IPermission CreateIdentityPermission(Evidence evidence); // 0x10154BF0 + public override bool Equals(object o); // 0x10154C50 + public override int GetHashCode(); // 0x10154D10 + public override string ToString(); // 0x10154D70 +} + +// Namespace: System.Security.Policy +[Serializable] +public sealed class StrongNameMembershipCondition : IConstantMembershipCondition, IMembershipCondition, ISecurityEncodable, ISecurityPolicyEncodable // TypeDefIndex: 1457 +{ + // Fields + private readonly int version; // 0x08 + private StrongNamePublicKeyBlob blob; // 0x0C + private string name; // 0x10 + private Version assemblyVersion; // 0x14 + + // Properties + public string Name { get; set; } // 0x100BFC20 0x100C5B40 + public Version Version { get; set; } // 0x100EF0C0 0x10127B00 + public StrongNamePublicKeyBlob PublicKey { get; set; } // 0x100C5B30 0x10154A50 + + // Methods + public void .ctor(StrongNamePublicKeyBlob blob, string name, Version version); // 0x10154980 + internal void .ctor(SecurityElement e); // 0x10154870 + internal void .ctor(); // 0x10154960 + public bool Check(Evidence evidence); // 0x10154220 + public IMembershipCondition Copy(); // 0x10154350 + public override bool Equals(object o); // 0x10154450 + public override int GetHashCode(); // 0x10154630 + public void FromXml(SecurityElement e); // 0x10154550 + public void FromXml(SecurityElement e, PolicyLevel level); // 0x10154550 + public override string ToString(); // 0x10154660 + public SecurityElement ToXml(); // 0x10154710 + public SecurityElement ToXml(PolicyLevel level); // 0x10154710 +} + +// Namespace: System.Security.Policy +public class TrustManagerContext // TypeDefIndex: 1458 +{ + // Fields + private bool _ignorePersistedDecision; // 0x08 + private bool _noPrompt; // 0x09 + private bool _keepAlive; // 0x0A + private bool _persist; // 0x0B + private ApplicationIdentity _previousId; // 0x0C + private TrustManagerUIContext _ui; // 0x10 + + // Properties + public virtual bool IgnorePersistedDecision { get; set; } // 0x100EA020 0x10155000 + public virtual bool KeepAlive { get; set; } // 0x101172F0 0x10155010 + public virtual bool NoPrompt { get; set; } // 0x10117290 0x10155020 + public virtual bool Persist { get; set; } // 0x10154FF0 0x10155030 + public virtual ApplicationIdentity PreviousApplicationIdentity { get; set; } // 0x100C5B30 0x100C5B50 + public virtual TrustManagerUIContext UIContext { get; set; } // 0x100BFC20 0x100C5B40 + + // Methods + public void .ctor(); // 0x10154FC0 + public void .ctor(TrustManagerUIContext uiContext); // 0x10154F90 +} + +// Namespace: System.Security.Policy +public enum TrustManagerUIContext // TypeDefIndex: 1459 +{ + Install = 0, + Upgrade = 1, + Run = 2 +} + +// Namespace: System.Security.Policy +[Serializable] +public sealed class UnionCodeGroup : CodeGroup // TypeDefIndex: 1460 +{ + // Properties + public override string MergeLogic { get; } // 0x10155820 + + // Methods + public void .ctor(IMembershipCondition membershipCondition, PolicyStatement policy); // 0x10155800 + internal void .ctor(SecurityElement e, PolicyLevel level); // 0x10155810 + public override CodeGroup Copy(); // 0x10155040 + internal CodeGroup Copy(bool childs); // 0x10155060 + public override PolicyStatement Resolve(Evidence evidence); // 0x10155530 + public override CodeGroup ResolveMatchingCodeGroups(Evidence evidence); // 0x101552B0 +} + +// Namespace: System.Security.Policy +[Serializable] +public sealed class Url : IBuiltInEvidence, IIdentityPermissionFactory // TypeDefIndex: 1461 +{ + // Fields + private string origin_url; // 0x08 + + // Properties + public string Value { get; } // 0x100BF0C0 + + // Methods + public void .ctor(string name); // 0x10156900 + internal void .ctor(string name, bool validated); // 0x101568C0 + private int System.Security.Policy.IBuiltInEvidence.GetRequiredSize(bool verbose); // 0x101567F0 + private int System.Security.Policy.IBuiltInEvidence.InitFromBuffer(char[] buffer, int position); // 0x100C5600 + private int System.Security.Policy.IBuiltInEvidence.OutputToBuffer(char[] buffer, int position, bool verbose); // 0x100C5600 + public object Copy(); // 0x101561D0 + public IPermission CreateIdentityPermission(Evidence evidence); // 0x10156230 + public override bool Equals(object o); // 0x10156280 + public override int GetHashCode(); // 0x10156420 + public override string ToString(); // 0x10156820 + private string Prepare(string url); // 0x101564D0 +} + +// Namespace: System.Security.Policy +[Serializable] +public sealed class UrlMembershipCondition : IConstantMembershipCondition, IMembershipCondition, ISecurityEncodable, ISecurityPolicyEncodable // TypeDefIndex: 1462 +{ + // Fields + private readonly int version; // 0x08 + private Url url; // 0x0C + private string userUrl; // 0x10 + + // Properties + public string Url { get; set; } // 0x10156140 0x10156170 + + // Methods + public void .ctor(string url); // 0x10155FE0 + internal void .ctor(Url url, string userUrl); // 0x10156090 + public bool Check(Evidence evidence); // 0x10155980 + public IMembershipCondition Copy(); // 0x10155B00 + public override bool Equals(object o); // 0x10155BF0 + public void FromXml(SecurityElement e); // 0x10155D20 + public void FromXml(SecurityElement e, PolicyLevel level); // 0x10155D20 + public override int GetHashCode(); // 0x10155DF0 + public override string ToString(); // 0x10155EB0 + public SecurityElement ToXml(); // 0x10155F30 + public SecurityElement ToXml(PolicyLevel level); // 0x10155F30 + internal void CheckUrl(string url); // 0x10155850 +} + +// Namespace: System.Security.Policy +[Serializable] +public sealed class Zone : IBuiltInEvidence, IIdentityPermissionFactory // TypeDefIndex: 1463 +{ + // Fields + private SecurityZone zone; // 0x08 + + // Properties + public SecurityZone SecurityZone { get; } // 0x100BF0C0 + + // Methods + public void .ctor(SecurityZone zone); // 0x10158C00 + private int System.Security.Policy.IBuiltInEvidence.GetRequiredSize(bool verbose); // 0x10158A50 + private int System.Security.Policy.IBuiltInEvidence.InitFromBuffer(char[] buffer, int position); // 0x10158A60 + private int System.Security.Policy.IBuiltInEvidence.OutputToBuffer(char[] buffer, int position, bool verbose); // 0x10158AB0 + public object Copy(); // 0x101587E0 + public IPermission CreateIdentityPermission(Evidence evidence); // 0x101589B0 + public static Zone CreateFromUrl(string url); // 0x10158830 + public override bool Equals(object o); // 0x10158A00 + public override int GetHashCode(); // 0x100BF0C0 + public override string ToString(); // 0x10158B30 +} + +// Namespace: System.Security.Policy +[Serializable] +public sealed class ZoneMembershipCondition : IConstantMembershipCondition, IMembershipCondition, ISecurityEncodable, ISecurityPolicyEncodable // TypeDefIndex: 1464 +{ + // Fields + private readonly int version; // 0x08 + private SecurityZone zone; // 0x0C + + // Properties + public SecurityZone SecurityZone { get; set; } // 0x100C5B30 0x101586C0 + + // Methods + internal void .ctor(); // 0x10154960 + public void .ctor(SecurityZone zone); // 0x10158590 + public bool Check(Evidence evidence); // 0x10157FD0 + public IMembershipCondition Copy(); // 0x10158070 + public override bool Equals(object o); // 0x101581D0 + public void FromXml(SecurityElement e); // 0x10158220 + public void FromXml(SecurityElement e, PolicyLevel level); // 0x10158220 + public override int GetHashCode(); // 0x10158330 + public override string ToString(); // 0x101583B0 + public SecurityElement ToXml(); // 0x101584B0 + public SecurityElement ToXml(PolicyLevel level); // 0x101584B0 +} + +// Namespace: System.Security.Principal +[Serializable] +public class GenericIdentity : IIdentity // TypeDefIndex: 1465 +{ + // Fields + private string m_name; // 0x08 + private string m_type; // 0x0C + + // Properties + public virtual string AuthenticationType { get; } // 0x100C5B30 + public virtual string Name { get; } // 0x100BF0C0 + public virtual bool IsAuthenticated { get; } // 0x1013FA00 + + // Methods + public void .ctor(string name, string type); // 0x1013F970 + public void .ctor(string name); // 0x1013F8A0 +} + +// Namespace: System.Security.Principal +[Serializable] +public class GenericPrincipal : IPrincipal // TypeDefIndex: 1466 +{ + // Fields + private IIdentity m_identity; // 0x08 + private string[] m_roles; // 0x0C + + // Properties + public virtual IIdentity Identity { get; } // 0x100BF0C0 + + // Methods + public void .ctor(IIdentity identity, string[] roles); // 0x1013FB00 + public virtual bool IsInRole(string role); // 0x1013FA20 +} + +// Namespace: System.Security.Principal +public interface IIdentity // TypeDefIndex: 1467 +{ + // Properties + string AuthenticationType { get; } + bool IsAuthenticated { get; } + string Name { get; } + +} + +// Namespace: System.Security.Principal +public interface IPrincipal // TypeDefIndex: 1468 +{ + // Properties + IIdentity Identity { get; } + + // Methods + bool IsInRole(string role); +} + +// Namespace: System.Security.Principal +[Serializable] +public sealed class IdentityNotMappedException : SystemException // TypeDefIndex: 1469 +{ + // Fields + private IdentityReferenceCollection _coll; // 0x34 + + // Properties + public IdentityReferenceCollection UnmappedIdentities { get; } // 0x1013FC50 + + // Methods + public void .ctor(); // 0x1013FC10 + public void .ctor(string message); // 0x100E5680 + public void .ctor(string message, Exception inner); // 0x100E5670 + public override void GetObjectData(SerializationInfo serializationInfo, StreamingContext streamingContext); // 0x100C5530 +} + +// Namespace: System.Security.Principal +public abstract class IdentityReference // TypeDefIndex: 1470 +{ + // Properties + public abstract string Value { get; } + + // Methods + internal void .ctor(); // 0x100BF000 + public abstract bool Equals(object o); + public abstract int GetHashCode(); + public abstract bool IsValidTargetType(Type targetType); + public abstract string ToString(); + public abstract IdentityReference Translate(Type targetType); + public static bool op_Equality(IdentityReference left, IdentityReference right); // 0x10140470 + public static bool op_Inequality(IdentityReference left, IdentityReference right); // 0x10140510 +} + +// Namespace: System.Security.Principal +public class IdentityReferenceCollection : IEnumerable, ICollection`1, IEnumerable`1 // TypeDefIndex: 1471 +{ + // Fields + private ArrayList _list; // 0x08 + + // Properties + public int Count { get; } // 0x101273C0 + public bool IsReadOnly { get; } // 0x100EFBF0 + public IdentityReference Item { get; set; } // 0x10140370 0x10140430 + + // Methods + public void .ctor(); // 0x10140320 + public void .ctor(int capacity); // 0x101402D0 + private IEnumerator System.Collections.IEnumerable.GetEnumerator(); // 0x101401E0 + public void Add(IdentityReference identity); // 0x1013FCE0 + public void Clear(); // 0x1013FD10 + public bool Contains(IdentityReference identity); // 0x1013FD40 + public void CopyTo(IdentityReference[] array, int offset); // 0x1013FF30 + public IEnumerator`1 GetEnumerator(); // 0x1013FF80 + public bool Remove(IdentityReference identity); // 0x1013FFD0 + public IdentityReferenceCollection Translate(Type targetType); // 0x10140280 + public IdentityReferenceCollection Translate(Type targetType, bool forceSuccess); // 0x10140230 +} + +// Namespace: System.Security.Principal +public sealed class NTAccount : IdentityReference // TypeDefIndex: 1472 +{ + // Fields + private string _value; // 0x08 + + // Properties + public override string Value { get; } // 0x100BF0C0 + + // Methods + public void .ctor(string name); // 0x101408D0 + public void .ctor(string domainName, string accountName); // 0x101407C0 + public override bool Equals(object o); // 0x101405B0 + public override int GetHashCode(); // 0x10140690 + public override bool IsValidTargetType(Type targetType); // 0x101406C0 + public override string ToString(); // 0x100BF0C0 + public override IdentityReference Translate(Type targetType); // 0x10140760 + public static bool op_Equality(NTAccount left, NTAccount right); // 0x10140990 + public static bool op_Inequality(NTAccount left, NTAccount right); // 0x10140A10 +} + +// Namespace: System.Security.Principal +[Serializable] +public enum PrincipalPolicy // TypeDefIndex: 1473 +{ + UnauthenticatedPrincipal = 0, + NoPrincipal = 1, + WindowsPrincipal = 2 +} + +// Namespace: System.Security.Principal +public sealed class SecurityIdentifier : IdentityReference, IComparable`1 // TypeDefIndex: 1474 +{ + // Fields + private string _value; // 0x08 + public static readonly int MaxBinaryLength; // 0x00 + public static readonly int MinBinaryLength; // 0x04 + + // Properties + public SecurityIdentifier AccountDomainSid { get; } // 0x10146390 + public int BinaryLength { get; } // 0x10105770 + public override string Value { get; } // 0x100BF0C0 + + // Methods + public void .ctor(string sddlForm); // 0x10146210 + public void .ctor(byte[] binaryForm, int offset); // 0x10146140 + public void .ctor(IntPtr binaryForm); // 0x101460E0 + public void .ctor(WellKnownSidType sidType, SecurityIdentifier domainSid); // 0x10146290 + private static void .cctor(); // 0x100C5530 + public int CompareTo(SecurityIdentifier sid); // 0x10145BD0 + public override bool Equals(object o); // 0x10145D30 + public bool Equals(SecurityIdentifier sid); // 0x10145C50 + public void GetBinaryForm(byte[] binaryForm, int offset); // 0x10145E50 + public override int GetHashCode(); // 0x10140690 + public bool IsAccountSid(); // 0x10145EF0 + public bool IsEqualDomainSid(SecurityIdentifier sid); // 0x10145F40 + public override bool IsValidTargetType(Type targetType); // 0x10145F90 + public bool IsWellKnown(WellKnownSidType type); // 0x10146030 + public override string ToString(); // 0x100BF0C0 + public override IdentityReference Translate(Type targetType); // 0x10146080 + public static bool op_Equality(SecurityIdentifier left, SecurityIdentifier right); // 0x101463E0 + public static bool op_Inequality(SecurityIdentifier left, SecurityIdentifier right); // 0x10146460 +} + +// Namespace: System.Security.Principal +[Serializable] +public enum TokenAccessLevels // TypeDefIndex: 1475 +{ + AssignPrimary = 1, + Duplicate = 2, + Impersonate = 4, + Query = 8, + QuerySource = 16, + AdjustPrivileges = 32, + AdjustGroups = 64, + AdjustDefault = 128, + AdjustSessionId = 256, + Read = 131080, + Write = 131296, + AllAccess = 983551, + MaximumAllowed = 33554432 +} + +// Namespace: System.Security.Principal +[Serializable] +public enum TokenImpersonationLevel // TypeDefIndex: 1476 +{ + None = 0, + Anonymous = 1, + Identification = 2, + Impersonation = 3, + Delegation = 4 +} + +// Namespace: System.Security.Principal +public enum WellKnownSidType // TypeDefIndex: 1477 +{ + NullSid = 0, + WorldSid = 1, + LocalSid = 2, + CreatorOwnerSid = 3, + CreatorGroupSid = 4, + CreatorOwnerServerSid = 5, + CreatorGroupServerSid = 6, + NTAuthoritySid = 7, + DialupSid = 8, + NetworkSid = 9, + BatchSid = 10, + InteractiveSid = 11, + ServiceSid = 12, + AnonymousSid = 13, + ProxySid = 14, + EnterpriseControllersSid = 15, + SelfSid = 16, + AuthenticatedUserSid = 17, + RestrictedCodeSid = 18, + TerminalServerSid = 19, + RemoteLogonIdSid = 20, + LogonIdsSid = 21, + LocalSystemSid = 22, + LocalServiceSid = 23, + NetworkServiceSid = 24, + BuiltinDomainSid = 25, + BuiltinAdministratorsSid = 26, + BuiltinUsersSid = 27, + BuiltinGuestsSid = 28, + BuiltinPowerUsersSid = 29, + BuiltinAccountOperatorsSid = 30, + BuiltinSystemOperatorsSid = 31, + BuiltinPrintOperatorsSid = 32, + BuiltinBackupOperatorsSid = 33, + BuiltinReplicatorSid = 34, + BuiltinPreWindows2000CompatibleAccessSid = 35, + BuiltinRemoteDesktopUsersSid = 36, + BuiltinNetworkConfigurationOperatorsSid = 37, + AccountAdministratorSid = 38, + AccountGuestSid = 39, + AccountKrbtgtSid = 40, + AccountDomainAdminsSid = 41, + AccountDomainUsersSid = 42, + AccountDomainGuestsSid = 43, + AccountComputersSid = 44, + AccountControllersSid = 45, + AccountCertAdminsSid = 46, + AccountSchemaAdminsSid = 47, + AccountEnterpriseAdminsSid = 48, + AccountPolicyAdminsSid = 49, + AccountRasAndIasServersSid = 50, + NtlmAuthenticationSid = 51, + DigestAuthenticationSid = 52, + SChannelAuthenticationSid = 53, + ThisOrganizationSid = 54, + OtherOrganizationSid = 55, + BuiltinIncomingForestTrustBuildersSid = 56, + BuiltinPerformanceMonitoringUsersSid = 57, + BuiltinPerformanceLoggingUsersSid = 58, + BuiltinAuthorizationAccessSid = 59, + WinBuiltinTerminalServerLicenseServersSid = 60, + MaxDefined = 60 +} + +// Namespace: System.Security.Principal +[Serializable] +public enum WindowsAccountType // TypeDefIndex: 1478 +{ + Normal = 0, + Guest = 1, + System = 2, + Anonymous = 3 +} + +// Namespace: System.Security.Principal +[Serializable] +public enum WindowsBuiltInRole // TypeDefIndex: 1479 +{ + Administrator = 544, + User = 545, + Guest = 546, + PowerUser = 547, + AccountOperator = 548, + SystemOperator = 549, + PrintOperator = 550, + BackupOperator = 551, + Replicator = 552 +} + +// Namespace: System.Security.Principal +[Serializable] +public class WindowsIdentity : IDisposable, ISerializable, IDeserializationCallback, IIdentity // TypeDefIndex: 1480 +{ + // Fields + private IntPtr _token; // 0x08 + private string _type; // 0x0C + private WindowsAccountType _account; // 0x10 + private bool _authenticated; // 0x14 + private string _name; // 0x18 + private SerializationInfo _info; // 0x1C + private static IntPtr invalidWindows; // 0x00 + + // Properties + public string AuthenticationType { get; } // 0x100C5B30 + public virtual bool IsAnonymous { get; } // 0x10157660 + public virtual bool IsAuthenticated { get; } // 0x100C5670 + public virtual bool IsGuest { get; } // 0x10157670 + public virtual bool IsSystem { get; } // 0x101576B0 + public virtual string Name { get; } // 0x101576C0 + public virtual IntPtr Token { get; } // 0x100BF0C0 + public IdentityReferenceCollection Groups { get; } // 0x101575C0 + public TokenImpersonationLevel ImpersonationLevel { get; } // 0x10157610 + public SecurityIdentifier Owner { get; } // 0x10157720 + public SecurityIdentifier User { get; } // 0x10157770 + private static bool IsPosix { get; } // 0x10157680 + + // Methods + public void .ctor(IntPtr userToken); // 0x101573D0 + public void .ctor(IntPtr userToken, string type); // 0x10157390 + public void .ctor(IntPtr userToken, string type, WindowsAccountType acctType); // 0x10157410 + public void .ctor(IntPtr userToken, string type, WindowsAccountType acctType, bool isAuthenticated); // 0x10157450 + public void .ctor(string sUserPrincipalName); // 0x10157280 + public void .ctor(string sUserPrincipalName, string type); // 0x101574B0 + public void .ctor(SerializationInfo info, StreamingContext context); // 0x10157490 + private static void .cctor(); // 0x10157250 + private void System.Runtime.Serialization.IDeserializationCallback.OnDeserialization(object sender); // 0x10156EB0 + private void System.Runtime.Serialization.ISerializable.GetObjectData(SerializationInfo info, StreamingContext context); // 0x10157180 + public void Dispose(); // 0x10156970 + protected virtual void Dispose(bool disposing); // 0x10156940 + public static WindowsIdentity GetAnonymous(); // 0x101569A0 + public static WindowsIdentity GetCurrent(); // 0x10156C60 + public static WindowsIdentity GetCurrent(bool ifImpersonating); // 0x10156BC0 + public static WindowsIdentity GetCurrent(TokenAccessLevels desiredAccess); // 0x10156C10 + public virtual WindowsImpersonationContext Impersonate(); // 0x10156D50 + public static WindowsImpersonationContext Impersonate(IntPtr userToken); // 0x10156D00 + private void SetToken(IntPtr token); // 0x10156DA0 + internal static string[] _GetRoles(IntPtr token); // 0x10157240 + internal static IntPtr GetCurrentToken(); // 0x100EB720 + private static string GetTokenName(IntPtr token); // 0x10104640 + private static IntPtr GetUserToken(string username); // 0x10156CF0 +} + +// Namespace: System.Security.Principal +public class WindowsImpersonationContext : IDisposable // TypeDefIndex: 1481 +{ + // Fields + private IntPtr _token; // 0x08 + private bool undo; // 0x0C + + // Methods + internal void .ctor(IntPtr token); // 0x101578E0 + public void Dispose(); // 0x101577D0 + protected virtual void Dispose(bool disposing); // 0x101577F0 + public void Undo(); // 0x10157850 + private static bool CloseToken(IntPtr token); // 0x101577C0 + private static IntPtr DuplicateToken(IntPtr token); // 0x10157820 + private static bool SetCurrentToken(IntPtr token); // 0x10157840 + private static bool RevertToSelf(); // 0x10157830 +} + +// Namespace: System.Security.Principal +[Serializable] +public class WindowsPrincipal : IPrincipal // TypeDefIndex: 1482 +{ + // Fields + private WindowsIdentity _identity; // 0x08 + private string[] m_roles; // 0x0C + + // Properties + public virtual IIdentity Identity { get; } // 0x100BF0C0 + private static bool IsPosix { get; } // 0x10157680 + private IntPtr Token { get; } // 0x10157DA0 + + // Methods + public void .ctor(WindowsIdentity ntIdentity); // 0x10157D30 + public virtual bool IsInRole(int rid); // 0x10157B40 + public virtual bool IsInRole(string role); // 0x101579B0 + public virtual bool IsInRole(WindowsBuiltInRole role); // 0x10157C60 + public virtual bool IsInRole(SecurityIdentifier sid); // 0x10157960 + private static bool IsMemberOfGroupId(IntPtr user, IntPtr group); // 0x10157CF0 + private static bool IsMemberOfGroupName(IntPtr user, string group); // 0x10157D10 +} + +// Namespace: System.Security +public sealed class AllowPartiallyTrustedCallersAttribute : Attribute // TypeDefIndex: 1483 +{ + // Methods + public void .ctor(); // 0x100C5970 +} + +// Namespace: System.Security +[Serializable] +public abstract class CodeAccessPermission : IPermission, ISecurityEncodable, IStackWalk // TypeDefIndex: 1484 +{ + // Methods + protected void .ctor(); // 0x100BF000 + public void Assert(); // 0x100C5530 + internal bool CheckAssert(CodeAccessPermission asserted); // 0x102871E0 + internal bool CheckDemand(CodeAccessPermission target); // 0x102871E0 + internal bool CheckDeny(CodeAccessPermission denied); // 0x10287230 + internal bool CheckPermitOnly(CodeAccessPermission target); // 0x102871E0 + public abstract IPermission Copy(); + public void Demand(); // 0x100C5530 + public void Deny(); // 0x100C5530 + public override bool Equals(object obj); // 0x102877B0 + public abstract void FromXml(SecurityElement elem); + public override int GetHashCode(); // 0x102110E0 + public abstract IPermission Intersect(IPermission target); + public abstract bool IsSubsetOf(IPermission target); + public override string ToString(); // 0x102881B0 + public abstract SecurityElement ToXml(); + public virtual IPermission Union(IPermission other); // 0x102881F0 + public void PermitOnly(); // 0x100C5530 + public static void RevertAll(); // 0x100C5530 + public static void RevertAssert(); // 0x100C5530 + public static void RevertDeny(); // 0x100C5530 + public static void RevertPermitOnly(); // 0x100C5530 + internal SecurityElement Element(int version); // 0x10287690 + internal static PermissionState CheckPermissionState(PermissionState state, bool allowUnrestricted); // 0x102872E0 + internal static int CheckSecurityElement(SecurityElement se, string parameterName, int minimumVersion, int maximumVersion); // 0x102873A0 + internal static bool IsUnrestricted(SecurityElement se); // 0x10287860 + internal bool ProcessFrame(SecurityFrame frame); // 0x10287940 + internal static void ThrowInvalidPermission(IPermission target, Type expected); // 0x102880B0 + internal static void ThrowExecutionEngineException(SecurityAction stackmod); // 0x10287FF0 + internal static void ThrowSecurityException(object demanded, string message, SecurityFrame frame, SecurityAction action, IPermission failed); // 0x10288160 +} + +// Namespace: System.Security +[Serializable] +public class HostProtectionException : SystemException // TypeDefIndex: 1485 +{ + // Fields + private HostProtectionResource _protected; // 0x34 + private HostProtectionResource _demanded; // 0x38 + + // Properties + public HostProtectionResource DemandedResources { get; } // 0x100EB210 + public HostProtectionResource ProtectedResources { get; } // 0x100E9ED0 + + // Methods + public void .ctor(); // 0x10156930 + public void .ctor(string message); // 0x100E5680 + public void .ctor(string message, Exception e); // 0x100E5670 + public void .ctor(string message, HostProtectionResource protectedResources, HostProtectionResource demandedResources); // 0x10249DF0 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x10249E20 + public override void GetObjectData(SerializationInfo info, StreamingContext context); // 0x10249D80 + public override string ToString(); // 0x10249DE0 +} + +// Namespace: System.Security +[Serializable] +public class HostSecurityManager // TypeDefIndex: 1486 +{ + // Properties + public virtual PolicyLevel DomainPolicy { get; } // 0x100C5600 + public virtual HostSecurityManagerOptions Flags { get; } // 0x1024A8D0 + + // Methods + public void .ctor(); // 0x100BF000 + public virtual ApplicationTrust DetermineApplicationTrust(Evidence applicationEvidence, Evidence activatorEvidence, TrustManagerContext context); // 0x1024A5A0 + public virtual Evidence ProvideAppDomainEvidence(Evidence inputEvidence); // 0x10102390 + public virtual Evidence ProvideAssemblyEvidence(Assembly loadedAssembly, Evidence inputEvidence); // 0x10223E60 + public virtual PermissionSet ResolvePolicy(Evidence evidence); // 0x1024A840 +} + +// Namespace: System.Security +[Serializable] +public enum HostSecurityManagerOptions // TypeDefIndex: 1487 +{ + None = 0, + HostAppDomainEvidence = 1, + HostPolicyLevel = 2, + HostAssemblyEvidence = 4, + HostDetermineApplicationTrust = 8, + HostResolvePolicy = 16, + AllFlags = 31 +} + +// Namespace: System.Security +public interface IEvidenceFactory // TypeDefIndex: 1488 +{ + // Properties + Evidence Evidence { get; } + +} + +// Namespace: System.Security +public interface IPermission : ISecurityEncodable // TypeDefIndex: 1489 +{ + // Methods + IPermission Copy(); + void Demand(); + IPermission Intersect(IPermission target); + bool IsSubsetOf(IPermission target); + IPermission Union(IPermission target); +} + +// Namespace: System.Security +public interface ISecurityEncodable // TypeDefIndex: 1490 +{ + // Methods + void FromXml(SecurityElement e); + SecurityElement ToXml(); +} + +// Namespace: System.Security +public interface ISecurityPolicyEncodable // TypeDefIndex: 1491 +{ + // Methods + void FromXml(SecurityElement e, PolicyLevel level); + SecurityElement ToXml(PolicyLevel level); +} + +// Namespace: System.Security +public interface IStackWalk // TypeDefIndex: 1492 +{ + // Methods + void Assert(); + void Demand(); + void Deny(); + void PermitOnly(); +} + +// Namespace: System.Security +[Serializable] +public sealed class NamedPermissionSet : PermissionSet // TypeDefIndex: 1493 +{ + // Fields + private string name; // 0x10 + private string description; // 0x14 + + // Properties + public string Description { get; set; } // 0x100EF0C0 0x10127B00 + public string Name { get; set; } // 0x100BFC20 0x1024CAE0 + + // Methods + internal void .ctor(); // 0x100BF000 + public void .ctor(string name, PermissionSet permSet); // 0x1024CAA0 + public void .ctor(string name, PermissionState state); // 0x1024CAA0 + public void .ctor(NamedPermissionSet permSet); // 0x1024CA70 + public void .ctor(string name); // 0x1024CAC0 + public override PermissionSet Copy(); // 0x1024C860 + public NamedPermissionSet Copy(string name); // 0x1024C7F0 + public override void FromXml(SecurityElement et); // 0x1024C960 + public override SecurityElement ToXml(); // 0x1024CA30 + public override bool Equals(object obj); // 0x1024C8C0 + public override int GetHashCode(); // 0x1024C9F0 +} + +// Namespace: System.Security +internal static class PermissionBuilder // TypeDefIndex: 1494 +{ + // Fields + private static object[] psNone; // 0x00 + + // Methods + private static void .cctor(); // 0x1024D090 + public static IPermission Create(string fullname, PermissionState state); // 0x1024CEF0 + public static IPermission Create(SecurityElement se); // 0x1024CD70 + public static IPermission Create(string fullname, SecurityElement se); // 0x1024CE40 + public static IPermission Create(Type type); // 0x1024D000 + internal static IPermission CreatePermission(string fullname, SecurityElement se); // 0x1024CB90 +} + +// Namespace: System.Security +[Serializable] +public class PermissionSet // TypeDefIndex: 1495 +{ + // Fields + private PolicyLevel k__BackingField; // 0x08 + private bool k__BackingField; // 0x0C + + // Properties + internal PolicyLevel Resolver { get; set; } // 0x100BF0C0 0x100EB270 + internal bool DeclarativeSecurity { get; set; } // 0x100F8910 0x1016CBD0 + + // Methods + public void .ctor(); // 0x100BF000 + internal void .ctor(string xml); // 0x101AA300 + public void .ctor(PermissionState state); // 0x101AA300 + public void .ctor(PermissionSet permSet); // 0x101AA300 + public IPermission AddPermission(IPermission perm); // 0x10102390 + public virtual void Assert(); // 0x100C5530 + public virtual PermissionSet Copy(); // 0x1024D140 + public virtual void Demand(); // 0x100C5530 + public virtual void PermitOnly(); // 0x100C5530 + public virtual IPermission GetPermission(Type permClass); // 0x100C5600 + public virtual PermissionSet Intersect(PermissionSet other); // 0x10102390 + public virtual void Deny(); // 0x100C5530 + public virtual void FromXml(SecurityElement et); // 0x100C5530 + public virtual void CopyTo(Array array, int index); // 0x100C5530 + public virtual SecurityElement ToXml(); // 0x100C5600 + public virtual bool IsSubsetOf(PermissionSet target); // 0x100E5880 + internal void SetReadOnly(bool value); // 0x100C5530 + public bool IsUnrestricted(); // 0x100E5880 + public PermissionSet Union(PermissionSet other); // 0x1024D200 + public virtual IEnumerator GetEnumerator(); // 0x1024D1C0 + public virtual bool IsEmpty(); // 0x100E5880 + internal static PermissionSet CreateFromBinaryFormat(byte[] data); // 0x1024D180 +} + +// Namespace: +private sealed class c__Iterator1 : IEnumerator, IDisposable, IEnumerator`1 // TypeDefIndex: 1496 +{ + // Fields + internal int $PC; // 0x08 + internal object $current; // 0x0C + + // Properties + private object System.Collections.Generic.IEnumerator.Current { get; } // 0x100C5B30 + private object System.Collections.IEnumerator.Current { get; } // 0x100C5B30 + + // Methods + public void .ctor(); // 0x100BF000 + public bool MoveNext(); // 0x10258CB0 + public void Dispose(); // 0x10258CA0 + public void Reset(); // 0x10258CD0 +} + +// Namespace: System.Security +[Serializable] +public enum PolicyLevelType // TypeDefIndex: 1497 +{ + User = 0, + Machine = 1, + Enterprise = 2, + AppDomain = 3 +} + +// Namespace: System.Security +public sealed class SecureString : CriticalFinalizerObject, IDisposable // TypeDefIndex: 1498 +{ + // Fields + private const int BlockSize = 16; // 0x00 + private const int MaxSize = 65536; // 0x00 + private int length; // 0x08 + private bool disposed; // 0x0C + private bool read_only; // 0x0D + private byte[] data; // 0x10 + + // Properties + public int Length { get; } // 0x10141800 + + // Methods + public void .ctor(); // 0x10141640 + public void .ctor(void * value, int length); // 0x10141690 + private static void .cctor(); // 0x100C5530 + public void AppendChar(char c); // 0x10140BA0 + public void Clear(); // 0x10140D80 + public SecureString Copy(); // 0x10140E40 + public void Dispose(); // 0x10140F10 + public void InsertAt(int index, char c); // 0x10141030 + public bool IsReadOnly(); // 0x10141290 + public void MakeReadOnly(); // 0x101412F0 + public void RemoveAt(int index); // 0x10141300 + public void SetAt(int index, char c); // 0x101414A0 + private void Encrypt(); // 0x100C5530 + private void Decrypt(); // 0x100C5530 + private void Alloc(int length, bool realloc); // 0x10140A90 + internal byte[] GetBuffer(); // 0x10140F50 +} + +// Namespace: System.Security +public sealed class SecurityContext // TypeDefIndex: 1499 +{ + // Fields + private bool _capture; // 0x08 + private IntPtr _winid; // 0x0C + private CompressedStack _stack; // 0x10 + private bool _suppressFlowWindowsIdentity; // 0x14 + private bool _suppressFlow; // 0x15 + + // Properties + internal bool FlowSuppressed { get; set; } // 0x10142240 0x10142250 + internal bool WindowsIdentityFlowSuppressed { get; set; } // 0x100C5670 0x10142260 + internal CompressedStack CompressedStack { get; set; } // 0x100BFC20 0x100C5B40 + internal IntPtr IdentityToken { get; set; } // 0x100C5B30 0x100C5B50 + + // Methods + internal void .ctor(); // 0x100BF000 + internal void .ctor(SecurityContext sc); // 0x101421F0 + public SecurityContext CreateCopy(); // 0x10141B80 + public static SecurityContext Capture(); // 0x10141AB0 + public static bool IsFlowSuppressed(); // 0x10141C10 + public static bool IsWindowsIdentityFlowSuppressed(); // 0x10141C90 + public static void RestoreFlow(); // 0x10141D10 + public static void Run(SecurityContext securityContext, ContextCallback callback, object state); // 0x10141DC0 + public static AsyncFlowControl SuppressFlow(); // 0x10142120 + public static AsyncFlowControl SuppressFlowWindowsIdentity(); // 0x10142080 +} + +// Namespace: System.Security +public sealed class SecurityCriticalAttribute : Attribute // TypeDefIndex: 1500 +{ + // Fields + private SecurityCriticalScope _scope; // 0x08 + + // Properties + public SecurityCriticalScope Scope { get; } // 0x100BF0C0 + + // Methods + public void .ctor(); // 0x100C5B10 + public void .ctor(SecurityCriticalScope scope); // 0x10142270 +} + +// Namespace: System.Security +public enum SecurityCriticalScope // TypeDefIndex: 1501 +{ + Explicit = 0, + Everything = 1 +} + +// Namespace: System.Security +[Serializable] +public sealed class SecurityElement // TypeDefIndex: 1502 +{ + // Fields + private string text; // 0x08 + private string tag; // 0x0C + private ArrayList attributes; // 0x10 + private ArrayList children; // 0x14 + private static readonly char[] invalid_tag_chars; // 0x00 + private static readonly char[] invalid_text_chars; // 0x04 + private static readonly char[] invalid_attr_name_chars; // 0x08 + private static readonly char[] invalid_attr_value_chars; // 0x0C + private static readonly char[] invalid_chars; // 0x10 + + // Properties + public Hashtable Attributes { get; set; } // 0x10144250 0x101444B0 + public ArrayList Children { get; set; } // 0x100EF0C0 0x10144730 + public string Tag { get; set; } // 0x100C5B30 0x101448B0 + public string Text { get; set; } // 0x100BF0C0 0x101449B0 + + // Methods + public void .ctor(string tag); // 0x10143C70 + public void .ctor(string tag, string text); // 0x10144140 + internal void .ctor(SecurityElement se); // 0x10143C90 + private static void .cctor(); // 0x10143A30 + public void AddAttribute(string name, string value); // 0x101422A0 + public void AddChild(SecurityElement child); // 0x101423F0 + public string Attribute(string name); // 0x101424A0 + public SecurityElement Copy(); // 0x10142520 + public bool Equal(SecurityElement other); // 0x10142570 + public static string Escape(string str); // 0x101429F0 + private static string Unescape(string str); // 0x10143960 + public static SecurityElement FromString(string xml); // 0x10142BC0 + public static bool IsValidAttributeName(string name); // 0x10142F60 + public static bool IsValidAttributeValue(string value); // 0x10142FD0 + public static bool IsValidTag(string tag); // 0x10143040 + public static bool IsValidText(string text); // 0x101430B0 + public SecurityElement SearchForChildByTag(string tag); // 0x10143120 + public string SearchForTextOfTag(string tag); // 0x10143260 + public override string ToString(); // 0x101433D0 + private void ToXml(StringBuilder s, int level); // 0x10143440 + internal SecurityAttribute GetAttribute(string name); // 0x10142D50 +} + +// Namespace: +internal class SecurityAttribute // TypeDefIndex: 1503 +{ + // Fields + private string _name; // 0x08 + private string _value; // 0x0C + + // Properties + public string Name { get; } // 0x100BF0C0 + public string Value { get; } // 0x100C5B30 + + // Methods + public void .ctor(string name, string value); // 0x10141860 +} + +// Namespace: System.Security +[Serializable] +public class SecurityException : SystemException // TypeDefIndex: 1504 +{ + // Fields + private string permissionState; // 0x34 + private Type permissionType; // 0x38 + private string _granted; // 0x3C + private string _refused; // 0x40 + private object _demanded; // 0x44 + private IPermission _firstperm; // 0x48 + private MethodInfo _method; // 0x4C + private Evidence _evidence; // 0x50 + private SecurityAction _action; // 0x54 + private object _denyset; // 0x58 + private object _permitset; // 0x5C + private AssemblyName _assembly; // 0x60 + private string _url; // 0x64 + private SecurityZone _zone; // 0x68 + + // Properties + public SecurityAction Action { get; set; } // 0x10145520 0x101455A0 + public object DenySetInstance { get; set; } // 0x10145540 0x101455C0 + public AssemblyName FailedAssemblyInfo { get; set; } // 0x10145550 0x101455D0 + public MethodInfo Method { get; set; } // 0x10145570 0x10145600 + public object PermitOnlySetInstance { get; set; } // 0x10145580 0x10145610 + public string Url { get; set; } // 0x10145590 0x10145620 + public SecurityZone Zone { get; set; } // 0x1013F890 0x10145630 + public object Demanded { get; set; } // 0x10145530 0x101455B0 + public IPermission FirstPermissionThatFailed { get; set; } // 0x10145560 0x101455E0 + public string PermissionState { get; set; } // 0x100E9ED0 0x100EA750 + public Type PermissionType { get; set; } // 0x100EB210 0x100EB290 + public string GrantedSet { get; set; } // 0x100EB220 0x101455F0 + public string RefusedSet { get; set; } // 0x100E9E80 0x100EB280 + + // Methods + public void .ctor(); // 0x10145360 + public void .ctor(string message); // 0x10145190 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x10145290 + public void .ctor(string message, Exception inner); // 0x101453E0 + public void .ctor(string message, Type type); // 0x10145220 + public void .ctor(string message, Type type, string state); // 0x101453B0 + internal void .ctor(string message, PermissionSet granted, PermissionSet refused); // 0x101451B0 + public void .ctor(string message, object deny, object permitOnly, MethodInfo method, object demanded, IPermission permThatFailed); // 0x10145250 + public void .ctor(string message, AssemblyName assemblyName, PermissionSet grant, PermissionSet refused, MethodInfo method, SecurityAction action, object demanded, IPermission permThatFailed, Evidence evidence); // 0x10145410 + public override void GetObjectData(SerializationInfo info, StreamingContext context); // 0x10144AF0 + public override string ToString(); // 0x10144BE0 +} + +// Namespace: System.Security +internal struct RuntimeDeclSecurityEntry // TypeDefIndex: 1505 +{ + // Fields + public IntPtr blob; // 0x08 + public int size; // 0x0C + public int index; // 0x10 + +} + +// Namespace: System.Security +internal class RuntimeSecurityFrame // TypeDefIndex: 1506 +{ + // Fields + public AppDomain domain; // 0x08 + public MethodInfo method; // 0x0C + public RuntimeDeclSecurityEntry assert; // 0x10 + public RuntimeDeclSecurityEntry deny; // 0x1C + public RuntimeDeclSecurityEntry permitonly; // 0x28 + + // Methods + public void .ctor(); // 0x100BF000 +} + +// Namespace: System.Security +internal struct SecurityFrame // TypeDefIndex: 1507 +{ + // Fields + private AppDomain _domain; // 0x08 + private MethodInfo _method; // 0x0C + private PermissionSet _assert; // 0x10 + private PermissionSet _deny; // 0x14 + private PermissionSet _permitonly; // 0x18 + + // Properties + public Assembly Assembly { get; } // 0x10007FE0 + public AppDomain Domain { get; } // 0x10003A80 + public MethodInfo Method { get; } // 0x10003A90 + public PermissionSet Assert { get; } // 0x100039B0 + public PermissionSet Deny { get; } // 0x10008030 + public PermissionSet PermitOnly { get; } // 0x10008060 + public bool HasStackModifiers { get; } // 0x10008040 + + // Methods + internal void .ctor(RuntimeSecurityFrame frame); // 0x10007FA0 + internal void .ctor(int skip); // 0x10007F50 + private static RuntimeSecurityFrame _GetSecurityFrame(int skip); // 0x10145B80 + private static Array _GetSecurityStack(int skip); // 0x10104640 + internal void InitFromRuntimeFrame(RuntimeSecurityFrame frame); // 0x10007F30 + public bool Equals(SecurityFrame sf); // 0x10007F00 + public override string ToString(); // 0x10007F40 + public static ArrayList GetStack(int skipFrames); // 0x10145830 +} + +// Namespace: System.Security +internal struct RuntimeDeclSecurityActions // TypeDefIndex: 1508 +{ + // Fields + public RuntimeDeclSecurityEntry cas; // 0x08 + public RuntimeDeclSecurityEntry noncas; // 0x14 + public RuntimeDeclSecurityEntry choice; // 0x20 + +} + +// Namespace: System.Security +public static class SecurityManager // TypeDefIndex: 1509 +{ + // Fields + private static object _lockObject; // 0x00 + private static ArrayList _hierarchy; // 0x04 + private static IPermission _unmanagedCode; // 0x08 + private static Hashtable _declsecCache; // 0x0C + private static PolicyLevel _level; // 0x10 + private static SecurityPermission _execution; // 0x14 + + // Properties + public static bool CheckExecutionRights { get; set; } // 0x10148FB0 0x10149350 + public static bool SecurityEnabled { get; set; } // 0x10148FB0 0x101493C0 + private static IEnumerator Hierarchy { get; } // 0x10148FC0 + internal static PolicyLevel ResolvingPolicyLevel { get; set; } // 0x10149160 0x10149360 + private static IPermission UnmanagedCode { get; } // 0x101491B0 + + // Methods + private static void .cctor(); // 0x10148F40 + public static void GetZoneAndOrigin(out ArrayList zone, out ArrayList origin); // 0x101470C0 + public static bool IsGranted(IPermission perm); // 0x10147700 + internal static bool IsGranted(Assembly a, IPermission perm); // 0x10147790 + internal static IPermission CheckPermissionSet(Assembly a, PermissionSet ps, bool noncas); // 0x10146840 + internal static IPermission CheckPermissionSet(AppDomain ad, PermissionSet ps); // 0x101464E0 + public static PolicyLevel LoadPolicyLevelFromFile(string path, PolicyLevelType type); // 0x10147DE0 + public static PolicyLevel LoadPolicyLevelFromString(string str, PolicyLevelType type); // 0x10147F70 + public static IEnumerator PolicyHierarchy(); // 0x10148100 + public static PermissionSet ResolvePolicy(Evidence evidence); // 0x10148B00 + public static PermissionSet ResolvePolicy(Evidence[] evidences); // 0x101489C0 + public static PermissionSet ResolveSystemPolicy(Evidence evidence); // 0x10148C40 + public static PermissionSet ResolvePolicy(Evidence evidence, PermissionSet reqdPset, PermissionSet optPset, PermissionSet denyPset, out PermissionSet denied); // 0x10148800 + public static IEnumerator ResolvePolicyGroups(Evidence evidence); // 0x10148560 + public static void SavePolicy(); // 0x10148DC0 + public static void SavePolicyLevel(PolicyLevel level); // 0x10148D90 + private static void InitializePolicyHierarchy(); // 0x10147400 + internal static bool ResolvePolicyLevel(PermissionSet ps, PolicyLevel pl, Evidence evidence); // 0x10148750 + internal static void ResolveIdentityPermissions(PermissionSet ps, Evidence evidence); // 0x10148400 + internal static PermissionSet Decode(IntPtr permissions, int length); // 0x10146C20 + internal static PermissionSet Decode(byte[] encodedPermissions); // 0x10146AE0 + private static bool GetLinkDemandSecurity(MethodBase method, void * cdecl, void * mdecl); // 0x101470A0 + internal static void ReflectedLinkDemandInvoke(MethodBase mb); // 0x10148150 + internal static bool ReflectedLinkDemandQuery(MethodBase mb); // 0x10148300 + private static bool LinkDemand(Assembly a, void * klass, void * method); // 0x10147BC0 + private static bool LinkDemandFullTrust(Assembly a); // 0x101478E0 + private static bool LinkDemandUnmanaged(Assembly a); // 0x10147B60 + private static void LinkDemandSecurityException(int securityViolation, IntPtr methodHandle); // 0x10147950 + private static void InheritanceDemandSecurityException(int securityViolation, Assembly a, Type t, MethodInfo method); // 0x10147120 + private static void ThrowException(Exception ex); // 0x10148F00 + private static bool InheritanceDemand(AppDomain ad, Assembly a, void * actions); // 0x10147230 + private static void DemandUnmanaged(); // 0x10147030 + private static void InternalDemand(IntPtr permissions, int length); // 0x10147680 + private static void InternalDemandChoice(IntPtr permissions, int length); // 0x10147630 +} + +// Namespace: System.Security +public sealed class SecuritySafeCriticalAttribute : Attribute // TypeDefIndex: 1510 +{ + // Methods + public void .ctor(); // 0x100C5970 +} + +// Namespace: System.Security +public abstract class SecurityState // TypeDefIndex: 1511 +{ + // Methods + protected void .ctor(); // 0x100BF000 + public abstract void EnsureState(); + public bool IsStateAvailable(); // 0x101493D0 +} + +// Namespace: System.Security +public sealed class SecurityTransparentAttribute : Attribute // TypeDefIndex: 1512 +{ + // Methods + public void .ctor(); // 0x100C5970 +} + +// Namespace: System.Security +public sealed class SecurityTreatAsSafeAttribute : Attribute // TypeDefIndex: 1513 +{ + // Methods + public void .ctor(); // 0x100C5970 +} + +// Namespace: System.Security +[Serializable] +public enum SecurityZone // TypeDefIndex: 1514 +{ + NoZone = -1, + MyComputer = 0, + Intranet = 1, + Trusted = 2, + Internet = 3, + Untrusted = 4 +} + +// Namespace: System.Security +public sealed class SuppressUnmanagedCodeSecurityAttribute : Attribute // TypeDefIndex: 1515 +{ + // Methods + public void .ctor(); // 0x100C5970 +} + +// Namespace: System.Security +public sealed class UnverifiableCodeAttribute : Attribute // TypeDefIndex: 1516 +{ + // Methods + public void .ctor(); // 0x100C5970 +} + +// Namespace: System.Security +[Serializable] +public class VerificationException : SystemException // TypeDefIndex: 1517 +{ + // Methods + public void .ctor(); // 0x10156930 + public void .ctor(string message); // 0x100E5680 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 + public void .ctor(string message, Exception innerException); // 0x100E5670 +} + +// Namespace: System.Security +[Serializable] +public sealed class XmlSyntaxException : SystemException // TypeDefIndex: 1518 +{ + // Methods + public void .ctor(); // 0x10156930 + public void .ctor(int lineNumber); // 0x10157DD0 + public void .ctor(int lineNumber, string message); // 0x10157E60 + public void .ctor(string message); // 0x100E5680 + public void .ctor(string message, Exception inner); // 0x100E5670 + internal void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 +} + +// Namespace: System.Text +[Serializable] +public class ASCIIEncoding : Encoding // TypeDefIndex: 1519 +{ + // Fields + internal const int ASCII_CODE_PAGE = 20127; // 0x00 + + // Properties + public override bool IsSingleByte { get; } // 0x100E5880 + + // Methods + public void .ctor(); // 0x1031FA40 + public override int GetByteCount(char[] chars, int index, int count); // 0x1031E5A0 + public override int GetByteCount(string chars); // 0x1031E6C0 + public override int GetBytes(char[] chars, int charIndex, int charCount, byte[] bytes, int byteIndex); // 0x1031EB80 + private int GetBytes(char[] chars, int charIndex, int charCount, byte[] bytes, int byteIndex, EncoderFallbackBuffer buffer, char[] fallback_chars); // 0x1031EBC0 + public override int GetBytes(string chars, int charIndex, int charCount, byte[] bytes, int byteIndex); // 0x1031EB40 + private int GetBytes(string chars, int charIndex, int charCount, byte[] bytes, int byteIndex, EncoderFallbackBuffer buffer, char[] fallback_chars); // 0x1031E720 + public override int GetCharCount(byte[] bytes, int index, int count); // 0x1031F140 + public override int GetChars(byte[] bytes, int byteIndex, int byteCount, char[] chars, int charIndex); // 0x1031F390 + private int GetChars(byte[] bytes, int byteIndex, int byteCount, char[] chars, int charIndex, DecoderFallbackBuffer buffer); // 0x1031F3C0 + public override int GetMaxByteCount(int charCount); // 0x1031F750 + public override int GetMaxCharCount(int byteCount); // 0x1031F7E0 + public override string GetString(byte[] bytes, int byteIndex, int byteCount); // 0x1031F870 + public override int GetBytes(void * chars, int charCount, void * bytes, int byteCount); // 0x1031F000 + public override int GetChars(void * bytes, int byteCount, void * chars, int charCount); // 0x1031F260 + public override int GetCharCount(void * bytes, int count); // 0x10223E60 + public override int GetByteCount(void * chars, int count); // 0x10223E60 + public override Decoder GetDecoder(); // 0x1031F6D0 + public override Encoder GetEncoder(); // 0x1031F740 +} + +// Namespace: System.Text +[Serializable] +internal sealed class CodePageEncoding : ISerializable, IObjectReference // TypeDefIndex: 1520 +{ + // Fields + private int codePage; // 0x08 + private bool isReadOnly; // 0x0C + private EncoderFallback encoderFallback; // 0x10 + private DecoderFallback decoderFallback; // 0x14 + private Encoding realObject; // 0x18 + + // Methods + private void .ctor(SerializationInfo info, StreamingContext context); // 0x1031FE70 + public void GetObjectData(SerializationInfo info, StreamingContext context); // 0x1031FD60 + public object GetRealObject(StreamingContext context); // 0x1031FDB0 +} + +// Namespace: +[Serializable] +private sealed class Decoder : ISerializable, IObjectReference // TypeDefIndex: 1521 +{ + // Fields + private Encoding encoding; // 0x08 + private Decoder realObject; // 0x0C + + // Methods + private void .ctor(SerializationInfo info, StreamingContext context); // 0x10321120 + public void GetObjectData(SerializationInfo info, StreamingContext context); // 0x10320FE0 + public object GetRealObject(StreamingContext context); // 0x10321030 +} + +// Namespace: System.Text +[Serializable] +public abstract class Decoder // TypeDefIndex: 1522 +{ + // Fields + private DecoderFallback fallback; // 0x08 + private DecoderFallbackBuffer fallback_buffer; // 0x0C + + // Properties + public DecoderFallback Fallback { get; set; } // 0x100BF0C0 0x10321260 + public DecoderFallbackBuffer FallbackBuffer { get; } // 0x10321220 + + // Methods + protected void .ctor(); // 0x103210A0 + public abstract int GetCharCount(byte[] bytes, int index, int count); + public abstract int GetChars(byte[] bytes, int byteIndex, int byteCount, char[] chars, int charIndex); + public virtual int GetCharCount(byte[] bytes, int index, int count, bool flush); // 0x10320D50 + public virtual int GetCharCount(void * bytes, int count, bool flush); // 0x10320DA0 + public virtual int GetChars(byte[] bytes, int byteIndex, int byteCount, char[] chars, int charIndex, bool flush); // 0x10320EA0 + public virtual int GetChars(void * bytes, int byteCount, void * chars, int charCount, bool flush); // 0x10320F10 + public virtual void Reset(); // 0x10321070 + public virtual void Convert(void * bytes, int byteCount, void * chars, int charCount, bool flush, out int bytesUsed, out int charsUsed, out bool completed); // 0x10320B60 + public virtual void Convert(byte[] bytes, int byteIndex, int byteCount, char[] chars, int charIndex, int charCount, bool flush, out int bytesUsed, out int charsUsed, out bool completed); // 0x10320C10 + private void CheckArguments(char[] chars, int charIndex); // 0x10320950 + private void CheckArguments(byte[] bytes, int byteIndex, int byteCount); // 0x10320AB0 + private void CheckArguments(void * chars, int charCount, void * bytes, int byteCount); // 0x103209F0 +} + +// Namespace: System.Text +[Serializable] +public sealed class DecoderExceptionFallback : DecoderFallback // TypeDefIndex: 1523 +{ + // Properties + public override int MaxCharCount { get; } // 0x100C5600 + + // Methods + public void .ctor(); // 0x103201F0 + public override DecoderFallbackBuffer CreateFallbackBuffer(); // 0x10320170 + public override bool Equals(object value); // 0x103201B0 + public override int GetHashCode(); // 0x100C5600 +} + +// Namespace: System.Text +public sealed class DecoderExceptionFallbackBuffer : DecoderFallbackBuffer // TypeDefIndex: 1524 +{ + // Properties + public override int Remaining { get; } // 0x100C5600 + + // Methods + public void .ctor(); // 0x100BF000 + public override bool Fallback(byte[] bytesUnknown, int index); // 0x10320110 + public override char GetNextChar(); // 0x100C5600 + public override bool MovePrevious(); // 0x100EFBF0 +} + +// Namespace: System.Text +[Serializable] +public abstract class DecoderFallback // TypeDefIndex: 1525 +{ + // Fields + private static DecoderFallback exception_fallback; // 0x00 + private static DecoderFallback replacement_fallback; // 0x04 + private static DecoderFallback standard_safe_fallback; // 0x08 + + // Properties + public static DecoderFallback ExceptionFallback { get; } // 0x103203C0 + public abstract int MaxCharCount { get; } + public static DecoderFallback ReplacementFallback { get; } // 0x10320410 + internal static DecoderFallback StandardSafeFallback { get; } // 0x103204B0 + + // Methods + protected void .ctor(); // 0x100BF000 + private static void .cctor(); // 0x103202D0 + public abstract DecoderFallbackBuffer CreateFallbackBuffer(); +} + +// Namespace: System.Text +public abstract class DecoderFallbackBuffer // TypeDefIndex: 1526 +{ + // Properties + public abstract int Remaining { get; } + + // Methods + protected void .ctor(); // 0x100BF000 + public abstract bool Fallback(byte[] bytesUnknown, int index); + public abstract char GetNextChar(); + public abstract bool MovePrevious(); + public virtual void Reset(); // 0x100C5530 +} + +// Namespace: System.Text +[Serializable] +public sealed class DecoderFallbackException : ArgumentException // TypeDefIndex: 1527 +{ + // Fields + private const string defaultMessage = "Failed to decode the input byte sequence to Unicode characters."; // 0x00 + private byte[] bytes_unknown; // 0x38 + private int index; // 0x3C + + // Properties + public byte[] BytesUnknown { get; } // 0x100EB210 + public int Index { get; } // 0x100EB220 + + // Methods + public void .ctor(); // 0x10320240 + public void .ctor(string message); // 0x10320290 + public void .ctor(string message, Exception innerException); // 0x103202B0 + public void .ctor(string message, byte[] bytesUnknown, int index); // 0x10320260 +} + +// Namespace: System.Text +[Serializable] +public sealed class DecoderReplacementFallback : DecoderFallback // TypeDefIndex: 1528 +{ + // Fields + private string replacement; // 0x08 + + // Properties + public string DefaultString { get; } // 0x100BF0C0 + public override int MaxCharCount { get; } // 0x10320930 + + // Methods + public void .ctor(); // 0x103208F0 + public void .ctor(string replacement); // 0x10320860 + public override DecoderFallbackBuffer CreateFallbackBuffer(); // 0x10320730 + public override bool Equals(object value); // 0x103207E0 + public override int GetHashCode(); // 0x10140690 +} + +// Namespace: System.Text +public sealed class DecoderReplacementFallbackBuffer : DecoderFallbackBuffer // TypeDefIndex: 1529 +{ + // Fields + private bool fallback_assigned; // 0x08 + private int current; // 0x0C + private string replacement; // 0x10 + + // Properties + public override int Remaining { get; } // 0x10320700 + + // Methods + public void .ctor(DecoderReplacementFallback fallback); // 0x10320680 + public override bool Fallback(byte[] bytesUnknown, int index); // 0x10320500 + public override char GetNextChar(); // 0x10320600 + public override bool MovePrevious(); // 0x10320640 + public override void Reset(); // 0x10320660 +} + +// Namespace: System.Text +[Serializable] +public abstract class Encoder // TypeDefIndex: 1530 +{ + // Fields + private EncoderFallback fallback; // 0x08 + private EncoderFallbackBuffer fallback_buffer; // 0x0C + + // Properties + public EncoderFallback Fallback { get; set; } // 0x100BF0C0 0x103221B0 + public EncoderFallbackBuffer FallbackBuffer { get; } // 0x10321220 + + // Methods + protected void .ctor(); // 0x10322130 + public abstract int GetByteCount(char[] chars, int index, int count, bool flush); + public abstract int GetBytes(char[] chars, int charIndex, int charCount, byte[] bytes, int byteIndex, bool flush); + public virtual int GetByteCount(void * chars, int count, bool flush); // 0x10321F20 + public virtual int GetBytes(void * chars, int charCount, void * bytes, int byteCount, bool flush); // 0x10322020 + public virtual void Reset(); // 0x10322100 + public virtual void Convert(void * chars, int charCount, void * bytes, int byteCount, bool flush, out int charsUsed, out int bytesUsed, out bool completed); // 0x10321E70 + public virtual void Convert(char[] chars, int charIndex, int charCount, byte[] bytes, int byteIndex, int byteCount, bool flush, out int charsUsed, out int bytesUsed, out bool completed); // 0x10321CA0 + private void CheckArguments(void * chars, int charCount, void * bytes, int byteCount); // 0x10321BE0 +} + +// Namespace: System.Text +[Serializable] +public sealed class EncoderExceptionFallback : EncoderFallback // TypeDefIndex: 1531 +{ + // Properties + public override int MaxCharCount { get; } // 0x100C5600 + + // Methods + public void .ctor(); // 0x103213F0 + public override EncoderFallbackBuffer CreateFallbackBuffer(); // 0x10321370 + public override bool Equals(object value); // 0x103213B0 + public override int GetHashCode(); // 0x100C5600 +} + +// Namespace: System.Text +public sealed class EncoderExceptionFallbackBuffer : EncoderFallbackBuffer // TypeDefIndex: 1532 +{ + // Properties + public override int Remaining { get; } // 0x100C5600 + + // Methods + public void .ctor(); // 0x100BF000 + public override bool Fallback(char charUnknown, int index); // 0x10321320 + public override bool Fallback(char charUnknownHigh, char charUnknownLow, int index); // 0x103212C0 + public override char GetNextChar(); // 0x100C5600 + public override bool MovePrevious(); // 0x100EFBF0 +} + +// Namespace: System.Text +[Serializable] +public abstract class EncoderFallback // TypeDefIndex: 1533 +{ + // Fields + private static EncoderFallback exception_fallback; // 0x00 + private static EncoderFallback replacement_fallback; // 0x04 + private static EncoderFallback standard_safe_fallback; // 0x08 + + // Properties + public static EncoderFallback ExceptionFallback { get; } // 0x103216B0 + public abstract int MaxCharCount { get; } + public static EncoderFallback ReplacementFallback { get; } // 0x10321700 + internal static EncoderFallback StandardSafeFallback { get; } // 0x103217A0 + + // Methods + protected void .ctor(); // 0x100BF000 + private static void .cctor(); // 0x103215C0 + public abstract EncoderFallbackBuffer CreateFallbackBuffer(); +} + +// Namespace: System.Text +public abstract class EncoderFallbackBuffer // TypeDefIndex: 1534 +{ + // Properties + public abstract int Remaining { get; } + + // Methods + protected void .ctor(); // 0x100BF000 + public abstract bool Fallback(char charUnknown, int index); + public abstract bool Fallback(char charUnknownHigh, char charUnknownLow, int index); + public abstract char GetNextChar(); + public abstract bool MovePrevious(); + public virtual void Reset(); // 0x10321440 +} + +// Namespace: System.Text +[Serializable] +public sealed class EncoderFallbackException : ArgumentException // TypeDefIndex: 1535 +{ + // Fields + private const string defaultMessage = "Failed to decode the input byte sequence to Unicode characters."; // 0x00 + private char char_unknown; // 0x38 + private char char_unknown_high; // 0x3A + private char char_unknown_low; // 0x3C + private int index; // 0x40 + + // Properties + public char CharUnknown { get; } // 0x103215B0 + public char CharUnknownHigh { get; } // 0x10321590 + public char CharUnknownLow { get; } // 0x103215A0 + public int Index { get; } // 0x100E9E80 + + // Methods + public void .ctor(); // 0x103214F0 + public void .ctor(string message); // 0x10321510 + public void .ctor(string message, Exception innerException); // 0x10321570 + internal void .ctor(char charUnknown, int index); // 0x103214C0 + internal void .ctor(char charUnknownHigh, char charUnknownLow, int index); // 0x10321530 + public bool IsUnknownSurrogate(); // 0x10321470 +} + +// Namespace: System.Text +[Serializable] +public sealed class EncoderReplacementFallback : EncoderFallback // TypeDefIndex: 1536 +{ + // Fields + private string replacement; // 0x08 + + // Properties + public string DefaultString { get; } // 0x100BF0C0 + public override int MaxCharCount { get; } // 0x10320930 + + // Methods + public void .ctor(); // 0x10321BA0 + public void .ctor(string replacement); // 0x10321B10 + public override EncoderFallbackBuffer CreateFallbackBuffer(); // 0x103219E0 + public override bool Equals(object value); // 0x10321A90 + public override int GetHashCode(); // 0x10140690 +} + +// Namespace: System.Text +public sealed class EncoderReplacementFallbackBuffer : EncoderFallbackBuffer // TypeDefIndex: 1537 +{ + // Fields + private string replacement; // 0x08 + private int current; // 0x0C + private bool fallback_assigned; // 0x10 + + // Properties + public override int Remaining { get; } // 0x103219C0 + + // Methods + public void .ctor(EncoderReplacementFallback fallback); // 0x10321940 + public override bool Fallback(char charUnknown, int index); // 0x103217F0 + public override bool Fallback(char charUnknownHigh, char charUnknownLow, int index); // 0x10321810 + private bool Fallback(int index); // 0x10321830 + public override char GetNextChar(); // 0x103218F0 + public override bool MovePrevious(); // 0x10320640 + public override void Reset(); // 0x10321930 +} + +// Namespace: System.Text +[Serializable] +public abstract class Encoding : ICloneable // TypeDefIndex: 1538 +{ + // Fields + internal int codePage; // 0x08 + internal int windows_code_page; // 0x0C + private bool is_readonly; // 0x10 + private DecoderFallback decoder_fallback; // 0x14 + private EncoderFallback encoder_fallback; // 0x18 + private static Assembly i18nAssembly; // 0x00 + private static bool i18nDisabled; // 0x04 + private static EncodingInfo[] encoding_infos; // 0x08 + private static readonly object[] encodings; // 0x0C + internal string body_name; // 0x1C + internal string encoding_name; // 0x20 + internal string header_name; // 0x24 + internal bool is_mail_news_display; // 0x28 + internal bool is_mail_news_save; // 0x00 + internal bool is_browser_save; // 0x00 + internal bool is_browser_display; // 0x00 + internal string web_name; // 0x00 + private static Encoding asciiEncoding; // 0x10 + private static Encoding bigEndianEncoding; // 0x14 + private static Encoding defaultEncoding; // 0x18 + private static Encoding utf7Encoding; // 0x1C + private static Encoding utf8EncodingWithMarkers; // 0x20 + private static Encoding utf8EncodingWithoutMarkers; // 0x24 + private static Encoding unicodeEncoding; // 0x28 + private static Encoding isoLatin1Encoding; // 0x2C + private static Encoding utf8EncodingUnsafe; // 0x30 + private static Encoding utf32Encoding; // 0x34 + private static Encoding bigEndianUTF32Encoding; // 0x38 + private static readonly object lockobj; // 0x3C + + // Properties + public bool IsReadOnly { get; } // 0x101137C0 + public virtual bool IsSingleByte { get; } // 0x100EFBF0 + public DecoderFallback DecoderFallback { get; set; } // 0x100EF0C0 0x10327050 + public EncoderFallback EncoderFallback { get; set; } // 0x100EE580 0x103270E0 + public virtual string BodyName { get; } // 0x100F85F0 + public virtual int CodePage { get; } // 0x100BF0C0 + public virtual string EncodingName { get; } // 0x100EACD0 + public virtual string HeaderName { get; } // 0x100EAD50 + public virtual bool IsBrowserDisplay { get; } // 0x10326250 + public virtual bool IsBrowserSave { get; } // 0x10326260 + public virtual bool IsMailNewsDisplay { get; } // 0x10326270 + public virtual bool IsMailNewsSave { get; } // 0x10326280 + public virtual string WebName { get; } // 0x100EB200 + public virtual int WindowsCodePage { get; } // 0x100C5B30 + public static Encoding ASCII { get; } // 0x103255D0 + public static Encoding BigEndianUnicode { get; } // 0x10325A80 + public static Encoding Default { get; } // 0x10325C70 + private static Encoding ISOLatin1 { get; } // 0x10326020 + public static Encoding UTF7 { get; } // 0x10326480 + public static Encoding UTF8 { get; } // 0x10326C70 + internal static Encoding UTF8Unmarked { get; } // 0x10326A80 + internal static Encoding UTF8UnmarkedUnsafe { get; } // 0x103267E0 + public static Encoding Unicode { get; } // 0x10326E60 + public static Encoding UTF32 { get; } // 0x10326290 + internal static Encoding BigEndianUTF32 { get; } // 0x10325890 + + // Methods + protected void .ctor(); // 0x103255B0 + protected void .ctor(int codePage); // 0x10325410 + private static void .cctor(); // 0x10324550 + internal static string _(string arg); // 0x100F7810 + internal void SetFallbackInternal(EncoderFallback e, DecoderFallback d); // 0x10324530 + public static byte[] Convert(Encoding srcEncoding, Encoding dstEncoding, byte[] bytes); // 0x103223D0 + public static byte[] Convert(Encoding srcEncoding, Encoding dstEncoding, byte[] bytes, int index, int count); // 0x103224A0 + public override bool Equals(object value); // 0x10322650 + public abstract int GetByteCount(char[] chars, int index, int count); + public virtual int GetByteCount(string s); // 0x103227A0 + public virtual int GetByteCount(char[] chars); // 0x10322720 + public abstract int GetBytes(char[] chars, int charIndex, int charCount, byte[] bytes, int byteIndex); + public virtual int GetBytes(string s, int charIndex, int charCount, byte[] bytes, int byteIndex); // 0x103229B0 + public virtual byte[] GetBytes(string s); // 0x10322B90 + public virtual byte[] GetBytes(char[] chars, int index, int count); // 0x10322E50 + public virtual byte[] GetBytes(char[] chars); // 0x10322930 + public abstract int GetCharCount(byte[] bytes, int index, int count); + public virtual int GetCharCount(byte[] bytes); // 0x10322ED0 + public abstract int GetChars(byte[] bytes, int byteIndex, int byteCount, char[] chars, int charIndex); + public virtual char[] GetChars(byte[] bytes, int index, int count); // 0x103232B0 + public virtual char[] GetChars(byte[] bytes); // 0x10323200 + public virtual Decoder GetDecoder(); // 0x1031F6D0 + public virtual Encoder GetEncoder(); // 0x10323330 + private static object InvokeI18N(string name, object[] args); // 0x10324020 + public static Encoding GetEncoding(int codepage); // 0x10323760 + public virtual object Clone(); // 0x10322350 + public static Encoding GetEncoding(int codepage, EncoderFallback encoderFallback, DecoderFallback decoderFallback); // 0x10323C50 + public static Encoding GetEncoding(string name, EncoderFallback encoderFallback, DecoderFallback decoderFallback); // 0x10323B60 + public static EncodingInfo[] GetEncodings(); // 0x10323D40 + public bool IsAlwaysNormalized(); // 0x10324480 + public virtual bool IsAlwaysNormalized(NormalizationForm form); // 0x103244A0 + public static Encoding GetEncoding(string name); // 0x103233C0 + public override int GetHashCode(); // 0x10323EC0 + public abstract int GetMaxByteCount(int charCount); + public abstract int GetMaxCharCount(int byteCount); + public virtual byte[] GetPreamble(); // 0x10323F30 + public virtual string GetString(byte[] bytes, int index, int count); // 0x10323FE0 + public virtual string GetString(byte[] bytes); // 0x10323F60 + internal static string InternalCodePage(int code_page); // 0x10324010 + public virtual int GetByteCount(void * chars, int count); // 0x10322830 + public virtual int GetCharCount(void * bytes, int count); // 0x10322F50 + public virtual int GetChars(void * bytes, int byteCount, void * chars, int charCount); // 0x10323050 + public virtual int GetBytes(void * chars, int charCount, void * bytes, int byteCount); // 0x10322CA0 +} + +// Namespace: +private sealed class ForwardingDecoder : Decoder // TypeDefIndex: 1539 +{ + // Fields + private Encoding encoding; // 0x10 + + // Methods + public void .ctor(Encoding enc); // 0x103271F0 + public override int GetCharCount(byte[] bytes, int index, int count); // 0x10327170 + public override int GetChars(byte[] bytes, int byteIndex, int byteCount, char[] chars, int charIndex); // 0x103271B0 +} + +// Namespace: +private sealed class ForwardingEncoder : Encoder // TypeDefIndex: 1540 +{ + // Fields + private Encoding encoding; // 0x10 + + // Methods + public void .ctor(Encoding enc); // 0x103272B0 + public override int GetByteCount(char[] chars, int index, int count, bool flush); // 0x10327230 + public override int GetBytes(char[] chars, int charIndex, int charCount, byte[] bytes, int byteCount, bool flush); // 0x10327270 +} + +// Namespace: System.Text +[Serializable] +public sealed class EncodingInfo // TypeDefIndex: 1541 +{ + // Fields + private readonly int codepage; // 0x08 + private Encoding encoding; // 0x0C + + // Properties + public int CodePage { get; } // 0x100BF0C0 + public string DisplayName { get; } // 0x103222C0 + public string Name { get; } // 0x103222C0 + + // Methods + internal void .ctor(int cp); // 0x10113500 + public override bool Equals(object value); // 0x10322210 + public override int GetHashCode(); // 0x100BF0C0 + public Encoding GetEncoding(); // 0x10322260 +} + +// Namespace: System.Text +[Serializable] +internal class Latin1Encoding : Encoding // TypeDefIndex: 1542 +{ + // Fields + internal const int ISOLATIN_CODE_PAGE = 28591; // 0x00 + + // Properties + public override bool IsSingleByte { get; } // 0x100E5880 + public override string BodyName { get; } // 0x10328500 + public override string EncodingName { get; } // 0x10328530 + public override string HeaderName { get; } // 0x10328560 + public override bool IsBrowserDisplay { get; } // 0x100E5880 + public override bool IsBrowserSave { get; } // 0x100E5880 + public override bool IsMailNewsDisplay { get; } // 0x100E5880 + public override bool IsMailNewsSave { get; } // 0x100E5880 + public override string WebName { get; } // 0x10328590 + + // Methods + public void .ctor(); // 0x103284A0 + public override bool IsAlwaysNormalized(NormalizationForm form); // 0x10328490 + public override int GetByteCount(char[] chars, int index, int count); // 0x10327370 + public override int GetByteCount(string s); // 0x10327310 + public override int GetBytes(char[] chars, int charIndex, int charCount, byte[] bytes, int byteIndex); // 0x10327D20 + private int GetBytes(char[] chars, int charIndex, int charCount, byte[] bytes, int byteIndex, EncoderFallbackBuffer buffer, char[] fallback_chars); // 0x10327490 + public override int GetBytes(string s, int charIndex, int charCount, byte[] bytes, int byteIndex); // 0x10327D60 + private int GetBytes(string s, int charIndex, int charCount, byte[] bytes, int byteIndex, EncoderFallbackBuffer buffer, char[] fallback_chars); // 0x103278E0 + public override int GetCharCount(byte[] bytes, int index, int count); // 0x10327DA0 + public override int GetChars(byte[] bytes, int byteIndex, int byteCount, char[] chars, int charIndex); // 0x10327EC0 + public override int GetMaxByteCount(int charCount); // 0x10328130 + public override int GetMaxCharCount(int byteCount); // 0x103281C0 + public override string GetString(byte[] bytes, int index, int count); // 0x10328250 + public override string GetString(byte[] bytes); // 0x10328410 +} + +// Namespace: System.Text +[Serializable] +internal sealed class MLangCodePageEncoding : ISerializable, IObjectReference // TypeDefIndex: 1543 +{ + // Fields + private int codePage; // 0x08 + private bool isReadOnly; // 0x0C + private EncoderFallback encoderFallback; // 0x10 + private DecoderFallback decoderFallback; // 0x14 + private Encoding realObject; // 0x18 + + // Methods + private void .ctor(SerializationInfo info, StreamingContext context); // 0x103286D0 + public void GetObjectData(SerializationInfo info, StreamingContext context); // 0x103285C0 + public object GetRealObject(StreamingContext context); // 0x10328610 +} + +// Namespace: +[Serializable] +private sealed class MLangEncoder : ISerializable, IObjectReference // TypeDefIndex: 1544 +{ + // Fields + private Encoding encoding; // 0x08 + private Encoder realObject; // 0x0C + + // Methods + private void .ctor(SerializationInfo info, StreamingContext context); // 0x10328B50 + public void GetObjectData(SerializationInfo info, StreamingContext context); // 0x10328AC0 + public object GetRealObject(StreamingContext context); // 0x10328B10 +} + +// Namespace: +[Serializable] +private sealed class MLangDecoder : ISerializable, IObjectReference // TypeDefIndex: 1545 +{ + // Fields + private Encoding encoding; // 0x08 + private Decoder realObject; // 0x0C + + // Methods + private void .ctor(SerializationInfo info, StreamingContext context); // 0x103289C0 + public void GetObjectData(SerializationInfo info, StreamingContext context); // 0x10328970 + public object GetRealObject(StreamingContext context); // 0x10321030 +} + +// Namespace: System.Text +public enum NormalizationForm // TypeDefIndex: 1546 +{ + FormC = 1, + FormD = 2, + FormKC = 5, + FormKD = 6 +} + +// Namespace: System.Text +[Serializable] +public sealed class StringBuilder : ISerializable // TypeDefIndex: 1547 +{ + // Fields + private const int constDefaultCapacity = 16; // 0x00 + private int _length; // 0x08 + private string _str; // 0x0C + private string _cached_str; // 0x10 + private int _maxCapacity; // 0x14 + + // Properties + public int MaxCapacity { get; } // 0x100EF0C0 + public int Capacity { get; set; } // 0x1032AEF0 0x1032AFA0 + public int Length { get; set; } // 0x100BF0C0 0x1032B0E0 + public char Chars { get; set; } // 0x1032AF20 0x1032B050 + + // Methods + public void .ctor(string value, int startIndex, int length, int capacity); // 0x1032AA40 + private void .ctor(string value, int startIndex, int length, int capacity, int maxCapacity); // 0x1032AA70 + public void .ctor(); // 0x1032A850 + public void .ctor(int capacity); // 0x1032A9D0 + public void .ctor(int capacity, int maxCapacity); // 0x1032AD20 + public void .ctor(string value); // 0x1032A950 + public void .ctor(string value, int capacity); // 0x1032A8D0 + private void .ctor(SerializationInfo info, StreamingContext context); // 0x1032AD90 + private void System.Runtime.Serialization.ISerializable.GetObjectData(SerializationInfo info, StreamingContext context); // 0x1032A660 + public override string ToString(); // 0x1032A710 + public string ToString(int startIndex, int length); // 0x1032A7B0 + public int EnsureCapacity(int capacity); // 0x10329910 + public bool Equals(StringBuilder sb); // 0x103299A0 + public StringBuilder Remove(int startIndex, int length); // 0x1032A170 + public StringBuilder Replace(char oldChar, char newChar); // 0x1032A590 + public StringBuilder Replace(char oldChar, char newChar, int startIndex, int count); // 0x1032A4A0 + public StringBuilder Replace(string oldValue, string newValue); // 0x1032A570 + public StringBuilder Replace(string oldValue, string newValue, int startIndex, int count); // 0x1032A250 + public StringBuilder Append(char[] value); // 0x10329400 + public StringBuilder Append(string value); // 0x103292C0 + public StringBuilder Append(bool value); // 0x103297D0 + public StringBuilder Append(byte value); // 0x103297B0 + public StringBuilder Append(Decimal value); // 0x103293E0 + public StringBuilder Append(double value); // 0x103293C0 + public StringBuilder Append(short value); // 0x10329220 + public StringBuilder Append(int value); // 0x10329650 + public StringBuilder Append(long value); // 0x103292A0 + public StringBuilder Append(object value); // 0x10329260 + public StringBuilder Append(sbyte value); // 0x103294C0 + public StringBuilder Append(float value); // 0x10329240 + public StringBuilder Append(ushort value); // 0x103291A0 + public StringBuilder Append(uint value); // 0x10329610 + public StringBuilder Append(ulong value); // 0x10329630 + public StringBuilder Append(char value); // 0x103291C0 + public StringBuilder Append(char value, int repeatCount); // 0x10329100 + public StringBuilder Append(char[] value, int startIndex, int charCount); // 0x103294E0 + public StringBuilder Append(string value, int startIndex, int count); // 0x10329670 + public StringBuilder AppendLine(); // 0x103290A0 + public StringBuilder AppendLine(string value); // 0x103290C0 + public StringBuilder AppendFormat(string format, object[] args); // 0x10329040 + public StringBuilder AppendFormat(IFormatProvider provider, string format, object[] args); // 0x10328D30 + public StringBuilder AppendFormat(string format, object arg0); // 0x10328C50 + public StringBuilder AppendFormat(string format, object arg0, object arg1); // 0x10328F10 + public StringBuilder AppendFormat(string format, object arg0, object arg1, object arg2); // 0x10328D90 + public StringBuilder Insert(int index, char[] value); // 0x10329CF0 + public StringBuilder Insert(int index, string value); // 0x10329E40 + public StringBuilder Insert(int index, bool value); // 0x10329F90 + public StringBuilder Insert(int index, byte value); // 0x10329F60 + public StringBuilder Insert(int index, char value); // 0x10329AE0 + public StringBuilder Insert(int index, Decimal value); // 0x10329D20 + public StringBuilder Insert(int index, double value); // 0x10329A20 + public StringBuilder Insert(int index, short value); // 0x10329F30 + public StringBuilder Insert(int index, int value); // 0x10329D50 + public StringBuilder Insert(int index, long value); // 0x10329FC0 + public StringBuilder Insert(int index, object value); // 0x10329FF0 + public StringBuilder Insert(int index, sbyte value); // 0x10329A80 + public StringBuilder Insert(int index, float value); // 0x10329BC0 + public StringBuilder Insert(int index, ushort value); // 0x10329A50 + public StringBuilder Insert(int index, uint value); // 0x10329CC0 + public StringBuilder Insert(int index, ulong value); // 0x10329AB0 + public StringBuilder Insert(int index, string value, int count); // 0x10329D80 + public StringBuilder Insert(int index, char[] value, int startIndex, int charCount); // 0x10329BF0 + private void InternalEnsureCapacity(int size); // 0x1032A030 + public void CopyTo(int sourceIndex, char[] destination, int destinationIndex, int count); // 0x103297F0 +} + +// Namespace: System.Text +[Serializable] +internal sealed class SurrogateEncoder : ISerializable, IObjectReference // TypeDefIndex: 1548 +{ + // Fields + private Encoding encoding; // 0x08 + private Encoder realObject; // 0x0C + + // Methods + private void .ctor(SerializationInfo info, StreamingContext context); // 0x1032B850 + public void GetObjectData(SerializationInfo info, StreamingContext context); // 0x1032B800 + public object GetRealObject(StreamingContext context); // 0x10328B10 +} + +// Namespace: System.Text +[Serializable] +public sealed class UTF32Encoding : Encoding // TypeDefIndex: 1549 +{ + // Fields + internal const int UTF32_CODE_PAGE = 12000; // 0x00 + internal const int BIG_UTF32_CODE_PAGE = 12001; // 0x00 + private bool bigEndian; // 0x30 + private bool byteOrderMark; // 0x31 + + // Methods + public void .ctor(); // 0x1032D1E0 + public void .ctor(bool bigEndian, bool byteOrderMark); // 0x1032D1C0 + public void .ctor(bool bigEndian, bool byteOrderMark, bool throwOnInvalidCharacters); // 0x1032CFB0 + public override int GetByteCount(char[] chars, int index, int count); // 0x1032C200 + public override int GetBytes(char[] chars, int charIndex, int charCount, byte[] bytes, int byteIndex); // 0x1032C3F0 + public override int GetCharCount(byte[] bytes, int index, int count); // 0x1032C850 + public override int GetChars(byte[] bytes, int byteIndex, int byteCount, char[] chars, int charIndex); // 0x1032C980 + public override int GetMaxByteCount(int charCount); // 0x1032CDB0 + public override int GetMaxCharCount(int byteCount); // 0x1032CE40 + public override Decoder GetDecoder(); // 0x1032CD20 + public override byte[] GetPreamble(); // 0x1032CEE0 + public override bool Equals(object value); // 0x1032C050 + public override int GetHashCode(); // 0x1032CD80 + public override int GetByteCount(void * chars, int count); // 0x1032C1A0 + public override int GetByteCount(string s); // 0x1032C190 + public override int GetBytes(void * chars, int charCount, void * bytes, int byteCount); // 0x1032C830 + public override int GetBytes(string s, int charIndex, int charCount, byte[] bytes, int byteIndex); // 0x1032C820 + public override int GetCharCount(void * bytes, int count); // 0x1032C840 + public override int GetChars(void * bytes, int byteCount, void * chars, int charCount); // 0x1032C970 + public override string GetString(byte[] bytes, int index, int count); // 0x10323FE0 + public override Encoder GetEncoder(); // 0x1031F740 +} + +// Namespace: +private sealed class UTF32Decoder : Decoder // TypeDefIndex: 1550 +{ + // Fields + private bool bigEndian; // 0x10 + private int leftOverByte; // 0x14 + private int leftOverLength; // 0x18 + + // Methods + public void .ctor(bool bigEndian); // 0x1032C020 + public override int GetCharCount(byte[] bytes, int index, int count); // 0x1032B9F0 + public override int GetChars(byte[] bytes, int byteIndex, int byteCount, char[] chars, int charIndex); // 0x1032BB40 +} + +// Namespace: System.Text +[Serializable] +public class UTF7Encoding : Encoding // TypeDefIndex: 1551 +{ + // Fields + internal const int UTF7_CODE_PAGE = 65000; // 0x00 + private const string base64Chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"; // 0x00 + private bool allowOptionals; // 0x30 + private static readonly byte[] encodingRules; // 0x00 + private static readonly sbyte[] base64Values; // 0x04 + + // Methods + public void .ctor(); // 0x1032EA60 + public void .ctor(bool allowOptionals); // 0x1032E8D0 + private static void .cctor(); // 0x1032E850 + public override int GetHashCode(); // 0x1032D7A0 + public override bool Equals(object value); // 0x1032D410 + private static int InternalGetByteCount(char[] chars, int index, int count, bool flush, int leftOver, bool isInShifted, bool allowOptionals); // 0x1032D900 + public override int GetByteCount(char[] chars, int index, int count); // 0x1032D4E0 + private static int InternalGetBytes(char[] chars, int charIndex, int charCount, byte[] bytes, int byteIndex, bool flush, int leftOver, bool isInShifted, bool allowOptionals); // 0x1032DBB0 + public override int GetBytes(char[] chars, int charIndex, int charCount, byte[] bytes, int byteIndex); // 0x1032D550 + private static int InternalGetCharCount(byte[] bytes, int index, int count, int leftOver); // 0x1032E110 + public override int GetCharCount(byte[] bytes, int index, int count); // 0x1032D5D0 + private static int InternalGetChars(byte[] bytes, int byteIndex, int byteCount, char[] chars, int charIndex, int leftOver); // 0x1032E360 + public override int GetChars(byte[] bytes, int byteIndex, int byteCount, char[] chars, int charIndex); // 0x1032D630 + public override int GetMaxByteCount(int charCount); // 0x1032D7C0 + public override int GetMaxCharCount(int byteCount); // 0x1032D870 + public override Decoder GetDecoder(); // 0x1032D700 + public override Encoder GetEncoder(); // 0x1032D750 + public override int GetByteCount(void * chars, int count); // 0x10322830 + public override int GetByteCount(string s); // 0x1032C190 + public override int GetBytes(void * chars, int charCount, void * bytes, int byteCount); // 0x1032C830 + public override int GetBytes(string s, int charIndex, int charCount, byte[] bytes, int byteIndex); // 0x1032C820 + public override int GetCharCount(void * bytes, int count); // 0x1032C840 + public override int GetChars(void * bytes, int byteCount, void * chars, int charCount); // 0x1032C970 + public override string GetString(byte[] bytes, int index, int count); // 0x10323FE0 +} + +// Namespace: +private sealed class UTF7Decoder : Decoder // TypeDefIndex: 1552 +{ + // Fields + private int leftOver; // 0x10 + + // Methods + public void .ctor(); // 0x1032D2D0 + public override int GetCharCount(byte[] bytes, int index, int count); // 0x1032D200 + public override int GetChars(byte[] bytes, int byteIndex, int byteCount, char[] chars, int charIndex); // 0x1032D260 +} + +// Namespace: +private sealed class UTF7Encoder : Encoder // TypeDefIndex: 1553 +{ + // Fields + private bool allowOptionals; // 0x10 + private int leftOver; // 0x14 + private bool isInShifted; // 0x18 + + // Methods + public void .ctor(bool allowOptionals); // 0x1032D3F0 + public override int GetByteCount(char[] chars, int index, int count, bool flush); // 0x1032D2F0 + public override int GetBytes(char[] chars, int charIndex, int charCount, byte[] bytes, int byteIndex, bool flush); // 0x1032D370 +} + +// Namespace: System.Text +[Serializable] +public class UTF8Encoding : Encoding // TypeDefIndex: 1554 +{ + // Fields + internal const int UTF8_CODE_PAGE = 65001; // 0x00 + private bool emitIdentifier; // 0x30 + + // Methods + public void .ctor(); // 0x10330BC0 + public void .ctor(bool encoderShouldEmitUTF8Identifier); // 0x10330E60 + public void .ctor(bool encoderShouldEmitUTF8Identifier, bool throwOnInvalidBytes); // 0x10330BE0 + private static int InternalGetByteCount(char[] chars, int index, int count, char leftOver, bool flush); // 0x1032FB90 + private static int InternalGetByteCount(void * chars, int count, char leftOver, bool flush); // 0x1032FA60 + public override int GetByteCount(char[] chars, int index, int count); // 0x1032F2B0 + public override int GetByteCount(void * chars, int count); // 0x1032F230 + private static int InternalGetBytes(char[] chars, int charIndex, int charCount, byte[] bytes, int byteIndex, char leftOver, bool flush); // 0x1032FD00 + private static int InternalGetBytes(void * chars, int count, void * bytes, int bcount, char leftOver, bool flush); // 0x1032FF60 + public override int GetBytes(char[] chars, int charIndex, int charCount, byte[] bytes, int byteIndex); // 0x1032F620 + public override int GetBytes(string s, int charIndex, int charCount, byte[] bytes, int byteIndex); // 0x1032F3E0 + public override int GetBytes(void * chars, int charCount, void * bytes, int byteCount); // 0x1032F2E0 + private static int InternalGetCharCount(byte[] bytes, int index, int count, uint leftOverBits, uint leftOverCount, object provider, DecoderFallbackBuffer fallbackBuffer, byte[] bufferArg, bool flush); // 0x10330450 + private static int InternalGetCharCount(void * bytes, int count, uint leftOverBits, uint leftOverCount, object provider, DecoderFallbackBuffer fallbackBuffer, byte[] bufferArg, bool flush); // 0x103301D0 + private static int Fallback(object provider, DecoderFallbackBuffer buffer, byte[] bufferArg, void * bytes, long index, uint size); // 0x1032EEB0 + private static void Fallback(object provider, DecoderFallbackBuffer buffer, byte[] bufferArg, void * bytes, long byteIndex, uint size, void * chars, int charIndex); // 0x1032F060 + public override int GetCharCount(byte[] bytes, int index, int count); // 0x1032F690 + public override int GetCharCount(void * bytes, int count); // 0x1032F650 + private static int InternalGetChars(byte[] bytes, int byteIndex, int byteCount, char[] chars, int charIndex, uint leftOverBits, uint leftOverCount, object provider, DecoderFallbackBuffer fallbackBuffer, byte[] bufferArg, bool flush); // 0x103305B0 + private static int InternalGetChars(void * bytes, int byteCount, void * chars, int charCount, uint leftOverBits, uint leftOverCount, object provider, DecoderFallbackBuffer fallbackBuffer, byte[] bufferArg, bool flush); // 0x10330820 + public override int GetChars(byte[] bytes, int byteIndex, int byteCount, char[] chars, int charIndex); // 0x1032F730 + public override int GetChars(void * bytes, int byteCount, void * chars, int charCount); // 0x1032F6D0 + public override int GetMaxByteCount(int charCount); // 0x1032F890 + public override int GetMaxCharCount(int byteCount); // 0x1032F920 + public override Decoder GetDecoder(); // 0x1032F790 + public override Encoder GetEncoder(); // 0x1032F840 + public override byte[] GetPreamble(); // 0x1032F9B0 + public override bool Equals(object value); // 0x1032EDD0 + public override int GetHashCode(); // 0x1032F880 + public override int GetByteCount(string chars); // 0x1032C190 + public override string GetString(byte[] bytes, int index, int count); // 0x10323FE0 +} + +// Namespace: +[Serializable] +private class UTF8Decoder : Decoder // TypeDefIndex: 1555 +{ + // Fields + private uint leftOverBits; // 0x10 + private uint leftOverCount; // 0x14 + + // Methods + public void .ctor(DecoderFallback fallback); // 0x1032EC80 + public override int GetCharCount(byte[] bytes, int index, int count); // 0x1032EBF0 + public override int GetChars(byte[] bytes, int byteIndex, int byteCount, char[] chars, int charIndex); // 0x1032EC30 +} + +// Namespace: +[Serializable] +private class UTF8Encoder : Encoder // TypeDefIndex: 1556 +{ + // Fields + private char leftOverForCount; // 0x10 + private char leftOverForConv; // 0x12 + + // Methods + public void .ctor(bool emitIdentifier); // 0x1032EDB0 + public override int GetByteCount(char[] chars, int index, int count, bool flush); // 0x1032ED20 + public override int GetBytes(char[] chars, int charIndex, int charCount, byte[] bytes, int byteIndex, bool flush); // 0x1032ED80 + public override int GetByteCount(void * chars, int count, bool flush); // 0x1032ED00 + public override int GetBytes(void * chars, int charCount, void * bytes, int byteCount, bool flush); // 0x1032ED50 +} + +// Namespace: System.Text +[Serializable] +public class UnicodeEncoding : Encoding // TypeDefIndex: 1557 +{ + // Fields + internal const int UNICODE_CODE_PAGE = 1200; // 0x00 + internal const int BIG_UNICODE_CODE_PAGE = 1201; // 0x00 + public const int CharSize = 2; // 0x00 + private bool bigEndian; // 0x30 + private bool byteOrderMark; // 0x31 + + // Methods + public void .ctor(); // 0x10332730 + public void .ctor(bool bigEndian, bool byteOrderMark); // 0x103328D0 + public void .ctor(bool bigEndian, bool byteOrderMark, bool throwOnInvalidBytes); // 0x10332750 + public override int GetByteCount(char[] chars, int index, int count); // 0x103316A0 + public override int GetByteCount(string s); // 0x10331640 + public override int GetByteCount(void * chars, int count); // 0x103315B0 + public override int GetBytes(char[] chars, int charIndex, int charCount, byte[] bytes, int byteIndex); // 0x10331B70 + public override int GetBytes(string s, int charIndex, int charCount, byte[] bytes, int byteIndex); // 0x10331870 + public override int GetBytes(void * chars, int charCount, void * bytes, int byteCount); // 0x10331AA0 + private int GetBytesInternal(void * chars, int charCount, void * bytes, int byteCount); // 0x103317C0 + public override int GetCharCount(byte[] bytes, int index, int count); // 0x10331DA0 + public override int GetCharCount(void * bytes, int count); // 0x10331EC0 + public override int GetChars(byte[] bytes, int byteIndex, int byteCount, char[] chars, int charIndex); // 0x103320D0 + public override int GetChars(void * bytes, int byteCount, void * chars, int charCount); // 0x10332000 + public override string GetString(byte[] bytes, int index, int count); // 0x10332560 + private int GetCharsInternal(void * bytes, int byteCount, void * chars, int charCount); // 0x10331F50 + public override Encoder GetEncoder(); // 0x1031F740 + public override int GetMaxByteCount(int charCount); // 0x10332370 + public override int GetMaxCharCount(int byteCount); // 0x10332400 + public override Decoder GetDecoder(); // 0x10332310 + public override byte[] GetPreamble(); // 0x10332490 + public override bool Equals(object value); // 0x10331520 + public override int GetHashCode(); // 0x1032F880 + private static void CopyChars(void * src, void * dest, int count, bool bigEndian); // 0x10331300 +} + +// Namespace: +private sealed class UnicodeDecoder : Decoder // TypeDefIndex: 1558 +{ + // Fields + private bool bigEndian; // 0x10 + private int leftOverByte; // 0x14 + + // Methods + public void .ctor(bool bigEndian); // 0x1032C020 + public override int GetCharCount(byte[] bytes, int index, int count); // 0x10330E80 + public override int GetChars(byte[] bytes, int byteIndex, int byteCount, char[] chars, int charIndex); // 0x10330FC0 +} + +// Namespace: System.Threading +[Serializable] +public class AbandonedMutexException : SystemException // TypeDefIndex: 1559 +{ + // Fields + private Mutex mutex; // 0x34 + private int mutex_index; // 0x38 + + // Properties + public Mutex Mutex { get; } // 0x100E9ED0 + public int MutexIndex { get; } // 0x100EB210 + + // Methods + public void .ctor(); // 0x1031FCB0 + public void .ctor(string message); // 0x1031FD00 + public void .ctor(int location, WaitHandle handle); // 0x1031FC40 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x1031FB30 + public void .ctor(string message, Exception inner); // 0x1031FD30 + public void .ctor(string message, int location, WaitHandle handle); // 0x1031FB60 + public void .ctor(string message, Exception inner, int location, WaitHandle handle); // 0x1031FBD0 +} + +// Namespace: System.Threading +[Serializable] +public enum ApartmentState // TypeDefIndex: 1560 +{ + STA = 0, + MTA = 1, + Unknown = 2 +} + +// Namespace: System.Threading +internal enum AsyncFlowControlType // TypeDefIndex: 1561 +{ + None = 0, + Execution = 1, + Security = 2 +} + +// Namespace: System.Threading +public struct AsyncFlowControl : IDisposable // TypeDefIndex: 1562 +{ + // Fields + private Thread _t; // 0x08 + private AsyncFlowControlType _type; // 0x0C + + // Methods + internal void .ctor(Thread t, AsyncFlowControlType type); // 0x100075A0 + private void System.IDisposable.Dispose(); // 0x10019390 + public void Undo(); // 0x100193C0 + public override int GetHashCode(); // 0x10019330 + public override bool Equals(object obj); // 0x10019290 + public bool Equals(AsyncFlowControl obj); // 0x10019310 + public static bool op_Equality(AsyncFlowControl a, AsyncFlowControl b); // 0x10272D80 + public static bool op_Inequality(AsyncFlowControl a, AsyncFlowControl b); // 0x10272DA0 +} + +// Namespace: System.Threading +public sealed class AutoResetEvent : EventWaitHandle // TypeDefIndex: 1563 +{ + // Methods + public void .ctor(bool initialState); // 0x10272DC0 +} + +// Namespace: System.Threading +[Serializable] +public sealed class CompressedStack : ISerializable // TypeDefIndex: 1564 +{ + // Fields + private ArrayList _list; // 0x08 + + // Properties + internal IList List { get; } // 0x100BF0C0 + + // Methods + internal void .ctor(int length); // 0x10273640 + internal void .ctor(CompressedStack cs); // 0x102736A0 + public CompressedStack CreateCopy(); // 0x10272FD0 + public static CompressedStack Capture(); // 0x10272E60 + public static CompressedStack GetCompressedStack(); // 0x102732B0 + public void GetObjectData(SerializationInfo info, StreamingContext context); // 0x102733F0 + public static void Run(CompressedStack compressedStack, ContextCallback callback, object state); // 0x10273480 + internal bool Equals(CompressedStack cs); // 0x10273070 + internal bool IsEmpty(); // 0x10273450 +} + +// Namespace: System.Threading +public enum EventResetMode // TypeDefIndex: 1565 +{ + AutoReset = 0, + ManualReset = 1 +} + +// Namespace: System.Threading +public class EventWaitHandle : WaitHandle // TypeDefIndex: 1566 +{ + // Methods + private void .ctor(IntPtr handle); // 0x10273B60 + public void .ctor(bool initialState, EventResetMode mode); // 0x102739B0 + public void .ctor(bool initialState, EventResetMode mode, string name); // 0x10273BD0 + public void .ctor(bool initialState, EventResetMode mode, string name, out bool createdNew); // 0x10273A90 + private bool IsManualReset(EventResetMode mode); // 0x102738F0 + public bool Reset(); // 0x10273950 + public bool Set(); // 0x10273980 +} + +// Namespace: System.Threading +[Serializable] +public sealed class ExecutionContext : ISerializable // TypeDefIndex: 1567 +{ + // Fields + private SecurityContext _sc; // 0x08 + private bool _suppressFlow; // 0x0C + private bool _capture; // 0x0D + + // Properties + internal SecurityContext SecurityContext { get; set; } // 0x10274280 0x100EB270 + internal bool FlowSuppressed { get; set; } // 0x100F8910 0x1016CBD0 + + // Methods + internal void .ctor(); // 0x100BF000 + internal void .ctor(ExecutionContext ec); // 0x10274200 + internal void .ctor(SerializationInfo info, StreamingContext context); // 0x102741A0 + public static ExecutionContext Capture(); // 0x10273CB0 + public ExecutionContext CreateCopy(); // 0x10273DC0 + public void GetObjectData(SerializationInfo info, StreamingContext context); // 0x10273E40 + public static bool IsFlowSuppressed(); // 0x10273EC0 + public static void RestoreFlow(); // 0x10273F60 + public static void Run(ExecutionContext executionContext, ContextCallback callback, object state); // 0x10274030 + public static AsyncFlowControl SuppressFlow(); // 0x102740F0 +} + +// Namespace: System.Threading +public class HostExecutionContext // TypeDefIndex: 1568 +{ + // Fields + private object _state; // 0x08 + + // Properties + protected internal object State { get; set; } // 0x100BF0C0 0x100EB270 + + // Methods + public void .ctor(); // 0x10274410 + public void .ctor(object state); // 0x10113500 + public virtual HostExecutionContext CreateCopy(); // 0x102743C0 +} + +// Namespace: System.Threading +public class HostExecutionContextManager // TypeDefIndex: 1569 +{ + // Methods + public void .ctor(); // 0x100BF000 + public virtual HostExecutionContext Capture(); // 0x102742D0 + public virtual void Revert(object previousState); // 0x10274320 + public virtual object SetHostExecutionContext(HostExecutionContext hostExecutionContext); // 0x10274370 +} + +// Namespace: System.Threading +public static class Interlocked // TypeDefIndex: 1570 +{ + // Methods + public static int CompareExchange(int location1, int value, int comparand); // 0x10274750 + public static object CompareExchange(object location1, object value, object comparand); // 0x10274750 + public static float CompareExchange(float location1, float value, float comparand); // 0x102747A0 + public static int Decrement(int location); // 0x102747F0 + public static long Decrement(long location); // 0x10274800 + public static int Increment(int location); // 0x102748A0 + public static long Increment(long location); // 0x10274890 + public static int Exchange(int location1, int value); // 0x10274810 + public static object Exchange(object location1, object value); // 0x10274810 + public static float Exchange(float location1, float value); // 0x10274870 + public static long CompareExchange(long location1, long value, long comparand); // 0x102747D0 + public static IntPtr CompareExchange(IntPtr location1, IntPtr value, IntPtr comparand); // 0x10274750 + public static double CompareExchange(double location1, double value, double comparand); // 0x10274770 + public static T CompareExchange(T location1, T value, T comparand); + public static long Exchange(long location1, long value); // 0x10274850 + public static IntPtr Exchange(IntPtr location1, IntPtr value); // 0x10274810 + public static double Exchange(double location1, double value); // 0x10274830 + public static T Exchange(T location1, T value); + public static long Read(long location); // 0x102748B0 + public static int Add(int location1, int value); // 0x10274710 + public static long Add(long location1, long value); // 0x10274730 +} + +// Namespace: System.Threading +public struct LockCookie // TypeDefIndex: 1571 +{ + // Fields + internal int ThreadId; // 0x08 + internal int ReaderLocks; // 0x0C + internal int WriterLocks; // 0x10 + + // Methods + internal void .ctor(int thread_id); // 0x10019530 + internal void .ctor(int thread_id, int reader_locks, int writer_locks); // 0x100074C0 + public override int GetHashCode(); // 0x100194C0 + public bool Equals(LockCookie obj); // 0x10019410 + public override bool Equals(object obj); // 0x10019440 + public static bool op_Equality(LockCookie a, LockCookie b); // 0x102748C0 + public static bool op_Inequality(LockCookie a, LockCookie b); // 0x102748F0 +} + +// Namespace: System.Threading +internal class LockQueue // TypeDefIndex: 1572 +{ + // Fields + private ReaderWriterLock rwlock; // 0x08 + private int lockCount; // 0x0C + + // Properties + public bool IsEmpty { get; } // 0x10274BE0 + + // Methods + public void .ctor(ReaderWriterLock rwlock); // 0x10113500 + public bool Wait(int timeout); // 0x10274AA0 + public void Pulse(); // 0x102749E0 + public void PulseAll(); // 0x10274920 +} + +// Namespace: System.Threading +public sealed class ManualResetEvent : EventWaitHandle // TypeDefIndex: 1573 +{ + // Methods + public void .ctor(bool initialState); // 0x10274C20 +} + +// Namespace: System.Threading +public static class Monitor // TypeDefIndex: 1574 +{ + // Methods + private static bool Monitor_try_enter(object obj, int ms); // 0x10274D10 + public static void Enter(object obj); // 0x10274CC0 + public static void Exit(object obj); // 0x10274CD0 + private static void Monitor_pulse(object obj); // 0x10274CF0 + private static bool Monitor_test_synchronised(object obj); // 0x10274D00 + public static void Pulse(object obj); // 0x10274DF0 + private static void Monitor_pulse_all(object obj); // 0x10274CE0 + public static void PulseAll(object obj); // 0x10274D50 + public static bool TryEnter(object obj); // 0x10275000 + public static bool TryEnter(object obj, int millisecondsTimeout); // 0x10274F30 + public static bool TryEnter(object obj, TimeSpan timeout); // 0x10274E90 + private static bool Monitor_wait(object obj, int ms); // 0x10274D30 + public static bool Wait(object obj); // 0x10275430 + public static bool Wait(object obj, int millisecondsTimeout); // 0x102751D0 + public static bool Wait(object obj, TimeSpan timeout); // 0x102752B0 + public static bool Wait(object obj, int millisecondsTimeout, bool exitContext); // 0x10275350 + public static bool Wait(object obj, TimeSpan timeout, bool exitContext); // 0x10275070 +} + +// Namespace: System.Threading +public sealed class Mutex : WaitHandle // TypeDefIndex: 1575 +{ + // Methods + public void .ctor(); // 0x102755F0 + public void .ctor(bool initiallyOwned); // 0x10275670 + public void .ctor(bool initiallyOwned, string name); // 0x10275570 + public void .ctor(bool initiallyOwned, string name, out bool createdNew); // 0x10275500 + private static IntPtr CreateMutex_internal(bool initiallyOwned, string name, out bool created); // 0x10275450 + private static bool ReleaseMutex_internal(IntPtr handle); // 0x10275470 + public void ReleaseMutex(); // 0x10275480 +} + +// Namespace: System.Threading +internal sealed class NativeEventCalls // TypeDefIndex: 1576 +{ + // Methods + public void .ctor(); // 0x100BF000 + public static IntPtr CreateEvent_internal(bool manual, bool initial, string name, out bool created); // 0x10275700 + public static bool SetEvent_internal(IntPtr handle); // 0x10275730 + public static bool ResetEvent_internal(IntPtr handle); // 0x10275720 + public static void CloseEvent_internal(IntPtr handle); // 0x102756F0 +} + +// Namespace: System.Threading +public struct NativeOverlapped // TypeDefIndex: 1577 +{ + // Fields + public IntPtr EventHandle; // 0x08 + public IntPtr InternalHigh; // 0x0C + public IntPtr InternalLow; // 0x10 + public int OffsetHigh; // 0x14 + public int OffsetLow; // 0x18 + internal int Handle1; // 0x1C + internal int Handle2; // 0x20 + +} + +// Namespace: System.Threading +public class Overlapped // TypeDefIndex: 1578 +{ + // Fields + private IAsyncResult ares; // 0x08 + private int offsetL; // 0x0C + private int offsetH; // 0x10 + private int evt; // 0x14 + private IntPtr evt_ptr; // 0x18 + + // Properties + public IAsyncResult AsyncResult { get; set; } // 0x100BF0C0 0x100EB270 + public int EventHandle { get; set; } // 0x100EF0C0 0x10127B00 + public IntPtr EventHandleIntPtr { get; set; } // 0x100EE580 0x10113F40 + public int OffsetHigh { get; set; } // 0x100BFC20 0x100C5B40 + public int OffsetLow { get; set; } // 0x100C5B30 0x100C5B50 + + // Methods + public void .ctor(); // 0x100BF000 + public void .ctor(int offsetLo, int offsetHi, int hEvent, IAsyncResult ar); // 0x10275A20 + public void .ctor(int offsetLo, int offsetHi, IntPtr hEvent, IAsyncResult ar); // 0x10275A50 + public static void Free(void * nativeOverlappedPtr); // 0x10275740 + public static Overlapped Unpack(void * nativeOverlappedPtr); // 0x10275960 + public void * Pack(IOCompletionCallback iocb); // 0x102758A0 + public void * Pack(IOCompletionCallback iocb, object userData); // 0x102757F0 + public void * UnsafePack(IOCompletionCallback iocb); // 0x102758A0 + public void * UnsafePack(IOCompletionCallback iocb, object userData); // 0x102757F0 +} + +// Namespace: System.Threading +public sealed class ReaderWriterLock : CriticalFinalizerObject // TypeDefIndex: 1579 +{ + // Fields + private int seq_num; // 0x08 + private int state; // 0x0C + private int readers; // 0x10 + private LockQueue writer_queue; // 0x14 + private Hashtable reader_locks; // 0x18 + private int writer_lock_owner; // 0x1C + + // Properties + public bool IsReaderLockHeld { get; } // 0x10277650 + public bool IsWriterLockHeld { get; } // 0x102777A0 + public int WriterSeqNum { get; } // 0x102778D0 + + // Methods + public void .ctor(); // 0x102775D0 + protected override void Finalize(); // 0x101A8690 + public void AcquireReaderLock(int millisecondsTimeout); // 0x102766B0 + private void AcquireReaderLock(int millisecondsTimeout, int initialLockCount); // 0x10276300 + public void AcquireReaderLock(TimeSpan timeout); // 0x102766D0 + public void AcquireWriterLock(int millisecondsTimeout); // 0x10276700 + private void AcquireWriterLock(int millisecondsTimeout, int initialLockCount); // 0x10276750 + public void AcquireWriterLock(TimeSpan timeout); // 0x10276720 + public bool AnyWritersSince(int seqNum); // 0x10276910 + public void DowngradeFromWriterLock(LockCookie lockCookie); // 0x102769D0 + public LockCookie ReleaseLock(); // 0x10276D20 + public void ReleaseReaderLock(); // 0x10276E40 + private void ReleaseReaderLock(int currentCount, int releaseCount); // 0x10277010 + public void ReleaseWriterLock(); // 0x102771B0 + private void ReleaseWriterLock(int releaseCount); // 0x10277150 + public void RestoreLock(LockCookie lockCookie); // 0x10277320 + public LockCookie UpgradeToWriterLock(int millisecondsTimeout); // 0x10277450 + public LockCookie UpgradeToWriterLock(TimeSpan timeout); // 0x10277410 + private LockCookie GetLockCookie(); // 0x10276B90 + private bool HasWriterLock(); // 0x10276CB0 + private int CheckTimeout(TimeSpan timeout); // 0x10276950 +} + +// Namespace: System.Threading +public sealed class RegisteredWaitHandle : MarshalByRefObject // TypeDefIndex: 1580 +{ + // Fields + private WaitHandle _waitObject; // 0x0C + private WaitOrTimerCallback _callback; // 0x10 + private TimeSpan _timeout; // 0x18 + private object _state; // 0x20 + private bool _executeOnlyOnce; // 0x24 + private WaitHandle _finalEvent; // 0x28 + private ManualResetEvent _cancelEvent; // 0x2C + private int _callsInProcess; // 0x30 + private bool _unregistered; // 0x34 + + // Methods + internal void .ctor(WaitHandle waitObject, WaitOrTimerCallback callback, object state, TimeSpan timeout, bool executeOnlyOnce); // 0x10277ED0 + internal void Wait(object state); // 0x10277BA0 + private void DoCallBack(object timedOut); // 0x10277910 + public bool Unregister(WaitHandle waitObject); // 0x10277A80 +} + +// Namespace: System.Threading +public class SynchronizationContext // TypeDefIndex: 1581 +{ + // Fields + private bool notification_required; // 0x08 + private static SynchronizationContext currentContext; // 0x80000000 + + // Properties + public static SynchronizationContext Current { get; } // 0x10278F20 + + // Methods + public void .ctor(); // 0x100BF000 + internal void .ctor(SynchronizationContext context); // 0x10278EE0 + public virtual SynchronizationContext CreateCopy(); // 0x10278CB0 + public bool IsWaitNotificationRequired(); // 0x100EA020 + public virtual void OperationCompleted(); // 0x100C5530 + public virtual void OperationStarted(); // 0x100C5530 + public virtual void Post(SendOrPostCallback d, object state); // 0x10278D20 + public virtual void Send(SendOrPostCallback d, object state); // 0x10278D70 + public static void SetSynchronizationContext(SynchronizationContext syncContext); // 0x10278D90 + public static void SetThreadStaticContext(SynchronizationContext syncContext); // 0x10278DD0 + protected void SetWaitNotificationRequired(); // 0x10278E10 + public virtual int Wait(IntPtr[] waitHandles, bool waitAll, int millisecondsTimeout); // 0x10278EC0 + protected static int WaitHelper(IntPtr[] waitHandles, bool waitAll, int millisecondsTimeout); // 0x10278E70 +} + +// Namespace: System.Threading +[Serializable] +public class SynchronizationLockException : SystemException // TypeDefIndex: 1582 +{ + // Methods + public void .ctor(); // 0x10278F50 + public void .ctor(string message); // 0x100E5680 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 + public void .ctor(string message, Exception innerException); // 0x100E5670 +} + +// Namespace: System.Threading +public sealed class Thread : CriticalFinalizerObject, _Thread // TypeDefIndex: 1583 +{ + // Fields + private int lock_thread_id; // 0x08 + private IntPtr system_thread_handle; // 0x0C + private object cached_culture_info; // 0x10 + private IntPtr unused0; // 0x14 + private bool threadpool_thread; // 0x18 + private IntPtr name; // 0x1C + private int name_len; // 0x20 + private ThreadState state; // 0x24 + private object abort_exc; // 0x28 + private int abort_state_handle; // 0x2C + private long thread_id; // 0x30 + private IntPtr start_notify; // 0x38 + private IntPtr stack_ptr; // 0x3C + private UIntPtr static_data; // 0x40 + private IntPtr jit_data; // 0x44 + private IntPtr lock_data; // 0x48 + private object current_appcontext; // 0x4C + private int stack_size; // 0x50 + private object start_obj; // 0x54 + private IntPtr appdomain_refs; // 0x58 + private int interruption_requested; // 0x5C + private IntPtr suspend_event; // 0x60 + private IntPtr suspended_event; // 0x64 + private IntPtr resume_event; // 0x68 + private IntPtr synch_cs; // 0x6C + private IntPtr serialized_culture_info; // 0x70 + private int serialized_culture_info_len; // 0x74 + private IntPtr serialized_ui_culture_info; // 0x78 + private int serialized_ui_culture_info_len; // 0x7C + private bool thread_dump_requested; // 0x80 + private IntPtr end_stack; // 0x84 + private bool thread_interrupt_requested; // 0x88 + private byte apartment_state; // 0x89 + private int critical_region_level; // 0x8C + private int small_id; // 0x90 + private IntPtr manage_callback; // 0x94 + private object pending_exception; // 0x98 + private ExecutionContext ec_to_set; // 0x9C + private IntPtr interrupt_on_stop; // 0xA0 + private IntPtr unused3; // 0xA4 + private IntPtr unused4; // 0xA8 + private IntPtr unused5; // 0xAC + private IntPtr unused6; // 0xB0 + private static object[] local_slots; // 0x80000000 + private static ExecutionContext _ec; // 0x80000004 + private MulticastDelegate threadstart; // 0xB4 + private int managed_id; // 0xB8 + private IPrincipal _principal; // 0xBC + private static Hashtable datastorehash; // 0x00 + private static object datastore_lock; // 0x04 + private bool in_currentculture; // 0xC0 + private static object culture_lock; // 0x08 + + // Properties + public static Context CurrentContext { get; } // 0x101D0C30 + public static IPrincipal CurrentPrincipal { get; set; } // 0x1027B7B0 0x1027C030 + public static Thread CurrentThread { get; } // 0x1027B9E0 + internal static int CurrentThreadId { get; } // 0x1027B950 + public ApartmentState ApartmentState { get; set; } // 0x1027B430 0x1027BE30 + public CultureInfo CurrentCulture { get; set; } // 0x1027B4A0 0x1027BE40 + public CultureInfo CurrentUICulture { get; set; } // 0x1027BA20 0x1027C180 + public bool IsThreadPoolThread { get; } // 0x1010C980 + internal bool IsThreadPoolThreadInternal { get; set; } // 0x1010C980 0x10197FF0 + public bool IsAlive { get; } // 0x1027BDA0 + public bool IsBackground { get; set; } // 0x1027BDC0 0x1027C340 + public string Name { get; set; } // 0x10279F80 0x1027A820 + public ThreadPriority Priority { get; set; } // 0x100C5600 0x100C5530 + public ThreadState ThreadState { get; } // 0x1027A200 + public ExecutionContext ExecutionContext { get; } // 0x1027BCD0 + public int ManagedThreadId { get; } // 0x10279ED0 + + // Methods + public void .ctor(ThreadStart start); // 0x1027B230 + public void .ctor(ThreadStart start, int maxStackSize); // 0x1027B370 + public void .ctor(ParameterizedThreadStart start); // 0x1027B1B0 + public void .ctor(ParameterizedThreadStart start, int maxStackSize); // 0x1027B2B0 + private static void .cctor(); // 0x1027B140 + private void System.Runtime.InteropServices._Thread.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x1027ADA0 + private void System.Runtime.InteropServices._Thread.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x1027AE40 + private void System.Runtime.InteropServices._Thread.GetTypeInfoCount(out uint pcTInfo); // 0x1027ADF0 + private void System.Runtime.InteropServices._Thread.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x1027AE90 + private static Thread CurrentThread_internal(); // 0x10279990 + private static void InitDataStoreHash(); // 0x1027A210 + public static LocalDataStoreSlot AllocateNamedDataSlot(string name); // 0x10279640 + public static void FreeNamedDataSlot(string name); // 0x10279B10 + public static LocalDataStoreSlot AllocateDataSlot(); // 0x10279600 + public static object GetData(LocalDataStoreSlot slot); // 0x10279E00 + public static void SetData(LocalDataStoreSlot slot, object data); // 0x1027A6A0 + internal static void FreeLocalSlotValues(int slot, bool thread_local); // 0x101B65B0 + public static LocalDataStoreSlot GetNamedDataSlot(string name); // 0x10279F90 + public static AppDomain GetDomain(); // 0x10279EC0 + public static int GetDomainID(); // 0x10279EB0 + private static void ResetAbort_internal(); // 0x1027A520 + public static void ResetAbort(); // 0x1027A530 + private static void Sleep_internal(int ms); // 0x1027A8A0 + public static void Sleep(int millisecondsTimeout); // 0x1027A8B0 + public static void Sleep(TimeSpan timeout); // 0x1027A940 + private IntPtr Thread_internal(MulticastDelegate start); // 0x1027AF10 + private void Thread_init(); // 0x1027AF00 + private CultureInfo GetCachedCurrentCulture(); // 0x10279CB0 + private byte[] GetSerializedCurrentCulture(); // 0x1027A1E0 + private void SetCachedCurrentCulture(CultureInfo culture); // 0x1027A5F0 + private void SetSerializedCurrentCulture(byte[] culture); // 0x1027A840 + private CultureInfo GetCachedCurrentUICulture(); // 0x10279CC0 + private byte[] GetSerializedCurrentUICulture(); // 0x1027A1F0 + private void SetCachedCurrentUICulture(CultureInfo culture); // 0x1027A610 + private void SetSerializedCurrentUICulture(byte[] culture); // 0x1027A860 + private string GetName_internal(); // 0x10279F80 + private void SetName_internal(string name); // 0x1027A820 + private void Abort_internal(object stateInfo); // 0x102795D0 + public void Abort(); // 0x102795F0 + public void Abort(object stateInfo); // 0x102795D0 + internal object GetAbortExceptionState(); // 0x10279C90 + private void Interrupt_internal(); // 0x1027A3B0 + public void Interrupt(); // 0x1027A3B0 + private bool Join_internal(int ms, IntPtr handle); // 0x1027A3C0 + public void Join(); // 0x1027A450 + public bool Join(int millisecondsTimeout); // 0x1027A3E0 + public bool Join(TimeSpan timeout); // 0x1027A470 + public static void MemoryBarrier(); // 0x1027A510 + private void Resume_internal(); // 0x1027A570 + public void Resume(); // 0x1027A570 + private static void SpinWait_nop(); // 0x101C4330 + public static void SpinWait(int iterations); // 0x1027A9F0 + public void Start(); // 0x1027AA70 + private void Suspend_internal(); // 0x1027AD90 + public void Suspend(); // 0x1027AD90 + private void Thread_free_internal(IntPtr handle); // 0x1027AEE0 + protected override void Finalize(); // 0x10279A50 + private void SetState(ThreadState set); // 0x1027A880 + private void ClrState(ThreadState clr); // 0x10279970 + private ThreadState GetState(); // 0x1027A200 + public static byte VolatileRead(byte address); // 0x1027B040 + public static double VolatileRead(double address); // 0x1027B060 + public static short VolatileRead(short address); // 0x1027B050 + public static int VolatileRead(int address); // 0x1027B020 + public static long VolatileRead(long address); // 0x1027B070 + public static IntPtr VolatileRead(IntPtr address); // 0x1027B020 + public static object VolatileRead(object address); // 0x1027B020 + public static sbyte VolatileRead(sbyte address); // 0x1027B040 + public static float VolatileRead(float address); // 0x1027B030 + public static ushort VolatileRead(ushort address); // 0x1027B050 + public static uint VolatileRead(uint address); // 0x1027B020 + public static ulong VolatileRead(ulong address); // 0x1027B070 + public static UIntPtr VolatileRead(UIntPtr address); // 0x1027B020 + public static void VolatileWrite(byte address, byte value); // 0x1027B080 + public static void VolatileWrite(double address, double value); // 0x1027B0C0 + public static void VolatileWrite(short address, short value); // 0x1027B120 + public static void VolatileWrite(int address, int value); // 0x1027B100 + public static void VolatileWrite(long address, long value); // 0x1027B0A0 + public static void VolatileWrite(IntPtr address, IntPtr value); // 0x1027B100 + public static void VolatileWrite(object address, object value); // 0x1027B100 + public static void VolatileWrite(sbyte address, sbyte value); // 0x1027B080 + public static void VolatileWrite(float address, float value); // 0x1027B0E0 + public static void VolatileWrite(ushort address, ushort value); // 0x1027B120 + public static void VolatileWrite(uint address, uint value); // 0x1027B100 + public static void VolatileWrite(ulong address, ulong value); // 0x1027B0A0 + public static void VolatileWrite(UIntPtr address, UIntPtr value); // 0x1027B100 + private static int GetNewManagedId(); // 0x1027A1A0 + private static int GetNewManagedId_internal(); // 0x1027A190 + public static void BeginCriticalRegion(); // 0x102798C0 + public static void EndCriticalRegion(); // 0x102799A0 + public static void BeginThreadAffinity(); // 0x100C5530 + public static void EndThreadAffinity(); // 0x100C5530 + public ApartmentState GetApartmentState(); // 0x10279CA0 + public void SetApartmentState(ApartmentState state); // 0x1027A580 + public bool TrySetApartmentState(ApartmentState state); // 0x1027AF30 + public override int GetHashCode(); // 0x10279ED0 + public void Start(object parameter); // 0x1027AA50 + public CompressedStack GetCompressedStack(); // 0x10279CD0 + public void SetCompressedStack(CompressedStack stack); // 0x1027A630 +} + +// Namespace: System.Threading +[Serializable] +public sealed class ThreadAbortException : SystemException // TypeDefIndex: 1584 +{ + // Methods + private void .ctor(); // 0x10278F90 + private void .ctor(SerializationInfo info, StreamingContext sc); // 0x100E5610 +} + +// Namespace: System.Threading +[Serializable] +public class ThreadInterruptedException : SystemException // TypeDefIndex: 1585 +{ + // Methods + public void .ctor(); // 0x10278FD0 + public void .ctor(string message); // 0x100E5680 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 + public void .ctor(string message, Exception innerException); // 0x100E5670 +} + +// Namespace: System.Threading +public static class ThreadPool // TypeDefIndex: 1586 +{ + // Methods + public static bool BindHandle(IntPtr osHandle); // 0x100E5880 + public static bool BindHandle(SafeHandle osHandle); // 0x10279010 + public static void GetMaxThreads(out int workerThreads, out int completionPortThreads); // 0x10279070 + public static void GetMinThreads(out int workerThreads, out int completionPortThreads); // 0x10279090 + public static bool SetMinThreads(int workerThreads, int completionPortThreads); // 0x10279420 + public static bool SetMaxThreads(int workerThreads, int completionPortThreads); // 0x10279400 + public static bool QueueUserWorkItem(WaitCallback callBack); // 0x10279140 + public static bool QueueUserWorkItem(WaitCallback callBack, object state); // 0x102790B0 + public static RegisteredWaitHandle RegisterWaitForSingleObject(WaitHandle waitObject, WaitOrTimerCallback callBack, object state, int millisecondsTimeOutInterval, bool executeOnlyOnce); // 0x10279160 + public static RegisteredWaitHandle RegisterWaitForSingleObject(WaitHandle waitObject, WaitOrTimerCallback callBack, object state, long millisecondsTimeOutInterval, bool executeOnlyOnce); // 0x10279190 + public static RegisteredWaitHandle RegisterWaitForSingleObject(WaitHandle waitObject, WaitOrTimerCallback callBack, object state, TimeSpan timeout, bool executeOnlyOnce); // 0x102793C0 + public static RegisteredWaitHandle RegisterWaitForSingleObject(WaitHandle waitObject, WaitOrTimerCallback callBack, object state, uint millisecondsTimeOutInterval, bool executeOnlyOnce); // 0x102793A0 +} + +// Namespace: System.Threading +[Serializable] +public enum ThreadPriority // TypeDefIndex: 1587 +{ + Lowest = 0, + BelowNormal = 1, + Normal = 2, + AboveNormal = 3, + Highest = 4 +} + +// Namespace: System.Threading +[Serializable] +public sealed class ThreadStartException : SystemException // TypeDefIndex: 1588 +{ + // Methods + internal void .ctor(); // 0x10279440 + internal void .ctor(string message); // 0x100E5680 + internal void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 + internal void .ctor(string message, Exception innerException); // 0x100E5670 +} + +// Namespace: System.Threading +[Serializable] +public enum ThreadState // TypeDefIndex: 1589 +{ + Running = 0, + StopRequested = 1, + SuspendRequested = 2, + Background = 4, + Unstarted = 8, + Stopped = 16, + WaitSleepJoin = 32, + Suspended = 64, + AbortRequested = 128, + Aborted = 256 +} + +// Namespace: System.Threading +[Serializable] +public class ThreadStateException : SystemException // TypeDefIndex: 1590 +{ + // Methods + public void .ctor(); // 0x10279590 + public void .ctor(string message); // 0x100E5680 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 + public void .ctor(string message, Exception innerException); // 0x100E5670 +} + +// Namespace: System.Threading +public static class Timeout // TypeDefIndex: 1591 +{ + // Fields + public const int Infinite = -1; // 0x00 + +} + +// Namespace: System.Threading +public sealed class Timer : MarshalByRefObject, IDisposable // TypeDefIndex: 1592 +{ + // Fields + private const long MaxValue = 4294967294; // 0x00 + private static Scheduler scheduler; // 0x00 + private TimerCallback callback; // 0x0C + private object state; // 0x10 + private long due_time_ms; // 0x18 + private long period_ms; // 0x20 + private long next_run; // 0x28 + private bool disposed; // 0x30 + + // Methods + public void .ctor(TimerCallback callback, object state, int dueTime, int period); // 0x1027EDB0 + public void .ctor(TimerCallback callback, object state, long dueTime, long period); // 0x1027ECF0 + public void .ctor(TimerCallback callback, object state, TimeSpan dueTime, TimeSpan period); // 0x1027ED50 + public void .ctor(TimerCallback callback, object state, uint dueTime, uint period); // 0x1027EDE0 + public void .ctor(TimerCallback callback); // 0x1027ED20 + private static void .cctor(); // 0x1027EC50 + private void Init(TimerCallback callback, object state, long dueTime, long period); // 0x1027EBD0 + public bool Change(int dueTime, int period); // 0x1027E7C0 + public bool Change(TimeSpan dueTime, TimeSpan period); // 0x1027E7E0 + public bool Change(uint dueTime, uint period); // 0x1027EA10 + public void Dispose(); // 0x1027EB60 + public bool Change(long dueTime, long period); // 0x1027EA50 + private bool Change(long dueTime, long period, bool first); // 0x1027E830 + public bool Dispose(WaitHandle notifyObject); // 0x1027EA70 +} + +// Namespace: +private sealed class TimerComparer : IComparer // TypeDefIndex: 1593 +{ + // Methods + public void .ctor(); // 0x100BF000 + public int Compare(object x, object y); // 0x1027E740 +} + +// Namespace: +private sealed class Scheduler // TypeDefIndex: 1594 +{ + // Fields + private static Scheduler instance; // 0x00 + private SortedList list; // 0x08 + + // Properties + public static Scheduler Instance { get; } // 0x10278C60 + + // Methods + private void .ctor(); // 0x10278B70 + private static void .cctor(); // 0x10278A50 + public void Remove(Timer timer); // 0x10278350 + public void Change(Timer timer, long new_next_run); // 0x10278160 + private void Add(Timer timer); // 0x10278000 + private int InternalRemove(Timer timer); // 0x102782F0 + private void SchedulerThread(); // 0x10278440 + private void ShrinkIfNeeded(ArrayList list, int initial); // 0x102789E0 +} + +// Namespace: System.Threading +public abstract class WaitHandle : MarshalByRefObject, IDisposable // TypeDefIndex: 1595 +{ + // Fields + public const int WaitTimeout = 258; // 0x00 + private SafeWaitHandle safe_wait_handle; // 0x0C + protected static readonly IntPtr InvalidHandle; // 0x00 + private bool disposed; // 0x10 + + // Properties + public virtual IntPtr Handle { get; set; } // 0x10286A00 0x10286A30 + public SafeWaitHandle SafeWaitHandle { get; set; } // 0x100C5B30 0x10286B00 + + // Methods + protected void .ctor(); // 0x100C5970 + private static void .cctor(); // 0x102869C0 + private void System.IDisposable.Dispose(); // 0x101100C0 + private static bool WaitAll_internal(WaitHandle[] handles, int ms, bool exitContext); // 0x10285BE0 + private static void CheckArray(WaitHandle[] handles, bool waitAll); // 0x102856F0 + public static bool WaitAll(WaitHandle[] waitHandles); // 0x10285C60 + public static bool WaitAll(WaitHandle[] waitHandles, int millisecondsTimeout, bool exitContext); // 0x10285D20 + public static bool WaitAll(WaitHandle[] waitHandles, TimeSpan timeout, bool exitContext); // 0x10285E90 + private static int WaitAny_internal(WaitHandle[] handles, int ms, bool exitContext); // 0x10286040 + public static int WaitAny(WaitHandle[] waitHandles); // 0x10286470 + public static int WaitAny(WaitHandle[] waitHandles, int millisecondsTimeout, bool exitContext); // 0x102860C0 + public static int WaitAny(WaitHandle[] waitHandles, TimeSpan timeout); // 0x10286060 + public static int WaitAny(WaitHandle[] waitHandles, int millisecondsTimeout); // 0x10286410 + public static int WaitAny(WaitHandle[] waitHandles, TimeSpan timeout, bool exitContext); // 0x10286250 + public virtual void Close(); // 0x101100C0 + private bool WaitOne_internal(IntPtr handle, int ms, bool exitContext); // 0x102864D0 + protected virtual void Dispose(bool explicitDisposing); // 0x102858A0 + public static bool SignalAndWait(WaitHandle toSignal, WaitHandle toWaitOn); // 0x10285A70 + public static bool SignalAndWait(WaitHandle toSignal, WaitHandle toWaitOn, int millisecondsTimeout, bool exitContext); // 0x10285AD0 + public static bool SignalAndWait(WaitHandle toSignal, WaitHandle toWaitOn, TimeSpan timeout, bool exitContext); // 0x10285990 + private static bool SignalAndWait_Internal(IntPtr toSignal, IntPtr toWaitOn, int ms, bool exitContext); // 0x10285970 + public virtual bool WaitOne(); // 0x102864F0 + public virtual bool WaitOne(int millisecondsTimeout, bool exitContext); // 0x10286610 + public virtual bool WaitOne(int millisecondsTimeout); // 0x101B50E0 + public virtual bool WaitOne(TimeSpan timeout); // 0x10286990 + public virtual bool WaitOne(TimeSpan timeout, bool exitContext); // 0x102867B0 + internal void CheckDisposed(); // 0x10285820 + public static bool WaitAll(WaitHandle[] waitHandles, int millisecondsTimeout); // 0x10285C00 + public static bool WaitAll(WaitHandle[] waitHandles, TimeSpan timeout); // 0x10285CC0 + protected override void Finalize(); // 0x1010BCA0 +} + +// Namespace: System.Threading +[Serializable] +public class WaitHandleCannotBeOpenedException : ApplicationException // TypeDefIndex: 1596 +{ + // Methods + public void .ctor(); // 0x102856B0 + public void .ctor(string message); // 0x10170380 + public void .ctor(string message, Exception innerException); // 0x10170330 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 +} + +// Namespace: System +[Serializable] +public class AccessViolationException : SystemException // TypeDefIndex: 1597 +{ + // Fields + private const int Result = -2147467261; // 0x00 + + // Methods + public void .ctor(); // 0x10158D40 + public void .ctor(string message); // 0x101056D0 + public void .ctor(string message, Exception innerException); // 0x10105740 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 +} + +// Namespace: System +[Serializable] +public sealed class ActivationContext : IDisposable, ISerializable // TypeDefIndex: 1598 +{ + // Fields + private ContextForm _form; // 0x08 + private ApplicationIdentity _appid; // 0x0C + private bool _disposed; // 0x10 + + // Properties + public ContextForm Form { get; } // 0x100BF0C0 + public ApplicationIdentity Identity { get; } // 0x100C5B30 + + // Methods + private void .ctor(ApplicationIdentity identity); // 0x10158F90 + private void System.Runtime.Serialization.ISerializable.GetObjectData(SerializationInfo info, StreamingContext context); // 0x10158F30 + protected override void Finalize(); // 0x10158EF0 + public static ActivationContext CreatePartialActivationContext(ApplicationIdentity identity); // 0x10158E30 + public static ActivationContext CreatePartialActivationContext(ApplicationIdentity identity, string[] manifestPaths); // 0x10158D90 + public void Dispose(); // 0x10158ED0 + private void Dispose(bool disposing); // 0x10158EB0 +} + +// Namespace: +public enum ContextForm // TypeDefIndex: 1599 +{ + Loose = 0, + StoreBounded = 1 +} + +// Namespace: System +public sealed class Activator : _Activator // TypeDefIndex: 1600 +{ + // Fields + private const BindingFlags _flags = 532; // 0x00 + private const BindingFlags _accessFlags = 127; // 0x00 + + // Methods + private void .ctor(); // 0x100BF000 + private void System.Runtime.InteropServices._Activator.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x1015A370 + private void System.Runtime.InteropServices._Activator.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x1015A410 + private void System.Runtime.InteropServices._Activator.GetTypeInfoCount(out uint pcTInfo); // 0x1015A3C0 + private void System.Runtime.InteropServices._Activator.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x1015A460 + public static ObjectHandle CreateComInstanceFrom(string assemblyName, string typeName); // 0x10159220 + public static ObjectHandle CreateComInstanceFrom(string assemblyName, string typeName, byte[] hashValue, AssemblyHashAlgorithm hashAlgorithm); // 0x101592F0 + public static ObjectHandle CreateInstanceFrom(string assemblyFile, string typeName); // 0x10159460 + public static ObjectHandle CreateInstanceFrom(string assemblyFile, string typeName, object[] activationAttributes); // 0x10159570 + public static ObjectHandle CreateInstanceFrom(string assemblyFile, string typeName, bool ignoreCase, BindingFlags bindingAttr, Binder binder, object[] args, CultureInfo culture, object[] activationAttributes, Evidence securityInfo); // 0x101593C0 + public static ObjectHandle CreateInstance(string assemblyName, string typeName); // 0x101597B0 + public static ObjectHandle CreateInstance(string assemblyName, string typeName, object[] activationAttributes); // 0x1015A1F0 + public static ObjectHandle CreateInstance(string assemblyName, string typeName, bool ignoreCase, BindingFlags bindingAttr, Binder binder, object[] args, CultureInfo culture, object[] activationAttributes, Evidence securityInfo); // 0x1015A0D0 + public static ObjectHandle CreateInstance(ActivationContext activationContext); // 0x10159890 + public static ObjectHandle CreateInstance(ActivationContext activationContext, string[] activationCustomData); // 0x10159840 + public static ObjectHandle CreateInstanceFrom(AppDomain domain, string assemblyFile, string typeName); // 0x10159500 + public static ObjectHandle CreateInstanceFrom(AppDomain domain, string assemblyFile, string typeName, bool ignoreCase, BindingFlags bindingAttr, Binder binder, object[] args, CultureInfo culture, object[] activationAttributes, Evidence securityAttributes); // 0x10159490 + public static ObjectHandle CreateInstance(AppDomain domain, string assemblyName, string typeName); // 0x10159740 + public static ObjectHandle CreateInstance(AppDomain domain, string assemblyName, string typeName, bool ignoreCase, BindingFlags bindingAttr, Binder binder, object[] args, CultureInfo culture, object[] activationAttributes, Evidence securityAttributes); // 0x1015A180 + public static T CreateInstance(); + public static object CreateInstance(Type type); // 0x1015A0B0 + public static object CreateInstance(Type type, object[] args); // 0x101595B0 + public static object CreateInstance(Type type, object[] args, object[] activationAttributes); // 0x10159690 + public static object CreateInstance(Type type, BindingFlags bindingAttr, Binder binder, object[] args, CultureInfo culture); // 0x1015A060 + public static object CreateInstance(Type type, BindingFlags bindingAttr, Binder binder, object[] args, CultureInfo culture, object[] activationAttributes); // 0x10159B00 + public static object CreateInstance(Type type, bool nonPublic); // 0x101598E0 + private static void CheckType(Type type); // 0x10159070 + private static void CheckAbstractType(Type type); // 0x10158FB0 + public static object GetObject(Type type, string url); // 0x1015A250 + public static object GetObject(Type type, string url, object state); // 0x1015A2E0 + internal static object CreateInstanceInternal(Type type); // 0x101595A0 +} + +// Namespace: System +public sealed class AppDomain : MarshalByRefObject // TypeDefIndex: 1601 +{ + // Fields + private IntPtr _mono_app_domain; // 0x0C + private static string _process_guid; // 0x00 + private static Hashtable type_resolve_in_progress; // 0x80000000 + private static Hashtable assembly_resolve_in_progress; // 0x80000004 + private static Hashtable assembly_resolve_in_progress_refonly; // 0x80000008 + private Evidence _evidence; // 0x10 + private PermissionSet _granted; // 0x14 + private PrincipalPolicy _principalPolicy; // 0x18 + private static IPrincipal _principal; // 0x8000000C + private static AppDomain default_domain; // 0x04 + private AppDomainManager _domain_manager; // 0x1C + private ActivationContext _activation; // 0x20 + private ApplicationIdentity _applicationIdentity; // 0x24 + private AssemblyLoadEventHandler AssemblyLoad; // 0x28 + private ResolveEventHandler AssemblyResolve; // 0x2C + private EventHandler DomainUnload; // 0x30 + private EventHandler ProcessExit; // 0x34 + private ResolveEventHandler ResourceResolve; // 0x38 + private ResolveEventHandler TypeResolve; // 0x3C + private UnhandledExceptionEventHandler UnhandledException; // 0x40 + private ResolveEventHandler ReflectionOnlyAssemblyResolve; // 0x44 + + // Properties + internal AppDomainSetup SetupInformationNoCopy { get; } // 0x1015E2E0 + public AppDomainSetup SetupInformation { get; } // 0x1015E8C0 + public string BaseDirectory { get; } // 0x1015E2F0 + public string RelativeSearchPath { get; } // 0x1015E810 + public string DynamicDirectory { get; } // 0x1015E580 + public bool ShadowCopyFiles { get; } // 0x1015E910 + public string FriendlyName { get; } // 0x1015DDB0 + public Evidence Evidence { get; } // 0x1015E680 + internal IPrincipal DefaultPrincipal { get; } // 0x1015E450 + internal PermissionSet GrantedPermissionSet { get; } // 0x100EF0C0 + public static AppDomain CurrentDomain { get; } // 0x1015E270 + internal static AppDomain DefaultDomain { get; } // 0x1015E3A0 + public AppDomainManager DomainManager { get; } // 0x100F85F0 + public ActivationContext ActivationContext { get; } // 0x100EACD0 + public ApplicationIdentity ApplicationIdentity { get; } // 0x100EAD50 + public int Id { get; } // 0x1015E280 + + // Events + public event AssemblyLoadEventHandler AssemblyLoad { + add; // 0x1015DF50 + remove; // 0x1015E980 + } + public event ResolveEventHandler AssemblyResolve { + add; // 0x1015DFB0 + remove; // 0x1015E9E0 + } + public event EventHandler DomainUnload { + add; // 0x1015E010 + remove; // 0x1015EA40 + } + public event EventHandler ProcessExit { + add; // 0x1015E070 + remove; // 0x1015EAA0 + } + public event ResolveEventHandler ResourceResolve { + add; // 0x1015E130 + remove; // 0x1015EB60 + } + public event ResolveEventHandler TypeResolve { + add; // 0x1015E190 + remove; // 0x1015EBC0 + } + public event UnhandledExceptionEventHandler UnhandledException { + add; // 0x1015E1F0 + remove; // 0x1015EC20 + } + public event ResolveEventHandler ReflectionOnlyAssemblyResolve { + add; // 0x1015E0D0 + remove; // 0x1015EB00 + } + + // Methods + private void .ctor(); // 0x100C5970 + private AppDomainSetup getSetup(); // 0x1015E2E0 + private string getFriendlyName(); // 0x1015DDB0 + private static AppDomain getCurDomain(); // 0x1015E270 + private static AppDomain getRootDomain(); // 0x1015E2D0 + public void AppendPrivatePath(string path); // 0x1015B350 + public void ClearPrivatePath(); // 0x1015B560 + public void ClearShadowCopyPath(); // 0x1015B5D0 + public ObjectHandle CreateInstance(string assemblyName, string typeName); // 0x1015BE10 + public ObjectHandle CreateInstance(string assemblyName, string typeName, object[] activationAttributes); // 0x1015BDA0 + public ObjectHandle CreateInstance(string assemblyName, string typeName, bool ignoreCase, BindingFlags bindingAttr, Binder binder, object[] args, CultureInfo culture, object[] activationAttributes, Evidence securityAttributes); // 0x1015BD20 + public object CreateInstanceAndUnwrap(string assemblyName, string typeName); // 0x1015B9B0 + public object CreateInstanceAndUnwrap(string assemblyName, string typeName, object[] activationAttributes); // 0x1015BA20 + public object CreateInstanceAndUnwrap(string assemblyName, string typeName, bool ignoreCase, BindingFlags bindingAttr, Binder binder, object[] args, CultureInfo culture, object[] activationAttributes, Evidence securityAttributes); // 0x1015B9E0 + public ObjectHandle CreateInstanceFrom(string assemblyFile, string typeName); // 0x1015BC20 + public ObjectHandle CreateInstanceFrom(string assemblyFile, string typeName, object[] activationAttributes); // 0x1015BCA0 + public ObjectHandle CreateInstanceFrom(string assemblyFile, string typeName, bool ignoreCase, BindingFlags bindingAttr, Binder binder, object[] args, CultureInfo culture, object[] activationAttributes, Evidence securityAttributes); // 0x1015BBA0 + public object CreateInstanceFromAndUnwrap(string assemblyName, string typeName); // 0x1015BAA0 + public object CreateInstanceFromAndUnwrap(string assemblyName, string typeName, object[] activationAttributes); // 0x1015BAD0 + public object CreateInstanceFromAndUnwrap(string assemblyName, string typeName, bool ignoreCase, BindingFlags bindingAttr, Binder binder, object[] args, CultureInfo culture, object[] activationAttributes, Evidence securityAttributes); // 0x1015BB60 + public AssemblyBuilder DefineDynamicAssembly(AssemblyName name, AssemblyBuilderAccess access); // 0x1015C0E0 + public AssemblyBuilder DefineDynamicAssembly(AssemblyName name, AssemblyBuilderAccess access, Evidence evidence); // 0x1015C140 + public AssemblyBuilder DefineDynamicAssembly(AssemblyName name, AssemblyBuilderAccess access, string dir); // 0x1015C0B0 + public AssemblyBuilder DefineDynamicAssembly(AssemblyName name, AssemblyBuilderAccess access, string dir, Evidence evidence); // 0x1015C050 + public AssemblyBuilder DefineDynamicAssembly(AssemblyName name, AssemblyBuilderAccess access, PermissionSet requiredPermissions, PermissionSet optionalPermissions, PermissionSet refusedPermissions); // 0x1015C110 + public AssemblyBuilder DefineDynamicAssembly(AssemblyName name, AssemblyBuilderAccess access, Evidence evidence, PermissionSet requiredPermissions, PermissionSet optionalPermissions, PermissionSet refusedPermissions); // 0x1015C330 + public AssemblyBuilder DefineDynamicAssembly(AssemblyName name, AssemblyBuilderAccess access, string dir, PermissionSet requiredPermissions, PermissionSet optionalPermissions, PermissionSet refusedPermissions); // 0x1015C080 + public AssemblyBuilder DefineDynamicAssembly(AssemblyName name, AssemblyBuilderAccess access, string dir, Evidence evidence, PermissionSet requiredPermissions, PermissionSet optionalPermissions, PermissionSet refusedPermissions); // 0x1015C300 + public AssemblyBuilder DefineDynamicAssembly(AssemblyName name, AssemblyBuilderAccess access, string dir, Evidence evidence, PermissionSet requiredPermissions, PermissionSet optionalPermissions, PermissionSet refusedPermissions, bool isSynchronized); // 0x1015C170 + public AssemblyBuilder DefineDynamicAssembly(AssemblyName name, AssemblyBuilderAccess access, string dir, Evidence evidence, PermissionSet requiredPermissions, PermissionSet optionalPermissions, PermissionSet refusedPermissions, bool isSynchronized, IEnumerable`1 assemblyAttributes); // 0x1015BE90 + public AssemblyBuilder DefineDynamicAssembly(AssemblyName name, AssemblyBuilderAccess access, IEnumerable`1 assemblyAttributes); // 0x1015C360 + internal AssemblyBuilder DefineInternalDynamicAssembly(AssemblyName name, AssemblyBuilderAccess access); // 0x1015C390 + public void DoCallBack(CrossAppDomainDelegate callBackDelegate); // 0x1015C6D0 + public int ExecuteAssembly(string assemblyFile); // 0x1015CB60 + public int ExecuteAssembly(string assemblyFile, Evidence assemblySecurity); // 0x1015CBC0 + public int ExecuteAssembly(string assemblyFile, Evidence assemblySecurity, string[] args); // 0x1015CBF0 + public int ExecuteAssembly(string assemblyFile, Evidence assemblySecurity, string[] args, byte[] hashValue, AssemblyHashAlgorithm hashAlgorithm); // 0x1015CB90 + private int ExecuteAssemblyInternal(Assembly a, string[] args); // 0x1015CA70 + private int ExecuteAssembly(Assembly a, string[] args); // 0x1015CB40 + private Assembly[] GetAssemblies(bool refOnly); // 0x1015CC30 + public Assembly[] GetAssemblies(); // 0x1015CC20 + public object GetData(string name); // 0x1015CCA0 + public Type GetType(); // 0x1015CD60 + public override object InitializeLifetimeService(); // 0x100C5600 + internal Assembly LoadAssembly(string assemblyRef, Evidence securityEvidence, bool refOnly); // 0x1015D210 + public Assembly Load(AssemblyName assemblyRef); // 0x1015D330 + internal Assembly LoadSatellite(AssemblyName assemblyRef, bool throwOnError); // 0x1015D230 + public Assembly Load(AssemblyName assemblyRef, Evidence assemblySecurity); // 0x1015D450 + public Assembly Load(string assemblyString); // 0x1015D310 + public Assembly Load(string assemblyString, Evidence assemblySecurity); // 0x1015D2F0 + internal Assembly Load(string assemblyString, Evidence assemblySecurity, bool refonly); // 0x1015D7F0 + public Assembly Load(byte[] rawAssembly); // 0x1015D8C0 + public Assembly Load(byte[] rawAssembly, byte[] rawSymbolStore); // 0x1015D7D0 + internal Assembly LoadAssemblyRaw(byte[] rawAssembly, byte[] rawSymbolStore, Evidence securityEvidence, bool refonly); // 0x1015D1F0 + public Assembly Load(byte[] rawAssembly, byte[] rawSymbolStore, Evidence securityEvidence); // 0x1015D3D0 + internal Assembly Load(byte[] rawAssembly, byte[] rawSymbolStore, Evidence securityEvidence, bool refonly); // 0x1015D350 + public void SetAppDomainPolicy(PolicyLevel domainPolicy); // 0x1015D9E0 + public void SetCachePath(string path); // 0x1015DAE0 + public void SetPrincipalPolicy(PrincipalPolicy policy); // 0x1015DB80 + public void SetShadowCopyFiles(); // 0x1015DC40 + public void SetShadowCopyPath(string path); // 0x1015DC90 + public void SetThreadPrincipal(IPrincipal principal); // 0x1015DCC0 + private static AppDomain InternalSetDomainByID(int domain_id); // 0x1015CDD0 + private static AppDomain InternalSetDomain(AppDomain context); // 0x1015CDE0 + internal static void InternalPushDomainRef(AppDomain domain); // 0x1015CDB0 + internal static void InternalPushDomainRefByID(int domain_id); // 0x1015CDA0 + internal static void InternalPopDomainRef(); // 0x1015CD90 + internal static Context InternalSetContext(Context context); // 0x1015CDC0 + internal static Context InternalGetContext(); // 0x1015CD70 + internal static Context InternalGetDefaultContext(); // 0x1015CD70 + internal static string InternalGetProcessGuid(string newguid); // 0x1015CD80 + internal static object InvokeInDomain(AppDomain domain, MethodInfo method, object obj, object[] args); // 0x1015CFC0 + internal static object InvokeInDomainByID(int domain_id, MethodInfo method, object obj, object[] args); // 0x1015CE00 + internal static string GetProcessGuid(); // 0x1015CCC0 + public static AppDomain CreateDomain(string friendlyName); // 0x1015B940 + public static AppDomain CreateDomain(string friendlyName, Evidence securityInfo); // 0x1015B990 + private static AppDomain createDomain(string friendlyName, AppDomainSetup info); // 0x1015E250 + public static AppDomain CreateDomain(string friendlyName, Evidence securityInfo, AppDomainSetup info); // 0x1015B6F0 + public static AppDomain CreateDomain(string friendlyName, Evidence securityInfo, string appBasePath, string appRelativeSearchPath, bool shadowCopyFiles); // 0x1015B960 + private static AppDomainSetup CreateDomainSetup(string appBasePath, string appRelativeSearchPath, bool shadowCopyFiles); // 0x1015B640 + private static bool InternalIsFinalizingForUnload(int domain_id); // 0x100E9F80 + public bool IsFinalizingForUnload(); // 0x1015D1A0 + private static void InternalUnload(int domain_id); // 0x1015CDF0 + private int getDomainID(); // 0x1015E280 + public static void Unload(AppDomain domain); // 0x1015DDC0 + public void SetData(string name, object data); // 0x1015DB10 + public void SetData(string name, object data, IPermission permission); // 0x1015DB30 + public static int GetCurrentThreadId(); // 0x1015CC50 + public override string ToString(); // 0x1015DDB0 + private static void ValidateAssemblyName(string name); // 0x1015DE70 + private void DoAssemblyLoad(Assembly assembly); // 0x1015C3E0 + private Assembly DoAssemblyResolve(string name, bool refonly); // 0x1015C440 + internal Assembly DoTypeResolve(object name_or_tb); // 0x1015C710 + private void DoDomainUnload(); // 0x1015C6F0 + internal void ProcessMessageInDomain(byte[] arrRequest, CADMethodCallMessage cadMsg, out byte[] arrResponse, out CADMethodReturnMessage cadMrm); // 0x1015D8E0 + public string ApplyPolicy(string assemblyName); // 0x1015B4D0 + public static AppDomain CreateDomain(string friendlyName, Evidence securityInfo, string appBasePath, string appRelativeSearchPath, bool shadowCopyFiles, AppDomainInitializer adInit, string[] adInitArgs); // 0x1015B6B0 + public int ExecuteAssemblyByName(string assemblyName); // 0x1015CA40 + public int ExecuteAssemblyByName(string assemblyName, Evidence assemblySecurity); // 0x1015C9E0 + public int ExecuteAssemblyByName(string assemblyName, Evidence assemblySecurity, string[] args); // 0x1015CA10 + public int ExecuteAssemblyByName(AssemblyName assemblyName, Evidence assemblySecurity, string[] args); // 0x1015C9B0 + public bool IsDefaultAppDomain(); // 0x1015D180 + public Assembly[] ReflectionOnlyGetAssemblies(); // 0x1015D9D0 +} + +// Namespace: System +public class AppDomainManager : MarshalByRefObject // TypeDefIndex: 1602 +{ + // Fields + private ApplicationActivator _activator; // 0x0C + private AppDomainManagerInitializationOptions _flags; // 0x10 + + // Properties + public virtual ApplicationActivator ApplicationActivator { get; } // 0x1015A9E0 + public virtual Assembly EntryAssembly { get; } // 0x1015AA30 + public virtual HostExecutionContextManager HostExecutionContextManager { get; } // 0x1015AA40 + public virtual HostSecurityManager HostSecurityManager { get; } // 0x100C5600 + public AppDomainManagerInitializationOptions InitializationFlags { get; set; } // 0x100BFC20 0x100C5B40 + + // Methods + public void .ctor(); // 0x1015A9C0 + public virtual AppDomain CreateDomain(string friendlyName, Evidence securityInfo, AppDomainSetup appDomainInfo); // 0x1015A860 + public virtual void InitializeNewDomain(AppDomainSetup appDomainInfo); // 0x100C5530 + public virtual bool CheckSecuritySettings(SecurityState state); // 0x100EFBF0 + protected static AppDomain CreateDomainHelper(string friendlyName, Evidence securityInfo, AppDomainSetup appDomainInfo); // 0x1015A850 +} + +// Namespace: System +[Serializable] +public sealed class AppDomainSetup // TypeDefIndex: 1603 +{ + // Fields + private string application_base; // 0x08 + private string application_name; // 0x0C + private string cache_path; // 0x10 + private string configuration_file; // 0x14 + private string dynamic_base; // 0x18 + private string license_file; // 0x1C + private string private_bin_path; // 0x20 + private string private_bin_path_probe; // 0x24 + private string shadow_copy_directories; // 0x28 + private string shadow_copy_files; // 0x2C + private bool publisher_policy; // 0x30 + private bool path_changed; // 0x31 + private LoaderOptimization loader_optimization; // 0x34 + private bool disallow_binding_redirects; // 0x38 + private bool disallow_code_downloads; // 0x39 + private ActivationArguments _activationArguments; // 0x3C + private AppDomainInitializer domain_initializer; // 0x40 + [NonSerialized] private ApplicationTrust application_trust; // 0x44 + private string[] domain_initializer_args; // 0x48 + private SecurityElement application_trust_xml; // 0x4C + private bool disallow_appbase_probe; // 0x50 + private byte[] configuration_bytes; // 0x54 + + // Properties + public string ApplicationBase { get; set; } // 0x1015AD60 0x100EB270 + public string ApplicationName { get; set; } // 0x100C5B30 0x100C5B50 + public string CachePath { get; set; } // 0x100BFC20 0x100C5B40 + public string ConfigurationFile { get; set; } // 0x1015AF20 0x10127B00 + public bool DisallowPublisherPolicy { get; set; } // 0x100EF0D0 0x100EF3A0 + public string DynamicBase { get; set; } // 0x1015B040 0x1015B1B0 + public string LicenseFile { get; set; } // 0x100F85F0 0x10113F50 + public LoaderOptimization LoaderOptimization { get; set; } // 0x100E9ED0 0x100EA750 + public string PrivateBinPath { get; set; } // 0x100EACD0 0x1015B290 + public string PrivateBinPathProbe { get; set; } // 0x100EAD50 0x1015B270 + public string ShadowCopyDirectories { get; set; } // 0x100EB040 0x100EB250 + public string ShadowCopyFiles { get; set; } // 0x100EB200 0x100EB260 + public bool DisallowBindingRedirects { get; set; } // 0x1015B020 0x1015B190 + public bool DisallowCodeDownload { get; set; } // 0x1015B030 0x1015B1A0 + public ActivationArguments ActivationArguments { get; set; } // 0x100EB220 0x101455F0 + public AppDomainInitializer AppDomainInitializer { get; set; } // 0x100E9E80 0x100EB280 + public string[] AppDomainInitializerArguments { get; set; } // 0x10145560 0x101455E0 + public ApplicationTrust ApplicationTrust { get; set; } // 0x1015AEC0 0x1015B130 + public bool DisallowApplicationBaseProbing { get; set; } // 0x1015B010 0x1015B180 + + // Methods + public void .ctor(); // 0x100BF000 + internal void .ctor(AppDomainSetup setup); // 0x1015AC40 + public void .ctor(ActivationArguments activationArguments); // 0x1015AD40 + public void .ctor(ActivationContext activationContext); // 0x1015ACF0 + private static string GetAppBase(string appBase); // 0x1015AA90 + public byte[] GetConfigurationBytes(); // 0x1015ABF0 + public void SetConfigurationBytes(byte[] value); // 0x101455A0 +} + +// Namespace: System +[Serializable] +public class AppDomainUnloadedException : SystemException // TypeDefIndex: 1604 +{ + // Fields + private const int Result = -2146234348; // 0x00 + + // Methods + public void .ctor(); // 0x1015B300 + public void .ctor(string message); // 0x1015B2E0 + public void .ctor(string message, Exception innerException); // 0x1015B2B0 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 +} + +// Namespace: System +[Serializable] +public class ApplicationException : Exception // TypeDefIndex: 1605 +{ + // Fields + private const int Result = -2146232832; // 0x00 + + // Methods + public void .ctor(); // 0x1015ECA0 + public void .ctor(string message); // 0x1015ED20 + public void .ctor(string message, Exception innerException); // 0x1015ECF0 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x1015EC80 +} + +// Namespace: System +[Serializable] +public sealed class ApplicationId // TypeDefIndex: 1606 +{ + // Fields + private byte[] _token; // 0x08 + private string _name; // 0x0C + private Version _version; // 0x10 + private string _proc; // 0x14 + private string _culture; // 0x18 + + // Properties + public string Culture { get; } // 0x100EE580 + public string Name { get; } // 0x100C5B30 + public string ProcessorArchitecture { get; } // 0x100EF0C0 + public byte[] PublicKeyToken { get; } // 0x1015F2C0 + public Version Version { get; } // 0x100BFC20 + + // Methods + public void .ctor(byte[] publicKeyToken, string name, Version version, string processorArchitecture, string culture); // 0x1015F1C0 + public ApplicationId Copy(); // 0x1015ED40 + public override bool Equals(object o); // 0x1015EE90 + public override int GetHashCode(); // 0x1015F010 + public override string ToString(); // 0x1015F090 +} + +// Namespace: System +[Serializable] +public sealed class ApplicationIdentity : ISerializable // TypeDefIndex: 1607 +{ + // Fields + private string _fullName; // 0x08 + private string _codeBase; // 0x0C + + // Properties + public string CodeBase { get; } // 0x100C5B30 + public string FullName { get; } // 0x100BF0C0 + + // Methods + public void .ctor(string applicationIdentityFullName); // 0x1015F390 + private void System.Runtime.Serialization.ISerializable.GetObjectData(SerializationInfo info, StreamingContext context); // 0x1015F330 + public override string ToString(); // 0x100BF0C0 +} + +// Namespace: System +[Serializable] +public class ArgumentException : SystemException // TypeDefIndex: 1608 +{ + // Fields + private const int Result = -2147024809; // 0x00 + private string param_name; // 0x34 + + // Properties + public virtual string ParamName { get; } // 0x100E9ED0 + public override string Message { get; } // 0x1015F770 + + // Methods + public void .ctor(); // 0x1015F720 + public void .ctor(string message); // 0x1015F700 + public void .ctor(string message, Exception innerException); // 0x1015F6A0 + public void .ctor(string message, string paramName); // 0x1015F610 + public void .ctor(string message, string paramName, Exception innerException); // 0x1015F6D0 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x1015F640 + public override void GetObjectData(SerializationInfo info, StreamingContext context); // 0x1015F5A0 +} + +// Namespace: System +[Serializable] +public class ArgumentNullException : ArgumentException // TypeDefIndex: 1609 +{ + // Fields + private const int Result = -2147467261; // 0x00 + + // Methods + public void .ctor(); // 0x1015F8B0 + public void .ctor(string paramName); // 0x1015F900 + public void .ctor(string paramName, string message); // 0x1015F880 + public void .ctor(string message, Exception innerException); // 0x10105740 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x1015F860 +} + +// Namespace: System +[Serializable] +public class ArgumentOutOfRangeException : ArgumentException // TypeDefIndex: 1610 +{ + // Fields + private const int Result = -2146233086; // 0x00 + private object actual_value; // 0x38 + + // Properties + public virtual object ActualValue { get; } // 0x100EB210 + public override string Message { get; } // 0x1015FB80 + + // Methods + public void .ctor(); // 0x1015FA80 + public void .ctor(string paramName); // 0x1015FAD0 + public void .ctor(string paramName, string message); // 0x1015FA20 + public void .ctor(string paramName, object actualValue, string message); // 0x1015F9F0 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x1015FB20 + public void .ctor(string message, Exception innerException); // 0x1015FA50 + public override void GetObjectData(SerializationInfo info, StreamingContext context); // 0x1015F950 +} + +// Namespace: System +[Serializable] +public class ArithmeticException : SystemException // TypeDefIndex: 1611 +{ + // Fields + private const int Result = -2147024362; // 0x00 + + // Methods + public void .ctor(); // 0x103069E0 + public void .ctor(string message); // 0x103069C0 + public void .ctor(string message, Exception innerException); // 0x10306990 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 +} + +// Namespace: System +[Serializable] +public struct ArraySegment`1 // TypeDefIndex: 1612 +{ + // Fields + private T[] array; // 0x00 + private int offset; // 0x00 + private int count; // 0x00 + + // Properties + public T[] Array { get; } + public int Offset { get; } + public int Count { get; } + + // Methods + public void .ctor(T[] array, int offset, int count); + public void .ctor(T[] array); + public override bool Equals(object obj); + public bool Equals(ArraySegment`1 obj); + public override int GetHashCode(); + public static bool op_Equality(ArraySegment`1 a, ArraySegment`1 b); + public static bool op_Inequality(ArraySegment`1 a, ArraySegment`1 b); +} + +// Namespace: System +[Serializable] +public class ArrayTypeMismatchException : SystemException // TypeDefIndex: 1613 +{ + // Fields + private const int Result = -2146233085; // 0x00 + + // Methods + public void .ctor(); // 0x1030BC40 + public void .ctor(string message); // 0x1030BCC0 + public void .ctor(string message, Exception innerException); // 0x1030BC90 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 +} + +// Namespace: System +public class AssemblyLoadEventArgs : EventArgs // TypeDefIndex: 1614 +{ + // Fields + private Assembly m_loadedAssembly; // 0x08 + + // Properties + public Assembly LoadedAssembly { get; } // 0x100BF0C0 + + // Methods + public void .ctor(Assembly loadedAssembly); // 0x103109D0 +} + +// Namespace: System +[Serializable] +public enum AttributeTargets // TypeDefIndex: 1615 +{ + Assembly = 1, + Module = 2, + Class = 4, + Struct = 8, + Enum = 16, + Constructor = 32, + Method = 64, + Property = 128, + Field = 256, + Event = 512, + Interface = 1024, + Parameter = 2048, + Delegate = 4096, + ReturnValue = 8192, + GenericParameter = 16384, + All = 32767 +} + +// Namespace: System +[Serializable] +public class BadImageFormatException : SystemException // TypeDefIndex: 1616 +{ + // Fields + private const int Result = -2147024885; // 0x00 + private string fileName; // 0x34 + private string fusionLog; // 0x38 + + // Properties + public override string Message { get; } // 0x10312440 + public string FileName { get; } // 0x100E9ED0 + public string FusionLog { get; } // 0x100EB210 + + // Methods + public void .ctor(); // 0x103123F0 + public void .ctor(string message); // 0x10312300 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x10312320 + public void .ctor(string message, Exception inner); // 0x103122D0 + public void .ctor(string message, string fileName); // 0x103123C0 + public void .ctor(string message, string fileName, Exception inner); // 0x10312390 + public override void GetObjectData(SerializationInfo info, StreamingContext context); // 0x10312120 + public override string ToString(); // 0x10312190 +} + +// Namespace: System +public enum Base64FormattingOptions // TypeDefIndex: 1617 +{ + None = 0, + InsertLineBreaks = 1 +} + +// Namespace: System +public static class BitConverter // TypeDefIndex: 1618 +{ + // Fields + private static readonly bool SwappedWordsInDouble; // 0x00 + public static readonly bool IsLittleEndian; // 0x01 + + // Methods + private static void .cctor(); // 0x10314A40 + private static bool AmILittleEndian(); // 0x10313640 + private static bool DoubleWordsAreSwapped(); // 0x100EFBF0 + public static long DoubleToInt64Bits(double value); // 0x10313660 + public static double Int64BitsToDouble(long value); // 0x10313BE0 + internal static double InternalInt64BitsToDouble(long value); // 0x10313C90 + private static byte[] GetBytes(void * ptr, int count); // 0x103137C0 + public static byte[] GetBytes(bool value); // 0x103138E0 + public static byte[] GetBytes(char value); // 0x10313840 + public static byte[] GetBytes(short value); // 0x10313770 + public static byte[] GetBytes(int value); // 0x103139D0 + public static byte[] GetBytes(long value); // 0x10313A20 + public static byte[] GetBytes(ushort value); // 0x10313720 + public static byte[] GetBytes(uint value); // 0x10313930 + public static byte[] GetBytes(ulong value); // 0x10313890 + public static byte[] GetBytes(float value); // 0x10313980 + public static byte[] GetBytes(double value); // 0x10313A70 + private static void PutBytes(void * dst, byte[] src, int start_index, int count); // 0x10313D40 + public static bool ToBoolean(byte[] value, int startIndex); // 0x103140E0 + public static char ToChar(byte[] value, int startIndex); // 0x103141A0 + public static short ToInt16(byte[] value, int startIndex); // 0x103143D0 + public static int ToInt32(byte[] value, int startIndex); // 0x10314440 + public static long ToInt64(byte[] value, int startIndex); // 0x103144B0 + public static ushort ToUInt16(byte[] value, int startIndex); // 0x103148F0 + public static uint ToUInt32(byte[] value, int startIndex); // 0x10314960 + public static ulong ToUInt64(byte[] value, int startIndex); // 0x103149D0 + public static float ToSingle(byte[] value, int startIndex); // 0x10314520 + public static double ToDouble(byte[] value, int startIndex); // 0x10314210 + internal static double SwappableToDouble(byte[] value, int startIndex); // 0x10313E50 + public static string ToString(byte[] value); // 0x10314860 + public static string ToString(byte[] value, int startIndex); // 0x103147D0 + public static string ToString(byte[] value, int startIndex, int length); // 0x10314590 +} + +// Namespace: System +public static class Buffer // TypeDefIndex: 1619 +{ + // Methods + public static int ByteLength(Array array); // 0x103151A0 + public static byte GetByte(Array array, int index); // 0x10315260 + public static void SetByte(Array array, int index, byte value); // 0x10315310 + public static void BlockCopy(Array src, int srcOffset, Array dst, int dstOffset, int count); // 0x10314FD0 + private static int ByteLengthInternal(Array array); // 0x10315190 + private static byte GetByteInternal(Array array, int index); // 0x10315240 + private static void SetByteInternal(Array array, int index, int value); // 0x103152F0 + internal static bool BlockCopyInternal(Array src, int src_offset, Array dest, int dest_offset, int count); // 0x10314FB0 +} + +// Namespace: System +[Serializable] +public class CannotUnloadAppDomainException : SystemException // TypeDefIndex: 1620 +{ + // Fields + private const int Result = -2146234347; // 0x00 + + // Methods + public void .ctor(); // 0x103157D0 + public void .ctor(string message); // 0x103157B0 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 + public void .ctor(string message, Exception innerException); // 0x10315780 +} + +// Namespace: System +[Serializable] +public sealed class CharEnumerator : IEnumerator, IDisposable, ICloneable, IEnumerator`1 // TypeDefIndex: 1621 +{ + // Fields + private string str; // 0x08 + private int index; // 0x0C + private int length; // 0x10 + + // Properties + private object System.Collections.IEnumerator.Current { get; } // 0x103158B0 + public char Current { get; } // 0x103159B0 + + // Methods + internal void .ctor(string s); // 0x10315970 + private void System.IDisposable.Dispose(); // 0x100C5530 + public object Clone(); // 0x10315820 + public bool MoveNext(); // 0x10315890 + public void Reset(); // 0x10113480 +} + +// Namespace: System +public static class Console // TypeDefIndex: 1622 +{ + // Fields + internal static TextWriter stdout; // 0x00 + private static TextWriter stderr; // 0x04 + private static TextReader stdin; // 0x08 + private static Encoding inputEncoding; // 0x0C + private static Encoding outputEncoding; // 0x10 + + // Properties + public static TextWriter Error { get; } // 0x1021A390 + public static TextWriter Out { get; } // 0x1021A480 + public static TextReader In { get; } // 0x1021A3E0 + public static Encoding InputEncoding { get; set; } // 0x1021A430 0x1021A520 + public static Encoding OutputEncoding { get; set; } // 0x1021A4D0 0x1021A590 + + // Methods + private static void .cctor(); // 0x1021A290 + private static void SetEncodings(Encoding inputEncoding, Encoding outputEncoding); // 0x10218900 + public static Stream OpenStandardError(); // 0x10218540 + private static Stream Open(IntPtr handle, FileAccess access, int bufferSize); // 0x10218730 + public static Stream OpenStandardError(int bufferSize); // 0x102184C0 + public static Stream OpenStandardInput(); // 0x10218590 + public static Stream OpenStandardInput(int bufferSize); // 0x102185E0 + public static Stream OpenStandardOutput(); // 0x102186E0 + public static Stream OpenStandardOutput(int bufferSize); // 0x10218660 + public static void SetError(TextWriter newError); // 0x10218BE0 + public static void SetIn(TextReader newIn); // 0x10218C70 + public static void SetOut(TextWriter newOut); // 0x10218D00 + public static void Write(bool value); // 0x10219A90 + public static void Write(char value); // 0x10219930 + public static void Write(char[] buffer); // 0x1021A130 + public static void Write(Decimal value); // 0x10219F50 + public static void Write(double value); // 0x102198B0 + public static void Write(int value); // 0x10219840 + public static void Write(long value); // 0x1021A040 + public static void Write(object value); // 0x10219FD0 + public static void Write(float value); // 0x10219A10 + public static void Write(string value); // 0x10219EE0 + public static void Write(uint value); // 0x102199A0 + public static void Write(ulong value); // 0x1021A1A0 + public static void Write(string format, object arg0); // 0x10219E70 + public static void Write(string format, object[] arg); // 0x10219B00 + public static void Write(char[] buffer, int index, int count); // 0x10219B70 + public static void Write(string format, object arg0, object arg1); // 0x1021A210 + public static void Write(string format, object arg0, object arg1, object arg2); // 0x1021A0B0 + public static void Write(string format, object arg0, object arg1, object arg2, object arg3); // 0x10219BF0 + public static void WriteLine(); // 0x10219760 + public static void WriteLine(bool value); // 0x102193B0 + public static void WriteLine(char value); // 0x10219340 + public static void WriteLine(char[] buffer); // 0x10219680 + public static void WriteLine(Decimal value); // 0x102190E0 + public static void WriteLine(double value); // 0x10219250 + public static void WriteLine(int value); // 0x102191E0 + public static void WriteLine(long value); // 0x102192D0 + public static void WriteLine(object value); // 0x10219000 + public static void WriteLine(float value); // 0x102194A0 + public static void WriteLine(string value); // 0x10219070 + public static void WriteLine(uint value); // 0x10219590 + public static void WriteLine(ulong value); // 0x10219520 + public static void WriteLine(string format, object arg0); // 0x102196F0 + public static void WriteLine(string format, object[] arg); // 0x102197D0 + public static void WriteLine(char[] buffer, int index, int count); // 0x10219160 + public static void WriteLine(string format, object arg0, object arg1); // 0x10219600 + public static void WriteLine(string format, object arg0, object arg1, object arg2); // 0x10219420 + public static void WriteLine(string format, object arg0, object arg1, object arg2, object arg3); // 0x10218D80 + public static int Read(); // 0x10218890 + public static string ReadLine(); // 0x10218820 +} + +// Namespace: System +[Serializable] +public sealed class ConsoleCancelEventArgs : EventArgs // TypeDefIndex: 1623 +{ + // Fields + private bool cancel; // 0x08 + private ConsoleSpecialKey specialKey; // 0x0C + + // Properties + public bool Cancel { get; set; } // 0x100EA020 0x10155000 + public ConsoleSpecialKey SpecialKey { get; } // 0x100C5B30 + + // Methods + internal void .ctor(ConsoleSpecialKey key); // 0x102183B0 +} + +// Namespace: System +[Serializable] +public enum ConsoleColor // TypeDefIndex: 1624 +{ + Black = 0, + DarkBlue = 1, + DarkGreen = 2, + DarkCyan = 3, + DarkRed = 4, + DarkMagenta = 5, + DarkYellow = 6, + Gray = 7, + DarkGray = 8, + Blue = 9, + Green = 10, + Cyan = 11, + Red = 12, + Magenta = 13, + Yellow = 14, + White = 15 +} + +// Namespace: System +[Serializable] +public enum ConsoleKey // TypeDefIndex: 1625 +{ + Backspace = 8, + Tab = 9, + Clear = 12, + Enter = 13, + Pause = 19, + Escape = 27, + Spacebar = 32, + PageUp = 33, + PageDown = 34, + End = 35, + Home = 36, + LeftArrow = 37, + UpArrow = 38, + RightArrow = 39, + DownArrow = 40, + Select = 41, + Print = 42, + Execute = 43, + PrintScreen = 44, + Insert = 45, + Delete = 46, + Help = 47, + D0 = 48, + D1 = 49, + D2 = 50, + D3 = 51, + D4 = 52, + D5 = 53, + D6 = 54, + D7 = 55, + D8 = 56, + D9 = 57, + A = 65, + B = 66, + C = 67, + D = 68, + E = 69, + F = 70, + G = 71, + H = 72, + I = 73, + J = 74, + K = 75, + L = 76, + M = 77, + N = 78, + O = 79, + P = 80, + Q = 81, + R = 82, + S = 83, + T = 84, + U = 85, + V = 86, + W = 87, + X = 88, + Y = 89, + Z = 90, + LeftWindows = 91, + RightWindows = 92, + Applications = 93, + Sleep = 95, + NumPad0 = 96, + NumPad1 = 97, + NumPad2 = 98, + NumPad3 = 99, + NumPad4 = 100, + NumPad5 = 101, + NumPad6 = 102, + NumPad7 = 103, + NumPad8 = 104, + NumPad9 = 105, + Multiply = 106, + Add = 107, + Separator = 108, + Subtract = 109, + Decimal = 110, + Divide = 111, + F1 = 112, + F2 = 113, + F3 = 114, + F4 = 115, + F5 = 116, + F6 = 117, + F7 = 118, + F8 = 119, + F9 = 120, + F10 = 121, + F11 = 122, + F12 = 123, + F13 = 124, + F14 = 125, + F15 = 126, + F16 = 127, + F17 = 128, + F18 = 129, + F19 = 130, + F20 = 131, + F21 = 132, + F22 = 133, + F23 = 134, + F24 = 135, + BrowserBack = 166, + BrowserForward = 167, + BrowserRefresh = 168, + BrowserStop = 169, + BrowserSearch = 170, + BrowserFavorites = 171, + BrowserHome = 172, + VolumeMute = 173, + VolumeDown = 174, + VolumeUp = 175, + MediaNext = 176, + MediaPrevious = 177, + MediaStop = 178, + MediaPlay = 179, + LaunchMail = 180, + LaunchMediaSelect = 181, + LaunchApp1 = 182, + LaunchApp2 = 183, + Oem1 = 186, + OemPlus = 187, + OemComma = 188, + OemMinus = 189, + OemPeriod = 190, + Oem2 = 191, + Oem3 = 192, + Oem4 = 219, + Oem5 = 220, + Oem6 = 221, + Oem7 = 222, + Oem8 = 223, + Oem102 = 226, + Process = 229, + Packet = 231, + Attention = 246, + CrSel = 247, + ExSel = 248, + EraseEndOfFile = 249, + Play = 250, + Zoom = 251, + NoName = 252, + Pa1 = 253, + OemClear = 254 +} + +// Namespace: System +[Serializable] +public struct ConsoleKeyInfo // TypeDefIndex: 1626 +{ + // Fields + internal static ConsoleKeyInfo Empty; // 0x00 + private ConsoleKey key; // 0x08 + private char keychar; // 0x0C + private ConsoleModifiers modifiers; // 0x10 + + // Properties + public ConsoleKey Key { get; } // 0x10003A80 + public char KeyChar { get; } // 0x10018DB0 + public ConsoleModifiers Modifiers { get; } // 0x100039B0 + + // Methods + public void .ctor(char keyChar, ConsoleKey key, bool shift, bool alt, bool control); // 0x10018D80 + internal void .ctor(ConsoleKeyInfo other); // 0x10018D60 + private static void .cctor(); // 0x10218410 + internal void SetKey(ConsoleKey key); // 0x10005950 + internal void SetKeyChar(char keyChar); // 0x10018D30 + internal void SetModifiers(bool shift, bool alt, bool control); // 0x10018D40 + public override bool Equals(object value); // 0x10018B90 + public bool Equals(ConsoleKeyInfo obj); // 0x10018C30 + public override int GetHashCode(); // 0x10018C60 + public static bool op_Equality(ConsoleKeyInfo a, ConsoleKeyInfo b); // 0x10218460 + public static bool op_Inequality(ConsoleKeyInfo a, ConsoleKeyInfo b); // 0x10218490 +} + +// Namespace: System +[Serializable] +public enum ConsoleModifiers // TypeDefIndex: 1627 +{ + Alt = 1, + Shift = 2, + Control = 4 +} + +// Namespace: System +[Serializable] +public enum ConsoleSpecialKey // TypeDefIndex: 1628 +{ + ControlC = 0, + ControlBreak = 1 +} + +// Namespace: System +[Serializable] +public abstract class ContextBoundObject : MarshalByRefObject // TypeDefIndex: 1629 +{ + // Methods + protected void .ctor(); // 0x100C5970 +} + +// Namespace: System +[Serializable] +public class ContextMarshalException : SystemException // TypeDefIndex: 1630 +{ + // Fields + private const int Result = -2146233084; // 0x00 + + // Methods + public void .ctor(); // 0x1021A600 + public void .ctor(string message); // 0x1021A650 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 + public void .ctor(string message, Exception inner); // 0x1021A670 +} + +// Namespace: System +[Serializable] +public class ContextStaticAttribute : Attribute // TypeDefIndex: 1631 +{ + // Methods + public void .ctor(); // 0x100C5970 +} + +// Namespace: System +internal class ControlCharacters // TypeDefIndex: 1632 +{ + // Fields + public const int Intr = 0; // 0x00 + public const int Quit = 1; // 0x00 + public const int Erase = 2; // 0x00 + public const int Kill = 3; // 0x00 + public const int EOF = 4; // 0x00 + public const int Time = 5; // 0x00 + public const int Min = 6; // 0x00 + public const int SWTC = 7; // 0x00 + public const int Start = 8; // 0x00 + public const int Stop = 9; // 0x00 + public const int Susp = 10; // 0x00 + public const int EOL = 11; // 0x00 + public const int Reprint = 12; // 0x00 + public const int Discard = 13; // 0x00 + public const int WErase = 14; // 0x00 + public const int LNext = 15; // 0x00 + public const int EOL2 = 16; // 0x00 + + // Methods + public void .ctor(); // 0x100BF000 +} + +// Namespace: System +public static class Convert // TypeDefIndex: 1633 +{ + // Fields + private const int MaxBytesPerLine = 57; // 0x00 + public static readonly object DBNull; // 0x00 + private static readonly Type[] conversionTable; // 0x04 + + // Methods + private static void .cctor(); // 0x10223460 + private static byte[] InternalFromBase64String(string str, bool allowWhitespaceOnly); // 0x1021B890 + private static byte[] InternalFromBase64CharArray(char[] arr, int offset, int length); // 0x1021B870 + public static byte[] FromBase64CharArray(char[] inArray, int offset, int length); // 0x1021B670 + public static byte[] FromBase64String(string s); // 0x1021B760 + public static TypeCode GetTypeCode(object value); // 0x1021B800 + public static bool IsDBNull(object value); // 0x1021B8B0 + public static int ToBase64CharArray(byte[] inArray, int offsetIn, int length, char[] outArray, int offsetOut); // 0x1021B930 + public static string ToBase64String(byte[] inArray); // 0x1021C130 + public static string ToBase64String(byte[] inArray, int offset, int length); // 0x1021BEB0 + public static string ToBase64String(byte[] inArray, Base64FormattingOptions options); // 0x1021BE20 + public static string ToBase64String(byte[] inArray, int offset, int length, Base64FormattingOptions options); // 0x1021BFA0 + public static int ToBase64CharArray(byte[] inArray, int offsetIn, int length, char[] outArray, int offsetOut, Base64FormattingOptions options); // 0x1021BAA0 + private static StringBuilder ToBase64StringBuilderWithLine(byte[] inArray, int offset, int length); // 0x1021BCA0 + public static bool ToBoolean(bool value); // 0x1021C280 + public static bool ToBoolean(byte value); // 0x1021C290 + public static bool ToBoolean(char value); // 0x1021C320 + public static bool ToBoolean(DateTime value); // 0x1021C3C0 + public static bool ToBoolean(Decimal value); // 0x1021C2A0 + public static bool ToBoolean(double value); // 0x1021C420 + public static bool ToBoolean(float value); // 0x1021C260 + public static bool ToBoolean(int value); // 0x1021C390 + public static bool ToBoolean(long value); // 0x1021C3A0 + public static bool ToBoolean(sbyte value); // 0x1021C290 + public static bool ToBoolean(short value); // 0x1021C380 + public static bool ToBoolean(string value); // 0x1021C5E0 + public static bool ToBoolean(string value, IFormatProvider provider); // 0x1021C4C0 + public static bool ToBoolean(uint value); // 0x1021C390 + public static bool ToBoolean(ulong value); // 0x1021C3A0 + public static bool ToBoolean(ushort value); // 0x1021C380 + public static bool ToBoolean(object value); // 0x1021C520 + public static bool ToBoolean(object value, IFormatProvider provider); // 0x1021C440 + public static byte ToByte(bool value); // 0x1021C280 + public static byte ToByte(byte value); // 0x1021C280 + public static byte ToByte(char value); // 0x1021C6B0 + public static byte ToByte(DateTime value); // 0x1021C790 + public static byte ToByte(Decimal value); // 0x1021CC10 + public static byte ToByte(double value); // 0x1021CE00 + public static byte ToByte(float value); // 0x1021C7E0 + public static byte ToByte(int value); // 0x1021C720 + public static byte ToByte(long value); // 0x1021CB90 + public static byte ToByte(sbyte value); // 0x1021CB20 + public static byte ToByte(short value); // 0x1021CA00 + public static byte ToByte(string value); // 0x1021CB00 + public static byte ToByte(string value, IFormatProvider provider); // 0x1021C970 + public static byte ToByte(string value, int fromBase); // 0x1021C8E0 + public static byte ToByte(uint value); // 0x1021C990 + public static byte ToByte(ulong value); // 0x1021CD90 + public static byte ToByte(ushort value); // 0x1021C640 + public static byte ToByte(object value); // 0x1021CF00 + public static byte ToByte(object value, IFormatProvider provider); // 0x1021CA80 + public static char ToChar(bool value); // 0x1021D4E0 + public static char ToChar(byte value); // 0x1021D220 + public static char ToChar(char value); // 0x1021D2F0 + public static char ToChar(DateTime value); // 0x1021D490 + public static char ToChar(Decimal value); // 0x1021D1D0 + public static char ToChar(double value); // 0x1021D2A0 + public static char ToChar(int value); // 0x1021D160 + public static char ToChar(long value); // 0x1021D3C0 + public static char ToChar(float value); // 0x1021CFE0 + public static char ToChar(sbyte value); // 0x1021D230 + public static char ToChar(short value); // 0x1021D0F0 + public static char ToChar(string value); // 0x1021D0A0 + public static char ToChar(string value, IFormatProvider provider); // 0x1021D440 + public static char ToChar(uint value); // 0x1021D030 + public static char ToChar(ulong value); // 0x1021D530 + public static char ToChar(ushort value); // 0x1021D2F0 + public static char ToChar(object value); // 0x1021D300 + public static char ToChar(object value, IFormatProvider provider); // 0x1021D5A0 + public static DateTime ToDateTime(string value); // 0x1021D860 + public static DateTime ToDateTime(string value, IFormatProvider provider); // 0x1021D620 + public static DateTime ToDateTime(bool value); // 0x1021D710 + public static DateTime ToDateTime(byte value); // 0x1021D810 + public static DateTime ToDateTime(char value); // 0x1021D760 + public static DateTime ToDateTime(DateTime value); // 0x1021D800 + public static DateTime ToDateTime(Decimal value); // 0x1021DBA0 + public static DateTime ToDateTime(double value); // 0x1021D7B0 + public static DateTime ToDateTime(short value); // 0x1021D950 + public static DateTime ToDateTime(int value); // 0x1021D6C0 + public static DateTime ToDateTime(long value); // 0x1021DA40 + public static DateTime ToDateTime(float value); // 0x1021D9A0 + public static DateTime ToDateTime(object value); // 0x1021DC40 + public static DateTime ToDateTime(object value, IFormatProvider provider); // 0x1021DAE0 + public static DateTime ToDateTime(sbyte value); // 0x1021D9F0 + public static DateTime ToDateTime(ushort value); // 0x1021DA90 + public static DateTime ToDateTime(uint value); // 0x1021D900 + public static DateTime ToDateTime(ulong value); // 0x1021DBF0 + public static Decimal ToDecimal(bool value); // 0x1021DEA0 + public static Decimal ToDecimal(byte value); // 0x1021DFF0 + public static Decimal ToDecimal(char value); // 0x1021DE00 + public static Decimal ToDecimal(DateTime value); // 0x1021DE50 + public static Decimal ToDecimal(Decimal value); // 0x1021D800 + public static Decimal ToDecimal(double value); // 0x1021E050 + public static Decimal ToDecimal(float value); // 0x1021E1A0 + public static Decimal ToDecimal(int value); // 0x1021E4B0 + public static Decimal ToDecimal(long value); // 0x1021E3B0 + public static Decimal ToDecimal(sbyte value); // 0x1021DD40 + public static Decimal ToDecimal(short value); // 0x1021DDA0 + public static Decimal ToDecimal(string value); // 0x1021E210 + public static Decimal ToDecimal(string value, IFormatProvider provider); // 0x1021E420 + public static Decimal ToDecimal(uint value); // 0x1021DF80 + public static Decimal ToDecimal(ulong value); // 0x1021DF10 + public static Decimal ToDecimal(ushort value); // 0x1021E2A0 + public static Decimal ToDecimal(object value); // 0x1021E0C0 + public static Decimal ToDecimal(object value, IFormatProvider provider); // 0x1021E300 + public static double ToDouble(bool value); // 0x1021E6E0 + public static double ToDouble(byte value); // 0x1021E6E0 + public static double ToDouble(char value); // 0x1021E690 + public static double ToDouble(DateTime value); // 0x1021E510 + public static double ToDouble(Decimal value); // 0x1021E580 + public static double ToDouble(double value); // 0x1021E7C0 + public static double ToDouble(float value); // 0x1021E8B0 + public static double ToDouble(int value); // 0x1021E630 + public static double ToDouble(long value); // 0x1021E670 + public static double ToDouble(sbyte value); // 0x1021E700 + public static double ToDouble(short value); // 0x1021E560 + public static double ToDouble(string value); // 0x1021E5E0 + public static double ToDouble(string value, IFormatProvider provider); // 0x1021E7A0 + public static double ToDouble(uint value); // 0x1021E600 + public static double ToDouble(ulong value); // 0x1021E650 + public static double ToDouble(ushort value); // 0x1021E890 + public static double ToDouble(object value); // 0x1021E7D0 + public static double ToDouble(object value, IFormatProvider provider); // 0x1021E720 + public static short ToInt16(bool value); // 0x1021D220 + public static short ToInt16(byte value); // 0x1021D220 + public static short ToInt16(char value); // 0x1021ECC0 + public static short ToInt16(DateTime value); // 0x1021EC70 + public static short ToInt16(Decimal value); // 0x1021E980 + public static short ToInt16(double value); // 0x1021F050 + public static short ToInt16(float value); // 0x1021ED30 + public static short ToInt16(int value); // 0x1021EE60 + public static short ToInt16(long value); // 0x1021EED0 + public static short ToInt16(sbyte value); // 0x1021EC60 + public static short ToInt16(short value); // 0x1021D2F0 + public static short ToInt16(string value); // 0x1021EE40 + public static short ToInt16(string value, IFormatProvider provider); // 0x1021F0F0 + public static short ToInt16(string value, int fromBase); // 0x1021EF50 + public static short ToInt16(uint value); // 0x1021EDD0 + public static short ToInt16(ulong value); // 0x1021EB00 + public static short ToInt16(ushort value); // 0x1021EBF0 + public static short ToInt16(object value); // 0x1021E8C0 + public static short ToInt16(object value, IFormatProvider provider); // 0x1021EB70 + public static int ToInt32(bool value); // 0x1021D220 + public static int ToInt32(byte value); // 0x1021D220 + public static int ToInt32(char value); // 0x1021F120 + public static int ToInt32(DateTime value); // 0x1021F420 + public static int ToInt32(Decimal value); // 0x1021F4F0 + public static int ToInt32(double value); // 0x1021F300 + public static int ToInt32(float value); // 0x1021F670 + public static int ToInt32(int value); // 0x100F7810 + public static int ToInt32(long value); // 0x1021F1F0 + public static int ToInt32(sbyte value); // 0x1021F110 + public static int ToInt32(short value); // 0x1021F290 + public static int ToInt32(string value); // 0x1021F270 + public static int ToInt32(string value, IFormatProvider provider); // 0x1021F7A0 + public static int ToInt32(string value, int fromBase); // 0x1021F2A0 + public static int ToInt32(uint value); // 0x1021F3B0 + public static int ToInt32(ulong value); // 0x1021F730 + public static int ToInt32(ushort value); // 0x1021F120 + public static int ToInt32(object value); // 0x1021F130 + public static int ToInt32(object value, IFormatProvider provider); // 0x1021F470 + public static long ToInt64(bool value); // 0x1021FB70 + public static long ToInt64(byte value); // 0x1021FB70 + public static long ToInt64(char value); // 0x1021FB80 + public static long ToInt64(DateTime value); // 0x1021F7E0 + public static long ToInt64(Decimal value); // 0x1021FBA0 + public static long ToInt64(double value); // 0x1021F830 + public static long ToInt64(float value); // 0x1021FAA0 + public static long ToInt64(int value); // 0x100FCEB0 + public static long ToInt64(long value); // 0x1021FD30 + public static long ToInt64(sbyte value); // 0x1021F950 + public static long ToInt64(short value); // 0x1021FB90 + public static long ToInt64(string value); // 0x1021FB40 + public static long ToInt64(string value, IFormatProvider provider); // 0x1021F7C0 + public static long ToInt64(string value, int fromBase); // 0x1021FD40 + public static long ToInt64(uint value); // 0x1021FB60 + public static long ToInt64(ulong value); // 0x1021F8D0 + public static long ToInt64(ushort value); // 0x1021FB80 + public static long ToInt64(object value); // 0x1021F960 + public static long ToInt64(object value, IFormatProvider provider); // 0x1021FA20 + public static sbyte ToSByte(bool value); // 0x1021C280 + public static sbyte ToSByte(byte value); // 0x102203D0 + public static sbyte ToSByte(char value); // 0x102204B0 + public static sbyte ToSByte(DateTime value); // 0x10220600 + public static sbyte ToSByte(Decimal value); // 0x1021FDA0 + public static sbyte ToSByte(double value); // 0x10220330 + public static sbyte ToSByte(float value); // 0x10220070 + public static sbyte ToSByte(int value); // 0x10220440 + public static sbyte ToSByte(long value); // 0x1021FF10 + public static sbyte ToSByte(sbyte value); // 0x1021C280 + public static sbyte ToSByte(short value); // 0x10220650 + public static sbyte ToSByte(string value); // 0x10220310 + public static sbyte ToSByte(string value, IFormatProvider provider); // 0x10220520 + public static sbyte ToSByte(string value, int fromBase); // 0x10220250 + public static sbyte ToSByte(uint value); // 0x10220000 + public static sbyte ToSByte(ulong value); // 0x10220590 + public static sbyte ToSByte(ushort value); // 0x1021FF90 + public static sbyte ToSByte(object value); // 0x10220110 + public static sbyte ToSByte(object value, IFormatProvider provider); // 0x102201D0 + public static float ToSingle(bool value); // 0x10220880 + public static float ToSingle(byte value); // 0x10220880 + public static float ToSingle(char value); // 0x10220790 + public static float ToSingle(DateTime value); // 0x102209F0 + public static float ToSingle(Decimal value); // 0x102206E0 + public static float ToSingle(double value); // 0x10220740 + public static float ToSingle(float value); // 0x1021E8B0 + public static float ToSingle(int value); // 0x102206C0 + public static float ToSingle(long value); // 0x102208C0 + public static float ToSingle(sbyte value); // 0x10220750 + public static float ToSingle(short value); // 0x102207E0 + public static float ToSingle(string value); // 0x102208E0 + public static float ToSingle(string value, IFormatProvider provider); // 0x10220A40 + public static float ToSingle(uint value); // 0x102209C0 + public static float ToSingle(ulong value); // 0x102208A0 + public static float ToSingle(ushort value); // 0x10220770 + public static float ToSingle(object value); // 0x10220900 + public static float ToSingle(object value, IFormatProvider provider); // 0x10220800 + public static string ToString(bool value); // 0x10220E00 + public static string ToString(bool value, IFormatProvider provider); // 0x10220E00 + public static string ToString(byte value); // 0x10220D80 + public static string ToString(byte value, IFormatProvider provider); // 0x10220DE0 + public static string ToString(byte value, int toBase); // 0x102212E0 + public static string ToString(char value); // 0x10220DA0 + public static string ToString(char value, IFormatProvider provider); // 0x10220DA0 + public static string ToString(DateTime value); // 0x10220C50 + public static string ToString(DateTime value, IFormatProvider provider); // 0x10221490 + public static string ToString(Decimal value); // 0x10220BD0 + public static string ToString(Decimal value, IFormatProvider provider); // 0x10221450 + public static string ToString(double value); // 0x10221100 + public static string ToString(double value, IFormatProvider provider); // 0x10221430 + public static string ToString(float value); // 0x10220D60 + public static string ToString(float value, IFormatProvider provider); // 0x102214B0 + public static string ToString(int value); // 0x102210E0 + public static string ToString(int value, int toBase); // 0x10220E60 + public static string ToString(int value, IFormatProvider provider); // 0x10220DC0 + public static string ToString(long value); // 0x10221160 + public static string ToString(long value, int toBase); // 0x10221180 + public static string ToString(long value, IFormatProvider provider); // 0x10220E40 + public static string ToString(object value); // 0x10220FB0 + public static string ToString(object value, IFormatProvider provider); // 0x10220C90 + public static string ToString(sbyte value); // 0x102210C0 + public static string ToString(sbyte value, IFormatProvider provider); // 0x10220C30 + public static string ToString(short value); // 0x10220BF0 + public static string ToString(short value, int toBase); // 0x10220A80 + public static string ToString(short value, IFormatProvider provider); // 0x10221120 + public static string ToString(string value); // 0x100F7810 + public static string ToString(string value, IFormatProvider provider); // 0x100F7810 + public static string ToString(uint value); // 0x10220A60 + public static string ToString(uint value, IFormatProvider provider); // 0x10220C10 + public static string ToString(ulong value); // 0x10221140 + public static string ToString(ulong value, IFormatProvider provider); // 0x10220C70 + public static string ToString(ushort value); // 0x10221470 + public static string ToString(ushort value, IFormatProvider provider); // 0x10220E20 + public static ushort ToUInt16(bool value); // 0x1021D220 + public static ushort ToUInt16(byte value); // 0x1021D220 + public static ushort ToUInt16(char value); // 0x1021D2F0 + public static ushort ToUInt16(DateTime value); // 0x102224F0 + public static ushort ToUInt16(Decimal value); // 0x10222240 + public static ushort ToUInt16(double value); // 0x10221F70 + public static ushort ToUInt16(float value); // 0x10222540 + public static ushort ToUInt16(int value); // 0x10222160 + public static ushort ToUInt16(long value); // 0x10222000 + public static ushort ToUInt16(sbyte value); // 0x10222080 + public static ushort ToUInt16(short value); // 0x102223C0 + public static ushort ToUInt16(string value); // 0x10221EB0 + public static ushort ToUInt16(string value, IFormatProvider provider); // 0x10221ED0 + public static ushort ToUInt16(string value, int fromBase); // 0x102225E0 + public static ushort ToUInt16(uint value); // 0x102220F0 + public static ushort ToUInt16(ulong value); // 0x102221D0 + public static ushort ToUInt16(ushort value); // 0x1021D2F0 + public static ushort ToUInt16(object value); // 0x10222430 + public static ushort ToUInt16(object value, IFormatProvider provider); // 0x10221EF0 + public static uint ToUInt32(bool value); // 0x1021D220 + public static uint ToUInt32(byte value); // 0x1021D220 + public static uint ToUInt32(char value); // 0x1021F120 + public static uint ToUInt32(DateTime value); // 0x10222D50 + public static uint ToUInt32(Decimal value); // 0x102226A0 + public static uint ToUInt32(double value); // 0x10222820 + public static uint ToUInt32(float value); // 0x10222B10 + public static uint ToUInt32(int value); // 0x10222990 + public static uint ToUInt32(long value); // 0x102228B0 + public static uint ToUInt32(sbyte value); // 0x10222CE0 + public static uint ToUInt32(short value); // 0x10222A00 + public static uint ToUInt32(string value); // 0x10222DA0 + public static uint ToUInt32(string value, IFormatProvider provider); // 0x10222A70 + public static uint ToUInt32(string value, int fromBase); // 0x10222930 + public static uint ToUInt32(uint value); // 0x100F7810 + public static uint ToUInt32(ulong value); // 0x10222BB0 + public static uint ToUInt32(ushort value); // 0x1021F120 + public static uint ToUInt32(object value); // 0x10222C20 + public static uint ToUInt32(object value, IFormatProvider provider); // 0x10222A90 + public static ulong ToUInt64(bool value); // 0x1021FB70 + public static ulong ToUInt64(byte value); // 0x1021FB70 + public static ulong ToUInt64(char value); // 0x1021FB80 + public static ulong ToUInt64(DateTime value); // 0x10223000 + public static ulong ToUInt64(Decimal value); // 0x10222DC0 + public static ulong ToUInt64(double value); // 0x102232F0 + public static ulong ToUInt64(float value); // 0x10223050 + public static ulong ToUInt64(int value); // 0x10223280 + public static ulong ToUInt64(long value); // 0x102233F0 + public static ulong ToUInt64(sbyte value); // 0x10223200 + public static ulong ToUInt64(short value); // 0x102230F0 + public static ulong ToUInt64(string value); // 0x102231E0 + public static ulong ToUInt64(string value, IFormatProvider provider); // 0x10223260 + public static ulong ToUInt64(string value, int fromBase); // 0x10223390 + public static ulong ToUInt64(uint value); // 0x1021FB60 + public static ulong ToUInt64(ulong value); // 0x1021FD30 + public static ulong ToUInt64(ushort value); // 0x1021FB80 + public static ulong ToUInt64(object value); // 0x10222F40 + public static ulong ToUInt64(object value, IFormatProvider provider); // 0x10223160 + public static object ChangeType(object value, Type conversionType); // 0x1021A860 + public static object ChangeType(object value, TypeCode typeCode); // 0x1021A6A0 + public static object ChangeType(object value, Type conversionType, IFormatProvider provider); // 0x1021A980 + public static object ChangeType(object value, TypeCode typeCode, IFormatProvider provider); // 0x1021A7E0 + private static bool NotValidBase(int value); // 0x1021B900 + private static int ConvertFromBase(string value, int fromBase, bool unsigned); // 0x1021ADF0 + private static long ConvertFromBase64(string value, int fromBase, bool unsigned); // 0x1021AA10 + private static void EndianSwap(byte[] value); // 0x1021B5D0 + private static string ConvertToBase2(byte[] value); // 0x1021B2F0 + private static string ConvertToBase8(byte[] value); // 0x1021B420 + private static string ConvertToBase16(byte[] value); // 0x1021B190 + internal static object ToType(object value, Type conversionType, IFormatProvider provider, bool try_target_to_type); // 0x102214D0 +} + +// Namespace: System +[Serializable] +public sealed class DBNull : IConvertible, ISerializable // TypeDefIndex: 1634 +{ + // Fields + public static readonly DBNull Value; // 0x00 + + // Methods + private void .ctor(); // 0x100BF000 + private void .ctor(SerializationInfo info, StreamingContext context); // 0x102DF390 + private static void .cctor(); // 0x102DF340 + private bool System.IConvertible.ToBoolean(IFormatProvider provider); // 0x102DED60 + private byte System.IConvertible.ToByte(IFormatProvider provider); // 0x102DEDB0 + private char System.IConvertible.ToChar(IFormatProvider provider); // 0x102DEE00 + private DateTime System.IConvertible.ToDateTime(IFormatProvider provider); // 0x102DEE50 + private Decimal System.IConvertible.ToDecimal(IFormatProvider provider); // 0x102DEEA0 + private double System.IConvertible.ToDouble(IFormatProvider provider); // 0x102DEEF0 + private short System.IConvertible.ToInt16(IFormatProvider provider); // 0x102DEF40 + private int System.IConvertible.ToInt32(IFormatProvider provider); // 0x102DEF90 + private long System.IConvertible.ToInt64(IFormatProvider provider); // 0x102DEFE0 + private sbyte System.IConvertible.ToSByte(IFormatProvider provider); // 0x102DF030 + private float System.IConvertible.ToSingle(IFormatProvider provider); // 0x102DF080 + private object System.IConvertible.ToType(Type targetType, IFormatProvider provider); // 0x102DF0D0 + private ushort System.IConvertible.ToUInt16(IFormatProvider provider); // 0x102DF1B0 + private uint System.IConvertible.ToUInt32(IFormatProvider provider); // 0x102DF200 + private ulong System.IConvertible.ToUInt64(IFormatProvider provider); // 0x102DF250 + public void GetObjectData(SerializationInfo info, StreamingContext context); // 0x102DED40 + public TypeCode GetTypeCode(); // 0x1016F1E0 + public override string ToString(); // 0x102DF2A0 + public string ToString(IFormatProvider provider); // 0x102DF2F0 +} + +// Namespace: System +[Serializable] +public sealed class DataMisalignedException : SystemException // TypeDefIndex: 1635 +{ + // Fields + private const int Result = -2146233023; // 0x00 + + // Methods + public void .ctor(); // 0x102DF3F0 + public void .ctor(string message); // 0x102DF470 + public void .ctor(string message, Exception innerException); // 0x102DF440 +} + +// Namespace: System +[Serializable] +public struct DateTime : IFormattable, IConvertible, IComparable, IComparable`1, IEquatable`1 // TypeDefIndex: 1636 +{ + // Fields + private const int dp400 = 146097; // 0x00 + private const int dp100 = 36524; // 0x00 + private const int dp4 = 1461; // 0x00 + private const long w32file_epoch = 504911232000000000; // 0x00 + private const long MAX_VALUE_TICKS = 3155378975999999999; // 0x00 + internal const long UnixEpoch = 621355968000000000; // 0x00 + private const long ticks18991230 = 599264352000000000; // 0x00 + private const double OAMinValue = -657435; // 0x00 + private const double OAMaxValue = 2958466; // 0x00 + private const string formatExceptionMessage = "String was not recognized as a valid DateTime."; // 0x00 + private TimeSpan ticks; // 0x08 + private DateTimeKind kind; // 0x10 + public static readonly DateTime MaxValue; // 0x00 + public static readonly DateTime MinValue; // 0x10 + private static readonly string[] ParseTimeFormats; // 0x20 + private static readonly string[] ParseYearDayMonthFormats; // 0x24 + private static readonly string[] ParseYearMonthDayFormats; // 0x28 + private static readonly string[] ParseDayMonthYearFormats; // 0x2C + private static readonly string[] ParseMonthDayYearFormats; // 0x30 + private static readonly string[] MonthDayShortFormats; // 0x34 + private static readonly string[] DayMonthShortFormats; // 0x38 + private static readonly int[] daysmonth; // 0x3C + private static readonly int[] daysmonthleap; // 0x40 + private static object to_local_time_span_object; // 0x44 + private static long last_now; // 0x48 + + // Properties + public DateTime Date { get; } // 0x1001E350 + public int Month { get; } // 0x1001D1A0 + public int Day { get; } // 0x1001D0E0 + public DayOfWeek DayOfWeek { get; } // 0x1001D090 + public int DayOfYear { get; } // 0x1001D0C0 + public TimeSpan TimeOfDay { get; } // 0x1001D1F0 + public int Hour { get; } // 0x1001D100 + public int Minute { get; } // 0x1001D180 + public int Second { get; } // 0x1001D1D0 + public int Millisecond { get; } // 0x1001D160 + public static DateTime Now { get; } // 0x102EC180 + public long Ticks { get; } // 0x10019A10 + public static DateTime Today { get; } // 0x102EC380 + public static DateTime UtcNow { get; } // 0x102EC430 + public int Year { get; } // 0x1001D270 + public DateTimeKind Kind { get; } // 0x100039B0 + + // Methods + public void .ctor(long ticks); // 0x1001E2A0 + public void .ctor(int year, int month, int day); // 0x1001E310 + public void .ctor(int year, int month, int day, int hour, int minute, int second); // 0x1001E130 + public void .ctor(int year, int month, int day, int hour, int minute, int second, int millisecond); // 0x1001E340 + public void .ctor(int year, int month, int day, Calendar calendar); // 0x1001E1F0 + public void .ctor(int year, int month, int day, int hour, int minute, int second, Calendar calendar); // 0x1001E2E0 + public void .ctor(int year, int month, int day, int hour, int minute, int second, int millisecond, Calendar calendar); // 0x1001E1E0 + internal void .ctor(bool check, TimeSpan value); // 0x1001E2C0 + public void .ctor(long ticks, DateTimeKind kind); // 0x1001E270 + public void .ctor(int year, int month, int day, int hour, int minute, int second, DateTimeKind kind); // 0x1001E1A0 + public void .ctor(int year, int month, int day, int hour, int minute, int second, int millisecond, DateTimeKind kind); // 0x1001E160 + public void .ctor(int year, int month, int day, int hour, int minute, int second, int millisecond, Calendar calendar, DateTimeKind kind); // 0x1001E220 + private static void .cctor(); // 0x102EA320 + private bool System.IConvertible.ToBoolean(IFormatProvider provider); // 0x1001DA20 + private byte System.IConvertible.ToByte(IFormatProvider provider); // 0x1001DA40 + private char System.IConvertible.ToChar(IFormatProvider provider); // 0x1001DA60 + private DateTime System.IConvertible.ToDateTime(IFormatProvider provider); // 0x1001DA80 + private Decimal System.IConvertible.ToDecimal(IFormatProvider provider); // 0x1001DAA0 + private double System.IConvertible.ToDouble(IFormatProvider provider); // 0x1001DAC0 + private short System.IConvertible.ToInt16(IFormatProvider provider); // 0x1001DAE0 + private int System.IConvertible.ToInt32(IFormatProvider provider); // 0x1001DB00 + private long System.IConvertible.ToInt64(IFormatProvider provider); // 0x1001DB20 + private sbyte System.IConvertible.ToSByte(IFormatProvider provider); // 0x1001DB40 + private float System.IConvertible.ToSingle(IFormatProvider provider); // 0x1001DB60 + private object System.IConvertible.ToType(Type targetType, IFormatProvider provider); // 0x1001DB80 + private ushort System.IConvertible.ToUInt16(IFormatProvider provider); // 0x1001DCF0 + private uint System.IConvertible.ToUInt32(IFormatProvider provider); // 0x1001DD10 + private ulong System.IConvertible.ToUInt64(IFormatProvider provider); // 0x1001DD30 + private static int AbsoluteDays(int year, int month, int day); // 0x102E4280 + private int FromTicks(Which what); // 0x1001D750 + internal static long GetTimeMonotonic(); // 0x102E5E00 + internal static long GetNow(); // 0x102E5DF0 + public DateTime Add(TimeSpan value); // 0x1001D4D0 + public DateTime AddDays(double value); // 0x1001D290 + public DateTime AddTicks(long value); // 0x1001D460 + public DateTime AddHours(double value); // 0x1001D2F0 + public DateTime AddMilliseconds(double value); // 0x1001D330 + private DateTime AddRoundedMilliseconds(double ms); // 0x1001D3E0 + public DateTime AddMinutes(double value); // 0x1001D370 + public DateTime AddMonths(int months); // 0x1001D3B0 + public DateTime AddSeconds(double value); // 0x1001D420 + public DateTime AddYears(int value); // 0x1001D490 + public static int Compare(DateTime t1, DateTime t2); // 0x102E4AC0 + public int CompareTo(object value); // 0x1001D550 + public bool IsDaylightSavingTime(); // 0x1001D900 + public int CompareTo(DateTime value); // 0x1001D520 + public bool Equals(DateTime value); // 0x1001D6F0 + public long ToBinary(); // 0x1001DD50 + public static DateTime FromBinary(long dateData); // 0x102E5560 + public static DateTime SpecifyKind(DateTime value, DateTimeKind kind); // 0x102E6850 + public static int DaysInMonth(int year, int month); // 0x102E52F0 + public override bool Equals(object value); // 0x1001D640 + public static bool Equals(DateTime t1, DateTime t2); // 0x102E53F0 + public static DateTime FromFileTime(long fileTime); // 0x102E56C0 + public static DateTime FromFileTimeUtc(long fileTime); // 0x102E5630 + public static DateTime FromOADate(double d); // 0x102E5770 + public string[] GetDateTimeFormats(); // 0x1001D760 + public string[] GetDateTimeFormats(char format); // 0x1001D7D0 + public string[] GetDateTimeFormats(IFormatProvider provider); // 0x1001D7C0 + public string[] GetDateTimeFormats(char format, IFormatProvider provider); // 0x1001D8E0 + private string[] GetDateTimeFormats(bool adjustutc, string[] patterns, DateTimeFormatInfo dfi); // 0x1001D8D0 + private void CheckDateTimeKind(DateTimeKind kind); // 0x1001D510 + public override int GetHashCode(); // 0x10003A80 + public TypeCode GetTypeCode(); // 0x1001D8F0 + public static bool IsLeapYear(int year); // 0x102E5E10 + public static DateTime Parse(string s); // 0x102E6700 + public static DateTime Parse(string s, IFormatProvider provider); // 0x102E65F0 + public static DateTime Parse(string s, IFormatProvider provider, DateTimeStyles styles); // 0x102E6520 + internal static bool CoreParse(string s, IFormatProvider provider, DateTimeStyles styles, out DateTime result, out DateTimeOffset dto, bool setExceptionOnError, Exception exception); // 0x102E4B60 + public static DateTime ParseExact(string s, string format, IFormatProvider provider); // 0x102E63E0 + private static string[] YearMonthDayFormats(DateTimeFormatInfo dfi, bool setExceptionOnError, Exception exc); // 0x102E75D0 + private static int _ParseNumber(string s, int valuePos, int min_digits, int digits, bool leadingzero, bool sloppy_parsing, out int num_parsed); // 0x102EA010 + private static int _ParseEnum(string s, int sPos, string[] values, string[] invValues, bool exact, out int num_parsed); // 0x102E9E30 + private static bool _ParseString(string s, int sPos, int maxlength, string value, out int num_parsed); // 0x102EA180 + private static bool _ParseAmPm(string s, int valuePos, int num, DateTimeFormatInfo dfi, bool exact, out int num_parsed, int ampm); // 0x102E9A70 + private static bool _ParseTimeSeparator(string s, int sPos, DateTimeFormatInfo dfi, bool exact, out int num_parsed); // 0x102EA260 + private static bool _ParseDateSeparator(string s, int sPos, DateTimeFormatInfo dfi, bool exact, out int num_parsed); // 0x102E9D00 + private static bool IsLetter(string s, int pos); // 0x102E5EC0 + private static bool _DoParse(string s, string firstPart, string secondPart, bool exact, out DateTime result, out DateTimeOffset dto, DateTimeFormatInfo dfi, DateTimeStyles style, bool firstPartIsDate, bool incompleteFormat, bool longYear); // 0x102E7890 + public static DateTime ParseExact(string s, string format, IFormatProvider provider, DateTimeStyles style); // 0x102E5F40 + public static DateTime ParseExact(string s, string[] formats, IFormatProvider provider, DateTimeStyles style); // 0x102E6040 + private static void CheckStyle(DateTimeStyles style); // 0x102E48C0 + public static bool TryParse(string s, out DateTime result); // 0x102E7350 + public static bool TryParse(string s, IFormatProvider provider, DateTimeStyles styles, out DateTime result); // 0x102E7490 + public static bool TryParseExact(string s, string format, IFormatProvider provider, DateTimeStyles style, out DateTime result); // 0x102E7290 + public static bool TryParseExact(string s, string[] formats, IFormatProvider provider, DateTimeStyles style, out DateTime result); // 0x102E7130 + private static bool ParseExact(string s, string[] formats, DateTimeFormatInfo dfi, DateTimeStyles style, out DateTime ret, bool exact, bool longYear, bool setExceptionOnError, Exception exception); // 0x102E6240 + public TimeSpan Subtract(DateTime value); // 0x1001D990 + public DateTime Subtract(TimeSpan value); // 0x1001D9F0 + public long ToFileTime(); // 0x1001DE30 + public long ToFileTimeUtc(); // 0x1001DDB0 + public string ToLongDateString(); // 0x1001DE70 + public string ToLongTimeString(); // 0x1001DEB0 + public double ToOADate(); // 0x1001DEF0 + public string ToShortDateString(); // 0x1001DFF0 + public string ToShortTimeString(); // 0x1001E030 + public override string ToString(); // 0x1001E090 + public string ToString(IFormatProvider provider); // 0x1001E070 + public string ToString(string format); // 0x1001E0D0 + public string ToString(string format, IFormatProvider provider); // 0x1001E0F0 + public DateTime ToLocalTime(); // 0x1001DE40 + public DateTime ToUniversalTime(); // 0x1001E100 + public static DateTime op_Addition(DateTime d, TimeSpan t); // 0x102EC4C0 + public static bool op_Equality(DateTime d1, DateTime d2); // 0x102EC540 + public static bool op_GreaterThan(DateTime t1, DateTime t2); // 0x102EC600 + public static bool op_GreaterThanOrEqual(DateTime t1, DateTime t2); // 0x102EC5A0 + public static bool op_Inequality(DateTime d1, DateTime d2); // 0x102EC660 + public static bool op_LessThan(DateTime t1, DateTime t2); // 0x102EC720 + public static bool op_LessThanOrEqual(DateTime t1, DateTime t2); // 0x102EC6C0 + public static TimeSpan op_Subtraction(DateTime d1, DateTime d2); // 0x102EC800 + public static DateTime op_Subtraction(DateTime d, TimeSpan t); // 0x102EC780 +} + +// Namespace: +private enum Which // TypeDefIndex: 1637 +{ + Day = 0, + DayYear = 1, + Month = 2, + Year = 3 +} + +// Namespace: System +[Serializable] +public enum DateTimeKind // TypeDefIndex: 1638 +{ + Unspecified = 0, + Utc = 1, + Local = 2 +} + +// Namespace: System +[Serializable] +public struct DateTimeOffset : IFormattable, IComparable, ISerializable, IComparable`1, IEquatable`1, IDeserializationCallback // TypeDefIndex: 1639 +{ + // Fields + public static readonly DateTimeOffset MaxValue; // 0x00 + public static readonly DateTimeOffset MinValue; // 0x18 + private DateTime dt; // 0x08 + private TimeSpan utc_offset; // 0x18 + + // Properties + public DateTime Date { get; } // 0x1001CFC0 + public DateTime DateTime { get; } // 0x1001CF90 + public int Day { get; } // 0x1001D0E0 + public DayOfWeek DayOfWeek { get; } // 0x1001D090 + public int DayOfYear { get; } // 0x1001D0C0 + public int Hour { get; } // 0x1001D100 + public DateTime LocalDateTime { get; } // 0x1001D120 + public int Millisecond { get; } // 0x1001D160 + public int Minute { get; } // 0x1001D180 + public int Month { get; } // 0x1001D1A0 + public static DateTimeOffset Now { get; } // 0x102E2AE0 + public TimeSpan Offset { get; } // 0x1001D1C0 + public int Second { get; } // 0x1001D1D0 + public long Ticks { get; } // 0x10019A10 + public TimeSpan TimeOfDay { get; } // 0x1001D1F0 + public DateTime UtcDateTime { get; } // 0x1001D210 + public static DateTimeOffset UtcNow { get; } // 0x102E2C20 + public long UtcTicks { get; } // 0x1001D240 + public int Year { get; } // 0x1001D270 + + // Methods + public void .ctor(DateTime dateTime); // 0x1001CF30 + public void .ctor(DateTime dateTime, TimeSpan offset); // 0x1001CF60 + public void .ctor(long ticks, TimeSpan offset); // 0x1001CE80 + public void .ctor(int year, int month, int day, int hour, int minute, int second, TimeSpan offset); // 0x1001CED0 + public void .ctor(int year, int month, int day, int hour, int minute, int second, int millisecond, TimeSpan offset); // 0x1001CC90 + public void .ctor(int year, int month, int day, int hour, int minute, int second, int millisecond, Calendar calendar, TimeSpan offset); // 0x1001CCF0 + private void .ctor(SerializationInfo info, StreamingContext context); // 0x1001CD50 + private static void .cctor(); // 0x102E2320 + private int System.IComparable.CompareTo(object obj); // 0x1001C810 + private void System.Runtime.Serialization.ISerializable.GetObjectData(SerializationInfo info, StreamingContext context); // 0x1001C8C0 + private void System.Runtime.Serialization.IDeserializationCallback.OnDeserialization(object sender); // 0x10003900 + public DateTimeOffset Add(TimeSpan timeSpan); // 0x1001C480 + public DateTimeOffset AddDays(double days); // 0x1001C0B0 + public DateTimeOffset AddHours(double hours); // 0x1001C140 + public DateTimeOffset AddMilliseconds(double milliseconds); // 0x1001C1C0 + public DateTimeOffset AddMinutes(double minutes); // 0x1001C230 + public DateTimeOffset AddMonths(int months); // 0x1001C2B0 + public DateTimeOffset AddSeconds(double seconds); // 0x1001C320 + public DateTimeOffset AddTicks(long ticks); // 0x1001C3A0 + public DateTimeOffset AddYears(int years); // 0x1001C410 + public static int Compare(DateTimeOffset first, DateTimeOffset second); // 0x102DF550 + public int CompareTo(DateTimeOffset other); // 0x1001C500 + public bool Equals(DateTimeOffset other); // 0x1001C650 + public override bool Equals(object obj); // 0x1001C680 + public static bool Equals(DateTimeOffset first, DateTimeOffset second); // 0x102E09B0 + public bool EqualsExact(DateTimeOffset other); // 0x1001C560 + public static DateTimeOffset FromFileTime(long fileTime); // 0x102E09E0 + public override int GetHashCode(); // 0x1001C780 + public static DateTimeOffset Parse(string input); // 0x102E1640 + public static DateTimeOffset Parse(string input, IFormatProvider formatProvider); // 0x102E15D0 + public static DateTimeOffset Parse(string input, IFormatProvider formatProvider, DateTimeStyles styles); // 0x102E16F0 + public static DateTimeOffset ParseExact(string input, string format, IFormatProvider formatProvider); // 0x102E0F00 + public static DateTimeOffset ParseExact(string input, string format, IFormatProvider formatProvider, DateTimeStyles styles); // 0x102E12A0 + public static DateTimeOffset ParseExact(string input, string[] formats, IFormatProvider formatProvider, DateTimeStyles styles); // 0x102E0F80 + private static bool ParseExact(string input, string[] formats, DateTimeFormatInfo dfi, DateTimeStyles styles, out DateTimeOffset ret); // 0x102E0D70 + private static bool DoParse(string input, string format, bool exact, out DateTimeOffset result, DateTimeFormatInfo dfi, DateTimeStyles styles); // 0x102DF5B0 + private static int ParseNumber(string input, int pos, int digits, bool leading_zero, bool allow_leading_white, out int result); // 0x102E1420 + private static int ParseNumber(string input, int pos, int digits, bool leading_zero, bool allow_leading_white, out int result, out int digit_parsed); // 0x102E1490 + private static int ParseEnum(string input, int pos, string[] enums, bool allow_leading_white, out int result); // 0x102E0C80 + private static int ParseChar(string input, int pos, char c, bool allow_leading_white, out int result); // 0x102E0C00 + public TimeSpan Subtract(DateTimeOffset value); // 0x1001C7E0 + public DateTimeOffset Subtract(TimeSpan value); // 0x1001C7A0 + public long ToFileTime(); // 0x1001C9A0 + public DateTimeOffset ToLocalTime(); // 0x1001C9E0 + public DateTimeOffset ToOffset(TimeSpan offset); // 0x1001CB00 + public override string ToString(); // 0x1001CC30 + public string ToString(IFormatProvider formatProvider); // 0x1001CC10 + public string ToString(string format); // 0x1001CBF0 + public string ToString(string format, IFormatProvider formatProvider); // 0x1001CBE0 + public DateTimeOffset ToUniversalTime(); // 0x1001CC50 + public static bool TryParse(string input, out DateTimeOffset result); // 0x102E2020 + public static bool TryParse(string input, IFormatProvider formatProvider, DateTimeStyles styles, out DateTimeOffset result); // 0x102E21E0 + public static bool TryParseExact(string input, string format, IFormatProvider formatProvider, DateTimeStyles styles, out DateTimeOffset result); // 0x102E1EE0 + public static bool TryParseExact(string input, string[] formats, IFormatProvider formatProvider, DateTimeStyles styles, out DateTimeOffset result); // 0x102E1DA0 + public static DateTimeOffset op_Addition(DateTimeOffset dateTimeTz, TimeSpan timeSpan); // 0x102E2D00 + public static bool op_Equality(DateTimeOffset left, DateTimeOffset right); // 0x102E09B0 + public static bool op_GreaterThan(DateTimeOffset left, DateTimeOffset right); // 0x102E2E40 + public static bool op_GreaterThanOrEqual(DateTimeOffset left, DateTimeOffset right); // 0x102E2D70 + public static DateTimeOffset op_Implicit(DateTime dateTime); // 0x102E2F10 + public static bool op_Inequality(DateTimeOffset left, DateTimeOffset right); // 0x102E2F40 + public static bool op_LessThan(DateTimeOffset left, DateTimeOffset right); // 0x102E30E0 + public static bool op_LessThanOrEqual(DateTimeOffset left, DateTimeOffset right); // 0x102E3010 + public static TimeSpan op_Subtraction(DateTimeOffset left, DateTimeOffset right); // 0x102E31F0 + public static DateTimeOffset op_Subtraction(DateTimeOffset dateTimeTz, TimeSpan timeSpan); // 0x102E31B0 +} + +// Namespace: System +internal static class DateTimeUtils // TypeDefIndex: 1640 +{ + // Methods + public static int CountRepeat(string fmt, int p, char c); // 0x102E3220 + public static void ZeroPad(StringBuilder output, int digits, int len); // 0x102E41B0 + public static int ParseQuotedString(string fmt, int pos, StringBuilder output); // 0x102E3500 + public static string GetStandardPattern(char format, DateTimeFormatInfo dfi, out bool useutc, out bool use_invariant); // 0x102E3270 + public static string GetStandardPattern(char format, DateTimeFormatInfo dfi, out bool useutc, out bool use_invariant, bool date_time_offset); // 0x102E3290 + public static string ToString(DateTime dt, string format, DateTimeFormatInfo dfi); // 0x102E4180 + public static string ToString(DateTime dt, Nullable`1 utc_offset, string format, DateTimeFormatInfo dfi); // 0x102E3600 +} + +// Namespace: System +[Serializable] +public enum DayOfWeek // TypeDefIndex: 1641 +{ + Sunday = 0, + Monday = 1, + Tuesday = 2, + Wednesday = 3, + Thursday = 4, + Friday = 5, + Saturday = 6 +} + +// Namespace: System +internal class DelegateData // TypeDefIndex: 1642 +{ + // Fields + public Type target_type; // 0x08 + public string method_name; // 0x0C + + // Methods + public void .ctor(); // 0x100BF000 +} + +// Namespace: System +[Serializable] +internal class DelegateSerializationHolder : ISerializable, IObjectReference // TypeDefIndex: 1643 +{ + // Fields + private Delegate _delegate; // 0x08 + + // Methods + private void .ctor(SerializationInfo info, StreamingContext ctx); // 0x102F1F70 + public static void GetDelegateData(Delegate instance, SerializationInfo info, StreamingContext ctx); // 0x102F1D70 + public void GetObjectData(SerializationInfo info, StreamingContext context); // 0x102F1F20 + public object GetRealObject(StreamingContext context); // 0x100BF0C0 +} + +// Namespace: +[Serializable] +private class DelegateEntry // TypeDefIndex: 1644 +{ + // Fields + private string type; // 0x08 + private string assembly; // 0x0C + public object target; // 0x10 + private string targetTypeAssembly; // 0x14 + private string targetTypeName; // 0x18 + private string methodName; // 0x1C + public DelegateEntry delegateEntry; // 0x20 + + // Methods + public void .ctor(Delegate del, string targetLabel); // 0x102F1C00 + public Delegate DeserializeDelegate(SerializationInfo info); // 0x102F19F0 +} + +// Namespace: System +[Serializable] +public class DivideByZeroException : ArithmeticException // TypeDefIndex: 1645 +{ + // Fields + private const int Result = -2147352558; // 0x00 + + // Methods + public void .ctor(); // 0x101BD9D0 + public void .ctor(string message); // 0x101BDA50 + public void .ctor(string message, Exception innerException); // 0x101BDA20 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100F8FE0 +} + +// Namespace: System +[Serializable] +public class DllNotFoundException : TypeLoadException // TypeDefIndex: 1646 +{ + // Fields + private const int Result = -2146233052; // 0x00 + + // Methods + public void .ctor(); // 0x101BDA70 + public void .ctor(string message); // 0x101BDAE0 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x101BDAC0 + public void .ctor(string message, Exception inner); // 0x101BDB00 +} + +// Namespace: System +public enum AppDomainManagerInitializationOptions // TypeDefIndex: 1647 +{ + None = 0, + RegisterWithHost = 1 +} + +// Namespace: System +[Serializable] +public class DuplicateWaitObjectException : ArgumentException // TypeDefIndex: 1648 +{ + // Fields + private const int Result = -2146233047; // 0x00 + + // Methods + public void .ctor(); // 0x101BEEB0 + public void .ctor(string parameterName); // 0x101BEE00 + public void .ctor(string parameterName, string message); // 0x101BEE80 + public void .ctor(string message, Exception innerException); // 0x101BEE50 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x1015F860 +} + +// Namespace: System +[Serializable] +public class EntryPointNotFoundException : TypeLoadException // TypeDefIndex: 1649 +{ + // Fields + private const int Result = -2146233053; // 0x00 + + // Methods + public void .ctor(); // 0x101BEF00 + public void .ctor(string message); // 0x101BEF50 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x101BDAC0 + public void .ctor(string message, Exception inner); // 0x101BEF70 +} + +// Namespace: System +internal struct MonoEnumInfo // TypeDefIndex: 1650 +{ + // Fields + internal Type utype; // 0x08 + internal Array values; // 0x0C + internal string[] names; // 0x10 + internal Hashtable name_hash; // 0x14 + private static Hashtable cache; // 0x80000000 + private static Hashtable global_cache; // 0x00 + private static object global_cache_monitor; // 0x04 + internal static SByteComparer sbyte_comparer; // 0x08 + internal static ShortComparer short_comparer; // 0x0C + internal static IntComparer int_comparer; // 0x10 + internal static LongComparer long_comparer; // 0x14 + + // Properties + private static Hashtable Cache { get; } // 0x101022A0 + + // Methods + private void .ctor(MonoEnumInfo other); // 0x10005CA0 + private static void .cctor(); // 0x101021B0 + private static void get_enum_info(Type enumType, out MonoEnumInfo info); // 0x10102370 + internal static void GetInfo(Type enumType, out MonoEnumInfo info); // 0x10101A60 +} + +// Namespace: +internal class SByteComparer : IComparer`1, IComparer // TypeDefIndex: 1651 +{ + // Methods + public void .ctor(); // 0x100BF000 + public int Compare(object x, object y); // 0x1010B960 + public int Compare(sbyte ix, sbyte iy); // 0x1010B9E0 +} + +// Namespace: +internal class ShortComparer : IComparer`1, IComparer // TypeDefIndex: 1652 +{ + // Methods + public void .ctor(); // 0x100BF000 + public int Compare(object x, object y); // 0x1010B9F0 + public int Compare(short ix, short iy); // 0x1010BA70 +} + +// Namespace: +internal class IntComparer : IComparer`1, IComparer // TypeDefIndex: 1653 +{ + // Methods + public void .ctor(); // 0x100BF000 + public int Compare(object x, object y); // 0x100FCD60 + public int Compare(int ix, int iy); // 0x100FCDF0 +} + +// Namespace: +internal class LongComparer : IComparer`1, IComparer // TypeDefIndex: 1654 +{ + // Methods + public void .ctor(); // 0x100BF000 + public int Compare(object x, object y); // 0x100FD6A0 + public int Compare(long ix, long iy); // 0x100FD670 +} + +// Namespace: System +public static class Environment // TypeDefIndex: 1655 +{ + // Fields + private const int mono_corlib_version = 82; // 0x00 + private static OperatingSystem os; // 0x00 + + // Properties + public static string CommandLine { get; } // 0x101C40D0 + public static string CurrentDirectory { get; set; } // 0x101C4130 0x101C4350 + public static int ExitCode { get; set; } // 0x101C4150 0x101C4360 + public static bool HasShutdownStarted { get; } // 0x101C4160 + public static string EmbeddingHostName { get; } // 0x101C4140 + public static bool SocketSecurityEnabled { get; } // 0x101C4240 + public static bool UnityWebSecurityEnabled { get; } // 0x101C4240 + public static string MachineName { get; } // 0x101C4180 + public static string NewLine { get; } // 0x101C4190 + internal static PlatformID Platform { get; } // 0x101C4220 + public static OperatingSystem OSVersion { get; } // 0x101C41A0 + public static string StackTrace { get; } // 0x101C4250 + public static int TickCount { get; } // 0x101C42C0 + public static string UserDomainName { get; } // 0x101C4180 + public static bool UserInteractive { get; } // 0x100EFBF0 + public static string UserName { get; } // 0x101C42D0 + public static Version Version { get; } // 0x101C42E0 + public static long WorkingSet { get; } // 0x100ED740 + public static int ProcessorCount { get; } // 0x101C4230 + internal static bool IsRunningOnWindows { get; } // 0x101C4170 + + // Methods + internal static string GetOSVersionString(); // 0x101C35E0 + public static void Exit(int exitCode); // 0x101C27D0 + public static string ExpandEnvironmentVariables(string name); // 0x101C27E0 + public static string[] GetCommandLineArgs(); // 0x101C2BA0 + internal static string internalGetEnvironmentVariable(string variable); // 0x101C2BC0 + public static string GetEnvironmentVariable(string variable); // 0x101C2BC0 + private static Hashtable GetEnvironmentVariablesNoCase(); // 0x101C2F40 + public static IDictionary GetEnvironmentVariables(); // 0x101C3090 + private static string GetWindowsFolderPath(int folder); // 0x101C35F0 + public static string GetFolderPath(SpecialFolder folder); // 0x101C3590 + private static string ReadXdgUserDir(string config_dir, string home_dir, string key, string fallback); // 0x101C3890 + internal static string InternalGetFolderPath(SpecialFolder folder); // 0x101C3600 + public static string[] GetLogicalDrives(); // 0x101C35C0 + private static void internalBroadcastSettingChange(); // 0x101C4330 + public static string GetEnvironmentVariable(string variable, EnvironmentVariableTarget target); // 0x101C2BD0 + public static IDictionary GetEnvironmentVariables(EnvironmentVariableTarget target); // 0x101C3150 + public static void SetEnvironmentVariable(string variable, string value); // 0x101C40B0 + public static void SetEnvironmentVariable(string variable, string value, EnvironmentVariableTarget target); // 0x101C3C60 + internal static void InternalSetEnvironmentVariable(string variable, string value); // 0x101C3870 + public static void FailFast(string message); // 0x101C2B50 + private static string[] GetLogicalDrivesInternal(); // 0x101C35C0 + private static string[] GetEnvironmentVariableNames(); // 0x101C2BB0 + internal static string GetMachineConfigPath(); // 0x101C35D0 + internal static string internalGetHome(); // 0x101C4340 +} + +// Namespace: +public enum SpecialFolder // TypeDefIndex: 1656 +{ + Desktop = 0, + Programs = 2, + MyDocuments = 5, + Personal = 5, + Favorites = 6, + Startup = 7, + Recent = 8, + SendTo = 9, + StartMenu = 11, + MyMusic = 13, + DesktopDirectory = 16, + MyComputer = 17, + Templates = 21, + ApplicationData = 26, + LocalApplicationData = 28, + InternetCache = 32, + Cookies = 33, + History = 34, + CommonApplicationData = 35, + System = 37, + ProgramFiles = 38, + MyPictures = 39, + CommonProgramFiles = 43 +} + +// Namespace: System +public enum EnvironmentVariableTarget // TypeDefIndex: 1657 +{ + Process = 0, + User = 1, + Machine = 2 +} + +// Namespace: System +[Serializable] +public class EventArgs // TypeDefIndex: 1658 +{ + // Fields + public static readonly EventArgs Empty; // 0x00 + + // Methods + public void .ctor(); // 0x100BF000 + private static void .cctor(); // 0x101C47A0 +} + +// Namespace: System +[Serializable] +public sealed class ExecutionEngineException : SystemException // TypeDefIndex: 1659 +{ + // Methods + public void .ctor(); // 0x101C57C0 + public void .ctor(string message); // 0x100E5680 + public void .ctor(string message, Exception innerException); // 0x100E5670 + internal void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 +} + +// Namespace: System +[Serializable] +public class FieldAccessException : MemberAccessException // TypeDefIndex: 1660 +{ + // Fields + private const int Result = -2146233081; // 0x00 + + // Methods + public void .ctor(); // 0x101C5800 + public void .ctor(string message); // 0x101C5850 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100F8FE0 + public void .ctor(string message, Exception inner); // 0x101C5870 +} + +// Namespace: System +[Serializable] +public class FlagsAttribute : Attribute // TypeDefIndex: 1661 +{ + // Methods + public void .ctor(); // 0x100C5970 +} + +// Namespace: System +[Serializable] +public class FormatException : SystemException // TypeDefIndex: 1662 +{ + // Fields + private const int Result = -2146233033; // 0x00 + + // Methods + public void .ctor(); // 0x101C58A0 + public void .ctor(string message); // 0x101C5920 + public void .ctor(string message, Exception innerException); // 0x101C58F0 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 +} + +// Namespace: System +public static class GC // TypeDefIndex: 1663 +{ + // Properties + public static int MaxGeneration { get; } // 0x101C5AF0 + + // Methods + private static void InternalCollect(int generation); // 0x101C5A90 + public static void Collect(); // 0x101C5960 + public static void Collect(int generation); // 0x101C5970 + public static void Collect(int generation, GCCollectionMode mode); // 0x101C5970 + public static int GetGeneration(object obj); // 0x101C5A70 + public static int GetGeneration(WeakReference wo); // 0x101C59F0 + public static long GetTotalMemory(bool forceFullCollection); // 0x101C5A80 + public static void KeepAlive(object obj); // 0x101B65D0 + public static void ReRegisterForFinalize(object obj); // 0x101C5AA0 + public static void SuppressFinalize(object obj); // 0x101C5AD0 + public static void WaitForPendingFinalizers(); // 0x101C5AE0 + public static int CollectionCount(int generation); // 0x101C59E0 + private static void RecordPressure(long bytesAllocated); // 0x101C5940 + public static void AddMemoryPressure(long bytesAllocated); // 0x101C5940 + public static void RemoveMemoryPressure(long bytesAllocated); // 0x101C5AB0 +} + +// Namespace: System +[Serializable] +public enum GCCollectionMode // TypeDefIndex: 1664 +{ + Default = 0, + Forced = 1, + Optimized = 2 +} + +// Namespace: System +public enum GCNotificationStatus // TypeDefIndex: 1665 +{ + Succeeded = 0, + Failed = 1, + Canceled = 2, + Timeout = 3, + NotApplicable = 4 +} + +// Namespace: System +[Serializable] +public struct Guid : IFormattable, IComparable, IComparable`1, IEquatable`1 // TypeDefIndex: 1666 +{ + // Fields + private int _a; // 0x08 + private short _b; // 0x0C + private short _c; // 0x0E + private byte _d; // 0x10 + private byte _e; // 0x11 + private byte _f; // 0x12 + private byte _g; // 0x13 + private byte _h; // 0x14 + private byte _i; // 0x15 + private byte _j; // 0x16 + private byte _k; // 0x17 + public static readonly Guid Empty; // 0x00 + private static object _rngAccess; // 0x10 + private static RandomNumberGenerator _rng; // 0x14 + private static RandomNumberGenerator _fastRng; // 0x18 + + // Methods + public void .ctor(byte[] b); // 0x1001BC70 + public void .ctor(string g); // 0x1001BCD0 + public void .ctor(int a, short b, short c, byte[] d); // 0x1001BC60 + public void .ctor(int a, short b, short c, byte d, byte e, byte f, byte g, byte h, byte i, byte j, byte k); // 0x1001BC80 + public void .ctor(uint a, ushort b, ushort c, byte d, byte e, byte f, byte g, byte h, byte i, byte j, byte k); // 0x1001BC80 + private static void .cctor(); // 0x102B7AC0 + private static void CheckNull(object o); // 0x102B6EC0 + private static void CheckLength(byte[] o, int l); // 0x102B6E00 + private static void CheckArray(byte[] o, int l); // 0x102B6D00 + private static int Compare(int x, int y); // 0x102B7140 + public int CompareTo(object value); // 0x1001B9F0 + public override bool Equals(object o); // 0x1001BAE0 + public int CompareTo(Guid value); // 0x1001BAB0 + public bool Equals(Guid g); // 0x1001BB70 + public override int GetHashCode(); // 0x1001BBA0 + private static char ToHex(int b); // 0x102B78C0 + public static Guid NewGuid(); // 0x102B74D0 + internal static byte[] FastNewGuidArray(); // 0x102B7210 + public byte[] ToByteArray(); // 0x1001BC00 + private static void AppendInt(StringBuilder builder, int value); // 0x102B6730 + private static void AppendShort(StringBuilder builder, short value); // 0x102B68A0 + private static void AppendByte(StringBuilder builder, byte value); // 0x102B6690 + private string BaseToString(bool h, bool p, bool b); // 0x1001B9E0 + public override string ToString(); // 0x1001BC10 + public string ToString(string format); // 0x1001BC30 + public string ToString(string format, IFormatProvider provider); // 0x1001BC40 + public static bool op_Equality(Guid a, Guid b); // 0x102B7F00 + public static bool op_Inequality(Guid a, Guid b); // 0x102B7F30 +} + +// Namespace: +internal class GuidParser // TypeDefIndex: 1667 +{ + // Fields + private string _src; // 0x08 + private int _length; // 0x0C + private int _cur; // 0x10 + + // Methods + public void .ctor(string src); // 0x102B6650 + private void Reset(); // 0x102B65C0 + private bool AtEnd(); // 0x102B5D50 + private void ThrowFormatException(); // 0x102B65F0 + private ulong ParseHex(int length, bool strictLength); // 0x102B6350 + private bool ParseOptChar(char c); // 0x102B6480 + private void ParseChar(char c); // 0x102B5D70 + private Guid ParseGuid1(); // 0x102B5DB0 + private void ParseHexPrefix(); // 0x102B62E0 + private Guid ParseGuid2(); // 0x102B6030 + public Guid Parse(); // 0x102B64C0 +} + +// Namespace: System +public interface IAppDomainSetup // TypeDefIndex: 1668 +{ + // Properties + string ApplicationBase { get; set; } + string ApplicationName { get; set; } + string CachePath { get; set; } + string ConfigurationFile { get; set; } + string DynamicBase { get; set; } + string LicenseFile { get; set; } + string PrivateBinPath { get; set; } + string PrivateBinPathProbe { get; set; } + string ShadowCopyDirectories { get; set; } + string ShadowCopyFiles { get; set; } + +} + +// Namespace: System +internal interface IConsoleDriver // TypeDefIndex: 1669 +{ + // Properties + ConsoleColor BackgroundColor { get; set; } + int BufferHeight { get; set; } + int BufferWidth { get; set; } + bool CapsLock { get; } + int CursorLeft { get; set; } + int CursorSize { get; set; } + int CursorTop { get; set; } + bool CursorVisible { get; set; } + ConsoleColor ForegroundColor { get; set; } + bool KeyAvailable { get; } + bool Initialized { get; } + int LargestWindowHeight { get; } + int LargestWindowWidth { get; } + bool NumberLock { get; } + string Title { get; set; } + bool TreatControlCAsInput { get; set; } + int WindowHeight { get; set; } + int WindowLeft { get; set; } + int WindowTop { get; set; } + int WindowWidth { get; set; } + + // Methods + void Init(); + void Beep(int frequency, int duration); + void Clear(); + void MoveBufferArea(int sourceLeft, int sourceTop, int sourceWidth, int sourceHeight, int targetLeft, int targetTop, char sourceChar, ConsoleColor sourceForeColor, ConsoleColor sourceBackColor); + ConsoleKeyInfo ReadKey(bool intercept); + void ResetColor(); + void SetBufferSize(int width, int height); + void SetCursorPosition(int left, int top); + void SetWindowPosition(int left, int top); + void SetWindowSize(int width, int height); + string ReadLine(); +} + +// Namespace: System +public interface ICustomFormatter // TypeDefIndex: 1670 +{ + // Methods + string Format(string format, object arg, IFormatProvider formatProvider); +} + +// Namespace: System +public interface IFormatProvider // TypeDefIndex: 1671 +{ + // Methods + object GetFormat(Type formatType); +} + +// Namespace: System +public interface IServiceProvider // TypeDefIndex: 1672 +{ + // Methods + object GetService(Type serviceType); +} + +// Namespace: System +[Serializable] +public sealed class IndexOutOfRangeException : SystemException // TypeDefIndex: 1673 +{ + // Methods + public void .ctor(); // 0x100F9830 + public void .ctor(string message); // 0x100E5680 + public void .ctor(string message, Exception innerException); // 0x100E5670 + internal void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 +} + +// Namespace: System +[Serializable] +public sealed class InsufficientMemoryException : OutOfMemoryException // TypeDefIndex: 1674 +{ + // Methods + public void .ctor(); // 0x100F9880 + public void .ctor(string message); // 0x100F98C0 + public void .ctor(string message, Exception innerException); // 0x100F9870 +} + +// Namespace: System +[Serializable] +public class InvalidCastException : SystemException // TypeDefIndex: 1675 +{ + // Fields + private const int Result = -2147467262; // 0x00 + + // Methods + public void .ctor(); // 0x100FCF00 + public void .ctor(string message); // 0x100FCF50 + public void .ctor(string message, Exception innerException); // 0x100FCED0 + public void .ctor(string message, int errorCode); // 0x100FCF70 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 +} + +// Namespace: System +[Serializable] +public class InvalidOperationException : SystemException // TypeDefIndex: 1676 +{ + // Fields + private const int Result = -2146233079; // 0x00 + + // Methods + public void .ctor(); // 0x100FCF90 + public void .ctor(string message); // 0x100FD010 + public void .ctor(string message, Exception innerException); // 0x100FCFE0 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 +} + +// Namespace: System +[Serializable] +public sealed class InvalidProgramException : SystemException // TypeDefIndex: 1677 +{ + // Methods + public void .ctor(); // 0x100FD030 + public void .ctor(string message); // 0x100E5680 + public void .ctor(string message, Exception inner); // 0x100E5670 + internal void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 +} + +// Namespace: System +internal static class KnownTerminals // TypeDefIndex: 1678 +{ + // Properties + public static byte[] linux { get; } // 0x100FD0C0 + public static byte[] xterm { get; } // 0x100FD110 + public static byte[] ansi { get; } // 0x100FD070 + +} + +// Namespace: System +[Serializable] +public enum LoaderOptimization // TypeDefIndex: 1679 +{ + NotSpecified = 0, + SingleDomain = 1, + MultiDomain = 2, + MultiDomainHost = 3, + DomainMask = 3, + DisallowBindings = 4 +} + +// Namespace: System +public sealed class LoaderOptimizationAttribute : Attribute // TypeDefIndex: 1680 +{ + // Fields + private LoaderOptimization lo; // 0x08 + + // Properties + public LoaderOptimization Value { get; } // 0x100BF0C0 + + // Methods + public void .ctor(byte value); // 0x100FD160 + public void .ctor(LoaderOptimization value); // 0x100E5940 +} + +// Namespace: System +public sealed class LocalDataStoreSlot // TypeDefIndex: 1681 +{ + // Fields + internal int slot; // 0x08 + internal bool thread_local; // 0x0C + private static object lock_obj; // 0x00 + private static bool[] slot_bitmap_thread; // 0x04 + private static bool[] slot_bitmap_context; // 0x08 + + // Methods + internal void .ctor(bool in_thread); // 0x100FD3F0 + private static void .cctor(); // 0x100FD3A0 + protected override void Finalize(); // 0x100FD180 +} + +// Namespace: System +public sealed class MTAThreadAttribute : Attribute // TypeDefIndex: 1682 +{ + // Methods + public void .ctor(); // 0x100C5970 +} + +// Namespace: System +public static class Math // TypeDefIndex: 1683 +{ + // Fields + public const double E = 2.718281828459045; // 0x00 + public const double PI = 3.141592653589793; // 0x00 + + // Methods + public static Decimal Abs(Decimal value); // 0x100FDBE0 + public static double Abs(double value); // 0x100FDA40 + public static float Abs(float value); // 0x100FD980 + public static int Abs(int value); // 0x100FDAF0 + public static long Abs(long value); // 0x100FD9B0 + public static sbyte Abs(sbyte value); // 0x100FDA70 + public static short Abs(short value); // 0x100FDB60 + public static Decimal Ceiling(Decimal d); // 0x100FDD40 + public static double Ceiling(double a); // 0x100FDE60 + public static long BigMul(int a, int b); // 0x100FDD30 + public static int DivRem(int a, int b, out int result); // 0x100FDED0 + public static long DivRem(long a, long b, out long result); // 0x100FDEF0 + public static double Floor(double d); // 0x100FDFB0 + public static double IEEERemainder(double x, double y); // 0x100FDFD0 + public static double Log(double a, double newBase); // 0x100FE0B0 + public static byte Max(byte val1, byte val2); // 0x100FE330 + public static Decimal Max(Decimal val1, Decimal val2); // 0x100FE120 + public static double Max(double val1, double val2); // 0x100FE2B0 + public static float Max(float val1, float val2); // 0x100FE1B0 + public static int Max(int val1, int val2); // 0x100FE280 + public static long Max(long val1, long val2); // 0x100FE230 + public static sbyte Max(sbyte val1, sbyte val2); // 0x100FE310 + public static short Max(short val1, short val2); // 0x100FE260 + public static uint Max(uint val1, uint val2); // 0x100FE250 + public static ulong Max(ulong val1, ulong val2); // 0x100FE290 + public static ushort Max(ushort val1, ushort val2); // 0x100FE210 + public static byte Min(byte val1, byte val2); // 0x100FE510 + public static Decimal Min(Decimal val1, Decimal val2); // 0x100FE370 + public static double Min(double val1, double val2); // 0x100FE400 + public static float Min(float val1, float val2); // 0x100FE490 + public static int Min(int val1, int val2); // 0x100FE460 + public static long Min(long val1, long val2); // 0x100FE350 + public static sbyte Min(sbyte val1, sbyte val2); // 0x100FE530 + public static short Min(short val1, short val2); // 0x100FE560 + public static uint Min(uint val1, uint val2); // 0x100FE550 + public static ulong Min(ulong val1, ulong val2); // 0x100FE4F0 + public static ushort Min(ushort val1, ushort val2); // 0x100FE470 + public static Decimal Round(Decimal d); // 0x100FE860 + public static Decimal Round(Decimal d, int decimals); // 0x100FF120 + public static Decimal Round(Decimal d, MidpointRounding mode); // 0x100FECA0 + private static Decimal RoundAwayFromZero(Decimal d); // 0x100FE5D0 + public static Decimal Round(Decimal d, int decimals, MidpointRounding mode); // 0x100FF090 + public static double Round(double a); // 0x100FF100 + public static double Round(double value, int digits); // 0x100FEFF0 + private static double Round2(double value, int digits, bool away_from_zero); // 0x100FE5B0 + public static double Round(double value, MidpointRounding mode); // 0x100FEB80 + public static double Round(double value, int digits, MidpointRounding mode); // 0x100FEDA0 + public static double Truncate(double d); // 0x100FF4D0 + public static Decimal Truncate(Decimal d); // 0x100FF510 + public static Decimal Floor(Decimal d); // 0x100FDF40 + public static int Sign(Decimal value); // 0x100FF190 + public static int Sign(double value); // 0x100FF2D0 + public static int Sign(float value); // 0x100FF3B0 + public static int Sign(int value); // 0x100FF390 + public static int Sign(long value); // 0x100FF2A0 + public static int Sign(sbyte value); // 0x100FF370 + public static int Sign(short value); // 0x100FF280 + public static double Sin(double a); // 0x100FF450 + public static double Cos(double d); // 0x100FDEA0 + public static double Tan(double a); // 0x100FF4A0 + public static double Sinh(double value); // 0x100FF470 + public static double Cosh(double value); // 0x100FDEC0 + public static double Tanh(double value); // 0x100FF4C0 + public static double Acos(double d); // 0x100FDCC0 + public static double Asin(double d); // 0x100FDCE0 + public static double Atan(double d); // 0x100FDD10 + public static double Atan2(double y, double x); // 0x100FDD00 + public static double Exp(double d); // 0x100FDF20 + public static double Log(double d); // 0x100FE100 + public static double Log10(double d); // 0x100FE090 + public static double Pow(double x, double y); // 0x100FE580 + public static double Sqrt(double d); // 0x100FF480 +} + +// Namespace: System +[Serializable] +public class MemberAccessException : SystemException // TypeDefIndex: 1684 +{ + // Fields + private const int Result = -2146233062; // 0x00 + + // Methods + public void .ctor(); // 0x100FF5D0 + public void .ctor(string message); // 0x100FF580 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 + public void .ctor(string message, Exception inner); // 0x100FF5A0 +} + +// Namespace: System +[Serializable] +public class MethodAccessException : MemberAccessException // TypeDefIndex: 1685 +{ + // Fields + private const int Result = -2146233072; // 0x00 + + // Methods + public void .ctor(); // 0x100FF620 + public void .ctor(string message); // 0x100FF670 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 + public void .ctor(string message, Exception inner); // 0x100FF690 +} + +// Namespace: System +public enum MidpointRounding // TypeDefIndex: 1686 +{ + ToEven = 0, + AwayFromZero = 1 +} + +// Namespace: System +[Serializable] +public class MissingFieldException : MissingMemberException // TypeDefIndex: 1687 +{ + // Fields + private const int Result = -2146233071; // 0x00 + + // Properties + public override string Message { get; } // 0x100FF7E0 + + // Methods + public void .ctor(); // 0x100FF6C0 + public void .ctor(string message); // 0x100FF710 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100FF7C0 + public void .ctor(string message, Exception inner); // 0x100FF730 + public void .ctor(string className, string fieldName); // 0x100FF760 +} + +// Namespace: System +[Serializable] +public class MissingMemberException : MemberAccessException // TypeDefIndex: 1688 +{ + // Fields + private const int Result = -2146233070; // 0x00 + protected string ClassName; // 0x34 + protected string MemberName; // 0x38 + protected byte[] Signature; // 0x3C + + // Properties + public override string Message { get; } // 0x100FFAD0 + + // Methods + public void .ctor(); // 0x100FFA80 + public void .ctor(string message); // 0x100FFA60 + public void .ctor(string message, Exception inner); // 0x100FF950 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100FF980 + public void .ctor(string className, string memberName); // 0x100FF8F0 + public override void GetObjectData(SerializationInfo info, StreamingContext context); // 0x100FF870 +} + +// Namespace: System +[Serializable] +public class MissingMethodException : MissingMemberException // TypeDefIndex: 1689 +{ + // Fields + private const int Result = -2146233069; // 0x00 + + // Properties + public override string Message { get; } // 0x100FFC60 + + // Methods + public void .ctor(); // 0x100FFBF0 + public void .ctor(string message); // 0x100FFC40 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100FF7C0 + public void .ctor(string message, Exception inner); // 0x100FFB60 + public void .ctor(string className, string methodName); // 0x100FFB90 +} + +// Namespace: System +public struct ModuleHandle // TypeDefIndex: 1690 +{ + // Fields + private IntPtr value; // 0x08 + public static readonly ModuleHandle EmptyHandle; // 0x00 + + // Properties + internal IntPtr Value { get; } // 0x10003A80 + public int MDStreamVersion { get; } // 0x10005BD0 + + // Methods + internal void .ctor(IntPtr v); // 0x10005950 + private static void .cctor(); // 0x10100260 + internal void GetPEKind(out PortableExecutableKinds peKind, out ImageFileMachine machine); // 0x10005A70 + public RuntimeFieldHandle ResolveFieldHandle(int fieldToken); // 0x10005B40 + public RuntimeMethodHandle ResolveMethodHandle(int methodToken); // 0x10005B60 + public RuntimeTypeHandle ResolveTypeHandle(int typeToken); // 0x10005B80 + private IntPtr[] ptrs_from_handles(RuntimeTypeHandle[] handles); // 0x10005C90 + public RuntimeTypeHandle ResolveTypeHandle(int typeToken, RuntimeTypeHandle[] typeInstantiationContext, RuntimeTypeHandle[] methodInstantiationContext); // 0x10005BC0 + public RuntimeMethodHandle ResolveMethodHandle(int methodToken, RuntimeTypeHandle[] typeInstantiationContext, RuntimeTypeHandle[] methodInstantiationContext); // 0x10005BB0 + public RuntimeFieldHandle ResolveFieldHandle(int fieldToken, RuntimeTypeHandle[] typeInstantiationContext, RuntimeTypeHandle[] methodInstantiationContext); // 0x10005BA0 + public RuntimeFieldHandle GetRuntimeFieldHandleFromMetadataToken(int fieldToken); // 0x10005B40 + public RuntimeMethodHandle GetRuntimeMethodHandleFromMetadataToken(int methodToken); // 0x10005B60 + public RuntimeTypeHandle GetRuntimeTypeHandleFromMetadataToken(int typeToken); // 0x10005B80 + public override bool Equals(object obj); // 0x100059B0 + public bool Equals(ModuleHandle handle); // 0x10005A50 + public override int GetHashCode(); // 0x10003A80 + public static bool op_Equality(ModuleHandle left, ModuleHandle right); // 0x10100290 + public static bool op_Inequality(ModuleHandle left, ModuleHandle right); // 0x101002F0 +} + +// Namespace: System +internal class MonoAsyncCall // TypeDefIndex: 1691 +{ + // Fields + private object msg; // 0x08 + private IntPtr cb_method; // 0x0C + private object cb_target; // 0x10 + private object state; // 0x14 + private object res; // 0x18 + private object out_args; // 0x1C + private long wait_event; // 0x20 + + // Methods + public void .ctor(); // 0x100BF000 +} + +// Namespace: System +internal class MonoCustomAttrs // TypeDefIndex: 1692 +{ + // Fields + private static Assembly corlib; // 0x00 + private static readonly Type AttributeUsageType; // 0x04 + private static readonly AttributeUsageAttribute DefaultAttributeUsage; // 0x08 + + // Methods + public void .ctor(); // 0x100BF000 + private static void .cctor(); // 0x101019D0 + private static bool IsUserCattrProvider(object obj); // 0x10101630 + internal static object[] GetCustomAttributesInternal(ICustomAttributeProvider obj, Type attributeType, bool pseudoAttrs); // 0x10100A90 + internal static object[] GetPseudoCustomAttributes(ICustomAttributeProvider obj, Type attributeType); // 0x10101120 + internal static object[] GetCustomAttributesBase(ICustomAttributeProvider obj, Type attributeType); // 0x10100890 + internal static Attribute GetCustomAttribute(ICustomAttributeProvider obj, Type attributeType, bool inherit); // 0x10100790 + internal static object[] GetCustomAttributes(ICustomAttributeProvider obj, Type attributeType, bool inherit); // 0x10100BF0 + internal static object[] GetCustomAttributes(ICustomAttributeProvider obj, bool inherit); // 0x10100AB0 + private static CustomAttributeData[] GetCustomAttributesDataInternal(ICustomAttributeProvider obj); // 0x101009F0 + internal static IList`1 GetCustomAttributesData(ICustomAttributeProvider obj); // 0x10100A00 + internal static bool IsDefined(ICustomAttributeProvider obj, Type attributeType, bool inherit); // 0x101013E0 + internal static bool IsDefinedInternal(ICustomAttributeProvider obj, Type AttributeType); // 0x101013C0 + private static PropertyInfo GetBasePropertyDefinition(PropertyInfo property); // 0x10100400 + private static ICustomAttributeProvider GetBase(ICustomAttributeProvider obj); // 0x10100640 + private static AttributeUsageAttribute RetrieveAttributeUsage(Type attributeType); // 0x10101800 +} + +// Namespace: +private class AttributeInfo // TypeDefIndex: 1693 +{ + // Fields + private AttributeUsageAttribute _usage; // 0x08 + private int _inheritanceLevel; // 0x0C + + // Properties + public AttributeUsageAttribute Usage { get; } // 0x100BF0C0 + public int InheritanceLevel { get; } // 0x100C5B30 + + // Methods + public void .ctor(AttributeUsageAttribute usage, int inheritanceLevel); // 0x100F97B0 +} + +// Namespace: System +internal sealed class MonoListItem // TypeDefIndex: 1694 +{ + // Fields + private MonoListItem next; // 0x08 + private object data; // 0x0C + + // Methods + public void .ctor(); // 0x100BF000 +} + +// Namespace: System +internal class MonoTouchAOTHelper // TypeDefIndex: 1695 +{ + // Fields + internal static bool FalseFlag; // 0x00 + + // Methods + public void .ctor(); // 0x100BF000 + private static void .cctor(); // 0x100C5530 +} + +// Namespace: System +internal class MonoTypeInfo // TypeDefIndex: 1696 +{ + // Fields + public string full_name; // 0x08 + public ConstructorInfo default_ctor; // 0x0C + + // Methods + public void .ctor(); // 0x100BF000 +} + +// Namespace: System +[Serializable] +internal class MonoType : Type, ISerializable // TypeDefIndex: 1697 +{ + // Fields + [NonSerialized] private MonoTypeInfo type_info; // 0x0C + + // Properties + public override Type UnderlyingSystemType { get; } // 0x100F7810 + public override Assembly Assembly { get; } // 0x10104520 + public override string AssemblyQualifiedName { get; } // 0x10104500 + public override Type BaseType { get; } // 0x10104530 + public override string FullName { get; } // 0x10104660 + public override Guid GUID { get; } // 0x101046D0 + public override MemberTypes MemberType { get; } // 0x101047D0 + public override string Name { get; } // 0x10104830 + public override string Namespace { get; } // 0x10104840 + public override Module Module { get; } // 0x10104820 + public override Type DeclaringType { get; } // 0x10104650 + public override Type ReflectedType { get; } // 0x10104850 + public override RuntimeTypeHandle TypeHandle { get; } // 0x100BF0C0 + public override bool ContainsGenericParameters { get; } // 0x10104540 + public override bool IsGenericParameter { get; } // 0x101047C0 + public override MethodBase DeclaringMethod { get; } // 0x10104640 + + // Methods + internal void .ctor(object obj); // 0x10104460 + private static void type_from_obj(MonoType type, object obj); // 0x10104870 + private static TypeAttributes get_attributes(Type type); // 0x101023B0 + internal ConstructorInfo GetDefaultConstructor(); // 0x10102A00 + protected override TypeAttributes GetAttributeFlagsImpl(); // 0x101023B0 + protected override ConstructorInfo GetConstructorImpl(BindingFlags bindingAttr, Binder binder, CallingConventions callConvention, Type[] types, ParameterModifier[] modifiers); // 0x101023C0 + internal ConstructorInfo[] GetConstructors_internal(BindingFlags bindingAttr, Type reflected_type); // 0x10102760 + public override ConstructorInfo[] GetConstructors(BindingFlags bindingAttr); // 0x10102780 + private EventInfo InternalGetEvent(string name, BindingFlags bindingAttr); // 0x10103500 + public override EventInfo GetEvent(string name, BindingFlags bindingAttr); // 0x10102AB0 + internal EventInfo[] GetEvents_internal(BindingFlags bindingAttr, Type reflected_type); // 0x10102B20 + public override EventInfo[] GetEvents(BindingFlags bindingAttr); // 0x10102B40 + public override FieldInfo GetField(string name, BindingFlags bindingAttr); // 0x10102B60 + internal FieldInfo[] GetFields_internal(BindingFlags bindingAttr, Type reflected_type); // 0x10102C00 + public override FieldInfo[] GetFields(BindingFlags bindingAttr); // 0x10102C20 + public override Type GetInterface(string name, bool ignoreCase); // 0x10102CB0 + public override Type[] GetInterfaces(); // 0x10102EB0 + public override MemberInfo[] GetMembers(BindingFlags bindingAttr); // 0x10102EC0 + internal MethodInfo[] GetMethodsByName(string name, BindingFlags bindingAttr, bool ignoreCase, Type reflected_type); // 0x101032A0 + public override MethodInfo[] GetMethods(BindingFlags bindingAttr); // 0x101032C0 + protected override MethodInfo GetMethodImpl(string name, BindingFlags bindingAttr, Binder binder, CallingConventions callConvention, Type[] types, ParameterModifier[] modifiers); // 0x10102EF0 + private MethodInfo GetCorrespondingInflatedMethod(MethodInfo generic); // 0x101027D0 + private ConstructorInfo GetCorrespondingInflatedConstructor(ConstructorInfo generic); // 0x101027A0 + internal override MethodInfo GetMethod(MethodInfo fromNoninstanciated); // 0x10103220 + internal override ConstructorInfo GetConstructor(ConstructorInfo fromNoninstanciated); // 0x101026E0 + internal override FieldInfo GetField(FieldInfo fromNoninstanciated); // 0x10102B80 + public override Type GetNestedType(string name, BindingFlags bindingAttr); // 0x101032E0 + public override Type[] GetNestedTypes(BindingFlags bindingAttr); // 0x10103300 + internal PropertyInfo[] GetPropertiesByName(string name, BindingFlags bindingAttr, bool icase, Type reflected_type); // 0x10103340 + public override PropertyInfo[] GetProperties(BindingFlags bindingAttr); // 0x10103360 + protected override PropertyInfo GetPropertyImpl(string name, BindingFlags bindingAttr, Binder binder, Type returnType, Type[] types, ParameterModifier[] modifiers); // 0x10103380 + protected override bool HasElementTypeImpl(); // 0x10103490 + protected override bool IsArrayImpl(); // 0x10104130 + protected override bool IsByRefImpl(); // 0x10104180 + protected override bool IsCOMObjectImpl(); // 0x100E9F80 + protected override bool IsPointerImpl(); // 0x101041E0 + protected override bool IsPrimitiveImpl(); // 0x101041F0 + public override bool IsSubclassOf(Type type); // 0x10104200 + public override object InvokeMember(string name, BindingFlags invokeAttr, Binder binder, object target, object[] args, ParameterModifier[] modifiers, CultureInfo culture, string[] namedParameters); // 0x10103520 + public override Type GetElementType(); // 0x10102AA0 + private string getFullName(bool full_name, bool assembly_qualified); // 0x101044E0 + public override bool IsDefined(Type attributeType, bool inherit); // 0x10104190 + public override object[] GetCustomAttributes(bool inherit); // 0x10102800 + public override object[] GetCustomAttributes(Type attributeType, bool inherit); // 0x10102970 + public override int GetArrayRank(); // 0x101023A0 + public void GetObjectData(SerializationInfo info, StreamingContext context); // 0x10103320 + public override string ToString(); // 0x10104440 + public override Type[] GetGenericArguments(); // 0x10102C40 + public override Type GetGenericTypeDefinition(); // 0x10102C50 + private MethodBase CheckMethodSecurity(MethodBase mb); // 0x10102390 + private void ReorderParamArrayArguments(object[] args, MethodBase method); // 0x10104270 +} + +// Namespace: System +[Serializable] +public sealed class MulticastNotSupportedException : SystemException // TypeDefIndex: 1698 +{ + // Methods + public void .ctor(); // 0x10105340 + public void .ctor(string message); // 0x100E5680 + public void .ctor(string message, Exception inner); // 0x100E5670 + internal void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 +} + +// Namespace: System +public sealed class NonSerializedAttribute : Attribute // TypeDefIndex: 1699 +{ + // Methods + public void .ctor(); // 0x100C5970 +} + +// Namespace: System +[Serializable] +public class NotFiniteNumberException : ArithmeticException // TypeDefIndex: 1700 +{ + // Fields + private const int Result = -2146233048; // 0x00 + private double offending_number; // 0x38 + + // Properties + public double OffendingNumber { get; } // 0x10105580 + + // Methods + public void .ctor(); // 0x10105450 + public void .ctor(double offendingNumber); // 0x10105420 + public void .ctor(string message); // 0x10105530 + public void .ctor(string message, double offendingNumber); // 0x101053F0 + public void .ctor(string message, double offendingNumber, Exception innerException); // 0x10105550 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x101054A0 + public void .ctor(string message, Exception innerException); // 0x10105500 + public override void GetObjectData(SerializationInfo info, StreamingContext context); // 0x10105380 +} + +// Namespace: System +[Serializable] +public class NotImplementedException : SystemException // TypeDefIndex: 1701 +{ + // Fields + private const int Result = -2147467263; // 0x00 + + // Methods + public void .ctor(); // 0x101055B0 + public void .ctor(string message); // 0x10105590 + public void .ctor(string message, Exception inner); // 0x10105600 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 +} + +// Namespace: System +[Serializable] +public class NotSupportedException : SystemException // TypeDefIndex: 1702 +{ + // Fields + private const int Result = -2146233067; // 0x00 + + // Methods + public void .ctor(); // 0x10105680 + public void .ctor(string message); // 0x10105630 + public void .ctor(string message, Exception innerException); // 0x10105650 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 +} + +// Namespace: System +[Serializable] +public class NullReferenceException : SystemException // TypeDefIndex: 1703 +{ + // Fields + private const int Result = -2147467261; // 0x00 + + // Methods + public void .ctor(); // 0x101056F0 + public void .ctor(string message); // 0x101056D0 + public void .ctor(string message, Exception innerException); // 0x10105740 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 +} + +// Namespace: System +public static class Nullable // TypeDefIndex: 1704 +{ + // Methods + public static int Compare(Nullable`1 value1, Nullable`1 value2); + public static bool Equals(Nullable`1 value1, Nullable`1 value2); + public static Type GetUnderlyingType(Type nullableType); // 0x101059D0 +} + +// Namespace: System +internal sealed class NumberFormatter // TypeDefIndex: 1705 +{ + // Fields + private const int DefaultExpPrecision = 6; // 0x00 + private const int HundredMillion = 100000000; // 0x00 + private const long SeventeenDigitsThreshold = 10000000000000000; // 0x00 + private const ulong ULongDivHundredMillion = 184467440737; // 0x00 + private const ulong ULongModHundredMillion = 9551616; // 0x00 + private const int DoubleBitsExponentShift = 52; // 0x00 + private const int DoubleBitsExponentMask = 2047; // 0x00 + private const long DoubleBitsMantissaMask = 4503599627370495; // 0x00 + private const int DecimalBitsScaleMask = 2031616; // 0x00 + private const int SingleDefPrecision = 7; // 0x00 + private const int DoubleDefPrecision = 15; // 0x00 + private const int Int8DefPrecision = 3; // 0x00 + private const int UInt8DefPrecision = 3; // 0x00 + private const int Int16DefPrecision = 5; // 0x00 + private const int UInt16DefPrecision = 5; // 0x00 + private const int Int32DefPrecision = 10; // 0x00 + private const int UInt32DefPrecision = 10; // 0x00 + private const int Int64DefPrecision = 19; // 0x00 + private const int UInt64DefPrecision = 20; // 0x00 + private const int DecimalDefPrecision = 100; // 0x00 + private const int TenPowersListLength = 19; // 0x00 + private const double MinRoundtripVal = -1.79769313486231E+308; // 0x00 + private const double MaxRoundtripVal = 1.79769313486231E+308; // 0x00 + private static readonly void * MantissaBitsTable; // 0x00 + private static readonly void * TensExponentTable; // 0x04 + private static readonly void * DigitLowerTable; // 0x08 + private static readonly void * DigitUpperTable; // 0x0C + private static readonly void * TenPowersList; // 0x10 + private static readonly void * DecHexDigits; // 0x14 + private Thread _thread; // 0x08 + private NumberFormatInfo _nfi; // 0x0C + private bool _NaN; // 0x10 + private bool _infinity; // 0x00 + private bool _isCustomFormat; // 0x00 + private bool _specifierIsUpper; // 0x00 + private bool _positive; // 0x00 + private char _specifier; // 0x16 + private int _precision; // 0x18 + private int _defPrecision; // 0x1C + private int _digitsLen; // 0x20 + private int _offset; // 0x24 + private int _decPointPos; // 0x28 + private uint _val1; // 0x2C + private uint _val2; // 0x30 + private uint _val3; // 0x34 + private uint _val4; // 0x38 + private char[] _cbuf; // 0x3C + private int _ind; // 0x40 + private static NumberFormatter threadNumberFormatter; // 0x80000000 + + // Properties + public CultureInfo CurrentCulture { set; } // 0x1010B920 + private int IntegerDigits { get; } // 0x1010B8B0 + private int DecimalDigits { get; } // 0x1010B890 + private bool IsFloatingSource { get; } // 0x1010B8D0 + private bool IsZero { get; } // 0x1010B910 + private bool IsZeroInteger { get; } // 0x1010B8F0 + + // Methods + public void .ctor(Thread current); // 0x1010B800 + private static void .cctor(); // 0x1010B7B0 + private static void GetFormatterTables(out void * MantissaBitsTable, out void * TensExponentTable, out void * DigitLowerTable, out void * DigitUpperTable, out void * TenPowersList, out void * DecHexDigits); // 0x10108670 + private static long GetTenPowerOf(int i); // 0x10108810 + private void InitDecHexDigits(uint value); // 0x10108A00 + private void InitDecHexDigits(ulong value); // 0x10108870 + private void InitDecHexDigits(uint hi, ulong lo); // 0x10108AB0 + private static uint FastToDecHex(int val); // 0x10106EF0 + private static uint ToDecHex(int val); // 0x1010B690 + private static int FastDecHexLen(int val); // 0x10106E00 + private static int DecHexLen(uint val); // 0x10106B60 + private int DecHexLen(); // 0x10106A60 + private static int ScaleOrder(long hi); // 0x1010B550 + private int InitialFloatingPrecision(); // 0x10109860 + private static int ParsePrecision(string format); // 0x1010B0C0 + private void Init(string format); // 0x10109700 + private void InitHex(ulong value); // 0x10108EB0 + private void Init(string format, int value, int defPrecision); // 0x10109620 + private void Init(string format, uint value, int defPrecision); // 0x10109530 + private void Init(string format, long value); // 0x10109590 + private void Init(string format, ulong value); // 0x10109690 + private void Init(string format, double value, int defPrecision); // 0x10108F20 + private void Init(string format, Decimal value); // 0x101093B0 + private void ResetCharBuf(int size); // 0x1010B210 + private void Resize(int len); // 0x1010B270 + private void Append(char c); // 0x10106730 + private void Append(char c, int cnt); // 0x10106680 + private void Append(string s); // 0x101067D0 + private NumberFormatInfo GetNumberFormatInstance(IFormatProvider fp); // 0x101087B0 + private void RoundPos(int pos); // 0x1010B530 + private bool RoundDecimal(int decimals); // 0x1010B500 + private bool RoundBits(int shift); // 0x1010B2C0 + private void RemoveTrailingZeros(); // 0x1010B1E0 + private void AddOneToDecHex(); // 0x10105B60 + private static uint AddOneToDecHex(uint val); // 0x10105AD0 + private int CountTrailingZeros(); // 0x10106910 + private static int CountTrailingZeros(uint val); // 0x101068B0 + private static NumberFormatter GetInstance(); // 0x10108690 + private void Release(); // 0x1010B120 + internal static void SetThreadCurrentCulture(CultureInfo culture); // 0x1010B5D0 + public static string NumberToString(string format, sbyte value, IFormatProvider fp); // 0x1010A2F0 + public static string NumberToString(string format, byte value, IFormatProvider fp); // 0x1010ACC0 + public static string NumberToString(string format, ushort value, IFormatProvider fp); // 0x1010AED0 + public static string NumberToString(string format, short value, IFormatProvider fp); // 0x1010ABF0 + public static string NumberToString(string format, uint value, IFormatProvider fp); // 0x10109D20 + public static string NumberToString(string format, int value, IFormatProvider fp); // 0x1010A020 + public static string NumberToString(string format, ulong value, IFormatProvider fp); // 0x1010A930 + public static string NumberToString(string format, long value, IFormatProvider fp); // 0x1010AD90 + public static string NumberToString(string format, float value, IFormatProvider fp); // 0x1010A760 + public static string NumberToString(string format, double value, IFormatProvider fp); // 0x1010A3C0 + public static string NumberToString(string format, Decimal value, IFormatProvider fp); // 0x10109C40 + public static string NumberToString(uint value, IFormatProvider fp); // 0x1010AA50 + public static string NumberToString(int value, IFormatProvider fp); // 0x1010A240 + public static string NumberToString(ulong value, IFormatProvider fp); // 0x1010A5B0 + public static string NumberToString(long value, IFormatProvider fp); // 0x10109E30 + public static string NumberToString(float value, IFormatProvider fp); // 0x1010AFA0 + public static string NumberToString(double value, IFormatProvider fp); // 0x10109F00 + private string FastIntegerToString(int value, IFormatProvider fp); // 0x10106E30 + private string IntegerToString(string format, IFormatProvider fp); // 0x101098B0 + private string NumberToString(string format, NumberFormatInfo nfi); // 0x1010A0F0 + public string FormatCurrency(int precision, NumberFormatInfo nfi); // 0x10106F90 + private string FormatDecimal(int precision, NumberFormatInfo nfi); // 0x10107A10 + private string FormatHexadecimal(int precision); // 0x10108020 + public string FormatFixedPoint(int precision, NumberFormatInfo nfi); // 0x10107DC0 + private string FormatRoundtrip(double origval, NumberFormatInfo nfi); // 0x101084A0 + private string FormatRoundtrip(float origval, NumberFormatInfo nfi); // 0x10108570 + private string FormatGeneral(int precision, NumberFormatInfo nfi); // 0x10107F00 + public string FormatNumber(int precision, NumberFormatInfo nfi); // 0x10108160 + public string FormatPercent(int precision, NumberFormatInfo nfi); // 0x10108310 + public string FormatExponential(int precision, NumberFormatInfo nfi); // 0x10107AA0 + private string FormatExponential(int precision, NumberFormatInfo nfi, int expDigits); // 0x10107AE0 + public string FormatCustom(string format, NumberFormatInfo nfi); // 0x10107360 + private static void ZeroTrimEnd(StringBuilder sb, bool canEmpty); // 0x1010B740 + private static bool IsZeroOnly(StringBuilder sb); // 0x10109B80 + private static void AppendNonNegativeNumber(StringBuilder sb, int v); // 0x10106420 + private void AppendIntegerString(int minLength, StringBuilder sb); // 0x10106360 + private void AppendIntegerString(int minLength); // 0x101063D0 + private void AppendDecimalString(int precision, StringBuilder sb); // 0x10105CA0 + private void AppendDecimalString(int precision); // 0x10105C80 + private void AppendIntegerStringWithGroupSeparator(int[] groups, string groupSeparator); // 0x101061A0 + private void AppendExponent(NumberFormatInfo nfi, int exponent, int minDigits); // 0x10106060 + private void AppendOneDigit(int start); // 0x101065A0 + private void FastAppendDigits(int val, bool force); // 0x10106C30 + private void AppendDigits(int start, int end); // 0x10105CD0 + private void AppendDigits(int start, int end, StringBuilder sb); // 0x10105EA0 + private void Multiply10(int count); // 0x10109C20 + private void Divide10(int count); // 0x10106C10 + private NumberFormatter GetClone(); // 0x10108620 +} + +// Namespace: +private class CustomInfo // TypeDefIndex: 1706 +{ + // Fields + public bool UseGroup; // 0x08 + public int DecimalDigits; // 0x0C + public int DecimalPointPos; // 0x10 + public int DecimalTailSharpDigits; // 0x14 + public int IntegerDigits; // 0x18 + public int IntegerHeadSharpDigits; // 0x1C + public int IntegerHeadPos; // 0x20 + public bool UseExponent; // 0x24 + public int ExponentDigits; // 0x28 + public int ExponentTailSharpDigits; // 0x2C + public bool ExponentNegativeSignOnly; // 0x30 + public int DividePlaces; // 0x34 + public int Percents; // 0x38 + public int Permilles; // 0x3C + + // Methods + public void .ctor(); // 0x100F4240 + public static void GetActiveSection(string format, bool positive, bool zero, int offset, int length); // 0x100F3C20 + public static CustomInfo Parse(string format, int offset, int length, NumberFormatInfo nfi); // 0x100F3F40 + public string Format(string format, int offset, int length, NumberFormatInfo nfi, bool positive, StringBuilder sb_int, StringBuilder sb_dec, StringBuilder sb_exp); // 0x100F3660 +} + +// Namespace: System +[Serializable] +public class ObjectDisposedException : InvalidOperationException // TypeDefIndex: 1707 +{ + // Fields + private string obj_name; // 0x34 + private string msg; // 0x38 + + // Properties + public override string Message { get; } // 0x100EB210 + public string ObjectName { get; } // 0x100E9ED0 + + // Methods + public void .ctor(string objectName); // 0x100F8750 + public void .ctor(string objectName, string message); // 0x100F8720 + public void .ctor(string message, Exception innerException); // 0x100F8810 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100F87B0 + public override void GetObjectData(SerializationInfo info, StreamingContext context); // 0x100F86C0 +} + +// Namespace: System +[Serializable] +public sealed class OperatingSystem : ICloneable, ISerializable // TypeDefIndex: 1708 +{ + // Fields + private PlatformID _platform; // 0x08 + private Version _version; // 0x0C + private string _servicePack; // 0x10 + + // Properties + public PlatformID Platform { get; } // 0x100BF0C0 + public Version Version { get; } // 0x100C5B30 + public string ServicePack { get; } // 0x100BFC20 + public string VersionString { get; } // 0x100F8A80 + + // Methods + public void .ctor(PlatformID platform, Version version); // 0x100F8B70 + public object Clone(); // 0x100F8920 + public void GetObjectData(SerializationInfo info, StreamingContext context); // 0x100F89F0 + public override string ToString(); // 0x100F8A80 +} + +// Namespace: System +[Serializable] +public class OperationCanceledException : SystemException // TypeDefIndex: 1709 +{ + // Fields + private const int Result = -2146233029; // 0x00 + + // Methods + public void .ctor(); // 0x100F8C60 + public void .ctor(string message); // 0x100F8C10 + public void .ctor(string message, Exception innerException); // 0x100F8C30 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 +} + +// Namespace: System +[Serializable] +public class OutOfMemoryException : SystemException // TypeDefIndex: 1710 +{ + // Fields + private const int Result = -2147024882; // 0x00 + + // Methods + public void .ctor(); // 0x100F8F90 + public void .ctor(string message); // 0x100F8F70 + public void .ctor(string message, Exception innerException); // 0x100F8F40 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 +} + +// Namespace: System +[Serializable] +public class OverflowException : ArithmeticException // TypeDefIndex: 1711 +{ + // Fields + private const int Result = -2146233066; // 0x00 + + // Methods + public void .ctor(); // 0x100F9000 + public void .ctor(string message); // 0x100F9080 + public void .ctor(string message, Exception innerException); // 0x100F9050 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100F8FE0 +} + +// Namespace: System +[Serializable] +public enum PlatformID // TypeDefIndex: 1712 +{ + Win32S = 0, + Win32Windows = 1, + Win32NT = 2, + WinCE = 3, + Unix = 4, + Xbox = 5, + MacOSX = 6 +} + +// Namespace: System +[Serializable] +public class PlatformNotSupportedException : NotSupportedException // TypeDefIndex: 1713 +{ + // Fields + private const int Result = -2146233031; // 0x00 + + // Methods + public void .ctor(); // 0x100F90A0 + public void .ctor(string message); // 0x100F9120 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100F8FE0 + public void .ctor(string message, Exception inner); // 0x100F90F0 +} + +// Namespace: System +[Serializable] +public class Random // TypeDefIndex: 1714 +{ + // Fields + private const int MBIG = 2147483647; // 0x00 + private const int MSEED = 161803398; // 0x00 + private const int MZ = 0; // 0x00 + private int inext; // 0x08 + private int inextp; // 0x0C + private int[] SeedArray; // 0x10 + + // Methods + public void .ctor(); // 0x100F95D0 + public void .ctor(int Seed); // 0x100F9460 + protected virtual double Sample(); // 0x100F93B0 + public virtual int Next(); // 0x100F9380 + public virtual int Next(int maxValue); // 0x100F9220 + public virtual int Next(int minValue, int maxValue); // 0x100F92C0 + public virtual void NextBytes(byte[] buffer); // 0x100F9140 + public virtual double NextDouble(); // 0x100F9200 +} + +// Namespace: System +[Serializable] +public class RankException : SystemException // TypeDefIndex: 1715 +{ + // Fields + private const int Result = -2146233065; // 0x00 + + // Methods + public void .ctor(); // 0x100F95F0 + public void .ctor(string message); // 0x100F9640 + public void .ctor(string message, Exception innerException); // 0x100F9660 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 +} + +// Namespace: System +public class ResolveEventArgs : EventArgs // TypeDefIndex: 1716 +{ + // Fields + private string m_Name; // 0x08 + + // Properties + public string Name { get; } // 0x100BF0C0 + + // Methods + public void .ctor(string name); // 0x102093D0 +} + +// Namespace: System +[Serializable] +public struct RuntimeMethodHandle : ISerializable // TypeDefIndex: 1717 +{ + // Fields + private IntPtr value; // 0x08 + + // Properties + public IntPtr Value { get; } // 0x10003A80 + + // Methods + internal void .ctor(IntPtr v); // 0x10005950 + private void .ctor(SerializationInfo info, StreamingContext context); // 0x100066C0 + public void GetObjectData(SerializationInfo info, StreamingContext context); // 0x100065B0 + private static IntPtr GetFunctionPointer(IntPtr m); // 0x10104640 + public IntPtr GetFunctionPointer(); // 0x10006590 + public override bool Equals(object obj); // 0x100064E0 + public bool Equals(RuntimeMethodHandle handle); // 0x10006190 + public override int GetHashCode(); // 0x10006260 + public static bool op_Equality(RuntimeMethodHandle left, RuntimeMethodHandle right); // 0x10123830 + public static bool op_Inequality(RuntimeMethodHandle left, RuntimeMethodHandle right); // 0x10123840 +} + +// Namespace: System +public sealed class STAThreadAttribute : Attribute // TypeDefIndex: 1718 +{ + // Methods + public void .ctor(); // 0x100C5970 +} + +// Namespace: System +[Serializable] +public sealed class StackOverflowException : SystemException // TypeDefIndex: 1719 +{ + // Methods + public void .ctor(); // 0x10149C10 + public void .ctor(string message); // 0x100E5680 + public void .ctor(string message, Exception innerException); // 0x100E5670 + internal void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 +} + +// Namespace: System +[Serializable] +public abstract class StringComparer : IComparer`1, IEqualityComparer`1, IComparer, IEqualityComparer // TypeDefIndex: 1720 +{ + // Fields + private static StringComparer invariantCultureIgnoreCase; // 0x00 + private static StringComparer invariantCulture; // 0x04 + private static StringComparer ordinalIgnoreCase; // 0x08 + private static StringComparer ordinal; // 0x0C + + // Properties + public static StringComparer CurrentCulture { get; } // 0x1032B650 + public static StringComparer CurrentCultureIgnoreCase { get; } // 0x1032B5E0 + public static StringComparer InvariantCulture { get; } // 0x1032B710 + public static StringComparer InvariantCultureIgnoreCase { get; } // 0x1032B6C0 + public static StringComparer Ordinal { get; } // 0x1032B7B0 + public static StringComparer OrdinalIgnoreCase { get; } // 0x1032B760 + + // Methods + protected void .ctor(); // 0x100BF000 + private static void .cctor(); // 0x1032B4F0 + public static StringComparer Create(CultureInfo culture, bool ignoreCase); // 0x1032B330 + public int Compare(object x, object y); // 0x1032B1F0 + public bool Equals(object x, object y); // 0x1032B3B0 + public int GetHashCode(object obj); // 0x1032B450 + public abstract int Compare(string x, string y); + public abstract bool Equals(string x, string y); + public abstract int GetHashCode(string obj); +} + +// Namespace: System +[Serializable] +internal sealed class CultureAwareComparer : StringComparer // TypeDefIndex: 1721 +{ + // Fields + private readonly bool _ignoreCase; // 0x08 + private readonly CompareInfo _compareInfo; // 0x0C + + // Methods + public void .ctor(CultureInfo ci, bool ignore_case); // 0x102DE440 + public override int Compare(string x, string y); // 0x102DE300 + public override bool Equals(string x, string y); // 0x102DE340 + public override int GetHashCode(string s); // 0x102DE390 +} + +// Namespace: System +[Serializable] +internal sealed class OrdinalComparer : StringComparer // TypeDefIndex: 1722 +{ + // Fields + private readonly bool _ignoreCase; // 0x08 + + // Methods + public void .ctor(bool ignoreCase); // 0x100F8EE0 + public override int Compare(string x, string y); // 0x100F8CB0 + public override bool Equals(string x, string y); // 0x100F8D50 + public override int GetHashCode(string s); // 0x100F8E60 +} + +// Namespace: System +[Serializable] +public enum StringComparison // TypeDefIndex: 1723 +{ + CurrentCulture = 0, + CurrentCultureIgnoreCase = 1, + InvariantCulture = 2, + InvariantCultureIgnoreCase = 3, + Ordinal = 4, + OrdinalIgnoreCase = 5 +} + +// Namespace: System +public enum StringSplitOptions // TypeDefIndex: 1724 +{ + None = 0, + RemoveEmptyEntries = 1 +} + +// Namespace: System +[Serializable] +public class SystemException : Exception // TypeDefIndex: 1725 +{ + // Fields + private const int Result = -2146233087; // 0x00 + + // Methods + public void .ctor(); // 0x1032B980 + public void .ctor(string message); // 0x1032B9D0 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x1015EC80 + public void .ctor(string message, Exception innerException); // 0x1032B950 +} + +// Namespace: System +internal enum TermInfoBooleans // TypeDefIndex: 1726 +{ + AutoLeftMargin = 0, + AutoRightMargin = 1, + NoEscCtlc = 2, + CeolStandoutGlitch = 3, + EatNewlineGlitch = 4, + EraseOverstrike = 5, + GenericType = 6, + HardCopy = 7, + HasMetaKey = 8, + HasStatusLine = 9, + InsertNullGlitch = 10, + MemoryAbove = 11, + MemoryBelow = 12, + MoveInsertMode = 13, + MoveStandoutMode = 14, + OverStrike = 15, + StatusLineEscOk = 16, + DestTabsMagicSmso = 17, + TildeGlitch = 18, + TransparentUnderline = 19, + XonXoff = 20, + NeedsXonXoff = 21, + PrtrSilent = 22, + HardCursor = 23, + NonRevRmcup = 24, + NoPadChar = 25, + NonDestScrollRegion = 26, + CanChange = 27, + BackColorErase = 28, + HueLightnessSaturation = 29, + ColAddrGlitch = 30, + CrCancelsMicroMode = 31, + HasPrintWheel = 32, + RowAddrGlitch = 33, + SemiAutoRightMargin = 34, + CpiChangesRes = 35, + LpiChangesRes = 36, + Last = 37 +} + +// Namespace: System +[Serializable] +public class ThreadStaticAttribute : Attribute // TypeDefIndex: 1727 +{ + // Methods + public void .ctor(); // 0x100C5970 +} + +// Namespace: System +[Serializable] +public struct TimeSpan : IComparable, IComparable`1, IEquatable`1 // TypeDefIndex: 1728 +{ + // Fields + public const long TicksPerDay = 864000000000; // 0x00 + public const long TicksPerHour = 36000000000; // 0x00 + public const long TicksPerMillisecond = 10000; // 0x00 + public const long TicksPerMinute = 600000000; // 0x00 + public const long TicksPerSecond = 10000000; // 0x00 + public static readonly TimeSpan MaxValue; // 0x00 + public static readonly TimeSpan MinValue; // 0x08 + public static readonly TimeSpan Zero; // 0x10 + private long _ticks; // 0x08 + + // Properties + public int Days { get; } // 0x10019910 + public int Hours { get; } // 0x10019930 + public int Milliseconds { get; } // 0x10019960 + public int Minutes { get; } // 0x100199A0 + public int Seconds { get; } // 0x100199D0 + public long Ticks { get; } // 0x10019A10 + public double TotalDays { get; } // 0x10019A20 + public double TotalHours { get; } // 0x10019A50 + public double TotalMilliseconds { get; } // 0x10019A80 + public double TotalMinutes { get; } // 0x10019AB0 + public double TotalSeconds { get; } // 0x10019AE0 + + // Methods + public void .ctor(long ticks); // 0x100075A0 + public void .ctor(int hours, int minutes, int seconds); // 0x100197C0 + public void .ctor(int days, int hours, int minutes, int seconds); // 0x10019830 + public void .ctor(int days, int hours, int minutes, int seconds, int milliseconds); // 0x100198A0 + private static void .cctor(); // 0x1027D4A0 + internal static long CalculateTicks(int days, int hours, int minutes, int seconds, int milliseconds); // 0x1027C4C0 + public TimeSpan Add(TimeSpan ts); // 0x10019550 + public static int Compare(TimeSpan t1, TimeSpan t2); // 0x1027C780 + public int CompareTo(object value); // 0x10019570 + public int CompareTo(TimeSpan value); // 0x10019670 + public bool Equals(TimeSpan obj); // 0x10005120 + public TimeSpan Duration(); // 0x100196F0 + public override bool Equals(object value); // 0x10019700 + public static bool Equals(TimeSpan t1, TimeSpan t2); // 0x10272D80 + public static TimeSpan FromDays(double value); // 0x1027C8B0 + public static TimeSpan FromHours(double value); // 0x1027C920 + public static TimeSpan FromMinutes(double value); // 0x1027C9E0 + public static TimeSpan FromSeconds(double value); // 0x1027CA40 + public static TimeSpan FromMilliseconds(double value); // 0x1027C980 + private static TimeSpan From(double value, long tickMultiplicator); // 0x1027CAA0 + public static TimeSpan FromTicks(long value); // 0x1021FD30 + public override int GetHashCode(); // 0x10009D00 + public TimeSpan Negate(); // 0x10019780 + public static TimeSpan Parse(string s); // 0x1027CF40 + public static bool TryParse(string s, out TimeSpan result); // 0x1027D330 + public TimeSpan Subtract(TimeSpan ts); // 0x10019790 + public override string ToString(); // 0x100197B0 + public static TimeSpan op_Addition(TimeSpan t1, TimeSpan t2); // 0x1027D7F0 + public static bool op_Equality(TimeSpan t1, TimeSpan t2); // 0x10272D80 + public static bool op_GreaterThan(TimeSpan t1, TimeSpan t2); // 0x1027D830 + public static bool op_GreaterThanOrEqual(TimeSpan t1, TimeSpan t2); // 0x1027D810 + public static bool op_Inequality(TimeSpan t1, TimeSpan t2); // 0x10272DA0 + public static bool op_LessThan(TimeSpan t1, TimeSpan t2); // 0x1027D870 + public static bool op_LessThanOrEqual(TimeSpan t1, TimeSpan t2); // 0x1027D850 + public static TimeSpan op_Subtraction(TimeSpan t1, TimeSpan t2); // 0x1027D890 + public static TimeSpan op_UnaryNegation(TimeSpan t); // 0x1027D8B0 + public static TimeSpan op_UnaryPlus(TimeSpan t); // 0x1021FD30 +} + +// Namespace: +private class Parser // TypeDefIndex: 1729 +{ + // Fields + private string _src; // 0x08 + private int _cur; // 0x0C + private int _length; // 0x10 + private bool formatError; // 0x14 + + // Properties + public bool AtEnd { get; } // 0x102762E0 + + // Methods + public void .ctor(string src); // 0x102762B0 + private void ParseWhiteSpace(); // 0x10276230 + private bool ParseSign(); // 0x102760C0 + private int ParseInt(bool optional); // 0x10275EC0 + private bool ParseOptDot(); // 0x10276080 + private void ParseOptColon(); // 0x10276040 + private long ParseTicks(); // 0x10276100 + public TimeSpan Execute(); // 0x10275A80 +} + +// Namespace: System +[Serializable] +public abstract class TimeZone // TypeDefIndex: 1730 +{ + // Fields + private static TimeZone currentTimeZone; // 0x00 + [NonSerialized] private static object tz_lock; // 0x04 + [NonSerialized] private static long timezone_check; // 0x08 + + // Properties + public static TimeZone CurrentTimeZone { get; } // 0x1027E480 + public abstract string DaylightName { get; } + public abstract string StandardName { get; } + + // Methods + protected void .ctor(); // 0x100BF000 + private static void .cctor(); // 0x1027E430 + public abstract DaylightTime GetDaylightChanges(int year); + public abstract TimeSpan GetUtcOffset(DateTime time); + public virtual bool IsDaylightSavingTime(DateTime time); // 0x1027DDD0 + public static bool IsDaylightSavingTime(DateTime time, DaylightTime daylightTimes); // 0x1027DBB0 + public virtual DateTime ToLocalTime(DateTime time); // 0x1027DE60 + public virtual DateTime ToUniversalTime(DateTime time); // 0x1027E200 + internal TimeSpan GetLocalTimeDiff(DateTime time); // 0x1027D8D0 + internal TimeSpan GetLocalTimeDiff(DateTime time, TimeSpan utc_offset); // 0x1027D920 +} + +// Namespace: System +[Serializable] +internal class CurrentSystemTimeZone : TimeZone, IDeserializationCallback // TypeDefIndex: 1731 +{ + // Fields + private string m_standardName; // 0x08 + private string m_daylightName; // 0x0C + private Hashtable m_CachedDaylightChanges; // 0x10 + private long m_ticksOffset; // 0x18 + [NonSerialized] private TimeSpan utcOffsetWithOutDLS; // 0x20 + [NonSerialized] private TimeSpan utcOffsetWithDLS; // 0x28 + private static int this_year; // 0x00 + private static DaylightTime this_year_dlt; // 0x04 + + // Properties + public override string DaylightName { get; } // 0x100C5B30 + public override string StandardName { get; } // 0x100BF0C0 + + // Methods + internal void .ctor(); // 0x102DECD0 + internal void .ctor(long lnow); // 0x102DEAE0 + private void System.Runtime.Serialization.IDeserializationCallback.OnDeserialization(object sender); // 0x102DEAC0 + private static bool GetTimeZoneData(int year, out long[] data, out string[] names); // 0x102DE8B0 + public override DaylightTime GetDaylightChanges(int year); // 0x102DE4C0 + public override TimeSpan GetUtcOffset(DateTime time); // 0x102DE8D0 + private void OnDeserialization(DaylightTime dlt); // 0x102DE910 + private DaylightTime GetDaylightTimeFromData(long[] data); // 0x102DE7B0 +} + +// Namespace: +internal enum TimeZoneData // TypeDefIndex: 1732 +{ + DaylightSavingStartIdx = 0, + DaylightSavingEndIdx = 1, + UtcOffsetIdx = 2, + AdditionalDaylightOffsetIdx = 3 +} + +// Namespace: +internal enum TimeZoneNames // TypeDefIndex: 1733 +{ + StandardNameIdx = 0, + DaylightNameIdx = 1 +} + +// Namespace: System +[Serializable] +public class TimeoutException : SystemException // TypeDefIndex: 1734 +{ + // Fields + private const int Result = -2146233083; // 0x00 + + // Methods + public void .ctor(); // 0x1027E6C0 + public void .ctor(string message); // 0x1027E6A0 + public void .ctor(string message, Exception innerException); // 0x1027E710 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 +} + +// Namespace: System +[Serializable] +public enum TypeCode // TypeDefIndex: 1735 +{ + Empty = 0, + Object = 1, + DBNull = 2, + Boolean = 3, + Char = 4, + SByte = 5, + Byte = 6, + Int16 = 7, + UInt16 = 8, + Int32 = 9, + UInt32 = 10, + Int64 = 11, + UInt64 = 12, + Single = 13, + Double = 14, + Decimal = 15, + DateTime = 16, + String = 18 +} + +// Namespace: System +[Serializable] +public sealed class TypeInitializationException : SystemException // TypeDefIndex: 1736 +{ + // Fields + private string type_name; // 0x34 + + // Properties + public string TypeName { get; } // 0x100E9ED0 + + // Methods + public void .ctor(string fullTypeName, Exception innerException); // 0x1027EE90 + internal void .ctor(SerializationInfo info, StreamingContext context); // 0x1027EF10 + public override void GetObjectData(SerializationInfo info, StreamingContext context); // 0x1027EE30 +} + +// Namespace: System +[Serializable] +public class TypeLoadException : SystemException // TypeDefIndex: 1737 +{ + // Fields + private const int Result = -2146233054; // 0x00 + private string className; // 0x34 + private string assemblyName; // 0x38 + + // Properties + public override string Message { get; } // 0x1027F290 + public string TypeName { get; } // 0x1027F380 + + // Methods + public void .ctor(); // 0x1027F110 + public void .ctor(string message); // 0x1027F0F0 + public void .ctor(string message, Exception inner); // 0x1027F1C0 + internal void .ctor(string className, string assemblyName); // 0x1027F160 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x1027F1F0 + public override void GetObjectData(SerializationInfo info, StreamingContext context); // 0x1027EF90 +} + +// Namespace: System +[Serializable] +public class TypeUnloadedException : SystemException // TypeDefIndex: 1738 +{ + // Methods + public void .ctor(); // 0x1027F3E0 + public void .ctor(string message); // 0x100E5680 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 + public void .ctor(string message, Exception innerException); // 0x100E5670 +} + +// Namespace: System +[Serializable] +public class UnauthorizedAccessException : SystemException // TypeDefIndex: 1739 +{ + // Fields + private const int Result = -2146233088; // 0x00 + + // Methods + public void .ctor(); // 0x10349AD0 + public void .ctor(string message); // 0x10349A80 + public void .ctor(string message, Exception inner); // 0x10349AA0 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x100E5610 +} + +// Namespace: System +[Serializable] +public class UnhandledExceptionEventArgs : EventArgs // TypeDefIndex: 1740 +{ + // Fields + private object exception; // 0x08 + private bool m_isTerminating; // 0x0C + + // Properties + public object ExceptionObject { get; } // 0x100BF0C0 + public bool IsTerminating { get; } // 0x100F8910 + + // Methods + public void .ctor(object exception, bool isTerminating); // 0x10349B20 +} + +// Namespace: System +[Serializable] +internal class UnitySerializationHolder : ISerializable, IObjectReference // TypeDefIndex: 1741 +{ + // Fields + private string _data; // 0x08 + private UnityType _unityType; // 0x0C + private string _assemblyName; // 0x10 + + // Methods + private void .ctor(SerializationInfo info, StreamingContext ctx); // 0x1034A070 + public static void GetTypeData(Type instance, SerializationInfo info, StreamingContext ctx); // 0x10349F80 + public static void GetDBNullData(DBNull instance, SerializationInfo info, StreamingContext ctx); // 0x10349C50 + public static void GetAssemblyData(Assembly instance, SerializationInfo info, StreamingContext ctx); // 0x10349B80 + public static void GetModuleData(Module instance, SerializationInfo info, StreamingContext ctx); // 0x10349D40 + public virtual void GetObjectData(SerializationInfo info, StreamingContext context); // 0x10349E10 + public virtual object GetRealObject(StreamingContext context); // 0x10349E60 +} + +// Namespace: +private enum UnityType : byte // TypeDefIndex: 1742 +{ + DBNull = 2, + Type = 4, + Module = 5, + Assembly = 6 +} + +// Namespace: System +internal struct Variant // TypeDefIndex: 1743 +{ + // Fields + public short vt; // 0x08 + public ushort wReserved1; // 0x0A + public ushort wReserved2; // 0x0C + public ushort wReserved3; // 0x0E + public long llVal; // 0x10 + public int lVal; // 0x10 + public byte bVal; // 0x10 + public short iVal; // 0x10 + public float fltVal; // 0x10 + public double dblVal; // 0x10 + public short boolVal; // 0x10 + public IntPtr bstrVal; // 0x10 + public sbyte cVal; // 0x10 + public ushort uiVal; // 0x10 + public uint ulVal; // 0x10 + public ulong ullVal; // 0x10 + public int intVal; // 0x10 + public uint uintVal; // 0x10 + public IntPtr pdispVal; // 0x10 + public BRECORD bRecord; // 0x10 + + // Methods + public void SetValue(object obj); // 0x100308C0 + public object GetValue(); // 0x100308B0 + public void Clear(); // 0x10030800 +} + +// Namespace: System +internal struct BRECORD // TypeDefIndex: 1744 +{ + // Fields + private IntPtr pvRecord; // 0x08 + private IntPtr pRecInfo; // 0x0C + +} + +// Namespace: System +[Serializable] +public sealed class Version : IComparable, ICloneable, IComparable`1, IEquatable`1 // TypeDefIndex: 1745 +{ + // Fields + private const int UNDEFINED = -1; // 0x00 + private int _Major; // 0x08 + private int _Minor; // 0x0C + private int _Build; // 0x10 + private int _Revision; // 0x14 + + // Properties + public int Build { get; } // 0x100BFC20 + public int Major { get; } // 0x100BF0C0 + public int Minor { get; } // 0x100C5B30 + public int Revision { get; } // 0x100EF0C0 + public short MajorRevision { get; } // 0x1034BCF0 + public short MinorRevision { get; } // 0x1034BD00 + + // Methods + public void .ctor(); // 0x1034BA60 + public void .ctor(string version); // 0x1034BB50 + public void .ctor(int major, int minor); // 0x1034BAB0 + public void .ctor(int major, int minor, int build); // 0x1034B970 + public void .ctor(int major, int minor, int build, int revision); // 0x1034BA30 + private void CheckedSet(int defined, int major, int minor, int build, int revision); // 0x1034AE60 + public object Clone(); // 0x1034AF40 + public int CompareTo(object version); // 0x1034B0D0 + public override bool Equals(object obj); // 0x1034B400 + public int CompareTo(Version value); // 0x1034B170 + public bool Equals(Version obj); // 0x1034B3A0 + public override int GetHashCode(); // 0x1034B490 + public override string ToString(); // 0x1034B860 + public string ToString(int fieldCount); // 0x1034B4B0 + internal static Version CreateFromString(string info); // 0x1034B1E0 + public static bool op_Equality(Version v1, Version v2); // 0x1034BD10 + public static bool op_Inequality(Version v1, Version v2); // 0x1034BD80 + public static bool op_GreaterThan(Version v1, Version v2); // 0x1034BD50 + public static bool op_GreaterThanOrEqual(Version v1, Version v2); // 0x1034BD20 + public static bool op_LessThan(Version v1, Version v2); // 0x1034BDD0 + public static bool op_LessThanOrEqual(Version v1, Version v2); // 0x1034BDA0 +} + +// Namespace: System +[Serializable] +public class WeakReference : ISerializable // TypeDefIndex: 1746 +{ + // Fields + private bool isLongReference; // 0x08 + private GCHandle gcHandle; // 0x0C + + // Properties + public virtual bool IsAlive { get; } // 0x1034C170 + public virtual object Target { get; set; } // 0x1034C1A0 0x1034C1C0 + public virtual bool TrackResurrection { get; } // 0x100EA020 + + // Methods + protected void .ctor(); // 0x100BF000 + public void .ctor(object target); // 0x1034C020 + public void .ctor(object target, bool trackResurrection); // 0x1034C050 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x1034C080 + private void AllocateHandle(object target); // 0x1034BE00 + protected override void Finalize(); // 0x1034BE30 + public virtual void GetObjectData(SerializationInfo info, StreamingContext context); // 0x1034BEE0 +} + +// Namespace: System +public interface _AppDomain // TypeDefIndex: 1747 +{ + // Properties + string BaseDirectory { get; } + string DynamicDirectory { get; } + Evidence Evidence { get; } + string FriendlyName { get; } + string RelativeSearchPath { get; } + bool ShadowCopyFiles { get; } + + // Events + event AssemblyLoadEventHandler AssemblyLoad { + add; // 0x00000000 + remove; // 0x00000000 + } + event ResolveEventHandler AssemblyResolve { + add; // 0x00000000 + remove; // 0x00000000 + } + event EventHandler DomainUnload { + add; // 0x00000000 + remove; // 0x00000000 + } + event EventHandler ProcessExit { + add; // 0x00000000 + remove; // 0x00000000 + } + event ResolveEventHandler ResourceResolve { + add; // 0x00000000 + remove; // 0x00000000 + } + event ResolveEventHandler TypeResolve { + add; // 0x00000000 + remove; // 0x00000000 + } + event UnhandledExceptionEventHandler UnhandledException { + add; // 0x00000000 + remove; // 0x00000000 + } + + // Methods + void AppendPrivatePath(string path); + void ClearPrivatePath(); + void ClearShadowCopyPath(); + ObjectHandle CreateInstance(string assemblyName, string typeName); + ObjectHandle CreateInstance(string assemblyName, string typeName, object[] activationAttributes); + ObjectHandle CreateInstance(string assemblyName, string typeName, bool ignoreCase, BindingFlags bindingAttr, Binder binder, object[] args, CultureInfo culture, object[] activationAttributes, Evidence securityAttributes); + ObjectHandle CreateInstanceFrom(string assemblyFile, string typeName); + ObjectHandle CreateInstanceFrom(string assemblyFile, string typeName, object[] activationAttributes); + ObjectHandle CreateInstanceFrom(string assemblyFile, string typeName, bool ignoreCase, BindingFlags bindingAttr, Binder binder, object[] args, CultureInfo culture, object[] activationAttributes, Evidence securityAttributes); + AssemblyBuilder DefineDynamicAssembly(AssemblyName name, AssemblyBuilderAccess access); + AssemblyBuilder DefineDynamicAssembly(AssemblyName name, AssemblyBuilderAccess access, Evidence evidence); + AssemblyBuilder DefineDynamicAssembly(AssemblyName name, AssemblyBuilderAccess access, string dir); + AssemblyBuilder DefineDynamicAssembly(AssemblyName name, AssemblyBuilderAccess access, string dir, Evidence evidence); + AssemblyBuilder DefineDynamicAssembly(AssemblyName name, AssemblyBuilderAccess access, PermissionSet requiredPermissions, PermissionSet optionalPermissions, PermissionSet refusedPermissions); + AssemblyBuilder DefineDynamicAssembly(AssemblyName name, AssemblyBuilderAccess access, Evidence evidence, PermissionSet requiredPermissions, PermissionSet optionalPermissions, PermissionSet refusedPermissions); + AssemblyBuilder DefineDynamicAssembly(AssemblyName name, AssemblyBuilderAccess access, string dir, PermissionSet requiredPermissions, PermissionSet optionalPermissions, PermissionSet refusedPermissions); + AssemblyBuilder DefineDynamicAssembly(AssemblyName name, AssemblyBuilderAccess access, string dir, Evidence evidence, PermissionSet requiredPermissions, PermissionSet optionalPermissions, PermissionSet refusedPermissions); + AssemblyBuilder DefineDynamicAssembly(AssemblyName name, AssemblyBuilderAccess access, string dir, Evidence evidence, PermissionSet requiredPermissions, PermissionSet optionalPermissions, PermissionSet refusedPermissions, bool isSynchronized); + void DoCallBack(CrossAppDomainDelegate theDelegate); + bool Equals(object other); + int ExecuteAssembly(string assemblyFile); + int ExecuteAssembly(string assemblyFile, Evidence assemblySecurity); + int ExecuteAssembly(string assemblyFile, Evidence assemblySecurity, string[] args); + Assembly[] GetAssemblies(); + object GetData(string name); + int GetHashCode(); + object GetLifetimeService(); + Type GetType(); + object InitializeLifetimeService(); + Assembly Load(AssemblyName assemblyRef); + Assembly Load(byte[] rawAssembly); + Assembly Load(string assemblyString); + Assembly Load(AssemblyName assemblyRef, Evidence assemblySecurity); + Assembly Load(byte[] rawAssembly, byte[] rawSymbolStore); + Assembly Load(string assemblyString, Evidence assemblySecurity); + Assembly Load(byte[] rawAssembly, byte[] rawSymbolStore, Evidence securityEvidence); + void SetAppDomainPolicy(PolicyLevel domainPolicy); + void SetCachePath(string s); + void SetData(string name, object data); + void SetPrincipalPolicy(PrincipalPolicy policy); + void SetShadowCopyPath(string s); + void SetThreadPrincipal(IPrincipal principal); + string ToString(); + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); +} + +// Namespace: System +internal class __ComObject : MarshalByRefObject // TypeDefIndex: 1748 +{ + // Fields + private IntPtr iunknown; // 0x0C + private IntPtr hash_table; // 0x10 + + // Properties + internal IntPtr IUnknown { get; } // 0x1034CC30 + internal IntPtr IDispatch { get; } // 0x1034CAE0 + internal static Guid IID_IUnknown { get; } // 0x1034CBE0 + internal static Guid IID_IDispatch { get; } // 0x1034CB90 + + // Methods + public void .ctor(); // 0x1034C9D0 + internal void .ctor(Type t); // 0x1034CA00 + internal void .ctor(IntPtr pItf); // 0x1034CA20 + internal static __ComObject CreateRCW(Type t); // 0x1034C2E0 + private void ReleaseInterfaces(); // 0x1034C9C0 + protected override void Finalize(); // 0x1034C3E0 + internal void Initialize(Type t); // 0x1034C680 + private static Guid GetCLSID(Type t); // 0x1034C490 + internal IntPtr GetInterfaceInternal(Type t, bool throwException); // 0x1034C620 + internal IntPtr GetInterface(Type t, bool throwException); // 0x1034C660 + internal IntPtr GetInterface(Type t); // 0x1034C640 + private void CheckIUnknown(); // 0x1034C1E0 + public override bool Equals(object obj); // 0x1034C2F0 + public override int GetHashCode(); // 0x1034C600 + private static extern int CoCreateInstance(Guid rclsid, IntPtr pUnkOuter, uint dwClsContext, Guid riid, out IntPtr pUnk); // 0x1034C250 +} + +// Namespace: Mono.Math.Prime +internal delegate bool PrimalityTest(BigInteger bi, ConfidenceFactor confidence); // TypeDefIndex: 1749; 0x10171D80 + +// Namespace: System.Reflection +[Serializable] +public delegate bool MemberFilter(MemberInfo m, object filterCriteria); // TypeDefIndex: 1750; 0x10170480 + +// Namespace: System.Reflection +[Serializable] +public delegate Module ModuleResolveEventHandler(object sender, ResolveEventArgs e); // TypeDefIndex: 1751; 0x10171D80 + +// Namespace: System.Reflection +internal delegate object GetterAdapter(object _this); // TypeDefIndex: 1752; 0x1016FF70 + +// Namespace: System.Reflection +internal delegate T Getter`2(T _this); // TypeDefIndex: 1753; 0x00000000 + +// Namespace: System.Reflection +[Serializable] +public delegate bool TypeFilter(Type m, object filterCriteria); // TypeDefIndex: 1754; 0x10170480 + +// Namespace: System.Runtime.InteropServices +public delegate IntPtr ObjectCreationDelegate(IntPtr aggregator); // TypeDefIndex: 1755; 0x101A87B0 + +// Namespace: System.Runtime.Remoting.Contexts +public delegate void CrossContextDelegate(); // TypeDefIndex: 1756; 0x101D1860 + +// Namespace: System.Runtime.Remoting.Messaging +public delegate object HeaderHandler(Header[] headers); // TypeDefIndex: 1757; 0x101D3090 + +// Namespace: System.Runtime.Remoting.Messaging +public delegate bool MessageSurrogateFilter(string key, object value); // TypeDefIndex: 1758; 0x101D6370 + +// Namespace: System.Threading +public delegate void ContextCallback(object state); // TypeDefIndex: 1759; 0x10273710 + +// Namespace: System.Threading +public delegate void IOCompletionCallback(uint errorCode, uint numBytes, void * pOVERLAP); // TypeDefIndex: 1760; 0x102744A0 + +// Namespace: System.Threading +public delegate void ParameterizedThreadStart(object obj); // TypeDefIndex: 1761; 0x10273710 + +// Namespace: System.Threading +public delegate void SendOrPostCallback(object state); // TypeDefIndex: 1762; 0x10273710 + +// Namespace: System.Threading +public delegate void ThreadStart(); // TypeDefIndex: 1763; 0x10279480 + +// Namespace: System.Threading +public delegate void TimerCallback(object state); // TypeDefIndex: 1764; 0x10273710 + +// Namespace: System.Threading +public delegate void WaitCallback(object state); // TypeDefIndex: 1765; 0x10273710 + +// Namespace: System.Threading +public delegate void WaitOrTimerCallback(object state, bool timedOut); // TypeDefIndex: 1766; 0x10202CA0 + +// Namespace: System +public delegate void Action`1(T obj); // TypeDefIndex: 1767; 0x00000000 + +// Namespace: System +[Serializable] +public delegate void AppDomainInitializer(string[] args); // TypeDefIndex: 1768; 0x1015A4E0 + +// Namespace: System +[Serializable] +public delegate void AssemblyLoadEventHandler(object sender, AssemblyLoadEventArgs args); // TypeDefIndex: 1769; 0x1016E5B0 + +// Namespace: System +public delegate int Comparison`1(T x, T y); // TypeDefIndex: 1770; 0x00000000 + +// Namespace: System +public delegate void ConsoleCancelEventHandler(object sender, ConsoleCancelEventArgs e); // TypeDefIndex: 1771; 0x1016E5B0 + +// Namespace: System +public delegate T Converter`2(T input); // TypeDefIndex: 1772; 0x00000000 + +// Namespace: System +public delegate void CrossAppDomainDelegate(); // TypeDefIndex: 1773; 0x102DE100 + +// Namespace: System +[Serializable] +public delegate void EventHandler`1(object sender, T e); // TypeDefIndex: 1774; 0x00000000 + +// Namespace: System +[Serializable] +public delegate void EventHandler(object sender, EventArgs e); // TypeDefIndex: 1775; 0x1016E5B0 + +// Namespace: System +public delegate bool Predicate`1(T obj); // TypeDefIndex: 1776; 0x00000000 + +// Namespace: System +[Serializable] +public delegate Assembly ResolveEventHandler(object sender, ResolveEventArgs args); // TypeDefIndex: 1777; 0x10171D80 + +// Namespace: System +[Serializable] +public delegate void UnhandledExceptionEventHandler(object sender, UnhandledExceptionEventArgs e); // TypeDefIndex: 1778; 0x1016E5B0 + +// Namespace: +internal class // TypeDefIndex: 1779 +{ + // Fields + internal static $ArrayType$56 $$field-0 = null; // 0x00 + internal static $ArrayType$24 $$field-1 = null; // 0x38 + internal static $ArrayType$24 $$field-2 = null; // 0x50 + internal static $ArrayType$24 $$field-3 = null; // 0x68 + internal static $ArrayType$24 $$field-4 = null; // 0x80 + internal static $ArrayType$16 $$field-5 = null; // 0x98 + internal static $ArrayType$16 $$field-6 = null; // 0xA8 + internal static $ArrayType$40 $$field-7 = null; // 0xB8 + internal static $ArrayType$40 $$field-8 = null; // 0xE0 + internal static $ArrayType$36 $$field-9 = null; // 0x108 + internal static $ArrayType$36 $$field-10 = null; // 0x12C + internal static $ArrayType$120 $$field-11 = null; // 0x150 + internal static $ArrayType$120 $$field-12 = null; // 0x1C8 + internal static $ArrayType$36 $$field-13 = null; // 0x240 + internal static $ArrayType$36 $$field-14 = null; // 0x264 + internal static $ArrayType$3132 $$field-15 = null; // 0x288 + internal static $ArrayType$20 $$field-16 = null; // 0xEC4 + internal static $ArrayType$32 $$field-17 = null; // 0xED8 + internal static $ArrayType$48 $$field-18 = null; // 0xEF8 + internal static $ArrayType$64 $$field-19 = null; // 0xF28 + internal static $ArrayType$64 $$field-20 = null; // 0xF68 + internal static $ArrayType$64 $$field-21 = null; // 0xFA8 + internal static $ArrayType$64 $$field-22 = null; // 0xFE8 + internal static $ArrayType$12 $$field-23 = null; // 0x1028 + internal static $ArrayType$12 $$field-24 = null; // 0x1034 + internal static $ArrayType$12 $$field-25 = null; // 0x1040 + internal static $ArrayType$16 $$field-26 = null; // 0x104C + internal static $ArrayType$136 $$field-27 = null; // 0x105C + internal static $ArrayType$8 $$field-28 = null; // 0x10E4 + internal static $ArrayType$84 $$field-29 = null; // 0x10EC + internal static $ArrayType$72 $$field-30 = null; // 0x1140 + internal static $ArrayType$8 $$field-31 = null; // 0x1188 + internal static $ArrayType$20 $$field-32 = null; // 0x1190 + internal static $ArrayType$64 $$field-33 = null; // 0x11A4 + internal static $ArrayType$124 $$field-34 = null; // 0x11E4 + internal static $ArrayType$32 $$field-35 = null; // 0x1260 + internal static $ArrayType$96 $$field-36 = null; // 0x1280 + internal static $ArrayType$2048 $$field-37 = null; // 0x12E0 + internal static $ArrayType$56 $$field-38 = null; // 0x1AE0 + internal static $ArrayType$16 $$field-39 = null; // 0x1B18 + internal static $ArrayType$48 $$field-40 = null; // 0x1B28 + internal static $ArrayType$2048 $$field-41 = null; // 0x1B58 + internal static $ArrayType$2048 $$field-42 = null; // 0x2358 + internal static $ArrayType$256 $$field-43 = null; // 0x2B58 + internal static $ArrayType$256 $$field-44 = null; // 0x2C58 + internal static $ArrayType$120 $$field-45 = null; // 0x2D58 + internal static $ArrayType$256 $$field-46 = null; // 0x2DD0 + internal static $ArrayType$256 $$field-47 = null; // 0x2ED0 + internal static $ArrayType$1024 $$field-48 = null; // 0x2FD0 + internal static $ArrayType$1024 $$field-49 = null; // 0x33D0 + internal static $ArrayType$1024 $$field-50 = null; // 0x37D0 + internal static $ArrayType$1024 $$field-51 = null; // 0x3BD0 + internal static $ArrayType$1024 $$field-52 = null; // 0x3FD0 + internal static $ArrayType$1024 $$field-53 = null; // 0x43D0 + internal static $ArrayType$1024 $$field-54 = null; // 0x47D0 + internal static $ArrayType$1024 $$field-55 = null; // 0x4BD0 + internal static $ArrayType$256 $$field-56 = null; // 0x4FD0 + internal static $ArrayType$640 $$field-57 = null; // 0x50D0 + internal static $ArrayType$96 $$field-58 = null; // 0x5350 + internal static $ArrayType$160 $$field-59 = null; // 0x53B0 + internal static $ArrayType$12 $$field-60 = null; // 0x5450 + internal static $ArrayType$380 $$field-61 = null; // 0x545C + internal static $ArrayType$128 $$field-62 = null; // 0x55D8 + internal static $ArrayType$256 $$field-63 = null; // 0x5658 + internal static $ArrayType$52 $$field-64 = null; // 0x5758 + internal static $ArrayType$52 $$field-65 = null; // 0x578C + internal static $ArrayType$1668 $$field-66 = null; // 0x57C0 + internal static $ArrayType$2100 $$field-67 = null; // 0x5E44 + internal static $ArrayType$1452 $$field-68 = null; // 0x6678 + + // Methods + public void .ctor(); // 0x100BF000 +} + +// Namespace: +private struct $ArrayType$56 // TypeDefIndex: 1780 +{ +} + +// Namespace: +private struct $ArrayType$24 // TypeDefIndex: 1781 +{ +} + +// Namespace: +private struct $ArrayType$16 // TypeDefIndex: 1782 +{ +} + +// Namespace: +private struct $ArrayType$40 // TypeDefIndex: 1783 +{ +} + +// Namespace: +private struct $ArrayType$36 // TypeDefIndex: 1784 +{ +} + +// Namespace: +private struct $ArrayType$120 // TypeDefIndex: 1785 +{ +} + +// Namespace: +private struct $ArrayType$3132 // TypeDefIndex: 1786 +{ +} + +// Namespace: +private struct $ArrayType$20 // TypeDefIndex: 1787 +{ +} + +// Namespace: +private struct $ArrayType$32 // TypeDefIndex: 1788 +{ +} + +// Namespace: +private struct $ArrayType$48 // TypeDefIndex: 1789 +{ +} + +// Namespace: +private struct $ArrayType$64 // TypeDefIndex: 1790 +{ +} + +// Namespace: +private struct $ArrayType$12 // TypeDefIndex: 1791 +{ +} + +// Namespace: +private struct $ArrayType$136 // TypeDefIndex: 1792 +{ +} + +// Namespace: +private struct $ArrayType$8 // TypeDefIndex: 1793 +{ +} + +// Namespace: +private struct $ArrayType$84 // TypeDefIndex: 1794 +{ +} + +// Namespace: +private struct $ArrayType$72 // TypeDefIndex: 1795 +{ +} + +// Namespace: +private struct $ArrayType$124 // TypeDefIndex: 1796 +{ +} + +// Namespace: +private struct $ArrayType$96 // TypeDefIndex: 1797 +{ +} + +// Namespace: +private struct $ArrayType$2048 // TypeDefIndex: 1798 +{ +} + +// Namespace: +private struct $ArrayType$256 // TypeDefIndex: 1799 +{ +} + +// Namespace: +private struct $ArrayType$1024 // TypeDefIndex: 1800 +{ +} + +// Namespace: +private struct $ArrayType$640 // TypeDefIndex: 1801 +{ +} + +// Namespace: +private struct $ArrayType$160 // TypeDefIndex: 1802 +{ +} + +// Namespace: +private struct $ArrayType$380 // TypeDefIndex: 1803 +{ +} + +// Namespace: +private struct $ArrayType$128 // TypeDefIndex: 1804 +{ +} + +// Namespace: +private struct $ArrayType$52 // TypeDefIndex: 1805 +{ +} + +// Namespace: +private struct $ArrayType$1668 // TypeDefIndex: 1806 +{ +} + +// Namespace: +private struct $ArrayType$2100 // TypeDefIndex: 1807 +{ +} + +// Namespace: +private struct $ArrayType$1452 // TypeDefIndex: 1808 +{ +} + +// Namespace: System +internal class __Il2CppComObject // TypeDefIndex: 1809 +{ + // Methods + protected override void Finalize(); // 0x1034CCA0 +} + +// Namespace: +internal class // TypeDefIndex: 1810 +{ +} + +// Namespace: Il2CppTests.TestSources +internal class Test // TypeDefIndex: 1811 +{ + // Methods + public void ParameterlessMethod(); // 0x100C5530 + public int ValueTypeReturnMethod(); // 0x100C5600 + public StringBuilder ReferenceTypeReturnMethod(); // 0x1034DA60 + public void .ctor(); // 0x100BF000 +} diff --git a/Il2CppTests/TestExpectedResults/Generics.cs b/Il2CppTests/TestExpectedResults/Generics.cs new file mode 100644 index 0000000..68afd3b --- /dev/null +++ b/Il2CppTests/TestExpectedResults/Generics.cs @@ -0,0 +1,37247 @@ +// Image 0: mscorlib.dll - 0 +// Image 1: Generics.dll - 1810 + +// Namespace: +internal class // TypeDefIndex: 0 +{ +} + +// Namespace: System +[Serializable] +public class Object // TypeDefIndex: 1 +{ + // Methods + public void .ctor(); // 0x001AF63C + public virtual bool Equals(object obj); // 0x001B0CC0 + public static bool Equals(object objA, object objB); // 0x001B0CD4 + protected override void Finalize(); // 0x001B0D08 + public virtual int GetHashCode(); // 0x001B0D0C + public Type GetType(); // 0x001B0D14 + protected object MemberwiseClone(); // 0x001B0D18 + public virtual string ToString(); // 0x001B0D1C + public static bool ReferenceEquals(object objA, object objB); // 0x001B0D54 + internal static int InternalGetHashCode(object o); // 0x001B0D10 + internal IntPtr obj_address(); // 0x001B0D68 + private void FieldGetter(string typeName, string fieldName, object val); // 0x001B0D6C + private void FieldSetter(string typeName, string fieldName, object val); // 0x001B0D70 +} + +// Namespace: System +[Serializable] +public abstract class ValueType // TypeDefIndex: 2 +{ + // Methods + protected void .ctor(); // 0x0055BA78 + private static bool InternalEquals(object o1, object o2, out object[] fields); // 0x0055BA80 + internal static bool DefaultEquals(object o1, object o2); // 0x0055BA84 + public override bool Equals(object obj); // 0x0055BBA0 + internal static int InternalGetHashCode(object o, out object[] fields); // 0x0055BBA4 + public override int GetHashCode(); // 0x0055BBA8 + public override string ToString(); // 0x0055BCA8 +} + +// Namespace: System +[Serializable] +public abstract class Attribute : _Attribute // TypeDefIndex: 3 +{ + // Properties + public virtual object TypeId { get; } // 0x004F47E0 + + // Methods + protected void .ctor(); // 0x004F45B8 + private void System.Runtime.InteropServices._Attribute.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x004F45C0 + private void System.Runtime.InteropServices._Attribute.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x004F4648 + private void System.Runtime.InteropServices._Attribute.GetTypeInfoCount(out uint pcTInfo); // 0x004F46D0 + private void System.Runtime.InteropServices._Attribute.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x004F4758 + private static void CheckParameters(object element, Type attributeType); // 0x004F47E8 + private static Attribute FindAttribute(object[] attributes); // 0x004F49C8 + public static Attribute GetCustomAttribute(ParameterInfo element, Type attributeType); // 0x004F4AF8 + public static Attribute GetCustomAttribute(MemberInfo element, Type attributeType); // 0x004F4B4C + public static Attribute GetCustomAttribute(Assembly element, Type attributeType); // 0x004F4BF4 + public static Attribute GetCustomAttribute(Module element, Type attributeType); // 0x004F4C48 + public static Attribute GetCustomAttribute(Module element, Type attributeType, bool inherit); // 0x004F4C50 + public static Attribute GetCustomAttribute(Assembly element, Type attributeType, bool inherit); // 0x004F4BFC + public static Attribute GetCustomAttribute(ParameterInfo element, Type attributeType, bool inherit); // 0x004F4B00 + public static Attribute GetCustomAttribute(MemberInfo element, Type attributeType, bool inherit); // 0x004F4B54 + public static Attribute[] GetCustomAttributes(Assembly element); // 0x004F4C9C + public static Attribute[] GetCustomAttributes(ParameterInfo element); // 0x004F4DBC + public static Attribute[] GetCustomAttributes(MemberInfo element); // 0x004F4EDC + public static Attribute[] GetCustomAttributes(Module element); // 0x004F509C + public static Attribute[] GetCustomAttributes(Assembly element, Type attributeType); // 0x004F51BC + public static Attribute[] GetCustomAttributes(Module element, Type attributeType); // 0x004F5294 + public static Attribute[] GetCustomAttributes(ParameterInfo element, Type attributeType); // 0x004F536C + public static Attribute[] GetCustomAttributes(MemberInfo element, Type type); // 0x004F5444 + public static Attribute[] GetCustomAttributes(Assembly element, Type attributeType, bool inherit); // 0x004F51C4 + public static Attribute[] GetCustomAttributes(ParameterInfo element, Type attributeType, bool inherit); // 0x004F5374 + public static Attribute[] GetCustomAttributes(Module element, Type attributeType, bool inherit); // 0x004F529C + public static Attribute[] GetCustomAttributes(MemberInfo element, Type type, bool inherit); // 0x004F544C + public static Attribute[] GetCustomAttributes(Module element, bool inherit); // 0x004F50A4 + public static Attribute[] GetCustomAttributes(Assembly element, bool inherit); // 0x004F4CA4 + public static Attribute[] GetCustomAttributes(MemberInfo element, bool inherit); // 0x004F4EE4 + public static Attribute[] GetCustomAttributes(ParameterInfo element, bool inherit); // 0x004F4DC4 + public override int GetHashCode(); // 0x004F557C + public virtual bool IsDefaultAttribute(); // 0x004F5584 + public static bool IsDefined(Module element, Type attributeType); // 0x004F558C + public static bool IsDefined(ParameterInfo element, Type attributeType); // 0x004F55DC + public static bool IsDefined(MemberInfo element, Type attributeType); // 0x004F565C + public static bool IsDefined(Assembly element, Type attributeType); // 0x004F57DC + public static bool IsDefined(MemberInfo element, Type attributeType, bool inherit); // 0x004F5664 + public static bool IsDefined(Assembly element, Type attributeType, bool inherit); // 0x004F57E4 + public static bool IsDefined(Module element, Type attributeType, bool inherit); // 0x004F5594 + public static bool IsDefined(ParameterInfo element, Type attributeType, bool inherit); // 0x004F55E4 + public virtual bool Match(object obj); // 0x004F582C + public override bool Equals(object obj); // 0x004F583C +} + +// Namespace: System.Runtime.InteropServices +public interface _Attribute // TypeDefIndex: 4 +{ + // Methods + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); +} + +// Namespace: System +[Serializable] +public struct Int32 : IFormattable, IConvertible, IComparable, IComparable`1, IEquatable`1 // TypeDefIndex: 5 +{ + // Fields + public const int MaxValue = 2147483647; // 0x00 + public const int MinValue = -2147483648; // 0x00 + internal int m_value; // 0x08 + + // Methods + private bool System.IConvertible.ToBoolean(IFormatProvider provider); // 0x0008B5C8 + private byte System.IConvertible.ToByte(IFormatProvider provider); // 0x0008B5D0 + private char System.IConvertible.ToChar(IFormatProvider provider); // 0x0008B5D8 + private DateTime System.IConvertible.ToDateTime(IFormatProvider provider); // 0x0008B5E0 + private Decimal System.IConvertible.ToDecimal(IFormatProvider provider); // 0x0008B5F4 + private double System.IConvertible.ToDouble(IFormatProvider provider); // 0x0008B608 + private short System.IConvertible.ToInt16(IFormatProvider provider); // 0x0008B610 + private int System.IConvertible.ToInt32(IFormatProvider provider); // 0x0008B618 + private long System.IConvertible.ToInt64(IFormatProvider provider); // 0x0008B620 + private sbyte System.IConvertible.ToSByte(IFormatProvider provider); // 0x0008B628 + private float System.IConvertible.ToSingle(IFormatProvider provider); // 0x0008B630 + private object System.IConvertible.ToType(Type targetType, IFormatProvider provider); // 0x0008B638 + private ushort System.IConvertible.ToUInt16(IFormatProvider provider); // 0x0008B640 + private uint System.IConvertible.ToUInt32(IFormatProvider provider); // 0x0008B648 + private ulong System.IConvertible.ToUInt64(IFormatProvider provider); // 0x0008B650 + public int CompareTo(object value); // 0x0008B658 + public override bool Equals(object obj); // 0x0008B660 + public override int GetHashCode(); // 0x0008B668 + public int CompareTo(int value); // 0x0008B670 + public bool Equals(int obj); // 0x0008B688 + internal static bool ProcessTrailingWhitespace(bool tryParse, string s, int position, Exception exc); // 0x001D7BCC + internal static bool Parse(string s, bool tryParse, out int result, out Exception exc); // 0x001D8ED8 + public static int Parse(string s, IFormatProvider provider); // 0x001D91FC + public static int Parse(string s, NumberStyles style); // 0x001D9208 + internal static bool CheckStyle(NumberStyles style, bool tryParse, Exception exc); // 0x001D9210 + internal static bool JumpOverWhite(int pos, string s, bool reportError, bool tryParse, Exception exc); // 0x001D931C + internal static void FindSign(int pos, string s, NumberFormatInfo nfi, bool foundSign, bool negative); // 0x001D943C + internal static void FindCurrency(int pos, string s, NumberFormatInfo nfi, bool foundCurrency); // 0x001D95D0 + internal static bool FindExponent(int pos, string s, int exponent, bool tryParse, Exception exc); // 0x001D9718 + internal static bool FindOther(int pos, string s, string other); // 0x001D9AF8 + internal static bool ValidDigit(char e, bool allowHex); // 0x001D9C00 + internal static Exception GetFormatException(); // 0x001D7B4C + internal static bool Parse(string s, NumberStyles style, IFormatProvider fp, bool tryParse, out int result, out Exception exc); // 0x001D9CF0 + public static int Parse(string s); // 0x001DABCC + public static int Parse(string s, NumberStyles style, IFormatProvider provider); // 0x001D7DC4 + public static bool TryParse(string s, out int result); // 0x001DAC6C + public static bool TryParse(string s, NumberStyles style, IFormatProvider provider, out int result); // 0x001D7FC8 + public override string ToString(); // 0x0008B69C + public string ToString(IFormatProvider provider); // 0x0008B6A4 + public string ToString(string format); // 0x0008B6AC + public string ToString(string format, IFormatProvider provider); // 0x0008B6B8 + public TypeCode GetTypeCode(); // 0x0008B6C0 +} + +// Namespace: System +public interface IFormattable // TypeDefIndex: 6 +{ + // Methods + string ToString(string format, IFormatProvider formatProvider); +} + +// Namespace: System +public interface IConvertible // TypeDefIndex: 7 +{ + // Methods + TypeCode GetTypeCode(); + bool ToBoolean(IFormatProvider provider); + byte ToByte(IFormatProvider provider); + char ToChar(IFormatProvider provider); + DateTime ToDateTime(IFormatProvider provider); + Decimal ToDecimal(IFormatProvider provider); + double ToDouble(IFormatProvider provider); + short ToInt16(IFormatProvider provider); + int ToInt32(IFormatProvider provider); + long ToInt64(IFormatProvider provider); + sbyte ToSByte(IFormatProvider provider); + float ToSingle(IFormatProvider provider); + string ToString(IFormatProvider provider); + object ToType(Type conversionType, IFormatProvider provider); + ushort ToUInt16(IFormatProvider provider); + uint ToUInt32(IFormatProvider provider); + ulong ToUInt64(IFormatProvider provider); +} + +// Namespace: System +public interface IComparable // TypeDefIndex: 8 +{ + // Methods + int CompareTo(object obj); +} + +// Namespace: System +public interface IComparable`1 // TypeDefIndex: 9 +{ + // Methods + int CompareTo(T other); +} + +// Namespace: System +public sealed class SerializableAttribute : Attribute // TypeDefIndex: 10 +{ + // Methods + public void .ctor(); // 0x00247530 +} + +// Namespace: System +[Serializable] +public sealed class AttributeUsageAttribute : Attribute // TypeDefIndex: 11 +{ + // Fields + private AttributeTargets valid_on; // 0x08 + private bool allow_multiple; // 0x0C + private bool inherited; // 0x0D + + // Properties + public bool AllowMultiple { get; set; } // 0x004F5910 0x004F5918 + public bool Inherited { get; set; } // 0x004F5920 0x004F5928 + public AttributeTargets ValidOn { get; } // 0x004F5930 + + // Methods + public void .ctor(AttributeTargets validOn); // 0x004F58E4 +} + +// Namespace: System.Runtime.InteropServices +public sealed class ComVisibleAttribute : Attribute // TypeDefIndex: 12 +{ + // Fields + private bool Visible; // 0x08 + + // Properties + public bool Value { get; } // 0x002B5F20 + + // Methods + public void .ctor(bool visibility); // 0x002B5F00 +} + +// Namespace: System +public interface IEquatable`1 // TypeDefIndex: 13 +{ + // Methods + bool Equals(T other); +} + +// Namespace: System +[Serializable] +public struct Int64 : IFormattable, IConvertible, IComparable, IComparable`1, IEquatable`1 // TypeDefIndex: 14 +{ + // Fields + public const long MaxValue = 9223372036854775807; // 0x00 + public const long MinValue = -9223372036854775808; // 0x00 + internal long m_value; // 0x08 + + // Methods + private bool System.IConvertible.ToBoolean(IFormatProvider provider); // 0x0008B6C8 + private byte System.IConvertible.ToByte(IFormatProvider provider); // 0x0008B6D0 + private char System.IConvertible.ToChar(IFormatProvider provider); // 0x0008B6D8 + private DateTime System.IConvertible.ToDateTime(IFormatProvider provider); // 0x0008B6E0 + private Decimal System.IConvertible.ToDecimal(IFormatProvider provider); // 0x0008B6F4 + private double System.IConvertible.ToDouble(IFormatProvider provider); // 0x0008B708 + private short System.IConvertible.ToInt16(IFormatProvider provider); // 0x0008B710 + private int System.IConvertible.ToInt32(IFormatProvider provider); // 0x0008B718 + private long System.IConvertible.ToInt64(IFormatProvider provider); // 0x0008B720 + private sbyte System.IConvertible.ToSByte(IFormatProvider provider); // 0x0008B728 + private float System.IConvertible.ToSingle(IFormatProvider provider); // 0x0008B730 + private object System.IConvertible.ToType(Type targetType, IFormatProvider provider); // 0x0008B738 + private ushort System.IConvertible.ToUInt16(IFormatProvider provider); // 0x0008B740 + private uint System.IConvertible.ToUInt32(IFormatProvider provider); // 0x0008B748 + private ulong System.IConvertible.ToUInt64(IFormatProvider provider); // 0x0008B750 + public int CompareTo(object value); // 0x0008B758 + public override bool Equals(object obj); // 0x0008B760 + public override int GetHashCode(); // 0x0008B768 + public int CompareTo(long value); // 0x0008B774 + public bool Equals(long obj); // 0x0008B7A8 + internal static bool Parse(string s, bool tryParse, out long result, out Exception exc); // 0x001DBA78 + public static long Parse(string s, IFormatProvider provider); // 0x001DBE04 + public static long Parse(string s, NumberStyles style); // 0x001DBED0 + internal static bool Parse(string s, NumberStyles style, IFormatProvider fp, bool tryParse, out long result, out Exception exc); // 0x001DBED8 + public static long Parse(string s); // 0x001DD24C + public static long Parse(string s, NumberStyles style, IFormatProvider provider); // 0x001DBE10 + public static bool TryParse(string s, out long result); // 0x001DD2F4 + public static bool TryParse(string s, NumberStyles style, IFormatProvider provider, out long result); // 0x001DD33C + public override string ToString(); // 0x0008B7C4 + public string ToString(IFormatProvider provider); // 0x0008B7CC + public string ToString(string format); // 0x0008B7D4 + public string ToString(string format, IFormatProvider provider); // 0x0008B7E0 + public TypeCode GetTypeCode(); // 0x0008B7E8 +} + +// Namespace: System +[Serializable] +public struct UInt32 : IFormattable, IConvertible, IComparable, IComparable`1, IEquatable`1 // TypeDefIndex: 15 +{ + // Fields + public const uint MaxValue = 4294967295; // 0x00 + public const uint MinValue = 0; // 0x00 + internal uint m_value; // 0x08 + + // Methods + private bool System.IConvertible.ToBoolean(IFormatProvider provider); // 0x000A7D1C + private byte System.IConvertible.ToByte(IFormatProvider provider); // 0x000A7D24 + private char System.IConvertible.ToChar(IFormatProvider provider); // 0x000A7D2C + private DateTime System.IConvertible.ToDateTime(IFormatProvider provider); // 0x000A7D34 + private Decimal System.IConvertible.ToDecimal(IFormatProvider provider); // 0x000A7D48 + private double System.IConvertible.ToDouble(IFormatProvider provider); // 0x000A7D5C + private short System.IConvertible.ToInt16(IFormatProvider provider); // 0x000A7D64 + private int System.IConvertible.ToInt32(IFormatProvider provider); // 0x000A7D6C + private long System.IConvertible.ToInt64(IFormatProvider provider); // 0x000A7D74 + private sbyte System.IConvertible.ToSByte(IFormatProvider provider); // 0x000A7D7C + private float System.IConvertible.ToSingle(IFormatProvider provider); // 0x000A7D84 + private object System.IConvertible.ToType(Type targetType, IFormatProvider provider); // 0x000A7D8C + private ushort System.IConvertible.ToUInt16(IFormatProvider provider); // 0x000A7D94 + private uint System.IConvertible.ToUInt32(IFormatProvider provider); // 0x000A7D9C + private ulong System.IConvertible.ToUInt64(IFormatProvider provider); // 0x000A7DA4 + public int CompareTo(object value); // 0x000A7DAC + public override bool Equals(object obj); // 0x000A7DB4 + public override int GetHashCode(); // 0x000A7DBC + public int CompareTo(uint value); // 0x000A7DC4 + public bool Equals(uint obj); // 0x000A7DDC + internal static bool Parse(string s, bool tryParse, out uint result, out Exception exc); // 0x00428AFC + internal static bool Parse(string s, NumberStyles style, IFormatProvider provider, bool tryParse, out uint result, out Exception exc); // 0x00428E30 + public static uint Parse(string s); // 0x00429C1C + public static uint Parse(string s, NumberStyles style, IFormatProvider provider); // 0x00427DAC + public static uint Parse(string s, IFormatProvider provider); // 0x00429CBC + public static uint Parse(string s, NumberStyles style); // 0x00429CC8 + public static bool TryParse(string s, out uint result); // 0x00429CD0 + public static bool TryParse(string s, NumberStyles style, IFormatProvider provider, out uint result); // 0x00427EF8 + public override string ToString(); // 0x000A7DF0 + public string ToString(IFormatProvider provider); // 0x000A7DF8 + public string ToString(string format); // 0x000A7E00 + public string ToString(string format, IFormatProvider provider); // 0x000A7E0C + public TypeCode GetTypeCode(); // 0x000A7E14 +} + +// Namespace: System +[Serializable] +public sealed class CLSCompliantAttribute : Attribute // TypeDefIndex: 16 +{ + // Fields + private bool is_compliant; // 0x08 + + // Properties + public bool IsCompliant { get; } // 0x004FA59C + + // Methods + public void .ctor(bool isCompliant); // 0x004FA57C +} + +// Namespace: System +[Serializable] +public struct UInt64 : IFormattable, IConvertible, IComparable, IComparable`1, IEquatable`1 // TypeDefIndex: 17 +{ + // Fields + public const ulong MaxValue = 18446744073709551615; // 0x00 + public const ulong MinValue = 0; // 0x00 + internal ulong m_value; // 0x08 + + // Methods + private bool System.IConvertible.ToBoolean(IFormatProvider provider); // 0x000A7E1C + private byte System.IConvertible.ToByte(IFormatProvider provider); // 0x000A7E24 + private char System.IConvertible.ToChar(IFormatProvider provider); // 0x000A7E2C + private DateTime System.IConvertible.ToDateTime(IFormatProvider provider); // 0x000A7E34 + private Decimal System.IConvertible.ToDecimal(IFormatProvider provider); // 0x000A7E48 + private double System.IConvertible.ToDouble(IFormatProvider provider); // 0x000A7E5C + private short System.IConvertible.ToInt16(IFormatProvider provider); // 0x000A7E64 + private int System.IConvertible.ToInt32(IFormatProvider provider); // 0x000A7E6C + private long System.IConvertible.ToInt64(IFormatProvider provider); // 0x000A7E74 + private sbyte System.IConvertible.ToSByte(IFormatProvider provider); // 0x000A7E7C + private float System.IConvertible.ToSingle(IFormatProvider provider); // 0x000A7E84 + private object System.IConvertible.ToType(Type targetType, IFormatProvider provider); // 0x000A7E8C + private ushort System.IConvertible.ToUInt16(IFormatProvider provider); // 0x000A7E94 + private uint System.IConvertible.ToUInt32(IFormatProvider provider); // 0x000A7E9C + private ulong System.IConvertible.ToUInt64(IFormatProvider provider); // 0x000A7EA4 + public int CompareTo(object value); // 0x000A7EAC + public override bool Equals(object obj); // 0x000A7EB4 + public override int GetHashCode(); // 0x000A7EBC + public int CompareTo(ulong value); // 0x000A7EC8 + public bool Equals(ulong obj); // 0x000A7EFC + public static ulong Parse(string s); // 0x0042A96C + public static ulong Parse(string s, IFormatProvider provider); // 0x0042AA38 + public static ulong Parse(string s, NumberStyles style); // 0x0042AA44 + internal static bool Parse(string s, NumberStyles style, IFormatProvider provider, bool tryParse, out ulong result, out Exception exc); // 0x0042AA4C + public static ulong Parse(string s, NumberStyles style, IFormatProvider provider); // 0x0042A978 + public static bool TryParse(string s, out ulong result); // 0x0042B8A4 + public static bool TryParse(string s, NumberStyles style, IFormatProvider provider, out ulong result); // 0x0042B8F8 + public override string ToString(); // 0x000A7F18 + public string ToString(IFormatProvider provider); // 0x000A7F20 + public string ToString(string format); // 0x000A7F28 + public string ToString(string format, IFormatProvider provider); // 0x000A7F34 + public TypeCode GetTypeCode(); // 0x000A7F3C +} + +// Namespace: System +[Serializable] +public struct Byte : IFormattable, IConvertible, IComparable, IComparable`1, IEquatable`1 // TypeDefIndex: 18 +{ + // Fields + public const byte MinValue = 0; // 0x00 + public const byte MaxValue = 255; // 0x00 + internal byte m_value; // 0x08 + + // Methods + private object System.IConvertible.ToType(Type targetType, IFormatProvider provider); // 0x000A9950 + private bool System.IConvertible.ToBoolean(IFormatProvider provider); // 0x000A9958 + private byte System.IConvertible.ToByte(IFormatProvider provider); // 0x000A9960 + private char System.IConvertible.ToChar(IFormatProvider provider); // 0x000A9968 + private DateTime System.IConvertible.ToDateTime(IFormatProvider provider); // 0x000A9970 + private Decimal System.IConvertible.ToDecimal(IFormatProvider provider); // 0x000A9980 + private double System.IConvertible.ToDouble(IFormatProvider provider); // 0x000A9994 + private short System.IConvertible.ToInt16(IFormatProvider provider); // 0x000A999C + private int System.IConvertible.ToInt32(IFormatProvider provider); // 0x000A99A4 + private long System.IConvertible.ToInt64(IFormatProvider provider); // 0x000A99AC + private sbyte System.IConvertible.ToSByte(IFormatProvider provider); // 0x000A99B4 + private float System.IConvertible.ToSingle(IFormatProvider provider); // 0x000A99BC + private ushort System.IConvertible.ToUInt16(IFormatProvider provider); // 0x000A99C4 + private uint System.IConvertible.ToUInt32(IFormatProvider provider); // 0x000A99CC + private ulong System.IConvertible.ToUInt64(IFormatProvider provider); // 0x000A99D4 + public int CompareTo(object value); // 0x000A99DC + public override bool Equals(object obj); // 0x000A99E4 + public override int GetHashCode(); // 0x000A99EC + public int CompareTo(byte value); // 0x000A99F4 + public bool Equals(byte obj); // 0x000A9A0C + public static byte Parse(string s, IFormatProvider provider); // 0x004FA224 + public static byte Parse(string s, NumberStyles style); // 0x004FA304 + public static byte Parse(string s, NumberStyles style, IFormatProvider provider); // 0x004FA230 + public static byte Parse(string s); // 0x004FA30C + public static bool TryParse(string s, out byte result); // 0x004FA318 + public static bool TryParse(string s, NumberStyles style, IFormatProvider provider, out byte result); // 0x004FA36C + public override string ToString(); // 0x000A9A20 + public string ToString(string format); // 0x000A9A28 + public string ToString(IFormatProvider provider); // 0x000A9A34 + public string ToString(string format, IFormatProvider provider); // 0x000A9A3C + public TypeCode GetTypeCode(); // 0x000A9A44 +} + +// Namespace: System +[Serializable] +public struct SByte : IFormattable, IConvertible, IComparable, IComparable`1, IEquatable`1 // TypeDefIndex: 19 +{ + // Fields + public const sbyte MinValue = 128; // 0x00 + public const sbyte MaxValue = 127; // 0x00 + internal sbyte m_value; // 0x08 + + // Methods + private bool System.IConvertible.ToBoolean(IFormatProvider provider); // 0x0008BE58 + private byte System.IConvertible.ToByte(IFormatProvider provider); // 0x0008BE60 + private char System.IConvertible.ToChar(IFormatProvider provider); // 0x0008BE68 + private DateTime System.IConvertible.ToDateTime(IFormatProvider provider); // 0x0008BE70 + private Decimal System.IConvertible.ToDecimal(IFormatProvider provider); // 0x0008BE84 + private double System.IConvertible.ToDouble(IFormatProvider provider); // 0x0008BE98 + private short System.IConvertible.ToInt16(IFormatProvider provider); // 0x0008BEA0 + private int System.IConvertible.ToInt32(IFormatProvider provider); // 0x0008BEA8 + private long System.IConvertible.ToInt64(IFormatProvider provider); // 0x0008BEB0 + private sbyte System.IConvertible.ToSByte(IFormatProvider provider); // 0x0008BEB8 + private float System.IConvertible.ToSingle(IFormatProvider provider); // 0x0008BEC0 + private object System.IConvertible.ToType(Type targetType, IFormatProvider provider); // 0x0008BEC8 + private ushort System.IConvertible.ToUInt16(IFormatProvider provider); // 0x0008BED0 + private uint System.IConvertible.ToUInt32(IFormatProvider provider); // 0x0008BED8 + private ulong System.IConvertible.ToUInt64(IFormatProvider provider); // 0x0008BEE0 + public int CompareTo(object obj); // 0x0008BEE8 + public override bool Equals(object obj); // 0x0008BEF0 + public override int GetHashCode(); // 0x0008BEF8 + public int CompareTo(sbyte value); // 0x0008BF00 + public bool Equals(sbyte obj); // 0x0008BF24 + internal static bool Parse(string s, bool tryParse, out sbyte result, out Exception exc); // 0x0020FF2C + public static sbyte Parse(string s, IFormatProvider provider); // 0x002102F0 + public static sbyte Parse(string s, NumberStyles style); // 0x002103D4 + public static sbyte Parse(string s, NumberStyles style, IFormatProvider provider); // 0x002102FC + public static sbyte Parse(string s); // 0x002103DC + public static bool TryParse(string s, out sbyte result); // 0x0021047C + public static bool TryParse(string s, NumberStyles style, IFormatProvider provider, out sbyte result); // 0x002104C0 + public override string ToString(); // 0x0008BF3C + public string ToString(IFormatProvider provider); // 0x0008BF44 + public string ToString(string format); // 0x0008BF4C + public string ToString(string format, IFormatProvider provider); // 0x0008BF58 + public TypeCode GetTypeCode(); // 0x0008BF60 +} + +// Namespace: System +[Serializable] +public struct Int16 : IFormattable, IConvertible, IComparable, IComparable`1, IEquatable`1 // TypeDefIndex: 20 +{ + // Fields + public const short MaxValue = 32767; // 0x00 + public const short MinValue = -32768; // 0x00 + internal short m_value; // 0x08 + + // Methods + private bool System.IConvertible.ToBoolean(IFormatProvider provider); // 0x0008B4B8 + private byte System.IConvertible.ToByte(IFormatProvider provider); // 0x0008B4C0 + private char System.IConvertible.ToChar(IFormatProvider provider); // 0x0008B4C8 + private DateTime System.IConvertible.ToDateTime(IFormatProvider provider); // 0x0008B4D0 + private Decimal System.IConvertible.ToDecimal(IFormatProvider provider); // 0x0008B4E4 + private double System.IConvertible.ToDouble(IFormatProvider provider); // 0x0008B4F8 + private short System.IConvertible.ToInt16(IFormatProvider provider); // 0x0008B500 + private int System.IConvertible.ToInt32(IFormatProvider provider); // 0x0008B508 + private long System.IConvertible.ToInt64(IFormatProvider provider); // 0x0008B510 + private sbyte System.IConvertible.ToSByte(IFormatProvider provider); // 0x0008B518 + private float System.IConvertible.ToSingle(IFormatProvider provider); // 0x0008B520 + private object System.IConvertible.ToType(Type targetType, IFormatProvider provider); // 0x0008B528 + private ushort System.IConvertible.ToUInt16(IFormatProvider provider); // 0x0008B530 + private uint System.IConvertible.ToUInt32(IFormatProvider provider); // 0x0008B538 + private ulong System.IConvertible.ToUInt64(IFormatProvider provider); // 0x0008B540 + public int CompareTo(object value); // 0x0008B548 + public override bool Equals(object obj); // 0x0008B550 + public override int GetHashCode(); // 0x0008B558 + public int CompareTo(short value); // 0x0008B560 + public bool Equals(short obj); // 0x0008B584 + internal static bool Parse(string s, bool tryParse, out short result, out Exception exc); // 0x001D784C + public static short Parse(string s, IFormatProvider provider); // 0x001D7CE8 + public static short Parse(string s, NumberStyles style); // 0x001D7DBC + public static short Parse(string s, NumberStyles style, IFormatProvider provider); // 0x001D7CF4 + public static short Parse(string s); // 0x001D7E7C + public static bool TryParse(string s, out short result); // 0x001D7F1C + public static bool TryParse(string s, NumberStyles style, IFormatProvider provider, out short result); // 0x001D7F60 + public override string ToString(); // 0x0008B59C + public string ToString(IFormatProvider provider); // 0x0008B5A4 + public string ToString(string format); // 0x0008B5AC + public string ToString(string format, IFormatProvider provider); // 0x0008B5B8 + public TypeCode GetTypeCode(); // 0x0008B5C0 +} + +// Namespace: System +[Serializable] +public struct UInt16 : IFormattable, IConvertible, IComparable, IComparable`1, IEquatable`1 // TypeDefIndex: 21 +{ + // Fields + public const ushort MaxValue = 65535; // 0x00 + public const ushort MinValue = 0; // 0x00 + internal ushort m_value; // 0x08 + + // Methods + private bool System.IConvertible.ToBoolean(IFormatProvider provider); // 0x000A7C28 + private byte System.IConvertible.ToByte(IFormatProvider provider); // 0x000A7C30 + private char System.IConvertible.ToChar(IFormatProvider provider); // 0x000A7C38 + private DateTime System.IConvertible.ToDateTime(IFormatProvider provider); // 0x000A7C40 + private Decimal System.IConvertible.ToDecimal(IFormatProvider provider); // 0x000A7C54 + private double System.IConvertible.ToDouble(IFormatProvider provider); // 0x000A7C68 + private short System.IConvertible.ToInt16(IFormatProvider provider); // 0x000A7C70 + private int System.IConvertible.ToInt32(IFormatProvider provider); // 0x000A7C78 + private long System.IConvertible.ToInt64(IFormatProvider provider); // 0x000A7C80 + private sbyte System.IConvertible.ToSByte(IFormatProvider provider); // 0x000A7C88 + private float System.IConvertible.ToSingle(IFormatProvider provider); // 0x000A7C90 + private object System.IConvertible.ToType(Type targetType, IFormatProvider provider); // 0x000A7C98 + private ushort System.IConvertible.ToUInt16(IFormatProvider provider); // 0x000A7CA0 + private uint System.IConvertible.ToUInt32(IFormatProvider provider); // 0x000A7CA8 + private ulong System.IConvertible.ToUInt64(IFormatProvider provider); // 0x000A7CB0 + public int CompareTo(object value); // 0x000A7CB8 + public override bool Equals(object obj); // 0x000A7CC0 + public override int GetHashCode(); // 0x000A7CC8 + public int CompareTo(ushort value); // 0x000A7CD0 + public bool Equals(ushort obj); // 0x000A7CDC + public static ushort Parse(string s, IFormatProvider provider); // 0x00427CC8 + public static ushort Parse(string s, NumberStyles style); // 0x00427DA4 + public static ushort Parse(string s, NumberStyles style, IFormatProvider provider); // 0x00427CD4 + public static ushort Parse(string s); // 0x00427E64 + public static bool TryParse(string s, out ushort result); // 0x00427E70 + public static bool TryParse(string s, NumberStyles style, IFormatProvider provider, out ushort result); // 0x00427E94 + public override string ToString(); // 0x000A7CF0 + public string ToString(IFormatProvider provider); // 0x000A7CF8 + public string ToString(string format); // 0x000A7D00 + public string ToString(string format, IFormatProvider provider); // 0x000A7D0C + public TypeCode GetTypeCode(); // 0x000A7D14 +} + +// Namespace: System.Collections +public interface IEnumerator // TypeDefIndex: 22 +{ + // Properties + object Current { get; } + + // Methods + bool MoveNext(); + void Reset(); +} + +// Namespace: System.Collections +public interface IEnumerable // TypeDefIndex: 23 +{ + // Methods + IEnumerator GetEnumerator(); +} + +// Namespace: System +public interface IDisposable // TypeDefIndex: 24 +{ + // Methods + void Dispose(); +} + +// Namespace: System.Collections.Generic +public interface IEnumerator`1 : IEnumerator, IDisposable // TypeDefIndex: 25 +{ + // Properties + T Current { get; } + +} + +// Namespace: System +[Serializable] +public struct Char : IConvertible, IComparable, IComparable`1, IEquatable`1 // TypeDefIndex: 26 +{ + // Fields + public const char MaxValue = '\xffff'; // 0x00 + public const char MinValue = '\x0000'; // 0x00 + internal char m_value; // 0x08 + private static readonly void * category_data; // 0x00 + private static readonly void * numeric_data; // 0x04 + private static readonly void * numeric_data_values; // 0x08 + private static readonly void * to_lower_data_low; // 0x0C + private static readonly void * to_lower_data_high; // 0x10 + private static readonly void * to_upper_data_low; // 0x14 + private static readonly void * to_upper_data_high; // 0x18 + + // Methods + private static void .cctor(); // 0x004FA68C + private object System.IConvertible.ToType(Type targetType, IFormatProvider provider); // 0x000A9A4C + private bool System.IConvertible.ToBoolean(IFormatProvider provider); // 0x000A9A54 + private byte System.IConvertible.ToByte(IFormatProvider provider); // 0x000A9A64 + private char System.IConvertible.ToChar(IFormatProvider provider); // 0x000A9A6C + private DateTime System.IConvertible.ToDateTime(IFormatProvider provider); // 0x000A9A74 + private Decimal System.IConvertible.ToDecimal(IFormatProvider provider); // 0x000A9A84 + private double System.IConvertible.ToDouble(IFormatProvider provider); // 0x000A9A94 + private short System.IConvertible.ToInt16(IFormatProvider provider); // 0x000A9AA4 + private int System.IConvertible.ToInt32(IFormatProvider provider); // 0x000A9AAC + private long System.IConvertible.ToInt64(IFormatProvider provider); // 0x000A9AB4 + private sbyte System.IConvertible.ToSByte(IFormatProvider provider); // 0x000A9ABC + private float System.IConvertible.ToSingle(IFormatProvider provider); // 0x000A9AC4 + private ushort System.IConvertible.ToUInt16(IFormatProvider provider); // 0x000A9AD4 + private uint System.IConvertible.ToUInt32(IFormatProvider provider); // 0x000A9ADC + private ulong System.IConvertible.ToUInt64(IFormatProvider provider); // 0x000A9AE4 + private static void GetDataTablePointers(out void * category_data, out void * numeric_data, out void * numeric_data_values, out void * to_lower_data_low, out void * to_lower_data_high, out void * to_upper_data_low, out void * to_upper_data_high); // 0x004FA718 + public int CompareTo(object value); // 0x000A9AEC + public override bool Equals(object obj); // 0x000A9AF4 + public int CompareTo(char value); // 0x000A9AFC + public static string ConvertFromUtf32(int utf32); // 0x004FB0E8 + public static int ConvertToUtf32(char highSurrogate, char lowSurrogate); // 0x004FB2B8 + public static int ConvertToUtf32(string s, int index); // 0x004FB3C4 + public bool Equals(char obj); // 0x000A9B14 + public static bool IsSurrogatePair(char highSurrogate, char lowSurrogate); // 0x004FB860 + public static bool IsSurrogatePair(string s, int index); // 0x004FB87C + public override int GetHashCode(); // 0x000A9B28 + public static double GetNumericValue(char c); // 0x004FB9A0 + public static double GetNumericValue(string s, int index); // 0x004FBA7C + public static UnicodeCategory GetUnicodeCategory(char c); // 0x004FBB28 + public static UnicodeCategory GetUnicodeCategory(string s, int index); // 0x004FBBBC + public static bool IsControl(char c); // 0x004FBC68 + public static bool IsControl(string s, int index); // 0x004FBD08 + public static bool IsDigit(char c); // 0x004FBDB4 + public static bool IsDigit(string s, int index); // 0x004FBE54 + public static bool IsHighSurrogate(char c); // 0x004FB824 + public static bool IsHighSurrogate(string s, int index); // 0x004FBF00 + public static bool IsLetter(char c); // 0x004FBFBC + public static bool IsLetter(string s, int index); // 0x004FC05C + public static bool IsLetterOrDigit(char c); // 0x004FC108 + public static bool IsLetterOrDigit(string s, int index); // 0x004FC1B8 + public static bool IsLower(char c); // 0x004FC264 + public static bool IsLower(string s, int index); // 0x004FC300 + public static bool IsLowSurrogate(char c); // 0x004FB838 + public static bool IsLowSurrogate(string s, int index); // 0x004FC3AC + public static bool IsNumber(char c); // 0x004FC468 + public static bool IsNumber(string s, int index); // 0x004FC510 + public static bool IsPunctuation(char c); // 0x004FC5BC + public static bool IsPunctuation(string s, int index); // 0x004FC664 + public static bool IsSeparator(char c); // 0x004FC710 + public static bool IsSeparator(string s, int index); // 0x004FC7B8 + public static bool IsSurrogate(char c); // 0x004FB784 + public static bool IsSurrogate(string s, int index); // 0x004FC864 + public static bool IsSymbol(char c); // 0x004FC910 + public static bool IsSymbol(string s, int index); // 0x004FC9B8 + public static bool IsUpper(char c); // 0x004FCA64 + public static bool IsUpper(string s, int index); // 0x004FCB04 + public static bool IsWhiteSpace(char c); // 0x004FCBB0 + public static bool IsWhiteSpace(string s, int index); // 0x004FCC94 + private static void CheckParameter(string s, int index); // 0x004FB670 + public static bool TryParse(string s, out char result); // 0x004FCD40 + public static char Parse(string s); // 0x004FCD98 + public static char ToLower(char c); // 0x004FCEB8 + public static char ToLowerInvariant(char c); // 0x004FCF8C + public static char ToLower(char c, CultureInfo culture); // 0x004FD094 + public static char ToUpper(char c); // 0x004FD1D8 + public static char ToUpperInvariant(char c); // 0x004FD2AC + public static char ToUpper(char c, CultureInfo culture); // 0x004FD3B4 + public override string ToString(); // 0x000A9B30 + public static string ToString(char c); // 0x004FD50C + public string ToString(IFormatProvider provider); // 0x000A9B44 + public TypeCode GetTypeCode(); // 0x000A9B58 +} + +// Namespace: System +[Serializable] +public sealed class String : IConvertible, IComparable, IEnumerable, ICloneable, IComparable`1, IEquatable`1, IEnumerable`1 // TypeDefIndex: 27 +{ + // Fields + [NonSerialized] private int length; // 0x08 + [NonSerialized] private char start_char; // 0x0C + public static readonly string Empty; // 0x00 + private static readonly char[] WhiteChars; // 0x04 + + // Properties + public char Chars { get; } // 0x00234510 + public int Length { get; } // 0x00253A14 + + // Methods + public void .ctor(void * value); // 0x00248AB0 + public void .ctor(void * value, int startIndex, int length); // 0x00248AB4 + public void .ctor(void * value); // 0x00248AB8 + public void .ctor(void * value, int startIndex, int length); // 0x00248ABC + public void .ctor(void * value, int startIndex, int length, Encoding enc); // 0x00248AC0 + public void .ctor(char[] value, int startIndex, int length); // 0x00248AC4 + public void .ctor(char[] value); // 0x00248AC8 + public void .ctor(char c, int count); // 0x00248ACC + private static void .cctor(); // 0x00248AD0 + private bool System.IConvertible.ToBoolean(IFormatProvider provider); // 0x00248B84 + private byte System.IConvertible.ToByte(IFormatProvider provider); // 0x00248C10 + private char System.IConvertible.ToChar(IFormatProvider provider); // 0x00248C9C + private DateTime System.IConvertible.ToDateTime(IFormatProvider provider); // 0x00248D28 + private Decimal System.IConvertible.ToDecimal(IFormatProvider provider); // 0x00248DBC + private double System.IConvertible.ToDouble(IFormatProvider provider); // 0x00248E50 + private short System.IConvertible.ToInt16(IFormatProvider provider); // 0x00248EDC + private int System.IConvertible.ToInt32(IFormatProvider provider); // 0x00248F68 + private long System.IConvertible.ToInt64(IFormatProvider provider); // 0x00248FF4 + private sbyte System.IConvertible.ToSByte(IFormatProvider provider); // 0x00249080 + private float System.IConvertible.ToSingle(IFormatProvider provider); // 0x0024910C + private object System.IConvertible.ToType(Type targetType, IFormatProvider provider); // 0x00249198 + private ushort System.IConvertible.ToUInt16(IFormatProvider provider); // 0x0024929C + private uint System.IConvertible.ToUInt32(IFormatProvider provider); // 0x00249328 + private ulong System.IConvertible.ToUInt64(IFormatProvider provider); // 0x002493B4 + private IEnumerator`1 System.Collections.Generic.IEnumerable.GetEnumerator(); // 0x00249440 + private IEnumerator System.Collections.IEnumerable.GetEnumerator(); // 0x002494B4 + public static bool Equals(string a, string b); // 0x00249528 + public override bool Equals(object obj); // 0x00249644 + public bool Equals(string value); // 0x002496F8 + public object Clone(); // 0x00249780 + public TypeCode GetTypeCode(); // 0x00249784 + public void CopyTo(int sourceIndex, char[] destination, int destinationIndex, int count); // 0x0024978C + public char[] ToCharArray(); // 0x00249B84 + public char[] ToCharArray(int startIndex, int length); // 0x00249B90 + public string[] Split(char[] separator); // 0x00249D98 + public string[] Split(char[] separator, int count); // 0x00249DA0 + public string[] Split(char[] separator, int count, StringSplitOptions options); // 0x00249F70 + public string[] Split(string[] separator, int count, StringSplitOptions options); // 0x0024A364 + public string[] Split(char[] separator, StringSplitOptions options); // 0x0024A998 + public string[] Split(string[] separator, StringSplitOptions options); // 0x0024A9B8 + public string Substring(int startIndex); // 0x0023443C + public string Substring(int startIndex, int length); // 0x002345BC + internal string SubstringUnchecked(int startIndex, int length); // 0x0024A9D8 + public string Trim(); // 0x0024AAD4 + public string Trim(char[] trimChars); // 0x0024AD0C + public string TrimStart(char[] trimChars); // 0x0024AF38 + public string TrimEnd(char[] trimChars); // 0x0024B044 + private int FindNotWhiteSpace(int pos, int target, int change); // 0x0024AC14 + private int FindNotInTable(int pos, int target, int change, char[] table); // 0x0024AE78 + public static int Compare(string strA, string strB); // 0x0024B158 + public static int Compare(string strA, string strB, bool ignoreCase); // 0x0024B244 + public static int Compare(string strA, string strB, bool ignoreCase, CultureInfo culture); // 0x00233BD0 + public static int Compare(string strA, int indexA, string strB, int indexB, int length); // 0x0024B334 + public static int Compare(string strA, int indexA, string strB, int indexB, int length, bool ignoreCase); // 0x0023701C + public static int Compare(string strA, int indexA, string strB, int indexB, int length, bool ignoreCase, CultureInfo culture); // 0x00234FF4 + public static int Compare(string strA, string strB, StringComparison comparisonType); // 0x0024B41C + public static int Compare(string strA, int indexA, string strB, int indexB, int length, StringComparison comparisonType); // 0x0024BA64 + public static bool Equals(string a, string b, StringComparison comparisonType); // 0x0024C060 + public bool Equals(string value, StringComparison comparisonType); // 0x0024C100 + public static int Compare(string strA, string strB, CultureInfo culture, CompareOptions options); // 0x0024C1A0 + public static int Compare(string strA, int indexA, string strB, int indexB, int length, CultureInfo culture, CompareOptions options); // 0x0024C2AC + public int CompareTo(object value); // 0x0024C414 + public int CompareTo(string strB); // 0x00239360 + public static int CompareOrdinal(string strA, string strB); // 0x0024C524 + public static int CompareOrdinal(string strA, int indexA, string strB, int indexB, int length); // 0x0024BE00 + internal static int CompareOrdinalCaseInsensitive(string strA, int indexA, string strB, int indexB, int length); // 0x0024BF30 + internal static int CompareOrdinalUnchecked(string strA, int indexA, int lenA, string strB, int indexB, int lenB); // 0x0024B7B4 + internal static int CompareOrdinalCaseInsensitiveUnchecked(string strA, int indexA, int lenA, string strB, int indexB, int lenB); // 0x0024B8C0 + public bool EndsWith(string value); // 0x0024C5CC + public bool EndsWith(string value, bool ignoreCase, CultureInfo culture); // 0x0024C718 + public int IndexOfAny(char[] anyOf); // 0x0023FEAC + public int IndexOfAny(char[] anyOf, int startIndex); // 0x0024C98C + public int IndexOfAny(char[] anyOf, int startIndex, int count); // 0x0024CA88 + private int IndexOfAnyUnchecked(char[] anyOf, int startIndex, int count); // 0x0024C878 + public int IndexOf(string value, StringComparison comparisonType); // 0x0024CD90 + public int IndexOf(string value, int startIndex, StringComparison comparisonType); // 0x0024D0E0 + public int IndexOf(string value, int startIndex, int count, StringComparison comparisonType); // 0x0024CDB4 + internal int IndexOfOrdinal(string value, int startIndex, int count, CompareOptions options); // 0x0024D104 + internal int IndexOfOrdinalUnchecked(string value, int startIndex, int count); // 0x0024D2A4 + internal int IndexOfOrdinalIgnoreCaseUnchecked(string value, int startIndex, int count); // 0x0024D3C0 + public int LastIndexOf(string value, StringComparison comparisonType); // 0x0024D550 + public int LastIndexOf(string value, int startIndex, StringComparison comparisonType); // 0x0024D954 + public int LastIndexOf(string value, int startIndex, int count, StringComparison comparisonType); // 0x0024D628 + internal int LastIndexOfOrdinal(string value, int startIndex, int count, CompareOptions options); // 0x0024D974 + internal int LastIndexOfOrdinalUnchecked(string value, int startIndex, int count); // 0x0024DB1C + internal int LastIndexOfOrdinalIgnoreCaseUnchecked(string value, int startIndex, int count); // 0x0024DC5C + public int IndexOf(char value); // 0x00235724 + public int IndexOf(char value, int startIndex); // 0x0024DF9C + public int IndexOf(char value, int startIndex, int count); // 0x0024E0F4 + internal int IndexOfUnchecked(char value, int startIndex, int count); // 0x0024CBEC + internal int IndexOfOrdinalIgnoreCase(char value, int startIndex, int count); // 0x0024E2BC + public int IndexOf(string value); // 0x002338E8 + public int IndexOf(string value, int startIndex); // 0x0024A978 + public int IndexOf(string value, int startIndex, int count); // 0x0024E3DC + public int LastIndexOfAny(char[] anyOf); // 0x0024E638 + public int LastIndexOfAny(char[] anyOf, int startIndex); // 0x0024E7C8 + public int LastIndexOfAny(char[] anyOf, int startIndex, int count); // 0x0024E8FC + private int LastIndexOfAnyUnchecked(char[] anyOf, int startIndex, int count); // 0x0024E6F0 + public int LastIndexOf(char value); // 0x0024EAE8 + public int LastIndexOf(char value, int startIndex); // 0x0024EB14 + public int LastIndexOf(char value, int startIndex, int count); // 0x0024EB30 + internal int LastIndexOfUnchecked(char value, int startIndex, int count); // 0x0024DDF0 + internal int LastIndexOfOrdinalIgnoreCase(char value, int startIndex, int count); // 0x0024ECF4 + public int LastIndexOf(string value); // 0x00234FC8 + public int LastIndexOf(string value, int startIndex); // 0x0024F0EC + public int LastIndexOf(string value, int startIndex, int count); // 0x0024EE14 + public bool Contains(string value); // 0x0024F114 + public static bool IsNullOrEmpty(string value); // 0x0024F134 + public string Normalize(); // 0x0024F154 + public string Normalize(NormalizationForm normalizationForm); // 0x0024F1DC + public bool IsNormalized(); // 0x0024F2C0 + public bool IsNormalized(NormalizationForm normalizationForm); // 0x0024F348 + public string Remove(int startIndex); // 0x0024F42C + public string PadLeft(int totalWidth); // 0x0024F75C + public string PadLeft(int totalWidth, char paddingChar); // 0x0024F764 + public string PadRight(int totalWidth); // 0x0024F908 + public string PadRight(int totalWidth, char paddingChar); // 0x0024F910 + public bool StartsWith(string value); // 0x002342F0 + public bool StartsWith(string value, StringComparison comparisonType); // 0x0024FAB0 + public bool EndsWith(string value, StringComparison comparisonType); // 0x0024FED0 + public bool StartsWith(string value, bool ignoreCase, CultureInfo culture); // 0x002502F0 + public string Replace(char oldChar, char newChar); // 0x002503F0 + public string Replace(string oldValue, string newValue); // 0x00250558 + private string ReplaceUnchecked(string oldValue, string newValue); // 0x002506CC + private string ReplaceFallback(string oldValue, string newValue, int testedCount); // 0x002509EC + public string Remove(int startIndex, int count); // 0x0024F55C + public string ToLower(); // 0x00250BA0 + public string ToLower(CultureInfo culture); // 0x00250C2C + public string ToLowerInvariant(); // 0x00250D44 + public string ToUpper(); // 0x002381DC + public string ToUpper(CultureInfo culture); // 0x00250E8C + public string ToUpperInvariant(); // 0x00238D48 + public override string ToString(); // 0x00250FA4 + public string ToString(IFormatProvider provider); // 0x00250FA8 + public static string Format(string format, object arg0); // 0x00235938 + public static string Format(string format, object arg0, object arg1); // 0x002473B4 + public static string Format(string format, object arg0, object arg1, object arg2); // 0x00251068 + public static string Format(string format, object[] args); // 0x00251218 + public static string Format(IFormatProvider provider, string format, object[] args); // 0x00250FAC + internal static StringBuilder FormatHelper(StringBuilder result, IFormatProvider provider, string format, object[] args); // 0x002512A4 + public static string Copy(string str); // 0x00252074 + public static string Concat(object arg0); // 0x002521C4 + public static string Concat(object arg0, object arg1); // 0x00236920 + public static string Concat(object arg0, object arg1, object arg2); // 0x0024A19C + public static string Concat(object arg0, object arg1, object arg2, object arg3); // 0x00252274 + public static string Concat(string str0, string str1); // 0x00233A6C + public static string Concat(string str0, string str1, string str2); // 0x00238420 + public static string Concat(string str0, string str1, string str2, string str3); // 0x00252558 + public static string Concat(object[] args); // 0x002529D8 + public static string Concat(string[] values); // 0x00252E18 + private static string ConcatInternal(string[] values, int length); // 0x00252C78 + public string Insert(int startIndex, string value); // 0x00252F54 + public static string Intern(string str); // 0x00253134 + public static string IsInterned(string str); // 0x00253218 + public static string Join(string separator, string[] value); // 0x002532FC + public static string Join(string separator, string[] value, int startIndex, int count); // 0x00253768 + private static string JoinUnchecked(string separator, string[] value, int startIndex, int count); // 0x00253430 + public CharEnumerator GetEnumerator(); // 0x00253A1C + private static void ParseFormatSpecifier(string str, int ptr, out int n, out int width, out bool left_align, out string format); // 0x00251B10 + private static int ParseDecimal(string str, int ptr); // 0x00253A90 + internal void InternalSetChar(int idx, char val); // 0x00253B00 + internal void InternalSetLength(int newLength); // 0x00253BBC + public override int GetHashCode(); // 0x00233DF4 + internal int GetCaseInsensitiveHashCode(); // 0x00253CA8 + private string CreateString(void * value); // 0x00253DF0 + private string CreateString(void * value, int startIndex, int length); // 0x002543A0 + private string CreateString(void * value, int startIndex, int length, Encoding enc); // 0x00253ED4 + private string CreateString(void * value); // 0x0025452C + private string CreateString(void * value, int startIndex, int length); // 0x0025467C + private string CreateString(char[] val, int startIndex, int length); // 0x0025486C + private string CreateString(char[] val); // 0x00254B10 + private string CreateString(char c, int count); // 0x00254C80 + internal static void memset(void * dest, int val, int len); // 0x00254DCC + private static void memcpy4(void * dest, void * src, int size); // 0x00254E8C + private static void memcpy2(void * dest, void * src, int size); // 0x00254F18 + private static void memcpy1(void * dest, void * src, int size); // 0x00254F90 + internal static void memcpy(void * dest, void * src, int size); // 0x002543C0 + internal static void CharCopy(void * dest, void * src, int count); // 0x00249A80 + internal static void CharCopyReverse(void * dest, void * src, int count); // 0x00255038 + internal static void CharCopy(string target, int targetIndex, string source, int sourceIndex, int count); // 0x00255068 + internal static void CharCopy(string target, int targetIndex, char[] source, int sourceIndex, int count); // 0x00255128 + internal static void CharCopyReverse(string target, int targetIndex, string source, int sourceIndex, int count); // 0x002551F0 + private string[] InternalSplit(char[] separator, int count, int options); // 0x00249F6C + internal static string InternalAllocateStr(int length); // 0x0024AAD0 + private static string InternalIntern(string str); // 0x00253214 + private static string InternalIsInterned(string str); // 0x002532F8 + public static bool op_Equality(string a, string b); // 0x00234268 + public static bool op_Inequality(string a, string b); // 0x00230EFC +} + +// Namespace: System +public interface ICloneable // TypeDefIndex: 28 +{ + // Methods + object Clone(); +} + +// Namespace: System.Collections.Generic +public interface IEnumerable`1 : IEnumerable // TypeDefIndex: 29 +{ + // Methods + IEnumerator`1 GetEnumerator(); +} + +// Namespace: System +[Serializable] +public struct Single : IFormattable, IConvertible, IComparable, IComparable`1, IEquatable`1 // TypeDefIndex: 30 +{ + // Fields + public const float Epsilon = 1E-45; // 0x00 + public const float MaxValue = 3.4028235E+38; // 0x00 + public const float MinValue = -3.4028235E+38; // 0x00 + public const float NaN = NaN; // 0x00 + public const float PositiveInfinity = ∞; // 0x00 + public const float NegativeInfinity = -∞; // 0x00 + private const double MaxValueEpsilon = 3.6147112457961776E+29; // 0x00 + internal float m_value; // 0x08 + + // Methods + private bool System.IConvertible.ToBoolean(IFormatProvider provider); // 0x0008C564 + private byte System.IConvertible.ToByte(IFormatProvider provider); // 0x0008C56C + private char System.IConvertible.ToChar(IFormatProvider provider); // 0x0008C574 + private DateTime System.IConvertible.ToDateTime(IFormatProvider provider); // 0x0008C57C + private Decimal System.IConvertible.ToDecimal(IFormatProvider provider); // 0x0008C590 + private double System.IConvertible.ToDouble(IFormatProvider provider); // 0x0008C5A4 + private short System.IConvertible.ToInt16(IFormatProvider provider); // 0x0008C5AC + private int System.IConvertible.ToInt32(IFormatProvider provider); // 0x0008C5B4 + private long System.IConvertible.ToInt64(IFormatProvider provider); // 0x0008C5BC + private sbyte System.IConvertible.ToSByte(IFormatProvider provider); // 0x0008C5C4 + private float System.IConvertible.ToSingle(IFormatProvider provider); // 0x0008C5CC + private object System.IConvertible.ToType(Type targetType, IFormatProvider provider); // 0x0008C5D4 + private ushort System.IConvertible.ToUInt16(IFormatProvider provider); // 0x0008C5DC + private uint System.IConvertible.ToUInt32(IFormatProvider provider); // 0x0008C5E4 + private ulong System.IConvertible.ToUInt64(IFormatProvider provider); // 0x0008C5EC + public int CompareTo(object value); // 0x0008C5F4 + public override bool Equals(object obj); // 0x0008C5FC + public int CompareTo(float value); // 0x0008C604 + public bool Equals(float obj); // 0x0008C60C + public override int GetHashCode(); // 0x0008C644 + public static bool IsInfinity(float f); // 0x00248330 + public static bool IsNaN(float f); // 0x002480F8 + public static bool IsNegativeInfinity(float f); // 0x002480B0 + public static bool IsPositiveInfinity(float f); // 0x00248068 + public static float Parse(string s); // 0x00248370 + public static float Parse(string s, IFormatProvider provider); // 0x00248468 + public static float Parse(string s, NumberStyles style); // 0x00248560 + public static float Parse(string s, NumberStyles style, IFormatProvider provider); // 0x00248658 + public static bool TryParse(string s, NumberStyles style, IFormatProvider provider, out float result); // 0x00248758 + public static bool TryParse(string s, out float result); // 0x0024880C + public override string ToString(); // 0x0008C64C + public string ToString(IFormatProvider provider); // 0x0008C654 + public string ToString(string format); // 0x0008C65C + public string ToString(string format, IFormatProvider provider); // 0x0008C668 + public TypeCode GetTypeCode(); // 0x0008C670 +} + +// Namespace: System +[Serializable] +public struct Double : IFormattable, IConvertible, IComparable, IComparable`1, IEquatable`1 // TypeDefIndex: 31 +{ + // Fields + public const double Epsilon = 5E-324; // 0x00 + public const double MaxValue = 1.7976931348623157E+308; // 0x00 + public const double MinValue = -1.7976931348623157E+308; // 0x00 + public const double NaN = NaN; // 0x00 + public const double NegativeInfinity = -∞; // 0x00 + public const double PositiveInfinity = ∞; // 0x00 + private const int State_AllowSign = 1; // 0x00 + private const int State_Digits = 2; // 0x00 + private const int State_Decimal = 3; // 0x00 + private const int State_ExponentSign = 4; // 0x00 + private const int State_Exponent = 5; // 0x00 + private const int State_ConsumeWhiteSpace = 6; // 0x00 + private const int State_Exit = 7; // 0x00 + internal double m_value; // 0x08 + + // Methods + private object System.IConvertible.ToType(Type targetType, IFormatProvider provider); // 0x0008D1A8 + private bool System.IConvertible.ToBoolean(IFormatProvider provider); // 0x0008D1B0 + private byte System.IConvertible.ToByte(IFormatProvider provider); // 0x0008D1B8 + private char System.IConvertible.ToChar(IFormatProvider provider); // 0x0008D1C0 + private DateTime System.IConvertible.ToDateTime(IFormatProvider provider); // 0x0008D1D0 + private Decimal System.IConvertible.ToDecimal(IFormatProvider provider); // 0x0008D1E0 + private double System.IConvertible.ToDouble(IFormatProvider provider); // 0x0008D1F4 + private short System.IConvertible.ToInt16(IFormatProvider provider); // 0x0008D1FC + private int System.IConvertible.ToInt32(IFormatProvider provider); // 0x0008D204 + private long System.IConvertible.ToInt64(IFormatProvider provider); // 0x0008D20C + private sbyte System.IConvertible.ToSByte(IFormatProvider provider); // 0x0008D214 + private float System.IConvertible.ToSingle(IFormatProvider provider); // 0x0008D21C + private ushort System.IConvertible.ToUInt16(IFormatProvider provider); // 0x0008D224 + private uint System.IConvertible.ToUInt32(IFormatProvider provider); // 0x0008D22C + private ulong System.IConvertible.ToUInt64(IFormatProvider provider); // 0x0008D234 + public int CompareTo(object value); // 0x0008D23C + public override bool Equals(object obj); // 0x0008D244 + public int CompareTo(double value); // 0x0008D24C + public bool Equals(double obj); // 0x0008D268 + public override int GetHashCode(); // 0x0008D2A0 + public static bool IsInfinity(double d); // 0x002D6BA0 + public static bool IsNaN(double d); // 0x002D6960 + public static bool IsNegativeInfinity(double d); // 0x002D6910 + public static bool IsPositiveInfinity(double d); // 0x002D68C0 + public static double Parse(string s); // 0x002D6BE8 + public static double Parse(string s, IFormatProvider provider); // 0x002D6CB4 + public static double Parse(string s, NumberStyles style); // 0x002D6CC0 + public static double Parse(string s, NumberStyles style, IFormatProvider provider); // 0x002D6BF4 + internal static bool Parse(string s, NumberStyles style, IFormatProvider provider, bool tryParse, out double result, out Exception exc); // 0x002D6CC8 + private static bool TryParseStringConstant(string format, string s, int start, int end); // 0x002D812C + private static bool ParseImpl(void * byte_ptr, out double value); // 0x002D822C + public static bool TryParse(string s, NumberStyles style, IFormatProvider provider, out double result); // 0x002D8230 + public static bool TryParse(string s, out double result); // 0x002D827C + public override string ToString(); // 0x0008D2AC + public string ToString(IFormatProvider provider); // 0x0008D2B4 + public string ToString(string format); // 0x0008D2BC + public string ToString(string format, IFormatProvider provider); // 0x0008D2C8 + public TypeCode GetTypeCode(); // 0x0008D2D0 +} + +// Namespace: System +[Serializable] +public struct Decimal : IFormattable, IConvertible, IComparable, IComparable`1, IEquatable`1 // TypeDefIndex: 32 +{ + // Fields + public static readonly Decimal MinValue; // 0x00 + public static readonly Decimal MaxValue; // 0x10 + public static readonly Decimal MinusOne; // 0x20 + public static readonly Decimal One; // 0x30 + public static readonly Decimal Zero; // 0x40 + private const int DECIMAL_DIVIDE_BY_ZERO = 5; // 0x00 + private const uint MAX_SCALE = 28; // 0x00 + private const int iMAX_SCALE = 28; // 0x00 + private const uint SIGN_FLAG = 2147483648; // 0x00 + private const uint SCALE_MASK = 16711680; // 0x00 + private const int SCALE_SHIFT = 16; // 0x00 + private const uint RESERVED_SS32_BITS = 2130771967; // 0x00 + private static readonly Decimal MaxValueDiv10; // 0x50 + private uint flags; // 0x08 + private uint hi; // 0x0C + private uint lo; // 0x10 + private uint mid; // 0x14 + + // Methods + public void .ctor(int lo, int mid, int hi, bool isNegative, byte scale); // 0x000A95E8 + public void .ctor(int value); // 0x000A9610 + public void .ctor(uint value); // 0x000A9638 + public void .ctor(long value); // 0x000A9650 + public void .ctor(ulong value); // 0x000A9684 + public void .ctor(float value); // 0x000A9698 + public void .ctor(double value); // 0x000A96A0 + public void .ctor(int[] bits); // 0x000A96BC + private static void .cctor(); // 0x004C1B08 + private object System.IConvertible.ToType(Type targetType, IFormatProvider provider); // 0x000A96C4 + private bool System.IConvertible.ToBoolean(IFormatProvider provider); // 0x000A96CC + private byte System.IConvertible.ToByte(IFormatProvider provider); // 0x000A96D4 + private char System.IConvertible.ToChar(IFormatProvider provider); // 0x000A96DC + private DateTime System.IConvertible.ToDateTime(IFormatProvider provider); // 0x000A96EC + private Decimal System.IConvertible.ToDecimal(IFormatProvider provider); // 0x000A96FC + private double System.IConvertible.ToDouble(IFormatProvider provider); // 0x000A970C + private short System.IConvertible.ToInt16(IFormatProvider provider); // 0x000A9714 + private int System.IConvertible.ToInt32(IFormatProvider provider); // 0x000A971C + private long System.IConvertible.ToInt64(IFormatProvider provider); // 0x000A9724 + private sbyte System.IConvertible.ToSByte(IFormatProvider provider); // 0x000A972C + private float System.IConvertible.ToSingle(IFormatProvider provider); // 0x000A9734 + private ushort System.IConvertible.ToUInt16(IFormatProvider provider); // 0x000A973C + private uint System.IConvertible.ToUInt32(IFormatProvider provider); // 0x000A9744 + private ulong System.IConvertible.ToUInt64(IFormatProvider provider); // 0x000A974C + public static Decimal FromOACurrency(long cy); // 0x004C25A4 + public static int[] GetBits(Decimal d); // 0x004C2774 + public static Decimal Negate(Decimal d); // 0x004C287C + public static Decimal Add(Decimal d1, Decimal d2); // 0x004C288C + public static Decimal Subtract(Decimal d1, Decimal d2); // 0x004C29C4 + public override int GetHashCode(); // 0x000A9754 + private static ulong u64(Decimal value); // 0x004C2B84 + private static long s64(Decimal value); // 0x004C2C88 + public static bool Equals(Decimal d1, Decimal d2); // 0x004C2D88 + public override bool Equals(object value); // 0x000A9770 + private bool IsZero(); // 0x000A9778 + private bool IsNegative(); // 0x000A97AC + public static Decimal Floor(Decimal d); // 0x004C303C + public static Decimal Truncate(Decimal d); // 0x004C30E4 + public static Decimal Round(Decimal d, int decimals); // 0x004C318C + public static Decimal Round(Decimal d, int decimals, MidpointRounding mode); // 0x004C3240 + public static Decimal Round(Decimal d); // 0x004C3BE4 + public static Decimal Round(Decimal d, MidpointRounding mode); // 0x004C3C08 + public static Decimal Multiply(Decimal d1, Decimal d2); // 0x004C3C34 + public static Decimal Divide(Decimal d1, Decimal d2); // 0x004C3D68 + public static Decimal Remainder(Decimal d1, Decimal d2); // 0x004C3EE4 + public static int Compare(Decimal d1, Decimal d2); // 0x004C2E58 + public int CompareTo(object value); // 0x000A97B8 + public int CompareTo(Decimal value); // 0x000A97C0 + public bool Equals(Decimal value); // 0x000A97E4 + public static Decimal Ceiling(Decimal d); // 0x004C4624 + public static Decimal Parse(string s); // 0x004C4648 + public static Decimal Parse(string s, NumberStyles style); // 0x004C46E0 + public static Decimal Parse(string s, IFormatProvider provider); // 0x004C477C + private static void ThrowAtPos(int pos); // 0x004C4818 + private static void ThrowInvalidExp(); // 0x004C4928 + private static string stripStyles(string s, NumberStyles style, NumberFormatInfo nfi, out int decPos, out bool isNegative, out bool expFlag, out int exp, bool throwex); // 0x004C49D0 + public static Decimal Parse(string s, NumberStyles style, IFormatProvider provider); // 0x004C151C + public static bool TryParse(string s, out Decimal result); // 0x004C5F8C + public static bool TryParse(string s, NumberStyles style, IFormatProvider provider, out Decimal result); // 0x004C6048 + private static bool PerformParse(string s, NumberStyles style, IFormatProvider provider, out Decimal res, bool throwex); // 0x004C597C + public TypeCode GetTypeCode(); // 0x000A9808 + public static byte ToByte(Decimal value); // 0x004C6124 + public static double ToDouble(Decimal d); // 0x004C6484 + public static short ToInt16(Decimal value); // 0x004C652C + public static int ToInt32(Decimal d); // 0x004C67CC + public static long ToInt64(Decimal d); // 0x004C6A64 + public static long ToOACurrency(Decimal value); // 0x004C6D50 + public static sbyte ToSByte(Decimal value); // 0x004C6E18 + public static float ToSingle(Decimal d); // 0x004C70B8 + public static ushort ToUInt16(Decimal value); // 0x004C7160 + public static uint ToUInt32(Decimal d); // 0x004C73FC + public static ulong ToUInt64(Decimal d); // 0x004C76CC + public string ToString(string format, IFormatProvider provider); // 0x000A9810 + public override string ToString(); // 0x000A9818 + public string ToString(string format); // 0x000A9820 + public string ToString(IFormatProvider provider); // 0x000A982C + private static int decimal2UInt64(Decimal val, out ulong result); // 0x004C2C84 + private static int decimal2Int64(Decimal val, out long result); // 0x004C2D84 + private static int decimalIncr(Decimal d1, Decimal d2); // 0x004C29C0 + internal static int decimal2string(Decimal val, int digits, int decimals, char[] bufDigits, int bufSize, out int decPos, out int sign); // 0x004C7B08 + internal static int string2decimal(out Decimal val, string sDigits, uint decPos, int sign); // 0x004C6114 + internal static int decimalSetExponent(Decimal val, int exp); // 0x004C6118 + private static double decimal2double(Decimal val); // 0x004C7B0C + private static void decimalFloorAndTrunc(Decimal val, int floorFlag); // 0x004C2C80 + private static int decimalMult(Decimal pd1, Decimal pd2); // 0x004C3D64 + private static int decimalDiv(out Decimal pc, Decimal pa, Decimal pb); // 0x004C3EE0 + private static int decimalIntDiv(out Decimal pc, Decimal pa, Decimal pb); // 0x004C7B10 + private static int decimalCompare(Decimal d1, Decimal d2); // 0x004C433C + public static Decimal op_Addition(Decimal d1, Decimal d2); // 0x004C3A48 + public static Decimal op_Decrement(Decimal d); // 0x004C7B14 + public static Decimal op_Increment(Decimal d); // 0x004C7BD8 + public static Decimal op_Subtraction(Decimal d1, Decimal d2); // 0x004C38B0 + public static Decimal op_UnaryNegation(Decimal d); // 0x004C7C98 + public static Decimal op_UnaryPlus(Decimal d); // 0x004C7D30 + public static Decimal op_Multiply(Decimal d1, Decimal d2); // 0x004C397C + public static Decimal op_Division(Decimal d1, Decimal d2); // 0x004C26A8 + public static Decimal op_Modulus(Decimal d1, Decimal d2); // 0x004C7D3C + public static byte op_Explicit(Decimal value); // 0x004C63B4 + public static sbyte op_Explicit(Decimal value); // 0x004C6FE8 + public static char op_Explicit(Decimal value); // 0x004C7E08 + public static short op_Explicit(Decimal value); // 0x004C66FC + public static ushort op_Explicit(Decimal value); // 0x004C732C + public static int op_Explicit(Decimal value); // 0x004C6998 + public static uint op_Explicit(Decimal value); // 0x004C7604 + public static long op_Explicit(Decimal value); // 0x004C6CB0 + public static ulong op_Explicit(Decimal value); // 0x004C78D8 + public static Decimal op_Implicit(byte value); // 0x004C7ED8 + public static Decimal op_Implicit(sbyte value); // 0x004C7EE8 + public static Decimal op_Implicit(short value); // 0x004C7F14 + public static Decimal op_Implicit(ushort value); // 0x004C7F40 + public static Decimal op_Implicit(char value); // 0x004C7F50 + public static Decimal op_Implicit(int value); // 0x004C7F60 + public static Decimal op_Implicit(uint value); // 0x004C7F8C + public static Decimal op_Implicit(long value); // 0x004C2670 + public static Decimal op_Implicit(ulong value); // 0x004C7FA4 + public static Decimal op_Explicit(float value); // 0x004C7FB4 + public static Decimal op_Explicit(double value); // 0x004C3890 + public static float op_Explicit(Decimal value); // 0x004C7FCC + public static double op_Explicit(Decimal value); // 0x004C8078 + public static bool op_Inequality(Decimal d1, Decimal d2); // 0x004C8104 + public static bool op_Equality(Decimal d1, Decimal d2); // 0x004C427C + public static bool op_GreaterThan(Decimal d1, Decimal d2); // 0x004C3B14 + public static bool op_GreaterThanOrEqual(Decimal d1, Decimal d2); // 0x004C81C8 + public static bool op_LessThan(Decimal d1, Decimal d2); // 0x004C62F0 + public static bool op_LessThanOrEqual(Decimal d1, Decimal d2); // 0x004C8298 +} + +// Namespace: System +[Serializable] +public struct Boolean : IConvertible, IComparable, IComparable`1, IEquatable`1 // TypeDefIndex: 33 +{ + // Fields + public static readonly string FalseString; // 0x00 + public static readonly string TrueString; // 0x04 + internal bool m_value; // 0x08 + + // Methods + private static void .cctor(); // 0x004F816C + private object System.IConvertible.ToType(Type targetType, IFormatProvider provider); // 0x000A9848 + private bool System.IConvertible.ToBoolean(IFormatProvider provider); // 0x000A9850 + private byte System.IConvertible.ToByte(IFormatProvider provider); // 0x000A9860 + private char System.IConvertible.ToChar(IFormatProvider provider); // 0x000A9868 + private DateTime System.IConvertible.ToDateTime(IFormatProvider provider); // 0x000A9878 + private Decimal System.IConvertible.ToDecimal(IFormatProvider provider); // 0x000A9888 + private double System.IConvertible.ToDouble(IFormatProvider provider); // 0x000A989C + private short System.IConvertible.ToInt16(IFormatProvider provider); // 0x000A98A4 + private int System.IConvertible.ToInt32(IFormatProvider provider); // 0x000A98AC + private long System.IConvertible.ToInt64(IFormatProvider provider); // 0x000A98B4 + private sbyte System.IConvertible.ToSByte(IFormatProvider provider); // 0x000A98BC + private float System.IConvertible.ToSingle(IFormatProvider provider); // 0x000A98C4 + private ushort System.IConvertible.ToUInt16(IFormatProvider provider); // 0x000A98CC + private uint System.IConvertible.ToUInt32(IFormatProvider provider); // 0x000A98D4 + private ulong System.IConvertible.ToUInt64(IFormatProvider provider); // 0x000A98DC + public int CompareTo(object obj); // 0x000A98E4 + public override bool Equals(object obj); // 0x000A98EC + public int CompareTo(bool value); // 0x000A98F4 + public bool Equals(bool obj); // 0x000A9914 + public override int GetHashCode(); // 0x000A9928 + public static bool Parse(string value); // 0x004F8C7C + public static bool TryParse(string value, out bool result); // 0x004F8F38 + public override string ToString(); // 0x000A9938 + public TypeCode GetTypeCode(); // 0x000A9940 + public string ToString(IFormatProvider provider); // 0x000A9948 +} + +// Namespace: System +[Serializable] +public struct IntPtr : ISerializable // TypeDefIndex: 34 +{ + // Fields + private void * m_value; // 0x08 + public static readonly IntPtr Zero; // 0x00 + + // Properties + public static int Size { get; } // 0x001DD96C + + // Methods + public void .ctor(int value); // 0x0008B7F0 + public void .ctor(long value); // 0x0008B7F8 + public void .ctor(void * value); // 0x0008B800 + private void .ctor(SerializationInfo info, StreamingContext context); // 0x0008B808 + private void System.Runtime.Serialization.ISerializable.GetObjectData(SerializationInfo info, StreamingContext context); // 0x0008B824 + public override bool Equals(object obj); // 0x0008B840 + public override int GetHashCode(); // 0x0008B848 + public int ToInt32(); // 0x0008B850 + public long ToInt64(); // 0x0008B858 + public void * ToPointer(); // 0x0008B864 + public override string ToString(); // 0x0008B86C + public string ToString(string format); // 0x0008B898 + public static bool op_Equality(IntPtr value1, IntPtr value2); // 0x001DDA74 + public static bool op_Inequality(IntPtr value1, IntPtr value2); // 0x001DDA88 + public static IntPtr op_Explicit(int value); // 0x001DDA9C + public static IntPtr op_Explicit(long value); // 0x001DDAA0 + public static IntPtr op_Explicit(void * value); // 0x001DDAA4 + public static int op_Explicit(IntPtr value); // 0x001DDAA8 + public static long op_Explicit(IntPtr value); // 0x001DDAAC + public static void * op_Explicit(IntPtr value); // 0x001D5CE4 +} + +// Namespace: System.Runtime.Serialization +public interface ISerializable // TypeDefIndex: 35 +{ + // Methods + void GetObjectData(SerializationInfo info, StreamingContext context); +} + +// Namespace: System +[Serializable] +public struct UIntPtr : ISerializable // TypeDefIndex: 36 +{ + // Fields + public static readonly UIntPtr Zero; // 0x00 + private void * _pointer; // 0x08 + + // Properties + public static int Size { get; } // 0x0055A81C + + // Methods + public void .ctor(ulong value); // 0x000C7AF8 + public void .ctor(uint value); // 0x000C7B14 + public void .ctor(void * value); // 0x000C7B1C + private static void .cctor(); // 0x0055A834 + private void System.Runtime.Serialization.ISerializable.GetObjectData(SerializationInfo info, StreamingContext context); // 0x000C7B24 + public override bool Equals(object obj); // 0x000C7B40 + public override int GetHashCode(); // 0x000C7B48 + public uint ToUInt32(); // 0x000C7B50 + public ulong ToUInt64(); // 0x000C7B58 + public void * ToPointer(); // 0x000C7B64 + public override string ToString(); // 0x000C7B6C + public static bool op_Equality(UIntPtr value1, UIntPtr value2); // 0x0055AA40 + public static bool op_Inequality(UIntPtr value1, UIntPtr value2); // 0x0055AA54 + public static ulong op_Explicit(UIntPtr value); // 0x0055AA68 + public static uint op_Explicit(UIntPtr value); // 0x0055AA70 + public static UIntPtr op_Explicit(ulong value); // 0x0055AA74 + public static UIntPtr op_Explicit(void * value); // 0x0055AAA4 + public static void * op_Explicit(UIntPtr value); // 0x0055AAA8 + public static UIntPtr op_Explicit(uint value); // 0x0055AAAC +} + +// Namespace: System +[Serializable] +public abstract class MulticastDelegate : Delegate // TypeDefIndex: 37 +{ + // Fields + private MulticastDelegate prev; // 0x2C + private MulticastDelegate kpm_next; // 0x30 + + // Methods + protected void .ctor(object target, string method); // 0x001E8C14 + protected void .ctor(Type target, string method); // 0x001E8C34 + public override void GetObjectData(SerializationInfo info, StreamingContext context); // 0x001E8C54 + protected sealed override object DynamicInvokeImpl(object[] args); // 0x001E8C74 + public sealed override bool Equals(object obj); // 0x001E8CA8 + public sealed override int GetHashCode(); // 0x001E8DB4 + public sealed override Delegate[] GetInvocationList(); // 0x001E8DBC + protected sealed override Delegate CombineImpl(Delegate follow); // 0x001E918C + private bool BaseEquals(MulticastDelegate value); // 0x001E9594 + private static MulticastDelegate KPM(MulticastDelegate needle, MulticastDelegate haystack, out MulticastDelegate tail); // 0x001E959C + protected sealed override Delegate RemoveImpl(Delegate value); // 0x001E9708 + public static bool op_Equality(MulticastDelegate d1, MulticastDelegate d2); // 0x001E9930 + public static bool op_Inequality(MulticastDelegate d1, MulticastDelegate d2); // 0x001E994C +} + +// Namespace: System +[Serializable] +public abstract class Delegate : ICloneable, ISerializable // TypeDefIndex: 38 +{ + // Fields + private IntPtr method_ptr; // 0x08 + private IntPtr invoke_impl; // 0x0C + private object m_target; // 0x10 + private IntPtr method; // 0x14 + private IntPtr delegate_trampoline; // 0x18 + private IntPtr method_code; // 0x1C + private MethodInfo method_info; // 0x20 + private MethodInfo original_method_info; // 0x24 + private DelegateData data; // 0x28 + + // Properties + public MethodInfo Method { get; } // 0x004C8614 + public object Target { get; } // 0x004C86F0 + + // Methods + protected void .ctor(object target, string method); // 0x004C8368 + protected void .ctor(Type target, string method); // 0x004C84B8 + internal static Delegate CreateDelegate_internal(Type type, object target, MethodInfo info, bool throwOnBindFailure); // 0x004C86F8 + internal void SetMulticastInvoke(); // 0x004C86FC + private static bool arg_type_match(Type delArgType, Type argType); // 0x004C8700 + private static bool return_type_match(Type delReturnType, Type returnType); // 0x004C8778 + public static Delegate CreateDelegate(Type type, object firstArgument, MethodInfo method, bool throwOnBindFailure); // 0x004C87F0 + public static Delegate CreateDelegate(Type type, object firstArgument, MethodInfo method); // 0x004C91D4 + public static Delegate CreateDelegate(Type type, MethodInfo method, bool throwOnBindFailure); // 0x004C91F0 + public static Delegate CreateDelegate(Type type, MethodInfo method); // 0x004C9214 + public static Delegate CreateDelegate(Type type, object target, string method); // 0x004C9238 + private static MethodInfo GetCandidateMethod(Type type, Type target, string method, BindingFlags bflags, bool ignoreCase, bool throwOnBindFailure); // 0x004C927C + public static Delegate CreateDelegate(Type type, Type target, string method, bool ignoreCase, bool throwOnBindFailure); // 0x004C9708 + public static Delegate CreateDelegate(Type type, Type target, string method); // 0x004C9808 + public static Delegate CreateDelegate(Type type, Type target, string method, bool ignoreCase); // 0x004C982C + public static Delegate CreateDelegate(Type type, object target, string method, bool ignoreCase, bool throwOnBindFailure); // 0x004C984C + public static Delegate CreateDelegate(Type type, object target, string method, bool ignoreCase); // 0x004C925C + public object DynamicInvoke(object[] args); // 0x004C995C + protected virtual object DynamicInvokeImpl(object[] args); // 0x004C996C + public virtual object Clone(); // 0x004C9C88 + public override bool Equals(object obj); // 0x004C9C90 + public override int GetHashCode(); // 0x004C9DE8 + protected virtual MethodInfo GetMethodImpl(); // 0x004C9E30 + public virtual void GetObjectData(SerializationInfo info, StreamingContext context); // 0x004C9E34 + public virtual Delegate[] GetInvocationList(); // 0x004CA0DC + public static Delegate Combine(Delegate a, Delegate b); // 0x004CA1A8 + public static Delegate Combine(Delegate[] delegates); // 0x004CA2B4 + protected virtual Delegate CombineImpl(Delegate d); // 0x004CA324 + public static Delegate Remove(Delegate source, Delegate value); // 0x004CA3F4 + protected virtual Delegate RemoveImpl(Delegate d); // 0x004CA410 + public static Delegate RemoveAll(Delegate source, Delegate value); // 0x004CA440 + public static bool op_Equality(Delegate d1, Delegate d2); // 0x004CA508 + public static bool op_Inequality(Delegate d1, Delegate d2); // 0x004CA4C4 +} + +// Namespace: System +[Serializable] +public abstract struct Enum : IFormattable, IConvertible, IComparable // TypeDefIndex: 39 +{ + // Fields + private static char[] split_char; // 0x00 + + // Properties + private object Value { get; } // 0x002D886C + + // Methods + protected void .ctor(); // 0x002D871C + private static void .cctor(); // 0x002D8724 + private bool System.IConvertible.ToBoolean(IFormatProvider provider); // 0x002D87D4 + private byte System.IConvertible.ToByte(IFormatProvider provider); // 0x002D8870 + private char System.IConvertible.ToChar(IFormatProvider provider); // 0x002D8908 + private DateTime System.IConvertible.ToDateTime(IFormatProvider provider); // 0x002D89A0 + private Decimal System.IConvertible.ToDecimal(IFormatProvider provider); // 0x002D8A40 + private double System.IConvertible.ToDouble(IFormatProvider provider); // 0x002D8AE0 + private short System.IConvertible.ToInt16(IFormatProvider provider); // 0x002D8B78 + private int System.IConvertible.ToInt32(IFormatProvider provider); // 0x002D8C10 + private long System.IConvertible.ToInt64(IFormatProvider provider); // 0x002D8CA8 + private sbyte System.IConvertible.ToSByte(IFormatProvider provider); // 0x002D8D40 + private float System.IConvertible.ToSingle(IFormatProvider provider); // 0x002D8DD8 + private object System.IConvertible.ToType(Type targetType, IFormatProvider provider); // 0x002D8E70 + private ushort System.IConvertible.ToUInt16(IFormatProvider provider); // 0x002D9048 + private uint System.IConvertible.ToUInt32(IFormatProvider provider); // 0x002D90E0 + private ulong System.IConvertible.ToUInt64(IFormatProvider provider); // 0x002D9178 + public TypeCode GetTypeCode(); // 0x002D9210 + private object get_value(); // 0x002D9424 + public static Array GetValues(Type enumType); // 0x002D9428 + public static string[] GetNames(Type enumType); // 0x002D9600 + private static int FindPosition(object value, Array values); // 0x002D97C0 + public static string GetName(Type enumType, object value); // 0x002D9A50 + public static bool IsDefined(Type enumType, object value); // 0x002D9C9C + private static Type get_underlying_type(Type enumType); // 0x002DA030 + public static Type GetUnderlyingType(Type enumType); // 0x002D92DC + public static object Parse(Type enumType, string value); // 0x002DA034 + private static int FindName(Hashtable name_hash, string[] names, string name, bool ignoreCase); // 0x002DAA2C + private static ulong GetValue(object value, TypeCode typeCode); // 0x002DACEC + public static object Parse(Type enumType, string value, bool ignoreCase); // 0x002DA0C0 + private int compare_value_to(object other); // 0x002DB4C8 + public int CompareTo(object target); // 0x002DB4CC + public override string ToString(); // 0x002DB604 + public string ToString(IFormatProvider provider); // 0x002D8FE4 + public string ToString(string format); // 0x002DB668 + public string ToString(string format, IFormatProvider provider); // 0x002DB788 + public static object ToObject(Type enumType, byte value); // 0x002DB0A0 + public static object ToObject(Type enumType, short value); // 0x002DB150 + public static object ToObject(Type enumType, int value); // 0x002DB2B0 + public static object ToObject(Type enumType, long value); // 0x002DB410 + public static object ToObject(Type enumType, object value); // 0x002D9C98 + public static object ToObject(Type enumType, sbyte value); // 0x002DAFF0 + public static object ToObject(Type enumType, ushort value); // 0x002DB200 + public static object ToObject(Type enumType, uint value); // 0x002DB360 + public static object ToObject(Type enumType, ulong value); // 0x002DAF38 + public override bool Equals(object obj); // 0x002DC20C + private int get_hashcode(); // 0x002DC214 + public override int GetHashCode(); // 0x002DC218 + private static string FormatSpecifier_X(Type enumType, object value, bool upper); // 0x002DC21C + private static string FormatFlags(Type enumType, object value); // 0x002DC71C + public static string Format(Type enumType, object value, string format); // 0x002DB8A8 +} + +// Namespace: System +[Serializable] +public abstract class Array : IEnumerable, ICloneable, ICollection, IList // TypeDefIndex: 40 +{ + // Properties + private object System.Collections.IList.Item { get; set; } // 0x004EC894 0x004ECA20 + private int System.Collections.ICollection.Count { get; } // 0x004ED1AC + public int Length { get; } // 0x004EC9C0 + public long LongLength { get; } // 0x004ED2F8 + public int Rank { get; } // 0x004ECA18 + public bool IsSynchronized { get; } // 0x004ED334 + public object SyncRoot { get; } // 0x004ED33C + public bool IsFixedSize { get; } // 0x004ED340 + public bool IsReadOnly { get; } // 0x004ED348 + + // Methods + private void .ctor(); // 0x004EC88C + private int System.Collections.IList.Add(object value); // 0x004ECB58 + private void System.Collections.IList.Clear(); // 0x004ECBE0 + private bool System.Collections.IList.Contains(object value); // 0x004ECDDC + private int System.Collections.IList.IndexOf(object value); // 0x004ECEF0 + private void System.Collections.IList.Insert(int index, object value); // 0x004ED014 + private void System.Collections.IList.Remove(object value); // 0x004ED09C + private void System.Collections.IList.RemoveAt(int index); // 0x004ED124 + internal int InternalArray__ICollection_get_Count(); // 0x004ED1B0 + internal bool InternalArray__ICollection_get_IsReadOnly(); // 0x004ED1B4 + internal IEnumerator`1 InternalArray__IEnumerable_GetEnumerator(); + internal void InternalArray__ICollection_Clear(); // 0x004ED1BC + internal void InternalArray__ICollection_Add(T item); + internal bool InternalArray__ICollection_Remove(T item); + internal bool InternalArray__ICollection_Contains(T item); + internal void InternalArray__ICollection_CopyTo(T[] array, int index); + internal void InternalArray__Insert(int index, T item); + internal void InternalArray__RemoveAt(int index); // 0x004ED258 + internal int InternalArray__IndexOf(T item); + internal T InternalArray__get_Item(int index); + internal void InternalArray__set_Item(int index, T item); + internal void GetGenericValueImpl(int pos, out T value); + internal void SetGenericValueImpl(int pos, T value); + private int GetRank(); // 0x004ED30C + public int GetLength(int dimension); // 0x004ED2F4 + public long GetLongLength(int dimension); // 0x004ED310 + public int GetLowerBound(int dimension); // 0x004ECC14 + public object GetValue(int[] indices); // 0x004ED324 + public void SetValue(object value, int[] indices); // 0x004ED328 + internal object GetValueImpl(int pos); // 0x004ECA1C + internal void SetValueImpl(object value, int pos); // 0x004ECB54 + internal static bool FastCopy(Array source, int source_idx, Array dest, int dest_idx, int length); // 0x004ED32C + internal static Array CreateInstanceImpl(Type elementType, int[] lengths, int[] bounds); // 0x004ED330 + public IEnumerator GetEnumerator(); // 0x004ED350 + public int GetUpperBound(int dimension); // 0x004ED404 + public object GetValue(int index); // 0x004ED434 + public object GetValue(int index1, int index2); // 0x004ED5A0 + public object GetValue(int index1, int index2, int index3); // 0x004ED66C + public object GetValue(long index); // 0x004ED75C + public object GetValue(long index1, long index2); // 0x004ED840 + public object GetValue(long index1, long index2, long index3); // 0x004ED9A0 + public void SetValue(object value, long index); // 0x004EDB7C + public void SetValue(object value, long index1, long index2); // 0x004EDDDC + public void SetValue(object value, long index1, long index2, long index3); // 0x004EDFAC + public void SetValue(object value, int index); // 0x004EDC68 + public void SetValue(object value, int index1, int index2); // 0x004EE218 + public void SetValue(object value, int index1, int index2, int index3); // 0x004EE2EC + public static Array CreateInstance(Type elementType, int length); // 0x004EE3E4 + public static Array CreateInstance(Type elementType, int length1, int length2); // 0x004EE78C + public static Array CreateInstance(Type elementType, int length1, int length2, int length3); // 0x004EE858 + public static Array CreateInstance(Type elementType, int[] lengths); // 0x004EE48C + public static Array CreateInstance(Type elementType, int[] lengths, int[] lowerBounds); // 0x004EE948 + private static int[] GetIntArray(long[] values); // 0x004EEEC0 + public static Array CreateInstance(Type elementType, long[] lengths); // 0x004EF044 + public object GetValue(long[] indices); // 0x004EF108 + public void SetValue(object value, long[] indices); // 0x004EF1CC + public static int BinarySearch(Array array, object value); // 0x004EF298 + public static int BinarySearch(Array array, object value, IComparer comparer); // 0x004EF744 + public static int BinarySearch(Array array, int index, int length, object value); // 0x004EF938 + public static int BinarySearch(Array array, int index, int length, object value, IComparer comparer); // 0x004EFC70 + private static int DoBinarySearch(Array array, int index, int length, object value, IComparer comparer); // 0x004EF484 + public static void Clear(Array array, int index, int length); // 0x004ECC18 + private static void ClearInternal(Array a, int index, int count); // 0x004EFFB0 + public object Clone(); // 0x004EFFB4 + public static void Copy(Array sourceArray, Array destinationArray, int length); // 0x004EFFB8 + public static void Copy(Array sourceArray, int sourceIndex, Array destinationArray, int destinationIndex, int length); // 0x004F00F4 + public static void Copy(Array sourceArray, long sourceIndex, Array destinationArray, long destinationIndex, long length); // 0x004F0A14 + public static void Copy(Array sourceArray, Array destinationArray, long length); // 0x004F0C98 + public static int IndexOf(Array array, object value); // 0x004F0D84 + public static int IndexOf(Array array, object value, int startIndex); // 0x004F1044 + public static int IndexOf(Array array, object value, int startIndex, int count); // 0x004F0E58 + public void Initialize(); // 0x004F111C + public static int LastIndexOf(Array array, object value); // 0x004F1120 + public static int LastIndexOf(Array array, object value, int startIndex); // 0x004F120C + public static int LastIndexOf(Array array, object value, int startIndex, int count); // 0x004F12EC + private static Swapper get_swapper(Array array); // 0x004F14E0 + private static Swapper get_swapper(T[] array); + public static void Reverse(Array array); // 0x004F1620 + public static void Reverse(Array array, int index, int length); // 0x004F16F8 + public static void Sort(Array array); // 0x004F1EF8 + public static void Sort(Array keys, Array items); // 0x004F24C0 + public static void Sort(Array array, IComparer comparer); // 0x004F25B0 + public static void Sort(Array array, int index, int length); // 0x004F269C + public static void Sort(Array keys, Array items, IComparer comparer); // 0x004F26C8 + public static void Sort(Array keys, Array items, int index, int length); // 0x004F27B8 + public static void Sort(Array array, int index, int length, IComparer comparer); // 0x004F27D8 + public static void Sort(Array keys, Array items, int index, int length, IComparer comparer); // 0x004F1FE4 + private void int_swapper(int i, int j); // 0x004F2F90 + private void obj_swapper(int i, int j); // 0x004F30A0 + private void slow_swapper(int i, int j); // 0x004F3210 + private void double_swapper(int i, int j); // 0x004F325C + private static int new_gap(int gap); // 0x004F3374 + private static void combsort(double[] array, int start, int size, Swapper swap_items); // 0x004F2804 + private static void combsort(int[] array, int start, int size, Swapper swap_items); // 0x004F2A04 + private static void combsort(char[] array, int start, int size, Swapper swap_items); // 0x004F2C24 + private static void qsort(Array keys, Array items, int low0, int high0, IComparer comparer); // 0x004F2E20 + private static void swap(Array keys, Array items, int i, int j); // 0x004F35A8 + private static int compare(object value1, object value2, IComparer comparer); // 0x004F33C0 + public static void Sort(T[] array); + public static void Sort(T[] keys, T[] items); + public static void Sort(T[] array, IComparer`1 comparer); + public static void Sort(T[] keys, T[] items, IComparer`1 comparer); + public static void Sort(T[] array, int index, int length); + public static void Sort(T[] keys, T[] items, int index, int length); + public static void Sort(T[] array, int index, int length, IComparer`1 comparer); + public static void Sort(T[] keys, T[] items, int index, int length, IComparer`1 comparer); + public static void Sort(T[] array, Comparison`1 comparison); + internal static void Sort(T[] array, int length, Comparison`1 comparison); + private static void qsort(T[] keys, T[] items, int low0, int high0, IComparer`1 comparer); + private static int compare(T value1, T value2, IComparer`1 comparer); + private static void qsort(T[] array, int low0, int high0, Comparison`1 comparison); + private static void swap(T[] keys, T[] items, int i, int j); + private static void swap(T[] array, int i, int j); + public void CopyTo(Array array, int index); // 0x004F36A4 + public void CopyTo(Array array, long index); // 0x004F3948 + public static void Resize(T[] array, int newSize); + internal static void Resize(T[] array, int length, int newSize); + public static bool TrueForAll(T[] array, Predicate`1 match); + public static void ForEach(T[] array, Action`1 action); + public static T[] ConvertAll(T[] array, Converter`2 converter); + public static int FindLastIndex(T[] array, Predicate`1 match); + public static int FindLastIndex(T[] array, int startIndex, Predicate`1 match); + public static int FindLastIndex(T[] array, int startIndex, int count, Predicate`1 match); + public static int FindIndex(T[] array, Predicate`1 match); + public static int FindIndex(T[] array, int startIndex, Predicate`1 match); + public static int FindIndex(T[] array, int startIndex, int count, Predicate`1 match); + public static int BinarySearch(T[] array, T value); + public static int BinarySearch(T[] array, T value, IComparer`1 comparer); + public static int BinarySearch(T[] array, int index, int length, T value); + public static int BinarySearch(T[] array, int index, int length, T value, IComparer`1 comparer); + public static int IndexOf(T[] array, T value); + public static int IndexOf(T[] array, T value, int startIndex); + public static int IndexOf(T[] array, T value, int startIndex, int count); + public static int LastIndexOf(T[] array, T value); + public static int LastIndexOf(T[] array, T value, int startIndex); + public static int LastIndexOf(T[] array, T value, int startIndex, int count); + public static T[] FindAll(T[] array, Predicate`1 match); + public static bool Exists(T[] array, Predicate`1 match); + public static ReadOnlyCollection`1 AsReadOnly(T[] array); + public static T Find(T[] array, Predicate`1 match); + public static T FindLast(T[] array, Predicate`1 match); + public static void ConstrainedCopy(Array sourceArray, int sourceIndex, Array destinationArray, int destinationIndex, int length); // 0x004F3A34 +} + +// Namespace: +internal struct InternalEnumerator`1 : IEnumerator, IDisposable, IEnumerator`1 // TypeDefIndex: 41 +{ + // Fields + private const int NOT_STARTED = -2; // 0x00 + private const int FINISHED = -1; // 0x00 + private Array array; // 0x00 + private int idx; // 0x00 + + // Properties + private object System.Collections.IEnumerator.Current { get; } + public T Current { get; } + + // Methods + internal void .ctor(Array array); + private void System.Collections.IEnumerator.Reset(); + public void Dispose(); + public bool MoveNext(); +} + +// Namespace: +internal class SimpleEnumerator : IEnumerator, ICloneable // TypeDefIndex: 42 +{ + // Fields + private Array enumeratee; // 0x08 + private int currentpos; // 0x0C + private int length; // 0x10 + + // Properties + public object Current { get; } // 0x004F3A54 + + // Methods + public void .ctor(Array arrayToEnumerate); // 0x004ED3C0 + public bool MoveNext(); // 0x004F3B8C + public void Reset(); // 0x004F3BB0 + public object Clone(); // 0x004F3BBC +} + +// Namespace: +private class ArrayReadOnlyList`1 : IEnumerable, IList`1, ICollection`1, IEnumerable`1 // TypeDefIndex: 43 +{ + // Fields + private T[] array; // 0x00 + + // Properties + public T Item { get; set; } + public int Count { get; } + public bool IsReadOnly { get; } + + // Methods + public void .ctor(T[] array); + private IEnumerator System.Collections.IEnumerable.GetEnumerator(); + public void Add(T item); + public void Clear(); + public bool Contains(T item); + public void CopyTo(T[] array, int index); + public IEnumerator`1 GetEnumerator(); + public int IndexOf(T item); + public void Insert(int index, T item); + public bool Remove(T item); + public void RemoveAt(int index); + private static Exception ReadOnlyError(); +} + +// Namespace: +private sealed class c__Iterator0 : IEnumerator, IDisposable, IEnumerator`1 // TypeDefIndex: 44 +{ + // Fields + internal int __0; // 0x00 + internal int $PC; // 0x00 + internal T $current; // 0x00 + internal ArrayReadOnlyList`1 <>f__this; // 0x00 + + // Properties + private T System.Collections.Generic.IEnumerator.Current { get; } + private object System.Collections.IEnumerator.Current { get; } + + // Methods + public void .ctor(); + public bool MoveNext(); + public void Dispose(); + public void Reset(); +} + +// Namespace: +private delegate void Swapper(int i, int j); // TypeDefIndex: 45; 0x004F1CCC + +// Namespace: System.Collections +public interface ICollection : IEnumerable // TypeDefIndex: 46 +{ + // Properties + int Count { get; } + bool IsSynchronized { get; } + object SyncRoot { get; } + + // Methods + void CopyTo(Array array, int index); +} + +// Namespace: System.Collections +public interface IList : IEnumerable, ICollection // TypeDefIndex: 47 +{ + // Properties + bool IsFixedSize { get; } + bool IsReadOnly { get; } + object Item { get; set; } + + // Methods + int Add(object value); + void Clear(); + bool Contains(object value); + int IndexOf(object value); + void Insert(int index, object value); + void Remove(object value); + void RemoveAt(int index); +} + +// Namespace: System.Collections.Generic +public interface IList`1 : IEnumerable, ICollection`1, IEnumerable`1 // TypeDefIndex: 48 +{ + // Properties + T Item { get; set; } + + // Methods + int IndexOf(T item); + void Insert(int index, T item); + void RemoveAt(int index); +} + +// Namespace: System.Collections.Generic +public interface ICollection`1 : IEnumerable, IEnumerable`1 // TypeDefIndex: 49 +{ + // Properties + int Count { get; } + bool IsReadOnly { get; } + + // Methods + void Add(T item); + void Clear(); + bool Contains(T item); + void CopyTo(T[] array, int arrayIndex); + bool Remove(T item); +} + +// Namespace: System +[Serializable] +public struct Void // TypeDefIndex: 50 +{ +} + +// Namespace: System +[Serializable] +public abstract class Type : MemberInfo, IReflect, _Type // TypeDefIndex: 51 +{ + // Fields + internal const BindingFlags DefaultBindingFlags = 28; // 0x00 + internal RuntimeTypeHandle _impl; // 0x08 + public static readonly char Delimiter; // 0x00 + public static readonly Type[] EmptyTypes; // 0x04 + public static readonly MemberFilter FilterAttribute; // 0x08 + public static readonly MemberFilter FilterName; // 0x0C + public static readonly MemberFilter FilterNameIgnoreCase; // 0x10 + public static readonly object Missing; // 0x14 + + // Properties + public abstract Assembly Assembly { get; } + public abstract string AssemblyQualifiedName { get; } + public TypeAttributes Attributes { get; } // 0x004219E4 + public abstract Type BaseType { get; } + public override Type DeclaringType { get; } // 0x004219F4 + public static Binder DefaultBinder { get; } // 0x004219FC + public abstract string FullName { get; } + public abstract Guid GUID { get; } + public bool HasElementType { get; } // 0x00421AEC + public bool IsAbstract { get; } // 0x00421AFC + public bool IsAnsiClass { get; } // 0x00421B1C + public bool IsArray { get; } // 0x00421B48 + public bool IsAutoClass { get; } // 0x00421B58 + public bool IsAutoLayout { get; } // 0x00421B84 + public bool IsByRef { get; } // 0x00421BB0 + public bool IsClass { get; } // 0x00421BC0 + public bool IsCOMObject { get; } // 0x00421C3C + public bool IsContextful { get; } // 0x00421C4C + public bool IsEnum { get; } // 0x00421C5C + public bool IsExplicitLayout { get; } // 0x00421D04 + public bool IsImport { get; } // 0x00421D30 + public bool IsInterface { get; } // 0x00421C0C + public bool IsLayoutSequential { get; } // 0x00421D50 + public bool IsMarshalByRef { get; } // 0x00421D7C + public bool IsNestedAssembly { get; } // 0x00421D8C + public bool IsNestedFamANDAssem { get; } // 0x00421DB8 + public bool IsNestedFamily { get; } // 0x00421DE4 + public bool IsNestedFamORAssem { get; } // 0x00421E10 + public bool IsNestedPrivate { get; } // 0x00421E3C + public bool IsNestedPublic { get; } // 0x00421E68 + public bool IsNotPublic { get; } // 0x00421E94 + public bool IsPointer { get; } // 0x00421EC0 + public bool IsPrimitive { get; } // 0x00421ED0 + public bool IsPublic { get; } // 0x00421EE0 + public bool IsSealed { get; } // 0x00421F08 + public bool IsSerializable { get; } // 0x00421F28 + public bool IsSpecialName { get; } // 0x004221A4 + public bool IsUnicodeClass { get; } // 0x004221C4 + public bool IsValueType { get; } // 0x00421C2C + public override MemberTypes MemberType { get; } // 0x004221F0 + public abstract Module Module { get; } + public abstract string Namespace { get; } + public override Type ReflectedType { get; } // 0x004221F8 + public virtual RuntimeTypeHandle TypeHandle { get; } // 0x00422200 + public ConstructorInfo TypeInitializer { get; } // 0x00422208 + public abstract Type UnderlyingSystemType { get; } + internal bool IsSystemType { get; } // 0x00422144 + public virtual bool ContainsGenericParameters { get; } // 0x004255D8 + public virtual bool IsGenericTypeDefinition { get; } // 0x004255E0 + public virtual bool IsGenericType { get; } // 0x00425684 + public virtual bool IsGenericParameter { get; } // 0x00425B78 + public bool IsNested { get; } // 0x00425B80 + public bool IsVisible { get; } // 0x00425BA4 + public virtual int GenericParameterPosition { get; } // 0x00425C24 + public virtual GenericParameterAttributes GenericParameterAttributes { get; } // 0x00425CC4 + public virtual MethodBase DeclaringMethod { get; } // 0x00425E30 + public virtual StructLayoutAttribute StructLayoutAttribute { get; } // 0x0042613C + internal bool IsUserType { get; } // 0x00426484 + + // Methods + protected void .ctor(); // 0x00421018 + private static void .cctor(); // 0x00421020 + private void System.Runtime.InteropServices._Type.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x004211B8 + private void System.Runtime.InteropServices._Type.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x00421240 + private void System.Runtime.InteropServices._Type.GetTypeInfoCount(out uint pcTInfo); // 0x004212C8 + private void System.Runtime.InteropServices._Type.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x00421350 + private static bool FilterName_impl(MemberInfo m, object filterCriteria); // 0x004213D8 + private static bool FilterNameIgnoreCase_impl(MemberInfo m, object filterCriteria); // 0x00421564 + private static bool FilterAttribute_impl(MemberInfo m, object filterCriteria); // 0x00421764 + public override bool Equals(object o); // 0x004222CC + public bool Equals(Type o); // 0x00422370 + internal bool EqualsInternal(Type type); // 0x004223D8 + private static Type internal_from_handle(IntPtr handle); // 0x004223DC + private static Type internal_from_name(string name, bool throwOnError, bool ignoreCase); // 0x004223E0 + public static Type GetType(string typeName); // 0x004223E4 + public static Type GetType(string typeName, bool throwOnError); // 0x004224CC + public static Type GetType(string typeName, bool throwOnError, bool ignoreCase); // 0x0042267C + public static Type[] GetTypeArray(object[] args); // 0x0042280C + internal static TypeCode GetTypeCodeInternal(Type type); // 0x0042299C + public static TypeCode GetTypeCode(Type type); // 0x004229A0 + public static Type GetTypeFromCLSID(Guid clsid); // 0x00422AB4 + public static Type GetTypeFromCLSID(Guid clsid, bool throwOnError); // 0x00422B3C + public static Type GetTypeFromCLSID(Guid clsid, string server); // 0x00422BC4 + public static Type GetTypeFromCLSID(Guid clsid, string server, bool throwOnError); // 0x00422C4C + public static Type GetTypeFromHandle(RuntimeTypeHandle handle); // 0x00413148 + public static Type GetTypeFromProgID(string progID); // 0x00422CD4 + public static Type GetTypeFromProgID(string progID, bool throwOnError); // 0x00422D5C + public static Type GetTypeFromProgID(string progID, string server); // 0x00422DE4 + public static Type GetTypeFromProgID(string progID, string server, bool throwOnError); // 0x00422E6C + public static RuntimeTypeHandle GetTypeHandle(object o); // 0x00422EF4 + internal static bool type_is_subtype_of(Type a, Type b, bool check_interfaces); // 0x004221A0 + internal static bool type_is_assignable_from(Type a, Type b); // 0x00422FC0 + public Type GetType(); // 0x00422FC4 + public virtual bool IsSubclassOf(Type c); // 0x00422FCC + public virtual Type[] FindInterfaces(TypeFilter filter, object filterCriteria); // 0x004230BC + public Type GetInterface(string name); // 0x004232F0 + public abstract Type GetInterface(string name, bool ignoreCase); + internal static void GetInterfaceMapData(Type t, Type iface, out MethodInfo[] targets, out MethodInfo[] methods); // 0x00423304 + public virtual InterfaceMapping GetInterfaceMap(Type interfaceType); // 0x00423308 + public abstract Type[] GetInterfaces(); + public virtual bool IsAssignableFrom(Type c); // 0x00423580 + public virtual bool IsInstanceOfType(object o); // 0x0042372C + public virtual int GetArrayRank(); // 0x00423730 + public abstract Type GetElementType(); + public EventInfo GetEvent(string name); // 0x004237B8 + public abstract EventInfo GetEvent(string name, BindingFlags bindingAttr); + public virtual EventInfo[] GetEvents(); // 0x004237CC + public abstract EventInfo[] GetEvents(BindingFlags bindingAttr); + public FieldInfo GetField(string name); // 0x004237E0 + public abstract FieldInfo GetField(string name, BindingFlags bindingAttr); + public FieldInfo[] GetFields(); // 0x004237F4 + public abstract FieldInfo[] GetFields(BindingFlags bindingAttr); + public override int GetHashCode(); // 0x00423808 + public MemberInfo[] GetMember(string name); // 0x00423858 + public virtual MemberInfo[] GetMember(string name, BindingFlags bindingAttr); // 0x00423888 + public virtual MemberInfo[] GetMember(string name, MemberTypes type, BindingFlags bindingAttr); // 0x004238B8 + public MemberInfo[] GetMembers(); // 0x00423A24 + public abstract MemberInfo[] GetMembers(BindingFlags bindingAttr); + public MethodInfo GetMethod(string name); // 0x00423A38 + public MethodInfo GetMethod(string name, BindingFlags bindingAttr); // 0x00423B28 + public MethodInfo GetMethod(string name, Type[] types); // 0x00423C1C + public MethodInfo GetMethod(string name, Type[] types, ParameterModifier[] modifiers); // 0x00423E1C + public MethodInfo GetMethod(string name, BindingFlags bindingAttr, Binder binder, Type[] types, ParameterModifier[] modifiers); // 0x00423E48 + public MethodInfo GetMethod(string name, BindingFlags bindingAttr, Binder binder, CallingConventions callConvention, Type[] types, ParameterModifier[] modifiers); // 0x00423C4C + protected abstract MethodInfo GetMethodImpl(string name, BindingFlags bindingAttr, Binder binder, CallingConventions callConvention, Type[] types, ParameterModifier[] modifiers); + internal MethodInfo GetMethodImplInternal(string name, BindingFlags bindingAttr, Binder binder, CallingConventions callConvention, Type[] types, ParameterModifier[] modifiers); // 0x00423E70 + internal virtual MethodInfo GetMethod(MethodInfo fromNoninstanciated); // 0x00423EAC + internal virtual ConstructorInfo GetConstructor(ConstructorInfo fromNoninstanciated); // 0x00423F48 + internal virtual FieldInfo GetField(FieldInfo fromNoninstanciated); // 0x00423FE4 + public MethodInfo[] GetMethods(); // 0x00424080 + public abstract MethodInfo[] GetMethods(BindingFlags bindingAttr); + public Type GetNestedType(string name); // 0x00424094 + public abstract Type GetNestedType(string name, BindingFlags bindingAttr); + public Type[] GetNestedTypes(); // 0x004240A8 + public abstract Type[] GetNestedTypes(BindingFlags bindingAttr); + public PropertyInfo[] GetProperties(); // 0x004240BC + public abstract PropertyInfo[] GetProperties(BindingFlags bindingAttr); + public PropertyInfo GetProperty(string name); // 0x004240D0 + public PropertyInfo GetProperty(string name, BindingFlags bindingAttr); // 0x004241BC + public PropertyInfo GetProperty(string name, Type returnType); // 0x004242AC + public PropertyInfo GetProperty(string name, Type[] types); // 0x0042439C + public PropertyInfo GetProperty(string name, Type returnType, Type[] types); // 0x00424598 + public PropertyInfo GetProperty(string name, Type returnType, Type[] types, ParameterModifier[] modifiers); // 0x004245C0 + public PropertyInfo GetProperty(string name, BindingFlags bindingAttr, Binder binder, Type returnType, Type[] types, ParameterModifier[] modifiers); // 0x004243C8 + protected abstract PropertyInfo GetPropertyImpl(string name, BindingFlags bindingAttr, Binder binder, Type returnType, Type[] types, ParameterModifier[] modifiers); + internal PropertyInfo GetPropertyImplInternal(string name, BindingFlags bindingAttr, Binder binder, Type returnType, Type[] types, ParameterModifier[] modifiers); // 0x004245E8 + protected abstract ConstructorInfo GetConstructorImpl(BindingFlags bindingAttr, Binder binder, CallingConventions callConvention, Type[] types, ParameterModifier[] modifiers); + protected abstract TypeAttributes GetAttributeFlagsImpl(); + protected abstract bool HasElementTypeImpl(); + protected abstract bool IsArrayImpl(); + protected abstract bool IsByRefImpl(); + protected abstract bool IsCOMObjectImpl(); + protected abstract bool IsPointerImpl(); + protected abstract bool IsPrimitiveImpl(); + internal static bool IsArrayImpl(Type type); // 0x00424624 + protected virtual bool IsValueTypeImpl(); // 0x00424628 + protected virtual bool IsContextfulImpl(); // 0x00424770 + protected virtual bool IsMarshalByRefImpl(); // 0x0042482C + public ConstructorInfo GetConstructor(Type[] types); // 0x004248E8 + public ConstructorInfo GetConstructor(BindingFlags bindingAttr, Binder binder, Type[] types, ParameterModifier[] modifiers); // 0x00424A90 + public ConstructorInfo GetConstructor(BindingFlags bindingAttr, Binder binder, CallingConventions callConvention, Type[] types, ParameterModifier[] modifiers); // 0x00424914 + public ConstructorInfo[] GetConstructors(); // 0x00424AB4 + public abstract ConstructorInfo[] GetConstructors(BindingFlags bindingAttr); + public virtual MemberInfo[] GetDefaultMembers(); // 0x00424AC8 + public virtual MemberInfo[] FindMembers(MemberTypes memberType, BindingFlags bindingAttr, MemberFilter filter, object filterCriteria); // 0x00424C40 + public object InvokeMember(string name, BindingFlags invokeAttr, Binder binder, object target, object[] args); // 0x004254B0 + public object InvokeMember(string name, BindingFlags invokeAttr, Binder binder, object target, object[] args, CultureInfo culture); // 0x004254F8 + public abstract object InvokeMember(string name, BindingFlags invokeAttr, Binder binder, object target, object[] args, ParameterModifier[] modifiers, CultureInfo culture, string[] namedParameters); + public override string ToString(); // 0x00425540 + public virtual Type[] GetGenericArguments(); // 0x00425550 + internal Type GetGenericTypeDefinition_impl(); // 0x004255E4 + public virtual Type GetGenericTypeDefinition(); // 0x004255E8 + private static Type MakeGenericType(Type gt, Type[] types); // 0x00425688 + public virtual Type MakeGenericType(Type[] typeArguments); // 0x0042568C + private int GetGenericParameterPosition(); // 0x00425C20 + private GenericParameterAttributes GetGenericParameterAttributes(); // 0x00425CC0 + private Type[] GetGenericParameterConstraints_impl(); // 0x00425D78 + public virtual Type[] GetGenericParameterConstraints(); // 0x00425D7C + private Type make_array_type(int rank); // 0x00425E38 + public virtual Type MakeArrayType(); // 0x00425E3C + public virtual Type MakeArrayType(int rank); // 0x00425E44 + private Type make_byref_type(); // 0x00425EEC + public virtual Type MakeByRefType(); // 0x00425EF0 + public virtual Type MakePointerType(); // 0x00425EF4 + public static Type ReflectionOnlyGetType(string typeName, bool throwIfNotFound, bool ignoreCase); // 0x00425EF8 + private void GetPacking(out int packing, out int size); // 0x00426138 + internal object[] GetPseudoCustomAttributes(); // 0x00426280 +} + +// Namespace: System.Reflection +[Serializable] +public abstract class MemberInfo : ICustomAttributeProvider, _MemberInfo // TypeDefIndex: 52 +{ + // Properties + public abstract Type DeclaringType { get; } + public abstract MemberTypes MemberType { get; } + public abstract string Name { get; } + public abstract Type ReflectedType { get; } + public virtual Module Module { get; } // 0x00281914 + public virtual int MetadataToken { get; } // 0x00281958 + + // Methods + protected void .ctor(); // 0x0027E9F4 + private void System.Runtime.InteropServices._MemberInfo.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x002816F4 + private void System.Runtime.InteropServices._MemberInfo.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x0028177C + private void System.Runtime.InteropServices._MemberInfo.GetTypeInfoCount(out uint pcTInfo); // 0x00281804 + private void System.Runtime.InteropServices._MemberInfo.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x0028188C + public abstract bool IsDefined(Type attributeType, bool inherit); + public abstract object[] GetCustomAttributes(bool inherit); + public abstract object[] GetCustomAttributes(Type attributeType, bool inherit); + virtual Type System.Runtime.InteropServices._MemberInfo.GetType(); // 0x0028195C +} + +// Namespace: System.Reflection +public interface ICustomAttributeProvider // TypeDefIndex: 53 +{ + // Methods + object[] GetCustomAttributes(bool inherit); + object[] GetCustomAttributes(Type attributeType, bool inherit); + bool IsDefined(Type attributeType, bool inherit); +} + +// Namespace: System.Runtime.InteropServices +public interface _MemberInfo // TypeDefIndex: 54 +{ + // Properties + Type DeclaringType { get; } + MemberTypes MemberType { get; } + string Name { get; } + Type ReflectedType { get; } + + // Methods + bool Equals(object other); + object[] GetCustomAttributes(bool inherit); + object[] GetCustomAttributes(Type attributeType, bool inherit); + int GetHashCode(); + Type GetType(); + bool IsDefined(Type attributeType, bool inherit); + string ToString(); + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); +} + +// Namespace: System.Reflection +public interface IReflect // TypeDefIndex: 55 +{ + // Properties + Type UnderlyingSystemType { get; } + + // Methods + FieldInfo GetField(string name, BindingFlags bindingAttr); + FieldInfo[] GetFields(BindingFlags bindingAttr); + MemberInfo[] GetMember(string name, BindingFlags bindingAttr); + MemberInfo[] GetMembers(BindingFlags bindingAttr); + MethodInfo GetMethod(string name, BindingFlags bindingAttr); + MethodInfo GetMethod(string name, BindingFlags bindingAttr, Binder binder, Type[] types, ParameterModifier[] modifiers); + MethodInfo[] GetMethods(BindingFlags bindingAttr); + PropertyInfo[] GetProperties(BindingFlags bindingAttr); + PropertyInfo GetProperty(string name, BindingFlags bindingAttr); + PropertyInfo GetProperty(string name, BindingFlags bindingAttr, Binder binder, Type returnType, Type[] types, ParameterModifier[] modifiers); + object InvokeMember(string name, BindingFlags invokeAttr, Binder binder, object target, object[] args, ParameterModifier[] modifiers, CultureInfo culture, string[] namedParameters); +} + +// Namespace: System.Runtime.InteropServices +public interface _Type // TypeDefIndex: 56 +{ + // Properties + Assembly Assembly { get; } + string AssemblyQualifiedName { get; } + TypeAttributes Attributes { get; } + Type BaseType { get; } + Type DeclaringType { get; } + string FullName { get; } + Guid GUID { get; } + bool HasElementType { get; } + bool IsAbstract { get; } + bool IsAnsiClass { get; } + bool IsArray { get; } + bool IsAutoClass { get; } + bool IsAutoLayout { get; } + bool IsByRef { get; } + bool IsClass { get; } + bool IsCOMObject { get; } + bool IsContextful { get; } + bool IsEnum { get; } + bool IsExplicitLayout { get; } + bool IsImport { get; } + bool IsInterface { get; } + bool IsLayoutSequential { get; } + bool IsMarshalByRef { get; } + bool IsNestedAssembly { get; } + bool IsNestedFamANDAssem { get; } + bool IsNestedFamily { get; } + bool IsNestedFamORAssem { get; } + bool IsNestedPrivate { get; } + bool IsNestedPublic { get; } + bool IsNotPublic { get; } + bool IsPointer { get; } + bool IsPrimitive { get; } + bool IsPublic { get; } + bool IsSealed { get; } + bool IsSerializable { get; } + bool IsSpecialName { get; } + bool IsUnicodeClass { get; } + bool IsValueType { get; } + MemberTypes MemberType { get; } + Module Module { get; } + string Name { get; } + string Namespace { get; } + Type ReflectedType { get; } + RuntimeTypeHandle TypeHandle { get; } + ConstructorInfo TypeInitializer { get; } + Type UnderlyingSystemType { get; } + + // Methods + bool Equals(object other); + bool Equals(Type o); + Type[] FindInterfaces(TypeFilter filter, object filterCriteria); + MemberInfo[] FindMembers(MemberTypes memberType, BindingFlags bindingAttr, MemberFilter filter, object filterCriteria); + int GetArrayRank(); + ConstructorInfo GetConstructor(Type[] types); + ConstructorInfo GetConstructor(BindingFlags bindingAttr, Binder binder, Type[] types, ParameterModifier[] modifiers); + ConstructorInfo GetConstructor(BindingFlags bindingAttr, Binder binder, CallingConventions callConvention, Type[] types, ParameterModifier[] modifiers); + ConstructorInfo[] GetConstructors(); + ConstructorInfo[] GetConstructors(BindingFlags bindingAttr); + object[] GetCustomAttributes(bool inherit); + object[] GetCustomAttributes(Type attributeType, bool inherit); + MemberInfo[] GetDefaultMembers(); + Type GetElementType(); + EventInfo GetEvent(string name); + EventInfo GetEvent(string name, BindingFlags bindingAttr); + EventInfo[] GetEvents(); + EventInfo[] GetEvents(BindingFlags bindingAttr); + FieldInfo GetField(string name); + FieldInfo GetField(string name, BindingFlags bindingAttr); + FieldInfo[] GetFields(); + FieldInfo[] GetFields(BindingFlags bindingAttr); + int GetHashCode(); + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); + Type GetInterface(string name); + Type GetInterface(string name, bool ignoreCase); + InterfaceMapping GetInterfaceMap(Type interfaceType); + Type[] GetInterfaces(); + MemberInfo[] GetMember(string name); + MemberInfo[] GetMember(string name, MemberTypes type, BindingFlags bindingAttr); + MemberInfo[] GetMember(string name, BindingFlags bindingAttr); + MemberInfo[] GetMembers(); + MemberInfo[] GetMembers(BindingFlags bindingAttr); + MethodInfo GetMethod(string name); + MethodInfo GetMethod(string name, BindingFlags bindingAttr); + MethodInfo GetMethod(string name, Type[] types); + MethodInfo GetMethod(string name, Type[] types, ParameterModifier[] modifiers); + MethodInfo GetMethod(string name, BindingFlags bindingAttr, Binder binder, Type[] types, ParameterModifier[] modifiers); + MethodInfo GetMethod(string name, BindingFlags bindingAttr, Binder binder, CallingConventions callConvention, Type[] types, ParameterModifier[] modifiers); + MethodInfo[] GetMethods(); + MethodInfo[] GetMethods(BindingFlags bindingAttr); + Type GetNestedType(string name); + Type GetNestedType(string name, BindingFlags bindingAttr); + Type[] GetNestedTypes(); + Type[] GetNestedTypes(BindingFlags bindingAttr); + PropertyInfo[] GetProperties(); + PropertyInfo[] GetProperties(BindingFlags bindingAttr); + PropertyInfo GetProperty(string name); + PropertyInfo GetProperty(string name, BindingFlags bindingAttr); + PropertyInfo GetProperty(string name, Type returnType); + PropertyInfo GetProperty(string name, Type[] types); + PropertyInfo GetProperty(string name, Type returnType, Type[] types); + PropertyInfo GetProperty(string name, Type returnType, Type[] types, ParameterModifier[] modifiers); + PropertyInfo GetProperty(string name, BindingFlags bindingAttr, Binder binder, Type returnType, Type[] types, ParameterModifier[] modifiers); + Type GetType(); + object InvokeMember(string name, BindingFlags invokeAttr, Binder binder, object target, object[] args); + object InvokeMember(string name, BindingFlags invokeAttr, Binder binder, object target, object[] args, CultureInfo culture); + object InvokeMember(string name, BindingFlags invokeAttr, Binder binder, object target, object[] args, ParameterModifier[] modifiers, CultureInfo culture, string[] namedParameters); + bool IsAssignableFrom(Type c); + bool IsDefined(Type attributeType, bool inherit); + bool IsInstanceOfType(object o); + bool IsSubclassOf(Type c); + string ToString(); +} + +// Namespace: System +[Serializable] +public class Exception : ISerializable, _Exception // TypeDefIndex: 57 +{ + // Fields + private IntPtr[] trace_ips; // 0x08 + private Exception inner_exception; // 0x0C + internal string message; // 0x10 + private string help_link; // 0x14 + private string class_name; // 0x18 + private string stack_trace; // 0x1C + private string _remoteStackTraceString; // 0x20 + private int remote_stack_index; // 0x24 + internal int hresult; // 0x28 + private string source; // 0x2C + private IDictionary _data; // 0x30 + + // Properties + public Exception InnerException { get; } // 0x002E0C78 + public virtual string HelpLink { get; set; } // 0x002E0C80 0x002E0C88 + protected int HResult { get; set; } // 0x002E0C90 0x002E0C98 + private string ClassName { get; } // 0x002E0CB0 + public virtual string Message { get; } // 0x002E0D0C + public virtual string Source { get; set; } // 0x002E0DCC 0x002E0F58 + public virtual string StackTrace { get; } // 0x002E0F60 + public MethodBase TargetSite { get; } // 0x002E1A7C + public virtual IDictionary Data { get; } // 0x002E1B7C + + // Methods + public void .ctor(); // 0x002E0864 + public void .ctor(string message); // 0x002D80FC + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x002E0878 + public void .ctor(string message, Exception innerException); // 0x002E0C40 + internal void SetMessage(string s); // 0x002E0CA0 + internal void SetStackTrace(string s); // 0x002E0CA8 + public virtual Exception GetBaseException(); // 0x002E1BFC + public virtual void GetObjectData(SerializationInfo info, StreamingContext context); // 0x002E1C28 + public override string ToString(); // 0x002E1EC4 + internal Exception FixRemotingException(); // 0x002E215C + internal void GetFullNameForStackTrace(StringBuilder sb, MethodBase mi); // 0x002E146C + public Type GetType(); // 0x002E0D04 +} + +// Namespace: System.Runtime.InteropServices +public interface _Exception // TypeDefIndex: 58 +{ + // Properties + string HelpLink { get; set; } + Exception InnerException { get; } + string Message { get; } + string Source { get; set; } + string StackTrace { get; } + MethodBase TargetSite { get; } + + // Methods + bool Equals(object obj); + Exception GetBaseException(); + int GetHashCode(); + void GetObjectData(SerializationInfo info, StreamingContext context); + Type GetType(); + string ToString(); +} + +// Namespace: System +[Serializable] +public struct RuntimeFieldHandle : ISerializable // TypeDefIndex: 59 +{ + // Fields + private IntPtr value; // 0x08 + + // Properties + public IntPtr Value { get; } // 0x0008BD34 + + // Methods + internal void .ctor(IntPtr v); // 0x0008BD10 + private void .ctor(SerializationInfo info, StreamingContext context); // 0x0008BD18 + public void GetObjectData(SerializationInfo info, StreamingContext context); // 0x0008BD3C + public override bool Equals(object obj); // 0x0008BD58 + public bool Equals(RuntimeFieldHandle handle); // 0x0008BD60 + public override int GetHashCode(); // 0x0008BD6C + public static bool op_Equality(RuntimeFieldHandle left, RuntimeFieldHandle right); // 0x0020E750 + public static bool op_Inequality(RuntimeFieldHandle left, RuntimeFieldHandle right); // 0x0020E758 +} + +// Namespace: System +[Serializable] +public struct RuntimeTypeHandle : ISerializable // TypeDefIndex: 60 +{ + // Fields + private IntPtr value; // 0x08 + + // Properties + public IntPtr Value { get; } // 0x0008BE0C + + // Methods + internal void .ctor(IntPtr val); // 0x0008BDE8 + private void .ctor(SerializationInfo info, StreamingContext context); // 0x0008BDF0 + public void GetObjectData(SerializationInfo info, StreamingContext context); // 0x0008BE14 + public override bool Equals(object obj); // 0x0008BE30 + public bool Equals(RuntimeTypeHandle handle); // 0x0008BE38 + public override int GetHashCode(); // 0x0008BE44 + public ModuleHandle GetModuleHandle(); // 0x0008BE50 + public static bool op_Equality(RuntimeTypeHandle left, object right); // 0x0020F2C8 + public static bool op_Inequality(RuntimeTypeHandle left, object right); // 0x0020F35C + public static bool op_Equality(object left, RuntimeTypeHandle right); // 0x0020F3F0 + public static bool op_Inequality(object left, RuntimeTypeHandle right); // 0x0020F484 +} + +// Namespace: System +public sealed class ParamArrayAttribute : Attribute // TypeDefIndex: 61 +{ + // Methods + public void .ctor(); // 0x001B1A3C +} + +// Namespace: System.Runtime.InteropServices +public sealed class OutAttribute : Attribute // TypeDefIndex: 62 +{ + // Methods + public void .ctor(); // 0x002BD43C +} + +// Namespace: System +[Serializable] +public sealed class ObsoleteAttribute : Attribute // TypeDefIndex: 63 +{ + // Fields + private string _message; // 0x08 + private bool _error; // 0x0C + + // Properties + public string Message { get; } // 0x001B0FF0 + public bool IsError { get; } // 0x001B0FF8 + + // Methods + public void .ctor(); // 0x001B0FA0 + public void .ctor(string message); // 0x001B0FA8 + public void .ctor(string message, bool error); // 0x001B0FC8 +} + +// Namespace: System.Runtime.InteropServices +public sealed class DllImportAttribute : Attribute // TypeDefIndex: 64 +{ + // Fields + public CallingConvention CallingConvention; // 0x08 + public CharSet CharSet; // 0x0C + private string Dll; // 0x10 + public string EntryPoint; // 0x14 + public bool ExactSpelling; // 0x18 + public bool PreserveSig; // 0x19 + public bool SetLastError; // 0x1A + public bool BestFitMapping; // 0x1B + public bool ThrowOnUnmappableChar; // 0x1C + + // Properties + public string Value { get; } // 0x002B63F4 + + // Methods + public void .ctor(string dllName); // 0x002B63D4 +} + +// Namespace: System.Runtime.CompilerServices +[Serializable] +public sealed class MethodImplAttribute : Attribute // TypeDefIndex: 65 +{ + // Fields + private MethodImplOptions _val; // 0x08 + public MethodCodeType MethodCodeType; // 0x0C + + // Properties + public MethodImplOptions Value { get; } // 0x0037D43C + + // Methods + public void .ctor(); // 0x0037D3F4 + public void .ctor(short value); // 0x0037D3FC + public void .ctor(MethodImplOptions methodImplOptions); // 0x0037D41C +} + +// Namespace: System.Runtime.InteropServices +public sealed class MarshalAsAttribute : Attribute // TypeDefIndex: 66 +{ + // Fields + private UnmanagedType utype; // 0x08 + public UnmanagedType ArraySubType; // 0x0C + public string MarshalCookie; // 0x10 + public string MarshalType; // 0x14 + public Type MarshalTypeRef; // 0x18 + public VarEnum SafeArraySubType; // 0x1C + public int SizeConst; // 0x20 + public short SizeParamIndex; // 0x24 + public Type SafeArrayUserDefinedSubType; // 0x28 + public int IidParameterIndex; // 0x2C + + // Properties + public UnmanagedType Value { get; } // 0x002BD04C + + // Methods + public void .ctor(short unmanagedType); // 0x002BD00C + public void .ctor(UnmanagedType unmanagedType); // 0x002BD02C +} + +// Namespace: System.Runtime.InteropServices +public sealed class InAttribute : Attribute // TypeDefIndex: 67 +{ + // Methods + public void .ctor(); // 0x002B7178 +} + +// Namespace: System.Runtime.CompilerServices +[Serializable] +public sealed class IndexerNameAttribute : Attribute // TypeDefIndex: 68 +{ + // Methods + public void .ctor(string indexerName); // 0x0037D3A8 +} + +// Namespace: System.Diagnostics +[Serializable] +public sealed class ConditionalAttribute : Attribute // TypeDefIndex: 69 +{ + // Fields + private string myCondition; // 0x08 + + // Properties + public string ConditionString { get; } // 0x004CB26C + + // Methods + public void .ctor(string conditionString); // 0x004CB24C +} + +// Namespace: System.Security.Permissions +[Serializable] +public abstract class SecurityAttribute : Attribute // TypeDefIndex: 70 +{ + // Fields + private SecurityAction m_Action; // 0x08 + private bool m_Unrestricted; // 0x0C + + // Properties + public bool Unrestricted { get; set; } // 0x003AA614 0x003AA61C + public SecurityAction Action { get; set; } // 0x003AA624 0x003AA62C + + // Methods + protected void .ctor(SecurityAction action); // 0x003AA5F4 + public abstract IPermission CreatePermission(); +} + +// Namespace: System.Runtime.CompilerServices +[Serializable] +public sealed class RequiredAttributeAttribute : Attribute // TypeDefIndex: 71 +{ + // Properties + public Type RequiredContract { get; } // 0x0037D454 + + // Methods + public void .ctor(Type requiredContract); // 0x0037D44C +} + +// Namespace: System.Runtime.InteropServices +public sealed class GuidAttribute : Attribute // TypeDefIndex: 72 +{ + // Fields + private string guidValue; // 0x08 + + // Properties + public string Value { get; } // 0x002B70D8 + + // Methods + public void .ctor(string guid); // 0x002B70B8 +} + +// Namespace: System.Reflection +public sealed class AssemblyCultureAttribute : Attribute // TypeDefIndex: 73 +{ + // Fields + private string name; // 0x08 + + // Properties + public string Culture { get; } // 0x001B5848 + + // Methods + public void .ctor(string culture); // 0x001B5828 +} + +// Namespace: System.Reflection +public sealed class AssemblyVersionAttribute : Attribute // TypeDefIndex: 74 +{ + // Fields + private string name; // 0x08 + + // Properties + public string Version { get; } // 0x001B769C + + // Methods + public void .ctor(string version); // 0x001B767C +} + +// Namespace: System.Runtime.InteropServices +public sealed class ComImportAttribute : Attribute // TypeDefIndex: 75 +{ + // Methods + public void .ctor(); // 0x0037F1C4 +} + +// Namespace: System.Runtime.InteropServices +public sealed class CoClassAttribute : Attribute // TypeDefIndex: 76 +{ + // Fields + private Type klass; // 0x08 + + // Properties + public Type CoClass { get; } // 0x0037F0D4 + + // Methods + public void .ctor(Type coClass); // 0x0037F0B4 +} + +// Namespace: System.Runtime.InteropServices +public sealed class OptionalAttribute : Attribute // TypeDefIndex: 77 +{ + // Methods + public void .ctor(); // 0x002BD434 +} + +// Namespace: System.Runtime.InteropServices +public sealed class DefaultCharSetAttribute : Attribute // TypeDefIndex: 78 +{ + // Fields + private CharSet _set; // 0x08 + + // Properties + public CharSet CharSet { get; } // 0x002B627C + + // Methods + public void .ctor(CharSet charSet); // 0x002B625C +} + +// Namespace: System.Runtime.CompilerServices +public sealed class TypeForwardedToAttribute : Attribute // TypeDefIndex: 79 +{ + // Fields + private Type destination; // 0x08 + + // Properties + public Type Destination { get; } // 0x0037E28C + + // Methods + public void .ctor(Type destination); // 0x0037E26C +} + +// Namespace: System.Runtime.CompilerServices +public sealed class FixedBufferAttribute : Attribute // TypeDefIndex: 80 +{ + // Fields + private Type elementType; // 0x08 + private int length; // 0x0C + + // Properties + public Type ElementType { get; } // 0x0037D370 + public int Length { get; } // 0x0037D378 + + // Methods + public void .ctor(Type elementType, int length); // 0x0037D348 +} + +// Namespace: System.Runtime.CompilerServices +[Serializable] +public sealed class CompilerGeneratedAttribute : Attribute // TypeDefIndex: 81 +{ + // Methods + public void .ctor(); // 0x0037D0AC +} + +// Namespace: System.Runtime.CompilerServices +public sealed class InternalsVisibleToAttribute : Attribute // TypeDefIndex: 82 +{ + // Fields + private string assemblyName; // 0x08 + private bool all_visible; // 0x0C + + // Properties + public string AssemblyName { get; } // 0x0037D3DC + public bool AllInternalsVisible { get; set; } // 0x0037D3E4 0x0037D3EC + + // Methods + public void .ctor(string assemblyName); // 0x0037D3B0 +} + +// Namespace: System.Runtime.CompilerServices +[Serializable] +public sealed class RuntimeCompatibilityAttribute : Attribute // TypeDefIndex: 83 +{ + // Fields + private bool wrap_non_exception_throws; // 0x08 + + // Properties + public bool WrapNonExceptionThrows { get; set; } // 0x0037D4E4 0x0037D4EC + + // Methods + public void .ctor(); // 0x0037D4DC +} + +// Namespace: System.Diagnostics +[Serializable] +public sealed class DebuggerHiddenAttribute : Attribute // TypeDefIndex: 84 +{ + // Methods + public void .ctor(); // 0x002D3D28 +} + +// Namespace: System.Runtime.CompilerServices +[Serializable] +public sealed class UnsafeValueTypeAttribute : Attribute // TypeDefIndex: 85 +{ + // Methods + public void .ctor(); // 0x0037E294 +} + +// Namespace: System.Reflection +[Serializable] +public sealed class DefaultMemberAttribute : Attribute // TypeDefIndex: 86 +{ + // Fields + private string member_name; // 0x08 + + // Properties + public string MemberName { get; } // 0x001BCE0C + + // Methods + public void .ctor(string memberName); // 0x001BCDEC +} + +// Namespace: System.Runtime.CompilerServices +[Serializable] +public sealed class DecimalConstantAttribute : Attribute // TypeDefIndex: 87 +{ + // Fields + private byte scale; // 0x08 + private bool sign; // 0x09 + private int hi; // 0x0C + private int mid; // 0x10 + private int low; // 0x14 + + // Properties + public Decimal Value { get; } // 0x00367A88 + + // Methods + public void .ctor(byte scale, byte sign, uint hi, uint mid, uint low); // 0x0037D168 + public void .ctor(byte scale, byte sign, int hi, int mid, int low); // 0x0037D220 +} + +// Namespace: System.Runtime.InteropServices +public sealed class StructLayoutAttribute : Attribute // TypeDefIndex: 88 +{ + // Fields + public CharSet CharSet; // 0x08 + public int Pack; // 0x0C + public int Size; // 0x10 + private LayoutKind lkind; // 0x14 + + // Properties + public LayoutKind Value { get; } // 0x002BE928 + + // Methods + public void .ctor(short layoutKind); // 0x002BE8C0 + public void .ctor(LayoutKind layoutKind); // 0x002BE8F4 +} + +// Namespace: System.Runtime.InteropServices +public sealed class FieldOffsetAttribute : Attribute // TypeDefIndex: 89 +{ + // Fields + private int val; // 0x08 + + // Properties + public int Value { get; } // 0x002B6AE4 + + // Methods + public void .ctor(int offset); // 0x002B6AC4 +} + +// Namespace: System +public struct RuntimeArgumentHandle // TypeDefIndex: 90 +{ + // Fields + internal IntPtr args; // 0x08 + +} + +// Namespace: System +[Serializable] +public delegate void AsyncCallback(IAsyncResult ar); // TypeDefIndex: 91; 0x004F41F0 + +// Namespace: System +public interface IAsyncResult // TypeDefIndex: 92 +{ + // Properties + object AsyncState { get; } + WaitHandle AsyncWaitHandle { get; } + bool CompletedSynchronously { get; } + bool IsCompleted { get; } + +} + +// Namespace: System +public struct TypedReference // TypeDefIndex: 93 +{ + // Fields + private RuntimeTypeHandle type; // 0x08 + private IntPtr value; // 0x0C + private IntPtr klass; // 0x10 + + // Methods + public override bool Equals(object o); // 0x000A7C10 + public override int GetHashCode(); // 0x000A7C20 + public static Type GetTargetType(TypedReference value); // 0x00427004 + public static TypedReference MakeTypedReference(object target, FieldInfo[] flds); // 0x00427084 + public static void SetTypedReference(TypedReference target, object value); // 0x00427210 + public static RuntimeTypeHandle TargetTypeToken(TypedReference value); // 0x004272E8 + public static object ToObject(TypedReference value); // 0x004272EC +} + +// Namespace: System +public struct ArgIterator // TypeDefIndex: 94 +{ + // Fields + private IntPtr sig; // 0x08 + private IntPtr args; // 0x0C + private int next_arg; // 0x10 + private int num_args; // 0x14 + + // Methods + public void .ctor(RuntimeArgumentHandle arglist); // 0x0008C738 + public void .ctor(RuntimeArgumentHandle arglist, void * ptr); // 0x0008C740 + private void Setup(IntPtr argsp, IntPtr start); // 0x0008C748 + public void End(); // 0x0008C750 + public override bool Equals(object o); // 0x0008C75C + public override int GetHashCode(); // 0x0008C76C + public TypedReference GetNextArg(); // 0x0008C778 + private TypedReference IntGetNextArg(); // 0x0008C78C + public TypedReference GetNextArg(RuntimeTypeHandle rth); // 0x0008C7A0 + private TypedReference IntGetNextArg(IntPtr rth); // 0x0008C7B4 + public RuntimeTypeHandle GetNextArgType(); // 0x0008C7C8 + private IntPtr IntGetNextArgType(); // 0x0008C7D0 + public int GetRemainingCount(); // 0x0008C7D8 +} + +// Namespace: System +[Serializable] +public abstract class MarshalByRefObject // TypeDefIndex: 95 +{ + // Fields + [NonSerialized] private ServerIdentity _identity; // 0x08 + + // Properties + internal ServerIdentity ObjectIdentity { get; set; } // 0x001DE6EC 0x001DE6F4 + + // Methods + protected void .ctor(); // 0x001DE5DC + internal Identity GetObjectIdentity(MarshalByRefObject obj, out bool IsClient); // 0x001DE5E4 + public virtual ObjRef CreateObjRef(Type requestedType); // 0x001DE6FC + public object GetLifetimeService(); // 0x001DE7D0 + public virtual object InitializeLifetimeService(); // 0x001DE7E4 + protected MarshalByRefObject MemberwiseClone(bool cloneIdentity); // 0x001DE868 +} + +// Namespace: System +[Serializable] +public struct Nullable`1 // TypeDefIndex: 96 +{ + // Fields + internal T value; // 0x00 + internal bool has_value; // 0x00 + + // Properties + public bool HasValue { get; } + public T Value { get; } + + // Methods + public void .ctor(T value); + public override bool Equals(object other); + private bool Equals(Nullable`1 other); + public override int GetHashCode(); + public T GetValueOrDefault(); + public T GetValueOrDefault(T defaultValue); + public override string ToString(); + private static object Box(Nullable`1 o); + private static Nullable`1 Unbox(object o); + public static Nullable`1 op_Implicit(T value); + public static T op_Explicit(Nullable`1 value); +} + +// Namespace: System.Runtime.CompilerServices +public static class RuntimeHelpers // TypeDefIndex: 97 +{ + // Properties + public static int OffsetToStringData { get; } // 0x0037D5B8 + + // Methods + private static void InitializeArray(Array array, IntPtr fldHandle); // 0x0037D4F4 + public static void InitializeArray(Array array, RuntimeFieldHandle fldHandle); // 0x0037D4F8 + public static int GetHashCode(object o); // 0x0037D5BC + public static bool Equals(object o1, object o2); // 0x0037D5C4 + public static object GetObjectValue(object obj); // 0x0037D690 + private static void RunClassConstructor(IntPtr type); // 0x0037D694 + public static void RunClassConstructor(RuntimeTypeHandle type); // 0x0037D698 + public static void ExecuteCodeWithGuaranteedCleanup(TryCode code, CleanupCode backoutCode, object userData); // 0x0037D76C + public static void PrepareConstrainedRegions(); // 0x0037D770 + public static void PrepareConstrainedRegionsNoOP(); // 0x0037D774 + public static void ProbeForSufficientStack(); // 0x0037D778 + public static void PrepareDelegate(Delegate d); // 0x0037D77C + public static void PrepareMethod(RuntimeMethodHandle method); // 0x0037D824 + public static void PrepareMethod(RuntimeMethodHandle method, RuntimeTypeHandle[] instantiation); // 0x0037D828 + public static void RunModuleConstructor(ModuleHandle module); // 0x0037D82C + public static void RunModuleConstructor(IntPtr module); // 0x0037D940 +} + +// Namespace: +public delegate void TryCode(object userData); // TypeDefIndex: 98; 0x0037DDC4 + +// Namespace: +public delegate void CleanupCode(object userData, bool exceptionThrown); // TypeDefIndex: 99; 0x0037D958 + +// Namespace: +internal static class Consts // TypeDefIndex: 100 +{ + // Fields + public const string MonoVersion = "2.6.5.0"; // 0x00 + public const string MonoCompany = "MONO development team"; // 0x00 + public const string MonoProduct = "MONO Common language infrastructure"; // 0x00 + public const string MonoCopyright = "(c) various MONO Authors"; // 0x00 + public const string FxVersion = "2.0.0.0"; // 0x00 + public const string VsVersion = "8.0.0.0"; // 0x00 + public const string FxFileVersion = "2.0.50727.1433"; // 0x00 + public const string VsFileVersion = "8.0.50727.1433"; // 0x00 + public const string AssemblyI18N = "I18N, Version=2.0.0.0, Culture=neutral, PublicKeyToken=0738eb9f132ed756"; // 0x00 + public const string AssemblyMicrosoft_VisualStudio = "Microsoft.VisualStudio, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + public const string AssemblyMicrosoft_VisualStudio_Web = "Microsoft.VisualStudio.Web, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + public const string AssemblyMicrosoft_VSDesigner = "Microsoft.VSDesigner, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + public const string AssemblyMono_Http = "Mono.Http, Version=2.0.0.0, Culture=neutral, PublicKeyToken=0738eb9f132ed756"; // 0x00 + public const string AssemblyMono_Posix = "Mono.Posix, Version=2.0.0.0, Culture=neutral, PublicKeyToken=0738eb9f132ed756"; // 0x00 + public const string AssemblyMono_Security = "Mono.Security, Version=2.0.0.0, Culture=neutral, PublicKeyToken=0738eb9f132ed756"; // 0x00 + public const string AssemblyMono_Messaging_RabbitMQ = "Mono.Messaging.RabbitMQ, Version=2.0.0.0, Culture=neutral, PublicKeyToken=0738eb9f132ed756"; // 0x00 + public const string AssemblyCorlib = "mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"; // 0x00 + public const string AssemblySystem = "System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"; // 0x00 + public const string AssemblySystem_Data = "System.Data, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"; // 0x00 + public const string AssemblySystem_Design = "System.Design, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + public const string AssemblySystem_DirectoryServices = "System.DirectoryServices, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + public const string AssemblySystem_Drawing = "System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + public const string AssemblySystem_Drawing_Design = "System.Drawing.Design, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + public const string AssemblySystem_Messaging = "System.Messaging, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + public const string AssemblySystem_Security = "System.Security, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + public const string AssemblySystem_ServiceProcess = "System.ServiceProcess, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + public const string AssemblySystem_Web = "System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + public const string AssemblySystem_Windows_Forms = "System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"; // 0x00 + public const string AssemblySystem_Core = "System.Core, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"; // 0x00 + +} + +// Namespace: +internal sealed class Locale // TypeDefIndex: 101 +{ + // Methods + private void .ctor(); // 0x003EC438 + public static string GetText(string msg); // 0x003EC440 + public static string GetText(string fmt, object[] args); // 0x003EC444 +} + +// Namespace: System +internal class MonoTODOAttribute : Attribute // TypeDefIndex: 102 +{ + // Fields + private string comment; // 0x08 + + // Properties + public string Comment { get; } // 0x001E5774 + + // Methods + public void .ctor(); // 0x001E576C + public void .ctor(string comment); // 0x001E4688 +} + +// Namespace: System +internal class MonoDocumentationNoteAttribute : MonoTODOAttribute // TypeDefIndex: 103 +{ + // Methods + public void .ctor(string comment); // 0x001E4668 +} + +// Namespace: System +internal class MonoExtensionAttribute : MonoTODOAttribute // TypeDefIndex: 104 +{ + // Methods + public void .ctor(string comment); // 0x001E56E4 +} + +// Namespace: System +internal class MonoInternalNoteAttribute : MonoTODOAttribute // TypeDefIndex: 105 +{ + // Methods + public void .ctor(string comment); // 0x001E5704 +} + +// Namespace: System +internal class MonoLimitationAttribute : MonoTODOAttribute // TypeDefIndex: 106 +{ + // Methods + public void .ctor(string comment); // 0x001E5724 +} + +// Namespace: System +internal class MonoNotSupportedAttribute : MonoTODOAttribute // TypeDefIndex: 107 +{ + // Methods + public void .ctor(string comment); // 0x001E574C +} + +// Namespace: Microsoft.Win32.SafeHandles +public abstract class CriticalHandleMinusOneIsInvalid : CriticalHandle, IDisposable // TypeDefIndex: 108 +{ + // Properties + public override bool IsInvalid { get; } // 0x003F4F94 + + // Methods + protected void .ctor(); // 0x003F4F68 +} + +// Namespace: Microsoft.Win32.SafeHandles +public abstract class CriticalHandleZeroOrMinusOneIsInvalid : CriticalHandle, IDisposable // TypeDefIndex: 109 +{ + // Properties + public override bool IsInvalid { get; } // 0x003F4FEC + + // Methods + protected void .ctor(); // 0x003F4FC0 +} + +// Namespace: Microsoft.Win32.SafeHandles +public sealed class SafeFileHandle : SafeHandleZeroOrMinusOneIsInvalid // TypeDefIndex: 110 +{ + // Methods + public void .ctor(IntPtr preexistingHandle, bool ownsHandle); // 0x003F5074 + internal void .ctor(); // 0x003F50E4 + protected override bool ReleaseHandle(); // 0x003F5114 +} + +// Namespace: Microsoft.Win32.SafeHandles +public abstract class SafeHandleMinusOneIsInvalid : SafeHandle, IDisposable // TypeDefIndex: 111 +{ + // Properties + public override bool IsInvalid { get; } // 0x003F51F4 + + // Methods + protected void .ctor(bool ownsHandle); // 0x003F51C0 +} + +// Namespace: Microsoft.Win32.SafeHandles +public abstract class SafeHandleZeroOrMinusOneIsInvalid : SafeHandle, IDisposable // TypeDefIndex: 112 +{ + // Properties + public override bool IsInvalid { get; } // 0x003F5220 + + // Methods + protected void .ctor(bool ownsHandle); // 0x003F50B0 +} + +// Namespace: Microsoft.Win32.SafeHandles +public sealed class SafeWaitHandle : SafeHandleZeroOrMinusOneIsInvalid // TypeDefIndex: 113 +{ + // Methods + public void .ctor(IntPtr existingHandle, bool ownsHandle); // 0x003F527C + protected override bool ReleaseHandle(); // 0x003F52B8 +} + +// Namespace: Microsoft.Win32 +internal interface IRegistryApi // TypeDefIndex: 114 +{ + // Methods + RegistryKey CreateSubKey(RegistryKey rkey, string keyname); + RegistryKey OpenRemoteBaseKey(RegistryHive hKey, string machineName); + RegistryKey OpenSubKey(RegistryKey rkey, string keyname, bool writtable); + void Flush(RegistryKey rkey); + void Close(RegistryKey rkey); + object GetValue(RegistryKey rkey, string name, object default_value, RegistryValueOptions options); + void SetValue(RegistryKey rkey, string name, object value); + int SubKeyCount(RegistryKey rkey); + int ValueCount(RegistryKey rkey); + void DeleteValue(RegistryKey rkey, string value, bool throw_if_missing); + void DeleteKey(RegistryKey rkey, string keyName, bool throw_if_missing); + string[] GetSubKeyNames(RegistryKey rkey); + string[] GetValueNames(RegistryKey rkey); + string ToString(RegistryKey rkey); + void SetValue(RegistryKey rkey, string name, object value, RegistryValueKind valueKind); +} + +// Namespace: Microsoft.Win32 +public static class Registry // TypeDefIndex: 115 +{ + // Fields + public static readonly RegistryKey ClassesRoot; // 0x00 + public static readonly RegistryKey CurrentConfig; // 0x04 + public static readonly RegistryKey CurrentUser; // 0x08 + public static readonly RegistryKey DynData; // 0x0C + public static readonly RegistryKey LocalMachine; // 0x10 + public static readonly RegistryKey PerformanceData; // 0x14 + public static readonly RegistryKey Users; // 0x18 + private static Dictionary`2 <>f__switch$map0; // 0x1C + + // Methods + private static void .cctor(); // 0x003F1B48 + private static RegistryKey ToKey(string keyName, bool setting); // 0x003F1DB8 + public static void SetValue(string keyName, string valueName, object value); // 0x003F2900 + public static void SetValue(string keyName, string valueName, object value, RegistryValueKind valueKind); // 0x003F2C7C + public static object GetValue(string keyName, string valueName, object defaultValue); // 0x003F3014 +} + +// Namespace: Microsoft.Win32 +[Serializable] +public enum RegistryHive // TypeDefIndex: 116 +{ + ClassesRoot = -2147483648, + CurrentUser = -2147483647, + LocalMachine = -2147483646, + Users = -2147483645, + PerformanceData = -2147483644, + CurrentConfig = -2147483643, + DynData = -2147483642 +} + +// Namespace: Microsoft.Win32 +public sealed class RegistryKey : MarshalByRefObject, IDisposable // TypeDefIndex: 117 +{ + // Fields + private object handle; // 0x0C + private object hive; // 0x10 + private readonly string qname; // 0x14 + private readonly bool isRemoteRoot; // 0x18 + private readonly bool isWritable; // 0x19 + private static readonly IRegistryApi RegistryApi; // 0x00 + + // Properties + public string Name { get; } // 0x003F379C + public int SubKeyCount { get; } // 0x003F38C0 + public int ValueCount { get; } // 0x003F3A90 + internal bool IsRoot { get; } // 0x003EEBE4 + private bool IsWritable { get; } // 0x003F4E3C + internal RegistryHive Hive { get; } // 0x003EEBF4 + internal object Handle { get; } // 0x003F4E44 + + // Methods + internal void .ctor(RegistryHive hiveId); // 0x003F1D74 + internal void .ctor(RegistryHive hiveId, IntPtr keyHandle, bool remoteRoot); // 0x003F3204 + internal void .ctor(object data, string keyName, bool writable); // 0x003EE224 + private static void .cctor(); // 0x003F3440 + private void System.IDisposable.Dispose(); // 0x003F35D4 + protected override void Finalize(); // 0x003F3738 + public void Flush(); // 0x003F37A4 + public void Close(); // 0x003F35F4 + public void SetValue(string name, object value); // 0x003F2A80 + public void SetValue(string name, object value, RegistryValueKind valueKind); // 0x003F2E0C + public RegistryKey OpenSubKey(string name); // 0x003F3C70 + public RegistryKey OpenSubKey(string name, bool writable); // 0x003F25B8 + public object GetValue(string name); // 0x003F3C78 + public object GetValue(string name, object defaultValue); // 0x003F30BC + public object GetValue(string name, object defaultValue, RegistryValueOptions options); // 0x003F3C80 + public RegistryValueKind GetValueKind(string name); // 0x003F3DC8 + public RegistryKey CreateSubKey(string subkey); // 0x003F2760 + public RegistryKey CreateSubKey(string subkey, RegistryKeyPermissionCheck permissionCheck); // 0x003F3EF8 + public RegistryKey CreateSubKey(string subkey, RegistryKeyPermissionCheck permissionCheck, RegistrySecurity registrySecurity); // 0x003F3F80 + public void DeleteSubKey(string subkey); // 0x003F4008 + public void DeleteSubKey(string subkey, bool throwOnMissingSubKey); // 0x003F4010 + public void DeleteSubKeyTree(string subkey); // 0x003F4288 + public void DeleteValue(string name); // 0x003F44AC + public void DeleteValue(string name, bool throwOnMissingValue); // 0x003F44B4 + public RegistrySecurity GetAccessControl(); // 0x003F46A4 + public RegistrySecurity GetAccessControl(AccessControlSections includeSections); // 0x003F472C + public string[] GetSubKeyNames(); // 0x003F47B4 + public string[] GetValueNames(); // 0x003F48D8 + public static RegistryKey OpenRemoteBaseKey(RegistryHive hKey, string machineName); // 0x003F49FC + public RegistryKey OpenSubKey(string name, RegistryKeyPermissionCheck permissionCheck); // 0x003F4B80 + public RegistryKey OpenSubKey(string name, RegistryKeyPermissionCheck permissionCheck, RegistryRights rights); // 0x003F4C08 + public void SetAccessControl(RegistrySecurity registrySecurity); // 0x003F4C90 + public override string ToString(); // 0x003F4D18 + private void AssertKeyStillValid(); // 0x003F39E4 + private void AssertKeyNameNotNull(string subKeyName); // 0x003F3E50 + private void AssertKeyNameLength(string name); // 0x003F3BB4 + private void DeleteChildKeysAndValues(); // 0x003F4384 + internal static string DecodeString(byte[] data); // 0x003F4E4C + internal static IOException CreateMarkedForDeletionException(); // 0x003F1AAC + private static string GetHiveName(RegistryHive hive); // 0x003F32F4 +} + +// Namespace: Microsoft.Win32 +public enum RegistryKeyPermissionCheck // TypeDefIndex: 118 +{ + Default = 0, + ReadSubTree = 1, + ReadWriteSubTree = 2 +} + +// Namespace: Microsoft.Win32 +public enum RegistryValueKind // TypeDefIndex: 119 +{ + Unknown = 0, + String = 1, + ExpandString = 2, + Binary = 3, + DWord = 4, + MultiString = 7, + QWord = 11 +} + +// Namespace: Microsoft.Win32 +public enum RegistryValueOptions // TypeDefIndex: 120 +{ + None = 0, + DoNotExpandEnvironmentNames = 1 +} + +// Namespace: Microsoft.Win32 +internal class ExpandString // TypeDefIndex: 121 +{ + // Fields + private string value; // 0x08 + + // Methods + public void .ctor(string s); // 0x003EC4D0 + public override string ToString(); // 0x003EC4F0 + public string Expand(); // 0x003EC4F8 +} + +// Namespace: Microsoft.Win32 +internal class KeyHandler // TypeDefIndex: 122 +{ + // Fields + private static Hashtable key_to_handler; // 0x00 + private static Hashtable dir_to_handler; // 0x04 + public string Dir; // 0x08 + private Hashtable values; // 0x0C + private string file; // 0x10 + private bool dirty; // 0x14 + private static Dictionary`2 <>f__switch$map1; // 0x08 + + // Properties + public int ValueCount { get; } // 0x003F18FC + public bool IsMarkedForDeletion { get; } // 0x003EFF24 + private static string UserStore { get; } // 0x003EECC4 + private static string MachineStore { get; } // 0x003EED64 + + // Methods + private void .ctor(RegistryKey rkey, string basedir); // 0x003EC72C + private static void .cctor(); // 0x003ED1BC + public void Load(); // 0x003EC8DC + private void LoadKey(SecurityElement se); // 0x003ED2A4 + public RegistryKey Ensure(RegistryKey rkey, string extra, bool writable); // 0x003EDDCC + public RegistryKey Probe(RegistryKey rkey, string extra, bool writable); // 0x003EE254 + private static string CombineName(RegistryKey rkey, string extra); // 0x003EE124 + public static KeyHandler Lookup(RegistryKey rkey, bool createNonExisting); // 0x003EE678 + public static void Drop(RegistryKey rkey); // 0x003EEEAC + public static void Drop(string dir); // 0x003EF4A8 + public object GetValue(string name, RegistryValueOptions options); // 0x003EFDAC + public void SetValue(string name, object value); // 0x003EFFE4 + public string[] GetValueNames(); // 0x003F0384 + public void SetValue(string name, object value, RegistryValueKind valueKind); // 0x003F053C + private void SetDirty(); // 0x003F01F8 + public void DirtyTimeout(object state); // 0x003F09AC + public void Flush(); // 0x003F09B0 + public bool ValueExists(string name); // 0x003F1834 + public void RemoveValue(string name); // 0x003F19FC + protected override void Finalize(); // 0x003F1A48 + private void Save(); // 0x003F0ABC + private void AssertNotMarkedForDeletion(); // 0x003F016C +} + +// Namespace: Microsoft.Win32 +internal class UnixRegistryApi : IRegistryApi // TypeDefIndex: 123 +{ + // Methods + public void .ctor(); // 0x003F35CC + private static string ToUnix(string keyname); // 0x003F52D4 + private static bool IsWellKnownKey(string parentKeyName, string keyname); // 0x003F5350 + public RegistryKey CreateSubKey(RegistryKey rkey, string keyname); // 0x003F557C + public RegistryKey OpenRemoteBaseKey(RegistryHive hKey, string machineName); // 0x003F5688 + public RegistryKey OpenSubKey(RegistryKey rkey, string keyname, bool writable); // 0x003F5710 + public void Flush(RegistryKey rkey); // 0x003F5810 + public void Close(RegistryKey rkey); // 0x003F58A0 + public object GetValue(RegistryKey rkey, string name, object default_value, RegistryValueOptions options); // 0x003F5920 + public void SetValue(RegistryKey rkey, string name, object value); // 0x003F59E8 + public void SetValue(RegistryKey rkey, string name, object value, RegistryValueKind valueKind); // 0x003F5ABC + public int SubKeyCount(RegistryKey rkey); // 0x003F5B9C + public int ValueCount(RegistryKey rkey); // 0x003F5C80 + public void DeleteValue(RegistryKey rkey, string name, bool throw_if_missing); // 0x003F5D44 + public void DeleteKey(RegistryKey rkey, string keyname, bool throw_if_missing); // 0x003F5E5C + public string[] GetSubKeyNames(RegistryKey rkey); // 0x003F6044 + public string[] GetValueNames(RegistryKey rkey); // 0x003F620C + public string ToString(RegistryKey rkey); // 0x003F62D0 + private RegistryKey CreateSubKey(RegistryKey rkey, string keyname, bool writable); // 0x003F5598 +} + +// Namespace: Microsoft.Win32 +internal class Win32RegistryApi : IRegistryApi // TypeDefIndex: 124 +{ + // Fields + private const int OpenRegKeyRead = 131097; // 0x00 + private const int OpenRegKeyWrite = 131078; // 0x00 + private const int Int32ByteSize = 4; // 0x00 + private const int BufferMaxLength = 1024; // 0x00 + private readonly int NativeBytesPerCharacter; // 0x08 + + // Methods + public void .ctor(); // 0x003F352C + private static extern int RegCreateKey(IntPtr keyBase, string keyName, out IntPtr keyHandle); // 0x003F62F8 + private static extern int RegCloseKey(IntPtr keyHandle); // 0x003F6410 + private static extern int RegConnectRegistry(string machineName, IntPtr hKey, out IntPtr keyHandle); // 0x003F6510 + private static extern int RegFlushKey(IntPtr keyHandle); // 0x003F6638 + private static extern int RegOpenKeyEx(IntPtr keyBase, string keyName, IntPtr reserved, int access, out IntPtr keyHandle); // 0x003F6738 + private static extern int RegDeleteKey(IntPtr keyHandle, string valueName); // 0x003F6860 + private static extern int RegDeleteValue(IntPtr keyHandle, string valueName); // 0x003F6970 + private static extern int RegEnumKey(IntPtr keyBase, int index, StringBuilder nameBuffer, int bufferLength); // 0x003F6A88 + private static extern int RegEnumValue(IntPtr keyBase, int index, StringBuilder nameBuffer, int nameLength, IntPtr reserved, RegistryValueKind type, IntPtr data, IntPtr dataLength); // 0x003F6BC8 + private static extern int RegSetValueEx(IntPtr keyBase, string valueName, IntPtr reserved, RegistryValueKind type, string data, int rawDataLength); // 0x003F6D30 + private static extern int RegSetValueEx(IntPtr keyBase, string valueName, IntPtr reserved, RegistryValueKind type, byte[] rawData, int rawDataLength); // 0x003F6E38 + private static extern int RegSetValueEx(IntPtr keyBase, string valueName, IntPtr reserved, RegistryValueKind type, int data, int rawDataLength); // 0x003F6F40 + private static extern int RegQueryValueEx(IntPtr keyBase, string valueName, IntPtr reserved, RegistryValueKind type, IntPtr zero, int dataSize); // 0x003F7040 + private static extern int RegQueryValueEx(IntPtr keyBase, string valueName, IntPtr reserved, RegistryValueKind type, out byte[] data, int dataSize); // 0x003F7140 + private static extern int RegQueryValueEx(IntPtr keyBase, string valueName, IntPtr reserved, RegistryValueKind type, int data, int dataSize); // 0x003F72D8 + private static IntPtr GetHandle(RegistryKey key); // 0x003F73D4 + private static bool IsHandleValid(RegistryKey key); // 0x003F7484 + public object GetValue(RegistryKey rkey, string name, object defaultValue, RegistryValueOptions options); // 0x003F74B0 + public void SetValue(RegistryKey rkey, string name, object value, RegistryValueKind valueKind); // 0x003F7A50 + public void SetValue(RegistryKey rkey, string name, object value); // 0x003F8070 + private int GetBinaryValue(RegistryKey rkey, string name, RegistryValueKind type, out byte[] data, int size); // 0x003F79A8 + public int SubKeyCount(RegistryKey rkey); // 0x003F8618 + public int ValueCount(RegistryKey rkey); // 0x003F8738 + public RegistryKey OpenRemoteBaseKey(RegistryHive hKey, string machineName); // 0x003F8894 + public RegistryKey OpenSubKey(RegistryKey rkey, string keyName, bool writable); // 0x003F895C + public void Flush(RegistryKey rkey); // 0x003F8B24 + public void Close(RegistryKey rkey); // 0x003F8B5C + public RegistryKey CreateSubKey(RegistryKey rkey, string keyName); // 0x003F8B94 + public void DeleteKey(RegistryKey rkey, string keyName, bool shouldThrowWhenKeyMissing); // 0x003F8CC4 + public void DeleteValue(RegistryKey rkey, string value, bool shouldThrowWhenKeyMissing); // 0x003F8DE0 + public string[] GetSubKeyNames(RegistryKey rkey); // 0x003F8F04 + public string[] GetValueNames(RegistryKey rkey); // 0x003F912C + private void GenerateException(int errorCode); // 0x003F7850 + public string ToString(RegistryKey rkey); // 0x003F93B0 + internal static string CombineName(RegistryKey rkey, string localName); // 0x003F8A74 +} + +// Namespace: Microsoft.Win32 +internal class Win32ResultCode // TypeDefIndex: 125 +{ + // Fields + public const int Success = 0; // 0x00 + public const int FileNotFound = 2; // 0x00 + public const int AccessDenied = 5; // 0x00 + public const int InvalidParameter = 87; // 0x00 + public const int MoreData = 234; // 0x00 + public const int NetworkPathNotFound = 53; // 0x00 + public const int NoMoreEntries = 259; // 0x00 + public const int MarkedForDeletion = 1018; // 0x00 + + // Methods + public void .ctor(); // 0x003F93D4 +} + +// Namespace: Mono.Globalization.Unicode +internal class CodePointIndexer // TypeDefIndex: 126 +{ + // Fields + private readonly TableRange[] ranges; // 0x08 + public readonly int TotalCount; // 0x0C + private int defaultIndex; // 0x10 + private int defaultCP; // 0x14 + + // Methods + public void .ctor(int[] starts, int[] ends, int defaultIndex, int defaultCP); // 0x003FEBFC + public static Array CompressArray(Array source, Type type, CodePointIndexer indexer); // 0x003FEF04 + public int ToIndex(int cp); // 0x003FF0B8 + public int ToCodePoint(int i); // 0x003FF200 +} + +// Namespace: +[Serializable] +internal struct TableRange // TypeDefIndex: 127 +{ + // Fields + public readonly int Start; // 0x08 + public readonly int End; // 0x0C + public readonly int Count; // 0x10 + public readonly int IndexStart; // 0x14 + public readonly int IndexEnd; // 0x18 + + // Methods + public void .ctor(int start, int end, int indexStart); // 0x000A7708 +} + +// Namespace: Mono.Globalization.Unicode +internal class TailoringInfo // TypeDefIndex: 128 +{ + // Fields + public readonly int LCID; // 0x08 + public readonly int TailoringIndex; // 0x0C + public readonly int TailoringCount; // 0x10 + public readonly bool FrenchSort; // 0x14 + + // Methods + public void .ctor(int lcid, int tailoringIndex, int tailoringCount, bool frenchSort); // 0x0044B8D4 +} + +// Namespace: Mono.Globalization.Unicode +internal class Contraction // TypeDefIndex: 129 +{ + // Fields + public readonly char[] Source; // 0x08 + public readonly string Replacement; // 0x0C + public readonly byte[] SortKey; // 0x10 + + // Methods + public void .ctor(char[] source, string replacement, byte[] sortkey); // 0x003FF348 +} + +// Namespace: Mono.Globalization.Unicode +internal class ContractionComparer : IComparer // TypeDefIndex: 130 +{ + // Fields + public static readonly ContractionComparer Instance; // 0x00 + + // Methods + public void .ctor(); // 0x003FF378 + private static void .cctor(); // 0x003FF380 + public int Compare(object o1, object o2); // 0x003FF3F4 +} + +// Namespace: Mono.Globalization.Unicode +internal class Level2Map // TypeDefIndex: 131 +{ + // Fields + public byte Source; // 0x08 + public byte Replace; // 0x09 + + // Methods + public void .ctor(byte source, byte replace); // 0x003FF604 +} + +// Namespace: Mono.Globalization.Unicode +internal class Level2MapComparer : IComparer // TypeDefIndex: 132 +{ + // Fields + public static readonly Level2MapComparer Instance; // 0x00 + + // Methods + public void .ctor(); // 0x003FF62C + private static void .cctor(); // 0x003FF634 + public int Compare(object o1, object o2); // 0x003FF6A8 +} + +// Namespace: Mono.Globalization.Unicode +internal class MSCompatUnicodeTable // TypeDefIndex: 133 +{ + // Fields + private const int ResourceVersionSize = 1; // 0x00 + public static int MaxExpansionLength; // 0x00 + private static readonly void * ignorableFlags; // 0x04 + private static readonly void * categories; // 0x08 + private static readonly void * level1; // 0x0C + private static readonly void * level2; // 0x10 + private static readonly void * level3; // 0x14 + private static void * cjkCHScategory; // 0x18 + private static void * cjkCHTcategory; // 0x1C + private static void * cjkJAcategory; // 0x20 + private static void * cjkKOcategory; // 0x24 + private static void * cjkCHSlv1; // 0x28 + private static void * cjkCHTlv1; // 0x2C + private static void * cjkJAlv1; // 0x30 + private static void * cjkKOlv1; // 0x34 + private static void * cjkKOlv2; // 0x38 + private static readonly char[] tailoringArr; // 0x3C + private static readonly TailoringInfo[] tailoringInfos; // 0x40 + private static object forLock; // 0x44 + public static readonly bool isReady; // 0x48 + private static Dictionary`2 <>f__switch$map2; // 0x4C + private static Dictionary`2 <>f__switch$map3; // 0x50 + private static Dictionary`2 <>f__switch$map4; // 0x54 + + // Properties + public static bool IsReady { get; } // 0x0040198C + + // Methods + public void .ctor(); // 0x003FF7C4 + private static void .cctor(); // 0x003FF7CC + public static TailoringInfo GetTailoringInfo(int lcid); // 0x003FFCBC + public static void BuildTailoringTables(CultureInfo culture, TailoringInfo t, Contraction[] contractions, Level2Map[] diacriticals); // 0x003FFE9C + private static void SetCJKReferences(string name, CodePointIndexer cjkIndexer, void * catTable, void * lv1Table, CodePointIndexer lv2Indexer, void * lv2Table); // 0x00400738 + public static byte Category(int cp); // 0x00400D24 + public static byte Level1(int cp); // 0x00400E18 + public static byte Level2(int cp); // 0x00400F0C + public static byte Level3(int cp); // 0x00401000 + public static bool IsSortable(string s); // 0x004010F4 + public static bool IsSortable(int cp); // 0x004011C0 + public static bool IsIgnorable(int cp); // 0x004012B0 + public static bool IsIgnorable(int cp, byte flag); // 0x00401334 + public static bool IsIgnorableSymbol(int cp); // 0x004014B0 + public static bool IsIgnorableNonSpacing(int cp); // 0x00401534 + public static int ToKanaTypeInsensitive(int i); // 0x004015B8 + public static int ToWidthCompat(int i); // 0x004015D0 + public static bool HasSpecialWeight(char c); // 0x00401768 + public static byte GetJapaneseDashType(char c); // 0x004017F4 + public static bool IsHalfWidthKana(char c); // 0x0040185C + public static bool IsHiragana(char c); // 0x00401874 + public static bool IsJapaneseSmallLetter(char c); // 0x00401890 + private static IntPtr GetResource(string name); // 0x003FFC14 + private static uint UInt32FromBytePtr(void * raw, uint idx); // 0x003FFCB4 + public static void FillCJK(string culture, CodePointIndexer cjkIndexer, void * catTable, void * lv1Table, CodePointIndexer lv2Indexer, void * lv2Table); // 0x00401A18 + private static void FillCJKCore(string culture, CodePointIndexer cjkIndexer, void * catTable, void * lv1Table, CodePointIndexer cjkLv2Indexer, void * lv2Table); // 0x00401B8C +} + +// Namespace: Mono.Globalization.Unicode +internal class MSCompatUnicodeTableUtil // TypeDefIndex: 134 +{ + // Fields + public const byte ResourceVersion = 3; // 0x00 + public static readonly CodePointIndexer Ignorable; // 0x00 + public static readonly CodePointIndexer Category; // 0x04 + public static readonly CodePointIndexer Level1; // 0x08 + public static readonly CodePointIndexer Level2; // 0x0C + public static readonly CodePointIndexer Level3; // 0x10 + public static readonly CodePointIndexer CjkCHS; // 0x14 + public static readonly CodePointIndexer Cjk; // 0x18 + + // Methods + public void .ctor(); // 0x00402704 + private static void .cctor(); // 0x0040270C +} + +// Namespace: Mono.Globalization.Unicode +internal enum NormalizationCheck // TypeDefIndex: 135 +{ + Yes = 0, + No = 1, + Maybe = 2 +} + +// Namespace: Mono.Globalization.Unicode +internal class Normalization // TypeDefIndex: 136 +{ + // Fields + public const int NoNfd = 1; // 0x00 + public const int NoNfkd = 2; // 0x00 + public const int NoNfc = 4; // 0x00 + public const int MaybeNfc = 8; // 0x00 + public const int NoNfkc = 16; // 0x00 + public const int MaybeNfkc = 32; // 0x00 + public const int FullCompositionExclusion = 64; // 0x00 + public const int IsUnsafe = 128; // 0x00 + private const int HangulSBase = 44032; // 0x00 + private const int HangulLBase = 4352; // 0x00 + private const int HangulVBase = 4449; // 0x00 + private const int HangulTBase = 4519; // 0x00 + private const int HangulLCount = 19; // 0x00 + private const int HangulVCount = 21; // 0x00 + private const int HangulTCount = 28; // 0x00 + private const int HangulNCount = 588; // 0x00 + private const int HangulSCount = 11172; // 0x00 + private static void * props; // 0x00 + private static void * mappedChars; // 0x04 + private static void * charMapIndex; // 0x08 + private static void * helperIndex; // 0x0C + private static void * mapIdxToComposite; // 0x10 + private static void * combiningClass; // 0x14 + private static object forLock; // 0x18 + public static readonly bool isReady; // 0x1C + + // Properties + public static bool IsReady { get; } // 0x00405568 + + // Methods + public void .ctor(); // 0x00402E50 + private static void .cctor(); // 0x00402E58 + private static uint PropValue(int cp); // 0x00403094 + private static int CharMapIdx(int cp); // 0x00403208 + private static int GetNormalizedStringLength(int ch); // 0x00403380 + private static byte GetCombiningClass(int c); // 0x004034B4 + private static int GetPrimaryCompositeFromMapIndex(int src); // 0x004035A8 + private static int GetPrimaryCompositeHelperIndex(int cp); // 0x004036A0 + private static int GetPrimaryCompositeCharIndex(object chars, int start); // 0x00403798 + private static string Compose(string source, int checkType); // 0x00403BF0 + private static StringBuilder Combine(string source, int start, int checkType); // 0x00403EAC + private static bool CanBePrimaryComposite(int i); // 0x00404588 + private static void Combine(StringBuilder sb, int start, int checkType); // 0x00404020 + private static int GetPrimaryCompositeMapIndex(object o, int cur, int bufferPos); // 0x0040464C + private static string Decompose(string source, int checkType); // 0x00404758 + private static void Decompose(string source, StringBuilder sb, int checkType); // 0x00403D24 + private static void ReorderCanonical(string src, StringBuilder sb, int start); // 0x00404B00 + private static void DecomposeChar(StringBuilder sb, int[] buf, string s, int i, int start); // 0x00404810 + public static NormalizationCheck QuickCheck(char c, int type); // 0x004043D8 + private static bool GetCanonicalHangul(int s, int[] buf, int bufIdx); // 0x00405078 + public static void GetCanonical(int c, int[] buf, int bufIdx); // 0x00404E9C + public static bool IsNormalized(string source, int type); // 0x004051C4 + public static string Normalize(string source, int type); // 0x00405498 + private static void load_normalization_resource(out IntPtr props, out IntPtr mappedChars, out IntPtr charMapIndex, out IntPtr helperIndex, out IntPtr mapIdxToComposite, out IntPtr combiningClass); // 0x00403090 +} + +// Namespace: Mono.Globalization.Unicode +internal class NormalizationTableUtil // TypeDefIndex: 137 +{ + // Fields + public static readonly CodePointIndexer Prop; // 0x00 + public static readonly CodePointIndexer Map; // 0x04 + public static readonly CodePointIndexer Combining; // 0x08 + public static readonly CodePointIndexer Composite; // 0x0C + public static readonly CodePointIndexer Helper; // 0x10 + + // Properties + public static int PropCount { get; } // 0x00405A74 + public static int MapCount { get; } // 0x00405D18 + + // Methods + public void .ctor(); // 0x004055F4 + private static void .cctor(); // 0x004055FC + public static int PropIdx(int cp); // 0x0040315C + public static int PropCP(int index); // 0x004059C8 + public static int MapIdx(int cp); // 0x004032D4 + public static int MapCP(int index); // 0x00405B14 + public static int CbIdx(int cp); // 0x00405BC0 + public static int CbCP(int index); // 0x00405C6C +} + +// Namespace: Mono.Globalization.Unicode +internal class SimpleCollator // TypeDefIndex: 138 +{ + // Fields + private const int UnsafeFlagLength = 96; // 0x00 + private static bool QuickCheckDisabled; // 0x00 + private static SimpleCollator invariant; // 0x04 + private readonly TextInfo textInfo; // 0x08 + private readonly bool frenchSort; // 0x0C + private readonly void * cjkCatTable; // 0x10 + private readonly void * cjkLv1Table; // 0x14 + private readonly CodePointIndexer cjkIndexer; // 0x18 + private readonly void * cjkLv2Table; // 0x1C + private readonly CodePointIndexer cjkLv2Indexer; // 0x20 + private readonly int lcid; // 0x24 + private readonly Contraction[] contractions; // 0x28 + private readonly Level2Map[] level2Maps; // 0x2C + private readonly byte[] unsafeFlags; // 0x30 + + // Methods + public void .ctor(CultureInfo culture); // 0x00405DB8 + private static void .cctor(); // 0x004063B8 + private void SetCJKTable(CultureInfo culture, CodePointIndexer cjkIndexer, void * catTable, void * lv1Table, CodePointIndexer lv2Indexer, void * lv2Table); // 0x004062AC + private static CultureInfo GetNeutralCulture(CultureInfo info); // 0x004064E0 + private byte Category(int cp); // 0x0040657C + private byte Level1(int cp); // 0x00406654 + private byte Level2(int cp, ExtenderType ext); // 0x0040672C + private static bool IsHalfKana(int cp, CompareOptions opt); // 0x0040695C + private Contraction GetContraction(string s, int start, int end); // 0x004069F8 + private Contraction GetContraction(string s, int start, int end, Contraction[] clist); // 0x00406AF4 + private Contraction GetTailContraction(string s, int start, int end); // 0x00406C9C + private Contraction GetTailContraction(string s, int start, int end, Contraction[] clist); // 0x00406D98 + private Contraction GetContraction(char c); // 0x00407080 + private Contraction GetContraction(char c, Contraction[] clist); // 0x00407158 + private int FilterOptions(int i, CompareOptions opt); // 0x00407270 + private ExtenderType GetExtenderType(int i); // 0x004073D8 + private static byte ToDashTypeValue(ExtenderType ext, CompareOptions opt); // 0x004074D8 + private int FilterExtender(int i, ExtenderType ext, CompareOptions opt); // 0x00407510 + private static bool IsIgnorable(int i, CompareOptions opt); // 0x00407750 + private bool IsSafe(int i); // 0x004077F8 + public SortKey GetSortKey(string s); // 0x00407890 + public SortKey GetSortKey(string s, CompareOptions options); // 0x00407898 + public SortKey GetSortKey(string s, int start, int length, CompareOptions options); // 0x004078E0 + private void GetSortKey(string s, int start, int end, SortKeyBuffer buf, CompareOptions opt); // 0x00407A24 + private void FillSortKeyRaw(int i, ExtenderType ext, SortKeyBuffer buf, CompareOptions opt); // 0x00407F10 + private void FillSurrogateSortKeyRaw(int i, SortKeyBuffer buf); // 0x00408418 + public int Compare(string s1, string s2); // 0x004084EC + public int Compare(string s1, string s2, CompareOptions options); // 0x00408508 + private int CompareOrdinal(string s1, int idx1, int len1, string s2, int idx2, int len2); // 0x00408750 + private int CompareQuick(string s1, int idx1, int len1, string s2, int idx2, int len2, out bool sourceConsumed, out bool targetConsumed, bool immediateBreakup); // 0x00408C7C + private int CompareOrdinalIgnoreCase(string s1, int idx1, int len1, string s2, int idx2, int len2); // 0x0040966C + public int Compare(string s1, int idx1, int len1, string s2, int idx2, int len2, CompareOptions options); // 0x0040857C + private void ClearBuffer(void * buffer, int size); // 0x00407EF4 + private bool QuickCheckPossible(string s1, int idx1, int end1, string s2, int idx2, int end2); // 0x00409C74 + private int CompareInternal(string s1, int idx1, int len1, string s2, int idx2, int len2, out bool targetConsumed, out bool sourceConsumed, bool skipHeadingExtenders, bool immediateBreakup, Context ctx); // 0x00409C7C + private int CompareFlagPair(bool b1, bool b2); // 0x0040B98C + public bool IsPrefix(string src, string target, CompareOptions opt); // 0x0040B9AC + public bool IsPrefix(string s, string target, int start, int length, CompareOptions opt); // 0x0040B9FC + private bool IsPrefix(string s, string target, int start, int length, bool skipHeadingExtenders, Context ctx); // 0x0040BB58 + public bool IsSuffix(string src, string target, CompareOptions opt); // 0x0040BBDC + public bool IsSuffix(string s, string target, int start, int length, CompareOptions opt); // 0x0040BC48 + public int IndexOf(string s, string target, CompareOptions opt); // 0x0040BEFC + private int QuickIndexOf(string s, string target, int start, int length, out bool testWasUnable); // 0x0040C174 + public int IndexOf(string s, string target, int start, int length, CompareOptions opt); // 0x0040BF4C + private int IndexOfOrdinal(string s, string target, int start, int length); // 0x0040C2EC + private int IndexOfOrdinalIgnoreCase(string s, string target, int start, int length); // 0x0040C3BC + public int IndexOf(string s, char target, CompareOptions opt); // 0x0040CA68 + public int IndexOf(string s, char target, int start, int length, CompareOptions opt); // 0x0040CAB8 + private int IndexOfOrdinal(string s, char target, int start, int length); // 0x0040CF28 + private int IndexOfOrdinalIgnoreCase(string s, char target, int start, int length); // 0x0040CF94 + private int IndexOfSortKey(string s, int start, int length, void * sortkey, char target, int ti, bool noLv4, Context ctx); // 0x0040D06C + private int IndexOf(string s, string target, int start, int length, void * targetSortKey, Context ctx); // 0x0040C508 + public int LastIndexOf(string s, string target, CompareOptions opt); // 0x0040D2AC + public int LastIndexOf(string s, string target, int start, int length, CompareOptions opt); // 0x0040BD10 + private int LastIndexOfOrdinal(string s, string target, int start, int length); // 0x0040D318 + private int LastIndexOfOrdinalIgnoreCase(string s, string target, int start, int length); // 0x0040D4D0 + public int LastIndexOf(string s, char target, CompareOptions opt); // 0x0040DDBC + public int LastIndexOf(string s, char target, int start, int length, CompareOptions opt); // 0x0040DE28 + private int LastIndexOfOrdinal(string s, char target, int start, int length); // 0x0040E2AC + private int LastIndexOfOrdinalIgnoreCase(string s, char target, int start, int length); // 0x0040E334 + private int LastIndexOfSortKey(string s, int start, int orgStart, int length, void * sortkey, int ti, bool noLv4, Context ctx); // 0x0040E428 + private int LastIndexOf(string s, string target, int start, int length, void * targetSortKey, Context ctx); // 0x0040D780 + private bool MatchesForward(string s, int idx, int end, int ti, void * sortkey, bool noLv4, Context ctx); // 0x0040D0EC + private bool MatchesForwardCore(string s, int idx, int end, int ti, void * sortkey, bool noLv4, ExtenderType ext, Contraction ct, Context ctx); // 0x0040E67C + private bool MatchesPrimitive(CompareOptions opt, void * source, int si, ExtenderType ext, void * target, int ti, bool noLv4); // 0x0040EB34 + private bool MatchesBackward(string s, int idx, int end, int orgStart, int ti, void * sortkey, bool noLv4, Context ctx); // 0x0040E4B4 + private bool MatchesBackwardCore(string s, int idx, int end, int orgStart, int ti, void * sortkey, bool noLv4, ExtenderType ext, Contraction ct, Context ctx); // 0x0040EFDC +} + +// Namespace: +internal struct Context // TypeDefIndex: 139 +{ + // Fields + public readonly CompareOptions Option; // 0x08 + public readonly void * NeverMatchFlags; // 0x0C + public readonly void * AlwaysMatchFlags; // 0x10 + public void * Buffer1; // 0x14 + public void * Buffer2; // 0x18 + public int PrevCode; // 0x1C + public void * PrevSortKey; // 0x20 + public readonly bool QuickCheckPossible; // 0x24 + + // Methods + public void .ctor(CompareOptions opt, void * alwaysMatchFlags, void * neverMatchFlags, void * buffer1, void * buffer2, void * prev1, bool quickCheckPossible); // 0x000A81BC + public void ClearPrevInfo(); // 0x000A81F8 +} + +// Namespace: +private struct PreviousInfo // TypeDefIndex: 140 +{ + // Fields + public int Code; // 0x08 + public void * SortKey; // 0x0C + + // Methods + public void .ctor(bool dummy); // 0x000A82AC +} + +// Namespace: +private struct Escape // TypeDefIndex: 141 +{ + // Fields + public string Source; // 0x08 + public int Index; // 0x0C + public int Start; // 0x10 + public int End; // 0x14 + public int Optional; // 0x18 + +} + +// Namespace: +private enum ExtenderType // TypeDefIndex: 142 +{ + None = 0, + Simple = 1, + Voiced = 2, + Conditional = 3, + Buggy = 4 +} + +// Namespace: System.Globalization +[Serializable] +public class SortKey // TypeDefIndex: 143 +{ + // Fields + private readonly string source; // 0x08 + private readonly CompareOptions options; // 0x0C + private readonly byte[] key; // 0x10 + private readonly int lcid; // 0x14 + + // Properties + public virtual string OriginalString { get; } // 0x004797F8 + public virtual byte[] KeyData { get; } // 0x00479800 + + // Methods + internal void .ctor(int lcid, string source, CompareOptions opt); // 0x00479518 + internal void .ctor(int lcid, string source, byte[] buffer, CompareOptions opt, int lv1Length, int lv2Length, int lv3Length, int kanaSmallLength, int markTypeLength, int katakanaLength, int kanaWidthLength, int identLength); // 0x00479548 + public static int Compare(SortKey sortkey1, SortKey sortkey2); // 0x0047957C + public override bool Equals(object value); // 0x00479808 + public override int GetHashCode(); // 0x004798D8 + public override string ToString(); // 0x004799B4 +} + +// Namespace: Mono.Globalization.Unicode +internal class SortKeyBuffer // TypeDefIndex: 144 +{ + // Fields + private int l1; // 0x08 + private int l2; // 0x0C + private int l3; // 0x10 + private int l4s; // 0x14 + private int l4t; // 0x18 + private int l4k; // 0x1C + private int l4w; // 0x20 + private int l5; // 0x24 + private byte[] l1b; // 0x28 + private byte[] l2b; // 0x2C + private byte[] l3b; // 0x30 + private byte[] l4sb; // 0x34 + private byte[] l4tb; // 0x38 + private byte[] l4kb; // 0x3C + private byte[] l4wb; // 0x40 + private byte[] l5b; // 0x44 + private string source; // 0x48 + private bool processLevel2; // 0x4C + private bool frenchSort; // 0x4D + private bool frenchSorted; // 0x4E + private int lcid; // 0x50 + private CompareOptions options; // 0x54 + + // Methods + public void .ctor(int lcid); // 0x0044ABE8 + public void Reset(); // 0x0044ABF0 + internal void ClearBuffer(); // 0x0044AC10 + internal void Initialize(CompareOptions options, int lcid, string s, bool frenchSort); // 0x0044AC28 + internal void AppendCJKExtension(byte lv1msb, byte lv1lsb); // 0x0044AE28 + internal void AppendKana(byte category, byte lv1, byte lv2, byte lv3, bool isSmallKana, byte markType, bool isKatakana, bool isHalfWidth); // 0x0044AFC4 + internal void AppendNormal(byte category, byte lv1, byte lv2, byte lv3); // 0x0044B0A4 + private void AppendLevel5(byte category, byte lv1); // 0x0044B218 + private void AppendBufferPrimitive(byte value, byte[] buf, int bidx); // 0x0044AEBC + public SortKey GetResultAndReset(); // 0x0044B2AC + private int GetOptimizedLength(byte[] data, int len, byte defaultValue); // 0x0044B858 + public SortKey GetResult(); // 0x0044B2DC +} + +// Namespace: Mono.Interop +internal class ComInteropProxy : RealProxy, IRemotingTypeInfo // TypeDefIndex: 145 +{ + // Fields + private __ComObject com_object; // 0x28 + private int ref_count; // 0x2C + private string type_name; // 0x30 + + // Properties + public string TypeName { get; set; } // 0x0044BEEC 0x0044BEF4 + + // Methods + private void .ctor(Type t); // 0x0044B90C + private void .ctor(IntPtr pUnk); // 0x0044B944 + internal void .ctor(IntPtr pUnk, Type t); // 0x0044B9EC + private static void AddProxy(IntPtr pItf, ComInteropProxy proxy); // 0x0044BAC0 + internal static ComInteropProxy FindProxy(IntPtr pItf); // 0x0044BAC4 + private void CacheProxy(); // 0x0044BA88 + internal static ComInteropProxy GetProxy(IntPtr pItf, Type t); // 0x0044BAC8 + internal static ComInteropProxy CreateProxy(Type t); // 0x0044BC3C + public override IMessage Invoke(IMessage msg); // 0x0044BDFC + public bool CanCastTo(Type fromType, object o); // 0x0044BEFC +} + +// Namespace: Mono.Interop +internal interface IDispatch // TypeDefIndex: 146 +{ +} + +// Namespace: Mono.Interop +internal interface IUnknown // TypeDefIndex: 147 +{ +} + +// Namespace: Mono.Math.Prime.Generator +internal class NextPrimeFinder : SequentialSearchPrimeGeneratorBase // TypeDefIndex: 148 +{ + // Methods + public void .ctor(); // 0x0045075C + protected override BigInteger GenerateSearchBase(int bits, object Context); // 0x00454070 +} + +// Namespace: Mono.Math.Prime.Generator +internal abstract class PrimeGeneratorBase // TypeDefIndex: 149 +{ + // Properties + public virtual ConfidenceFactor Confidence { get; } // 0x004541A4 + public virtual PrimalityTest PrimalityTest { get; } // 0x004541AC + public virtual int TrialDivisionBounds { get; } // 0x00454240 + + // Methods + protected void .ctor(); // 0x0045419C + protected bool PostTrialDivisionTests(BigInteger bi); // 0x00454248 + public abstract BigInteger GenerateNewPrime(int bits); +} + +// Namespace: Mono.Math.Prime.Generator +internal class SequentialSearchPrimeGeneratorBase : PrimeGeneratorBase // TypeDefIndex: 150 +{ + // Methods + public void .ctor(); // 0x004507F8 + protected virtual BigInteger GenerateSearchBase(int bits, object context); // 0x0045465C + public override BigInteger GenerateNewPrime(int bits); // 0x00454704 + public virtual BigInteger GenerateNewPrime(int bits, object context); // 0x00454718 + protected virtual bool IsPrimeAcceptable(BigInteger bi, object context); // 0x00454AE0 +} + +// Namespace: Mono.Math.Prime +internal enum ConfidenceFactor // TypeDefIndex: 151 +{ + ExtraLow = 0, + Low = 1, + Medium = 2, + High = 3, + ExtraHigh = 4, + Provable = 5 +} + +// Namespace: Mono.Math.Prime +internal sealed class PrimalityTests // TypeDefIndex: 152 +{ + // Methods + private void .ctor(); // 0x00454BC0 + private static int GetSPPRounds(BigInteger bi, ConfidenceFactor confidence); // 0x00454BC8 + public static bool Test(BigInteger n, ConfidenceFactor confidence); // 0x00450674 + public static bool RabinMillerTest(BigInteger n, ConfidenceFactor confidence); // 0x0045504C + public static bool SmallPrimeSppTest(BigInteger bi, ConfidenceFactor confidence); // 0x00454DB8 +} + +// Namespace: Mono.Math +internal class BigInteger // TypeDefIndex: 153 +{ + // Fields + private const uint DEFAULT_LEN = 20; // 0x00 + private const string WouldReturnNegVal = "Operation would return a negative value"; // 0x00 + private uint length; // 0x08 + private uint[] data; // 0x0C + internal static readonly uint[] smallPrimes; // 0x00 + private static RandomNumberGenerator rng; // 0x04 + + // Properties + private static RandomNumberGenerator Rng { get; } // 0x0044DD78 + + // Methods + public void .ctor(); // 0x0044C030 + public void .ctor(Sign sign, uint len); // 0x0044C0B4 + public void .ctor(BigInteger bi); // 0x0044C138 + public void .ctor(BigInteger bi, uint len); // 0x0044C220 + public void .ctor(byte[] inData); // 0x0044C33C + public void .ctor(uint[] inData); // 0x0044C8A0 + public void .ctor(uint ui); // 0x0044C9D0 + public void .ctor(ulong ul); // 0x0044CA84 + private static void .cctor(); // 0x0044CB6C + public static BigInteger Parse(string number); // 0x0044CC04 + public static BigInteger Add(BigInteger bi1, BigInteger bi2); // 0x0044D248 + public static BigInteger Subtract(BigInteger bi1, BigInteger bi2); // 0x0044D2D0 + public static int Modulus(BigInteger bi, int i); // 0x0044D578 + public static uint Modulus(BigInteger bi, uint ui); // 0x0044D624 + public static BigInteger Modulus(BigInteger bi1, BigInteger bi2); // 0x0044D6B0 + public static BigInteger Divid(BigInteger bi, int i); // 0x0044D77C + public static BigInteger Divid(BigInteger bi1, BigInteger bi2); // 0x0044D8C0 + public static BigInteger Multiply(BigInteger bi1, BigInteger bi2); // 0x0044D98C + public static BigInteger Multiply(BigInteger bi, int i); // 0x0044DCF0 + public static BigInteger GenerateRandom(int bits, RandomNumberGenerator rng); // 0x0044DE90 + public static BigInteger GenerateRandom(int bits); // 0x0044E08C + public void Randomize(RandomNumberGenerator rng); // 0x0044E114 + public void Randomize(); // 0x0044E44C + public int BitCount(); // 0x0044E3B8 + public bool TestBit(uint bitNum); // 0x0044E4D4 + public bool TestBit(int bitNum); // 0x0044E530 + public void SetBit(uint bitNum); // 0x0044E670 + public void ClearBit(uint bitNum); // 0x0044E6EC + public void SetBit(uint bitNum, bool value); // 0x0044E678 + public int LowestSetBit(); // 0x0044E6F4 + public byte[] GetBytes(); // 0x0044E7A4 + public Sign Compare(BigInteger bi); // 0x0044E968 + public string ToString(uint radix); // 0x0044EC54 + public string ToString(uint radix, string characterSet); // 0x0044ECC0 + private void Normalize(); // 0x0044C81C + public void Clear(); // 0x0044F17C + public override int GetHashCode(); // 0x0044F1EC + public override string ToString(); // 0x0044F260 + public override bool Equals(object o); // 0x0044F268 + public BigInteger GCD(BigInteger bi); // 0x0044F4FC + public BigInteger ModInverse(BigInteger modulus); // 0x0044F6FC + public BigInteger ModPow(BigInteger exp, BigInteger n); // 0x0044FFE4 + public bool IsProbablePrime(); // 0x004502F4 + public static BigInteger NextHighestPrime(BigInteger bi); // 0x004506C4 + public static BigInteger GeneratePseudoPrime(int bits); // 0x00450764 + public void Incr2(); // 0x00450800 + public static BigInteger op_Implicit(uint value); // 0x004505E4 + public static BigInteger op_Implicit(int value); // 0x0044D060 + public static BigInteger op_Implicit(ulong value); // 0x0045096C + public static BigInteger op_Addition(BigInteger bi1, BigInteger bi2); // 0x0044D130 + public static BigInteger op_Subtraction(BigInteger bi1, BigInteger bi2); // 0x0044D358 + public static int op_Modulus(BigInteger bi, int i); // 0x0044D600 + public static uint op_Modulus(BigInteger bi, uint ui); // 0x0044D6AC + public static BigInteger op_Modulus(BigInteger bi1, BigInteger bi2); // 0x0044D738 + public static BigInteger op_Division(BigInteger bi, int i); // 0x0044D804 + public static BigInteger op_Division(BigInteger bi1, BigInteger bi2); // 0x0044D948 + public static BigInteger op_Multiply(BigInteger bi1, BigInteger bi2); // 0x0044DA14 + public static BigInteger op_Multiply(BigInteger bi, int i); // 0x0044CF34 + public static BigInteger op_LeftShift(BigInteger bi1, int shiftVal); // 0x00451F30 + public static BigInteger op_RightShift(BigInteger bi1, int shiftVal); // 0x004522BC + public static bool op_Equality(BigInteger bi1, uint ui); // 0x0044E330 + public static bool op_Inequality(BigInteger bi1, uint ui); // 0x0044F0F4 + public static bool op_Equality(BigInteger bi1, BigInteger bi2); // 0x0044F3F8 + public static bool op_Inequality(BigInteger bi1, BigInteger bi2); // 0x00452580 + public static bool op_GreaterThan(BigInteger bi1, BigInteger bi2); // 0x00452680 + public static bool op_LessThan(BigInteger bi1, BigInteger bi2); // 0x004526A0 + public static bool op_GreaterThanOrEqual(BigInteger bi1, BigInteger bi2); // 0x004526B4 + public static bool op_LessThanOrEqual(BigInteger bi1, BigInteger bi2); // 0x00450654 +} + +// Namespace: +public enum Sign // TypeDefIndex: 154 +{ + Negative = -1, + Zero = 0, + Positive = 1 +} + +// Namespace: +internal sealed class ModulusRing // TypeDefIndex: 155 +{ + // Fields + private BigInteger mod; // 0x08 + private BigInteger constant; // 0x0C + + // Methods + public void .ctor(BigInteger modulus); // 0x00450078 + public void BarrettReduction(BigInteger x); // 0x0045361C + public BigInteger Multiply(BigInteger a, BigInteger b); // 0x004539F4 + public BigInteger Difference(BigInteger a, BigInteger b); // 0x004533A0 + public BigInteger Pow(BigInteger a, BigInteger k); // 0x004501AC + public BigInteger Pow(uint b, BigInteger exp); // 0x00453C54 +} + +// Namespace: +internal sealed class Montgomery // TypeDefIndex: 156 +{ + // Methods + private void .ctor(); // 0x00453CD8 + public static uint Inverse(uint n); // 0x00453CE0 + public static BigInteger ToMont(BigInteger n, BigInteger m); // 0x00453D14 + public static BigInteger Reduce(BigInteger n, BigInteger m, uint mPrime); // 0x00453DEC +} + +// Namespace: +private sealed class Kernel // TypeDefIndex: 157 +{ + // Methods + public void .ctor(); // 0x004526D4 + public static BigInteger AddSameSign(BigInteger bi1, BigInteger bi2); // 0x004509EC + public static BigInteger Subtract(BigInteger big, BigInteger small); // 0x00450D0C + public static void MinusEq(BigInteger big, BigInteger small); // 0x004526DC + public static void PlusEq(BigInteger bi1, BigInteger bi2); // 0x004528EC + public static Sign Compare(BigInteger bi1, BigInteger bi2); // 0x0044E96C + public static uint SingleByteDivideInPlace(BigInteger n, uint d); // 0x0044EFFC + public static uint DwordMod(BigInteger n, uint d); // 0x0045101C + public static BigInteger DwordDiv(BigInteger n, uint d); // 0x00451AC8 + public static BigInteger[] DwordDivMod(BigInteger n, uint d); // 0x00452BF4 + public static BigInteger[] multiByteDivide(BigInteger bi1, BigInteger bi2); // 0x004510B8 + public static BigInteger LeftShift(BigInteger bi, int n); // 0x00451F34 + public static BigInteger RightShift(BigInteger bi, int n); // 0x004522C0 + public static BigInteger MultiplyByDword(BigInteger n, uint f); // 0x00451D9C + public static void Multiply(uint[] x, uint xOffset, uint xLen, uint[] y, uint yOffset, uint yLen, uint[] d, uint dOffset); // 0x00451C68 + public static void MultiplyMod2p32pmod(uint[] x, int xOffset, int xLen, uint[] y, int yOffest, int yLen, uint[] d, int dOffset, int mod); // 0x00452E9C + public static void SquarePositive(BigInteger bi, uint[] wkSpace); // 0x00452FC8 + public static BigInteger gcd(BigInteger a, BigInteger b); // 0x0044F500 + public static uint modInverse(BigInteger bi, uint modulus); // 0x004532AC + public static BigInteger modInverse(BigInteger bi, BigInteger modulus); // 0x0044F700 +} + +// Namespace: Mono.Security.Authenticode +internal enum Authority // TypeDefIndex: 158 +{ + Individual = 0, + Commercial = 1, + Maximum = 2 +} + +// Namespace: Mono.Security.Authenticode +internal class AuthenticodeBase // TypeDefIndex: 159 +{ + // Fields + public const string spcIndirectDataContext = "1.3.6.1.4.1.311.2.1.4"; // 0x00 + private byte[] fileblock; // 0x08 + private FileStream fs; // 0x0C + private int blockNo; // 0x10 + private int blockLength; // 0x14 + private int peOffset; // 0x18 + private int dirSecurityOffset; // 0x1C + private int dirSecuritySize; // 0x20 + private int coffSymbolTableOffset; // 0x24 + + // Properties + internal int PEOffset { get; } // 0x00458314 + internal int CoffSymbolTableOffset { get; } // 0x00458634 + internal int SecurityOffset { get; } // 0x00458658 + + // Methods + public void .ctor(); // 0x004582A0 + internal void Open(string filename); // 0x0045867C + internal void Close(); // 0x0045873C + internal bool ReadFirstBlock(); // 0x00458338 + internal byte[] GetSecurityEntry(); // 0x00458804 + internal byte[] GetHash(HashAlgorithm hash); // 0x00458918 + protected byte[] HashFile(string fileName, string hashName); // 0x004590B4 +} + +// Namespace: Mono.Security.Authenticode +internal class AuthenticodeDeformatter : AuthenticodeBase // TypeDefIndex: 160 +{ + // Fields + private string filename; // 0x28 + private byte[] hash; // 0x2C + private X509CertificateCollection coll; // 0x30 + private ASN1 signedHash; // 0x34 + private DateTime timestamp; // 0x38 + private X509Certificate signingCertificate; // 0x48 + private int reason; // 0x4C + private bool trustedRoot; // 0x50 + private bool trustedTimestampRoot; // 0x51 + private byte[] entry; // 0x54 + private X509Chain signerChain; // 0x58 + private X509Chain timestampChain; // 0x5C + private static Dictionary`2 <>f__switch$map5; // 0x00 + private static Dictionary`2 <>f__switch$map6; // 0x04 + private static Dictionary`2 <>f__switch$map7; // 0x08 + + // Properties + public string FileName { get; set; } // 0x004593F0 0x004592B0 + public byte[] Hash { get; } // 0x004598EC + public int Reason { get; } // 0x004599B4 + public byte[] Signature { get; } // 0x00459BE0 + public DateTime Timestamp { get; } // 0x00459C8C + public X509CertificateCollection Certificates { get; } // 0x00459C9C + public X509Certificate SigningCertificate { get; } // 0x00459CA4 + + // Methods + public void .ctor(); // 0x004591F4 + public void .ctor(string fileName); // 0x0045928C + public bool IsTrusted(); // 0x004599DC + private bool CheckSignature(string fileName); // 0x004594F4 + private bool CompareIssuerSerial(string issuer, byte[] serial, X509Certificate x509); // 0x0045ACB4 + private bool VerifySignature(SignedData sd, byte[] calculatedMessageDigest, HashAlgorithm ha); // 0x00459CAC + private bool VerifyCounterSignature(SignerInfo cs, byte[] signature); // 0x0045AE84 + private void Reset(); // 0x004593F8 +} + +// Namespace: Mono.Security.Cryptography +internal sealed class CryptoConvert // TypeDefIndex: 161 +{ + // Methods + private void .ctor(); // 0x0045D230 + private static int ToInt32LE(byte[] bytes, int offset); // 0x0045D238 + private static uint ToUInt32LE(byte[] bytes, int offset); // 0x0045D308 + private static byte[] GetBytesLE(int val); // 0x0045D3D8 + private static byte[] Trim(byte[] array); // 0x0045D4E0 + public static RSA FromCapiPrivateKeyBlob(byte[] blob); // 0x0045D5E0 + public static RSA FromCapiPrivateKeyBlob(byte[] blob, int offset); // 0x0045D5E8 + public static DSA FromCapiPrivateKeyBlobDSA(byte[] blob); // 0x0045DC88 + public static DSA FromCapiPrivateKeyBlobDSA(byte[] blob, int offset); // 0x0045DC90 + public static byte[] ToCapiPrivateKeyBlob(RSA rsa); // 0x0045E200 + public static byte[] ToCapiPrivateKeyBlob(DSA dsa); // 0x0045E7A0 + public static RSA FromCapiPublicKeyBlob(byte[] blob); // 0x0045EBCC + public static RSA FromCapiPublicKeyBlob(byte[] blob, int offset); // 0x0045EBD4 + public static DSA FromCapiPublicKeyBlobDSA(byte[] blob); // 0x0045F0DC + public static DSA FromCapiPublicKeyBlobDSA(byte[] blob, int offset); // 0x0045F0E4 + public static byte[] ToCapiPublicKeyBlob(RSA rsa); // 0x0045F658 + public static byte[] ToCapiPublicKeyBlob(DSA dsa); // 0x0045FA00 + public static RSA FromCapiKeyBlob(byte[] blob); // 0x0045FE2C + public static RSA FromCapiKeyBlob(byte[] blob, int offset); // 0x0045FE34 + public static DSA FromCapiKeyBlobDSA(byte[] blob); // 0x0045FFF8 + public static DSA FromCapiKeyBlobDSA(byte[] blob, int offset); // 0x00460000 + public static byte[] ToCapiKeyBlob(AsymmetricAlgorithm keypair, bool includePrivateKey); // 0x0046018C + public static byte[] ToCapiKeyBlob(RSA rsa, bool includePrivateKey); // 0x004602C8 + public static byte[] ToCapiKeyBlob(DSA dsa, bool includePrivateKey); // 0x00460390 + public static string ToHex(byte[] input); // 0x00460458 + private static byte FromHexChar(char c); // 0x004605C0 + public static byte[] FromHex(string hex); // 0x004606A8 +} + +// Namespace: Mono.Security.Cryptography +internal sealed class KeyBuilder // TypeDefIndex: 162 +{ + // Fields + private static RandomNumberGenerator rng; // 0x00 + + // Properties + private static RandomNumberGenerator Rng { get; } // 0x004636BC + + // Methods + private void .ctor(); // 0x004636B4 + public static byte[] Key(int size); // 0x00463750 + public static byte[] IV(int size); // 0x004637EC +} + +// Namespace: Mono.Security.Cryptography +internal class BlockProcessor // TypeDefIndex: 163 +{ + // Fields + private ICryptoTransform transform; // 0x08 + private byte[] block; // 0x0C + private int blockSize; // 0x10 + private int blockCount; // 0x14 + + // Methods + public void .ctor(ICryptoTransform transform); // 0x0045CC40 + public void .ctor(ICryptoTransform transform, int blockSize); // 0x0045CD28 + protected override void Finalize(); // 0x0045CDAC + public void Initialize(); // 0x0045CE20 + public void Core(byte[] rgb); // 0x0045CE4C + public void Core(byte[] rgb, int ib, int cb); // 0x0045CE8C + public byte[] Final(); // 0x0045D138 +} + +// Namespace: Mono.Security.Cryptography +internal class DSAManaged : DSA // TypeDefIndex: 164 +{ + // Fields + private const int defaultKeySize = 1024; // 0x00 + private bool keypairGenerated; // 0x10 + private bool m_disposed; // 0x11 + private BigInteger p; // 0x14 + private BigInteger q; // 0x18 + private BigInteger g; // 0x1C + private BigInteger x; // 0x20 + private BigInteger y; // 0x24 + private BigInteger j; // 0x28 + private BigInteger seed; // 0x2C + private int counter; // 0x30 + private bool j_missing; // 0x34 + private RandomNumberGenerator rng; // 0x38 + private KeyGeneratedEventHandler KeyGenerated; // 0x3C + + // Properties + private RandomNumberGenerator Random { get; } // 0x00461924 + public override int KeySize { get; } // 0x0046194C + public override string KeyExchangeAlgorithm { get; } // 0x00461984 + public bool PublicOnly { get; } // 0x0046198C + public override string SignatureAlgorithm { get; } // 0x00461A28 + + // Events + public event KeyGeneratedEventHandler KeyGenerated { + add; // 0x0046095C + remove; // 0x004609EC + } + + // Methods + public void .ctor(); // 0x0046083C + public void .ctor(int dwKeySize); // 0x00460844 + protected override void Finalize(); // 0x00460A7C + private void Generate(); // 0x00460AF4 + private void GenerateKeyPair(); // 0x00461308 + private void add(byte[] a, byte[] b, int value); // 0x00461818 + private void GenerateParams(int keyLength); // 0x00460B38 + private byte[] NormalizeArray(byte[] array); // 0x00461A84 + public override DSAParameters ExportParameters(bool includePrivateParameters); // 0x00461B50 + public override void ImportParameters(DSAParameters parameters); // 0x00461E98 + public override byte[] CreateSignature(byte[] rgbHash); // 0x0046221C + public override bool VerifySignature(byte[] rgbHash, byte[] rgbSignature); // 0x0046267C + protected override void Dispose(bool disposing); // 0x00462CB4 +} + +// Namespace: +public delegate void KeyGeneratedEventHandler(object sender, EventArgs e); // TypeDefIndex: 165; 0x0046146C + +// Namespace: Mono.Security.Cryptography +internal class HMACAlgorithm // TypeDefIndex: 166 +{ + // Fields + private byte[] key; // 0x08 + private byte[] hash; // 0x0C + private HashAlgorithm algo; // 0x10 + private string hashName; // 0x14 + private BlockProcessor block; // 0x18 + + // Properties + public HashAlgorithm Algo { get; } // 0x004631A0 + public string HashName { get; set; } // 0x004631A8 0x004631B0 + public byte[] Key { get; set; } // 0x004631B4 0x004631BC + + // Methods + public void .ctor(string algoName); // 0x00463050 + protected override void Finalize(); // 0x00463108 + private void CreateHash(string algoName); // 0x00463078 + public void Dispose(); // 0x00463184 + public void Initialize(); // 0x004632AC + private byte[] KeySetup(byte[] key, byte padding); // 0x0046336C + public void Core(byte[] rgb, int ib, int cb); // 0x004634D4 + public byte[] Final(); // 0x0046351C +} + +// Namespace: Mono.Security.Cryptography +internal class KeyPairPersistence // TypeDefIndex: 167 +{ + // Fields + private static bool _userPathExists; // 0x00 + private static string _userPath; // 0x04 + private static bool _machinePathExists; // 0x08 + private static string _machinePath; // 0x0C + private CspParameters _params; // 0x08 + private string _keyvalue; // 0x0C + private string _filename; // 0x10 + private string _container; // 0x14 + private static object lockobj; // 0x10 + + // Properties + public string Filename { get; } // 0x00463B10 + public string KeyValue { get; set; } // 0x00464CCC 0x00464CD4 + public CspParameters Parameters { get; } // 0x00464CF8 + private static string UserPath { get; } // 0x004646B0 + private static string MachinePath { get; } // 0x00464094 + private bool CanChange { get; } // 0x00464CE4 + private bool UseDefaultKeyContainer { get; } // 0x00465A58 + private bool UseMachineKeyStore { get; } // 0x0046406C + private string ContainerName { get; } // 0x00463E5C + + // Methods + public void .ctor(CspParameters parameters); // 0x00463888 + public void .ctor(CspParameters parameters, string keyPair); // 0x00463890 + private static void .cctor(); // 0x00463A74 + public bool Load(); // 0x00464D00 + public void Save(); // 0x00465068 + public void Remove(); // 0x0046579C + internal static bool _CanSecure(string root); // 0x0046594C + internal static bool _ProtectUser(string path); // 0x00465950 + internal static bool _ProtectMachine(string path); // 0x00465954 + internal static bool _IsUserProtected(string path); // 0x00465958 + internal static bool _IsMachineProtected(string path); // 0x0046595C + private static bool CanSecure(string path); // 0x00465960 + private static bool ProtectUser(string path); // 0x004656DC + private static bool ProtectMachine(string path); // 0x0046561C + private static bool IsUserProtected(string path); // 0x004657CC + private static bool IsMachineProtected(string path); // 0x0046588C + private CspParameters Copy(CspParameters p); // 0x00463960 + private void FromXml(string xml); // 0x00464E9C + private string ToXml(); // 0x004652F8 +} + +// Namespace: Mono.Security.Cryptography +internal class MACAlgorithm // TypeDefIndex: 168 +{ + // Fields + private SymmetricAlgorithm algo; // 0x08 + private ICryptoTransform enc; // 0x0C + private byte[] block; // 0x10 + private int blockSize; // 0x14 + private int blockCount; // 0x18 + + // Methods + public void .ctor(SymmetricAlgorithm algorithm); // 0x00465A80 + public void Initialize(byte[] key); // 0x00465B98 + public void Core(byte[] rgb, int ib, int cb); // 0x00465C2C + public byte[] Final(); // 0x00465EC4 +} + +// Namespace: Mono.Security.Cryptography +internal sealed class PKCS1 // TypeDefIndex: 169 +{ + // Fields + private static byte[] emptySHA1; // 0x00 + private static byte[] emptySHA256; // 0x04 + private static byte[] emptySHA384; // 0x08 + private static byte[] emptySHA512; // 0x0C + + // Methods + private void .ctor(); // 0x004661CC + private static void .cctor(); // 0x004661D4 + private static bool Compare(byte[] array1, byte[] array2); // 0x00466314 + private static byte[] xor(byte[] array1, byte[] array2); // 0x004663DC + private static byte[] GetEmptyHash(HashAlgorithm hash); // 0x0046651C + public static byte[] I2OSP(int x, int size); // 0x00466770 + public static byte[] I2OSP(byte[] x, int size); // 0x00466834 + public static byte[] OS2IP(byte[] x); // 0x004668F8 + public static byte[] RSAEP(RSA rsa, byte[] m); // 0x00466A04 + public static byte[] RSADP(RSA rsa, byte[] c); // 0x00466A40 + public static byte[] RSASP1(RSA rsa, byte[] m); // 0x00466A7C + public static byte[] RSAVP1(RSA rsa, byte[] s); // 0x00466AB8 + public static byte[] Encrypt_OAEP(RSA rsa, HashAlgorithm hash, RandomNumberGenerator rng, byte[] M); // 0x00466AF4 + public static byte[] Decrypt_OAEP(RSA rsa, HashAlgorithm hash, byte[] C); // 0x00467164 + public static byte[] Encrypt_v15(RSA rsa, RandomNumberGenerator rng, byte[] M); // 0x0046757C + public static byte[] Decrypt_v15(RSA rsa, byte[] C); // 0x004677BC + public static byte[] Sign_v15(RSA rsa, HashAlgorithm hash, byte[] hashValue); // 0x00467A40 + public static bool Verify_v15(RSA rsa, HashAlgorithm hash, byte[] hashValue, byte[] signature); // 0x00467F8C + public static bool Verify_v15(RSA rsa, HashAlgorithm hash, byte[] hashValue, byte[] signature, bool tryNonStandardEncoding); // 0x0045BC10 + public static byte[] Encode_v15(HashAlgorithm hash, byte[] hashValue, int emLength); // 0x00467B20 + public static byte[] MGF1(HashAlgorithm hash, byte[] mgfSeed, int maskLen); // 0x00466F0C +} + +// Namespace: Mono.Security.Cryptography +internal sealed class PKCS8 // TypeDefIndex: 170 +{ + // Methods + private void .ctor(); // 0x00468034 + public static KeyInfo GetType(byte[] data); // 0x0046803C +} + +// Namespace: +public enum KeyInfo // TypeDefIndex: 171 +{ + PrivateKey = 0, + EncryptedPrivateKey = 1, + Unknown = 2 +} + +// Namespace: +public class PrivateKeyInfo // TypeDefIndex: 172 +{ + // Fields + private int _version; // 0x08 + private string _algorithm; // 0x0C + private byte[] _key; // 0x10 + private ArrayList _list; // 0x14 + + // Properties + public string Algorithm { get; set; } // 0x0033CEE4 0x0033CEEC + public ArrayList Attributes { get; } // 0x0033CEF4 + public byte[] PrivateKey { get; set; } // 0x0033CEFC 0x0033CFA8 + public int Version { get; set; } // 0x0033D0B0 0x0033D0B8 + + // Methods + public void .ctor(); // 0x0033CAC8 + public void .ctor(byte[] data); // 0x0033CB4C + private void Decode(byte[] data); // 0x0033CB70 + public byte[] GetBytes(); // 0x0033D168 + private static byte[] RemoveLeadingZero(byte[] bigInt); // 0x0033D6E8 + private static byte[] Normalize(byte[] bigInt, int length); // 0x0033D7D4 + public static RSA DecodeRSA(byte[] keypair); // 0x0033D8A4 + public static byte[] Encode(RSA rsa); // 0x0033DDE4 + public static DSA DecodeDSA(byte[] privateKey, DSAParameters dsaParameters); // 0x0033E0C4 + public static byte[] Encode(DSA dsa); // 0x0033E23C + public static byte[] Encode(AsymmetricAlgorithm aa); // 0x0033E2B4 +} + +// Namespace: +public class EncryptedPrivateKeyInfo // TypeDefIndex: 173 +{ + // Fields + private string _algorithm; // 0x08 + private byte[] _salt; // 0x0C + private int _iterations; // 0x10 + private byte[] _data; // 0x14 + + // Properties + public string Algorithm { get; set; } // 0x00468674 0x0046867C + public byte[] EncryptedData { get; set; } // 0x00468684 0x00468730 + public byte[] Salt { get; set; } // 0x004687F0 0x00468908 + public int IterationCount { get; set; } // 0x004689C0 0x004689C8 + + // Methods + public void .ctor(); // 0x0046826C + public void .ctor(byte[] data); // 0x00468274 + private void Decode(byte[] data); // 0x0046829C + public byte[] GetBytes(); // 0x00468A88 +} + +// Namespace: Mono.Security.Cryptography +internal class RSAManaged : RSA // TypeDefIndex: 174 +{ + // Fields + private const int defaultKeySize = 1024; // 0x00 + private bool isCRTpossible; // 0x10 + private bool keyBlinding; // 0x11 + private bool keypairGenerated; // 0x12 + private bool m_disposed; // 0x13 + private BigInteger d; // 0x14 + private BigInteger p; // 0x18 + private BigInteger q; // 0x1C + private BigInteger dp; // 0x20 + private BigInteger dq; // 0x24 + private BigInteger qInv; // 0x28 + private BigInteger n; // 0x2C + private BigInteger e; // 0x30 + private KeyGeneratedEventHandler KeyGenerated; // 0x34 + + // Properties + public override int KeySize { get; } // 0x0033EE48 + public override string KeyExchangeAlgorithm { get; } // 0x0033EE9C + public bool PublicOnly { get; } // 0x0033EEF8 + public override string SignatureAlgorithm { get; } // 0x0033EFE8 + public bool UseKeyBlinding { get; set; } // 0x00341014 0x0034101C + public bool IsCrtPossible { get; } // 0x00341024 + + // Events + public event KeyGeneratedEventHandler KeyGenerated { + add; // 0x0033E538 + remove; // 0x0033E5C8 + } + + // Methods + public void .ctor(); // 0x0033E404 + public void .ctor(int keySize); // 0x0033E40C + protected override void Finalize(); // 0x0033E658 + private void GenerateKeyPair(); // 0x0033E6D0 + public override byte[] DecryptValue(byte[] rgb); // 0x0033F044 + public override byte[] EncryptValue(byte[] rgb); // 0x0033F604 + public override RSAParameters ExportParameters(bool includePrivateParameters); // 0x0033F77C + public override void ImportParameters(RSAParameters parameters); // 0x0033FC2C + protected override void Dispose(bool disposing); // 0x0034035C + public override string ToXmlString(bool includePrivateParameters); // 0x00340748 + private byte[] GetPaddedValue(BigInteger value, int length); // 0x0033F514 +} + +// Namespace: +public delegate void KeyGeneratedEventHandler(object sender, EventArgs e); // TypeDefIndex: 175; 0x0033EA9C + +// Namespace: Mono.Security.Cryptography +internal abstract class SymmetricTransform : IDisposable, ICryptoTransform // TypeDefIndex: 176 +{ + // Fields + protected SymmetricAlgorithm algo; // 0x08 + protected bool encrypt; // 0x0C + private int BlockSizeByte; // 0x10 + private byte[] temp; // 0x14 + private byte[] temp2; // 0x18 + private byte[] workBuff; // 0x1C + private byte[] workout; // 0x20 + private int FeedBackByte; // 0x24 + private int FeedBackIter; // 0x28 + private bool m_disposed; // 0x2C + private bool lastBlock; // 0x2D + private RandomNumberGenerator _rng; // 0x30 + + // Properties + public virtual bool CanTransformMultipleBlocks { get; } // 0x003414BC + public virtual bool CanReuseTransform { get; } // 0x003414C4 + public virtual int InputBlockSize { get; } // 0x003414CC + public virtual int OutputBlockSize { get; } // 0x003414D4 + private bool KeepLastBlock { get; } // 0x003422E4 + + // Methods + public void .ctor(SymmetricAlgorithm symmAlgo, bool encryption, byte[] rgbIV); // 0x0034109C + private void System.IDisposable.Dispose(); // 0x003413B0 + protected override void Finalize(); // 0x003413E4 + protected virtual void Dispose(bool disposing); // 0x0034145C + protected virtual void Transform(byte[] input, byte[] output); // 0x003414DC + protected abstract void ECB(byte[] input, byte[] output); + protected virtual void CBC(byte[] input, byte[] output); // 0x003416F4 + protected virtual void CFB(byte[] input, byte[] output); // 0x003418E4 + protected virtual void OFB(byte[] input, byte[] output); // 0x00341C1C + protected virtual void CTS(byte[] input, byte[] output); // 0x00341CB8 + private void CheckInput(byte[] inputBuffer, int inputOffset, int inputCount); // 0x00341D54 + public virtual int TransformBlock(byte[] inputBuffer, int inputOffset, int inputCount, byte[] outputBuffer, int outputOffset); // 0x00341F38 + private int InternalTransformBlock(byte[] inputBuffer, int inputOffset, int inputCount, byte[] outputBuffer, int outputOffset); // 0x0034236C + private void Random(byte[] buffer, int start, int length); // 0x00342594 + private void ThrowBadPaddingException(PaddingMode padding, int length, int position); // 0x00342674 + private byte[] FinalEncrypt(byte[] inputBuffer, int inputOffset, int inputCount); // 0x003428B4 + private byte[] FinalDecrypt(byte[] inputBuffer, int inputOffset, int inputCount); // 0x00342C80 + public virtual byte[] TransformFinalBlock(byte[] inputBuffer, int inputOffset, int inputCount); // 0x00343084 +} + +// Namespace: Mono.Security.X509.Extensions +internal class BasicConstraintsExtension : X509Extension // TypeDefIndex: 177 +{ + // Fields + public const int NoPathLengthConstraint = -1; // 0x00 + private bool cA; // 0x14 + private int pathLenConstraint; // 0x18 + + // Properties + public bool CertificateAuthority { get; set; } // 0x00354530 0x00354538 + public override string Name { get; } // 0x00354540 + public int PathLenConstraint { get; set; } // 0x0035459C 0x003545A4 + + // Methods + public void .ctor(); // 0x00354154 + public void .ctor(ASN1 asn1); // 0x003541C8 + public void .ctor(X509Extension extension); // 0x003541D0 + protected override void Decode(); // 0x003541D8 + protected override void Encode(); // 0x00354390 + public override string ToString(); // 0x003546D0 +} + +// Namespace: Mono.Security.X509.Extensions +internal enum KeyUsages // TypeDefIndex: 178 +{ + none = 0, + encipherOnly = 1, + cRLSign = 2, + keyCertSign = 4, + keyAgreement = 8, + dataEncipherment = 16, + keyEncipherment = 32, + nonRepudiation = 64, + digitalSignature = 128, + decipherOnly = 2048 +} + +// Namespace: Mono.Security.X509.Extensions +internal class KeyUsageExtension : X509Extension // TypeDefIndex: 179 +{ + // Fields + private int kubits; // 0x14 + + // Properties + public KeyUsages KeyUsage { get; set; } // 0x00354DF4 0x00354DFC + public override string Name { get; } // 0x00354EEC + + // Methods + public void .ctor(ASN1 asn1); // 0x00354900 + public void .ctor(X509Extension extension); // 0x00354908 + public void .ctor(); // 0x00354910 + protected override void Decode(); // 0x0035497C + protected override void Encode(); // 0x00354B2C + public bool Support(KeyUsages usage); // 0x00354F48 + public override string ToString(); // 0x0035504C +} + +// Namespace: Mono.Security.X509.Extensions +internal class SubjectKeyIdentifierExtension : X509Extension // TypeDefIndex: 180 +{ + // Fields + private byte[] ski; // 0x14 + + // Properties + public override string Name { get; } // 0x00355710 + public byte[] Identifier { get; } // 0x0035576C + + // Methods + public void .ctor(); // 0x0035557C + public void .ctor(ASN1 asn1); // 0x003555E8 + public void .ctor(X509Extension extension); // 0x003555F0 + protected override void Decode(); // 0x003555F8 + public override string ToString(); // 0x00355818 +} + +// Namespace: Mono.Security.X509 +internal class PKCS5 // TypeDefIndex: 181 +{ + // Fields + public const string pbeWithMD2AndDESCBC = "1.2.840.113549.1.5.1"; // 0x00 + public const string pbeWithMD5AndDESCBC = "1.2.840.113549.1.5.3"; // 0x00 + public const string pbeWithMD2AndRC2CBC = "1.2.840.113549.1.5.4"; // 0x00 + public const string pbeWithMD5AndRC2CBC = "1.2.840.113549.1.5.6"; // 0x00 + public const string pbeWithSHA1AndDESCBC = "1.2.840.113549.1.5.10"; // 0x00 + public const string pbeWithSHA1AndRC2CBC = "1.2.840.113549.1.5.11"; // 0x00 + + // Methods + public void .ctor(); // 0x00256128 +} + +// Namespace: Mono.Security.X509 +internal class PKCS9 // TypeDefIndex: 182 +{ + // Fields + public const string friendlyName = "1.2.840.113549.1.9.20"; // 0x00 + public const string localKeyId = "1.2.840.113549.1.9.21"; // 0x00 + + // Methods + public void .ctor(); // 0x00256130 +} + +// Namespace: Mono.Security.X509 +internal class SafeBag // TypeDefIndex: 183 +{ + // Fields + private string _bagOID; // 0x08 + private ASN1 _asn1; // 0x0C + + // Properties + public string BagOID { get; } // 0x00256160 + public ASN1 ASN1 { get; } // 0x00256168 + + // Methods + public void .ctor(string bagOID, ASN1 asn1); // 0x00256138 +} + +// Namespace: Mono.Security.X509 +internal class PKCS12 : ICloneable // TypeDefIndex: 184 +{ + // Fields + public const string pbeWithSHAAnd128BitRC4 = "1.2.840.113549.1.12.1.1"; // 0x00 + public const string pbeWithSHAAnd40BitRC4 = "1.2.840.113549.1.12.1.2"; // 0x00 + public const string pbeWithSHAAnd3KeyTripleDESCBC = "1.2.840.113549.1.12.1.3"; // 0x00 + public const string pbeWithSHAAnd2KeyTripleDESCBC = "1.2.840.113549.1.12.1.4"; // 0x00 + public const string pbeWithSHAAnd128BitRC2CBC = "1.2.840.113549.1.12.1.5"; // 0x00 + public const string pbeWithSHAAnd40BitRC2CBC = "1.2.840.113549.1.12.1.6"; // 0x00 + public const string keyBag = "1.2.840.113549.1.12.10.1.1"; // 0x00 + public const string pkcs8ShroudedKeyBag = "1.2.840.113549.1.12.10.1.2"; // 0x00 + public const string certBag = "1.2.840.113549.1.12.10.1.3"; // 0x00 + public const string crlBag = "1.2.840.113549.1.12.10.1.4"; // 0x00 + public const string secretBag = "1.2.840.113549.1.12.10.1.5"; // 0x00 + public const string safeContentsBag = "1.2.840.113549.1.12.10.1.6"; // 0x00 + public const string x509Certificate = "1.2.840.113549.1.9.22.1"; // 0x00 + public const string sdsiCertificate = "1.2.840.113549.1.9.22.2"; // 0x00 + public const string x509Crl = "1.2.840.113549.1.9.23.1"; // 0x00 + public const int CryptoApiPasswordLimit = 32; // 0x00 + private static int recommendedIterationCount; // 0x00 + private byte[] _password; // 0x08 + private ArrayList _keyBags; // 0x0C + private ArrayList _secretBags; // 0x10 + private X509CertificateCollection _certs; // 0x14 + private bool _keyBagsChanged; // 0x18 + private bool _secretBagsChanged; // 0x19 + private bool _certsChanged; // 0x1A + private int _iterations; // 0x1C + private ArrayList _safeBags; // 0x20 + private RandomNumberGenerator _rng; // 0x24 + private static int password_max_length; // 0x04 + private static Dictionary`2 <>f__switch$map8; // 0x08 + private static Dictionary`2 <>f__switch$map9; // 0x0C + private static Dictionary`2 <>f__switch$mapA; // 0x10 + private static Dictionary`2 <>f__switch$mapB; // 0x14 + private static Dictionary`2 <>f__switch$mapC; // 0x18 + private static Dictionary`2 <>f__switch$mapD; // 0x1C + private static Dictionary`2 <>f__switch$mapE; // 0x20 + private static Dictionary`2 <>f__switch$mapF; // 0x24 + + // Properties + public string Password { set; } // 0x00355B78 + public int IterationCount { get; set; } // 0x00357D3C 0x00357D44 + public ArrayList Keys { get; } // 0x00357D4C + public ArrayList Secrets { get; } // 0x00358778 + public X509CertificateCollection Certificates { get; } // 0x00358BA4 + internal RandomNumberGenerator RNG { get; } // 0x00359054 + public static int MaximumPasswordLength { get; set; } // 0x00366530 0x003665BC + + // Methods + public void .ctor(); // 0x003559EC + public void .ctor(byte[] data); // 0x00355B10 + public void .ctor(byte[] data, string password); // 0x00356A20 + public void .ctor(byte[] data, byte[] password); // 0x00356A54 + private static void .cctor(); // 0x00356A80 + private void Decode(byte[] data); // 0x00355E0C + protected override void Finalize(); // 0x00357CB8 + private bool Compare(byte[] expected, byte[] actual); // 0x00356CD8 + private SymmetricAlgorithm GetSymmetricAlgorithm(string algorithmOid, byte[] salt, int iterationCount); // 0x0035907C + public byte[] Decrypt(string algorithmOid, byte[] salt, int iterationCount, byte[] encryptedData); // 0x003585B0 + public byte[] Decrypt(EncryptedData ed); // 0x00357BAC + public byte[] Encrypt(string algorithmOid, byte[] salt, int iterationCount, byte[] data); // 0x00359968 + private DSAParameters GetExistingParameters(out bool found); // 0x00359B9C + private void AddPrivateKey(PrivateKeyInfo pki); // 0x00359E68 + private void ReadSafeBag(ASN1 safeBag); // 0x00356DA0 + private ASN1 Pkcs8ShroudedKeyBagSafeBag(AsymmetricAlgorithm aa, IDictionary attributes); // 0x0035A038 + private ASN1 KeyBagSafeBag(AsymmetricAlgorithm aa, IDictionary attributes); // 0x0035B3B8 + private ASN1 SecretBagSafeBag(byte[] secret, IDictionary attributes); // 0x0035C618 + private ASN1 CertificateSafeBag(X509Certificate x509, IDictionary attributes); // 0x0035D644 + private byte[] MAC(byte[] password, byte[] salt, int iterations, byte[] data); // 0x00356AF8 + public byte[] GetBytes(); // 0x0035E7C4 + private ContentInfo EncryptedContentInfo(ASN1 safeBags, string algorithmOid); // 0x00360F84 + public void AddCertificate(X509Certificate cert); // 0x00360F7C + public void AddCertificate(X509Certificate cert, IDictionary attributes); // 0x00361398 + public void RemoveCertificate(X509Certificate cert); // 0x00360F74 + public void RemoveCertificate(X509Certificate cert, IDictionary attrs); // 0x003616B8 + private bool CompareAsymmetricAlgorithm(AsymmetricAlgorithm a1, AsymmetricAlgorithm a2); // 0x00361D94 + public void AddPkcs8ShroudedKeyBag(AsymmetricAlgorithm aa); // 0x00361EB4 + public void AddPkcs8ShroudedKeyBag(AsymmetricAlgorithm aa, IDictionary attributes); // 0x00361EBC + public void RemovePkcs8ShroudedKeyBag(AsymmetricAlgorithm aa); // 0x00362340 + public void AddKeyBag(AsymmetricAlgorithm aa); // 0x003627B0 + public void AddKeyBag(AsymmetricAlgorithm aa, IDictionary attributes); // 0x003627B8 + public void RemoveKeyBag(AsymmetricAlgorithm aa); // 0x00362B34 + public void AddSecretBag(byte[] secret); // 0x00362EA0 + public void AddSecretBag(byte[] secret, IDictionary attributes); // 0x00362EA8 + public void RemoveSecretBag(byte[] secret); // 0x003630C8 + public AsymmetricAlgorithm GetAsymmetricAlgorithm(IDictionary attrs); // 0x003632DC + public byte[] GetSecret(IDictionary attrs); // 0x00363F20 + public X509Certificate GetCertificate(IDictionary attrs); // 0x0036472C + public IDictionary GetAttributes(AsymmetricAlgorithm aa); // 0x00364FFC + public IDictionary GetAttributes(X509Certificate cert); // 0x00365A80 + public void SaveToFile(string filename); // 0x00366214 + public object Clone(); // 0x00366400 + private static byte[] LoadFile(string filename); // 0x0036672C + public static PKCS12 LoadFromFile(string filename); // 0x0036692C + public static PKCS12 LoadFromFile(string filename, string password); // 0x00366A34 +} + +// Namespace: +public class DeriveBytes // TypeDefIndex: 185 +{ + // Fields + private static byte[] keyDiversifier; // 0x00 + private static byte[] ivDiversifier; // 0x04 + private static byte[] macDiversifier; // 0x08 + private string _hashName; // 0x08 + private int _iterations; // 0x0C + private byte[] _password; // 0x10 + private byte[] _salt; // 0x14 + + // Properties + public string HashName { get; set; } // 0x002553E4 0x002553EC + public int IterationCount { get; set; } // 0x002553F4 0x002553FC + public byte[] Password { get; set; } // 0x00255404 0x002554BC + public byte[] Salt { get; set; } // 0x0025558C 0x00255644 + + // Methods + public void .ctor(); // 0x002552D4 + private static void .cctor(); // 0x002552DC + private void Adjust(byte[] a, int aOff, byte[] b); // 0x002556F4 + private byte[] Derive(byte[] diversifier, int n); // 0x00255888 + public byte[] DeriveKey(int size); // 0x00255F48 + public byte[] DeriveIV(int size); // 0x00255FE8 + public byte[] DeriveMAC(int size); // 0x00256088 +} + +// Namespace: +public enum Purpose // TypeDefIndex: 186 +{ + Key = 0, + IV = 1, + MAC = 2 +} + +// Namespace: Mono.Security.X509 +internal sealed class X501 // TypeDefIndex: 187 +{ + // Fields + private static byte[] countryName; // 0x00 + private static byte[] organizationName; // 0x04 + private static byte[] organizationalUnitName; // 0x08 + private static byte[] commonName; // 0x0C + private static byte[] localityName; // 0x10 + private static byte[] stateOrProvinceName; // 0x14 + private static byte[] streetAddress; // 0x18 + private static byte[] domainComponent; // 0x1C + private static byte[] userid; // 0x20 + private static byte[] email; // 0x24 + private static byte[] dnQualifier; // 0x28 + private static byte[] title; // 0x2C + private static byte[] surname; // 0x30 + private static byte[] givenName; // 0x34 + private static byte[] initial; // 0x38 + private static Dictionary`2 <>f__switch$map10; // 0x3C + + // Methods + private void .ctor(); // 0x00256170 + private static void .cctor(); // 0x00256178 + public static string ToString(ASN1 seq); // 0x00256AA4 + public static string ToString(ASN1 seq, bool reversed, string separator, bool quotes); // 0x002579C0 + private static void AppendEntry(StringBuilder sb, ASN1 entry, bool quotes); // 0x00256C10 + private static AttributeTypeAndValue GetAttributeFromOid(string attributeType); // 0x00257BFC + private static bool IsOid(string oid); // 0x00258C90 + private static AttributeTypeAndValue ReadAttribute(string value, int pos); // 0x00258DA0 + private static bool IsHex(char c); // 0x00258FE0 + private static string ReadHex(string value, int pos); // 0x002590FC + private static int ReadEscaped(StringBuilder sb, string value, int pos); // 0x00259394 + private static int ReadQuoted(StringBuilder sb, string value, int pos); // 0x002595C8 + private static string ReadValue(string value, int pos); // 0x00259798 + public static ASN1 FromString(string rdn); // 0x00259AB0 +} + +// Namespace: Mono.Security.X509 +internal class X509Crl // TypeDefIndex: 188 +{ + // Fields + private string issuer; // 0x08 + private byte version; // 0x0C + private DateTime thisUpdate; // 0x10 + private DateTime nextUpdate; // 0x20 + private ArrayList entries; // 0x30 + private string signatureOID; // 0x34 + private byte[] signature; // 0x38 + private X509ExtensionCollection extensions; // 0x3C + private byte[] encoded; // 0x40 + private byte[] hash_value; // 0x44 + private static Dictionary`2 <>f__switch$map11; // 0x00 + private static Dictionary`2 <>f__switch$map12; // 0x04 + + // Properties + public ArrayList Entries { get; } // 0x0025FF90 + public X509CrlEntry Item { get; } // 0x00260018 + public X509CrlEntry Item { get; } // 0x002600E8 + public X509ExtensionCollection Extensions { get; } // 0x0026027C + public byte[] Hash { get; } // 0x00260284 + public string IssuerName { get; } // 0x00260694 + public DateTime NextUpdate { get; } // 0x0026069C + public DateTime ThisUpdate { get; } // 0x002606AC + public string SignatureAlgorithm { get; } // 0x002606BC + public byte[] Signature { get; } // 0x002606C4 + public byte[] RawData { get; } // 0x00260770 + public byte Version { get; } // 0x00260828 + public bool IsCurrent { get; } // 0x00260830 + + // Methods + public void .ctor(byte[] crl); // 0x0025F49C + private void Parse(byte[] crl); // 0x0025F5B4 + public bool WasCurrent(DateTime instant); // 0x002608D8 + public byte[] GetBytes(); // 0x00260AF4 + private bool Compare(byte[] array1, byte[] array2); // 0x00260BAC + public X509CrlEntry GetCrlEntry(X509Certificate x509); // 0x00260C6C + public X509CrlEntry GetCrlEntry(byte[] serialNumber); // 0x002600EC + public bool VerifySignature(X509Certificate x509); // 0x00260DF0 + private string GetHashName(); // 0x00260388 + internal bool VerifySignature(DSA dsa); // 0x00261160 + internal bool VerifySignature(RSA rsa); // 0x00261524 + public bool VerifySignature(AsymmetricAlgorithm aa); // 0x00261608 + public static X509Crl CreateFromFile(string filename); // 0x002617D4 +} + +// Namespace: +public class X509CrlEntry // TypeDefIndex: 189 +{ + // Fields + private byte[] sn; // 0x08 + private DateTime revocationDate; // 0x10 + private X509ExtensionCollection extensions; // 0x20 + + // Properties + public byte[] SerialNumber { get; } // 0x00260D38 + public DateTime RevocationDate { get; } // 0x00261AC0 + public X509ExtensionCollection Extensions { get; } // 0x00261AD0 + + // Methods + internal void .ctor(byte[] serialNumber, DateTime revocationDate, X509ExtensionCollection extensions); // 0x00261A04 + internal void .ctor(ASN1 entry); // 0x0025FE58 + public byte[] GetBytes(); // 0x00261AD8 +} + +// Namespace: Mono.Security.X509 +internal class X509Certificate : ISerializable // TypeDefIndex: 190 +{ + // Fields + private ASN1 decoder; // 0x08 + private byte[] m_encodedcert; // 0x0C + private DateTime m_from; // 0x10 + private DateTime m_until; // 0x20 + private ASN1 issuer; // 0x30 + private string m_issuername; // 0x34 + private string m_keyalgo; // 0x38 + private byte[] m_keyalgoparams; // 0x3C + private ASN1 subject; // 0x40 + private string m_subject; // 0x44 + private byte[] m_publickey; // 0x48 + private byte[] signature; // 0x4C + private string m_signaturealgo; // 0x50 + private byte[] m_signaturealgoparams; // 0x54 + private byte[] certhash; // 0x58 + private RSA _rsa; // 0x5C + private DSA _dsa; // 0x60 + private int version; // 0x64 + private byte[] serialnumber; // 0x68 + private byte[] issuerUniqueID; // 0x6C + private byte[] subjectUniqueID; // 0x70 + private X509ExtensionCollection extensions; // 0x74 + private static string encoding_error; // 0x00 + private static Dictionary`2 <>f__switch$map13; // 0x04 + private static Dictionary`2 <>f__switch$map14; // 0x08 + private static Dictionary`2 <>f__switch$map15; // 0x0C + + // Properties + public DSA DSA { get; set; } // 0x0025B26C 0x0025B5C8 + public X509ExtensionCollection Extensions { get; } // 0x0025B5DC + public byte[] Hash { get; } // 0x0025B5E4 + public virtual string IssuerName { get; } // 0x0025BA78 + public virtual string KeyAlgorithm { get; } // 0x0025BA80 + public virtual byte[] KeyAlgorithmParameters { get; set; } // 0x0025BA88 0x0025BB34 + public virtual byte[] PublicKey { get; } // 0x0025BB3C + public virtual RSA RSA { get; set; } // 0x0025BBE8 0x0025BDAC + public virtual byte[] RawData { get; } // 0x0025BDC0 + public virtual byte[] SerialNumber { get; } // 0x0025BE6C + public virtual byte[] Signature { get; } // 0x0025BF18 + public virtual string SignatureAlgorithm { get; } // 0x0025C554 + public virtual byte[] SignatureAlgorithmParameters { get; } // 0x0025C55C + public virtual string SubjectName { get; } // 0x0025C608 + public virtual DateTime ValidFrom { get; } // 0x0025C610 + public virtual DateTime ValidUntil { get; } // 0x0025C620 + public int Version { get; } // 0x0025C630 + public bool IsCurrent { get; } // 0x0025C638 + public byte[] IssuerUniqueIdentifier { get; } // 0x0025C824 + public byte[] SubjectUniqueIdentifier { get; } // 0x0025C8D0 + public bool IsSelfSigned { get; } // 0x0025D1C8 + + // Methods + public void .ctor(byte[] data); // 0x00259E70 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x0025AE80 + private static void .cctor(); // 0x0025AFAC + private void Parse(byte[] data); // 0x0025A24C + private byte[] GetUnsignedBigInteger(byte[] integer); // 0x0025B190 + public bool WasCurrent(DateTime instant); // 0x0025C6E0 + internal bool VerifySignature(DSA dsa); // 0x0025C97C + internal string GetHashNameFromOID(string oid); // 0x0025CA74 + internal bool VerifySignature(RSA rsa); // 0x0025CD98 + public bool VerifySignature(AsymmetricAlgorithm aa); // 0x0025CF30 + public bool CheckSignature(byte[] hash, string hashAlgorithm, byte[] signature); // 0x0025D0FC + public ASN1 GetIssuerName(); // 0x0025D288 + public ASN1 GetSubjectName(); // 0x0025D290 + public virtual void GetObjectData(SerializationInfo info, StreamingContext context); // 0x0025D298 + private static byte[] PEM(string type, byte[] data); // 0x0025A054 +} + +// Namespace: Mono.Security.X509 +[Serializable] +internal class X509CertificateCollection : CollectionBase, IEnumerable // TypeDefIndex: 191 +{ + // Properties + public X509Certificate Item { get; set; } // 0x0025D614 0x0025D6F0 + + // Methods + public void .ctor(); // 0x0025D31C + public void .ctor(X509Certificate[] value); // 0x0025D324 + public void .ctor(X509CertificateCollection value); // 0x0025D474 + private IEnumerator System.Collections.IEnumerable.GetEnumerator(); // 0x0025D5D8 + public int Add(X509Certificate value); // 0x0025D73C + public void AddRange(X509Certificate[] value); // 0x0025D34C + public void AddRange(X509CertificateCollection value); // 0x0025D49C + public bool Contains(X509Certificate value); // 0x0025D820 + public void CopyTo(X509Certificate[] array, int index); // 0x0025D9F4 + public X509CertificateEnumerator GetEnumerator(); // 0x0025DA40 + public override int GetHashCode(); // 0x0025DB98 + public int IndexOf(X509Certificate value); // 0x0025D840 + public void Insert(int index, X509Certificate value); // 0x0025DC94 + public void Remove(X509Certificate value); // 0x0025DCE0 + private bool Compare(byte[] array1, byte[] array2); // 0x0025DBD4 +} + +// Namespace: +public class X509CertificateEnumerator : IEnumerator // TypeDefIndex: 192 +{ + // Fields + private IEnumerator enumerator; // 0x08 + + // Properties + private object System.Collections.IEnumerator.Current { get; } // 0x0025DD24 + public X509Certificate Current { get; } // 0x0025DFAC + + // Methods + public void .ctor(X509CertificateCollection mappings); // 0x0025DAB0 + private bool System.Collections.IEnumerator.MoveNext(); // 0x0025DDFC + private void System.Collections.IEnumerator.Reset(); // 0x0025DED4 + public bool MoveNext(); // 0x0025E0D8 + public void Reset(); // 0x0025E1B0 +} + +// Namespace: Mono.Security.X509 +internal class X509Chain // TypeDefIndex: 193 +{ + // Fields + private X509CertificateCollection roots; // 0x08 + private X509CertificateCollection certs; // 0x0C + private X509Certificate _root; // 0x10 + private X509CertificateCollection _chain; // 0x14 + private X509ChainStatusFlags _status; // 0x18 + + // Properties + public X509CertificateCollection Chain { get; } // 0x0025E39C + public X509Certificate Root { get; } // 0x0025E3A4 + public X509ChainStatusFlags Status { get; } // 0x0025E3AC + public X509CertificateCollection TrustAnchors { get; set; } // 0x0025E3B4 0x0025E5A4 + + // Methods + public void .ctor(); // 0x0025E288 + public void .ctor(X509CertificateCollection chain); // 0x0025E304 + public void LoadCertificate(X509Certificate x509); // 0x0025E5AC + public void LoadCertificates(X509CertificateCollection collection); // 0x0025E5DC + public X509Certificate FindByIssuerName(string issuerName); // 0x0025E60C + public bool Build(X509Certificate leaf); // 0x0025E87C + public void Reset(); // 0x0025F314 + private bool IsValid(X509Certificate cert); // 0x0025F2D0 + private X509Certificate FindCertificateParent(X509Certificate child); // 0x0025EC84 + private X509Certificate FindCertificateRoot(X509Certificate potentialRoot); // 0x0025EE9C + private bool IsTrusted(X509Certificate potentialTrusted); // 0x0025F364 + private bool IsParent(X509Certificate child, X509Certificate parent); // 0x0025F10C +} + +// Namespace: Mono.Security.X509 +[Serializable] +internal enum X509ChainStatusFlags // TypeDefIndex: 194 +{ + NoError = 0, + NotTimeValid = 1, + NotTimeNested = 2, + NotSignatureValid = 8, + UntrustedRoot = 32, + InvalidBasicConstraints = 1024, + PartialChain = 65536 +} + +// Namespace: Mono.Security.X509 +internal class X509Extension // TypeDefIndex: 195 +{ + // Fields + protected string extnOid; // 0x08 + protected bool extnCritical; // 0x0C + protected ASN1 extnValue; // 0x10 + + // Properties + public ASN1 ASN1 { get; } // 0x002624AC + public string Oid { get; } // 0x0026262C + public bool Critical { get; set; } // 0x00262634 0x0026263C + public virtual string Name { get; } // 0x00262644 + public ASN1 Value { get; } // 0x00262470 + + // Methods + protected void .ctor(); // 0x00261E54 + public void .ctor(ASN1 asn1); // 0x00261E74 + public void .ctor(X509Extension extension); // 0x00262294 + protected virtual void Decode(); // 0x002624A4 + protected virtual void Encode(); // 0x002624A8 + public override bool Equals(object obj); // 0x0026264C + public byte[] GetBytes(); // 0x0026284C + public override int GetHashCode(); // 0x00262884 + private void WriteLine(StringBuilder sb, int n, int pos); // 0x002628B0 + public override string ToString(); // 0x00262BAC +} + +// Namespace: Mono.Security.X509 +internal sealed class X509ExtensionCollection : CollectionBase, IEnumerable // TypeDefIndex: 196 +{ + // Fields + private bool readOnly; // 0x0C + + // Properties + public X509Extension Item { get; } // 0x00263140 + public X509Extension Item { get; } // 0x0025F3A8 + + // Methods + public void .ctor(); // 0x00261AB8 + public void .ctor(ASN1 asn1); // 0x0025B024 + private IEnumerator System.Collections.IEnumerable.GetEnumerator(); // 0x00262CCC + public int Add(X509Extension extension); // 0x00262D08 + public void AddRange(X509Extension[] extension); // 0x00262E3C + public void AddRange(X509ExtensionCollection collection); // 0x00262FB4 + public bool Contains(X509Extension extension); // 0x0026321C + public bool Contains(string oid); // 0x002633DC + public void CopyTo(X509Extension[] extensions, int index); // 0x002635CC + public int IndexOf(X509Extension extension); // 0x0026323C + public int IndexOf(string oid); // 0x002633FC + public void Insert(int index, X509Extension extension); // 0x002636B8 + public void Remove(X509Extension extension); // 0x002637A4 + public void Remove(string oid); // 0x00263888 + public byte[] GetBytes(); // 0x00261C78 +} + +// Namespace: Mono.Security.X509 +internal class X509Store // TypeDefIndex: 197 +{ + // Fields + private string _storePath; // 0x08 + private X509CertificateCollection _certificates; // 0x0C + private ArrayList _crls; // 0x10 + private bool _crl; // 0x14 + private string _name; // 0x18 + + // Properties + public X509CertificateCollection Certificates { get; } // 0x002639AC + public ArrayList Crls { get; } // 0x00263BC4 + public string Name { get; } // 0x00263E60 + + // Methods + internal void .ctor(string path, bool crl); // 0x00263984 + public void Clear(); // 0x00263F4C + public void Import(X509Certificate certificate); // 0x00263F98 + public void Import(X509Crl crl); // 0x002643C4 + public void Remove(X509Certificate certificate); // 0x0026468C + public void Remove(X509Crl crl); // 0x0026474C + private string GetUniqueName(X509Certificate certificate); // 0x00264308 + private string GetUniqueName(X509Crl crl); // 0x002645D0 + private byte[] GetUniqueName(X509ExtensionCollection extensions); // 0x0026480C + private string GetUniqueName(string method, byte[] name, string fileExtension); // 0x002648D4 + private byte[] Load(string filename); // 0x00264A90 + private X509Certificate LoadCertificate(string filename); // 0x00264C90 + private X509Crl LoadCrl(string filename); // 0x00264D0C + private bool CheckStore(string path, bool throwException); // 0x002641C8 + private X509CertificateCollection BuildCertificatesCollection(string storeName); // 0x002639D8 + private ArrayList BuildCrlsCollection(string storeName); // 0x00263C68 +} + +// Namespace: Mono.Security.X509 +internal sealed class X509StoreManager // TypeDefIndex: 198 +{ + // Fields + private static X509Stores _userStore; // 0x00 + private static X509Stores _machineStore; // 0x04 + + // Properties + public static X509Stores CurrentUser { get; } // 0x00264D90 + public static X509Stores LocalMachine { get; } // 0x00264ED4 + public static X509CertificateCollection IntermediateCACertificates { get; } // 0x00264FF4 + public static ArrayList IntermediateCACrls { get; } // 0x0026521C + public static X509CertificateCollection TrustedRootCertificates { get; } // 0x0025E458 + public static ArrayList TrustedRootCACrls { get; } // 0x00265420 + public static X509CertificateCollection UntrustedCertificates { get; } // 0x00265548 + + // Methods + private void .ctor(); // 0x00264D88 +} + +// Namespace: Mono.Security.X509 +internal class X509Stores // TypeDefIndex: 199 +{ + // Fields + private string _storePath; // 0x08 + private X509Store _personal; // 0x0C + private X509Store _other; // 0x10 + private X509Store _intermediate; // 0x14 + private X509Store _trusted; // 0x18 + private X509Store _untrusted; // 0x1C + + // Properties + public X509Store Personal { get; } // 0x00265770 + public X509Store OtherPeople { get; } // 0x0026584C + public X509Store IntermediateCA { get; } // 0x00265140 + public X509Store TrustedRoot { get; } // 0x00265344 + public X509Store Untrusted { get; } // 0x00265694 + + // Methods + internal void .ctor(string path); // 0x00264EB4 + public void Clear(); // 0x00265928 + public X509Store Open(string storeName, bool create); // 0x00265994 +} + +// Namespace: +public class Names // TypeDefIndex: 200 +{ + // Fields + public const string Personal = "My"; // 0x00 + public const string OtherPeople = "AddressBook"; // 0x00 + public const string IntermediateCA = "CA"; // 0x00 + public const string TrustedRoot = "Trust"; // 0x00 + public const string Untrusted = "Disallowed"; // 0x00 + + // Methods + public void .ctor(); // 0x00265AD8 +} + +// Namespace: Mono.Security.X509 +internal class X520 // TypeDefIndex: 201 +{ + // Methods + public void .ctor(); // 0x00265AE0 +} + +// Namespace: +public abstract class AttributeTypeAndValue // TypeDefIndex: 202 +{ + // Fields + private string oid; // 0x08 + private string attrValue; // 0x0C + private int upperBound; // 0x10 + private byte encoding; // 0x14 + + // Properties + public string Value { get; set; } // 0x00265B48 0x00259D28 + public ASN1 ASN1 { get; } // 0x00265B50 + + // Methods + protected void .ctor(string oid, int upperBound); // 0x00265AE8 + protected void .ctor(string oid, int upperBound, byte encoding); // 0x00265B18 + internal ASN1 GetASN1(byte encoding); // 0x00265B58 + internal ASN1 GetASN1(); // 0x00259E68 + public byte[] GetBytes(byte encoding); // 0x00265E54 + public byte[] GetBytes(); // 0x00265E8C + private byte SelectBestEncoding(); // 0x00265DEC +} + +// Namespace: +public class Name : AttributeTypeAndValue // TypeDefIndex: 203 +{ + // Methods + public void .ctor(); // 0x00265EC8 +} + +// Namespace: +public class CommonName : AttributeTypeAndValue // TypeDefIndex: 204 +{ + // Methods + public void .ctor(); // 0x0025870C +} + +// Namespace: +public class SerialNumber : AttributeTypeAndValue // TypeDefIndex: 205 +{ + // Methods + public void .ctor(); // 0x00265F44 +} + +// Namespace: +public class LocalityName : AttributeTypeAndValue // TypeDefIndex: 206 +{ + // Methods + public void .ctor(); // 0x00258788 +} + +// Namespace: +public class StateOrProvinceName : AttributeTypeAndValue // TypeDefIndex: 207 +{ + // Methods + public void .ctor(); // 0x00258804 +} + +// Namespace: +public class OrganizationName : AttributeTypeAndValue // TypeDefIndex: 208 +{ + // Methods + public void .ctor(); // 0x00258614 +} + +// Namespace: +public class OrganizationalUnitName : AttributeTypeAndValue // TypeDefIndex: 209 +{ + // Methods + public void .ctor(); // 0x00258690 +} + +// Namespace: +public class EmailAddress : AttributeTypeAndValue // TypeDefIndex: 210 +{ + // Methods + public void .ctor(); // 0x00258880 +} + +// Namespace: +public class DomainComponent : AttributeTypeAndValue // TypeDefIndex: 211 +{ + // Methods + public void .ctor(); // 0x002588FC +} + +// Namespace: +public class UserId : AttributeTypeAndValue // TypeDefIndex: 212 +{ + // Methods + public void .ctor(); // 0x00258978 +} + +// Namespace: +public class Oid : AttributeTypeAndValue // TypeDefIndex: 213 +{ + // Methods + public void .ctor(string oid); // 0x00258C60 +} + +// Namespace: +public class Title : AttributeTypeAndValue // TypeDefIndex: 214 +{ + // Methods + public void .ctor(); // 0x00258A70 +} + +// Namespace: +public class CountryName : AttributeTypeAndValue // TypeDefIndex: 215 +{ + // Methods + public void .ctor(); // 0x00258598 +} + +// Namespace: +public class DnQualifier : AttributeTypeAndValue // TypeDefIndex: 216 +{ + // Methods + public void .ctor(); // 0x002589F4 +} + +// Namespace: +public class Surname : AttributeTypeAndValue // TypeDefIndex: 217 +{ + // Methods + public void .ctor(); // 0x00258AEC +} + +// Namespace: +public class GivenName : AttributeTypeAndValue // TypeDefIndex: 218 +{ + // Methods + public void .ctor(); // 0x00258B68 +} + +// Namespace: +public class Initial : AttributeTypeAndValue // TypeDefIndex: 219 +{ + // Methods + public void .ctor(); // 0x00258BE4 +} + +// Namespace: Mono.Security +internal class ASN1 // TypeDefIndex: 220 +{ + // Fields + private byte m_nTag; // 0x08 + private byte[] m_aValue; // 0x0C + private ArrayList elist; // 0x10 + + // Properties + public int Count { get; } // 0x00455820 + public byte Tag { get; } // 0x00455840 + public int Length { get; } // 0x00455848 + public byte[] Value { get; set; } // 0x0045585C 0x00455934 + public ASN1 Item { get; } // 0x00456594 + + // Methods + public void .ctor(); // 0x0045547C + public void .ctor(byte tag); // 0x004554C8 + public void .ctor(byte tag, byte[] data); // 0x004554A0 + public void .ctor(byte[] data); // 0x004554F0 + private bool CompareArray(byte[] array1, byte[] array2); // 0x004559E4 + public bool Equals(byte[] asn1); // 0x00455AAC + public bool CompareValue(byte[] value); // 0x00455AD8 + public ASN1 Add(ASN1 asn1); // 0x00455AE4 + public virtual byte[] GetBytes(); // 0x00455B9C + protected void Decode(byte[] asn1, int anPos, int anLength); // 0x004556D0 + protected void DecodeTLV(byte[] asn1, int pos, out byte tag, out int length, out byte[] content); // 0x0045641C + public ASN1 Element(int index, byte anTag); // 0x00456720 + public override string ToString(); // 0x004568C8 + public void SaveToFile(string filename); // 0x00456BD4 +} + +// Namespace: Mono.Security +internal static class ASN1Convert // TypeDefIndex: 221 +{ + // Methods + public static ASN1 FromDateTime(DateTime dt); // 0x00456DCC + public static ASN1 FromInt32(int value); // 0x004570EC + public static ASN1 FromOid(string oid); // 0x004572AC + public static ASN1 FromUnsignedBigInteger(byte[] big); // 0x004573B8 + public static int ToInt32(ASN1 asn1); // 0x0045750C + public static string ToOid(ASN1 asn1); // 0x00457688 + public static DateTime ToDateTime(ASN1 time); // 0x00457A98 +} + +// Namespace: Mono.Security +internal sealed class BitConverterLE // TypeDefIndex: 222 +{ + // Methods + private void .ctor(); // 0x0045BEA0 + private static byte[] GetUShortBytes(void * bytes); // 0x0045BEA8 + private static byte[] GetUIntBytes(void * bytes); // 0x0045BFF8 + private static byte[] GetULongBytes(void * bytes); // 0x0045C1D8 + internal static byte[] GetBytes(bool value); // 0x0045C4D8 + internal static byte[] GetBytes(char value); // 0x0045C574 + internal static byte[] GetBytes(short value); // 0x0045C594 + internal static byte[] GetBytes(int value); // 0x0045728C + internal static byte[] GetBytes(long value); // 0x0045C5B4 + internal static byte[] GetBytes(ushort value); // 0x0045C5D0 + internal static byte[] GetBytes(uint value); // 0x0045C5F0 + internal static byte[] GetBytes(ulong value); // 0x0045C610 + internal static byte[] GetBytes(float value); // 0x0045C62C + internal static byte[] GetBytes(double value); // 0x0045C64C + private static void UShortFromBytes(void * dst, byte[] src, int startIndex); // 0x0045C668 + private static void UIntFromBytes(void * dst, byte[] src, int startIndex); // 0x0045C798 + private static void ULongFromBytes(void * dst, byte[] src, int startIndex); // 0x0045C978 + internal static bool ToBoolean(byte[] value, int startIndex); // 0x0045CAC0 + internal static char ToChar(byte[] value, int startIndex); // 0x0045CB10 + internal static short ToInt16(byte[] value, int startIndex); // 0x0045CB40 + internal static int ToInt32(byte[] value, int startIndex); // 0x004587A4 + internal static long ToInt64(byte[] value, int startIndex); // 0x0045CB70 + internal static ushort ToUInt16(byte[] value, int startIndex); // 0x00458774 + internal static uint ToUInt32(byte[] value, int startIndex); // 0x004587D4 + internal static ulong ToUInt64(byte[] value, int startIndex); // 0x0045CBA4 + internal static float ToSingle(byte[] value, int startIndex); // 0x0045CBD8 + internal static double ToDouble(byte[] value, int startIndex); // 0x0045CC08 +} + +// Namespace: Mono.Security +internal sealed class PKCS7 // TypeDefIndex: 223 +{ + // Methods + private void .ctor(); // 0x00343194 + public static ASN1 Attribute(string oid, ASN1 value); // 0x0034319C + public static ASN1 AlgorithmIdentifier(string oid); // 0x003432AC + public static ASN1 AlgorithmIdentifier(string oid, ASN1 parameters); // 0x00343394 + public static ASN1 IssuerAndSerialNumber(X509Certificate x509); // 0x00343468 +} + +// Namespace: +public class Oid // TypeDefIndex: 224 +{ + // Fields + public const string rsaEncryption = "1.2.840.113549.1.1.1"; // 0x00 + public const string data = "1.2.840.113549.1.7.1"; // 0x00 + public const string signedData = "1.2.840.113549.1.7.2"; // 0x00 + public const string envelopedData = "1.2.840.113549.1.7.3"; // 0x00 + public const string signedAndEnvelopedData = "1.2.840.113549.1.7.4"; // 0x00 + public const string digestedData = "1.2.840.113549.1.7.5"; // 0x00 + public const string encryptedData = "1.2.840.113549.1.7.6"; // 0x00 + public const string contentType = "1.2.840.113549.1.9.3"; // 0x00 + public const string messageDigest = "1.2.840.113549.1.9.4"; // 0x00 + public const string signingTime = "1.2.840.113549.1.9.5"; // 0x00 + public const string countersignature = "1.2.840.113549.1.9.6"; // 0x00 + + // Methods + public void .ctor(); // 0x00344CB8 +} + +// Namespace: +public class ContentInfo // TypeDefIndex: 225 +{ + // Fields + private string contentType; // 0x08 + private ASN1 content; // 0x0C + + // Properties + public ASN1 ASN1 { get; } // 0x0034399C + public ASN1 Content { get; set; } // 0x00343A84 0x00343A8C + public string ContentType { get; set; } // 0x00343A94 0x00343A9C + + // Methods + public void .ctor(); // 0x0034365C + public void .ctor(string oid); // 0x003436DC + public void .ctor(byte[] data); // 0x003436F8 + public void .ctor(ASN1 asn1); // 0x00343778 + internal ASN1 GetASN1(); // 0x003439A0 + public byte[] GetBytes(); // 0x00343AA4 +} + +// Namespace: +public class EncryptedData // TypeDefIndex: 226 +{ + // Fields + private byte _version; // 0x08 + private ContentInfo _content; // 0x0C + private ContentInfo _encryptionAlgorithm; // 0x10 + private byte[] _encrypted; // 0x14 + + // Properties + public ASN1 ASN1 { get; } // 0x00343FC0 + public ContentInfo ContentInfo { get; } // 0x00343FD0 + public ContentInfo EncryptionAlgorithm { get; } // 0x00343FD8 + public byte[] EncryptedContent { get; } // 0x00343FE0 + public byte Version { get; set; } // 0x0034408C 0x00344094 + + // Methods + public void .ctor(); // 0x00343ADC + public void .ctor(byte[] data); // 0x00343AFC + public void .ctor(ASN1 asn1); // 0x00343B7C + internal ASN1 GetASN1(); // 0x00343FC8 + public byte[] GetBytes(); // 0x0034409C +} + +// Namespace: +public class EnvelopedData // TypeDefIndex: 227 +{ + // Fields + private byte _version; // 0x08 + private ContentInfo _content; // 0x0C + private ContentInfo _encryptionAlgorithm; // 0x10 + private ArrayList _recipientInfos; // 0x14 + private byte[] _encrypted; // 0x18 + + // Properties + public ArrayList RecipientInfos { get; } // 0x00344B38 + public ASN1 ASN1 { get; } // 0x00344B40 + public ContentInfo ContentInfo { get; } // 0x00344BB4 + public ContentInfo EncryptionAlgorithm { get; } // 0x00344BBC + public byte[] EncryptedContent { get; } // 0x00344BC4 + public byte Version { get; set; } // 0x00344C70 0x00344C78 + + // Methods + public void .ctor(); // 0x003440B0 + public void .ctor(byte[] data); // 0x00344168 + public void .ctor(ASN1 asn1); // 0x003441E8 + internal ASN1 GetASN1(); // 0x00344B44 + public byte[] GetBytes(); // 0x00344C80 +} + +// Namespace: +public class RecipientInfo // TypeDefIndex: 228 +{ + // Fields + private int _version; // 0x08 + private string _oid; // 0x0C + private byte[] _key; // 0x10 + private byte[] _ski; // 0x14 + private string _issuer; // 0x18 + private byte[] _serial; // 0x1C + + // Properties + public string Oid { get; } // 0x00344CC8 + public byte[] Key { get; } // 0x00344CD0 + public byte[] SubjectKeyIdentifier { get; } // 0x00344D7C + public string Issuer { get; } // 0x00344E28 + public byte[] Serial { get; } // 0x00344E30 + public int Version { get; } // 0x00344EDC + + // Methods + public void .ctor(); // 0x00344CC0 + public void .ctor(ASN1 data); // 0x0034486C +} + +// Namespace: +public class SignedData // TypeDefIndex: 229 +{ + // Fields + private byte version; // 0x08 + private string hashAlgorithm; // 0x0C + private ContentInfo contentInfo; // 0x10 + private X509CertificateCollection certs; // 0x14 + private ArrayList crls; // 0x18 + private SignerInfo signerInfo; // 0x1C + private bool mda; // 0x20 + private bool signed; // 0x21 + private static Dictionary`2 <>f__switch$map16; // 0x00 + + // Properties + public ASN1 ASN1 { get; } // 0x0034630C + public X509CertificateCollection Certificates { get; } // 0x00346F4C + public ContentInfo ContentInfo { get; } // 0x00346F54 + public ArrayList Crls { get; } // 0x00346F5C + public string HashName { get; set; } // 0x00346F64 0x003462E0 + public SignerInfo SignerInfo { get; } // 0x00346F6C + public byte Version { get; set; } // 0x00346F74 0x00346F7C + public bool UseAuthenticatedAttributes { get; set; } // 0x00346F84 0x00346F8C + + // Methods + public void .ctor(); // 0x00344EE4 + public void .ctor(byte[] data); // 0x0034506C + public void .ctor(ASN1 asn1); // 0x003450EC + public bool VerifySignature(AsymmetricAlgorithm aa); // 0x00346F94 + internal string OidToName(string oid); // 0x00345F48 + internal ASN1 GetASN1(); // 0x00346310 + public byte[] GetBytes(); // 0x003475D4 +} + +// Namespace: +public class SignerInfo // TypeDefIndex: 230 +{ + // Fields + private byte version; // 0x08 + private X509Certificate x509; // 0x0C + private string hashAlgorithm; // 0x10 + private AsymmetricAlgorithm key; // 0x14 + private ArrayList authenticatedAttributes; // 0x18 + private ArrayList unauthenticatedAttributes; // 0x1C + private byte[] signature; // 0x20 + private string issuer; // 0x24 + private byte[] serial; // 0x28 + private byte[] ski; // 0x2C + + // Properties + public string IssuerName { get; } // 0x0034768C + public byte[] SerialNumber { get; } // 0x00347694 + public byte[] SubjectKeyIdentifier { get; } // 0x00347740 + public ASN1 ASN1 { get; } // 0x003475D0 + public ArrayList AuthenticatedAttributes { get; } // 0x0034833C + public X509Certificate Certificate { get; set; } // 0x00348344 0x0034834C + public string HashName { get; set; } // 0x00348354 0x0034835C + public AsymmetricAlgorithm Key { get; set; } // 0x00348364 0x0034836C + public byte[] Signature { get; set; } // 0x00347474 0x00347520 + public ArrayList UnauthenticatedAttributes { get; } // 0x00348374 + public byte Version { get; set; } // 0x0034837C 0x00348384 + + // Methods + public void .ctor(); // 0x00344FD0 + public void .ctor(byte[] data); // 0x0034760C + public void .ctor(ASN1 asn1); // 0x00345924 + internal ASN1 GetASN1(); // 0x003477EC + public byte[] GetBytes(); // 0x0034838C +} + +// Namespace: Mono.Security +internal sealed class StrongName // TypeDefIndex: 231 +{ + // Fields + private RSA rsa; // 0x08 + private byte[] publicKey; // 0x0C + private byte[] keyToken; // 0x10 + private string tokenAlgorithm; // 0x14 + private static object lockObject; // 0x00 + private static bool initialized; // 0x04 + + // Properties + public bool CanSign { get; } // 0x0034879C + public RSA RSA { get; set; } // 0x00348934 0x00348620 + public byte[] PublicKey { get; } // 0x0034895C + public byte[] PublicKeyToken { get; } // 0x00348EF8 + public string TokenAlgorithm { get; set; } // 0x003490D4 0x00349140 + + // Methods + public void .ctor(); // 0x003483C4 + public void .ctor(int keySize); // 0x003483CC + public void .ctor(byte[] data); // 0x0034844C + public void .ctor(RSA rsa); // 0x00348634 + private static void .cctor(); // 0x003486FC + private void InvalidateCache(); // 0x0034878C + public byte[] GetBytes(); // 0x003492F4 + private uint RVAtoPosition(uint r, int sections, byte[] headers); // 0x00349324 + internal StrongNameSignature StrongHash(Stream stream, StrongNameOptions options); // 0x003493CC + public byte[] Hash(string fileName); // 0x00349DB8 + public bool Sign(string fileName); // 0x00349E24 + public bool Verify(string fileName); // 0x0034A33C + public bool Verify(Stream stream); // 0x0034A4B0 + public static bool IsAssemblyStrongnamed(string assemblyName); // 0x0034A760 + public static bool VerifySignature(byte[] publicKey, int algorithm, byte[] hash, byte[] signature); // 0x0034AE5C + private static bool Verify(RSA rsa, AssemblyHashAlgorithm algorithm, byte[] hash, byte[] signature); // 0x0034A674 +} + +// Namespace: +internal class StrongNameSignature // TypeDefIndex: 232 +{ + // Fields + private byte[] hash; // 0x08 + private byte[] signature; // 0x0C + private uint signaturePosition; // 0x10 + private uint signatureLength; // 0x14 + private uint metadataPosition; // 0x18 + private uint metadataLength; // 0x1C + private byte cliFlag; // 0x20 + private uint cliFlagPosition; // 0x24 + + // Properties + public byte[] Hash { get; set; } // 0x0034AF9C 0x0034AFA4 + public byte[] Signature { get; set; } // 0x0034AFAC 0x0034AFB4 + public uint MetadataPosition { get; set; } // 0x0034AFBC 0x0034AFC4 + public uint MetadataLength { get; set; } // 0x0034AFCC 0x0034AFD4 + public uint SignaturePosition { get; set; } // 0x0034AFDC 0x0034AFE4 + public uint SignatureLength { get; set; } // 0x0034AFEC 0x0034AFF4 + public byte CliFlag { get; set; } // 0x0034AFFC 0x0034B004 + public uint CliFlagPosition { get; set; } // 0x0034B00C 0x0034B014 + + // Methods + public void .ctor(); // 0x00349DB0 +} + +// Namespace: +internal enum StrongNameOptions // TypeDefIndex: 233 +{ + Metadata = 0, + Signature = 1 +} + +// Namespace: Mono.Security +internal class StrongNameManager // TypeDefIndex: 234 +{ + // Fields + private static Hashtable mappings; // 0x00 + private static Hashtable tokens; // 0x04 + + // Methods + public void .ctor(); // 0x0034B01C + private static void .cctor(); // 0x0034B024 + public static void LoadConfig(string filename); // 0x0034B028 + private static void LoadMapping(SecurityElement mapping); // 0x0034B3D4 + private static void LoadVerificationSettings(SecurityElement settings); // 0x0034BB50 + public static byte[] GetMappedPublicKey(byte[] token); // 0x0034AAE4 + public static bool MustVerify(AssemblyName an); // 0x0034AC34 + public override string ToString(); // 0x0034C680 +} + +// Namespace: +private class Element // TypeDefIndex: 235 +{ + // Fields + internal Hashtable assemblies; // 0x08 + + // Methods + public void .ctor(); // 0x0034D0B4 + public void .ctor(string assembly, string users); // 0x0034C580 + public string GetUsers(string assembly); // 0x0034C5CC +} + +// Namespace: Mono.Security +internal enum UriPartial // TypeDefIndex: 236 +{ + Scheme = 0, + Authority = 1, + Path = 2 +} + +// Namespace: Mono.Security +internal class Uri // TypeDefIndex: 237 +{ + // Fields + private bool isUnixFilePath; // 0x08 + private string source; // 0x0C + private string scheme; // 0x10 + private string host; // 0x14 + private int port; // 0x18 + private string path; // 0x1C + private string query; // 0x20 + private string fragment; // 0x24 + private string userinfo; // 0x28 + private bool isUnc; // 0x2C + private bool isOpaquePart; // 0x2D + private string[] segments; // 0x30 + private bool userEscaped; // 0x34 + private string cachedAbsoluteUri; // 0x38 + private string cachedToString; // 0x3C + private string cachedLocalPath; // 0x40 + private int cachedHashCode; // 0x44 + private bool reduce; // 0x48 + private static readonly string hexUpperChars; // 0x00 + public static readonly string SchemeDelimiter; // 0x04 + public static readonly string UriSchemeFile; // 0x08 + public static readonly string UriSchemeFtp; // 0x0C + public static readonly string UriSchemeGopher; // 0x10 + public static readonly string UriSchemeHttp; // 0x14 + public static readonly string UriSchemeHttps; // 0x18 + public static readonly string UriSchemeMailto; // 0x1C + public static readonly string UriSchemeNews; // 0x20 + public static readonly string UriSchemeNntp; // 0x24 + private static UriScheme[] schemes; // 0x28 + private static Dictionary`2 <>f__switch$map17; // 0x2C + + // Properties + public string AbsolutePath { get; } // 0x0034E4D0 + public string AbsoluteUri { get; } // 0x0034E4D8 + public string Authority { get; } // 0x0034ED64 + public string Fragment { get; } // 0x0034F088 + public string Host { get; } // 0x0034F090 + public bool IsDefaultPort { get; } // 0x0034F098 + public bool IsFile { get; } // 0x0034F130 + public bool IsLoopback { get; } // 0x0034F200 + public bool IsUnc { get; } // 0x0034F358 + public string LocalPath { get; } // 0x0034F360 + public string PathAndQuery { get; } // 0x0034F7A8 + public int Port { get; } // 0x0034F838 + public string Query { get; } // 0x0034F840 + public string Scheme { get; } // 0x0034F848 + public string[] Segments { get; } // 0x0034F850 + public bool UserEscaped { get; } // 0x0034FD24 + public string UserInfo { get; } // 0x0034FD2C + + // Methods + public void .ctor(string uriString); // 0x0034D130 + public void .ctor(string uriString, bool dontEscape); // 0x0034D138 + public void .ctor(string uriString, bool dontEscape, bool reduce); // 0x0034D300 + public void .ctor(Uri baseUri, string relativeUri); // 0x0034D40C + public void .ctor(Uri baseUri, string relativeUri, bool dontEscape); // 0x0034D428 + private static void .cctor(); // 0x0034E004 + internal static bool IsIPv4Address(string name); // 0x0034FD34 + internal static bool IsDomainAddress(string name); // 0x0034FF48 + public static bool CheckSchemeName(string schemeName); // 0x003500EC + public override bool Equals(object comparant); // 0x00350238 + public override int GetHashCode(); // 0x003505EC + public string GetLeftPart(UriPartial part); // 0x0034E58C + public static int FromHex(char digit); // 0x0035077C + public static string HexEscape(char character); // 0x00350860 + public static char HexUnescape(string pattern, int index); // 0x00350A44 + public static bool IsHexDigit(char digit); // 0x00350DD8 + public static bool IsHexEncoding(string pattern, int index); // 0x00350E14 + public string MakeRelative(Uri toUri); // 0x00350F88 + public override string ToString(); // 0x0035138C + protected void Escape(); // 0x00351728 + protected static string EscapeString(string str); // 0x0034DF70 + internal static string EscapeString(string str, bool escapeReserved, bool escapeHex, bool escapeBrackets); // 0x003517B0 + protected void Parse(); // 0x0034D23C + protected string Unescape(string str); // 0x0034F7A0 + internal string Unescape(string str, bool excludeSharp); // 0x00351530 + private void ParseAsWindowsUNC(string uriString); // 0x00352E08 + private void ParseAsWindowsAbsoluteFilePath(string uriString); // 0x003530A0 + private void ParseAsUnixAbsoluteFilePath(string uriString); // 0x00353284 + private void Parse(string uriString); // 0x00351BFC + private static string Reduce(string path); // 0x003538D8 + internal static string GetSchemeDelimiter(string scheme); // 0x00353E18 + internal static int GetDefaultPort(string scheme); // 0x0034EE74 + private string GetOpaqueWiseSchemeDelimiter(); // 0x003506DC + protected bool IsBadFileSystemCharacter(char ch); // 0x00354058 + protected static bool IsExcludedCharacter(char ch); // 0x003540AC + private static bool IsPredefinedScheme(string scheme); // 0x003534B4 + protected bool IsReservedCharacter(char ch); // 0x00354120 +} + +// Namespace: +private struct UriScheme // TypeDefIndex: 238 +{ + // Fields + public string scheme; // 0x08 + public string delimiter; // 0x0C + public int defaultPort; // 0x10 + + // Methods + public void .ctor(string s, string d, int p); // 0x000A6320 +} + +// Namespace: Mono.Xml +internal class SecurityParser : SmallXmlParser, IContentHandler // TypeDefIndex: 239 +{ + // Fields + private SecurityElement root; // 0x38 + private SecurityElement current; // 0x3C + private Stack stack; // 0x40 + + // Methods + public void .ctor(); // 0x00265FE4 + public void LoadXml(string xml); // 0x0026615C + public SecurityElement ToXml(); // 0x002664A0 + public void OnStartParsing(SmallXmlParser parser); // 0x002664A8 + public void OnProcessingInstruction(string name, string text); // 0x002664AC + public void OnIgnorableWhitespace(string s); // 0x002664B0 + public void OnStartElement(string name, IAttrList attrs); // 0x002664B4 + public void OnEndElement(string name); // 0x00266844 + public void OnChars(string ch); // 0x002668F0 + public void OnEndParsing(SmallXmlParser parser); // 0x002669A0 +} + +// Namespace: Mono.Xml +internal class DefaultHandler : IContentHandler // TypeDefIndex: 240 +{ + // Methods + public void .ctor(); // 0x00265FC0 + public void OnStartParsing(SmallXmlParser parser); // 0x00265FC8 + public void OnEndParsing(SmallXmlParser parser); // 0x00265FCC + public void OnStartElement(string name, IAttrList attrs); // 0x00265FD0 + public void OnEndElement(string name); // 0x00265FD4 + public void OnChars(string s); // 0x00265FD8 + public void OnIgnorableWhitespace(string s); // 0x00265FDC + public void OnProcessingInstruction(string name, string text); // 0x00265FE0 +} + +// Namespace: Mono.Xml +internal class SmallXmlParser // TypeDefIndex: 241 +{ + // Fields + private IContentHandler handler; // 0x08 + private TextReader reader; // 0x0C + private Stack elementNames; // 0x10 + private Stack xmlSpaces; // 0x14 + private string xmlSpace; // 0x18 + private StringBuilder buffer; // 0x1C + private char[] nameBuffer; // 0x20 + private bool isWhitespace; // 0x24 + private AttrListImpl attributes; // 0x28 + private int line; // 0x2C + private int column; // 0x30 + private bool resetColumn; // 0x34 + private static Dictionary`2 <>f__switch$map18; // 0x00 + + // Methods + public void .ctor(); // 0x0026605C + private Exception Error(string msg); // 0x00266A38 + private Exception UnexpectedEndError(); // 0x00266BC4 + private bool IsNameChar(char c, bool start); // 0x00266CF4 + private bool IsWhitespace(int c); // 0x00266E00 + public void SkipWhitespaces(); // 0x00266E2C + private void HandleWhitespaces(); // 0x00266F18 + public void SkipWhitespaces(bool expected); // 0x00266E34 + private int Peek(); // 0x0026708C + private int Read(); // 0x00267008 + public void Expect(int c); // 0x002670C0 + private string ReadUntil(char until, bool handleReferences); // 0x002671F4 + public string ReadName(); // 0x0026773C + public void Parse(TextReader input, IContentHandler handler); // 0x00266210 + private void Cleanup(); // 0x0026855C + public void ReadContent(); // 0x00267974 + private void HandleBufferedContent(); // 0x002683B4 + private void ReadCharacters(); // 0x00268A70 + private void ReadReference(); // 0x00267340 + private int ReadCharacterReference(); // 0x00268B0C + private void ReadAttribute(AttrListImpl a); // 0x002688A4 + private void ReadCDATASection(); // 0x00268680 + private void ReadComment(); // 0x002687DC +} + +// Namespace: +public interface IContentHandler // TypeDefIndex: 242 +{ + // Methods + void OnStartParsing(SmallXmlParser parser); + void OnEndParsing(SmallXmlParser parser); + void OnStartElement(string name, IAttrList attrs); + void OnEndElement(string name); + void OnProcessingInstruction(string name, string text); + void OnChars(string text); + void OnIgnorableWhitespace(string text); +} + +// Namespace: +public interface IAttrList // TypeDefIndex: 243 +{ + // Properties + int Length { get; } + bool IsEmpty { get; } + string[] Names { get; } + string[] Values { get; } + + // Methods + string GetName(int i); + string GetValue(int i); + string GetValue(string name); +} + +// Namespace: +private class AttrListImpl : IAttrList // TypeDefIndex: 244 +{ + // Fields + private ArrayList attrNames; // 0x08 + private ArrayList attrValues; // 0x0C + + // Properties + public int Length { get; } // 0x00268CA0 + public bool IsEmpty { get; } // 0x00268CD4 + public string[] Names { get; } // 0x00269030 + public string[] Values { get; } // 0x00269140 + + // Methods + public void .ctor(); // 0x002669A4 + public string GetName(int i); // 0x00268D18 + public string GetValue(int i); // 0x00268DCC + public string GetValue(string name); // 0x00268E80 + internal void Clear(); // 0x00268620 + internal void Add(string name, string value); // 0x00268C30 +} + +// Namespace: Mono.Xml +internal class SmallXmlParserException : SystemException // TypeDefIndex: 245 +{ + // Fields + private int line; // 0x34 + private int column; // 0x38 + + // Properties + public int Line { get; } // 0x00269250 + public int Column { get; } // 0x00269258 + + // Methods + public void .ctor(string msg, int line, int column); // 0x00266AC4 +} + +// Namespace: Mono +internal abstract class DataConverter // TypeDefIndex: 246 +{ + // Fields + private static DataConverter SwapConv; // 0x00 + private static DataConverter CopyConv; // 0x04 + public static readonly bool IsLittleEndian; // 0x08 + + // Properties + public static DataConverter LittleEndian { get; } // 0x003F9AE4 + public static DataConverter BigEndian { get; } // 0x003F9BF8 + public static DataConverter Native { get; } // 0x003F9D0C + + // Methods + protected void .ctor(); // 0x003F93DC + private static void .cctor(); // 0x003F93E4 + public abstract double GetDouble(byte[] data, int index); + public abstract float GetFloat(byte[] data, int index); + public abstract long GetInt64(byte[] data, int index); + public abstract int GetInt32(byte[] data, int index); + public abstract short GetInt16(byte[] data, int index); + public abstract uint GetUInt32(byte[] data, int index); + public abstract ushort GetUInt16(byte[] data, int index); + public abstract ulong GetUInt64(byte[] data, int index); + public abstract void PutBytes(byte[] dest, int destIdx, double value); + public abstract void PutBytes(byte[] dest, int destIdx, float value); + public abstract void PutBytes(byte[] dest, int destIdx, int value); + public abstract void PutBytes(byte[] dest, int destIdx, long value); + public abstract void PutBytes(byte[] dest, int destIdx, short value); + public abstract void PutBytes(byte[] dest, int destIdx, ushort value); + public abstract void PutBytes(byte[] dest, int destIdx, uint value); + public abstract void PutBytes(byte[] dest, int destIdx, ulong value); + public byte[] GetBytes(double value); // 0x003F95EC + public byte[] GetBytes(float value); // 0x003F9690 + public byte[] GetBytes(int value); // 0x003F972C + public byte[] GetBytes(long value); // 0x003F97C8 + public byte[] GetBytes(short value); // 0x003F986C + public byte[] GetBytes(ushort value); // 0x003F9908 + public byte[] GetBytes(uint value); // 0x003F99A4 + public byte[] GetBytes(ulong value); // 0x003F9A40 + private static int Align(int current, int align); // 0x003F9D98 + public static byte[] Pack(string description, object[] args); // 0x003F9DB8 + public static byte[] PackEnumerable(string description, IEnumerable args); // 0x003FAE0C + private static bool PackOne(PackContext b, object oarg); // 0x003F9FBC + private static bool Prepare(byte[] buffer, int idx, int size, bool align); // 0x003FB4AC + public static IList Unpack(string description, byte[] buffer, int startIndex); // 0x003FB590 + internal void Check(byte[] dest, int destIdx, int size); // 0x003FC95C +} + +// Namespace: +private class PackContext // TypeDefIndex: 247 +{ + // Fields + public byte[] buffer; // 0x08 + private int next; // 0x0C + public string description; // 0x10 + public int i; // 0x14 + public DataConverter conv; // 0x18 + public int repeat; // 0x1C + public int align; // 0x20 + + // Methods + public void .ctor(); // 0x003F9FB4 + public void Add(byte[] group); // 0x003FB280 + public byte[] Get(); // 0x003FAD54 +} + +// Namespace: +private class CopyConverter : DataConverter // TypeDefIndex: 248 +{ + // Methods + public void .ctor(); // 0x003F9568 + public override double GetDouble(byte[] data, int index); // 0x003FCA64 + public override ulong GetUInt64(byte[] data, int index); // 0x003FCC18 + public override long GetInt64(byte[] data, int index); // 0x003FCDC8 + public override float GetFloat(byte[] data, int index); // 0x003FCF78 + public override int GetInt32(byte[] data, int index); // 0x003FD124 + public override uint GetUInt32(byte[] data, int index); // 0x003FD2D0 + public override short GetInt16(byte[] data, int index); // 0x003FD47C + public override ushort GetUInt16(byte[] data, int index); // 0x003FD628 + public override void PutBytes(byte[] dest, int destIdx, double value); // 0x003FD7D4 + public override void PutBytes(byte[] dest, int destIdx, float value); // 0x003FD838 + public override void PutBytes(byte[] dest, int destIdx, int value); // 0x003FD8A0 + public override void PutBytes(byte[] dest, int destIdx, uint value); // 0x003FD8FC + public override void PutBytes(byte[] dest, int destIdx, long value); // 0x003FD958 + public override void PutBytes(byte[] dest, int destIdx, ulong value); // 0x003FD9B8 + public override void PutBytes(byte[] dest, int destIdx, short value); // 0x003FDA18 + public override void PutBytes(byte[] dest, int destIdx, ushort value); // 0x003FDA74 +} + +// Namespace: +private class SwapConverter : DataConverter // TypeDefIndex: 249 +{ + // Methods + public void .ctor(); // 0x003F94E4 + public override double GetDouble(byte[] data, int index); // 0x003FDAD0 + public override ulong GetUInt64(byte[] data, int index); // 0x003FDC80 + public override long GetInt64(byte[] data, int index); // 0x003FDE2C + public override float GetFloat(byte[] data, int index); // 0x003FDFD8 + public override int GetInt32(byte[] data, int index); // 0x003FE180 + public override uint GetUInt32(byte[] data, int index); // 0x003FE328 + public override short GetInt16(byte[] data, int index); // 0x003FE4D0 + public override ushort GetUInt16(byte[] data, int index); // 0x003FE678 + public override void PutBytes(byte[] dest, int destIdx, double value); // 0x003FE820 + public override void PutBytes(byte[] dest, int destIdx, float value); // 0x003FE894 + public override void PutBytes(byte[] dest, int destIdx, int value); // 0x003FE90C + public override void PutBytes(byte[] dest, int destIdx, uint value); // 0x003FE984 + public override void PutBytes(byte[] dest, int destIdx, long value); // 0x003FE9FC + public override void PutBytes(byte[] dest, int destIdx, ulong value); // 0x003FEA84 + public override void PutBytes(byte[] dest, int destIdx, short value); // 0x003FEB0C + public override void PutBytes(byte[] dest, int destIdx, ushort value); // 0x003FEB84 +} + +// Namespace: Mono +internal class Runtime // TypeDefIndex: 250 +{ + // Methods + public void .ctor(); // 0x00455468 + private static void mono_runtime_install_handlers(); // 0x00455470 + internal static void InstallSignalHandlers(); // 0x00455474 + internal static string GetDisplayName(); // 0x00455478 +} + +// Namespace: System.Collections.Generic +internal sealed class CollectionDebuggerView`1 // TypeDefIndex: 251 +{ + // Fields + private readonly ICollection`1 c; // 0x00 + + // Properties + public T[] Items { get; } + + // Methods + public void .ctor(ICollection`1 col); +} + +// Namespace: System.Collections.Generic +internal sealed class CollectionDebuggerView`2 // TypeDefIndex: 252 +{ + // Fields + private readonly ICollection`1> c; // 0x00 + + // Properties + public KeyValuePair`2[] Items { get; } + + // Methods + public void .ctor(ICollection`1> col); +} + +// Namespace: System.Collections.Generic +[Serializable] +public abstract class Comparer`1 : IComparer`1, IComparer // TypeDefIndex: 253 +{ + // Fields + private static readonly Comparer`1 _default; // 0x00 + + // Properties + public static Comparer`1 Default { get; } + + // Methods + protected void .ctor(); + private static void .cctor(); + private int System.Collections.IComparer.Compare(object x, object y); + public abstract int Compare(T x, T y); +} + +// Namespace: +private sealed class DefaultComparer : Comparer`1 // TypeDefIndex: 254 +{ + // Methods + public void .ctor(); + public override int Compare(T x, T y); +} + +// Namespace: System.Collections.Generic +[Serializable] +internal sealed class GenericComparer`1 : Comparer`1 // TypeDefIndex: 255 +{ + // Methods + public void .ctor(); + public override int Compare(T x, T y); +} + +// Namespace: System.Collections.Generic +internal struct Link // TypeDefIndex: 256 +{ + // Fields + public int HashCode; // 0x08 + public int Next; // 0x0C + +} + +// Namespace: System.Collections.Generic +[Serializable] +public class Dictionary`2 : IEnumerable, ISerializable, ICollection, ICollection`1>, IEnumerable`1>, IDictionary`2, IDictionary, IDeserializationCallback // TypeDefIndex: 257 +{ + // Fields + private const int INITIAL_SIZE = 10; // 0x00 + private const float DEFAULT_LOAD_FACTOR = 0.9; // 0x00 + private const int NO_SLOT = -1; // 0x00 + private const int HASH_FLAG = -2147483648; // 0x00 + private int[] table; // 0x00 + private Link[] linkSlots; // 0x00 + private T[] keySlots; // 0x00 + private T[] valueSlots; // 0x00 + private int touchedSlots; // 0x00 + private int emptySlot; // 0x00 + private int count; // 0x00 + private int threshold; // 0x00 + private IEqualityComparer`1 hcp; // 0x00 + private SerializationInfo serialization_info; // 0x00 + private int generation; // 0x00 + private static Transform`1 <>f__am$cacheB; // 0x00 + + // Properties + private ICollection`1 System.Collections.Generic.IDictionary.Keys { get; } + private ICollection`1 System.Collections.Generic.IDictionary.Values { get; } + private ICollection System.Collections.IDictionary.Keys { get; } + private ICollection System.Collections.IDictionary.Values { get; } + private bool System.Collections.IDictionary.IsFixedSize { get; } + private bool System.Collections.IDictionary.IsReadOnly { get; } + private object System.Collections.IDictionary.Item { get; set; } + private bool System.Collections.ICollection.IsSynchronized { get; } + private object System.Collections.ICollection.SyncRoot { get; } + private bool System.Collections.Generic.ICollection>.IsReadOnly { get; } + public int Count { get; } + public T Item { get; set; } + public IEqualityComparer`1 Comparer { get; } + public KeyCollection Keys { get; } + public ValueCollection Values { get; } + + // Methods + public void .ctor(); + public void .ctor(IEqualityComparer`1 comparer); + public void .ctor(IDictionary`2 dictionary); + public void .ctor(int capacity); + public void .ctor(IDictionary`2 dictionary, IEqualityComparer`1 comparer); + public void .ctor(int capacity, IEqualityComparer`1 comparer); + protected void .ctor(SerializationInfo info, StreamingContext context); + private void System.Collections.IDictionary.Add(object key, object value); + private bool System.Collections.IDictionary.Contains(object key); + private void System.Collections.IDictionary.Remove(object key); + private void System.Collections.Generic.ICollection>.Add(KeyValuePair`2 keyValuePair); + private bool System.Collections.Generic.ICollection>.Contains(KeyValuePair`2 keyValuePair); + private void System.Collections.Generic.ICollection>.CopyTo(KeyValuePair`2[] array, int index); + private bool System.Collections.Generic.ICollection>.Remove(KeyValuePair`2 keyValuePair); + private void System.Collections.ICollection.CopyTo(Array array, int index); + private IEnumerator System.Collections.IEnumerable.GetEnumerator(); + private IEnumerator`1> System.Collections.Generic.IEnumerable>.GetEnumerator(); + private IDictionaryEnumerator System.Collections.IDictionary.GetEnumerator(); + private void Init(int capacity, IEqualityComparer`1 hcp); + private void InitArrays(int size); + private void CopyToCheck(Array array, int index); + private void Do_CopyTo(T[] array, int index, Transform`1 transform); + private static KeyValuePair`2 make_pair(T key, T value); + private static T pick_key(T key, T value); + private static T pick_value(T key, T value); + private void CopyTo(KeyValuePair`2[] array, int index); + private void Do_ICollectionCopyTo(Array array, int index, Transform`1 transform); + private void Resize(); + public void Add(T key, T value); + public void Clear(); + public bool ContainsKey(T key); + public bool ContainsValue(T value); + public virtual void GetObjectData(SerializationInfo info, StreamingContext context); + public virtual void OnDeserialization(object sender); + public bool Remove(T key); + public bool TryGetValue(T key, out T value); + private T ToTKey(object key); + private T ToTValue(object value); + private bool ContainsKeyValuePair(KeyValuePair`2 pair); + public Enumerator GetEnumerator(); + private static DictionaryEntry m__0(T key, T value); +} + +// Namespace: +[Serializable] +private class ShimEnumerator : IEnumerator, IDictionaryEnumerator // TypeDefIndex: 258 +{ + // Fields + private Enumerator host_enumerator; // 0x00 + + // Properties + public DictionaryEntry Entry { get; } + public object Key { get; } + public object Value { get; } + public object Current { get; } + + // Methods + public void .ctor(Dictionary`2 host); + public void Dispose(); + public bool MoveNext(); + public void Reset(); +} + +// Namespace: +[Serializable] +public struct Enumerator : IEnumerator, IDisposable, IEnumerator`1>, IDictionaryEnumerator // TypeDefIndex: 259 +{ + // Fields + private Dictionary`2 dictionary; // 0x00 + private int next; // 0x00 + private int stamp; // 0x00 + internal KeyValuePair`2 current; // 0x00 + + // Properties + private object System.Collections.IEnumerator.Current { get; } + private DictionaryEntry System.Collections.IDictionaryEnumerator.Entry { get; } + private object System.Collections.IDictionaryEnumerator.Key { get; } + private object System.Collections.IDictionaryEnumerator.Value { get; } + public KeyValuePair`2 Current { get; } + internal T CurrentKey { get; } + internal T CurrentValue { get; } + + // Methods + internal void .ctor(Dictionary`2 dictionary); + private void System.Collections.IEnumerator.Reset(); + public bool MoveNext(); + internal void Reset(); + private void VerifyState(); + private void VerifyCurrent(); + public void Dispose(); +} + +// Namespace: +[Serializable] +public sealed class KeyCollection : IEnumerable, ICollection, ICollection`1, IEnumerable`1 // TypeDefIndex: 260 +{ + // Fields + private Dictionary`2 dictionary; // 0x00 + + // Properties + private bool System.Collections.Generic.ICollection.IsReadOnly { get; } + private bool System.Collections.ICollection.IsSynchronized { get; } + private object System.Collections.ICollection.SyncRoot { get; } + public int Count { get; } + + // Methods + public void .ctor(Dictionary`2 dictionary); + private void System.Collections.Generic.ICollection.Add(T item); + private void System.Collections.Generic.ICollection.Clear(); + private bool System.Collections.Generic.ICollection.Contains(T item); + private bool System.Collections.Generic.ICollection.Remove(T item); + private IEnumerator`1 System.Collections.Generic.IEnumerable.GetEnumerator(); + private void System.Collections.ICollection.CopyTo(Array array, int index); + private IEnumerator System.Collections.IEnumerable.GetEnumerator(); + public void CopyTo(T[] array, int index); + public Enumerator GetEnumerator(); +} + +// Namespace: +[Serializable] +public struct Enumerator : IEnumerator, IDisposable, IEnumerator`1 // TypeDefIndex: 261 +{ + // Fields + private Enumerator host_enumerator; // 0x00 + + // Properties + private object System.Collections.IEnumerator.Current { get; } + public T Current { get; } + + // Methods + internal void .ctor(Dictionary`2 host); + private void System.Collections.IEnumerator.Reset(); + public void Dispose(); + public bool MoveNext(); +} + +// Namespace: +[Serializable] +public sealed class ValueCollection : IEnumerable, ICollection, ICollection`1, IEnumerable`1 // TypeDefIndex: 262 +{ + // Fields + private Dictionary`2 dictionary; // 0x00 + + // Properties + private bool System.Collections.Generic.ICollection.IsReadOnly { get; } + private bool System.Collections.ICollection.IsSynchronized { get; } + private object System.Collections.ICollection.SyncRoot { get; } + public int Count { get; } + + // Methods + public void .ctor(Dictionary`2 dictionary); + private void System.Collections.Generic.ICollection.Add(T item); + private void System.Collections.Generic.ICollection.Clear(); + private bool System.Collections.Generic.ICollection.Contains(T item); + private bool System.Collections.Generic.ICollection.Remove(T item); + private IEnumerator`1 System.Collections.Generic.IEnumerable.GetEnumerator(); + private void System.Collections.ICollection.CopyTo(Array array, int index); + private IEnumerator System.Collections.IEnumerable.GetEnumerator(); + public void CopyTo(T[] array, int index); + public Enumerator GetEnumerator(); +} + +// Namespace: +[Serializable] +public struct Enumerator : IEnumerator, IDisposable, IEnumerator`1 // TypeDefIndex: 263 +{ + // Fields + private Enumerator host_enumerator; // 0x00 + + // Properties + private object System.Collections.IEnumerator.Current { get; } + public T Current { get; } + + // Methods + internal void .ctor(Dictionary`2 host); + private void System.Collections.IEnumerator.Reset(); + public void Dispose(); + public bool MoveNext(); +} + +// Namespace: +private delegate T Transform`1(T key, T value); // TypeDefIndex: 264; 0x00000000 + +// Namespace: System.Collections.Generic +[Serializable] +public abstract class EqualityComparer`1 : IEqualityComparer`1, IEqualityComparer // TypeDefIndex: 265 +{ + // Fields + private static readonly EqualityComparer`1 _default; // 0x00 + + // Properties + public static EqualityComparer`1 Default { get; } + + // Methods + protected void .ctor(); + private static void .cctor(); + private int System.Collections.IEqualityComparer.GetHashCode(object obj); + private bool System.Collections.IEqualityComparer.Equals(object x, object y); + public abstract int GetHashCode(T obj); + public abstract bool Equals(T x, T y); +} + +// Namespace: +[Serializable] +private sealed class DefaultComparer : EqualityComparer`1 // TypeDefIndex: 266 +{ + // Methods + public void .ctor(); + public override int GetHashCode(T obj); + public override bool Equals(T x, T y); +} + +// Namespace: System.Collections.Generic +[Serializable] +internal sealed class GenericEqualityComparer`1 : EqualityComparer`1 // TypeDefIndex: 267 +{ + // Methods + public void .ctor(); + public override int GetHashCode(T obj); + public override bool Equals(T x, T y); +} + +// Namespace: System.Collections.Generic +public interface IComparer`1 // TypeDefIndex: 268 +{ + // Methods + int Compare(T x, T y); +} + +// Namespace: System.Collections.Generic +public interface IDictionary`2 : IEnumerable, ICollection`1>, IEnumerable`1> // TypeDefIndex: 269 +{ + // Properties + T Item { get; set; } + ICollection`1 Keys { get; } + ICollection`1 Values { get; } + + // Methods + void Add(T key, T value); + bool ContainsKey(T key); + bool Remove(T key); + bool TryGetValue(T key, out T value); +} + +// Namespace: System.Collections.Generic +public interface IEqualityComparer`1 // TypeDefIndex: 270 +{ + // Methods + bool Equals(T x, T y); + int GetHashCode(T obj); +} + +// Namespace: System.Collections.Generic +[Serializable] +public class KeyNotFoundException : SystemException, ISerializable // TypeDefIndex: 271 +{ + // Methods + public void .ctor(); // 0x00388FA0 + public void .ctor(string message); // 0x00389008 + public void .ctor(string message, Exception innerException); // 0x00389010 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x00389018 +} + +// Namespace: System.Collections.Generic +[Serializable] +public struct KeyValuePair`2 // TypeDefIndex: 272 +{ + // Fields + private T key; // 0x00 + private T value; // 0x00 + + // Properties + public T Key { get; set; } + public T Value { get; set; } + + // Methods + public void .ctor(T key, T value); + public override string ToString(); +} + +// Namespace: System.Collections.Generic +[Serializable] +public class List`1 : IEnumerable, ICollection, IList, ICollection`1, IEnumerable`1, IList`1 // TypeDefIndex: 273 +{ + // Fields + private const int DefaultCapacity = 4; // 0x00 + private T[] _items; // 0x00 + private int _size; // 0x00 + private int _version; // 0x00 + private static readonly T[] EmptyArray; // 0x00 + + // Properties + private bool System.Collections.Generic.ICollection.IsReadOnly { get; } + private bool System.Collections.ICollection.IsSynchronized { get; } + private object System.Collections.ICollection.SyncRoot { get; } + private bool System.Collections.IList.IsFixedSize { get; } + private bool System.Collections.IList.IsReadOnly { get; } + private object System.Collections.IList.Item { get; set; } + public int Capacity { get; set; } + public int Count { get; } + public T Item { get; set; } + + // Methods + public void .ctor(); + public void .ctor(IEnumerable`1 collection); + public void .ctor(int capacity); + internal void .ctor(T[] data, int size); + private static void .cctor(); + private IEnumerator`1 System.Collections.Generic.IEnumerable.GetEnumerator(); + private void System.Collections.ICollection.CopyTo(Array array, int arrayIndex); + private IEnumerator System.Collections.IEnumerable.GetEnumerator(); + private int System.Collections.IList.Add(object item); + private bool System.Collections.IList.Contains(object item); + private int System.Collections.IList.IndexOf(object item); + private void System.Collections.IList.Insert(int index, object item); + private void System.Collections.IList.Remove(object item); + public void Add(T item); + private void GrowIfNeeded(int newCount); + private void CheckRange(int idx, int count); + private void AddCollection(ICollection`1 collection); + private void AddEnumerable(IEnumerable`1 enumerable); + public void AddRange(IEnumerable`1 collection); + public ReadOnlyCollection`1 AsReadOnly(); + public int BinarySearch(T item); + public int BinarySearch(T item, IComparer`1 comparer); + public int BinarySearch(int index, int count, T item, IComparer`1 comparer); + public void Clear(); + public bool Contains(T item); + public List`1 ConvertAll(Converter`2 converter); + public void CopyTo(T[] array); + public void CopyTo(T[] array, int arrayIndex); + public void CopyTo(int index, T[] array, int arrayIndex, int count); + public bool Exists(Predicate`1 match); + public T Find(Predicate`1 match); + private static void CheckMatch(Predicate`1 match); + public List`1 FindAll(Predicate`1 match); + private List`1 FindAllStackBits(Predicate`1 match); + private List`1 FindAllList(Predicate`1 match); + public int FindIndex(Predicate`1 match); + public int FindIndex(int startIndex, Predicate`1 match); + public int FindIndex(int startIndex, int count, Predicate`1 match); + private int GetIndex(int startIndex, int count, Predicate`1 match); + public T FindLast(Predicate`1 match); + public int FindLastIndex(Predicate`1 match); + public int FindLastIndex(int startIndex, Predicate`1 match); + public int FindLastIndex(int startIndex, int count, Predicate`1 match); + private int GetLastIndex(int startIndex, int count, Predicate`1 match); + public void ForEach(Action`1 action); + public Enumerator GetEnumerator(); + public List`1 GetRange(int index, int count); + public int IndexOf(T item); + public int IndexOf(T item, int index); + public int IndexOf(T item, int index, int count); + private void Shift(int start, int delta); + private void CheckIndex(int index); + public void Insert(int index, T item); + private void CheckCollection(IEnumerable`1 collection); + public void InsertRange(int index, IEnumerable`1 collection); + private void InsertCollection(int index, ICollection`1 collection); + private void InsertEnumeration(int index, IEnumerable`1 enumerable); + public int LastIndexOf(T item); + public int LastIndexOf(T item, int index); + public int LastIndexOf(T item, int index, int count); + public bool Remove(T item); + public int RemoveAll(Predicate`1 match); + public void RemoveAt(int index); + public void RemoveRange(int index, int count); + public void Reverse(); + public void Reverse(int index, int count); + public void Sort(); + public void Sort(IComparer`1 comparer); + public void Sort(Comparison`1 comparison); + public void Sort(int index, int count, IComparer`1 comparer); + public T[] ToArray(); + public void TrimExcess(); + public bool TrueForAll(Predicate`1 match); +} + +// Namespace: +[Serializable] +public struct Enumerator : IEnumerator, IDisposable, IEnumerator`1 // TypeDefIndex: 274 +{ + // Fields + private List`1 l; // 0x00 + private int next; // 0x00 + private int ver; // 0x00 + private T current; // 0x00 + + // Properties + private object System.Collections.IEnumerator.Current { get; } + public T Current { get; } + + // Methods + internal void .ctor(List`1 l); + private void System.Collections.IEnumerator.Reset(); + public void Dispose(); + private void VerifyState(); + public bool MoveNext(); +} + +// Namespace: System.Collections.ObjectModel +[Serializable] +public class Collection`1 : IEnumerable, ICollection, IList, ICollection`1, IList`1, IEnumerable`1 // TypeDefIndex: 275 +{ + // Fields + private IList`1 list; // 0x00 + private object syncRoot; // 0x00 + + // Properties + private bool System.Collections.Generic.ICollection.IsReadOnly { get; } + private bool System.Collections.ICollection.IsSynchronized { get; } + private object System.Collections.ICollection.SyncRoot { get; } + private bool System.Collections.IList.IsFixedSize { get; } + private bool System.Collections.IList.IsReadOnly { get; } + private object System.Collections.IList.Item { get; set; } + protected IList`1 Items { get; } + public int Count { get; } + public T Item { get; set; } + + // Methods + public void .ctor(); + public void .ctor(IList`1 list); + private void System.Collections.ICollection.CopyTo(Array array, int index); + private IEnumerator System.Collections.IEnumerable.GetEnumerator(); + private int System.Collections.IList.Add(object value); + private bool System.Collections.IList.Contains(object value); + private int System.Collections.IList.IndexOf(object value); + private void System.Collections.IList.Insert(int index, object value); + private void System.Collections.IList.Remove(object value); + public void Add(T item); + public void Clear(); + protected virtual void ClearItems(); + public bool Contains(T item); + public void CopyTo(T[] array, int index); + public IEnumerator`1 GetEnumerator(); + public int IndexOf(T item); + public void Insert(int index, T item); + protected virtual void InsertItem(int index, T item); + public bool Remove(T item); + public void RemoveAt(int index); + protected virtual void RemoveItem(int index); + protected virtual void SetItem(int index, T item); + internal static bool IsValidItem(object item); + internal static T ConvertItem(object item); + internal static void CheckWritable(IList`1 list); + internal static bool IsSynchronized(IList`1 list); + internal static bool IsFixedSize(IList`1 list); +} + +// Namespace: System.Collections.ObjectModel +[Serializable] +public abstract class KeyedCollection`2 : Collection`1 // TypeDefIndex: 276 +{ + // Fields + private Dictionary`2 dictionary; // 0x00 + private IEqualityComparer`1 comparer; // 0x00 + private int dictionaryCreationThreshold; // 0x00 + + // Properties + public IEqualityComparer`1 Comparer { get; } + public T Item { get; } + protected IDictionary`2 Dictionary { get; } + + // Methods + protected void .ctor(); + protected void .ctor(IEqualityComparer`1 comparer); + protected void .ctor(IEqualityComparer`1 comparer, int dictionaryCreationThreshold); + public bool Contains(T key); + private int IndexOfKey(T key); + public bool Remove(T key); + protected void ChangeItemKey(T item, T newKey); + protected override void ClearItems(); + protected abstract T GetKeyForItem(T item); + protected override void InsertItem(int index, T item); + protected override void RemoveItem(int index); + protected override void SetItem(int index, T item); +} + +// Namespace: System.Collections.ObjectModel +[Serializable] +public class ReadOnlyCollection`1 : IEnumerable, ICollection, IList, ICollection`1, IList`1, IEnumerable`1 // TypeDefIndex: 277 +{ + // Fields + private IList`1 list; // 0x00 + + // Properties + private T System.Collections.Generic.IList.Item { get; set; } + private bool System.Collections.Generic.ICollection.IsReadOnly { get; } + private bool System.Collections.ICollection.IsSynchronized { get; } + private object System.Collections.ICollection.SyncRoot { get; } + private bool System.Collections.IList.IsFixedSize { get; } + private bool System.Collections.IList.IsReadOnly { get; } + private object System.Collections.IList.Item { get; set; } + public int Count { get; } + protected IList`1 Items { get; } + public T Item { get; } + + // Methods + public void .ctor(IList`1 list); + private void System.Collections.Generic.ICollection.Add(T item); + private void System.Collections.Generic.ICollection.Clear(); + private void System.Collections.Generic.IList.Insert(int index, T item); + private bool System.Collections.Generic.ICollection.Remove(T item); + private void System.Collections.Generic.IList.RemoveAt(int index); + private void System.Collections.ICollection.CopyTo(Array array, int index); + private IEnumerator System.Collections.IEnumerable.GetEnumerator(); + private int System.Collections.IList.Add(object value); + private void System.Collections.IList.Clear(); + private bool System.Collections.IList.Contains(object value); + private int System.Collections.IList.IndexOf(object value); + private void System.Collections.IList.Insert(int index, object value); + private void System.Collections.IList.Remove(object value); + private void System.Collections.IList.RemoveAt(int index); + public bool Contains(T value); + public void CopyTo(T[] array, int index); + public IEnumerator`1 GetEnumerator(); + public int IndexOf(T value); +} + +// Namespace: System.Collections +[Serializable] +public class ArrayList : IEnumerable, ICloneable, ICollection, IList // TypeDefIndex: 278 +{ + // Fields + private const int DefaultInitialCapacity = 4; // 0x00 + private int _size; // 0x08 + private object[] _items; // 0x0C + private int _version; // 0x10 + private static readonly object[] EmptyArray; // 0x00 + + // Properties + public virtual object Item { get; set; } // 0x004FDDBC 0x004FDED4 + public virtual int Count { get; } // 0x004FE02C + public virtual int Capacity { get; set; } // 0x004FE034 0x004FE058 + public virtual bool IsFixedSize { get; } // 0x004FE170 + public virtual bool IsReadOnly { get; } // 0x004FE178 + public virtual bool IsSynchronized { get; } // 0x004FE180 + public virtual object SyncRoot { get; } // 0x004FE188 + + // Methods + public void .ctor(); // 0x004FD7A4 + public void .ctor(ICollection c); // 0x004FD844 + public void .ctor(int capacity); // 0x004FDA24 + private void .ctor(int initialCapacity, bool forceZeroSize); // 0x004FDBD8 + private void .ctor(object[] array, int index, int count); // 0x004FDC98 + private static void .cctor(); // 0x004FDD44 + private void EnsureCapacity(int count); // 0x004FE18C + private void Shift(int index, int count); // 0x004FE288 + public virtual int Add(object value); // 0x004FE430 + public virtual void Clear(); // 0x004FE4F8 + public virtual bool Contains(object item); // 0x004FE52C + internal virtual bool Contains(object value, int startIndex, int count); // 0x004FE56C + public virtual int IndexOf(object value); // 0x004FE5A4 + public virtual int IndexOf(object value, int startIndex); // 0x004FE5B8 + public virtual int IndexOf(object value, int startIndex, int count); // 0x004FE5E8 + public virtual int LastIndexOf(object value); // 0x004FE7DC + public virtual int LastIndexOf(object value, int startIndex); // 0x004FE7F4 + public virtual int LastIndexOf(object value, int startIndex, int count); // 0x004FE820 + public virtual void Insert(int index, object value); // 0x004FE8A8 + public virtual void InsertRange(int index, ICollection c); // 0x004FEA1C + public virtual void Remove(object obj); // 0x004FEE0C + public virtual void RemoveAt(int index); // 0x004FEE5C + public virtual void RemoveRange(int index, int count); // 0x004FEF64 + public virtual void Reverse(); // 0x004FF1DC + public virtual void Reverse(int index, int count); // 0x004FF208 + public virtual void CopyTo(Array array); // 0x004FF2B8 + public virtual void CopyTo(Array array, int arrayIndex); // 0x004FF2C4 + public virtual void CopyTo(int index, Array array, int arrayIndex, int count); // 0x004FF304 + public virtual IEnumerator GetEnumerator(); // 0x004FF444 + public virtual IEnumerator GetEnumerator(int index, int count); // 0x004FF57C + public virtual void AddRange(ICollection c); // 0x004FF69C + public virtual int BinarySearch(object value); // 0x004FF6B4 + public virtual int BinarySearch(object value, IComparer comparer); // 0x004FF824 + public virtual int BinarySearch(int index, int count, object value, IComparer comparer); // 0x004FF988 + public virtual ArrayList GetRange(int index, int count); // 0x004FFAF4 + public virtual void SetRange(int index, ICollection c); // 0x004FFD4C + public virtual void TrimToSize(); // 0x004FFF6C + public virtual void Sort(); // 0x00500024 + public virtual void Sort(IComparer comparer); // 0x0050009C + public virtual void Sort(int index, int count, IComparer comparer); // 0x005000C8 + public virtual object[] ToArray(); // 0x00500180 + public virtual Array ToArray(Type type); // 0x00500204 + public virtual object Clone(); // 0x00500244 + internal static void CheckRange(int index, int count, int listCount); // 0x004FF020 + internal static void ThrowNewArgumentOutOfRangeException(string name, object actual, string message); // 0x004FDB2C + public static ArrayList Adapter(IList list); // 0x005002CC + public static ArrayList Synchronized(ArrayList list); // 0x004FFC58 + public static IList Synchronized(IList list); // 0x0050055C + public static ArrayList ReadOnly(ArrayList list); // 0x005007A0 + public static IList ReadOnly(IList list); // 0x00500898 + public static ArrayList FixedSize(ArrayList list); // 0x00500A14 + public static IList FixedSize(IList list); // 0x00500B0C + public static ArrayList Repeat(object value, int count); // 0x00500C88 +} + +// Namespace: +private sealed class ArrayListEnumerator : IEnumerator, ICloneable // TypeDefIndex: 279 +{ + // Fields + private int m_Pos; // 0x08 + private int m_Index; // 0x0C + private int m_Count; // 0x10 + private object m_Current; // 0x14 + private ArrayList m_List; // 0x18 + private int m_ExpectedStateChanges; // 0x1C + + // Properties + public object Current { get; } // 0x00506168 + + // Methods + public void .ctor(ArrayList list); // 0x0050610C + public void .ctor(ArrayList list, int index, int count); // 0x004FF644 + public object Clone(); // 0x00506160 + public bool MoveNext(); // 0x00506220 + public void Reset(); // 0x0050633C +} + +// Namespace: +private sealed class SimpleEnumerator : IEnumerator, ICloneable // TypeDefIndex: 280 +{ + // Fields + private ArrayList list; // 0x08 + private int index; // 0x0C + private int version; // 0x10 + private object currentElement; // 0x14 + private static object endFlag; // 0x00 + + // Properties + public object Current { get; } // 0x0050AB3C + + // Methods + public void .ctor(ArrayList list); // 0x004FF4B4 + private static void .cctor(); // 0x0050A928 + public object Clone(); // 0x0050A9A8 + public bool MoveNext(); // 0x0050A9B0 + public void Reset(); // 0x0050AC68 +} + +// Namespace: +[Serializable] +private sealed class ArrayListAdapter : ArrayList // TypeDefIndex: 281 +{ + // Fields + private IList m_Adaptee; // 0x14 + + // Properties + public override object Item { get; set; } // 0x00500D34 0x00500E14 + public override int Count { get; } // 0x00500EFC + public override int Capacity { get; set; } // 0x00500FD4 0x005010AC + public override bool IsFixedSize { get; } // 0x005011E4 + public override bool IsReadOnly { get; } // 0x005012BC + public override object SyncRoot { get; } // 0x00501394 + public override bool IsSynchronized { get; } // 0x00503D68 + + // Methods + public void .ctor(IList adaptee); // 0x00500490 + public override int Add(object value); // 0x0050146C + public override void Clear(); // 0x0050154C + public override bool Contains(object value); // 0x00501624 + public override int IndexOf(object value); // 0x00501704 + public override int IndexOf(object value, int startIndex); // 0x005017E4 + public override int IndexOf(object value, int startIndex, int count); // 0x005018E0 + public override int LastIndexOf(object value); // 0x00501D64 + public override int LastIndexOf(object value, int startIndex); // 0x00501E5C + public override int LastIndexOf(object value, int startIndex, int count); // 0x00501E78 + public override void Insert(int index, object value); // 0x005021DC + public override void InsertRange(int index, ICollection c); // 0x005022C4 + public override void Remove(object value); // 0x005027DC + public override void RemoveAt(int index); // 0x005028BC + public override void RemoveRange(int index, int count); // 0x0050299C + public override void Reverse(); // 0x00502B6C + public override void Reverse(int index, int count); // 0x00502C54 + public override void SetRange(int index, ICollection c); // 0x0050303C + public override void CopyTo(Array array); // 0x005035A8 + public override void CopyTo(Array array, int index); // 0x0050368C + public override void CopyTo(int index, Array array, int arrayIndex, int count); // 0x00503774 + public override IEnumerator GetEnumerator(); // 0x00503E40 + public override IEnumerator GetEnumerator(int index, int count); // 0x00503F18 + public override void AddRange(ICollection c); // 0x00504150 + public override int BinarySearch(object value); // 0x005044F0 + public override int BinarySearch(object value, IComparer comparer); // 0x005044F8 + public override int BinarySearch(int index, int count, object value, IComparer comparer); // 0x005045F8 + public override object Clone(); // 0x00504904 + public override ArrayList GetRange(int index, int count); // 0x00504978 + public override void TrimToSize(); // 0x00504ACC + public override void Sort(); // 0x00504AD0 + public override void Sort(IComparer comparer); // 0x00504B68 + public override void Sort(int index, int count, IComparer comparer); // 0x00504C60 + private static void Swap(IList list, int x, int y); // 0x005057FC + internal static void QuickSort(IList list, int left, int right, IComparer comparer); // 0x00504DF8 + public override object[] ToArray(); // 0x00505A98 + public override Array ToArray(Type elementType); // 0x00505C24 +} + +// Namespace: +private sealed class EnumeratorWithRange : IEnumerator, ICloneable // TypeDefIndex: 282 +{ + // Fields + private int m_StartIndex; // 0x08 + private int m_Count; // 0x0C + private int m_MaxCount; // 0x10 + private IEnumerator m_Enumerator; // 0x14 + + // Properties + public object Current { get; } // 0x00505F3C + + // Methods + public void .ctor(IEnumerator enumerator, int index, int count); // 0x00504110 + public object Clone(); // 0x00505F34 + public bool MoveNext(); // 0x00506014 + public void Reset(); // 0x00505DA8 +} + +// Namespace: +[Serializable] +private class ArrayListWrapper : ArrayList // TypeDefIndex: 283 +{ + // Fields + protected ArrayList m_InnerArrayList; // 0x14 + + // Properties + public override object Item { get; set; } // 0x005063DC 0x00506418 + public override int Count { get; } // 0x0050645C + public override int Capacity { get; set; } // 0x00506490 0x005064C4 + public override bool IsFixedSize { get; } // 0x00506500 + public override bool IsReadOnly { get; } // 0x00506534 + public override bool IsSynchronized { get; } // 0x00506568 + public override object SyncRoot { get; } // 0x0050659C + + // Methods + public void .ctor(ArrayList innerArrayList); // 0x00506354 + public override int Add(object value); // 0x005065D0 + public override void Clear(); // 0x0050660C + public override bool Contains(object value); // 0x00506640 + public override int IndexOf(object value); // 0x0050667C + public override int IndexOf(object value, int startIndex); // 0x005066B8 + public override int IndexOf(object value, int startIndex, int count); // 0x005066FC + public override int LastIndexOf(object value); // 0x00506754 + public override int LastIndexOf(object value, int startIndex); // 0x00506790 + public override int LastIndexOf(object value, int startIndex, int count); // 0x005067D4 + public override void Insert(int index, object value); // 0x0050682C + public override void InsertRange(int index, ICollection c); // 0x00506870 + public override void Remove(object value); // 0x005068B4 + public override void RemoveAt(int index); // 0x005068F0 + public override void RemoveRange(int index, int count); // 0x0050692C + public override void Reverse(); // 0x00506970 + public override void Reverse(int index, int count); // 0x005069A4 + public override void SetRange(int index, ICollection c); // 0x005069E8 + public override void CopyTo(Array array); // 0x00506A2C + public override void CopyTo(Array array, int index); // 0x00506A68 + public override void CopyTo(int index, Array array, int arrayIndex, int count); // 0x00506AAC + public override IEnumerator GetEnumerator(); // 0x00506B0C + public override IEnumerator GetEnumerator(int index, int count); // 0x00506B40 + public override void AddRange(ICollection c); // 0x00506B84 + public override int BinarySearch(object value); // 0x00506BC0 + public override int BinarySearch(object value, IComparer comparer); // 0x00506BFC + public override int BinarySearch(int index, int count, object value, IComparer comparer); // 0x00506C40 + public override object Clone(); // 0x00506CA0 + public override ArrayList GetRange(int index, int count); // 0x00506CD4 + public override void TrimToSize(); // 0x00506D18 + public override void Sort(); // 0x00506D4C + public override void Sort(IComparer comparer); // 0x00506D80 + public override void Sort(int index, int count, IComparer comparer); // 0x00506DBC + public override object[] ToArray(); // 0x00506E14 + public override Array ToArray(Type elementType); // 0x00506E48 +} + +// Namespace: +[Serializable] +private sealed class SynchronizedArrayListWrapper : ArrayListWrapper // TypeDefIndex: 284 +{ + // Fields + private object m_SyncRoot; // 0x18 + + // Properties + public override object Item { get; set; } // 0x0050AD80 0x0050AE30 + public override int Count { get; } // 0x0050AEDC + public override int Capacity { get; set; } // 0x0050AF84 0x0050B02C + public override bool IsFixedSize { get; } // 0x0050B0CC + public override bool IsReadOnly { get; } // 0x0050B174 + public override bool IsSynchronized { get; } // 0x0050B21C + public override object SyncRoot { get; } // 0x0050B224 + + // Methods + internal void .ctor(ArrayList innerArrayList); // 0x0050051C + public override int Add(object value); // 0x0050B22C + public override void Clear(); // 0x0050B2DC + public override bool Contains(object value); // 0x0050B374 + public override int IndexOf(object value); // 0x0050B424 + public override int IndexOf(object value, int startIndex); // 0x0050B4D4 + public override int IndexOf(object value, int startIndex, int count); // 0x0050B58C + public override int LastIndexOf(object value); // 0x0050B658 + public override int LastIndexOf(object value, int startIndex); // 0x0050B708 + public override int LastIndexOf(object value, int startIndex, int count); // 0x0050B7C0 + public override void Insert(int index, object value); // 0x0050B88C + public override void InsertRange(int index, ICollection c); // 0x0050B938 + public override void Remove(object value); // 0x0050B9E4 + public override void RemoveAt(int index); // 0x0050BA84 + public override void RemoveRange(int index, int count); // 0x0050BB24 + public override void Reverse(); // 0x0050BBD0 + public override void Reverse(int index, int count); // 0x0050BC68 + public override void CopyTo(Array array); // 0x0050BD14 + public override void CopyTo(Array array, int index); // 0x0050BDB4 + public override void CopyTo(int index, Array array, int arrayIndex, int count); // 0x0050BE60 + public override IEnumerator GetEnumerator(); // 0x0050BF30 + public override IEnumerator GetEnumerator(int index, int count); // 0x0050BFD8 + public override void AddRange(ICollection c); // 0x0050C090 + public override int BinarySearch(object value); // 0x0050C130 + public override int BinarySearch(object value, IComparer comparer); // 0x0050C1E0 + public override int BinarySearch(int index, int count, object value, IComparer comparer); // 0x0050C298 + public override object Clone(); // 0x0050C368 + public override ArrayList GetRange(int index, int count); // 0x0050C410 + public override void TrimToSize(); // 0x0050C4C8 + public override void Sort(); // 0x0050C560 + public override void Sort(IComparer comparer); // 0x0050C5F8 + public override void Sort(int index, int count, IComparer comparer); // 0x0050C698 + public override object[] ToArray(); // 0x0050C760 + public override Array ToArray(Type elementType); // 0x0050C808 +} + +// Namespace: +[Serializable] +private class FixedSizeArrayListWrapper : ArrayListWrapper // TypeDefIndex: 285 +{ + // Properties + protected virtual string ErrorMessage { get; } // 0x00506E84 + public override int Capacity { get; set; } // 0x00506EE0 0x00506F14 + public override bool IsFixedSize { get; } // 0x00506FBC + + // Methods + public void .ctor(ArrayList innerList); // 0x00500B08 + public override int Add(object value); // 0x00506FC4 + public override void AddRange(ICollection c); // 0x0050706C + public override void Clear(); // 0x00507114 + public override void Insert(int index, object value); // 0x005071BC + public override void InsertRange(int index, ICollection c); // 0x00507264 + public override void Remove(object value); // 0x0050730C + public override void RemoveAt(int index); // 0x005073B4 + public override void RemoveRange(int index, int count); // 0x0050745C + public override void TrimToSize(); // 0x00507504 +} + +// Namespace: +[Serializable] +private sealed class ReadOnlyArrayListWrapper : FixedSizeArrayListWrapper // TypeDefIndex: 286 +{ + // Properties + protected override string ErrorMessage { get; } // 0x0050A2A4 + public override bool IsReadOnly { get; } // 0x0050A300 + public override object Item { get; set; } // 0x0050A308 0x0050A344 + + // Methods + public void .ctor(ArrayList innerArrayList); // 0x00500894 + public override void Reverse(); // 0x0050A3D8 + public override void Reverse(int index, int count); // 0x0050A46C + public override void SetRange(int index, ICollection c); // 0x0050A500 + public override void Sort(); // 0x0050A594 + public override void Sort(IComparer comparer); // 0x0050A628 + public override void Sort(int index, int count, IComparer comparer); // 0x0050A6BC +} + +// Namespace: +[Serializable] +private sealed class RangedArrayList : ArrayListWrapper // TypeDefIndex: 287 +{ + // Fields + private int m_InnerIndex; // 0x18 + private int m_InnerCount; // 0x1C + private int m_InnerStateChanges; // 0x20 + + // Properties + public override bool IsSynchronized { get; } // 0x00508758 + public override object Item { get; set; } // 0x00508760 0x00508848 + public override int Count { get; } // 0x00508938 + public override int Capacity { get; set; } // 0x00508A14 0x00508A48 + + // Methods + public void .ctor(ArrayList innerList, int index, int count); // 0x004FFC18 + private void VerifyStateChanges(); // 0x00508950 + public override int Add(object value); // 0x00508AE4 + public override void Clear(); // 0x00508B5C + public override bool Contains(object value); // 0x00508BCC + public override int IndexOf(object value); // 0x00508C24 + public override int IndexOf(object value, int startIndex); // 0x00508C44 + public override int IndexOf(object value, int startIndex, int count); // 0x00508C64 + public override int LastIndexOf(object value); // 0x00508E7C + public override int LastIndexOf(object value, int startIndex); // 0x00508E9C + public override int LastIndexOf(object value, int startIndex, int count); // 0x00508EB8 + public override void Insert(int index, object value); // 0x00509054 + public override void InsertRange(int index, ICollection c); // 0x0050919C + public override void Remove(object value); // 0x0050936C + public override void RemoveAt(int index); // 0x005093CC + public override void RemoveRange(int index, int count); // 0x0050950C + public override void Reverse(); // 0x00509604 + public override void Reverse(int index, int count); // 0x00509610 + public override void SetRange(int index, ICollection c); // 0x005096FC + public override void CopyTo(Array array); // 0x00509838 + public override void CopyTo(Array array, int index); // 0x00509864 + public override void CopyTo(int index, Array array, int arrayIndex, int count); // 0x00509890 + public override IEnumerator GetEnumerator(); // 0x00509974 + public override IEnumerator GetEnumerator(int index, int count); // 0x00509980 + public override void AddRange(ICollection c); // 0x00509A48 + public override int BinarySearch(object value); // 0x00509B84 + public override int BinarySearch(object value, IComparer comparer); // 0x00509D20 + public override int BinarySearch(int index, int count, object value, IComparer comparer); // 0x00509C3C + public override object Clone(); // 0x00509D50 + public override ArrayList GetRange(int index, int count); // 0x00509E5C + public override void TrimToSize(); // 0x00509F24 + public override void Sort(); // 0x00509FAC + public override void Sort(IComparer comparer); // 0x0050A054 + public override void Sort(int index, int count, IComparer comparer); // 0x0050A078 + public override object[] ToArray(); // 0x0050A178 + public override Array ToArray(Type elementType); // 0x0050A230 +} + +// Namespace: +[Serializable] +private sealed class SynchronizedListWrapper : ListWrapper // TypeDefIndex: 288 +{ + // Fields + private object m_SyncRoot; // 0x0C + + // Properties + public override int Count { get; } // 0x0050C8B8 + public override bool IsSynchronized { get; } // 0x0050CA00 + public override object SyncRoot { get; } // 0x0050CA08 + public override bool IsFixedSize { get; } // 0x0050CB50 + public override bool IsReadOnly { get; } // 0x0050CC98 + public override object Item { get; set; } // 0x0050CDE0 0x0050CF30 + + // Methods + public void .ctor(IList innerList); // 0x005006B4 + public override int Add(object value); // 0x0050D08C + public override void Clear(); // 0x0050D1DC + public override bool Contains(object value); // 0x0050D318 + public override int IndexOf(object value); // 0x0050D468 + public override void Insert(int index, object value); // 0x0050D5B8 + public override void Remove(object value); // 0x0050D714 + public override void RemoveAt(int index); // 0x0050D858 + public override void CopyTo(Array array, int index); // 0x0050D99C + public override IEnumerator GetEnumerator(); // 0x0050DAF8 +} + +// Namespace: +[Serializable] +private class FixedSizeListWrapper : ListWrapper // TypeDefIndex: 289 +{ + // Properties + protected virtual string ErrorMessage { get; } // 0x005075CC + public override bool IsFixedSize { get; } // 0x00507628 + + // Methods + public void .ctor(IList innerList); // 0x00500C68 + public override int Add(object value); // 0x00507630 + public override void Clear(); // 0x005076D8 + public override void Insert(int index, object value); // 0x00507780 + public override void Remove(object value); // 0x00507828 + public override void RemoveAt(int index); // 0x005078D0 +} + +// Namespace: +[Serializable] +private sealed class ReadOnlyListWrapper : FixedSizeListWrapper // TypeDefIndex: 290 +{ + // Properties + protected override string ErrorMessage { get; } // 0x0050A750 + public override bool IsReadOnly { get; } // 0x0050A7AC + public override object Item { get; set; } // 0x0050A7B4 0x0050A894 + + // Methods + public void .ctor(IList innerList); // 0x005009F4 +} + +// Namespace: +[Serializable] +private class ListWrapper : IEnumerable, ICollection, IList // TypeDefIndex: 291 +{ + // Fields + protected IList m_InnerList; // 0x08 + + // Properties + public virtual object Item { get; set; } // 0x00507978 0x00507A58 + public virtual int Count { get; } // 0x00507B40 + public virtual bool IsSynchronized { get; } // 0x00507C18 + public virtual object SyncRoot { get; } // 0x00507CF0 + public virtual bool IsFixedSize { get; } // 0x00507DC8 + public virtual bool IsReadOnly { get; } // 0x00507EA0 + + // Methods + public void .ctor(IList innerList); // 0x005075AC + public virtual int Add(object value); // 0x00507F78 + public virtual void Clear(); // 0x00508058 + public virtual bool Contains(object value); // 0x00508130 + public virtual int IndexOf(object value); // 0x00508210 + public virtual void Insert(int index, object value); // 0x005082F0 + public virtual void Remove(object value); // 0x005083D8 + public virtual void RemoveAt(int index); // 0x005084B8 + public virtual void CopyTo(Array array, int index); // 0x00508598 + public virtual IEnumerator GetEnumerator(); // 0x00508680 +} + +// Namespace: System.Collections +[Serializable] +public sealed class BitArray : IEnumerable, ICloneable, ICollection // TypeDefIndex: 292 +{ + // Fields + private int[] m_array; // 0x08 + private int m_length; // 0x0C + private int _version; // 0x10 + + // Properties + public int Count { get; } // 0x0050E4F0 + public bool IsReadOnly { get; } // 0x0050E4F8 + public bool IsSynchronized { get; } // 0x0050E500 + public bool Item { get; set; } // 0x0050E508 0x0050DF18 + public int Length { get; set; } // 0x0050E708 0x0050E710 + public object SyncRoot { get; } // 0x0050E8D8 + + // Methods + public void .ctor(BitArray bits); // 0x0050DC40 + public void .ctor(bool[] values); // 0x0050DDE0 + public void .ctor(byte[] bytes); // 0x0050DF1C + public void .ctor(int[] values); // 0x0050E11C + public void .ctor(int length); // 0x0050E210 + public void .ctor(int length, bool defaultValue); // 0x0050E2F8 + private void .ctor(int[] array, int length); // 0x0050E380 + private byte getByte(int byteIndex); // 0x0050E3A8 + private void setByte(int byteIndex, byte value); // 0x0050E05C + private void checkOperand(BitArray operand); // 0x0050E418 + public object Clone(); // 0x0050E8DC + public void CopyTo(Array array, int index); // 0x0050E94C + public BitArray Not(); // 0x0050EDF0 + public BitArray And(BitArray value); // 0x0050EE98 + public BitArray Or(BitArray value); // 0x0050EF7C + public BitArray Xor(BitArray value); // 0x0050F060 + public bool Get(int index); // 0x0050E50C + public void Set(int index, bool value); // 0x0050E600 + public void SetAll(bool value); // 0x0050F144 + public IEnumerator GetEnumerator(); // 0x0050F1F8 +} + +// Namespace: +[Serializable] +private class BitArrayEnumerator : IEnumerator, ICloneable // TypeDefIndex: 293 +{ + // Fields + private BitArray _bitArray; // 0x08 + private bool _current; // 0x0C + private int _index; // 0x10 + private int _version; // 0x14 + + // Properties + public object Current { get; } // 0x00385690 + + // Methods + public void .ctor(BitArray ba); // 0x00385648 + public object Clone(); // 0x00385688 + public bool MoveNext(); // 0x003857CC + public void Reset(); // 0x00385914 + private void checkVersion(); // 0x00385864 +} + +// Namespace: System.Collections +[Serializable] +public class CaseInsensitiveComparer : IComparer // TypeDefIndex: 294 +{ + // Fields + private static CaseInsensitiveComparer defaultComparer; // 0x00 + private static CaseInsensitiveComparer defaultInvariantComparer; // 0x04 + private CultureInfo culture; // 0x08 + + // Properties + public static CaseInsensitiveComparer Default { get; } // 0x00385B90 + public static CaseInsensitiveComparer DefaultInvariant { get; } // 0x00385C1C + + // Methods + public void .ctor(); // 0x00385930 + private void .ctor(bool invariant); // 0x003859C0 + public void .ctor(CultureInfo culture); // 0x003859C8 + private static void .cctor(); // 0x00385B00 + public int Compare(object a, object b); // 0x00385CA8 +} + +// Namespace: System.Collections +[Serializable] +public class CaseInsensitiveHashCodeProvider : IHashCodeProvider // TypeDefIndex: 295 +{ + // Fields + private static readonly CaseInsensitiveHashCodeProvider singletonInvariant; // 0x00 + private static CaseInsensitiveHashCodeProvider singleton; // 0x04 + private static readonly object sync; // 0x08 + private TextInfo m_text; // 0x08 + + // Properties + public static CaseInsensitiveHashCodeProvider Default { get; } // 0x003865A0 + public static CaseInsensitiveHashCodeProvider DefaultInvariant { get; } // 0x00386AA0 + + // Methods + public void .ctor(); // 0x00386164 + public void .ctor(CultureInfo culture); // 0x0038637C + private static void .cctor(); // 0x003864C8 + private static bool AreEqual(CultureInfo a, CultureInfo b); // 0x003862A0 + private static bool AreEqual(TextInfo info, CultureInfo culture); // 0x003869CC + public int GetHashCode(object obj); // 0x00386B2C +} + +// Namespace: System.Collections +[Serializable] +public abstract class CollectionBase : IEnumerable, ICollection, IList // TypeDefIndex: 296 +{ + // Fields + private ArrayList list; // 0x08 + + // Properties + private object System.Collections.ICollection.SyncRoot { get; } // 0x00386F2C + private bool System.Collections.ICollection.IsSynchronized { get; } // 0x00386F64 + private bool System.Collections.IList.IsFixedSize { get; } // 0x00387528 + private bool System.Collections.IList.IsReadOnly { get; } // 0x00387560 + private object System.Collections.IList.Item { get; set; } // 0x00387598 0x003875D8 + public int Count { get; } // 0x00387868 + public int Capacity { get; set; } // 0x00387A0C 0x00387AB0 + protected ArrayList InnerList { get; } // 0x00386EAC + protected IList List { get; } // 0x00387B5C + + // Methods + protected void .ctor(); // 0x00386DD8 + protected void .ctor(int capacity); // 0x00386DE0 + private void System.Collections.ICollection.CopyTo(Array array, int index); // 0x00386E64 + private int System.Collections.IList.Add(object value); // 0x00386F9C + private bool System.Collections.IList.Contains(object value); // 0x0038717C + private int System.Collections.IList.IndexOf(object value); // 0x003871BC + private void System.Collections.IList.Insert(int index, object value); // 0x003871FC + private void System.Collections.IList.Remove(object value); // 0x003873AC + public IEnumerator GetEnumerator(); // 0x003878A0 + public void Clear(); // 0x003878D8 + public void RemoveAt(int index); // 0x00387940 + protected virtual void OnClear(); // 0x00387B60 + protected virtual void OnClearComplete(); // 0x00387B64 + protected virtual void OnInsert(int index, object value); // 0x00387B68 + protected virtual void OnInsertComplete(int index, object value); // 0x00387B6C + protected virtual void OnRemove(int index, object value); // 0x00387B70 + protected virtual void OnRemoveComplete(int index, object value); // 0x00387B74 + protected virtual void OnSet(int index, object oldValue, object newValue); // 0x00387B78 + protected virtual void OnSetComplete(int index, object oldValue, object newValue); // 0x00387B7C + protected virtual void OnValidate(object value); // 0x00387B80 +} + +// Namespace: System.Collections +internal sealed class CollectionDebuggerView // TypeDefIndex: 297 +{ + // Fields + private readonly ICollection c; // 0x08 + + // Properties + public object[] Items { get; } // 0x00387C48 + + // Methods + public void .ctor(ICollection col); // 0x00387C28 +} + +// Namespace: System.Collections +[Serializable] +public sealed class Comparer : ISerializable, IComparer // TypeDefIndex: 298 +{ + // Fields + public static readonly Comparer Default; // 0x00 + public static readonly Comparer DefaultInvariant; // 0x04 + private CompareInfo m_compareInfo; // 0x08 + + // Methods + private void .ctor(); // 0x00387DE0 + public void .ctor(CultureInfo culture); // 0x00387DE8 + private static void .cctor(); // 0x00387EBC + public int Compare(object a, object b); // 0x00385E84 + public void GetObjectData(SerializationInfo info, StreamingContext context); // 0x00387F94 +} + +// Namespace: System.Collections +[Serializable] +public abstract class DictionaryBase : IEnumerable, ICollection, IDictionary // TypeDefIndex: 299 +{ + // Fields + private Hashtable hashtable; // 0x08 + + // Properties + private bool System.Collections.IDictionary.IsFixedSize { get; } // 0x00388180 + private bool System.Collections.IDictionary.IsReadOnly { get; } // 0x00388188 + private object System.Collections.IDictionary.Item { get; set; } // 0x00388190 0x003881F4 + private ICollection System.Collections.IDictionary.Keys { get; } // 0x003883E8 + private ICollection System.Collections.IDictionary.Values { get; } // 0x0038841C + private bool System.Collections.ICollection.IsSynchronized { get; } // 0x0038883C + private object System.Collections.ICollection.SyncRoot { get; } // 0x00388870 + public int Count { get; } // 0x00388938 + protected IDictionary Dictionary { get; } // 0x0038896C + protected Hashtable InnerHashtable { get; } // 0x00388970 + + // Methods + protected void .ctor(); // 0x003880C0 + private void System.Collections.IDictionary.Add(object key, object value); // 0x00388450 + private void System.Collections.IDictionary.Remove(object key); // 0x003885F8 + private bool System.Collections.IDictionary.Contains(object key); // 0x00388800 + private IEnumerator System.Collections.IEnumerable.GetEnumerator(); // 0x003888A4 + public void Clear(); // 0x003888D8 + public void CopyTo(Array array, int index); // 0x00388978 + private void DoCopy(Array array, int index); // 0x00388BB4 + public IDictionaryEnumerator GetEnumerator(); // 0x00388F18 + protected virtual void OnClear(); // 0x00388F4C + protected virtual void OnClearComplete(); // 0x00388F50 + protected virtual object OnGet(object key, object currentValue); // 0x00388F54 + protected virtual void OnInsert(object key, object value); // 0x00388F5C + protected virtual void OnInsertComplete(object key, object value); // 0x00388F60 + protected virtual void OnSet(object key, object oldValue, object newValue); // 0x00388F64 + protected virtual void OnSetComplete(object key, object oldValue, object newValue); // 0x00388F68 + protected virtual void OnRemove(object key, object value); // 0x00388F6C + protected virtual void OnRemoveComplete(object key, object value); // 0x00388F70 + protected virtual void OnValidate(object key, object value); // 0x00388F74 +} + +// Namespace: System.Collections +[Serializable] +public struct DictionaryEntry // TypeDefIndex: 300 +{ + // Fields + private object _key; // 0x08 + private object _value; // 0x0C + + // Properties + public object Key { get; set; } // 0x000A7038 0x000A7040 + public object Value { get; set; } // 0x000A7048 0x000A7050 + + // Methods + public void .ctor(object key, object value); // 0x000A702C +} + +// Namespace: System.Collections +[Serializable] +public class Hashtable : IEnumerable, ICloneable, ISerializable, ICollection, IDictionary, IDeserializationCallback // TypeDefIndex: 301 +{ + // Fields + private const int CHAIN_MARKER = -2147483648; // 0x00 + private int inUse; // 0x08 + private int modificationCount; // 0x0C + private float loadFactor; // 0x10 + private Slot[] table; // 0x14 + private int[] hashes; // 0x18 + private int threshold; // 0x1C + private HashKeys hashKeys; // 0x20 + private HashValues hashValues; // 0x24 + private IHashCodeProvider hcpRef; // 0x28 + private IComparer comparerRef; // 0x2C + private SerializationInfo serializationInfo; // 0x30 + private IEqualityComparer equalityComparer; // 0x34 + private static readonly int[] primeTbl; // 0x00 + + // Properties + protected IComparer comparer { get; set; } // 0x00389EF0 0x00389EE8 + protected IHashCodeProvider hcp { get; set; } // 0x00389F00 0x00389EF8 + protected IEqualityComparer EqualityComparer { get; } // 0x00389F08 + public virtual int Count { get; } // 0x00389F10 + public virtual bool IsSynchronized { get; } // 0x00389F18 + public virtual object SyncRoot { get; } // 0x00389F20 + public virtual bool IsFixedSize { get; } // 0x00389F24 + public virtual bool IsReadOnly { get; } // 0x00389F2C + public virtual ICollection Keys { get; } // 0x00389F34 + public virtual ICollection Values { get; } // 0x0038A05C + public virtual object Item { get; set; } // 0x0038A184 0x0038A3A0 + + // Methods + public void .ctor(); // 0x00388154 + public void .ctor(int capacity, float loadFactor, IHashCodeProvider hcp, IComparer comparer); // 0x00389060 + public void .ctor(int capacity, float loadFactor); // 0x00389038 + public void .ctor(int capacity); // 0x0038959C + internal void .ctor(Hashtable source); // 0x003895C4 + public void .ctor(int capacity, IHashCodeProvider hcp, IComparer comparer); // 0x00389764 + public void .ctor(IDictionary d, float loadFactor, IHashCodeProvider hcp, IComparer comparer); // 0x0038978C + public void .ctor(IDictionary d, float loadFactor); // 0x00389B7C + public void .ctor(IDictionary d); // 0x00389BA0 + public void .ctor(IDictionary d, IHashCodeProvider hcp, IComparer comparer); // 0x00389BC8 + public void .ctor(IHashCodeProvider hcp, IComparer comparer); // 0x00389BF0 + public void .ctor(SerializationInfo info, StreamingContext context); // 0x00389C18 + public void .ctor(IDictionary d, IEqualityComparer equalityComparer); // 0x00389C38 + public void .ctor(IDictionary d, float loadFactor, IEqualityComparer equalityComparer); // 0x00389C70 + public void .ctor(IEqualityComparer equalityComparer); // 0x00389CA4 + public void .ctor(int capacity, IEqualityComparer equalityComparer); // 0x00389D14 + public void .ctor(int capacity, float loadFactor, IEqualityComparer equalityComparer); // 0x00389CE0 + private static void .cctor(); // 0x00389D4C + private IEnumerator System.Collections.IEnumerable.GetEnumerator(); // 0x00389DE4 + public virtual void CopyTo(Array array, int arrayIndex); // 0x0038A8E0 + public virtual void Add(object key, object value); // 0x0038AC94 + public virtual void Clear(); // 0x0038ACB0 + public virtual bool Contains(object key); // 0x0038ADAC + public virtual IDictionaryEnumerator GetEnumerator(); // 0x0038AFDC + public virtual void Remove(object key); // 0x0038B050 + public virtual bool ContainsKey(object key); // 0x0038B214 + public virtual bool ContainsValue(object value); // 0x0038B224 + public virtual object Clone(); // 0x0038B42C + public virtual void GetObjectData(SerializationInfo info, StreamingContext context); // 0x0038B49C + public virtual void OnDeserialization(object sender); // 0x0038B8B8 + public static Hashtable Synchronized(Hashtable table); // 0x0038C1F4 + protected virtual int GetHash(object key); // 0x0038C3B0 + protected virtual bool KeyEquals(object item, object key); // 0x0038C524 + private void AdjustThreshold(); // 0x0038C1A8 + private void SetTable(Slot[] table, int[] hashes); // 0x003894D8 + private int Find(object key); // 0x0038ADCC + private void Rehash(); // 0x0038C724 + private void PutImpl(object key, object value, bool overwrite); // 0x0038A3BC + private void CopyToArray(Array arr, int i, EnumeratorMode mode); // 0x0038B6E0 + internal static bool TestPrime(int x); // 0x0038CA30 + internal static int CalcPrime(int x); // 0x0038CAC0 + internal static int ToPrime(int x); // 0x003892E8 +} + +// Namespace: +[Serializable] +internal struct Slot // TypeDefIndex: 302 +{ + // Fields + internal object key; // 0x08 + internal object value; // 0x0C + +} + +// Namespace: +[Serializable] +internal class KeyMarker // TypeDefIndex: 303 +{ + // Fields + public static readonly KeyMarker Removed; // 0x00 + + // Methods + public void .ctor(); // 0x0038D834 + private static void .cctor(); // 0x0038D83C +} + +// Namespace: +private enum EnumeratorMode // TypeDefIndex: 304 +{ + KEY_MODE = 0, + VALUE_MODE = 1, + ENTRY_MODE = 2 +} + +// Namespace: +[Serializable] +private sealed class Enumerator : IEnumerator, IDictionaryEnumerator // TypeDefIndex: 305 +{ + // Fields + private Hashtable host; // 0x08 + private int stamp; // 0x0C + private int pos; // 0x10 + private int size; // 0x14 + private EnumeratorMode mode; // 0x18 + private object currentKey; // 0x1C + private object currentValue; // 0x20 + private static readonly string xstr; // 0x00 + + // Properties + public DictionaryEntry Entry { get; } // 0x0038CEDC + public object Key { get; } // 0x0038CF90 + public object Value { get; } // 0x0038D038 + public object Current { get; } // 0x0038D0E0 + + // Methods + public void .ctor(Hashtable host, EnumeratorMode mode); // 0x00389E58 + public void .ctor(Hashtable host); // 0x0038CC00 + private static void .cctor(); // 0x0038CC08 + private void FailFast(); // 0x0038CC7C + public void Reset(); // 0x0038CBD8 + public bool MoveNext(); // 0x0038CD74 +} + +// Namespace: +[Serializable] +private class HashKeys : IEnumerable, ICollection // TypeDefIndex: 306 +{ + // Fields + private Hashtable host; // 0x08 + + // Properties + public virtual int Count { get; } // 0x0038D214 + public virtual bool IsSynchronized { get; } // 0x0038D248 + public virtual object SyncRoot { get; } // 0x0038D27C + + // Methods + public void .ctor(Hashtable host); // 0x00389FB4 + public virtual void CopyTo(Array array, int arrayIndex); // 0x0038D2B0 + public virtual IEnumerator GetEnumerator(); // 0x0038D4AC +} + +// Namespace: +[Serializable] +private class HashValues : IEnumerable, ICollection // TypeDefIndex: 307 +{ + // Fields + private Hashtable host; // 0x08 + + // Properties + public virtual int Count { get; } // 0x0038D524 + public virtual bool IsSynchronized { get; } // 0x0038D558 + public virtual object SyncRoot { get; } // 0x0038D58C + + // Methods + public void .ctor(Hashtable host); // 0x0038A0DC + public virtual void CopyTo(Array array, int arrayIndex); // 0x0038D5C0 + public virtual IEnumerator GetEnumerator(); // 0x0038D7BC +} + +// Namespace: +[Serializable] +private class SyncHashtable : Hashtable, IEnumerable // TypeDefIndex: 308 +{ + // Fields + private Hashtable host; // 0x38 + + // Properties + public override int Count { get; } // 0x0038DB1C + public override bool IsSynchronized { get; } // 0x0038DB50 + public override object SyncRoot { get; } // 0x0038DB58 + public override bool IsFixedSize { get; } // 0x0038DB8C + public override bool IsReadOnly { get; } // 0x0038DBC0 + public override ICollection Keys { get; } // 0x0038DBF4 + public override ICollection Values { get; } // 0x0038DCC0 + public override object Item { get; set; } // 0x0038DD8C 0x0038DDC8 + + // Methods + public void .ctor(Hashtable host); // 0x0038C2C4 + internal void .ctor(SerializationInfo info, StreamingContext context); // 0x0038D8B0 + private IEnumerator System.Collections.IEnumerable.GetEnumerator(); // 0x0038DA20 + public override void GetObjectData(SerializationInfo info, StreamingContext context); // 0x0038DA98 + public override void CopyTo(Array array, int arrayIndex); // 0x0038DE98 + public override void Add(object key, object value); // 0x0038DEDC + public override void Clear(); // 0x0038DFAC + public override bool Contains(object key); // 0x0038E068 + public override IDictionaryEnumerator GetEnumerator(); // 0x0038E0A8 + public override void Remove(object key); // 0x0038E120 + public override bool ContainsKey(object key); // 0x0038E1E4 + public override bool ContainsValue(object value); // 0x0038E220 + public override object Clone(); // 0x0038E25C +} + +// Namespace: System.Collections +public interface IComparer // TypeDefIndex: 309 +{ + // Methods + int Compare(object x, object y); +} + +// Namespace: System.Collections +public interface IDictionary : IEnumerable, ICollection // TypeDefIndex: 310 +{ + // Properties + bool IsFixedSize { get; } + bool IsReadOnly { get; } + object Item { get; set; } + ICollection Keys { get; } + ICollection Values { get; } + + // Methods + void Add(object key, object value); + void Clear(); + bool Contains(object key); + IDictionaryEnumerator GetEnumerator(); + void Remove(object key); +} + +// Namespace: System.Collections +public interface IDictionaryEnumerator : IEnumerator // TypeDefIndex: 311 +{ + // Properties + DictionaryEntry Entry { get; } + object Key { get; } + object Value { get; } + +} + +// Namespace: System.Collections +public interface IEqualityComparer // TypeDefIndex: 312 +{ + // Methods + bool Equals(object x, object y); + int GetHashCode(object obj); +} + +// Namespace: System.Collections +public interface IHashCodeProvider // TypeDefIndex: 313 +{ + // Methods + int GetHashCode(object obj); +} + +// Namespace: System.Collections +[Serializable] +public class Queue : IEnumerable, ICloneable, ICollection // TypeDefIndex: 314 +{ + // Fields + private object[] _array; // 0x08 + private int _head; // 0x0C + private int _size; // 0x10 + private int _tail; // 0x14 + private int _growFactor; // 0x18 + private int _version; // 0x1C + + // Properties + public virtual int Count { get; } // 0x0038E994 + public virtual bool IsSynchronized { get; } // 0x0038E99C + public virtual object SyncRoot { get; } // 0x0038E9A4 + + // Methods + public void .ctor(); // 0x0038E3E4 + public void .ctor(int capacity); // 0x0038E570 + public void .ctor(ICollection col); // 0x0038E578 + public void .ctor(int capacity, float growFactor); // 0x0038E3F0 + public virtual void CopyTo(Array array, int index); // 0x0038E9A8 + public virtual IEnumerator GetEnumerator(); // 0x0038EBA8 + public virtual object Clone(); // 0x0038EC58 + public virtual void Clear(); // 0x0038ED70 + public virtual bool Contains(object obj); // 0x0038EE14 + public virtual object Dequeue(); // 0x0038EF44 + public virtual void Enqueue(object obj); // 0x0038F0A0 + public virtual object Peek(); // 0x0038F298 + public static Queue Synchronized(Queue queue); // 0x0038F370 + public virtual object[] ToArray(); // 0x0038F46C + public virtual void TrimToSize(); // 0x0038F4F4 + private void grow(); // 0x0038F188 +} + +// Namespace: +private class SyncQueue : Queue // TypeDefIndex: 315 +{ + // Fields + private Queue queue; // 0x20 + + // Properties + public override int Count { get; } // 0x0038F980 + public override bool IsSynchronized { get; } // 0x0038FA28 + public override object SyncRoot { get; } // 0x0038FA30 + + // Methods + internal void .ctor(Queue queue); // 0x0038F448 + public override void CopyTo(Array array, int index); // 0x0038FA64 + public override IEnumerator GetEnumerator(); // 0x0038FB10 + public override object Clone(); // 0x0038FBB8 + public override void Clear(); // 0x0038FD24 + public override void TrimToSize(); // 0x0038FDBC + public override bool Contains(object obj); // 0x0038FE54 + public override object Dequeue(); // 0x0038FF04 + public override void Enqueue(object obj); // 0x0038FFAC + public override object Peek(); // 0x0039004C + public override object[] ToArray(); // 0x003900F4 +} + +// Namespace: +[Serializable] +private class QueueEnumerator : IEnumerator, ICloneable // TypeDefIndex: 316 +{ + // Fields + private Queue queue; // 0x08 + private int _version; // 0x0C + private int current; // 0x10 + + // Properties + public virtual object Current { get; } // 0x0038F640 + + // Methods + internal void .ctor(Queue q); // 0x0038EC18 + public object Clone(); // 0x0038F594 + public virtual bool MoveNext(); // 0x0038F7D0 + public virtual void Reset(); // 0x0038F8C8 +} + +// Namespace: System.Collections +[Serializable] +public abstract class ReadOnlyCollectionBase : IEnumerable, ICollection // TypeDefIndex: 317 +{ + // Fields + private ArrayList list; // 0x08 + + // Properties + private object System.Collections.ICollection.SyncRoot { get; } // 0x003902D4 + private bool System.Collections.ICollection.IsSynchronized { get; } // 0x00390308 + public virtual int Count { get; } // 0x0039033C + protected ArrayList InnerList { get; } // 0x003903A4 + + // Methods + protected void .ctor(); // 0x0039019C + private IEnumerator System.Collections.IEnumerable.GetEnumerator(); // 0x00390218 + private void System.Collections.ICollection.CopyTo(Array array, int index); // 0x00390228 + public virtual IEnumerator GetEnumerator(); // 0x00390370 +} + +// Namespace: System.Collections +[Serializable] +public class SortedList : IEnumerable, ICloneable, ICollection, IDictionary // TypeDefIndex: 318 +{ + // Fields + private static readonly int INITIAL_SIZE; // 0x00 + private int inUse; // 0x08 + private int modificationCount; // 0x0C + private Slot[] table; // 0x10 + private IComparer comparer; // 0x14 + private int defaultCapacity; // 0x18 + + // Properties + public virtual int Count { get; } // 0x00390BB8 + public virtual bool IsSynchronized { get; } // 0x00390BC0 + public virtual object SyncRoot { get; } // 0x00390BC8 + public virtual bool IsFixedSize { get; } // 0x00390BCC + public virtual bool IsReadOnly { get; } // 0x00390BD4 + public virtual ICollection Keys { get; } // 0x00390BDC + public virtual ICollection Values { get; } // 0x00390CF4 + public virtual object Item { get; set; } // 0x00390E0C 0x00390F14 + public virtual int Capacity { get; set; } // 0x00391918 0x0039193C + + // Methods + public void .ctor(); // 0x003903AC + public void .ctor(int initialCapacity); // 0x0039056C + public void .ctor(IComparer comparer, int capacity); // 0x00390448 + public void .ctor(IComparer comparer); // 0x00390608 + public void .ctor(IDictionary d); // 0x003906B8 + public void .ctor(IDictionary d, IComparer comparer); // 0x003906C0 + private static void .cctor(); // 0x00390A64 + private IEnumerator System.Collections.IEnumerable.GetEnumerator(); // 0x00390ACC + public virtual void Add(object key, object value); // 0x00391A94 + public virtual void Clear(); // 0x00391AB0 + public virtual bool Contains(object key); // 0x00391B70 + public virtual IDictionaryEnumerator GetEnumerator(); // 0x00391CDC + public virtual void Remove(object key); // 0x00391D50 + public virtual void CopyTo(Array array, int arrayIndex); // 0x00391D94 + public virtual object Clone(); // 0x00392120 + public virtual IList GetKeyList(); // 0x003921B0 + public virtual IList GetValueList(); // 0x00392220 + public virtual void RemoveAt(int index); // 0x00392290 + public virtual int IndexOfKey(object key); // 0x00392404 + public virtual int IndexOfValue(object value); // 0x00392564 + public virtual bool ContainsKey(object key); // 0x003925F4 + public virtual bool ContainsValue(object value); // 0x0039275C + public virtual object GetByIndex(int index); // 0x00392788 + public virtual void SetByIndex(int index, object value); // 0x0039288C + public virtual object GetKey(int index); // 0x00392994 + public static SortedList Synchronized(SortedList list); // 0x00392A98 + public virtual void TrimToSize(); // 0x00392C44 + private void Resize(int n, bool copy); // 0x00392CA8 + private void EnsureCapacity(int n, int free); // 0x00392D50 + private void PutImpl(object key, object value, bool overwrite); // 0x003912A0 + private object GetImpl(object key); // 0x00390EB4 + private void InitTable(int capacity, bool forceSize); // 0x00390578 + private void CopyToArray(Array arr, int i, EnumeratorMode mode); // 0x00392F00 + private int Find(object key); // 0x003910A4 +} + +// Namespace: +[Serializable] +internal struct Slot // TypeDefIndex: 319 +{ + // Fields + internal object key; // 0x08 + internal object value; // 0x0C + +} + +// Namespace: +private enum EnumeratorMode // TypeDefIndex: 320 +{ + KEY_MODE = 0, + VALUE_MODE = 1, + ENTRY_MODE = 2 +} + +// Namespace: +private sealed class Enumerator : IEnumerator, ICloneable, IDictionaryEnumerator // TypeDefIndex: 321 +{ + // Fields + private SortedList host; // 0x08 + private int stamp; // 0x0C + private int pos; // 0x10 + private int size; // 0x14 + private EnumeratorMode mode; // 0x18 + private object currentKey; // 0x1C + private object currentValue; // 0x20 + private bool invalid; // 0x24 + private static readonly string xstr; // 0x00 + + // Properties + public DictionaryEntry Entry { get; } // 0x003934B0 + public object Key { get; } // 0x003935B8 + public object Value { get; } // 0x003936B4 + public object Current { get; } // 0x003937B0 + + // Methods + public void .ctor(SortedList host, EnumeratorMode mode); // 0x00390B40 + public void .ctor(SortedList host); // 0x003932AC + private static void .cctor(); // 0x003932B4 + public void Reset(); // 0x00393198 + public bool MoveNext(); // 0x00393328 + public object Clone(); // 0x003939B0 +} + +// Namespace: +[Serializable] +private class ListKeys : IEnumerable, ICollection, IList // TypeDefIndex: 322 +{ + // Fields + private SortedList host; // 0x08 + + // Properties + public virtual int Count { get; } // 0x00393AD4 + public virtual bool IsSynchronized { get; } // 0x00393B08 + public virtual object SyncRoot { get; } // 0x00393B3C + public virtual bool IsFixedSize { get; } // 0x00393BB4 + public virtual bool IsReadOnly { get; } // 0x00393BBC + public virtual object Item { get; set; } // 0x00393BC4 0x00393C00 + + // Methods + public void .ctor(SortedList host); // 0x00390C4C + public virtual void CopyTo(Array array, int arrayIndex); // 0x00393B70 + public virtual int Add(object value); // 0x00393C9C + public virtual void Clear(); // 0x00393D38 + public virtual bool Contains(object key); // 0x00393DD4 + public virtual int IndexOf(object key); // 0x00393E10 + public virtual void Insert(int index, object value); // 0x00393E4C + public virtual void Remove(object value); // 0x00393EE8 + public virtual void RemoveAt(int index); // 0x00393F84 + public virtual IEnumerator GetEnumerator(); // 0x00394020 +} + +// Namespace: +[Serializable] +private class ListValues : IEnumerable, ICollection, IList // TypeDefIndex: 323 +{ + // Fields + private SortedList host; // 0x08 + + // Properties + public virtual int Count { get; } // 0x00394098 + public virtual bool IsSynchronized { get; } // 0x003940CC + public virtual object SyncRoot { get; } // 0x00394100 + public virtual bool IsFixedSize { get; } // 0x00394178 + public virtual bool IsReadOnly { get; } // 0x00394180 + public virtual object Item { get; set; } // 0x00394188 0x003941C4 + + // Methods + public void .ctor(SortedList host); // 0x00390D64 + public virtual void CopyTo(Array array, int arrayIndex); // 0x00394134 + public virtual int Add(object value); // 0x00394260 + public virtual void Clear(); // 0x003942FC + public virtual bool Contains(object value); // 0x00394398 + public virtual int IndexOf(object value); // 0x003943D4 + public virtual void Insert(int index, object value); // 0x00394410 + public virtual void Remove(object value); // 0x003944AC + public virtual void RemoveAt(int index); // 0x00394548 + public virtual IEnumerator GetEnumerator(); // 0x003945E4 +} + +// Namespace: +private class SynchedSortedList : SortedList // TypeDefIndex: 324 +{ + // Fields + private SortedList host; // 0x1C + + // Properties + public override int Capacity { get; set; } // 0x0039465C 0x00394728 + public override int Count { get; } // 0x003947EC + public override bool IsSynchronized { get; } // 0x00394820 + public override object SyncRoot { get; } // 0x00394828 + public override bool IsFixedSize { get; } // 0x0039485C + public override bool IsReadOnly { get; } // 0x00394890 + public override ICollection Keys { get; } // 0x003948C4 + public override ICollection Values { get; } // 0x00394990 + public override object Item { get; set; } // 0x00394A5C 0x00394B24 + + // Methods + public void .ctor(SortedList host); // 0x00392B74 + public override void CopyTo(Array array, int arrayIndex); // 0x00394BFC + public override void Add(object key, object value); // 0x00394CCC + public override void Clear(); // 0x00394DA4 + public override bool Contains(object key); // 0x00394E60 + public override IDictionaryEnumerator GetEnumerator(); // 0x00394F34 + public override void Remove(object key); // 0x00395000 + public override bool ContainsKey(object key); // 0x003950C4 + public override bool ContainsValue(object value); // 0x00395198 + public override object Clone(); // 0x0039526C + public override object GetByIndex(int index); // 0x003953B8 + public override object GetKey(int index); // 0x0039548C + public override IList GetKeyList(); // 0x00395560 + public override IList GetValueList(); // 0x00395668 + public override void RemoveAt(int index); // 0x00395770 + public override int IndexOfKey(object key); // 0x00395834 + public override int IndexOfValue(object val); // 0x00395908 + public override void SetByIndex(int index, object value); // 0x003959DC + public override void TrimToSize(); // 0x00395AAC +} + +// Namespace: System.Collections +[Serializable] +public class Stack : IEnumerable, ICloneable, ICollection // TypeDefIndex: 325 +{ + // Fields + private const int default_capacity = 16; // 0x00 + private object[] contents; // 0x08 + private int current; // 0x0C + private int count; // 0x10 + private int capacity; // 0x14 + private int modCount; // 0x18 + + // Properties + public virtual int Count { get; } // 0x00396270 + public virtual bool IsSynchronized { get; } // 0x00396278 + public virtual object SyncRoot { get; } // 0x00396280 + + // Methods + public void .ctor(); // 0x00395B68 + public void .ctor(ICollection col); // 0x00395BEC + public void .ctor(int initialCapacity); // 0x00396004 + private void Resize(int ncapacity); // 0x003960E8 + public static Stack Synchronized(Stack stack); // 0x00396184 + public virtual void Clear(); // 0x00396284 + public virtual object Clone(); // 0x0039630C + public virtual bool Contains(object obj); // 0x003963B8 + public virtual void CopyTo(Array array, int index); // 0x003964C0 + public virtual IEnumerator GetEnumerator(); // 0x003966B8 + public virtual object Peek(); // 0x00396768 + public virtual object Pop(); // 0x0039683C + public virtual void Push(object obj); // 0x003969A8 + public virtual object[] ToArray(); // 0x00396A60 +} + +// Namespace: +[Serializable] +private class SyncStack : Stack // TypeDefIndex: 326 +{ + // Fields + private Stack stack; // 0x1C + + // Properties + public override int Count { get; } // 0x00396DDC + public override bool IsSynchronized { get; } // 0x00396E84 + public override object SyncRoot { get; } // 0x00396E8C + + // Methods + internal void .ctor(Stack s); // 0x00396254 + public override void Clear(); // 0x00396EC0 + public override object Clone(); // 0x00396F58 + public override bool Contains(object obj); // 0x00397098 + public override void CopyTo(Array array, int index); // 0x00397148 + public override IEnumerator GetEnumerator(); // 0x003971F4 + public override object Peek(); // 0x003972D8 + public override object Pop(); // 0x00397380 + public override void Push(object obj); // 0x00397428 + public override object[] ToArray(); // 0x003974C8 +} + +// Namespace: +private class Enumerator : IEnumerator, ICloneable // TypeDefIndex: 327 +{ + // Fields + private const int EOF = -1; // 0x00 + private const int BOF = -2; // 0x00 + private Stack stack; // 0x08 + private int modCount; // 0x0C + private int current; // 0x10 + + // Properties + public virtual object Current { get; } // 0x00396AF4 + + // Methods + internal void .ctor(Stack s); // 0x00396728 + public object Clone(); // 0x00396AEC + public virtual bool MoveNext(); // 0x00396C24 + public virtual void Reset(); // 0x00396D24 +} + +// Namespace: System.Configuration.Assemblies +[Serializable] +public struct AssemblyHash : ICloneable // TypeDefIndex: 328 +{ + // Fields + private AssemblyHashAlgorithm _algorithm; // 0x08 + private byte[] _value; // 0x0C + public static readonly AssemblyHash Empty; // 0x00 + + // Properties + public AssemblyHashAlgorithm Algorithm { get; set; } // 0x000A7558 0x000A7560 + + // Methods + public void .ctor(AssemblyHashAlgorithm algorithm, byte[] value); // 0x000A7540 + public void .ctor(byte[] value); // 0x000A7548 + private static void .cctor(); // 0x00397634 + public object Clone(); // 0x000A7568 + public byte[] GetValue(); // 0x000A7570 + public void SetValue(byte[] value); // 0x000A7578 +} + +// Namespace: System.Configuration.Assemblies +[Serializable] +public enum AssemblyHashAlgorithm // TypeDefIndex: 329 +{ + None = 0, + MD5 = 32771, + SHA1 = 32772 +} + +// Namespace: System.Configuration.Assemblies +[Serializable] +public enum AssemblyVersionCompatibility // TypeDefIndex: 330 +{ + SameMachine = 1, + SameProcess = 2, + SameDomain = 3 +} + +// Namespace: System.Deployment.Internal +public static class InternalActivationContextHelper // TypeDefIndex: 331 +{ + // Methods + public static object GetActivationContextData(ActivationContext appInfo); // 0x004CAD0C + public static object GetApplicationComponentManifest(ActivationContext appInfo); // 0x004CAD94 + public static byte[] GetApplicationManifestBytes(ActivationContext appInfo); // 0x004CAE1C + public static object GetDeploymentComponentManifest(ActivationContext appInfo); // 0x004CAEA4 + public static byte[] GetDeploymentManifestBytes(ActivationContext appInfo); // 0x004CAF2C + public static bool IsFirstRun(ActivationContext appInfo); // 0x004CAFB4 + public static void PrepareForExecution(ActivationContext appInfo); // 0x004CB03C +} + +// Namespace: System.Deployment.Internal +public static class InternalApplicationIdentityHelper // TypeDefIndex: 332 +{ + // Methods + public static object GetActivationContextData(ActivationContext appInfo); // 0x004CB0C4 + public static object GetInternalAppId(ApplicationIdentity id); // 0x004CB14C +} + +// Namespace: System.Diagnostics.CodeAnalysis +public sealed class SuppressMessageAttribute : Attribute // TypeDefIndex: 333 +{ + // Fields + private string category; // 0x08 + private string checkId; // 0x0C + private string justification; // 0x10 + private string messageId; // 0x14 + private string scope; // 0x18 + private string target; // 0x1C + + // Properties + public string Category { get; } // 0x004CB1FC + public string CheckId { get; } // 0x004CB204 + public string Justification { get; set; } // 0x004CB20C 0x004CB214 + public string MessageId { get; set; } // 0x004CB21C 0x004CB224 + public string Scope { get; set; } // 0x004CB22C 0x004CB234 + public string Target { get; set; } // 0x004CB23C 0x004CB244 + + // Methods + public void .ctor(string category, string checkId); // 0x004CB1D4 +} + +// Namespace: System.Diagnostics.SymbolStore +public interface ISymbolBinder // TypeDefIndex: 334 +{ + // Methods + ISymbolReader GetReader(int importer, string filename, string searchPath); +} + +// Namespace: System.Diagnostics.SymbolStore +public interface ISymbolBinder1 // TypeDefIndex: 335 +{ + // Methods + ISymbolReader GetReader(IntPtr importer, string filename, string searchPath); +} + +// Namespace: System.Diagnostics.SymbolStore +public interface ISymbolDocument // TypeDefIndex: 336 +{ + // Properties + Guid CheckSumAlgorithmId { get; } + Guid DocumentType { get; } + bool HasEmbeddedSource { get; } + Guid Language { get; } + Guid LanguageVendor { get; } + int SourceLength { get; } + string URL { get; } + + // Methods + int FindClosestLine(int line); + byte[] GetCheckSum(); + byte[] GetSourceRange(int startLine, int startColumn, int endLine, int endColumn); +} + +// Namespace: System.Diagnostics.SymbolStore +public interface ISymbolDocumentWriter // TypeDefIndex: 337 +{ + // Methods + void SetCheckSum(Guid algorithmId, byte[] checkSum); + void SetSource(byte[] source); +} + +// Namespace: System.Diagnostics.SymbolStore +public interface ISymbolMethod // TypeDefIndex: 338 +{ + // Properties + ISymbolScope RootScope { get; } + int SequencePointCount { get; } + SymbolToken Token { get; } + + // Methods + ISymbolNamespace GetNamespace(); + int GetOffset(ISymbolDocument document, int line, int column); + ISymbolVariable[] GetParameters(); + int[] GetRanges(ISymbolDocument document, int line, int column); + ISymbolScope GetScope(int offset); + void GetSequencePoints(int[] offsets, ISymbolDocument[] documents, int[] lines, int[] columns, int[] endLines, int[] endColumns); + bool GetSourceStartEnd(ISymbolDocument[] docs, int[] lines, int[] columns); +} + +// Namespace: System.Diagnostics.SymbolStore +public interface ISymbolNamespace // TypeDefIndex: 339 +{ + // Properties + string Name { get; } + + // Methods + ISymbolNamespace[] GetNamespaces(); + ISymbolVariable[] GetVariables(); +} + +// Namespace: System.Diagnostics.SymbolStore +public interface ISymbolReader // TypeDefIndex: 340 +{ + // Properties + SymbolToken UserEntryPoint { get; } + + // Methods + ISymbolDocument GetDocument(string url, Guid language, Guid languageVendor, Guid documentType); + ISymbolDocument[] GetDocuments(); + ISymbolVariable[] GetGlobalVariables(); + ISymbolMethod GetMethod(SymbolToken method); + ISymbolMethod GetMethod(SymbolToken method, int version); + ISymbolMethod GetMethodFromDocumentPosition(ISymbolDocument document, int line, int column); + ISymbolNamespace[] GetNamespaces(); + byte[] GetSymAttribute(SymbolToken parent, string name); + ISymbolVariable[] GetVariables(SymbolToken parent); +} + +// Namespace: System.Diagnostics.SymbolStore +public interface ISymbolScope // TypeDefIndex: 341 +{ + // Properties + int EndOffset { get; } + ISymbolMethod Method { get; } + ISymbolScope Parent { get; } + int StartOffset { get; } + + // Methods + ISymbolScope[] GetChildren(); + ISymbolVariable[] GetLocals(); + ISymbolNamespace[] GetNamespaces(); +} + +// Namespace: System.Diagnostics.SymbolStore +public interface ISymbolVariable // TypeDefIndex: 342 +{ + // Properties + int AddressField1 { get; } + int AddressField2 { get; } + int AddressField3 { get; } + SymAddressKind AddressKind { get; } + object Attributes { get; } + int EndOffset { get; } + string Name { get; } + int StartOffset { get; } + + // Methods + byte[] GetSignature(); +} + +// Namespace: System.Diagnostics.SymbolStore +public interface ISymbolWriter // TypeDefIndex: 343 +{ + // Methods + void Close(); + void CloseMethod(); + void CloseNamespace(); + void CloseScope(int endOffset); + ISymbolDocumentWriter DefineDocument(string url, Guid language, Guid languageVendor, Guid documentType); + void DefineField(SymbolToken parent, string name, FieldAttributes attributes, byte[] signature, SymAddressKind addrKind, int addr1, int addr2, int addr3); + void DefineGlobalVariable(string name, FieldAttributes attributes, byte[] signature, SymAddressKind addrKind, int addr1, int addr2, int addr3); + void DefineLocalVariable(string name, FieldAttributes attributes, byte[] signature, SymAddressKind addrKind, int addr1, int addr2, int addr3, int startOffset, int endOffset); + void DefineParameter(string name, ParameterAttributes attributes, int sequence, SymAddressKind addrKind, int addr1, int addr2, int addr3); + void DefineSequencePoints(ISymbolDocumentWriter document, int[] offsets, int[] lines, int[] columns, int[] endLines, int[] endColumns); + void Initialize(IntPtr emitter, string filename, bool fFullBuild); + void OpenMethod(SymbolToken method); + void OpenNamespace(string name); + int OpenScope(int startOffset); + void SetMethodSourceRange(ISymbolDocumentWriter startDoc, int startLine, int startColumn, ISymbolDocumentWriter endDoc, int endLine, int endColumn); + void SetScopeRange(int scopeID, int startOffset, int endOffset); + void SetSymAttribute(SymbolToken parent, string name, byte[] data); + void SetUnderlyingWriter(IntPtr underlyingWriter); + void SetUserEntryPoint(SymbolToken entryMethod); + void UsingNamespace(string fullName); +} + +// Namespace: System.Diagnostics.SymbolStore +[Serializable] +public enum SymAddressKind // TypeDefIndex: 344 +{ + ILOffset = 1, + NativeRVA = 2, + NativeRegister = 3, + NativeRegisterRelative = 4, + NativeOffset = 5, + NativeRegisterRegister = 6, + NativeRegisterStack = 7, + NativeStackRegister = 8, + BitField = 9, + NativeSectionOffset = 10 +} + +// Namespace: System.Diagnostics.SymbolStore +public class SymDocumentType // TypeDefIndex: 345 +{ + // Fields + public static readonly Guid Text; // 0x00 + + // Methods + public void .ctor(); // 0x002D5AC8 +} + +// Namespace: System.Diagnostics.SymbolStore +public class SymLanguageType // TypeDefIndex: 346 +{ + // Fields + public static readonly Guid Basic; // 0x00 + public static readonly Guid C; // 0x10 + public static readonly Guid Cobol; // 0x20 + public static readonly Guid CPlusPlus; // 0x30 + public static readonly Guid CSharp; // 0x40 + public static readonly Guid ILAssembly; // 0x50 + public static readonly Guid Java; // 0x60 + public static readonly Guid JScript; // 0x70 + public static readonly Guid MCPlusPlus; // 0x80 + public static readonly Guid Pascal; // 0x90 + public static readonly Guid SMC; // 0xA0 + + // Methods + public void .ctor(); // 0x002D5AD0 +} + +// Namespace: System.Diagnostics.SymbolStore +public class SymLanguageVendor // TypeDefIndex: 347 +{ + // Fields + public static readonly Guid Microsoft; // 0x00 + + // Methods + public void .ctor(); // 0x002D5AD8 +} + +// Namespace: System.Diagnostics.SymbolStore +public struct SymbolToken // TypeDefIndex: 348 +{ + // Fields + private int _val; // 0x08 + + // Methods + public void .ctor(int val); // 0x0008D170 + public override bool Equals(object obj); // 0x0008D178 + public bool Equals(SymbolToken obj); // 0x0008D180 + public override int GetHashCode(); // 0x0008D194 + public int GetToken(); // 0x0008D1A0 + public static bool op_Equality(SymbolToken a, SymbolToken b); // 0x002D5BA0 + public static bool op_Inequality(SymbolToken a, SymbolToken b); // 0x002D5BB4 +} + +// Namespace: System.Diagnostics +public sealed class DebuggableAttribute : Attribute // TypeDefIndex: 349 +{ + // Fields + private bool JITTrackingEnabledFlag; // 0x08 + private bool JITOptimizerDisabledFlag; // 0x09 + private DebuggingModes debuggingModes; // 0x0C + + // Properties + public DebuggingModes DebuggingFlags { get; } // 0x004CB2EC + public bool IsJITTrackingEnabled { get; } // 0x004CB2F4 + public bool IsJITOptimizerDisabled { get; } // 0x004CB2FC + + // Methods + public void .ctor(bool isJITTrackingEnabled, bool isJITOptimizerDisabled); // 0x004CB274 + public void .ctor(DebuggingModes modes); // 0x004CB2BC +} + +// Namespace: +public enum DebuggingModes // TypeDefIndex: 350 +{ + None = 0, + Default = 1, + IgnoreSymbolStoreSequencePoints = 2, + EnableEditAndContinue = 4, + DisableOptimizations = 256 +} + +// Namespace: System.Diagnostics +public sealed class Debugger // TypeDefIndex: 351 +{ + // Fields + public static readonly string DefaultCategory; // 0x00 + + // Properties + public static bool IsAttached { get; } // 0x004CB3B0 + + // Methods + public void .ctor(); // 0x004CB304 + private static void .cctor(); // 0x004CB30C + private static bool IsAttached_internal(); // 0x004CB428 + public static void Break(); // 0x004CB42C + public static bool IsLogging(); // 0x004CB430 + public static bool Launch(); // 0x004CB438 + public static void Log(int level, string category, string message); // 0x004CB4C0 +} + +// Namespace: System.Diagnostics +public sealed class DebuggerBrowsableAttribute : Attribute // TypeDefIndex: 352 +{ + // Fields + private DebuggerBrowsableState state; // 0x08 + + // Properties + public DebuggerBrowsableState State { get; } // 0x004CB4E4 + + // Methods + public void .ctor(DebuggerBrowsableState state); // 0x004CB4C4 +} + +// Namespace: System.Diagnostics +public enum DebuggerBrowsableState // TypeDefIndex: 353 +{ + Never = 0, + Collapsed = 2, + RootHidden = 3 +} + +// Namespace: System.Diagnostics +public sealed class DebuggerDisplayAttribute : Attribute // TypeDefIndex: 354 +{ + // Fields + private string value; // 0x08 + private string type; // 0x0C + private string name; // 0x10 + private string target_type_name; // 0x14 + private Type target_type; // 0x18 + + // Properties + public string Value { get; } // 0x004CB5DC + public Type Target { get; set; } // 0x004CB5E4 0x004CB5EC + public string TargetTypeName { get; set; } // 0x004CB6B8 0x004CB6C0 + public string Type { get; set; } // 0x004CB6C8 0x004CB6D0 + public string Name { get; set; } // 0x004CB6D8 0x004CB6E0 + + // Methods + public void .ctor(string value); // 0x004CB4EC +} + +// Namespace: System.Diagnostics +[Serializable] +public sealed class DebuggerNonUserCodeAttribute : Attribute // TypeDefIndex: 355 +{ + // Methods + public void .ctor(); // 0x002D3D30 +} + +// Namespace: System.Diagnostics +[Serializable] +public sealed class DebuggerStepThroughAttribute : Attribute // TypeDefIndex: 356 +{ + // Methods + public void .ctor(); // 0x002D3D38 +} + +// Namespace: System.Diagnostics +[Serializable] +public sealed class DebuggerStepperBoundaryAttribute : Attribute // TypeDefIndex: 357 +{ + // Methods + public void .ctor(); // 0x002D3D40 +} + +// Namespace: System.Diagnostics +public sealed class DebuggerTypeProxyAttribute : Attribute // TypeDefIndex: 358 +{ + // Fields + private string proxy_type_name; // 0x08 + private string target_type_name; // 0x0C + private Type target_type; // 0x10 + + // Properties + public string ProxyTypeName { get; } // 0x002D3DAC + public Type Target { get; set; } // 0x002D3DB4 0x002D3DBC + public string TargetTypeName { get; set; } // 0x002D3DFC 0x002D3E04 + + // Methods + public void .ctor(string typeName); // 0x002D3D48 + public void .ctor(Type type); // 0x002D3D68 +} + +// Namespace: System.Diagnostics +public sealed class DebuggerVisualizerAttribute : Attribute // TypeDefIndex: 359 +{ + // Fields + private string description; // 0x08 + private string visualizerSourceName; // 0x0C + private string visualizerName; // 0x10 + private string targetTypeName; // 0x14 + private Type target; // 0x18 + + // Properties + public string Description { get; set; } // 0x002D421C 0x002D4224 + public Type Target { get; set; } // 0x002D422C 0x002D4234 + public string TargetTypeName { get; set; } // 0x002D4274 0x002D427C + public string VisualizerObjectSourceTypeName { get; } // 0x002D4284 + public string VisualizerTypeName { get; } // 0x002D428C + + // Methods + public void .ctor(string visualizerTypeName); // 0x002D3E0C + public void .ctor(Type visualizer); // 0x002D3E2C + public void .ctor(string visualizerTypeName, string visualizerObjectSourceTypeName); // 0x002D3F00 + public void .ctor(string visualizerTypeName, Type visualizerObjectSource); // 0x002D3F28 + public void .ctor(Type visualizer, string visualizerObjectSourceTypeName); // 0x002D4004 + public void .ctor(Type visualizer, Type visualizerObjectSource); // 0x002D40E0 +} + +// Namespace: System.Diagnostics +[Serializable] +public class StackFrame // TypeDefIndex: 360 +{ + // Fields + public const int OFFSET_UNKNOWN = -1; // 0x00 + private int ilOffset; // 0x08 + private int nativeOffset; // 0x0C + private MethodBase methodBase; // 0x10 + private string fileName; // 0x14 + private int lineNumber; // 0x18 + private int columnNumber; // 0x1C + private string internalMethodName; // 0x20 + + // Methods + public void .ctor(); // 0x002D4294 + public void .ctor(bool fNeedFileInfo); // 0x002D4300 + public void .ctor(int skipFrames); // 0x002D436C + public void .ctor(int skipFrames, bool fNeedFileInfo); // 0x002D43D8 + public void .ctor(string fileName, int lineNumber); // 0x002D4448 + public void .ctor(string fileName, int lineNumber, int colNumber); // 0x002D44CC + private static bool get_frame_info(int skip, bool needFileInfo, out MethodBase method, out int iloffset, out int native_offset, out string file, out int line, out int column); // 0x002D42FC + public virtual int GetFileLineNumber(); // 0x002D4550 + public virtual int GetFileColumnNumber(); // 0x002D4558 + public virtual string GetFileName(); // 0x002D4560 + internal string GetSecureFileName(); // 0x002D4568 + public virtual int GetILOffset(); // 0x002D4670 + public virtual MethodBase GetMethod(); // 0x002D4678 + public virtual int GetNativeOffset(); // 0x002D4680 + internal string GetInternalMethodName(); // 0x002D4688 + public override string ToString(); // 0x002D4690 +} + +// Namespace: System.Diagnostics +[Serializable] +public class StackTrace // TypeDefIndex: 361 +{ + // Fields + public const int METHODS_TO_SKIP = 0; // 0x00 + private StackFrame[] frames; // 0x08 + private bool debug_info; // 0x0C + + // Properties + public virtual int FrameCount { get; } // 0x002D522C + + // Methods + public void .ctor(); // 0x002D4970 + public void .ctor(bool fNeedFileInfo); // 0x002D4BE4 + public void .ctor(int skipFrames); // 0x002D4C10 + public void .ctor(int skipFrames, bool fNeedFileInfo); // 0x002D4C3C + public void .ctor(Exception e); // 0x002D4C6C + public void .ctor(Exception e, bool fNeedFileInfo); // 0x002D4CB4 + public void .ctor(Exception e, int skipFrames); // 0x002D4CDC + public void .ctor(Exception e, int skipFrames, bool fNeedFileInfo); // 0x002D4C94 + internal void .ctor(Exception e, int skipFrames, bool fNeedFileInfo, bool returnNativeFrames); // 0x002D4D00 + public void .ctor(StackFrame frame); // 0x002D50B8 + public void .ctor(Thread targetThread, bool needFileInfo); // 0x002D5194 + private void init_frames(int skipFrames, bool fNeedFileInfo); // 0x002D4998 + private static StackFrame[] get_trace(Exception e, int skipFrames, bool fNeedFileInfo); // 0x002D50B4 + public virtual StackFrame GetFrame(int index); // 0x002D5240 + public virtual StackFrame[] GetFrames(); // 0x002D52B8 + public override string ToString(); // 0x002D52C0 +} + +// Namespace: System.Globalization +[Serializable] +public abstract class Calendar : ICloneable // TypeDefIndex: 362 +{ + // Fields + public const int CurrentEra = 0; // 0x00 + [NonSerialized] private bool m_isReadOnly; // 0x08 + [NonSerialized] internal int twoDigitYearMax; // 0x0C + [NonSerialized] private int M_MaxYearValue; // 0x10 + [NonSerialized] internal string[] M_AbbrEraNames; // 0x14 + [NonSerialized] internal string[] M_EraNames; // 0x18 + internal int m_currentEraValue; // 0x1C + + // Properties + internal virtual int M_DaysInWeek { get; } // 0x002E8328 + public abstract int[] Eras { get; } + public virtual CalendarAlgorithmType AlgorithmType { get; } // 0x002E85F4 + public virtual DateTime MaxSupportedDateTime { get; } // 0x002E85FC + public virtual DateTime MinSupportedDateTime { get; } // 0x002E8690 + public bool IsReadOnly { get; } // 0x002E8904 + internal virtual int M_MaxYear { get; } // 0x002E8A98 + public virtual int TwoDigitYearMax { get; set; } // 0x002E8B64 0x002E8B6C + internal string[] AbbreviatedEraNames { get; set; } // 0x002E988C 0x002E99DC + internal string[] EraNames { get; set; } // 0x002E9BE0 0x002E9D30 + + // Methods + protected void .ctor(); // 0x002E8308 + internal string M_ValidValues(object a, object b); // 0x002E8330 + internal void M_ArgumentInRange(string param, int arg, int a, int b); // 0x002E840C + internal void M_CheckHMSM(int hour, int minute, int second, int milliseconds); // 0x002E8504 + public virtual object Clone(); // 0x002E8728 + public virtual int GetLeapMonth(int year); // 0x002E87D4 + public virtual int GetLeapMonth(int year, int era); // 0x002E8878 + public static Calendar ReadOnly(Calendar calendar); // 0x002E890C + internal void CheckReadOnly(); // 0x002E89EC + internal virtual void M_CheckYE(int year, int era); // 0x002E8B60 + public virtual DateTime AddDays(DateTime time, int days); // 0x002E8C2C + public virtual DateTime AddHours(DateTime time, int hours); // 0x002E8CFC + public virtual DateTime AddMilliseconds(DateTime time, double milliseconds); // 0x002E8DCC + public virtual DateTime AddMinutes(DateTime time, int minutes); // 0x002E8E9C + public abstract DateTime AddMonths(DateTime time, int months); + public virtual DateTime AddSeconds(DateTime time, int seconds); // 0x002E8F6C + public virtual DateTime AddWeeks(DateTime time, int weeks); // 0x002E903C + public abstract DateTime AddYears(DateTime time, int years); + public abstract int GetDayOfMonth(DateTime time); + public abstract DayOfWeek GetDayOfWeek(DateTime time); + public abstract int GetDayOfYear(DateTime time); + public virtual int GetDaysInMonth(int year, int month); // 0x002E90A8 + public abstract int GetDaysInMonth(int year, int month, int era); + public virtual int GetDaysInYear(int year); // 0x002E90D4 + public abstract int GetDaysInYear(int year, int era); + public abstract int GetEra(DateTime time); + public virtual int GetHour(DateTime time); // 0x002E90E8 + public virtual double GetMilliseconds(DateTime time); // 0x002E913C + public virtual int GetMinute(DateTime time); // 0x002E919C + public abstract int GetMonth(DateTime time); + public virtual int GetMonthsInYear(int year); // 0x002E91F0 + public abstract int GetMonthsInYear(int year, int era); + public virtual int GetSecond(DateTime time); // 0x002E9204 + internal int M_DiffDays(DateTime timeA, DateTime timeB); // 0x002E9258 + internal DateTime M_GetFirstDayOfSecondWeekOfYear(int year, CalendarWeekRule rule, DayOfWeek firstDayOfWeek); // 0x002E9300 + public virtual int GetWeekOfYear(DateTime time, CalendarWeekRule rule, DayOfWeek firstDayOfWeek); // 0x002E94CC + public abstract int GetYear(DateTime time); + public virtual bool IsLeapDay(int year, int month, int day); // 0x002E9678 + public abstract bool IsLeapDay(int year, int month, int day, int era); + public virtual bool IsLeapMonth(int year, int month); // 0x002E96A4 + public abstract bool IsLeapMonth(int year, int month, int era); + public virtual bool IsLeapYear(int year); // 0x002E96D0 + public abstract bool IsLeapYear(int year, int era); + public virtual DateTime ToDateTime(int year, int month, int day, int hour, int minute, int second, int millisecond); // 0x002E96E4 + public abstract DateTime ToDateTime(int year, int month, int day, int hour, int minute, int second, int millisecond, int era); + public virtual int ToFourDigitYear(int year); // 0x002E9738 +} + +// Namespace: System.Globalization +public enum CalendarAlgorithmType // TypeDefIndex: 363 +{ + Unknown = 0, + SolarCalendar = 1, + LunarCalendar = 2, + LunisolarCalendar = 3 +} + +// Namespace: System.Globalization +[Serializable] +public enum CalendarWeekRule // TypeDefIndex: 364 +{ + FirstDay = 0, + FirstFullWeek = 1, + FirstFourDayWeek = 2 +} + +// Namespace: System.Globalization +internal class CCMath // TypeDefIndex: 365 +{ + // Methods + public void .ctor(); // 0x002E81EC + public static double round(double x); // 0x002E81F4 + public static double mod(double x, double y); // 0x002E8208 + public static int div(int x, int y); // 0x002E5028 + public static int mod(int x, int y); // 0x002E4C90 + public static int div_mod(out int remainder, int x, int y); // 0x002E505C + public static int signum(double x); // 0x002E8240 + public static int signum(int x); // 0x002E8268 + public static double amod(double x, double y); // 0x002E827C + public static int amod(int x, int y); // 0x002E82C0 +} + +// Namespace: System.Globalization +internal class CCFixed // TypeDefIndex: 366 +{ + // Methods + public void .ctor(); // 0x002E4B08 + public static DateTime ToDateTime(int date); // 0x002E4B10 + public static DateTime ToDateTime(int date, int hour, int minute, int second, double milliseconds); // 0x002E4B58 + public static int FromDateTime(DateTime time); // 0x002E3BDC + public static DayOfWeek day_of_week(int date); // 0x002E4C54 + public static int kday_on_or_before(int date, int k); // 0x002E4CD0 + public static int kday_on_or_after(int date, int k); // 0x002E4D10 + public static int kd_nearest(int date, int k); // 0x002E4D54 + public static int kday_after(int date, int k); // 0x002E4D98 + public static int kday_before(int date, int k); // 0x002E4DDC +} + +// Namespace: System.Globalization +internal class CCGregorianCalendar // TypeDefIndex: 367 +{ + // Fields + private const int epoch = 1; // 0x00 + + // Methods + public void .ctor(); // 0x002E4E20 + public static bool is_leap_year(int year); // 0x002E4E28 + public static int fixed_from_dmy(int day, int month, int year); // 0x002E4EC0 + public static int year_from_fixed(int date); // 0x002E49F0 + public static void my_from_fixed(out int month, out int year, int date); // 0x002E50A8 + public static void dmy_from_fixed(out int day, out int month, out int year, int date); // 0x002E5248 + public static int month_from_fixed(int date); // 0x002E5290 + public static int day_from_fixed(int date); // 0x002E52C4 + public static int date_difference(int dayA, int monthA, int yearA, int dayB, int monthB, int yearB); // 0x002E5310 + public static int day_number(int day, int month, int year); // 0x002E5350 + public static int days_remaining(int day, int month, int year); // 0x002E537C + public static DateTime AddMonths(DateTime time, int months); // 0x002E53B8 + public static DateTime AddYears(DateTime time, int years); // 0x002E558C + public static int GetDayOfMonth(DateTime time); // 0x002E56F0 + public static int GetDayOfYear(DateTime time); // 0x002E5728 + public static int GetDaysInMonth(int year, int month); // 0x002E5554 + public static int GetDaysInYear(int year); // 0x002E5800 + public static int GetMonth(DateTime time); // 0x002E5920 + public static int GetYear(DateTime time); // 0x002E5974 + public static bool IsLeapDay(int year, int month, int day); // 0x002E59B0 + public static DateTime ToDateTime(int year, int month, int day, int hour, int minute, int second, int milliseconds); // 0x002E5A78 +} + +// Namespace: +public enum Month // TypeDefIndex: 368 +{ + january = 1, + february = 2, + march = 3, + april = 4, + may = 5, + june = 6, + july = 7, + august = 8, + september = 9, + october = 10, + november = 11, + december = 12 +} + +// Namespace: System.Globalization +internal class CCJulianCalendar // TypeDefIndex: 369 +{ + // Fields + private const int epoch = -1; // 0x00 + + // Methods + public void .ctor(); // 0x002E7CD0 + public static bool is_leap_year(int year); // 0x002E7CD8 + public static int fixed_from_dmy(int day, int month, int year); // 0x002E7D28 + public static int year_from_fixed(int date); // 0x002E7E10 + public static void my_from_fixed(out int month, out int year, int date); // 0x002E7E58 + public static void dmy_from_fixed(out int day, out int month, out int year, int date); // 0x002E7F90 + public static int month_from_fixed(int date); // 0x002E7FD8 + public static int day_from_fixed(int date); // 0x002E800C + public static int date_difference(int dayA, int monthA, int yearA, int dayB, int monthB, int yearB); // 0x002E8058 + public static int day_number(int day, int month, int year); // 0x002E8098 + public static int days_remaining(int day, int month, int year); // 0x002E8148 +} + +// Namespace: +public enum Month // TypeDefIndex: 370 +{ + january = 1, + february = 2, + march = 3, + april = 4, + may = 5, + june = 6, + july = 7, + august = 8, + september = 9, + october = 10, + november = 11, + december = 12 +} + +// Namespace: System.Globalization +internal class CCHebrewCalendar // TypeDefIndex: 371 +{ + // Fields + private const int epoch = -1373427; // 0x00 + + // Methods + public void .ctor(); // 0x002E6E04 + public static bool is_leap_year(int year); // 0x002E6E0C + public static int last_month_of_year(int year); // 0x002E6E58 + public static int elapsed_days(int year); // 0x002E6EA8 + public static int new_year_delay(int year); // 0x002E6FD0 + public static int last_day_of_month(int month, int year); // 0x002E701C + public static bool long_heshvan(int year); // 0x002E71EC + public static bool short_kislev(int year); // 0x002E725C + public static int days_in_year(int year); // 0x002E72CC + public static int fixed_from_dmy(int day, int month, int year); // 0x002E7304 + public static int year_from_fixed(int date); // 0x002E7400 + public static void my_from_fixed(out int month, out int year, int date); // 0x002E7480 + public static void dmy_from_fixed(out int day, out int month, out int year, int date); // 0x002E74F8 + public static int month_from_fixed(int date); // 0x002E7540 + public static int day_from_fixed(int date); // 0x002E7574 + public static int date_difference(int dayA, int monthA, int yearA, int dayB, int monthB, int yearB); // 0x002E75C0 + public static int day_number(int day, int month, int year); // 0x002E7600 + public static int days_remaining(int day, int month, int year); // 0x002E7638 +} + +// Namespace: +public enum Month // TypeDefIndex: 372 +{ + nisan = 1, + iyyar = 2, + sivan = 3, + tammuz = 4, + av = 5, + elul = 6, + tishri = 7, + heshvan = 8, + kislev = 9, + teveth = 10, + shevat = 11, + adar = 12, + adar_I = 12, + adar_II = 13 +} + +// Namespace: System.Globalization +internal class CCHijriCalendar // TypeDefIndex: 373 +{ + // Fields + private const int epoch = 227014; // 0x00 + + // Methods + public void .ctor(); // 0x002E7690 + public static bool is_leap_year(int year); // 0x002E7698 + public static int fixed_from_dmy(int day, int month, int year); // 0x002E76E8 + public static int year_from_fixed(int date); // 0x002E7788 + public static void my_from_fixed(out int month, out int year, int date); // 0x002E77D0 + public static void dmy_from_fixed(out int day, out int month, out int year, int date); // 0x002E78C0 + public static int month_from_fixed(int date); // 0x002E7980 + public static int day_from_fixed(int date); // 0x002E7A50 + public static int date_difference(int dayA, int monthA, int yearA, int dayB, int monthB, int yearB); // 0x002E7A90 + public static int day_number(int day, int month, int year); // 0x002E7BC8 + public static int days_remaining(int day, int month, int year); // 0x002E7C88 +} + +// Namespace: +public enum Month // TypeDefIndex: 374 +{ + muharram = 1, + safar = 2, + rabi_I = 3, + rabi_II = 4, + jumada_I = 5, + jumada_II = 6, + rajab = 7, + shaban = 8, + ramadan = 9, + shawwal = 10, + dhu_al_quada = 11, + dhu_al_hijja = 12 +} + +// Namespace: System.Globalization +internal class CCEastAsianLunisolarCalendar // TypeDefIndex: 375 +{ + // Fields + private const int initial_epact = 29; // 0x00 + + // Methods + public void .ctor(); // 0x002E2F04 + public static int fixed_from_dmy(int day, int month, int year); // 0x002E2F0C + public static int year_from_fixed(int date); // 0x002E2FA4 + public static void my_from_fixed(out int month, out int year, int date); // 0x002E303C + public static void dmy_from_fixed(out int day, out int month, out int year, int date); // 0x002E30D4 + public static DateTime AddMonths(DateTime date, int months); // 0x002E316C + public static DateTime AddYears(DateTime date, int years); // 0x002E3204 + public static int GetDayOfMonth(DateTime date); // 0x002E329C + public static int GetDayOfYear(DateTime date); // 0x002E3334 + public static int GetDaysInMonth(int gyear, int month); // 0x002E33CC + public static int GetDaysInYear(int year); // 0x002E3464 + public static int GetMonth(DateTime date); // 0x002E34FC + public static bool IsLeapMonth(int gyear, int month); // 0x002E3594 + public static bool IsLeapYear(int gyear); // 0x002E35E8 + public static DateTime ToDateTime(int year, int month, int day, int hour, int minute, int second, int millisecond); // 0x002E3628 +} + +// Namespace: System.Globalization +[Serializable] +internal class CCGregorianEraHandler // TypeDefIndex: 376 +{ + // Fields + private SortedList _Eras; // 0x08 + + // Properties + public int[] Eras { get; } // 0x002E5B48 + + // Methods + public void .ctor(); // 0x002E5ACC + public void appendEra(int nr, int rd_start, int rd_end); // 0x002E5CD4 + public void appendEra(int nr, int rd_start); // 0x002E5F14 + public int GregorianYear(int year, int era); // 0x002E5FE8 + public int EraYear(out int era, int date); // 0x002E62A8 + public void CheckDateTime(DateTime time); // 0x002E6858 + public bool ValidDate(int date); // 0x002E6958 + public bool ValidEra(int era); // 0x002E6D58 +} + +// Namespace: +[Serializable] +private struct Era // TypeDefIndex: 377 +{ + // Fields + private int _nr; // 0x08 + private int _start; // 0x0C + private int _gregorianYearStart; // 0x10 + private int _end; // 0x14 + private int _maxYear; // 0x18 + + // Properties + public int Nr { get; } // 0x0008D35C + + // Methods + public void .ctor(int nr, int start, int end); // 0x0008D340 + public int GregorianYear(int year); // 0x0008D364 + public bool Covers(int date); // 0x0008D36C + public int EraYear(out int era, int date); // 0x0008D394 +} + +// Namespace: System.Globalization +[Serializable] +internal class CCEastAsianLunisolarEraHandler // TypeDefIndex: 378 +{ + // Fields + private SortedList _Eras; // 0x08 + + // Properties + public int[] Eras { get; } // 0x002E373C + + // Methods + public void .ctor(); // 0x002E36C0 + public void appendEra(int nr, int rd_start, int rd_end); // 0x002E38C8 + public void appendEra(int nr, int rd_start); // 0x002E3B08 + public int GregorianYear(int year, int era); // 0x002E3C10 + public int EraYear(out int era, int date); // 0x002E3E9C + public void CheckDateTime(DateTime time); // 0x002E444C + public bool ValidDate(int date); // 0x002E454C + public bool ValidEra(int era); // 0x002E494C +} + +// Namespace: +[Serializable] +private struct Era // TypeDefIndex: 379 +{ + // Fields + private int _nr; // 0x08 + private int _start; // 0x0C + private int _gregorianYearStart; // 0x10 + private int _end; // 0x14 + private int _maxYear; // 0x18 + + // Properties + public int Nr { get; } // 0x0008D300 + + // Methods + public void .ctor(int nr, int start, int end); // 0x0008D2E4 + public int GregorianYear(int year); // 0x0008D308 + public bool Covers(int date); // 0x0008D310 + public int EraYear(out int era, int date); // 0x0008D338 +} + +// Namespace: System.Globalization +public sealed class CharUnicodeInfo // TypeDefIndex: 380 +{ + // Methods + private void .ctor(); // 0x002E9F34 + public static int GetDecimalDigitValue(char ch); // 0x002E9F3C + public static int GetDecimalDigitValue(string s, int index); // 0x002EA204 + public static int GetDigitValue(char ch); // 0x002EA2C8 + public static int GetDigitValue(string s, int index); // 0x002EA3D8 + public static double GetNumericValue(char ch); // 0x002EA4A0 + public static double GetNumericValue(string s, int index); // 0x002EAA58 + public static UnicodeCategory GetUnicodeCategory(char ch); // 0x002EAB1C + public static UnicodeCategory GetUnicodeCategory(string s, int index); // 0x002EABA0 +} + +// Namespace: System.Globalization +[Serializable] +public class ChineseLunisolarCalendar : EastAsianLunisolarCalendar // TypeDefIndex: 381 +{ + // Fields + public const int ChineseEra = 1; // 0x00 + internal static readonly CCEastAsianLunisolarEraHandler era_handler; // 0x00 + private static DateTime ChineseMin; // 0x08 + private static DateTime ChineseMax; // 0x18 + + // Properties + public override int[] Eras { get; } // 0x002EAEB4 + public override DateTime MinSupportedDateTime { get; } // 0x002EB0BC + public override DateTime MaxSupportedDateTime { get; } // 0x002EB154 + + // Methods + public void .ctor(); // 0x002EAC8C + private static void .cctor(); // 0x002EAD28 + public override int GetEra(DateTime time); // 0x002EAFC4 +} + +// Namespace: System.Globalization +[Serializable] +internal sealed class CodePageDataItem // TypeDefIndex: 382 +{ + // Fields + private string m_bodyName; // 0x08 + private int m_codePage; // 0x0C + private int m_dataIndex; // 0x10 + private string m_description; // 0x14 + private uint m_flags; // 0x18 + private string m_headerName; // 0x1C + private int m_uiFamilyCodePage; // 0x20 + private string m_webName; // 0x24 + + // Methods + private void .ctor(); // 0x002EB1EC +} + +// Namespace: System.Globalization +[Serializable] +public class CompareInfo : IDeserializationCallback // TypeDefIndex: 383 +{ + // Fields + private const CompareOptions ValidCompareOptions_NoStringSort = 1342177311; // 0x00 + private const CompareOptions ValidCompareOptions = 1879048223; // 0x00 + private static readonly bool useManagedCollation; // 0x00 + private int culture; // 0x08 + [NonSerialized] private string icu_name; // 0x0C + private int win32LCID; // 0x10 + private string m_name; // 0x14 + [NonSerialized] private SimpleCollator collator; // 0x18 + private static Hashtable collators; // 0x04 + [NonSerialized] private static object monitor; // 0x08 + + // Properties + internal static bool UseManagedCollation { get; } // 0x002EBA88 + public int LCID { get; } // 0x002EE73C + public virtual string Name { get; } // 0x002EE744 + + // Methods + private void .ctor(); // 0x002EB1F4 + internal void .ctor(CultureInfo ci); // 0x002EB1FC + private static void .cctor(); // 0x002EB6D4 + private void System.Runtime.Serialization.IDeserializationCallback.OnDeserialization(object sender); // 0x002EB874 + private void construct_compareinfo(string locale); // 0x002EB6D0 + private void free_internal_collator(); // 0x002EBB14 + private int internal_compare(string str1, int offset1, int length1, string str2, int offset2, int length2, CompareOptions options); // 0x002EBB18 + private void assign_sortkey(object key, string source, CompareOptions options); // 0x002EBB1C + private int internal_index(string source, int sindex, int count, char value, CompareOptions options, bool first); // 0x002EBB20 + private int internal_index(string source, int sindex, int count, string value, CompareOptions options, bool first); // 0x002EBB4C + protected override void Finalize(); // 0x002EBB78 + private int internal_compare_managed(string str1, int offset1, int length1, string str2, int offset2, int length2, CompareOptions options); // 0x002EBBDC + private int internal_compare_switch(string str1, int offset1, int length1, string str2, int offset2, int length2, CompareOptions options); // 0x002EBC4C + public virtual int Compare(string string1, string string2); // 0x002EBDB0 + public virtual int Compare(string string1, string string2, CompareOptions options); // 0x002EBDDC + public virtual int Compare(string string1, int offset1, string string2, int offset2); // 0x002EBF0C + public virtual int Compare(string string1, int offset1, string string2, int offset2, CompareOptions options); // 0x002EBF3C + public virtual int Compare(string string1, int offset1, int length1, string string2, int offset2, int length2); // 0x002EC170 + public virtual int Compare(string string1, int offset1, int length1, string string2, int offset2, int length2, CompareOptions options); // 0x002EC1B4 + public override bool Equals(object value); // 0x002EC4A8 + public static CompareInfo GetCompareInfo(int culture); // 0x002EC568 + public static CompareInfo GetCompareInfo(string name); // 0x002EC608 + public static CompareInfo GetCompareInfo(int culture, Assembly assembly); // 0x002EC728 + public static CompareInfo GetCompareInfo(string name, Assembly assembly); // 0x002EC8E0 + public override int GetHashCode(); // 0x002ECAE4 + public virtual SortKey GetSortKey(string source); // 0x002ECAEC + public virtual SortKey GetSortKey(string source, CompareOptions options); // 0x002ECB00 + public virtual int IndexOf(string source, char value); // 0x002ECD00 + public virtual int IndexOf(string source, string value); // 0x002ECD60 + public virtual int IndexOf(string source, char value, CompareOptions options); // 0x002ECDC0 + public virtual int IndexOf(string source, char value, int startIndex); // 0x002ECE20 + public virtual int IndexOf(string source, string value, CompareOptions options); // 0x002ECE88 + public virtual int IndexOf(string source, string value, int startIndex); // 0x002ECEE8 + public virtual int IndexOf(string source, char value, int startIndex, CompareOptions options); // 0x002ECF50 + public virtual int IndexOf(string source, char value, int startIndex, int count); // 0x002ECFB8 + public virtual int IndexOf(string source, string value, int startIndex, CompareOptions options); // 0x002ECFE8 + public virtual int IndexOf(string source, string value, int startIndex, int count); // 0x002ED050 + private int internal_index_managed(string s, int sindex, int count, char c, CompareOptions opt, bool first); // 0x002ED080 + private int internal_index_switch(string s, int sindex, int count, char c, CompareOptions opt, bool first); // 0x002ED104 + public virtual int IndexOf(string source, char value, int startIndex, int count, CompareOptions options); // 0x002ED274 + private int internal_index_managed(string s1, int sindex, int count, string s2, CompareOptions opt, bool first); // 0x002ED4AC + private int internal_index_switch(string s1, int sindex, int count, string s2, CompareOptions opt, bool first); // 0x002ED530 + public virtual int IndexOf(string source, string value, int startIndex, int count, CompareOptions options); // 0x002ED6A0 + public virtual bool IsPrefix(string source, string prefix); // 0x002ED8F0 + public virtual bool IsPrefix(string source, string prefix, CompareOptions options); // 0x002ED91C + public virtual bool IsSuffix(string source, string suffix); // 0x002EDB64 + public virtual bool IsSuffix(string source, string suffix, CompareOptions options); // 0x002EDB90 + public virtual int LastIndexOf(string source, char value); // 0x002EDDD8 + public virtual int LastIndexOf(string source, string value); // 0x002EDE54 + public virtual int LastIndexOf(string source, char value, CompareOptions options); // 0x002EDED0 + public virtual int LastIndexOf(string source, char value, int startIndex); // 0x002EDF4C + public virtual int LastIndexOf(string source, string value, CompareOptions options); // 0x002EDF80 + public virtual int LastIndexOf(string source, string value, int startIndex); // 0x002EDFFC + public virtual int LastIndexOf(string source, char value, int startIndex, CompareOptions options); // 0x002EE030 + public virtual int LastIndexOf(string source, char value, int startIndex, int count); // 0x002EE064 + public virtual int LastIndexOf(string source, string value, int startIndex, CompareOptions options); // 0x002EE094 + public virtual int LastIndexOf(string source, string value, int startIndex, int count); // 0x002EE0C8 + public virtual int LastIndexOf(string source, char value, int startIndex, int count, CompareOptions options); // 0x002EE0F8 + public virtual int LastIndexOf(string source, string value, int startIndex, int count, CompareOptions options); // 0x002EE328 + public static bool IsSortable(char ch); // 0x002EE574 + public static bool IsSortable(string text); // 0x002EE5F8 + public override string ToString(); // 0x002EE67C +} + +// Namespace: System.Globalization +[Serializable] +public enum CompareOptions // TypeDefIndex: 384 +{ + None = 0, + IgnoreCase = 1, + IgnoreNonSpace = 2, + IgnoreSymbols = 4, + IgnoreKanaType = 8, + IgnoreWidth = 16, + OrdinalIgnoreCase = 268435456, + StringSort = 536870912, + Ordinal = 1073741824 +} + +// Namespace: System.Globalization +[Serializable] +public class CultureInfo : ICloneable, IFormatProvider // TypeDefIndex: 385 +{ + // Fields + private const int NumOptionalCalendars = 5; // 0x00 + private const int GregorianTypeMask = 16777215; // 0x00 + private const int CalendarTypeBits = 24; // 0x00 + private const int InvariantCultureId = 127; // 0x00 + private static CultureInfo invariant_culture_info; // 0x00 + private static object shared_table_lock; // 0x04 + internal static int BootstrapCultureID; // 0x08 + private bool m_isReadOnly; // 0x08 + private int cultureID; // 0x0C + [NonSerialized] private int parent_lcid; // 0x10 + [NonSerialized] private int specific_lcid; // 0x14 + [NonSerialized] private int datetime_index; // 0x18 + [NonSerialized] private int number_index; // 0x1C + private bool m_useUserOverride; // 0x20 + [NonSerialized] private NumberFormatInfo numInfo; // 0x24 + private DateTimeFormatInfo dateTimeInfo; // 0x28 + private TextInfo textInfo; // 0x2C + private string m_name; // 0x30 + [NonSerialized] private string displayname; // 0x34 + [NonSerialized] private string englishname; // 0x38 + [NonSerialized] private string nativename; // 0x3C + [NonSerialized] private string iso3lang; // 0x40 + [NonSerialized] private string iso2lang; // 0x44 + [NonSerialized] private string icu_name; // 0x48 + [NonSerialized] private string win3lang; // 0x4C + [NonSerialized] private string territory; // 0x50 + private CompareInfo compareInfo; // 0x54 + [NonSerialized] private readonly void * calendar_data; // 0x58 + [NonSerialized] private readonly void * textinfo_data; // 0x5C + [NonSerialized] private Calendar[] optional_calendars; // 0x60 + [NonSerialized] private CultureInfo parent_culture; // 0x64 + private int m_dataItem; // 0x68 + private Calendar calendar; // 0x6C + [NonSerialized] private bool constructed; // 0x70 + [NonSerialized] internal byte[] cached_serialized_form; // 0x74 + private static readonly string MSG_READONLY; // 0x0C + private static Hashtable shared_by_number; // 0x10 + private static Hashtable shared_by_name; // 0x14 + private static Dictionary`2 <>f__switch$map19; // 0x18 + private static Dictionary`2 <>f__switch$map1A; // 0x1C + + // Properties + public static CultureInfo InvariantCulture { get; } // 0x002DAC58 + public static CultureInfo CurrentCulture { get; } // 0x002EF3A0 + public static CultureInfo CurrentUICulture { get; } // 0x002EF43C + internal string Territory { get; } // 0x002EF700 + public virtual int LCID { get; } // 0x002EF708 + public virtual string Name { get; } // 0x002EF710 + public virtual string NativeName { get; } // 0x002EF718 + public virtual Calendar Calendar { get; } // 0x002EF76C + public virtual Calendar[] OptionalCalendars { get; } // 0x002EF7A0 + public virtual CultureInfo Parent { get; } // 0x002EFB20 + public virtual TextInfo TextInfo { get; } // 0x002EFC30 + public virtual string ThreeLetterISOLanguageName { get; } // 0x002EFDA4 + public virtual string ThreeLetterWindowsLanguageName { get; } // 0x002EFDD8 + public virtual string TwoLetterISOLanguageName { get; } // 0x002EFE0C + public bool UseUserOverride { get; } // 0x002EFE40 + internal string IcuName { get; } // 0x002EB69C + public virtual CompareInfo CompareInfo { get; } // 0x002F0764 + public virtual bool IsNeutralCulture { get; } // 0x002F09E0 + public virtual NumberFormatInfo NumberFormat { get; set; } // 0x002F0B4C 0x002F0C98 + public virtual DateTimeFormatInfo DateTimeFormat { get; set; } // 0x002F0DFC 0x002F1318 + public virtual string DisplayName { get; } // 0x002F147C + public virtual string EnglishName { get; } // 0x002F14B0 + public static CultureInfo InstalledUICulture { get; } // 0x002F14E4 + public bool IsReadOnly { get; } // 0x002F17E4 + + // Methods + public void .ctor(int culture); // 0x002EBA68 + public void .ctor(int culture, bool useUserOverride); // 0x002EE74C + private void .ctor(int culture, bool useUserOverride, bool read_only); // 0x002EE768 + public void .ctor(string name); // 0x002EC708 + public void .ctor(string name, bool useUserOverride); // 0x002EEBA0 + private void .ctor(string name, bool useUserOverride, bool read_only); // 0x002EEBBC + private void .ctor(); // 0x002EEFF0 + private static void .cctor(); // 0x002EF010 + public static CultureInfo CreateSpecificCulture(string name); // 0x002EF0D8 + internal static CultureInfo ConstructCurrentCulture(); // 0x002EF4D8 + internal static CultureInfo ConstructCurrentUICulture(); // 0x002EF688 + public void ClearCachedData(); // 0x002EFE48 + public virtual object Clone(); // 0x002EFF14 + public override bool Equals(object value); // 0x002F01B0 + public static CultureInfo[] GetCultures(CultureTypes types); // 0x002F0270 + public override int GetHashCode(); // 0x002F048C + public static CultureInfo ReadOnly(CultureInfo ci); // 0x002F0494 + public override string ToString(); // 0x002F075C + internal static bool IsIDNeutralCulture(int lcid); // 0x002F088C + internal void CheckNeutral(); // 0x002F0A40 + public virtual object GetFormat(Type formatType); // 0x002F17EC + private void Construct(); // 0x002EF74C + private bool ConstructInternalLocaleFromName(string locale); // 0x002EED74 + private bool ConstructInternalLocaleFromLcid(int lcid); // 0x002EEB9C + private static bool ConstructInternalLocaleFromSpecificName(CultureInfo ci, string name); // 0x002EF318 + private static bool ConstructInternalLocaleFromCurrentLocale(CultureInfo ci); // 0x002EF608 + private bool construct_internal_locale_from_lcid(int lcid); // 0x002F190C + private bool construct_internal_locale_from_name(string name); // 0x002F1910 + private static bool construct_internal_locale_from_specific_name(CultureInfo ci, string name); // 0x002F1914 + private static bool construct_internal_locale_from_current_locale(CultureInfo ci); // 0x002F1918 + private static CultureInfo[] internal_get_cultures(bool neutral, bool specific, bool installed); // 0x002F0488 + private void construct_datetime_format(); // 0x002F11EC + private void construct_number_format(); // 0x002F0C94 + private static bool internal_is_lcid_neutral(int lcid, out bool is_neutral); // 0x002F09DC + private void ConstructInvariant(bool read_only); // 0x002EE938 + private TextInfo CreateTextInfo(bool readOnly); // 0x002EFD08 + private static void insert_into_shared_tables(CultureInfo c); // 0x002F1A70 + public static CultureInfo GetCultureInfo(int culture); // 0x002F1574 + public static CultureInfo GetCultureInfo(string name); // 0x002F1C88 + public static CultureInfo GetCultureInfo(string name, string altName); // 0x002F1F38 + public static CultureInfo GetCultureInfoByIetfLanguageTag(string name); // 0x002F2068 + internal static CultureInfo CreateCulture(string name, bool reference); // 0x002F2360 + internal void ConstructCalendars(); // 0x002EF830 +} + +// Namespace: System.Globalization +[Serializable] +public enum CultureTypes // TypeDefIndex: 386 +{ + NeutralCultures = 1, + SpecificCultures = 2, + InstalledWin32Cultures = 4, + AllCultures = 7, + UserCustomCulture = 8, + ReplacementCultures = 16, + WindowsOnlyCultures = 32, + FrameworkCultures = 64 +} + +// Namespace: System.Globalization +internal enum DateTimeFormatFlags // TypeDefIndex: 387 +{ + Unused = 0, + But = 1, + Serialized = 2, + By = 3, + Microsoft = 4 +} + +// Namespace: System.Globalization +[Serializable] +public sealed class DateTimeFormatInfo : ICloneable, IFormatProvider // TypeDefIndex: 388 +{ + // Fields + private const string _RoundtripPattern = "yyyy'-'MM'-'dd'T'HH':'mm':'ss.fffffffK"; // 0x00 + private static readonly string MSG_READONLY; // 0x00 + private static readonly string MSG_ARRAYSIZE_MONTH; // 0x04 + private static readonly string MSG_ARRAYSIZE_DAY; // 0x08 + private static readonly string[] INVARIANT_ABBREVIATED_DAY_NAMES; // 0x0C + private static readonly string[] INVARIANT_DAY_NAMES; // 0x10 + private static readonly string[] INVARIANT_ABBREVIATED_MONTH_NAMES; // 0x14 + private static readonly string[] INVARIANT_MONTH_NAMES; // 0x18 + private static readonly string[] INVARIANT_SHORT_DAY_NAMES; // 0x1C + private static DateTimeFormatInfo theInvariantDateTimeFormatInfo; // 0x20 + private bool m_isReadOnly; // 0x08 + private string amDesignator; // 0x0C + private string pmDesignator; // 0x10 + private string dateSeparator; // 0x14 + private string timeSeparator; // 0x18 + private string shortDatePattern; // 0x1C + private string longDatePattern; // 0x20 + private string shortTimePattern; // 0x24 + private string longTimePattern; // 0x28 + private string monthDayPattern; // 0x2C + private string yearMonthPattern; // 0x30 + private string fullDateTimePattern; // 0x34 + private string _RFC1123Pattern; // 0x38 + private string _SortableDateTimePattern; // 0x3C + private string _UniversalSortableDateTimePattern; // 0x40 + private int firstDayOfWeek; // 0x44 + private Calendar calendar; // 0x48 + private int calendarWeekRule; // 0x4C + private string[] abbreviatedDayNames; // 0x50 + private string[] dayNames; // 0x54 + private string[] monthNames; // 0x58 + private string[] abbreviatedMonthNames; // 0x5C + private string[] allShortDatePatterns; // 0x60 + private string[] allLongDatePatterns; // 0x64 + private string[] allShortTimePatterns; // 0x68 + private string[] allLongTimePatterns; // 0x6C + private string[] monthDayPatterns; // 0x70 + private string[] yearMonthPatterns; // 0x74 + private string[] shortDayNames; // 0x78 + private int nDataItem; // 0x7C + private bool m_useUserOverride; // 0x80 + private bool m_isDefaultCalendar; // 0x81 + private int CultureID; // 0x84 + private bool bUseCalendarInfo; // 0x88 + private string generalShortTimePattern; // 0x8C + private string generalLongTimePattern; // 0x90 + private string[] m_eraNames; // 0x94 + private string[] m_abbrevEraNames; // 0x98 + private string[] m_abbrevEnglishEraNames; // 0x9C + private string[] m_dateWords; // 0xA0 + private int[] optionalCalendars; // 0xA4 + private string[] m_superShortDayNames; // 0xA8 + private string[] genitiveMonthNames; // 0xAC + private string[] m_genitiveAbbreviatedMonthNames; // 0xB0 + private string[] leapYearMonthNames; // 0xB4 + private DateTimeFormatFlags formatFlags; // 0xB8 + private string m_name; // 0xBC + private string[] all_date_time_patterns; // 0xC0 + + // Properties + public bool IsReadOnly { get; } // 0x002F3C34 + public string[] AbbreviatedDayNames { get; set; } // 0x002F4400 0x002F44B8 + internal string[] RawAbbreviatedDayNames { get; set; } // 0x002F46CC 0x002F44BC + public string[] AbbreviatedMonthNames { get; set; } // 0x002F46D4 0x002F478C + internal string[] RawAbbreviatedMonthNames { get; set; } // 0x002F49A0 0x002F4790 + public string[] DayNames { get; set; } // 0x002F49A8 0x002F4A60 + internal string[] RawDayNames { get; set; } // 0x002F4C74 0x002F4A64 + public string[] MonthNames { get; set; } // 0x002F4C7C 0x002F4D34 + internal string[] RawMonthNames { get; set; } // 0x002F4F48 0x002F4D38 + public string AMDesignator { get; set; } // 0x002F4F50 0x002F4F58 + public string PMDesignator { get; set; } // 0x002F5080 0x002F5088 + public string DateSeparator { get; set; } // 0x002F51B0 0x002F51B8 + public string TimeSeparator { get; set; } // 0x002F52E0 0x002F52E8 + public string LongDatePattern { get; set; } // 0x002F5410 0x002F5418 + public string ShortDatePattern { get; set; } // 0x002F5540 0x002F5548 + public string ShortTimePattern { get; set; } // 0x002F5670 0x002F5678 + public string LongTimePattern { get; set; } // 0x002F57A0 0x002F57A8 + public string MonthDayPattern { get; set; } // 0x002F58D0 0x002F58D8 + public string YearMonthPattern { get; set; } // 0x002F5A00 0x002F5A08 + public string FullDateTimePattern { get; set; } // 0x002F5B30 0x002F5BDC + public static DateTimeFormatInfo CurrentInfo { get; } // 0x002F3B70 + public static DateTimeFormatInfo InvariantInfo { get; } // 0x002F191C + public DayOfWeek FirstDayOfWeek { get; set; } // 0x002F623C 0x002F6244 + public Calendar Calendar { get; set; } // 0x002F636C 0x002F11F0 + public CalendarWeekRule CalendarWeekRule { get; set; } // 0x002F6374 0x002F637C + public string RFC1123Pattern { get; } // 0x002F6464 + internal string RoundtripPattern { get; } // 0x002F646C + public string SortableDateTimePattern { get; } // 0x002F64C8 + public string UniversalSortableDateTimePattern { get; } // 0x002F64D0 + public string[] AbbreviatedMonthGenitiveNames { get; set; } // 0x002F751C 0x002F7524 + public string[] MonthGenitiveNames { get; set; } // 0x002F752C 0x002F7534 + public string NativeCalendarName { get; } // 0x002F753C + public string[] ShortestDayNames { get; set; } // 0x002F75C8 0x002F75D0 + + // Methods + internal void .ctor(bool read_only); // 0x002F0FB4 + public void .ctor(); // 0x002F23FC + private static void .cctor(); // 0x002F2404 + public static DateTimeFormatInfo GetInstance(IFormatProvider provider); // 0x002F39F8 + public static DateTimeFormatInfo ReadOnly(DateTimeFormatInfo dtfi); // 0x002F06C0 + public object Clone(); // 0x002F0120 + public object GetFormat(Type formatType); // 0x002F3C3C + public string GetAbbreviatedEraName(int era); // 0x002F3C68 + public string GetAbbreviatedMonthName(int month); // 0x002F3DC8 + public int GetEra(string eraName); // 0x002F3EA0 + public string GetEraName(int era); // 0x002F41C4 + public string GetMonthName(int month); // 0x002F4328 + public string[] GetAllDateTimePatterns(); // 0x002F64D8 + internal string[] GetAllDateTimePatternsInternal(); // 0x002F659C + private void FillAllDateTimePatterns(); // 0x002F65BC + public string[] GetAllDateTimePatterns(char format); // 0x002F7098 + internal string[] GetAllRawDateTimePatterns(char format); // 0x002F6AA0 + public string GetDayName(DayOfWeek dayofweek); // 0x002F7374 + public string GetAbbreviatedDayName(DayOfWeek dayofweek); // 0x002F7448 + private void FillInvariantPatterns(); // 0x002F5D04 + private string[] PopulateCombinedList(string[] dates, string[] times); // 0x002F7160 + public string GetShortestDayName(DayOfWeek dayOfWeek); // 0x002F77B4 + public void SetAllDateTimePatterns(string[] patterns, char format); // 0x002F7888 +} + +// Namespace: System.Globalization +[Serializable] +public enum DateTimeStyles // TypeDefIndex: 389 +{ + None = 0, + AllowLeadingWhite = 1, + AllowTrailingWhite = 2, + AllowInnerWhite = 4, + AllowWhiteSpaces = 7, + NoCurrentDateDefault = 8, + AdjustToUniversal = 16, + AssumeLocal = 32, + AssumeUniversal = 64, + RoundtripKind = 128 +} + +// Namespace: System.Globalization +[Serializable] +public class DaylightTime // TypeDefIndex: 390 +{ + // Fields + private DateTime m_start; // 0x08 + private DateTime m_end; // 0x18 + private TimeSpan m_delta; // 0x28 + + // Properties + public DateTime Start { get; } // 0x00468D8C + public DateTime End { get; } // 0x00468D9C + public TimeSpan Delta { get; } // 0x00468DAC + + // Methods + public void .ctor(DateTime start, DateTime end, TimeSpan delta); // 0x00468D2C +} + +// Namespace: System.Globalization +[Serializable] +public enum DigitShapes // TypeDefIndex: 391 +{ + Context = 0, + None = 1, + NativeNational = 2 +} + +// Namespace: System.Globalization +[Serializable] +public abstract class EastAsianLunisolarCalendar : Calendar // TypeDefIndex: 392 +{ + // Fields + internal readonly CCEastAsianLunisolarEraHandler M_EraHandler; // 0x20 + + // Properties + public override int TwoDigitYearMax { get; set; } // 0x00468DD8 0x00468DE0 + internal virtual int ActualCurrentEra { get; } // 0x00468ED8 + public override CalendarAlgorithmType AlgorithmType { get; } // 0x00469718 + + // Methods + internal void .ctor(CCEastAsianLunisolarEraHandler eraHandler); // 0x00468DB8 + internal void M_CheckDateTime(DateTime time); // 0x00468E84 + internal void M_CheckEra(int era); // 0x00468EE0 + internal int M_CheckYEG(int year, int era); // 0x00468FD8 + internal override void M_CheckYE(int year, int era); // 0x00469024 + internal int M_CheckYMEG(int year, int month, int era); // 0x00469028 + internal int M_CheckYMDEG(int year, int month, int day, int era); // 0x00469100 + public override DateTime AddMonths(DateTime time, int months); // 0x004691CC + public override DateTime AddYears(DateTime time, int years); // 0x0046923C + public override int GetDayOfMonth(DateTime time); // 0x004692AC + public override DayOfWeek GetDayOfWeek(DateTime time); // 0x004692F4 + public override int GetDayOfYear(DateTime time); // 0x00469344 + public override int GetDaysInMonth(int year, int month, int era); // 0x0046938C + public override int GetDaysInYear(int year, int era); // 0x004693BC + public override int GetLeapMonth(int year, int era); // 0x004693E4 + public override int GetMonth(DateTime time); // 0x004693EC + public override int GetMonthsInYear(int year, int era); // 0x00469434 + public override int GetYear(DateTime time); // 0x00469498 + public override bool IsLeapDay(int year, int month, int day, int era); // 0x00469504 + public override bool IsLeapMonth(int year, int month, int era); // 0x00469538 + public override bool IsLeapYear(int year, int era); // 0x00469568 + public override DateTime ToDateTime(int year, int month, int day, int hour, int minute, int second, int millisecond, int era); // 0x00469590 + public override int ToFourDigitYear(int year); // 0x00469624 + public int GetCelestialStem(int sexagenaryYear); // 0x00469720 + public virtual int GetSexagenaryYear(DateTime time); // 0x004697E8 + public int GetTerrestrialBranch(int sexagenaryYear); // 0x00469844 +} + +// Namespace: System.Globalization +[Serializable] +public class GregorianCalendar : Calendar // TypeDefIndex: 393 +{ + // Fields + public const int ADEra = 1; // 0x00 + [NonSerialized] internal GregorianCalendarTypes m_type; // 0x20 + private static Nullable`1 Min; // 0x00 + private static Nullable`1 Max; // 0x18 + + // Properties + public override int[] Eras { get; } // 0x00469AD0 + public override int TwoDigitYearMax { get; set; } // 0x00469B6C 0x00469B74 + public virtual GregorianCalendarTypes CalendarType { get; set; } // 0x00469C18 0x00469C20 + public override DateTime MinSupportedDateTime { get; } // 0x0046A2E4 + public override DateTime MaxSupportedDateTime { get; } // 0x0046A418 + + // Methods + public void .ctor(GregorianCalendarTypes type); // 0x0046990C + public void .ctor(); // 0x00469AC8 + internal void M_CheckEra(int era); // 0x00469C40 + internal override void M_CheckYE(int year, int era); // 0x00469D00 + internal void M_CheckYME(int year, int month, int era); // 0x00469D94 + internal void M_CheckYMDE(int year, int month, int day, int era); // 0x00469E78 + public override DateTime AddMonths(DateTime time, int months); // 0x00469F3C + public override DateTime AddYears(DateTime time, int years); // 0x00469F68 + public override int GetDayOfMonth(DateTime time); // 0x00469F94 + public override DayOfWeek GetDayOfWeek(DateTime time); // 0x00469FCC + public override int GetDayOfYear(DateTime time); // 0x0046A00C + public override int GetDaysInMonth(int year, int month, int era); // 0x0046A044 + public override int GetDaysInYear(int year, int era); // 0x0046A07C + public override int GetEra(DateTime time); // 0x0046A0BC + public override int GetLeapMonth(int year, int era); // 0x0046A0C4 + public override int GetMonth(DateTime time); // 0x0046A0CC + public override int GetMonthsInYear(int year, int era); // 0x0046A104 + public override int GetWeekOfYear(DateTime time, CalendarWeekRule rule, DayOfWeek firstDayOfWeek); // 0x0046A134 + public override int GetYear(DateTime time); // 0x0046A168 + public override bool IsLeapDay(int year, int month, int day, int era); // 0x0046A1A0 + public override bool IsLeapMonth(int year, int month, int era); // 0x0046A1E4 + public override bool IsLeapYear(int year, int era); // 0x0046A208 + public override DateTime ToDateTime(int year, int month, int day, int hour, int minute, int second, int millisecond, int era); // 0x0046A248 + public override int ToFourDigitYear(int year); // 0x0046A2DC +} + +// Namespace: System.Globalization +[Serializable] +public enum GregorianCalendarTypes // TypeDefIndex: 394 +{ + Localized = 1, + USEnglish = 2, + MiddleEastFrench = 9, + Arabic = 10, + TransliteratedEnglish = 11, + TransliteratedFrench = 12 +} + +// Namespace: System.Globalization +[Serializable] +public class HebrewCalendar : Calendar // TypeDefIndex: 395 +{ + // Fields + internal const long M_MinTicks = 499147488000000000; // 0x00 + internal const long M_MaxTicks = 706783967999999999; // 0x00 + internal const int M_MinYear = 5343; // 0x00 + public static readonly int HebrewEra; // 0x00 + private static DateTime Min; // 0x08 + private static DateTime Max; // 0x18 + + // Properties + internal override int M_MaxYear { get; } // 0x0046A7FC + public override int[] Eras { get; } // 0x0046A804 + public override int TwoDigitYearMax { get; set; } // 0x0046A8E0 0x0046A8E8 + public override DateTime MinSupportedDateTime { get; } // 0x0046B96C + public override DateTime MaxSupportedDateTime { get; } // 0x0046BA04 + + // Methods + public void .ctor(); // 0x0046A558 + private static void .cctor(); // 0x0046A6F8 + internal void M_CheckDateTime(DateTime time); // 0x0046A98C + internal void M_CheckEra(int era); // 0x0046AAA4 + internal override void M_CheckYE(int year, int era); // 0x0046ABE4 + internal void M_CheckYME(int year, int month, int era); // 0x0046ACCC + internal void M_CheckYMDE(int year, int month, int day, int era); // 0x0046AE58 + public override DateTime AddMonths(DateTime time, int months); // 0x0046AF1C + public override DateTime AddYears(DateTime time, int years); // 0x0046B160 + public override int GetDayOfMonth(DateTime time); // 0x0046B264 + public override DayOfWeek GetDayOfWeek(DateTime time); // 0x0046B2B4 + public override int GetDayOfYear(DateTime time); // 0x0046B304 + internal int M_CCMonth(int month, int year); // 0x0046B374 + internal int M_Month(int ccmonth, int year); // 0x0046B128 + public override int GetDaysInMonth(int year, int month, int era); // 0x0046B3B8 + public override int GetDaysInYear(int year, int era); // 0x0046B420 + public override int GetEra(DateTime time); // 0x0046B484 + public override int GetLeapMonth(int year, int era); // 0x0046B53C + public override int GetMonth(DateTime time); // 0x0046B574 + public override int GetMonthsInYear(int year, int era); // 0x0046B60C + public override int GetYear(DateTime time); // 0x0046B64C + public override bool IsLeapDay(int year, int month, int day, int era); // 0x0046B69C + public override bool IsLeapMonth(int year, int month, int era); // 0x0046B71C + public override bool IsLeapYear(int year, int era); // 0x0046B770 + public override DateTime ToDateTime(int year, int month, int day, int hour, int minute, int second, int millisecond, int era); // 0x0046B7B0 + public override int ToFourDigitYear(int year); // 0x0046B890 +} + +// Namespace: System.Globalization +[Serializable] +public class HijriCalendar : Calendar // TypeDefIndex: 396 +{ + // Fields + public static readonly int HijriEra; // 0x00 + internal static readonly int M_MinFixed; // 0x04 + internal static readonly int M_MaxFixed; // 0x08 + internal int M_AddHijriDate; // 0x20 + private static DateTime Min; // 0x10 + private static DateTime Max; // 0x20 + + // Properties + public override int[] Eras { get; } // 0x0046BD80 + public int HijriAdjustment { get; set; } // 0x0046BE5C 0x0046BEE4 + public override int TwoDigitYearMax { get; set; } // 0x0046BF6C 0x0046BF74 + internal virtual int AddHijriDate { get; set; } // 0x0046C018 0x0046C020 + public override DateTime MinSupportedDateTime { get; } // 0x0046D5B4 + public override DateTime MaxSupportedDateTime { get; } // 0x0046D64C + + // Methods + public void .ctor(); // 0x0046BA9C + private static void .cctor(); // 0x0046BC3C + internal void M_CheckFixedHijri(string param, int rdHijri); // 0x0046C080 + internal void M_CheckDateTime(DateTime time); // 0x0046C588 + internal int M_FromDateTime(DateTime time); // 0x0046C63C + internal DateTime M_ToDateTime(int rd); // 0x0046C694 + internal DateTime M_ToDateTime(int date, int hour, int minute, int second, int milliseconds); // 0x0046C6D0 + internal void M_CheckEra(int era); // 0x0046C738 + internal override void M_CheckYE(int year, int era); // 0x0046C878 + internal void M_CheckYME(int year, int month, int era); // 0x0046C90C + internal void M_CheckYMDE(int year, int month, int day, int era); // 0x0046CA30 + public override DateTime AddMonths(DateTime time, int months); // 0x0046CB78 + public override DateTime AddYears(DateTime time, int years); // 0x0046CD0C + public override int GetDayOfMonth(DateTime time); // 0x0046CE80 + public override DayOfWeek GetDayOfWeek(DateTime time); // 0x0046CF44 + public override int GetDayOfYear(DateTime time); // 0x0046D008 + public override int GetDaysInMonth(int year, int month, int era); // 0x0046D0E8 + public override int GetDaysInYear(int year, int era); // 0x0046D140 + public override int GetEra(DateTime time); // 0x0046D1A4 + public override int GetLeapMonth(int year, int era); // 0x0046D260 + public override int GetMonth(DateTime time); // 0x0046D268 + public override int GetMonthsInYear(int year, int era); // 0x0046D32C + public override int GetYear(DateTime time); // 0x0046D35C + public override bool IsLeapDay(int year, int month, int day, int era); // 0x0046D420 + public override bool IsLeapMonth(int year, int month, int era); // 0x0046D48C + public override bool IsLeapYear(int year, int era); // 0x0046D4B0 + public override DateTime ToDateTime(int year, int month, int day, int hour, int minute, int second, int millisecond, int era); // 0x0046D4F0 + public override int ToFourDigitYear(int year); // 0x0046D5AC +} + +// Namespace: System.Globalization +public sealed class IdnMapping // TypeDefIndex: 397 +{ + // Fields + private bool allow_unassigned; // 0x08 + private bool use_std3; // 0x09 + private Punycode puny; // 0x0C + + // Properties + public bool AllowUnassigned { get; set; } // 0x0046D7F0 0x0046D7F8 + public bool UseStd3AsciiRules { get; set; } // 0x0046D800 0x0046D808 + + // Methods + public void .ctor(); // 0x0046D6E4 + public override bool Equals(object obj); // 0x0046D810 + public override int GetHashCode(); // 0x0046D8CC + public string GetAscii(string unicode); // 0x0046D8E0 + public string GetAscii(string unicode, int index); // 0x0046DB30 + public string GetAscii(string unicode, int index, int count); // 0x0046D9AC + private string Convert(string input, int index, int count, bool toAscii); // 0x0046DC04 + private string ToAscii(string s, int offset); // 0x0046DEFC + private void VerifyLength(string s, int offset); // 0x0046E9D4 + private string NamePrep(string s, int offset); // 0x0046E4F4 + private void VerifyProhibitedCharacters(string s, int offset); // 0x0046EBA0 + private void VerifyStd3AsciiRules(string s, int offset); // 0x0046E6B4 + public string GetUnicode(string ascii); // 0x0046EDFC + public string GetUnicode(string ascii, int index); // 0x0046F04C + public string GetUnicode(string ascii, int index, int count); // 0x0046EEC8 + private string ToUnicode(string s, int offset); // 0x0046E244 +} + +// Namespace: System.Globalization +internal class Bootstring // TypeDefIndex: 398 +{ + // Fields + private readonly char delimiter; // 0x08 + private readonly int base_num; // 0x0C + private readonly int tmin; // 0x10 + private readonly int tmax; // 0x14 + private readonly int skew; // 0x18 + private readonly int damp; // 0x1C + private readonly int initial_bias; // 0x20 + private readonly int initial_n; // 0x24 + + // Methods + public void .ctor(char delimiter, int baseNum, int tmin, int tmax, int skew, int damp, int initialBias, int initialN); // 0x002E2620 + public string Encode(string s, int offset); // 0x002E2670 + private char EncodeDigit(int d); // 0x002E2AA4 + private int DecodeDigit(char c); // 0x002E2B54 + private int Adapt(int delta, int numPoints, bool firstTime); // 0x002E2ABC + public string Decode(string s, int offset); // 0x002E2B7C +} + +// Namespace: System.Globalization +internal class Punycode : Bootstring // TypeDefIndex: 399 +{ + // Methods + public void .ctor(); // 0x0046D7A0 +} + +// Namespace: System.Globalization +[Serializable] +public class JapaneseCalendar : Calendar // TypeDefIndex: 400 +{ + // Fields + internal static readonly CCGregorianEraHandler M_EraHandler; // 0x00 + private static DateTime JapanMin; // 0x08 + private static DateTime JapanMax; // 0x18 + + // Properties + public override int[] Eras { get; } // 0x0046F7F4 + public override int TwoDigitYearMax { get; set; } // 0x0046F908 0x0046F910 + public override DateTime MinSupportedDateTime { get; } // 0x0047048C + public override DateTime MaxSupportedDateTime { get; } // 0x00470524 + + // Methods + public void .ctor(); // 0x0046F120 + private static void .cctor(); // 0x0046F538 + internal void M_CheckDateTime(DateTime time); // 0x0046F9B4 + internal void M_CheckEra(int era); // 0x0046FA84 + internal int M_CheckYEG(int year, int era); // 0x0046FBA4 + internal override void M_CheckYE(int year, int era); // 0x0046FC68 + internal int M_CheckYMEG(int year, int month, int era); // 0x0046FC6C + internal int M_CheckYMDEG(int year, int month, int day, int era); // 0x0046FD3C + public override DateTime AddMonths(DateTime time, int months); // 0x0046FE04 + public override DateTime AddYears(DateTime time, int years); // 0x0046FE5C + public override int GetDayOfMonth(DateTime time); // 0x0046FEB4 + public override DayOfWeek GetDayOfWeek(DateTime time); // 0x0046FEFC + public override int GetDayOfYear(DateTime time); // 0x0046FF4C + public override int GetDaysInMonth(int year, int month, int era); // 0x0046FF94 + public override int GetDaysInYear(int year, int era); // 0x0046FFC4 + public override int GetEra(DateTime time); // 0x0046FFEC + public override int GetLeapMonth(int year, int era); // 0x004700DC + public override int GetMonth(DateTime time); // 0x004700E4 + public override int GetMonthsInYear(int year, int era); // 0x0047012C + public override int GetWeekOfYear(DateTime time, CalendarWeekRule rule, DayOfWeek firstDayOfWeek); // 0x0047015C + public override int GetYear(DateTime time); // 0x00470190 + public override bool IsLeapDay(int year, int month, int day, int era); // 0x0047027C + public override bool IsLeapMonth(int year, int month, int era); // 0x004702B8 + public override bool IsLeapYear(int year, int era); // 0x004702DC + public override DateTime ToDateTime(int year, int month, int day, int hour, int minute, int second, int millisecond, int era); // 0x00470304 + public override int ToFourDigitYear(int year); // 0x00470398 +} + +// Namespace: System.Globalization +[Serializable] +public class JapaneseLunisolarCalendar : EastAsianLunisolarCalendar // TypeDefIndex: 401 +{ + // Fields + public const int JapaneseEra = 1; // 0x00 + internal static readonly CCEastAsianLunisolarEraHandler era_handler; // 0x00 + private static DateTime JapanMin; // 0x08 + private static DateTime JapanMax; // 0x18 + + // Properties + internal override int ActualCurrentEra { get; } // 0x00470834 + public override int[] Eras { get; } // 0x0047083C + public override DateTime MinSupportedDateTime { get; } // 0x00470A40 + public override DateTime MaxSupportedDateTime { get; } // 0x00470AD8 + + // Methods + public void .ctor(); // 0x004705BC + private static void .cctor(); // 0x0047065C + public override int GetEra(DateTime time); // 0x00470950 +} + +// Namespace: System.Globalization +[Serializable] +public class JulianCalendar : Calendar // TypeDefIndex: 402 +{ + // Fields + public static readonly int JulianEra; // 0x00 + private static DateTime JulianMin; // 0x08 + private static DateTime JulianMax; // 0x18 + + // Properties + public override int[] Eras { get; } // 0x00470E14 + public override int TwoDigitYearMax { get; set; } // 0x00470EF0 0x00470EF8 + public override CalendarAlgorithmType AlgorithmType { get; } // 0x004719D0 + public override DateTime MinSupportedDateTime { get; } // 0x004719D8 + public override DateTime MaxSupportedDateTime { get; } // 0x00471A70 + + // Methods + public void .ctor(); // 0x00470B70 + private static void .cctor(); // 0x00470D10 + internal void M_CheckEra(int era); // 0x00470F9C + internal override void M_CheckYE(int year, int era); // 0x004710DC + internal void M_CheckYME(int year, int month, int era); // 0x00471170 + internal void M_CheckYMDE(int year, int month, int day, int era); // 0x00471254 + public override DateTime AddMonths(DateTime time, int months); // 0x004713A4 + public override DateTime AddYears(DateTime time, int years); // 0x0047149C + public override int GetDayOfMonth(DateTime time); // 0x00471574 + public override DayOfWeek GetDayOfWeek(DateTime time); // 0x004715B4 + public override int GetDayOfYear(DateTime time); // 0x004715F4 + public override int GetDaysInMonth(int year, int month, int era); // 0x00471654 + public override int GetDaysInYear(int year, int era); // 0x004716AC + public override int GetEra(DateTime time); // 0x00471710 + public override int GetLeapMonth(int year, int era); // 0x0047179C + public override int GetMonth(DateTime time); // 0x004717A4 + public override int GetMonthsInYear(int year, int era); // 0x004717E4 + public override int GetYear(DateTime time); // 0x00471814 + public override bool IsLeapDay(int year, int month, int day, int era); // 0x00471854 + public override bool IsLeapMonth(int year, int month, int era); // 0x004718C0 + public override bool IsLeapYear(int year, int era); // 0x004718E4 + public override DateTime ToDateTime(int year, int month, int day, int hour, int minute, int second, int millisecond, int era); // 0x00471924 + public override int ToFourDigitYear(int year); // 0x004719C8 +} + +// Namespace: System.Globalization +[Serializable] +public class KoreanCalendar : Calendar // TypeDefIndex: 403 +{ + // Fields + public const int KoreanEra = 1; // 0x00 + internal static readonly CCGregorianEraHandler M_EraHandler; // 0x00 + private static DateTime KoreanMin; // 0x08 + private static DateTime KoreanMax; // 0x18 + + // Properties + public override int[] Eras { get; } // 0x00471E14 + public override int TwoDigitYearMax { get; set; } // 0x00471F28 0x00471F30 + public override DateTime MinSupportedDateTime { get; } // 0x0047284C + public override DateTime MaxSupportedDateTime { get; } // 0x004728E4 + + // Methods + public void .ctor(); // 0x00471B08 + private static void .cctor(); // 0x00471CA8 + internal void M_CheckEra(int era); // 0x00471FD4 + internal int M_CheckYEG(int year, int era); // 0x004720F4 + internal override void M_CheckYE(int year, int era); // 0x004721B8 + internal int M_CheckYMEG(int year, int month, int era); // 0x004721BC + internal int M_CheckYMDEG(int year, int month, int day, int era); // 0x0047228C + public override DateTime AddMonths(DateTime time, int months); // 0x00472354 + public override DateTime AddYears(DateTime time, int years); // 0x00472380 + public override int GetDayOfMonth(DateTime time); // 0x004723AC + public override DayOfWeek GetDayOfWeek(DateTime time); // 0x004723E4 + public override int GetDayOfYear(DateTime time); // 0x00472424 + public override int GetDaysInMonth(int year, int month, int era); // 0x0047245C + public override int GetDaysInYear(int year, int era); // 0x0047248C + public override int GetEra(DateTime time); // 0x004724B4 + public override int GetLeapMonth(int year, int era); // 0x004725A4 + public override int GetMonth(DateTime time); // 0x004725AC + public override int GetMonthsInYear(int year, int era); // 0x004725E4 + public override int GetWeekOfYear(DateTime time, CalendarWeekRule rule, DayOfWeek firstDayOfWeek); // 0x00472608 + public override int GetYear(DateTime time); // 0x0047263C + public override bool IsLeapDay(int year, int month, int day, int era); // 0x00472728 + public override bool IsLeapMonth(int year, int month, int era); // 0x00472764 + public override bool IsLeapYear(int year, int era); // 0x00472788 + public override DateTime ToDateTime(int year, int month, int day, int hour, int minute, int second, int millisecond, int era); // 0x004727B0 + public override int ToFourDigitYear(int year); // 0x00472844 +} + +// Namespace: System.Globalization +[Serializable] +public class KoreanLunisolarCalendar : EastAsianLunisolarCalendar // TypeDefIndex: 404 +{ + // Fields + public const int GregorianEra = 1; // 0x00 + internal static readonly CCEastAsianLunisolarEraHandler era_handler; // 0x00 + private static DateTime KoreanMin; // 0x08 + private static DateTime KoreanMax; // 0x18 + + // Properties + public override int[] Eras { get; } // 0x00472B9C + public override DateTime MinSupportedDateTime { get; } // 0x00472DA0 + public override DateTime MaxSupportedDateTime { get; } // 0x00472E38 + + // Methods + public void .ctor(); // 0x0047297C + private static void .cctor(); // 0x00472A1C + public override int GetEra(DateTime time); // 0x00472CB0 +} + +// Namespace: System.Globalization +[Serializable] +public sealed class NumberFormatInfo : ICloneable, IFormatProvider // TypeDefIndex: 405 +{ + // Fields + private bool isReadOnly; // 0x08 + private string decimalFormats; // 0x0C + private string currencyFormats; // 0x10 + private string percentFormats; // 0x14 + private string digitPattern; // 0x18 + private string zeroPattern; // 0x1C + private int currencyDecimalDigits; // 0x20 + private string currencyDecimalSeparator; // 0x24 + private string currencyGroupSeparator; // 0x28 + private int[] currencyGroupSizes; // 0x2C + private int currencyNegativePattern; // 0x30 + private int currencyPositivePattern; // 0x34 + private string currencySymbol; // 0x38 + private string nanSymbol; // 0x3C + private string negativeInfinitySymbol; // 0x40 + private string negativeSign; // 0x44 + private int numberDecimalDigits; // 0x48 + private string numberDecimalSeparator; // 0x4C + private string numberGroupSeparator; // 0x50 + private int[] numberGroupSizes; // 0x54 + private int numberNegativePattern; // 0x58 + private int percentDecimalDigits; // 0x5C + private string percentDecimalSeparator; // 0x60 + private string percentGroupSeparator; // 0x64 + private int[] percentGroupSizes; // 0x68 + private int percentNegativePattern; // 0x6C + private int percentPositivePattern; // 0x70 + private string percentSymbol; // 0x74 + private string perMilleSymbol; // 0x78 + private string positiveInfinitySymbol; // 0x7C + private string positiveSign; // 0x80 + private string ansiCurrencySymbol; // 0x84 + private int m_dataItem; // 0x88 + private bool m_useUserOverride; // 0x8C + private bool validForParseAsNumber; // 0x8D + private bool validForParseAsCurrency; // 0x8E + private string[] nativeDigits; // 0x90 + private int digitSubstitution; // 0x94 + private static readonly string[] invariantNativeDigits; // 0x00 + + // Properties + public int CurrencyDecimalDigits { get; set; } // 0x00474DD8 0x00474DE0 + public string CurrencyDecimalSeparator { get; set; } // 0x00474EE0 0x00474EE8 + public string CurrencyGroupSeparator { get; set; } // 0x00474FE8 0x00474FF0 + public int[] CurrencyGroupSizes { get; set; } // 0x004750F0 0x004751A8 + internal int[] RawCurrencyGroupSizes { get; set; } // 0x00475478 0x004751AC + public int CurrencyNegativePattern { get; set; } // 0x00475480 0x00475488 + public int CurrencyPositivePattern { get; set; } // 0x00475588 0x00475590 + public string CurrencySymbol { get; set; } // 0x00475690 0x00475698 + public static NumberFormatInfo CurrentInfo { get; } // 0x00475798 + public static NumberFormatInfo InvariantInfo { get; } // 0x0047587C + public bool IsReadOnly { get; } // 0x00475A28 + public string NaNSymbol { get; set; } // 0x00475A30 0x00475A38 + public string NegativeInfinitySymbol { get; set; } // 0x00475B38 0x00475B40 + public string NegativeSign { get; set; } // 0x00475C40 0x00475C48 + public int NumberDecimalDigits { get; set; } // 0x00475D48 0x00475D50 + public string NumberDecimalSeparator { get; set; } // 0x00475E50 0x00475E58 + public string NumberGroupSeparator { get; set; } // 0x00475F58 0x00475F60 + public int[] NumberGroupSizes { get; set; } // 0x00476060 0x00476118 + internal int[] RawNumberGroupSizes { get; set; } // 0x004763E8 0x0047611C + public int NumberNegativePattern { get; set; } // 0x004763F0 0x00475928 + public int PercentDecimalDigits { get; set; } // 0x004763F8 0x00476400 + public string PercentDecimalSeparator { get; set; } // 0x00476500 0x00476508 + public string PercentGroupSeparator { get; set; } // 0x00476608 0x00476610 + public int[] PercentGroupSizes { get; set; } // 0x00476710 0x004767C8 + internal int[] RawPercentGroupSizes { get; set; } // 0x00476B40 0x004767CC + public int PercentNegativePattern { get; set; } // 0x00476B48 0x00476B50 + public int PercentPositivePattern { get; set; } // 0x00476C50 0x00476C58 + public string PercentSymbol { get; set; } // 0x00476D58 0x00476D60 + public string PerMilleSymbol { get; set; } // 0x00476E60 0x00476E68 + public string PositiveInfinitySymbol { get; set; } // 0x00476F68 0x00476F70 + public string PositiveSign { get; set; } // 0x00477070 0x00477078 + + // Methods + internal void .ctor(int lcid, bool read_only); // 0x00472ED0 + internal void .ctor(bool read_only); // 0x004731F4 + public void .ctor(); // 0x00473200 + private static void .cctor(); // 0x0047320C + private void InitPatterns(); // 0x004736D0 + public object GetFormat(Type formatType); // 0x00477178 + public object Clone(); // 0x00477220 + public static NumberFormatInfo ReadOnly(NumberFormatInfo nfi); // 0x004772B0 + public static NumberFormatInfo GetInstance(IFormatProvider formatProvider); // 0x0047734C +} + +// Namespace: System.Globalization +[Serializable] +public enum NumberStyles // TypeDefIndex: 406 +{ + None = 0, + AllowLeadingWhite = 1, + AllowTrailingWhite = 2, + AllowLeadingSign = 4, + Integer = 7, + AllowTrailingSign = 8, + AllowParentheses = 16, + AllowDecimalPoint = 32, + AllowThousands = 64, + Number = 111, + AllowExponent = 128, + Float = 167, + AllowCurrencySymbol = 256, + Currency = 383, + Any = 511, + AllowHexSpecifier = 512, + HexNumber = 515 +} + +// Namespace: System.Globalization +[Serializable] +public class PersianCalendar : Calendar // TypeDefIndex: 407 +{ + // Fields + internal const long M_MinTicks = 196036416000000000; // 0x00 + internal const int M_MinYear = 1; // 0x00 + internal const int epoch = 226895; // 0x00 + public static readonly int PersianEra; // 0x00 + private static DateTime PersianMin; // 0x08 + private static DateTime PersianMax; // 0x18 + + // Properties + public override int[] Eras { get; } // 0x00477768 + public override int TwoDigitYearMax { get; set; } // 0x00477844 0x0047784C + public override CalendarAlgorithmType AlgorithmType { get; } // 0x00478AA4 + public override DateTime MinSupportedDateTime { get; } // 0x00478AAC + public override DateTime MaxSupportedDateTime { get; } // 0x00478B44 + + // Methods + public void .ctor(); // 0x004774C4 + private static void .cctor(); // 0x00477664 + internal void M_CheckDateTime(DateTime time); // 0x004778F0 + internal void M_CheckEra(int era); // 0x004779E0 + internal override void M_CheckYE(int year, int era); // 0x00477B20 + internal void M_CheckYME(int year, int month, int era); // 0x00477C04 + internal void M_CheckYMDE(int year, int month, int day, int era); // 0x00477D64 + internal int fixed_from_dmy(int day, int month, int year); // 0x00477EB8 + internal int year_from_fixed(int date); // 0x00477F08 + internal void my_from_fixed(out int month, out int year, int date); // 0x00477F34 + internal void dmy_from_fixed(out int day, out int month, out int year, int date); // 0x00477FD0 + internal bool is_leap_year(int year); // 0x004780C4 + public override DateTime AddMonths(DateTime time, int months); // 0x004780FC + public override DateTime AddYears(DateTime time, int years); // 0x00478258 + public override int GetDayOfMonth(DateTime time); // 0x00478394 + public override DayOfWeek GetDayOfWeek(DateTime time); // 0x00478404 + public override int GetDayOfYear(DateTime time); // 0x00478454 + public override int GetDaysInMonth(int year, int month, int era); // 0x004784F4 + public override int GetDaysInYear(int year, int era); // 0x0047856C + public override int GetEra(DateTime time); // 0x004785D4 + public override int GetLeapMonth(int year, int era); // 0x0047868C + public override int GetMonth(DateTime time); // 0x00478694 + public override int GetMonthsInYear(int year, int era); // 0x00478764 + public override int GetYear(DateTime time); // 0x00478794 + public override bool IsLeapDay(int year, int month, int day, int era); // 0x00478804 + public override bool IsLeapMonth(int year, int month, int era); // 0x00478888 + public override bool IsLeapYear(int year, int era); // 0x004788AC + public override DateTime ToDateTime(int year, int month, int day, int hour, int minute, int second, int millisecond, int era); // 0x00478914 + public override int ToFourDigitYear(int year); // 0x004789F0 +} + +// Namespace: System.Globalization +[Serializable] +public class RegionInfo // TypeDefIndex: 408 +{ + // Fields + private static RegionInfo currentRegion; // 0x00 + private int lcid; // 0x08 + private int regionId; // 0x0C + private string iso2Name; // 0x10 + private string iso3Name; // 0x14 + private string win3Name; // 0x18 + private string englishName; // 0x1C + private string currencySymbol; // 0x20 + private string isoCurrencySymbol; // 0x24 + private string currencyEnglishName; // 0x28 + private static Dictionary`2 <>f__switch$map1B; // 0x04 + + // Properties + public static RegionInfo CurrentRegion { get; } // 0x00479038 + public virtual string CurrencyEnglishName { get; } // 0x004791A0 + public virtual string CurrencySymbol { get; } // 0x004791A8 + public virtual string DisplayName { get; } // 0x004791B0 + public virtual string EnglishName { get; } // 0x004791B8 + public virtual int GeoId { get; } // 0x004791C0 + public virtual bool IsMetric { get; } // 0x004791C8 + public virtual string ISOCurrencySymbol { get; } // 0x0047938C + public virtual string NativeName { get; } // 0x00479394 + public virtual string CurrencyNativeName { get; } // 0x004793A4 + public virtual string Name { get; } // 0x0047942C + public virtual string ThreeLetterISORegionName { get; } // 0x00479434 + public virtual string ThreeLetterWindowsRegionName { get; } // 0x0047943C + public virtual string TwoLetterISORegionName { get; } // 0x00479444 + + // Methods + public void .ctor(int culture); // 0x00478BDC + public void .ctor(string name); // 0x00478E74 + private bool GetByTerritory(CultureInfo ci); // 0x00478D50 + private bool construct_internal_region_from_name(string name); // 0x00479034 + public override bool Equals(object value); // 0x0047944C + public override int GetHashCode(); // 0x004794F4 + public override string ToString(); // 0x00479508 +} + +// Namespace: System.Globalization +[Serializable] +public class StringInfo // TypeDefIndex: 409 +{ + // Fields + private string s; // 0x08 + private int length; // 0x0C + + // Properties + public int LengthInTextElements { get; } // 0x00479EDC + public string String { get; set; } // 0x0047A198 0x00479D1C + + // Methods + public void .ctor(); // 0x00479CEC + public void .ctor(string value); // 0x00479CF4 + public override bool Equals(object value); // 0x00479DD4 + public override int GetHashCode(); // 0x00479EB0 + public string SubstringByTextElements(int startingTextElement); // 0x0047A1A0 + public string SubstringByTextElements(int startingTextElement, int lengthInTextElements); // 0x0047A30C + public static string GetNextTextElement(string str); // 0x0047A568 + public static string GetNextTextElement(string str, int index); // 0x0047A628 + private static int GetNextTextElementLength(string str, int index); // 0x00479F44 + public static TextElementEnumerator GetTextElementEnumerator(string str); // 0x0047A690 + public static TextElementEnumerator GetTextElementEnumerator(string str, int index); // 0x0047A7C4 + public static int[] ParseCombiningCharacters(string str); // 0x0047A8F0 +} + +// Namespace: System.Globalization +[Serializable] +public class TaiwanCalendar : Calendar // TypeDefIndex: 410 +{ + // Fields + internal static readonly CCGregorianEraHandler M_EraHandler; // 0x00 + private static DateTime TaiwanMin; // 0x08 + private static DateTime TaiwanMax; // 0x18 + + // Properties + public override int[] Eras { get; } // 0x0047AF74 + public override int TwoDigitYearMax { get; set; } // 0x0047B088 0x0047B090 + public override DateTime MinSupportedDateTime { get; } // 0x0047BC00 + public override DateTime MaxSupportedDateTime { get; } // 0x0047BC98 + + // Methods + public void .ctor(); // 0x0047AC7C + private static void .cctor(); // 0x0047AE0C + internal void M_CheckDateTime(DateTime time); // 0x0047B134 + internal void M_CheckEra(int era); // 0x0047B204 + internal int M_CheckYEG(int year, int era); // 0x0047B324 + internal override void M_CheckYE(int year, int era); // 0x0047B3E8 + internal int M_CheckYMEG(int year, int month, int era); // 0x0047B3EC + internal int M_CheckYMDEG(int year, int month, int day, int era); // 0x0047B4BC + public override DateTime AddMonths(DateTime time, int months); // 0x0047B584 + public override DateTime AddYears(DateTime time, int years); // 0x0047B5DC + public override int GetDayOfMonth(DateTime time); // 0x0047B634 + public override DayOfWeek GetDayOfWeek(DateTime time); // 0x0047B67C + public override int GetDayOfYear(DateTime time); // 0x0047B6CC + public override int GetDaysInMonth(int year, int month, int era); // 0x0047B714 + public override int GetDaysInYear(int year, int era); // 0x0047B744 + public override int GetEra(DateTime time); // 0x0047B76C + public override int GetLeapMonth(int year, int era); // 0x0047B85C + public override int GetMonth(DateTime time); // 0x0047B864 + public override int GetMonthsInYear(int year, int era); // 0x0047B8AC + public override int GetWeekOfYear(DateTime time, CalendarWeekRule rule, DayOfWeek firstDayOfWeek); // 0x0047B8D0 + public override int GetYear(DateTime time); // 0x0047B904 + public override bool IsLeapDay(int year, int month, int day, int era); // 0x0047B9F0 + public override bool IsLeapMonth(int year, int month, int era); // 0x0047BA2C + public override bool IsLeapYear(int year, int era); // 0x0047BA50 + public override DateTime ToDateTime(int year, int month, int day, int hour, int minute, int second, int millisecond, int era); // 0x0047BA78 + public override int ToFourDigitYear(int year); // 0x0047BB0C +} + +// Namespace: System.Globalization +[Serializable] +public class TaiwanLunisolarCalendar : EastAsianLunisolarCalendar // TypeDefIndex: 411 +{ + // Fields + private const int TaiwanEra = 1; // 0x00 + internal static readonly CCEastAsianLunisolarEraHandler era_handler; // 0x00 + private static DateTime TaiwanMin; // 0x08 + private static DateTime TaiwanMax; // 0x18 + + // Properties + public override int[] Eras { get; } // 0x0047BF50 + public override DateTime MinSupportedDateTime { get; } // 0x0047C154 + public override DateTime MaxSupportedDateTime { get; } // 0x0047C1EC + + // Methods + public void .ctor(); // 0x0047BD30 + private static void .cctor(); // 0x0047BDD0 + public override int GetEra(DateTime time); // 0x0047C064 +} + +// Namespace: System.Globalization +[Serializable] +public class TextElementEnumerator : IEnumerator // TypeDefIndex: 412 +{ + // Fields + private int index; // 0x08 + private int elementindex; // 0x0C + private int startpos; // 0x10 + private string str; // 0x14 + private string element; // 0x18 + + // Properties + public object Current { get; } // 0x0047C284 + public int ElementIndex { get; } // 0x0047AB58 + + // Methods + internal void .ctor(string str, int startpos); // 0x0047A76C + public string GetTextElement(); // 0x0047C31C + public bool MoveNext(); // 0x0047ABFC + public void Reset(); // 0x0047AB44 +} + +// Namespace: System.Globalization +[Serializable] +public class TextInfo : ICloneable, IDeserializationCallback // TypeDefIndex: 413 +{ + // Fields + private string m_listSeparator; // 0x08 + private bool m_isReadOnly; // 0x0C + private string customCultureName; // 0x10 + [NonSerialized] private int m_nDataItem; // 0x14 + private bool m_useUserOverride; // 0x18 + private int m_win32LangID; // 0x1C + [NonSerialized] private readonly CultureInfo ci; // 0x20 + [NonSerialized] private readonly bool handleDotI; // 0x24 + [NonSerialized] private readonly Data data; // 0x28 + + // Properties + public virtual int ANSICodePage { get; } // 0x0047C66C + public virtual int EBCDICCodePage { get; } // 0x0047C674 + public int LCID { get; } // 0x0047C67C + public virtual string ListSeparator { get; set; } // 0x0047C684 0x0047C6C8 + public virtual int MacCodePage { get; } // 0x0047C6D0 + public virtual int OEMCodePage { get; } // 0x0047C6D8 + public string CultureName { get; } // 0x0047C620 + public bool IsReadOnly { get; } // 0x0047C6E0 + public bool IsRightToLeft { get; } // 0x0047C6E8 + + // Methods + internal void .ctor(CultureInfo ci, int lcid, void * data, bool read_only); // 0x0047C3B4 + private void .ctor(TextInfo textInfo); // 0x0047C500 + private void System.Runtime.Serialization.IDeserializationCallback.OnDeserialization(object sender); // 0x0047C668 + public override bool Equals(object obj); // 0x0047C854 + public override int GetHashCode(); // 0x0047C924 + public override string ToString(); // 0x0047C92C + public string ToTitleCase(string str); // 0x0047C9EC + public virtual char ToLower(char c); // 0x0047CF6C + public virtual char ToUpper(char c); // 0x0047D144 + private char ToTitleCase(char c); // 0x0047CEC4 + public virtual string ToLower(string str); // 0x0047D370 + public virtual string ToUpper(string str); // 0x0047D504 + public static TextInfo ReadOnly(TextInfo textInfo); // 0x0047D698 + public virtual object Clone(); // 0x0047D780 +} + +// Namespace: +private struct Data // TypeDefIndex: 414 +{ + // Fields + public int ansi; // 0x08 + public int ebcdic; // 0x0C + public int mac; // 0x10 + public int oem; // 0x14 + public byte list_sep; // 0x18 + +} + +// Namespace: System.Globalization +[Serializable] +public class ThaiBuddhistCalendar : Calendar // TypeDefIndex: 415 +{ + // Fields + public const int ThaiBuddhistEra = 1; // 0x00 + internal static readonly CCGregorianEraHandler M_EraHandler; // 0x00 + private static DateTime ThaiMin; // 0x08 + private static DateTime ThaiMax; // 0x18 + + // Properties + public override int[] Eras { get; } // 0x0047DAFC + public override int TwoDigitYearMax { get; set; } // 0x0047DC10 0x0047DC18 + public override DateTime MinSupportedDateTime { get; } // 0x0047E540 + public override DateTime MaxSupportedDateTime { get; } // 0x0047E5D8 + + // Methods + public void .ctor(); // 0x0047D7F0 + private static void .cctor(); // 0x0047D990 + internal void M_CheckEra(int era); // 0x0047DCBC + internal int M_CheckYEG(int year, int era); // 0x0047DDDC + internal override void M_CheckYE(int year, int era); // 0x0047DEA0 + internal int M_CheckYMEG(int year, int month, int era); // 0x0047DEA4 + internal int M_CheckYMDEG(int year, int month, int day, int era); // 0x0047DF74 + public override DateTime AddMonths(DateTime time, int months); // 0x0047E03C + public override DateTime AddYears(DateTime time, int years); // 0x0047E068 + public override int GetDayOfMonth(DateTime time); // 0x0047E094 + public override DayOfWeek GetDayOfWeek(DateTime time); // 0x0047E0CC + public override int GetDayOfYear(DateTime time); // 0x0047E10C + public override int GetDaysInMonth(int year, int month, int era); // 0x0047E144 + public override int GetDaysInYear(int year, int era); // 0x0047E174 + public override int GetEra(DateTime time); // 0x0047E19C + public override int GetLeapMonth(int year, int era); // 0x0047E28C + public override int GetMonth(DateTime time); // 0x0047E294 + public override int GetMonthsInYear(int year, int era); // 0x0047E2CC + public override int GetWeekOfYear(DateTime time, CalendarWeekRule rule, DayOfWeek firstDayOfWeek); // 0x0047E2FC + public override int GetYear(DateTime time); // 0x0047E330 + public override bool IsLeapDay(int year, int month, int day, int era); // 0x0047E41C + public override bool IsLeapMonth(int year, int month, int era); // 0x0047E458 + public override bool IsLeapYear(int year, int era); // 0x0047E47C + public override DateTime ToDateTime(int year, int month, int day, int hour, int minute, int second, int millisecond, int era); // 0x0047E4A4 + public override int ToFourDigitYear(int year); // 0x0047E538 +} + +// Namespace: System.Globalization +[Serializable] +public class UmAlQuraCalendar : Calendar // TypeDefIndex: 416 +{ + // Fields + public const int UmAlQuraEra = 1; // 0x00 + internal static readonly int M_MinFixed; // 0x00 + internal static readonly int M_MaxFixed; // 0x04 + internal int M_AddHijriDate; // 0x20 + private static DateTime Min; // 0x08 + private static DateTime Max; // 0x18 + + // Properties + public override int[] Eras { get; } // 0x0047E944 + public override int TwoDigitYearMax { get; set; } // 0x0047E9E0 0x0047E9E8 + internal virtual int AddHijriDate { get; set; } // 0x0047EA8C 0x0047EA94 + public override DateTime MinSupportedDateTime { get; } // 0x0047FED4 + public override DateTime MaxSupportedDateTime { get; } // 0x0047FF6C + + // Methods + public void .ctor(); // 0x0047E670 + private static void .cctor(); // 0x0047E810 + internal void M_CheckFixedHijri(string param, int rdHijri); // 0x0047EAF4 + internal void M_CheckDateTime(DateTime time); // 0x0047EFFC + internal int M_FromDateTime(DateTime time); // 0x0047F0B0 + internal DateTime M_ToDateTime(int rd); // 0x0047F108 + internal DateTime M_ToDateTime(int date, int hour, int minute, int second, int milliseconds); // 0x0047F144 + internal void M_CheckEra(int era); // 0x0047F1AC + internal override void M_CheckYE(int year, int era); // 0x0047F26C + internal void M_CheckYME(int year, int month, int era); // 0x0047F300 + internal void M_CheckYMDE(int year, int month, int day, int era); // 0x0047F424 + public override DateTime AddMonths(DateTime time, int months); // 0x0047F52C + public override DateTime AddYears(DateTime time, int years); // 0x0047F6C0 + public override int GetDayOfMonth(DateTime time); // 0x0047F834 + public override DayOfWeek GetDayOfWeek(DateTime time); // 0x0047F8F8 + public override int GetDayOfYear(DateTime time); // 0x0047F9BC + public override int GetDaysInMonth(int year, int month, int era); // 0x0047FA9C + public override int GetDaysInYear(int year, int era); // 0x0047FAF4 + public override int GetEra(DateTime time); // 0x0047FB58 + public override int GetLeapMonth(int year, int era); // 0x0047FB80 + public override int GetMonth(DateTime time); // 0x0047FB88 + public override int GetMonthsInYear(int year, int era); // 0x0047FC4C + public override int GetYear(DateTime time); // 0x0047FC7C + public override bool IsLeapDay(int year, int month, int day, int era); // 0x0047FD40 + public override bool IsLeapMonth(int year, int month, int era); // 0x0047FDAC + public override bool IsLeapYear(int year, int era); // 0x0047FDD0 + public override DateTime ToDateTime(int year, int month, int day, int hour, int minute, int second, int millisecond, int era); // 0x0047FE10 + public override int ToFourDigitYear(int year); // 0x0047FECC +} + +// Namespace: System.Globalization +[Serializable] +public enum UnicodeCategory // TypeDefIndex: 417 +{ + UppercaseLetter = 0, + LowercaseLetter = 1, + TitlecaseLetter = 2, + ModifierLetter = 3, + OtherLetter = 4, + NonSpacingMark = 5, + SpacingCombiningMark = 6, + EnclosingMark = 7, + DecimalDigitNumber = 8, + LetterNumber = 9, + OtherNumber = 10, + SpaceSeparator = 11, + LineSeparator = 12, + ParagraphSeparator = 13, + Control = 14, + Format = 15, + Surrogate = 16, + PrivateUse = 17, + ConnectorPunctuation = 18, + DashPunctuation = 19, + OpenPunctuation = 20, + ClosePunctuation = 21, + InitialQuotePunctuation = 22, + FinalQuotePunctuation = 23, + OtherPunctuation = 24, + MathSymbol = 25, + CurrencySymbol = 26, + ModifierSymbol = 27, + OtherSymbol = 28, + OtherNotAssigned = 29 +} + +// Namespace: System.IO.IsolatedStorage +public interface INormalizeForIsolatedStorage // TypeDefIndex: 418 +{ + // Methods + object Normalize(); +} + +// Namespace: System.IO.IsolatedStorage +public abstract class IsolatedStorage : MarshalByRefObject // TypeDefIndex: 419 +{ + // Fields + internal IsolatedStorageScope storage_scope; // 0x0C + internal object _assemblyIdentity; // 0x10 + internal object _domainIdentity; // 0x14 + internal object _applicationIdentity; // 0x18 + + // Properties + public object ApplicationIdentity { get; } // 0x0049D788 + public object AssemblyIdentity { get; } // 0x0049D8EC + public virtual ulong CurrentSize { get; } // 0x0049DA00 + public object DomainIdentity { get; } // 0x0049DAA8 + public virtual ulong MaximumSize { get; } // 0x0049DBBC + public IsolatedStorageScope Scope { get; } // 0x0049DC64 + protected virtual char SeparatorExternal { get; } // 0x0049DC6C + protected virtual char SeparatorInternal { get; } // 0x0049DCF8 + + // Methods + protected void .ctor(); // 0x0049D780 + protected abstract IsolatedStoragePermission GetPermission(PermissionSet ps); + protected void InitStore(IsolatedStorageScope scope, Type domainEvidenceType, Type assemblyEvidenceType); // 0x0049DD00 + protected void InitStore(IsolatedStorageScope scope, Type appEvidenceType); // 0x0049DE54 + public abstract void Remove(); +} + +// Namespace: System.IO.IsolatedStorage +[Serializable] +public class IsolatedStorageException : Exception // TypeDefIndex: 420 +{ + // Methods + public void .ctor(); // 0x0049DF30 + public void .ctor(string message); // 0x00497DE4 + public void .ctor(string message, Exception inner); // 0x0049DFA4 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x0049DFAC +} + +// Namespace: System.IO.IsolatedStorage +public sealed class IsolatedStorageFile : IsolatedStorage, IDisposable // TypeDefIndex: 421 +{ + // Fields + private bool _resolved; // 0x1C + private ulong _maxSize; // 0x20 + private Evidence _fullEvidences; // 0x28 + private static Mutex mutex; // 0x00 + private DirectoryInfo directory; // 0x2C + + // Properties + public override ulong CurrentSize { get; } // 0x004A09FC + public override ulong MaximumSize { get; } // 0x004A0A80 + internal string Root { get; } // 0x004A0E28 + + // Methods + private void .ctor(IsolatedStorageScope scope); // 0x0049DFCC + internal void .ctor(IsolatedStorageScope scope, string location); // 0x0049DFEC + private static void .cctor(); // 0x0049E0F8 + public static IEnumerator GetEnumerator(IsolatedStorageScope scope); // 0x0049E178 + public static IsolatedStorageFile GetStore(IsolatedStorageScope scope, Evidence domainEvidence, Type domainEvidenceType, Evidence assemblyEvidence, Type assemblyEvidenceType); // 0x0049E6E4 + public static IsolatedStorageFile GetStore(IsolatedStorageScope scope, object domainIdentity, object assemblyIdentity); // 0x0049F4D4 + public static IsolatedStorageFile GetStore(IsolatedStorageScope scope, Type domainEvidenceType, Type assemblyEvidenceType); // 0x0049F6D0 + public static IsolatedStorageFile GetStore(IsolatedStorageScope scope, object applicationIdentity); // 0x0049F98C + public static IsolatedStorageFile GetStore(IsolatedStorageScope scope, Type applicationEvidenceType); // 0x0049FAE0 + public static IsolatedStorageFile GetMachineStoreForApplication(); // 0x0049FC08 + public static IsolatedStorageFile GetMachineStoreForAssembly(); // 0x0049FCF8 + public static IsolatedStorageFile GetMachineStoreForDomain(); // 0x0049FDEC + public static IsolatedStorageFile GetUserStoreForApplication(); // 0x0049FF14 + public static IsolatedStorageFile GetUserStoreForAssembly(); // 0x004A0004 + public static IsolatedStorageFile GetUserStoreForDomain(); // 0x004A00F8 + public static void Remove(IsolatedStorageScope scope); // 0x004A0220 + internal static string GetIsolatedStorageRoot(IsolatedStorageScope scope); // 0x0049E4B0 + private static void Demand(IsolatedStorageScope scope); // 0x0049E2D8 + private static IsolatedStorageContainment ScopeToContainment(IsolatedStorageScope scope); // 0x004A02AC + internal static ulong GetDirectorySize(DirectoryInfo di); // 0x004A0360 + protected override void Finalize(); // 0x004A04E8 + private void PostInit(); // 0x0049F0C4 + public void Close(); // 0x004A0E5C + public void CreateDirectory(string dir); // 0x004A0E60 + public void DeleteDirectory(string dir); // 0x004A1190 + public void DeleteFile(string file); // 0x004A1354 + public void Dispose(); // 0x004A140C + public string[] GetDirectoryNames(string searchPattern); // 0x004A1414 + private string[] GetNames(FileSystemInfo[] afsi); // 0x004A16E4 + public string[] GetFileNames(string searchPattern); // 0x004A182C + public override void Remove(); // 0x004A1AFC + protected override IsolatedStoragePermission GetPermission(PermissionSet ps); // 0x004A0D18 + private string GetNameFromIdentity(object identity); // 0x004A04F0 + private static object GetTypeFromEvidence(Evidence e, Type t); // 0x0049EBC4 + internal static object GetAssemblyIdentityFromEvidence(Evidence e); // 0x0049EED8 + internal static object GetDomainIdentityFromEvidence(Evidence e); // 0x0049EA68 + private void SaveIdentities(string root); // 0x004A0670 +} + +// Namespace: +[Serializable] +private struct Identities // TypeDefIndex: 422 +{ + // Fields + public object Application; // 0x08 + public object Assembly; // 0x0C + public object Domain; // 0x10 + + // Methods + public void .ctor(object application, object assembly, object domain); // 0x000A8794 +} + +// Namespace: System.IO.IsolatedStorage +internal class IsolatedStorageFileEnumerator : IEnumerator // TypeDefIndex: 423 +{ + // Fields + private IsolatedStorageScope _scope; // 0x08 + private string[] _storages; // 0x0C + private int _pos; // 0x10 + + // Properties + public object Current { get; } // 0x004A1B34 + + // Methods + public void .ctor(IsolatedStorageScope scope, string root); // 0x0049E644 + public bool MoveNext(); // 0x004A1BF4 + public void Reset(); // 0x004A1C24 +} + +// Namespace: System.IO.IsolatedStorage +public class IsolatedStorageFileStream : FileStream // TypeDefIndex: 424 +{ + // Properties + public override bool CanRead { get; } // 0x004A281C + public override bool CanSeek { get; } // 0x004A2834 + public override bool CanWrite { get; } // 0x004A283C + public override SafeFileHandle SafeFileHandle { get; } // 0x004A2854 + public override IntPtr Handle { get; } // 0x004A28FC + public override bool IsAsync { get; } // 0x004A29A4 + public override long Length { get; } // 0x004A29AC + public override long Position { get; set; } // 0x004A29B0 0x004A29B4 + + // Methods + public void .ctor(string path, FileMode mode); // 0x004A1C30 + public void .ctor(string path, FileMode mode, FileAccess access); // 0x004A1D00 + public void .ctor(string path, FileMode mode, FileAccess access, FileShare share); // 0x004A1D7C + public void .ctor(string path, FileMode mode, FileAccess access, FileShare share, int bufferSize); // 0x004A1DD0 + public void .ctor(string path, FileMode mode, FileAccess access, FileShare share, int bufferSize, IsolatedStorageFile isf); // 0x004A1CA4 + public void .ctor(string path, FileMode mode, FileAccess access, FileShare share, IsolatedStorageFile isf); // 0x004A246C + public void .ctor(string path, FileMode mode, FileAccess access, IsolatedStorageFile isf); // 0x004A24BC + public void .ctor(string path, FileMode mode, IsolatedStorageFile isf); // 0x004A253C + private static string CreateIsolatedPath(IsolatedStorageFile isf, string path, FileMode mode); // 0x004A1E24 + public override IAsyncResult BeginRead(byte[] buffer, int offset, int numBytes, AsyncCallback userCallback, object stateObject); // 0x004A29CC + public override IAsyncResult BeginWrite(byte[] buffer, int offset, int numBytes, AsyncCallback userCallback, object stateObject); // 0x004A29F0 + public override int EndRead(IAsyncResult asyncResult); // 0x004A2A14 + public override void EndWrite(IAsyncResult asyncResult); // 0x004A2A18 + public override void Flush(); // 0x004A2A1C + public override int Read(byte[] buffer, int offset, int count); // 0x004A2A20 + public override int ReadByte(); // 0x004A2A38 + public override long Seek(long offset, SeekOrigin origin); // 0x004A2A3C + public override void SetLength(long value); // 0x004A2A5C + public override void Write(byte[] buffer, int offset, int count); // 0x004A2A74 + public override void WriteByte(byte value); // 0x004A2A8C + protected override void Dispose(bool disposing); // 0x004A2A90 +} + +// Namespace: System.IO.IsolatedStorage +[Serializable] +public enum IsolatedStorageScope // TypeDefIndex: 425 +{ + None = 0, + User = 1, + Domain = 2, + Assembly = 4, + Roaming = 8, + Machine = 16, + Application = 32 +} + +// Namespace: System.IO +public class BinaryReader : IDisposable // TypeDefIndex: 426 +{ + // Fields + private const int MaxBufferSize = 128; // 0x00 + private Stream m_stream; // 0x08 + private Encoding m_encoding; // 0x0C + private byte[] m_buffer; // 0x10 + private Decoder decoder; // 0x14 + private char[] charBuffer; // 0x18 + private bool m_disposed; // 0x1C + + // Properties + public virtual Stream BaseStream { get; } // 0x00482E10 + + // Methods + public void .ctor(Stream input); // 0x00482BF0 + public void .ctor(Stream input, Encoding encoding); // 0x00482C84 + private void System.IDisposable.Dispose(); // 0x00482DFC + public virtual void Close(); // 0x00482E18 + protected virtual void Dispose(bool disposing); // 0x00482E48 + protected virtual void FillBuffer(int numBytes); // 0x00482E98 + public virtual int PeekChar(); // 0x00483118 + public virtual int Read(); // 0x0048347C + public virtual int Read(byte[] buffer, int index, int count); // 0x00483560 + public virtual int Read(char[] buffer, int index, int count); // 0x004837DC + private int ReadCharBytes(char[] buffer, int index, int count, out int bytes_read); // 0x00483330 + protected int Read7BitEncodedInt(); // 0x00483A5C + public virtual bool ReadBoolean(); // 0x00483B4C + public virtual byte ReadByte(); // 0x00483B70 + public virtual byte[] ReadBytes(int count); // 0x00483CC8 + public virtual char ReadChar(); // 0x00483EF0 + public virtual char[] ReadChars(int count); // 0x00483F9C + public virtual Decimal ReadDecimal(); // 0x00484148 + public virtual double ReadDouble(); // 0x0048434C + public virtual short ReadInt16(); // 0x00484384 + public virtual int ReadInt32(); // 0x0048441C + public virtual long ReadInt64(); // 0x00484520 + public virtual sbyte ReadSByte(); // 0x0048471C + public virtual string ReadString(); // 0x0048473C + public virtual float ReadSingle(); // 0x004849CC + public virtual ushort ReadUInt16(); // 0x00484A04 + public virtual uint ReadUInt32(); // 0x00484A98 + public virtual ulong ReadUInt64(); // 0x00484B9C + private void CheckBuffer(int length); // 0x0048304C +} + +// Namespace: System.IO +[Serializable] +public class BinaryWriter : IDisposable // TypeDefIndex: 427 +{ + // Fields + public static readonly BinaryWriter Null; // 0x00 + protected Stream OutStream; // 0x08 + private Encoding m_encoding; // 0x0C + private byte[] buffer; // 0x10 + private bool disposed; // 0x14 + private byte[] stringBuffer; // 0x18 + private int maxCharsPerRound; // 0x1C + + // Properties + public virtual Stream BaseStream { get; } // 0x00485128 + + // Methods + protected void .ctor(); // 0x00484D98 + public void .ctor(Stream output); // 0x00485010 + public void .ctor(Stream output, Encoding encoding); // 0x00484E6C + private static void .cctor(); // 0x004850A4 + private void System.IDisposable.Dispose(); // 0x00485114 + public virtual void Close(); // 0x00485130 + protected virtual void Dispose(bool disposing); // 0x00485144 + public virtual void Flush(); // 0x0048518C + public virtual long Seek(int offset, SeekOrigin origin); // 0x004851C0 + public virtual void Write(bool value); // 0x00485214 + public virtual void Write(byte value); // 0x00485350 + public virtual void Write(byte[] buffer); // 0x00485440 + public virtual void Write(byte[] buffer, int index, int count); // 0x00485590 + public virtual void Write(char ch); // 0x004856E8 + public virtual void Write(char[] chars); // 0x00485884 + public virtual void Write(char[] chars, int index, int count); // 0x00485A20 + public virtual void Write(Decimal value); // 0x00485BC4 + public virtual void Write(double value); // 0x00485EB8 + public virtual void Write(short value); // 0x00485FD4 + public virtual void Write(int value); // 0x00486148 + public virtual void Write(long value); // 0x0048632C + public virtual void Write(sbyte value); // 0x004864A0 + public virtual void Write(float value); // 0x004865DC + public virtual void Write(string value); // 0x004866F0 + public virtual void Write(ushort value); // 0x004869B8 + public virtual void Write(uint value); // 0x00486B2C + public virtual void Write(ulong value); // 0x00486D10 + protected void Write7BitEncodedInt(int value); // 0x0048696C +} + +// Namespace: System.IO +public sealed class BufferedStream : Stream // TypeDefIndex: 428 +{ + // Fields + private Stream m_stream; // 0x08 + private byte[] m_buffer; // 0x0C + private int m_buffer_pos; // 0x10 + private int m_buffer_read_ahead; // 0x14 + private bool m_buffer_reading; // 0x18 + private bool disposed; // 0x19 + + // Properties + public override bool CanRead { get; } // 0x004870DC + public override bool CanWrite { get; } // 0x00487110 + public override bool CanSeek { get; } // 0x00487144 + public override long Length { get; } // 0x00487178 + public override long Position { get; set; } // 0x004872A8 0x004873C8 + + // Methods + public void .ctor(Stream stream); // 0x00486E84 + public void .ctor(Stream stream, int bufferSize); // 0x00486E8C + protected override void Dispose(bool disposing); // 0x004874D8 + public override void Flush(); // 0x004871B4 + public override long Seek(long offset, SeekOrigin origin); // 0x0048753C + public override void SetLength(long value); // 0x00487678 + public override int ReadByte(); // 0x004878D0 + public override void WriteByte(byte value); // 0x00487D98 + public override int Read(out byte[] array, int offset, int count); // 0x0048799C + public override void Write(byte[] array, int offset, int count); // 0x00487E58 + private void CheckObjectDisposedException(); // 0x004872FC +} + +// Namespace: System.IO +public static class Directory // TypeDefIndex: 429 +{ + // Methods + public static DirectoryInfo CreateDirectory(string path); // 0x0048816C + private static DirectoryInfo CreateDirectoriesInternal(string path); // 0x004884B0 + public static void Delete(string path); // 0x0048868C + private static void RecursiveDelete(string path); // 0x00488AE8 + public static void Delete(string path, bool recursive); // 0x00488D78 + public static bool Exists(string path); // 0x00488FAC + public static DateTime GetLastAccessTime(string path); // 0x0048904C + public static DateTime GetLastAccessTimeUtc(string path); // 0x00489060 + public static DateTime GetLastWriteTime(string path); // 0x004890AC + public static DateTime GetLastWriteTimeUtc(string path); // 0x004890C0 + public static DateTime GetCreationTime(string path); // 0x0048910C + public static DateTime GetCreationTimeUtc(string path); // 0x00489120 + public static string GetCurrentDirectory(); // 0x0048916C + public static string[] GetDirectories(string path); // 0x00488C90 + public static string[] GetDirectories(string path, string searchPattern); // 0x0048925C + public static string[] GetDirectories(string path, string searchPattern, SearchOption searchOption); // 0x00489A40 + private static void GetDirectoriesRecurse(string path, string searchPattern, ArrayList all); // 0x00489BB0 + public static string GetDirectoryRoot(string path); // 0x00489C68 + public static string[] GetFiles(string path); // 0x00488D04 + public static string[] GetFiles(string path, string searchPattern); // 0x00489D04 + public static string[] GetFiles(string path, string searchPattern, SearchOption searchOption); // 0x00489D24 + private static void GetFilesRecurse(string path, string searchPattern, ArrayList all); // 0x00489E94 + public static string[] GetFileSystemEntries(string path); // 0x00489F4C + public static string[] GetFileSystemEntries(string path, string searchPattern); // 0x00489FC0 + public static string[] GetLogicalDrives(); // 0x00489FE0 + private static bool IsRootDirectory(string path); // 0x00489FE8 + public static DirectoryInfo GetParent(string path); // 0x0048A174 + public static void Move(string sourceDirName, string destDirName); // 0x0048A3A8 + public static void SetCreationTime(string path, DateTime creationTime); // 0x0048A93C + public static void SetCreationTimeUtc(string path, DateTime creationTimeUtc); // 0x0048A96C + public static void SetCurrentDirectory(string path); // 0x0048A9CC + public static void SetLastAccessTime(string path, DateTime lastAccessTime); // 0x0048AC34 + public static void SetLastAccessTimeUtc(string path, DateTime lastAccessTimeUtc); // 0x0048AC64 + public static void SetLastWriteTime(string path, DateTime lastWriteTime); // 0x0048ACC4 + public static void SetLastWriteTimeUtc(string path, DateTime lastWriteTimeUtc); // 0x0048ACF4 + private static void CheckPathExceptions(string path); // 0x00488DA8 + private static string[] GetFileSystemEntries(string path, string searchPattern, FileAttributes mask, FileAttributes attrs); // 0x0048927C +} + +// Namespace: System.IO +[Serializable] +public sealed class DirectoryInfo : FileSystemInfo // TypeDefIndex: 430 +{ + // Fields + private string current; // 0x44 + private string parent; // 0x48 + + // Properties + public override bool Exists { get; } // 0x0048B6D4 + public override string Name { get; } // 0x0048B868 + public DirectoryInfo Parent { get; } // 0x0048B870 + public DirectoryInfo Root { get; } // 0x0048B8FC + + // Methods + public void .ctor(string path); // 0x0048AD54 + internal void .ctor(string path, bool simpleOriginalPath); // 0x0048AD5C + private void .ctor(SerializationInfo info, StreamingContext context); // 0x0048B5B4 + private void Initialize(); // 0x0048B210 + public void Create(); // 0x0048C124 + public DirectoryInfo CreateSubdirectory(string path); // 0x0048C130 + public FileInfo[] GetFiles(); // 0x0048C61C + public FileInfo[] GetFiles(string searchPattern); // 0x0048C680 + public DirectoryInfo[] GetDirectories(); // 0x0048C958 + public DirectoryInfo[] GetDirectories(string searchPattern); // 0x0048C9BC + public FileSystemInfo[] GetFileSystemInfos(); // 0x0048CB8C + public FileSystemInfo[] GetFileSystemInfos(string searchPattern); // 0x0048CBF0 + public override void Delete(); // 0x0048CF5C + public void Delete(bool recursive); // 0x0048CF6C + public void MoveTo(string destDirName); // 0x0048CF78 + public override string ToString(); // 0x0048D0D0 + public DirectoryInfo[] GetDirectories(string searchPattern, SearchOption searchOption); // 0x0048D0D8 + internal int GetFilesSubdirs(ArrayList l, string pattern); // 0x0048D440 + public FileInfo[] GetFiles(string searchPattern, SearchOption searchOption); // 0x0048D5F0 +} + +// Namespace: System.IO +[Serializable] +public class DirectoryNotFoundException : IOException // TypeDefIndex: 431 +{ + // Methods + public void .ctor(); // 0x0048DAA0 + public void .ctor(string message); // 0x0048DB08 + public void .ctor(string message, Exception innerException); // 0x0048DB10 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x0048DB20 +} + +// Namespace: System.IO +[Serializable] +public sealed class DriveInfo : ISerializable // TypeDefIndex: 432 +{ + // Fields + private _DriveType _drive_type; // 0x08 + private string drive_format; // 0x0C + private string path; // 0x10 + + // Properties + public long AvailableFreeSpace { get; } // 0x0048E7D0 + public long TotalFreeSpace { get; } // 0x0048E83C + public long TotalSize { get; } // 0x0048E8A8 + public string VolumeLabel { get; set; } // 0x0048E914 0x0048E91C + public string DriveFormat { get; } // 0x0048E9A4 + public DriveType DriveType { get; } // 0x0048E9AC + public string Name { get; } // 0x0048E9B8 + public DirectoryInfo RootDirectory { get; } // 0x0048E9C0 + public bool IsReady { get; } // 0x0048EA38 + + // Methods + private void .ctor(_DriveType _drive_type, string path, string fstype); // 0x0048DB60 + public void .ctor(string driveName); // 0x0048DB90 + private void System.Runtime.Serialization.ISerializable.GetObjectData(SerializationInfo info, StreamingContext context); // 0x0048DD54 + private static void GetDiskFreeSpace(string path, out ulong availableFreeSpace, out ulong totalSize, out ulong totalFreeSpace); // 0x0048DDDC + private static StreamReader TryOpen(string name); // 0x0048EA40 + private static DriveInfo[] LinuxGetDrives(); // 0x0048EC6C + private static DriveInfo[] UnixGetDrives(); // 0x0048F094 + private static DriveInfo[] WindowsGetDrives(); // 0x0048F3EC + public static DriveInfo[] GetDrives(); // 0x0048DD20 + public override string ToString(); // 0x0048F474 + private static bool GetDiskFreeSpaceInternal(string pathName, out ulong freeBytesAvail, out ulong totalNumberOfBytes, out ulong totalNumberOfFreeBytes, out MonoIOError error); // 0x0048DEC0 + private static uint GetDriveTypeInternal(string rootPathName); // 0x0048E9B4 +} + +// Namespace: +private enum _DriveType // TypeDefIndex: 433 +{ + GenericUnix = 0, + Linux = 1, + Windows = 2 +} + +// Namespace: System.IO +[Serializable] +public class DriveNotFoundException : IOException // TypeDefIndex: 434 +{ + // Fields + private const int ErrorCode = -2147024893; // 0x00 + + // Methods + public void .ctor(); // 0x0048F47C + public void .ctor(string message); // 0x0048F4F0 + public void .ctor(string message, Exception innerException); // 0x0048F514 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x0048F538 +} + +// Namespace: System.IO +[Serializable] +public enum DriveType // TypeDefIndex: 435 +{ + Unknown = 0, + NoRootDirectory = 1, + Removable = 2, + Fixed = 3, + Network = 4, + CDRom = 5, + Ram = 6 +} + +// Namespace: System.IO +[Serializable] +public class EndOfStreamException : IOException // TypeDefIndex: 436 +{ + // Methods + public void .ctor(); // 0x0048F558 + public void .ctor(string message); // 0x0048F5CC + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x0048F5D4 + public void .ctor(string message, Exception innerException); // 0x0048F5F4 +} + +// Namespace: System.IO +public static class File // TypeDefIndex: 437 +{ + // Fields + private static Nullable`1 defaultLocalFileTime; // 0x00 + + // Properties + private static DateTime DefaultLocalFileTime { get; } // 0x00491470 + + // Methods + public static void AppendAllText(string path, string contents); // 0x0048F5FC + public static void AppendAllText(string path, string contents, Encoding encoding); // 0x0048F76C + public static StreamWriter AppendText(string path); // 0x0048F8EC + public static void Copy(string sourceFileName, string destFileName); // 0x0048F964 + public static void Copy(string sourceFileName, string destFileName, bool overwrite); // 0x0048F96C + public static FileStream Create(string path); // 0x00490AB8 + public static FileStream Create(string path, int bufferSize); // 0x00490AC0 + public static StreamWriter CreateText(string path); // 0x00490B88 + public static void Delete(string path); // 0x00490C00 + public static bool Exists(string path); // 0x0048EB18 + public static FileAttributes GetAttributes(string path); // 0x00490358 + public static DateTime GetCreationTime(string path); // 0x004910C8 + public static DateTime GetCreationTimeUtc(string path); // 0x004915B0 + public static DateTime GetLastAccessTime(string path); // 0x004915F8 + public static DateTime GetLastAccessTimeUtc(string path); // 0x0049176C + public static DateTime GetLastWriteTime(string path); // 0x004917B4 + public static DateTime GetLastWriteTimeUtc(string path); // 0x00491928 + public static void Move(string sourceFileName, string destFileName); // 0x00491970 + public static FileStream Open(string path, FileMode mode); // 0x00492118 + public static FileStream Open(string path, FileMode mode, FileAccess access); // 0x004921EC + public static FileStream Open(string path, FileMode mode, FileAccess access, FileShare share); // 0x0049228C + public static FileStream OpenRead(string path); // 0x00492334 + public static StreamReader OpenText(string path); // 0x004923D4 + public static FileStream OpenWrite(string path); // 0x004924EC + public static void Replace(string sourceFileName, string destinationFileName, string destinationBackupFileName); // 0x00492584 + public static void Replace(string sourceFileName, string destinationFileName, string destinationBackupFileName, bool ignoreMetadataErrors); // 0x004925A0 + public static void SetAttributes(string path, FileAttributes fileAttributes); // 0x004930A4 + public static void SetCreationTime(string path, DateTime creationTime); // 0x004931AC + public static void SetCreationTimeUtc(string path, DateTime creationTimeUtc); // 0x00493424 + public static void SetLastAccessTime(string path, DateTime lastAccessTime); // 0x00493480 + public static void SetLastAccessTimeUtc(string path, DateTime lastAccessTimeUtc); // 0x004936F8 + public static void SetLastWriteTime(string path, DateTime lastWriteTime); // 0x00493754 + public static void SetLastWriteTimeUtc(string path, DateTime lastWriteTimeUtc); // 0x004939CC + private static void CheckPathExceptions(string path); // 0x0049123C + public static byte[] ReadAllBytes(string path); // 0x00493A28 + public static string[] ReadAllLines(string path); // 0x00493CF4 + public static string[] ReadAllLines(string path, Encoding encoding); // 0x00493F78 + private static string[] ReadAllLines(StreamReader reader); // 0x00493E60 + public static string ReadAllText(string path); // 0x0049413C + public static string ReadAllText(string path, Encoding encoding); // 0x004941C8 + public static void WriteAllBytes(string path, byte[] bytes); // 0x0049437C + public static void WriteAllLines(string path, string[] contents); // 0x004944F8 + public static void WriteAllLines(string path, string[] contents, Encoding encoding); // 0x004946CC + private static void WriteAllLines(StreamWriter writer, string[] contents); // 0x00494648 + public static void WriteAllText(string path, string contents); // 0x00494834 + public static void WriteAllText(string path, string contents, Encoding encoding); // 0x004948C8 + public static void Encrypt(string path); // 0x00494A48 + public static void Decrypt(string path); // 0x00494AF0 +} + +// Namespace: System.IO +[Serializable] +public enum FileAccess // TypeDefIndex: 438 +{ + Read = 1, + Write = 2, + ReadWrite = 3 +} + +// Namespace: System.IO +[Serializable] +public enum FileAttributes // TypeDefIndex: 439 +{ + ReadOnly = 1, + Hidden = 2, + System = 4, + Directory = 16, + Archive = 32, + Device = 64, + Normal = 128, + Temporary = 256, + SparseFile = 512, + ReparsePoint = 1024, + Compressed = 2048, + Offline = 4096, + NotContentIndexed = 8192, + Encrypted = 16384 +} + +// Namespace: System.IO +[Serializable] +public sealed class FileInfo : FileSystemInfo // TypeDefIndex: 440 +{ + // Fields + private bool exists; // 0x41 + + // Properties + public override bool Exists { get; } // 0x00494BCC + public override string Name { get; } // 0x00494C94 + public bool IsReadOnly { get; set; } // 0x00494D18 0x00494E24 + public long Length { get; } // 0x004950A0 + public string DirectoryName { get; } // 0x004951A8 + public DirectoryInfo Directory { get; } // 0x0049522C + + // Methods + public void .ctor(string fileName); // 0x0048C84C + private void .ctor(SerializationInfo info, StreamingContext context); // 0x00494B98 + internal override void InternalRefresh(); // 0x00494BB0 + public void Encrypt(); // 0x00494F50 + public void Decrypt(); // 0x00494FF8 + public StreamReader OpenText(); // 0x004952AC + public StreamWriter CreateText(); // 0x00495400 + public StreamWriter AppendText(); // 0x00495494 + public FileStream Create(); // 0x00495528 + public FileStream OpenRead(); // 0x00495534 + public FileStream OpenWrite(); // 0x00495604 + public FileStream Open(FileMode mode); // 0x00495628 + public FileStream Open(FileMode mode, FileAccess access); // 0x0049533C + public FileStream Open(FileMode mode, FileAccess access, FileShare share); // 0x00495558 + public override void Delete(); // 0x00495648 + public void MoveTo(string destFileName); // 0x00495868 + public FileInfo CopyTo(string destFileName); // 0x00495AC4 + public FileInfo CopyTo(string destFileName, bool overwrite); // 0x00495ACC + public override string ToString(); // 0x00495C68 + public FileInfo Replace(string destinationFileName, string destinationBackupFileName); // 0x00495C6C + public FileInfo Replace(string destinationFileName, string destinationBackupFileName, bool ignoreMetadataErrors); // 0x00495F54 +} + +// Namespace: System.IO +[Serializable] +public class FileLoadException : IOException // TypeDefIndex: 441 +{ + // Fields + private const int Result = -2147024894; // 0x00 + private string msg; // 0x34 + private string fileName; // 0x38 + private string fusionLog; // 0x3C + + // Properties + public override string Message { get; } // 0x0049626C + public string FileName { get; } // 0x00496274 + public string FusionLog { get; } // 0x0049627C + + // Methods + public void .ctor(); // 0x00495FDC + public void .ctor(string message); // 0x0049606C + public void .ctor(string message, string fileName); // 0x00496098 + public void .ctor(string message, Exception inner); // 0x004960CC + public void .ctor(string message, string fileName, Exception inner); // 0x004960F8 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x00496130 + public override void GetObjectData(SerializationInfo info, StreamingContext context); // 0x00496284 + public override string ToString(); // 0x00496368 +} + +// Namespace: System.IO +[Serializable] +public enum FileMode // TypeDefIndex: 442 +{ + CreateNew = 1, + Create = 2, + Open = 3, + OpenOrCreate = 4, + Truncate = 5, + Append = 6 +} + +// Namespace: System.IO +[Serializable] +public class FileNotFoundException : IOException // TypeDefIndex: 443 +{ + // Fields + private const int Result = -2146232799; // 0x00 + private string fileName; // 0x34 + private string fusionLog; // 0x38 + + // Properties + public string FileName { get; } // 0x004966C8 + public string FusionLog { get; } // 0x004966D0 + public override string Message { get; } // 0x004966D8 + + // Methods + public void .ctor(); // 0x00495A44 + public void .ctor(string message); // 0x00496558 + public void .ctor(string message, Exception innerException); // 0x0049657C + public void .ctor(string message, string fileName); // 0x0049032C + public void .ctor(string message, string fileName, Exception innerException); // 0x004965A0 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x004965D0 + public override void GetObjectData(SerializationInfo info, StreamingContext context); // 0x00496848 + public override string ToString(); // 0x0049692C +} + +// Namespace: System.IO +[Serializable] +public enum FileOptions // TypeDefIndex: 444 +{ + WriteThrough = -2147483648, + None = 0, + Encrypted = 16384, + DeleteOnClose = 67108864, + SequentialScan = 134217728, + RandomAccess = 268435456, + Asynchronous = 1073741824 +} + +// Namespace: System.IO +[Serializable] +public enum FileShare // TypeDefIndex: 445 +{ + None = 0, + Read = 1, + Write = 2, + ReadWrite = 3, + Delete = 4, + Inheritable = 16 +} + +// Namespace: System.IO +public class FileStream : Stream // TypeDefIndex: 446 +{ + // Fields + internal const int DefaultBufferSize = 8192; // 0x00 + private FileAccess access; // 0x08 + private bool owner; // 0x0C + private bool async; // 0x0D + private bool canseek; // 0x0E + private long append_startpos; // 0x10 + private bool anonymous; // 0x18 + private byte[] buf; // 0x1C + private int buf_size; // 0x20 + private int buf_length; // 0x24 + private int buf_offset; // 0x28 + private bool buf_dirty; // 0x2C + private long buf_start; // 0x30 + private string name; // 0x38 + private IntPtr handle; // 0x3C + private SafeFileHandle safeHandle; // 0x40 + + // Properties + public override bool CanRead { get; } // 0x00497F84 + public override bool CanWrite { get; } // 0x00497F9C + public override bool CanSeek { get; } // 0x00497FB4 + public virtual bool IsAsync { get; } // 0x00497FBC + public string Name { get; } // 0x00497FC4 + public override long Length { get; } // 0x00497FCC + public override long Position { get; set; } // 0x0049820C 0x00498380 + public virtual IntPtr Handle { get; } // 0x00498564 + public virtual SafeFileHandle SafeFileHandle { get; } // 0x0049856C + + // Methods + public void .ctor(IntPtr handle, FileAccess access); // 0x00496B7C + public void .ctor(IntPtr handle, FileAccess access, bool ownsHandle); // 0x00496BD4 + public void .ctor(IntPtr handle, FileAccess access, bool ownsHandle, int bufferSize); // 0x00496C00 + public void .ctor(IntPtr handle, FileAccess access, bool ownsHandle, int bufferSize, bool isAsync); // 0x00496BA8 + internal void .ctor(IntPtr handle, FileAccess access, bool ownsHandle, int bufferSize, bool isAsync, bool noBuffering); // 0x00496C28 + public void .ctor(string path, FileMode mode); // 0x00497104 + public void .ctor(string path, FileMode mode, FileAccess access); // 0x00497CD8 + public void .ctor(string path, FileMode mode, FileAccess access, FileShare share); // 0x004921BC + public void .ctor(string path, FileMode mode, FileAccess access, FileShare share, int bufferSize); // 0x00490B58 + public void .ctor(string path, FileMode mode, FileAccess access, FileShare share, int bufferSize, bool useAsync); // 0x00497DB0 + internal void .ctor(string path, FileMode mode, FileAccess access, FileShare share, int bufferSize, bool isAsync, bool anonymous); // 0x00497D40 + internal void .ctor(string path, FileMode mode, FileAccess access, FileShare share, int bufferSize, bool anonymous, FileOptions options); // 0x00497170 + public override int ReadByte(); // 0x0049860C + public override void WriteByte(byte value); // 0x00498A04 + public override int Read(out byte[] array, int offset, int count); // 0x00498C38 + private int ReadInternal(byte[] dest, int offset, int count); // 0x00498FC0 + public override IAsyncResult BeginRead(byte[] array, int offset, int numBytes, AsyncCallback userCallback, object stateObject); // 0x004990BC + public override int EndRead(IAsyncResult asyncResult); // 0x0049970C + public override void Write(byte[] array, int offset, int count); // 0x00499AE4 + private void WriteInternal(byte[] src, int offset, int count); // 0x00499E20 + public override IAsyncResult BeginWrite(byte[] array, int offset, int numBytes, AsyncCallback userCallback, object stateObject); // 0x0049A058 + public override void EndWrite(IAsyncResult asyncResult); // 0x0049AAE8 + public override long Seek(long offset, SeekOrigin origin); // 0x0049AEA0 + public override void SetLength(long value); // 0x0049B218 + public override void Flush(); // 0x0049B548 + public virtual void Lock(long position, long length); // 0x0049B654 + public virtual void Unlock(long position, long length); // 0x0049B96C + protected override void Finalize(); // 0x0049BBE4 + protected override void Dispose(bool disposing); // 0x0049BC5C + private int ReadSegment(byte[] dest, int dest_offset, int count); // 0x0049905C + private int WriteSegment(byte[] src, int src_offset, int count); // 0x00499FDC + private void FlushBuffer(Stream st); // 0x0049A7BC + private void FlushBuffer(); // 0x00498604 + private void FlushBufferIfDirty(); // 0x004981F4 + private void RefillBuffer(); // 0x004989C4 + private int ReadData(IntPtr handle, byte[] buf, int offset, int count); // 0x0049884C + private void InitBuffer(int size, bool noBuffering); // 0x00496FEC + private string GetSecureFileName(string filename); // 0x00497EC8 + private string GetSecureFileName(string filename, bool full); // 0x00497DEC +} + +// Namespace: +private delegate int ReadDelegate(byte[] buffer, int offset, int count); // TypeDefIndex: 447; 0x0049BF00 + +// Namespace: +private delegate void WriteDelegate(byte[] buffer, int offset, int count); // TypeDefIndex: 448; 0x0049C304 + +// Namespace: System.IO +internal class FileStreamAsyncResult : IAsyncResult // TypeDefIndex: 449 +{ + // Fields + private object state; // 0x08 + private bool completed; // 0x0C + private bool done; // 0x0D + private Exception exc; // 0x10 + private ManualResetEvent wh; // 0x14 + private AsyncCallback cb; // 0x18 + private bool completedSynch; // 0x1C + public byte[] Buffer; // 0x20 + public int Offset; // 0x24 + public int Count; // 0x28 + public int OriginalCount; // 0x2C + public int BytesRead; // 0x30 + private AsyncCallback realcb; // 0x34 + + // Properties + public object AsyncState { get; } // 0x0049C848 + public bool CompletedSynchronously { get; } // 0x0049C850 + public WaitHandle AsyncWaitHandle { get; } // 0x0049C858 + public bool IsCompleted { get; } // 0x0049C860 + public Exception Exception { get; } // 0x0049C868 + public bool Done { get; set; } // 0x0049C870 0x0049C878 + + // Methods + public void .ctor(AsyncCallback cb, object state); // 0x0049A6E0 + private static void CBWrapper(IAsyncResult ares); // 0x0049C708 + public void SetComplete(Exception e); // 0x0049C7E0 + public void SetComplete(Exception e, int nbytes); // 0x0049C834 + public void SetComplete(Exception e, int nbytes, bool synch); // 0x0049C83C +} + +// Namespace: System.IO +[Serializable] +public abstract class FileSystemInfo : MarshalByRefObject, ISerializable // TypeDefIndex: 450 +{ + // Fields + protected string FullPath; // 0x0C + protected string OriginalPath; // 0x10 + internal MonoIOStat stat; // 0x18 + internal bool valid; // 0x40 + + // Properties + public abstract bool Exists { get; } + public abstract string Name { get; } + public virtual string FullName { get; } // 0x0049C9B8 + public string Extension { get; } // 0x0049C9C0 + public FileAttributes Attributes { get; set; } // 0x0049CC08 0x0049CC24 + public DateTime CreationTime { get; set; } // 0x0049CD60 0x0049CE10 + public DateTime CreationTimeUtc { get; set; } // 0x0049D0EC 0x0049D134 + public DateTime LastAccessTime { get; set; } // 0x0049D190 0x0049D240 + public DateTime LastAccessTimeUtc { get; set; } // 0x0049D3BC 0x0049D418 + public DateTime LastWriteTime { get; set; } // 0x0049D474 0x0049D524 + public DateTime LastWriteTimeUtc { get; set; } // 0x0049D69C 0x0049D6F8 + + // Methods + protected void .ctor(); // 0x0048AE54 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x0048B5D8 + public virtual void GetObjectData(SerializationInfo info, StreamingContext context); // 0x0049C880 + public abstract void Delete(); + public void Refresh(); // 0x0049D754 + internal void Refresh(bool force); // 0x0048B784 + internal virtual void InternalRefresh(); // 0x0049D75C + internal void CheckPath(string path); // 0x0048AE78 +} + +// Namespace: System.IO +[Serializable] +public class IOException : SystemException // TypeDefIndex: 451 +{ + // Methods + public void .ctor(); // 0x00496204 + public void .ctor(string message); // 0x0048CF54 + public void .ctor(string message, Exception innerException); // 0x0048DB18 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x0048DB40 + public void .ctor(string message, int hresult); // 0x0049D760 +} + +// Namespace: System.IO +[Serializable] +public class MemoryStream : Stream // TypeDefIndex: 452 +{ + // Fields + private bool canWrite; // 0x08 + private bool allowGetBuffer; // 0x09 + private int capacity; // 0x0C + private int length; // 0x10 + private byte[] internalBuffer; // 0x14 + private int initialIndex; // 0x18 + private bool expandable; // 0x1C + private bool streamClosed; // 0x1D + private int position; // 0x20 + private int dirty_bytes; // 0x24 + + // Properties + public override bool CanRead { get; } // 0x004A3240 + public override bool CanSeek { get; } // 0x004A3254 + public override bool CanWrite { get; } // 0x004A3268 + public virtual int Capacity { get; set; } // 0x004A328C 0x004A32AC + public override long Length { get; } // 0x004A3660 + public override long Position { get; set; } // 0x004A3684 0x004A36A8 + + // Methods + public void .ctor(); // 0x0049A7B4 + public void .ctor(int capacity); // 0x004A2A94 + public void .ctor(byte[] buffer); // 0x004A2BAC + public void .ctor(byte[] buffer, bool writable); // 0x004A2E54 + public void .ctor(byte[] buffer, int index, int count); // 0x004A2F64 + public void .ctor(byte[] buffer, int index, int count, bool writable); // 0x004A301C + public void .ctor(byte[] buffer, int index, int count, bool writable, bool publiclyVisible); // 0x004A30D8 + private void InternalConstructor(byte[] buffer, int index, int count, bool writable, bool publicallyVisible); // 0x004A2CBC + private void CheckIfClosedThrowDisposed(); // 0x004A3194 + protected override void Dispose(bool disposing); // 0x004A37DC + public override void Flush(); // 0x004A37E8 + public virtual byte[] GetBuffer(); // 0x004A37EC + public override int Read(out byte[] buffer, int offset, int count); // 0x004A3888 + public override int ReadByte(); // 0x004A3A54 + public override long Seek(long offset, SeekOrigin loc); // 0x004A3ABC + private int CalculateNewCapacity(int minimum); // 0x004A3D18 + private void Expand(int newSize); // 0x004A3D34 + public override void SetLength(long value); // 0x004A3D9C + public virtual byte[] ToArray(); // 0x004A3F64 + public override void Write(byte[] buffer, int offset, int count); // 0x004A400C + public override void WriteByte(byte value); // 0x004A421C + public virtual void WriteTo(Stream stream); // 0x004A4340 +} + +// Namespace: System.IO +internal enum MonoFileType // TypeDefIndex: 453 +{ + Unknown = 0, + Disk = 1, + Char = 2, + Pipe = 3, + Remote = 32768 +} + +// Namespace: System.IO +internal sealed class MonoIO // TypeDefIndex: 454 +{ + // Fields + public static readonly FileAttributes InvalidFileAttributes; // 0x00 + public static readonly IntPtr InvalidHandle; // 0x04 + + // Properties + public static IntPtr ConsoleOutput { get; } // 0x004A4768 + public static IntPtr ConsoleInput { get; } // 0x004A476C + public static IntPtr ConsoleError { get; } // 0x004A4770 + public static char VolumeSeparatorChar { get; } // 0x004A477C + public static char DirectorySeparatorChar { get; } // 0x004A4780 + public static char AltDirectorySeparatorChar { get; } // 0x004A4784 + public static char PathSeparator { get; } // 0x004A4788 + + // Methods + public void .ctor(); // 0x004A4428 + private static void .cctor(); // 0x004A4430 + public static Exception GetException(MonoIOError error); // 0x00491FC0 + public static Exception GetException(string path, MonoIOError error); // 0x0048DEC4 + public static bool CreateDirectory(string path, out MonoIOError error); // 0x004A44B8 + public static bool RemoveDirectory(string path, out MonoIOError error); // 0x004A44BC + public static string[] GetFileSystemEntries(string path, string path_with_pattern, int attrs, int mask, out MonoIOError error); // 0x004A44C0 + public static string GetCurrentDirectory(out MonoIOError error); // 0x004A44C4 + public static bool SetCurrentDirectory(string path, out MonoIOError error); // 0x004A44C8 + public static bool MoveFile(string path, string dest, out MonoIOError error); // 0x00491FBC + public static bool CopyFile(string path, string dest, bool overwrite, out MonoIOError error); // 0x00490AB4 + public static bool DeleteFile(string path, out MonoIOError error); // 0x00491004 + public static bool ReplaceFile(string sourceFileName, string destinationFileName, string destinationBackupFileName, bool ignoreMetadataErrors, out MonoIOError error); // 0x004930A0 + public static FileAttributes GetFileAttributes(string path, out MonoIOError error); // 0x004910C4 + public static bool SetFileAttributes(string path, FileAttributes attrs, out MonoIOError error); // 0x004931A8 + public static MonoFileType GetFileType(IntPtr handle, out MonoIOError error); // 0x00496FE8 + public static bool Exists(string path, out MonoIOError error); // 0x0049027C + public static bool ExistsFile(string path, out MonoIOError error); // 0x00491008 + public static bool ExistsDirectory(string path, out MonoIOError error); // 0x00492FB4 + public static bool ExistsSymlink(string path, out MonoIOError error); // 0x004A44CC + public static bool GetFileStat(string path, out MonoIOStat stat, out MonoIOError error); // 0x0049146C + public static IntPtr Open(string filename, FileMode mode, FileAccess access, FileShare share, FileOptions options, out MonoIOError error); // 0x00497F80 + public static bool Close(IntPtr handle, out MonoIOError error); // 0x0049BEF8 + public static int Read(IntPtr handle, byte[] dest, int dest_offset, int count, out MonoIOError error); // 0x0049BEFC + public static int Write(IntPtr handle, byte[] src, int src_offset, int count, out MonoIOError error); // 0x00499FD8 + public static long Seek(IntPtr handle, long offset, SeekOrigin origin, out MonoIOError error); // 0x00497100 + public static bool Flush(IntPtr handle, out MonoIOError error); // 0x004A4578 + public static long GetLength(IntPtr handle, out MonoIOError error); // 0x00498208 + public static bool SetLength(IntPtr handle, long length, out MonoIOError error); // 0x0049B544 + public static bool SetFileTime(IntPtr handle, long creation_time, long last_access_time, long last_write_time, out MonoIOError error); // 0x004A457C + public static bool SetFileTime(string path, long creation_time, long last_access_time, long last_write_time, out MonoIOError error); // 0x0049CF90 + public static bool SetCreationTime(string path, DateTime dateTime, out MonoIOError error); // 0x00493354 + public static bool SetLastAccessTime(string path, DateTime dateTime, out MonoIOError error); // 0x00493628 + public static bool SetLastWriteTime(string path, DateTime dateTime, out MonoIOError error); // 0x004938FC + public static bool SetFileTime(string path, int type, long creation_time, long last_access_time, long last_write_time, DateTime dateTime, out MonoIOError error); // 0x004A4580 + public static void Lock(IntPtr handle, long position, long length, out MonoIOError error); // 0x0049B968 + public static void Unlock(IntPtr handle, long position, long length, out MonoIOError error); // 0x0049BBE0 + public static bool CreatePipe(out IntPtr read_handle, out IntPtr write_handle); // 0x004A4774 + public static bool DuplicateHandle(IntPtr source_process_handle, IntPtr source_handle, IntPtr target_process_handle, out IntPtr target_handle, int access, int inherit, int options); // 0x004A4778 + public static int GetTempPath(out string path); // 0x004A478C + public static bool RemapPath(string path, out string newPath); // 0x004A4790 +} + +// Namespace: System.IO +internal enum MonoIOError // TypeDefIndex: 455 +{ + ERROR_SUCCESS = 0, + ERROR_FILE_NOT_FOUND = 2, + ERROR_PATH_NOT_FOUND = 3, + ERROR_TOO_MANY_OPEN_FILES = 4, + ERROR_ACCESS_DENIED = 5, + ERROR_INVALID_HANDLE = 6, + ERROR_INVALID_DRIVE = 15, + ERROR_NOT_SAME_DEVICE = 17, + ERROR_NO_MORE_FILES = 18, + ERROR_WRITE_FAULT = 29, + ERROR_READ_FAULT = 30, + ERROR_GEN_FAILURE = 31, + ERROR_SHARING_VIOLATION = 32, + ERROR_LOCK_VIOLATION = 33, + ERROR_HANDLE_DISK_FULL = 39, + ERROR_FILE_EXISTS = 80, + ERROR_CANNOT_MAKE = 82, + ERROR_INVALID_PARAMETER = 87, + ERROR_BROKEN_PIPE = 109, + ERROR_INVALID_NAME = 123, + ERROR_DIR_NOT_EMPTY = 145, + ERROR_ALREADY_EXISTS = 183, + ERROR_FILENAME_EXCED_RANGE = 206, + ERROR_ENCRYPTION_FAILED = 6000 +} + +// Namespace: System.IO +internal struct MonoIOStat // TypeDefIndex: 456 +{ + // Fields + public string Name; // 0x08 + public FileAttributes Attributes; // 0x0C + public long Length; // 0x10 + public long CreationTime; // 0x18 + public long LastAccessTime; // 0x20 + public long LastWriteTime; // 0x28 + +} + +// Namespace: System.IO +public static class Path // TypeDefIndex: 457 +{ + // Fields + public static readonly char[] InvalidPathChars; // 0x00 + public static readonly char AltDirectorySeparatorChar; // 0x04 + public static readonly char DirectorySeparatorChar; // 0x06 + public static readonly char PathSeparator; // 0x08 + internal static readonly string DirectorySeparatorStr; // 0x0C + public static readonly char VolumeSeparatorChar; // 0x10 + internal static readonly char[] PathSeparatorChars; // 0x14 + private static readonly bool dirEqualsVolume; // 0x18 + + // Methods + private static void .cctor(); // 0x004A4878 + public static string ChangeExtension(string path, string extension); // 0x004A4B08 + public static string Combine(string path1, string path2); // 0x0048C1F8 + internal static string CleanPath(string s); // 0x004A4F1C + public static string GetDirectoryName(string path); // 0x004905CC + public static string GetExtension(string path); // 0x0049CA58 + public static string GetFileName(string path); // 0x0048B08C + public static string GetFileNameWithoutExtension(string path); // 0x004A5588 + public static string GetFullPath(string path); // 0x0048B00C + internal static string WindowsDriveAdjustment(string path); // 0x004A5FA4 + internal static string InsecureGetFullPath(string path); // 0x004A5610 + private static bool IsDsc(char c); // 0x004A635C + public static string GetPathRoot(string path); // 0x0048B9BC + public static string GetTempFileName(); // 0x004A7080 + public static string GetTempPath(); // 0x004A7470 + private static string get_temp_path(); // 0x004A7608 + public static bool HasExtension(string path); // 0x004A760C + public static bool IsPathRooted(string path); // 0x004A25B8 + public static char[] GetInvalidFileNameChars(); // 0x004A779C + public static char[] GetInvalidPathChars(); // 0x004A4A64 + public static string GetRandomFileName(); // 0x004A7878 + private static int findExtension(string path); // 0x004A4E50 + private static string GetServerAndShare(string path); // 0x004A79EC + private static bool SameRoot(string root, string path); // 0x004A7BAC + private static string CanonicalizePath(string path); // 0x004A643C + internal static bool IsPathSubsetOf(string subset, string path); // 0x004A7FBC +} + +// Namespace: System.IO +[Serializable] +public class PathTooLongException : IOException // TypeDefIndex: 458 +{ + // Methods + public void .ctor(); // 0x004A81F8 + public void .ctor(string message); // 0x004A44B0 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x004A826C + public void .ctor(string message, Exception innerException); // 0x004A828C +} + +// Namespace: System.IO +[Serializable] +public enum SearchOption // TypeDefIndex: 459 +{ + TopDirectoryOnly = 0, + AllDirectories = 1 +} + +// Namespace: System.IO +internal class SearchPattern // TypeDefIndex: 460 +{ + // Fields + private Op ops; // 0x08 + private bool ignore; // 0x0C + internal static readonly char[] WildcardChars; // 0x00 + internal static readonly char[] InvalidChars; // 0x04 + + // Methods + public void .ctor(string pattern); // 0x004A8294 + public void .ctor(string pattern, bool ignore); // 0x004A82C4 + private static void .cctor(); // 0x004A86AC + public bool IsMatch(string text); // 0x004A8860 + private void Compile(string pattern); // 0x004A82F4 + private bool Match(Op op, string text, int ptr); // 0x004A8884 +} + +// Namespace: +private class Op // TypeDefIndex: 461 +{ + // Fields + public OpCode Code; // 0x08 + public string Argument; // 0x0C + public Op Next; // 0x10 + + // Methods + public void .ctor(OpCode code); // 0x004A8AA4 +} + +// Namespace: +private enum OpCode // TypeDefIndex: 462 +{ + ExactString = 0, + AnyChar = 1, + AnyString = 2, + End = 3, + True = 4 +} + +// Namespace: System.IO +[Serializable] +public enum SeekOrigin // TypeDefIndex: 463 +{ + Begin = 0, + Current = 1, + End = 2 +} + +// Namespace: System.IO +[Serializable] +public abstract class Stream : IDisposable // TypeDefIndex: 464 +{ + // Fields + public static readonly Stream Null; // 0x00 + + // Properties + public abstract bool CanRead { get; } + public abstract bool CanSeek { get; } + public abstract bool CanWrite { get; } + public virtual bool CanTimeout { get; } // 0x004A8B4C + public abstract long Length { get; } + public abstract long Position { get; set; } + public virtual int ReadTimeout { get; set; } // 0x004A8B7C 0x004A8C18 + public virtual int WriteTimeout { get; set; } // 0x004A8CB4 0x004A8D50 + + // Methods + protected void .ctor(); // 0x00496FE0 + private static void .cctor(); // 0x004A8AD0 + public void Dispose(); // 0x004A8B54 + protected virtual void Dispose(bool disposing); // 0x004A8B64 + public virtual void Close(); // 0x004A8B68 + public static Stream Synchronized(Stream stream); // 0x004A8DEC + protected virtual WaitHandle CreateWaitHandle(); // 0x004A8E74 + public abstract void Flush(); + public abstract int Read(out byte[] buffer, int offset, int count); + public virtual int ReadByte(); // 0x004A8EE4 + public abstract long Seek(long offset, SeekOrigin origin); + public abstract void SetLength(long value); + public abstract void Write(byte[] buffer, int offset, int count); + public virtual void WriteByte(byte value); // 0x004A8FB8 + public virtual IAsyncResult BeginRead(byte[] buffer, int offset, int count, AsyncCallback callback, object state); // 0x00499424 + public virtual IAsyncResult BeginWrite(byte[] buffer, int offset, int count, AsyncCallback callback, object state); // 0x0049A4C8 + public virtual int EndRead(IAsyncResult asyncResult); // 0x004998F0 + public virtual void EndWrite(IAsyncResult asyncResult); // 0x0049ACD0 +} + +// Namespace: System.IO +internal class NullStream : Stream // TypeDefIndex: 465 +{ + // Properties + public override bool CanRead { get; } // 0x004A4818 + public override bool CanSeek { get; } // 0x004A4820 + public override bool CanWrite { get; } // 0x004A4828 + public override long Length { get; } // 0x004A4830 + public override long Position { get; set; } // 0x004A483C 0x004A4848 + + // Methods + public void .ctor(); // 0x004A4794 + public override void Flush(); // 0x004A484C + public override int Read(byte[] buffer, int offset, int count); // 0x004A4850 + public override int ReadByte(); // 0x004A4858 + public override long Seek(long offset, SeekOrigin origin); // 0x004A4860 + public override void SetLength(long value); // 0x004A486C + public override void Write(byte[] buffer, int offset, int count); // 0x004A4870 + public override void WriteByte(byte value); // 0x004A4874 +} + +// Namespace: System.IO +internal class StreamAsyncResult : IAsyncResult // TypeDefIndex: 466 +{ + // Fields + private object state; // 0x08 + private bool completed; // 0x0C + private bool done; // 0x0D + private Exception exc; // 0x10 + private int nbytes; // 0x14 + private ManualResetEvent wh; // 0x18 + + // Properties + public object AsyncState { get; } // 0x004A9140 + public WaitHandle AsyncWaitHandle { get; } // 0x004A9148 + public virtual bool CompletedSynchronously { get; } // 0x004A9244 + public bool IsCompleted { get; } // 0x004A924C + public Exception Exception { get; } // 0x004A9254 + public int NBytes { get; } // 0x004A925C + public bool Done { get; set; } // 0x004A9264 0x004A926C + + // Methods + public void .ctor(object state); // 0x004A9080 + public void SetComplete(Exception e); // 0x004A90B4 + public void SetComplete(Exception e, int nbytes); // 0x004A90AC +} + +// Namespace: System.IO +[Serializable] +public class StreamReader : TextReader // TypeDefIndex: 467 +{ + // Fields + private const int DefaultBufferSize = 1024; // 0x00 + private const int DefaultFileBufferSize = 4096; // 0x00 + private const int MinimumBufferSize = 128; // 0x00 + private byte[] input_buffer; // 0x08 + private char[] decoded_buffer; // 0x0C + private int decoded_count; // 0x10 + private int pos; // 0x14 + private int buffer_size; // 0x18 + private int do_checks; // 0x1C + private Encoding encoding; // 0x20 + private Decoder decoder; // 0x24 + private Stream base_stream; // 0x28 + private bool mayBlock; // 0x2C + private StringBuilder line_builder; // 0x30 + public static readonly StreamReader Null; // 0x00 + private bool foundCR; // 0x34 + + // Properties + public virtual Stream BaseStream { get; } // 0x004A9B90 + public virtual Encoding CurrentEncoding { get; } // 0x004A9B98 + public bool EndOfStream { get; } // 0x0049411C + + // Methods + internal void .ctor(); // 0x004A9274 + public void .ctor(Stream stream); // 0x00495358 + public void .ctor(Stream stream, bool detectEncodingFromByteOrderMarks); // 0x004A93AC + public void .ctor(Stream stream, Encoding encoding); // 0x004A9458 + public void .ctor(Stream stream, Encoding encoding, bool detectEncodingFromByteOrderMarks); // 0x004A947C + public void .ctor(Stream stream, Encoding encoding, bool detectEncodingFromByteOrderMarks, int bufferSize); // 0x004A92F8 + public void .ctor(string path); // 0x00492444 + public void .ctor(string path, bool detectEncodingFromByteOrderMarks); // 0x004A9A44 + public void .ctor(string path, Encoding encoding); // 0x0048EC48 + public void .ctor(string path, Encoding encoding, bool detectEncodingFromByteOrderMarks); // 0x004A9AF0 + public void .ctor(string path, Encoding encoding, bool detectEncodingFromByteOrderMarks, int bufferSize); // 0x004A9748 + private static void .cctor(); // 0x004A9B10 + internal void Initialize(Stream stream, Encoding encoding, bool detectEncodingFromByteOrderMarks, int bufferSize); // 0x004A949C + public override void Close(); // 0x004A9C30 + protected override void Dispose(bool disposing); // 0x004A9C44 + private int DoChecks(int count); // 0x004A9CA4 + public void DiscardBufferedData(); // 0x004AA2E0 + private int ReadBuffer(); // 0x004AA32C + public override int Peek(); // 0x004AA554 + internal bool DataAvailable(); // 0x004AA678 + public override int Read(); // 0x004AA690 + public override int Read(out char[] buffer, int index, int count); // 0x004AA7BC + private int FindNextEOL(); // 0x004AAA80 + public override string ReadLine(); // 0x004AAB6C + public override string ReadToEnd(); // 0x004AAE80 +} + +// Namespace: +private class NullStreamReader : StreamReader // TypeDefIndex: 468 +{ + // Properties + public override Stream BaseStream { get; } // 0x001CDFE8 + public override Encoding CurrentEncoding { get; } // 0x001CE074 + + // Methods + public void .ctor(); // 0x001CDEB8 + public override int Peek(); // 0x001CDF3C + public override int Read(); // 0x001CDF44 + public override int Read(out char[] buffer, int index, int count); // 0x001CDF4C + public override string ReadLine(); // 0x001CDF54 + public override string ReadToEnd(); // 0x001CDF5C +} + +// Namespace: System.IO +[Serializable] +public class StreamWriter : TextWriter // TypeDefIndex: 469 +{ + // Fields + private const int DefaultBufferSize = 1024; // 0x00 + private const int DefaultFileBufferSize = 4096; // 0x00 + private const int MinimumBufferSize = 256; // 0x00 + private Encoding internalEncoding; // 0x10 + private Stream internalStream; // 0x14 + private bool iflush; // 0x18 + private byte[] byte_buf; // 0x1C + private int byte_pos; // 0x20 + private char[] decode_buf; // 0x24 + private int decode_pos; // 0x28 + private bool DisposedAlready; // 0x2C + private bool preamble_done; // 0x2D + public static readonly StreamWriter Null; // 0x00 + + // Properties + public virtual bool AutoFlush { get; set; } // 0x001CE9C4 0x001CE9CC + public virtual Stream BaseStream { get; } // 0x001CE9E8 + public override Encoding Encoding { get; } // 0x001CE9F0 + + // Methods + public void .ctor(Stream stream); // 0x001CE0F0 + public void .ctor(Stream stream, Encoding encoding); // 0x001CE388 + public void .ctor(Stream stream, Encoding encoding, int bufferSize); // 0x001CE190 + public void .ctor(string path); // 0x001CE51C + public void .ctor(string path, bool append); // 0x001CE7EC + public void .ctor(string path, bool append, Encoding encoding); // 0x001CE898 + public void .ctor(string path, bool append, Encoding encoding, int bufferSize); // 0x001CE5C4 + private static void .cctor(); // 0x001CE8B8 + internal void Initialize(Encoding encoding, int bufferSize); // 0x001CE3E8 + protected override void Dispose(bool disposing); // 0x001CE9F8 + public override void Flush(); // 0x001CEC08 + private void FlushBytes(); // 0x001CED90 + private void Decode(); // 0x001CECFC + public override void Write(char[] buffer, int index, int count); // 0x001CEE90 + private void LowLevelWrite(char[] buffer, int index, int count); // 0x001CF0E8 + private void LowLevelWrite(string s); // 0x001CF1A0 + public override void Write(char value); // 0x001CF2E8 + public override void Write(char[] buffer); // 0x001CF428 + public override void Write(string value); // 0x001CF524 + public override void Close(); // 0x001CF608 + protected override void Finalize(); // 0x001CF61C +} + +// Namespace: System.IO +[Serializable] +public class StringReader : TextReader // TypeDefIndex: 470 +{ + // Fields + private string source; // 0x08 + private int nextChar; // 0x0C + private int sourceLength; // 0x10 + + // Methods + public void .ctor(string s); // 0x001CF694 + public override void Close(); // 0x001CF794 + protected override void Dispose(bool disposing); // 0x001CF7A8 + public override int Peek(); // 0x001CF7D0 + public override int Read(); // 0x001CF8E8 + public override int Read(out char[] buffer, int index, int count); // 0x001CF93C + public override string ReadLine(); // 0x001CFAD8 + public override string ReadToEnd(); // 0x001CFC08 + private void CheckObjectDisposedException(); // 0x001CF81C +} + +// Namespace: System.IO +[Serializable] +public class StringWriter : TextWriter // TypeDefIndex: 471 +{ + // Fields + private StringBuilder internalString; // 0x10 + private bool disposed; // 0x14 + + // Properties + public override Encoding Encoding { get; } // 0x001CFE40 + + // Methods + public void .ctor(); // 0x001CFC50 + public void .ctor(IFormatProvider formatProvider); // 0x001CFCD4 + public void .ctor(StringBuilder sb); // 0x001CFCCC + public void .ctor(StringBuilder sb, IFormatProvider formatProvider); // 0x001CFD54 + public override void Close(); // 0x001CFEBC + protected override void Dispose(bool disposing); // 0x001CFEEC + public virtual StringBuilder GetStringBuilder(); // 0x001CFF28 + public override string ToString(); // 0x001CFF30 + public override void Write(char value); // 0x001CFF5C + public override void Write(string value); // 0x001D0054 + public override void Write(char[] buffer, int index, int count); // 0x001D014C +} + +// Namespace: System.IO +[Serializable] +public abstract class TextReader : IDisposable // TypeDefIndex: 472 +{ + // Fields + public static readonly TextReader Null; // 0x00 + + // Methods + protected void .ctor(); // 0x001CF78C + private static void .cctor(); // 0x001D2380 + public virtual void Close(); // 0x001D2480 + public void Dispose(); // 0x001D2494 + protected virtual void Dispose(bool disposing); // 0x001CF7C0 + public virtual int Peek(); // 0x001D24A8 + public virtual int Read(); // 0x001D24B0 + public virtual int Read(out char[] buffer, int index, int count); // 0x001D24B8 + public virtual int ReadBlock(out char[] buffer, int index, int count); // 0x001D255C + public virtual string ReadLine(); // 0x001D25C8 + public virtual string ReadToEnd(); // 0x001D2654 + public static TextReader Synchronized(TextReader reader); // 0x001D26E0 +} + +// Namespace: +private class NullTextReader : TextReader // TypeDefIndex: 473 +{ + // Methods + public void .ctor(); // 0x001D23FC + public override string ReadLine(); // 0x001D27E0 +} + +// Namespace: System.IO +[Serializable] +internal class SynchronizedReader : TextReader // TypeDefIndex: 474 +{ + // Fields + private TextReader reader; // 0x08 + + // Methods + public void .ctor(TextReader reader); // 0x001D03C0 + public override void Close(); // 0x001D044C + public override int Peek(); // 0x001D04DC + public override int ReadBlock(char[] buffer, int index, int count); // 0x001D057C + public override string ReadLine(); // 0x001D0640 + public override string ReadToEnd(); // 0x001D06E0 + public override int Read(); // 0x001D0780 + public override int Read(char[] buffer, int index, int count); // 0x001D0820 +} + +// Namespace: System.IO +[Serializable] +public abstract class TextWriter : IDisposable // TypeDefIndex: 475 +{ + // Fields + protected char[] CoreNewLine; // 0x08 + internal IFormatProvider internalFormatProvider; // 0x0C + public static readonly TextWriter Null; // 0x00 + + // Properties + public abstract Encoding Encoding { get; } + public virtual IFormatProvider FormatProvider { get; } // 0x001D2930 + public virtual string NewLine { get; set; } // 0x001D2938 0x001D2948 + + // Methods + protected void .ctor(); // 0x001CE3A4 + protected void .ctor(IFormatProvider formatProvider); // 0x001D27E8 + private static void .cctor(); // 0x001D2834 + public virtual void Close(); // 0x001D2990 + protected virtual void Dispose(bool disposing); // 0x001CFF18 + public void Dispose(); // 0x001D29A4 + public virtual void Flush(); // 0x001D29D8 + public static TextWriter Synchronized(TextWriter writer); // 0x001D29DC + internal static TextWriter Synchronized(TextWriter writer, bool neverClose); // 0x001D2A60 + public virtual void Write(bool value); // 0x001D2B68 + public virtual void Write(char value); // 0x001D2BA8 + public virtual void Write(char[] buffer); // 0x001D2BAC + public virtual void Write(Decimal value); // 0x001D2BE4 + public virtual void Write(double value); // 0x001D2C30 + public virtual void Write(int value); // 0x001D2C74 + public virtual void Write(long value); // 0x001D2D40 + public virtual void Write(object value); // 0x001D2E14 + public virtual void Write(float value); // 0x001D2E5C + public virtual void Write(string value); // 0x001D2EA0 + public virtual void Write(uint value); // 0x001D2EDC + public virtual void Write(ulong value); // 0x001D2F20 + public virtual void Write(string format, object arg0); // 0x001D2F64 + public virtual void Write(string format, object[] arg); // 0x001D300C + public virtual void Write(char[] buffer, int index, int count); // 0x001D30B4 + public virtual void Write(string format, object arg0, object arg1); // 0x001D3270 + public virtual void Write(string format, object arg0, object arg1, object arg2); // 0x001D3320 + public virtual void WriteLine(); // 0x001D33E4 + public virtual void WriteLine(bool value); // 0x001D33F8 + public virtual void WriteLine(char value); // 0x001D3430 + public virtual void WriteLine(char[] buffer); // 0x001D3468 + public virtual void WriteLine(Decimal value); // 0x001D34A0 + public virtual void WriteLine(double value); // 0x001D34E8 + public virtual void WriteLine(int value); // 0x001D352C + public virtual void WriteLine(long value); // 0x001D3564 + public virtual void WriteLine(object value); // 0x001D35A8 + public virtual void WriteLine(float value); // 0x001D35E0 + public virtual void WriteLine(string value); // 0x001D3618 + public virtual void WriteLine(uint value); // 0x001D3650 + public virtual void WriteLine(ulong value); // 0x001D3688 + public virtual void WriteLine(string format, object arg0); // 0x001D36CC + public virtual void WriteLine(string format, object[] arg); // 0x001D3704 + public virtual void WriteLine(char[] buffer, int index, int count); // 0x001D373C + public virtual void WriteLine(string format, object arg0, object arg1); // 0x001D3780 + public virtual void WriteLine(string format, object arg0, object arg1, object arg2); // 0x001D37C4 +} + +// Namespace: +private sealed class NullTextWriter : TextWriter // TypeDefIndex: 476 +{ + // Properties + public override Encoding Encoding { get; } // 0x001D380C + + // Methods + public void .ctor(); // 0x001D28B0 + public override void Write(string s); // 0x001D3888 + public override void Write(char value); // 0x001D388C + public override void Write(char[] value, int index, int count); // 0x001D3890 +} + +// Namespace: System.IO +[Serializable] +internal class SynchronizedWriter : TextWriter // TypeDefIndex: 477 +{ + // Fields + private TextWriter writer; // 0x10 + private bool neverClose; // 0x14 + + // Properties + public override Encoding Encoding { get; } // 0x001D2108 + public override IFormatProvider FormatProvider { get; } // 0x001D21A8 + public override string NewLine { get; set; } // 0x001D2248 0x001D22E8 + + // Methods + public void .ctor(TextWriter writer); // 0x001D08E4 + public void .ctor(TextWriter writer, bool neverClose); // 0x001D08EC + public override void Close(); // 0x001D097C + public override void Flush(); // 0x001D0A20 + public override void Write(bool value); // 0x001D0AB0 + public override void Write(char value); // 0x001D0B48 + public override void Write(char[] value); // 0x001D0BE0 + public override void Write(Decimal value); // 0x001D0C78 + public override void Write(int value); // 0x001D0D40 + public override void Write(long value); // 0x001D0DD8 + public override void Write(object value); // 0x001D0E90 + public override void Write(float value); // 0x001D0F28 + public override void Write(string value); // 0x001D0FC0 + public override void Write(uint value); // 0x001D1058 + public override void Write(ulong value); // 0x001D10F0 + public override void Write(string format, object value); // 0x001D11A8 + public override void Write(string format, object[] value); // 0x001D124C + public override void Write(char[] buffer, int index, int count); // 0x001D12F0 + public override void Write(string format, object arg0, object arg1); // 0x001D13B0 + public override void Write(string format, object arg0, object arg1, object arg2); // 0x001D1470 + public override void WriteLine(); // 0x001D1538 + public override void WriteLine(bool value); // 0x001D15C8 + public override void WriteLine(char value); // 0x001D1660 + public override void WriteLine(char[] value); // 0x001D16F8 + public override void WriteLine(Decimal value); // 0x001D1790 + public override void WriteLine(double value); // 0x001D1858 + public override void WriteLine(int value); // 0x001D1910 + public override void WriteLine(long value); // 0x001D19A8 + public override void WriteLine(object value); // 0x001D1A60 + public override void WriteLine(float value); // 0x001D1AF8 + public override void WriteLine(string value); // 0x001D1B90 + public override void WriteLine(uint value); // 0x001D1C28 + public override void WriteLine(ulong value); // 0x001D1CC0 + public override void WriteLine(string format, object value); // 0x001D1D78 + public override void WriteLine(string format, object[] value); // 0x001D1E1C + public override void WriteLine(char[] buffer, int index, int count); // 0x001D1EC0 + public override void WriteLine(string format, object arg0, object arg1); // 0x001D1F80 + public override void WriteLine(string format, object arg0, object arg1, object arg2); // 0x001D2040 +} + +// Namespace: System.IO +internal class UnexceptionalStreamReader : StreamReader // TypeDefIndex: 478 +{ + // Fields + private static bool[] newline; // 0x00 + private static char newlineChar; // 0x04 + + // Methods + public void .ctor(Stream stream); // 0x001D3894 + public void .ctor(Stream stream, bool detect_encoding_from_bytemarks); // 0x001D3920 + public void .ctor(Stream stream, Encoding encoding); // 0x001D39B4 + public void .ctor(Stream stream, Encoding encoding, bool detect_encoding_from_bytemarks); // 0x001D3A48 + public void .ctor(Stream stream, Encoding encoding, bool detect_encoding_from_bytemarks, int buffer_size); // 0x001D3AF0 + public void .ctor(string path); // 0x001D3BA0 + public void .ctor(string path, bool detect_encoding_from_bytemarks); // 0x001D3C2C + public void .ctor(string path, Encoding encoding); // 0x001D3CC0 + public void .ctor(string path, Encoding encoding, bool detect_encoding_from_bytemarks); // 0x001D3D54 + public void .ctor(string path, Encoding encoding, bool detect_encoding_from_bytemarks, int buffer_size); // 0x001D3DFC + private static void .cctor(); // 0x001D3EAC + public override int Peek(); // 0x001D3F90 + public override int Read(); // 0x001D4074 + public override int Read(out char[] dest_buffer, int index, int count); // 0x001D4158 + private bool CheckEOL(char current); // 0x001D44A4 + public override string ReadLine(); // 0x001D47DC + public override string ReadToEnd(); // 0x001D48C0 +} + +// Namespace: System.IO +internal class UnexceptionalStreamWriter : StreamWriter // TypeDefIndex: 479 +{ + // Methods + public void .ctor(Stream stream); // 0x001D49A4 + public void .ctor(Stream stream, Encoding encoding); // 0x001D4A2C + public void .ctor(Stream stream, Encoding encoding, int bufferSize); // 0x001D4AC8 + public void .ctor(string path); // 0x001D4B68 + public void .ctor(string path, bool append); // 0x001D4BF0 + public void .ctor(string path, bool append, Encoding encoding); // 0x001D4C80 + public void .ctor(string path, bool append, Encoding encoding, int bufferSize); // 0x001D4D28 + public override void Flush(); // 0x001D4DD0 + public override void Write(char[] buffer, int index, int count); // 0x001D4EAC + public override void Write(char value); // 0x001D4FAC + public override void Write(char[] value); // 0x001D5090 + public override void Write(string value); // 0x001D5174 +} + +// Namespace: System.IO +public class UnmanagedMemoryStream : Stream // TypeDefIndex: 480 +{ + // Fields + private long length; // 0x08 + private bool closed; // 0x10 + private long capacity; // 0x18 + private FileAccess fileaccess; // 0x20 + private IntPtr initial_pointer; // 0x24 + private long initial_position; // 0x28 + private long current_position; // 0x30 + private EventHandler Closed; // 0x38 + + // Properties + public override bool CanRead { get; } // 0x001D57E4 + public override bool CanSeek { get; } // 0x001D580C + public override bool CanWrite { get; } // 0x001D5820 + public long Capacity { get; } // 0x001D5848 + public override long Length { get; } // 0x001D58F8 + public override long Position { get; set; } // 0x001D59A8 0x001D5A58 + public void * PositionPointer { get; set; } // 0x001D5BD0 0x001D5CE8 + + // Events + internal event EventHandler Closed { + add; // 0x001D56C4 + remove; // 0x001D5754 + } + + // Methods + protected void .ctor(); // 0x001D5258 + public void .ctor(void * pointer, long length); // 0x001D52E4 + public void .ctor(void * pointer, long length, long capacity, FileAccess access); // 0x001D5604 + public override int Read(out byte[] buffer, int offset, int count); // 0x001D5E14 + public override int ReadByte(); // 0x001D6150 + public override long Seek(long offset, SeekOrigin loc); // 0x001D62B8 + public override void SetLength(long value); // 0x001D6490 + public override void Flush(); // 0x001D6664 + protected override void Dispose(bool disposing); // 0x001D6710 + public override void Write(byte[] buffer, int offset, int count); // 0x001D6744 + public override void WriteByte(byte value); // 0x001D6ADC + protected void Initialize(void * pointer, long length, long capacity, FileAccess access); // 0x001D53A0 +} + +// Namespace: System.Reflection.Emit +internal enum NativeResourceType // TypeDefIndex: 481 +{ + None = 0, + Unmanaged = 1, + Assembly = 2, + Explicit = 3 +} + +// Namespace: System.Reflection.Emit +internal struct RefEmitPermissionSet // TypeDefIndex: 482 +{ + // Fields + public SecurityAction action; // 0x08 + public string pset; // 0x0C + + // Methods + public void .ctor(SecurityAction action, string pset); // 0x0008C884 +} + +// Namespace: System.Reflection.Emit +internal struct MonoResource // TypeDefIndex: 483 +{ + // Fields + public byte[] data; // 0x08 + public string name; // 0x0C + public string filename; // 0x10 + public ResourceAttributes attrs; // 0x14 + public int offset; // 0x18 + public Stream stream; // 0x1C + +} + +// Namespace: System.Reflection.Emit +internal struct MonoWin32Resource // TypeDefIndex: 484 +{ + // Fields + public int res_type; // 0x08 + public int res_id; // 0x0C + public int lang_id; // 0x10 + public byte[] data; // 0x14 + + // Methods + public void .ctor(int res_type, int res_id, int lang_id, byte[] data); // 0x0008C2FC +} + +// Namespace: System.Reflection.Emit +public sealed class AssemblyBuilder : Assembly, _AssemblyBuilder // TypeDefIndex: 485 +{ + // Fields + private const AssemblyBuilderAccess COMPILER_ACCESS = 2048; // 0x00 + private UIntPtr dynamic_assembly; // 0x30 + private MethodInfo entry_point; // 0x34 + private ModuleBuilder[] modules; // 0x38 + private string name; // 0x3C + private string dir; // 0x40 + private CustomAttributeBuilder[] cattrs; // 0x44 + private MonoResource[] resources; // 0x48 + private byte[] public_key; // 0x4C + private string version; // 0x50 + private string culture; // 0x54 + private uint algid; // 0x58 + private uint flags; // 0x5C + private PEFileKinds pekind; // 0x60 + private bool delay_sign; // 0x64 + private uint access; // 0x68 + private Module[] loaded_modules; // 0x6C + private MonoWin32Resource[] win32_resources; // 0x70 + private RefEmitPermissionSet[] permissions_minimum; // 0x74 + private RefEmitPermissionSet[] permissions_optional; // 0x78 + private RefEmitPermissionSet[] permissions_refused; // 0x7C + private PortableExecutableKinds peKind; // 0x80 + private ImageFileMachine machine; // 0x84 + private bool corlib_internal; // 0x88 + private Type[] type_forwarders; // 0x8C + private byte[] pktoken; // 0x90 + internal Type corlib_object_type; // 0x94 + internal Type corlib_value_type; // 0x98 + internal Type corlib_enum_type; // 0x9C + internal Type corlib_void_type; // 0xA0 + private ArrayList resource_writers; // 0xA4 + private Win32VersionResource version_res; // 0xA8 + private bool created; // 0xAC + private bool is_module_only; // 0xAD + private StrongName sn; // 0xB0 + private NativeResourceType native_resource; // 0xB4 + private readonly bool is_compiler_context; // 0xB8 + private string versioninfo_culture; // 0xBC + private ModuleBuilder manifest_module; // 0xC0 + + // Properties + public override string CodeBase { get; } // 0x001BDAD4 + public override MethodInfo EntryPoint { get; } // 0x001BDBBC + public override string Location { get; } // 0x001BDBC4 + public override string ImageRuntimeVersion { get; } // 0x001BDC2C + public override bool ReflectionOnly { get; } // 0x001BDC30 + internal bool IsCompilerContext { get; } // 0x001C1CD4 + internal bool IsSave { get; } // 0x001BD89C + internal bool IsRun { get; } // 0x001C1CDC + internal string AssemblyDir { get; } // 0x001C1CF4 + internal bool IsModuleOnly { get; set; } // 0x001C1CFC 0x001C1D04 + + // Methods + internal void .ctor(AssemblyName n, string directory, AssemblyBuilderAccess access, bool corlib_internal); // 0x001BD250 + private void System.Runtime.InteropServices._AssemblyBuilder.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x001BD8B4 + private void System.Runtime.InteropServices._AssemblyBuilder.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x001BD93C + private void System.Runtime.InteropServices._AssemblyBuilder.GetTypeInfoCount(out uint pcTInfo); // 0x001BD9C4 + private void System.Runtime.InteropServices._AssemblyBuilder.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x001BDA4C + private static void basic_init(AssemblyBuilder ab); // 0x001BD8B0 + public void AddResourceFile(string name, string fileName); // 0x001BDC34 + public void AddResourceFile(string name, string fileName, ResourceAttributes attribute); // 0x001BDC58 + private void AddResourceFile(string name, string fileName, ResourceAttributes attribute, bool fileNeedsToExists); // 0x001BDC78 + internal void AddPermissionRequests(PermissionSet required, PermissionSet optional, PermissionSet refused); // 0x001BE788 + internal void EmbedResourceFile(string name, string fileName); // 0x001BE78C + internal void EmbedResourceFile(string name, string fileName, ResourceAttributes attribute); // 0x001BE7A8 + internal void EmbedResource(string name, byte[] blob, ResourceAttributes attribute); // 0x001BEAFC + internal void AddTypeForwarder(Type t); // 0x001BEC8C + public ModuleBuilder DefineDynamicModule(string name); // 0x001BEE74 + public ModuleBuilder DefineDynamicModule(string name, bool emitSymbolInfo); // 0x001BF268 + public ModuleBuilder DefineDynamicModule(string name, string fileName); // 0x001BF290 + public ModuleBuilder DefineDynamicModule(string name, string fileName, bool emitSymbolInfo); // 0x001BF2B4 + private ModuleBuilder DefineDynamicModule(string name, string fileName, bool emitSymbolInfo, bool transient); // 0x001BEE9C + private Module InternalAddModule(string fileName); // 0x001BF2D4 + internal Module AddModule(string fileName); // 0x001BF2D8 + public IResourceWriter DefineResource(string name, string description, string fileName); // 0x001BF464 + public IResourceWriter DefineResource(string name, string description, string fileName, ResourceAttributes attribute); // 0x001BF484 + private void AddUnmanagedResource(Win32Resource res); // 0x001BF584 + public void DefineUnmanagedResource(byte[] resource); // 0x001BF770 + public void DefineUnmanagedResource(string resourceFileName); // 0x001BF8A4 + public void DefineVersionInfoResource(); // 0x001C0070 + public void DefineVersionInfoResource(string product, string productVersion, string company, string copyright, string trademark); // 0x001C016C + internal void DefineIconResource(string iconFileName); // 0x001C03D0 + private void DefineVersionInfoResourceImpl(string fileName); // 0x001C0898 + public ModuleBuilder GetDynamicModule(string name); // 0x001C143C + public override Type[] GetExportedTypes(); // 0x001C1650 + public override FileStream GetFile(string name); // 0x001C16B8 + public override FileStream[] GetFiles(bool getResourceModules); // 0x001C1720 + internal override Module[] GetModulesInternal(); // 0x001C1788 + internal override Type[] GetTypes(bool exportedOnly); // 0x001C1854 + public override ManifestResourceInfo GetManifestResourceInfo(string resourceName); // 0x001C1B34 + public override string[] GetManifestResourceNames(); // 0x001C1B9C + public override Stream GetManifestResourceStream(string name); // 0x001C1C04 + public override Stream GetManifestResourceStream(Type type, string name); // 0x001C1C6C + internal override Module GetManifestModule(); // 0x001C1D0C + public void Save(string assemblyFileName, PortableExecutableKinds portableExecutableKind, ImageFileMachine imageFileMachine); // 0x001C1D98 + public void Save(string assemblyFileName); // 0x001C2900 + public void SetEntryPoint(MethodInfo entryMethod); // 0x001C2920 + public void SetEntryPoint(MethodInfo entryMethod, PEFileKinds fileKind); // 0x001C2928 + public void SetCustomAttribute(CustomAttributeBuilder customBuilder); // 0x001C2A68 + public void SetCustomAttribute(ConstructorInfo con, byte[] binaryAttribute); // 0x001C3B88 + internal void SetCorlibTypeBuilders(Type corlib_object_type, Type corlib_value_type, Type corlib_enum_type); // 0x001C3D78 + internal void SetCorlibTypeBuilders(Type corlib_object_type, Type corlib_value_type, Type corlib_enum_type, Type corlib_void_type); // 0x001C3D84 + private Exception not_supported(); // 0x001BDB3C + private void check_name_and_filename(string name, string fileName, bool fileNeedsToExists); // 0x001BDE6C + private string create_assembly_version(string version); // 0x001C2F9C + private string GetCultureString(string str); // 0x001C3AA4 + internal override AssemblyName UnprotectedGetName(); // 0x001C3D94 +} + +// Namespace: System.Reflection.Emit +[Serializable] +public enum AssemblyBuilderAccess // TypeDefIndex: 486 +{ + Run = 1, + Save = 2, + RunAndSave = 3, + ReflectionOnly = 6 +} + +// Namespace: System.Reflection.Emit +public sealed class ConstructorBuilder : ConstructorInfo, _ConstructorBuilder // TypeDefIndex: 487 +{ + // Fields + private RuntimeMethodHandle mhandle; // 0x08 + private ILGenerator ilgen; // 0x0C + internal Type[] parameters; // 0x10 + private MethodAttributes attrs; // 0x14 + private MethodImplAttributes iattrs; // 0x18 + private int table_idx; // 0x1C + private CallingConventions call_conv; // 0x20 + private TypeBuilder type; // 0x24 + internal ParameterBuilder[] pinfo; // 0x28 + private CustomAttributeBuilder[] cattrs; // 0x2C + private bool init_locals; // 0x30 + private Type[][] paramModReq; // 0x34 + private Type[][] paramModOpt; // 0x38 + private RefEmitPermissionSet[] permissions; // 0x3C + + // Properties + public override CallingConventions CallingConvention { get; } // 0x001C46D4 + public bool InitLocals { get; set; } // 0x001C46DC 0x001C46E4 + internal TypeBuilder TypeBuilder { get; } // 0x001C46EC + public override RuntimeMethodHandle MethodHandle { get; } // 0x001C4C50 + public override MethodAttributes Attributes { get; } // 0x001C4CB8 + public override Type ReflectedType { get; } // 0x001C4CC0 + public override Type DeclaringType { get; } // 0x001C4CC8 + public Type ReturnType { get; } // 0x001C4CD0 + public override string Name { get; } // 0x001C4CD8 + public string Signature { get; } // 0x001C4DAC + public override Module Module { get; } // 0x001C59CC + private bool IsCompilerContext { get; } // 0x001C47AC + + // Methods + internal void .ctor(TypeBuilder tb, MethodAttributes attributes, CallingConventions callingConvention, Type[] parameterTypes, Type[][] paramModReq, Type[][] paramModOpt); // 0x001C41C4 + private void System.Runtime.InteropServices._ConstructorBuilder.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x001C44B4 + private void System.Runtime.InteropServices._ConstructorBuilder.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x001C453C + private void System.Runtime.InteropServices._ConstructorBuilder.GetTypeInfoCount(out uint pcTInfo); // 0x001C45C4 + private void System.Runtime.InteropServices._ConstructorBuilder.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x001C464C + public override MethodImplAttributes GetMethodImplementationFlags(); // 0x001C46F4 + public override ParameterInfo[] GetParameters(); // 0x001C46FC + internal ParameterInfo[] GetParametersInternal(); // 0x001C4908 + internal override int GetParameterCount(); // 0x001C4AEC + public override object Invoke(object obj, BindingFlags invokeAttr, Binder binder, object[] parameters, CultureInfo culture); // 0x001C4B00 + public override object Invoke(BindingFlags invokeAttr, Binder binder, object[] parameters, CultureInfo culture); // 0x001C4BE8 + public void AddDeclarativeSecurity(SecurityAction action, PermissionSet pset); // 0x001C4E08 + public ParameterBuilder DefineParameter(int iSequence, ParameterAttributes attributes, string strParamName); // 0x001C4E0C + public override bool IsDefined(Type attributeType, bool inherit); // 0x001C5088 + public override object[] GetCustomAttributes(bool inherit); // 0x001C50F0 + public override object[] GetCustomAttributes(Type attributeType, bool inherit); // 0x001C51D8 + public ILGenerator GetILGenerator(); // 0x001C52C8 + public ILGenerator GetILGenerator(int streamSize); // 0x001C52D0 + public void SetCustomAttribute(CustomAttributeBuilder customBuilder); // 0x001C5458 + public void SetCustomAttribute(ConstructorInfo con, byte[] binaryAttribute); // 0x001C57E4 + public void SetImplementationFlags(MethodImplAttributes attributes); // 0x001C5748 + public Module GetModule(); // 0x001C5914 + public MethodToken GetToken(); // 0x001C44A8 + public void SetSymCustomAttribute(string name, byte[] data); // 0x001C5938 + public override string ToString(); // 0x001C59D4 + internal void fixup(); // 0x001C5A90 + internal void GenerateDebugInfo(ISymbolWriter symbolWriter); // 0x001C5C00 + internal override int get_next_table_index(object obj, int table, bool inc); // 0x001C4458 + private void RejectIfCreated(); // 0x001C5ED8 + private Exception not_supported(); // 0x001C4B68 + private Exception not_after_created(); // 0x001C5008 + private Exception not_created(); // 0x001C4888 +} + +// Namespace: System.Reflection.Emit +internal class ConstructorOnTypeBuilderInst : ConstructorInfo // TypeDefIndex: 488 +{ + // Fields + private MonoGenericClass instantiation; // 0x08 + private ConstructorBuilder cb; // 0x0C + + // Properties + public override Type DeclaringType { get; } // 0x001C6034 + public override string Name { get; } // 0x001C603C + public override Type ReflectedType { get; } // 0x001C6064 + public override int MetadataToken { get; } // 0x001C64D4 + public override RuntimeMethodHandle MethodHandle { get; } // 0x001C6688 + public override MethodAttributes Attributes { get; } // 0x001C66A4 + public override CallingConventions CallingConvention { get; } // 0x001C66C8 + public override bool ContainsGenericParameters { get; } // 0x001C6720 + public override bool IsGenericMethodDefinition { get; } // 0x001C6728 + public override bool IsGenericMethod { get; } // 0x001C6730 + + // Methods + public void .ctor(MonoGenericClass instantiation, ConstructorBuilder cb); // 0x001C5FA0 + public override bool IsDefined(Type attributeType, bool inherit); // 0x001C606C + public override object[] GetCustomAttributes(bool inherit); // 0x001C608C + public override object[] GetCustomAttributes(Type attributeType, bool inherit); // 0x001C60BC + public override MethodImplAttributes GetMethodImplementationFlags(); // 0x001C60F4 + public override ParameterInfo[] GetParameters(); // 0x001C6118 + internal override int GetParameterCount(); // 0x001C6630 + public override object Invoke(object obj, BindingFlags invokeAttr, Binder binder, object[] parameters, CultureInfo culture); // 0x001C6660 + public override Type[] GetGenericArguments(); // 0x001C66EC + public override object Invoke(BindingFlags invokeAttr, Binder binder, object[] parameters, CultureInfo culture); // 0x001C6738 +} + +// Namespace: System.Reflection.Emit +public class CustomAttributeBuilder : _CustomAttributeBuilder // TypeDefIndex: 489 +{ + // Fields + private ConstructorInfo ctor; // 0x08 + private byte[] data; // 0x0C + private static Dictionary`2 <>f__switch$map1C; // 0x00 + + // Properties + internal ConstructorInfo Ctor { get; } // 0x001C837C + internal byte[] Data { get; } // 0x001C8384 + + // Methods + internal void .ctor(ConstructorInfo con, byte[] cdata); // 0x001C3CB8 + public void .ctor(ConstructorInfo con, object[] constructorArgs); // 0x001C67C0 + public void .ctor(ConstructorInfo con, object[] constructorArgs, FieldInfo[] namedFields, object[] fieldValues); // 0x001C7FC8 + public void .ctor(ConstructorInfo con, object[] constructorArgs, PropertyInfo[] namedProperties, object[] propertyValues); // 0x001C8078 + public void .ctor(ConstructorInfo con, object[] constructorArgs, PropertyInfo[] namedProperties, object[] propertyValues, FieldInfo[] namedFields, object[] fieldValues); // 0x001C8130 + private void System.Runtime.InteropServices._CustomAttributeBuilder.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x001C815C + private void System.Runtime.InteropServices._CustomAttributeBuilder.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x001C81E4 + private void System.Runtime.InteropServices._CustomAttributeBuilder.GetTypeInfoCount(out uint pcTInfo); // 0x001C826C + private void System.Runtime.InteropServices._CustomAttributeBuilder.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x001C82F4 + private static byte[] GetBlob(Assembly asmb, ConstructorInfo con, object[] constructorArgs, PropertyInfo[] namedProperties, object[] propertyValues, FieldInfo[] namedFields, object[] fieldValues); // 0x001C838C + private bool IsValidType(Type t); // 0x001C8390 + private void Initialize(ConstructorInfo con, object[] constructorArgs, PropertyInfo[] namedProperties, object[] propertyValues, FieldInfo[] namedFields, object[] fieldValues); // 0x001C6898 + internal static int decode_len(byte[] data, int pos, out int rpos); // 0x001C855C + internal static string string_from_bytes(byte[] data, int pos, int len); // 0x001C86D8 + internal string string_arg(); // 0x001C13FC + internal static UnmanagedMarshal get_umarshal(CustomAttributeBuilder customBuilder, bool is_field); // 0x001C87A0 + private static Type elementTypeToType(int elementType); // 0x001C95C4 + private static object decode_cattr_value(Type t, byte[] data, int pos, out int rpos); // 0x001C98C4 + internal static CustomAttributeInfo decode_cattr(CustomAttributeBuilder customBuilder); // 0x001C9CFC + private static ParameterInfo[] GetParameters(ConstructorInfo ctor); // 0x001C84C4 +} + +// Namespace: +internal struct CustomAttributeInfo // TypeDefIndex: 490 +{ + // Fields + public ConstructorInfo ctor; // 0x08 + public object[] ctorArgs; // 0x0C + public string[] namedParamNames; // 0x10 + public object[] namedParamValues; // 0x14 + +} + +// Namespace: System.Reflection.Emit +internal enum TypeKind // TypeDefIndex: 491 +{ + ARRAY = 20, + SZARRAY = 29 +} + +// Namespace: System.Reflection.Emit +internal abstract class DerivedType : Type // TypeDefIndex: 492 +{ + // Fields + internal Type elementType; // 0x0C + + // Properties + public override bool ContainsGenericParameters { get; } // 0x001CB13C + public override GenericParameterAttributes GenericParameterAttributes { get; } // 0x001CB468 + public override StructLayoutAttribute StructLayoutAttribute { get; } // 0x001CB4F0 + public override Assembly Assembly { get; } // 0x001CB578 + public override string AssemblyQualifiedName { get; } // 0x001CB5AC + public override string FullName { get; } // 0x001CB6EC + public override string Name { get; } // 0x001CB73C + public override Guid GUID { get; } // 0x001CB78C + public override Module Module { get; } // 0x001CB814 + public override string Namespace { get; } // 0x001CB848 + public override RuntimeTypeHandle TypeHandle { get; } // 0x001CB87C + public override Type UnderlyingSystemType { get; } // 0x001CB904 + + // Methods + internal void .ctor(Type elementType); // 0x001BCE30 + internal static void create_unmanaged_type(Type type); // 0x001CA7BC + internal abstract string FormatName(string elementName); + public override Type GetInterface(string name, bool ignoreCase); // 0x001CA7C0 + public override Type[] GetInterfaces(); // 0x001CA848 + public override Type GetElementType(); // 0x001CA8D0 + public override EventInfo GetEvent(string name, BindingFlags bindingAttr); // 0x001CA8D8 + public override EventInfo[] GetEvents(BindingFlags bindingAttr); // 0x001CA960 + public override FieldInfo GetField(string name, BindingFlags bindingAttr); // 0x001CA9E8 + public override FieldInfo[] GetFields(BindingFlags bindingAttr); // 0x001CAA70 + public override MemberInfo[] GetMembers(BindingFlags bindingAttr); // 0x001CAAF8 + protected override MethodInfo GetMethodImpl(string name, BindingFlags bindingAttr, Binder binder, CallingConventions callConvention, Type[] types, ParameterModifier[] modifiers); // 0x001CAB80 + public override MethodInfo[] GetMethods(BindingFlags bindingAttr); // 0x001CAC08 + public override Type GetNestedType(string name, BindingFlags bindingAttr); // 0x001CAC90 + public override Type[] GetNestedTypes(BindingFlags bindingAttr); // 0x001CAD18 + public override PropertyInfo[] GetProperties(BindingFlags bindingAttr); // 0x001CADA0 + protected override PropertyInfo GetPropertyImpl(string name, BindingFlags bindingAttr, Binder binder, Type returnType, Type[] types, ParameterModifier[] modifiers); // 0x001CAE28 + protected override ConstructorInfo GetConstructorImpl(BindingFlags bindingAttr, Binder binder, CallingConventions callConvention, Type[] types, ParameterModifier[] modifiers); // 0x001CAEB0 + protected override TypeAttributes GetAttributeFlagsImpl(); // 0x001CAF38 + protected override bool HasElementTypeImpl(); // 0x001CAF64 + protected override bool IsArrayImpl(); // 0x001CAF6C + protected override bool IsByRefImpl(); // 0x001CAF74 + protected override bool IsCOMObjectImpl(); // 0x001CAF7C + protected override bool IsPointerImpl(); // 0x001CAF84 + protected override bool IsPrimitiveImpl(); // 0x001CAF8C + public override ConstructorInfo[] GetConstructors(BindingFlags bindingAttr); // 0x001CAF94 + public override object InvokeMember(string name, BindingFlags invokeAttr, Binder binder, object target, object[] args, ParameterModifier[] modifiers, CultureInfo culture, string[] namedParameters); // 0x001CB01C + public override InterfaceMapping GetInterfaceMap(Type interfaceType); // 0x001CB0A4 + public override bool IsInstanceOfType(object o); // 0x001CB12C + public override bool IsAssignableFrom(Type c); // 0x001CB134 + public override Type MakeGenericType(Type[] typeArguments); // 0x001CB170 + public override Type MakeArrayType(); // 0x001CB1F8 + public override Type MakeArrayType(int rank); // 0x001CB270 + public override Type MakeByRefType(); // 0x001CB334 + public override Type MakePointerType(); // 0x001CB3A4 + public override string ToString(); // 0x001CB418 + public override bool IsDefined(Type attributeType, bool inherit); // 0x001CB91C + public override object[] GetCustomAttributes(bool inherit); // 0x001CB9A4 + public override object[] GetCustomAttributes(Type attributeType, bool inherit); // 0x001CBA2C +} + +// Namespace: System.Reflection.Emit +internal class ArrayType : DerivedType // TypeDefIndex: 493 +{ + // Fields + private int rank; // 0x10 + + // Properties + public override Type BaseType { get; } // 0x001BCED4 + + // Methods + internal void .ctor(Type elementType, int rank); // 0x001BCE14 + protected override bool IsArrayImpl(); // 0x001BCEBC + public override int GetArrayRank(); // 0x001BCEC4 + protected override TypeAttributes GetAttributeFlagsImpl(); // 0x001BCF64 + internal override string FormatName(string elementName); // 0x001BD0C0 +} + +// Namespace: System.Reflection.Emit +internal class ByRefType : DerivedType // TypeDefIndex: 494 +{ + // Properties + public override Type BaseType { get; } // 0x001C3E20 + + // Methods + internal void .ctor(Type elementType); // 0x001C3E14 + protected override bool IsByRefImpl(); // 0x001C3E18 + internal override string FormatName(string elementName); // 0x001C3EB0 + public override Type MakeArrayType(); // 0x001C3F54 + public override Type MakeArrayType(int rank); // 0x001C3FF0 + public override Type MakeByRefType(); // 0x001C408C + public override Type MakePointerType(); // 0x001C4128 +} + +// Namespace: System.Reflection.Emit +internal class PointerType : DerivedType // TypeDefIndex: 495 +{ + // Properties + public override Type BaseType { get; } // 0x0022FFF8 + + // Methods + internal void .ctor(Type elementType); // 0x00213288 + protected override bool IsPointerImpl(); // 0x0022FFF0 + internal override string FormatName(string elementName); // 0x00230088 +} + +// Namespace: System.Reflection.Emit +public class DynamicILInfo // TypeDefIndex: 496 +{ + // Properties + public DynamicMethod DynamicMethod { get; } // 0x001CBAB8 + + // Methods + internal void .ctor(); // 0x001CBAB4 + public int GetTokenFor(byte[] signature); // 0x001CBB40 + public int GetTokenFor(DynamicMethod method); // 0x001CBBC8 + public int GetTokenFor(RuntimeFieldHandle field); // 0x001CBC50 + public int GetTokenFor(RuntimeMethodHandle method); // 0x001CBCD8 + public int GetTokenFor(RuntimeTypeHandle type); // 0x001CBD60 + public int GetTokenFor(string literal); // 0x001CBDE8 + public int GetTokenFor(RuntimeMethodHandle method, RuntimeTypeHandle contextType); // 0x001CBE70 + public void SetCode(byte[] code, int maxStackSize); // 0x001CBEF8 + public void SetCode(void * code, int codeSize, int maxStackSize); // 0x001CBF80 + public void SetExceptions(byte[] exceptions); // 0x001CC008 + public void SetExceptions(void * exceptions, int exceptionsSize); // 0x001CC090 + public void SetLocalSignature(byte[] localSignature); // 0x001CC118 + public void SetLocalSignature(void * localSignature, int signatureSize); // 0x001CC1A0 +} + +// Namespace: System.Reflection.Emit +public sealed class DynamicMethod : MethodInfo // TypeDefIndex: 497 +{ + // Fields + private RuntimeMethodHandle mhandle; // 0x08 + private string name; // 0x0C + private Type returnType; // 0x10 + private Type[] parameters; // 0x14 + private MethodAttributes attributes; // 0x18 + private CallingConventions callingConvention; // 0x1C + private Module module; // 0x20 + private bool skipVisibility; // 0x24 + private bool init_locals; // 0x25 + private ILGenerator ilgen; // 0x28 + private int nrefs; // 0x2C + private object[] refs; // 0x30 + private IntPtr referenced_by; // 0x34 + private Type owner; // 0x38 + private Delegate deleg; // 0x3C + private MonoMethod method; // 0x40 + private ParameterBuilder[] pinfo; // 0x44 + internal bool creating; // 0x48 + + // Properties + public override MethodAttributes Attributes { get; } // 0x001CDB9C + public override CallingConventions CallingConvention { get; } // 0x001CDBA4 + public override Type DeclaringType { get; } // 0x001CDBAC + public bool InitLocals { get; set; } // 0x001CDBB4 0x001CDBBC + public override RuntimeMethodHandle MethodHandle { get; } // 0x001CDBC4 + public override Module Module { get; } // 0x001CDBCC + public override string Name { get; } // 0x001CDBD4 + public override Type ReflectedType { get; } // 0x001CDBDC + public override ParameterInfo ReturnParameter { get; } // 0x001CDBE4 + public override Type ReturnType { get; } // 0x001CDC6C + public override ICustomAttributeProvider ReturnTypeCustomAttributes { get; } // 0x001CDC74 + + // Methods + public void .ctor(string name, Type returnType, Type[] parameterTypes, Module m); // 0x001CC228 + public void .ctor(string name, Type returnType, Type[] parameterTypes, Type owner); // 0x001CC294 + public void .ctor(string name, Type returnType, Type[] parameterTypes, Module m, bool skipVisibility); // 0x001CC260 + public void .ctor(string name, Type returnType, Type[] parameterTypes, Type owner, bool skipVisibility); // 0x001CC2C0 + public void .ctor(string name, MethodAttributes attributes, CallingConventions callingConvention, Type returnType, Type[] parameterTypes, Type owner, bool skipVisibility); // 0x001CC32C + public void .ctor(string name, MethodAttributes attributes, CallingConventions callingConvention, Type returnType, Type[] parameterTypes, Module m, bool skipVisibility); // 0x001CC2EC + public void .ctor(string name, Type returnType, Type[] parameterTypes); // 0x001CC75C + public void .ctor(string name, Type returnType, Type[] parameterTypes, bool restrictedSkipVisibility); // 0x001CC794 + private void .ctor(string name, MethodAttributes attributes, CallingConventions callingConvention, Type returnType, Type[] parameterTypes, Type owner, Module m, bool skipVisibility, bool anonHosted); // 0x001CC3B0 + private void create_dynamic_method(DynamicMethod m); // 0x001CC7CC + private void destroy_dynamic_method(DynamicMethod m); // 0x001CC820 + private void CreateDynMethod(); // 0x001CC874 + protected override void Finalize(); // 0x001CCBB4 + public Delegate CreateDelegate(Type delegateType); // 0x001CCC3C + public Delegate CreateDelegate(Type delegateType, object target); // 0x001CCD14 + public ParameterBuilder DefineParameter(int position, ParameterAttributes attributes, string parameterName); // 0x001CCDE4 + public override MethodInfo GetBaseDefinition(); // 0x001CD06C + public override object[] GetCustomAttributes(bool inherit); // 0x001CD070 + public override object[] GetCustomAttributes(Type attributeType, bool inherit); // 0x001CD0F8 + public DynamicILInfo GetDynamicILInfo(); // 0x001CD180 + public ILGenerator GetILGenerator(); // 0x001CD208 + public ILGenerator GetILGenerator(int streamSize); // 0x001CD210 + public override MethodImplAttributes GetMethodImplementationFlags(); // 0x001CD2D4 + public override ParameterInfo[] GetParameters(); // 0x001CD2DC + public override object Invoke(object obj, BindingFlags invokeAttr, Binder binder, object[] parameters, CultureInfo culture); // 0x001CD4C0 + public override bool IsDefined(Type attributeType, bool inherit); // 0x001CD668 + public override string ToString(); // 0x001CD6F0 + private void RejectIfCreated(); // 0x001CCFB4 + internal int AddRef(object reference); // 0x001CDCFC +} + +// Namespace: +private class AnonHostModuleHolder // TypeDefIndex: 498 +{ + // Fields + public static Module anon_host_module; // 0x00 + + // Methods + public void .ctor(); // 0x00212128 + private static void .cctor(); // 0x00212130 +} + +// Namespace: System.Reflection.Emit +internal class DynamicMethodTokenGenerator : TokenGenerator // TypeDefIndex: 499 +{ + // Fields + private DynamicMethod m; // 0x08 + + // Methods + public void .ctor(DynamicMethod m); // 0x00212224 + public int GetToken(string str); // 0x00212244 + public int GetToken(MethodInfo method, Type[] opt_param_types); // 0x00212278 + public int GetToken(MemberInfo member); // 0x00212300 + public int GetToken(SignatureHelper helper); // 0x00212334 +} + +// Namespace: System.Reflection.Emit +public sealed class EnumBuilder : Type, _EnumBuilder // TypeDefIndex: 500 +{ + // Fields + private TypeBuilder _tb; // 0x0C + private FieldBuilder _underlyingField; // 0x10 + private Type _underlyingType; // 0x14 + + // Properties + public override Assembly Assembly { get; } // 0x002126D8 + public override string AssemblyQualifiedName { get; } // 0x00212704 + public override Type BaseType { get; } // 0x00212730 + public override Type DeclaringType { get; } // 0x00212754 + public override string FullName { get; } // 0x00212778 + public override Guid GUID { get; } // 0x0021279C + public override Module Module { get; } // 0x002127D0 + public override string Name { get; } // 0x002127F4 + public override string Namespace { get; } // 0x00212818 + public override Type ReflectedType { get; } // 0x0021283C + public override RuntimeTypeHandle TypeHandle { get; } // 0x00212860 + public TypeToken TypeToken { get; } // 0x0021288C + public FieldBuilder UnderlyingField { get; } // 0x002128B8 + public override Type UnderlyingSystemType { get; } // 0x002128C0 + + // Methods + internal void .ctor(ModuleBuilder mb, string name, TypeAttributes visibility, Type underlyingType); // 0x00212368 + private void System.Runtime.InteropServices._EnumBuilder.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x002124B0 + private void System.Runtime.InteropServices._EnumBuilder.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x00212538 + private void System.Runtime.InteropServices._EnumBuilder.GetTypeInfoCount(out uint pcTInfo); // 0x002125C0 + private void System.Runtime.InteropServices._EnumBuilder.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x00212648 + internal TypeBuilder GetTypeBuilder(); // 0x002126D0 + public Type CreateType(); // 0x002128C8 + private void setup_enum_type(Type t); // 0x002124AC + public FieldBuilder DefineLiteral(string literalName, object literalValue); // 0x002128F4 + protected override TypeAttributes GetAttributeFlagsImpl(); // 0x00212984 + protected override ConstructorInfo GetConstructorImpl(BindingFlags bindingAttr, Binder binder, CallingConventions callConvention, Type[] types, ParameterModifier[] modifiers); // 0x002129A8 + public override ConstructorInfo[] GetConstructors(BindingFlags bindingAttr); // 0x00212A08 + public override object[] GetCustomAttributes(bool inherit); // 0x00212A3C + public override object[] GetCustomAttributes(Type attributeType, bool inherit); // 0x00212A70 + public override Type GetElementType(); // 0x00212AAC + public override EventInfo GetEvent(string name, BindingFlags bindingAttr); // 0x00212AD8 + public override EventInfo[] GetEvents(); // 0x00212B14 + public override EventInfo[] GetEvents(BindingFlags bindingAttr); // 0x00212B40 + public override FieldInfo GetField(string name, BindingFlags bindingAttr); // 0x00212B74 + public override FieldInfo[] GetFields(BindingFlags bindingAttr); // 0x00212BB0 + public override Type GetInterface(string name, bool ignoreCase); // 0x00212BE4 + public override InterfaceMapping GetInterfaceMap(Type interfaceType); // 0x00212C20 + public override Type[] GetInterfaces(); // 0x00212C5C + public override MemberInfo[] GetMember(string name, MemberTypes type, BindingFlags bindingAttr); // 0x00212C88 + public override MemberInfo[] GetMembers(BindingFlags bindingAttr); // 0x00212CD8 + protected override MethodInfo GetMethodImpl(string name, BindingFlags bindingAttr, Binder binder, CallingConventions callConvention, Type[] types, ParameterModifier[] modifiers); // 0x00212D0C + public override MethodInfo[] GetMethods(BindingFlags bindingAttr); // 0x00212D8C + public override Type GetNestedType(string name, BindingFlags bindingAttr); // 0x00212DC0 + public override Type[] GetNestedTypes(BindingFlags bindingAttr); // 0x00212DFC + public override PropertyInfo[] GetProperties(BindingFlags bindingAttr); // 0x00212E30 + protected override PropertyInfo GetPropertyImpl(string name, BindingFlags bindingAttr, Binder binder, Type returnType, Type[] types, ParameterModifier[] modifiers); // 0x00212E64 + protected override bool HasElementTypeImpl(); // 0x00212F4C + public override object InvokeMember(string name, BindingFlags invokeAttr, Binder binder, object target, object[] args, ParameterModifier[] modifiers, CultureInfo culture, string[] namedParameters); // 0x00212F78 + protected override bool IsArrayImpl(); // 0x00212FF4 + protected override bool IsByRefImpl(); // 0x00212FFC + protected override bool IsCOMObjectImpl(); // 0x00213004 + protected override bool IsPointerImpl(); // 0x0021300C + protected override bool IsPrimitiveImpl(); // 0x00213014 + protected override bool IsValueTypeImpl(); // 0x0021301C + public override bool IsDefined(Type attributeType, bool inherit); // 0x00213024 + public override Type MakeArrayType(); // 0x00213060 + public override Type MakeArrayType(int rank); // 0x002130D8 + public override Type MakeByRefType(); // 0x002131A0 + public override Type MakePointerType(); // 0x00213214 + public void SetCustomAttribute(CustomAttributeBuilder customBuilder); // 0x00213290 + public void SetCustomAttribute(ConstructorInfo con, byte[] binaryAttribute); // 0x002132C4 + private Exception CreateNotSupportedException(); // 0x00212ECC +} + +// Namespace: System.Reflection.Emit +public sealed class EventBuilder : _EventBuilder // TypeDefIndex: 501 +{ + // Fields + internal string name; // 0x08 + private Type type; // 0x0C + private TypeBuilder typeb; // 0x10 + private CustomAttributeBuilder[] cattrs; // 0x14 + internal MethodBuilder add_method; // 0x18 + internal MethodBuilder remove_method; // 0x1C + internal MethodBuilder raise_method; // 0x20 + internal MethodBuilder[] other_methods; // 0x24 + internal EventAttributes attrs; // 0x28 + private int table_idx; // 0x2C + + // Methods + internal void .ctor(TypeBuilder tb, string eventName, EventAttributes eventAttrs, Type eventType); // 0x0021334C + private void System.Runtime.InteropServices._EventBuilder.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x002133F4 + private void System.Runtime.InteropServices._EventBuilder.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x0021347C + private void System.Runtime.InteropServices._EventBuilder.GetTypeInfoCount(out uint pcTInfo); // 0x00213504 + private void System.Runtime.InteropServices._EventBuilder.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x0021358C + internal int get_next_table_index(object obj, int table, bool inc); // 0x002133A4 + public void AddOtherMethod(MethodBuilder mdBuilder); // 0x00213614 + public EventToken GetEventToken(); // 0x00213864 + public void SetAddOnMethod(MethodBuilder mdBuilder); // 0x00213870 + public void SetRaiseMethod(MethodBuilder mdBuilder); // 0x0021392C + public void SetRemoveOnMethod(MethodBuilder mdBuilder); // 0x002139E8 + public void SetCustomAttribute(CustomAttributeBuilder customBuilder); // 0x00213AA4 + public void SetCustomAttribute(ConstructorInfo con, byte[] binaryAttribute); // 0x00213D48 + private void RejectIfCreated(); // 0x0021379C +} + +// Namespace: System.Reflection.Emit +internal class EventOnTypeBuilderInst : EventInfo // TypeDefIndex: 502 +{ + // Fields + private MonoGenericClass instantiation; // 0x0C + private EventBuilder evt; // 0x10 + + // Properties + public override EventAttributes Attributes { get; } // 0x00213EA4 + public override Type DeclaringType { get; } // 0x002142B0 + public override string Name { get; } // 0x002142B8 + public override Type ReflectedType { get; } // 0x002142DC + + // Methods + internal void .ctor(MonoGenericClass instantiation, EventBuilder evt); // 0x00213E7C + public override MethodInfo GetAddMethod(bool nonPublic); // 0x00213EC8 + public override MethodInfo GetRaiseMethod(bool nonPublic); // 0x00213F70 + public override MethodInfo GetRemoveMethod(bool nonPublic); // 0x00214018 + public override MethodInfo[] GetOtherMethods(bool nonPublic); // 0x002140C0 + public override bool IsDefined(Type attributeType, bool inherit); // 0x002142E4 + public override object[] GetCustomAttributes(bool inherit); // 0x0021436C + public override object[] GetCustomAttributes(Type attributeType, bool inherit); // 0x002143F4 +} + +// Namespace: System.Reflection.Emit +[Serializable] +public struct EventToken // TypeDefIndex: 503 +{ + // Fields + internal int tokValue; // 0x08 + public static readonly EventToken Empty; // 0x00 + + // Properties + public int Token { get; } // 0x0008BF94 + + // Methods + internal void .ctor(int val); // 0x0008BF68 + private static void .cctor(); // 0x00214484 + public override bool Equals(object obj); // 0x0008BF70 + public bool Equals(EventToken obj); // 0x0008BF78 + public override int GetHashCode(); // 0x0008BF8C + public static bool op_Equality(EventToken a, EventToken b); // 0x002145A4 + public static bool op_Inequality(EventToken a, EventToken b); // 0x0021463C +} + +// Namespace: System.Reflection.Emit +public sealed class FieldBuilder : FieldInfo, _FieldBuilder // TypeDefIndex: 504 +{ + // Fields + private FieldAttributes attrs; // 0x08 + private Type type; // 0x0C + private string name; // 0x10 + private object def_value; // 0x14 + private int offset; // 0x18 + private int table_idx; // 0x1C + internal TypeBuilder typeb; // 0x20 + private byte[] rva_data; // 0x24 + private CustomAttributeBuilder[] cattrs; // 0x28 + private UnmanagedMarshal marshal_info; // 0x2C + private RuntimeFieldHandle handle; // 0x30 + private Type[] modReq; // 0x34 + private Type[] modOpt; // 0x38 + + // Properties + public override FieldAttributes Attributes { get; } // 0x00214A20 + public override Type DeclaringType { get; } // 0x00214A28 + public override RuntimeFieldHandle FieldHandle { get; } // 0x00214A30 + public override Type FieldType { get; } // 0x00214B18 + public override string Name { get; } // 0x00214B20 + public override Type ReflectedType { get; } // 0x00214B28 + internal override UnmanagedMarshal UMarshal { get; } // 0x002154B8 + public override Module Module { get; } // 0x002154C0 + + // Methods + internal void .ctor(TypeBuilder tb, string fieldName, Type type, FieldAttributes attributes, Type[] modReq, Type[] modOpt); // 0x002146D8 + private void System.Runtime.InteropServices._FieldBuilder.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x00214800 + private void System.Runtime.InteropServices._FieldBuilder.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x00214888 + private void System.Runtime.InteropServices._FieldBuilder.GetTypeInfoCount(out uint pcTInfo); // 0x00214910 + private void System.Runtime.InteropServices._FieldBuilder.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x00214998 + public override object[] GetCustomAttributes(bool inherit); // 0x00214B30 + public override object[] GetCustomAttributes(Type attributeType, bool inherit); // 0x00214C08 + public FieldToken GetToken(); // 0x00214CE8 + public override object GetValue(object obj); // 0x00214CF8 + public override bool IsDefined(Type attributeType, bool inherit); // 0x00214D60 + internal override int GetFieldOffset(); // 0x00214DC8 + internal void SetRVAData(byte[] data); // 0x00214DD0 + public void SetConstant(object defaultValue); // 0x00212968 + public void SetCustomAttribute(CustomAttributeBuilder customBuilder); // 0x00214F50 + public void SetCustomAttribute(ConstructorInfo con, byte[] binaryAttribute); // 0x0021537C + public void SetMarshal(UnmanagedMarshal unmanagedMarshal); // 0x0021540C + public void SetOffset(int iOffset); // 0x00215434 + public override void SetValue(object obj, object val, BindingFlags invokeAttr, Binder binder, CultureInfo culture); // 0x00215450 + private Exception CreateNotSupportedException(); // 0x00214A98 + private void RejectIfCreated(); // 0x00214E88 +} + +// Namespace: System.Reflection.Emit +internal class FieldOnTypeBuilderInst : FieldInfo // TypeDefIndex: 505 +{ + // Fields + internal MonoGenericClass instantiation; // 0x08 + internal FieldBuilder fb; // 0x0C + + // Properties + public override Type DeclaringType { get; } // 0x002154F0 + public override string Name { get; } // 0x002154F8 + public override Type ReflectedType { get; } // 0x0021551C + public override FieldAttributes Attributes { get; } // 0x00215920 + public override RuntimeFieldHandle FieldHandle { get; } // 0x00215944 + public override int MetadataToken { get; } // 0x002159CC + public override Type FieldType { get; } // 0x00215B64 + + // Methods + public void .ctor(MonoGenericClass instantiation, FieldBuilder fb); // 0x002154C8 + public override bool IsDefined(Type attributeType, bool inherit); // 0x00215524 + public override object[] GetCustomAttributes(bool inherit); // 0x002155AC + public override object[] GetCustomAttributes(Type attributeType, bool inherit); // 0x00215634 + public override string ToString(); // 0x002156BC + public override object GetValue(object obj); // 0x00215D10 + public override void SetValue(object obj, object value, BindingFlags invokeAttr, Binder binder, CultureInfo culture); // 0x00215D98 +} + +// Namespace: System.Reflection.Emit +[Serializable] +public struct FieldToken // TypeDefIndex: 506 +{ + // Fields + internal int tokValue; // 0x08 + public static readonly FieldToken Empty; // 0x00 + + // Properties + public int Token { get; } // 0x0008BFC8 + + // Methods + internal void .ctor(int val); // 0x0008BF9C + private static void .cctor(); // 0x00215E28 + public override bool Equals(object obj); // 0x0008BFA4 + public bool Equals(FieldToken obj); // 0x0008BFAC + public override int GetHashCode(); // 0x0008BFC0 + public static bool op_Equality(FieldToken a, FieldToken b); // 0x00215F48 + public static bool op_Inequality(FieldToken a, FieldToken b); // 0x00215FE0 +} + +// Namespace: System.Reflection.Emit +[Serializable] +public enum FlowControl // TypeDefIndex: 507 +{ + Branch = 0, + Break = 1, + Call = 2, + Cond_Branch = 3, + Meta = 4, + Next = 5, + Phi = 6, + Return = 7, + Throw = 8 +} + +// Namespace: System.Reflection.Emit +public sealed class GenericTypeParameterBuilder : Type // TypeDefIndex: 508 +{ + // Fields + private TypeBuilder tbuilder; // 0x0C + private MethodBuilder mbuilder; // 0x10 + private string name; // 0x14 + private int index; // 0x18 + private Type base_type; // 0x1C + private Type[] iface_constraints; // 0x20 + private CustomAttributeBuilder[] cattrs; // 0x24 + private GenericParameterAttributes attrs; // 0x28 + + // Properties + public override Type UnderlyingSystemType { get; } // 0x00216DE4 + public override Assembly Assembly { get; } // 0x00216DE8 + public override string AssemblyQualifiedName { get; } // 0x00216E14 + public override Type BaseType { get; } // 0x00216E1C + public override string FullName { get; } // 0x00216E24 + public override Guid GUID { get; } // 0x00216E2C + public override string Name { get; } // 0x00217034 + public override string Namespace { get; } // 0x0021703C + public override Module Module { get; } // 0x00217044 + public override Type DeclaringType { get; } // 0x00217068 + public override Type ReflectedType { get; } // 0x00217080 + public override RuntimeTypeHandle TypeHandle { get; } // 0x00217098 + public override bool ContainsGenericParameters { get; } // 0x00217210 + public override bool IsGenericParameter { get; } // 0x00217218 + public override bool IsGenericType { get; } // 0x00217220 + public override bool IsGenericTypeDefinition { get; } // 0x00217228 + public override GenericParameterAttributes GenericParameterAttributes { get; } // 0x00217230 + public override int GenericParameterPosition { get; } // 0x0021738C + public override MethodBase DeclaringMethod { get; } // 0x0021767C + + // Methods + internal void .ctor(TypeBuilder tbuilder, MethodBuilder mbuilder, string name, int index); // 0x0021607C + public void SetBaseTypeConstraint(Type baseTypeConstraint); // 0x0021612C + public void SetInterfaceConstraints(Type[] interfaceConstraints); // 0x002161E4 + public void SetGenericParameterAttributes(GenericParameterAttributes genericParameterAttributes); // 0x002161EC + private void initialize(); // 0x00216128 + public override bool IsSubclassOf(Type c); // 0x002161F4 + protected override TypeAttributes GetAttributeFlagsImpl(); // 0x002163D8 + protected override ConstructorInfo GetConstructorImpl(BindingFlags bindingAttr, Binder binder, CallingConventions callConvention, Type[] types, ParameterModifier[] modifiers); // 0x00216514 + public override ConstructorInfo[] GetConstructors(BindingFlags bindingAttr); // 0x0021657C + public override EventInfo GetEvent(string name, BindingFlags bindingAttr); // 0x002165E4 + public override EventInfo[] GetEvents(); // 0x0021664C + public override EventInfo[] GetEvents(BindingFlags bindingAttr); // 0x002166B4 + public override FieldInfo GetField(string name, BindingFlags bindingAttr); // 0x0021671C + public override FieldInfo[] GetFields(BindingFlags bindingAttr); // 0x00216784 + public override Type GetInterface(string name, bool ignoreCase); // 0x002167EC + public override Type[] GetInterfaces(); // 0x00216854 + public override MemberInfo[] GetMembers(BindingFlags bindingAttr); // 0x002168BC + public override MemberInfo[] GetMember(string name, MemberTypes type, BindingFlags bindingAttr); // 0x00216924 + public override MethodInfo[] GetMethods(BindingFlags bindingAttr); // 0x0021698C + protected override MethodInfo GetMethodImpl(string name, BindingFlags bindingAttr, Binder binder, CallingConventions callConvention, Type[] types, ParameterModifier[] modifiers); // 0x002169F4 + public override Type GetNestedType(string name, BindingFlags bindingAttr); // 0x00216A5C + public override Type[] GetNestedTypes(BindingFlags bindingAttr); // 0x00216AC4 + public override PropertyInfo[] GetProperties(BindingFlags bindingAttr); // 0x00216B2C + protected override PropertyInfo GetPropertyImpl(string name, BindingFlags bindingAttr, Binder binder, Type returnType, Type[] types, ParameterModifier[] modifiers); // 0x00216B94 + protected override bool HasElementTypeImpl(); // 0x00216BFC + public override bool IsAssignableFrom(Type c); // 0x00216C04 + public override bool IsInstanceOfType(object o); // 0x00216C6C + protected override bool IsArrayImpl(); // 0x00216CD4 + protected override bool IsByRefImpl(); // 0x00216CDC + protected override bool IsCOMObjectImpl(); // 0x00216CE4 + protected override bool IsPointerImpl(); // 0x00216CEC + protected override bool IsPrimitiveImpl(); // 0x00216CF4 + protected override bool IsValueTypeImpl(); // 0x00216CFC + public override object InvokeMember(string name, BindingFlags invokeAttr, Binder binder, object target, object[] args, ParameterModifier[] modifiers, CultureInfo culture, string[] namedParameters); // 0x00216D14 + public override Type GetElementType(); // 0x00216D7C + public override bool IsDefined(Type attributeType, bool inherit); // 0x00216E94 + public override object[] GetCustomAttributes(bool inherit); // 0x00216EFC + public override object[] GetCustomAttributes(Type attributeType, bool inherit); // 0x00216F64 + public override InterfaceMapping GetInterfaceMap(Type interfaceType); // 0x00216FCC + public override Type[] GetGenericArguments(); // 0x00217100 + public override Type GetGenericTypeDefinition(); // 0x00217188 + public override Type[] GetGenericParameterConstraints(); // 0x00217394 + public void SetCustomAttribute(CustomAttributeBuilder customBuilder); // 0x00217684 + public void SetCustomAttribute(ConstructorInfo con, byte[] binaryAttribute); // 0x0021786C + private Exception not_supported(); // 0x0021636C + public override string ToString(); // 0x002178F4 + public override bool Equals(object o); // 0x002178FC + public override int GetHashCode(); // 0x00217904 + public override Type MakeArrayType(); // 0x0021790C + public override Type MakeArrayType(int rank); // 0x00217984 + public override Type MakeByRefType(); // 0x00217A4C + public override Type MakeGenericType(Type[] typeArguments); // 0x00217AC0 + public override Type MakePointerType(); // 0x00217AC8 +} + +// Namespace: System.Reflection.Emit +internal struct ILExceptionBlock // TypeDefIndex: 509 +{ + // Fields + public const int CATCH = 0; // 0x00 + public const int FILTER = 1; // 0x00 + public const int FINALLY = 2; // 0x00 + public const int FAULT = 4; // 0x00 + public const int FILTER_START = -1; // 0x00 + internal Type extype; // 0x08 + internal int type; // 0x0C + internal int start; // 0x10 + internal int len; // 0x14 + internal int filter_offset; // 0x18 + + // Methods + internal void Debug(); // 0x0008C02C +} + +// Namespace: System.Reflection.Emit +internal struct ILExceptionInfo // TypeDefIndex: 510 +{ + // Fields + private ILExceptionBlock[] handlers; // 0x08 + internal int start; // 0x0C + private int len; // 0x10 + internal Label end; // 0x14 + + // Methods + internal int NumHandlers(); // 0x0008C08C + internal void AddCatch(Type extype, int offset); // 0x0008C0B0 + internal void AddFinally(int offset); // 0x0008C0B8 + internal void AddFault(int offset); // 0x0008C0C0 + internal void AddFilter(int offset); // 0x0008C0C8 + internal void End(int offset); // 0x0008C0D0 + internal int LastClauseType(); // 0x0008C0D8 + internal void PatchFilterClause(int start); // 0x0008C0E0 + internal void Debug(int b); // 0x0008C0E8 + private void add_block(int offset); // 0x0008C0EC +} + +// Namespace: System.Reflection.Emit +internal struct ILTokenInfo // TypeDefIndex: 511 +{ + // Fields + public MemberInfo member; // 0x08 + public int code_pos; // 0x0C + +} + +// Namespace: System.Reflection.Emit +internal interface TokenGenerator // TypeDefIndex: 512 +{ + // Methods + int GetToken(string str); + int GetToken(MemberInfo member); + int GetToken(MethodInfo method, Type[] opt_param_types); + int GetToken(SignatureHelper helper); +} + +// Namespace: System.Reflection.Emit +public class ILGenerator : _ILGenerator // TypeDefIndex: 513 +{ + // Fields + private const int defaultFixupSize = 4; // 0x00 + private const int defaultLabelsSize = 4; // 0x00 + private const int defaultExceptionStackSize = 2; // 0x00 + private static readonly Type void_type; // 0x00 + private byte[] code; // 0x08 + private int code_len; // 0x0C + private int max_stack; // 0x10 + private int cur_stack; // 0x14 + private LocalBuilder[] locals; // 0x18 + private ILExceptionInfo[] ex_handlers; // 0x1C + private int num_token_fixups; // 0x20 + private ILTokenInfo[] token_fixups; // 0x24 + private LabelData[] labels; // 0x28 + private int num_labels; // 0x2C + private LabelFixup[] fixups; // 0x30 + private int num_fixups; // 0x34 + internal Module module; // 0x38 + private int cur_block; // 0x3C + private Stack open_blocks; // 0x40 + private TokenGenerator token_gen; // 0x44 + private ArrayList sequencePointLists; // 0x48 + private SequencePointList currentSequence; // 0x4C + + // Properties + internal bool HasDebugInfo { get; } // 0x0021D9F0 + + // Methods + internal void .ctor(Module m, TokenGenerator token_gen, int size); // 0x002181D8 + private static void .cctor(); // 0x00218284 + private void System.Runtime.InteropServices._ILGenerator.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x0021832C + private void System.Runtime.InteropServices._ILGenerator.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x002183B4 + private void System.Runtime.InteropServices._ILGenerator.GetTypeInfoCount(out uint pcTInfo); // 0x0021843C + private void System.Runtime.InteropServices._ILGenerator.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x002184C4 + private void add_token_fixup(MemberInfo mi); // 0x0021854C + private void make_room(int nbytes); // 0x00218694 + private void emit_int(int val); // 0x00218774 + private void ll_emit(OpCode opcode); // 0x002188A4 + private static int target_len(OpCode opcode); // 0x002189FC + private void InternalEndClause(); // 0x00218A0C + public virtual void BeginCatchBlock(Type exceptionType); // 0x00218BC4 + public virtual void BeginExceptFilterBlock(); // 0x00218ED4 + public virtual Label BeginExceptionBlock(); // 0x0021902C + public virtual void BeginFaultBlock(); // 0x0021920C + public virtual void BeginFinallyBlock(); // 0x002194A0 + public virtual void BeginScope(); // 0x00219734 + public virtual LocalBuilder DeclareLocal(Type localType); // 0x00219738 + public virtual LocalBuilder DeclareLocal(Type localType, bool pinned); // 0x0021974C + public virtual Label DefineLabel(); // 0x00219A1C + public virtual void Emit(OpCode opcode); // 0x00219B50 + public virtual void Emit(OpCode opcode, byte arg); // 0x00219B80 + public virtual void Emit(OpCode opcode, ConstructorInfo con); // 0x00219BF8 + public virtual void Emit(OpCode opcode, double arg); // 0x00219DA4 + public virtual void Emit(OpCode opcode, FieldInfo field); // 0x0021A1E4 + public virtual void Emit(OpCode opcode, short arg); // 0x0021A364 + public virtual void Emit(OpCode opcode, int arg); // 0x0021A424 + public virtual void Emit(OpCode opcode, long arg); // 0x0021A464 + public virtual void Emit(OpCode opcode, Label label); // 0x0021A6E0 + public virtual void Emit(OpCode opcode, Label[] labels); // 0x0021A97C + public virtual void Emit(OpCode opcode, LocalBuilder local); // 0x0021AD20 + public virtual void Emit(OpCode opcode, MethodInfo meth); // 0x0021B1C0 + private void Emit(OpCode opcode, MethodInfo method, int token); // 0x0021B5B0 + public void Emit(OpCode opcode, sbyte arg); // 0x0021B720 + public virtual void Emit(OpCode opcode, SignatureHelper signature); // 0x0021B798 + public virtual void Emit(OpCode opcode, float arg); // 0x0021B8B4 + public virtual void Emit(OpCode opcode, string str); // 0x0021BB5C + public virtual void Emit(OpCode opcode, Type cls); // 0x0021BC78 + public virtual void EmitCall(OpCode opcode, MethodInfo methodInfo, Type[] optionalParameterTypes); // 0x0021BD88 + public virtual void EmitCalli(OpCode opcode, CallingConvention unmanagedCallConv, Type returnType, Type[] parameterTypes); // 0x0021C0F8 + public virtual void EmitCalli(OpCode opcode, CallingConventions callingConvention, Type returnType, Type[] parameterTypes, Type[] optionalParameterTypes); // 0x0021C160 + public virtual void EmitWriteLine(FieldInfo fld); // 0x0021C254 + public virtual void EmitWriteLine(LocalBuilder localBuilder); // 0x0021C580 + public virtual void EmitWriteLine(string value); // 0x0021C844 + public virtual void EndExceptionBlock(); // 0x0021CA54 + public virtual void EndScope(); // 0x0021CD94 + public virtual void MarkLabel(Label loc); // 0x0021CD98 + public virtual void MarkSequencePoint(ISymbolDocumentWriter document, int startLine, int startColumn, int endLine, int endColumn); // 0x0021CF94 + internal void GenerateDebugInfo(ISymbolWriter symbolWriter); // 0x0021D0E0 + public virtual void ThrowException(Type excType); // 0x0021DA00 + public virtual void UsingNamespace(string usingNamespace); // 0x0021DD08 + internal void label_fixup(); // 0x0021DD90 + internal static int Mono_GetCurrentOffset(ILGenerator ig); // 0x0021E0C8 +} + +// Namespace: +private struct LabelFixup // TypeDefIndex: 514 +{ + // Fields + public int offset; // 0x08 + public int pos; // 0x0C + public int label_idx; // 0x10 + +} + +// Namespace: +private struct LabelData // TypeDefIndex: 515 +{ + // Fields + public int addr; // 0x08 + public int maxStack; // 0x0C + + // Methods + public void .ctor(int addr, int maxStack); // 0x0008C0F4 +} + +// Namespace: System.Reflection.Emit +internal class SequencePointList // TypeDefIndex: 516 +{ + // Fields + private const int arrayGrow = 10; // 0x00 + private ISymbolDocumentWriter doc; // 0x08 + private SequencePoint[] points; // 0x0C + private int count; // 0x10 + + // Properties + public ISymbolDocumentWriter Document { get; } // 0x00273D80 + public int StartLine { get; } // 0x00274274 + public int EndLine { get; } // 0x002742B4 + public int StartColumn { get; } // 0x00274304 + public int EndColumn { get; } // 0x00274344 + + // Methods + public void .ctor(ISymbolDocumentWriter doc); // 0x00273D60 + public int[] GetOffsets(); // 0x00273D88 + public int[] GetLines(); // 0x00273E84 + public int[] GetColumns(); // 0x00273F80 + public int[] GetEndLines(); // 0x0027407C + public int[] GetEndColumns(); // 0x00274178 + public void AddSequencePoint(int offset, int line, int col, int endLine, int endCol); // 0x00274394 +} + +// Namespace: System.Reflection.Emit +internal struct SequencePoint // TypeDefIndex: 517 +{ + // Fields + public int Offset; // 0x08 + public int Line; // 0x0C + public int Col; // 0x10 + public int EndLine; // 0x14 + public int EndCol; // 0x18 + +} + +// Namespace: System.Reflection.Emit +[Serializable] +public struct Label // TypeDefIndex: 518 +{ + // Fields + internal int label; // 0x08 + + // Methods + internal void .ctor(int val); // 0x0008C15C + public override bool Equals(object obj); // 0x0008C164 + public bool Equals(Label obj); // 0x0008C16C + public override int GetHashCode(); // 0x0008C180 + public static bool op_Equality(Label a, Label b); // 0x0021E1A4 + public static bool op_Inequality(Label a, Label b); // 0x0021E1B8 +} + +// Namespace: System.Reflection.Emit +public sealed class LocalBuilder : LocalVariableInfo, _LocalBuilder // TypeDefIndex: 519 +{ + // Fields + private string name; // 0x10 + internal ILGenerator ilgen; // 0x14 + private int startOffset; // 0x18 + private int endOffset; // 0x1C + + // Properties + public override Type LocalType { get; } // 0x0021E410 + public override bool IsPinned { get; } // 0x0021E418 + public override int LocalIndex { get; } // 0x0021E420 + internal string Name { get; } // 0x0021E44C + internal int StartOffset { get; } // 0x0021E454 + internal int EndOffset { get; } // 0x0021E45C + + // Methods + internal void .ctor(Type t, ILGenerator ilgen); // 0x002199F4 + private void System.Runtime.InteropServices._LocalBuilder.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x0021E1CC + private void System.Runtime.InteropServices._LocalBuilder.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x0021E254 + private void System.Runtime.InteropServices._LocalBuilder.GetTypeInfoCount(out uint pcTInfo); // 0x0021E2DC + private void System.Runtime.InteropServices._LocalBuilder.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x0021E364 + public void SetLocalSymInfo(string name, int startOffset, int endOffset); // 0x0021E3EC + public void SetLocalSymInfo(string name); // 0x0021E3FC + internal static int Mono_GetLocalIndex(LocalBuilder builder); // 0x0021E428 +} + +// Namespace: System.Reflection.Emit +public sealed class MethodBuilder : MethodInfo, _MethodBuilder // TypeDefIndex: 520 +{ + // Fields + private RuntimeMethodHandle mhandle; // 0x08 + private Type rtype; // 0x0C + internal Type[] parameters; // 0x10 + private MethodAttributes attrs; // 0x14 + private MethodImplAttributes iattrs; // 0x18 + private string name; // 0x1C + private int table_idx; // 0x20 + private byte[] code; // 0x24 + private ILGenerator ilgen; // 0x28 + private TypeBuilder type; // 0x2C + internal ParameterBuilder[] pinfo; // 0x30 + private CustomAttributeBuilder[] cattrs; // 0x34 + private MethodInfo override_method; // 0x38 + private string pi_dll; // 0x3C + private string pi_entry; // 0x40 + private CharSet charset; // 0x44 + private uint extra_flags; // 0x48 + private CallingConvention native_cc; // 0x4C + private CallingConventions call_conv; // 0x50 + private bool init_locals; // 0x54 + private IntPtr generic_container; // 0x58 + internal GenericTypeParameterBuilder[] generic_params; // 0x5C + private Type[] returnModReq; // 0x60 + private Type[] returnModOpt; // 0x64 + private Type[][] paramModReq; // 0x68 + private Type[][] paramModOpt; // 0x6C + private RefEmitPermissionSet[] permissions; // 0x70 + private static Dictionary`2 <>f__switch$map1D; // 0x00 + + // Properties + public override bool ContainsGenericParameters { get; } // 0x0021E9FC + public bool InitLocals { get; set; } // 0x0021EA84 0x0021EA8C + internal TypeBuilder TypeBuilder { get; } // 0x0021EA94 + public override RuntimeMethodHandle MethodHandle { get; } // 0x0021EA9C + public override Type ReturnType { get; } // 0x0021EB84 + public override Type ReflectedType { get; } // 0x0021EB8C + public override Type DeclaringType { get; } // 0x0021EB94 + public override string Name { get; } // 0x0021EB9C + public override MethodAttributes Attributes { get; } // 0x0021EBA4 + public override ICustomAttributeProvider ReturnTypeCustomAttributes { get; } // 0x0021EBAC + public override CallingConventions CallingConvention { get; } // 0x0021EBB4 + public string Signature { get; } // 0x0021EBBC + internal bool BestFitMapping { set; } // 0x0021EC44 + internal bool ThrowOnUnmappableChar { set; } // 0x0021EC80 + internal bool ExactSpelling { set; } // 0x0021ECBC + internal bool SetLastError { set; } // 0x0021ECF0 + public override bool IsGenericMethodDefinition { get; } // 0x002210D0 + public override bool IsGenericMethod { get; } // 0x002210E0 + public override Module Module { get; } // 0x00221704 + + // Methods + internal void .ctor(TypeBuilder tb, string name, MethodAttributes attributes, CallingConventions callingConvention, Type returnType, Type[] returnModReq, Type[] returnModOpt, Type[] parameterTypes, Type[][] paramModReq, Type[][] paramModOpt); // 0x0021E464 + internal void .ctor(TypeBuilder tb, string name, MethodAttributes attributes, CallingConventions callingConvention, Type returnType, Type[] returnModReq, Type[] returnModOpt, Type[] parameterTypes, Type[][] paramModReq, Type[][] paramModOpt, string dllName, string entryName, CallingConvention nativeCConv, CharSet nativeCharset); // 0x0021E768 + private void System.Runtime.InteropServices._MethodBuilder.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x0021E7DC + private void System.Runtime.InteropServices._MethodBuilder.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x0021E864 + private void System.Runtime.InteropServices._MethodBuilder.GetTypeInfoCount(out uint pcTInfo); // 0x0021E8EC + private void System.Runtime.InteropServices._MethodBuilder.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x0021E974 + public MethodToken GetToken(); // 0x0021E758 + public override MethodInfo GetBaseDefinition(); // 0x0021ED2C + public override MethodImplAttributes GetMethodImplementationFlags(); // 0x0021ED30 + public override ParameterInfo[] GetParameters(); // 0x0021ED38 + internal override int GetParameterCount(); // 0x0021EF5C + public Module GetModule(); // 0x0021EF70 + public void CreateMethodBody(byte[] il, int count); // 0x0021EF94 + public override object Invoke(object obj, BindingFlags invokeAttr, Binder binder, object[] parameters, CultureInfo culture); // 0x0021F114 + public override bool IsDefined(Type attributeType, bool inherit); // 0x0021F17C + public override object[] GetCustomAttributes(bool inherit); // 0x0021F1E4 + public override object[] GetCustomAttributes(Type attributeType, bool inherit); // 0x0021F2BC + public ILGenerator GetILGenerator(); // 0x0021F39C + public ILGenerator GetILGenerator(int size); // 0x0021F3A4 + public ParameterBuilder DefineParameter(int position, ParameterAttributes attributes, string strParamName); // 0x0021F608 + internal void check_override(); // 0x0021F974 + internal void fixup(); // 0x0021FA90 + internal void GenerateDebugInfo(ISymbolWriter symbolWriter); // 0x0021FC28 + public void SetCustomAttribute(CustomAttributeBuilder customBuilder); // 0x0021FEEC + public void SetCustomAttribute(ConstructorInfo con, byte[] binaryAttribute); // 0x00220B64 + public void SetImplementationFlags(MethodImplAttributes attributes); // 0x00220C98 + public void AddDeclarativeSecurity(SecurityAction action, PermissionSet pset); // 0x00220CB4 + public void SetMarshal(UnmanagedMarshal unmanagedMarshal); // 0x00220CB8 + public void SetSymCustomAttribute(string name, byte[] data); // 0x00220D4C + public override string ToString(); // 0x00220DE0 + public override bool Equals(object obj); // 0x00221090 + public override int GetHashCode(); // 0x00221098 + internal override int get_next_table_index(object obj, int table, bool inc); // 0x0021E708 + internal void set_override(MethodInfo mdecl); // 0x002210C4 + private void RejectIfCreated(); // 0x0021F7CC + private Exception NotSupported(); // 0x0021EB04 + public override MethodInfo MakeGenericMethod(Type[] typeArguments); // 0x002210CC + public override MethodInfo GetGenericMethodDefinition(); // 0x002210F0 + public override Type[] GetGenericArguments(); // 0x0022118C + public GenericTypeParameterBuilder[] DefineGenericParameters(string[] names); // 0x00221310 + public void SetReturnType(Type returnType); // 0x00221588 + public void SetParameters(Type[] parameterTypes); // 0x00221590 + public void SetSignature(Type returnType, Type[] returnTypeRequiredCustomModifiers, Type[] returnTypeOptionalCustomModifiers, Type[] parameterTypes, Type[][] parameterTypeRequiredCustomModifiers, Type[][] parameterTypeOptionalCustomModifiers); // 0x002216C4 +} + +// Namespace: System.Reflection.Emit +internal class MethodOnTypeBuilderInst : MethodInfo // TypeDefIndex: 521 +{ + // Fields + private MonoGenericClass instantiation; // 0x08 + internal MethodBuilder mb; // 0x0C + private Type[] method_arguments; // 0x10 + private MethodOnTypeBuilderInst generic_method_definition; // 0x14 + + // Properties + public override Type DeclaringType { get; } // 0x00221824 + public override string Name { get; } // 0x0022182C + public override Type ReflectedType { get; } // 0x00221850 + public override Type ReturnType { get; } // 0x00221858 + public override int MetadataToken { get; } // 0x00222290 + public override RuntimeMethodHandle MethodHandle { get; } // 0x002224A4 + public override MethodAttributes Attributes { get; } // 0x0022252C + public override CallingConventions CallingConvention { get; } // 0x00222550 + public override bool ContainsGenericParameters { get; } // 0x002228A4 + public override bool IsGenericMethodDefinition { get; } // 0x002229D8 + public override bool IsGenericMethod { get; } // 0x00222A20 + public override ICustomAttributeProvider ReturnTypeCustomAttributes { get; } // 0x00222AD4 + + // Methods + public void .ctor(MonoGenericClass instantiation, MethodBuilder mb); // 0x0022170C + internal void .ctor(MethodOnTypeBuilderInst gmd, Type[] typeArguments); // 0x00221734 + public override bool IsDefined(Type attributeType, bool inherit); // 0x002219DC + public override object[] GetCustomAttributes(bool inherit); // 0x00221A64 + public override object[] GetCustomAttributes(Type attributeType, bool inherit); // 0x00221AEC + public override string ToString(); // 0x00221B74 + public override MethodImplAttributes GetMethodImplementationFlags(); // 0x00221ED8 + public override ParameterInfo[] GetParameters(); // 0x00221EFC + internal override int GetParameterCount(); // 0x002223EC + public override object Invoke(object obj, BindingFlags invokeAttr, Binder binder, object[] parameters, CultureInfo culture); // 0x0022241C + public override MethodInfo MakeGenericMethod(Type[] typeArguments); // 0x00222574 + public override Type[] GetGenericArguments(); // 0x002227B0 + public override MethodInfo GetGenericMethodDefinition(); // 0x00222890 + public override MethodInfo GetBaseDefinition(); // 0x00222A4C +} + +// Namespace: System.Reflection.Emit +public sealed class MethodRental : _MethodRental // TypeDefIndex: 522 +{ + // Fields + public const int JitImmediate = 1; // 0x00 + public const int JitOnDemand = 0; // 0x00 + + // Methods + private void .ctor(); // 0x00222B5C + private void System.Runtime.InteropServices._MethodRental.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x00222B64 + private void System.Runtime.InteropServices._MethodRental.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x00222BEC + private void System.Runtime.InteropServices._MethodRental.GetTypeInfoCount(out uint pcTInfo); // 0x00222C74 + private void System.Runtime.InteropServices._MethodRental.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x00222CFC + public static void SwapMethodBody(Type cls, int methodtoken, IntPtr rgIL, int methodSize, int flags); // 0x00222D84 +} + +// Namespace: System.Reflection.Emit +[Serializable] +public struct MethodToken // TypeDefIndex: 523 +{ + // Fields + internal int tokValue; // 0x08 + public static readonly MethodToken Empty; // 0x00 + + // Properties + public int Token { get; } // 0x0008C1B8 + + // Methods + internal void .ctor(int val); // 0x0008C18C + private static void .cctor(); // 0x00222F98 + public override bool Equals(object obj); // 0x0008C194 + public bool Equals(MethodToken obj); // 0x0008C19C + public override int GetHashCode(); // 0x0008C1B0 + public static bool op_Equality(MethodToken a, MethodToken b); // 0x002230B8 + public static bool op_Inequality(MethodToken a, MethodToken b); // 0x00223150 +} + +// Namespace: System.Reflection.Emit +public class ModuleBuilder : Module, _ModuleBuilder // TypeDefIndex: 524 +{ + // Fields + private UIntPtr dynamic_image; // 0x24 + private int num_types; // 0x28 + private TypeBuilder[] types; // 0x2C + private CustomAttributeBuilder[] cattrs; // 0x30 + private byte[] guid; // 0x34 + private int table_idx; // 0x38 + internal AssemblyBuilder assemblyb; // 0x3C + private MethodBuilder[] global_methods; // 0x40 + private FieldBuilder[] global_fields; // 0x44 + private bool is_main; // 0x48 + private MonoResource[] resources; // 0x4C + private TypeBuilder global_type; // 0x50 + private Type global_type_created; // 0x54 + private Hashtable name_cache; // 0x58 + private Hashtable us_string_cache; // 0x5C + private int[] table_indexes; // 0x60 + private bool transient; // 0x64 + private ModuleBuilderTokenGenerator token_gen; // 0x68 + private Hashtable resource_writers; // 0x6C + private ISymbolWriter symbolWriter; // 0x70 + private static readonly char[] type_modifiers; // 0x00 + + // Properties + public override string FullyQualifiedName { get; } // 0x00223C10 + internal string FileName { get; } // 0x00228034 + internal bool IsMain { set; } // 0x0022803C + + // Methods + internal void .ctor(AssemblyBuilder assb, string name, string fullyqname, bool emitSymbolInfo, bool transient); // 0x002231EC + private static void .cctor(); // 0x002238F8 + private void System.Runtime.InteropServices._ModuleBuilder.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x002239F0 + private void System.Runtime.InteropServices._ModuleBuilder.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x00223A78 + private void System.Runtime.InteropServices._ModuleBuilder.GetTypeInfoCount(out uint pcTInfo); // 0x00223B00 + private void System.Runtime.InteropServices._ModuleBuilder.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x00223B88 + private static void basic_init(ModuleBuilder ab); // 0x00223858 + private static void set_wrappers_type(ModuleBuilder mb, Type ab); // 0x002238F4 + public bool IsTransient(); // 0x00223C18 + public void CreateGlobalFunctions(); // 0x00223C20 + public FieldBuilder DefineInitializedData(string name, byte[] data, FieldAttributes attributes); // 0x00223CE8 + public FieldBuilder DefineUninitializedData(string name, int size, FieldAttributes attributes); // 0x00223DE0 + private void addGlobalMethod(MethodBuilder mb); // 0x0022434C + public MethodBuilder DefineGlobalMethod(string name, MethodAttributes attributes, Type returnType, Type[] parameterTypes); // 0x002244E4 + public MethodBuilder DefineGlobalMethod(string name, MethodAttributes attributes, CallingConventions callingConvention, Type returnType, Type[] parameterTypes); // 0x0022451C + public MethodBuilder DefineGlobalMethod(string name, MethodAttributes attributes, CallingConventions callingConvention, Type returnType, Type[] requiredReturnTypeCustomModifiers, Type[] optionalReturnTypeCustomModifiers, Type[] parameterTypes, Type[][] requiredParameterTypeCustomModifiers, Type[][] optionalParameterTypeCustomModifiers); // 0x00224558 + public MethodBuilder DefinePInvokeMethod(string name, string dllName, MethodAttributes attributes, CallingConventions callingConvention, Type returnType, Type[] parameterTypes, CallingConvention nativeCallConv, CharSet nativeCharSet); // 0x00224730 + public MethodBuilder DefinePInvokeMethod(string name, string dllName, string entryName, MethodAttributes attributes, CallingConventions callingConvention, Type returnType, Type[] parameterTypes, CallingConvention nativeCallConv, CharSet nativeCharSet); // 0x00224770 + public TypeBuilder DefineType(string name); // 0x00224944 + public TypeBuilder DefineType(string name, TypeAttributes attr); // 0x0022494C + public TypeBuilder DefineType(string name, TypeAttributes attr, Type parent); // 0x00224A48 + private void AddType(TypeBuilder tb); // 0x00224A70 + private TypeBuilder DefineType(string name, TypeAttributes attr, Type parent, Type[] interfaces, PackingSize packingSize, int typesize); // 0x002241CC + internal void RegisterTypeName(TypeBuilder tb, string name); // 0x00224BB0 + internal TypeBuilder GetRegisteredType(string name); // 0x00224BF4 + public TypeBuilder DefineType(string name, TypeAttributes attr, Type parent, Type[] interfaces); // 0x00224A20 + public TypeBuilder DefineType(string name, TypeAttributes attr, Type parent, int typesize); // 0x00224CA8 + public TypeBuilder DefineType(string name, TypeAttributes attr, Type parent, PackingSize packsize); // 0x00224CD0 + public TypeBuilder DefineType(string name, TypeAttributes attr, Type parent, PackingSize packingSize, int typesize); // 0x00224CF8 + public MethodInfo GetArrayMethod(Type arrayClass, string methodName, CallingConventions callingConvention, Type returnType, Type[] parameterTypes); // 0x00224D20 + public EnumBuilder DefineEnum(string name, TypeAttributes visibility, Type underlyingType); // 0x00224DC4 + public override Type GetType(string className); // 0x00224F30 + public override Type GetType(string className, bool ignoreCase); // 0x00224F60 + private TypeBuilder search_in_array(TypeBuilder[] arr, int validElementsInArray, string className); // 0x00224F90 + private TypeBuilder search_nested_in_array(TypeBuilder[] arr, int validElementsInArray, string className); // 0x00225108 + private static Type create_modified_type(TypeBuilder tb, string modifiers); // 0x00225280 + private TypeBuilder GetMaybeNested(TypeBuilder t, string className); // 0x00225284 + public override Type GetType(string className, bool throwOnError, bool ignoreCase); // 0x0022539C + internal int get_next_table_index(object obj, int table, bool inc); // 0x002236F8 + public void SetCustomAttribute(CustomAttributeBuilder customBuilder); // 0x002257C0 + public void SetCustomAttribute(ConstructorInfo con, byte[] binaryAttribute); // 0x00225958 + public ISymbolWriter GetSymWriter(); // 0x002259E0 + public ISymbolDocumentWriter DefineDocument(string url, Guid language, Guid languageVendor, Guid documentType); // 0x002259E8 + public override Type[] GetTypes(); // 0x00225B48 + public IResourceWriter DefineResource(string name, string description, ResourceAttributes attribute); // 0x00225D48 + public IResourceWriter DefineResource(string name, string description); // 0x002260FC + public void DefineUnmanagedResource(byte[] resource); // 0x00226118 + public void DefineUnmanagedResource(string resourceFileName); // 0x002261F0 + public void DefineManifestResource(string name, Stream stream, ResourceAttributes attribute); // 0x00226424 + public void SetSymCustomAttribute(string name, byte[] data); // 0x002267B8 + public void SetUserEntryPoint(MethodInfo entryPoint); // 0x00226840 + public MethodToken GetMethodToken(MethodInfo method); // 0x002269A4 + public MethodToken GetArrayMethodToken(Type arrayClass, string methodName, CallingConventions callingConvention, Type returnType, Type[] parameterTypes); // 0x00226B70 + public MethodToken GetConstructorToken(ConstructorInfo con); // 0x00226BA4 + public FieldToken GetFieldToken(FieldInfo field); // 0x00226C60 + public SignatureToken GetSignatureToken(byte[] sigBytes, int sigLength); // 0x00226DA4 + public SignatureToken GetSignatureToken(SignatureHelper sigHelper); // 0x00226E2C + public StringToken GetStringConstant(string str); // 0x00226F70 + public TypeToken GetTypeToken(Type type); // 0x002271CC + public TypeToken GetTypeToken(string name); // 0x0022744C + private static int getUSIndex(ModuleBuilder mb, string str); // 0x0022747C + private static int getToken(ModuleBuilder mb, object obj); // 0x00227480 + private static int getMethodToken(ModuleBuilder mb, MethodInfo method, Type[] opt_param_types); // 0x00227484 + internal int GetToken(string str); // 0x0022702C + internal int GetToken(MemberInfo member); // 0x00226AE8 + internal int GetToken(MethodInfo method, Type[] opt_param_types); // 0x00227488 + internal int GetToken(SignatureHelper helper); // 0x00226EE8 + internal void RegisterToken(object obj, int token); // 0x0021E764 + internal TokenGenerator GetTokenGenerator(); // 0x0021F584 + private static void build_metadata(ModuleBuilder mb); // 0x00227538 + private void WriteToFile(IntPtr handle); // 0x0022753C + internal void Save(); // 0x00227540 + internal void CreateGlobalType(); // 0x0022385C + internal override Guid GetModuleVersionId(); // 0x00228044 + internal static Guid Mono_GetGuid(ModuleBuilder mb); // 0x00228064 +} + +// Namespace: System.Reflection.Emit +internal class ModuleBuilderTokenGenerator : TokenGenerator // TypeDefIndex: 525 +{ + // Fields + private ModuleBuilder mb; // 0x08 + + // Methods + public void .ctor(ModuleBuilder mb); // 0x00227518 + public int GetToken(string str); // 0x002280A0 + public int GetToken(MemberInfo member); // 0x002280D0 + public int GetToken(MethodInfo method, Type[] opt_param_types); // 0x00228100 + public int GetToken(SignatureHelper helper); // 0x00228138 +} + +// Namespace: System.Reflection +internal class MonoArrayMethod : MethodInfo // TypeDefIndex: 526 +{ + // Fields + internal RuntimeMethodHandle mhandle; // 0x08 + internal Type parent; // 0x0C + internal Type ret; // 0x10 + internal Type[] parameters; // 0x14 + internal string name; // 0x18 + internal int table_idx; // 0x1C + internal CallingConventions call_conv; // 0x20 + + // Properties + public override Type ReturnType { get; } // 0x00285B64 + public override ICustomAttributeProvider ReturnTypeCustomAttributes { get; } // 0x00285B6C + public override RuntimeMethodHandle MethodHandle { get; } // 0x00285C64 + public override MethodAttributes Attributes { get; } // 0x00285C6C + public override Type ReflectedType { get; } // 0x00285C74 + public override Type DeclaringType { get; } // 0x00285C7C + public override string Name { get; } // 0x00285C84 + + // Methods + internal void .ctor(Type arrayClass, string methodName, CallingConventions callingConvention, Type returnType, Type[] parameterTypes); // 0x00285A74 + public override MethodInfo GetBaseDefinition(); // 0x00285B60 + public override MethodImplAttributes GetMethodImplementationFlags(); // 0x00285B74 + public override ParameterInfo[] GetParameters(); // 0x00285B7C + public override object Invoke(object obj, BindingFlags invokeAttr, Binder binder, object[] parameters, CultureInfo culture); // 0x00285BDC + public override bool IsDefined(Type attributeType, bool inherit); // 0x00285C8C + public override object[] GetCustomAttributes(bool inherit); // 0x00285D20 + public override object[] GetCustomAttributes(Type attributeType, bool inherit); // 0x00285DAC + public override string ToString(); // 0x00285E40 +} + +// Namespace: System.Reflection.Emit +public struct OpCode // TypeDefIndex: 527 +{ + // Fields + internal byte op1; // 0x08 + internal byte op2; // 0x09 + private byte push; // 0x0A + private byte pop; // 0x0B + private byte size; // 0x0C + private byte type; // 0x0D + private byte args; // 0x0E + private byte flow; // 0x0F + + // Properties + public string Name { get; } // 0x0008C390 + public int Size { get; } // 0x0008C398 + public OpCodeType OpCodeType { get; } // 0x0008C3A0 + public OperandType OperandType { get; } // 0x0008C3A8 + public FlowControl FlowControl { get; } // 0x0008C3B0 + public StackBehaviour StackBehaviourPop { get; } // 0x0008C3B8 + public StackBehaviour StackBehaviourPush { get; } // 0x0008C3C0 + public short Value { get; } // 0x0008C3C8 + + // Methods + internal void .ctor(int p, int q); // 0x0008C30C + public override int GetHashCode(); // 0x0008C348 + public override bool Equals(object obj); // 0x0008C350 + public bool Equals(OpCode obj); // 0x0008C358 + public override string ToString(); // 0x0008C388 + public static bool op_Equality(OpCode a, OpCode b); // 0x0021B580 + public static bool op_Inequality(OpCode a, OpCode b); // 0x00228438 +} + +// Namespace: System.Reflection.Emit +internal class OpCodeNames // TypeDefIndex: 528 +{ + // Fields + internal static readonly string[] names; // 0x00 + + // Methods + public void .ctor(); // 0x00228468 + private static void .cctor(); // 0x00228470 +} + +// Namespace: System.Reflection.Emit +[Serializable] +public enum OpCodeType // TypeDefIndex: 529 +{ + Annotation = 0, + Macro = 1, + Nternal = 2, + Objmodel = 3, + Prefix = 4, + Primitive = 5 +} + +// Namespace: System.Reflection.Emit +public class OpCodes // TypeDefIndex: 530 +{ + // Fields + public static readonly OpCode Nop; // 0x00 + public static readonly OpCode Break; // 0x08 + public static readonly OpCode Ldarg_0; // 0x10 + public static readonly OpCode Ldarg_1; // 0x18 + public static readonly OpCode Ldarg_2; // 0x20 + public static readonly OpCode Ldarg_3; // 0x28 + public static readonly OpCode Ldloc_0; // 0x30 + public static readonly OpCode Ldloc_1; // 0x38 + public static readonly OpCode Ldloc_2; // 0x40 + public static readonly OpCode Ldloc_3; // 0x48 + public static readonly OpCode Stloc_0; // 0x50 + public static readonly OpCode Stloc_1; // 0x58 + public static readonly OpCode Stloc_2; // 0x60 + public static readonly OpCode Stloc_3; // 0x68 + public static readonly OpCode Ldarg_S; // 0x70 + public static readonly OpCode Ldarga_S; // 0x78 + public static readonly OpCode Starg_S; // 0x80 + public static readonly OpCode Ldloc_S; // 0x88 + public static readonly OpCode Ldloca_S; // 0x90 + public static readonly OpCode Stloc_S; // 0x98 + public static readonly OpCode Ldnull; // 0xA0 + public static readonly OpCode Ldc_I4_M1; // 0xA8 + public static readonly OpCode Ldc_I4_0; // 0xB0 + public static readonly OpCode Ldc_I4_1; // 0xB8 + public static readonly OpCode Ldc_I4_2; // 0xC0 + public static readonly OpCode Ldc_I4_3; // 0xC8 + public static readonly OpCode Ldc_I4_4; // 0xD0 + public static readonly OpCode Ldc_I4_5; // 0xD8 + public static readonly OpCode Ldc_I4_6; // 0xE0 + public static readonly OpCode Ldc_I4_7; // 0xE8 + public static readonly OpCode Ldc_I4_8; // 0xF0 + public static readonly OpCode Ldc_I4_S; // 0xF8 + public static readonly OpCode Ldc_I4; // 0x100 + public static readonly OpCode Ldc_I8; // 0x108 + public static readonly OpCode Ldc_R4; // 0x110 + public static readonly OpCode Ldc_R8; // 0x118 + public static readonly OpCode Dup; // 0x120 + public static readonly OpCode Pop; // 0x128 + public static readonly OpCode Jmp; // 0x130 + public static readonly OpCode Call; // 0x138 + public static readonly OpCode Calli; // 0x140 + public static readonly OpCode Ret; // 0x148 + public static readonly OpCode Br_S; // 0x150 + public static readonly OpCode Brfalse_S; // 0x158 + public static readonly OpCode Brtrue_S; // 0x160 + public static readonly OpCode Beq_S; // 0x168 + public static readonly OpCode Bge_S; // 0x170 + public static readonly OpCode Bgt_S; // 0x178 + public static readonly OpCode Ble_S; // 0x180 + public static readonly OpCode Blt_S; // 0x188 + public static readonly OpCode Bne_Un_S; // 0x190 + public static readonly OpCode Bge_Un_S; // 0x198 + public static readonly OpCode Bgt_Un_S; // 0x1A0 + public static readonly OpCode Ble_Un_S; // 0x1A8 + public static readonly OpCode Blt_Un_S; // 0x1B0 + public static readonly OpCode Br; // 0x1B8 + public static readonly OpCode Brfalse; // 0x1C0 + public static readonly OpCode Brtrue; // 0x1C8 + public static readonly OpCode Beq; // 0x1D0 + public static readonly OpCode Bge; // 0x1D8 + public static readonly OpCode Bgt; // 0x1E0 + public static readonly OpCode Ble; // 0x1E8 + public static readonly OpCode Blt; // 0x1F0 + public static readonly OpCode Bne_Un; // 0x1F8 + public static readonly OpCode Bge_Un; // 0x200 + public static readonly OpCode Bgt_Un; // 0x208 + public static readonly OpCode Ble_Un; // 0x210 + public static readonly OpCode Blt_Un; // 0x218 + public static readonly OpCode Switch; // 0x220 + public static readonly OpCode Ldind_I1; // 0x228 + public static readonly OpCode Ldind_U1; // 0x230 + public static readonly OpCode Ldind_I2; // 0x238 + public static readonly OpCode Ldind_U2; // 0x240 + public static readonly OpCode Ldind_I4; // 0x248 + public static readonly OpCode Ldind_U4; // 0x250 + public static readonly OpCode Ldind_I8; // 0x258 + public static readonly OpCode Ldind_I; // 0x260 + public static readonly OpCode Ldind_R4; // 0x268 + public static readonly OpCode Ldind_R8; // 0x270 + public static readonly OpCode Ldind_Ref; // 0x278 + public static readonly OpCode Stind_Ref; // 0x280 + public static readonly OpCode Stind_I1; // 0x288 + public static readonly OpCode Stind_I2; // 0x290 + public static readonly OpCode Stind_I4; // 0x298 + public static readonly OpCode Stind_I8; // 0x2A0 + public static readonly OpCode Stind_R4; // 0x2A8 + public static readonly OpCode Stind_R8; // 0x2B0 + public static readonly OpCode Add; // 0x2B8 + public static readonly OpCode Sub; // 0x2C0 + public static readonly OpCode Mul; // 0x2C8 + public static readonly OpCode Div; // 0x2D0 + public static readonly OpCode Div_Un; // 0x2D8 + public static readonly OpCode Rem; // 0x2E0 + public static readonly OpCode Rem_Un; // 0x2E8 + public static readonly OpCode And; // 0x2F0 + public static readonly OpCode Or; // 0x2F8 + public static readonly OpCode Xor; // 0x300 + public static readonly OpCode Shl; // 0x308 + public static readonly OpCode Shr; // 0x310 + public static readonly OpCode Shr_Un; // 0x318 + public static readonly OpCode Neg; // 0x320 + public static readonly OpCode Not; // 0x328 + public static readonly OpCode Conv_I1; // 0x330 + public static readonly OpCode Conv_I2; // 0x338 + public static readonly OpCode Conv_I4; // 0x340 + public static readonly OpCode Conv_I8; // 0x348 + public static readonly OpCode Conv_R4; // 0x350 + public static readonly OpCode Conv_R8; // 0x358 + public static readonly OpCode Conv_U4; // 0x360 + public static readonly OpCode Conv_U8; // 0x368 + public static readonly OpCode Callvirt; // 0x370 + public static readonly OpCode Cpobj; // 0x378 + public static readonly OpCode Ldobj; // 0x380 + public static readonly OpCode Ldstr; // 0x388 + public static readonly OpCode Newobj; // 0x390 + public static readonly OpCode Castclass; // 0x398 + public static readonly OpCode Isinst; // 0x3A0 + public static readonly OpCode Conv_R_Un; // 0x3A8 + public static readonly OpCode Unbox; // 0x3B0 + public static readonly OpCode Throw; // 0x3B8 + public static readonly OpCode Ldfld; // 0x3C0 + public static readonly OpCode Ldflda; // 0x3C8 + public static readonly OpCode Stfld; // 0x3D0 + public static readonly OpCode Ldsfld; // 0x3D8 + public static readonly OpCode Ldsflda; // 0x3E0 + public static readonly OpCode Stsfld; // 0x3E8 + public static readonly OpCode Stobj; // 0x3F0 + public static readonly OpCode Conv_Ovf_I1_Un; // 0x3F8 + public static readonly OpCode Conv_Ovf_I2_Un; // 0x400 + public static readonly OpCode Conv_Ovf_I4_Un; // 0x408 + public static readonly OpCode Conv_Ovf_I8_Un; // 0x410 + public static readonly OpCode Conv_Ovf_U1_Un; // 0x418 + public static readonly OpCode Conv_Ovf_U2_Un; // 0x420 + public static readonly OpCode Conv_Ovf_U4_Un; // 0x428 + public static readonly OpCode Conv_Ovf_U8_Un; // 0x430 + public static readonly OpCode Conv_Ovf_I_Un; // 0x438 + public static readonly OpCode Conv_Ovf_U_Un; // 0x440 + public static readonly OpCode Box; // 0x448 + public static readonly OpCode Newarr; // 0x450 + public static readonly OpCode Ldlen; // 0x458 + public static readonly OpCode Ldelema; // 0x460 + public static readonly OpCode Ldelem_I1; // 0x468 + public static readonly OpCode Ldelem_U1; // 0x470 + public static readonly OpCode Ldelem_I2; // 0x478 + public static readonly OpCode Ldelem_U2; // 0x480 + public static readonly OpCode Ldelem_I4; // 0x488 + public static readonly OpCode Ldelem_U4; // 0x490 + public static readonly OpCode Ldelem_I8; // 0x498 + public static readonly OpCode Ldelem_I; // 0x4A0 + public static readonly OpCode Ldelem_R4; // 0x4A8 + public static readonly OpCode Ldelem_R8; // 0x4B0 + public static readonly OpCode Ldelem_Ref; // 0x4B8 + public static readonly OpCode Stelem_I; // 0x4C0 + public static readonly OpCode Stelem_I1; // 0x4C8 + public static readonly OpCode Stelem_I2; // 0x4D0 + public static readonly OpCode Stelem_I4; // 0x4D8 + public static readonly OpCode Stelem_I8; // 0x4E0 + public static readonly OpCode Stelem_R4; // 0x4E8 + public static readonly OpCode Stelem_R8; // 0x4F0 + public static readonly OpCode Stelem_Ref; // 0x4F8 + public static readonly OpCode Ldelem; // 0x500 + public static readonly OpCode Stelem; // 0x508 + public static readonly OpCode Unbox_Any; // 0x510 + public static readonly OpCode Conv_Ovf_I1; // 0x518 + public static readonly OpCode Conv_Ovf_U1; // 0x520 + public static readonly OpCode Conv_Ovf_I2; // 0x528 + public static readonly OpCode Conv_Ovf_U2; // 0x530 + public static readonly OpCode Conv_Ovf_I4; // 0x538 + public static readonly OpCode Conv_Ovf_U4; // 0x540 + public static readonly OpCode Conv_Ovf_I8; // 0x548 + public static readonly OpCode Conv_Ovf_U8; // 0x550 + public static readonly OpCode Refanyval; // 0x558 + public static readonly OpCode Ckfinite; // 0x560 + public static readonly OpCode Mkrefany; // 0x568 + public static readonly OpCode Ldtoken; // 0x570 + public static readonly OpCode Conv_U2; // 0x578 + public static readonly OpCode Conv_U1; // 0x580 + public static readonly OpCode Conv_I; // 0x588 + public static readonly OpCode Conv_Ovf_I; // 0x590 + public static readonly OpCode Conv_Ovf_U; // 0x598 + public static readonly OpCode Add_Ovf; // 0x5A0 + public static readonly OpCode Add_Ovf_Un; // 0x5A8 + public static readonly OpCode Mul_Ovf; // 0x5B0 + public static readonly OpCode Mul_Ovf_Un; // 0x5B8 + public static readonly OpCode Sub_Ovf; // 0x5C0 + public static readonly OpCode Sub_Ovf_Un; // 0x5C8 + public static readonly OpCode Endfinally; // 0x5D0 + public static readonly OpCode Leave; // 0x5D8 + public static readonly OpCode Leave_S; // 0x5E0 + public static readonly OpCode Stind_I; // 0x5E8 + public static readonly OpCode Conv_U; // 0x5F0 + public static readonly OpCode Prefix7; // 0x5F8 + public static readonly OpCode Prefix6; // 0x600 + public static readonly OpCode Prefix5; // 0x608 + public static readonly OpCode Prefix4; // 0x610 + public static readonly OpCode Prefix3; // 0x618 + public static readonly OpCode Prefix2; // 0x620 + public static readonly OpCode Prefix1; // 0x628 + public static readonly OpCode Prefixref; // 0x630 + public static readonly OpCode Arglist; // 0x638 + public static readonly OpCode Ceq; // 0x640 + public static readonly OpCode Cgt; // 0x648 + public static readonly OpCode Cgt_Un; // 0x650 + public static readonly OpCode Clt; // 0x658 + public static readonly OpCode Clt_Un; // 0x660 + public static readonly OpCode Ldftn; // 0x668 + public static readonly OpCode Ldvirtftn; // 0x670 + public static readonly OpCode Ldarg; // 0x678 + public static readonly OpCode Ldarga; // 0x680 + public static readonly OpCode Starg; // 0x688 + public static readonly OpCode Ldloc; // 0x690 + public static readonly OpCode Ldloca; // 0x698 + public static readonly OpCode Stloc; // 0x6A0 + public static readonly OpCode Localloc; // 0x6A8 + public static readonly OpCode Endfilter; // 0x6B0 + public static readonly OpCode Unaligned; // 0x6B8 + public static readonly OpCode Volatile; // 0x6C0 + public static readonly OpCode Tailcall; // 0x6C8 + public static readonly OpCode Initobj; // 0x6D0 + public static readonly OpCode Constrained; // 0x6D8 + public static readonly OpCode Cpblk; // 0x6E0 + public static readonly OpCode Initblk; // 0x6E8 + public static readonly OpCode Rethrow; // 0x6F0 + public static readonly OpCode Sizeof; // 0x6F8 + public static readonly OpCode Refanytype; // 0x700 + public static readonly OpCode Readonly; // 0x708 + + // Methods + internal void .ctor(); // 0x0022E4BC + private static void .cctor(); // 0x0022E4C4 + public static bool TakesSingleByteArgument(OpCode inst); // 0x0022F630 +} + +// Namespace: System.Reflection.Emit +[Serializable] +public enum OperandType // TypeDefIndex: 531 +{ + InlineBrTarget = 0, + InlineField = 1, + InlineI = 2, + InlineI8 = 3, + InlineMethod = 4, + InlineNone = 5, + InlinePhi = 6, + InlineR = 7, + InlineSig = 9, + InlineString = 10, + InlineSwitch = 11, + InlineTok = 12, + InlineType = 13, + InlineVar = 14, + ShortInlineBrTarget = 15, + ShortInlineI = 16, + ShortInlineR = 17, + ShortInlineVar = 18 +} + +// Namespace: System.Reflection.Emit +[Serializable] +public enum PEFileKinds // TypeDefIndex: 532 +{ + Dll = 1, + ConsoleApplication = 2, + WindowApplication = 3 +} + +// Namespace: System.Reflection.Emit +[Serializable] +public enum PackingSize // TypeDefIndex: 533 +{ + Unspecified = 0, + Size1 = 1, + Size2 = 2, + Size4 = 4, + Size8 = 8, + Size16 = 16, + Size32 = 32, + Size64 = 64, + Size128 = 128 +} + +// Namespace: System.Reflection.Emit +public class ParameterBuilder : _ParameterBuilder // TypeDefIndex: 534 +{ + // Fields + private MethodBase methodb; // 0x08 + private string name; // 0x0C + private CustomAttributeBuilder[] cattrs; // 0x10 + private UnmanagedMarshal marshal_info; // 0x14 + private ParameterAttributes attrs; // 0x18 + private int position; // 0x1C + private int table_idx; // 0x20 + private object def_value; // 0x24 + + // Properties + public virtual int Attributes { get; } // 0x0022F868 + public bool IsIn { get; } // 0x0022F870 + public bool IsOut { get; } // 0x0022F87C + public bool IsOptional { get; } // 0x0022F888 + public virtual string Name { get; } // 0x0022F894 + public virtual int Position { get; } // 0x0022F89C + + // Methods + internal void .ctor(MethodBase mb, int pos, ParameterAttributes attributes, string strParamName); // 0x0021F894 + private void System.Runtime.InteropServices._ParameterBuilder.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x0022F648 + private void System.Runtime.InteropServices._ParameterBuilder.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x0022F6D0 + private void System.Runtime.InteropServices._ParameterBuilder.GetTypeInfoCount(out uint pcTInfo); // 0x0022F758 + private void System.Runtime.InteropServices._ParameterBuilder.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x0022F7E0 + public virtual ParameterToken GetToken(); // 0x0022F8A4 + public virtual void SetConstant(object defaultValue); // 0x0022F8B0 + public void SetCustomAttribute(CustomAttributeBuilder customBuilder); // 0x0022F8C4 + public void SetCustomAttribute(ConstructorInfo con, byte[] binaryAttribute); // 0x0022FCF8 + public virtual void SetMarshal(UnmanagedMarshal unmanagedMarshal); // 0x0022FD80 +} + +// Namespace: System.Reflection.Emit +[Serializable] +public struct ParameterToken // TypeDefIndex: 535 +{ + // Fields + internal int tokValue; // 0x08 + public static readonly ParameterToken Empty; // 0x00 + + // Properties + public int Token { get; } // 0x0008C41C + + // Methods + internal void .ctor(int val); // 0x0008C3F0 + private static void .cctor(); // 0x0022FD9C + public override bool Equals(object obj); // 0x0008C3F8 + public bool Equals(ParameterToken obj); // 0x0008C400 + public override int GetHashCode(); // 0x0008C414 + public static bool op_Equality(ParameterToken a, ParameterToken b); // 0x0022FEBC + public static bool op_Inequality(ParameterToken a, ParameterToken b); // 0x0022FF54 +} + +// Namespace: System.Reflection.Emit +public sealed class PropertyBuilder : PropertyInfo, _PropertyBuilder // TypeDefIndex: 536 +{ + // Fields + private PropertyAttributes attrs; // 0x08 + private string name; // 0x0C + private Type type; // 0x10 + private Type[] parameters; // 0x14 + private CustomAttributeBuilder[] cattrs; // 0x18 + private object def_value; // 0x1C + private MethodBuilder set_method; // 0x20 + private MethodBuilder get_method; // 0x24 + private int table_idx; // 0x28 + internal TypeBuilder typeb; // 0x2C + private Type[] returnModReq; // 0x30 + private Type[] returnModOpt; // 0x34 + private Type[][] paramModReq; // 0x38 + private Type[][] paramModOpt; // 0x3C + + // Properties + public override PropertyAttributes Attributes { get; } // 0x00230468 + public override bool CanRead { get; } // 0x00230470 + public override bool CanWrite { get; } // 0x00230480 + public override Type DeclaringType { get; } // 0x00230490 + public override string Name { get; } // 0x00230498 + public PropertyToken PropertyToken { get; } // 0x002304A0 + public override Type PropertyType { get; } // 0x002304A8 + public override Type ReflectedType { get; } // 0x002304B0 + public override Module Module { get; } // 0x00230A58 + + // Methods + internal void .ctor(TypeBuilder tb, string name, PropertyAttributes attributes, Type returnType, Type[] returnModReq, Type[] returnModOpt, Type[] parameterTypes, Type[][] paramModReq, Type[][] paramModOpt); // 0x0023012C + private void System.Runtime.InteropServices._PropertyBuilder.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x00230248 + private void System.Runtime.InteropServices._PropertyBuilder.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x002302D0 + private void System.Runtime.InteropServices._PropertyBuilder.GetTypeInfoCount(out uint pcTInfo); // 0x00230358 + private void System.Runtime.InteropServices._PropertyBuilder.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x002303E0 + public void AddOtherMethod(MethodBuilder mdBuilder); // 0x002304B8 + public override MethodInfo[] GetAccessors(bool nonPublic); // 0x002304BC + public override object[] GetCustomAttributes(bool inherit); // 0x002304C4 + public override object[] GetCustomAttributes(Type attributeType, bool inherit); // 0x002305AC + public override MethodInfo GetGetMethod(bool nonPublic); // 0x00230614 + public override ParameterInfo[] GetIndexParameters(); // 0x0023061C + public override MethodInfo GetSetMethod(bool nonPublic); // 0x00230684 + public override object GetValue(object obj, object[] index); // 0x0023068C + public override object GetValue(object obj, BindingFlags invokeAttr, Binder binder, object[] index, CultureInfo culture); // 0x00230694 + public override bool IsDefined(Type attributeType, bool inherit); // 0x002306FC + public void SetConstant(object defaultValue); // 0x00230764 + public void SetCustomAttribute(CustomAttributeBuilder customBuilder); // 0x0023076C + public void SetCustomAttribute(ConstructorInfo con, byte[] binaryAttribute); // 0x002309B8 + public void SetGetMethod(MethodBuilder mdBuilder); // 0x00230A40 + public void SetSetMethod(MethodBuilder mdBuilder); // 0x00230A48 + public override void SetValue(object obj, object value, object[] index); // 0x00230A50 + public override void SetValue(object obj, object value, BindingFlags invokeAttr, Binder binder, object[] index, CultureInfo culture); // 0x00230A54 + private Exception not_supported(); // 0x0023052C +} + +// Namespace: System.Reflection.Emit +internal class PropertyOnTypeBuilderInst : PropertyInfo // TypeDefIndex: 537 +{ + // Fields + private MonoGenericClass instantiation; // 0x08 + private PropertyInfo prop; // 0x0C + + // Properties + public override PropertyAttributes Attributes { get; } // 0x00272DE4 + public override bool CanRead { get; } // 0x00272E6C + public override bool CanWrite { get; } // 0x00272EF4 + public override Type PropertyType { get; } // 0x00272F7C + public override Type DeclaringType { get; } // 0x00272FE0 + public override Type ReflectedType { get; } // 0x0027303C + public override string Name { get; } // 0x00273044 + + // Methods + internal void .ctor(MonoGenericClass instantiation, PropertyInfo prop); // 0x00272DBC + public override MethodInfo[] GetAccessors(bool nonPublic); // 0x00273078 + public override MethodInfo GetGetMethod(bool nonPublic); // 0x00273208 + public override ParameterInfo[] GetIndexParameters(); // 0x00273644 + public override MethodInfo GetSetMethod(bool nonPublic); // 0x002736DC + public override string ToString(); // 0x0027378C + public override object GetValue(object obj, BindingFlags invokeAttr, Binder binder, object[] index, CultureInfo culture); // 0x00273854 + public override void SetValue(object obj, object value, BindingFlags invokeAttr, Binder binder, object[] index, CultureInfo culture); // 0x002738DC + public override bool IsDefined(Type attributeType, bool inherit); // 0x00273964 + public override object[] GetCustomAttributes(bool inherit); // 0x002739EC + public override object[] GetCustomAttributes(Type attributeType, bool inherit); // 0x00273A74 +} + +// Namespace: System.Reflection.Emit +[Serializable] +public struct PropertyToken // TypeDefIndex: 538 +{ + // Fields + internal int tokValue; // 0x08 + public static readonly PropertyToken Empty; // 0x00 + + // Properties + public int Token { get; } // 0x0008C814 + + // Methods + internal void .ctor(int val); // 0x0008C7E8 + private static void .cctor(); // 0x00273B04 + public override bool Equals(object obj); // 0x0008C7F0 + public bool Equals(PropertyToken obj); // 0x0008C7F8 + public override int GetHashCode(); // 0x0008C80C + public static bool op_Equality(PropertyToken a, PropertyToken b); // 0x00273C24 + public static bool op_Inequality(PropertyToken a, PropertyToken b); // 0x00273CBC +} + +// Namespace: System.Reflection.Emit +public sealed class SignatureHelper : _SignatureHelper // TypeDefIndex: 539 +{ + // Fields + private ModuleBuilder module; // 0x08 + private Type[] arguments; // 0x0C + private SignatureHelperType type; // 0x10 + private Type returnType; // 0x14 + private CallingConventions callConv; // 0x18 + private CallingConvention unmanagedCallConv; // 0x1C + private Type[][] modreqs; // 0x20 + private Type[][] modopts; // 0x24 + + // Methods + internal void .ctor(ModuleBuilder module, SignatureHelperType type); // 0x002744E8 + private void System.Runtime.InteropServices._SignatureHelper.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x00274510 + private void System.Runtime.InteropServices._SignatureHelper.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x00274598 + private void System.Runtime.InteropServices._SignatureHelper.GetTypeInfoCount(out uint pcTInfo); // 0x00274620 + private void System.Runtime.InteropServices._SignatureHelper.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x002746A8 + public static SignatureHelper GetFieldSigHelper(Module mod); // 0x00274730 + public static SignatureHelper GetLocalVarSigHelper(Module mod); // 0x002748A0 + public static SignatureHelper GetLocalVarSigHelper(); // 0x00274A0C + public static SignatureHelper GetMethodSigHelper(CallingConventions callingConvention, Type returnType); // 0x00274A88 + public static SignatureHelper GetMethodSigHelper(CallingConvention unmanagedCallingConvention, Type returnType); // 0x00274ED0 + public static SignatureHelper GetMethodSigHelper(Module mod, CallingConventions callingConvention, Type returnType); // 0x00274F00 + public static SignatureHelper GetMethodSigHelper(Module mod, CallingConvention unmanagedCallConv, Type returnType); // 0x00274F28 + public static SignatureHelper GetMethodSigHelper(Module mod, Type returnType, Type[] parameterTypes); // 0x00274F54 + public static SignatureHelper GetPropertySigHelper(Module mod, Type returnType, Type[] parameterTypes); // 0x00274F7C + private static int AppendArray(Type[] array, Type t); // 0x00275004 + private static void AppendArrayAt(Type[][] array, Type[] t, int pos); // 0x002751A8 + private static void ValidateParameterModifiers(string name, Type[] parameter_modifiers); // 0x002752BC + private static void ValidateCustomModifier(int n, Type[][] custom_modifiers, string name); // 0x00275480 + private static Exception MissingFeature(); // 0x002755E8 + public void AddArguments(Type[] arguments, Type[][] requiredCustomModifiers, Type[][] optionalCustomModifiers); // 0x00275684 + public void AddArgument(Type argument, bool pinned); // 0x00275928 + public void AddArgument(Type argument, Type[] requiredCustomModifiers, Type[] optionalCustomModifiers); // 0x002757F0 + public static SignatureHelper GetPropertySigHelper(Module mod, Type returnType, Type[] requiredReturnTypeCustomModifiers, Type[] optionalReturnTypeCustomModifiers, Type[] parameterTypes, Type[][] requiredParameterTypeCustomModifiers, Type[][] optionalParameterTypeCustomModifiers); // 0x002759E8 + public void AddArgument(Type clsArgument); // 0x0027592C + public void AddSentinel(); // 0x00275A70 + private static bool CompareOK(Type[][] one, Type[][] two); // 0x00275AF8 + public override bool Equals(object obj); // 0x00275C94 + public override int GetHashCode(); // 0x00275E78 + internal byte[] get_signature_local(); // 0x00275E80 + internal byte[] get_signature_field(); // 0x00275E84 + public byte[] GetSignature(); // 0x00275E88 + public override string ToString(); // 0x00275F40 + internal static SignatureHelper GetMethodSigHelper(Module mod, CallingConventions callingConvention, CallingConvention unmanagedCallingConvention, Type returnType, Type[] parameters); // 0x00274AB8 +} + +// Namespace: +internal enum SignatureHelperType // TypeDefIndex: 540 +{ + HELPER_FIELD = 0, + HELPER_LOCAL = 1, + HELPER_METHOD = 2, + HELPER_PROPERTY = 3 +} + +// Namespace: System.Reflection.Emit +public struct SignatureToken // TypeDefIndex: 541 +{ + // Fields + internal int tokValue; // 0x08 + public static readonly SignatureToken Empty; // 0x00 + + // Properties + public int Token { get; } // 0x0008C8BC + + // Methods + internal void .ctor(int val); // 0x0008C890 + private static void .cctor(); // 0x00275FA4 + public override bool Equals(object obj); // 0x0008C898 + public bool Equals(SignatureToken obj); // 0x0008C8A0 + public override int GetHashCode(); // 0x0008C8B4 + public static bool op_Equality(SignatureToken a, SignatureToken b); // 0x002760C4 + public static bool op_Inequality(SignatureToken a, SignatureToken b); // 0x0027615C +} + +// Namespace: System.Reflection.Emit +[Serializable] +public enum StackBehaviour // TypeDefIndex: 542 +{ + Pop0 = 0, + Pop1 = 1, + Pop1_pop1 = 2, + Popi = 3, + Popi_pop1 = 4, + Popi_popi = 5, + Popi_popi8 = 6, + Popi_popi_popi = 7, + Popi_popr4 = 8, + Popi_popr8 = 9, + Popref = 10, + Popref_pop1 = 11, + Popref_popi = 12, + Popref_popi_popi = 13, + Popref_popi_popi8 = 14, + Popref_popi_popr4 = 15, + Popref_popi_popr8 = 16, + Popref_popi_popref = 17, + Push0 = 18, + Push1 = 19, + Push1_push1 = 20, + Pushi = 21, + Pushi8 = 22, + Pushr4 = 23, + Pushr8 = 24, + Pushref = 25, + Varpop = 26, + Varpush = 27, + Popref_popi_pop1 = 28 +} + +// Namespace: System.Reflection.Emit +[Serializable] +public struct StringToken // TypeDefIndex: 543 +{ + // Fields + internal int tokValue; // 0x08 + + // Properties + public int Token { get; } // 0x0008C8F0 + + // Methods + internal void .ctor(int val); // 0x0008C8C4 + private static void .cctor(); // 0x00276200 + public override bool Equals(object obj); // 0x0008C8CC + public bool Equals(StringToken obj); // 0x0008C8D4 + public override int GetHashCode(); // 0x0008C8E8 + public static bool op_Equality(StringToken a, StringToken b); // 0x002762BC + public static bool op_Inequality(StringToken a, StringToken b); // 0x00276354 +} + +// Namespace: System.Reflection.Emit +public sealed class TypeBuilder : Type, _TypeBuilder // TypeDefIndex: 544 +{ + // Fields + public const int UnspecifiedTypeSize = 0; // 0x00 + private string tname; // 0x0C + private string nspace; // 0x10 + private Type parent; // 0x14 + private Type nesting_type; // 0x18 + internal Type[] interfaces; // 0x1C + internal int num_methods; // 0x20 + internal MethodBuilder[] methods; // 0x24 + internal ConstructorBuilder[] ctors; // 0x28 + internal PropertyBuilder[] properties; // 0x2C + internal int num_fields; // 0x30 + internal FieldBuilder[] fields; // 0x34 + internal EventBuilder[] events; // 0x38 + private CustomAttributeBuilder[] cattrs; // 0x3C + internal TypeBuilder[] subtypes; // 0x40 + internal TypeAttributes attrs; // 0x44 + private int table_idx; // 0x48 + private ModuleBuilder pmodule; // 0x4C + private int class_size; // 0x50 + private PackingSize packing_size; // 0x54 + private IntPtr generic_container; // 0x58 + private GenericTypeParameterBuilder[] generic_params; // 0x5C + private RefEmitPermissionSet[] permissions; // 0x60 + private Type created; // 0x64 + private string fullname; // 0x68 + private bool createTypeCalled; // 0x6C + private Type underlying_type; // 0x70 + private static Dictionary`2 <>f__switch$map1E; // 0x00 + + // Properties + public override Assembly Assembly { get; } // 0x00276D6C + public override string AssemblyQualifiedName { get; } // 0x00276D90 + public override Type BaseType { get; } // 0x00276E6C + public override Type DeclaringType { get; } // 0x00276E74 + public override Type UnderlyingSystemType { get; } // 0x00276E7C + public override string FullName { get; } // 0x00276F80 + public override Guid GUID { get; } // 0x00276F88 + public override Module Module { get; } // 0x00277048 + public override string Name { get; } // 0x00277050 + public override string Namespace { get; } // 0x00277058 + public PackingSize PackingSize { get; } // 0x00277060 + public int Size { get; } // 0x00277068 + public override Type ReflectedType { get; } // 0x00277070 + public override RuntimeTypeHandle TypeHandle { get; } // 0x0027C3DC + public TypeToken TypeToken { get; } // 0x0027D554 + internal bool IsCompilerContext { get; } // 0x002769E0 + internal bool is_created { get; } // 0x00276F70 + public override bool ContainsGenericParameters { get; } // 0x0027D9F0 + public override bool IsGenericParameter { get; } // 0x0027DA00 + public override GenericParameterAttributes GenericParameterAttributes { get; } // 0x0027DA04 + public override bool IsGenericTypeDefinition { get; } // 0x0027DA0C + public override bool IsGenericType { get; } // 0x0027DA1C + public override int GenericParameterPosition { get; } // 0x0027DA2C + public override MethodBase DeclaringMethod { get; } // 0x0027DA34 + + // Methods + internal void .ctor(ModuleBuilder mb, TypeAttributes attr, int table_idx); // 0x002763F0 + internal void .ctor(ModuleBuilder mb, string name, TypeAttributes attr, Type parent, Type[] interfaces, PackingSize packing_size, int type_size, Type nesting_type); // 0x00276584 + private void System.Runtime.InteropServices._TypeBuilder.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x00276B34 + private void System.Runtime.InteropServices._TypeBuilder.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x00276BBC + private void System.Runtime.InteropServices._TypeBuilder.GetTypeInfoCount(out uint pcTInfo); // 0x00276C44 + private void System.Runtime.InteropServices._TypeBuilder.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x00276CCC + protected override TypeAttributes GetAttributeFlagsImpl(); // 0x00276D54 + private void setup_internal_class(TypeBuilder tb); // 0x00276580 + private void create_internal_class(TypeBuilder tb); // 0x00276D5C + private void setup_generic_class(); // 0x00276D60 + private void create_generic_class(); // 0x00276D64 + private EventInfo get_event_info(EventBuilder eb); // 0x00276D68 + private string GetFullName(); // 0x00276A18 + public void AddDeclarativeSecurity(SecurityAction action, PermissionSet pset); // 0x00277078 + public void AddInterfaceImplementation(Type interfaceType); // 0x0027707C + protected override ConstructorInfo GetConstructorImpl(BindingFlags bindingAttr, Binder binder, CallingConventions callConvention, Type[] types, ParameterModifier[] modifiers); // 0x00277388 + public override bool IsDefined(Type attributeType, bool inherit); // 0x00277858 + public override object[] GetCustomAttributes(bool inherit); // 0x0027794C + public override object[] GetCustomAttributes(Type attributeType, bool inherit); // 0x00277990 + public TypeBuilder DefineNestedType(string name); // 0x002779DC + public TypeBuilder DefineNestedType(string name, TypeAttributes attr); // 0x00277A6C + public TypeBuilder DefineNestedType(string name, TypeAttributes attr, Type parent); // 0x00277AD8 + private TypeBuilder DefineNestedType(string name, TypeAttributes attr, Type parent, Type[] interfaces, PackingSize packSize, int typeSize); // 0x00277B00 + public TypeBuilder DefineNestedType(string name, TypeAttributes attr, Type parent, Type[] interfaces); // 0x00277A44 + public TypeBuilder DefineNestedType(string name, TypeAttributes attr, Type parent, int typeSize); // 0x00277E14 + public TypeBuilder DefineNestedType(string name, TypeAttributes attr, Type parent, PackingSize packSize); // 0x00277E40 + public ConstructorBuilder DefineConstructor(MethodAttributes attributes, CallingConventions callingConvention, Type[] parameterTypes); // 0x00277E68 + public ConstructorBuilder DefineConstructor(MethodAttributes attributes, CallingConventions callingConvention, Type[] parameterTypes, Type[][] requiredCustomModifiers, Type[][] optionalCustomModifiers); // 0x00277E8C + public ConstructorBuilder DefineDefaultConstructor(MethodAttributes attributes); // 0x00278084 + private void append_method(MethodBuilder mb); // 0x00278380 + public MethodBuilder DefineMethod(string name, MethodAttributes attributes, Type returnType, Type[] parameterTypes); // 0x002784C0 + public MethodBuilder DefineMethod(string name, MethodAttributes attributes, CallingConventions callingConvention, Type returnType, Type[] parameterTypes); // 0x002784F8 + public MethodBuilder DefineMethod(string name, MethodAttributes attributes, CallingConventions callingConvention, Type returnType, Type[] returnTypeRequiredCustomModifiers, Type[] returnTypeOptionalCustomModifiers, Type[] parameterTypes, Type[][] parameterTypeRequiredCustomModifiers, Type[][] parameterTypeOptionalCustomModifiers); // 0x00278534 + public MethodBuilder DefinePInvokeMethod(string name, string dllName, string entryName, MethodAttributes attributes, CallingConventions callingConvention, Type returnType, Type[] parameterTypes, CallingConvention nativeCallConv, CharSet nativeCharSet); // 0x002786E8 + public MethodBuilder DefinePInvokeMethod(string name, string dllName, string entryName, MethodAttributes attributes, CallingConventions callingConvention, Type returnType, Type[] returnTypeRequiredCustomModifiers, Type[] returnTypeOptionalCustomModifiers, Type[] parameterTypes, Type[][] parameterTypeRequiredCustomModifiers, Type[][] parameterTypeOptionalCustomModifiers, CallingConvention nativeCallConv, CharSet nativeCharSet); // 0x00278740 + public MethodBuilder DefinePInvokeMethod(string name, string dllName, MethodAttributes attributes, CallingConventions callingConvention, Type returnType, Type[] parameterTypes, CallingConvention nativeCallConv, CharSet nativeCharSet); // 0x00278940 + public MethodBuilder DefineMethod(string name, MethodAttributes attributes); // 0x00278994 + public MethodBuilder DefineMethod(string name, MethodAttributes attributes, CallingConventions callingConvention); // 0x002789CC + public void DefineMethodOverride(MethodInfo methodInfoBody, MethodInfo methodInfoDeclaration); // 0x00278A00 + public FieldBuilder DefineField(string fieldName, Type type, FieldAttributes attributes); // 0x00278B84 + public FieldBuilder DefineField(string fieldName, Type type, Type[] requiredCustomModifiers, Type[] optionalCustomModifiers, FieldAttributes attributes); // 0x00278BAC + public PropertyBuilder DefineProperty(string name, PropertyAttributes attributes, Type returnType, Type[] parameterTypes); // 0x00278EC4 + public PropertyBuilder DefineProperty(string name, PropertyAttributes attributes, Type returnType, Type[] returnTypeRequiredCustomModifiers, Type[] returnTypeOptionalCustomModifiers, Type[] parameterTypes, Type[][] parameterTypeRequiredCustomModifiers, Type[][] parameterTypeOptionalCustomModifiers); // 0x00278EF8 + public ConstructorBuilder DefineTypeInitializer(); // 0x002791C8 + private Type create_runtime_class(TypeBuilder tb); // 0x002791F8 + private bool is_nested_in(Type t); // 0x002791FC + private bool has_ctor_method(); // 0x0027924C + public Type CreateType(); // 0x002793B8 + internal void GenerateDebugInfo(ISymbolWriter symbolWriter); // 0x0027A014 + public override ConstructorInfo[] GetConstructors(BindingFlags bindingAttr); // 0x0027A2FC + internal ConstructorInfo[] GetConstructorsInternal(BindingFlags bindingAttr); // 0x0027A3D0 + public override Type GetElementType(); // 0x0027A590 + public override EventInfo GetEvent(string name, BindingFlags bindingAttr); // 0x0027A618 + public override EventInfo[] GetEvents(); // 0x0027A664 + public override EventInfo[] GetEvents(BindingFlags bindingAttr); // 0x0027A66C + internal EventInfo[] GetEvents_internal(BindingFlags bindingAttr); // 0x0027A74C + public override FieldInfo GetField(string name, BindingFlags bindingAttr); // 0x0027A970 + public override FieldInfo[] GetFields(BindingFlags bindingAttr); // 0x0027AAFC + public override Type GetInterface(string name, bool ignoreCase); // 0x0027ACEC + public override Type[] GetInterfaces(); // 0x0027AD38 + public override MemberInfo[] GetMember(string name, MemberTypes type, BindingFlags bindingAttr); // 0x0027AE40 + public override MemberInfo[] GetMembers(BindingFlags bindingAttr); // 0x0027AEA0 + private MethodInfo[] GetMethodsByName(string name, BindingFlags bindingAttr, bool ignoreCase, Type reflected_type); // 0x0027AEE4 + public override MethodInfo[] GetMethods(BindingFlags bindingAttr); // 0x0027B3F0 + protected override MethodInfo GetMethodImpl(string name, BindingFlags bindingAttr, Binder binder, CallingConventions callConvention, Type[] types, ParameterModifier[] modifiers); // 0x0027B414 + public override Type GetNestedType(string name, BindingFlags bindingAttr); // 0x0027B898 + public override Type[] GetNestedTypes(BindingFlags bindingAttr); // 0x0027B9F0 + public override PropertyInfo[] GetProperties(BindingFlags bindingAttr); // 0x0027BC14 + protected override PropertyInfo GetPropertyImpl(string name, BindingFlags bindingAttr, Binder binder, Type returnType, Type[] types, ParameterModifier[] modifiers); // 0x0027BE48 + protected override bool HasElementTypeImpl(); // 0x0027BF30 + public override object InvokeMember(string name, BindingFlags invokeAttr, Binder binder, object target, object[] args, ParameterModifier[] modifiers, CultureInfo culture, string[] namedParameters); // 0x0027BF48 + protected override bool IsArrayImpl(); // 0x0027BFE0 + protected override bool IsByRefImpl(); // 0x0027BFE8 + protected override bool IsCOMObjectImpl(); // 0x0027BFF0 + protected override bool IsPointerImpl(); // 0x0027BFFC + protected override bool IsPrimitiveImpl(); // 0x0027C004 + protected override bool IsValueTypeImpl(); // 0x0027C00C + public override Type MakeArrayType(); // 0x0027C1AC + public override Type MakeArrayType(int rank); // 0x0027C224 + public override Type MakeByRefType(); // 0x0027C2EC + public override Type MakeGenericType(Type[] typeArguments); // 0x0027C360 + public override Type MakePointerType(); // 0x0027C368 + internal void SetCharSet(TypeAttributes ta); // 0x0027C418 + public void SetCustomAttribute(CustomAttributeBuilder customBuilder); // 0x0027C420 + public void SetCustomAttribute(ConstructorInfo con, byte[] binaryAttribute); // 0x0027CE9C + public EventBuilder DefineEvent(string name, EventAttributes attributes, Type eventtype); // 0x0027CF24 + public FieldBuilder DefineInitializedData(string name, byte[] data, FieldAttributes attributes); // 0x0027D188 + public FieldBuilder DefineUninitializedData(string name, int size, FieldAttributes attributes); // 0x0027D284 + public void SetParent(Type parent); // 0x00279EA4 + internal int get_next_table_index(object obj, int table, bool inc); // 0x0027D560 + public override InterfaceMapping GetInterfaceMap(Type interfaceType); // 0x0027D5B0 + private Exception not_supported(); // 0x0027BEB0 + private void check_not_created(); // 0x002772DC + private void check_created(); // 0x00276FD0 + private void check_name(string argName, string name); // 0x00276890 + public override string ToString(); // 0x0027D680 + public override bool IsAssignableFrom(Type c); // 0x0027D688 + public override bool IsSubclassOf(Type c); // 0x0027D690 + internal bool IsAssignableTo(Type c); // 0x0027D698 + public bool IsCreated(); // 0x0027D888 + public override Type[] GetGenericArguments(); // 0x0027D898 + public override Type GetGenericTypeDefinition(); // 0x0027D940 + public GenericTypeParameterBuilder[] DefineGenericParameters(string[] names); // 0x0027DA3C + public static ConstructorInfo GetConstructor(Type type, ConstructorInfo constructor); // 0x0027DCA4 + private static bool IsValidGetMethodType(Type type); // 0x0027DDC4 + public static MethodInfo GetMethod(Type type, MethodInfo method); // 0x002732B8 + public static FieldInfo GetField(Type type, FieldInfo field); // 0x0027DF68 +} + +// Namespace: System.Reflection.Emit +[Serializable] +public struct TypeToken // TypeDefIndex: 545 +{ + // Fields + internal int tokValue; // 0x08 + public static readonly TypeToken Empty; // 0x00 + + // Properties + public int Token { get; } // 0x0008C924 + + // Methods + internal void .ctor(int val); // 0x0008C8F8 + private static void .cctor(); // 0x0027E044 + public override bool Equals(object obj); // 0x0008C900 + public bool Equals(TypeToken obj); // 0x0008C908 + public override int GetHashCode(); // 0x0008C91C + public static bool op_Equality(TypeToken a, TypeToken b); // 0x0027E164 + public static bool op_Inequality(TypeToken a, TypeToken b); // 0x0027E1FC +} + +// Namespace: System.Reflection.Emit +[Serializable] +public sealed class UnmanagedMarshal // TypeDefIndex: 546 +{ + // Fields + private int count; // 0x08 + private UnmanagedType t; // 0x0C + private UnmanagedType tbase; // 0x10 + private string guid; // 0x14 + private string mcookie; // 0x18 + private string marshaltype; // 0x1C + private Type marshaltyperef; // 0x20 + private int param_num; // 0x24 + private bool has_size; // 0x28 + + // Properties + public UnmanagedType BaseType { get; } // 0x0027E2F4 + public int ElementCount { get; } // 0x0027E398 + public UnmanagedType GetUnmanagedType { get; } // 0x0027E3A0 + public Guid IIDGuid { get; } // 0x0027E3A8 + + // Methods + private void .ctor(UnmanagedType maint, int cnt); // 0x0027E298 + private void .ctor(UnmanagedType maint, UnmanagedType elemt); // 0x0027E2C4 + public static UnmanagedMarshal DefineByValArray(int elemCount); // 0x0027E3C8 + public static UnmanagedMarshal DefineByValTStr(int elemCount); // 0x0027E448 + public static UnmanagedMarshal DefineLPArray(UnmanagedType elemType); // 0x0027E4C8 + public static UnmanagedMarshal DefineSafeArray(UnmanagedType elemType); // 0x0027E54C + public static UnmanagedMarshal DefineUnmanagedMarshal(UnmanagedType unmanagedType); // 0x0027E5D0 + public static UnmanagedMarshal DefineCustom(Type typeref, string cookie, string mtype, Guid id); // 0x0027E650 + internal static UnmanagedMarshal DefineLPArrayInternal(UnmanagedType elemType, int sizeConst, int sizeParamIndex); // 0x0027E818 + internal MarshalAsAttribute ToMarshalAsAttribute(); // 0x0027E8E4 +} + +// Namespace: System.Reflection +[Serializable] +public sealed class AmbiguousMatchException : SystemException // TypeDefIndex: 547 +{ + // Methods + public void .ctor(); // 0x001B2370 + public void .ctor(string message); // 0x001B23D8 + public void .ctor(string message, Exception inner); // 0x001B23E0 + internal void .ctor(SerializationInfo info, StreamingContext context); // 0x001B23E8 +} + +// Namespace: System.Reflection +[Serializable] +public class Assembly : ICustomAttributeProvider, _Assembly // TypeDefIndex: 548 +{ + // Fields + private IntPtr _mono_assembly; // 0x08 + private ResolveEventHolder resolve_event_holder; // 0x0C + private Evidence _evidence; // 0x10 + internal PermissionSet _minimum; // 0x14 + internal PermissionSet _optional; // 0x18 + internal PermissionSet _refuse; // 0x1C + private PermissionSet _granted; // 0x20 + private PermissionSet _denied; // 0x24 + private bool fromByteArray; // 0x28 + private string assemblyName; // 0x2C + + // Properties + public virtual string CodeBase { get; } // 0x001B2604 + public virtual string EscapedCodeBase { get; } // 0x001B260C + public virtual string FullName { get; } // 0x001B2614 + public virtual MethodInfo EntryPoint { get; } // 0x001B2624 + public virtual Evidence Evidence { get; } // 0x001B2628 + public bool GlobalAssemblyCache { get; } // 0x001B26BC + internal bool FromByteArray { set; } // 0x001B26C0 + public virtual string Location { get; } // 0x001B26C8 + public virtual string ImageRuntimeVersion { get; } // 0x001B2770 + public long HostContext { get; } // 0x001B4E84 + public Module ManifestModule { get; } // 0x001B4E90 + public virtual bool ReflectionOnly { get; } // 0x001B4EA8 + internal PermissionSet GrantedPermissionSet { get; } // 0x001B5324 + internal PermissionSet DeniedPermissionSet { get; } // 0x001B553C + + // Events + public event ModuleResolveEventHandler ModuleResolve { + add; // 0x001B2470 + remove; // 0x001B2530 + } + + // Methods + internal void .ctor(); // 0x001B2408 + private string get_code_base(bool escaped); // 0x001B25F0 + private string get_fullname(); // 0x001B25F4 + private string get_location(); // 0x001B25F8 + private string InternalImageRuntimeVersion(); // 0x001B25FC + private string GetCodeBase(bool escaped); // 0x001B2600 + internal Evidence UnprotectedGetEvidence(); // 0x001B262C + private bool get_global_assembly_cache(); // 0x001B26B8 + public virtual void GetObjectData(SerializationInfo info, StreamingContext context); // 0x001B2774 + public virtual bool IsDefined(Type attributeType, bool inherit); // 0x001B2850 + public virtual object[] GetCustomAttributes(bool inherit); // 0x001B28E4 + public virtual object[] GetCustomAttributes(Type attributeType, bool inherit); // 0x001B2970 + private object GetFilesInternal(string name, bool getResourceModules); // 0x001B2A04 + public virtual FileStream[] GetFiles(); // 0x001B2A08 + public virtual FileStream[] GetFiles(bool getResourceModules); // 0x001B2A1C + public virtual FileStream GetFile(string name); // 0x001B2DD0 + internal IntPtr GetManifestResourceInternal(string name, out int size, out Module module); // 0x001B2F5C + public virtual Stream GetManifestResourceStream(string name); // 0x001B2F60 + public virtual Stream GetManifestResourceStream(Type type, string name); // 0x001B336C + internal virtual Type[] GetTypes(bool exportedOnly); // 0x001B34BC + public virtual Type[] GetTypes(); // 0x001B34C0 + public virtual Type[] GetExportedTypes(); // 0x001B34D4 + public virtual Type GetType(string name, bool throwOnError); // 0x001B34E8 + public virtual Type GetType(string name); // 0x001B362C + internal Type InternalGetType(Module module, string name, bool throwOnError, bool ignoreCase); // 0x001B364C + public Type GetType(string name, bool throwOnError, bool ignoreCase); // 0x001B3504 + internal static void InternalGetAssemblyName(string assemblyFile, AssemblyName aname); // 0x001B366C + private static void FillName(Assembly ass, AssemblyName aname); // 0x001B3670 + public virtual AssemblyName GetName(bool copiedName); // 0x001B3674 + public virtual AssemblyName GetName(); // 0x001B371C + internal virtual AssemblyName UnprotectedGetName(); // 0x001B3730 + public override string ToString(); // 0x001B37B8 + public static string CreateQualifiedName(string assemblyName, string typeName); // 0x001B37E0 + public static Assembly GetAssembly(Type type); // 0x001B387C + public static Assembly GetEntryAssembly(); // 0x001B393C + public Assembly GetSatelliteAssembly(CultureInfo culture); // 0x001B3940 + public Assembly GetSatelliteAssembly(CultureInfo culture, Version version); // 0x001B3CB8 + internal Assembly GetSatelliteAssemblyNoThrow(CultureInfo culture, Version version); // 0x001B3CD4 + private Assembly GetSatelliteAssembly(CultureInfo culture, Version version, bool throwOnError); // 0x001B3960 + private static Assembly LoadFrom(string assemblyFile, bool refonly); // 0x001B3DA8 + public static Assembly LoadFrom(string assemblyFile); // 0x001B3DA0 + public static Assembly LoadFrom(string assemblyFile, Evidence securityEvidence); // 0x001B3DAC + public static Assembly LoadFrom(string assemblyFile, Evidence securityEvidence, byte[] hashValue, AssemblyHashAlgorithm hashAlgorithm); // 0x001B3DB4 + public static Assembly LoadFile(string path, Evidence securityEvidence); // 0x001B3F38 + public static Assembly LoadFile(string path); // 0x001B409C + public static Assembly Load(string assemblyString); // 0x001B40A0 + public static Assembly Load(string assemblyString, Evidence assemblySecurity); // 0x001B40DC + public static Assembly Load(AssemblyName assemblyRef); // 0x001B4120 + public static Assembly Load(AssemblyName assemblyRef, Evidence assemblySecurity); // 0x001B415C + public static Assembly Load(byte[] rawAssembly); // 0x001B41A0 + public static Assembly Load(byte[] rawAssembly, byte[] rawSymbolStore); // 0x001B41DC + public static Assembly Load(byte[] rawAssembly, byte[] rawSymbolStore, Evidence securityEvidence); // 0x001B4220 + public static Assembly ReflectionOnlyLoad(byte[] rawAssembly); // 0x001B4278 + public static Assembly ReflectionOnlyLoad(string assemblyString); // 0x001B42CC + public static Assembly ReflectionOnlyLoadFrom(string assemblyFile); // 0x001B431C + public static Assembly LoadWithPartialName(string partialName); // 0x001B43D4 + public Module LoadModule(string moduleName, byte[] rawModule); // 0x001B43E8 + public Module LoadModule(string moduleName, byte[] rawModule, byte[] rawSymbolStore); // 0x001B4470 + private static Assembly load_with_partial_name(string name, Evidence e); // 0x001B44F8 + public static Assembly LoadWithPartialName(string partialName, Evidence securityEvidence); // 0x001B43E0 + internal static Assembly LoadWithPartialName(string partialName, Evidence securityEvidence, bool oldBehavior); // 0x001B44FC + public object CreateInstance(string typeName); // 0x001B45E0 + public object CreateInstance(string typeName, bool ignoreCase); // 0x001B45E8 + public object CreateInstance(string typeName, bool ignoreCase, BindingFlags bindingAttr, Binder binder, object[] args, CultureInfo culture, object[] activationAttributes); // 0x001B4750 + public Module[] GetLoadedModules(); // 0x001B48D4 + public Module[] GetLoadedModules(bool getResourceModules); // 0x001B48DC + public Module[] GetModules(); // 0x001B4AC8 + public Module GetModule(string name); // 0x001B4AD0 + internal virtual Module[] GetModulesInternal(); // 0x001B4CD4 + public Module[] GetModules(bool getResourceModules); // 0x001B48E0 + internal string[] GetNamespaces(); // 0x001B4CD8 + public virtual string[] GetManifestResourceNames(); // 0x001B4CDC + public static Assembly GetExecutingAssembly(); // 0x001B4CE0 + public static Assembly GetCallingAssembly(); // 0x001B4D3C + public AssemblyName[] GetReferencedAssemblies(); // 0x001B4D40 + private bool GetManifestResourceInfoInternal(string name, ManifestResourceInfo info); // 0x001B4D44 + public virtual ManifestResourceInfo GetManifestResourceInfo(string resourceName); // 0x001B4D48 + internal static int MonoDebugger_GetMethodToken(MethodBase method); // 0x001B4E80 + internal virtual Module GetManifestModule(); // 0x001B4EA0 + internal Module GetManifestModuleInternal(); // 0x001B4EA4 + internal void Resolve(); // 0x001B4EAC + internal static bool LoadPermissions(Assembly a, IntPtr minimum, int minLength, IntPtr optional, int optLength, IntPtr refused, int refLength); // 0x001B5754 + private void LoadAssemblyPermissions(); // 0x001B5070 + virtual Type System.Runtime.InteropServices._Assembly.GetType(); // 0x001B5758 +} + +// Namespace: +internal class ResolveEventHolder // TypeDefIndex: 549 +{ + // Fields + private ModuleResolveEventHandler ModuleResolve; // 0x08 + + // Events + public event ModuleResolveEventHandler ModuleResolve { + add; // 0x001B24A0 + remove; // 0x001B2560 + } + + // Methods + public void .ctor(); // 0x001B246C +} + +// Namespace: +private class ResourceCloseHandler // TypeDefIndex: 550 +{ + // Fields + private Module module; // 0x08 + + // Methods + public void .ctor(Module module); // 0x001B3364 + public void OnClose(object sender, EventArgs e); // 0x001B575C +} + +// Namespace: System.Reflection +public sealed class AssemblyAlgorithmIdAttribute : Attribute // TypeDefIndex: 551 +{ + // Fields + private uint id; // 0x08 + + // Properties + public uint AlgorithmId { get; } // 0x001B57A8 + + // Methods + public void .ctor(AssemblyHashAlgorithm algorithmId); // 0x001B5768 + public void .ctor(uint algorithmId); // 0x001B5788 +} + +// Namespace: System.Reflection +public sealed class AssemblyCompanyAttribute : Attribute // TypeDefIndex: 552 +{ + // Fields + private string name; // 0x08 + + // Properties + public string Company { get; } // 0x001B57D0 + + // Methods + public void .ctor(string company); // 0x001B57B0 +} + +// Namespace: System.Reflection +public sealed class AssemblyConfigurationAttribute : Attribute // TypeDefIndex: 553 +{ + // Fields + private string name; // 0x08 + + // Properties + public string Configuration { get; } // 0x001B57F8 + + // Methods + public void .ctor(string configuration); // 0x001B57D8 +} + +// Namespace: System.Reflection +public sealed class AssemblyCopyrightAttribute : Attribute // TypeDefIndex: 554 +{ + // Fields + private string name; // 0x08 + + // Properties + public string Copyright { get; } // 0x001B5820 + + // Methods + public void .ctor(string copyright); // 0x001B5800 +} + +// Namespace: System.Reflection +public sealed class AssemblyDefaultAliasAttribute : Attribute // TypeDefIndex: 555 +{ + // Fields + private string name; // 0x08 + + // Properties + public string DefaultAlias { get; } // 0x001B5870 + + // Methods + public void .ctor(string defaultAlias); // 0x001B5850 +} + +// Namespace: System.Reflection +public sealed class AssemblyDelaySignAttribute : Attribute // TypeDefIndex: 556 +{ + // Fields + private bool delay; // 0x08 + + // Properties + public bool DelaySign { get; } // 0x001B5898 + + // Methods + public void .ctor(bool delaySign); // 0x001B5878 +} + +// Namespace: System.Reflection +public sealed class AssemblyDescriptionAttribute : Attribute // TypeDefIndex: 557 +{ + // Fields + private string name; // 0x08 + + // Properties + public string Description { get; } // 0x001B58C0 + + // Methods + public void .ctor(string description); // 0x001B58A0 +} + +// Namespace: System.Reflection +public sealed class AssemblyFileVersionAttribute : Attribute // TypeDefIndex: 558 +{ + // Fields + private string name; // 0x08 + + // Properties + public string Version { get; } // 0x001B5984 + + // Methods + public void .ctor(string version); // 0x001B58C8 +} + +// Namespace: System.Reflection +public sealed class AssemblyFlagsAttribute : Attribute // TypeDefIndex: 559 +{ + // Fields + private uint flags; // 0x08 + + // Properties + public uint Flags { get; } // 0x001B59EC + public int AssemblyFlags { get; } // 0x001B59F4 + + // Methods + public void .ctor(uint flags); // 0x001B598C + public void .ctor(int assemblyFlags); // 0x001B59AC + public void .ctor(AssemblyNameFlags assemblyFlags); // 0x001B59CC +} + +// Namespace: System.Reflection +public sealed class AssemblyInformationalVersionAttribute : Attribute // TypeDefIndex: 560 +{ + // Fields + private string name; // 0x08 + + // Properties + public string InformationalVersion { get; } // 0x001B5A1C + + // Methods + public void .ctor(string informationalVersion); // 0x001B59FC +} + +// Namespace: System.Reflection +public sealed class AssemblyKeyFileAttribute : Attribute // TypeDefIndex: 561 +{ + // Fields + private string name; // 0x08 + + // Properties + public string KeyFile { get; } // 0x001B5A44 + + // Methods + public void .ctor(string keyFile); // 0x001B5A24 +} + +// Namespace: System.Reflection +public sealed class AssemblyKeyNameAttribute : Attribute // TypeDefIndex: 562 +{ + // Fields + private string name; // 0x08 + + // Properties + public string KeyName { get; } // 0x001B5A6C + + // Methods + public void .ctor(string keyName); // 0x001B5A4C +} + +// Namespace: System.Reflection +[Serializable] +public sealed class AssemblyName : ICloneable, ISerializable, _AssemblyName, IDeserializationCallback // TypeDefIndex: 563 +{ + // Fields + private string name; // 0x08 + private string codebase; // 0x0C + private int major; // 0x10 + private int minor; // 0x14 + private int build; // 0x18 + private int revision; // 0x1C + private CultureInfo cultureinfo; // 0x20 + private AssemblyNameFlags flags; // 0x24 + private AssemblyHashAlgorithm hashalg; // 0x28 + private StrongNameKeyPair keypair; // 0x2C + private byte[] publicKey; // 0x30 + private byte[] keyToken; // 0x34 + private AssemblyVersionCompatibility versioncompat; // 0x38 + private Version version; // 0x3C + private ProcessorArchitecture processor_architecture; // 0x40 + + // Properties + public ProcessorArchitecture ProcessorArchitecture { get; set; } // 0x001B6368 0x001B6370 + public string Name { get; set; } // 0x001B6378 0x001B6380 + public string CodeBase { get; set; } // 0x001B6388 0x001B6390 + public string EscapedCodeBase { get; } // 0x001B6398 + public CultureInfo CultureInfo { get; set; } // 0x001B644C 0x001B6454 + public AssemblyNameFlags Flags { get; set; } // 0x001B645C 0x001B6464 + public string FullName { get; } // 0x001B646C + public AssemblyHashAlgorithm HashAlgorithm { get; set; } // 0x001B6960 0x001B6968 + public StrongNameKeyPair KeyPair { get; set; } // 0x001B6970 0x001B6978 + public Version Version { get; set; } // 0x001B6980 0x001B3CF0 + public AssemblyVersionCompatibility VersionCompatibility { get; set; } // 0x001B6988 0x001B6990 + private bool IsPublicKeyValid { get; } // 0x001B6ACC + + // Methods + public void .ctor(); // 0x001B37AC + public void .ctor(string assemblyName); // 0x001B5A74 + internal void .ctor(SerializationInfo si, StreamingContext sc); // 0x001B5BCC + private void System.Runtime.InteropServices._AssemblyName.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x001B6148 + private void System.Runtime.InteropServices._AssemblyName.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x001B61D0 + private void System.Runtime.InteropServices._AssemblyName.GetTypeInfoCount(out uint pcTInfo); // 0x001B6258 + private void System.Runtime.InteropServices._AssemblyName.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x001B62E0 + private static bool ParseName(AssemblyName aname, string assemblyName); // 0x001B5BC8 + public override string ToString(); // 0x001B6998 + public byte[] GetPublicKey(); // 0x001B69BC + public byte[] GetPublicKeyToken(); // 0x001B69C4 + private byte[] InternalGetPublicKeyToken(); // 0x001B685C + private byte[] ComputePublicKeyToken(); // 0x001B6D80 + public static bool ReferenceMatchesDefinition(AssemblyName reference, AssemblyName definition); // 0x001B6E74 + public void SetPublicKey(byte[] publicKey); // 0x001B6FEC + public void SetPublicKeyToken(byte[] publicKeyToken); // 0x001B7008 + public void GetObjectData(SerializationInfo info, StreamingContext context); // 0x001B7010 + public object Clone(); // 0x001B72E4 + public void OnDeserialization(object sender); // 0x001B74DC + public static AssemblyName GetAssemblyName(string assemblyFile); // 0x001B74E4 +} + +// Namespace: System.Reflection +[Serializable] +public enum AssemblyNameFlags // TypeDefIndex: 564 +{ + None = 0, + PublicKey = 1, + Retargetable = 256, + EnableJITcompileOptimizer = 16384, + EnableJITcompileTracking = 32768 +} + +// Namespace: System.Reflection +public class AssemblyNameProxy : MarshalByRefObject // TypeDefIndex: 565 +{ + // Methods + public void .ctor(); // 0x001B75F4 + public AssemblyName GetAssemblyName(string assemblyFile); // 0x001B75FC +} + +// Namespace: System.Reflection +public sealed class AssemblyProductAttribute : Attribute // TypeDefIndex: 566 +{ + // Fields + private string name; // 0x08 + + // Properties + public string Product { get; } // 0x001B7624 + + // Methods + public void .ctor(string product); // 0x001B7604 +} + +// Namespace: System.Reflection +public sealed class AssemblyTitleAttribute : Attribute // TypeDefIndex: 567 +{ + // Fields + private string name; // 0x08 + + // Properties + public string Title { get; } // 0x001B764C + + // Methods + public void .ctor(string title); // 0x001B762C +} + +// Namespace: System.Reflection +public sealed class AssemblyTrademarkAttribute : Attribute // TypeDefIndex: 568 +{ + // Fields + private string name; // 0x08 + + // Properties + public string Trademark { get; } // 0x001B7674 + + // Methods + public void .ctor(string trademark); // 0x001B7654 +} + +// Namespace: System.Reflection +[Serializable] +public abstract class Binder // TypeDefIndex: 569 +{ + // Fields + private static Binder default_binder; // 0x00 + + // Properties + internal static Binder DefaultBinder { get; } // 0x001B779C + + // Methods + protected void .ctor(); // 0x001B76A4 + private static void .cctor(); // 0x001B76A8 + public abstract FieldInfo BindToField(BindingFlags bindingAttr, FieldInfo[] match, object value, CultureInfo culture); + public abstract MethodBase BindToMethod(BindingFlags bindingAttr, MethodBase[] match, object[] args, ParameterModifier[] modifiers, CultureInfo culture, string[] names, out object state); + public abstract object ChangeType(object value, Type type, CultureInfo culture); + public abstract void ReorderArgumentArray(object[] args, object state); + public abstract MethodBase SelectMethod(BindingFlags bindingAttr, MethodBase[] match, Type[] types, ParameterModifier[] modifiers); + public abstract PropertyInfo SelectProperty(BindingFlags bindingAttr, PropertyInfo[] match, Type returnType, Type[] indexes, ParameterModifier[] modifiers); + internal static bool ConvertArgs(Binder binder, object[] args, ParameterInfo[] pinfo, CultureInfo culture); // 0x001B7828 + internal static int GetDerivedLevel(Type type); // 0x001B7A94 + internal static MethodBase FindMostDerivedMatch(MethodBase[] match); // 0x001B7AF8 +} + +// Namespace: +internal sealed class Default : Binder // TypeDefIndex: 570 +{ + // Methods + public void .ctor(); // 0x001B7724 + public override FieldInfo BindToField(BindingFlags bindingAttr, FieldInfo[] match, object value, CultureInfo culture); // 0x001B7E3C + public override MethodBase BindToMethod(BindingFlags bindingAttr, MethodBase[] match, object[] args, ParameterModifier[] modifiers, CultureInfo culture, string[] names, out object state); // 0x001B8808 + private void ReorderParameters(string[] names, object[] args, MethodBase selected); // 0x001B8FDC + private static bool IsArrayAssignable(Type object_type, Type target_type); // 0x001B92C0 + public override object ChangeType(object value, Type type, CultureInfo culture); // 0x001B9398 + public override void ReorderArgumentArray(object[] args, object state); // 0x001B97E4 + private static bool check_type(Type from, Type to); // 0x001B7F88 + private static bool check_arguments(Type[] types, ParameterInfo[] args, bool allowByRefMatch); // 0x001B97E8 + public override MethodBase SelectMethod(BindingFlags bindingAttr, MethodBase[] match, Type[] types, ParameterModifier[] modifiers); // 0x001B99A4 + private MethodBase SelectMethod(BindingFlags bindingAttr, MethodBase[] match, Type[] types, ParameterModifier[] modifiers, bool allowByRefMatch); // 0x001B8A54 + private MethodBase GetBetterMethod(MethodBase m1, MethodBase m2, Type[] types); // 0x001B99C4 + private int CompareCloserType(Type t1, Type t2); // 0x001B9DC0 + public override PropertyInfo SelectProperty(BindingFlags bindingAttr, PropertyInfo[] match, Type returnType, Type[] indexes, ParameterModifier[] modifiers); // 0x001BA040 + private static int check_arguments_with_score(Type[] types, ParameterInfo[] args); // 0x001BA314 + private static int check_type_with_score(Type from, Type to); // 0x001BA404 +} + +// Namespace: System.Reflection +[Serializable] +public enum BindingFlags // TypeDefIndex: 571 +{ + Default = 0, + IgnoreCase = 1, + DeclaredOnly = 2, + Instance = 4, + Static = 8, + Public = 16, + NonPublic = 32, + FlattenHierarchy = 64, + InvokeMethod = 256, + CreateInstance = 512, + GetField = 1024, + SetField = 2048, + GetProperty = 4096, + SetProperty = 8192, + PutDispProperty = 16384, + PutRefDispProperty = 32768, + ExactBinding = 65536, + SuppressChangeType = 131072, + OptionalParamBinding = 262144, + IgnoreReturn = 16777216 +} + +// Namespace: System.Reflection +[Serializable] +public enum CallingConventions // TypeDefIndex: 572 +{ + Standard = 1, + VarArgs = 2, + Any = 3, + HasThis = 32, + ExplicitThis = 64 +} + +// Namespace: System.Reflection +[Serializable] +public abstract class ConstructorInfo : MethodBase, _ConstructorInfo // TypeDefIndex: 573 +{ + // Fields + public static readonly string ConstructorName; // 0x00 + public static readonly string TypeConstructorName; // 0x04 + + // Properties + public override MemberTypes MemberType { get; } // 0x001BAC44 + + // Methods + protected void .ctor(); // 0x001BA874 + private static void .cctor(); // 0x001BA87C + private void System.Runtime.InteropServices._ConstructorInfo.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x001BA90C + private void System.Runtime.InteropServices._ConstructorInfo.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x001BA994 + private void System.Runtime.InteropServices._ConstructorInfo.GetTypeInfoCount(out uint pcTInfo); // 0x001BAA1C + private void System.Runtime.InteropServices._ConstructorInfo.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x001BAAA4 + private object System.Runtime.InteropServices._ConstructorInfo.Invoke_2(object obj, BindingFlags invokeAttr, Binder binder, object[] parameters, CultureInfo culture); // 0x001BAB2C + private object System.Runtime.InteropServices._ConstructorInfo.Invoke_3(object obj, object[] parameters); // 0x001BAB64 + private object System.Runtime.InteropServices._ConstructorInfo.Invoke_4(BindingFlags invokeAttr, Binder binder, object[] parameters, CultureInfo culture); // 0x001BAB6C + private object System.Runtime.InteropServices._ConstructorInfo.Invoke_5(object[] parameters); // 0x001BAB98 + public object Invoke(object[] parameters); // 0x001BAB9C + public abstract object Invoke(BindingFlags invokeAttr, Binder binder, object[] parameters, CultureInfo culture); + virtual Type System.Runtime.InteropServices._ConstructorInfo.GetType(); // 0x001BAC4C +} + +// Namespace: System.Reflection +[Serializable] +public sealed class CustomAttributeData // TypeDefIndex: 574 +{ + // Fields + private ConstructorInfo ctorInfo; // 0x08 + private IList`1 ctorArgs; // 0x0C + private IList`1 namedArgs; // 0x10 + + // Properties + public ConstructorInfo Constructor { get; } // 0x001BAD54 + public IList`1 ConstructorArguments { get; } // 0x001BAD5C + public IList`1 NamedArguments { get; } // 0x001BAD64 + + // Methods + internal void .ctor(ConstructorInfo ctorInfo, object[] ctorArgs, object[] namedArgs); // 0x001BAC50 + public static IList`1 GetCustomAttributes(Assembly target); // 0x001BAD6C + public static IList`1 GetCustomAttributes(MemberInfo target); // 0x001BADF0 + public static IList`1 GetCustomAttributes(Module target); // 0x001BAE74 + public static IList`1 GetCustomAttributes(ParameterInfo target); // 0x001BAEF8 + public override string ToString(); // 0x001BAF7C + private static T[] UnboxValues(object[] values); + public override bool Equals(object obj); // 0x001BBA4C + public override int GetHashCode(); // 0x001BC454 +} + +// Namespace: System.Reflection +[Serializable] +public class CustomAttributeFormatException : FormatException // TypeDefIndex: 575 +{ + // Methods + public void .ctor(); // 0x001BC85C + public void .ctor(string message); // 0x001BC8D0 + public void .ctor(string message, Exception inner); // 0x001BC8D8 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x001BC8E0 +} + +// Namespace: System.Reflection +[Serializable] +public struct CustomAttributeNamedArgument // TypeDefIndex: 576 +{ + // Fields + private CustomAttributeTypedArgument typedArgument; // 0x08 + private MemberInfo memberInfo; // 0x10 + + // Properties + public MemberInfo MemberInfo { get; } // 0x0008B39C + public CustomAttributeTypedArgument TypedValue { get; } // 0x0008B3A4 + + // Methods + internal void .ctor(MemberInfo memberInfo, object typedArgument); // 0x0008B394 + public override string ToString(); // 0x0008B3B8 + public override bool Equals(object obj); // 0x0008B3C0 + public override int GetHashCode(); // 0x0008B3C8 + public static bool op_Equality(CustomAttributeNamedArgument left, CustomAttributeNamedArgument right); // 0x001BC9B8 + public static bool op_Inequality(CustomAttributeNamedArgument left, CustomAttributeNamedArgument right); // 0x001BCA48 +} + +// Namespace: System.Reflection +[Serializable] +public struct CustomAttributeTypedArgument // TypeDefIndex: 577 +{ + // Fields + private Type argumentType; // 0x08 + private object value; // 0x0C + + // Properties + public Type ArgumentType { get; } // 0x0008B434 + public object Value { get; } // 0x0008B43C + + // Methods + internal void .ctor(Type argumentType, object value); // 0x0008B42C + public override string ToString(); // 0x0008B444 + public override bool Equals(object obj); // 0x0008B44C + public override int GetHashCode(); // 0x0008B454 + public static bool op_Equality(CustomAttributeTypedArgument left, CustomAttributeTypedArgument right); // 0x001BCCD0 + public static bool op_Inequality(CustomAttributeTypedArgument left, CustomAttributeTypedArgument right); // 0x001BCD5C +} + +// Namespace: System.Reflection +[Serializable] +public enum EventAttributes // TypeDefIndex: 578 +{ + None = 0, + SpecialName = 512, + ReservedMask = 1024, + RTSpecialName = 1024 +} + +// Namespace: System.Reflection +[Serializable] +public abstract class EventInfo : MemberInfo, _EventInfo // TypeDefIndex: 579 +{ + // Fields + private AddEventAdapter cached_add_event; // 0x08 + + // Properties + public abstract EventAttributes Attributes { get; } + public Type EventHandlerType { get; } // 0x0027EC1C + public bool IsMulticast { get; } // 0x0027ECB4 + public bool IsSpecialName { get; } // 0x0027ECBC + public override MemberTypes MemberType { get; } // 0x0027ECDC + + // Methods + protected void .ctor(); // 0x0027E9EC + private void System.Runtime.InteropServices._EventInfo.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x0027E9FC + private void System.Runtime.InteropServices._EventInfo.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x0027EA84 + private void System.Runtime.InteropServices._EventInfo.GetTypeInfoCount(out uint pcTInfo); // 0x0027EB0C + private void System.Runtime.InteropServices._EventInfo.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x0027EB94 + public void AddEventHandler(object target, Delegate handler); // 0x0027ECE4 + public MethodInfo GetAddMethod(); // 0x0027EF5C + public abstract MethodInfo GetAddMethod(bool nonPublic); + public MethodInfo GetRaiseMethod(); // 0x0027F874 + public abstract MethodInfo GetRaiseMethod(bool nonPublic); + public MethodInfo GetRemoveMethod(); // 0x0027F888 + public abstract MethodInfo GetRemoveMethod(bool nonPublic); + public virtual MethodInfo[] GetOtherMethods(bool nonPublic); // 0x0027F89C + public MethodInfo[] GetOtherMethods(); // 0x0027F8FC + public void RemoveEventHandler(object target, Delegate handler); // 0x0027F910 + private static void AddEventFrame(AddEvent`2 addEvent, object obj, object dele); + private static void StaticAddEventAdapterFrame(StaticAddEvent`1 addEvent, object obj, object dele); + private static AddEventAdapter CreateAddEventDelegate(MethodInfo method); // 0x0027EFA8 + virtual Type System.Runtime.InteropServices._EventInfo.GetType(); // 0x0027FA94 +} + +// Namespace: +private delegate void AddEventAdapter(object _this, Delegate dele); // TypeDefIndex: 580; 0x0027F4C8 + +// Namespace: +private delegate void AddEvent`2(T _this, T dele); // TypeDefIndex: 581; 0x00000000 + +// Namespace: +private delegate void StaticAddEvent`1(T dele); // TypeDefIndex: 582; 0x00000000 + +// Namespace: System.Reflection +public sealed class ExceptionHandlingClause // TypeDefIndex: 583 +{ + // Fields + internal Type catch_type; // 0x08 + internal int filter_offset; // 0x0C + internal ExceptionHandlingClauseOptions flags; // 0x10 + internal int try_offset; // 0x14 + internal int try_length; // 0x18 + internal int handler_offset; // 0x1C + internal int handler_length; // 0x20 + + // Properties + public Type CatchType { get; } // 0x0027FAFC + public int FilterOffset { get; } // 0x0027FB04 + public ExceptionHandlingClauseOptions Flags { get; } // 0x0027FB0C + public int HandlerLength { get; } // 0x0027FB14 + public int HandlerOffset { get; } // 0x0027FB1C + public int TryLength { get; } // 0x0027FB24 + public int TryOffset { get; } // 0x0027FB2C + + // Methods + internal void .ctor(); // 0x0027FAF4 + public override string ToString(); // 0x0027FB34 +} + +// Namespace: System.Reflection +public enum ExceptionHandlingClauseOptions // TypeDefIndex: 584 +{ + Clause = 0, + Filter = 1, + Finally = 2, + Fault = 4 +} + +// Namespace: System.Reflection +[Serializable] +public enum FieldAttributes // TypeDefIndex: 585 +{ + PrivateScope = 0, + Private = 1, + FamANDAssem = 2, + Assembly = 3, + Family = 4, + FamORAssem = 5, + Public = 6, + FieldAccessMask = 7, + Static = 16, + InitOnly = 32, + Literal = 64, + NotSerialized = 128, + HasFieldRVA = 256, + SpecialName = 512, + RTSpecialName = 1024, + HasFieldMarshal = 4096, + PinvokeImpl = 8192, + HasDefault = 32768, + ReservedMask = 38144 +} + +// Namespace: System.Reflection +[Serializable] +public abstract class FieldInfo : MemberInfo, _FieldInfo // TypeDefIndex: 586 +{ + // Properties + public abstract FieldAttributes Attributes { get; } + public abstract RuntimeFieldHandle FieldHandle { get; } + public abstract Type FieldType { get; } + public override MemberTypes MemberType { get; } // 0x00280250 + public bool IsLiteral { get; } // 0x00280258 + public bool IsStatic { get; } // 0x00279FD4 + public bool IsInitOnly { get; } // 0x00280278 + public bool IsPublic { get; } // 0x00280298 + public bool IsPrivate { get; } // 0x002802C4 + public bool IsFamily { get; } // 0x002802EC + public bool IsAssembly { get; } // 0x00280318 + public bool IsFamilyAndAssembly { get; } // 0x00280344 + public bool IsFamilyOrAssembly { get; } // 0x00280370 + public bool IsPinvokeImpl { get; } // 0x0028039C + public bool IsSpecialName { get; } // 0x002803BC + public bool IsNotSerialized { get; } // 0x002803DC + internal virtual UnmanagedMarshal UMarshal { get; } // 0x002807C4 + + // Methods + protected void .ctor(); // 0x00280028 + private void System.Runtime.InteropServices._FieldInfo.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x00280030 + private void System.Runtime.InteropServices._FieldInfo.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x002800B8 + private void System.Runtime.InteropServices._FieldInfo.GetTypeInfoCount(out uint pcTInfo); // 0x00280140 + private void System.Runtime.InteropServices._FieldInfo.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x002801C8 + public abstract object GetValue(object obj); + public abstract void SetValue(object obj, object value, BindingFlags invokeAttr, Binder binder, CultureInfo culture); + public void SetValue(object obj, object value); // 0x002803FC + private static FieldInfo internal_from_handle_type(IntPtr field_handle, IntPtr type_handle); // 0x00280434 + public static FieldInfo GetFieldFromHandle(RuntimeFieldHandle handle); // 0x00280438 + public static FieldInfo GetFieldFromHandle(RuntimeFieldHandle handle, RuntimeTypeHandle declaringType); // 0x00280500 + internal virtual int GetFieldOffset(); // 0x00280614 + public virtual object GetValueDirect(TypedReference obj); // 0x002806B0 + public virtual void SetValueDirect(TypedReference obj, object value); // 0x00280738 + private UnmanagedMarshal GetUnmanagedMarshal(); // 0x002807C0 + internal object[] GetPseudoCustomAttributes(); // 0x002807C8 + private Type[] GetTypeModifiers(bool optional); // 0x00280AB4 + public virtual Type[] GetOptionalCustomModifiers(); // 0x00280AB8 + public virtual Type[] GetRequiredCustomModifiers(); // 0x00280B5C + public virtual object GetRawConstantValue(); // 0x00280C00 + virtual Type System.Runtime.InteropServices._FieldInfo.GetType(); // 0x00280C9C +} + +// Namespace: System.Reflection +public enum GenericParameterAttributes // TypeDefIndex: 587 +{ + None = 0, + Covariant = 1, + Contravariant = 2, + VarianceMask = 3, + ReferenceTypeConstraint = 4, + NotNullableValueTypeConstraint = 8, + DefaultConstructorConstraint = 16, + SpecialConstraintMask = 28 +} + +// Namespace: System.Reflection +[Serializable] +public enum ImageFileMachine // TypeDefIndex: 588 +{ + I386 = 332, + IA64 = 512, + AMD64 = 34404 +} + +// Namespace: System.Reflection +public struct InterfaceMapping // TypeDefIndex: 589 +{ + // Fields + public MethodInfo[] InterfaceMethods; // 0x08 + public Type InterfaceType; // 0x0C + public MethodInfo[] TargetMethods; // 0x10 + public Type TargetType; // 0x14 + +} + +// Namespace: System.Reflection +[Serializable] +public class InvalidFilterCriteriaException : ApplicationException // TypeDefIndex: 590 +{ + // Methods + public void .ctor(); // 0x00281080 + public void .ctor(string message); // 0x002810F4 + public void .ctor(string message, Exception inner); // 0x002810FC + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x00281104 +} + +// Namespace: System.Reflection +public class LocalVariableInfo // TypeDefIndex: 591 +{ + // Fields + internal Type type; // 0x08 + internal bool is_pinned; // 0x0C + internal ushort position; // 0x0E + + // Properties + public virtual bool IsPinned { get; } // 0x0028112C + public virtual int LocalIndex { get; } // 0x00281134 + public virtual Type LocalType { get; } // 0x0028113C + + // Methods + internal void .ctor(); // 0x00281124 + public override string ToString(); // 0x00281144 +} + +// Namespace: System.Reflection +public class ManifestResourceInfo // TypeDefIndex: 592 +{ + // Fields + private Assembly _assembly; // 0x08 + private string _filename; // 0x0C + private ResourceLocation _location; // 0x10 + + // Properties + public virtual string FileName { get; } // 0x002812AC + public virtual Assembly ReferencedAssembly { get; } // 0x002812B4 + public virtual ResourceLocation ResourceLocation { get; } // 0x002812BC + + // Methods + internal void .ctor(); // 0x00281274 + internal void .ctor(Assembly assembly, string filename, ResourceLocation location); // 0x0028127C +} + +// Namespace: System.Reflection +[Serializable] +internal class MemberInfoSerializationHolder : ISerializable, IObjectReference // TypeDefIndex: 593 +{ + // Fields + private const BindingFlags DefaultBinding = 60; // 0x00 + private readonly string _memberName; // 0x08 + private readonly string _memberSignature; // 0x0C + private readonly MemberTypes _memberType; // 0x10 + private readonly Type _reflectedType; // 0x14 + private readonly Type[] _genericArguments; // 0x18 + + // Methods + private void .ctor(SerializationInfo info, StreamingContext ctx); // 0x00281964 + public static void Serialize(SerializationInfo info, string name, Type klass, string signature, MemberTypes type); // 0x00281B4C + public static void Serialize(SerializationInfo info, string name, Type klass, string signature, MemberTypes type, Type[] genericArguments); // 0x00281B70 + public void GetObjectData(SerializationInfo info, StreamingContext context); // 0x00281EB4 + public object GetRealObject(StreamingContext context); // 0x00281F3C +} + +// Namespace: System.Reflection +[Serializable] +public enum MemberTypes // TypeDefIndex: 594 +{ + Constructor = 1, + Event = 2, + Field = 4, + Method = 8, + Property = 16, + TypeInfo = 32, + Custom = 64, + NestedType = 128, + All = 191 +} + +// Namespace: System.Reflection +[Serializable] +public enum MethodAttributes // TypeDefIndex: 595 +{ + PrivateScope = 0, + ReuseSlot = 0, + Private = 1, + FamANDAssem = 2, + Assembly = 3, + Family = 4, + FamORAssem = 5, + Public = 6, + MemberAccessMask = 7, + UnmanagedExport = 8, + Static = 16, + Final = 32, + Virtual = 64, + HideBySig = 128, + VtableLayoutMask = 256, + NewSlot = 256, + CheckAccessOnOverride = 512, + Abstract = 1024, + SpecialName = 2048, + RTSpecialName = 4096, + PinvokeImpl = 8192, + HasSecurity = 16384, + RequireSecObject = 32768, + ReservedMask = 53248 +} + +// Namespace: System.Reflection +[Serializable] +public abstract class MethodBase : MemberInfo, _MethodBase // TypeDefIndex: 596 +{ + // Properties + public abstract RuntimeMethodHandle MethodHandle { get; } + public abstract MethodAttributes Attributes { get; } + public virtual CallingConventions CallingConvention { get; } // 0x00282CD8 + public bool IsPublic { get; } // 0x00282CE0 + public bool IsPrivate { get; } // 0x00282D0C + public bool IsFamily { get; } // 0x00282D34 + public bool IsAssembly { get; } // 0x00282D60 + public bool IsFamilyAndAssembly { get; } // 0x00282D8C + public bool IsFamilyOrAssembly { get; } // 0x00282DB8 + public bool IsStatic { get; } // 0x0027B3D0 + public bool IsFinal { get; } // 0x00282DE4 + public bool IsVirtual { get; } // 0x00282E04 + public bool IsHideBySig { get; } // 0x00282E24 + public bool IsAbstract { get; } // 0x00279FF4 + public bool IsSpecialName { get; } // 0x00282E44 + public bool IsConstructor { get; } // 0x00282E64 + public virtual bool ContainsGenericParameters { get; } // 0x002830EC + public virtual bool IsGenericMethodDefinition { get; } // 0x002830F4 + public virtual bool IsGenericMethod { get; } // 0x002830FC + + // Methods + protected void .ctor(); // 0x00282780 + private void System.Runtime.InteropServices._MethodBase.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x00282788 + private void System.Runtime.InteropServices._MethodBase.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x00282810 + private void System.Runtime.InteropServices._MethodBase.GetTypeInfoCount(out uint pcTInfo); // 0x00282898 + private void System.Runtime.InteropServices._MethodBase.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x00282920 + public static MethodBase GetCurrentMethod(); // 0x002829A8 + internal static MethodBase GetMethodFromHandleNoGenericCheck(RuntimeMethodHandle handle); // 0x00282A18 + private static MethodBase GetMethodFromIntPtr(IntPtr handle, IntPtr declaringType); // 0x00282A70 + public static MethodBase GetMethodFromHandle(RuntimeMethodHandle handle); // 0x00282B88 + private static MethodBase GetMethodFromHandleInternalType(IntPtr method_handle, IntPtr type_handle); // 0x00282B84 + public static MethodBase GetMethodFromHandle(RuntimeMethodHandle handle, RuntimeTypeHandle declaringType); // 0x00282CAC + public abstract MethodImplAttributes GetMethodImplementationFlags(); + public abstract ParameterInfo[] GetParameters(); + internal virtual int GetParameterCount(); // 0x00282CB0 + public object Invoke(object obj, object[] parameters); // 0x0027EF70 + public abstract object Invoke(object obj, BindingFlags invokeAttr, Binder binder, object[] parameters, CultureInfo culture); + internal virtual int get_next_table_index(object obj, int table, bool inc); // 0x00282F30 + public virtual Type[] GetGenericArguments(); // 0x00283064 + internal static MethodBody GetMethodBodyInternal(IntPtr handle); // 0x00283104 + internal static MethodBody GetMethodBody(IntPtr handle); // 0x00283108 + public virtual MethodBody GetMethodBody(); // 0x0028310C + virtual Type System.Runtime.InteropServices._MethodBase.GetType(); // 0x00283194 +} + +// Namespace: System.Reflection +public sealed class MethodBody // TypeDefIndex: 597 +{ + // Fields + private ExceptionHandlingClause[] clauses; // 0x08 + private LocalVariableInfo[] locals; // 0x0C + private byte[] il; // 0x10 + private bool init_locals; // 0x14 + private int sig_token; // 0x18 + private int max_stack; // 0x1C + + // Properties + public IList`1 ExceptionHandlingClauses { get; } // 0x002831A4 + public IList`1 LocalVariables { get; } // 0x00283208 + public bool InitLocals { get; } // 0x0028326C + public int LocalSignatureMetadataToken { get; } // 0x00283274 + public int MaxStackSize { get; } // 0x0028327C + + // Methods + internal void .ctor(); // 0x0028319C + public byte[] GetILAsByteArray(); // 0x00283284 +} + +// Namespace: System.Reflection +[Serializable] +public enum MethodImplAttributes // TypeDefIndex: 598 +{ + IL = 0, + Managed = 0, + Native = 1, + OPTIL = 2, + CodeTypeMask = 3, + Runtime = 3, + ManagedMask = 4, + Unmanaged = 4, + NoInlining = 8, + ForwardRef = 16, + Synchronized = 32, + PreserveSig = 128, + InternalCall = 4096, + MaxMethodImplVal = 65535 +} + +// Namespace: System.Reflection +[Serializable] +public abstract class MethodInfo : MethodBase, _MethodInfo // TypeDefIndex: 599 +{ + // Properties + public override MemberTypes MemberType { get; } // 0x002834B4 + public virtual Type ReturnType { get; } // 0x002834BC + public abstract ICustomAttributeProvider ReturnTypeCustomAttributes { get; } + public override bool IsGenericMethod { get; } // 0x00283698 + public override bool IsGenericMethodDefinition { get; } // 0x002836A0 + public override bool ContainsGenericParameters { get; } // 0x002836A8 + public virtual ParameterInfo ReturnParameter { get; } // 0x002836B0 + + // Methods + protected void .ctor(); // 0x0028328C + private void System.Runtime.InteropServices._MethodInfo.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x00283294 + private void System.Runtime.InteropServices._MethodInfo.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x0028331C + private void System.Runtime.InteropServices._MethodInfo.GetTypeInfoCount(out uint pcTInfo); // 0x002833A4 + private void System.Runtime.InteropServices._MethodInfo.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x0028342C + public abstract MethodInfo GetBaseDefinition(); + public virtual MethodInfo GetGenericMethodDefinition(); // 0x002834C4 + public virtual MethodInfo MakeGenericMethod(Type[] typeArguments); // 0x0028354C + public override Type[] GetGenericArguments(); // 0x0028360C + virtual Type System.Runtime.InteropServices._MethodInfo.GetType(); // 0x00283738 +} + +// Namespace: System.Reflection +[Serializable] +public sealed class Missing : ISerializable // TypeDefIndex: 600 +{ + // Fields + public static readonly Missing Value; // 0x00 + + // Methods + internal void .ctor(); // 0x00283740 + private static void .cctor(); // 0x00283748 + private void System.Runtime.Serialization.ISerializable.GetObjectData(SerializationInfo info, StreamingContext context); // 0x002837BC +} + +// Namespace: System.Reflection +internal enum ResolveTokenError // TypeDefIndex: 601 +{ + OutOfRange = 0, + BadTable = 1, + Other = 2 +} + +// Namespace: System.Reflection +[Serializable] +public class Module : ISerializable, ICustomAttributeProvider, _Module // TypeDefIndex: 602 +{ + // Fields + private const BindingFlags defaultBindingFlags = 28; // 0x00 + public static readonly TypeFilter FilterTypeName; // 0x00 + public static readonly TypeFilter FilterTypeNameIgnoreCase; // 0x04 + private IntPtr _impl; // 0x08 + internal Assembly assembly; // 0x0C + internal string fqname; // 0x10 + internal string name; // 0x14 + internal string scopename; // 0x18 + internal bool is_resource; // 0x1C + internal int token; // 0x20 + + // Properties + public Assembly Assembly { get; } // 0x00283AB8 + public virtual string FullyQualifiedName { get; } // 0x00283AC0 + public string Name { get; } // 0x00283AC8 + public string ScopeName { get; } // 0x00283AD0 + public ModuleHandle ModuleHandle { get; } // 0x00283AD8 + public int MetadataToken { get; } // 0x00283AE0 + public int MDStreamVersion { get; } // 0x00283AE4 + internal Guid MvId { get; } // 0x002846AC + public Guid ModuleVersionId { get; } // 0x002846C8 + + // Methods + internal void .ctor(); // 0x002837C0 + private static void .cctor(); // 0x002837C8 + private void System.Runtime.InteropServices._Module.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x00283898 + private void System.Runtime.InteropServices._Module.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x00283920 + private void System.Runtime.InteropServices._Module.GetTypeInfoCount(out uint pcTInfo); // 0x002839A8 + private void System.Runtime.InteropServices._Module.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x00283A30 + internal static int GetMDStreamVersion(IntPtr module_handle); // 0x00283BC4 + public virtual Type[] FindTypes(TypeFilter filter, object filterCriteria); // 0x00283BC8 + public virtual object[] GetCustomAttributes(bool inherit); // 0x00283DB8 + public virtual object[] GetCustomAttributes(Type attributeType, bool inherit); // 0x00283E44 + public FieldInfo GetField(string name); // 0x00283ED8 + public FieldInfo GetField(string name, BindingFlags bindingAttr); // 0x00283F24 + public FieldInfo[] GetFields(); // 0x00283F70 + public MethodInfo GetMethod(string name); // 0x00284018 + public MethodInfo GetMethod(string name, Type[] types); // 0x00284054 + public MethodInfo GetMethod(string name, BindingFlags bindingAttr, Binder binder, CallingConventions callConvention, Type[] types, ParameterModifier[] modifiers); // 0x00284094 + protected virtual MethodInfo GetMethodImpl(string name, BindingFlags bindingAttr, Binder binder, CallingConventions callConvention, Type[] types, ParameterModifier[] modifiers); // 0x002840D0 + public MethodInfo[] GetMethods(); // 0x00284140 + public MethodInfo[] GetMethods(BindingFlags bindingFlags); // 0x002841DC + public FieldInfo[] GetFields(BindingFlags bindingFlags); // 0x00284288 + public virtual void GetObjectData(SerializationInfo info, StreamingContext context); // 0x00284334 + public virtual Type GetType(string className); // 0x00284410 + public virtual Type GetType(string className, bool ignoreCase); // 0x00284440 + public virtual Type GetType(string className, bool throwOnError, bool ignoreCase); // 0x00284470 + private Type[] InternalGetTypes(); // 0x00284600 + public virtual Type[] GetTypes(); // 0x00284604 + public virtual bool IsDefined(Type attributeType, bool inherit); // 0x00284608 + public bool IsResource(); // 0x0028469C + public override string ToString(); // 0x002846A4 + public void GetPEKind(out PortableExecutableKinds peKind, out ImageFileMachine machine); // 0x002846E4 + private Exception resolve_token_exception(int metadataToken, ResolveTokenError error, string tokenType); // 0x0028470C + private IntPtr[] ptrs_from_types(Type[] types); // 0x002848DC + public FieldInfo ResolveField(int metadataToken); // 0x00284A60 + public FieldInfo ResolveField(int metadataToken, Type[] genericTypeArguments, Type[] genericMethodArguments); // 0x00284A80 + public MemberInfo ResolveMember(int metadataToken); // 0x00284BB0 + public MemberInfo ResolveMember(int metadataToken, Type[] genericTypeArguments, Type[] genericMethodArguments); // 0x00284BD0 + public MethodBase ResolveMethod(int metadataToken); // 0x00284CE4 + public MethodBase ResolveMethod(int metadataToken, Type[] genericTypeArguments, Type[] genericMethodArguments); // 0x00284D04 + public string ResolveString(int metadataToken); // 0x00284E34 + public Type ResolveType(int metadataToken); // 0x00284F1C + public Type ResolveType(int metadataToken, Type[] genericTypeArguments, Type[] genericMethodArguments); // 0x00284F3C + public byte[] ResolveSignature(int metadataToken); // 0x0028509C + internal static Type MonoDebugger_ResolveType(Module module, int token); // 0x00285184 + internal static Guid Mono_GetGuid(Module module); // 0x0028529C + internal virtual Guid GetModuleVersionId(); // 0x002852D8 + private static bool filter_by_type_name(Type m, object filterCriteria); // 0x0028530C + private static bool filter_by_type_name_ignore_case(Type m, object filterCriteria); // 0x00285490 + internal IntPtr GetHINSTANCE(); // 0x00285668 + private string GetGuidInternal(); // 0x00285308 + private Type GetGlobalType(); // 0x00283F20 + internal static IntPtr ResolveTypeToken(IntPtr module, int token, IntPtr[] type_args, IntPtr[] method_args, out ResolveTokenError error); // 0x00285098 + internal static IntPtr ResolveMethodToken(IntPtr module, int token, IntPtr[] type_args, IntPtr[] method_args, out ResolveTokenError error); // 0x00284E30 + internal static IntPtr ResolveFieldToken(IntPtr module, int token, IntPtr[] type_args, IntPtr[] method_args, out ResolveTokenError error); // 0x00284BAC + internal static string ResolveStringToken(IntPtr module, int token, out ResolveTokenError error); // 0x00284F18 + internal static MemberInfo ResolveMemberToken(IntPtr module, int token, IntPtr[] type_args, IntPtr[] method_args, out ResolveTokenError error); // 0x00284CE0 + internal static byte[] ResolveSignature(IntPtr module, int metadataToken, out ResolveTokenError error); // 0x00285180 + internal static void GetPEKind(IntPtr module, out PortableExecutableKinds peKind, out ImageFileMachine machine); // 0x0028566C +} + +// Namespace: System.Reflection +internal struct MonoEventInfo // TypeDefIndex: 603 +{ + // Fields + public Type declaring_type; // 0x08 + public Type reflected_type; // 0x0C + public string name; // 0x10 + public MethodInfo add_method; // 0x14 + public MethodInfo remove_method; // 0x18 + public MethodInfo raise_method; // 0x1C + public EventAttributes attrs; // 0x20 + public MethodInfo[] other_methods; // 0x24 + + // Methods + private static void get_event_info(MonoEvent ev, out MonoEventInfo info); // 0x00287B38 + internal static MonoEventInfo GetEventInfo(MonoEvent ev); // 0x002873F0 +} + +// Namespace: System.Reflection +[Serializable] +internal sealed class MonoEvent : EventInfo, ISerializable // TypeDefIndex: 604 +{ + // Fields + private IntPtr klass; // 0x0C + private IntPtr handle; // 0x10 + + // Properties + public override EventAttributes Attributes { get; } // 0x002873C0 + public override Type DeclaringType { get; } // 0x00287798 + public override Type ReflectedType { get; } // 0x002877C8 + public override string Name { get; } // 0x002877F8 + + // Methods + public void .ctor(); // 0x002873B8 + public override MethodInfo GetAddMethod(bool nonPublic); // 0x00287438 + public override MethodInfo GetRaiseMethod(bool nonPublic); // 0x002874AC + public override MethodInfo GetRemoveMethod(bool nonPublic); // 0x00287520 + public override MethodInfo[] GetOtherMethods(bool nonPublic); // 0x00287594 + public override string ToString(); // 0x00287828 + public override bool IsDefined(Type attributeType, bool inherit); // 0x002878F4 + public override object[] GetCustomAttributes(bool inherit); // 0x00287988 + public override object[] GetCustomAttributes(Type attributeType, bool inherit); // 0x00287A14 + public void GetObjectData(SerializationInfo info, StreamingContext context); // 0x00287AA8 +} + +// Namespace: System.Reflection +[Serializable] +internal class MonoField : FieldInfo, ISerializable // TypeDefIndex: 605 +{ + // Fields + internal IntPtr klass; // 0x08 + internal RuntimeFieldHandle fhandle; // 0x0C + private string name; // 0x10 + private Type type; // 0x14 + private FieldAttributes attrs; // 0x18 + + // Properties + public override FieldAttributes Attributes { get; } // 0x00287B44 + public override RuntimeFieldHandle FieldHandle { get; } // 0x00287B4C + public override Type FieldType { get; } // 0x00287B54 + public override Type ReflectedType { get; } // 0x00287B60 + public override Type DeclaringType { get; } // 0x00287B68 + public override string Name { get; } // 0x00287B70 + + // Methods + public void .ctor(); // 0x00287B3C + private Type GetParentType(bool declaring); // 0x00287B5C + public override bool IsDefined(Type attributeType, bool inherit); // 0x00287B78 + public override object[] GetCustomAttributes(bool inherit); // 0x00287C0C + public override object[] GetCustomAttributes(Type attributeType, bool inherit); // 0x00287C98 + internal override int GetFieldOffset(); // 0x00287D2C + private object GetValueInternal(object obj); // 0x00287D30 + public override object GetValue(object obj); // 0x00287D34 + public override string ToString(); // 0x00288058 + private static void SetValueInternal(FieldInfo fi, object obj, object value); // 0x002880F8 + public override void SetValue(object obj, object val, BindingFlags invokeAttr, Binder binder, CultureInfo culture); // 0x002880FC + internal MonoField Clone(string newName); // 0x002886CC + public void GetObjectData(SerializationInfo info, StreamingContext context); // 0x002887C8 + public override object GetRawConstantValue(); // 0x0028884C + private void CheckGeneric(); // 0x00287F74 +} + +// Namespace: System.Reflection +internal class MonoGenericClass : MonoType // TypeDefIndex: 606 +{ + // Fields + private const BindingFlags flags = 62; // 0x00 + internal TypeBuilder generic_type; // 0x10 + private Type[] type_arguments; // 0x14 + private bool initialized; // 0x18 + private Hashtable fields; // 0x1C + private Hashtable ctors; // 0x20 + private Hashtable methods; // 0x24 + private int event_count; // 0x28 + + // Properties + public override Type BaseType { get; } // 0x00289020 + public override Type UnderlyingSystemType { get; } // 0x0028B41C + public override string Name { get; } // 0x0028B420 + public override string Namespace { get; } // 0x0028B444 + public override string FullName { get; } // 0x0028B468 + public override string AssemblyQualifiedName { get; } // 0x0028B8A8 + public override Guid GUID { get; } // 0x0028B8B4 + + // Methods + internal void .ctor(); // 0x002888E8 + internal void .ctor(TypeBuilder tb, Type[] args); // 0x00288984 + private void initialize(MethodInfo[] methods, ConstructorInfo[] ctors, FieldInfo[] fields, PropertyInfo[] properties, EventInfo[] events); // 0x002889B0 + private void initialize(); // 0x002889B4 + private Type GetParentType(); // 0x00288B4C + internal Type InflateType(Type type); // 0x00272FD8 + internal Type InflateType(Type type, Type[] method_args); // 0x00288B80 + private Type[] GetInterfacesInternal(); // 0x00289054 + public override Type[] GetInterfaces(); // 0x002891FC + protected override bool IsValueTypeImpl(); // 0x002892B8 + internal override MethodInfo GetMethod(MethodInfo fromNoninstanciated); // 0x002892E4 + internal override ConstructorInfo GetConstructor(ConstructorInfo fromNoninstanciated); // 0x00289548 + internal override FieldInfo GetField(FieldInfo fromNoninstanciated); // 0x002897AC + public override MethodInfo[] GetMethods(BindingFlags bf); // 0x00289A10 + private MethodInfo[] GetMethodsInternal(BindingFlags bf, MonoGenericClass reftype); // 0x00289CB4 + public override ConstructorInfo[] GetConstructors(BindingFlags bf); // 0x00289ED0 + private ConstructorInfo[] GetConstructorsInternal(BindingFlags bf, MonoGenericClass reftype); // 0x0028A164 + public override FieldInfo[] GetFields(BindingFlags bf); // 0x0028A394 + private FieldInfo[] GetFieldsInternal(BindingFlags bf, MonoGenericClass reftype); // 0x0028A628 + public override PropertyInfo[] GetProperties(BindingFlags bf); // 0x0028A844 + private PropertyInfo[] GetPropertiesInternal(BindingFlags bf, MonoGenericClass reftype); // 0x0028AAEC + public override EventInfo[] GetEvents(BindingFlags bf); // 0x0028AD64 + private EventInfo[] GetEventsInternal(BindingFlags bf, MonoGenericClass reftype); // 0x0028AFF8 + public override Type[] GetNestedTypes(BindingFlags bf); // 0x0028B240 + public override bool IsAssignableFrom(Type c); // 0x0028B270 + private string format_name(bool full_name, bool assembly_qualified); // 0x0028B474 + public override string ToString(); // 0x0028B93C + public override Type MakeArrayType(); // 0x0028B948 + public override Type MakeArrayType(int rank); // 0x0028B9C0 + public override Type MakeByRefType(); // 0x0028BA88 + public override Type MakePointerType(); // 0x0028BAFC + protected override bool IsCOMObjectImpl(); // 0x0028BB70 + protected override bool IsPrimitiveImpl(); // 0x0028BB78 + protected override TypeAttributes GetAttributeFlagsImpl(); // 0x0028BB80 + public override Type GetInterface(string name, bool ignoreCase); // 0x0028BBAC + public override EventInfo GetEvent(string name, BindingFlags bindingAttr); // 0x0028BC34 + public override FieldInfo GetField(string name, BindingFlags bindingAttr); // 0x0028BDD0 + public override MemberInfo[] GetMembers(BindingFlags bindingAttr); // 0x0028BE58 + public override Type GetNestedType(string name, BindingFlags bindingAttr); // 0x0028BEE0 + public override object InvokeMember(string name, BindingFlags invokeAttr, Binder binder, object target, object[] args, ParameterModifier[] modifiers, CultureInfo culture, string[] namedParameters); // 0x0028BF68 + protected override MethodInfo GetMethodImpl(string name, BindingFlags bindingAttr, Binder binder, CallingConventions callConvention, Type[] types, ParameterModifier[] modifiers); // 0x0028BFF0 + protected override PropertyInfo GetPropertyImpl(string name, BindingFlags bindingAttr, Binder binder, Type returnType, Type[] types, ParameterModifier[] modifiers); // 0x0028C078 + protected override ConstructorInfo GetConstructorImpl(BindingFlags bindingAttr, Binder binder, CallingConventions callConvention, Type[] types, ParameterModifier[] modifiers); // 0x0028C100 + public override bool IsDefined(Type attributeType, bool inherit); // 0x0028C188 + public override object[] GetCustomAttributes(bool inherit); // 0x0028C210 + public override object[] GetCustomAttributes(Type attributeType, bool inherit); // 0x0028C298 +} + +// Namespace: System.Reflection +[Serializable] +internal class MonoGenericMethod : MonoMethod // TypeDefIndex: 607 +{ + // Properties + public override Type ReflectedType { get; } // 0x0028C3C0 + + // Methods + internal void .ctor(); // 0x0028C320 +} + +// Namespace: System.Reflection +[Serializable] +internal class MonoGenericCMethod : MonoCMethod // TypeDefIndex: 608 +{ + // Properties + public override Type ReflectedType { get; } // 0x002888E4 + + // Methods + internal void .ctor(); // 0x00288850 +} + +// Namespace: System.Reflection +internal struct MonoMethodInfo // TypeDefIndex: 609 +{ + // Fields + private Type parent; // 0x08 + private Type ret; // 0x0C + internal MethodAttributes attrs; // 0x10 + internal MethodImplAttributes iattrs; // 0x14 + private CallingConventions callconv; // 0x18 + + // Methods + private static void get_method_info(IntPtr handle, out MonoMethodInfo info); // 0x0028DB68 + internal static MonoMethodInfo GetMethodInfo(IntPtr handle); // 0x0028D00C + internal static Type GetDeclaringType(IntPtr handle); // 0x00286E58 + internal static Type GetReturnType(IntPtr handle); // 0x0028C4FC + internal static MethodAttributes GetAttributes(IntPtr handle); // 0x00286D78 + internal static CallingConventions GetCallingConvention(IntPtr handle); // 0x00286DE4 + internal static MethodImplAttributes GetMethodImplementationFlags(IntPtr handle); // 0x00286624 + private static ParameterInfo[] get_parameter_info(IntPtr handle, MemberInfo member); // 0x0028DB6C + internal static ParameterInfo[] GetParametersInfo(IntPtr handle, MemberInfo member); // 0x00286664 + private static UnmanagedMarshal get_retval_marshal(IntPtr handle); // 0x0028DB70 + internal static ParameterInfo GetReturnParameterInfo(MonoMethod method); // 0x0028C3F0 +} + +// Namespace: System.Reflection +[Serializable] +internal class MonoMethod : MethodInfo, ISerializable // TypeDefIndex: 610 +{ + // Fields + internal IntPtr mhandle; // 0x08 + private string name; // 0x0C + private Type reftype; // 0x10 + + // Properties + public override ParameterInfo ReturnParameter { get; } // 0x0028C3EC + public override Type ReturnType { get; } // 0x0028C4C4 + public override ICustomAttributeProvider ReturnTypeCustomAttributes { get; } // 0x0028C530 + public override RuntimeMethodHandle MethodHandle { get; } // 0x0028CB58 + public override MethodAttributes Attributes { get; } // 0x0028CB60 + public override CallingConventions CallingConvention { get; } // 0x0028CB98 + public override Type ReflectedType { get; } // 0x0028CBD0 + public override Type DeclaringType { get; } // 0x0028CBD8 + public override string Name { get; } // 0x0028CC10 + public override bool IsGenericMethodDefinition { get; } // 0x0028DA60 + public override bool IsGenericMethod { get; } // 0x0028DA64 + public override bool ContainsGenericParameters { get; } // 0x0028DA68 + + // Methods + internal void .ctor(); // 0x0028C3B8 + internal void .ctor(RuntimeMethodHandle mhandle); // 0x0028C3C4 + internal static string get_name(MethodBase method); // 0x00286EB4 + internal static MonoMethod get_base_definition(MonoMethod method); // 0x0028C3E4 + public override MethodInfo GetBaseDefinition(); // 0x0028C3E8 + public override MethodImplAttributes GetMethodImplementationFlags(); // 0x0028C534 + public override ParameterInfo[] GetParameters(); // 0x0028C56C + internal object InternalInvoke(object obj, object[] parameters, out Exception exc); // 0x0028C61C + public override object Invoke(object obj, BindingFlags invokeAttr, Binder binder, object[] parameters, CultureInfo culture); // 0x0028C620 + public override bool IsDefined(Type attributeType, bool inherit); // 0x0028CC38 + public override object[] GetCustomAttributes(bool inherit); // 0x0028CCCC + public override object[] GetCustomAttributes(Type attributeType, bool inherit); // 0x0028CD58 + internal static DllImportAttribute GetDllImportAttribute(IntPtr mhandle); // 0x0028CDEC + internal object[] GetPseudoCustomAttributes(); // 0x0028CDF0 + private static bool ShouldPrintFullName(Type type); // 0x0028D058 + public override string ToString(); // 0x0028D144 + public void GetObjectData(SerializationInfo info, StreamingContext context); // 0x0028D6B8 + public override MethodInfo MakeGenericMethod(Type[] methodInstantiation); // 0x0028D788 + private MethodInfo MakeGenericMethod_impl(Type[] types); // 0x0028D9B8 + public override Type[] GetGenericArguments(); // 0x0028D9BC + private MethodInfo GetGenericMethodDefinition_impl(); // 0x0028D9C0 + public override MethodInfo GetGenericMethodDefinition(); // 0x0028D9C4 + public override MethodBody GetMethodBody(); // 0x0028DB60 +} + +// Namespace: System.Reflection +internal class MonoCMethod : ConstructorInfo, ISerializable // TypeDefIndex: 611 +{ + // Fields + internal IntPtr mhandle; // 0x08 + private string name; // 0x0C + private Type reftype; // 0x10 + + // Properties + public override RuntimeMethodHandle MethodHandle { get; } // 0x00286D38 + public override MethodAttributes Attributes { get; } // 0x00286D40 + public override CallingConventions CallingConvention { get; } // 0x00286DAC + public override Type ReflectedType { get; } // 0x00286E18 + public override Type DeclaringType { get; } // 0x00286E20 + public override string Name { get; } // 0x00286E8C + + // Methods + public void .ctor(); // 0x00286568 + public override MethodImplAttributes GetMethodImplementationFlags(); // 0x002865EC + public override ParameterInfo[] GetParameters(); // 0x00286658 + internal object InternalInvoke(object obj, object[] parameters, out Exception exc); // 0x00286668 + public override object Invoke(object obj, BindingFlags invokeAttr, Binder binder, object[] parameters, CultureInfo culture); // 0x0028666C + public override object Invoke(BindingFlags invokeAttr, Binder binder, object[] parameters, CultureInfo culture); // 0x00286CF8 + public override bool IsDefined(Type attributeType, bool inherit); // 0x00286EB8 + public override object[] GetCustomAttributes(bool inherit); // 0x00286F4C + public override object[] GetCustomAttributes(Type attributeType, bool inherit); // 0x00286FD8 + public override MethodBody GetMethodBody(); // 0x0028706C + public override string ToString(); // 0x00287074 + public void GetObjectData(SerializationInfo info, StreamingContext context); // 0x00287334 +} + +// Namespace: System.Reflection +internal struct MonoPropertyInfo // TypeDefIndex: 612 +{ + // Fields + public Type parent; // 0x08 + public string name; // 0x0C + public MethodInfo get_method; // 0x10 + public MethodInfo set_method; // 0x14 + public PropertyAttributes attrs; // 0x18 + + // Methods + internal static void get_property_info(MonoProperty prop, MonoPropertyInfo info, PInfo req_info); // 0x00366F24 + internal static Type[] GetTypeModifiers(MonoProperty prop, bool optional); // 0x00366F28 +} + +// Namespace: System.Reflection +internal enum PInfo // TypeDefIndex: 613 +{ + Attributes = 1, + GetMethod = 2, + SetMethod = 4, + ReflectedType = 8, + DeclaringType = 16, + Name = 32 +} + +// Namespace: System.Reflection +[Serializable] +internal class MonoProperty : PropertyInfo, ISerializable // TypeDefIndex: 614 +{ + // Fields + internal IntPtr klass; // 0x08 + internal IntPtr prop; // 0x0C + private MonoPropertyInfo info; // 0x10 + private PInfo cached; // 0x24 + private GetterAdapter cached_getter; // 0x28 + + // Properties + public override PropertyAttributes Attributes { get; } // 0x0028DBC0 + public override bool CanRead { get; } // 0x0028DC00 + public override bool CanWrite { get; } // 0x0028DC48 + public override Type PropertyType { get; } // 0x0028DC90 + public override Type ReflectedType { get; } // 0x0028DD80 + public override Type DeclaringType { get; } // 0x0028DDC0 + public override string Name { get; } // 0x0028DE00 + + // Methods + public void .ctor(); // 0x0028DB74 + private void CachePropertyInfo(PInfo flags); // 0x0028DB7C + public override MethodInfo[] GetAccessors(bool nonPublic); // 0x0028DE40 + public override MethodInfo GetGetMethod(bool nonPublic); // 0x0028E048 + public override ParameterInfo[] GetIndexParameters(); // 0x0028E0BC + public override MethodInfo GetSetMethod(bool nonPublic); // 0x0028E2BC + public override bool IsDefined(Type attributeType, bool inherit); // 0x0028E330 + public override object[] GetCustomAttributes(bool inherit); // 0x0028E3C0 + public override object[] GetCustomAttributes(Type attributeType, bool inherit); // 0x0028E448 + private static object GetterAdapterFrame(Getter`2 getter, object obj); + private static object StaticGetterAdapterFrame(StaticGetter`1 getter, object obj); + private static GetterAdapter CreateGetterDelegate(MethodInfo method); // 0x0028E4D8 + public override object GetValue(object obj, object[] index); // 0x0028E948 + public override object GetValue(object obj, BindingFlags invokeAttr, Binder binder, object[] index, CultureInfo culture); // 0x0028E980 + public override void SetValue(object obj, object value, BindingFlags invokeAttr, Binder binder, object[] index, CultureInfo culture); // 0x0028EBE0 + public override string ToString(); // 0x0028EE7C + public override Type[] GetOptionalCustomModifiers(); // 0x0028EF6C + public override Type[] GetRequiredCustomModifiers(); // 0x0028F014 + public void GetObjectData(SerializationInfo info, StreamingContext context); // 0x0028F0BC +} + +// Namespace: +private delegate object GetterAdapter(object _this); // TypeDefIndex: 615; 0x00366B5C + +// Namespace: +private delegate T Getter`2(T _this); // TypeDefIndex: 616; 0x00000000 + +// Namespace: +private delegate T StaticGetter`1(); // TypeDefIndex: 617; 0x00000000 + +// Namespace: System.Reflection +public sealed class ObfuscateAssemblyAttribute : Attribute // TypeDefIndex: 618 +{ + // Fields + private bool is_private; // 0x08 + private bool strip; // 0x09 + + // Properties + public bool AssemblyIsPrivate { get; } // 0x00366F54 + public bool StripAfterObfuscation { get; set; } // 0x00366F5C 0x00366F64 + + // Methods + public void .ctor(bool assemblyIsPrivate); // 0x00366F2C +} + +// Namespace: System.Reflection +public sealed class ObfuscationAttribute : Attribute // TypeDefIndex: 619 +{ + // Fields + private bool exclude; // 0x08 + private bool strip; // 0x09 + private bool applyToMembers; // 0x0A + private string feature; // 0x0C + + // Properties + public bool Exclude { get; set; } // 0x00366FE8 0x00366FF0 + public bool StripAfterObfuscation { get; set; } // 0x00366FF8 0x00367000 + public bool ApplyToMembers { get; set; } // 0x00367008 0x00367010 + public string Feature { get; set; } // 0x00367018 0x00367020 + + // Methods + public void .ctor(); // 0x00366F6C +} + +// Namespace: System.Reflection +[Serializable] +public enum ParameterAttributes // TypeDefIndex: 620 +{ + None = 0, + In = 1, + Out = 2, + Lcid = 4, + Retval = 8, + Optional = 16, + HasDefault = 4096, + HasFieldMarshal = 8192, + Reserved3 = 16384, + Reserved4 = 32768, + ReservedMask = 61440 +} + +// Namespace: System.Reflection +[Serializable] +public class ParameterInfo : ICustomAttributeProvider, _ParameterInfo // TypeDefIndex: 621 +{ + // Fields + protected Type ClassImpl; // 0x08 + protected object DefaultValueImpl; // 0x0C + protected MemberInfo MemberImpl; // 0x10 + protected string NameImpl; // 0x14 + protected int PositionImpl; // 0x18 + protected ParameterAttributes AttrsImpl; // 0x1C + private UnmanagedMarshal marshalAs; // 0x20 + + // Properties + public virtual Type ParameterType { get; } // 0x00367758 + public virtual ParameterAttributes Attributes { get; } // 0x00367760 + public virtual object DefaultValue { get; } // 0x00367768 + public bool IsIn { get; } // 0x00367ACC + public bool IsLcid { get; } // 0x00367AEC + public bool IsOptional { get; } // 0x00367B0C + public bool IsOut { get; } // 0x00367B2C + public bool IsRetval { get; } // 0x00367738 + public virtual MemberInfo Member { get; } // 0x00367B4C + public virtual string Name { get; } // 0x00367B54 + public virtual int Position { get; } // 0x00367B5C + public int MetadataToken { get; } // 0x00367B68 + public virtual object RawDefaultValue { get; } // 0x003683F8 + + // Methods + protected void .ctor(); // 0x00367028 + internal void .ctor(ParameterBuilder pb, Type type, MemberInfo member, int position); // 0x00367030 + internal void .ctor(ParameterInfo pinfo, MemberInfo member); // 0x003670CC + internal void .ctor(Type type, MemberInfo member, UnmanagedMarshal marshalAs); // 0x003671A4 + private void System.Runtime.InteropServices._ParameterInfo.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x00367264 + private void System.Runtime.InteropServices._ParameterInfo.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x003672EC + private void System.Runtime.InteropServices._ParameterInfo.GetTypeInfoCount(out uint pcTInfo); // 0x00367374 + private void System.Runtime.InteropServices._ParameterInfo.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x003673FC + public override string ToString(); // 0x00367484 + private int GetMetadataToken(); // 0x00367B64 + public virtual object[] GetCustomAttributes(bool inherit); // 0x00367DA8 + public virtual object[] GetCustomAttributes(Type attributeType, bool inherit); // 0x00367E34 + public virtual bool IsDefined(Type attributeType, bool inherit); // 0x00367EC8 + internal object[] GetPseudoCustomAttributes(); // 0x00367F5C + private Type[] GetTypeModifiers(bool optional); // 0x003682AC + public virtual Type[] GetOptionalCustomModifiers(); // 0x003682B0 + public virtual Type[] GetRequiredCustomModifiers(); // 0x00368354 +} + +// Namespace: System.Reflection +[Serializable] +public struct ParameterModifier // TypeDefIndex: 622 +{ + // Fields + private bool[] _byref; // 0x08 + + // Properties + public bool Item { get; set; } // 0x000A651C 0x000A6524 + + // Methods + public void .ctor(int parameterCount); // 0x000A6514 +} + +// Namespace: System.Reflection +[Serializable] +public sealed class Pointer : ISerializable // TypeDefIndex: 623 +{ + // Fields + private void * data; // 0x08 + private Type type; // 0x0C + + // Methods + private void .ctor(); // 0x00368568 + private void System.Runtime.Serialization.ISerializable.GetObjectData(SerializationInfo info, StreamingContext context); // 0x00368570 + public static object Box(void * ptr, Type type); // 0x0036860C + public static void * Unbox(object ptr); // 0x00368764 +} + +// Namespace: System.Reflection +[Serializable] +public enum PortableExecutableKinds // TypeDefIndex: 624 +{ + NotAPortableExecutableImage = 0, + ILOnly = 1, + Required32Bit = 2, + PE32Plus = 4, + Unmanaged32Bit = 8 +} + +// Namespace: System.Reflection +[Serializable] +public enum ProcessorArchitecture // TypeDefIndex: 625 +{ + None = 0, + MSIL = 1, + X86 = 2, + IA64 = 3, + Amd64 = 4 +} + +// Namespace: System.Reflection +[Serializable] +public enum PropertyAttributes // TypeDefIndex: 626 +{ + None = 0, + SpecialName = 512, + RTSpecialName = 1024, + HasDefault = 4096, + Reserved2 = 8192, + Reserved3 = 16384, + Reserved4 = 32768, + ReservedMask = 62464 +} + +// Namespace: System.Reflection +[Serializable] +public abstract class PropertyInfo : MemberInfo, _PropertyInfo // TypeDefIndex: 627 +{ + // Properties + public abstract PropertyAttributes Attributes { get; } + public abstract bool CanRead { get; } + public abstract bool CanWrite { get; } + public bool IsSpecialName { get; } // 0x00368A54 + public override MemberTypes MemberType { get; } // 0x00368A74 + public abstract Type PropertyType { get; } + + // Methods + protected void .ctor(); // 0x0036882C + private void System.Runtime.InteropServices._PropertyInfo.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x00368834 + private void System.Runtime.InteropServices._PropertyInfo.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x003688BC + private void System.Runtime.InteropServices._PropertyInfo.GetTypeInfoCount(out uint pcTInfo); // 0x00368944 + private void System.Runtime.InteropServices._PropertyInfo.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x003689CC + public MethodInfo[] GetAccessors(); // 0x00368A7C + public abstract MethodInfo[] GetAccessors(bool nonPublic); + public MethodInfo GetGetMethod(); // 0x00368A90 + public abstract MethodInfo GetGetMethod(bool nonPublic); + public abstract ParameterInfo[] GetIndexParameters(); + public MethodInfo GetSetMethod(); // 0x00368AA4 + public abstract MethodInfo GetSetMethod(bool nonPublic); + public virtual object GetValue(object obj, object[] index); // 0x00368AB8 + public abstract object GetValue(object obj, BindingFlags invokeAttr, Binder binder, object[] index, CultureInfo culture); + public virtual void SetValue(object obj, object value, object[] index); // 0x00368AF0 + public abstract void SetValue(object obj, object value, BindingFlags invokeAttr, Binder binder, object[] index, CultureInfo culture); + public virtual Type[] GetOptionalCustomModifiers(); // 0x00368B24 + public virtual Type[] GetRequiredCustomModifiers(); // 0x00368BB0 + public virtual object GetConstantValue(); // 0x00368C3C + public virtual object GetRawConstantValue(); // 0x00368CC4 + virtual Type System.Runtime.InteropServices._PropertyInfo.GetType(); // 0x00368D4C +} + +// Namespace: System.Reflection +[Serializable] +public sealed class ReflectionTypeLoadException : SystemException // TypeDefIndex: 628 +{ + // Fields + private Exception[] loaderExceptions; // 0x34 + private Type[] types; // 0x38 + + // Properties + public Type[] Types { get; } // 0x00368FE0 + public Exception[] LoaderExceptions { get; } // 0x00368FE8 + + // Methods + public void .ctor(Type[] classes, Exception[] exceptions); // 0x00368D54 + public void .ctor(Type[] classes, Exception[] exceptions, string message); // 0x00368DD8 + private void .ctor(SerializationInfo info, StreamingContext sc); // 0x00368E04 + public override void GetObjectData(SerializationInfo info, StreamingContext context); // 0x00368FF0 +} + +// Namespace: System.Reflection +[Serializable] +public enum ResourceAttributes // TypeDefIndex: 629 +{ + Public = 1, + Private = 2 +} + +// Namespace: System.Reflection +[Serializable] +public enum ResourceLocation // TypeDefIndex: 630 +{ + Embedded = 1, + ContainedInAnotherAssembly = 2, + ContainedInManifestFile = 4 +} + +// Namespace: System.Reflection +[Serializable] +public class StrongNameKeyPair : ISerializable, IDeserializationCallback // TypeDefIndex: 631 +{ + // Fields + private byte[] _publicKey; // 0x08 + private string _keyPairContainer; // 0x0C + private bool _keyPairExported; // 0x10 + private byte[] _keyPairArray; // 0x14 + [NonSerialized] private RSA _rsa; // 0x18 + + // Properties + public byte[] PublicKey { get; } // 0x00369A6C + + // Methods + public void .ctor(byte[] keyPairArray); // 0x003690D4 + public void .ctor(FileStream keyPairFile); // 0x0036945C + public void .ctor(string keyPairContainer); // 0x003695C0 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x00369688 + private void System.Runtime.Serialization.ISerializable.GetObjectData(SerializationInfo info, StreamingContext context); // 0x003698C0 + private void System.Runtime.Serialization.IDeserializationCallback.OnDeserialization(object sender); // 0x00369A68 + private RSA GetRSA(); // 0x00369350 + private void LoadKey(byte[] key); // 0x003691A4 + internal StrongName StrongName(); // 0x00369E40 +} + +// Namespace: System.Reflection +[Serializable] +public class TargetException : Exception // TypeDefIndex: 632 +{ + // Methods + public void .ctor(); // 0x00369F04 + public void .ctor(string message); // 0x00369F78 + public void .ctor(string message, Exception inner); // 0x00369F80 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x00369F88 +} + +// Namespace: System.Reflection +[Serializable] +public sealed class TargetInvocationException : Exception // TypeDefIndex: 633 +{ + // Methods + public void .ctor(Exception inner); // 0x00369FA8 + public void .ctor(string message, Exception inner); // 0x0036A018 + internal void .ctor(SerializationInfo info, StreamingContext sc); // 0x0036A020 +} + +// Namespace: System.Reflection +[Serializable] +public sealed class TargetParameterCountException : Exception // TypeDefIndex: 634 +{ + // Methods + public void .ctor(); // 0x0036A040 + public void .ctor(string message); // 0x0036A0B4 + public void .ctor(string message, Exception inner); // 0x0036A0BC + internal void .ctor(SerializationInfo info, StreamingContext context); // 0x0036A0C4 +} + +// Namespace: System.Reflection +[Serializable] +public enum TypeAttributes // TypeDefIndex: 635 +{ + NotPublic = 0, + AutoLayout = 0, + Class = 0, + AnsiClass = 0, + Public = 1, + NestedPublic = 2, + NestedPrivate = 3, + NestedFamily = 4, + NestedAssembly = 5, + NestedFamANDAssem = 6, + VisibilityMask = 7, + NestedFamORAssem = 7, + SequentialLayout = 8, + ExplicitLayout = 16, + LayoutMask = 24, + ClassSemanticsMask = 32, + Interface = 32, + Abstract = 128, + Sealed = 256, + SpecialName = 1024, + RTSpecialName = 2048, + Import = 4096, + Serializable = 8192, + UnicodeClass = 65536, + AutoClass = 131072, + StringFormatMask = 196608, + CustomFormatClass = 196608, + HasSecurity = 262144, + ReservedMask = 264192, + BeforeFieldInit = 1048576, + CustomFormatMask = 12582912 +} + +// Namespace: System.Reflection +[Serializable] +public class TypeDelegator : Type // TypeDefIndex: 636 +{ + // Fields + protected Type typeImpl; // 0x0C + + // Properties + public override Assembly Assembly { get; } // 0x0036A250 + public override string AssemblyQualifiedName { get; } // 0x0036A284 + public override Type BaseType { get; } // 0x0036A2B8 + public override string FullName { get; } // 0x0036A2EC + public override Guid GUID { get; } // 0x0036A320 + public override Module Module { get; } // 0x0036A35C + public override string Name { get; } // 0x0036A390 + public override string Namespace { get; } // 0x0036A3C4 + public override RuntimeTypeHandle TypeHandle { get; } // 0x0036A3F8 + public override Type UnderlyingSystemType { get; } // 0x0036A42C + public override int MetadataToken { get; } // 0x0036AC10 + + // Methods + protected void .ctor(); // 0x0036A0E4 + public void .ctor(Type delegatingType); // 0x0036A168 + protected override TypeAttributes GetAttributeFlagsImpl(); // 0x0036A460 + protected override ConstructorInfo GetConstructorImpl(BindingFlags bindingAttr, Binder binder, CallingConventions callConvention, Type[] types, ParameterModifier[] modifiers); // 0x0036A48C + public override ConstructorInfo[] GetConstructors(BindingFlags bindingAttr); // 0x0036A4EC + public override object[] GetCustomAttributes(bool inherit); // 0x0036A528 + public override object[] GetCustomAttributes(Type attributeType, bool inherit); // 0x0036A564 + public override Type GetElementType(); // 0x0036A5A8 + public override EventInfo GetEvent(string name, BindingFlags bindingAttr); // 0x0036A5DC + public override EventInfo[] GetEvents(); // 0x0036A620 + public override EventInfo[] GetEvents(BindingFlags bindingAttr); // 0x0036A634 + public override FieldInfo GetField(string name, BindingFlags bindingAttr); // 0x0036A670 + public override FieldInfo[] GetFields(BindingFlags bindingAttr); // 0x0036A6B4 + public override Type GetInterface(string name, bool ignoreCase); // 0x0036A6F0 + public override InterfaceMapping GetInterfaceMap(Type interfaceType); // 0x0036A734 + public override Type[] GetInterfaces(); // 0x0036A778 + public override MemberInfo[] GetMember(string name, MemberTypes type, BindingFlags bindingAttr); // 0x0036A7AC + public override MemberInfo[] GetMembers(BindingFlags bindingAttr); // 0x0036A804 + protected override MethodInfo GetMethodImpl(string name, BindingFlags bindingAttr, Binder binder, CallingConventions callConvention, Type[] types, ParameterModifier[] modifiers); // 0x0036A840 + public override MethodInfo[] GetMethods(BindingFlags bindingAttr); // 0x0036A8A8 + public override Type GetNestedType(string name, BindingFlags bindingAttr); // 0x0036A8E4 + public override Type[] GetNestedTypes(BindingFlags bindingAttr); // 0x0036A928 + public override PropertyInfo[] GetProperties(BindingFlags bindingAttr); // 0x0036A964 + protected override PropertyInfo GetPropertyImpl(string name, BindingFlags bindingAttr, Binder binder, Type returnType, Type[] types, ParameterModifier[] modifiers); // 0x0036A9A0 + protected override bool HasElementTypeImpl(); // 0x0036AA08 + public override object InvokeMember(string name, BindingFlags invokeAttr, Binder binder, object target, object[] args, ParameterModifier[] modifiers, CultureInfo culture, string[] namedParameters); // 0x0036AA34 + protected override bool IsArrayImpl(); // 0x0036AAC4 + protected override bool IsByRefImpl(); // 0x0036AAF0 + protected override bool IsCOMObjectImpl(); // 0x0036AB1C + public override bool IsDefined(Type attributeType, bool inherit); // 0x0036AB48 + protected override bool IsPointerImpl(); // 0x0036AB8C + protected override bool IsPrimitiveImpl(); // 0x0036ABB8 + protected override bool IsValueTypeImpl(); // 0x0036ABE4 +} + +// Namespace: System.Resources +public interface IResourceReader : IEnumerable, IDisposable // TypeDefIndex: 637 +{ + // Methods + void Close(); + IDictionaryEnumerator GetEnumerator(); +} + +// Namespace: System.Resources +public interface IResourceWriter : IDisposable // TypeDefIndex: 638 +{ + // Methods + void AddResource(string name, byte[] value); + void AddResource(string name, object value); + void AddResource(string name, string value); + void Close(); + void Generate(); +} + +// Namespace: System.Resources +[Serializable] +public class MissingManifestResourceException : SystemException // TypeDefIndex: 639 +{ + // Methods + public void .ctor(); // 0x0036B8D8 + public void .ctor(string message); // 0x0036B94C + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x0036B954 + public void .ctor(string message, Exception inner); // 0x0036B974 +} + +// Namespace: System.Resources +[Serializable] +public class MissingSatelliteAssemblyException : SystemException // TypeDefIndex: 640 +{ + // Fields + private string culture; // 0x34 + + // Properties + public string CultureName { get; } // 0x0036BA40 + + // Methods + public void .ctor(); // 0x0036B97C + public void .ctor(string message); // 0x0036B9F0 + public void .ctor(string message, string cultureName); // 0x0036B9F8 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x0036BA18 + public void .ctor(string message, Exception inner); // 0x0036BA38 +} + +// Namespace: System.Resources +public sealed class NeutralResourcesLanguageAttribute : Attribute // TypeDefIndex: 641 +{ + // Fields + private string culture; // 0x08 + private UltimateResourceFallbackLocation loc; // 0x0C + + // Properties + public string CultureName { get; } // 0x0036BD64 + public UltimateResourceFallbackLocation Location { get; } // 0x0036BD6C + + // Methods + public void .ctor(string cultureName); // 0x0036BBE4 + public void .ctor(string cultureName, UltimateResourceFallbackLocation location); // 0x0036BCA0 +} + +// Namespace: System.Resources +[Serializable] +public class ResourceManager // TypeDefIndex: 642 +{ + // Fields + private static Hashtable ResourceCache; // 0x00 + private static Hashtable NonExistent; // 0x04 + public static readonly int HeaderVersionNumber; // 0x08 + public static readonly int MagicNumber; // 0x0C + protected string BaseNameField; // 0x08 + protected Assembly MainAssembly; // 0x0C + protected Hashtable ResourceSets; // 0x10 + private bool ignoreCase; // 0x14 + private Type resourceSource; // 0x18 + private Type resourceSetType; // 0x1C + private string resourceDir; // 0x20 + private CultureInfo neutral_culture; // 0x24 + private UltimateResourceFallbackLocation fallbackLocation; // 0x28 + + // Properties + public virtual string BaseName { get; } // 0x0036CE1C + public virtual bool IgnoreCase { get; set; } // 0x0036CE24 0x0036CE2C + public virtual Type ResourceSetType { get; } // 0x0036CE34 + protected UltimateResourceFallbackLocation FallbackLocation { get; set; } // 0x0036F1AC 0x0036F1B4 + + // Methods + protected void .ctor(); // 0x0036BD74 + public void .ctor(Type resourceSource); // 0x0036BE18 + public void .ctor(string baseName, Assembly assembly); // 0x0036C5F0 + public void .ctor(string baseName, Assembly assembly, Type usingResourceSet); // 0x0036C79C + private void .ctor(string baseName, string resourceDir, Type usingResourceSet); // 0x0036CAB0 + private static void .cctor(); // 0x0036CCA0 + private static Hashtable GetResourceSets(Assembly assembly, string basename); // 0x0036BFA8 + private Type CheckResourceSetType(Type usingResourceSet, bool verifyType); // 0x0036C960 + public static ResourceManager CreateFileBasedResourceManager(string baseName, string resourceDir, Type usingResourceSet); // 0x0036CD94 + public virtual object GetObject(string name); // 0x0036CE3C + public virtual object GetObject(string name, CultureInfo culture); // 0x0036CE50 + public virtual ResourceSet GetResourceSet(CultureInfo culture, bool createIfNotExists, bool tryParents); // 0x0036D124 + public virtual string GetString(string name); // 0x0036D274 + public virtual string GetString(string name, CultureInfo culture); // 0x0036D288 + protected virtual string GetResourceFileName(CultureInfo culture); // 0x0036D55C + private string GetResourceFilePath(CultureInfo culture); // 0x0036D6E8 + private Stream GetManifestResourceStreamNoCase(Assembly ass, string fn); // 0x0036D7A4 + public UnmanagedMemoryStream GetStream(string name); // 0x0036DA7C + public UnmanagedMemoryStream GetStream(string name, CultureInfo culture); // 0x0036DA84 + protected virtual ResourceSet InternalGetResourceSet(CultureInfo culture, bool createIfNotExists, bool tryParents); // 0x0036DFBC + public virtual void ReleaseAllResources(); // 0x0036ECF0 + protected static CultureInfo GetNeutralResourcesLanguage(Assembly a); // 0x0036C470 + protected static Version GetSatelliteContractVersion(Assembly a); // 0x0036EA28 + private MissingManifestResourceException AssemblyResourceMissing(string fileName); // 0x0036EB80 + private string GetManifestResourceName(string fn); // 0x0036D940 +} + +// Namespace: System.Resources +internal enum PredefinedResourceType // TypeDefIndex: 643 +{ + Null = 0, + String = 1, + Bool = 2, + Char = 3, + Byte = 4, + SByte = 5, + Int16 = 6, + UInt16 = 7, + Int32 = 8, + UInt32 = 9, + Int64 = 10, + UInt64 = 11, + Single = 12, + Double = 13, + Decimal = 14, + DateTime = 15, + TimeSpan = 16, + ByteArray = 32, + Stream = 33, + FistCustom = 64 +} + +// Namespace: System.Resources +public sealed class ResourceReader : IEnumerable, IDisposable, IResourceReader // TypeDefIndex: 644 +{ + // Fields + private BinaryReader reader; // 0x08 + private object readerLock; // 0x0C + private IFormatter formatter; // 0x10 + internal int resourceCount; // 0x14 + private int typeCount; // 0x18 + private string[] typeNames; // 0x1C + private int[] hashes; // 0x20 + private ResourceInfo[] infos; // 0x24 + private int dataSectionOffset; // 0x28 + private long nameSectionOffset; // 0x30 + private int resource_ver; // 0x38 + private ResourceCacheItem[] cache; // 0x3C + private object cache_lock; // 0x40 + + // Methods + public void .ctor(Stream stream); // 0x0036F1BC + public void .ctor(string fileName); // 0x0037017C + private IEnumerator System.Collections.IEnumerable.GetEnumerator(); // 0x003702CC + private void System.IDisposable.Dispose(); // 0x00370390 + private void ReadHeaders(); // 0x0036F3D4 + private void CreateResourceInfo(long position, ResourceInfo info); // 0x00370420 + private int Read7BitEncodedInt(); // 0x003706B0 + private object ReadValueVer2(int type_index); // 0x00370720 + private object ReadValueVer1(Type type); // 0x00370F48 + private object ReadNonPredefinedValue(Type exp_type); // 0x00370DBC + private void LoadResourceValues(ResourceCacheItem[] store); // 0x00371780 + internal UnmanagedMemoryStream ResourceValueAsStream(string name, int index); // 0x00371AF8 + public void Close(); // 0x003720E8 + public IDictionaryEnumerator GetEnumerator(); // 0x0037212C + public void GetResourceData(string resourceName, out string resourceType, out byte[] resourceData); // 0x0037224C + private void GetResourceDataAt(int index, out string resourceType, out byte[] data); // 0x00372608 + private void Dispose(bool disposing); // 0x003703D4 +} + +// Namespace: +private struct ResourceInfo // TypeDefIndex: 645 +{ + // Fields + public readonly long ValuePosition; // 0x08 + public readonly string ResourceName; // 0x10 + public readonly int TypeIndex; // 0x14 + + // Methods + public void .ctor(string resourceName, long valuePosition, int type_index); // 0x000A6720 +} + +// Namespace: +private struct ResourceCacheItem // TypeDefIndex: 646 +{ + // Fields + public readonly string ResourceName; // 0x08 + public readonly object ResourceValue; // 0x0C + + // Methods + public void .ctor(string name, object value); // 0x000A6694 +} + +// Namespace: +internal sealed class ResourceEnumerator : IEnumerator, IDictionaryEnumerator // TypeDefIndex: 647 +{ + // Fields + private ResourceReader reader; // 0x08 + private int index; // 0x0C + private bool finished; // 0x10 + + // Properties + public int Index { get; } // 0x00372ED0 + public DictionaryEntry Entry { get; } // 0x00372ED8 + public object Key { get; } // 0x003724A4 + public object Value { get; } // 0x00373024 + public UnmanagedMemoryStream ValueAsStream { get; } // 0x00373188 + public object Current { get; } // 0x00373308 + + // Methods + internal void .ctor(ResourceReader readerToEnumerate); // 0x00372218 + public bool MoveNext(); // 0x00372BC0 + public void Reset(); // 0x0037338C + private void FillCache(); // 0x00372D54 +} + +// Namespace: +private sealed class c__AnonStorey2 // TypeDefIndex: 648 +{ + // Fields + internal IntPtr ptr; // 0x08 + + // Methods + public void .ctor(); // 0x003720E0 + internal void <>m__1(object o, EventArgs e); // 0x00372CCC +} + +// Namespace: System.Resources +[Serializable] +public class ResourceSet : IEnumerable, IDisposable // TypeDefIndex: 649 +{ + // Fields + [NonSerialized] protected IResourceReader Reader; // 0x08 + protected Hashtable Table; // 0x0C + private bool resources_read; // 0x10 + [NonSerialized] private bool disposed; // 0x11 + + // Methods + protected void .ctor(); // 0x0037345C + public void .ctor(IResourceReader reader); // 0x003734E0 + public void .ctor(Stream stream); // 0x003735C4 + internal void .ctor(UnmanagedMemoryStream stream); // 0x00373668 + public void .ctor(string fileName); // 0x0037370C + private IEnumerator System.Collections.IEnumerable.GetEnumerator(); // 0x003737B0 + public virtual void Close(); // 0x003737C0 + public void Dispose(); // 0x003737F4 + protected virtual void Dispose(bool disposing); // 0x00373828 + public virtual Type GetDefaultReader(); // 0x00373918 + public virtual Type GetDefaultWriter(); // 0x003739A8 + public virtual IDictionaryEnumerator GetEnumerator(); // 0x00373A38 + private object GetObjectInternal(string name, bool ignoreCase); // 0x00373B24 + public virtual object GetObject(string name); // 0x00374070 + public virtual object GetObject(string name, bool ignoreCase); // 0x00374078 + private string GetStringInternal(string name, bool ignoreCase); // 0x0037407C + public virtual string GetString(string name); // 0x0037419C + public virtual string GetString(string name, bool ignoreCase); // 0x003741A4 + protected virtual void ReadResources(); // 0x003741A8 + internal UnmanagedMemoryStream GetStream(string name, bool ignoreCase); // 0x0036DBD4 +} + +// Namespace: System.Resources +public sealed class ResourceWriter : IDisposable, IResourceWriter // TypeDefIndex: 650 +{ + // Fields + private SortedList resources; // 0x08 + private Stream stream; // 0x0C + + // Properties + internal Stream Stream { get; } // 0x00378400 + + // Methods + public void .ctor(Stream stream); // 0x0037461C + public void .ctor(string fileName); // 0x00374808 + public void AddResource(string name, byte[] value); // 0x003749D0 + public void AddResource(string name, object value); // 0x00374BA8 + public void AddResource(string name, string value); // 0x00374D80 + public void Close(); // 0x00374F58 + public void Dispose(); // 0x00374FBC + private void Dispose(bool disposing); // 0x00374F60 + public void AddResourceData(string name, string typeName, byte[] serializedData); // 0x00378100 + public void Generate(); // 0x00374FC4 + private int GetHash(string name); // 0x00378350 + private void Write7BitEncodedInt(BinaryWriter writer, int value); // 0x003783A8 +} + +// Namespace: +private class TypeByNameObject // TypeDefIndex: 651 +{ + // Fields + public readonly string TypeName; // 0x08 + public readonly byte[] Value; // 0x0C + + // Methods + public void .ctor(string typeName, byte[] value); // 0x00378284 +} + +// Namespace: System.Resources +[Serializable] +internal class RuntimeResourceSet : ResourceSet // TypeDefIndex: 652 +{ + // Methods + public void .ctor(UnmanagedMemoryStream stream); // 0x00378408 + public void .ctor(Stream stream); // 0x0037840C + public void .ctor(string fileName); // 0x00378410 + public override object GetObject(string name); // 0x00378414 + public override object GetObject(string name, bool ignoreCase); // 0x003785F0 + private object CloneDisposableObjectIfPossible(object value); // 0x003784E0 +} + +// Namespace: System.Resources +public sealed class SatelliteContractVersionAttribute : Attribute // TypeDefIndex: 653 +{ + // Fields + private Version ver; // 0x08 + + // Properties + public string Version { get; } // 0x0036F180 + + // Methods + public void .ctor(string version); // 0x003786C0 +} + +// Namespace: System.Resources +[Serializable] +public enum UltimateResourceFallbackLocation // TypeDefIndex: 654 +{ + MainAssembly = 0, + Satellite = 1 +} + +// Namespace: System.Resources +internal enum Win32ResourceType // TypeDefIndex: 655 +{ + RT_CURSOR = 1, + RT_BITMAP = 2, + RT_ICON = 3, + RT_MENU = 4, + RT_DIALOG = 5, + RT_STRING = 6, + RT_FONTDIR = 7, + RT_FONT = 8, + RT_ACCELERATOR = 9, + RT_RCDATA = 10, + RT_MESSAGETABLE = 11, + RT_GROUP_CURSOR = 12, + RT_GROUP_ICON = 14, + RT_VERSION = 16, + RT_DLGINCLUDE = 17, + RT_PLUGPLAY = 19, + RT_VXD = 20, + RT_ANICURSOR = 21, + RT_ANIICON = 22, + RT_HTML = 23 +} + +// Namespace: System.Resources +internal class NameOrId // TypeDefIndex: 656 +{ + // Fields + private string name; // 0x08 + private int id; // 0x0C + + // Properties + public bool IsName { get; } // 0x0036BA88 + public string Name { get; } // 0x0036BA98 + public int Id { get; } // 0x0036BAA0 + + // Methods + public void .ctor(string name); // 0x0036BA48 + public void .ctor(int id); // 0x0036BA68 + public override string ToString(); // 0x0036BAA8 +} + +// Namespace: System.Resources +internal abstract class Win32Resource // TypeDefIndex: 657 +{ + // Fields + private NameOrId type; // 0x08 + private NameOrId name; // 0x0C + private int language; // 0x10 + + // Properties + public Win32ResourceType ResourceType { get; } // 0x0037997C + public NameOrId Name { get; } // 0x003799C8 + public NameOrId Type { get; } // 0x003799D0 + public int Language { get; } // 0x003799D8 + + // Methods + internal void .ctor(NameOrId type, NameOrId name, int language); // 0x0037877C + internal void .ctor(Win32ResourceType type, int name, int language); // 0x00378844 + public abstract void WriteTo(Stream s); + public override string ToString(); // 0x003799E0 +} + +// Namespace: System.Resources +internal class Win32EncodedResource : Win32Resource // TypeDefIndex: 658 +{ + // Fields + private byte[] data; // 0x14 + + // Properties + public byte[] Data { get; } // 0x003787AC + + // Methods + internal void .ctor(NameOrId type, NameOrId name, int language, byte[] data); // 0x00378744 + public override void WriteTo(Stream s); // 0x003787B4 +} + +// Namespace: System.Resources +internal class Win32IconResource : Win32Resource // TypeDefIndex: 659 +{ + // Fields + private ICONDIRENTRY icon; // 0x14 + + // Properties + public ICONDIRENTRY Icon { get; } // 0x00379388 + + // Methods + public void .ctor(int id, int language, ICONDIRENTRY icon); // 0x00379358 + public override void WriteTo(Stream s); // 0x00379390 +} + +// Namespace: System.Resources +internal class Win32GroupIconResource : Win32Resource // TypeDefIndex: 660 +{ + // Fields + private Win32IconResource[] icons; // 0x14 + + // Methods + public void .ctor(int id, int language, Win32IconResource[] icons); // 0x00378814 + public override void WriteTo(Stream s); // 0x003788F0 +} + +// Namespace: System.Resources +internal class Win32VersionResource : Win32Resource // TypeDefIndex: 661 +{ + // Fields + public string[] WellKnownProperties; // 0x14 + private long signature; // 0x18 + private int struct_version; // 0x20 + private long file_version; // 0x28 + private long product_version; // 0x30 + private int file_flags_mask; // 0x38 + private int file_flags; // 0x3C + private int file_os; // 0x40 + private int file_type; // 0x44 + private int file_subtype; // 0x48 + private long file_date; // 0x50 + private int file_lang; // 0x58 + private int file_codepage; // 0x5C + private Hashtable properties; // 0x60 + + // Properties + public string Version { get; set; } // 0x0037A26C 0x0037A6C4 + public virtual string Item { set; } // 0x0037A9D8 + public virtual string Comments { get; set; } // 0x0037AA1C 0x0037AAD8 + public virtual string CompanyName { get; set; } // 0x0037ABD0 0x0037AC8C + public virtual string LegalCopyright { get; set; } // 0x0037AD84 0x0037AE40 + public virtual string LegalTrademarks { get; set; } // 0x0037AF38 0x0037AFF4 + public virtual string OriginalFilename { get; set; } // 0x0037B0EC 0x0037B1A8 + public virtual string ProductName { get; set; } // 0x0037B2A0 0x0037B35C + public virtual string ProductVersion { get; set; } // 0x0037B454 0x0037B510 + public virtual string InternalName { get; set; } // 0x0037B844 0x0037B900 + public virtual string FileDescription { get; set; } // 0x0037B9F8 0x0037BAB4 + public virtual int FileLanguage { get; set; } // 0x0037BBAC 0x0037BBB4 + public virtual string FileVersion { get; set; } // 0x0037BBBC 0x0037BC78 + + // Methods + public void .ctor(int id, int language, bool compilercontext); // 0x00379CB0 + private void emit_padding(BinaryWriter w); // 0x0037BFAC + private void patch_length(BinaryWriter w, long len_pos); // 0x0037C028 + public override void WriteTo(Stream ms); // 0x0037C118 +} + +// Namespace: System.Resources +internal class Win32ResFileReader // TypeDefIndex: 662 +{ + // Fields + private Stream res_file; // 0x08 + + // Methods + public void .ctor(Stream s); // 0x00379428 + private int read_int16(); // 0x00379448 + private int read_int32(); // 0x003794C4 + private void read_padding(); // 0x003794FC + private NameOrId read_ordinal(); // 0x00379544 + public ICollection ReadResources(); // 0x003797A4 +} + +// Namespace: System.Resources +internal class ICONDIRENTRY // TypeDefIndex: 663 +{ + // Fields + public byte bWidth; // 0x08 + public byte bHeight; // 0x09 + public byte bColorCount; // 0x0A + public byte bReserved; // 0x0B + public short wPlanes; // 0x0C + public short wBitCount; // 0x0E + public int dwBytesInRes; // 0x10 + public int dwImageOffset; // 0x14 + public byte[] image; // 0x18 + + // Methods + public void .ctor(); // 0x0036B50C + public override string ToString(); // 0x0036B514 +} + +// Namespace: System.Resources +internal class Win32IconFileReader // TypeDefIndex: 664 +{ + // Fields + private Stream iconFile; // 0x08 + + // Methods + public void .ctor(Stream s); // 0x00378C50 + public ICONDIRENTRY[] ReadIcons(); // 0x00378C70 +} + +// Namespace: System.Runtime.CompilerServices +public sealed class AccessedThroughPropertyAttribute : Attribute // TypeDefIndex: 665 +{ + // Fields + private string name; // 0x08 + + // Properties + public string PropertyName { get; } // 0x0037D03C + + // Methods + public void .ctor(string propertyName); // 0x0037D01C +} + +// Namespace: System.Runtime.CompilerServices +public class CallConvCdecl // TypeDefIndex: 666 +{ + // Methods + public void .ctor(); // 0x0037D044 +} + +// Namespace: System.Runtime.CompilerServices +public class CallConvFastcall // TypeDefIndex: 667 +{ + // Methods + public void .ctor(); // 0x0037D04C +} + +// Namespace: System.Runtime.CompilerServices +public class CallConvStdcall // TypeDefIndex: 668 +{ + // Methods + public void .ctor(); // 0x0037D054 +} + +// Namespace: System.Runtime.CompilerServices +public class CallConvThiscall // TypeDefIndex: 669 +{ + // Methods + public void .ctor(); // 0x0037D05C +} + +// Namespace: System.Runtime.CompilerServices +[Serializable] +public enum CompilationRelaxations // TypeDefIndex: 670 +{ + NoStringInterning = 8 +} + +// Namespace: System.Runtime.CompilerServices +[Serializable] +public class CompilationRelaxationsAttribute : Attribute // TypeDefIndex: 671 +{ + // Fields + private int relax; // 0x08 + + // Properties + public int CompilationRelaxations { get; } // 0x0037D0A4 + + // Methods + public void .ctor(int relaxations); // 0x0037D064 + public void .ctor(CompilationRelaxations relaxations); // 0x0037D084 +} + +// Namespace: System.Runtime.CompilerServices +[Serializable] +public class CompilerGlobalScopeAttribute : Attribute // TypeDefIndex: 672 +{ + // Methods + public void .ctor(); // 0x0037D0B4 +} + +// Namespace: System.Runtime.CompilerServices +public static class CompilerMarshalOverride // TypeDefIndex: 673 +{ +} + +// Namespace: System.Runtime.CompilerServices +[Serializable] +public abstract class CustomConstantAttribute : Attribute // TypeDefIndex: 674 +{ + // Properties + public abstract object Value { get; } + + // Methods + protected void .ctor(); // 0x0037D0BC +} + +// Namespace: System.Runtime.CompilerServices +[Serializable] +public sealed class DateTimeConstantAttribute : CustomConstantAttribute // TypeDefIndex: 675 +{ + // Fields + private long ticks; // 0x08 + + // Properties + internal long Ticks { get; } // 0x0037D0EC + public override object Value { get; } // 0x0037D0F4 + + // Methods + public void .ctor(long ticks); // 0x0037D0C4 +} + +// Namespace: System.Runtime.CompilerServices +[Serializable] +public sealed class DefaultDependencyAttribute : Attribute // TypeDefIndex: 676 +{ + // Fields + private LoadHint hint; // 0x08 + + // Properties + public LoadHint LoadHint { get; } // 0x0037D2F8 + + // Methods + public void .ctor(LoadHint loadHintArgument); // 0x0037D2D8 +} + +// Namespace: System.Runtime.CompilerServices +[Serializable] +public sealed class DependencyAttribute : Attribute // TypeDefIndex: 677 +{ + // Fields + private string dependentAssembly; // 0x08 + private LoadHint hint; // 0x0C + + // Properties + public string DependentAssembly { get; } // 0x0037D328 + public LoadHint LoadHint { get; } // 0x0037D330 + + // Methods + public void .ctor(string dependentAssemblyArgument, LoadHint loadHintArgument); // 0x0037D300 +} + +// Namespace: System.Runtime.CompilerServices +public class DiscardableAttribute : Attribute // TypeDefIndex: 678 +{ + // Methods + public void .ctor(); // 0x0037D338 +} + +// Namespace: System.Runtime.CompilerServices +[Serializable] +public sealed class FixedAddressValueTypeAttribute : Attribute // TypeDefIndex: 679 +{ + // Methods + public void .ctor(); // 0x0037D340 +} + +// Namespace: System.Runtime.CompilerServices +[Serializable] +public sealed class HasCopySemanticsAttribute : Attribute // TypeDefIndex: 680 +{ + // Methods + public void .ctor(); // 0x0037D380 +} + +// Namespace: System.Runtime.CompilerServices +[Serializable] +public sealed class IDispatchConstantAttribute : CustomConstantAttribute // TypeDefIndex: 681 +{ + // Properties + public override object Value { get; } // 0x0037D390 + + // Methods + public void .ctor(); // 0x0037D388 +} + +// Namespace: System.Runtime.CompilerServices +[Serializable] +public sealed class IUnknownConstantAttribute : CustomConstantAttribute // TypeDefIndex: 682 +{ + // Properties + public override object Value { get; } // 0x0037D3A0 + + // Methods + public void .ctor(); // 0x0037D398 +} + +// Namespace: System.Runtime.CompilerServices +public static class IsBoxed // TypeDefIndex: 683 +{ +} + +// Namespace: System.Runtime.CompilerServices +public static class IsByValue // TypeDefIndex: 684 +{ +} + +// Namespace: System.Runtime.CompilerServices +public static class IsConst // TypeDefIndex: 685 +{ +} + +// Namespace: System.Runtime.CompilerServices +public static class IsCopyConstructed // TypeDefIndex: 686 +{ +} + +// Namespace: System.Runtime.CompilerServices +public static class IsExplicitlyDereferenced // TypeDefIndex: 687 +{ +} + +// Namespace: System.Runtime.CompilerServices +public static class IsImplicitlyDereferenced // TypeDefIndex: 688 +{ +} + +// Namespace: System.Runtime.CompilerServices +public static class IsJitIntrinsic // TypeDefIndex: 689 +{ +} + +// Namespace: System.Runtime.CompilerServices +public static class IsLong // TypeDefIndex: 690 +{ +} + +// Namespace: System.Runtime.CompilerServices +public static class IsPinned // TypeDefIndex: 691 +{ +} + +// Namespace: System.Runtime.CompilerServices +public static class IsSignUnspecifiedByte // TypeDefIndex: 692 +{ +} + +// Namespace: System.Runtime.CompilerServices +public static class IsUdtReturn // TypeDefIndex: 693 +{ +} + +// Namespace: System.Runtime.CompilerServices +public static class IsVolatile // TypeDefIndex: 694 +{ +} + +// Namespace: System.Runtime.CompilerServices +[Serializable] +public enum LoadHint // TypeDefIndex: 695 +{ + Default = 0, + Always = 1, + Sometimes = 2 +} + +// Namespace: System.Runtime.CompilerServices +[Serializable] +public enum MethodCodeType // TypeDefIndex: 696 +{ + IL = 0, + Native = 1, + OPTIL = 2, + Runtime = 3 +} + +// Namespace: System.Runtime.CompilerServices +[Serializable] +public enum MethodImplOptions // TypeDefIndex: 697 +{ + Unmanaged = 4, + NoInlining = 8, + ForwardRef = 16, + Synchronized = 32, + NoOptimization = 64, + PreserveSig = 128, + InternalCall = 4096 +} + +// Namespace: System.Runtime.CompilerServices +[Serializable] +public sealed class NativeCppClassAttribute : Attribute // TypeDefIndex: 698 +{ + // Methods + public void .ctor(); // 0x0037D444 +} + +// Namespace: System.Runtime.CompilerServices +[Serializable] +public sealed class RuntimeWrappedException : Exception // TypeDefIndex: 699 +{ + // Fields + private object wrapped_exception; // 0x34 + + // Properties + public object WrappedException { get; } // 0x0037E194 + + // Methods + private void .ctor(); // 0x0037E18C + public override void GetObjectData(SerializationInfo info, StreamingContext context); // 0x0037E19C +} + +// Namespace: System.Runtime.CompilerServices +[Serializable] +public sealed class ScopelessEnumAttribute : Attribute // TypeDefIndex: 700 +{ + // Methods + public void .ctor(); // 0x0037E24C +} + +// Namespace: System.Runtime.CompilerServices +public sealed class SpecialNameAttribute : Attribute // TypeDefIndex: 701 +{ + // Methods + public void .ctor(); // 0x0037E254 +} + +// Namespace: System.Runtime.CompilerServices +[Serializable] +public sealed class StringFreezingAttribute : Attribute // TypeDefIndex: 702 +{ + // Methods + public void .ctor(); // 0x0037E25C +} + +// Namespace: System.Runtime.CompilerServices +public sealed class SuppressIldasmAttribute : Attribute // TypeDefIndex: 703 +{ + // Methods + public void .ctor(); // 0x0037E264 +} + +// Namespace: System.Runtime.ConstrainedExecution +[Serializable] +public enum Cer // TypeDefIndex: 704 +{ + None = 0, + MayFail = 1, + Success = 2 +} + +// Namespace: System.Runtime.ConstrainedExecution +[Serializable] +public enum Consistency // TypeDefIndex: 705 +{ + MayCorruptProcess = 0, + MayCorruptAppDomain = 1, + MayCorruptInstance = 2, + WillNotCorruptState = 3 +} + +// Namespace: System.Runtime.ConstrainedExecution +public abstract class CriticalFinalizerObject // TypeDefIndex: 706 +{ + // Methods + protected void .ctor(); // 0x0037E29C + protected override void Finalize(); // 0x0037E2A4 +} + +// Namespace: System.Runtime.ConstrainedExecution +public sealed class PrePrepareMethodAttribute : Attribute // TypeDefIndex: 707 +{ + // Methods + public void .ctor(); // 0x0037E2AC +} + +// Namespace: System.Runtime.ConstrainedExecution +public sealed class ReliabilityContractAttribute : Attribute // TypeDefIndex: 708 +{ + // Fields + private Consistency consistency; // 0x08 + private Cer cer; // 0x0C + + // Properties + public Cer Cer { get; } // 0x0037E2DC + public Consistency ConsistencyGuarantee { get; } // 0x0037E2E4 + + // Methods + public void .ctor(Consistency consistencyGuarantee, Cer cer); // 0x0037E2B4 +} + +// Namespace: System.Runtime.Hosting +[Serializable] +public sealed class ActivationArguments // TypeDefIndex: 709 +{ + // Fields + private ActivationContext _context; // 0x08 + private ApplicationIdentity _identity; // 0x0C + private string[] _data; // 0x10 + + // Properties + public ActivationContext ActivationContext { get; } // 0x0037E610 + public string[] ActivationData { get; } // 0x0037E618 + public ApplicationIdentity ApplicationIdentity { get; } // 0x0037E620 + + // Methods + public void .ctor(ActivationContext activationData); // 0x0037E300 + public void .ctor(ApplicationIdentity applicationIdentity); // 0x0037E3C4 + public void .ctor(ActivationContext activationContext, string[] activationData); // 0x0037E480 + public void .ctor(ApplicationIdentity applicationIdentity, string[] activationData); // 0x0037E54C +} + +// Namespace: System.Runtime.Hosting +public class ApplicationActivator // TypeDefIndex: 710 +{ + // Methods + public void .ctor(); // 0x0037E628 + public virtual ObjectHandle CreateInstance(ActivationContext activationContext); // 0x0037E630 + public virtual ObjectHandle CreateInstance(ActivationContext activationContext, string[] activationCustomData); // 0x0037E644 + protected static ObjectHandle CreateInstanceHelper(AppDomainSetup adSetup); // 0x0037E71C +} + +// Namespace: System.Runtime.InteropServices.ComTypes +public struct BINDPTR // TypeDefIndex: 711 +{ + // Fields + public IntPtr lpfuncdesc; // 0x08 + public IntPtr lptcomp; // 0x08 + public IntPtr lpvardesc; // 0x08 + +} + +// Namespace: System.Runtime.InteropServices.ComTypes +public struct BIND_OPTS // TypeDefIndex: 712 +{ + // Fields + public int cbStruct; // 0x08 + public int grfFlags; // 0x0C + public int grfMode; // 0x10 + public int dwTickCountDeadline; // 0x14 + +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[Serializable] +public enum CALLCONV // TypeDefIndex: 713 +{ + CC_CDECL = 1, + CC_PASCAL = 2, + CC_MSCPASCAL = 2, + CC_MACPASCAL = 3, + CC_STDCALL = 4, + CC_RESERVED = 5, + CC_SYSCALL = 6, + CC_MPWCDECL = 7, + CC_MPWPASCAL = 8, + CC_MAX = 9 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +public struct CONNECTDATA // TypeDefIndex: 714 +{ + // Fields + public object pUnk; // 0x08 + public int dwCookie; // 0x0C + +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[Serializable] +public enum DESCKIND // TypeDefIndex: 715 +{ + DESCKIND_NONE = 0, + DESCKIND_FUNCDESC = 1, + DESCKIND_VARDESC = 2, + DESCKIND_TYPECOMP = 3, + DESCKIND_IMPLICITAPPOBJ = 4, + DESCKIND_MAX = 5 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +public struct DISPPARAMS // TypeDefIndex: 716 +{ + // Fields + public IntPtr rgvarg; // 0x08 + public IntPtr rgdispidNamedArgs; // 0x0C + public int cArgs; // 0x10 + public int cNamedArgs; // 0x14 + +} + +// Namespace: System.Runtime.InteropServices.ComTypes +public struct ELEMDESC // TypeDefIndex: 717 +{ + // Fields + public TYPEDESC tdesc; // 0x08 + public DESCUNION desc; // 0x10 + +} + +// Namespace: +public struct DESCUNION // TypeDefIndex: 718 +{ + // Fields + public IDLDESC idldesc; // 0x08 + public PARAMDESC paramdesc; // 0x08 + +} + +// Namespace: System.Runtime.InteropServices.ComTypes +public struct EXCEPINFO // TypeDefIndex: 719 +{ + // Fields + public short wCode; // 0x08 + public short wReserved; // 0x0A + public string bstrSource; // 0x0C + public string bstrDescription; // 0x10 + public string bstrHelpFile; // 0x14 + public int dwHelpContext; // 0x18 + public IntPtr pvReserved; // 0x1C + public IntPtr pfnDeferredFillIn; // 0x20 + public int scode; // 0x24 + +} + +// Namespace: System.Runtime.InteropServices.ComTypes +public struct FILETIME // TypeDefIndex: 720 +{ + // Fields + public int dwLowDateTime; // 0x08 + public int dwHighDateTime; // 0x0C + +} + +// Namespace: System.Runtime.InteropServices.ComTypes +public struct FUNCDESC // TypeDefIndex: 721 +{ + // Fields + public int memid; // 0x08 + public IntPtr lprgscode; // 0x0C + public IntPtr lprgelemdescParam; // 0x10 + public FUNCKIND funckind; // 0x14 + public INVOKEKIND invkind; // 0x18 + public CALLCONV callconv; // 0x1C + public short cParams; // 0x20 + public short cParamsOpt; // 0x22 + public short oVft; // 0x24 + public short cScodes; // 0x26 + public ELEMDESC elemdescFunc; // 0x28 + public short wFuncFlags; // 0x38 + +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[Serializable] +public enum FUNCFLAGS // TypeDefIndex: 722 +{ + FUNCFLAG_FRESTRICTED = 1, + FUNCFLAG_FSOURCE = 2, + FUNCFLAG_FBINDABLE = 4, + FUNCFLAG_FREQUESTEDIT = 8, + FUNCFLAG_FDISPLAYBIND = 16, + FUNCFLAG_FDEFAULTBIND = 32, + FUNCFLAG_FHIDDEN = 64, + FUNCFLAG_FUSESGETLASTERROR = 128, + FUNCFLAG_FDEFAULTCOLLELEM = 256, + FUNCFLAG_FUIDEFAULT = 512, + FUNCFLAG_FNONBROWSABLE = 1024, + FUNCFLAG_FREPLACEABLE = 2048, + FUNCFLAG_FIMMEDIATEBIND = 4096 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[Serializable] +public enum FUNCKIND // TypeDefIndex: 723 +{ + FUNC_VIRTUAL = 0, + FUNC_PUREVIRTUAL = 1, + FUNC_NONVIRTUAL = 2, + FUNC_STATIC = 3, + FUNC_DISPATCH = 4 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[ComImport]public interface IBindCtx // TypeDefIndex: 724 +{ + // Methods + void RegisterObjectBound(object punk); // 0x0037F5AC + void RevokeObjectBound(object punk); // 0x0037F674 + void ReleaseBoundObjects(); // 0x0037F73C + void SetBindOptions(BIND_OPTS pbindopts); // 0x0037F778 + void GetBindOptions(BIND_OPTS pbindopts); // 0x0037F7BC + void GetRunningObjectTable(out IRunningObjectTable pprot); // 0x0037F800 + void RegisterObjectParam(string pszKey, object punk); // 0x0037F914 + void GetObjectParam(string pszKey, out object ppunk); // 0x0037F9EC + void EnumObjectParam(out IEnumString ppenum); // 0x0037FB10 + int RevokeObjectParam(string pszKey); // 0x0037FC24 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[ComImport]public interface IConnectionPoint // TypeDefIndex: 725 +{ + // Methods + void GetConnectionInterface(out Guid pIID); // 0x0037FC88 + void GetConnectionPointContainer(out IConnectionPointContainer ppCPC); // 0x0037FCCC + void Advise(object pUnkSink, out int pdwCookie); // 0x0037FDE0 + void Unadvise(int dwCookie); // 0x0037FEB0 + void EnumConnections(out IEnumConnections ppEnum); // 0x0037FEF4 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[ComImport]public interface IConnectionPointContainer // TypeDefIndex: 726 +{ + // Methods + void EnumConnectionPoints(out IEnumConnectionPoints ppEnum); // 0x00380008 + void FindConnectionPoint(Guid riid, out IConnectionPoint ppCP); // 0x0038011C +} + +// Namespace: System.Runtime.InteropServices.ComTypes +public struct IDLDESC // TypeDefIndex: 727 +{ + // Fields + public IntPtr dwReserved; // 0x08 + public IDLFLAG wIDLFlags; // 0x0C + +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[Serializable] +public enum IDLFLAG // TypeDefIndex: 728 +{ + IDLFLAG_NONE = 0, + IDLFLAG_FIN = 1, + IDLFLAG_FOUT = 2, + IDLFLAG_FLCID = 4, + IDLFLAG_FRETVAL = 8 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[ComImport]public interface IEnumConnectionPoints // TypeDefIndex: 729 +{ + // Methods + int Next(int celt, out IConnectionPoint[] rgelt, IntPtr pceltFetched); // 0x00380238 + int Skip(int celt); // 0x00380264 + void Reset(); // 0x003802C0 + void Clone(out IEnumConnectionPoints ppenum); // 0x003802FC +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[ComImport]public interface IEnumConnections // TypeDefIndex: 730 +{ + // Methods + int Next(int celt, out CONNECTDATA[] rgelt, IntPtr pceltFetched); // 0x00380410 + int Skip(int celt); // 0x00380554 + void Reset(); // 0x003805B0 + void Clone(out IEnumConnections ppenum); // 0x003805EC +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[ComImport]public interface IEnumMoniker // TypeDefIndex: 731 +{ + // Methods + int Next(int celt, out IMoniker[] rgelt, IntPtr pceltFetched); // 0x00380700 + int Skip(int celt); // 0x0038072C + void Reset(); // 0x00380788 + void Clone(out IEnumMoniker ppenum); // 0x003807C4 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[ComImport]public interface IEnumString // TypeDefIndex: 732 +{ + // Methods + int Next(int celt, out string[] rgelt, IntPtr pceltFetched); // 0x003808D8 + int Skip(int celt); // 0x003809E8 + void Reset(); // 0x00380A44 + void Clone(out IEnumString ppenum); // 0x00380A80 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[ComImport]public interface IEnumVARIANT // TypeDefIndex: 733 +{ + // Methods + int Next(int celt, out object[] rgVar, IntPtr pceltFetched); // 0x00380B94 + int Skip(int celt); // 0x00380BE0 + int Reset(); // 0x00380C3C + IEnumVARIANT Clone(); // 0x00380C90 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[Serializable] +public enum IMPLTYPEFLAGS // TypeDefIndex: 734 +{ + IMPLTYPEFLAG_FDEFAULT = 1, + IMPLTYPEFLAG_FSOURCE = 2, + IMPLTYPEFLAG_FRESTRICTED = 4, + IMPLTYPEFLAG_FDEFAULTVTABLE = 8 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[ComImport]public interface IMoniker // TypeDefIndex: 735 +{ + // Methods + void GetClassID(out Guid pClassID); // 0x00380D94 + int IsDirty(); // 0x00380DD8 + void Load(IStream pStm); // 0x00380E2C + void Save(IStream pStm, bool fClearDirty); // 0x00380EF4 + void GetSizeMax(out long pcbSize); // 0x00380FC4 + void BindToObject(IBindCtx pbc, IMoniker pmkToLeft, Guid riidResult, out object ppvResult); // 0x00381008 + void BindToStorage(IBindCtx pbc, IMoniker pmkToLeft, Guid riid, out object ppvObj); // 0x00381230 + void Reduce(IBindCtx pbc, int dwReduceHowFar, IMoniker ppmkToLeft, out IMoniker ppmkReduced); // 0x00381458 + void ComposeWith(IMoniker pmkRight, bool fOnlyIfNotGeneric, out IMoniker ppmkComposite); // 0x003816E4 + void Enum(bool fForward, out IEnumMoniker ppenumMoniker); // 0x00381888 + int IsEqual(IMoniker pmkOtherMoniker); // 0x003819A4 + void Hash(out int pdwHash); // 0x00381A80 + int IsRunning(IBindCtx pbc, IMoniker pmkToLeft, IMoniker pmkNewlyRunning); // 0x00381AC4 + void GetTimeOfLastChange(IBindCtx pbc, IMoniker pmkToLeft, out FILETIME pFileTime); // 0x00381CA4 + void Inverse(out IMoniker ppmk); // 0x00381DF4 + void CommonPrefixWith(IMoniker pmkOther, out IMoniker ppmkPrefix); // 0x00381F08 + void RelativePathTo(IMoniker pmkOther, out IMoniker ppmkRelPath); // 0x003820A4 + void GetDisplayName(IBindCtx pbc, IMoniker pmkToLeft, out string ppszDisplayName); // 0x00382240 + void ParseDisplayName(IBindCtx pbc, IMoniker pmkToLeft, string pszDisplayName, out int pchEaten, out IMoniker ppmkOut); // 0x003823B0 + int IsSystemMoniker(out int pdwMksys); // 0x003825E8 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[Serializable] +public enum INVOKEKIND // TypeDefIndex: 736 +{ + INVOKE_FUNC = 1, + INVOKE_PROPERTYGET = 2, + INVOKE_PROPERTYPUT = 4, + INVOKE_PROPERTYPUTREF = 8 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[ComImport]public interface IPersistFile // TypeDefIndex: 737 +{ + // Methods + void GetClassID(out Guid pClassID); // 0x00382644 + int IsDirty(); // 0x00382688 + void Load(string pszFileName, int dwMode); // 0x003826DC + void Save(string pszFileName, bool fRemember); // 0x00382730 + void SaveCompleted(string pszFileName); // 0x00382784 + void GetCurFile(out string ppszFileName); // 0x003827D0 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[ComImport]public interface IRunningObjectTable // TypeDefIndex: 738 +{ + // Methods + int Register(int grfFlags, object punkObject, IMoniker pmkObjectName); // 0x00382838 + void Revoke(int dwRegister); // 0x003829A0 + int IsRunning(IMoniker pmkObjectName); // 0x003829E4 + int GetObject(IMoniker pmkObjectName, out object ppunkObject); // 0x00382AC0 + void NoteChangeTime(int dwRegister, FILETIME pfiletime); // 0x00382C68 + int GetTimeOfLastChange(IMoniker pmkObjectName, out FILETIME pfiletime); // 0x00382CB4 + void EnumRunning(out IEnumMoniker ppenumMoniker); // 0x00382D98 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[ComImport]public interface IStream // TypeDefIndex: 739 +{ + // Methods + void Read(out byte[] pv, int cb, IntPtr pcbRead); // 0x00382EAC + void Write(byte[] pv, int cb, IntPtr pcbWritten); // 0x00382F64 + void Seek(long dlibMove, int dwOrigin, IntPtr plibNewPosition); // 0x00382FC0 + void SetSize(long libNewSize); // 0x00383024 + void CopyTo(IStream pstm, long cb, IntPtr pcbRead, IntPtr pcbWritten); // 0x00383070 + void Commit(int grfCommitFlags); // 0x00383164 + void Revert(); // 0x003831A8 + void LockRegion(long libOffset, long cb, int dwLockType); // 0x003831E4 + void UnlockRegion(long libOffset, long cb, int dwLockType); // 0x00383250 + void Stat(out STATSTG pstatstg, int grfStatFlag); // 0x003832BC + void Clone(out IStream ppstm); // 0x00383360 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[ComImport]public interface ITypeComp // TypeDefIndex: 740 +{ + // Methods + void Bind(string szName, int lHashVal, short wFlags, out ITypeInfo ppTInfo, out DESCKIND pDescKind, out BINDPTR pBindPtr); // 0x00383474 + void BindType(string szName, int lHashVal, out ITypeInfo ppTInfo, out ITypeComp ppTComp); // 0x003835B8 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[ComImport]public interface ITypeInfo // TypeDefIndex: 741 +{ + // Methods + void GetTypeAttr(out IntPtr ppTypeAttr); // 0x00383770 + void GetTypeComp(out ITypeComp ppTComp); // 0x003837B4 + void GetFuncDesc(int index, out IntPtr ppFuncDesc); // 0x003838C8 + void GetVarDesc(int index, out IntPtr ppVarDesc); // 0x00383914 + void GetNames(int memid, out string[] rgBstrNames, int cMaxNames, out int pcNames); // 0x00383960 + void GetRefTypeOfImplType(int index, out int href); // 0x00383A64 + void GetImplTypeFlags(int index, out IMPLTYPEFLAGS pImplTypeFlags); // 0x00383AB0 + void GetIDsOfNames(string[] rgszNames, int cNames, out int[] pMemId); // 0x00383AFC + void Invoke(object pvInstance, int memid, short wFlags, DISPPARAMS pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, out int puArgErr); // 0x00383C68 + void GetDocumentation(int index, out string strName, out string strDocString, out int dwHelpContext, out string strHelpFile); // 0x00383D64 + void GetDllEntry(int memid, INVOKEKIND invKind, IntPtr pBstrDllName, IntPtr pBstrName, IntPtr pwOrdinal); // 0x00383E24 + void GetRefTypeInfo(int hRef, out ITypeInfo ppTI); // 0x00383E94 + void AddressOfMember(int memid, INVOKEKIND invKind, out IntPtr ppv); // 0x00383FB0 + void CreateInstance(object pUnkOuter, Guid riid, out object ppvObj); // 0x00384004 + void GetMops(int memid, out string pBstrMops); // 0x003841A8 + void GetContainingTypeLib(out ITypeLib ppTLB, out int pIndex); // 0x00384218 + void ReleaseTypeAttr(IntPtr pTypeAttr); // 0x00384334 + void ReleaseFuncDesc(IntPtr pFuncDesc); // 0x00384378 + void ReleaseVarDesc(IntPtr pVarDesc); // 0x003843BC +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[ComImport]public interface ITypeInfo2 : ITypeInfo // TypeDefIndex: 742 +{ + // Methods + void AddressOfMember(int memid, INVOKEKIND invKind, out IntPtr ppv); // 0x00384400 + void CreateInstance(object pUnkOuter, Guid riid, out object ppvObj); // 0x00384454 + void GetContainingTypeLib(out ITypeLib ppTLB, out int pIndex); // 0x003845F8 + void GetDllEntry(int memid, INVOKEKIND invKind, IntPtr pBstrDllName, IntPtr pBstrName, IntPtr pwOrdinal); // 0x00384714 + void GetDocumentation(int index, out string strName, out string strDocString, out int dwHelpContext, out string strHelpFile); // 0x00384784 + void GetIDsOfNames(string[] rgszNames, int cNames, out int[] pMemId); // 0x00384844 + void GetImplTypeFlags(int index, out IMPLTYPEFLAGS pImplTypeFlags); // 0x003849B0 + void GetTypeKind(out TYPEKIND pTypeKind); // 0x003849FC + void GetTypeFlags(out int pTypeFlags); // 0x00384A40 + void GetFuncDesc(int index, out IntPtr ppFuncDesc); // 0x00384A84 + void GetMops(int memid, out string pBstrMops); // 0x00384AD0 + void GetNames(int memid, out string[] rgBstrNames, int cMaxNames, out int pcNames); // 0x00384B40 + void GetRefTypeInfo(int hRef, out ITypeInfo ppTI); // 0x00384C44 + void GetRefTypeOfImplType(int index, out int href); // 0x00384D60 + void GetTypeAttr(out IntPtr ppTypeAttr); // 0x00384DAC + void GetTypeComp(out ITypeComp ppTComp); // 0x00384DF0 + void GetVarDesc(int index, out IntPtr ppVarDesc); // 0x00384F04 + void GetFuncIndexOfMemId(int memid, INVOKEKIND invKind, out int pFuncIndex); // 0x00384F50 + void GetVarIndexOfMemId(int memid, out int pVarIndex); // 0x00384FA4 + void GetCustData(Guid guid, out object pVarVal); // 0x00384FF0 + void GetFuncCustData(int index, Guid guid, out object pVarVal); // 0x00385064 + void GetParamCustData(int indexFunc, int indexParam, Guid guid, out object pVarVal); // 0x003850E0 + void GetVarCustData(int index, Guid guid, out object pVarVal); // 0x00385168 + void GetImplTypeCustData(int index, Guid guid, out object pVarVal); // 0x003851E4 + void GetDocumentation2(int memid, out string pbstrHelpString, out int pdwHelpStringContext, out string pbstrHelpStringDll); // 0x00385260 + void GetAllCustData(IntPtr pCustData); // 0x00385300 + void GetAllFuncCustData(int index, IntPtr pCustData); // 0x00385344 + void GetAllParamCustData(int indexFunc, int indexParam, IntPtr pCustData); // 0x00385390 + void GetAllVarCustData(int index, IntPtr pCustData); // 0x003853E4 + void GetAllImplTypeCustData(int index, IntPtr pCustData); // 0x00385430 + void Invoke(object pvInstance, int memid, short wFlags, DISPPARAMS pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, out int puArgErr); // 0x0038547C + void ReleaseTypeAttr(IntPtr pTypeAttr); // 0x00385578 + void ReleaseFuncDesc(IntPtr pFuncDesc); // 0x003855BC + void ReleaseVarDesc(IntPtr pVarDesc); // 0x00385600 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[ComImport]public interface ITypeLib // TypeDefIndex: 743 +{ + // Methods + int GetTypeInfoCount(); // 0x002B51AC + void GetTypeInfo(int index, out ITypeInfo ppTI); // 0x002B5200 + void GetTypeInfoType(int index, out TYPEKIND pTKind); // 0x002B531C + void GetTypeInfoOfGuid(Guid guid, out ITypeInfo ppTInfo); // 0x002B5368 + void GetLibAttr(out IntPtr ppTLibAttr); // 0x002B5484 + void GetTypeComp(out ITypeComp ppTComp); // 0x002B54C8 + void GetDocumentation(int index, out string strName, out string strDocString, out int dwHelpContext, out string strHelpFile); // 0x002B55DC + bool IsName(string szNameBuf, int lHashVal); // 0x002B569C + void FindName(string szNameBuf, int lHashVal, out ITypeInfo[] ppTInfo, out int[] rgMemId, short pcFound); // 0x002B5710 + void ReleaseTLibAttr(IntPtr pTLibAttr); // 0x002B573C +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[ComImport]public interface ITypeLib2 : ITypeLib // TypeDefIndex: 744 +{ + // Methods + void FindName(string szNameBuf, int lHashVal, out ITypeInfo[] ppTInfo, out int[] rgMemId, short pcFound); // 0x002B5780 + void GetCustData(Guid guid, out object pVarVal); // 0x002B57AC + void GetDocumentation(int index, out string strName, out string strDocString, out int dwHelpContext, out string strHelpFile); // 0x002B5820 + void GetLibAttr(out IntPtr ppTLibAttr); // 0x002B58E0 + void GetLibStatistics(IntPtr pcUniqueNames, out int pcchUniqueNames); // 0x002B5924 + void GetDocumentation2(int index, out string pbstrHelpString, out int pdwHelpStringContext, out string pbstrHelpStringDll); // 0x002B5970 + void GetAllCustData(IntPtr pCustData); // 0x002B5A10 + void GetTypeComp(out ITypeComp ppTComp); // 0x002B5A54 + void GetTypeInfo(int index, out ITypeInfo ppTI); // 0x002B5B68 + void GetTypeInfoOfGuid(Guid guid, out ITypeInfo ppTInfo); // 0x002B5C84 + void GetTypeInfoType(int index, out TYPEKIND pTKind); // 0x002B5DA0 + bool IsName(string szNameBuf, int lHashVal); // 0x002B5DEC + void ReleaseTLibAttr(IntPtr pTLibAttr); // 0x002B5E60 + int GetTypeInfoCount(); // 0x002B5EA4 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[Serializable] +public enum LIBFLAGS // TypeDefIndex: 745 +{ + LIBFLAG_FRESTRICTED = 1, + LIBFLAG_FCONTROL = 2, + LIBFLAG_FHIDDEN = 4, + LIBFLAG_FHASDISKIMAGE = 8 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +public struct PARAMDESC // TypeDefIndex: 746 +{ + // Fields + public IntPtr lpVarValue; // 0x08 + public PARAMFLAG wParamFlags; // 0x0C + +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[Serializable] +public enum PARAMFLAG // TypeDefIndex: 747 +{ + PARAMFLAG_NONE = 0, + PARAMFLAG_FIN = 1, + PARAMFLAG_FOUT = 2, + PARAMFLAG_FLCID = 4, + PARAMFLAG_FRETVAL = 8, + PARAMFLAG_FOPT = 16, + PARAMFLAG_FHASDEFAULT = 32, + PARAMFLAG_FHASCUSTDATA = 64 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +public struct STATSTG // TypeDefIndex: 748 +{ + // Fields + public string pwcsName; // 0x08 + public int type; // 0x0C + public long cbSize; // 0x10 + public FILETIME mtime; // 0x18 + public FILETIME ctime; // 0x20 + public FILETIME atime; // 0x28 + public int grfMode; // 0x30 + public int grfLocksSupported; // 0x34 + public Guid clsid; // 0x38 + public int grfStateBits; // 0x48 + public int reserved; // 0x4C + +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[Serializable] +public enum SYSKIND // TypeDefIndex: 749 +{ + SYS_WIN16 = 0, + SYS_WIN32 = 1, + SYS_MAC = 2, + SYS_WIN64 = 3 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +public struct TYPEATTR // TypeDefIndex: 750 +{ + // Fields + public const int MEMBER_ID_NIL = -1; // 0x00 + public Guid guid; // 0x08 + public int lcid; // 0x18 + public int dwReserved; // 0x1C + public int memidConstructor; // 0x20 + public int memidDestructor; // 0x24 + public IntPtr lpstrSchema; // 0x28 + public int cbSizeInstance; // 0x2C + public TYPEKIND typekind; // 0x30 + public short cFuncs; // 0x34 + public short cVars; // 0x36 + public short cImplTypes; // 0x38 + public short cbSizeVft; // 0x3A + public short cbAlignment; // 0x3C + public TYPEFLAGS wTypeFlags; // 0x40 + public short wMajorVerNum; // 0x44 + public short wMinorVerNum; // 0x46 + public TYPEDESC tdescAlias; // 0x48 + public IDLDESC idldescType; // 0x50 + +} + +// Namespace: System.Runtime.InteropServices.ComTypes +public struct TYPEDESC // TypeDefIndex: 751 +{ + // Fields + public IntPtr lpValue; // 0x08 + public short vt; // 0x0C + +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[Serializable] +public enum TYPEFLAGS // TypeDefIndex: 752 +{ + TYPEFLAG_FAPPOBJECT = 1, + TYPEFLAG_FCANCREATE = 2, + TYPEFLAG_FLICENSED = 4, + TYPEFLAG_FPREDECLID = 8, + TYPEFLAG_FHIDDEN = 16, + TYPEFLAG_FCONTROL = 32, + TYPEFLAG_FDUAL = 64, + TYPEFLAG_FNONEXTENSIBLE = 128, + TYPEFLAG_FOLEAUTOMATION = 256, + TYPEFLAG_FRESTRICTED = 512, + TYPEFLAG_FAGGREGATABLE = 1024, + TYPEFLAG_FREPLACEABLE = 2048, + TYPEFLAG_FDISPATCHABLE = 4096, + TYPEFLAG_FREVERSEBIND = 8192, + TYPEFLAG_FPROXY = 16384 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[Serializable] +public enum TYPEKIND // TypeDefIndex: 753 +{ + TKIND_ENUM = 0, + TKIND_RECORD = 1, + TKIND_MODULE = 2, + TKIND_INTERFACE = 3, + TKIND_DISPATCH = 4, + TKIND_COCLASS = 5, + TKIND_ALIAS = 6, + TKIND_UNION = 7, + TKIND_MAX = 8 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[Serializable] +public struct TYPELIBATTR // TypeDefIndex: 754 +{ + // Fields + public Guid guid; // 0x08 + public int lcid; // 0x18 + public SYSKIND syskind; // 0x1C + public short wMajorVerNum; // 0x20 + public short wMinorVerNum; // 0x22 + public LIBFLAGS wLibFlags; // 0x24 + +} + +// Namespace: System.Runtime.InteropServices.ComTypes +public struct VARDESC // TypeDefIndex: 755 +{ + // Fields + public int memid; // 0x08 + public string lpstrSchema; // 0x0C + public DESCUNION desc; // 0x10 + public ELEMDESC elemdescVar; // 0x14 + public short wVarFlags; // 0x24 + public VARKIND varkind; // 0x28 + +} + +// Namespace: +public struct DESCUNION // TypeDefIndex: 756 +{ + // Fields + public IntPtr lpvarValue; // 0x08 + public int oInst; // 0x08 + +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[Serializable] +public enum VARFLAGS // TypeDefIndex: 757 +{ + VARFLAG_FREADONLY = 1, + VARFLAG_FSOURCE = 2, + VARFLAG_FBINDABLE = 4, + VARFLAG_FREQUESTEDIT = 8, + VARFLAG_FDISPLAYBIND = 16, + VARFLAG_FDEFAULTBIND = 32, + VARFLAG_FHIDDEN = 64, + VARFLAG_FRESTRICTED = 128, + VARFLAG_FDEFAULTCOLLELEM = 256, + VARFLAG_FUIDEFAULT = 512, + VARFLAG_FNONBROWSABLE = 1024, + VARFLAG_FREPLACEABLE = 2048, + VARFLAG_FIMMEDIATEBIND = 4096 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[Serializable] +public enum VARKIND // TypeDefIndex: 758 +{ + VAR_PERINSTANCE = 0, + VAR_STATIC = 1, + VAR_CONST = 2, + VAR_DISPATCH = 3 +} + +// Namespace: System.Runtime.InteropServices.Expando +public interface IExpando : IReflect // TypeDefIndex: 759 +{ + // Methods + FieldInfo AddField(string name); + MethodInfo AddMethod(string name, Delegate method); + PropertyInfo AddProperty(string name); + void RemoveMember(MemberInfo m); +} + +// Namespace: System.Runtime.InteropServices +public sealed class AllowReversePInvokeCallsAttribute : Attribute // TypeDefIndex: 760 +{ + // Methods + public void .ctor(); // 0x0037EAA8 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public struct ArrayWithOffset // TypeDefIndex: 761 +{ + // Fields + private object array; // 0x08 + private int offset; // 0x0C + + // Methods + public void .ctor(object array, int offset); // 0x000A688C + public override bool Equals(object obj); // 0x000A6898 + public bool Equals(ArrayWithOffset obj); // 0x000A68A0 + public override int GetHashCode(); // 0x000A68C8 + public object GetArray(); // 0x000A68D0 + public int GetOffset(); // 0x000A68D8 + public static bool op_Equality(ArrayWithOffset a, ArrayWithOffset b); // 0x0037EBA0 + public static bool op_Inequality(ArrayWithOffset a, ArrayWithOffset b); // 0x0037EBB8 +} + +// Namespace: System.Runtime.InteropServices +public enum AssemblyRegistrationFlags // TypeDefIndex: 762 +{ + None = 0, + SetCodeBase = 1 +} + +// Namespace: System.Runtime.InteropServices +public sealed class AutomationProxyAttribute : Attribute // TypeDefIndex: 763 +{ + // Fields + private bool val; // 0x08 + + // Properties + public bool Value { get; } // 0x0037EBEC + + // Methods + public void .ctor(bool val); // 0x0037EBCC +} + +// Namespace: System.Runtime.InteropServices +public struct BINDPTR // TypeDefIndex: 764 +{ + // Fields + public IntPtr lpfuncdesc; // 0x08 + public IntPtr lptcomp; // 0x08 + public IntPtr lpvardesc; // 0x08 + +} + +// Namespace: System.Runtime.InteropServices +public struct BIND_OPTS // TypeDefIndex: 765 +{ + // Fields + public int cbStruct; // 0x08 + public int grfFlags; // 0x0C + public int grfMode; // 0x10 + public int dwTickCountDeadline; // 0x14 + +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public sealed class BStrWrapper // TypeDefIndex: 766 +{ + // Fields + private string _value; // 0x08 + + // Properties + public string WrappedObject { get; } // 0x0037EC14 + + // Methods + public void .ctor(string value); // 0x0037EBF4 +} + +// Namespace: System.Runtime.InteropServices +public sealed class BestFitMappingAttribute : Attribute // TypeDefIndex: 767 +{ + // Fields + private bool bfm; // 0x08 + public bool ThrowOnUnmappableChar; // 0x09 + + // Properties + public bool BestFitMapping { get; } // 0x0037EC3C + + // Methods + public void .ctor(bool BestFitMapping); // 0x0037EC1C +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum CALLCONV // TypeDefIndex: 768 +{ + CC_CDECL = 1, + CC_PASCAL = 2, + CC_MSCPASCAL = 2, + CC_MACPASCAL = 3, + CC_STDCALL = 4, + CC_RESERVED = 5, + CC_SYSCALL = 6, + CC_MPWCDECL = 7, + CC_MPWPASCAL = 8, + CC_MAX = 9 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public class COMException : ExternalException // TypeDefIndex: 769 +{ + // Methods + public void .ctor(); // 0x0037EC44 + public void .ctor(string message); // 0x0037EC4C + public void .ctor(string message, Exception inner); // 0x0037EC54 + public void .ctor(string message, int errorCode); // 0x0037EC5C + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x0037EC64 + public override string ToString(); // 0x0037EC84 +} + +// Namespace: System.Runtime.InteropServices +public struct CONNECTDATA // TypeDefIndex: 770 +{ + // Fields + public object pUnk; // 0x08 + public int dwCookie; // 0x0C + +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum CallingConvention // TypeDefIndex: 771 +{ + Winapi = 1, + Cdecl = 2, + StdCall = 3, + ThisCall = 4, + FastCall = 5 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum CharSet // TypeDefIndex: 772 +{ + None = 1, + Ansi = 2, + Unicode = 3, + Auto = 4 +} + +// Namespace: System.Runtime.InteropServices +public sealed class ClassInterfaceAttribute : Attribute // TypeDefIndex: 773 +{ + // Fields + private ClassInterfaceType ciType; // 0x08 + + // Properties + public ClassInterfaceType Value { get; } // 0x0037F0AC + + // Methods + public void .ctor(short classInterfaceType); // 0x0037F06C + public void .ctor(ClassInterfaceType classInterfaceType); // 0x0037F08C +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum ClassInterfaceType // TypeDefIndex: 774 +{ + None = 0, + AutoDispatch = 1, + AutoDual = 2 +} + +// Namespace: System.Runtime.InteropServices +public sealed class ComAliasNameAttribute : Attribute // TypeDefIndex: 775 +{ + // Fields + private string val; // 0x08 + + // Properties + public string Value { get; } // 0x0037F0FC + + // Methods + public void .ctor(string alias); // 0x0037F0DC +} + +// Namespace: System.Runtime.InteropServices +public sealed class ComCompatibleVersionAttribute : Attribute // TypeDefIndex: 776 +{ + // Fields + private int major; // 0x08 + private int minor; // 0x0C + private int build; // 0x10 + private int revision; // 0x14 + + // Properties + public int MajorVersion { get; } // 0x0037F13C + public int MinorVersion { get; } // 0x0037F144 + public int BuildNumber { get; } // 0x0037F14C + public int RevisionNumber { get; } // 0x0037F154 + + // Methods + public void .ctor(int major, int minor, int build, int revision); // 0x0037F104 +} + +// Namespace: System.Runtime.InteropServices +public sealed class ComConversionLossAttribute : Attribute // TypeDefIndex: 777 +{ + // Methods + public void .ctor(); // 0x0037F15C +} + +// Namespace: System.Runtime.InteropServices +public sealed class ComDefaultInterfaceAttribute : Attribute // TypeDefIndex: 778 +{ + // Fields + private Type _type; // 0x08 + + // Properties + public Type Value { get; } // 0x0037F184 + + // Methods + public void .ctor(Type defaultInterface); // 0x0037F164 +} + +// Namespace: System.Runtime.InteropServices +public sealed class ComEventInterfaceAttribute : Attribute // TypeDefIndex: 779 +{ + // Fields + private Type si; // 0x08 + private Type ep; // 0x0C + + // Properties + public Type EventProvider { get; } // 0x0037F1B4 + public Type SourceInterface { get; } // 0x0037F1BC + + // Methods + public void .ctor(Type SourceInterface, Type EventProvider); // 0x0037F18C +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum ComInterfaceType // TypeDefIndex: 780 +{ + InterfaceIsDual = 0, + InterfaceIsIUnknown = 1, + InterfaceIsIDispatch = 2 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum ComMemberType // TypeDefIndex: 781 +{ + Method = 0, + PropGet = 1, + PropSet = 2 +} + +// Namespace: System.Runtime.InteropServices +public sealed class ComRegisterFunctionAttribute : Attribute // TypeDefIndex: 782 +{ + // Methods + public void .ctor(); // 0x0037F1CC +} + +// Namespace: System.Runtime.InteropServices +public sealed class ComSourceInterfacesAttribute : Attribute // TypeDefIndex: 783 +{ + // Fields + private string internalValue; // 0x08 + + // Properties + public string Value { get; } // 0x0037F5A4 + + // Methods + public void .ctor(string sourceInterfaces); // 0x0037F1D4 + public void .ctor(Type sourceInterface); // 0x0037F1F4 + public void .ctor(Type sourceInterface1, Type sourceInterface2); // 0x0037F238 + public void .ctor(Type sourceInterface1, Type sourceInterface2, Type sourceInterface3); // 0x0037F328 + public void .ctor(Type sourceInterface1, Type sourceInterface2, Type sourceInterface3, Type sourceInterface4); // 0x0037F448 +} + +// Namespace: System.Runtime.InteropServices +public sealed class ComUnregisterFunctionAttribute : Attribute // TypeDefIndex: 784 +{ + // Methods + public void .ctor(); // 0x002B5EF8 +} + +// Namespace: System.Runtime.InteropServices +public abstract class CriticalHandle : CriticalFinalizerObject, IDisposable // TypeDefIndex: 785 +{ + // Fields + protected IntPtr handle; // 0x08 + private bool _disposed; // 0x0C + + // Properties + public bool IsClosed { get; } // 0x002B6090 + public abstract bool IsInvalid { get; } + + // Methods + protected void .ctor(IntPtr invalidHandleValue); // 0x002B5F28 + protected override void Finalize(); // 0x002B5F48 + public void Close(); // 0x002B5FC0 + public void Dispose(); // 0x002B5FD4 + protected virtual void Dispose(bool disposing); // 0x002B5FE8 + protected abstract bool ReleaseHandle(); + protected void SetHandle(IntPtr handle); // 0x002B607C + public void SetHandleAsInvalid(); // 0x002B6084 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public sealed class CurrencyWrapper // TypeDefIndex: 786 +{ + // Fields + private Decimal currency; // 0x08 + + // Properties + public Decimal WrappedObject { get; } // 0x002B624C + + // Methods + public void .ctor(Decimal obj); // 0x002B6098 + public void .ctor(object obj); // 0x002B60D0 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum DESCKIND // TypeDefIndex: 787 +{ + DESCKIND_NONE = 0, + DESCKIND_FUNCDESC = 1, + DESCKIND_VARDESC = 2, + DESCKIND_TYPECOMP = 3, + DESCKIND_IMPLICITAPPOBJ = 4, + DESCKIND_MAX = 5 +} + +// Namespace: System.Runtime.InteropServices +public struct DISPPARAMS // TypeDefIndex: 788 +{ + // Fields + public IntPtr rgvarg; // 0x08 + public IntPtr rgdispidNamedArgs; // 0x0C + public int cArgs; // 0x10 + public int cNamedArgs; // 0x14 + +} + +// Namespace: System.Runtime.InteropServices +public sealed class DispIdAttribute : Attribute // TypeDefIndex: 789 +{ + // Fields + private int id; // 0x08 + + // Properties + public int Value { get; } // 0x002B62A4 + + // Methods + public void .ctor(int dispId); // 0x002B6284 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public sealed class DispatchWrapper // TypeDefIndex: 790 +{ + // Fields + private object wrappedObject; // 0x08 + + // Properties + public object WrappedObject { get; } // 0x002B63CC + + // Methods + public void .ctor(object obj); // 0x002B62AC +} + +// Namespace: System.Runtime.InteropServices +public struct ELEMDESC // TypeDefIndex: 791 +{ + // Fields + public TYPEDESC tdesc; // 0x08 + public DESCUNION desc; // 0x10 + +} + +// Namespace: +public struct DESCUNION // TypeDefIndex: 792 +{ + // Fields + public IDLDESC idldesc; // 0x08 + public PARAMDESC paramdesc; // 0x08 + +} + +// Namespace: System.Runtime.InteropServices +public struct EXCEPINFO // TypeDefIndex: 793 +{ + // Fields + public short wCode; // 0x08 + public short wReserved; // 0x0A + public string bstrSource; // 0x0C + public string bstrDescription; // 0x10 + public string bstrHelpFile; // 0x14 + public int dwHelpContext; // 0x18 + public IntPtr pvReserved; // 0x1C + public IntPtr pfnDeferredFillIn; // 0x20 + +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public sealed class ErrorWrapper // TypeDefIndex: 794 +{ + // Fields + private int errorCode; // 0x08 + + // Properties + public int ErrorCode { get; } // 0x002B6634 + + // Methods + public void .ctor(Exception e); // 0x002B63FC + public void .ctor(int errorCode); // 0x002B649C + public void .ctor(object errorCode); // 0x002B64BC +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum ExporterEventKind // TypeDefIndex: 795 +{ + NOTIF_TYPECONVERTED = 0, + NOTIF_CONVERTWARNING = 1, + ERROR_REFTOINVALIDASSEMBLY = 2 +} + +// Namespace: System.Runtime.InteropServices +public sealed class ExtensibleClassFactory // TypeDefIndex: 796 +{ + // Fields + private static Hashtable hashtable; // 0x00 + + // Methods + private void .ctor(); // 0x002B663C + private static void .cctor(); // 0x002B6644 + internal static ObjectCreationDelegate GetObjectCreationCallback(Type t); // 0x002B66C4 + public static void RegisterObjectCreationCallback(ObjectCreationDelegate callback); // 0x002B67A8 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public class ExternalException : SystemException // TypeDefIndex: 797 +{ + // Properties + public virtual int ErrorCode { get; } // 0x002B6ABC + + // Methods + public void .ctor(); // 0x002B69B4 + public void .ctor(string message); // 0x002B6A34 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x002B6A58 + public void .ctor(string message, Exception inner); // 0x002B6A78 + public void .ctor(string message, int errorCode); // 0x002B6A9C +} + +// Namespace: System.Runtime.InteropServices +public struct FILETIME // TypeDefIndex: 798 +{ + // Fields + public int dwLowDateTime; // 0x08 + public int dwHighDateTime; // 0x0C + +} + +// Namespace: System.Runtime.InteropServices +public struct FUNCDESC // TypeDefIndex: 799 +{ + // Fields + public int memid; // 0x08 + public IntPtr lprgscode; // 0x0C + public IntPtr lprgelemdescParam; // 0x10 + public FUNCKIND funckind; // 0x14 + public INVOKEKIND invkind; // 0x18 + public CALLCONV callconv; // 0x1C + public short cParams; // 0x20 + public short cParamsOpt; // 0x22 + public short oVft; // 0x24 + public short cScodes; // 0x26 + public ELEMDESC elemdescFunc; // 0x28 + public short wFuncFlags; // 0x38 + +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum FUNCFLAGS // TypeDefIndex: 800 +{ + FUNCFLAG_FRESTRICTED = 1, + FUNCFLAG_FSOURCE = 2, + FUNCFLAG_FBINDABLE = 4, + FUNCFLAG_FREQUESTEDIT = 8, + FUNCFLAG_FDISPLAYBIND = 16, + FUNCFLAG_FDEFAULTBIND = 32, + FUNCFLAG_FHIDDEN = 64, + FUNCFLAG_FUSESGETLASTERROR = 128, + FUNCFLAG_FDEFAULTCOLLELEM = 256, + FUNCFLAG_FUIDEFAULT = 512, + FUNCFLAG_FNONBROWSABLE = 1024, + FUNCFLAG_FREPLACEABLE = 2048, + FUNCFLAG_FIMMEDIATEBIND = 4096 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum FUNCKIND // TypeDefIndex: 801 +{ + FUNC_VIRTUAL = 0, + FUNC_PUREVIRTUAL = 1, + FUNC_NONVIRTUAL = 2, + FUNC_STATIC = 3, + FUNC_DISPATCH = 4 +} + +// Namespace: System.Runtime.InteropServices +public struct GCHandle // TypeDefIndex: 802 +{ + // Fields + private int handle; // 0x08 + + // Properties + public bool IsAllocated { get; } // 0x0008CE6C + public object Target { get; set; } // 0x0008CE7C 0x0008CE84 + + // Methods + private void .ctor(IntPtr h); // 0x0008CE00 + private void .ctor(object obj); // 0x0008CE20 + private void .ctor(object value, GCHandleType type); // 0x0008CE44 + public IntPtr AddrOfPinnedObject(); // 0x0008CEAC + public static GCHandle Alloc(object value); // 0x002B6D98 + public static GCHandle Alloc(object value, GCHandleType type); // 0x002B6DA4 + public void Free(); // 0x0008CEB4 + private static bool CheckCurrentDomain(int handle); // 0x002B6DDC + private static object GetTarget(int handle); // 0x002B6C2C + private static int GetTargetHandle(object obj, int handle, GCHandleType type); // 0x002B6B58 + private static void FreeHandle(int handle); // 0x002B6DD8 + private static IntPtr GetAddrOfPinnedObject(int handle); // 0x002B6D94 + public override bool Equals(object o); // 0x0008CED4 + public override int GetHashCode(); // 0x0008CEDC + public static GCHandle FromIntPtr(IntPtr value); // 0x002B6E7C + public static IntPtr ToIntPtr(GCHandle value); // 0x002B6FA4 + public static IntPtr op_Explicit(GCHandle value); // 0x002B6FAC + public static GCHandle op_Explicit(IntPtr value); // 0x002B6E80 + public static bool op_Equality(GCHandle a, GCHandle b); // 0x002B6FB4 + public static bool op_Inequality(GCHandle a, GCHandle b); // 0x002B7034 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum GCHandleType // TypeDefIndex: 803 +{ + Weak = 0, + WeakTrackResurrection = 1, + Normal = 2, + Pinned = 3 +} + +// Namespace: System.Runtime.InteropServices +public struct HandleRef // TypeDefIndex: 804 +{ + // Fields + private object wrapper; // 0x08 + private IntPtr handle; // 0x0C + + // Properties + public IntPtr Handle { get; } // 0x0008CEF4 + public object Wrapper { get; } // 0x0008CEFC + + // Methods + public void .ctor(object wrapper, IntPtr handle); // 0x0008CEE8 + public static IntPtr ToIntPtr(HandleRef value); // 0x002B70F8 + public static IntPtr op_Explicit(HandleRef value); // 0x002B7100 +} + +// Namespace: System.Runtime.InteropServices +public interface ICustomAdapter // TypeDefIndex: 805 +{ + // Methods + object GetUnderlyingObject(); +} + +// Namespace: System.Runtime.InteropServices +public interface ICustomFactory // TypeDefIndex: 806 +{ + // Methods + MarshalByRefObject CreateInstance(Type serverType); +} + +// Namespace: System.Runtime.InteropServices +public interface ICustomMarshaler // TypeDefIndex: 807 +{ + // Methods + void CleanUpManagedData(object ManagedObj); + void CleanUpNativeData(IntPtr pNativeData); + int GetNativeDataSize(); + IntPtr MarshalManagedToNative(object ManagedObj); + object MarshalNativeToManaged(IntPtr pNativeData); +} + +// Namespace: System.Runtime.InteropServices +public struct IDLDESC // TypeDefIndex: 808 +{ + // Fields + public int dwReserved; // 0x08 + public IDLFLAG wIDLFlags; // 0x0C + +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum IDLFLAG // TypeDefIndex: 809 +{ + IDLFLAG_NONE = 0, + IDLFLAG_FIN = 1, + IDLFLAG_FOUT = 2, + IDLFLAG_FLCID = 4, + IDLFLAG_FRETVAL = 8 +} + +// Namespace: System.Runtime.InteropServices +public sealed class IDispatchImplAttribute : Attribute // TypeDefIndex: 810 +{ + // Fields + private IDispatchImplType Impl; // 0x08 + + // Properties + public IDispatchImplType Value { get; } // 0x002B7148 + + // Methods + public void .ctor(IDispatchImplType implType); // 0x002B7108 + public void .ctor(short implType); // 0x002B7128 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum IDispatchImplType // TypeDefIndex: 811 +{ + SystemDefinedImpl = 0, + InternalImpl = 1, + CompatibleImpl = 2 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum IMPLTYPEFLAGS // TypeDefIndex: 812 +{ + IMPLTYPEFLAG_FDEFAULT = 1, + IMPLTYPEFLAG_FSOURCE = 2, + IMPLTYPEFLAG_FRESTRICTED = 4, + IMPLTYPEFLAG_FDEFAULTVTABLE = 8 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum INVOKEKIND // TypeDefIndex: 813 +{ + INVOKE_FUNC = 1, + INVOKE_PROPERTYGET = 2, + INVOKE_PROPERTYPUT = 4, + INVOKE_PROPERTYPUTREF = 8 +} + +// Namespace: System.Runtime.InteropServices +public interface IRegistrationServices // TypeDefIndex: 814 +{ + // Methods + Guid GetManagedCategoryGuid(); + string GetProgIdForType(Type type); + Type[] GetRegistrableTypesInAssembly(Assembly assembly); + bool RegisterAssembly(Assembly assembly, AssemblyRegistrationFlags flags); + void RegisterTypeForComClients(Type type, Guid g); + bool TypeRepresentsComType(Type type); + bool TypeRequiresRegistration(Type type); + bool UnregisterAssembly(Assembly assembly); +} + +// Namespace: System.Runtime.InteropServices +public interface ITypeLibConverter // TypeDefIndex: 815 +{ + // Methods + object ConvertAssemblyToTypeLib(Assembly assembly, string typeLibName, TypeLibExporterFlags flags, ITypeLibExporterNotifySink notifySink); + AssemblyBuilder ConvertTypeLibToAssembly(object typeLib, string asmFileName, int flags, ITypeLibImporterNotifySink notifySink, byte[] publicKey, StrongNameKeyPair keyPair, bool unsafeInterfaces); + AssemblyBuilder ConvertTypeLibToAssembly(object typeLib, string asmFileName, TypeLibImporterFlags flags, ITypeLibImporterNotifySink notifySink, byte[] publicKey, StrongNameKeyPair keyPair, string asmNamespace, Version asmVersion); + bool GetPrimaryInteropAssembly(Guid g, int major, int minor, int lcid, out string asmName, out string asmCodeBase); +} + +// Namespace: System.Runtime.InteropServices +public interface ITypeLibExporterNameProvider // TypeDefIndex: 816 +{ + // Methods + string[] GetNames(); +} + +// Namespace: System.Runtime.InteropServices +public interface ITypeLibExporterNotifySink // TypeDefIndex: 817 +{ + // Methods + void ReportEvent(ExporterEventKind eventKind, int eventCode, string eventMsg); + object ResolveRef(Assembly assembly); +} + +// Namespace: System.Runtime.InteropServices +public interface ITypeLibImporterNotifySink // TypeDefIndex: 818 +{ + // Methods + void ReportEvent(ImporterEventKind eventKind, int eventCode, string eventMsg); + Assembly ResolveRef(object typeLib); +} + +// Namespace: System.Runtime.InteropServices +public sealed class ImportedFromTypeLibAttribute : Attribute // TypeDefIndex: 819 +{ + // Fields + private string TlbFile; // 0x08 + + // Properties + public string Value { get; } // 0x002B7170 + + // Methods + public void .ctor(string tlbFile); // 0x002B7150 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum ImporterEventKind // TypeDefIndex: 820 +{ + NOTIF_TYPECONVERTED = 0, + NOTIF_CONVERTWARNING = 1, + ERROR_REFTOINVALIDTYPELIB = 2 +} + +// Namespace: System.Runtime.InteropServices +public sealed class InterfaceTypeAttribute : Attribute // TypeDefIndex: 821 +{ + // Fields + private ComInterfaceType intType; // 0x08 + + // Properties + public ComInterfaceType Value { get; } // 0x002B71C0 + + // Methods + public void .ctor(ComInterfaceType interfaceType); // 0x002B7180 + public void .ctor(short interfaceType); // 0x002B71A0 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public class InvalidComObjectException : SystemException // TypeDefIndex: 822 +{ + // Fields + private const int ErrorCode = -2146233049; // 0x00 + + // Methods + public void .ctor(); // 0x002B71C8 + public void .ctor(string message); // 0x002B7248 + public void .ctor(string message, Exception inner); // 0x002B726C + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x002B7290 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public class InvalidOleVariantTypeException : SystemException // TypeDefIndex: 823 +{ + // Fields + private const int ErrorCode = -2146233039; // 0x00 + + // Methods + public void .ctor(); // 0x002B72B0 + public void .ctor(string message); // 0x002B7330 + public void .ctor(string message, Exception inner); // 0x002B7354 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x002B7378 +} + +// Namespace: System.Runtime.InteropServices +public sealed class LCIDConversionAttribute : Attribute // TypeDefIndex: 824 +{ + // Fields + private int id; // 0x08 + + // Properties + public int Value { get; } // 0x002B73B8 + + // Methods + public void .ctor(int lcid); // 0x002B7398 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum LIBFLAGS // TypeDefIndex: 825 +{ + LIBFLAG_FRESTRICTED = 1, + LIBFLAG_FCONTROL = 2, + LIBFLAG_FHIDDEN = 4, + LIBFLAG_FHASDISKIMAGE = 8 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum LayoutKind // TypeDefIndex: 826 +{ + Sequential = 0, + Explicit = 2, + Auto = 3 +} + +// Namespace: System.Runtime.InteropServices +public static class Marshal // TypeDefIndex: 827 +{ + // Fields + public static readonly int SystemMaxDBCSCharSize; // 0x00 + public static readonly int SystemDefaultCharSize; // 0x04 + + // Methods + private static void .cctor(); // 0x002B73C0 + private static int AddRefInternal(IntPtr pUnk); // 0x002B7464 + public static int AddRef(IntPtr pUnk); // 0x002B7468 + public static IntPtr AllocCoTaskMem(int cb); // 0x002B7568 + public static IntPtr AllocHGlobal(IntPtr cb); // 0x002B756C + public static IntPtr AllocHGlobal(int cb); // 0x002B7570 + public static object BindToMoniker(string monikerName); // 0x002B7600 + public static void ChangeWrapperHandleStrength(object otp, bool fIsWeak); // 0x002B7688 + private static void copy_to_unmanaged(Array source, int startIndex, IntPtr destination, int length); // 0x002B7710 + private static void copy_from_unmanaged(IntPtr source, int startIndex, Array destination, int length); // 0x002B7714 + public static void Copy(byte[] source, int startIndex, IntPtr destination, int length); // 0x002B7718 + public static void Copy(char[] source, int startIndex, IntPtr destination, int length); // 0x002B77B0 + public static void Copy(short[] source, int startIndex, IntPtr destination, int length); // 0x002B7848 + public static void Copy(int[] source, int startIndex, IntPtr destination, int length); // 0x002B78E0 + public static void Copy(long[] source, int startIndex, IntPtr destination, int length); // 0x002B7978 + public static void Copy(float[] source, int startIndex, IntPtr destination, int length); // 0x002B7A10 + public static void Copy(double[] source, int startIndex, IntPtr destination, int length); // 0x002B7AA8 + public static void Copy(IntPtr[] source, int startIndex, IntPtr destination, int length); // 0x002B7B40 + public static void Copy(IntPtr source, byte[] destination, int startIndex, int length); // 0x002B7BD8 + public static void Copy(IntPtr source, char[] destination, int startIndex, int length); // 0x002B7C70 + public static void Copy(IntPtr source, short[] destination, int startIndex, int length); // 0x002B7D08 + public static void Copy(IntPtr source, int[] destination, int startIndex, int length); // 0x002B7DA0 + public static void Copy(IntPtr source, long[] destination, int startIndex, int length); // 0x002B7E38 + public static void Copy(IntPtr source, float[] destination, int startIndex, int length); // 0x002B7ED0 + public static void Copy(IntPtr source, double[] destination, int startIndex, int length); // 0x002B7F68 + public static void Copy(IntPtr source, IntPtr[] destination, int startIndex, int length); // 0x002B8000 + public static IntPtr CreateAggregatedObject(IntPtr pOuter, object o); // 0x002B8098 + public static object CreateWrapperOfType(object o, Type t); // 0x002B8120 + public static void DestroyStructure(IntPtr ptr, Type structuretype); // 0x002B839C + public static void FreeBSTR(IntPtr ptr); // 0x002B83A0 + public static void FreeCoTaskMem(IntPtr ptr); // 0x002B83A4 + public static void FreeHGlobal(IntPtr hglobal); // 0x002B83A8 + private static void ClearBSTR(IntPtr ptr); // 0x002B83AC + public static void ZeroFreeBSTR(IntPtr s); // 0x002B8490 + private static void ClearAnsi(IntPtr ptr); // 0x002B8518 + private static void ClearUnicode(IntPtr ptr); // 0x002B85F0 + public static void ZeroFreeCoTaskMemAnsi(IntPtr s); // 0x002B86CC + public static void ZeroFreeCoTaskMemUnicode(IntPtr s); // 0x002B8754 + public static void ZeroFreeGlobalAllocAnsi(IntPtr s); // 0x002B87DC + public static void ZeroFreeGlobalAllocUnicode(IntPtr s); // 0x002B8864 + public static Guid GenerateGuidForType(Type type); // 0x002B88EC + public static string GenerateProgIdForType(Type type); // 0x002B8928 + public static object GetActiveObject(string progID); // 0x002B89B0 + private static IntPtr GetCCW(object o, Type T); // 0x002B8A38 + private static IntPtr GetComInterfaceForObjectInternal(object o, Type T); // 0x002B8A3C + public static IntPtr GetComInterfaceForObject(object o, Type T); // 0x002B8BBC + public static IntPtr GetComInterfaceForObjectInContext(object o, Type t); // 0x002B8C50 + public static object GetComObjectData(object obj, object key); // 0x002B8CD8 + private static int GetComSlotForMethodInfoInternal(MemberInfo m); // 0x002B8D74 + public static int GetComSlotForMethodInfo(MemberInfo m); // 0x002B8D78 + public static int GetEndComSlot(Type t); // 0x002B8F70 + public static int GetExceptionCode(); // 0x002B8FF8 + public static IntPtr GetExceptionPointers(); // 0x002B9080 + public static IntPtr GetHINSTANCE(Module m); // 0x002B9108 + public static int GetHRForException(Exception e); // 0x002B91C0 + public static int GetHRForLastWin32Error(); // 0x002B91E4 + private static IntPtr GetIDispatchForObjectInternal(object o); // 0x002B926C + public static IntPtr GetIDispatchForObject(object o); // 0x002B6340 + public static IntPtr GetIDispatchForObjectInContext(object o); // 0x002B9270 + public static IntPtr GetITypeInfoForType(Type t); // 0x002B92F8 + private static IntPtr GetIUnknownForObjectInternal(object o); // 0x002B9380 + public static IntPtr GetIUnknownForObject(object o); // 0x002B9384 + public static IntPtr GetIUnknownForObjectInContext(object o); // 0x002B9410 + public static IntPtr GetManagedThunkForUnmanagedMethodPtr(IntPtr pfnMethodToWrap, IntPtr pbSignature, int cbSignature); // 0x002B9498 + public static MemberInfo GetMethodInfoForComSlot(Type t, int slot, ComMemberType memberType); // 0x002B9520 + public static void GetNativeVariantForObject(object obj, IntPtr pDstNativeVariant); // 0x002B95A8 + private static object GetObjectForCCW(IntPtr pUnk); // 0x002B9680 + public static object GetObjectForIUnknown(IntPtr pUnk); // 0x002B9684 + public static object GetObjectForNativeVariant(IntPtr pSrcNativeVariant); // 0x002B978C + public static object[] GetObjectsForNativeVariants(IntPtr aSrcNativeVariant, int cVars); // 0x002B98DC + public static int GetStartComSlot(Type t); // 0x002B9B0C + public static Thread GetThreadFromFiberCookie(int cookie); // 0x002B9B94 + public static object GetTypedObjectForIUnknown(IntPtr pUnk, Type t); // 0x002B9C1C + public static Type GetTypeForITypeInfo(IntPtr piTypeInfo); // 0x002B9DDC + public static string GetTypeInfoName(UCOMITypeInfo pTI); // 0x002B9E64 + public static string GetTypeInfoName(ITypeInfo typeInfo); // 0x002B9EEC + public static Guid GetTypeLibGuid(UCOMITypeLib pTLB); // 0x002B9F74 + public static Guid GetTypeLibGuid(ITypeLib typelib); // 0x002B9FFC + public static Guid GetTypeLibGuidForAssembly(Assembly asm); // 0x002BA084 + public static int GetTypeLibLcid(UCOMITypeLib pTLB); // 0x002BA10C + public static int GetTypeLibLcid(ITypeLib typelib); // 0x002BA194 + public static string GetTypeLibName(UCOMITypeLib pTLB); // 0x002BA21C + public static string GetTypeLibName(ITypeLib typelib); // 0x002BA2A4 + public static void GetTypeLibVersionForAssembly(Assembly inputAssembly, out int majorVersion, out int minorVersion); // 0x002BA32C + public static object GetUniqueObjectForIUnknown(IntPtr unknown); // 0x002BA3B4 + public static IntPtr GetUnmanagedThunkForManagedMethodPtr(IntPtr pfnMethodToWrap, IntPtr pbSignature, int cbSignature); // 0x002BA43C + public static bool IsComObject(object o); // 0x002B8BB8 + public static bool IsTypeVisibleFromCom(Type t); // 0x002BA4C4 + public static int NumParamBytes(MethodInfo m); // 0x002BA54C + public static int GetLastWin32Error(); // 0x002BA5D4 + public static IntPtr OffsetOf(Type t, string fieldName); // 0x002BA5D8 + public static void Prelink(MethodInfo m); // 0x002BA5DC + public static void PrelinkAll(Type c); // 0x002BA5E0 + public static string PtrToStringAnsi(IntPtr ptr); // 0x002BA5E4 + public static string PtrToStringAnsi(IntPtr ptr, int len); // 0x002BA5E8 + public static string PtrToStringAuto(IntPtr ptr); // 0x002BA5EC + public static string PtrToStringAuto(IntPtr ptr, int len); // 0x002BA6D4 + public static string PtrToStringUni(IntPtr ptr); // 0x002BA6D0 + public static string PtrToStringUni(IntPtr ptr, int len); // 0x002BA7C4 + public static string PtrToStringBSTR(IntPtr ptr); // 0x002BA7C8 + public static void PtrToStructure(IntPtr ptr, object structure); // 0x002BA7CC + public static object PtrToStructure(IntPtr ptr, Type structureType); // 0x002B98D8 + private static int QueryInterfaceInternal(IntPtr pUnk, Guid iid, out IntPtr ppv); // 0x002BA7D0 + public static int QueryInterface(IntPtr pUnk, Guid iid, out IntPtr ppv); // 0x002BA7D4 + public static byte ReadByte(IntPtr ptr); // 0x002BA8E4 + public static byte ReadByte(IntPtr ptr, int ofs); // 0x002B85EC + public static byte ReadByte(object ptr, int ofs); // 0x002BA968 + public static short ReadInt16(IntPtr ptr); // 0x002BA9F0 + public static short ReadInt16(IntPtr ptr, int ofs); // 0x002B86C8 + public static short ReadInt16(object ptr, int ofs); // 0x002BAA74 + public static int ReadInt32(IntPtr ptr); // 0x002BAAFC + public static int ReadInt32(IntPtr ptr, int ofs); // 0x002B8488 + public static int ReadInt32(object ptr, int ofs); // 0x002BAB80 + public static long ReadInt64(IntPtr ptr); // 0x002BAC08 + public static long ReadInt64(IntPtr ptr, int ofs); // 0x002BAC8C + public static long ReadInt64(object ptr, int ofs); // 0x002BAC90 + public static IntPtr ReadIntPtr(IntPtr ptr); // 0x002BAD18 + public static IntPtr ReadIntPtr(IntPtr ptr, int ofs); // 0x002BAD9C + public static IntPtr ReadIntPtr(object ptr, int ofs); // 0x002BADA0 + public static IntPtr ReAllocCoTaskMem(IntPtr pv, int cb); // 0x002BAE28 + public static IntPtr ReAllocHGlobal(IntPtr pv, IntPtr cb); // 0x002BAE2C + private static int ReleaseInternal(IntPtr pUnk); // 0x002BAE30 + public static int Release(IntPtr pUnk); // 0x002BAE34 + private static int ReleaseComObjectInternal(object co); // 0x002BAF34 + public static int ReleaseComObject(object o); // 0x002BAF38 + public static void ReleaseThreadCache(); // 0x002BB0B8 + public static bool SetComObjectData(object obj, object key, object data); // 0x002BB140 + public static int SizeOf(object structure); // 0x002BB1DC + public static int SizeOf(Type t); // 0x002B9B08 + public static IntPtr StringToBSTR(string s); // 0x002BB27C + public static IntPtr StringToCoTaskMemAnsi(string s); // 0x002BB280 + public static IntPtr StringToCoTaskMemAuto(string s); // 0x002BB440 + public static IntPtr StringToCoTaskMemUni(string s); // 0x002BB524 + public static IntPtr StringToHGlobalAnsi(string s); // 0x002BB658 + public static IntPtr StringToHGlobalAuto(string s); // 0x002BB65C + public static IntPtr StringToHGlobalUni(string s); // 0x002BB740 + public static IntPtr SecureStringToBSTR(SecureString s); // 0x002BB744 + public static IntPtr SecureStringToCoTaskMemAnsi(SecureString s); // 0x002BBA84 + public static IntPtr SecureStringToCoTaskMemUnicode(SecureString s); // 0x002BBDE8 + public static IntPtr SecureStringToGlobalAllocAnsi(SecureString s); // 0x002BC0FC + public static IntPtr SecureStringToGlobalAllocUnicode(SecureString s); // 0x002BC1DC + public static void StructureToPtr(object structure, IntPtr ptr, bool fDeleteOld); // 0x002B967C + public static void ThrowExceptionForHR(int errorCode); // 0x002BC2BC + public static void ThrowExceptionForHR(int errorCode, IntPtr errorInfo); // 0x002BC3E0 + public static IntPtr UnsafeAddrOfPinnedArrayElement(Array arr, int index); // 0x002BC5B4 + public static void WriteByte(IntPtr ptr, byte val); // 0x002BC5B8 + public static void WriteByte(IntPtr ptr, int ofs, byte val); // 0x002B848C + public static void WriteByte(out object ptr, int ofs, byte val); // 0x002BC644 + public static void WriteInt16(IntPtr ptr, short val); // 0x002BC6CC + public static void WriteInt16(IntPtr ptr, int ofs, short val); // 0x002B86C4 + public static void WriteInt16(out object ptr, int ofs, short val); // 0x002BC758 + public static void WriteInt16(IntPtr ptr, char val); // 0x002BC7E0 + public static void WriteInt16(IntPtr ptr, int ofs, char val); // 0x002BC86C + public static void WriteInt16(out object ptr, int ofs, char val); // 0x002BC874 + public static void WriteInt32(IntPtr ptr, int val); // 0x002BC8FC + public static void WriteInt32(IntPtr ptr, int ofs, int val); // 0x002BBA80 + public static void WriteInt32(out object ptr, int ofs, int val); // 0x002BC988 + public static void WriteInt64(IntPtr ptr, long val); // 0x002BCA10 + public static void WriteInt64(IntPtr ptr, int ofs, long val); // 0x002BCAA4 + public static void WriteInt64(out object ptr, int ofs, long val); // 0x002BCAA8 + public static void WriteIntPtr(IntPtr ptr, IntPtr val); // 0x002BCB30 + public static void WriteIntPtr(IntPtr ptr, int ofs, IntPtr val); // 0x002BCBBC + public static void WriteIntPtr(out object ptr, int ofs, IntPtr val); // 0x002BCBC0 + public static Exception GetExceptionForHR(int errorCode); // 0x002BC360 + public static Exception GetExceptionForHR(int errorCode, IntPtr errorInfo); // 0x002BC484 + public static int FinalReleaseComObject(object o); // 0x002BCC48 + private static Delegate GetDelegateForFunctionPointerInternal(IntPtr ptr, Type t); // 0x002BCCD4 + public static Delegate GetDelegateForFunctionPointer(IntPtr ptr, Type t); // 0x002BCCD8 + private static IntPtr GetFunctionPointerForDelegateInternal(Delegate d); // 0x002BCF28 + public static IntPtr GetFunctionPointerForDelegate(Delegate d); // 0x002BCF2C +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public class MarshalDirectiveException : SystemException // TypeDefIndex: 828 +{ + // Fields + private const int ErrorCode = -2146233035; // 0x00 + + // Methods + public void .ctor(); // 0x002BD054 + public void .ctor(string message); // 0x002BD0D4 + public void .ctor(string message, Exception inner); // 0x002BD0F8 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x002BD11C +} + +// Namespace: System.Runtime.InteropServices +public struct PARAMDESC // TypeDefIndex: 829 +{ + // Fields + public IntPtr lpVarValue; // 0x08 + public PARAMFLAG wParamFlags; // 0x0C + +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum PARAMFLAG // TypeDefIndex: 830 +{ + PARAMFLAG_NONE = 0, + PARAMFLAG_FIN = 1, + PARAMFLAG_FOUT = 2, + PARAMFLAG_FLCID = 4, + PARAMFLAG_FRETVAL = 8, + PARAMFLAG_FOPT = 16, + PARAMFLAG_FHASDEFAULT = 32, + PARAMFLAG_FHASCUSTDATA = 64 +} + +// Namespace: System.Runtime.InteropServices +public sealed class PreserveSigAttribute : Attribute // TypeDefIndex: 831 +{ + // Methods + public void .ctor(); // 0x002BD444 +} + +// Namespace: System.Runtime.InteropServices +public sealed class PrimaryInteropAssemblyAttribute : Attribute // TypeDefIndex: 832 +{ + // Fields + private int major; // 0x08 + private int minor; // 0x0C + + // Properties + public int MajorVersion { get; } // 0x002BD474 + public int MinorVersion { get; } // 0x002BD47C + + // Methods + public void .ctor(int major, int minor); // 0x002BD44C +} + +// Namespace: System.Runtime.InteropServices +public sealed class ProgIdAttribute : Attribute // TypeDefIndex: 833 +{ + // Fields + private string pid; // 0x08 + + // Properties + public string Value { get; } // 0x002BD4A4 + + // Methods + public void .ctor(string progId); // 0x002BD484 +} + +// Namespace: System.Runtime.InteropServices +public enum RegistrationClassContext // TypeDefIndex: 834 +{ + InProcessServer = 1, + InProcessHandler = 2, + LocalServer = 4, + InProcessServer16 = 8, + RemoteServer = 16, + InProcessHandler16 = 32, + Reserved1 = 64, + Reserved2 = 128, + Reserved3 = 256, + Reserved4 = 512, + NoCodeDownload = 1024, + Reserved5 = 2048, + NoCustomMarshal = 4096, + EnableCodeDownload = 8192, + NoFailureLog = 16384, + DisableActivateAsActivator = 32768, + EnableActivateAsActivator = 65536, + FromDefaultContext = 131072 +} + +// Namespace: System.Runtime.InteropServices +public enum RegistrationConnectionType // TypeDefIndex: 835 +{ + SingleUse = 0, + MultipleUse = 1, + MultiSeparate = 2, + Suspended = 4, + Surrogate = 8 +} + +// Namespace: System.Runtime.InteropServices +public class RegistrationServices : IRegistrationServices // TypeDefIndex: 836 +{ + // Methods + public void .ctor(); // 0x002BD4AC + public virtual Guid GetManagedCategoryGuid(); // 0x002BD4B4 + public virtual string GetProgIdForType(Type type); // 0x002BD53C + public virtual Type[] GetRegistrableTypesInAssembly(Assembly assembly); // 0x002BD5C4 + public virtual bool RegisterAssembly(Assembly assembly, AssemblyRegistrationFlags flags); // 0x002BD64C + public virtual void RegisterTypeForComClients(Type type, Guid g); // 0x002BD6D4 + public virtual bool TypeRepresentsComType(Type type); // 0x002BD75C + public virtual bool TypeRequiresRegistration(Type type); // 0x002BD7E4 + public virtual bool UnregisterAssembly(Assembly assembly); // 0x002BD86C + public virtual int RegisterTypeForComClients(Type type, RegistrationClassContext classContext, RegistrationConnectionType flags); // 0x002BD8F4 + public virtual void UnregisterTypeForComClients(int cookie); // 0x002BD97C +} + +// Namespace: System.Runtime.InteropServices +public class RuntimeEnvironment // TypeDefIndex: 837 +{ + // Properties + public static string SystemConfigurationFile { get; } // 0x002BDA0C + + // Methods + public void .ctor(); // 0x002BDA04 + public static bool FromGlobalAccessCache(Assembly a); // 0x002BDAE4 + public static string GetRuntimeDirectory(); // 0x002BDB10 + public static string GetSystemVersion(); // 0x002BDC2C +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public class SEHException : ExternalException // TypeDefIndex: 838 +{ + // Methods + public void .ctor(); // 0x002BDFD4 + public void .ctor(string message); // 0x002BDFD8 + public void .ctor(string message, Exception inner); // 0x002BDFFC + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x002BE020 + public virtual bool CanResume(); // 0x002BE040 +} + +// Namespace: System.Runtime.InteropServices +public struct STATSTG // TypeDefIndex: 839 +{ + // Fields + public string pwcsName; // 0x08 + public int type; // 0x0C + public long cbSize; // 0x10 + public FILETIME mtime; // 0x18 + public FILETIME ctime; // 0x20 + public FILETIME atime; // 0x28 + public int grfMode; // 0x30 + public int grfLocksSupported; // 0x34 + public Guid clsid; // 0x38 + public int grfStateBits; // 0x48 + public int reserved; // 0x4C + +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum SYSKIND // TypeDefIndex: 840 +{ + SYS_WIN16 = 0, + SYS_WIN32 = 1, + SYS_MAC = 2 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public class SafeArrayRankMismatchException : SystemException // TypeDefIndex: 841 +{ + // Fields + private const int ErrorCode = -2146233032; // 0x00 + + // Methods + public void .ctor(); // 0x002BE048 + public void .ctor(string message); // 0x002BE0C8 + public void .ctor(string message, Exception inner); // 0x002BE0EC + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x002BE110 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public class SafeArrayTypeMismatchException : SystemException // TypeDefIndex: 842 +{ + // Fields + private const int ErrorCode = -2146233037; // 0x00 + + // Methods + public void .ctor(); // 0x002BE130 + public void .ctor(string message); // 0x002BE1B0 + public void .ctor(string message, Exception inner); // 0x002BE1D4 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x002BE1F8 +} + +// Namespace: System.Runtime.InteropServices +public abstract class SafeHandle : CriticalFinalizerObject, IDisposable // TypeDefIndex: 843 +{ + // Fields + protected IntPtr handle; // 0x08 + private IntPtr invalid_handle_value; // 0x0C + private int refcount; // 0x10 + private bool owns_handle; // 0x14 + + // Properties + public bool IsClosed { get; } // 0x002BE800 + public abstract bool IsInvalid { get; } + + // Methods + protected void .ctor(); // 0x002BE218 + protected void .ctor(IntPtr invalidHandleValue, bool ownsHandle); // 0x002BE2B0 + public void Close(); // 0x002BE2E0 + public void DangerousAddRef(bool success); // 0x002BE42C + public IntPtr DangerousGetHandle(); // 0x002BE598 + public void DangerousRelease(); // 0x002BE668 + public void Dispose(); // 0x002BE7AC + public void SetHandleAsInvalid(); // 0x002BE7E0 + protected virtual void Dispose(bool disposing); // 0x002BE7EC + protected abstract bool ReleaseHandle(); + protected void SetHandle(IntPtr handle); // 0x002BE7F8 + protected override void Finalize(); // 0x002BE814 +} + +// Namespace: System.Runtime.InteropServices +public sealed class SetWin32ContextInIDispatchAttribute : Attribute // TypeDefIndex: 844 +{ + // Methods + public void .ctor(); // 0x002BE8B8 +} + +// Namespace: System.Runtime.InteropServices +public struct TYPEATTR // TypeDefIndex: 845 +{ + // Fields + public const int MEMBER_ID_NIL = -1; // 0x00 + public Guid guid; // 0x08 + public int lcid; // 0x18 + public int dwReserved; // 0x1C + public int memidConstructor; // 0x20 + public int memidDestructor; // 0x24 + public IntPtr lpstrSchema; // 0x28 + public int cbSizeInstance; // 0x2C + public TYPEKIND typekind; // 0x30 + public short cFuncs; // 0x34 + public short cVars; // 0x36 + public short cImplTypes; // 0x38 + public short cbSizeVft; // 0x3A + public short cbAlignment; // 0x3C + public TYPEFLAGS wTypeFlags; // 0x40 + public short wMajorVerNum; // 0x44 + public short wMinorVerNum; // 0x46 + public TYPEDESC tdescAlias; // 0x48 + public IDLDESC idldescType; // 0x50 + +} + +// Namespace: System.Runtime.InteropServices +public struct TYPEDESC // TypeDefIndex: 846 +{ + // Fields + public IntPtr lpValue; // 0x08 + public short vt; // 0x0C + +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum TYPEFLAGS // TypeDefIndex: 847 +{ + TYPEFLAG_FAPPOBJECT = 1, + TYPEFLAG_FCANCREATE = 2, + TYPEFLAG_FLICENSED = 4, + TYPEFLAG_FPREDECLID = 8, + TYPEFLAG_FHIDDEN = 16, + TYPEFLAG_FCONTROL = 32, + TYPEFLAG_FDUAL = 64, + TYPEFLAG_FNONEXTENSIBLE = 128, + TYPEFLAG_FOLEAUTOMATION = 256, + TYPEFLAG_FRESTRICTED = 512, + TYPEFLAG_FAGGREGATABLE = 1024, + TYPEFLAG_FREPLACEABLE = 2048, + TYPEFLAG_FDISPATCHABLE = 4096, + TYPEFLAG_FREVERSEBIND = 8192, + TYPEFLAG_FPROXY = 16384 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum TYPEKIND // TypeDefIndex: 848 +{ + TKIND_ENUM = 0, + TKIND_RECORD = 1, + TKIND_MODULE = 2, + TKIND_INTERFACE = 3, + TKIND_DISPATCH = 4, + TKIND_COCLASS = 5, + TKIND_ALIAS = 6, + TKIND_UNION = 7, + TKIND_MAX = 8 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public struct TYPELIBATTR // TypeDefIndex: 849 +{ + // Fields + public Guid guid; // 0x08 + public int lcid; // 0x18 + public SYSKIND syskind; // 0x1C + public short wMajorVerNum; // 0x20 + public short wMinorVerNum; // 0x22 + public LIBFLAGS wLibFlags; // 0x24 + +} + +// Namespace: System.Runtime.InteropServices +public sealed class TypeLibConverter : ITypeLibConverter // TypeDefIndex: 850 +{ + // Methods + public void .ctor(); // 0x002BE930 + public object ConvertAssemblyToTypeLib(Assembly assembly, string strTypeLibName, TypeLibExporterFlags flags, ITypeLibExporterNotifySink notifySink); // 0x002BE938 + public AssemblyBuilder ConvertTypeLibToAssembly(object typeLib, string asmFileName, int flags, ITypeLibImporterNotifySink notifySink, byte[] publicKey, StrongNameKeyPair keyPair, bool unsafeInterfaces); // 0x002BE9C0 + public AssemblyBuilder ConvertTypeLibToAssembly(object typeLib, string asmFileName, TypeLibImporterFlags flags, ITypeLibImporterNotifySink notifySink, byte[] publicKey, StrongNameKeyPair keyPair, string asmNamespace, Version asmVersion); // 0x002BEA48 + public bool GetPrimaryInteropAssembly(Guid g, int major, int minor, int lcid, out string asmName, out string asmCodeBase); // 0x002BEAD0 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum TypeLibExporterFlags // TypeDefIndex: 851 +{ + None = 0, + OnlyReferenceRegistered = 1, + CallerResolvedReferences = 2, + OldNames = 4, + ExportAs32Bit = 16, + ExportAs64Bit = 32 +} + +// Namespace: System.Runtime.InteropServices +public sealed class TypeLibFuncAttribute : Attribute // TypeDefIndex: 852 +{ + // Fields + private TypeLibFuncFlags flags; // 0x08 + + // Properties + public TypeLibFuncFlags Value { get; } // 0x002BEB98 + + // Methods + public void .ctor(short flags); // 0x002BEB58 + public void .ctor(TypeLibFuncFlags flags); // 0x002BEB78 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum TypeLibFuncFlags // TypeDefIndex: 853 +{ + FRestricted = 1, + FSource = 2, + FBindable = 4, + FRequestEdit = 8, + FDisplayBind = 16, + FDefaultBind = 32, + FHidden = 64, + FUsesGetLastError = 128, + FDefaultCollelem = 256, + FUiDefault = 512, + FNonBrowsable = 1024, + FReplaceable = 2048, + FImmediateBind = 4096 +} + +// Namespace: System.Runtime.InteropServices +public sealed class TypeLibImportClassAttribute : Attribute // TypeDefIndex: 854 +{ + // Fields + private string _importClass; // 0x08 + + // Properties + public string Value { get; } // 0x002BEBE4 + + // Methods + public void .ctor(Type importClass); // 0x002BEBA0 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum TypeLibImporterFlags // TypeDefIndex: 855 +{ + None = 0, + PrimaryInteropAssembly = 1, + UnsafeInterfaces = 2, + SafeArrayAsSystemArray = 4, + TransformDispRetVals = 8, + PreventClassMembers = 16, + SerializableValueClasses = 32, + ImportAsX86 = 256, + ImportAsX64 = 512, + ImportAsItanium = 1024, + ImportAsAgnostic = 2048, + ReflectionOnlyLoading = 4096 +} + +// Namespace: System.Runtime.InteropServices +public sealed class TypeLibTypeAttribute : Attribute // TypeDefIndex: 856 +{ + // Fields + private TypeLibTypeFlags flags; // 0x08 + + // Properties + public TypeLibTypeFlags Value { get; } // 0x002BEC2C + + // Methods + public void .ctor(short flags); // 0x002BEBEC + public void .ctor(TypeLibTypeFlags flags); // 0x002BEC0C +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum TypeLibTypeFlags // TypeDefIndex: 857 +{ + FAppObject = 1, + FCanCreate = 2, + FLicensed = 4, + FPreDeclId = 8, + FHidden = 16, + FControl = 32, + FDual = 64, + FNonExtensible = 128, + FOleAutomation = 256, + FRestricted = 512, + FAggregatable = 1024, + FReplaceable = 2048, + FDispatchable = 4096, + FReverseBind = 8192 +} + +// Namespace: System.Runtime.InteropServices +public sealed class TypeLibVarAttribute : Attribute // TypeDefIndex: 858 +{ + // Fields + private TypeLibVarFlags flags; // 0x08 + + // Properties + public TypeLibVarFlags Value { get; } // 0x002BEC74 + + // Methods + public void .ctor(short flags); // 0x002BEC34 + public void .ctor(TypeLibVarFlags flags); // 0x002BEC54 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum TypeLibVarFlags // TypeDefIndex: 859 +{ + FReadOnly = 1, + FSource = 2, + FBindable = 4, + FRequestEdit = 8, + FDisplayBind = 16, + FDefaultBind = 32, + FHidden = 64, + FRestricted = 128, + FDefaultCollelem = 256, + FUiDefault = 512, + FNonBrowsable = 1024, + FReplaceable = 2048, + FImmediateBind = 4096 +} + +// Namespace: System.Runtime.InteropServices +public sealed class TypeLibVersionAttribute : Attribute // TypeDefIndex: 860 +{ + // Fields + private int major; // 0x08 + private int minor; // 0x0C + + // Properties + public int MajorVersion { get; } // 0x002BECA4 + public int MinorVersion { get; } // 0x002BECAC + + // Methods + public void .ctor(int major, int minor); // 0x002BEC7C +} + +// Namespace: System.Runtime.InteropServices +[ComImport]public interface UCOMIBindCtx // TypeDefIndex: 861 +{ + // Methods + void RegisterObjectBound(object punk); // 0x002BECB4 + void RevokeObjectBound(object punk); // 0x002BED7C + void ReleaseBoundObjects(); // 0x002BEE44 + void SetBindOptions(BIND_OPTS pbindopts); // 0x002BEE80 + void GetBindOptions(BIND_OPTS pbindopts); // 0x002BEEC4 + void GetRunningObjectTable(out UCOMIRunningObjectTable pprot); // 0x002BEF08 + void RegisterObjectParam(string pszKey, object punk); // 0x002BF01C + void GetObjectParam(string pszKey, out object ppunk); // 0x002BF0F4 + void EnumObjectParam(out UCOMIEnumString ppenum); // 0x002BF218 + void RevokeObjectParam(string pszKey); // 0x002BF32C +} + +// Namespace: System.Runtime.InteropServices +[ComImport]public interface UCOMIConnectionPoint // TypeDefIndex: 862 +{ + // Methods + void GetConnectionInterface(out Guid pIID); // 0x002BF378 + void GetConnectionPointContainer(out UCOMIConnectionPointContainer ppCPC); // 0x002BF3BC + void Advise(object pUnkSink, out int pdwCookie); // 0x002BF4D0 + void Unadvise(int dwCookie); // 0x002BF5A0 + void EnumConnections(out UCOMIEnumConnections ppEnum); // 0x002BF5E4 +} + +// Namespace: System.Runtime.InteropServices +[ComImport]public interface UCOMIConnectionPointContainer // TypeDefIndex: 863 +{ + // Methods + void EnumConnectionPoints(out UCOMIEnumConnectionPoints ppEnum); // 0x002BF6F8 + void FindConnectionPoint(Guid riid, out UCOMIConnectionPoint ppCP); // 0x002BF80C +} + +// Namespace: System.Runtime.InteropServices +[ComImport]public interface UCOMIEnumConnectionPoints // TypeDefIndex: 864 +{ + // Methods + int Next(int celt, out UCOMIConnectionPoint[] rgelt, out int pceltFetched); // 0x002BF928 + int Skip(int celt); // 0x002BF954 + int Reset(); // 0x002BF9B0 + void Clone(out UCOMIEnumConnectionPoints ppenum); // 0x002BFA04 +} + +// Namespace: System.Runtime.InteropServices +[ComImport]public interface UCOMIEnumConnections // TypeDefIndex: 865 +{ + // Methods + int Next(int celt, out CONNECTDATA[] rgelt, out int pceltFetched); // 0x002BFB18 + int Skip(int celt); // 0x002BFC44 + void Reset(); // 0x002BFCA0 + void Clone(out UCOMIEnumConnections ppenum); // 0x002BFCDC +} + +// Namespace: System.Runtime.InteropServices +[ComImport]public interface UCOMIEnumMoniker // TypeDefIndex: 866 +{ + // Methods + int Next(int celt, out UCOMIMoniker[] rgelt, out int pceltFetched); // 0x002BFDF0 + int Skip(int celt); // 0x002BFE1C + int Reset(); // 0x002BFE78 + void Clone(out UCOMIEnumMoniker ppenum); // 0x002BFECC +} + +// Namespace: System.Runtime.InteropServices +[ComImport]public interface UCOMIEnumString // TypeDefIndex: 867 +{ + // Methods + int Next(int celt, out string[] rgelt, out int pceltFetched); // 0x002BFFE0 + int Skip(int celt); // 0x002C00F0 + int Reset(); // 0x002C014C + void Clone(out UCOMIEnumString ppenum); // 0x002C01A0 +} + +// Namespace: System.Runtime.InteropServices +[ComImport]public interface UCOMIEnumVARIANT // TypeDefIndex: 868 +{ + // Methods + int Next(int celt, int rgvar, int pceltFetched); // 0x002C02B4 + int Skip(int celt); // 0x002C0324 + int Reset(); // 0x002C0380 + void Clone(int ppenum); // 0x002C03D4 +} + +// Namespace: System.Runtime.InteropServices +[ComImport]public interface UCOMIMoniker // TypeDefIndex: 869 +{ + // Methods + void GetClassID(out Guid pClassID); // 0x002C0418 + int IsDirty(); // 0x002C045C + void Load(UCOMIStream pStm); // 0x002C04B0 + void Save(UCOMIStream pStm, bool fClearDirty); // 0x002C0578 + void GetSizeMax(out long pcbSize); // 0x002C0648 + void BindToObject(UCOMIBindCtx pbc, UCOMIMoniker pmkToLeft, Guid riidResult, out object ppvResult); // 0x002C068C + void BindToStorage(UCOMIBindCtx pbc, UCOMIMoniker pmkToLeft, Guid riid, out object ppvObj); // 0x002C08B4 + void Reduce(UCOMIBindCtx pbc, int dwReduceHowFar, UCOMIMoniker ppmkToLeft, out UCOMIMoniker ppmkReduced); // 0x002C0ADC + void ComposeWith(UCOMIMoniker pmkRight, bool fOnlyIfNotGeneric, out UCOMIMoniker ppmkComposite); // 0x002C0D68 + void Enum(bool fForward, out UCOMIEnumMoniker ppenumMoniker); // 0x002C0F0C + void IsEqual(UCOMIMoniker pmkOtherMoniker); // 0x002C1028 + void Hash(out int pdwHash); // 0x002C10F0 + void IsRunning(UCOMIBindCtx pbc, UCOMIMoniker pmkToLeft, UCOMIMoniker pmkNewlyRunning); // 0x002C1134 + void GetTimeOfLastChange(UCOMIBindCtx pbc, UCOMIMoniker pmkToLeft, out FILETIME pFileTime); // 0x002C1300 + void Inverse(out UCOMIMoniker ppmk); // 0x002C1450 + void CommonPrefixWith(UCOMIMoniker pmkOther, out UCOMIMoniker ppmkPrefix); // 0x002C1564 + void RelativePathTo(UCOMIMoniker pmkOther, out UCOMIMoniker ppmkRelPath); // 0x002C1700 + void GetDisplayName(UCOMIBindCtx pbc, UCOMIMoniker pmkToLeft, out string ppszDisplayName); // 0x002C189C + void ParseDisplayName(UCOMIBindCtx pbc, UCOMIMoniker pmkToLeft, string pszDisplayName, out int pchEaten, out UCOMIMoniker ppmkOut); // 0x002C1A0C + void IsSystemMoniker(out int pdwMksys); // 0x002C1C44 +} + +// Namespace: System.Runtime.InteropServices +[ComImport]public interface UCOMIPersistFile // TypeDefIndex: 870 +{ + // Methods + void GetClassID(out Guid pClassID); // 0x002C1C88 + int IsDirty(); // 0x002C1CCC + void Load(string pszFileName, int dwMode); // 0x002C1D20 + void Save(string pszFileName, bool fRemember); // 0x002C1D74 + void SaveCompleted(string pszFileName); // 0x002C1DC8 + void GetCurFile(out string ppszFileName); // 0x002C1E14 +} + +// Namespace: System.Runtime.InteropServices +[ComImport]public interface UCOMIRunningObjectTable // TypeDefIndex: 871 +{ + // Methods + void Register(int grfFlags, object punkObject, UCOMIMoniker pmkObjectName, out int pdwRegister); // 0x002C1E7C + void Revoke(int dwRegister); // 0x002C1FE0 + void IsRunning(UCOMIMoniker pmkObjectName); // 0x002C2024 + void GetObject(UCOMIMoniker pmkObjectName, out object ppunkObject); // 0x002C20EC + void NoteChangeTime(int dwRegister, FILETIME pfiletime); // 0x002C2288 + void GetTimeOfLastChange(UCOMIMoniker pmkObjectName, out FILETIME pfiletime); // 0x002C22D4 + void EnumRunning(out UCOMIEnumMoniker ppenumMoniker); // 0x002C23A4 +} + +// Namespace: System.Runtime.InteropServices +[ComImport]public interface UCOMIStream // TypeDefIndex: 872 +{ + // Methods + void Read(out byte[] pv, int cb, IntPtr pcbRead); // 0x002C24B8 + void Write(byte[] pv, int cb, IntPtr pcbWritten); // 0x002C2570 + void Seek(long dlibMove, int dwOrigin, IntPtr plibNewPosition); // 0x002C25CC + void SetSize(long libNewSize); // 0x002C2630 + void CopyTo(UCOMIStream pstm, long cb, IntPtr pcbRead, IntPtr pcbWritten); // 0x002C267C + void Commit(int grfCommitFlags); // 0x002C2770 + void Revert(); // 0x002C27B4 + void LockRegion(long libOffset, long cb, int dwLockType); // 0x002C27F0 + void UnlockRegion(long libOffset, long cb, int dwLockType); // 0x002C285C + void Stat(out STATSTG pstatstg, int grfStatFlag); // 0x002C28C8 + void Clone(out UCOMIStream ppstm); // 0x002C2988 +} + +// Namespace: System.Runtime.InteropServices +[ComImport]public interface UCOMITypeComp // TypeDefIndex: 873 +{ + // Methods + void Bind(string szName, int lHashVal, short wFlags, out UCOMITypeInfo ppTInfo, out DESCKIND pDescKind, out BINDPTR pBindPtr); // 0x002C2A9C + void BindType(string szName, int lHashVal, out UCOMITypeInfo ppTInfo, out UCOMITypeComp ppTComp); // 0x002C2BE0 +} + +// Namespace: System.Runtime.InteropServices +[ComImport]public interface UCOMITypeInfo // TypeDefIndex: 874 +{ + // Methods + void GetTypeAttr(out IntPtr ppTypeAttr); // 0x002C2D98 + void GetTypeComp(out UCOMITypeComp ppTComp); // 0x002C2DDC + void GetFuncDesc(int index, out IntPtr ppFuncDesc); // 0x002C2EF0 + void GetVarDesc(int index, out IntPtr ppVarDesc); // 0x002C2F3C + void GetNames(int memid, out string[] rgBstrNames, int cMaxNames, out int pcNames); // 0x002C2F88 + void GetRefTypeOfImplType(int index, out int href); // 0x002C308C + void GetImplTypeFlags(int index, out int pImplTypeFlags); // 0x002C30D8 + void GetIDsOfNames(string[] rgszNames, int cNames, out int[] pMemId); // 0x002C3124 + void Invoke(object pvInstance, int memid, short wFlags, DISPPARAMS pDispParams, out object pVarResult, out EXCEPINFO pExcepInfo, out int puArgErr); // 0x002C3290 + void GetDocumentation(int index, out string strName, out string strDocString, out int dwHelpContext, out string strHelpFile); // 0x002C341C + void GetDllEntry(int memid, INVOKEKIND invKind, out string pBstrDllName, out string pBstrName, out short pwOrdinal); // 0x002C34DC + void GetRefTypeInfo(int hRef, out UCOMITypeInfo ppTI); // 0x002C3584 + void AddressOfMember(int memid, INVOKEKIND invKind, out IntPtr ppv); // 0x002C36A0 + void CreateInstance(object pUnkOuter, Guid riid, out object ppvObj); // 0x002C36F4 + void GetMops(int memid, out string pBstrMops); // 0x002C3898 + void GetContainingTypeLib(out UCOMITypeLib ppTLB, out int pIndex); // 0x002C3908 + void ReleaseTypeAttr(IntPtr pTypeAttr); // 0x002C3A24 + void ReleaseFuncDesc(IntPtr pFuncDesc); // 0x002C3A68 + void ReleaseVarDesc(IntPtr pVarDesc); // 0x002C3AAC +} + +// Namespace: System.Runtime.InteropServices +[ComImport]public interface UCOMITypeLib // TypeDefIndex: 875 +{ + // Methods + int GetTypeInfoCount(); // 0x002C3AF0 + void GetTypeInfo(int index, out UCOMITypeInfo ppTI); // 0x002C3B44 + void GetTypeInfoType(int index, out TYPEKIND pTKind); // 0x002C3C60 + void GetTypeInfoOfGuid(Guid guid, out UCOMITypeInfo ppTInfo); // 0x002C3CAC + void GetLibAttr(out IntPtr ppTLibAttr); // 0x002C3DC8 + void GetTypeComp(out UCOMITypeComp ppTComp); // 0x002C3E0C + void GetDocumentation(int index, out string strName, out string strDocString, out int dwHelpContext, out string strHelpFile); // 0x002C3F20 + bool IsName(string szNameBuf, int lHashVal); // 0x002C3FE0 + void FindName(string szNameBuf, int lHashVal, out UCOMITypeInfo[] ppTInfo, out int[] rgMemId, short pcFound); // 0x002C4054 + void ReleaseTLibAttr(IntPtr pTLibAttr); // 0x002C4080 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public sealed class UnknownWrapper // TypeDefIndex: 876 +{ + // Fields + private object InternalObject; // 0x08 + + // Properties + public object WrappedObject { get; } // 0x002C40E4 + + // Methods + public void .ctor(object obj); // 0x002C40C4 +} + +// Namespace: System.Runtime.InteropServices +public sealed class UnmanagedFunctionPointerAttribute : Attribute // TypeDefIndex: 877 +{ + // Fields + private CallingConvention call_conv; // 0x08 + public CharSet CharSet; // 0x0C + public bool SetLastError; // 0x10 + public bool BestFitMapping; // 0x11 + public bool ThrowOnUnmappableChar; // 0x12 + + // Properties + public CallingConvention CallingConvention { get; } // 0x002C410C + + // Methods + public void .ctor(CallingConvention callingConvention); // 0x002C40EC +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum UnmanagedType // TypeDefIndex: 878 +{ + Bool = 2, + I1 = 3, + U1 = 4, + I2 = 5, + U2 = 6, + I4 = 7, + U4 = 8, + I8 = 9, + U8 = 10, + R4 = 11, + R8 = 12, + Currency = 15, + BStr = 19, + LPStr = 20, + LPWStr = 21, + LPTStr = 22, + ByValTStr = 23, + IUnknown = 25, + IDispatch = 26, + Struct = 27, + Interface = 28, + SafeArray = 29, + ByValArray = 30, + SysInt = 31, + SysUInt = 32, + VBByRefStr = 34, + AnsiBStr = 35, + TBStr = 36, + VariantBool = 37, + FunctionPtr = 38, + AsAny = 40, + LPArray = 42, + LPStruct = 43, + CustomMarshaler = 44, + Error = 45 +} + +// Namespace: System.Runtime.InteropServices +public struct VARDESC // TypeDefIndex: 879 +{ + // Fields + public int memid; // 0x08 + public string lpstrSchema; // 0x0C + public ELEMDESC elemdescVar; // 0x10 + public short wVarFlags; // 0x20 + public VarEnum varkind; // 0x24 + +} + +// Namespace: +public struct DESCUNION // TypeDefIndex: 880 +{ + // Fields + public IntPtr lpvarValue; // 0x08 + public int oInst; // 0x08 + +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum VARFLAGS // TypeDefIndex: 881 +{ + VARFLAG_FREADONLY = 1, + VARFLAG_FSOURCE = 2, + VARFLAG_FBINDABLE = 4, + VARFLAG_FREQUESTEDIT = 8, + VARFLAG_FDISPLAYBIND = 16, + VARFLAG_FDEFAULTBIND = 32, + VARFLAG_FHIDDEN = 64, + VARFLAG_FRESTRICTED = 128, + VARFLAG_FDEFAULTCOLLELEM = 256, + VARFLAG_FUIDEFAULT = 512, + VARFLAG_FNONBROWSABLE = 1024, + VARFLAG_FREPLACEABLE = 2048, + VARFLAG_FIMMEDIATEBIND = 4096 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum VarEnum // TypeDefIndex: 882 +{ + VT_EMPTY = 0, + VT_NULL = 1, + VT_I2 = 2, + VT_I4 = 3, + VT_R4 = 4, + VT_R8 = 5, + VT_CY = 6, + VT_DATE = 7, + VT_BSTR = 8, + VT_DISPATCH = 9, + VT_ERROR = 10, + VT_BOOL = 11, + VT_VARIANT = 12, + VT_UNKNOWN = 13, + VT_DECIMAL = 14, + VT_I1 = 16, + VT_UI1 = 17, + VT_UI2 = 18, + VT_UI4 = 19, + VT_I8 = 20, + VT_UI8 = 21, + VT_INT = 22, + VT_UINT = 23, + VT_VOID = 24, + VT_HRESULT = 25, + VT_PTR = 26, + VT_SAFEARRAY = 27, + VT_CARRAY = 28, + VT_USERDEFINED = 29, + VT_LPSTR = 30, + VT_LPWSTR = 31, + VT_RECORD = 36, + VT_FILETIME = 64, + VT_BLOB = 65, + VT_STREAM = 66, + VT_STORAGE = 67, + VT_STREAMED_OBJECT = 68, + VT_STORED_OBJECT = 69, + VT_BLOB_OBJECT = 70, + VT_CF = 71, + VT_CLSID = 72, + VT_VECTOR = 4096, + VT_ARRAY = 8192, + VT_BYREF = 16384 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public sealed class VariantWrapper // TypeDefIndex: 883 +{ + // Fields + private object _wrappedObject; // 0x08 + + // Properties + public object WrappedObject { get; } // 0x002C4134 + + // Methods + public void .ctor(object obj); // 0x002C4114 +} + +// Namespace: System.Runtime.InteropServices +public interface _Activator // TypeDefIndex: 884 +{ + // Methods + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); +} + +// Namespace: System.Runtime.InteropServices +public interface _Assembly // TypeDefIndex: 885 +{ + // Properties + string CodeBase { get; } + string EscapedCodeBase { get; } + string FullName { get; } + MethodInfo EntryPoint { get; } + string Location { get; } + + // Events + event ModuleResolveEventHandler ModuleResolve { + add; // 0x00000000 + remove; // 0x00000000 + } + + // Methods + string ToString(); + bool Equals(object other); + int GetHashCode(); + Type GetType(); + AssemblyName GetName(); + AssemblyName GetName(bool copiedName); + Type GetType(string name); + Type GetType(string name, bool throwOnError); + Type[] GetExportedTypes(); + Type[] GetTypes(); + Stream GetManifestResourceStream(Type type, string name); + Stream GetManifestResourceStream(string name); + FileStream GetFile(string name); + FileStream[] GetFiles(); + FileStream[] GetFiles(bool getResourceModules); + string[] GetManifestResourceNames(); + ManifestResourceInfo GetManifestResourceInfo(string resourceName); + object[] GetCustomAttributes(Type attributeType, bool inherit); + object[] GetCustomAttributes(bool inherit); + bool IsDefined(Type attributeType, bool inherit); + void GetObjectData(SerializationInfo info, StreamingContext context); + Type GetType(string name, bool throwOnError, bool ignoreCase); + Assembly GetSatelliteAssembly(CultureInfo culture); + Assembly GetSatelliteAssembly(CultureInfo culture, Version version); + Module LoadModule(string moduleName, byte[] rawModule); + Module LoadModule(string moduleName, byte[] rawModule, byte[] rawSymbolStore); + object CreateInstance(string typeName); + object CreateInstance(string typeName, bool ignoreCase); + object CreateInstance(string typeName, bool ignoreCase, BindingFlags bindingAttr, Binder binder, object[] args, CultureInfo culture, object[] activationAttributes); + Module[] GetLoadedModules(); + Module[] GetLoadedModules(bool getResourceModules); + Module[] GetModules(); + Module[] GetModules(bool getResourceModules); + Module GetModule(string name); + AssemblyName[] GetReferencedAssemblies(); +} + +// Namespace: System.Runtime.InteropServices +public interface _AssemblyBuilder // TypeDefIndex: 886 +{ + // Methods + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); +} + +// Namespace: System.Runtime.InteropServices +public interface _AssemblyName // TypeDefIndex: 887 +{ + // Methods + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); +} + +// Namespace: System.Runtime.InteropServices +public interface _ConstructorBuilder // TypeDefIndex: 888 +{ + // Methods + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); +} + +// Namespace: System.Runtime.InteropServices +public interface _ConstructorInfo // TypeDefIndex: 889 +{ + // Properties + MethodAttributes Attributes { get; } + CallingConventions CallingConvention { get; } + Type DeclaringType { get; } + bool IsAbstract { get; } + bool IsAssembly { get; } + bool IsConstructor { get; } + bool IsFamily { get; } + bool IsFamilyAndAssembly { get; } + bool IsFamilyOrAssembly { get; } + bool IsFinal { get; } + bool IsHideBySig { get; } + bool IsPrivate { get; } + bool IsPublic { get; } + bool IsSpecialName { get; } + bool IsStatic { get; } + bool IsVirtual { get; } + MemberTypes MemberType { get; } + RuntimeMethodHandle MethodHandle { get; } + string Name { get; } + Type ReflectedType { get; } + + // Methods + bool Equals(object other); + object[] GetCustomAttributes(bool inherit); + object[] GetCustomAttributes(Type attributeType, bool inherit); + int GetHashCode(); + MethodImplAttributes GetMethodImplementationFlags(); + ParameterInfo[] GetParameters(); + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); + Type GetType(); + object Invoke_5(object[] parameters); + object Invoke_3(object obj, object[] parameters); + object Invoke_4(BindingFlags invokeAttr, Binder binder, object[] parameters, CultureInfo culture); + object Invoke_2(object obj, BindingFlags invokeAttr, Binder binder, object[] parameters, CultureInfo culture); + bool IsDefined(Type attributeType, bool inherit); + string ToString(); +} + +// Namespace: System.Runtime.InteropServices +public interface _CustomAttributeBuilder // TypeDefIndex: 890 +{ + // Methods + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); +} + +// Namespace: System.Runtime.InteropServices +public interface _EnumBuilder // TypeDefIndex: 891 +{ + // Methods + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); +} + +// Namespace: System.Runtime.InteropServices +public interface _EventBuilder // TypeDefIndex: 892 +{ + // Methods + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); +} + +// Namespace: System.Runtime.InteropServices +public interface _EventInfo // TypeDefIndex: 893 +{ + // Properties + EventAttributes Attributes { get; } + Type DeclaringType { get; } + Type EventHandlerType { get; } + bool IsMulticast { get; } + bool IsSpecialName { get; } + MemberTypes MemberType { get; } + string Name { get; } + Type ReflectedType { get; } + + // Methods + void AddEventHandler(object target, Delegate handler); + bool Equals(object other); + MethodInfo GetAddMethod(); + MethodInfo GetAddMethod(bool nonPublic); + object[] GetCustomAttributes(bool inherit); + object[] GetCustomAttributes(Type attributeType, bool inherit); + int GetHashCode(); + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); + MethodInfo GetRaiseMethod(); + MethodInfo GetRaiseMethod(bool nonPublic); + MethodInfo GetRemoveMethod(); + MethodInfo GetRemoveMethod(bool nonPublic); + Type GetType(); + bool IsDefined(Type attributeType, bool inherit); + void RemoveEventHandler(object target, Delegate handler); + string ToString(); +} + +// Namespace: System.Runtime.InteropServices +public interface _FieldBuilder // TypeDefIndex: 894 +{ + // Methods + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); +} + +// Namespace: System.Runtime.InteropServices +public interface _FieldInfo // TypeDefIndex: 895 +{ + // Properties + FieldAttributes Attributes { get; } + Type DeclaringType { get; } + RuntimeFieldHandle FieldHandle { get; } + Type FieldType { get; } + bool IsAssembly { get; } + bool IsFamily { get; } + bool IsFamilyAndAssembly { get; } + bool IsFamilyOrAssembly { get; } + bool IsInitOnly { get; } + bool IsLiteral { get; } + bool IsNotSerialized { get; } + bool IsPinvokeImpl { get; } + bool IsPrivate { get; } + bool IsPublic { get; } + bool IsSpecialName { get; } + bool IsStatic { get; } + MemberTypes MemberType { get; } + string Name { get; } + Type ReflectedType { get; } + + // Methods + bool Equals(object other); + object[] GetCustomAttributes(bool inherit); + object[] GetCustomAttributes(Type attributeType, bool inherit); + int GetHashCode(); + Type GetType(); + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); + object GetValue(object obj); + object GetValueDirect(TypedReference obj); + bool IsDefined(Type attributeType, bool inherit); + void SetValue(object obj, object value); + void SetValue(object obj, object value, BindingFlags invokeAttr, Binder binder, CultureInfo culture); + void SetValueDirect(TypedReference obj, object value); + string ToString(); +} + +// Namespace: System.Runtime.InteropServices +public interface _ILGenerator // TypeDefIndex: 896 +{ + // Methods + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); +} + +// Namespace: System.Runtime.InteropServices +public interface _LocalBuilder // TypeDefIndex: 897 +{ + // Methods + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); +} + +// Namespace: System.Runtime.InteropServices +public interface _MethodBase // TypeDefIndex: 898 +{ + // Properties + MethodAttributes Attributes { get; } + CallingConventions CallingConvention { get; } + Type DeclaringType { get; } + bool IsAbstract { get; } + bool IsAssembly { get; } + bool IsConstructor { get; } + bool IsFamily { get; } + bool IsFamilyAndAssembly { get; } + bool IsFamilyOrAssembly { get; } + bool IsFinal { get; } + bool IsHideBySig { get; } + bool IsPrivate { get; } + bool IsPublic { get; } + bool IsSpecialName { get; } + bool IsStatic { get; } + bool IsVirtual { get; } + MemberTypes MemberType { get; } + RuntimeMethodHandle MethodHandle { get; } + string Name { get; } + Type ReflectedType { get; } + + // Methods + bool Equals(object other); + object[] GetCustomAttributes(bool inherit); + object[] GetCustomAttributes(Type attributeType, bool inherit); + int GetHashCode(); + MethodImplAttributes GetMethodImplementationFlags(); + ParameterInfo[] GetParameters(); + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); + Type GetType(); + object Invoke(object obj, object[] parameters); + object Invoke(object obj, BindingFlags invokeAttr, Binder binder, object[] parameters, CultureInfo culture); + bool IsDefined(Type attributeType, bool inherit); + string ToString(); +} + +// Namespace: System.Runtime.InteropServices +public interface _MethodBuilder // TypeDefIndex: 899 +{ + // Methods + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); +} + +// Namespace: System.Runtime.InteropServices +public interface _MethodInfo // TypeDefIndex: 900 +{ + // Properties + MethodAttributes Attributes { get; } + CallingConventions CallingConvention { get; } + Type DeclaringType { get; } + bool IsAbstract { get; } + bool IsAssembly { get; } + bool IsConstructor { get; } + bool IsFamily { get; } + bool IsFamilyAndAssembly { get; } + bool IsFamilyOrAssembly { get; } + bool IsFinal { get; } + bool IsHideBySig { get; } + bool IsPrivate { get; } + bool IsPublic { get; } + bool IsSpecialName { get; } + bool IsStatic { get; } + bool IsVirtual { get; } + MemberTypes MemberType { get; } + RuntimeMethodHandle MethodHandle { get; } + string Name { get; } + Type ReflectedType { get; } + Type ReturnType { get; } + ICustomAttributeProvider ReturnTypeCustomAttributes { get; } + + // Methods + bool Equals(object other); + MethodInfo GetBaseDefinition(); + object[] GetCustomAttributes(bool inherit); + object[] GetCustomAttributes(Type attributeType, bool inherit); + int GetHashCode(); + MethodImplAttributes GetMethodImplementationFlags(); + ParameterInfo[] GetParameters(); + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); + Type GetType(); + object Invoke(object obj, object[] parameters); + object Invoke(object obj, BindingFlags invokeAttr, Binder binder, object[] parameters, CultureInfo culture); + bool IsDefined(Type attributeType, bool inherit); + string ToString(); +} + +// Namespace: System.Runtime.InteropServices +public interface _MethodRental // TypeDefIndex: 901 +{ + // Methods + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); +} + +// Namespace: System.Runtime.InteropServices +public interface _Module // TypeDefIndex: 902 +{ + // Methods + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); +} + +// Namespace: System.Runtime.InteropServices +public interface _ModuleBuilder // TypeDefIndex: 903 +{ + // Methods + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); +} + +// Namespace: System.Runtime.InteropServices +public interface _ParameterBuilder // TypeDefIndex: 904 +{ + // Methods + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); +} + +// Namespace: System.Runtime.InteropServices +public interface _ParameterInfo // TypeDefIndex: 905 +{ + // Methods + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); +} + +// Namespace: System.Runtime.InteropServices +public interface _PropertyBuilder // TypeDefIndex: 906 +{ + // Methods + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); +} + +// Namespace: System.Runtime.InteropServices +public interface _PropertyInfo // TypeDefIndex: 907 +{ + // Properties + PropertyAttributes Attributes { get; } + bool CanRead { get; } + bool CanWrite { get; } + Type DeclaringType { get; } + bool IsSpecialName { get; } + MemberTypes MemberType { get; } + string Name { get; } + Type PropertyType { get; } + Type ReflectedType { get; } + + // Methods + bool Equals(object other); + MethodInfo[] GetAccessors(); + MethodInfo[] GetAccessors(bool nonPublic); + object[] GetCustomAttributes(bool inherit); + object[] GetCustomAttributes(Type attributeType, bool inherit); + MethodInfo GetGetMethod(); + MethodInfo GetGetMethod(bool nonPublic); + int GetHashCode(); + ParameterInfo[] GetIndexParameters(); + MethodInfo GetSetMethod(); + MethodInfo GetSetMethod(bool nonPublic); + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); + Type GetType(); + object GetValue(object obj, object[] index); + object GetValue(object obj, BindingFlags invokeAttr, Binder binder, object[] index, CultureInfo culture); + bool IsDefined(Type attributeType, bool inherit); + void SetValue(object obj, object value, object[] index); + void SetValue(object obj, object value, BindingFlags invokeAttr, Binder binder, object[] index, CultureInfo culture); + string ToString(); +} + +// Namespace: System.Runtime.InteropServices +public interface _SignatureHelper // TypeDefIndex: 908 +{ + // Methods + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); +} + +// Namespace: System.Runtime.InteropServices +public interface _Thread // TypeDefIndex: 909 +{ + // Methods + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); +} + +// Namespace: System.Runtime.InteropServices +public interface _TypeBuilder // TypeDefIndex: 910 +{ + // Methods + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); +} + +// Namespace: System.Runtime.Remoting.Activation +internal class ActivationServices // TypeDefIndex: 911 +{ + // Fields + private static IActivator _constructionActivator; // 0x00 + + // Properties + private static IActivator ConstructionActivator { get; } // 0x002C4798 + + // Methods + public void .ctor(); // 0x002C4790 + public static IMessage Activate(RemotingProxy proxy, ConstructionCall ctorCall); // 0x002C484C + public static IMessage RemoteActivate(IConstructionCallMessage ctorCall); // 0x002C4BB4 + public static object CreateProxyFromAttributes(Type type, object[] activationAttributes); // 0x002C4DD4 + public static ConstructionCall CreateConstructionCall(Type type, string activationUrl, object[] activationAttributes); // 0x002C5058 + public static IMessage CreateInstanceFromMessage(IConstructionCallMessage ctorCall); // 0x002C5D60 + public static object CreateProxyForType(Type type); // 0x002C62C0 + public static object AllocateUninitializedClassInstance(Type type); // 0x002C62BC + public static void EnableProxyActivation(Type type, bool enable); // 0x002C6474 +} + +// Namespace: System.Runtime.Remoting.Activation +[Serializable] +public enum ActivatorLevel // TypeDefIndex: 912 +{ + Construction = 4, + Context = 8, + AppDomain = 12, + Process = 16, + Machine = 20 +} + +// Namespace: System.Runtime.Remoting.Activation +internal class AppDomainLevelActivator : IActivator // TypeDefIndex: 913 +{ + // Fields + private string _activationUrl; // 0x08 + private IActivator _next; // 0x0C + + // Properties + public ActivatorLevel Level { get; } // 0x002C6478 + public IActivator NextActivator { get; set; } // 0x002C6480 0x002C6488 + + // Methods + public void .ctor(string activationUrl, IActivator next); // 0x002C5D18 + public IConstructionReturnMessage Activate(IConstructionCallMessage ctorCall); // 0x002C6490 +} + +// Namespace: System.Runtime.Remoting.Activation +[Serializable] +internal class ConstructionLevelActivator : IActivator // TypeDefIndex: 914 +{ + // Properties + public ActivatorLevel Level { get; } // 0x002C6A8C + public IActivator NextActivator { get; set; } // 0x002C6A94 0x002C6A9C + + // Methods + public void .ctor(); // 0x002C4844 + public IConstructionReturnMessage Activate(IConstructionCallMessage msg); // 0x002C6AA0 +} + +// Namespace: System.Runtime.Remoting.Activation +[Serializable] +internal class ContextLevelActivator : IActivator // TypeDefIndex: 915 +{ + // Fields + private IActivator m_NextActivator; // 0x08 + + // Properties + public ActivatorLevel Level { get; } // 0x002C6C14 + public IActivator NextActivator { get; set; } // 0x002C6C1C 0x002C6C24 + + // Methods + public void .ctor(IActivator next); // 0x002C5D40 + public IConstructionReturnMessage Activate(IConstructionCallMessage ctorCall); // 0x002C6C2C +} + +// Namespace: System.Runtime.Remoting.Activation +public interface IActivator // TypeDefIndex: 916 +{ + // Properties + ActivatorLevel Level { get; } + IActivator NextActivator { get; set; } + + // Methods + IConstructionReturnMessage Activate(IConstructionCallMessage msg); +} + +// Namespace: System.Runtime.Remoting.Activation +public interface IConstructionCallMessage : IMessage, IMethodCallMessage, IMethodMessage // TypeDefIndex: 917 +{ + // Properties + Type ActivationType { get; } + string ActivationTypeName { get; } + IActivator Activator { get; set; } + object[] CallSiteActivationAttributes { get; } + IList ContextProperties { get; } + +} + +// Namespace: System.Runtime.Remoting.Activation +public interface IConstructionReturnMessage : IMessage, IMethodMessage, IMethodReturnMessage // TypeDefIndex: 918 +{ +} + +// Namespace: System.Runtime.Remoting.Activation +internal class RemoteActivationAttribute : Attribute, IContextAttribute // TypeDefIndex: 919 +{ + // Fields + private IList _contextProperties; // 0x08 + + // Methods + public void .ctor(); // 0x002C7008 + public void .ctor(IList contextProperties); // 0x002C7010 + public bool IsContextOK(Context ctx, IConstructionCallMessage ctor); // 0x002C7030 + public void GetPropertiesForNewContext(IConstructionCallMessage ctor); // 0x002C7038 +} + +// Namespace: System.Runtime.Remoting.Activation +internal class RemoteActivator : MarshalByRefObject, IActivator // TypeDefIndex: 920 +{ + // Properties + public ActivatorLevel Level { get; } // 0x002C7D5C + public IActivator NextActivator { get; set; } // 0x002C7DE4 0x002C7E6C + + // Methods + public void .ctor(); // 0x002C746C + public IConstructionReturnMessage Activate(IConstructionCallMessage msg); // 0x002C7474 + public override object InitializeLifetimeService(); // 0x002C79D8 +} + +// Namespace: System.Runtime.Remoting.Activation +[Serializable] +public sealed class UrlAttribute : ContextAttribute // TypeDefIndex: 921 +{ + // Fields + private string url; // 0x0C + + // Properties + public string UrlValue { get; } // 0x002C7F14 + + // Methods + public void .ctor(string callsiteURL); // 0x002C7EF4 + public override bool Equals(object o); // 0x002C7F1C + public override int GetHashCode(); // 0x002C7FDC + public override void GetPropertiesForNewContext(IConstructionCallMessage ctorMsg); // 0x002C8008 + public override bool IsContextOK(Context ctx, IConstructionCallMessage msg); // 0x002C800C +} + +// Namespace: System.Runtime.Remoting.Channels +internal class AggregateDictionary : IEnumerable, ICollection, IDictionary // TypeDefIndex: 922 +{ + // Fields + private IDictionary[] dictionaries; // 0x08 + private ArrayList _values; // 0x0C + private ArrayList _keys; // 0x10 + + // Properties + public bool IsFixedSize { get; } // 0x002C9524 + public bool IsReadOnly { get; } // 0x002C952C + public object Item { get; set; } // 0x002C9534 0x002C96FC + public ICollection Keys { get; } // 0x002C9784 + public ICollection Values { get; } // 0x002C9928 + public int Count { get; } // 0x002CA0D8 + public bool IsSynchronized { get; } // 0x002CA214 + public object SyncRoot { get; } // 0x002CA21C + + // Methods + public void .ctor(IDictionary[] dics); // 0x002C945C + private IEnumerator System.Collections.IEnumerable.GetEnumerator(); // 0x002C947C + public void Add(object key, object value); // 0x002C9ACC + public void Clear(); // 0x002C9B54 + public bool Contains(object ob); // 0x002C9BDC + public IDictionaryEnumerator GetEnumerator(); // 0x002C9D1C + public void Remove(object ob); // 0x002C9D9C + public void CopyTo(Array array, int index); // 0x002C9E24 +} + +// Namespace: System.Runtime.Remoting.Channels +internal class AggregateEnumerator : IEnumerator, IDictionaryEnumerator // TypeDefIndex: 923 +{ + // Fields + private IDictionary[] dictionaries; // 0x08 + private int pos; // 0x0C + private IDictionaryEnumerator currente; // 0x10 + + // Properties + public DictionaryEntry Entry { get; } // 0x002CA354 + public object Key { get; } // 0x002CA434 + public object Value { get; } // 0x002CA50C + public object Current { get; } // 0x002CA5E4 + + // Methods + public void .ctor(IDictionary[] dics); // 0x002C94FC + public bool MoveNext(); // 0x002CA6BC + public void Reset(); // 0x002CA220 +} + +// Namespace: System.Runtime.Remoting.Channels +public abstract class BaseChannelObjectWithProperties : IEnumerable, ICollection, IDictionary // TypeDefIndex: 924 +{ + // Fields + private Hashtable table; // 0x08 + + // Properties + public virtual int Count { get; } // 0x002CA9C0 + public virtual bool IsFixedSize { get; } // 0x002CA9F4 + public virtual bool IsReadOnly { get; } // 0x002CA9FC + public virtual bool IsSynchronized { get; } // 0x002CAA04 + public virtual object Item { get; set; } // 0x002CAA0C 0x002CAA94 + public virtual ICollection Keys { get; } // 0x002CAB1C + public virtual IDictionary Properties { get; } // 0x002CAB50 + public virtual object SyncRoot { get; } // 0x002CAB54 + public virtual ICollection Values { get; } // 0x002CAB58 + + // Methods + protected void .ctor(); // 0x002CA910 + private IEnumerator System.Collections.IEnumerable.GetEnumerator(); // 0x002CA98C + public virtual void Add(object key, object value); // 0x002CAB8C + public virtual void Clear(); // 0x002CAC14 + public virtual bool Contains(object key); // 0x002CAC9C + public virtual void CopyTo(Array array, int index); // 0x002CACD8 + public virtual IDictionaryEnumerator GetEnumerator(); // 0x002CAD60 + public virtual void Remove(object key); // 0x002CAD94 +} + +// Namespace: System.Runtime.Remoting.Channels +public abstract class BaseChannelSinkWithProperties : BaseChannelObjectWithProperties // TypeDefIndex: 925 +{ + // Methods + protected void .ctor(); // 0x002CAE1C +} + +// Namespace: System.Runtime.Remoting.Channels +public abstract class BaseChannelWithProperties : BaseChannelObjectWithProperties // TypeDefIndex: 926 +{ + // Fields + protected IChannelSinkBase SinksWithProperties; // 0x0C + + // Properties + public override IDictionary Properties { get; } // 0x002CAE24 + + // Methods + protected void .ctor(); // 0x002CAE20 +} + +// Namespace: System.Runtime.Remoting.Channels +[Serializable] +public class ChannelDataStore : IChannelDataStore // TypeDefIndex: 927 +{ + // Fields + private string[] _channelURIs; // 0x08 + private DictionaryEntry[] _extraData; // 0x0C + + // Properties + public string[] ChannelUris { get; set; } // 0x002CB53C 0x002CB544 + public object Item { get; set; } // 0x002CB54C 0x002CB5E8 + + // Methods + public void .ctor(string[] channelURIs); // 0x002CB51C +} + +// Namespace: System.Runtime.Remoting +[Serializable] +internal class ChannelInfo : IChannelInfo // TypeDefIndex: 928 +{ + // Fields + private object[] channelData; // 0x08 + + // Properties + public object[] ChannelData { get; set; } // 0x002C944C 0x002C9454 + + // Methods + public void .ctor(); // 0x002C8DB0 + public void .ctor(object remoteChannelData); // 0x002C9370 +} + +// Namespace: System.Runtime.Remoting.Channels +public sealed class ChannelServices // TypeDefIndex: 929 +{ + // Fields + private static ArrayList registeredChannels; // 0x00 + private static ArrayList delayedClientChannels; // 0x04 + private static CrossContextChannel _crossContextSink; // 0x08 + internal static string CrossContextUrl; // 0x0C + private static IList oldStartModeTypes; // 0x10 + + // Properties + internal static CrossContextChannel CrossContextChannel { get; } // 0x002CB9BC + public static IChannel[] RegisteredChannels { get; } // 0x002CC710 + + // Methods + private void .ctor(); // 0x002CB7B4 + private static void .cctor(); // 0x002CB7BC + internal static IMessageSink CreateClientChannelSinkChain(string url, object remoteChannelData, out string objectUri); // 0x002CBA48 + internal static IMessageSink CreateClientChannelSinkChain(IChannelSender sender, string url, object[] channelDataArray, out string objectUri); // 0x002CC450 + public static IServerChannelSink CreateServerChannelSinkChain(IServerChannelSinkProvider provider, IChannelReceiver channel); // 0x002CCAF0 + public static ServerProcessing DispatchMessage(IServerChannelSinkStack sinkStack, IMessage msg, out IMessage replyMsg); // 0x002CCDB0 + public static IChannel GetChannel(string name); // 0x002CD0D0 + public static IDictionary GetChannelSinkProperties(object obj); // 0x002CD698 + public static string[] GetUrlsForObject(MarshalByRefObject obj); // 0x002CDB58 + public static void RegisterChannel(IChannel chnl); // 0x002CC68C + public static void RegisterChannel(IChannel chnl, bool ensureSecurity); // 0x002CE1D8 + internal static void RegisterChannelConfig(ChannelData channel); // 0x002CEE14 + private static object CreateProvider(ProviderData prov); // 0x002CFF54 + public static IMessage SyncDispatchMessage(IMessage msg); // 0x002CCFB0 + public static IMessageCtrl AsyncDispatchMessage(IMessage msg, IMessageSink replySink); // 0x002D09D4 + private static ReturnMessage CheckIncomingMessage(IMessage msg); // 0x002D0480 + internal static IMessage CheckReturnMessage(IMessage callMsg, IMessage retMsg); // 0x002D07CC + private static bool IsLocalCall(IMessage callMsg); // 0x002D0C28 + public static void UnregisterChannel(IChannel chnl); // 0x002D0C58 + internal static object[] GetCurrentChannelInfo(); // 0x002C8E3C +} + +// Namespace: System.Runtime.Remoting.Channels +internal class ExceptionFilterSink : IMessageSink // TypeDefIndex: 930 +{ + // Fields + private IMessageSink _next; // 0x08 + private IMessage _call; // 0x0C + + // Properties + public IMessageSink NextSink { get; } // 0x002D2AB0 + + // Methods + public void .ctor(IMessage call, IMessageSink next); // 0x002D0C30 + public IMessage SyncProcessMessage(IMessage msg); // 0x002D2908 + public IMessageCtrl AsyncProcessMessage(IMessage msg, IMessageSink replySink); // 0x002D2A28 +} + +// Namespace: System.Runtime.Remoting.Channels +internal class ChanelSinkStackEntry // TypeDefIndex: 931 +{ + // Fields + public IChannelSinkBase Sink; // 0x08 + public object State; // 0x0C + public ChanelSinkStackEntry Next; // 0x10 + + // Methods + public void .ctor(IChannelSinkBase sink, object state, ChanelSinkStackEntry next); // 0x002CB4EC +} + +// Namespace: System.Runtime.Remoting.Channels +public class ClientChannelSinkStack : IClientChannelSinkStack, IClientResponseChannelSinkStack // TypeDefIndex: 932 +{ + // Fields + private IMessageSink _replySink; // 0x08 + private ChanelSinkStackEntry _sinkStack; // 0x0C + + // Methods + public void .ctor(); // 0x002D103C + public void .ctor(IMessageSink replySink); // 0x002D1044 + public void AsyncProcessResponse(ITransportHeaders headers, Stream stream); // 0x002D1064 + public void DispatchException(Exception e); // 0x002D1230 + public void DispatchReplyMessage(IMessage msg); // 0x002D12B4 + public object Pop(IClientChannelSink sink); // 0x002D1390 + public void Push(IClientChannelSink sink, object state); // 0x002D1460 +} + +// Namespace: System.Runtime.Remoting.Channels +[Serializable] +internal class CrossAppDomainData // TypeDefIndex: 933 +{ + // Fields + private object _ContextID; // 0x08 + private int _DomainID; // 0x0C + private string _processGuid; // 0x10 + + // Properties + internal int DomainID { get; } // 0x002D1E84 + internal string ProcessID { get; } // 0x002D1E8C + + // Methods + internal void .ctor(int domainId); // 0x002D17CC +} + +// Namespace: System.Runtime.Remoting.Channels +[Serializable] +internal class CrossAppDomainChannel : IChannel, IChannelReceiver, IChannelSender // TypeDefIndex: 934 +{ + // Fields + private const string _strName = "MONOCAD"; // 0x00 + private const string _strBaseURI = "MONOCADURI"; // 0x00 + private static object s_lock; // 0x00 + + // Properties + public virtual string ChannelName { get; } // 0x002D16B8 + public virtual int ChannelPriority { get; } // 0x002D1714 + public virtual object ChannelData { get; } // 0x002D1728 + + // Methods + public void .ctor(); // 0x002D14E8 + private static void .cctor(); // 0x002D14F0 + internal static void RegisterCrossAppDomainChannel(); // 0x002D1570 + public string Parse(string url, out string objectURI); // 0x002D171C + public virtual string[] GetUrlsForUri(string objectURI); // 0x002D1890 + public virtual void StartListening(object data); // 0x002D192C + public virtual void StopListening(object data); // 0x002D1930 + public virtual IMessageSink CreateMessageSink(string url, object data, out string uri); // 0x002D1934 +} + +// Namespace: System.Runtime.Remoting.Channels +internal class CrossAppDomainSink : IMessageSink // TypeDefIndex: 935 +{ + // Fields + private static Hashtable s_sinks; // 0x00 + private static MethodInfo processMessageMethod; // 0x04 + private int _domainID; // 0x08 + + // Properties + internal int TargetDomainId { get; } // 0x002D1FC8 + public IMessageSink NextSink { get; } // 0x002D2900 + + // Methods + internal void .ctor(int domainID); // 0x002D1E94 + private static void .cctor(); // 0x002D1EB4 + internal static CrossAppDomainSink GetSink(int domainID); // 0x002D1B1C + private static ProcessMessageRes ProcessMessageInDomain(byte[] arrRequest, CADMethodCallMessage cadMsg); // 0x002D1FD0 + public virtual IMessage SyncProcessMessage(IMessage msgRequest); // 0x002D218C + public virtual IMessageCtrl AsyncProcessMessage(IMessage reqMsg, IMessageSink replySink); // 0x002D26CC + public void SendAsyncMessage(object data); // 0x002D2794 +} + +// Namespace: +private struct ProcessMessageRes // TypeDefIndex: 936 +{ + // Fields + public byte[] arrResponse; // 0x08 + public CADMethodReturnMessage cadMrm; // 0x0C + +} + +// Namespace: System.Runtime.Remoting.Channels +internal class CADSerializer // TypeDefIndex: 937 +{ + // Methods + public void .ctor(); // 0x002CB090 + internal static IMessage DeserializeMessage(MemoryStream mem, IMethodCallMessage msg); // 0x002CB098 + internal static MemoryStream SerializeMessage(IMessage msg); // 0x002CB1D8 + internal static MemoryStream SerializeObject(object obj); // 0x002CB2FC + internal static object DeserializeObject(MemoryStream mem); // 0x002CB420 +} + +// Namespace: System.Runtime.Remoting.Channels +internal class AsyncRequest // TypeDefIndex: 938 +{ + // Fields + internal IMessageSink ReplySink; // 0x08 + internal IMessage MsgRequest; // 0x0C + + // Methods + public void .ctor(IMessage msgRequest, IMessageSink replySink); // 0x002CA8E8 +} + +// Namespace: System.Runtime.Remoting.Channels +public interface IChannel // TypeDefIndex: 939 +{ + // Properties + string ChannelName { get; } + int ChannelPriority { get; } + + // Methods + string Parse(string url, out string objectURI); +} + +// Namespace: System.Runtime.Remoting.Channels +public interface IChannelDataStore // TypeDefIndex: 940 +{ + // Properties + string[] ChannelUris { get; } + object Item { get; set; } + +} + +// Namespace: System.Runtime.Remoting.Channels +public interface IChannelReceiver : IChannel // TypeDefIndex: 941 +{ + // Properties + object ChannelData { get; } + + // Methods + string[] GetUrlsForUri(string objectURI); + void StartListening(object data); + void StopListening(object data); +} + +// Namespace: System.Runtime.Remoting.Channels +public interface IChannelReceiverHook // TypeDefIndex: 942 +{ + // Properties + string ChannelScheme { get; } + IServerChannelSink ChannelSinkChain { get; } + bool WantsToListen { get; } + + // Methods + void AddHookChannelUri(string channelUri); +} + +// Namespace: System.Runtime.Remoting.Channels +public interface IChannelSender : IChannel // TypeDefIndex: 943 +{ + // Methods + IMessageSink CreateMessageSink(string url, object remoteChannelData, out string objectURI); +} + +// Namespace: System.Runtime.Remoting.Channels +public interface IChannelSinkBase // TypeDefIndex: 944 +{ + // Properties + IDictionary Properties { get; } + +} + +// Namespace: System.Runtime.Remoting.Channels +public interface IClientChannelSink : IChannelSinkBase // TypeDefIndex: 945 +{ + // Properties + IClientChannelSink NextChannelSink { get; } + + // Methods + void AsyncProcessRequest(IClientChannelSinkStack sinkStack, IMessage msg, ITransportHeaders headers, Stream stream); + void AsyncProcessResponse(IClientResponseChannelSinkStack sinkStack, object state, ITransportHeaders headers, Stream stream); + Stream GetRequestStream(IMessage msg, ITransportHeaders headers); + void ProcessMessage(IMessage msg, ITransportHeaders requestHeaders, Stream requestStream, out ITransportHeaders responseHeaders, out Stream responseStream); +} + +// Namespace: System.Runtime.Remoting.Channels +public interface IClientChannelSinkProvider // TypeDefIndex: 946 +{ + // Properties + IClientChannelSinkProvider Next { get; set; } + + // Methods + IClientChannelSink CreateSink(IChannelSender channel, string url, object remoteChannelData); +} + +// Namespace: System.Runtime.Remoting.Channels +public interface IClientChannelSinkStack : IClientResponseChannelSinkStack // TypeDefIndex: 947 +{ + // Methods + object Pop(IClientChannelSink sink); + void Push(IClientChannelSink sink, object state); +} + +// Namespace: System.Runtime.Remoting.Channels +public interface IClientFormatterSink : IChannelSinkBase, IClientChannelSink, IMessageSink // TypeDefIndex: 948 +{ +} + +// Namespace: System.Runtime.Remoting.Channels +public interface IClientFormatterSinkProvider : IClientChannelSinkProvider // TypeDefIndex: 949 +{ +} + +// Namespace: System.Runtime.Remoting.Channels +public interface IClientResponseChannelSinkStack // TypeDefIndex: 950 +{ + // Methods + void AsyncProcessResponse(ITransportHeaders headers, Stream stream); + void DispatchException(Exception e); + void DispatchReplyMessage(IMessage msg); +} + +// Namespace: System.Runtime.Remoting.Channels +public interface ISecurableChannel // TypeDefIndex: 951 +{ + // Properties + bool IsSecured { get; set; } + +} + +// Namespace: System.Runtime.Remoting.Channels +public interface IServerChannelSink : IChannelSinkBase // TypeDefIndex: 952 +{ + // Properties + IServerChannelSink NextChannelSink { get; } + + // Methods + void AsyncProcessResponse(IServerResponseChannelSinkStack sinkStack, object state, IMessage msg, ITransportHeaders headers, Stream stream); + Stream GetResponseStream(IServerResponseChannelSinkStack sinkStack, object state, IMessage msg, ITransportHeaders headers); + ServerProcessing ProcessMessage(IServerChannelSinkStack sinkStack, IMessage requestMsg, ITransportHeaders requestHeaders, Stream requestStream, out IMessage responseMsg, out ITransportHeaders responseHeaders, out Stream responseStream); +} + +// Namespace: System.Runtime.Remoting.Channels +public interface IServerChannelSinkProvider // TypeDefIndex: 953 +{ + // Properties + IServerChannelSinkProvider Next { get; set; } + + // Methods + IServerChannelSink CreateSink(IChannelReceiver channel); + void GetChannelData(IChannelDataStore channelData); +} + +// Namespace: System.Runtime.Remoting.Channels +public interface IServerChannelSinkStack : IServerResponseChannelSinkStack // TypeDefIndex: 954 +{ + // Methods + object Pop(IServerChannelSink sink); + void Push(IServerChannelSink sink, object state); + void ServerCallback(IAsyncResult ar); + void Store(IServerChannelSink sink, object state); + void StoreAndDispatch(IServerChannelSink sink, object state); +} + +// Namespace: System.Runtime.Remoting.Channels +public interface IServerFormatterSinkProvider : IServerChannelSinkProvider // TypeDefIndex: 955 +{ +} + +// Namespace: System.Runtime.Remoting.Channels +public interface IServerResponseChannelSinkStack // TypeDefIndex: 956 +{ + // Methods + void AsyncProcessResponse(IMessage msg, ITransportHeaders headers, Stream stream); + Stream GetResponseStream(IMessage msg, ITransportHeaders headers); +} + +// Namespace: System.Runtime.Remoting.Channels +public interface ITransportHeaders // TypeDefIndex: 957 +{ + // Properties + object Item { get; set; } + + // Methods + IEnumerator GetEnumerator(); +} + +// Namespace: System.Runtime.Remoting.Channels +public class ServerChannelSinkStack : IServerChannelSinkStack, IServerResponseChannelSinkStack // TypeDefIndex: 958 +{ + // Fields + private ChanelSinkStackEntry _sinkStack; // 0x08 + + // Methods + public void .ctor(); // 0x002D2AB8 + public Stream GetResponseStream(IMessage msg, ITransportHeaders headers); // 0x002D2AC0 + public object Pop(IServerChannelSink sink); // 0x002D2C84 + public void Push(IServerChannelSink sink, object state); // 0x002D2D54 + public void ServerCallback(IAsyncResult ar); // 0x002D2DDC + public void Store(IServerChannelSink sink, object state); // 0x002D2E64 + public void StoreAndDispatch(IServerChannelSink sink, object state); // 0x002D2EEC + public void AsyncProcessResponse(IMessage msg, ITransportHeaders headers, Stream stream); // 0x002D2F74 +} + +// Namespace: System.Runtime.Remoting.Channels +internal class ServerDispatchSink : IChannelSinkBase, IServerChannelSink // TypeDefIndex: 959 +{ + // Properties + public IServerChannelSink NextChannelSink { get; } // 0x002D3150 + public IDictionary Properties { get; } // 0x002D3158 + + // Methods + public void .ctor(); // 0x002D3148 + public void AsyncProcessResponse(IServerResponseChannelSinkStack sinkStack, object state, IMessage msg, ITransportHeaders headers, Stream stream); // 0x002D3160 + public Stream GetResponseStream(IServerResponseChannelSinkStack sinkStack, object state, IMessage msg, ITransportHeaders headers); // 0x002D31E8 + public ServerProcessing ProcessMessage(IServerChannelSinkStack sinkStack, IMessage requestMsg, ITransportHeaders requestHeaders, Stream requestStream, out IMessage responseMsg, out ITransportHeaders responseHeaders, out Stream responseStream); // 0x002D31F0 +} + +// Namespace: System.Runtime.Remoting.Channels +internal class ServerDispatchSinkProvider : IServerChannelSinkProvider, IServerFormatterSinkProvider // TypeDefIndex: 960 +{ + // Properties + public IServerChannelSinkProvider Next { get; set; } // 0x002D3294 0x002D329C + + // Methods + public void .ctor(); // 0x002CCDA8 + public void .ctor(IDictionary properties, ICollection providerData); // 0x002D328C + public IServerChannelSink CreateSink(IChannelReceiver channel); // 0x002D3324 + public void GetChannelData(IChannelDataStore channelData); // 0x002D3390 +} + +// Namespace: System.Runtime.Remoting.Channels +[Serializable] +public enum ServerProcessing // TypeDefIndex: 961 +{ + Complete = 0, + OneWay = 1, + Async = 2 +} + +// Namespace: System.Runtime.Remoting.Channels +public class SinkProviderData // TypeDefIndex: 962 +{ + // Fields + private string sinkName; // 0x08 + private ArrayList children; // 0x0C + private Hashtable properties; // 0x10 + + // Properties + public IList Children { get; } // 0x002D343C + public string Name { get; } // 0x002D3444 + public IDictionary Properties { get; } // 0x002D344C + + // Methods + public void .ctor(string name); // 0x002D3394 +} + +// Namespace: System.Runtime.Remoting.Channels +[Serializable] +public class TransportHeaders : ITransportHeaders // TypeDefIndex: 963 +{ + // Fields + private Hashtable hash_table; // 0x08 + + // Properties + public object Item { get; set; } // 0x002D3628 0x002D3664 + + // Methods + public void .ctor(); // 0x002D3454 + public IEnumerator GetEnumerator(); // 0x002D36A8 +} + +// Namespace: System.Runtime.Remoting.Contexts +public class Context // TypeDefIndex: 964 +{ + // Fields + private int domain_id; // 0x08 + private int context_id; // 0x0C + private UIntPtr static_data; // 0x10 + private static IMessageSink default_server_context_sink; // 0x00 + private IMessageSink server_context_sink_chain; // 0x14 + private IMessageSink client_context_sink_chain; // 0x18 + private object[] datastore; // 0x1C + private ArrayList context_properties; // 0x20 + private bool frozen; // 0x24 + private static int global_count; // 0x04 + private static Hashtable namedSlots; // 0x08 + private static DynamicPropertyCollection global_dynamic_properties; // 0x0C + private DynamicPropertyCollection context_dynamic_properties; // 0x28 + private ContextCallbackObject callback_object; // 0x2C + + // Properties + public static Context DefaultContext { get; } // 0x002FD06C + public virtual int ContextID { get; } // 0x002FD074 + public virtual IContextProperty[] ContextProperties { get; } // 0x002FD07C + internal bool IsDefaultContext { get; } // 0x002FD1A0 + internal bool NeedsContextSink { get; } // 0x002FD1B4 + internal static bool HasGlobalDynamicSinks { get; } // 0x002FE658 + internal bool HasDynamicSinks { get; } // 0x002FE804 + internal bool HasExitSinks { get; } // 0x002FE858 + + // Methods + public void .ctor(); // 0x002FCF04 + private static void .cctor(); // 0x002FCFE4 + protected override void Finalize(); // 0x002FD064 + public static bool RegisterDynamicProperty(IDynamicProperty prop, ContextBoundObject obj, Context ctx); // 0x002FD368 + public static bool UnregisterDynamicProperty(string name, ContextBoundObject obj, Context ctx); // 0x002FD9E8 + private static DynamicPropertyCollection GetDynamicPropertyCollection(ContextBoundObject obj, Context ctx); // 0x002FD414 + internal static void NotifyGlobalDynamicSinks(bool start, IMessage req_msg, bool client_site, bool async); // 0x002FDDC0 + internal void NotifyDynamicSinks(bool start, IMessage req_msg, bool client_site, bool async); // 0x002FE774 + public virtual IContextProperty GetProperty(string name); // 0x002FED10 + public virtual void SetProperty(IContextProperty prop); // 0x002FF128 + public virtual void Freeze(); // 0x002FF304 + public override string ToString(); // 0x002FF670 + internal IMessageSink GetServerContextSinkChain(); // 0x002FF730 + internal IMessageSink GetClientContextSinkChain(); // 0x002FE934 + internal IMessageSink CreateServerObjectSinkChain(MarshalByRefObject obj, bool forceInternalExecute); // 0x002FF9C4 + internal IMessageSink CreateEnvoySink(MarshalByRefObject serverObject); // 0x002FFC10 + internal static Context SwitchToContext(Context newContext); // 0x002FFFEC + internal static Context CreateNewContext(IConstructionCallMessage msg); // 0x002FFFF4 + public void DoCallBack(CrossContextDelegate deleg); // 0x003009CC + public static LocalDataStoreSlot AllocateDataSlot(); // 0x00300B1C + public static LocalDataStoreSlot AllocateNamedDataSlot(string name); // 0x00300B8C + public static void FreeNamedDataSlot(string name); // 0x00300D24 + public static object GetData(LocalDataStoreSlot slot); // 0x00300EA4 + public static LocalDataStoreSlot GetNamedDataSlot(string name); // 0x00301038 + public static void SetData(LocalDataStoreSlot slot, object data); // 0x00301228 +} + +// Namespace: System.Runtime.Remoting.Contexts +internal class DynamicPropertyCollection // TypeDefIndex: 965 +{ + // Fields + private ArrayList _properties; // 0x08 + + // Properties + public bool HasProperties { get; } // 0x002FD324 + + // Methods + public void .ctor(); // 0x002FDD44 + public bool RegisterDynamicProperty(IDynamicProperty prop); // 0x002FD6C8 + public bool UnregisterDynamicProperty(string name); // 0x002FDA94 + public void NotifyMessage(bool start, IMessage msg, bool client_site, bool async); // 0x002FDF50 + private int FindProperty(string name); // 0x00302C64 +} + +// Namespace: +private class DynamicPropertyReg // TypeDefIndex: 966 +{ + // Fields + public IDynamicProperty Property; // 0x08 + public IDynamicMessageSink Sink; // 0x0C + + // Methods + public void .ctor(); // 0x00302EB0 +} + +// Namespace: System.Runtime.Remoting.Contexts +internal class ContextCallbackObject : ContextBoundObject // TypeDefIndex: 967 +{ + // Methods + public void .ctor(); // 0x00300B10 + public void DoCallBack(CrossContextDelegate deleg); // 0x00300B18 +} + +// Namespace: System.Runtime.Remoting.Contexts +[Serializable] +public class ContextAttribute : Attribute, IContextAttribute, IContextProperty // TypeDefIndex: 968 +{ + // Fields + protected string AttributeName; // 0x08 + + // Properties + public virtual string Name { get; } // 0x00301494 + + // Methods + public void .ctor(string name); // 0x00301474 + public override bool Equals(object o); // 0x0030149C + public virtual void Freeze(Context newContext); // 0x0030157C + public override int GetHashCode(); // 0x00301580 + public virtual void GetPropertiesForNewContext(IConstructionCallMessage ctorMsg); // 0x00301598 + public virtual bool IsContextOK(Context ctx, IConstructionCallMessage ctorMsg); // 0x00301750 + public virtual bool IsNewContextOK(Context newCtx); // 0x0030192C +} + +// Namespace: System.Runtime.Remoting.Contexts +public class ContextProperty // TypeDefIndex: 969 +{ + // Fields + private string name; // 0x08 + private object prop; // 0x0C + + // Properties + public virtual string Name { get; } // 0x0030195C + public virtual object Property { get; } // 0x00301964 + + // Methods + private void .ctor(string name, object prop); // 0x00301934 +} + +// Namespace: System.Runtime.Remoting.Contexts +internal class CrossContextChannel : IMessageSink // TypeDefIndex: 970 +{ + // Properties + public IMessageSink NextSink { get; } // 0x00302614 + + // Methods + public void .ctor(); // 0x0030196C + public IMessage SyncProcessMessage(IMessage msg); // 0x00301974 + public IMessageCtrl AsyncProcessMessage(IMessage msg, IMessageSink replySink); // 0x00302018 +} + +// Namespace: +private class ContextRestoreSink : IMessageSink // TypeDefIndex: 971 +{ + // Fields + private IMessageSink _next; // 0x08 + private Context _context; // 0x0C + private IMessage _call; // 0x10 + + // Properties + public IMessageSink NextSink { get; } // 0x00302A1C + + // Methods + public void .ctor(IMessageSink next, Context context, IMessage call); // 0x003025E4 + public IMessage SyncProcessMessage(IMessage msg); // 0x0030261C + public IMessageCtrl AsyncProcessMessage(IMessage msg, IMessageSink replySink); // 0x00302994 +} + +// Namespace: System.Runtime.Remoting.Contexts +public interface IContextAttribute // TypeDefIndex: 972 +{ + // Methods + void GetPropertiesForNewContext(IConstructionCallMessage msg); + bool IsContextOK(Context ctx, IConstructionCallMessage msg); +} + +// Namespace: System.Runtime.Remoting.Contexts +public interface IContextProperty // TypeDefIndex: 973 +{ + // Properties + string Name { get; } + + // Methods + void Freeze(Context newContext); + bool IsNewContextOK(Context newCtx); +} + +// Namespace: System.Runtime.Remoting.Contexts +public interface IContextPropertyActivator // TypeDefIndex: 974 +{ + // Methods + void CollectFromClientContext(IConstructionCallMessage msg); + void CollectFromServerContext(IConstructionReturnMessage msg); + bool DeliverClientContextToServerContext(IConstructionCallMessage msg); + bool DeliverServerContextToClientContext(IConstructionReturnMessage msg); + bool IsOKToActivate(IConstructionCallMessage msg); +} + +// Namespace: System.Runtime.Remoting.Contexts +public interface IContributeClientContextSink // TypeDefIndex: 975 +{ + // Methods + IMessageSink GetClientContextSink(IMessageSink nextSink); +} + +// Namespace: System.Runtime.Remoting.Contexts +public interface IContributeDynamicSink // TypeDefIndex: 976 +{ + // Methods + IDynamicMessageSink GetDynamicSink(); +} + +// Namespace: System.Runtime.Remoting.Contexts +public interface IContributeEnvoySink // TypeDefIndex: 977 +{ + // Methods + IMessageSink GetEnvoySink(MarshalByRefObject obj, IMessageSink nextSink); +} + +// Namespace: System.Runtime.Remoting.Contexts +public interface IContributeObjectSink // TypeDefIndex: 978 +{ + // Methods + IMessageSink GetObjectSink(MarshalByRefObject obj, IMessageSink nextSink); +} + +// Namespace: System.Runtime.Remoting.Contexts +public interface IContributeServerContextSink // TypeDefIndex: 979 +{ + // Methods + IMessageSink GetServerContextSink(IMessageSink nextSink); +} + +// Namespace: System.Runtime.Remoting.Contexts +public interface IDynamicMessageSink // TypeDefIndex: 980 +{ + // Methods + void ProcessMessageFinish(IMessage replyMsg, bool bCliSide, bool bAsync); + void ProcessMessageStart(IMessage reqMsg, bool bCliSide, bool bAsync); +} + +// Namespace: System.Runtime.Remoting.Contexts +public interface IDynamicProperty // TypeDefIndex: 981 +{ + // Properties + string Name { get; } + +} + +// Namespace: System.Runtime.Remoting.Contexts +[Serializable] +public class SynchronizationAttribute : ContextAttribute, IContributeClientContextSink, IContributeServerContextSink // TypeDefIndex: 982 +{ + // Fields + public const int NOT_SUPPORTED = 1; // 0x00 + public const int SUPPORTED = 2; // 0x00 + public const int REQUIRED = 4; // 0x00 + public const int REQUIRES_NEW = 8; // 0x00 + private bool _bReEntrant; // 0x0C + private int _flavor; // 0x10 + [NonSerialized] private bool _locked; // 0x14 + [NonSerialized] private int _lockCount; // 0x18 + [NonSerialized] private Mutex _mutex; // 0x1C + [NonSerialized] private Thread _ownerThread; // 0x20 + + // Properties + public virtual bool IsReEntrant { get; } // 0x00302FE8 + public virtual bool Locked { get; set; } // 0x00302FF0 0x00302FF8 + + // Methods + public void .ctor(); // 0x00302EB8 + public void .ctor(bool reEntrant); // 0x00302FD4 + public void .ctor(int flag); // 0x00302FE0 + public void .ctor(int flag, bool reEntrant); // 0x00302EC4 + internal void AcquireLock(); // 0x003032F8 + internal void ReleaseLock(); // 0x003031CC + public override void GetPropertiesForNewContext(IConstructionCallMessage ctorMsg); // 0x0030340C + public virtual IMessageSink GetClientContextSink(IMessageSink nextSink); // 0x00303580 + public virtual IMessageSink GetServerContextSink(IMessageSink nextSink); // 0x00303624 + public override bool IsContextOK(Context ctx, IConstructionCallMessage msg); // 0x003036C8 + internal static void ExitContext(); // 0x003037DC + internal static void EnterContext(); // 0x00303958 +} + +// Namespace: System.Runtime.Remoting.Contexts +internal class SynchronizedClientContextSink : IMessageSink // TypeDefIndex: 983 +{ + // Fields + private IMessageSink _next; // 0x08 + private SynchronizationAttribute _att; // 0x0C + + // Properties + public IMessageSink NextSink { get; } // 0x00303AD4 + + // Methods + public void .ctor(IMessageSink next, SynchronizationAttribute att); // 0x003035FC + public IMessageCtrl AsyncProcessMessage(IMessage msg, IMessageSink replySink); // 0x00303ADC + public IMessage SyncProcessMessage(IMessage msg); // 0x00303C7C +} + +// Namespace: System.Runtime.Remoting.Contexts +internal class SynchronizedServerContextSink : IMessageSink // TypeDefIndex: 984 +{ + // Fields + private IMessageSink _next; // 0x08 + private SynchronizationAttribute _att; // 0x0C + + // Properties + public IMessageSink NextSink { get; } // 0x003040CC + + // Methods + public void .ctor(IMessageSink next, SynchronizationAttribute att); // 0x003036A0 + public IMessageCtrl AsyncProcessMessage(IMessage msg, IMessageSink replySink); // 0x003040D4 + public IMessage SyncProcessMessage(IMessage msg); // 0x0030420C +} + +// Namespace: System.Runtime.Remoting.Contexts +internal class SynchronizedContextReplySink : IMessageSink // TypeDefIndex: 985 +{ + // Fields + private IMessageSink _next; // 0x08 + private bool _newLock; // 0x0C + private SynchronizationAttribute _att; // 0x10 + + // Properties + public IMessageSink NextSink { get; } // 0x00303E7C + + // Methods + public void .ctor(IMessageSink next, SynchronizationAttribute att, bool newLock); // 0x00303C4C + public IMessageCtrl AsyncProcessMessage(IMessage msg, IMessageSink replySink); // 0x00303E84 + public IMessage SyncProcessMessage(IMessage msg); // 0x00303F0C +} + +// Namespace: System.Runtime.Remoting.Lifetime +public class ClientSponsor : MarshalByRefObject, ISponsor // TypeDefIndex: 986 +{ + // Fields + private TimeSpan renewal_time; // 0x10 + private Hashtable registered_objects; // 0x18 + + // Properties + public TimeSpan RenewalTime { get; set; } // 0x0030526C 0x00305278 + + // Methods + public void .ctor(); // 0x00305130 + public void .ctor(TimeSpan renewalTime); // 0x003051E4 + public void Close(); // 0x00305288 + protected override void Finalize(); // 0x003056FC + public override object InitializeLifetimeService(); // 0x00305760 + public bool Register(MarshalByRefObject obj); // 0x00305768 + public TimeSpan Renewal(ILease lease); // 0x003058E4 + public void Unregister(MarshalByRefObject obj); // 0x003058F0 +} + +// Namespace: System.Runtime.Remoting.Lifetime +public interface ILease // TypeDefIndex: 987 +{ + // Properties + TimeSpan CurrentLeaseTime { get; } + LeaseState CurrentState { get; } + TimeSpan InitialLeaseTime { get; set; } + TimeSpan RenewOnCallTime { get; set; } + TimeSpan SponsorshipTimeout { get; set; } + + // Methods + void Register(ISponsor obj); + void Register(ISponsor obj, TimeSpan renewalTime); + TimeSpan Renew(TimeSpan renewalTime); + void Unregister(ISponsor obj); +} + +// Namespace: System.Runtime.Remoting.Lifetime +public interface ISponsor // TypeDefIndex: 988 +{ + // Methods + TimeSpan Renewal(ILease lease); +} + +// Namespace: System.Runtime.Remoting.Lifetime +internal class Lease : MarshalByRefObject, ILease // TypeDefIndex: 989 +{ + // Fields + private DateTime _leaseExpireTime; // 0x10 + private LeaseState _currentState; // 0x20 + private TimeSpan _initialLeaseTime; // 0x28 + private TimeSpan _renewOnCallTime; // 0x30 + private TimeSpan _sponsorshipTimeout; // 0x38 + private ArrayList _sponsors; // 0x40 + private Queue _renewingSponsors; // 0x44 + private RenewalDelegate _renewalDelegate; // 0x48 + + // Properties + public TimeSpan CurrentLeaseTime { get; } // 0x00305CF8 + public LeaseState CurrentState { get; } // 0x00305DC0 + public TimeSpan InitialLeaseTime { get; set; } // 0x00305DD4 0x00305DE0 + public TimeSpan RenewOnCallTime { get; set; } // 0x00305FEC 0x00305FF8 + public TimeSpan SponsorshipTimeout { get; set; } // 0x00306128 0x00306134 + + // Methods + public void .ctor(); // 0x00305A60 + public void Activate(); // 0x00305DC8 + public void Register(ISponsor obj); // 0x00306264 + public void Register(ISponsor obj, TimeSpan renewalTime); // 0x0030630C + public TimeSpan Renew(TimeSpan renewalTime); // 0x003064A4 + public void Unregister(ISponsor obj); // 0x003065C8 + internal void UpdateState(); // 0x003066E8 + private void CheckNextSponsor(); // 0x0030686C + private void ProcessSponsorResponse(object state, bool timedOut); // 0x00306B7C +} + +// Namespace: +private delegate TimeSpan RenewalDelegate(ILease lease); // TypeDefIndex: 990; 0x00306E28 + +// Namespace: System.Runtime.Remoting.Lifetime +internal class LeaseManager // TypeDefIndex: 991 +{ + // Fields + private ArrayList _objects; // 0x08 + private Timer _timer; // 0x0C + + // Methods + public void .ctor(); // 0x003071F0 + public void SetPollTime(TimeSpan timeSpan); // 0x0030726C + public void TrackLifetime(ServerIdentity identity); // 0x00307340 + public void StopTrackingLifetime(ServerIdentity identity); // 0x00307658 + public void StartManager(); // 0x00307450 + public void StopManager(); // 0x0030771C + public void ManageLeases(object state); // 0x00307750 +} + +// Namespace: System.Runtime.Remoting.Lifetime +internal class LeaseSink : IMessageSink // TypeDefIndex: 992 +{ + // Fields + private IMessageSink _nextSink; // 0x08 + + // Properties + public IMessageSink NextSink { get; } // 0x00307ED0 + + // Methods + public void .ctor(IMessageSink nextSink); // 0x002FFBF0 + public IMessage SyncProcessMessage(IMessage msg); // 0x003079BC + public IMessageCtrl AsyncProcessMessage(IMessage msg, IMessageSink replySink); // 0x00307DE0 + private void RenewLease(IMessage msg); // 0x00307AA4 +} + +// Namespace: System.Runtime.Remoting.Lifetime +[Serializable] +public enum LeaseState // TypeDefIndex: 993 +{ + Null = 0, + Initial = 1, + Active = 2, + Renewing = 3, + Expired = 4 +} + +// Namespace: System.Runtime.Remoting.Lifetime +public sealed class LifetimeServices // TypeDefIndex: 994 +{ + // Fields + private static TimeSpan _leaseManagerPollTime; // 0x00 + private static TimeSpan _leaseTime; // 0x08 + private static TimeSpan _renewOnCallTime; // 0x10 + private static TimeSpan _sponsorshipTimeout; // 0x18 + private static LeaseManager _leaseManager; // 0x20 + + // Properties + public static TimeSpan LeaseManagerPollTime { get; set; } // 0x00308048 0x002FC95C + public static TimeSpan LeaseTime { get; set; } // 0x003080DC 0x00308170 + public static TimeSpan RenewOnCallTime { get; set; } // 0x00308204 0x00308298 + public static TimeSpan SponsorshipTimeout { get; set; } // 0x0030832C 0x003083C0 + + // Methods + public void .ctor(); // 0x00307ED8 + private static void .cctor(); // 0x00307EE0 + internal static void TrackLifetime(ServerIdentity identity); // 0x00308454 + internal static void StopTrackingLifetime(ServerIdentity identity); // 0x00308500 +} + +// Namespace: System.Runtime.Remoting.Messaging +internal enum ArgInfoType : byte // TypeDefIndex: 995 +{ + In = 0, + Out = 1 +} + +// Namespace: System.Runtime.Remoting.Messaging +internal class ArgInfo // TypeDefIndex: 996 +{ + // Fields + private int[] _paramMap; // 0x08 + private int _inoutArgCount; // 0x0C + private MethodBase _method; // 0x10 + + // Methods + public void .ctor(MethodBase method, ArgInfoType type); // 0x003085AC + public int GetInOutArgIndex(int inoutArgNum); // 0x00308858 + public virtual string GetInOutArgName(int index); // 0x003088A0 + public int GetInOutArgCount(); // 0x00308970 + public object[] GetInOutArgs(object[] args); // 0x00308978 +} + +// Namespace: System.Runtime.Remoting.Messaging +public class AsyncResult : IAsyncResult, IMessageSink // TypeDefIndex: 997 +{ + // Fields + private object async_state; // 0x08 + private WaitHandle handle; // 0x0C + private object async_delegate; // 0x10 + private IntPtr data; // 0x14 + private object object_data; // 0x18 + private bool sync_completed; // 0x1C + private bool completed; // 0x1D + private bool endinvoke_called; // 0x1E + private object async_callback; // 0x20 + private ExecutionContext current; // 0x24 + private ExecutionContext original; // 0x28 + private int gchandle; // 0x2C + private MonoMethodMessage call_message; // 0x30 + private IMessageCtrl message_ctrl; // 0x34 + private IMessage reply_message; // 0x38 + + // Properties + public virtual object AsyncState { get; } // 0x00308AE4 + public virtual WaitHandle AsyncWaitHandle { get; } // 0x00308AEC + public virtual bool CompletedSynchronously { get; } // 0x00308BE8 + public virtual bool IsCompleted { get; } // 0x00308BF0 + public bool EndInvokeCalled { get; set; } // 0x00308BF8 0x00308C00 + public virtual object AsyncDelegate { get; } // 0x00308C08 + public IMessageSink NextSink { get; } // 0x00308C10 + internal MonoMethodMessage CallMessage { get; set; } // 0x00308EEC 0x00308EF4 + + // Methods + internal void .ctor(); // 0x00308ADC + public virtual IMessageCtrl AsyncProcessMessage(IMessage msg, IMessageSink replySink); // 0x00308C18 + public virtual IMessage GetReplyMessage(); // 0x00308CA0 + public virtual void SetMessageCtrl(IMessageCtrl mc); // 0x00308CA8 + internal void SetCompletedSynchronously(bool completed); // 0x00308CB0 + internal IMessage EndInvoke(); // 0x00308CB8 + public virtual IMessage SyncProcessMessage(IMessage msg); // 0x00308D40 +} + +// Namespace: System.Runtime.Remoting.Messaging +internal class CADArgHolder // TypeDefIndex: 998 +{ + // Fields + public int index; // 0x08 + + // Methods + public void .ctor(int i); // 0x00308EFC +} + +// Namespace: System.Runtime.Remoting.Messaging +internal class CADObjRef // TypeDefIndex: 999 +{ + // Fields + private ObjRef objref; // 0x08 + public int SourceDomain; // 0x0C + + // Properties + public string TypeName { get; } // 0x0030A968 + public string URI { get; } // 0x0030AA68 + + // Methods + public void .ctor(ObjRef o, int sourceDomain); // 0x00309FA4 +} + +// Namespace: System.Runtime.Remoting.Messaging +internal class CADMessageBase // TypeDefIndex: 1000 +{ + // Fields + protected object[] _args; // 0x08 + protected byte[] _serializedArgs; // 0x0C + protected int _propertyCount; // 0x10 + protected CADArgHolder _callContext; // 0x14 + + // Methods + public void .ctor(); // 0x00308F1C + internal static int MarshalProperties(IDictionary dict, ArrayList args); // 0x00308F24 + internal static void UnmarshalProperties(IDictionary dict, int count, ArrayList args); // 0x00309948 + private static bool IsPossibleToIgnoreMarshal(object obj); // 0x00309AE8 + protected object MarshalArgument(object arg, ArrayList args); // 0x00309D68 + protected object UnmarshalArgument(object arg, ArrayList args); // 0x00309FCC + internal object[] MarshalArguments(object[] arguments, ArrayList args); // 0x0030AA9C + internal object[] UnmarshalArguments(object[] arguments, ArrayList args); // 0x0030ABE8 + protected void SaveLogicalCallContext(IMethodMessage msg, ArrayList serializeList); // 0x0030AD34 + internal LogicalCallContext GetLogicalCallContext(ArrayList args); // 0x0030B054 +} + +// Namespace: System.Runtime.Remoting.Messaging +internal class CADMethodCallMessage : CADMessageBase // TypeDefIndex: 1001 +{ + // Fields + private string _uri; // 0x18 + internal RuntimeMethodHandle MethodHandle; // 0x1C + internal string FullTypeName; // 0x20 + + // Properties + internal string Uri { get; } // 0x0030B53C + internal int PropertiesCount { get; } // 0x0030B6F4 + + // Methods + internal void .ctor(IMethodCallMessage callMsg); // 0x0030B11C + internal static CADMethodCallMessage Create(IMessage callMsg); // 0x0030B544 + internal ArrayList GetArguments(); // 0x0030B5E0 + internal object[] GetArgs(ArrayList args); // 0x0030B6E8 + private static Type[] GetSignature(MethodBase methodBase, bool load); // 0x0030B6FC + internal MethodBase GetMethod(); // 0x0030B920 +} + +// Namespace: System.Runtime.Remoting.Messaging +internal class CADMethodReturnMessage : CADMessageBase // TypeDefIndex: 1002 +{ + // Fields + private object _returnValue; // 0x18 + private CADArgHolder _exception; // 0x1C + + // Properties + internal int PropertiesCount { get; } // 0x0030C768 + + // Methods + internal void .ctor(IMethodReturnMessage retMsg); // 0x0030C070 + internal static CADMethodReturnMessage Create(IMessage callMsg); // 0x0030C4C8 + internal ArrayList GetArguments(); // 0x0030C564 + internal object[] GetArgs(ArrayList args); // 0x0030C66C + internal object GetReturnValue(ArrayList args); // 0x0030C678 + internal Exception GetException(ArrayList args); // 0x0030C684 +} + +// Namespace: System.Runtime.Remoting.Messaging +[Serializable] +public sealed class CallContext // TypeDefIndex: 1003 +{ + // Fields + private static Header[] Headers; // 0x80000000 + private static Hashtable datastore; // 0x80000004 + + // Properties + public static object HostContext { get; set; } // 0x0030C778 0x0030C800 + private static Hashtable Datastore { get; } // 0x0030C8C8 + + // Methods + private void .ctor(); // 0x0030C770 + public static void FreeNamedDataSlot(string name); // 0x0030C888 + public static object GetData(string name); // 0x0030C96C + public static void SetData(string name, object data); // 0x0030C9AC + public static object LogicalGetData(string name); // 0x0030C9F4 + public static void LogicalSetData(string name, object data); // 0x0030CA7C + public static Header[] GetHeaders(); // 0x0030CB04 + public static void SetHeaders(Header[] headers); // 0x0030CB64 + internal static LogicalCallContext CreateLogicalCallContext(bool createEmpty); // 0x0030CBC8 + internal static object SetCurrentCallContext(LogicalCallContext ctx); // 0x0030D174 + internal static void UpdateCurrentCallContext(LogicalCallContext ctx); // 0x0030D2C0 + internal static void RestoreCallContext(object oldContext); // 0x0030D60C +} + +// Namespace: System.Runtime.Remoting.Messaging +public interface ILogicalThreadAffinative // TypeDefIndex: 1004 +{ +} + +// Namespace: System.Runtime.Remoting.Messaging +internal class ClientContextTerminatorSink : IMessageSink // TypeDefIndex: 1005 +{ + // Fields + private Context _context; // 0x08 + + // Properties + public IMessageSink NextSink { get; } // 0x0030DF28 + + // Methods + public void .ctor(Context ctx); // 0x002FF9A4 + public IMessage SyncProcessMessage(IMessage msg); // 0x0030D978 + public IMessageCtrl AsyncProcessMessage(IMessage msg, IMessageSink replySink); // 0x0030DC00 +} + +// Namespace: System.Runtime.Remoting.Messaging +internal class ClientContextReplySink : IMessageSink // TypeDefIndex: 1006 +{ + // Fields + private IMessageSink _replySink; // 0x08 + private Context _context; // 0x0C + + // Properties + public IMessageSink NextSink { get; } // 0x0030D970 + + // Methods + public void .ctor(Context ctx, IMessageSink replySink); // 0x0030D768 + public IMessage SyncProcessMessage(IMessage msg); // 0x0030D790 + public IMessageCtrl AsyncProcessMessage(IMessage msg, IMessageSink replySink); // 0x0030D8E8 +} + +// Namespace: System.Runtime.Remoting.Messaging +[Serializable] +public class ConstructionCall : MethodCall, IConstructionCallMessage, IMessage, IMethodCallMessage, IMethodMessage // TypeDefIndex: 1007 +{ + // Fields + private IActivator _activator; // 0x38 + private object[] _activationAttributes; // 0x3C + private IList _contextProperties; // 0x40 + private Type _activationType; // 0x44 + private string _activationTypeName; // 0x48 + private bool _isContextOk; // 0x4C + [NonSerialized] private RemotingProxy _sourceProxy; // 0x50 + private static Dictionary`2 <>f__switch$map20; // 0x00 + + // Properties + internal bool IsContextOk { get; set; } // 0x0030E82C 0x0030E834 + public Type ActivationType { get; } // 0x0030E83C + public string ActivationTypeName { get; } // 0x0030E8F0 + public IActivator Activator { get; set; } // 0x0030E8F8 0x0030E900 + public object[] CallSiteActivationAttributes { get; } // 0x0030E908 + public IList ContextProperties { get; } // 0x0030E918 + public override IDictionary Properties { get; } // 0x0030FB34 + internal RemotingProxy SourceProxy { get; set; } // 0x0030FB9C 0x0030FBA4 + + // Methods + public void .ctor(IMessage m); // 0x0030DF30 + internal void .ctor(Type type); // 0x0030E49C + public void .ctor(Header[] headers); // 0x0030E4F4 + internal void .ctor(SerializationInfo info, StreamingContext context); // 0x0030E5D0 + internal override void InitDictionary(); // 0x0030E6A8 + internal void SetActivationAttributes(object[] attributes); // 0x0030E910 + internal override void InitMethodProperty(string key, object value); // 0x0030E998 + public override void GetObjectData(SerializationInfo info, StreamingContext context); // 0x0030F3DC +} + +// Namespace: System.Runtime.Remoting.Messaging +internal class ConstructionCallDictionary : MethodDictionary // TypeDefIndex: 1008 +{ + // Fields + public static string[] InternalKeys; // 0x00 + private static Dictionary`2 <>f__switch$map23; // 0x04 + private static Dictionary`2 <>f__switch$map24; // 0x08 + + // Methods + public void .ctor(IConstructionCallMessage message); // 0x0030E750 + private static void .cctor(); // 0x0030FBCC + protected override object GetMethodProperty(string key); // 0x003100FC + protected override void SetMethodProperty(string key, object value); // 0x003111C0 +} + +// Namespace: System.Runtime.Remoting.Messaging +[Serializable] +public class ConstructionResponse : MethodResponse, IConstructionReturnMessage, IMessage, IMethodMessage, IMethodReturnMessage // TypeDefIndex: 1009 +{ + // Properties + public override IDictionary Properties { get; } // 0x00312354 + + // Methods + public void .ctor(Header[] h, IMethodCallMessage mcm); // 0x00311BF4 + internal void .ctor(object resultObject, LogicalCallContext callCtx, IMethodCallMessage msg); // 0x00312014 + internal void .ctor(Exception e, IMethodCallMessage msg); // 0x00312140 + internal void .ctor(SerializationInfo info, StreamingContext context); // 0x0031229C +} + +// Namespace: System.Runtime.Remoting.Messaging +[Serializable] +internal class EnvoyTerminatorSink : IMessageSink // TypeDefIndex: 1010 +{ + // Fields + public static EnvoyTerminatorSink Instance; // 0x00 + + // Properties + public IMessageSink NextSink { get; } // 0x003126F0 + + // Methods + public void .ctor(); // 0x00312414 + private static void .cctor(); // 0x0031241C + public IMessage SyncProcessMessage(IMessage msg); // 0x00312490 + public IMessageCtrl AsyncProcessMessage(IMessage msg, IMessageSink replySink); // 0x003125BC +} + +// Namespace: System.Runtime.Remoting.Messaging +[Serializable] +internal class ErrorMessage : IMessage, IMethodCallMessage, IMethodMessage // TypeDefIndex: 1011 +{ + // Fields + private string _uri; // 0x08 + + // Properties + public int ArgCount { get; } // 0x00312764 + public object[] Args { get; } // 0x0031276C + public bool HasVarArgs { get; } // 0x00312774 + public MethodBase MethodBase { get; } // 0x0031277C + public string MethodName { get; } // 0x00312784 + public object MethodSignature { get; } // 0x003127E0 + public virtual IDictionary Properties { get; } // 0x003127E8 + public string TypeName { get; } // 0x003127F0 + public string Uri { get; set; } // 0x0031284C 0x00312854 + public int InArgCount { get; } // 0x003128C0 + public object[] InArgs { get; } // 0x003128D8 + public LogicalCallContext LogicalCallContext { get; } // 0x003128E0 + + // Methods + public void .ctor(); // 0x003126F8 + public object GetArg(int arg_num); // 0x0031285C + public string GetArgName(int arg_num); // 0x00312864 + public string GetInArgName(int index); // 0x003128C8 + public object GetInArg(int argNum); // 0x003128D0 +} + +// Namespace: System.Runtime.Remoting.Messaging +[Serializable] +public class Header // TypeDefIndex: 1012 +{ + // Fields + public string HeaderNamespace; // 0x08 + public bool MustUnderstand; // 0x0C + public string Name; // 0x10 + public object Value; // 0x14 + + // Methods + public void .ctor(string _Name, object _Value); // 0x003128E8 + public void .ctor(string _Name, object _Value, bool _MustUnderstand); // 0x00312920 + public void .ctor(string _Name, object _Value, bool _MustUnderstand, string _HeaderNamespace); // 0x00312958 +} + +// Namespace: System.Runtime.Remoting.Messaging +internal interface IInternalMessage // TypeDefIndex: 1013 +{ + // Properties + Identity TargetIdentity { get; set; } + string Uri { get; set; } + +} + +// Namespace: System.Runtime.Remoting.Messaging +public interface IMessage // TypeDefIndex: 1014 +{ + // Properties + IDictionary Properties { get; } + +} + +// Namespace: System.Runtime.Remoting.Messaging +public interface IMessageCtrl // TypeDefIndex: 1015 +{ + // Methods + void Cancel(int msToCancel); +} + +// Namespace: System.Runtime.Remoting.Messaging +public interface IMessageSink // TypeDefIndex: 1016 +{ + // Properties + IMessageSink NextSink { get; } + + // Methods + IMessage SyncProcessMessage(IMessage msg); + IMessageCtrl AsyncProcessMessage(IMessage msg, IMessageSink replySink); +} + +// Namespace: System.Runtime.Remoting.Messaging +public interface IMethodCallMessage : IMessage, IMethodMessage // TypeDefIndex: 1017 +{ + // Properties + int InArgCount { get; } + object[] InArgs { get; } + + // Methods + object GetInArg(int argNum); + string GetInArgName(int index); +} + +// Namespace: System.Runtime.Remoting.Messaging +public interface IMethodMessage : IMessage // TypeDefIndex: 1018 +{ + // Properties + int ArgCount { get; } + object[] Args { get; } + bool HasVarArgs { get; } + LogicalCallContext LogicalCallContext { get; } + MethodBase MethodBase { get; } + string MethodName { get; } + object MethodSignature { get; } + string TypeName { get; } + string Uri { get; } + + // Methods + object GetArg(int argNum); + string GetArgName(int index); +} + +// Namespace: System.Runtime.Remoting.Messaging +public interface IMethodReturnMessage : IMessage, IMethodMessage // TypeDefIndex: 1019 +{ + // Properties + Exception Exception { get; } + int OutArgCount { get; } + object[] OutArgs { get; } + object ReturnValue { get; } + + // Methods + object GetOutArg(int argNum); + string GetOutArgName(int index); +} + +// Namespace: System.Runtime.Remoting.Messaging +public interface IRemotingFormatter : IFormatter // TypeDefIndex: 1020 +{ + // Methods + object Deserialize(Stream serializationStream, HeaderHandler handler); + void Serialize(Stream serializationStream, object graph, Header[] headers); +} + +// Namespace: System.Runtime.Remoting.Messaging +internal interface ISerializationRootObject // TypeDefIndex: 1021 +{ + // Methods + void RootSetObjectData(SerializationInfo info, StreamingContext context); +} + +// Namespace: System.Runtime.Remoting.Messaging +public class InternalMessageWrapper // TypeDefIndex: 1022 +{ + // Fields + protected IMessage WrappedMessage; // 0x08 + + // Methods + public void .ctor(IMessage msg); // 0x00312D6C +} + +// Namespace: System.Runtime.Remoting.Messaging +[Serializable] +public sealed class LogicalCallContext : ICloneable, ISerializable // TypeDefIndex: 1023 +{ + // Fields + private Hashtable _data; // 0x08 + private CallContextRemotingData _remotingData; // 0x0C + + // Properties + public bool HasInfo { get; } // 0x0030B018 + internal Hashtable Datastore { get; } // 0x00313738 + + // Methods + internal void .ctor(); // 0x0030D044 + internal void .ctor(SerializationInfo info, StreamingContext context); // 0x00312D8C + public void FreeNamedDataSlot(string name); // 0x00312F50 + public object GetData(string name); // 0x00312F6C + public void GetObjectData(SerializationInfo info, StreamingContext context); // 0x00312F8C + public void SetData(string name, object data); // 0x0030D0C0 + public object Clone(); // 0x00313318 +} + +// Namespace: System.Runtime.Remoting.Messaging +[Serializable] +internal class CallContextRemotingData : ICloneable // TypeDefIndex: 1024 +{ + // Fields + private string _logicalCallID; // 0x08 + + // Properties + public string LogicalCallID { get; set; } // 0x0030D6D0 0x0030D6D8 + + // Methods + public void .ctor(); // 0x0030D6C8 + public object Clone(); // 0x0030D6E0 +} + +// Namespace: System.Runtime.Remoting.Messaging +[Serializable] +public class MethodCall : ISerializable, IInternalMessage, IMessage, IMethodCallMessage, IMethodMessage, ISerializationRootObject // TypeDefIndex: 1025 +{ + // Fields + private string _uri; // 0x08 + private string _typeName; // 0x0C + private string _methodName; // 0x10 + private object[] _args; // 0x14 + private Type[] _methodSignature; // 0x18 + private MethodBase _methodBase; // 0x1C + private LogicalCallContext _callContext; // 0x20 + private ArgInfo _inArgInfo; // 0x24 + private Identity _targetIdentity; // 0x28 + private Type[] _genericArguments; // 0x2C + protected IDictionary ExternalProperties; // 0x30 + protected IDictionary InternalProperties; // 0x34 + private static Dictionary`2 <>f__switch$map1F; // 0x00 + + // Properties + private string System.Runtime.Remoting.Messaging.IInternalMessage.Uri { get; set; } // 0x00314D84 0x00314D8C + private Identity System.Runtime.Remoting.Messaging.IInternalMessage.TargetIdentity { get; set; } // 0x00314D94 0x00314D9C + public int ArgCount { get; } // 0x00314DA4 + public object[] Args { get; } // 0x00314DC8 + public bool HasVarArgs { get; } // 0x00314DD0 + public int InArgCount { get; } // 0x00314E4C + public object[] InArgs { get; } // 0x00314EE8 + public LogicalCallContext LogicalCallContext { get; } // 0x00314FA0 + public MethodBase MethodBase { get; } // 0x00314E24 + public string MethodName { get; } // 0x0031501C + public object MethodSignature { get; } // 0x00315064 + public virtual IDictionary Properties { get; } // 0x0030FB68 + public string TypeName { get; } // 0x0030E42C + public string Uri { get; set; } // 0x00315340 0x00315348 + private Type[] GenericArguments { get; } // 0x003158A0 + + // Methods + public void .ctor(Header[] h1); // 0x0030E4F8 + internal void .ctor(SerializationInfo info, StreamingContext context); // 0x0030E5E8 + internal void .ctor(CADMethodCallMessage msg); // 0x00314768 + public void .ctor(IMessage msg); // 0x0030DF58 + internal void .ctor(string uri, string typeName, string methodName, object[] args); // 0x00314D30 + internal void .ctor(); // 0x0030E4EC + internal void CopyFrom(IMethodMessage call); // 0x003148B4 + internal virtual void InitMethodProperty(string key, object value); // 0x0030EDE8 + public virtual void GetObjectData(SerializationInfo info, StreamingContext context); // 0x0030F608 + internal virtual void InitDictionary(); // 0x003151F0 + public object GetArg(int argNum); // 0x00315350 + public string GetArgName(int index); // 0x00315398 + public object GetInArg(int argNum); // 0x0031542C + public string GetInArgName(int index); // 0x00315520 + public virtual object HeaderHandler(Header[] h); // 0x003155D4 + public virtual void Init(); // 0x0031565C + public void ResolveMethod(); // 0x00313B70 + private Type CastTo(string clientType, Type serverType); // 0x00315660 + private static string GetTypeNameFromAssemblyQualifiedName(string aqname); // 0x003158FC + public void RootSetObjectData(SerializationInfo info, StreamingContext ctx); // 0x003159FC +} + +// Namespace: System.Runtime.Remoting.Messaging +internal class MethodCallDictionary : MethodDictionary // TypeDefIndex: 1026 +{ + // Fields + public static string[] InternalKeys; // 0x00 + + // Methods + public void .ctor(IMethodMessage message); // 0x00315298 + private static void .cctor(); // 0x00315A84 +} + +// Namespace: System.Runtime.Remoting.Messaging +public class MethodCallMessageWrapper : InternalMessageWrapper, IMessage, IMethodCallMessage, IMethodMessage // TypeDefIndex: 1027 +{ + // Fields + private object[] _args; // 0x0C + private ArgInfo _inArgInfo; // 0x10 + private DictionaryWrapper _properties; // 0x14 + + // Properties + public virtual int ArgCount { get; } // 0x00315FC4 + public virtual object[] Args { get; set; } // 0x00316108 0x00316110 + public virtual bool HasVarArgs { get; } // 0x00316118 + public virtual int InArgCount { get; } // 0x0031625C + public virtual object[] InArgs { get; } // 0x00316280 + public virtual LogicalCallContext LogicalCallContext { get; } // 0x003162B0 + public virtual MethodBase MethodBase { get; } // 0x003163F4 + public virtual string MethodName { get; } // 0x00316538 + public virtual object MethodSignature { get; } // 0x0031667C + public virtual IDictionary Properties { get; } // 0x003167C0 + public virtual string TypeName { get; } // 0x003169AC + public virtual string Uri { get; set; } // 0x00316AF0 0x00316C34 + + // Methods + public void .ctor(IMethodCallMessage msg); // 0x00315D98 + public virtual object GetArg(int argNum); // 0x00316DE0 + public virtual string GetArgName(int index); // 0x00316E28 + public virtual object GetInArg(int argNum); // 0x00316F74 + public virtual string GetInArgName(int index); // 0x00316FE0 +} + +// Namespace: +private class DictionaryWrapper : MethodCallDictionary // TypeDefIndex: 1028 +{ + // Fields + private IDictionary _wrappedDictionary; // 0x18 + private static string[] _keys; // 0x00 + + // Methods + public void .ctor(IMethodMessage message, IDictionary wrappedDictionary); // 0x003168D4 + private static void .cctor(); // 0x0031701C + protected override IDictionary AllocInternalProperties(); // 0x00317114 + protected override void SetMethodProperty(string key, object value); // 0x0031711C + protected override object GetMethodProperty(string key); // 0x003172C0 +} + +// Namespace: System.Runtime.Remoting.Messaging +[Serializable] +internal class MethodDictionary : IEnumerable, ICollection, IDictionary // TypeDefIndex: 1029 +{ + // Fields + private IDictionary _internalProperties; // 0x08 + protected IMethodMessage _message; // 0x0C + private string[] _methodKeys; // 0x10 + private bool _ownProperties; // 0x14 + private static Dictionary`2 <>f__switch$map21; // 0x00 + private static Dictionary`2 <>f__switch$map22; // 0x04 + + // Properties + internal bool HasInternalProperties { get; } // 0x00309780 + internal IDictionary InternalProperties { get; } // 0x003098A8 + public string[] MethodKeys { get; set; } // 0x003175D8 0x003175E0 + public bool IsFixedSize { get; } // 0x00317758 + public bool IsReadOnly { get; } // 0x00317760 + public object Item { get; set; } // 0x00317768 0x00317940 + public ICollection Keys { get; } // 0x00317B58 + public ICollection Values { get; } // 0x00318004 + public int Count { get; } // 0x00318944 + public bool IsSynchronized { get; } // 0x00318A50 + public object SyncRoot { get; } // 0x00318A58 + + // Methods + public void .ctor(IMethodMessage message); // 0x0030FBAC + public void .ctor(string[] keys); // 0x00317408 + private IEnumerator System.Collections.IEnumerable.GetEnumerator(); // 0x00317428 + protected virtual IDictionary AllocInternalProperties(); // 0x003175E8 + public IDictionary GetInternalProperties(); // 0x0030E7F8 + private bool IsOverridenKey(string key); // 0x00317660 + protected virtual object GetMethodProperty(string key); // 0x00310928 + protected virtual void SetMethodProperty(string key, object value); // 0x003116A8 + public void Add(object key, object value); // 0x00317944 + public void Clear(); // 0x003184A0 + public bool Contains(object key); // 0x00318570 + public void Remove(object key); // 0x00318734 + public void CopyTo(Array array, int index); // 0x00318A5C + public IDictionaryEnumerator GetEnumerator(); // 0x00318B4C +} + +// Namespace: +private class DictionaryEnumerator : IEnumerator, IDictionaryEnumerator // TypeDefIndex: 1030 +{ + // Fields + private MethodDictionary _methodDictionary; // 0x08 + private IDictionaryEnumerator _hashtableEnum; // 0x0C + private int _posMethod; // 0x10 + + // Properties + public object Current { get; } // 0x00318BBC + public DictionaryEntry Entry { get; } // 0x00318BE0 + public object Key { get; } // 0x00319130 + public object Value { get; } // 0x00319154 + + // Methods + public void .ctor(MethodDictionary methodDictionary); // 0x00317498 + public bool MoveNext(); // 0x00318DF8 + public void Reset(); // 0x00319050 +} + +// Namespace: System.Runtime.Remoting.Messaging +[Serializable] +public class MethodResponse : ISerializable, IInternalMessage, IMessage, IMethodMessage, IMethodReturnMessage, ISerializationRootObject // TypeDefIndex: 1031 +{ + // Fields + private string _methodName; // 0x08 + private string _uri; // 0x0C + private string _typeName; // 0x10 + private MethodBase _methodBase; // 0x14 + private object _returnValue; // 0x18 + private Exception _exception; // 0x1C + private Type[] _methodSignature; // 0x20 + private ArgInfo _inArgInfo; // 0x24 + private object[] _args; // 0x28 + private object[] _outArgs; // 0x2C + private IMethodCallMessage _callMsg; // 0x30 + private LogicalCallContext _callContext; // 0x34 + private Identity _targetIdentity; // 0x38 + protected IDictionary ExternalProperties; // 0x3C + protected IDictionary InternalProperties; // 0x40 + private static Dictionary`2 <>f__switch$map25; // 0x00 + + // Properties + private string System.Runtime.Remoting.Messaging.IInternalMessage.Uri { get; set; } // 0x00319B1C 0x00319C08 + private Identity System.Runtime.Remoting.Messaging.IInternalMessage.TargetIdentity { get; set; } // 0x00319C10 0x00319C18 + public int ArgCount { get; } // 0x00319C20 + public object[] Args { get; } // 0x00319C34 + public Exception Exception { get; } // 0x00319C3C + public bool HasVarArgs { get; } // 0x00319C44 + public LogicalCallContext LogicalCallContext { get; } // 0x00319DC0 + public MethodBase MethodBase { get; } // 0x00319C80 + public string MethodName { get; } // 0x00319E3C + public object MethodSignature { get; } // 0x0031A00C + public int OutArgCount { get; } // 0x0031A138 + public object[] OutArgs { get; } // 0x0031A1F4 + public virtual IDictionary Properties { get; } // 0x00312358 + public object ReturnValue { get; } // 0x0031A43C + public string TypeName { get; } // 0x00319F24 + public string Uri { get; set; } // 0x00319B20 0x0031A444 + + // Methods + public void .ctor(Header[] h1, IMethodCallMessage mcm); // 0x00311BF8 + internal void .ctor(Exception e, IMethodCallMessage msg); // 0x00312144 + internal void .ctor(object returnValue, object[] outArgs, LogicalCallContext callCtx, IMethodCallMessage msg); // 0x00312034 + internal void .ctor(IMethodCallMessage msg, CADMethodReturnMessage retmsg); // 0x003197F0 + internal void .ctor(SerializationInfo info, StreamingContext context); // 0x003122B4 + internal void InitMethodProperty(string key, object value); // 0x00319178 + public object GetArg(int argNum); // 0x0031A44C + public string GetArgName(int index); // 0x0031A494 + public virtual void GetObjectData(SerializationInfo info, StreamingContext context); // 0x0031A52C + public object GetOutArg(int argNum); // 0x0031AA84 + public string GetOutArgName(int index); // 0x0031AB98 + public virtual object HeaderHandler(Header[] h); // 0x0031ACD8 + public void RootSetObjectData(SerializationInfo info, StreamingContext ctx); // 0x0031AD60 +} + +// Namespace: System.Runtime.Remoting.Messaging +internal class MethodReturnDictionary : MethodDictionary // TypeDefIndex: 1032 +{ + // Fields + public static string[] InternalReturnKeys; // 0x00 + public static string[] InternalExceptionKeys; // 0x04 + + // Methods + public void .ctor(IMethodReturnMessage message); // 0x0031A2C8 + private static void .cctor(); // 0x0031ADE8 +} + +// Namespace: System.Runtime.Remoting.Messaging +public class MethodReturnMessageWrapper : InternalMessageWrapper, IMessage, IMethodMessage, IMethodReturnMessage // TypeDefIndex: 1033 +{ + // Fields + private object[] _args; // 0x0C + private ArgInfo _outArgInfo; // 0x10 + private DictionaryWrapper _properties; // 0x14 + private Exception _exception; // 0x18 + private object _return; // 0x1C + + // Properties + public virtual int ArgCount { get; } // 0x0031B604 + public virtual object[] Args { get; set; } // 0x0031B628 0x0031B630 + public virtual Exception Exception { get; set; } // 0x0031B638 0x0031B640 + public virtual bool HasVarArgs { get; } // 0x0031B648 + public virtual LogicalCallContext LogicalCallContext { get; } // 0x0031B78C + public virtual MethodBase MethodBase { get; } // 0x0031B8D0 + public virtual string MethodName { get; } // 0x0031BA14 + public virtual object MethodSignature { get; } // 0x0031BB58 + public virtual int OutArgCount { get; } // 0x0031BC9C + public virtual object[] OutArgs { get; } // 0x0031BCB0 + public virtual IDictionary Properties { get; } // 0x0031BCC8 + public virtual object ReturnValue { get; set; } // 0x0031BEB4 0x0031BEBC + public virtual string TypeName { get; } // 0x0031BEC4 + public string Uri { get; set; } // 0x0031C008 0x0031C14C + + // Methods + public void .ctor(IMethodReturnMessage msg); // 0x0031B218 + public virtual object GetArg(int argNum); // 0x0031C254 + public virtual string GetArgName(int index); // 0x0031C29C + public virtual object GetOutArg(int argNum); // 0x0031C3E8 + public virtual string GetOutArgName(int index); // 0x0031C454 +} + +// Namespace: +private class DictionaryWrapper : MethodReturnDictionary // TypeDefIndex: 1034 +{ + // Fields + private IDictionary _wrappedDictionary; // 0x18 + private static string[] _keys; // 0x00 + + // Methods + public void .ctor(IMethodReturnMessage message, IDictionary wrappedDictionary); // 0x0031BDDC + private static void .cctor(); // 0x0031C490 + protected override IDictionary AllocInternalProperties(); // 0x0031C5F4 + protected override void SetMethodProperty(string key, object value); // 0x0031C5FC + protected override object GetMethodProperty(string key); // 0x0031C88C +} + +// Namespace: System.Runtime.Remoting.Messaging +[Serializable] +internal class MonoMethodMessage : IInternalMessage, IMessage, IMethodCallMessage, IMethodMessage, IMethodReturnMessage // TypeDefIndex: 1035 +{ + // Fields + private MonoMethod method; // 0x08 + private object[] args; // 0x0C + private string[] names; // 0x10 + private byte[] arg_types; // 0x14 + public LogicalCallContext ctx; // 0x18 + public object rval; // 0x1C + public Exception exc; // 0x20 + private AsyncResult asyncResult; // 0x24 + private CallType call_type; // 0x28 + private string uri; // 0x2C + private MethodCallDictionary properties; // 0x30 + private Type[] methodSignature; // 0x34 + private Identity identity; // 0x38 + + // Properties + private Identity System.Runtime.Remoting.Messaging.IInternalMessage.TargetIdentity { get; set; } // 0x0031CD30 0x0031CD38 + public IDictionary Properties { get; } // 0x0031CD40 + public int ArgCount { get; } // 0x0031CDC0 + public object[] Args { get; } // 0x0031CEA4 + public bool HasVarArgs { get; } // 0x0031CEAC + public LogicalCallContext LogicalCallContext { get; set; } // 0x0031CEB4 0x0031CEBC + public MethodBase MethodBase { get; } // 0x0031CEC4 + public string MethodName { get; } // 0x0031CECC + public object MethodSignature { get; } // 0x0031CF7C + public string TypeName { get; } // 0x0031D108 + public string Uri { get; set; } // 0x0031D1E0 0x0031D1E8 + public int InArgCount { get; } // 0x0031D314 + public object[] InArgs { get; } // 0x0031D3A4 + public Exception Exception { get; } // 0x0031D68C + public int OutArgCount { get; } // 0x0031D694 + public object[] OutArgs { get; } // 0x0031D710 + public object ReturnValue { get; } // 0x0031D89C + public bool IsAsync { get; } // 0x0031DA14 + public AsyncResult AsyncResult { get; } // 0x0031DA24 + internal CallType CallType { get; } // 0x0031CDFC + + // Methods + public void .ctor(MethodBase method, object[] out_args); // 0x0031CAB8 + public void .ctor(Type type, string method_name, object[] in_args); // 0x0031CB84 + internal void InitMessage(MonoMethod method, object[] out_args); // 0x0031CB80 + public object GetArg(int arg_num); // 0x0031D1F0 + public string GetArgName(int arg_num); // 0x0031D238 + public object GetInArg(int arg_num); // 0x0031D51C + public string GetInArgName(int arg_num); // 0x0031D5D4 + public object GetOutArg(int arg_num); // 0x0031D8A4 + public string GetOutArgName(int arg_num); // 0x0031D95C + public bool NeedsOutProcessing(out int outCount); // 0x0031DA2C +} + +// Namespace: System.Runtime.Remoting.Messaging +internal enum CallType // TypeDefIndex: 1036 +{ + Sync = 0, + BeginInvoke = 1, + EndInvoke = 2, + OneWay = 3 +} + +// Namespace: System.Runtime.Remoting.Messaging +public class OneWayAttribute : Attribute // TypeDefIndex: 1037 +{ + // Methods + public void .ctor(); // 0x0031DCEC +} + +// Namespace: System.Runtime.Remoting.Messaging +internal class RemotingSurrogate : ISerializationSurrogate // TypeDefIndex: 1038 +{ + // Methods + public void .ctor(); // 0x0031DCF4 + public virtual void GetObjectData(object obj, SerializationInfo si, StreamingContext sc); // 0x0031DCFC + public virtual object SetObjectData(object obj, SerializationInfo si, StreamingContext sc, ISurrogateSelector selector); // 0x0031DEA0 +} + +// Namespace: System.Runtime.Remoting.Messaging +internal class ObjRefSurrogate : ISerializationSurrogate // TypeDefIndex: 1039 +{ + // Methods + public void .ctor(); // 0x0031DAC8 + public virtual void GetObjectData(object obj, SerializationInfo si, StreamingContext sc); // 0x0031DAD0 + public virtual object SetObjectData(object obj, SerializationInfo si, StreamingContext sc, ISurrogateSelector selector); // 0x0031DC50 +} + +// Namespace: System.Runtime.Remoting.Messaging +public class RemotingSurrogateSelector : ISurrogateSelector // TypeDefIndex: 1040 +{ + // Fields + private static Type s_cachedTypeObjRef; // 0x00 + private static ObjRefSurrogate _objRefSurrogate; // 0x04 + private static RemotingSurrogate _objRemotingSurrogate; // 0x08 + private object _rootObj; // 0x08 + private MessageSurrogateFilter _filter; // 0x0C + private ISurrogateSelector _next; // 0x10 + + // Properties + public MessageSurrogateFilter Filter { get; set; } // 0x0031E030 0x0031E038 + + // Methods + public void .ctor(); // 0x0031DF28 + private static void .cctor(); // 0x0031DF30 + public virtual void ChainSelector(ISurrogateSelector selector); // 0x0031E040 + public virtual ISurrogateSelector GetNextSelector(); // 0x0031E12C + public object GetRootObject(); // 0x0031E134 + public virtual ISerializationSurrogate GetSurrogate(Type type, StreamingContext context, out ISurrogateSelector ssout); // 0x0031E13C + public void SetRootObject(object obj); // 0x0031E374 + public virtual void UseSoapFormat(); // 0x0031E410 +} + +// Namespace: System.Runtime.Remoting.Messaging +public class ReturnMessage : IInternalMessage, IMessage, IMethodMessage, IMethodReturnMessage // TypeDefIndex: 1041 +{ + // Fields + private object[] _outArgs; // 0x08 + private object[] _args; // 0x0C + private int _outArgsCount; // 0x10 + private LogicalCallContext _callCtx; // 0x14 + private object _returnValue; // 0x18 + private string _uri; // 0x1C + private Exception _exception; // 0x20 + private MethodBase _methodBase; // 0x24 + private string _methodName; // 0x28 + private Type[] _methodSignature; // 0x2C + private string _typeName; // 0x30 + private MethodReturnDictionary _properties; // 0x34 + private Identity _targetIdentity; // 0x38 + private ArgInfo _inArgInfo; // 0x3C + + // Properties + private string System.Runtime.Remoting.Messaging.IInternalMessage.Uri { get; set; } // 0x0031E63C 0x0031E644 + private Identity System.Runtime.Remoting.Messaging.IInternalMessage.TargetIdentity { get; set; } // 0x0031E64C 0x0031E654 + public int ArgCount { get; } // 0x0031E65C + public object[] Args { get; } // 0x0031E680 + public bool HasVarArgs { get; } // 0x0031E688 + public LogicalCallContext LogicalCallContext { get; } // 0x0031E6B8 + public MethodBase MethodBase { get; } // 0x0031E734 + public string MethodName { get; } // 0x0031E73C + public object MethodSignature { get; } // 0x0031E77C + public virtual IDictionary Properties { get; } // 0x0031E8FC + public string TypeName { get; } // 0x0031E97C + public string Uri { get; set; } // 0x0031E9E4 0x0031E9EC + public Exception Exception { get; } // 0x0031EAD0 + public int OutArgCount { get; } // 0x0031EAD8 + public object[] OutArgs { get; } // 0x0031EB8C + public virtual object ReturnValue { get; } // 0x0031EC58 + + // Methods + public void .ctor(object ret, object[] outArgs, int outArgsCount, LogicalCallContext callCtx, IMethodCallMessage mcm); // 0x0031E498 + public void .ctor(Exception e, IMethodCallMessage mcm); // 0x00301E98 + public object GetArg(int argNum); // 0x0031E9F4 + public string GetArgName(int index); // 0x0031EA3C + public object GetOutArg(int argNum); // 0x0031EC60 + public string GetOutArgName(int index); // 0x0031ED4C +} + +// Namespace: System.Runtime.Remoting.Messaging +internal class ServerContextTerminatorSink : IMessageSink // TypeDefIndex: 1042 +{ + // Properties + public IMessageSink NextSink { get; } // 0x0031F044 + + // Methods + public void .ctor(); // 0x002FF99C + public IMessage SyncProcessMessage(IMessage msg); // 0x0031EE00 + public IMessageCtrl AsyncProcessMessage(IMessage msg, IMessageSink replySink); // 0x0031EF54 +} + +// Namespace: System.Runtime.Remoting.Messaging +internal class ServerObjectTerminatorSink : IMessageSink // TypeDefIndex: 1043 +{ + // Fields + private IMessageSink _nextSink; // 0x08 + + // Properties + public IMessageSink NextSink { get; } // 0x0028F978 + + // Methods + public void .ctor(IMessageSink nextSink); // 0x0028F140 + public IMessage SyncProcessMessage(IMessage msg); // 0x0028F160 + public IMessageCtrl AsyncProcessMessage(IMessage msg, IMessageSink replySink); // 0x0028F728 +} + +// Namespace: System.Runtime.Remoting.Messaging +internal class ServerObjectReplySink : IMessageSink // TypeDefIndex: 1044 +{ + // Fields + private IMessageSink _replySink; // 0x08 + private ServerIdentity _identity; // 0x0C + + // Properties + public IMessageSink NextSink { get; } // 0x0031F214 + + // Methods + public void .ctor(ServerIdentity identity, IMessageSink replySink); // 0x0031F04C + public IMessage SyncProcessMessage(IMessage msg); // 0x0031F074 + public IMessageCtrl AsyncProcessMessage(IMessage msg, IMessageSink replySink); // 0x0031F18C +} + +// Namespace: System.Runtime.Remoting.Messaging +internal class StackBuilderSink : IMessageSink // TypeDefIndex: 1045 +{ + // Fields + private MarshalByRefObject _target; // 0x08 + private RealProxy _rp; // 0x0C + + // Properties + public IMessageSink NextSink { get; } // 0x00291540 + + // Methods + public void .ctor(MarshalByRefObject obj, bool forceInternalExecute); // 0x0028F980 + public IMessage SyncProcessMessage(IMessage msg); // 0x0028FBD8 + public IMessageCtrl AsyncProcessMessage(IMessage msg, IMessageSink replySink); // 0x0029117C + private void ExecuteAsyncMessage(object ob); // 0x002912E8 + private void CheckParameters(IMessage msg); // 0x0028FCD0 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +public interface ISoapXsd // TypeDefIndex: 1046 +{ + // Methods + string GetXsdType(); +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapAnyUri : ISoapXsd // TypeDefIndex: 1047 +{ + // Fields + private string _value; // 0x08 + + // Properties + public string Value { get; set; } // 0x00292228 0x00292230 + public static string XsdType { get; } // 0x00292238 + + // Methods + public void .ctor(); // 0x00292200 + public void .ctor(string value); // 0x00292208 + public string GetXsdType(); // 0x00292294 + public static SoapAnyUri Parse(string value); // 0x002922F0 + public override string ToString(); // 0x00292364 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapBase64Binary : ISoapXsd // TypeDefIndex: 1048 +{ + // Fields + private byte[] _value; // 0x08 + + // Properties + public byte[] Value { get; set; } // 0x00292394 0x0029239C + public static string XsdType { get; } // 0x002923A4 + + // Methods + public void .ctor(); // 0x0029236C + public void .ctor(byte[] value); // 0x00292374 + public string GetXsdType(); // 0x00292400 + public static SoapBase64Binary Parse(string value); // 0x0029245C + public override string ToString(); // 0x0029250C +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapDate : ISoapXsd // TypeDefIndex: 1049 +{ + // Fields + private static readonly string[] _datetimeFormats; // 0x00 + private int _sign; // 0x08 + private DateTime _value; // 0x10 + + // Properties + public int Sign { get; set; } // 0x00292928 0x00292930 + public DateTime Value { get; set; } // 0x00292938 0x00292948 + public static string XsdType { get; } // 0x00292960 + + // Methods + public void .ctor(); // 0x00292594 + public void .ctor(DateTime value); // 0x0029259C + public void .ctor(DateTime value, int sign); // 0x002925D4 + private static void .cctor(); // 0x00292614 + public string GetXsdType(); // 0x002929BC + public static SoapDate Parse(string value); // 0x00292A7C + public override string ToString(); // 0x00292BE4 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +public sealed class SoapDateTime // TypeDefIndex: 1050 +{ + // Fields + private static readonly string[] _datetimeFormats; // 0x00 + + // Properties + public static string XsdType { get; } // 0x002937B4 + + // Methods + public void .ctor(); // 0x00292D00 + private static void .cctor(); // 0x00292D08 + public static DateTime Parse(string value); // 0x00293810 + public static string ToString(DateTime value); // 0x002938F8 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapDay : ISoapXsd // TypeDefIndex: 1051 +{ + // Fields + private static readonly string[] _datetimeFormats; // 0x00 + private DateTime _value; // 0x08 + + // Properties + public DateTime Value { get; set; } // 0x00293B48 0x00293B58 + public static string XsdType { get; } // 0x00293B70 + + // Methods + public void .ctor(); // 0x002939A4 + public void .ctor(DateTime value); // 0x002939AC + private static void .cctor(); // 0x002939E4 + public string GetXsdType(); // 0x00293BCC + public static SoapDay Parse(string value); // 0x00293C8C + public override string ToString(); // 0x00293DAC +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +public sealed class SoapDuration // TypeDefIndex: 1052 +{ + // Properties + public static string XsdType { get; } // 0x00293E58 + + // Methods + public void .ctor(); // 0x00293E50 + public static TimeSpan Parse(string value); // 0x00293EB4 + public static string ToString(TimeSpan timeSpan); // 0x002944F8 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapEntities : ISoapXsd // TypeDefIndex: 1053 +{ + // Fields + private string _value; // 0x08 + + // Properties + public string Value { get; set; } // 0x002949C0 0x002949C8 + public static string XsdType { get; } // 0x002949D0 + + // Methods + public void .ctor(); // 0x00294994 + public void .ctor(string value); // 0x0029499C + public string GetXsdType(); // 0x00294A2C + public static SoapEntities Parse(string value); // 0x00294A88 + public override string ToString(); // 0x00294AFC +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapEntity : ISoapXsd // TypeDefIndex: 1054 +{ + // Fields + private string _value; // 0x08 + + // Properties + public string Value { get; set; } // 0x00294B2C 0x00294B34 + public static string XsdType { get; } // 0x00294B3C + + // Methods + public void .ctor(); // 0x00294B04 + public void .ctor(string value); // 0x00294B0C + public string GetXsdType(); // 0x00294B98 + public static SoapEntity Parse(string value); // 0x00294BF4 + public override string ToString(); // 0x00294C68 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +internal class SoapHelper // TypeDefIndex: 1055 +{ + // Methods + public void .ctor(); // 0x00294C70 + public static Exception GetException(ISoapXsd type, string msg); // 0x00294C78 + public static string Normalize(string s); // 0x002949BC +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapHexBinary : ISoapXsd // TypeDefIndex: 1056 +{ + // Fields + private byte[] _value; // 0x08 + private StringBuilder sb; // 0x0C + + // Properties + public byte[] Value { get; set; } // 0x00294EE8 0x00294EF0 + public static string XsdType { get; } // 0x00294EF8 + + // Methods + public void .ctor(); // 0x00294DE8 + public void .ctor(byte[] value); // 0x00294E64 + public string GetXsdType(); // 0x00294F54 + public static SoapHexBinary Parse(string value); // 0x00294FB0 + internal static byte[] FromBinHexString(string value); // 0x0029502C + private static byte FromHex(char hexDigit, string value); // 0x00295470 + private static Exception CreateInvalidValueException(string value); // 0x0029525C + public override string ToString(); // 0x002955D4 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapId : ISoapXsd // TypeDefIndex: 1057 +{ + // Fields + private string _value; // 0x08 + + // Properties + public string Value { get; set; } // 0x0029572C 0x00295734 + public static string XsdType { get; } // 0x0029573C + + // Methods + public void .ctor(); // 0x00295704 + public void .ctor(string value); // 0x0029570C + public string GetXsdType(); // 0x00295798 + public static SoapId Parse(string value); // 0x002957F4 + public override string ToString(); // 0x00295868 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapIdref : ISoapXsd // TypeDefIndex: 1058 +{ + // Fields + private string _value; // 0x08 + + // Properties + public string Value { get; set; } // 0x00295898 0x002958A0 + public static string XsdType { get; } // 0x002958A8 + + // Methods + public void .ctor(); // 0x00295870 + public void .ctor(string value); // 0x00295878 + public string GetXsdType(); // 0x00295904 + public static SoapIdref Parse(string value); // 0x00295960 + public override string ToString(); // 0x002959D4 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapIdrefs : ISoapXsd // TypeDefIndex: 1059 +{ + // Fields + private string _value; // 0x08 + + // Properties + public string Value { get; set; } // 0x00295A04 0x00295A0C + public static string XsdType { get; } // 0x00295A14 + + // Methods + public void .ctor(); // 0x002959DC + public void .ctor(string value); // 0x002959E4 + public string GetXsdType(); // 0x00295A70 + public static SoapIdrefs Parse(string value); // 0x00295ACC + public override string ToString(); // 0x00295B40 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapInteger : ISoapXsd // TypeDefIndex: 1060 +{ + // Fields + private Decimal _value; // 0x08 + + // Properties + public Decimal Value { get; set; } // 0x00295B88 0x00295B98 + public static string XsdType { get; } // 0x00295BA8 + + // Methods + public void .ctor(); // 0x00295B48 + public void .ctor(Decimal value); // 0x00295B50 + public string GetXsdType(); // 0x00295C04 + public static SoapInteger Parse(string value); // 0x00295C60 + public override string ToString(); // 0x00295D30 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapLanguage : ISoapXsd // TypeDefIndex: 1061 +{ + // Fields + private string _value; // 0x08 + + // Properties + public string Value { get; set; } // 0x00295D64 0x00295D6C + public static string XsdType { get; } // 0x00295D74 + + // Methods + public void .ctor(); // 0x00295D3C + public void .ctor(string value); // 0x00295D44 + public string GetXsdType(); // 0x00295DD0 + public static SoapLanguage Parse(string value); // 0x00295E2C + public override string ToString(); // 0x00295EA0 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapMonth : ISoapXsd // TypeDefIndex: 1062 +{ + // Fields + private static readonly string[] _datetimeFormats; // 0x00 + private DateTime _value; // 0x08 + + // Properties + public DateTime Value { get; set; } // 0x0029604C 0x0029605C + public static string XsdType { get; } // 0x00296074 + + // Methods + public void .ctor(); // 0x00295EA8 + public void .ctor(DateTime value); // 0x00295EB0 + private static void .cctor(); // 0x00295EE8 + public string GetXsdType(); // 0x002960D0 + public static SoapMonth Parse(string value); // 0x00296190 + public override string ToString(); // 0x002962B0 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapMonthDay : ISoapXsd // TypeDefIndex: 1063 +{ + // Fields + private static readonly string[] _datetimeFormats; // 0x00 + private DateTime _value; // 0x08 + + // Properties + public DateTime Value { get; set; } // 0x002964F8 0x00296508 + public static string XsdType { get; } // 0x00296520 + + // Methods + public void .ctor(); // 0x00296354 + public void .ctor(DateTime value); // 0x0029635C + private static void .cctor(); // 0x00296394 + public string GetXsdType(); // 0x0029657C + public static SoapMonthDay Parse(string value); // 0x0029663C + public override string ToString(); // 0x0029675C +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapName : ISoapXsd // TypeDefIndex: 1064 +{ + // Fields + private string _value; // 0x08 + + // Properties + public string Value { get; set; } // 0x00296828 0x00296830 + public static string XsdType { get; } // 0x00296838 + + // Methods + public void .ctor(); // 0x00296800 + public void .ctor(string value); // 0x00296808 + public string GetXsdType(); // 0x00296894 + public static SoapName Parse(string value); // 0x002968F0 + public override string ToString(); // 0x00296964 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapNcName : ISoapXsd // TypeDefIndex: 1065 +{ + // Fields + private string _value; // 0x08 + + // Properties + public string Value { get; set; } // 0x00296994 0x0029699C + public static string XsdType { get; } // 0x002969A4 + + // Methods + public void .ctor(); // 0x0029696C + public void .ctor(string value); // 0x00296974 + public string GetXsdType(); // 0x00296A00 + public static SoapNcName Parse(string value); // 0x00296A5C + public override string ToString(); // 0x00296AD0 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapNegativeInteger : ISoapXsd // TypeDefIndex: 1066 +{ + // Fields + private Decimal _value; // 0x08 + + // Properties + public Decimal Value { get; set; } // 0x00296C6C 0x00296C7C + public static string XsdType { get; } // 0x00296C8C + + // Methods + public void .ctor(); // 0x00296AD8 + public void .ctor(Decimal value); // 0x00296AE0 + public string GetXsdType(); // 0x00296CE8 + public static SoapNegativeInteger Parse(string value); // 0x00296D44 + public override string ToString(); // 0x00296E08 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapNmtoken : ISoapXsd // TypeDefIndex: 1067 +{ + // Fields + private string _value; // 0x08 + + // Properties + public string Value { get; set; } // 0x00296E3C 0x00296E44 + public static string XsdType { get; } // 0x00296E4C + + // Methods + public void .ctor(); // 0x00296E14 + public void .ctor(string value); // 0x00296E1C + public string GetXsdType(); // 0x00296EA8 + public static SoapNmtoken Parse(string value); // 0x00296F04 + public override string ToString(); // 0x00296F78 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapNmtokens : ISoapXsd // TypeDefIndex: 1068 +{ + // Fields + private string _value; // 0x08 + + // Properties + public string Value { get; set; } // 0x00296FA8 0x00296FB0 + public static string XsdType { get; } // 0x00296FB8 + + // Methods + public void .ctor(); // 0x00296F80 + public void .ctor(string value); // 0x00296F88 + public string GetXsdType(); // 0x00297014 + public static SoapNmtokens Parse(string value); // 0x00297070 + public override string ToString(); // 0x002970E4 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapNonNegativeInteger : ISoapXsd // TypeDefIndex: 1069 +{ + // Fields + private Decimal _value; // 0x08 + + // Properties + public Decimal Value { get; set; } // 0x00297280 0x00297290 + public static string XsdType { get; } // 0x002972A0 + + // Methods + public void .ctor(); // 0x002970EC + public void .ctor(Decimal value); // 0x002970F4 + public string GetXsdType(); // 0x002972FC + public static SoapNonNegativeInteger Parse(string value); // 0x00297358 + public override string ToString(); // 0x0029741C +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapNonPositiveInteger : ISoapXsd // TypeDefIndex: 1070 +{ + // Fields + private Decimal _value; // 0x08 + + // Properties + public Decimal Value { get; set; } // 0x002975BC 0x002975CC + public static string XsdType { get; } // 0x002975DC + + // Methods + public void .ctor(); // 0x00297428 + public void .ctor(Decimal value); // 0x00297430 + public string GetXsdType(); // 0x00297638 + public static SoapNonPositiveInteger Parse(string value); // 0x00297694 + public override string ToString(); // 0x00297758 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapNormalizedString : ISoapXsd // TypeDefIndex: 1071 +{ + // Fields + private string _value; // 0x08 + + // Properties + public string Value { get; set; } // 0x0029778C 0x00297794 + public static string XsdType { get; } // 0x0029779C + + // Methods + public void .ctor(); // 0x00297764 + public void .ctor(string value); // 0x0029776C + public string GetXsdType(); // 0x002977F8 + public static SoapNormalizedString Parse(string value); // 0x00297854 + public override string ToString(); // 0x002978C8 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapNotation : ISoapXsd // TypeDefIndex: 1072 +{ + // Fields + private string _value; // 0x08 + + // Properties + public string Value { get; set; } // 0x002978F8 0x00297900 + public static string XsdType { get; } // 0x00297908 + + // Methods + public void .ctor(); // 0x002978D0 + public void .ctor(string value); // 0x002978D8 + public string GetXsdType(); // 0x00297964 + public static SoapNotation Parse(string value); // 0x002979C0 + public override string ToString(); // 0x00297A34 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapPositiveInteger : ISoapXsd // TypeDefIndex: 1073 +{ + // Fields + private Decimal _value; // 0x08 + + // Properties + public Decimal Value { get; set; } // 0x00297BD0 0x00297BE0 + public static string XsdType { get; } // 0x00297BF0 + + // Methods + public void .ctor(); // 0x00297A3C + public void .ctor(Decimal value); // 0x00297A44 + public string GetXsdType(); // 0x00297C4C + public static SoapPositiveInteger Parse(string value); // 0x00297CA8 + public override string ToString(); // 0x00297D6C +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapQName : ISoapXsd // TypeDefIndex: 1074 +{ + // Fields + private string _name; // 0x08 + private string _key; // 0x0C + private string _namespace; // 0x10 + + // Properties + public string Key { get; set; } // 0x00297DF8 0x00297E00 + public string Name { get; set; } // 0x00297E08 0x00297E10 + public string Namespace { get; set; } // 0x00297E18 0x00297E20 + public static string XsdType { get; } // 0x00297E28 + + // Methods + public void .ctor(); // 0x00297D78 + public void .ctor(string value); // 0x00297D80 + public void .ctor(string key, string name); // 0x00297DA0 + public void .ctor(string key, string name, string namespaceValue); // 0x00297DC8 + public string GetXsdType(); // 0x00297E84 + public static SoapQName Parse(string value); // 0x00297EE0 + public override string ToString(); // 0x00297FF4 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapTime : ISoapXsd // TypeDefIndex: 1075 +{ + // Fields + private static readonly string[] _datetimeFormats; // 0x00 + private DateTime _value; // 0x08 + + // Properties + public DateTime Value { get; set; } // 0x00298BEC 0x00298BFC + public static string XsdType { get; } // 0x00298C14 + + // Methods + public void .ctor(); // 0x00298100 + public void .ctor(DateTime value); // 0x00298108 + private static void .cctor(); // 0x00298140 + public string GetXsdType(); // 0x00298C70 + public static SoapTime Parse(string value); // 0x00298D30 + public override string ToString(); // 0x00298E50 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapToken : ISoapXsd // TypeDefIndex: 1076 +{ + // Fields + private string _value; // 0x08 + + // Properties + public string Value { get; set; } // 0x00298F1C 0x00298F24 + public static string XsdType { get; } // 0x00298F2C + + // Methods + public void .ctor(); // 0x00298EF4 + public void .ctor(string value); // 0x00298EFC + public string GetXsdType(); // 0x00298F88 + public static SoapToken Parse(string value); // 0x00298FE4 + public override string ToString(); // 0x00299058 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapYear : ISoapXsd // TypeDefIndex: 1077 +{ + // Fields + private static readonly string[] _datetimeFormats; // 0x00 + private int _sign; // 0x08 + private DateTime _value; // 0x10 + + // Properties + public int Sign { get; set; } // 0x002993F4 0x002993FC + public DateTime Value { get; set; } // 0x00299404 0x00299414 + public static string XsdType { get; } // 0x0029942C + + // Methods + public void .ctor(); // 0x00299060 + public void .ctor(DateTime value); // 0x00299068 + public void .ctor(DateTime value, int sign); // 0x002990A0 + private static void .cctor(); // 0x002990E0 + public string GetXsdType(); // 0x00299488 + public static SoapYear Parse(string value); // 0x00299548 + public override string ToString(); // 0x002996B0 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapYearMonth : ISoapXsd // TypeDefIndex: 1078 +{ + // Fields + private static readonly string[] _datetimeFormats; // 0x00 + private int _sign; // 0x08 + private DateTime _value; // 0x10 + + // Properties + public int Sign { get; set; } // 0x00299B60 0x00299B68 + public DateTime Value { get; set; } // 0x00299B70 0x00299B80 + public static string XsdType { get; } // 0x00299B98 + + // Methods + public void .ctor(); // 0x002997CC + public void .ctor(DateTime value); // 0x002997D4 + public void .ctor(DateTime value, int sign); // 0x0029980C + private static void .cctor(); // 0x0029984C + public string GetXsdType(); // 0x00299BF4 + public static SoapYearMonth Parse(string value); // 0x00299CB4 + public override string ToString(); // 0x00299E1C +} + +// Namespace: System.Runtime.Remoting.Metadata +public class SoapAttribute : Attribute // TypeDefIndex: 1079 +{ + // Fields + private bool _nested; // 0x08 + private bool _useAttribute; // 0x09 + protected string ProtXmlNamespace; // 0x0C + protected object ReflectInfo; // 0x10 + + // Properties + public virtual bool Embedded { get; set; } // 0x00291558 0x00291560 + public virtual bool UseAttribute { get; set; } // 0x00291568 0x00291570 + public virtual string XmlNamespace { get; set; } // 0x00291578 0x00291580 + + // Methods + public void .ctor(); // 0x00291550 + internal virtual void SetReflectionObject(object reflectionObject); // 0x00291588 +} + +// Namespace: System.Runtime.Remoting.Metadata +public sealed class SoapFieldAttribute : SoapAttribute // TypeDefIndex: 1080 +{ + // Fields + private int _order; // 0x14 + private string _elementName; // 0x18 + private bool _isElement; // 0x1C + + // Properties + public int Order { get; set; } // 0x00291598 0x002915A0 + public string XmlElementName { get; set; } // 0x002915A8 0x002915B0 + + // Methods + public void .ctor(); // 0x00291590 + public bool IsInteropXmlElement(); // 0x002915C4 + internal override void SetReflectionObject(object reflectionObject); // 0x002915CC +} + +// Namespace: System.Runtime.Remoting.Metadata +public sealed class SoapMethodAttribute : SoapAttribute // TypeDefIndex: 1081 +{ + // Fields + private string _responseElement; // 0x14 + private string _responseNamespace; // 0x18 + private string _returnElement; // 0x1C + private string _soapAction; // 0x20 + private bool _useAttribute; // 0x24 + private string _namespace; // 0x28 + + // Properties + public string ResponseXmlElementName { get; set; } // 0x002916AC 0x002916B4 + public string ResponseXmlNamespace { get; set; } // 0x002916BC 0x002916C4 + public string ReturnXmlElementName { get; set; } // 0x002916CC 0x002916D4 + public string SoapAction { get; set; } // 0x002916DC 0x002916E4 + public override bool UseAttribute { get; set; } // 0x002916EC 0x002916F4 + public override string XmlNamespace { get; set; } // 0x002916FC 0x00291704 + + // Methods + public void .ctor(); // 0x002916A4 + internal override void SetReflectionObject(object reflectionObject); // 0x0029170C +} + +// Namespace: System.Runtime.Remoting.Metadata +[Serializable] +public enum SoapOption // TypeDefIndex: 1082 +{ + None = 0, + AlwaysIncludeTypes = 1, + XsdString = 2, + EmbedAll = 4, + Option1 = 8, + Option2 = 16 +} + +// Namespace: System.Runtime.Remoting.Metadata +public sealed class SoapParameterAttribute : SoapAttribute // TypeDefIndex: 1083 +{ + // Methods + public void .ctor(); // 0x00291B4C +} + +// Namespace: System.Runtime.Remoting.Metadata +public sealed class SoapTypeAttribute : SoapAttribute // TypeDefIndex: 1084 +{ + // Fields + private SoapOption _soapOption; // 0x14 + private bool _useAttribute; // 0x18 + private string _xmlElementName; // 0x1C + private XmlFieldOrderOption _xmlFieldOrder; // 0x20 + private string _xmlNamespace; // 0x24 + private string _xmlTypeName; // 0x28 + private string _xmlTypeNamespace; // 0x2C + private bool _isType; // 0x30 + private bool _isElement; // 0x31 + + // Properties + public SoapOption SoapOptions { get; set; } // 0x00291B5C 0x00291B64 + public override bool UseAttribute { get; set; } // 0x00291B6C 0x00291B74 + public string XmlElementName { get; set; } // 0x00291B7C 0x00291B84 + public XmlFieldOrderOption XmlFieldOrder { get; set; } // 0x00291B98 0x00291BA0 + public override string XmlNamespace { get; set; } // 0x00291BA8 0x00291BB0 + public string XmlTypeName { get; set; } // 0x00291BC4 0x00291BCC + public string XmlTypeNamespace { get; set; } // 0x00291BE0 0x00291BE8 + internal bool IsInteropXmlElement { get; } // 0x00291BFC + internal bool IsInteropXmlType { get; } // 0x00291C04 + + // Methods + public void .ctor(); // 0x00291B54 + internal override void SetReflectionObject(object reflectionObject); // 0x00291C0C +} + +// Namespace: System.Runtime.Remoting.Metadata +[Serializable] +public enum XmlFieldOrderOption // TypeDefIndex: 1085 +{ + All = 0, + Sequence = 1, + Choice = 2 +} + +// Namespace: System.Runtime.Remoting.Proxies +public class ProxyAttribute : Attribute, IContextAttribute // TypeDefIndex: 1086 +{ + // Methods + public void .ctor(); // 0x0029CA40 + public virtual MarshalByRefObject CreateInstance(Type serverType); // 0x0029CA48 + public virtual RealProxy CreateProxy(ObjRef objRef, Type serverType, object serverObject, Context serverContext); // 0x0029CBCC + public void GetPropertiesForNewContext(IConstructionCallMessage msg); // 0x0029CD84 + public bool IsContextOK(Context ctx, IConstructionCallMessage msg); // 0x0029CD88 +} + +// Namespace: System.Runtime.Remoting.Proxies +internal class TransparentProxy // TypeDefIndex: 1087 +{ + // Fields + public RealProxy _rp; // 0x08 + private IntPtr _class; // 0x0C + private bool _custom_type_info; // 0x10 + + // Methods + public void .ctor(); // 0x002A0E84 +} + +// Namespace: System.Runtime.Remoting.Proxies +public abstract class RealProxy // TypeDefIndex: 1088 +{ + // Fields + private Type class_to_proxy; // 0x08 + internal Context _targetContext; // 0x0C + private MarshalByRefObject _server; // 0x10 + private int _targetDomainId; // 0x14 + internal string _targetUri; // 0x18 + internal Identity _objectIdentity; // 0x1C + private object _objTP; // 0x20 + private object _stubData; // 0x24 + + // Properties + internal Identity ObjectIdentity { get; set; } // 0x0029D994 0x0029D99C + + // Methods + protected void .ctor(); // 0x0029CD90 + protected void .ctor(Type classToProxy); // 0x0029CDA0 + internal void .ctor(Type classToProxy, ClientIdentity identity); // 0x0029CF6C + protected void .ctor(Type classToProxy, IntPtr stub, object stubData); // 0x0029CE08 + private static Type InternalGetProxyType(object transparentProxy); // 0x0029CFDC + public Type GetProxiedType(); // 0x0029CFE0 + public virtual ObjRef CreateObjRef(Type requestedType); // 0x0029D0B4 + public virtual void GetObjectData(SerializationInfo info, StreamingContext context); // 0x0029D76C + public virtual IntPtr GetCOMIUnknown(bool fIsMarshalled); // 0x0029D9A4 + public virtual void SetCOMIUnknown(IntPtr i); // 0x0029DA2C + public virtual IntPtr SupportsInterface(Guid iid); // 0x0029DAB4 + public static object GetStubData(RealProxy rp); // 0x0029DB3C + public static void SetStubData(RealProxy rp, object stubData); // 0x0029DB60 + public abstract IMessage Invoke(IMessage msg); + internal static object PrivateInvoke(RealProxy rp, IMessage msg, out Exception exc, out object[] out_args); // 0x0029DB88 + internal virtual object InternalGetTransparentProxy(string className); // 0x0029F350 + public virtual object GetTransparentProxy(); // 0x0029F354 + public IConstructionReturnMessage InitializeServerObject(IConstructionCallMessage ctorMsg); // 0x0029F558 + protected void AttachServer(MarshalByRefObject s); // 0x0029F5E0 + protected MarshalByRefObject DetachServer(); // 0x0029F5E8 + protected MarshalByRefObject GetUnwrappedServer(); // 0x0029F5FC + internal void SetTargetDomain(int domainId); // 0x0029F604 + internal object GetAppDomainTarget(); // 0x0029F60C + private static object[] ProcessResponse(IMethodReturnMessage mrm, MonoMethodMessage call); // 0x0029E8F4 +} + +// Namespace: System.Runtime.Remoting.Proxies +internal class RemotingProxy : RealProxy, IRemotingTypeInfo // TypeDefIndex: 1089 +{ + // Fields + private static MethodInfo _cache_GetTypeMethod; // 0x00 + private static MethodInfo _cache_GetHashCodeMethod; // 0x04 + private IMessageSink _sink; // 0x28 + private bool _hasEnvoySink; // 0x2C + private ConstructionCall _ctorCall; // 0x30 + + // Properties + public string TypeName { get; set; } // 0x002A0694 0x002A0838 + + // Methods + internal void .ctor(Type type, ClientIdentity identity); // 0x0029F9F8 + internal void .ctor(Type type, string activationUrl, object[] activationAttributes); // 0x0029CB8C + private static void .cctor(); // 0x0029FA60 + public override IMessage Invoke(IMessage request); // 0x0029FB98 + internal void AttachIdentity(Identity identity); // 0x002A0328 + internal IMessage ActivateRemoteObject(IMethodMessage request); // 0x0029E7F4 + public bool CanCastTo(Type fromType, object o); // 0x002A08C0 + protected override void Finalize(); // 0x002A0B20 +} + +// Namespace: System.Runtime.Remoting.Services +public sealed class EnterpriseServicesHelper // TypeDefIndex: 1090 +{ + // Methods + public void .ctor(); // 0x002AB808 + public static IConstructionReturnMessage CreateConstructionReturnMessage(IConstructionCallMessage ctorMsg, MarshalByRefObject retObj); // 0x002AB810 + public static void SwitchWrappers(RealProxy oldcp, RealProxy newcp); // 0x002AB8A0 + public static object WrapIUnknownWithComObject(IntPtr punk); // 0x002AB928 +} + +// Namespace: System.Runtime.Remoting.Services +public interface ITrackingHandler // TypeDefIndex: 1091 +{ + // Methods + void DisconnectedObject(object obj); + void MarshaledObject(object obj, ObjRef or); + void UnmarshaledObject(object obj, ObjRef or); +} + +// Namespace: System.Runtime.Remoting.Services +public class TrackingServices // TypeDefIndex: 1092 +{ + // Fields + private static ArrayList _handlers; // 0x00 + + // Properties + public static ITrackingHandler[] RegisteredHandlers { get; } // 0x002ABFA4 + + // Methods + public void .ctor(); // 0x002AB9B0 + private static void .cctor(); // 0x002AB9B8 + public static void RegisterTrackingHandler(ITrackingHandler handler); // 0x002ABA38 + public static void UnregisterTrackingHandler(ITrackingHandler handler); // 0x002ABCEC + internal static void NotifyMarshaledObject(object obj, ObjRef or); // 0x002A79E4 + internal static void NotifyUnmarshaledObject(object obj, ObjRef or); // 0x002A6DA4 + internal static void NotifyDisconnectedObject(object obj); // 0x002A6528 +} + +// Namespace: System.Runtime.Remoting +public class ActivatedClientTypeEntry : TypeEntry // TypeDefIndex: 1093 +{ + // Fields + private string applicationUrl; // 0x10 + private Type obj_type; // 0x14 + + // Properties + public string ApplicationUrl { get; } // 0x002C4454 + public IContextAttribute[] ContextAttributes { get; set; } // 0x002C445C 0x002C4464 + public Type ObjectType { get; } // 0x002C4468 + + // Methods + public void .ctor(Type type, string appUrl); // 0x002C4264 + public void .ctor(string typeName, string assemblyName, string appUrl); // 0x002C42F4 + public override string ToString(); // 0x002C4470 +} + +// Namespace: System.Runtime.Remoting +public class ActivatedServiceTypeEntry : TypeEntry // TypeDefIndex: 1094 +{ + // Fields + private Type obj_type; // 0x10 + + // Properties + public IContextAttribute[] ContextAttributes { get; set; } // 0x002C46EC 0x002C46F4 + public Type ObjectType { get; } // 0x002C46F8 + + // Methods + public void .ctor(Type type); // 0x002C4508 + public void .ctor(string typeName, string assemblyName); // 0x002C4590 + public override string ToString(); // 0x002C4700 +} + +// Namespace: System.Runtime.Remoting +public enum CustomErrorsModes // TypeDefIndex: 1095 +{ + On = 0, + Off = 1, + RemoteOnly = 2 +} + +// Namespace: System.Runtime.Remoting +[Serializable] +internal class EnvoyInfo : IEnvoyInfo // TypeDefIndex: 1096 +{ + // Fields + private IMessageSink envoySinks; // 0x08 + + // Properties + public IMessageSink EnvoySinks { get; set; } // 0x003045F0 0x003045F8 + + // Methods + public void .ctor(IMessageSink sinks); // 0x003045D0 +} + +// Namespace: System.Runtime.Remoting +public interface IChannelInfo // TypeDefIndex: 1097 +{ + // Properties + object[] ChannelData { get; set; } + +} + +// Namespace: System.Runtime.Remoting +public interface IEnvoyInfo // TypeDefIndex: 1098 +{ + // Properties + IMessageSink EnvoySinks { get; set; } + +} + +// Namespace: System.Runtime.Remoting +public interface IObjectHandle // TypeDefIndex: 1099 +{ + // Methods + object Unwrap(); +} + +// Namespace: System.Runtime.Remoting +public interface IRemotingTypeInfo // TypeDefIndex: 1100 +{ + // Properties + string TypeName { get; set; } + + // Methods + bool CanCastTo(Type fromType, object o); +} + +// Namespace: System.Runtime.Remoting +internal abstract class Identity // TypeDefIndex: 1101 +{ + // Fields + protected string _objectUri; // 0x08 + protected IMessageSink _channelSink; // 0x0C + protected IMessageSink _envoySink; // 0x10 + private DynamicPropertyCollection _clientDynamicProperties; // 0x14 + private DynamicPropertyCollection _serverDynamicProperties; // 0x18 + protected ObjRef _objRef; // 0x1C + private bool _disposed; // 0x20 + + // Properties + public bool IsFromThisAppDomain { get; } // 0x00304620 + public IMessageSink ChannelSink { get; set; } // 0x00304634 0x0030463C + public IMessageSink EnvoySink { get; } // 0x00304644 + public string ObjectUri { get; set; } // 0x0030464C 0x00304654 + public bool IsConnected { get; } // 0x0030465C + public bool Disposed { get; set; } // 0x0030466C 0x00304674 + public DynamicPropertyCollection ClientDynamicProperties { get; } // 0x002FDC4C + public DynamicPropertyCollection ServerDynamicProperties { get; } // 0x002FDCC8 + public bool HasClientDynamicSinks { get; } // 0x0030467C + public bool HasServerDynamicSinks { get; } // 0x003046D0 + + // Methods + public void .ctor(string objectUri); // 0x00304600 + public abstract ObjRef CreateObjRef(Type requestedType); + public void NotifyClientDynamicSinks(bool start, IMessage req_msg, bool client_site, bool async); // 0x00304724 + public void NotifyServerDynamicSinks(bool start, IMessage req_msg, bool client_site, bool async); // 0x003047B4 +} + +// Namespace: System.Runtime.Remoting +internal class ClientIdentity : Identity // TypeDefIndex: 1102 +{ + // Fields + private WeakReference _proxyReference; // 0x24 + + // Properties + public MarshalByRefObject ClientProxy { get; set; } // 0x002D3BA8 0x002D3C70 + public string TargetUri { get; } // 0x002D3CF0 + + // Methods + public void .ctor(string objectUri, ObjRef objRef); // 0x002D3A44 + public override ObjRef CreateObjRef(Type requestedType); // 0x002D3CE8 +} + +// Namespace: System.Runtime.Remoting +public class InternalRemotingServices // TypeDefIndex: 1103 +{ + // Fields + private static Hashtable _soapAttributes; // 0x00 + + // Methods + public void .ctor(); // 0x00304844 + private static void .cctor(); // 0x0030484C + public static void DebugOutChnl(string s); // 0x003048CC + public static SoapAttribute GetCachedSoapAttribute(object reflectionObject); // 0x00304954 + public static void RemotingAssert(bool condition, string message); // 0x00304EFC + public static void RemotingTrace(object[] messages); // 0x00304F84 + public static void SetServerIdentity(MethodCall m, object srvID); // 0x0030500C +} + +// Namespace: System.Runtime.Remoting +[Serializable] +public class ObjRef : ISerializable, IObjectReference // TypeDefIndex: 1104 +{ + // Fields + private IChannelInfo channel_info; // 0x08 + private string uri; // 0x0C + private IRemotingTypeInfo typeInfo; // 0x10 + private IEnvoyInfo envoyInfo; // 0x14 + private int flags; // 0x18 + private Type _serverType; // 0x1C + private static int MarshalledObjectRef; // 0x00 + private static int WellKnowObjectRef; // 0x04 + private static Dictionary`2 <>f__switch$map26; // 0x08 + + // Properties + internal bool IsReferenceToWellKnow { get; } // 0x0029B4F8 + public virtual IChannelInfo ChannelInfo { get; set; } // 0x0029B59C 0x0029B5A4 + public virtual IEnvoyInfo EnvoyInfo { get; set; } // 0x0029B5AC 0x0029B5B4 + public virtual IRemotingTypeInfo TypeInfo { get; set; } // 0x0029B5BC 0x0029B5C4 + public virtual string URI { get; set; } // 0x0029B5CC 0x0029B5D4 + internal Type ServerType { get; } // 0x0029BFCC + + // Methods + public void .ctor(); // 0x00299F38 + internal void .ctor(string typeName, string uri, IChannelInfo cinfo); // 0x00299FC8 + internal void .ctor(ObjRef o, bool unmarshalAsProxy); // 0x0029A5D8 + public void .ctor(MarshalByRefObject o, Type requestedType); // 0x0029A718 + internal void .ctor(Type type, string url, object remoteChannelData); // 0x0029AA20 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x0029AB2C + private static void .cctor(); // 0x0029B478 + internal bool IsPossibleToCAD(); // 0x0029B4F0 + public virtual void GetObjectData(SerializationInfo info, StreamingContext context); // 0x0029B5DC + public virtual object GetRealObject(StreamingContext context); // 0x0029B810 + public bool IsFromThisAppDomain(); // 0x0029B970 + public bool IsFromThisProcess(); // 0x0029BCD4 + internal void UpdateChannelInfo(); // 0x00299F58 +} + +// Namespace: System.Runtime.Remoting +public class ObjectHandle : MarshalByRefObject, IObjectHandle // TypeDefIndex: 1105 +{ + // Fields + private object _wrapped; // 0x0C + + // Methods + public void .ctor(object o); // 0x0029C10C + public override object InitializeLifetimeService(); // 0x0029C12C + public object Unwrap(); // 0x0029C134 +} + +// Namespace: System.Runtime.Remoting +public static class RemotingConfiguration // TypeDefIndex: 1106 +{ + // Fields + private static string applicationID; // 0x00 + private static string applicationName; // 0x04 + private static string processGuid; // 0x08 + private static bool defaultConfigRead; // 0x0C + private static bool defaultDelayedConfigRead; // 0x0D + private static string _errorMode; // 0x10 + private static Hashtable wellKnownClientEntries; // 0x14 + private static Hashtable activatedClientEntries; // 0x18 + private static Hashtable wellKnownServiceEntries; // 0x1C + private static Hashtable activatedServiceEntries; // 0x20 + private static Hashtable channelTemplates; // 0x24 + private static Hashtable clientProviderTemplates; // 0x28 + private static Hashtable serverProviderTemplates; // 0x2C + + // Properties + public static string ApplicationId { get; } // 0x002A1000 + public static string ApplicationName { get; set; } // 0x002A110C 0x002A1198 + public static CustomErrorsModes CustomErrorsMode { get; set; } // 0x002A1228 0x002A12B0 + public static string ProcessId { get; } // 0x0029BEB4 + + // Methods + private static void .cctor(); // 0x002A0E8C + public static void Configure(string filename, bool ensureSecurity); // 0x002A1338 + public static void Configure(string filename); // 0x002A187C + private static void ReadConfigFile(string filename); // 0x002A1500 + internal static void LoadDefaultDelayedChannels(); // 0x002A1908 + public static ActivatedClientTypeEntry[] GetRegisteredActivatedClientTypes(); // 0x002A1CE0 + public static ActivatedServiceTypeEntry[] GetRegisteredActivatedServiceTypes(); // 0x002A1F38 + public static WellKnownClientTypeEntry[] GetRegisteredWellKnownClientTypes(); // 0x002A2190 + public static WellKnownServiceTypeEntry[] GetRegisteredWellKnownServiceTypes(); // 0x002A23E8 + public static bool IsActivationAllowed(Type svrType); // 0x002A2640 + public static ActivatedClientTypeEntry IsRemotelyActivatedClientType(Type svrType); // 0x002A27AC + public static ActivatedClientTypeEntry IsRemotelyActivatedClientType(string typeName, string assemblyName); // 0x002A295C + public static WellKnownClientTypeEntry IsWellKnownClientType(Type svrType); // 0x002A2A1C + public static WellKnownClientTypeEntry IsWellKnownClientType(string typeName, string assemblyName); // 0x002A2BCC + public static void RegisterActivatedClientType(ActivatedClientTypeEntry entry); // 0x002A2C8C + public static void RegisterActivatedClientType(Type type, string appUrl); // 0x002A2FF8 + public static void RegisterActivatedServiceType(ActivatedServiceTypeEntry entry); // 0x002A3150 + public static void RegisterActivatedServiceType(Type type); // 0x002A32CC + public static void RegisterWellKnownClientType(Type type, string objectUrl); // 0x002A3370 + public static void RegisterWellKnownClientType(WellKnownClientTypeEntry entry); // 0x002A3554 + public static void RegisterWellKnownServiceType(Type type, string objectUri, WellKnownObjectMode mode); // 0x002A38C0 + public static void RegisterWellKnownServiceType(WellKnownServiceTypeEntry entry); // 0x002A3A10 + internal static void RegisterChannelTemplate(ChannelData channel); // 0x002A3D08 + internal static void RegisterClientProviderTemplate(ProviderData prov); // 0x002A3DD8 + internal static void RegisterServerProviderTemplate(ProviderData prov); // 0x002A3EA8 + internal static void RegisterChannels(ArrayList channels, bool onlyDelayed); // 0x002A3F78 + internal static void RegisterTypes(ArrayList types); // 0x002A5060 + public static bool CustomErrorsEnabled(bool isLocalRequest); // 0x002A5688 + internal static void SetCustomErrorsMode(string mode); // 0x002A5800 +} + +// Namespace: System.Runtime.Remoting +internal class ConfigHandler : IContentHandler // TypeDefIndex: 1107 +{ + // Fields + private ArrayList typeEntries; // 0x08 + private ArrayList channelInstances; // 0x0C + private ChannelData currentChannel; // 0x10 + private Stack currentProviderData; // 0x14 + private string currentClientUrl; // 0x18 + private string appName; // 0x1C + private string currentXmlPath; // 0x20 + private bool onlyDelayedChannels; // 0x24 + private static Dictionary`2 <>f__switch$map27; // 0x00 + private static Dictionary`2 <>f__switch$map28; // 0x04 + + // Methods + public void .ctor(bool onlyDelayedChannels); // 0x002F7A7C + private void ValidatePath(string element, string[] paths); // 0x002F7B60 + private bool CheckPath(string path); // 0x002F7CAC + public void OnStartParsing(SmallXmlParser parser); // 0x002F7E18 + public void OnProcessingInstruction(string name, string text); // 0x002F7E1C + public void OnIgnorableWhitespace(string s); // 0x002F7E20 + public void OnStartElement(string name, IAttrList attrs); // 0x002F7E24 + public void ParseElement(string name, IAttrList attrs); // 0x002F8080 + public void OnEndElement(string name); // 0x002FC26C + private void ReadCustomProviderData(string name, IAttrList attrs); // 0x002F9ADC + private void ReadLifetine(IAttrList attrs); // 0x002F9F8C + private TimeSpan ParseTime(string s); // 0x002FC318 + private void ReadChannel(IAttrList attrs, bool isTemplate); // 0x002FAAC0 + private ProviderData ReadProvider(string name, IAttrList attrs, bool isTemplate); // 0x002FB104 + private void ReadClientActivated(IAttrList attrs); // 0x002FBA6C + private void ReadServiceActivated(IAttrList attrs); // 0x002FBC0C + private void ReadClientWellKnown(IAttrList attrs); // 0x002FB708 + private void ReadServiceWellKnown(IAttrList attrs); // 0x002FB808 + private void ReadInteropXml(IAttrList attrs, bool isElement); // 0x002FBCE4 + private void ReadPreload(IAttrList attrs); // 0x002FBF50 + private string GetNotNull(IAttrList attrs, string name); // 0x002FCA3C + private string ExtractAssembly(string type); // 0x002FCC10 + public void OnChars(string ch); // 0x002FCD6C + public void OnEndParsing(SmallXmlParser parser); // 0x002FCD70 +} + +// Namespace: System.Runtime.Remoting +internal class ChannelData // TypeDefIndex: 1108 +{ + // Fields + internal string Ref; // 0x08 + internal string Type; // 0x0C + internal string Id; // 0x10 + internal string DelayLoadAsClientChannel; // 0x14 + private ArrayList _serverProviders; // 0x18 + private ArrayList _clientProviders; // 0x1C + private Hashtable _customProperties; // 0x20 + + // Properties + internal ArrayList ServerProviders { get; } // 0x002C80CC + public ArrayList ClientProviders { get; } // 0x002C814C + public Hashtable CustomProperties { get; } // 0x002C81CC + + // Methods + public void .ctor(); // 0x002C8014 + public void CopyFrom(ChannelData other); // 0x002C824C +} + +// Namespace: System.Runtime.Remoting +internal class ProviderData // TypeDefIndex: 1109 +{ + // Fields + internal string Ref; // 0x08 + internal string Type; // 0x0C + internal string Id; // 0x10 + internal Hashtable CustomProperties; // 0x14 + internal IList CustomData; // 0x18 + + // Methods + public void .ctor(); // 0x0029C13C + public void CopyFrom(ProviderData other); // 0x0029C1B8 +} + +// Namespace: System.Runtime.Remoting +internal class FormatterData : ProviderData // TypeDefIndex: 1110 +{ + // Methods + public void .ctor(); // 0x002FCA34 +} + +// Namespace: System.Runtime.Remoting +[Serializable] +public class RemotingException : SystemException // TypeDefIndex: 1111 +{ + // Methods + public void .ctor(); // 0x002A5A78 + public void .ctor(string message); // 0x00291548 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x002A5A80 + public void .ctor(string message, Exception InnerException); // 0x002A1900 +} + +// Namespace: System.Runtime.Remoting +public sealed class RemotingServices // TypeDefIndex: 1112 +{ + // Fields + private static Hashtable uri_hash; // 0x00 + private static BinaryFormatter _serializationFormatter; // 0x04 + private static BinaryFormatter _deserializationFormatter; // 0x08 + internal static string app_id; // 0x0C + private static int next_id; // 0x10 + private static readonly BindingFlags methodBindings; // 0x14 + private static readonly MethodInfo FieldSetterMethod; // 0x18 + private static readonly MethodInfo FieldGetterMethod; // 0x1C + + // Methods + private void .ctor(); // 0x002A5AA0 + private static void .cctor(); // 0x002A5AA8 + internal static object InternalExecute(MethodBase method, object obj, object[] parameters, out object[] out_args); // 0x002A5EE0 + internal static MethodBase GetVirtualMethod(Type type, MethodBase method); // 0x002A5EE4 + public static bool IsTransparentProxy(object proxy); // 0x0028FA60 + internal static IMethodReturnMessage InternalExecuteMessage(MarshalByRefObject target, IMethodCallMessage reqMsg); // 0x00290384 + public static IMethodReturnMessage ExecuteMessage(MarshalByRefObject target, IMethodCallMessage reqMsg); // 0x002A5EE8 + public static object Connect(Type classToProxy, string url); // 0x002A6048 + public static object Connect(Type classToProxy, string url, object data); // 0x002A61A0 + public static bool Disconnect(MarshalByRefObject obj); // 0x002A625C + public static Type GetServerTypeForUri(string URI); // 0x002A68AC + public static string GetObjectUri(MarshalByRefObject obj); // 0x0029A948 + public static object Unmarshal(ObjRef objectRef); // 0x0029B8EC + public static object Unmarshal(ObjRef objectRef, bool fRefine); // 0x002A6A80 + public static ObjRef Marshal(MarshalByRefObject Obj); // 0x002A712C + public static ObjRef Marshal(MarshalByRefObject Obj, string URI); // 0x002A71B4 + public static ObjRef Marshal(MarshalByRefObject Obj, string ObjURI, Type RequestedType); // 0x0029D1AC + private static string NewUri(); // 0x002A7240 + public static RealProxy GetRealProxy(object proxy); // 0x0028FA64 + public static MethodBase GetMethodBaseFromMethodMessage(IMethodMessage msg); // 0x002A7EFC + internal static MethodBase GetMethodBaseFromName(Type type, string methodName, Type[] signature); // 0x002A82D4 + private static MethodBase FindInterfaceMethod(Type type, string methodName, Type[] signature); // 0x002A86C0 + public static void GetObjectData(object obj, SerializationInfo info, StreamingContext context); // 0x0029D824 + public static ObjRef GetObjRefForProxy(MarshalByRefObject obj); // 0x002A88B8 + public static object GetLifetimeService(MarshalByRefObject obj); // 0x002A895C + public static IMessageSink GetEnvoyChainForProxy(MarshalByRefObject obj); // 0x002A8970 + public static void LogRemotingStage(int stage); // 0x002A8B40 + public static string GetSessionIdForMethodMessage(IMethodMessage msg); // 0x002A8BC8 + public static bool IsMethodOverloaded(IMethodMessage msg); // 0x002A8C9C + public static bool IsObjectOutOfAppDomain(object tp); // 0x002A8ED0 + public static bool IsObjectOutOfContext(object tp); // 0x002A8FE8 + public static bool IsOneWay(MethodBase method); // 0x002A915C + internal static bool IsAsyncMessage(IMessage msg); // 0x002A9220 + public static void SetObjectUriForMarshal(MarshalByRefObject obj, string uri); // 0x002A9394 + internal static object CreateClientProxy(ActivatedClientTypeEntry entry, object[] activationAttributes); // 0x002A956C + internal static object CreateClientProxy(Type objectType, string url, object[] activationAttributes); // 0x002A979C + internal static object CreateClientProxy(WellKnownClientTypeEntry entry); // 0x002A9B10 + internal static object CreateClientProxyForContextBound(Type type, object[] activationAttributes); // 0x002A9BC4 + internal static Identity GetIdentityForUri(string uri); // 0x0029BA0C + private static string RemoveAppNameFromUri(string uri); // 0x002A9E38 + internal static Identity GetObjectIdentity(MarshalByRefObject obj); // 0x002A6990 + internal static ClientIdentity GetOrCreateClientIdentity(ObjRef objRef, Type proxyType, out object clientProxy); // 0x002A9FE8 + private static IMessageSink GetClientChannelSinkChain(string url, object channelData, out string objectUri); // 0x002A996C + internal static ClientActivatedIdentity CreateContextBoundObjectIdentity(Type objectType); // 0x002AA588 + internal static ClientActivatedIdentity CreateClientActivatedServerIdentity(MarshalByRefObject realObject, Type objectType, string objectUri); // 0x002A7D6C + internal static ServerIdentity CreateWellKnownServerIdentity(Type objectType, string objectUri, WellKnownObjectMode mode); // 0x002A3BD8 + private static void RegisterServerIdentity(ServerIdentity identity); // 0x002A7578 + internal static object GetProxyForRemoteObject(ObjRef objref, Type classToProxy); // 0x0029CC58 + internal static object GetRemoteObject(ObjRef objRef, Type proxyType); // 0x002A6100 + internal static object GetServerObject(string uri); // 0x002AA86C + internal static byte[] SerializeCallData(object obj); // 0x002AA9D0 + internal static object DeserializeCallData(byte[] array); // 0x002AAB48 + internal static byte[] SerializeExceptionData(Exception ex); // 0x002AACB8 + internal static object GetDomainProxy(AppDomain domain); // 0x002AB098 + private static void RegisterInternalChannels(); // 0x002A5E64 + internal static void DisposeIdentity(Identity ident); // 0x002A0C34 + internal static Identity GetMessageTargetIdentity(IMessage msg); // 0x0028F338 + internal static void SetMessageTargetIdentity(IMessage msg, Identity ident); // 0x002AB38C + internal static bool UpdateOutArgObject(ParameterInfo pi, object local, object remote); // 0x0029F78C + private static string GetNormalizedUri(string uri); // 0x002A9D94 +} + +// Namespace: +[Serializable] +private class CACD // TypeDefIndex: 1113 +{ + // Fields + public object d; // 0x08 + public object c; // 0x0C + + // Methods + public void .ctor(); // 0x002AAB40 +} + +// Namespace: System.Runtime.Remoting +[Serializable] +public class RemotingTimeoutException : RemotingException // TypeDefIndex: 1114 +{ + // Methods + public void .ctor(); // 0x002AB508 + public void .ctor(string message); // 0x002AB510 + public void .ctor(string message, Exception InnerException); // 0x002AB518 + internal void .ctor(SerializationInfo info, StreamingContext context); // 0x002AB520 +} + +// Namespace: System.Runtime.Remoting +[Serializable] +public class ServerException : SystemException // TypeDefIndex: 1115 +{ + // Methods + public void .ctor(); // 0x002AB540 + public void .ctor(string message); // 0x002AB548 + public void .ctor(string message, Exception InnerException); // 0x002AB550 + internal void .ctor(SerializationInfo info, StreamingContext context); // 0x002AB558 +} + +// Namespace: System.Runtime.Remoting +internal abstract class ServerIdentity : Identity // TypeDefIndex: 1116 +{ + // Fields + protected Type _objectType; // 0x24 + protected MarshalByRefObject _serverObject; // 0x28 + protected IMessageSink _serverSink; // 0x2C + protected Context _context; // 0x30 + protected Lease _lease; // 0x34 + + // Properties + public Type ObjectType { get; } // 0x002AB5A0 + public Lease Lease { get; } // 0x002AB7F0 + public Context Context { get; set; } // 0x002AB7F8 0x002AB800 + + // Methods + public void .ctor(string objectUri, Context context, Type objectType); // 0x002AB578 + public void StartTrackingLifetime(ILease lease); // 0x002A7828 + public virtual void OnLifetimeExpired(); // 0x002AB5A8 + public override ObjRef CreateObjRef(Type requestedType); // 0x002AB648 + public void AttachServerObject(MarshalByRefObject serverObject, Context context); // 0x002AA6BC + public abstract IMessage SyncObjectProcessMessage(IMessage msg); + public abstract IMessageCtrl AsyncObjectProcessMessage(IMessage msg, IMessageSink replySink); + protected void DisposeServerObject(); // 0x002AB5AC +} + +// Namespace: System.Runtime.Remoting +internal class ClientActivatedIdentity : ServerIdentity // TypeDefIndex: 1117 +{ + // Fields + private MarshalByRefObject _targetThis; // 0x38 + + // Methods + public void .ctor(string objectUri, Type objectType); // 0x002D36DC + public MarshalByRefObject GetServerObject(); // 0x002D3704 + public MarshalByRefObject GetClientProxy(); // 0x002D370C + public void SetClientProxy(MarshalByRefObject obj); // 0x002D3714 + public override void OnLifetimeExpired(); // 0x002D371C + public override IMessage SyncObjectProcessMessage(IMessage msg); // 0x002D37AC + public override IMessageCtrl AsyncObjectProcessMessage(IMessage msg, IMessageSink replySink); // 0x002D38EC +} + +// Namespace: System.Runtime.Remoting +internal class SingletonIdentity : ServerIdentity // TypeDefIndex: 1118 +{ + // Methods + public void .ctor(string objectUri, Context context, Type objectType); // 0x002AA844 + public MarshalByRefObject GetServerObject(); // 0x002AC6EC + public override IMessage SyncObjectProcessMessage(IMessage msg); // 0x002AC8DC + public override IMessageCtrl AsyncObjectProcessMessage(IMessage msg, IMessageSink replySink); // 0x002ACA0C +} + +// Namespace: System.Runtime.Remoting +internal class SingleCallIdentity : ServerIdentity // TypeDefIndex: 1119 +{ + // Methods + public void .ctor(string objectUri, Context context, Type objectType); // 0x002AA81C + public override IMessage SyncObjectProcessMessage(IMessage msg); // 0x002AC25C + public override IMessageCtrl AsyncObjectProcessMessage(IMessage msg, IMessageSink replySink); // 0x002AC4DC +} + +// Namespace: System.Runtime.Remoting +internal class DisposerReplySink : IMessageSink // TypeDefIndex: 1120 +{ + // Fields + private IMessageSink _next; // 0x08 + private IDisposable _disposable; // 0x0C + + // Properties + public IMessageSink NextSink { get; } // 0x003045C8 + + // Methods + public void .ctor(IMessageSink next, IDisposable disposable); // 0x003043AC + public IMessage SyncProcessMessage(IMessage msg); // 0x003043D4 + public IMessageCtrl AsyncProcessMessage(IMessage msg, IMessageSink replySink); // 0x00304540 +} + +// Namespace: System.Runtime.Remoting +public class SoapServices // TypeDefIndex: 1121 +{ + // Fields + private static Hashtable _xmlTypes; // 0x00 + private static Hashtable _xmlElements; // 0x04 + private static Hashtable _soapActions; // 0x08 + private static Hashtable _soapActionsMethods; // 0x0C + private static Hashtable _typeInfos; // 0x10 + + // Properties + public static string XmlNsForClrType { get; } // 0x002ACC54 + public static string XmlNsForClrTypeWithAssembly { get; } // 0x002ACCB0 + public static string XmlNsForClrTypeWithNs { get; } // 0x002ACD0C + public static string XmlNsForClrTypeWithNsAndAssembly { get; } // 0x002ACD68 + + // Methods + private void .ctor(); // 0x002ACB4C + private static void .cctor(); // 0x002ACB54 + public static string CodeXmlNamespaceForClrTypeNamespace(string typeNamespace, string assemblyName); // 0x00291EC0 + public static bool DecodeXmlNamespaceForClrTypeNamespace(string inNamespace, out string typeNamespace, out string assemblyName); // 0x002ACECC + public static void GetInteropFieldTypeAndNameFromXmlAttribute(Type containingType, string xmlAttribute, string xmlNamespace, out Type type, out string name); // 0x002AD4CC + public static void GetInteropFieldTypeAndNameFromXmlElement(Type containingType, string xmlElement, string xmlNamespace, out Type type, out string name); // 0x002AD768 + private static void GetInteropFieldInfo(Hashtable fields, string xmlName, string xmlNamespace, out Type type, out string name); // 0x002AD630 + private static string GetNameKey(string name, string namspace); // 0x002AD8CC + public static Type GetInteropTypeFromXmlElement(string xmlElement, string xmlNamespace); // 0x002AD978 + public static Type GetInteropTypeFromXmlType(string xmlType, string xmlTypeNamespace); // 0x002ADBB0 + private static string GetAssemblyName(MethodBase mb); // 0x002ADDE8 + public static string GetSoapActionFromMethodBase(MethodBase mb); // 0x002ADFC0 + public static bool GetTypeAndMethodNameFromSoapAction(string soapAction, out string typeName, out string methodName); // 0x002AE344 + public static bool GetXmlElementForInteropType(Type type, out string xmlElement, out string xmlNamespace); // 0x002AE7CC + public static string GetXmlNamespaceForMethodCall(MethodBase mb); // 0x00291A70 + public static string GetXmlNamespaceForMethodResponse(MethodBase mb); // 0x00291994 + public static bool GetXmlTypeForInteropType(Type type, out string xmlType, out string xmlTypeNamespace); // 0x002AE8BC + public static bool IsClrTypeNamespace(string namespaceString); // 0x002AE9B4 + public static bool IsSoapActionValidForMethodBase(string soapAction, MethodBase mb); // 0x002AEA98 + public static void PreLoad(Assembly assembly); // 0x002AEC34 + public static void PreLoad(Type type); // 0x002AED24 + public static void RegisterInteropXmlElement(string xmlElement, string xmlNamespace, Type type); // 0x002AF57C + public static void RegisterInteropXmlType(string xmlType, string xmlTypeNamespace, Type type); // 0x002AF398 + public static void RegisterSoapActionForMethodBase(MethodBase mb); // 0x002AF768 + private static string InternalGetSoapAction(MethodBase mb); // 0x002AE040 + public static void RegisterSoapActionForMethodBase(MethodBase mb, string soapAction); // 0x002AF7E8 + private static string EncodeNs(string ns); // 0x002ACDC4 + private static string DecodeNs(string ns); // 0x002AD3C4 +} + +// Namespace: +private class TypeInfo // TypeDefIndex: 1122 +{ + // Fields + public Hashtable Attributes; // 0x08 + public Hashtable Elements; // 0x0C + + // Methods + public void .ctor(); // 0x002AF760 +} + +// Namespace: System.Runtime.Remoting +public class TypeEntry // TypeDefIndex: 1123 +{ + // Fields + private string assembly_name; // 0x08 + private string type_name; // 0x0C + + // Properties + public string AssemblyName { get; set; } // 0x002AF9C4 0x002AF9CC + public string TypeName { get; set; } // 0x002AF9D4 0x002AF9DC + + // Methods + protected void .ctor(); // 0x002AF9BC +} + +// Namespace: System.Runtime.Remoting +[Serializable] +internal class TypeInfo : IRemotingTypeInfo // TypeDefIndex: 1124 +{ + // Fields + private string serverType; // 0x08 + private string[] serverHierarchy; // 0x0C + private string[] interfacesImplemented; // 0x10 + + // Properties + public string TypeName { get; set; } // 0x002AF9E4 0x002AF9EC + + // Methods + public void .ctor(Type type); // 0x0029A0BC + public bool CanCastTo(Type fromType, object o); // 0x002AF9F4 +} + +// Namespace: System.Runtime.Remoting +public class WellKnownClientTypeEntry : TypeEntry // TypeDefIndex: 1125 +{ + // Fields + private Type obj_type; // 0x10 + private string obj_url; // 0x14 + private string app_url; // 0x18 + + // Properties + public string ApplicationUrl { get; set; } // 0x002AFF58 0x002AFF60 + public Type ObjectType { get; } // 0x002AFF68 + public string ObjectUrl { get; } // 0x002AFF70 + + // Methods + public void .ctor(Type type, string objectUrl); // 0x002A34C4 + public void .ctor(string typeName, string assemblyName, string objectUrl); // 0x002AFDF4 + public override string ToString(); // 0x002AFF78 +} + +// Namespace: System.Runtime.Remoting +[Serializable] +public enum WellKnownObjectMode // TypeDefIndex: 1126 +{ + Singleton = 1, + SingleCall = 2 +} + +// Namespace: System.Runtime.Remoting +public class WellKnownServiceTypeEntry : TypeEntry // TypeDefIndex: 1127 +{ + // Fields + private Type obj_type; // 0x10 + private string obj_uri; // 0x14 + private WellKnownObjectMode obj_mode; // 0x18 + + // Properties + public IContextAttribute[] ContextAttributes { get; set; } // 0x002B01CC 0x002B01D4 + public WellKnownObjectMode Mode { get; } // 0x002B01D8 + public Type ObjectType { get; } // 0x002B01E0 + public string ObjectUri { get; } // 0x002B01E8 + + // Methods + public void .ctor(Type type, string objectUri, WellKnownObjectMode mode); // 0x002A3978 + public void .ctor(string typeName, string assemblyName, string objectUri, WellKnownObjectMode mode); // 0x002B0064 + public override string ToString(); // 0x002B01F0 +} + +// Namespace: System.Runtime.Serialization.Formatters.Binary +internal class BinaryCommon // TypeDefIndex: 1128 +{ + // Fields + public static byte[] BinaryHeader; // 0x00 + private static Type[] _typeCodesToType; // 0x04 + private static byte[] _typeCodeMap; // 0x08 + public static bool UseReflectionSerialization; // 0x0C + + // Methods + public void .ctor(); // 0x002B379C + private static void .cctor(); // 0x002B37A4 + public static bool IsPrimitive(Type type); // 0x002B4744 + public static byte GetTypeCode(Type type); // 0x002B4904 + public static Type GetTypeFromCode(int code); // 0x002B4A5C + public static void CheckSerializable(Type type, ISurrogateSelector selector, StreamingContext context); // 0x002B4B20 + public static void SwapBytes(byte[] byteArray, int size, int dataSize); // 0x002B4D10 +} + +// Namespace: System.Runtime.Serialization.Formatters.Binary +internal enum BinaryElement : byte // TypeDefIndex: 1129 +{ + Header = 0, + RefTypeObject = 1, + UntypedRuntimeObject = 2, + UntypedExternalObject = 3, + RuntimeObject = 4, + ExternalObject = 5, + String = 6, + GenericArray = 7, + BoxedPrimitiveTypeValue = 8, + ObjectReference = 9, + NullValue = 10, + End = 11, + Assembly = 12, + ArrayFiller8b = 13, + ArrayFiller32b = 14, + ArrayOfPrimitiveType = 15, + ArrayOfObject = 16, + ArrayOfString = 17, + Method = 18, + _Unknown4 = 19, + _Unknown5 = 20, + MethodCall = 21, + MethodResponse = 22 +} + +// Namespace: System.Runtime.Serialization.Formatters.Binary +internal enum TypeTag : byte // TypeDefIndex: 1130 +{ + PrimitiveType = 0, + String = 1, + ObjectType = 2, + RuntimeType = 3, + GenericType = 4, + ArrayOfObject = 5, + ArrayOfString = 6, + ArrayOfPrimitiveType = 7 +} + +// Namespace: System.Runtime.Serialization.Formatters.Binary +internal enum ArrayStructure : byte // TypeDefIndex: 1131 +{ + SingleDimensional = 0, + Jagged = 1, + MultiDimensional = 2 +} + +// Namespace: System.Runtime.Serialization.Formatters.Binary +internal enum MethodFlags // TypeDefIndex: 1132 +{ + NoArguments = 1, + PrimitiveArguments = 2, + ArgumentsInSimpleArray = 4, + ArgumentsInMultiArray = 8, + FormatMask = 15, + ExcludeLogicalCallContext = 16, + IncludesLogicalCallContext = 64, + IncludesSignature = 128, + GenericArguments = 32768, + NeedsInfoArrayMask = 32972 +} + +// Namespace: System.Runtime.Serialization.Formatters.Binary +internal enum ReturnTypeTag : byte // TypeDefIndex: 1133 +{ + Null = 2, + PrimitiveType = 8, + ObjectType = 16, + Exception = 32 +} + +// Namespace: System.Runtime.Serialization.Formatters.Binary +internal enum BinaryTypeCode : byte // TypeDefIndex: 1134 +{ + Boolean = 1, + Byte = 2, + Char = 3, + Decimal = 5, + Double = 6, + Int16 = 7, + Int32 = 8, + Int64 = 9, + SByte = 10, + Single = 11, + TimeSpan = 12, + DateTime = 13, + UInt16 = 14, + UInt32 = 15, + UInt64 = 16, + Null = 17, + String = 18 +} + +// Namespace: System.Runtime.Serialization.Formatters.Binary +public sealed class BinaryFormatter : IRemotingFormatter, IFormatter // TypeDefIndex: 1135 +{ + // Fields + private FormatterAssemblyStyle assembly_format; // 0x08 + private SerializationBinder binder; // 0x0C + private StreamingContext context; // 0x10 + private ISurrogateSelector surrogate_selector; // 0x18 + private FormatterTypeStyle type_format; // 0x1C + private TypeFilterLevel filter_level; // 0x20 + private static ISurrogateSelector k__BackingField; // 0x00 + + // Properties + public static ISurrogateSelector DefaultSurrogateSelector { get; set; } // 0x001F0738 0x001F079C + public FormatterAssemblyStyle AssemblyFormat { get; set; } // 0x001F0800 0x001F0808 + public SerializationBinder Binder { get; set; } // 0x001F0810 0x001F0818 + public StreamingContext Context { get; set; } // 0x001F0820 0x001F0834 + public ISurrogateSelector SurrogateSelector { get; set; } // 0x001F0840 0x001F0848 + public FormatterTypeStyle TypeFormat { get; set; } // 0x001F0850 0x001F0858 + public TypeFilterLevel FilterLevel { get; set; } // 0x001F0860 0x001F0868 + + // Methods + public void .ctor(); // 0x001F065C + public void .ctor(ISurrogateSelector selector, StreamingContext context); // 0x001F06F4 + public object Deserialize(Stream serializationStream); // 0x001F0870 + public object Deserialize(Stream serializationStream, HeaderHandler handler); // 0x001F0AE0 + private object NoCheckDeserialize(Stream serializationStream, HeaderHandler handler); // 0x001F0878 + public object DeserializeMethodResponse(Stream serializationStream, HeaderHandler handler, IMethodCallMessage methodCallMessage); // 0x001F26D8 + private object NoCheckDeserializeMethodResponse(Stream serializationStream, HeaderHandler handler, IMethodCallMessage methodCallMessage); // 0x001F26F0 + public void Serialize(Stream serializationStream, object graph); // 0x001F28DC + public void Serialize(Stream serializationStream, object graph, Header[] headers); // 0x001F28F8 + public object UnsafeDeserialize(Stream serializationStream, HeaderHandler handler); // 0x001F543C + public object UnsafeDeserializeMethodResponse(Stream serializationStream, HeaderHandler handler, IMethodCallMessage methodCallMessage); // 0x001F5440 + private void WriteBinaryHeader(BinaryWriter writer, bool hasHeaders); // 0x001F2B0C + private void ReadBinaryHeader(BinaryReader reader, out bool hasHeaders); // 0x001F0AEC +} + +// Namespace: System.Runtime.Serialization.Formatters.Binary +internal class CodeGenerator // TypeDefIndex: 1136 +{ + // Fields + private static object monitor; // 0x00 + private static ModuleBuilder _module; // 0x04 + + // Methods + public void .ctor(); // 0x001F5500 + private static void .cctor(); // 0x001F5508 + public static Type GenerateMetadataType(Type type, StreamingContext context); // 0x001F5674 + public static Type GenerateMetadataTypeInternal(Type type, StreamingContext context); // 0x001F57B4 + public static void LoadFromPtr(ILGenerator ig, Type t); // 0x001F8A9C + private static void EmitWriteTypeSpec(ILGenerator gen, Type type, string member); // 0x001F8328 + private static void EmitLoadTypeAssembly(ILGenerator gen, Type type, string member); // 0x001F7B24 + private static void EmitWrite(ILGenerator gen, Type type); // 0x001F7D68 + public static void EmitWritePrimitiveValue(ILGenerator gen, Type type); // 0x001F9624 + public static Type EnumToUnderlying(Type t); // 0x001F9D48 +} + +// Namespace: System.Runtime.Serialization.Formatters.Binary +internal class MessageFormatter // TypeDefIndex: 1137 +{ + // Methods + public void .ctor(); // 0x001FAFC4 + public static void WriteMethodCall(BinaryWriter writer, object obj, Header[] headers, ISurrogateSelector surrogateSelector, StreamingContext context, FormatterAssemblyStyle assemblyFormat, FormatterTypeStyle typeFormat); // 0x001F2BE4 + public static void WriteMethodResponse(BinaryWriter writer, object obj, Header[] headers, ISurrogateSelector surrogateSelector, StreamingContext context, FormatterAssemblyStyle assemblyFormat, FormatterTypeStyle typeFormat); // 0x001F3E08 + public static object ReadMethodCall(BinaryReader reader, bool hasHeaders, HeaderHandler headerHandler, BinaryFormatter formatter); // 0x001FBF28 + public static object ReadMethodCall(BinaryElement elem, BinaryReader reader, bool hasHeaders, HeaderHandler headerHandler, BinaryFormatter formatter); // 0x001F0BE4 + public static object ReadMethodResponse(BinaryReader reader, bool hasHeaders, HeaderHandler headerHandler, IMethodCallMessage methodCallMessage, BinaryFormatter formatter); // 0x001F287C + public static object ReadMethodResponse(BinaryElement elem, BinaryReader reader, bool hasHeaders, HeaderHandler headerHandler, IMethodCallMessage methodCallMessage, BinaryFormatter formatter); // 0x001F18E4 + private static bool AllTypesArePrimitive(object[] objects); // 0x001FB434 + public static bool IsMethodPrimitive(Type type); // 0x001FBDBC + private static object[] GetExtraProperties(IDictionary properties, string[] internalKeys); // 0x001FAFCC + private static bool IsInternalKey(string key, string[] internalKeys); // 0x001FC61C +} + +// Namespace: System.Runtime.Serialization.Formatters.Binary +internal class ObjectReader // TypeDefIndex: 1138 +{ + // Fields + private ISurrogateSelector _surrogateSelector; // 0x08 + private StreamingContext _context; // 0x0C + private SerializationBinder _binder; // 0x14 + private TypeFilterLevel _filterLevel; // 0x18 + private ObjectManager _manager; // 0x1C + private Hashtable _registeredAssemblies; // 0x20 + private Hashtable _typeMetadataCache; // 0x24 + private object _lastObject; // 0x28 + private long _lastObjectID; // 0x30 + private long _rootObjectID; // 0x38 + private byte[] arrayBuffer; // 0x40 + private int ArrayBufferLength; // 0x44 + + // Properties + public object CurrentObject { get; } // 0x001FCF2C + + // Methods + public void .ctor(BinaryFormatter formatter); // 0x001F23E0 + public void ReadObjectGraph(BinaryReader reader, bool readHeaders, out object result, out Header[] headers); // 0x001FC5B8 + public void ReadObjectGraph(BinaryElement elem, BinaryReader reader, bool readHeaders, out object result, out Header[] headers); // 0x001F2530 + private bool ReadNextObject(BinaryElement element, BinaryReader reader); // 0x001FC7D0 + public bool ReadNextObject(BinaryReader reader); // 0x001FC8C0 + private void ReadObject(BinaryElement element, BinaryReader reader, out long objectId, out object value, out SerializationInfo info); // 0x001FC9E0 + private void ReadAssembly(BinaryReader reader); // 0x001FD628 + private void ReadObjectInstance(BinaryReader reader, bool isRuntimeObject, bool hasTypeInfo, out long objectId, out object value, out SerializationInfo info); // 0x001FD124 + private void ReadRefTypeObjectInstance(BinaryReader reader, out long objectId, out object value, out SerializationInfo info); // 0x001FCF34 + private void ReadObjectContent(BinaryReader reader, TypeMetadata metadata, long objectId, out object objectInstance, out SerializationInfo info); // 0x001FF01C + private void RegisterObject(long objectId, object objectInstance, SerializationInfo info, long parentObjectId, MemberInfo parentObjectMemeber, int[] indices); // 0x001FCD8C + private void ReadStringIntance(BinaryReader reader, out long objectId, out object value); // 0x001FD1B0 + private void ReadGenericArray(BinaryReader reader, out long objectId, out object val); // 0x001FD21C + private object ReadBoxedPrimitiveTypeValue(BinaryReader reader); // 0x001FD604 + private void ReadArrayOfPrimitiveType(BinaryReader reader, out long objectId, out object val); // 0x001FD748 + private void BlockRead(BinaryReader reader, Array array, int dataSize); // 0x00200064 + private void ReadArrayOfObject(BinaryReader reader, out long objectId, out object array); // 0x001FE380 + private void ReadArrayOfString(BinaryReader reader, out long objectId, out object array); // 0x001FE440 + private void ReadSimpleArray(BinaryReader reader, Type elementType, out long objectId, out object val); // 0x002002B4 + private TypeMetadata ReadTypeMetadata(BinaryReader reader, bool isRuntimeObject, bool hasTypeInfo); // 0x001FE500 + private void ReadValue(BinaryReader reader, object parentObject, long parentObjectId, SerializationInfo info, Type valueType, string fieldName, MemberInfo memberInfo, int[] indices); // 0x001FF614 + private void SetObjectValue(object parentObject, string fieldName, MemberInfo memberInfo, SerializationInfo info, object value, Type valueType, int[] indices); // 0x00200638 + private void RecordFixup(long parentObjectId, long childObjectId, object parentObject, SerializationInfo info, string fieldName, MemberInfo memberInfo, int[] indices); // 0x00200A08 + private Type GetDeserializationType(long assemblyId, string className); // 0x00200444 + public Type ReadType(BinaryReader reader, TypeTag code); // 0x001FFAE0 + public static object ReadPrimitiveTypeValue(BinaryReader reader, Type type); // 0x001FBF84 +} + +// Namespace: +private class TypeMetadata // TypeDefIndex: 1139 +{ + // Fields + public Type Type; // 0x08 + public Type[] MemberTypes; // 0x0C + public string[] MemberNames; // 0x10 + public MemberInfo[] MemberInfos; // 0x14 + public int FieldCount; // 0x18 + public bool NeedsSerializationInfo; // 0x1C + + // Methods + public void .ctor(); // 0x0020043C +} + +// Namespace: +private class ArrayNullFiller // TypeDefIndex: 1140 +{ + // Fields + public int NullCount; // 0x08 + + // Methods + public void .ctor(int count); // 0x001FD728 +} + +// Namespace: System.Runtime.Serialization.Formatters.Binary +internal abstract class TypeMetadata // TypeDefIndex: 1141 +{ + // Fields + public string TypeAssemblyName; // 0x08 + public string InstanceTypeName; // 0x0C + + // Properties + public abstract bool RequiresTypes { get; } + + // Methods + protected void .ctor(); // 0x001F54F0 + public abstract void WriteAssemblies(ObjectWriter ow, BinaryWriter writer); + public abstract void WriteTypeData(ObjectWriter ow, BinaryWriter writer, bool writeTypes); + public abstract void WriteObjectData(ObjectWriter ow, BinaryWriter writer, object data); + public virtual bool IsCompatible(TypeMetadata other); // 0x002054B0 +} + +// Namespace: System.Runtime.Serialization.Formatters.Binary +internal abstract class ClrTypeMetadata : TypeMetadata // TypeDefIndex: 1142 +{ + // Fields + public Type InstanceType; // 0x10 + + // Properties + public override bool RequiresTypes { get; } // 0x001F54F8 + + // Methods + public void .ctor(Type instanceType); // 0x001F5458 +} + +// Namespace: System.Runtime.Serialization.Formatters.Binary +internal class SerializableTypeMetadata : TypeMetadata // TypeDefIndex: 1143 +{ + // Fields + private Type[] types; // 0x10 + private string[] names; // 0x14 + + // Properties + public override bool RequiresTypes { get; } // 0x002054A8 + + // Methods + public void .ctor(Type itype, SerializationInfo info); // 0x0020251C + public override bool IsCompatible(TypeMetadata other); // 0x00204DA0 + public override void WriteAssemblies(ObjectWriter ow, BinaryWriter writer); // 0x00205074 + public override void WriteTypeData(ObjectWriter ow, BinaryWriter writer, bool writeTypes); // 0x00205168 + public override void WriteObjectData(ObjectWriter ow, BinaryWriter writer, object data); // 0x00205358 +} + +// Namespace: System.Runtime.Serialization.Formatters.Binary +internal class MemberTypeMetadata : ClrTypeMetadata // TypeDefIndex: 1144 +{ + // Fields + private MemberInfo[] members; // 0x14 + + // Methods + public void .ctor(Type type, StreamingContext context); // 0x001FA1D0 + public override void WriteAssemblies(ObjectWriter ow, BinaryWriter writer); // 0x001FA208 + public override void WriteTypeData(ObjectWriter ow, BinaryWriter writer, bool writeTypes); // 0x001FA3EC + public override void WriteObjectData(ObjectWriter ow, BinaryWriter writer, object data); // 0x001FAAC4 +} + +// Namespace: System.Runtime.Serialization.Formatters.Binary +internal class ObjectWriter // TypeDefIndex: 1145 +{ + // Fields + private ObjectIDGenerator _idGenerator; // 0x08 + private Hashtable _cachedMetadata; // 0x0C + private Queue _pendingObjects; // 0x10 + private Hashtable _assemblyCache; // 0x14 + private static Hashtable _cachedTypes; // 0x00 + internal static Assembly CorlibAssembly; // 0x04 + internal static string CorlibAssemblyName; // 0x08 + private ISurrogateSelector _surrogateSelector; // 0x18 + private StreamingContext _context; // 0x1C + private FormatterAssemblyStyle _assemblyFormat; // 0x24 + private FormatterTypeStyle _typeFormat; // 0x28 + private byte[] arrayBuffer; // 0x2C + private int ArrayBufferLength; // 0x30 + private SerializationObjectManager _manager; // 0x34 + + // Methods + public void .ctor(ISurrogateSelector surrogateSelector, StreamingContext context, FormatterAssemblyStyle assemblyFormat, FormatterTypeStyle typeFormat); // 0x001F51A8 + private static void .cctor(); // 0x00200F74 + public void WriteObjectGraph(BinaryWriter writer, object obj, Header[] headers); // 0x001F52E0 + public void QueueObject(object obj); // 0x002010FC + public void WriteQueuedObjects(BinaryWriter writer); // 0x00201138 + public void WriteObjectInstance(BinaryWriter writer, object obj, bool isValueObject); // 0x0020121C + public static void WriteSerializationEnd(BinaryWriter writer); // 0x002011C4 + private void WriteObject(BinaryWriter writer, long id, object obj); // 0x0020169C + private void GetObjectData(object obj, out TypeMetadata metadata, out object data); // 0x00201A80 + private TypeMetadata CreateMemberTypeMetadata(Type type); // 0x00202A74 + private void WriteArray(BinaryWriter writer, long id, Array array); // 0x0020142C + private void WriteGenericArray(BinaryWriter writer, long id, Array array); // 0x00203D00 + private void WriteObjectArray(BinaryWriter writer, long id, Array array); // 0x00202BEC + private void WriteStringArray(BinaryWriter writer, long id, Array array); // 0x00202D2C + private void WritePrimitiveTypeArray(BinaryWriter writer, long id, Array array); // 0x00202E6C + private void BlockWrite(BinaryWriter writer, Array array, int dataSize); // 0x00204580 + private void WriteSingleDimensionArrayElements(BinaryWriter writer, Array array, Type elementType); // 0x0020425C + private void WriteNullFiller(BinaryWriter writer, int numNulls); // 0x002047B4 + private void WriteObjectReference(BinaryWriter writer, long id); // 0x00204898 + public void WriteValue(BinaryWriter writer, Type valueType, object val); // 0x001FACA8 + private void WriteString(BinaryWriter writer, long id, string str); // 0x00201388 + public int WriteAssembly(BinaryWriter writer, Assembly assembly); // 0x001FA3A0 + public int WriteAssemblyName(BinaryWriter writer, string assembly); // 0x00202334 + public int GetAssemblyId(Assembly assembly); // 0x00204AC4 + public int GetAssemblyNameId(string assembly); // 0x00204B08 + private int RegisterAssembly(string assembly, out bool firstTime); // 0x002048FC + public static void WritePrimitiveValue(BinaryWriter writer, object value); // 0x001FB4B4 + public static void WriteTypeCode(BinaryWriter writer, Type type); // 0x001FA6FC + public static TypeTag GetTypeTag(Type type); // 0x001F7F40 + public void WriteTypeSpec(BinaryWriter writer, Type type); // 0x001FA7AC +} + +// Namespace: +private class MetadataReference // TypeDefIndex: 1146 +{ + // Fields + public TypeMetadata Metadata; // 0x08 + public long ObjectID; // 0x10 + + // Methods + public void .ctor(TypeMetadata metadata, long id); // 0x00202308 +} + +// Namespace: System.Runtime.Serialization.Formatters +[Serializable] +public enum FormatterAssemblyStyle // TypeDefIndex: 1147 +{ + Simple = 0, + Full = 1 +} + +// Namespace: System.Runtime.Serialization.Formatters +[Serializable] +public enum FormatterTypeStyle // TypeDefIndex: 1148 +{ + TypesWhenNeeded = 0, + TypesAlways = 1, + XsdString = 2 +} + +// Namespace: System.Runtime.Serialization.Formatters +public interface IFieldInfo // TypeDefIndex: 1149 +{ + // Properties + string[] FieldNames { get; set; } + Type[] FieldTypes { get; set; } + +} + +// Namespace: System.Runtime.Serialization.Formatters +public interface ISoapMessage // TypeDefIndex: 1150 +{ + // Properties + Header[] Headers { get; set; } + string MethodName { get; set; } + string[] ParamNames { get; set; } + Type[] ParamTypes { get; set; } + object[] ParamValues { get; set; } + string XmlNameSpace { get; set; } + +} + +// Namespace: System.Runtime.Serialization.Formatters +public sealed class InternalRM // TypeDefIndex: 1151 +{ + // Methods + public void .ctor(); // 0x002054B8 + public static void InfoSoap(object[] messages); // 0x002054C0 + public static bool SoapCheckEnabled(); // 0x00205548 +} + +// Namespace: System.Runtime.Serialization.Formatters +public sealed class InternalST // TypeDefIndex: 1152 +{ + // Methods + private void .ctor(); // 0x002055D0 + public static void InfoSoap(object[] messages); // 0x002055D8 + public static Assembly LoadAssemblyFromString(string assemblyString); // 0x00205660 + public static void SerializationSetValue(FieldInfo fi, object target, object value); // 0x002056E8 + public static void Soap(object[] messages); // 0x00205770 + public static void SoapAssert(bool condition, string message); // 0x002057F8 + public static bool SoapCheckEnabled(); // 0x00205880 +} + +// Namespace: System.Runtime.Serialization.Formatters +[Serializable] +public sealed class ServerFault // TypeDefIndex: 1153 +{ + // Fields + private string exceptionType; // 0x08 + private string message; // 0x0C + private string stackTrace; // 0x10 + private Exception exception; // 0x14 + + // Properties + public string ExceptionType { get; set; } // 0x00205938 0x00205940 + public string ExceptionMessage { get; set; } // 0x00205948 0x00205950 + public string StackTrace { get; set; } // 0x00205958 0x00205960 + + // Methods + public void .ctor(string exceptionType, string message, string stackTrace); // 0x00205908 +} + +// Namespace: System.Runtime.Serialization.Formatters +[Serializable] +public sealed class SoapFault : ISerializable // TypeDefIndex: 1154 +{ + // Fields + private string code; // 0x08 + private string actor; // 0x0C + private string faultString; // 0x10 + private object detail; // 0x14 + + // Properties + public object Detail { get; set; } // 0x00205F50 0x00205F58 + public string FaultActor { get; set; } // 0x00205F60 0x00205F68 + public string FaultCode { get; set; } // 0x00205F70 0x00205F78 + public string FaultString { get; set; } // 0x00205F80 0x00205F88 + + // Methods + public void .ctor(); // 0x00205968 + private void .ctor(SerializationInfo info, StreamingContext context); // 0x00205970 + public void .ctor(string faultCode, string faultString, string faultActor, ServerFault serverFault); // 0x00205F18 + public void GetObjectData(SerializationInfo info, StreamingContext context); // 0x00205F90 +} + +// Namespace: System.Runtime.Serialization.Formatters +[Serializable] +public class SoapMessage : ISoapMessage // TypeDefIndex: 1155 +{ + // Fields + private Header[] headers; // 0x08 + private string methodName; // 0x0C + private string[] paramNames; // 0x10 + private Type[] paramTypes; // 0x14 + private object[] paramValues; // 0x18 + private string xmlNameSpace; // 0x1C + + // Properties + public Header[] Headers { get; set; } // 0x00206110 0x00206118 + public string MethodName { get; set; } // 0x00206120 0x00206128 + public string[] ParamNames { get; set; } // 0x00206130 0x00206138 + public Type[] ParamTypes { get; set; } // 0x00206140 0x00206148 + public object[] ParamValues { get; set; } // 0x00206150 0x00206158 + public string XmlNameSpace { get; set; } // 0x00206160 0x00206168 + + // Methods + public void .ctor(); // 0x00206108 +} + +// Namespace: System.Runtime.Serialization.Formatters +public enum TypeFilterLevel // TypeDefIndex: 1156 +{ + Low = 2, + Full = 3 +} + +// Namespace: System.Runtime.Serialization +[Serializable] +public abstract class Formatter : IFormatter // TypeDefIndex: 1157 +{ + // Fields + protected ObjectIDGenerator m_idGenerator; // 0x08 + protected Queue m_objectQueue; // 0x0C + + // Properties + public abstract SerializationBinder Binder { get; set; } + public abstract StreamingContext Context { get; set; } + public abstract ISurrogateSelector SurrogateSelector { get; set; } + + // Methods + protected void .ctor(); // 0x002B09BC + public abstract object Deserialize(Stream serializationStream); + protected virtual object GetNext(out long objID); // 0x002B0A5C + protected virtual long Schedule(object obj); // 0x002B0B28 + public abstract void Serialize(Stream serializationStream, object graph); + protected abstract void WriteArray(object obj, string name, Type memberType); + protected abstract void WriteBoolean(bool val, string name); + protected abstract void WriteByte(byte val, string name); + protected abstract void WriteChar(char val, string name); + protected abstract void WriteDateTime(DateTime val, string name); + protected abstract void WriteDecimal(Decimal val, string name); + protected abstract void WriteDouble(double val, string name); + protected abstract void WriteInt16(short val, string name); + protected abstract void WriteInt32(int val, string name); + protected abstract void WriteInt64(long val, string name); + protected virtual void WriteMember(string memberName, object data); // 0x002B0BD8 + protected abstract void WriteObjectRef(object obj, string name, Type memberType); + protected abstract void WriteSByte(sbyte val, string name); + protected abstract void WriteSingle(float val, string name); + protected abstract void WriteTimeSpan(TimeSpan val, string name); + protected abstract void WriteUInt16(ushort val, string name); + protected abstract void WriteUInt32(uint val, string name); + protected abstract void WriteUInt64(ulong val, string name); + protected abstract void WriteValueType(object obj, string name, Type memberType); +} + +// Namespace: System.Runtime.Serialization +public class FormatterConverter : IFormatterConverter // TypeDefIndex: 1158 +{ + // Methods + public void .ctor(); // 0x002B1728 + public object Convert(object value, Type type); // 0x002B1730 + public object Convert(object value, TypeCode typeCode); // 0x002B17BC + public bool ToBoolean(object value); // 0x002B1848 + public byte ToByte(object value); // 0x002B192C + public char ToChar(object value); // 0x002B1A10 + public DateTime ToDateTime(object value); // 0x002B1AF4 + public Decimal ToDecimal(object value); // 0x002B1BE0 + public double ToDouble(object value); // 0x002B1CCC + public short ToInt16(object value); // 0x002B1DB0 + public int ToInt32(object value); // 0x002B1E94 + public long ToInt64(object value); // 0x002B1F78 + public float ToSingle(object value); // 0x002B205C + public string ToString(object value); // 0x002B2140 + public sbyte ToSByte(object value); // 0x002B2224 + public ushort ToUInt16(object value); // 0x002B2308 + public uint ToUInt32(object value); // 0x002B23EC + public ulong ToUInt64(object value); // 0x002B24D0 +} + +// Namespace: System.Runtime.Serialization +public sealed class FormatterServices // TypeDefIndex: 1159 +{ + // Fields + private const BindingFlags fieldFlags = 54; // 0x00 + + // Methods + private void .ctor(); // 0x002B25B4 + public static object[] GetObjectData(object obj, MemberInfo[] members); // 0x002B25BC + public static MemberInfo[] GetSerializableMembers(Type type); // 0x002B2964 + public static MemberInfo[] GetSerializableMembers(Type type, StreamingContext context); // 0x002B29A0 + private static void GetFields(Type reflectedType, Type type, ArrayList fields); // 0x002B2BEC + public static Type GetTypeFromAssembly(Assembly assem, string name); // 0x002B2E2C + public static object GetUninitializedObject(Type type); // 0x002B2F40 + public static object PopulateObjectMembers(object obj, MemberInfo[] members, object[] data); // 0x002B308C + public static void CheckTypeSecurity(Type t, TypeFilterLevel securityLevel); // 0x002B3490 + private static void CheckNotAssignable(Type basetype, Type type); // 0x002B3598 + public static object GetSafeUninitializedObject(Type type); // 0x002B3798 +} + +// Namespace: System.Runtime.Serialization +public interface IDeserializationCallback // TypeDefIndex: 1160 +{ + // Methods + void OnDeserialization(object sender); +} + +// Namespace: System.Runtime.Serialization +public interface IFormatter // TypeDefIndex: 1161 +{ + // Properties + SerializationBinder Binder { get; set; } + StreamingContext Context { get; set; } + ISurrogateSelector SurrogateSelector { get; set; } + + // Methods + object Deserialize(Stream serializationStream); + void Serialize(Stream serializationStream, object graph); +} + +// Namespace: System.Runtime.Serialization +public interface IFormatterConverter // TypeDefIndex: 1162 +{ + // Methods + object Convert(object value, Type type); + object Convert(object value, TypeCode typeCode); + bool ToBoolean(object value); + byte ToByte(object value); + char ToChar(object value); + DateTime ToDateTime(object value); + Decimal ToDecimal(object value); + double ToDouble(object value); + short ToInt16(object value); + int ToInt32(object value); + long ToInt64(object value); + sbyte ToSByte(object value); + float ToSingle(object value); + string ToString(object value); + ushort ToUInt16(object value); + uint ToUInt32(object value); + ulong ToUInt64(object value); +} + +// Namespace: System.Runtime.Serialization +public interface IObjectReference // TypeDefIndex: 1163 +{ + // Methods + object GetRealObject(StreamingContext context); +} + +// Namespace: System.Runtime.Serialization +public interface ISerializationSurrogate // TypeDefIndex: 1164 +{ + // Methods + void GetObjectData(object obj, SerializationInfo info, StreamingContext context); + object SetObjectData(object obj, SerializationInfo info, StreamingContext context, ISurrogateSelector selector); +} + +// Namespace: System.Runtime.Serialization +public interface ISurrogateSelector // TypeDefIndex: 1165 +{ + // Methods + void ChainSelector(ISurrogateSelector selector); + ISurrogateSelector GetNextSelector(); + ISerializationSurrogate GetSurrogate(Type type, StreamingContext context, out ISurrogateSelector selector); +} + +// Namespace: System.Runtime.Serialization +[Serializable] +public class ObjectIDGenerator // TypeDefIndex: 1166 +{ + // Fields + private Hashtable table; // 0x08 + private long current; // 0x10 + private static InstanceComparer comparer; // 0x00 + + // Properties + internal long NextId { get; } // 0x00201364 + + // Methods + public void .ctor(); // 0x00200E10 + private static void .cctor(); // 0x002062FC + public virtual long GetId(object obj, out bool firstTime); // 0x00206384 + public virtual long HasId(object obj, out bool firstTime); // 0x00206524 +} + +// Namespace: +private class InstanceComparer : IComparer, IHashCodeProvider // TypeDefIndex: 1167 +{ + // Methods + public void .ctor(); // 0x0020637C + private int System.Collections.IComparer.Compare(object o1, object o2); // 0x0020665C + private int System.Collections.IHashCodeProvider.GetHashCode(object o); // 0x002066F8 +} + +// Namespace: System.Runtime.Serialization +public class ObjectManager // TypeDefIndex: 1168 +{ + // Fields + private ObjectRecord _objectRecordChain; // 0x08 + private ObjectRecord _lastObjectRecord; // 0x0C + private ArrayList _deserializedRecords; // 0x10 + private ArrayList _onDeserializedCallbackRecords; // 0x14 + private Hashtable _objectRecords; // 0x18 + private bool _finalFixup; // 0x1C + private ISurrogateSelector _selector; // 0x20 + private StreamingContext _context; // 0x24 + private int _registeredObjectsCount; // 0x2C + + // Methods + public void .ctor(ISurrogateSelector selector, StreamingContext context); // 0x001FC700 + public virtual void DoFixups(); // 0x00206704 + internal ObjectRecord GetObjectRecord(long objectID); // 0x00207A78 + public virtual object GetObject(long objectID); // 0x00207DAC + public virtual void RaiseDeserializationEvent(); // 0x00207F24 + public void RaiseOnDeserializingEvent(object obj); // 0x001FF368 + private void RaiseOnDeserializedEvent(object obj); // 0x00208194 + private void AddFixup(BaseFixupRecord record); // 0x002083B8 + public virtual void RecordArrayElementFixup(long arrayToBeFixed, int index, long objectRequired); // 0x00208470 + public virtual void RecordArrayElementFixup(long arrayToBeFixed, int[] indices, long objectRequired); // 0x00208610 + public virtual void RecordDelayedFixup(long objectToBeFixed, string memberName, long objectRequired); // 0x002087F4 + public virtual void RecordFixup(long objectToBeFixed, MemberInfo member, long objectRequired); // 0x002089E0 + private void RegisterObjectInternal(object obj, ObjectRecord record); // 0x00208BCC + public virtual void RegisterObject(object obj, long objectID); // 0x00208F98 + public void RegisterObject(object obj, long objectID, SerializationInfo info); // 0x002090E8 + public void RegisterObject(object obj, long objectID, SerializationInfo info, long idOfContainingObj, MemberInfo member); // 0x00209254 + public void RegisterObject(object obj, long objectID, SerializationInfo info, long idOfContainingObj, MemberInfo member, int[] arrayIndex); // 0x001FF904 +} + +// Namespace: System.Runtime.Serialization +internal abstract class BaseFixupRecord // TypeDefIndex: 1169 +{ + // Fields + protected internal ObjectRecord ObjectToBeFixed; // 0x08 + protected internal ObjectRecord ObjectRequired; // 0x0C + public BaseFixupRecord NextSameContainer; // 0x10 + public BaseFixupRecord NextSameRequired; // 0x14 + + // Methods + public void .ctor(ObjectRecord objectToBeFixed, ObjectRecord objectRequired); // 0x002B04A4 + public bool DoFixup(ObjectManager manager, bool strict); // 0x002B05C0 + protected abstract void FixupImpl(ObjectManager manager); +} + +// Namespace: System.Runtime.Serialization +internal class ArrayFixupRecord : BaseFixupRecord // TypeDefIndex: 1170 +{ + // Fields + private int _index; // 0x18 + + // Methods + public void .ctor(ObjectRecord objectToBeFixed, int index, ObjectRecord objectRequired); // 0x002B0474 + protected override void FixupImpl(ObjectManager manager); // 0x002B04CC +} + +// Namespace: System.Runtime.Serialization +internal class MultiArrayFixupRecord : BaseFixupRecord // TypeDefIndex: 1171 +{ + // Fields + private int[] _indices; // 0x18 + + // Methods + public void .ctor(ObjectRecord objectToBeFixed, int[] indices, ObjectRecord objectRequired); // 0x00206170 + protected override void FixupImpl(ObjectManager manager); // 0x00206194 +} + +// Namespace: System.Runtime.Serialization +internal class FixupRecord : BaseFixupRecord // TypeDefIndex: 1172 +{ + // Fields + public MemberInfo _member; // 0x18 + + // Methods + public void .ctor(ObjectRecord objectToBeFixed, MemberInfo member, ObjectRecord objectRequired); // 0x002B0928 + protected override void FixupImpl(ObjectManager manager); // 0x002B0958 +} + +// Namespace: System.Runtime.Serialization +internal class DelayedFixupRecord : BaseFixupRecord // TypeDefIndex: 1173 +{ + // Fields + public string _memberName; // 0x18 + + // Methods + public void .ctor(ObjectRecord objectToBeFixed, string memberName, ObjectRecord objectRequired); // 0x002B0894 + protected override void FixupImpl(ObjectManager manager); // 0x002B08C4 +} + +// Namespace: System.Runtime.Serialization +internal enum ObjectRecordStatus : byte // TypeDefIndex: 1174 +{ + Unregistered = 0, + ReferenceUnsolved = 1, + ReferenceSolvingDelayed = 2, + ReferenceSolved = 3 +} + +// Namespace: System.Runtime.Serialization +internal class ObjectRecord // TypeDefIndex: 1175 +{ + // Fields + public ObjectRecordStatus Status; // 0x08 + public object OriginalObject; // 0x0C + public object ObjectInstance; // 0x10 + public long ObjectID; // 0x18 + public SerializationInfo Info; // 0x20 + public long IdOfContainingObj; // 0x28 + public ISerializationSurrogate Surrogate; // 0x30 + public ISurrogateSelector SurrogateSelector; // 0x34 + public MemberInfo Member; // 0x38 + public int[] ArrayIndex; // 0x3C + public BaseFixupRecord FixupChainAsContainer; // 0x40 + public BaseFixupRecord FixupChainAsRequired; // 0x44 + public ObjectRecord Next; // 0x48 + + // Properties + public bool IsInstanceReady { get; } // 0x002095BC + public bool IsUnsolvedObjectReference { get; } // 0x00206B90 + public bool IsRegistered { get; } // 0x00207D9C + public bool HasPendingFixups { get; } // 0x00209644 + + // Methods + public void .ctor(); // 0x00207D94 + public void SetMemberValue(ObjectManager manager, MemberInfo member, object value); // 0x00209290 + public void SetArrayValue(ObjectManager manager, object value, int[] indices); // 0x002061EC + public void SetMemberValue(ObjectManager manager, string memberName, object value); // 0x002094CC + public bool DoFixups(bool asContainer, ObjectManager manager, bool strict); // 0x00206BA4 + public void RemoveFixup(BaseFixupRecord fixupToRemove, bool asContainer); // 0x002096BC + private void UnchainFixup(BaseFixupRecord fixup, BaseFixupRecord prevFixup, bool asContainer); // 0x00209654 + public void ChainFixup(BaseFixupRecord fixup, bool asContainer); // 0x00208418 + public bool LoadData(ObjectManager manager, ISurrogateSelector selector, StreamingContext context); // 0x00206C9C +} + +// Namespace: System.Runtime.Serialization +public sealed class OnDeserializedAttribute : Attribute // TypeDefIndex: 1176 +{ + // Methods + public void .ctor(); // 0x00209724 +} + +// Namespace: System.Runtime.Serialization +public sealed class OnDeserializingAttribute : Attribute // TypeDefIndex: 1177 +{ + // Methods + public void .ctor(); // 0x0020972C +} + +// Namespace: System.Runtime.Serialization +public sealed class OnSerializedAttribute : Attribute // TypeDefIndex: 1178 +{ + // Methods + public void .ctor(); // 0x00209734 +} + +// Namespace: System.Runtime.Serialization +public sealed class OnSerializingAttribute : Attribute // TypeDefIndex: 1179 +{ + // Methods + public void .ctor(); // 0x0020973C +} + +// Namespace: System.Runtime.Serialization +public sealed class OptionalFieldAttribute : Attribute // TypeDefIndex: 1180 +{ + // Fields + private int version_added; // 0x08 + + // Properties + public int VersionAdded { get; set; } // 0x0020974C 0x00209754 + + // Methods + public void .ctor(); // 0x00209744 +} + +// Namespace: System.Runtime.Serialization +[Serializable] +public abstract class SerializationBinder // TypeDefIndex: 1181 +{ + // Methods + protected void .ctor(); // 0x0020975C + public abstract Type BindToType(string assemblyName, string typeName); +} + +// Namespace: System.Runtime.Serialization +internal sealed class SerializationCallbacks // TypeDefIndex: 1182 +{ + // Fields + private const BindingFlags DefaultBindingFlags = 54; // 0x00 + private readonly ArrayList onSerializingList; // 0x08 + private readonly ArrayList onSerializedList; // 0x0C + private readonly ArrayList onDeserializingList; // 0x10 + private readonly ArrayList onDeserializedList; // 0x14 + private static Hashtable cache; // 0x00 + private static object cache_lock; // 0x04 + + // Properties + public bool HasSerializingCallbacks { get; } // 0x00209C78 + public bool HasSerializedCallbacks { get; } // 0x00209C88 + public bool HasDeserializingCallbacks { get; } // 0x00209C98 + public bool HasDeserializedCallbacks { get; } // 0x00207A68 + + // Methods + public void .ctor(Type type); // 0x00209764 + private static void .cctor(); // 0x00209BCC + private static ArrayList GetMethodsByAttribute(Type type, Type attr); // 0x002098C0 + private static void Invoke(ArrayList list, object target, StreamingContext context); // 0x00209CA8 + public void RaiseOnSerializing(object target, StreamingContext contex); // 0x0020A2C0 + public void RaiseOnSerialized(object target, StreamingContext contex); // 0x0020A364 + public void RaiseOnDeserializing(object target, StreamingContext contex); // 0x00208270 + public void RaiseOnDeserialized(object target, StreamingContext contex); // 0x00208314 + public static SerializationCallbacks GetSerializationCallbacks(Type t); // 0x002076F4 +} + +// Namespace: +public delegate void CallbackHandler(StreamingContext context); // TypeDefIndex: 1183; 0x0020A094 + +// Namespace: System.Runtime.Serialization +public struct SerializationEntry // TypeDefIndex: 1184 +{ + // Fields + private string name; // 0x08 + private Type objectType; // 0x0C + private object value; // 0x10 + + // Properties + public string Name { get; } // 0x0008BC10 + public Type ObjectType { get; } // 0x0008BC18 + public object Value { get; } // 0x0008BC20 + + // Methods + internal void .ctor(string name, Type type, object value); // 0x0008BC04 +} + +// Namespace: System.Runtime.Serialization +[Serializable] +public class SerializationException : SystemException // TypeDefIndex: 1185 +{ + // Methods + public void .ctor(); // 0x0020A4E8 + public void .ctor(string message); // 0x001F0AE4 + public void .ctor(string message, Exception innerException); // 0x0020A550 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x0020A558 +} + +// Namespace: System.Runtime.Serialization +public sealed class SerializationInfo // TypeDefIndex: 1186 +{ + // Fields + private Hashtable serialized; // 0x08 + private ArrayList values; // 0x0C + private string assemblyName; // 0x10 + private string fullTypeName; // 0x14 + private IFormatterConverter converter; // 0x18 + + // Properties + public string AssemblyName { get; set; } // 0x0020A948 0x0020A950 + public string FullTypeName { get; set; } // 0x0020AA00 0x0020AA08 + public int MemberCount { get; } // 0x00204BD8 + + // Methods + private void .ctor(Type type); // 0x0020A578 + private void .ctor(Type type, SerializationEntry[] data); // 0x0020A6A8 + public void .ctor(Type type, IFormatterConverter converter); // 0x001FF444 + public void AddValue(string name, object value, Type type); // 0x00200BE4 + public object GetValue(string name, Type type); // 0x00205C04 + public void SetType(Type type); // 0x0020AAB8 + public SerializationInfoEnumerator GetEnumerator(); // 0x00204C0C + public void AddValue(string name, short value); // 0x0020AC04 + public void AddValue(string name, ushort value); // 0x0020ACDC + public void AddValue(string name, int value); // 0x0020ADB4 + public void AddValue(string name, byte value); // 0x0020AE8C + public void AddValue(string name, bool value); // 0x0020AF64 + public void AddValue(string name, char value); // 0x0020B03C + public void AddValue(string name, sbyte value); // 0x0020B114 + public void AddValue(string name, double value); // 0x0020B1EC + public void AddValue(string name, Decimal value); // 0x0020B2CC + public void AddValue(string name, DateTime value); // 0x0020B3BC + public void AddValue(string name, float value); // 0x0020B4AC + public void AddValue(string name, uint value); // 0x0020B58C + public void AddValue(string name, long value); // 0x0020B664 + public void AddValue(string name, ulong value); // 0x0020B744 + public void AddValue(string name, object value); // 0x0020B824 + public bool GetBoolean(string name); // 0x0020B904 + public byte GetByte(string name); // 0x0020BA40 + public char GetChar(string name); // 0x0020BB7C + public DateTime GetDateTime(string name); // 0x0020BCB8 + public Decimal GetDecimal(string name); // 0x0020BDFC + public double GetDouble(string name); // 0x0020BF40 + public short GetInt16(string name); // 0x0020C07C + public int GetInt32(string name); // 0x0020C1B8 + public long GetInt64(string name); // 0x0020C2F4 + public sbyte GetSByte(string name); // 0x0020C430 + public float GetSingle(string name); // 0x0020C56C + public string GetString(string name); // 0x00205AB8 + public ushort GetUInt16(string name); // 0x0020C6A8 + public uint GetUInt32(string name); // 0x0020C7E4 + public ulong GetUInt64(string name); // 0x0020C920 + private SerializationEntry[] get_entries(); // 0x0020CA5C +} + +// Namespace: System.Runtime.Serialization +public sealed class SerializationInfoEnumerator : IEnumerator // TypeDefIndex: 1187 +{ + // Fields + private IEnumerator enumerator; // 0x08 + + // Properties + private object System.Collections.IEnumerator.Current { get; } // 0x0020CD0C + public SerializationEntry Current { get; } // 0x0020CBCC + public string Name { get; } // 0x00204CA4 + public Type ObjectType { get; } // 0x00204C80 + public object Value { get; } // 0x00205484 + + // Methods + internal void .ctor(ArrayList list); // 0x0020ABC0 + public bool MoveNext(); // 0x00204CC8 + public void Reset(); // 0x0020CDE4 +} + +// Namespace: System.Runtime.Serialization +public sealed class SerializationObjectManager // TypeDefIndex: 1188 +{ + // Fields + private readonly StreamingContext context; // 0x08 + private readonly Hashtable seen; // 0x10 + private CallbackHandler callbacks; // 0x14 + + // Events + private event CallbackHandler callbacks { + add; // 0x0020CEBC + remove; // 0x0020CF4C + } + + // Methods + public void .ctor(StreamingContext context); // 0x00200EE8 + public void RegisterObject(object obj); // 0x0020279C + public void RaiseOnSerializedEvent(); // 0x002011FC +} + +// Namespace: +private sealed class c__AnonStorey3 // TypeDefIndex: 1189 +{ + // Fields + internal SerializationCallbacks sc; // 0x08 + internal object obj; // 0x0C + + // Methods + public void .ctor(); // 0x0020CFDC + internal void <>m__2(StreamingContext ctx); // 0x0020CFE4 +} + +// Namespace: System.Runtime.Serialization +[Serializable] +public struct StreamingContext // TypeDefIndex: 1190 +{ + // Fields + private StreamingContextStates state; // 0x08 + private object additional; // 0x0C + + // Properties + public object Context { get; } // 0x0008BCF0 + public StreamingContextStates State { get; } // 0x0008BCF8 + + // Methods + public void .ctor(StreamingContextStates state); // 0x0008BCD4 + public void .ctor(StreamingContextStates state, object additional); // 0x0008BCE4 + public override bool Equals(object obj); // 0x0008BD00 + public override int GetHashCode(); // 0x0008BD08 +} + +// Namespace: System.Runtime.Serialization +[Serializable] +public enum StreamingContextStates // TypeDefIndex: 1191 +{ + CrossProcess = 1, + CrossMachine = 2, + File = 4, + Persistence = 8, + Remoting = 16, + Other = 32, + Clone = 64, + CrossAppDomain = 128, + All = 255 +} + +// Namespace: System.Runtime.Serialization +public class SurrogateSelector : ISurrogateSelector // TypeDefIndex: 1192 +{ + // Fields + private Hashtable Surrogates; // 0x08 + private ISurrogateSelector nextSelector; // 0x0C + + // Methods + public void .ctor(); // 0x0020D0F4 + public virtual void AddSurrogate(Type type, StreamingContext context, ISerializationSurrogate surrogate); // 0x0020D170 + public virtual void ChainSelector(ISurrogateSelector selector); // 0x0020D400 + public virtual ISurrogateSelector GetNextSelector(); // 0x0020D53C + public virtual ISerializationSurrogate GetSurrogate(Type type, StreamingContext context, out ISurrogateSelector selector); // 0x0020D544 + public virtual void RemoveSurrogate(Type type, StreamingContext context); // 0x0020D7D4 +} + +// Namespace: System.Runtime.Versioning +public sealed class ResourceConsumptionAttribute : Attribute // TypeDefIndex: 1193 +{ + // Fields + private ResourceScope resource; // 0x08 + private ResourceScope consumption; // 0x0C + + // Properties + public ResourceScope ConsumptionScope { get; } // 0x0020D9C0 + public ResourceScope ResourceScope { get; } // 0x0020D9C8 + + // Methods + public void .ctor(ResourceScope resourceScope); // 0x0020D974 + public void .ctor(ResourceScope resourceScope, ResourceScope consumptionScope); // 0x0020D998 +} + +// Namespace: System.Runtime.Versioning +public sealed class ResourceExposureAttribute : Attribute // TypeDefIndex: 1194 +{ + // Fields + private ResourceScope exposure; // 0x08 + + // Properties + public ResourceScope ResourceExposureLevel { get; } // 0x0020D9F0 + + // Methods + public void .ctor(ResourceScope exposureLevel); // 0x0020D9D0 +} + +// Namespace: System.Runtime.Versioning +public enum ResourceScope // TypeDefIndex: 1195 +{ + None = 0, + Machine = 1, + Process = 2, + AppDomain = 4, + Library = 8, + Private = 16, + Assembly = 32 +} + +// Namespace: System.Runtime.Versioning +public static class VersioningHelper // TypeDefIndex: 1196 +{ + // Methods + private static int GetDomainId(); // 0x0020D9F8 + private static int GetProcessId(); // 0x0020DA00 + private static string SafeName(string name, bool process, bool appdomain); // 0x0020DA08 + private static string ConvertFromMachine(string name, ResourceScope to, Type type); // 0x0020DDB4 + private static string ConvertFromProcess(string name, ResourceScope to, Type type); // 0x0020DEDC + private static string ConvertFromAppDomain(string name, ResourceScope to, Type type); // 0x0020DFA0 + public static string MakeVersionSafeName(string name, ResourceScope from, ResourceScope to); // 0x0020E094 + public static string MakeVersionSafeName(string name, ResourceScope from, ResourceScope to, Type type); // 0x0020E0AC +} + +// Namespace: System.Runtime +[Serializable] +public enum GCLatencyMode // TypeDefIndex: 1197 +{ + Batch = 0, + Interactive = 1, + LowLatency = 2 +} + +// Namespace: System.Runtime +public static class GCSettings // TypeDefIndex: 1198 +{ + // Properties + public static bool IsServerGC { get; } // 0x0037E2EC + public static GCLatencyMode LatencyMode { get; set; } // 0x0037E2F4 0x0037E2FC + +} + +// Namespace: System.Runtime +public sealed class MemoryFailPoint : CriticalFinalizerObject, IDisposable // TypeDefIndex: 1199 +{ + // Methods + public void .ctor(int sizeInMegabytes); // 0x002C413C + protected override void Finalize(); // 0x002C41D4 + public void Dispose(); // 0x002C41DC +} + +// Namespace: System.Security.AccessControl +public enum AccessControlActions // TypeDefIndex: 1200 +{ + None = 0, + View = 1, + Change = 2 +} + +// Namespace: System.Security.AccessControl +public enum AccessControlModification // TypeDefIndex: 1201 +{ + Add = 0, + Set = 1, + Reset = 2, + Remove = 3, + RemoveAll = 4, + RemoveSpecific = 5 +} + +// Namespace: System.Security.AccessControl +public enum AccessControlSections // TypeDefIndex: 1202 +{ + None = 0, + Audit = 1, + Access = 2, + Owner = 4, + Group = 8, + All = 15 +} + +// Namespace: System.Security.AccessControl +public enum AccessControlType // TypeDefIndex: 1203 +{ + Allow = 0, + Deny = 1 +} + +// Namespace: System.Security.AccessControl +public abstract class AccessRule : AuthorizationRule // TypeDefIndex: 1204 +{ + // Fields + private AccessControlType type; // 0x1C + + // Properties + public AccessControlType AccessControlType { get; } // 0x00210994 + + // Methods + protected void .ctor(IdentityReference identity, int accessMask, bool isInherited, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AccessControlType type); // 0x002106DC +} + +// Namespace: System.Security.AccessControl +public sealed class AceEnumerator : IEnumerator // TypeDefIndex: 1205 +{ + // Fields + private GenericAcl owner; // 0x08 + private int current; // 0x0C + + // Properties + private object System.Collections.IEnumerator.Current { get; } // 0x002109C8 + public GenericAce Current { get; } // 0x002109CC + + // Methods + internal void .ctor(GenericAcl owner); // 0x0021099C + public bool MoveNext(); // 0x00210A18 + public void Reset(); // 0x00210A74 +} + +// Namespace: System.Security.AccessControl +public enum AceFlags : byte // TypeDefIndex: 1206 +{ + None = 0, + ObjectInherit = 1, + ContainerInherit = 2, + NoPropagateInherit = 4, + InheritOnly = 8, + InheritanceFlags = 15, + Inherited = 16, + SuccessfulAccess = 64, + FailedAccess = 128, + AuditFlags = 192 +} + +// Namespace: System.Security.AccessControl +public enum AceQualifier // TypeDefIndex: 1207 +{ + AccessAllowed = 0, + AccessDenied = 1, + SystemAudit = 2, + SystemAlarm = 3 +} + +// Namespace: System.Security.AccessControl +public enum AceType // TypeDefIndex: 1208 +{ + AccessAllowed = 0, + AccessDenied = 1, + SystemAudit = 2, + SystemAlarm = 3, + AccessAllowedCompound = 4, + AccessAllowedObject = 5, + AccessDeniedObject = 6, + SystemAuditObject = 7, + SystemAlarmObject = 8, + AccessAllowedCallback = 9, + AccessDeniedCallback = 10, + AccessAllowedCallbackObject = 11, + AccessDeniedCallbackObject = 12, + SystemAuditCallback = 13, + SystemAlarmCallback = 14, + SystemAuditCallbackObject = 15, + SystemAlarmCallbackObject = 16, + MaxDefinedAceType = 16 +} + +// Namespace: System.Security.AccessControl +public enum AuditFlags // TypeDefIndex: 1209 +{ + None = 0, + Success = 1, + Failure = 2 +} + +// Namespace: System.Security.AccessControl +public abstract class AuditRule : AuthorizationRule // TypeDefIndex: 1210 +{ + // Fields + private AuditFlags auditFlags; // 0x1C + + // Properties + public AuditFlags AuditFlags { get; } // 0x00210BBC + + // Methods + protected void .ctor(IdentityReference identity, int accessMask, bool isInherited, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AuditFlags auditFlags); // 0x00210A80 +} + +// Namespace: System.Security.AccessControl +public abstract class AuthorizationRule // TypeDefIndex: 1211 +{ + // Fields + private IdentityReference identity; // 0x08 + private int accessMask; // 0x0C + private bool isInherited; // 0x10 + private InheritanceFlags inheritanceFlags; // 0x14 + private PropagationFlags propagationFlags; // 0x18 + + // Properties + public IdentityReference IdentityReference { get; } // 0x00210BCC + public InheritanceFlags InheritanceFlags { get; } // 0x00210BD4 + public bool IsInherited { get; } // 0x00210BDC + public PropagationFlags PropagationFlags { get; } // 0x00210BE4 + protected internal int AccessMask { get; } // 0x00210BEC + + // Methods + internal void .ctor(); // 0x00210BC4 + protected internal void .ctor(IdentityReference identity, int accessMask, bool isInherited, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags); // 0x00210864 +} + +// Namespace: System.Security.AccessControl +public sealed class AuthorizationRuleCollection : ReadOnlyCollectionBase // TypeDefIndex: 1212 +{ + // Properties + public AuthorizationRule Item { get; } // 0x00210C3C + + // Methods + private void .ctor(AuthorizationRule[] rules); // 0x00210BF4 + public void CopyTo(AuthorizationRule[] rules, int index); // 0x00210D0C +} + +// Namespace: System.Security.AccessControl +public sealed class CommonAce : QualifiedAce // TypeDefIndex: 1213 +{ + // Properties + public override int BinaryLength { get; } // 0x00210D9C + + // Methods + public void .ctor(AceFlags flags, AceQualifier qualifier, int accessMask, SecurityIdentifier sid, bool isCallback, byte[] opaque); // 0x00210D50 + public override void GetBinaryForm(byte[] binaryForm, int offset); // 0x00210E24 + public static int MaxOpaqueLength(bool isCallback); // 0x00210EAC +} + +// Namespace: System.Security.AccessControl +public abstract class CommonAcl : GenericAcl // TypeDefIndex: 1214 +{ + // Fields + private const int default_capacity = 10; // 0x00 + private bool is_container; // 0x08 + private bool is_ds; // 0x09 + private byte revision; // 0x0A + private List`1 list; // 0x0C + + // Properties + public sealed override int BinaryLength { get; } // 0x0021102C + public sealed override int Count { get; } // 0x002110B4 + public bool IsCanonical { get; } // 0x00211118 + public bool IsContainer { get; } // 0x002111A0 + public bool IsDS { get; } // 0x002111A8 + public sealed override GenericAce Item { get; set; } // 0x002111B0 0x00211230 + public sealed override byte Revision { get; } // 0x002112B8 + + // Methods + internal void .ctor(bool isContainer, bool isDS, byte revision); // 0x00210F34 + internal void .ctor(bool isContainer, bool isDS, byte revision, int capacity); // 0x00210F54 + public sealed override void GetBinaryForm(byte[] binaryForm, int offset); // 0x002112C0 + public void Purge(SecurityIdentifier sid); // 0x00211348 + public void RemoveInheritedAces(); // 0x002113D0 +} + +// Namespace: System.Security.AccessControl +public abstract class CommonObjectSecurity : ObjectSecurity // TypeDefIndex: 1215 +{ + // Fields + private List`1 access_rules; // 0x10 + private List`1 audit_rules; // 0x14 + + // Methods + protected void .ctor(bool isContainer); // 0x00211458 + public AuthorizationRuleCollection GetAccessRules(bool includeExplicit, bool includeInherited, Type targetType); // 0x00211524 + public AuthorizationRuleCollection GetAuditRules(bool includeExplicit, bool includeInherited, Type targetType); // 0x002115AC + protected void AddAccessRule(AccessRule rule); // 0x00211634 + protected bool RemoveAccessRule(AccessRule rule); // 0x002116BC + protected void RemoveAccessRuleAll(AccessRule rule); // 0x00211744 + protected void RemoveAccessRuleSpecific(AccessRule rule); // 0x002117CC + protected void ResetAccessRule(AccessRule rule); // 0x00211854 + protected void SetAccessRule(AccessRule rule); // 0x002118DC + protected override bool ModifyAccess(AccessControlModification modification, AccessRule rule, out bool modified); // 0x00211964 + protected void AddAuditRule(AuditRule rule); // 0x00211BF8 + protected bool RemoveAuditRule(AuditRule rule); // 0x00211C80 + protected void RemoveAuditRuleAll(AuditRule rule); // 0x00211D08 + protected void RemoveAuditRuleSpecific(AuditRule rule); // 0x00211D90 + protected void SetAuditRule(AuditRule rule); // 0x00211E18 + protected override bool ModifyAudit(AccessControlModification modification, AuditRule rule, out bool modified); // 0x00211EA0 +} + +// Namespace: System.Security.AccessControl +public sealed class CommonSecurityDescriptor : GenericSecurityDescriptor // TypeDefIndex: 1216 +{ + // Fields + private bool isContainer; // 0x08 + private bool isDS; // 0x09 + private ControlFlags flags; // 0x0C + private SecurityIdentifier owner; // 0x10 + private SecurityIdentifier group; // 0x14 + private SystemAcl systemAcl; // 0x18 + private DiscretionaryAcl discretionaryAcl; // 0x1C + + // Properties + public override ControlFlags ControlFlags { get; } // 0x0042BDC4 + public DiscretionaryAcl DiscretionaryAcl { get; set; } // 0x0042BDCC 0x0042BDD4 + public override SecurityIdentifier Group { get; set; } // 0x0042BDDC 0x0042BDE4 + public bool IsContainer { get; } // 0x0042BDEC + public bool IsDiscretionaryAclCanonical { get; } // 0x0042BDF4 + public bool IsDS { get; } // 0x0042BE7C + public bool IsSystemAclCanonical { get; } // 0x0042BE84 + public override SecurityIdentifier Owner { get; set; } // 0x0042BF0C 0x0042BF14 + public SystemAcl SystemAcl { get; set; } // 0x0042BF1C 0x0042BF24 + + // Methods + public void .ctor(bool isContainer, bool isDS, RawSecurityDescriptor rawSecurityDescriptor); // 0x0042BB24 + public void .ctor(bool isContainer, bool isDS, string sddlForm); // 0x0042BBC4 + public void .ctor(bool isContainer, bool isDS, byte[] binaryForm, int offset); // 0x0042BC5C + public void .ctor(bool isContainer, bool isDS, ControlFlags flags, SecurityIdentifier owner, SecurityIdentifier group, SystemAcl systemAcl, DiscretionaryAcl discretionaryAcl); // 0x0042BCF4 + public void PurgeAccessControl(SecurityIdentifier sid); // 0x0042BF2C + public void PurgeAudit(SecurityIdentifier sid); // 0x0042BFB4 + public void SetDiscretionaryAclProtection(bool isProtected, bool preserveInheritance); // 0x0042C03C + public void SetSystemAclProtection(bool isProtected, bool preserveInheritance); // 0x0042C0C4 +} + +// Namespace: System.Security.AccessControl +public sealed class CompoundAce : KnownAce // TypeDefIndex: 1217 +{ + // Fields + private CompoundAceType compound_ace_type; // 0x20 + + // Properties + public override int BinaryLength { get; } // 0x0042C1B8 + public CompoundAceType CompoundAceType { get; set; } // 0x0042C240 0x0042C248 + + // Methods + public void .ctor(AceFlags flags, int accessMask, CompoundAceType compoundAceType, SecurityIdentifier sid); // 0x0042C14C + public override void GetBinaryForm(byte[] binaryForm, int offset); // 0x0042C250 +} + +// Namespace: System.Security.AccessControl +public enum CompoundAceType // TypeDefIndex: 1218 +{ + Impersonation = 1 +} + +// Namespace: System.Security.AccessControl +public enum ControlFlags // TypeDefIndex: 1219 +{ + None = 0, + OwnerDefaulted = 1, + GroupDefaulted = 2, + DiscretionaryAclPresent = 4, + DiscretionaryAclDefaulted = 8, + SystemAclPresent = 16, + SystemAclDefaulted = 32, + DiscretionaryAclUntrusted = 64, + ServerSecurity = 128, + DiscretionaryAclAutoInheritRequired = 256, + SystemAclAutoInheritRequired = 512, + DiscretionaryAclAutoInherited = 1024, + SystemAclAutoInherited = 2048, + DiscretionaryAclProtected = 4096, + SystemAclProtected = 8192, + RMControlValid = 16384, + SelfRelative = 32768 +} + +// Namespace: System.Security.AccessControl +public sealed class CryptoKeyAccessRule : AccessRule // TypeDefIndex: 1220 +{ + // Fields + private CryptoKeyRights rights; // 0x20 + + // Properties + public CryptoKeyRights CryptoKeyRights { get; } // 0x0042C3C8 + + // Methods + public void .ctor(IdentityReference identity, CryptoKeyRights cryptoKeyRights, AccessControlType type); // 0x0042C2D8 + public void .ctor(string identity, CryptoKeyRights cryptoKeyRights, AccessControlType type); // 0x0042C31C +} + +// Namespace: System.Security.AccessControl +public sealed class CryptoKeyAuditRule : AuditRule // TypeDefIndex: 1221 +{ + // Fields + private CryptoKeyRights rights; // 0x20 + + // Properties + public CryptoKeyRights CryptoKeyRights { get; } // 0x0042C4BC + + // Methods + public void .ctor(IdentityReference identity, CryptoKeyRights cryptoKeyRights, AuditFlags flags); // 0x0042C3D0 + public void .ctor(string identity, CryptoKeyRights cryptoKeyRights, AuditFlags flags); // 0x0042C410 +} + +// Namespace: System.Security.AccessControl +public enum CryptoKeyRights // TypeDefIndex: 1222 +{ + GenericRead = -2147483648, + ReadData = 1, + WriteData = 2, + ReadExtendedAttributes = 8, + WriteExtendedAttributes = 16, + ReadAttributes = 128, + WriteAttributes = 256, + Delete = 65536, + ReadPermissions = 131072, + ChangePermissions = 262144, + TakeOwnership = 524288, + Synchronize = 1048576, + FullControl = 2032027, + GenericAll = 268435456, + GenericExecute = 536870912, + GenericWrite = 1073741824 +} + +// Namespace: System.Security.AccessControl +public sealed class CryptoKeySecurity : NativeObjectSecurity // TypeDefIndex: 1223 +{ + // Properties + public override Type AccessRightType { get; } // 0x0042C4E8 + public override Type AccessRuleType { get; } // 0x0042C578 + public override Type AuditRuleType { get; } // 0x0042C608 + + // Methods + public void .ctor(); // 0x0042C4C4 + public void .ctor(CommonSecurityDescriptor securityDescriptor); // 0x0042C4DC + public sealed override AccessRule AccessRuleFactory(IdentityReference identityReference, int accessMask, bool isInherited, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AccessControlType type); // 0x0042C698 + public void AddAccessRule(CryptoKeyAccessRule rule); // 0x0042C738 + public bool RemoveAccessRule(CryptoKeyAccessRule rule); // 0x0042C7C0 + public void RemoveAccessRuleAll(CryptoKeyAccessRule rule); // 0x0042C848 + public void RemoveAccessRuleSpecific(CryptoKeyAccessRule rule); // 0x0042C8D0 + public void ResetAccessRule(CryptoKeyAccessRule rule); // 0x0042C958 + public void SetAccessRule(CryptoKeyAccessRule rule); // 0x0042C9E0 + public sealed override AuditRule AuditRuleFactory(IdentityReference identityReference, int accessMask, bool isInherited, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AuditFlags flags); // 0x0042CA68 + public void AddAuditRule(CryptoKeyAuditRule rule); // 0x0042CB08 + public bool RemoveAuditRule(CryptoKeyAuditRule rule); // 0x0042CB90 + public void RemoveAuditRuleAll(CryptoKeyAuditRule rule); // 0x0042CC18 + public void RemoveAuditRuleSpecific(CryptoKeyAuditRule rule); // 0x0042CCA0 + public void SetAuditRule(CryptoKeyAuditRule rule); // 0x0042CD28 +} + +// Namespace: System.Security.AccessControl +public sealed class CustomAce : GenericAce // TypeDefIndex: 1224 +{ + // Fields + private byte[] opaque; // 0x18 + public static readonly int MaxOpaqueLength; // 0x00 + + // Properties + public override int BinaryLength { get; } // 0x0042CFA0 + public int OpaqueLength { get; } // 0x0042D028 + + // Methods + public void .ctor(AceType type, AceFlags flags, byte[] opaque); // 0x0042CDB0 + public override void GetBinaryForm(byte[] binaryForm, int offset); // 0x0042D04C + public byte[] GetOpaque(); // 0x0042D0D4 + public void SetOpaque(byte[] opaque); // 0x0042CE98 +} + +// Namespace: System.Security.AccessControl +public abstract class DirectoryObjectSecurity : ObjectSecurity // TypeDefIndex: 1225 +{ + // Methods + protected void .ctor(); // 0x0042D18C + protected void .ctor(CommonSecurityDescriptor securityDescriptor); // 0x0042D1D4 + public virtual AccessRule AccessRuleFactory(IdentityReference identityReference, int accessMask, bool isInherited, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AccessControlType type, Guid objectType, Guid inheritedObjectType); // 0x0042D2B4 + public virtual AuditRule AuditRuleFactory(IdentityReference identityReference, int accessMask, bool isInherited, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AuditFlags flags, Guid objectType, Guid inheritedObjectType); // 0x0042D33C + public AuthorizationRuleCollection GetAccessRules(bool includeExplicit, bool includeInherited, Type targetType); // 0x0042D3C4 + public AuthorizationRuleCollection GetAuditRules(bool includeExplicit, bool includeInherited, Type targetType); // 0x0042D44C + protected void AddAccessRule(ObjectAccessRule rule); // 0x0042D4D4 + protected void AddAuditRule(ObjectAuditRule rule); // 0x0042D55C + protected override bool ModifyAccess(AccessControlModification modification, AccessRule rule, out bool modified); // 0x0042D5E4 + protected override bool ModifyAudit(AccessControlModification modification, AuditRule rule, out bool modified); // 0x0042D66C + protected bool RemoveAccessRule(ObjectAccessRule rule); // 0x0042D6F4 + protected void RemoveAccessRuleAll(ObjectAccessRule rule); // 0x0042D77C + protected void RemoveAccessRuleSpecific(ObjectAccessRule rule); // 0x0042D804 + protected bool RemoveAuditRule(ObjectAuditRule rule); // 0x0042D88C + protected void RemoveAuditRuleAll(ObjectAuditRule rule); // 0x0042D914 + protected void RemoveAuditRuleSpecific(ObjectAuditRule rule); // 0x0042D99C + protected void ResetAccessRule(ObjectAccessRule rule); // 0x0042DA24 + protected void SetAccessRule(ObjectAccessRule rule); // 0x0042DAAC + protected void SetAuditRule(ObjectAuditRule rule); // 0x0042DB34 +} + +// Namespace: System.Security.AccessControl +public sealed class DirectorySecurity : FileSystemSecurity // TypeDefIndex: 1226 +{ + // Methods + public void .ctor(); // 0x0042DBBC + public void .ctor(string name, AccessControlSections includeSections); // 0x0042DC60 +} + +// Namespace: System.Security.AccessControl +public sealed class DiscretionaryAcl : CommonAcl // TypeDefIndex: 1227 +{ + // Methods + public void .ctor(bool isContainer, bool isDS, int capacity); // 0x0042DD04 + public void .ctor(bool isContainer, bool isDS, RawAcl rawAcl); // 0x0042DDE4 + public void .ctor(bool isContainer, bool isDS, byte revision, int capacity); // 0x0042DDC0 + public void AddAccess(AccessControlType accessType, SecurityIdentifier sid, int accessMask, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags); // 0x0042DE08 + public void AddAccess(AccessControlType accessType, SecurityIdentifier sid, int accessMask, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, ObjectAceFlags objectFlags, Guid objectType, Guid inheritedObjectType); // 0x0042DE90 + public bool RemoveAccess(AccessControlType accessType, SecurityIdentifier sid, int accessMask, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags); // 0x0042DF18 + public bool RemoveAccess(AccessControlType accessType, SecurityIdentifier sid, int accessMask, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, ObjectAceFlags objectFlags, Guid objectType, Guid inheritedObjectType); // 0x0042DFA0 + public void RemoveAccessSpecific(AccessControlType accessType, SecurityIdentifier sid, int accessMask, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags); // 0x0042E028 + public void RemoveAccessSpecific(AccessControlType accessType, SecurityIdentifier sid, int accessMask, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, ObjectAceFlags objectFlags, Guid objectType, Guid inheritedObjectType); // 0x0042E0B0 + public void SetAccess(AccessControlType accessType, SecurityIdentifier sid, int accessMask, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags); // 0x0042E138 + public void SetAccess(AccessControlType accessType, SecurityIdentifier sid, int accessMask, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, ObjectAceFlags objectFlags, Guid objectType, Guid inheritedObjectType); // 0x0042E1C0 +} + +// Namespace: System.Security.AccessControl +public sealed class EventWaitHandleAccessRule : AccessRule // TypeDefIndex: 1228 +{ + // Fields + private EventWaitHandleRights rights; // 0x20 + + // Properties + public EventWaitHandleRights EventWaitHandleRights { get; } // 0x0042E338 + + // Methods + public void .ctor(IdentityReference identity, EventWaitHandleRights eventRights, AccessControlType type); // 0x0042E248 + public void .ctor(string identity, EventWaitHandleRights eventRights, AccessControlType type); // 0x0042E28C +} + +// Namespace: System.Security.AccessControl +public sealed class EventWaitHandleAuditRule : AuditRule // TypeDefIndex: 1229 +{ + // Fields + private EventWaitHandleRights rights; // 0x20 + + // Properties + public EventWaitHandleRights EventWaitHandleRights { get; } // 0x0042E58C + + // Methods + public void .ctor(IdentityReference identity, EventWaitHandleRights eventRights, AuditFlags flags); // 0x0042E340 +} + +// Namespace: System.Security.AccessControl +public enum EventWaitHandleRights // TypeDefIndex: 1230 +{ + Modify = 2, + Delete = 65536, + ReadPermissions = 131072, + ChangePermissions = 262144, + TakeOwnership = 524288, + Synchronize = 1048576, + FullControl = 2031619 +} + +// Namespace: System.Security.AccessControl +public sealed class EventWaitHandleSecurity : NativeObjectSecurity // TypeDefIndex: 1231 +{ + // Properties + public override Type AccessRightType { get; } // 0x0042E628 + public override Type AccessRuleType { get; } // 0x0042E6B8 + public override Type AuditRuleType { get; } // 0x0042E748 + + // Methods + public void .ctor(); // 0x0042E594 + public override AccessRule AccessRuleFactory(IdentityReference identityReference, int accessMask, bool isInherited, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AccessControlType type); // 0x0042E7D8 + public void AddAccessRule(EventWaitHandleAccessRule rule); // 0x0042E878 + public bool RemoveAccessRule(EventWaitHandleAccessRule rule); // 0x0042E900 + public void RemoveAccessRuleAll(EventWaitHandleAccessRule rule); // 0x0042E988 + public void RemoveAccessRuleSpecific(EventWaitHandleAccessRule rule); // 0x0042EA10 + public void ResetAccessRule(EventWaitHandleAccessRule rule); // 0x0042EA98 + public void SetAccessRule(EventWaitHandleAccessRule rule); // 0x0042EB20 + public override AuditRule AuditRuleFactory(IdentityReference identityReference, int accessMask, bool isInherited, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AuditFlags flags); // 0x0042EBA8 + public void AddAuditRule(EventWaitHandleAuditRule rule); // 0x0042EC30 + public bool RemoveAuditRule(EventWaitHandleAuditRule rule); // 0x0042ECB8 + public void RemoveAuditRuleAll(EventWaitHandleAuditRule rule); // 0x0042ED40 + public void RemoveAuditRuleSpecific(EventWaitHandleAuditRule rule); // 0x0042EDC8 + public void SetAuditRule(EventWaitHandleAuditRule rule); // 0x0042EE50 +} + +// Namespace: System.Security.AccessControl +public sealed class FileSecurity : FileSystemSecurity // TypeDefIndex: 1232 +{ + // Methods + public void .ctor(); // 0x0042EED8 + public void .ctor(string fileName, AccessControlSections includeSections); // 0x0042EF74 +} + +// Namespace: System.Security.AccessControl +public sealed class FileSystemAccessRule : AccessRule // TypeDefIndex: 1233 +{ + // Fields + private FileSystemRights rights; // 0x20 + + // Properties + public FileSystemRights FileSystemRights { get; } // 0x0042F1F4 + + // Methods + public void .ctor(IdentityReference identity, FileSystemRights fileSystemRights, AccessControlType type); // 0x0042F010 + public void .ctor(string identity, FileSystemRights fileSystemRights, AccessControlType type); // 0x0042F094 + public void .ctor(IdentityReference identity, FileSystemRights fileSystemRights, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AccessControlType type); // 0x0042F04C + public void .ctor(string identity, FileSystemRights fileSystemRights, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AccessControlType type); // 0x0042F140 +} + +// Namespace: System.Security.AccessControl +public sealed class FileSystemAuditRule : AuditRule // TypeDefIndex: 1234 +{ + // Fields + private FileSystemRights rights; // 0x20 + + // Properties + public FileSystemRights FileSystemRights { get; } // 0x0042F3E4 + + // Methods + public void .ctor(IdentityReference identity, FileSystemRights fileSystemRights, AuditFlags flags); // 0x0042F1FC + public void .ctor(string identity, FileSystemRights fileSystemRights, AuditFlags flags); // 0x0042F284 + public void .ctor(IdentityReference identity, FileSystemRights fileSystemRights, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AuditFlags flags); // 0x0042F23C + public void .ctor(string identity, FileSystemRights fileSystemRights, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AuditFlags flags); // 0x0042F330 +} + +// Namespace: System.Security.AccessControl +public enum FileSystemRights // TypeDefIndex: 1235 +{ + ListDirectory = 1, + ReadData = 1, + CreateFiles = 2, + WriteData = 2, + AppendData = 4, + CreateDirectories = 4, + ReadExtendedAttributes = 8, + WriteExtendedAttributes = 16, + ExecuteFile = 32, + Traverse = 32, + DeleteSubdirectoriesAndFiles = 64, + ReadAttributes = 128, + WriteAttributes = 256, + Write = 278, + Delete = 65536, + ReadPermissions = 131072, + Read = 131209, + ReadAndExecute = 131241, + Modify = 197055, + ChangePermissions = 262144, + TakeOwnership = 524288, + Synchronize = 1048576, + FullControl = 2032127 +} + +// Namespace: System.Security.AccessControl +public abstract class FileSystemSecurity : NativeObjectSecurity // TypeDefIndex: 1236 +{ + // Properties + public override Type AccessRightType { get; } // 0x0042F3FC + public override Type AccessRuleType { get; } // 0x0042F48C + public override Type AuditRuleType { get; } // 0x0042F51C + + // Methods + internal void .ctor(bool isContainer); // 0x0042DC58 + internal void .ctor(bool isContainer, string name, AccessControlSections includeSections); // 0x0042DCFC + public sealed override AccessRule AccessRuleFactory(IdentityReference identityReference, int accessMask, bool isInherited, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AccessControlType type); // 0x0042F5AC + public void AddAccessRule(FileSystemAccessRule rule); // 0x0042F654 + public bool RemoveAccessRule(FileSystemAccessRule rule); // 0x0042F6DC + public void RemoveAccessRuleAll(FileSystemAccessRule rule); // 0x0042F764 + public void RemoveAccessRuleSpecific(FileSystemAccessRule rule); // 0x0042F7EC + public void ResetAccessRule(FileSystemAccessRule rule); // 0x0042F874 + public void SetAccessRule(FileSystemAccessRule rule); // 0x0042F8FC + public sealed override AuditRule AuditRuleFactory(IdentityReference identityReference, int accessMask, bool isInherited, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AuditFlags flags); // 0x0042F984 + public void AddAuditRule(FileSystemAuditRule rule); // 0x0042FA2C + public bool RemoveAuditRule(FileSystemAuditRule rule); // 0x0042FAB4 + public void RemoveAuditRuleAll(FileSystemAuditRule rule); // 0x0042FB3C + public void RemoveAuditRuleSpecific(FileSystemAuditRule rule); // 0x0042FBC4 + public void SetAuditRule(FileSystemAuditRule rule); // 0x0042FC4C +} + +// Namespace: System.Security.AccessControl +public abstract class GenericAce // TypeDefIndex: 1237 +{ + // Fields + private InheritanceFlags inheritance; // 0x08 + private PropagationFlags propagation; // 0x0C + private AceFlags aceflags; // 0x10 + private AceType ace_type; // 0x14 + + // Properties + public AceFlags AceFlags { get; set; } // 0x0042FCFC 0x0042FD04 + public AceType AceType { get; } // 0x0042FD0C + public AuditFlags AuditFlags { get; } // 0x0042FD14 + public abstract int BinaryLength { get; } + public InheritanceFlags InheritanceFlags { get; } // 0x0042FD28 + public bool IsInherited { get; } // 0x0042FD30 + public PropagationFlags PropagationFlags { get; } // 0x0042FD38 + + // Methods + internal void .ctor(InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags); // 0x0042FCD4 + internal void .ctor(AceType type); // 0x0042CDDC + public GenericAce Copy(); // 0x0042FD40 + public static GenericAce CreateFromBinaryForm(byte[] binaryForm, int offset); // 0x0042FDC8 + public sealed override bool Equals(object o); // 0x0042FE50 + public abstract void GetBinaryForm(byte[] binaryForm, int offset); + public sealed override int GetHashCode(); // 0x0042FED8 + public static bool op_Equality(GenericAce left, GenericAce right); // 0x0042FF60 + public static bool op_Inequality(GenericAce left, GenericAce right); // 0x0042FFE8 +} + +// Namespace: System.Security.AccessControl +public abstract class GenericAcl : IEnumerable, ICollection // TypeDefIndex: 1238 +{ + // Fields + public static readonly byte AclRevision; // 0x00 + public static readonly byte AclRevisionDS; // 0x01 + public static readonly int MaxBinaryLength; // 0x04 + + // Properties + public abstract int BinaryLength { get; } + public abstract int Count { get; } + public bool IsSynchronized { get; } // 0x00430408 + public abstract GenericAce Item { get; set; } + public abstract byte Revision { get; } + public object SyncRoot { get; } // 0x00430410 + + // Methods + protected void .ctor(); // 0x00430070 + private static void .cctor(); // 0x00430078 + private void System.Collections.ICollection.CopyTo(Array array, int index); // 0x00430100 + private IEnumerator System.Collections.IEnumerable.GetEnumerator(); // 0x00430390 + public void CopyTo(GenericAce[] array, int index); // 0x004301A4 + public abstract void GetBinaryForm(byte[] binaryForm, int offset); + public AceEnumerator GetEnumerator(); // 0x00430394 +} + +// Namespace: System.Security.AccessControl +public abstract class GenericSecurityDescriptor // TypeDefIndex: 1239 +{ + // Properties + public int BinaryLength { get; } // 0x00430414 + public abstract ControlFlags ControlFlags { get; } + public abstract SecurityIdentifier Group { get; set; } + public abstract SecurityIdentifier Owner { get; set; } + public static byte Revision { get; } // 0x0043049C + + // Methods + protected void .ctor(); // 0x0042BBBC + public void GetBinaryForm(byte[] binaryForm, int offset); // 0x00430524 + public string GetSddlForm(AccessControlSections includeSections); // 0x004305AC + public static bool IsSddlConversionSupported(); // 0x00430634 +} + +// Namespace: System.Security.AccessControl +public enum InheritanceFlags // TypeDefIndex: 1240 +{ + None = 0, + ContainerInherit = 1, + ObjectInherit = 2 +} + +// Namespace: System.Security.AccessControl +public abstract class KnownAce : GenericAce // TypeDefIndex: 1241 +{ + // Fields + private int access_mask; // 0x18 + private SecurityIdentifier identifier; // 0x1C + + // Properties + public int AccessMask { get; set; } // 0x004306BC 0x004306C4 + public SecurityIdentifier SecurityIdentifier { get; set; } // 0x004306CC 0x004306D4 + + // Methods + internal void .ctor(InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags); // 0x0042C190 +} + +// Namespace: System.Security.AccessControl +public sealed class MutexAccessRule : AccessRule // TypeDefIndex: 1242 +{ + // Fields + private MutexRights rights; // 0x20 + + // Properties + public MutexRights MutexRights { get; } // 0x004307C8 + + // Methods + public void .ctor(IdentityReference identity, MutexRights eventRights, AccessControlType type); // 0x004306DC + public void .ctor(string identity, MutexRights eventRights, AccessControlType type); // 0x0043071C +} + +// Namespace: System.Security.AccessControl +public sealed class MutexAuditRule : AuditRule // TypeDefIndex: 1243 +{ + // Fields + private MutexRights rights; // 0x20 + + // Properties + public MutexRights MutexRights { get; } // 0x00430810 + + // Methods + public void .ctor(IdentityReference identity, MutexRights eventRights, AuditFlags flags); // 0x004307D0 +} + +// Namespace: System.Security.AccessControl +public enum MutexRights // TypeDefIndex: 1244 +{ + Modify = 1, + Delete = 65536, + ReadPermissions = 131072, + ChangePermissions = 262144, + TakeOwnership = 524288, + Synchronize = 1048576, + FullControl = 2031617 +} + +// Namespace: System.Security.AccessControl +public sealed class MutexSecurity : NativeObjectSecurity // TypeDefIndex: 1245 +{ + // Properties + public override Type AccessRightType { get; } // 0x00430830 + public override Type AccessRuleType { get; } // 0x004308C0 + public override Type AuditRuleType { get; } // 0x00430950 + + // Methods + public void .ctor(); // 0x00430818 + public void .ctor(string name, AccessControlSections includeSections); // 0x00430824 + public override AccessRule AccessRuleFactory(IdentityReference identityReference, int accessMask, bool isInherited, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AccessControlType type); // 0x004309E0 + public void AddAccessRule(MutexAccessRule rule); // 0x00430A80 + public bool RemoveAccessRule(MutexAccessRule rule); // 0x00430B08 + public void RemoveAccessRuleAll(MutexAccessRule rule); // 0x00430B90 + public void RemoveAccessRuleSpecific(MutexAccessRule rule); // 0x00430C18 + public void ResetAccessRule(MutexAccessRule rule); // 0x00430CA0 + public void SetAccessRule(MutexAccessRule rule); // 0x00430D28 + public override AuditRule AuditRuleFactory(IdentityReference identityReference, int accessMask, bool isInherited, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AuditFlags flags); // 0x00430DB0 + public void AddAuditRule(MutexAuditRule rule); // 0x00430E50 + public bool RemoveAuditRule(MutexAuditRule rule); // 0x00430ED8 + public void RemoveAuditRuleAll(MutexAuditRule rule); // 0x00430F60 + public void RemoveAuditRuleSpecific(MutexAuditRule rule); // 0x00430FE8 + public void SetAuditRule(MutexAuditRule rule); // 0x00431070 +} + +// Namespace: System.Security.AccessControl +public abstract class NativeObjectSecurity : CommonObjectSecurity // TypeDefIndex: 1246 +{ + // Methods + internal void .ctor(); // 0x0042C4D0 + protected void .ctor(bool isContainer, ResourceType resourceType); // 0x0042F3EC + protected void .ctor(bool isContainer, ResourceType resourceType, ExceptionFromErrorCode exceptionFromErrorCode, object exceptionContext); // 0x004310F8 + protected void .ctor(bool isContainer, ResourceType resourceType, SafeHandle handle, AccessControlSections includeSections); // 0x00431100 + protected void .ctor(bool isContainer, ResourceType resourceType, string name, AccessControlSections includeSections); // 0x0042F3F4 + protected void .ctor(bool isContainer, ResourceType resourceType, SafeHandle handle, AccessControlSections includeSections, ExceptionFromErrorCode exceptionFromErrorCode, object exceptionContext); // 0x00431108 + protected void .ctor(bool isContainer, ResourceType resourceType, string name, AccessControlSections includeSections, ExceptionFromErrorCode exceptionFromErrorCode, object exceptionContext); // 0x00431110 + protected sealed override void Persist(SafeHandle handle, AccessControlSections includeSections); // 0x00431118 + protected sealed override void Persist(string name, AccessControlSections includeSections); // 0x004311A0 + protected void Persist(SafeHandle handle, AccessControlSections includeSections, object exceptionContext); // 0x00431228 + protected void Persist(string name, AccessControlSections includeSections, object exceptionContext); // 0x004312B0 +} + +// Namespace: +protected internal delegate Exception ExceptionFromErrorCode(int errorCode, string name, SafeHandle handle, object context); // TypeDefIndex: 1247; 0x0043134C + +// Namespace: System.Security.AccessControl +public abstract class ObjectAccessRule : AccessRule // TypeDefIndex: 1248 +{ + // Fields + private Guid object_type; // 0x20 + private Guid inherited_object_type; // 0x30 + + // Properties + public Guid InheritedObjectType { get; } // 0x004316C8 + public ObjectAceFlags ObjectFlags { get; } // 0x004316D8 + public Guid ObjectType { get; } // 0x00431820 + + // Methods + protected void .ctor(IdentityReference identity, int accessMask, bool isInherited, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, Guid objectType, Guid inheritedObjectType, AccessControlType type); // 0x0043165C +} + +// Namespace: System.Security.AccessControl +public sealed class ObjectAce : QualifiedAce // TypeDefIndex: 1249 +{ + // Fields + private Guid object_ace_type; // 0x2C + private Guid inherited_object_type; // 0x3C + private ObjectAceFlags object_ace_flags; // 0x4C + + // Properties + public override int BinaryLength { get; } // 0x004318FC + public Guid InheritedObjectAceType { get; set; } // 0x00431984 0x00431994 + public ObjectAceFlags ObjectAceFlags { get; set; } // 0x004319A4 0x004319AC + public Guid ObjectAceType { get; set; } // 0x004319B4 0x004319C4 + + // Methods + public void .ctor(AceFlags aceFlags, AceQualifier qualifier, int accessMask, SecurityIdentifier sid, ObjectAceFlags flags, Guid type, Guid inheritedType, bool isCallback, byte[] opaque); // 0x00431830 + public override void GetBinaryForm(byte[] binaryForm, int offset); // 0x004319D4 + public static int MaxOpaqueLength(bool isCallback); // 0x00431A5C +} + +// Namespace: System.Security.AccessControl +public enum ObjectAceFlags // TypeDefIndex: 1250 +{ + None = 0, + ObjectAceTypePresent = 1, + InheritedObjectAceTypePresent = 2 +} + +// Namespace: System.Security.AccessControl +public abstract class ObjectAuditRule : AuditRule // TypeDefIndex: 1251 +{ + // Fields + private Guid inherited_object_type; // 0x20 + private Guid object_type; // 0x30 + + // Properties + public Guid InheritedObjectType { get; } // 0x00431B54 + public ObjectAceFlags ObjectFlags { get; } // 0x00431B64 + public Guid ObjectType { get; } // 0x00431CAC + + // Methods + protected void .ctor(IdentityReference identity, int accessMask, bool isInherited, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, Guid objectType, Guid inheritedObjectType, AuditFlags auditFlags); // 0x00431AE4 +} + +// Namespace: System.Security.AccessControl +public abstract class ObjectSecurity // TypeDefIndex: 1252 +{ + // Fields + private bool is_container; // 0x08 + private bool is_ds; // 0x09 + private bool access_rules_modified; // 0x0A + private bool audit_rules_modified; // 0x0B + private bool group_modified; // 0x0C + private bool owner_modified; // 0x0D + + // Properties + public abstract Type AccessRightType { get; } + public abstract Type AccessRuleType { get; } + public abstract Type AuditRuleType { get; } + public bool AreAccessRulesCanonical { get; } // 0x00431CC4 + public bool AreAccessRulesProtected { get; } // 0x00431D4C + public bool AreAuditRulesCanonical { get; } // 0x00431DD4 + public bool AreAuditRulesProtected { get; } // 0x00431E5C + protected bool AccessRulesModified { get; set; } // 0x00431EE4 0x00431EEC + protected bool AuditRulesModified { get; set; } // 0x00431EF4 0x00431EFC + protected bool GroupModified { get; set; } // 0x00431F04 0x00431F0C + protected bool IsContainer { get; } // 0x00431F14 + protected bool IsDS { get; } // 0x00431F1C + protected bool OwnerModified { get; set; } // 0x00431F24 0x00431F2C + + // Methods + internal void .ctor(); // 0x00431CBC + protected void .ctor(bool isContainer, bool isDS); // 0x0042D1AC + public abstract AccessRule AccessRuleFactory(IdentityReference identityReference, int accessMask, bool isInherited, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AccessControlType type); + public abstract AuditRule AuditRuleFactory(IdentityReference identityReference, int accessMask, bool isInherited, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AuditFlags flags); + public IdentityReference GetGroup(Type targetType); // 0x00431F34 + public IdentityReference GetOwner(Type targetType); // 0x00431FBC + public byte[] GetSecurityDescriptorBinaryForm(); // 0x00432044 + public string GetSecurityDescriptorSddlForm(AccessControlSections includeSections); // 0x004320CC + public static bool IsSddlConversionSupported(); // 0x00432154 + public virtual bool ModifyAccessRule(AccessControlModification modification, AccessRule rule, out bool modified); // 0x004321DC + public virtual bool ModifyAuditRule(AccessControlModification modification, AuditRule rule, out bool modified); // 0x00432264 + public virtual void PurgeAccessRules(IdentityReference identity); // 0x004322EC + public virtual void PurgeAuditRules(IdentityReference identity); // 0x00432374 + public void SetAccessRuleProtection(bool isProtected, bool preserveInheritance); // 0x004323FC + public void SetAuditRuleProtection(bool isProtected, bool preserveInheritance); // 0x00432484 + public void SetGroup(IdentityReference identity); // 0x0043250C + public void SetOwner(IdentityReference identity); // 0x00432594 + public void SetSecurityDescriptorBinaryForm(byte[] binaryForm); // 0x0043261C + public void SetSecurityDescriptorBinaryForm(byte[] binaryForm, AccessControlSections includeSections); // 0x004326A4 + public void SetSecurityDescriptorSddlForm(string sddlForm); // 0x0043272C + public void SetSecurityDescriptorSddlForm(string sddlForm, AccessControlSections includeSections); // 0x004327B4 + protected abstract bool ModifyAccess(AccessControlModification modification, AccessRule rule, out bool modified); + protected abstract bool ModifyAudit(AccessControlModification modification, AuditRule rule, out bool modified); + protected virtual void Persist(SafeHandle handle, AccessControlSections includeSections); // 0x0043283C + protected virtual void Persist(string name, AccessControlSections includeSections); // 0x004328C4 + protected virtual void Persist(bool enableOwnershipPrivilege, string name, AccessControlSections includeSections); // 0x0043294C + protected void ReadLock(); // 0x004329D4 + protected void ReadUnlock(); // 0x00432A5C + protected void WriteLock(); // 0x00432AE4 + protected void WriteUnlock(); // 0x00432B6C +} + +// Namespace: System.Security.AccessControl +[Serializable] +public sealed class PrivilegeNotHeldException : UnauthorizedAccessException, ISerializable // TypeDefIndex: 1253 +{ + // Properties + public string PrivilegeName { get; } // 0x00432C0C + + // Methods + public void .ctor(); // 0x00432BF4 + public void .ctor(string privilege); // 0x00432BFC + public void .ctor(string privilege, Exception inner); // 0x00432C04 + public override void GetObjectData(SerializationInfo info, StreamingContext context); // 0x00432C94 +} + +// Namespace: System.Security.AccessControl +public enum PropagationFlags // TypeDefIndex: 1254 +{ + None = 0, + NoPropagateInherit = 1, + InheritOnly = 2 +} + +// Namespace: System.Security.AccessControl +public abstract class QualifiedAce : KnownAce // TypeDefIndex: 1255 +{ + // Fields + private AceQualifier ace_qualifier; // 0x20 + private bool is_callback; // 0x24 + private byte[] opaque; // 0x28 + + // Properties + public AceQualifier AceQualifier { get; } // 0x00432E24 + public bool IsCallback { get; } // 0x00432E2C + public int OpaqueLength { get; } // 0x00432E34 + + // Methods + internal void .ctor(InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AceQualifier aceQualifier, bool isCallback, byte[] opaque); // 0x004318B8 + public byte[] GetOpaque(); // 0x00432E58 + public void SetOpaque(byte[] opaque); // 0x00432D1C +} + +// Namespace: System.Security.AccessControl +public sealed class RawAcl : GenericAcl // TypeDefIndex: 1256 +{ + // Fields + private byte revision; // 0x08 + private List`1 list; // 0x0C + + // Properties + public override int BinaryLength { get; } // 0x00432FE4 + public override int Count { get; } // 0x0043306C + public override GenericAce Item { get; set; } // 0x004330D0 0x00433150 + public override byte Revision { get; } // 0x004331D8 + + // Methods + public void .ctor(byte revision, int capacity); // 0x00432F10 + public void .ctor(byte[] binaryForm, int offset); // 0x00432FD8 + public override void GetBinaryForm(byte[] binaryForm, int offset); // 0x004331E0 + public void InsertAce(int index, GenericAce ace); // 0x00433268 + public void RemoveAce(int index); // 0x004332B4 +} + +// Namespace: System.Security.AccessControl +public sealed class RawSecurityDescriptor : GenericSecurityDescriptor // TypeDefIndex: 1257 +{ + // Properties + public override ControlFlags ControlFlags { get; } // 0x0043334C + public RawAcl DiscretionaryAcl { get; set; } // 0x004333D4 0x0043345C + public override SecurityIdentifier Group { get; set; } // 0x004334E4 0x0043356C + public override SecurityIdentifier Owner { get; set; } // 0x004335F4 0x0043367C + public byte ResourceManagerControl { get; set; } // 0x00433704 0x0043378C + public RawAcl SystemAcl { get; set; } // 0x00433814 0x0043389C + + // Methods + public void .ctor(string sddlForm); // 0x00433334 + public void .ctor(byte[] binaryForm, int offset); // 0x0043333C + public void .ctor(ControlFlags flags, SecurityIdentifier owner, SecurityIdentifier group, RawAcl systemAcl, RawAcl discretionaryAcl); // 0x00433344 + public void SetFlags(ControlFlags flags); // 0x00433924 +} + +// Namespace: System.Security.AccessControl +public sealed class RegistryAccessRule : AccessRule // TypeDefIndex: 1258 +{ + // Fields + private RegistryRights rights; // 0x20 + + // Properties + public RegistryRights RegistryRights { get; } // 0x00433B94 + + // Methods + public void .ctor(IdentityReference identity, RegistryRights registryRights, AccessControlType type); // 0x004339AC + public void .ctor(string identity, RegistryRights registryRights, AccessControlType type); // 0x00433A34 + public void .ctor(IdentityReference identity, RegistryRights registryRights, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AccessControlType type); // 0x004339EC + public void .ctor(string identity, RegistryRights registryRights, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AccessControlType type); // 0x00433AE0 +} + +// Namespace: System.Security.AccessControl +public sealed class RegistryAuditRule : AuditRule // TypeDefIndex: 1259 +{ + // Fields + private RegistryRights rights; // 0x20 + + // Properties + public RegistryRights RegistryRights { get; } // 0x00433C98 + + // Methods + public void .ctor(IdentityReference identity, RegistryRights registryRights, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AuditFlags flags); // 0x00433B9C + public void .ctor(string identity, RegistryRights registryRights, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AuditFlags flags); // 0x00433BE4 +} + +// Namespace: System.Security.AccessControl +public enum RegistryRights // TypeDefIndex: 1260 +{ + QueryValues = 1, + SetValue = 2, + CreateSubKey = 4, + EnumerateSubKeys = 8, + Notify = 16, + CreateLink = 32, + Delete = 65536, + ReadPermissions = 131072, + WriteKey = 131078, + ReadKey = 131097, + ExecuteKey = 131097, + ChangePermissions = 262144, + TakeOwnership = 524288, + FullControl = 983103 +} + +// Namespace: System.Security.AccessControl +public sealed class RegistrySecurity : NativeObjectSecurity // TypeDefIndex: 1261 +{ + // Properties + public override Type AccessRightType { get; } // 0x00433CAC + public override Type AccessRuleType { get; } // 0x00433D3C + public override Type AuditRuleType { get; } // 0x00433DCC + + // Methods + public void .ctor(); // 0x00433CA0 + public override AccessRule AccessRuleFactory(IdentityReference identityReference, int accessMask, bool isInherited, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AccessControlType type); // 0x00433E5C + public void AddAccessRule(RegistryAccessRule rule); // 0x00433F04 + public void AddAuditRule(RegistryAuditRule rule); // 0x00433F8C + public override AuditRule AuditRuleFactory(IdentityReference identityReference, int accessMask, bool isInherited, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AuditFlags flags); // 0x00434014 + public bool RemoveAccessRule(RegistryAccessRule rule); // 0x004340BC + public void RemoveAccessRuleAll(RegistryAccessRule rule); // 0x00434144 + public void RemoveAccessRuleSpecific(RegistryAccessRule rule); // 0x004341CC + public bool RemoveAuditRule(RegistryAuditRule rule); // 0x00434254 + public void RemoveAuditRuleAll(RegistryAuditRule rule); // 0x004342DC + public void RemoveAuditRuleSpecific(RegistryAuditRule rule); // 0x00434364 + public void ResetAccessRule(RegistryAccessRule rule); // 0x004343EC + public void SetAccessRule(RegistryAccessRule rule); // 0x00434474 + public void SetAuditRule(RegistryAuditRule rule); // 0x004344FC +} + +// Namespace: System.Security.AccessControl +public enum ResourceType // TypeDefIndex: 1262 +{ + Unknown = 0, + FileObject = 1, + Service = 2, + Printer = 3, + RegistryKey = 4, + LMShare = 5, + KernelObject = 6, + WindowObject = 7, + DSObject = 8, + DSObjectAll = 9, + ProviderDefined = 10, + WmiGuidObject = 11, + RegistryWow6432Key = 12 +} + +// Namespace: System.Security.AccessControl +public enum SecurityInfos // TypeDefIndex: 1263 +{ + Owner = 1, + Group = 2, + DiscretionaryAcl = 4, + SystemAcl = 8 +} + +// Namespace: System.Security.AccessControl +public sealed class SystemAcl : CommonAcl // TypeDefIndex: 1264 +{ + // Methods + public void .ctor(bool isContainer, bool isDS, int capacity); // 0x00434584 + public void .ctor(bool isContainer, bool isDS, RawAcl rawAcl); // 0x004345CC + public void .ctor(bool isContainer, bool isDS, byte revision, int capacity); // 0x004345A8 + public void AddAudit(AuditFlags auditFlags, SecurityIdentifier sid, int accessMask, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags); // 0x004345F4 + public void AddAudit(AuditFlags auditFlags, SecurityIdentifier sid, int accessMask, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, ObjectAceFlags objectFlags, Guid objectType, Guid inheritedObjectType); // 0x0043467C + public bool RemoveAudit(AuditFlags auditFlags, SecurityIdentifier sid, int accessMask, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags); // 0x00434704 + public bool RemoveAudit(AuditFlags auditFlags, SecurityIdentifier sid, int accessMask, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, ObjectAceFlags objectFlags, Guid objectType, Guid inheritedObjectType); // 0x0043478C + public void RemoveAuditSpecific(AuditFlags auditFlags, SecurityIdentifier sid, int accessMask, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags); // 0x00434814 + public void RemoveAuditSpecific(AuditFlags auditFlags, SecurityIdentifier sid, int accessMask, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, ObjectAceFlags objectFlags, Guid objectType, Guid inheritedObjectType); // 0x0043489C + public void SetAudit(AuditFlags auditFlags, SecurityIdentifier sid, int accessMask, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags); // 0x00434924 + public void SetAudit(AuditFlags auditFlags, SecurityIdentifier sid, int accessMask, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, ObjectAceFlags objectFlags, Guid objectType, Guid inheritedObjectType); // 0x004349AC +} + +// Namespace: System.Security.Cryptography.X509Certificates +[Serializable] +public class X509Certificate : ISerializable, IDeserializationCallback // TypeDefIndex: 1265 +{ + // Fields + private X509Certificate x509; // 0x08 + private bool hideDates; // 0x0C + private byte[] cachedCertificateHash; // 0x10 + private string issuer_name; // 0x14 + private string subject_name; // 0x18 + + // Properties + public string Issuer { get; } // 0x003D7D9C + public string Subject { get; } // 0x003D7C70 + public IntPtr Handle { get; } // 0x003D7EC8 + + // Methods + internal void .ctor(byte[] data, bool dates); // 0x003D5C18 + public void .ctor(byte[] data); // 0x003D5C74 + public void .ctor(IntPtr handle); // 0x003D5C7C + public void .ctor(X509Certificate cert); // 0x003D5D74 + public void .ctor(); // 0x003D5E80 + public void .ctor(byte[] rawData, string password); // 0x003D5E88 + public void .ctor(byte[] rawData, SecureString password); // 0x003D5ED4 + public void .ctor(byte[] rawData, string password, X509KeyStorageFlags keyStorageFlags); // 0x003D5F20 + public void .ctor(byte[] rawData, SecureString password, X509KeyStorageFlags keyStorageFlags); // 0x003D5F70 + public void .ctor(string fileName); // 0x003D5FC0 + public void .ctor(string fileName, string password); // 0x003D6008 + public void .ctor(string fileName, SecureString password); // 0x003D6054 + public void .ctor(string fileName, string password, X509KeyStorageFlags keyStorageFlags); // 0x003D60A0 + public void .ctor(string fileName, SecureString password, X509KeyStorageFlags keyStorageFlags); // 0x003D60F0 + public void .ctor(SerializationInfo info, StreamingContext context); // 0x003D6140 + private void System.Runtime.Serialization.IDeserializationCallback.OnDeserialization(object sender); // 0x003D628C + private void System.Runtime.Serialization.ISerializable.GetObjectData(SerializationInfo info, StreamingContext context); // 0x003D6290 + private string tostr(byte[] data); // 0x003D633C + public static X509Certificate CreateFromCertFile(string filename); // 0x003D6450 + public static X509Certificate CreateFromSignedFile(string filename); // 0x003D66D0 + private void InitFromHandle(IntPtr handle); // 0x003D69B8 + public virtual bool Equals(X509Certificate other); // 0x003D6B64 + public virtual byte[] GetCertHash(); // 0x003D6DBC + public virtual string GetCertHashString(); // 0x003D6EDC + public virtual string GetEffectiveDateString(); // 0x003D6F00 + public virtual string GetExpirationDateString(); // 0x003D7030 + public virtual string GetFormat(); // 0x003D7160 + public override int GetHashCode(); // 0x003D71BC + public virtual string GetIssuerName(); // 0x003D72B4 + public virtual string GetKeyAlgorithm(); // 0x003D7380 + public virtual byte[] GetKeyAlgorithmParameters(); // 0x003D744C + public virtual string GetKeyAlgorithmParametersString(); // 0x003D756C + public virtual string GetName(); // 0x003D7590 + public virtual byte[] GetPublicKey(); // 0x003D765C + public virtual string GetPublicKeyString(); // 0x003D7728 + public virtual byte[] GetRawCertData(); // 0x003D774C + public virtual string GetRawCertDataString(); // 0x003D7818 + public virtual byte[] GetSerialNumber(); // 0x003D78EC + public virtual string GetSerialNumberString(); // 0x003D79B8 + public override string ToString(); // 0x003D79E8 + public virtual string ToString(bool fVerbose); // 0x003D79F0 + private static byte[] Load(string fileName); // 0x003D64D0 + public override bool Equals(object obj); // 0x003D7F18 + public virtual byte[] Export(X509ContentType contentType); // 0x003D7FC8 + public virtual byte[] Export(X509ContentType contentType, string password); // 0x003D8314 + public virtual byte[] Export(X509ContentType contentType, SecureString password); // 0x003D83E8 + internal byte[] Export(X509ContentType contentType, byte[] password); // 0x003D7FD0 + public virtual void Import(byte[] rawData); // 0x003D8428 + public virtual void Import(byte[] rawData, string password, X509KeyStorageFlags keyStorageFlags); // 0x003D8458 + public virtual void Import(byte[] rawData, SecureString password, X509KeyStorageFlags keyStorageFlags); // 0x003D889C + public virtual void Import(string fileName); // 0x003D88C8 + public virtual void Import(string fileName, string password, X509KeyStorageFlags keyStorageFlags); // 0x003D890C + public virtual void Import(string fileName, SecureString password, X509KeyStorageFlags keyStorageFlags); // 0x003D8958 + public virtual void Reset(); // 0x003D89A0 +} + +// Namespace: +internal struct CertificateContext // TypeDefIndex: 1266 +{ + // Fields + public uint dwCertEncodingType; // 0x08 + public IntPtr pbCertEncoded; // 0x0C + public uint cbCertEncoded; // 0x10 + public IntPtr pCertInfo; // 0x14 + public IntPtr hCertStore; // 0x18 + +} + +// Namespace: System.Security.Cryptography.X509Certificates +public enum X509ContentType // TypeDefIndex: 1267 +{ + Unknown = 0, + Cert = 1, + SerializedCert = 2, + Pfx = 3, + Pkcs12 = 3, + SerializedStore = 4, + Pkcs7 = 5, + Authenticode = 6 +} + +// Namespace: System.Security.Cryptography.X509Certificates +[Serializable] +public enum X509KeyStorageFlags // TypeDefIndex: 1268 +{ + DefaultKeySet = 0, + UserKeySet = 1, + MachineKeySet = 2, + Exportable = 4, + UserProtected = 8, + PersistKeySet = 16 +} + +// Namespace: System.Security.Cryptography +public abstract class AsymmetricAlgorithm : IDisposable // TypeDefIndex: 1269 +{ + // Fields + protected int KeySizeValue; // 0x08 + protected KeySizes[] LegalKeySizesValue; // 0x0C + + // Properties + public abstract string KeyExchangeAlgorithm { get; } + public virtual int KeySize { get; set; } // 0x00436490 0x00436498 + public virtual KeySizes[] LegalKeySizes { get; } // 0x00436638 + public abstract string SignatureAlgorithm { get; } + + // Methods + protected void .ctor(); // 0x00436454 + private void System.IDisposable.Dispose(); // 0x0043645C + public void Clear(); // 0x00436640 + protected abstract void Dispose(bool disposing); + public abstract void FromXmlString(string xmlString); + public abstract string ToXmlString(bool includePrivateParameters); + public static AsymmetricAlgorithm Create(); // 0x00436654 + public static AsymmetricAlgorithm Create(string algName); // 0x004366B0 + internal static byte[] GetNamedParam(string xml, string param); // 0x00436808 +} + +// Namespace: System.Security.Cryptography +public abstract class AsymmetricKeyExchangeDeformatter // TypeDefIndex: 1270 +{ + // Properties + public abstract string Parameters { get; set; } + + // Methods + protected void .ctor(); // 0x004369F0 + public abstract byte[] DecryptKeyExchange(byte[] rgb); + public abstract void SetKey(AsymmetricAlgorithm key); +} + +// Namespace: System.Security.Cryptography +public abstract class AsymmetricKeyExchangeFormatter // TypeDefIndex: 1271 +{ + // Properties + public abstract string Parameters { get; } + + // Methods + protected void .ctor(); // 0x004369F8 + public abstract byte[] CreateKeyExchange(byte[] data); + public abstract byte[] CreateKeyExchange(byte[] data, Type symAlgType); + public abstract void SetKey(AsymmetricAlgorithm key); +} + +// Namespace: System.Security.Cryptography +public abstract class AsymmetricSignatureDeformatter // TypeDefIndex: 1272 +{ + // Methods + protected void .ctor(); // 0x00436A00 + public abstract void SetHashAlgorithm(string strName); + public abstract void SetKey(AsymmetricAlgorithm key); + public abstract bool VerifySignature(byte[] rgbHash, byte[] rgbSignature); + public virtual bool VerifySignature(HashAlgorithm hash, byte[] rgbSignature); // 0x00436A08 +} + +// Namespace: System.Security.Cryptography +public abstract class AsymmetricSignatureFormatter // TypeDefIndex: 1273 +{ + // Methods + protected void .ctor(); // 0x00436B18 + public abstract void SetHashAlgorithm(string strName); + public abstract void SetKey(AsymmetricAlgorithm key); + public abstract byte[] CreateSignature(byte[] rgbHash); + public virtual byte[] CreateSignature(HashAlgorithm hash); // 0x00436B20 +} + +// Namespace: System.Security.Cryptography +internal static class Base64Constants // TypeDefIndex: 1274 +{ + // Fields + public static readonly byte[] EncodeTable; // 0x00 + public static readonly byte[] DecodeTable; // 0x04 + + // Methods + private static void .cctor(); // 0x00436C28 +} + +// Namespace: System.Security.Cryptography +[Serializable] +public enum CipherMode // TypeDefIndex: 1275 +{ + CBC = 1, + ECB = 2, + OFB = 3, + CFB = 4, + CTS = 5 +} + +// Namespace: System.Security.Cryptography +public sealed class CryptoAPITransform : IDisposable, ICryptoTransform // TypeDefIndex: 1276 +{ + // Fields + private bool m_disposed; // 0x08 + + // Properties + public bool CanReuseTransform { get; } // 0x00436D44 + public bool CanTransformMultipleBlocks { get; } // 0x00436D4C + public int InputBlockSize { get; } // 0x00436D54 + public IntPtr KeyHandle { get; } // 0x00436D5C + public int OutputBlockSize { get; } // 0x00436DAC + + // Methods + internal void .ctor(); // 0x00436CF8 + private void System.IDisposable.Dispose(); // 0x00436D18 + public void Clear(); // 0x00436DB4 + private void Dispose(bool disposing); // 0x00436D30 + public int TransformBlock(byte[] inputBuffer, int inputOffset, int inputCount, byte[] outputBuffer, int outputOffset); // 0x00436DC8 + public byte[] TransformFinalBlock(byte[] inputBuffer, int inputOffset, int inputCount); // 0x00436DD0 + public void Reset(); // 0x00436DD8 +} + +// Namespace: System.Security.Cryptography +public class CryptoConfig // TypeDefIndex: 1277 +{ + // Fields + private const string defaultNamespace = "System.Security.Cryptography."; // 0x00 + private const string defaultSHA1 = "System.Security.Cryptography.SHA1CryptoServiceProvider"; // 0x00 + private const string defaultMD5 = "System.Security.Cryptography.MD5CryptoServiceProvider"; // 0x00 + private const string defaultSHA256 = "System.Security.Cryptography.SHA256Managed"; // 0x00 + private const string defaultSHA384 = "System.Security.Cryptography.SHA384Managed"; // 0x00 + private const string defaultSHA512 = "System.Security.Cryptography.SHA512Managed"; // 0x00 + private const string defaultRSA = "System.Security.Cryptography.RSACryptoServiceProvider"; // 0x00 + private const string defaultDSA = "System.Security.Cryptography.DSACryptoServiceProvider"; // 0x00 + private const string defaultDES = "System.Security.Cryptography.DESCryptoServiceProvider"; // 0x00 + private const string default3DES = "System.Security.Cryptography.TripleDESCryptoServiceProvider"; // 0x00 + private const string defaultRC2 = "System.Security.Cryptography.RC2CryptoServiceProvider"; // 0x00 + private const string defaultAES = "System.Security.Cryptography.RijndaelManaged"; // 0x00 + private const string defaultRNG = "System.Security.Cryptography.RNGCryptoServiceProvider"; // 0x00 + private const string defaultHMAC = "System.Security.Cryptography.HMACSHA1"; // 0x00 + private const string defaultMAC3DES = "System.Security.Cryptography.MACTripleDES"; // 0x00 + private const string defaultDSASigDesc = "System.Security.Cryptography.DSASignatureDescription"; // 0x00 + private const string defaultRSASigDesc = "System.Security.Cryptography.RSAPKCS1SHA1SignatureDescription"; // 0x00 + private const string defaultRIPEMD160 = "System.Security.Cryptography.RIPEMD160Managed"; // 0x00 + private const string defaultHMACMD5 = "System.Security.Cryptography.HMACMD5"; // 0x00 + private const string defaultHMACRIPEMD160 = "System.Security.Cryptography.HMACRIPEMD160"; // 0x00 + private const string defaultHMACSHA256 = "System.Security.Cryptography.HMACSHA256"; // 0x00 + private const string defaultHMACSHA384 = "System.Security.Cryptography.HMACSHA384"; // 0x00 + private const string defaultHMACSHA512 = "System.Security.Cryptography.HMACSHA512"; // 0x00 + private const string defaultC14N = "System.Security.Cryptography.Xml.XmlDsigC14NTransform, System.Security, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + private const string defaultC14NWithComments = "System.Security.Cryptography.Xml.XmlDsigC14NWithCommentsTransform, System.Security, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + private const string defaultBase64 = "System.Security.Cryptography.Xml.XmlDsigBase64Transform, System.Security, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + private const string defaultXPath = "System.Security.Cryptography.Xml.XmlDsigXPathTransform, System.Security, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + private const string defaultXslt = "System.Security.Cryptography.Xml.XmlDsigXsltTransform, System.Security, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + private const string defaultEnveloped = "System.Security.Cryptography.Xml.XmlDsigEnvelopedSignatureTransform, System.Security, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + private const string defaultXmlDecryption = "System.Security.Cryptography.Xml.XmlDecryptionTransform, System.Security, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + private const string defaultExcC14N = "System.Security.Cryptography.Xml.XmlDsigExcC14NTransform, System.Security, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + private const string defaultExcC14NWithComments = "System.Security.Cryptography.Xml.XmlDsigExcC14NWithCommentsTransform, System.Security, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + private const string defaultX509Data = "System.Security.Cryptography.Xml.KeyInfoX509Data, System.Security, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + private const string defaultKeyName = "System.Security.Cryptography.Xml.KeyInfoName, System.Security, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + private const string defaultKeyValueDSA = "System.Security.Cryptography.Xml.DSAKeyValue, System.Security, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + private const string defaultKeyValueRSA = "System.Security.Cryptography.Xml.RSAKeyValue, System.Security, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + private const string defaultRetrievalMethod = "System.Security.Cryptography.Xml.KeyInfoRetrievalMethod, System.Security, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + private const string managedSHA1 = "System.Security.Cryptography.SHA1Managed"; // 0x00 + private const string oidSHA1 = "1.3.14.3.2.26"; // 0x00 + private const string oidMD5 = "1.2.840.113549.2.5"; // 0x00 + private const string oidSHA256 = "2.16.840.1.101.3.4.2.1"; // 0x00 + private const string oidSHA384 = "2.16.840.1.101.3.4.2.2"; // 0x00 + private const string oidSHA512 = "2.16.840.1.101.3.4.2.3"; // 0x00 + private const string oidDSA = "1.2.840.10040.4.1"; // 0x00 + private const string oidDES = "1.3.14.3.2.7"; // 0x00 + private const string oid3DES = "1.2.840.113549.3.7"; // 0x00 + private const string oidRC2 = "1.2.840.113549.3.2"; // 0x00 + private const string oid3DESKeyWrap = "1.2.840.113549.1.9.16.3.6"; // 0x00 + private const string nameSHA1a = "SHA"; // 0x00 + private const string nameSHA1b = "SHA1"; // 0x00 + private const string nameSHA1c = "System.Security.Cryptography.SHA1"; // 0x00 + private const string nameSHA1d = "System.Security.Cryptography.HashAlgorithm"; // 0x00 + private const string nameMD5a = "MD5"; // 0x00 + private const string nameMD5b = "System.Security.Cryptography.MD5"; // 0x00 + private const string nameSHA256a = "SHA256"; // 0x00 + private const string nameSHA256b = "SHA-256"; // 0x00 + private const string nameSHA256c = "System.Security.Cryptography.SHA256"; // 0x00 + private const string nameSHA384a = "SHA384"; // 0x00 + private const string nameSHA384b = "SHA-384"; // 0x00 + private const string nameSHA384c = "System.Security.Cryptography.SHA384"; // 0x00 + private const string nameSHA512a = "SHA512"; // 0x00 + private const string nameSHA512b = "SHA-512"; // 0x00 + private const string nameSHA512c = "System.Security.Cryptography.SHA512"; // 0x00 + private const string nameRSAa = "RSA"; // 0x00 + private const string nameRSAb = "System.Security.Cryptography.RSA"; // 0x00 + private const string nameRSAc = "System.Security.Cryptography.AsymmetricAlgorithm"; // 0x00 + private const string nameDSAa = "DSA"; // 0x00 + private const string nameDSAb = "System.Security.Cryptography.DSA"; // 0x00 + private const string nameDESa = "DES"; // 0x00 + private const string nameDESb = "System.Security.Cryptography.DES"; // 0x00 + private const string name3DESa = "3DES"; // 0x00 + private const string name3DESb = "TripleDES"; // 0x00 + private const string name3DESc = "Triple DES"; // 0x00 + private const string name3DESd = "System.Security.Cryptography.TripleDES"; // 0x00 + private const string nameRC2a = "RC2"; // 0x00 + private const string nameRC2b = "System.Security.Cryptography.RC2"; // 0x00 + private const string nameAESa = "Rijndael"; // 0x00 + private const string nameAESb = "System.Security.Cryptography.Rijndael"; // 0x00 + private const string nameAESc = "System.Security.Cryptography.SymmetricAlgorithm"; // 0x00 + private const string nameRNGa = "RandomNumberGenerator"; // 0x00 + private const string nameRNGb = "System.Security.Cryptography.RandomNumberGenerator"; // 0x00 + private const string nameKeyHasha = "System.Security.Cryptography.KeyedHashAlgorithm"; // 0x00 + private const string nameHMACSHA1a = "HMACSHA1"; // 0x00 + private const string nameHMACSHA1b = "System.Security.Cryptography.HMACSHA1"; // 0x00 + private const string nameMAC3DESa = "MACTripleDES"; // 0x00 + private const string nameMAC3DESb = "System.Security.Cryptography.MACTripleDES"; // 0x00 + private const string name3DESKeyWrap = "TripleDESKeyWrap"; // 0x00 + private const string nameRIPEMD160a = "RIPEMD160"; // 0x00 + private const string nameRIPEMD160b = "RIPEMD-160"; // 0x00 + private const string nameRIPEMD160c = "System.Security.Cryptography.RIPEMD160"; // 0x00 + private const string nameHMACa = "HMAC"; // 0x00 + private const string nameHMACb = "System.Security.Cryptography.HMAC"; // 0x00 + private const string nameHMACMD5a = "HMACMD5"; // 0x00 + private const string nameHMACMD5b = "System.Security.Cryptography.HMACMD5"; // 0x00 + private const string nameHMACRIPEMD160a = "HMACRIPEMD160"; // 0x00 + private const string nameHMACRIPEMD160b = "System.Security.Cryptography.HMACRIPEMD160"; // 0x00 + private const string nameHMACSHA256a = "HMACSHA256"; // 0x00 + private const string nameHMACSHA256b = "System.Security.Cryptography.HMACSHA256"; // 0x00 + private const string nameHMACSHA384a = "HMACSHA384"; // 0x00 + private const string nameHMACSHA384b = "System.Security.Cryptography.HMACSHA384"; // 0x00 + private const string nameHMACSHA512a = "HMACSHA512"; // 0x00 + private const string nameHMACSHA512b = "System.Security.Cryptography.HMACSHA512"; // 0x00 + private const string urlXmlDsig = "http://www.w3.org/2000/09/xmldsig#"; // 0x00 + private const string urlDSASHA1 = "http://www.w3.org/2000/09/xmldsig#dsa-sha1"; // 0x00 + private const string urlRSASHA1 = "http://www.w3.org/2000/09/xmldsig#rsa-sha1"; // 0x00 + private const string urlSHA1 = "http://www.w3.org/2000/09/xmldsig#sha1"; // 0x00 + private const string urlC14N = "http://www.w3.org/TR/2001/REC-xml-c14n-20010315"; // 0x00 + private const string urlC14NWithComments = "http://www.w3.org/TR/2001/REC-xml-c14n-20010315#WithComments"; // 0x00 + private const string urlBase64 = "http://www.w3.org/2000/09/xmldsig#base64"; // 0x00 + private const string urlXPath = "http://www.w3.org/TR/1999/REC-xpath-19991116"; // 0x00 + private const string urlXslt = "http://www.w3.org/TR/1999/REC-xslt-19991116"; // 0x00 + private const string urlEnveloped = "http://www.w3.org/2000/09/xmldsig#enveloped-signature"; // 0x00 + private const string urlXmlDecryption = "http://www.w3.org/2002/07/decrypt#XML"; // 0x00 + private const string urlExcC14NWithComments = "http://www.w3.org/2001/10/xml-exc-c14n#WithComments"; // 0x00 + private const string urlExcC14N = "http://www.w3.org/2001/10/xml-exc-c14n#"; // 0x00 + private const string urlSHA256 = "http://www.w3.org/2001/04/xmlenc#sha256"; // 0x00 + private const string urlSHA512 = "http://www.w3.org/2001/04/xmlenc#sha512"; // 0x00 + private const string urlHMACSHA256 = "http://www.w3.org/2001/04/xmldsig-more#hmac-sha256"; // 0x00 + private const string urlHMACSHA384 = "http://www.w3.org/2001/04/xmldsig-more#hmac-sha384"; // 0x00 + private const string urlHMACSHA512 = "http://www.w3.org/2001/04/xmldsig-more#hmac-sha512"; // 0x00 + private const string urlHMACRIPEMD160 = "http://www.w3.org/2001/04/xmldsig-more#hmac-ripemd160"; // 0x00 + private const string urlX509Data = "http://www.w3.org/2000/09/xmldsig# X509Data"; // 0x00 + private const string urlKeyName = "http://www.w3.org/2000/09/xmldsig# KeyName"; // 0x00 + private const string urlKeyValueDSA = "http://www.w3.org/2000/09/xmldsig# KeyValue/DSAKeyValue"; // 0x00 + private const string urlKeyValueRSA = "http://www.w3.org/2000/09/xmldsig# KeyValue/RSAKeyValue"; // 0x00 + private const string urlRetrievalMethod = "http://www.w3.org/2000/09/xmldsig# RetrievalMethod"; // 0x00 + private const string oidX509SubjectKeyIdentifier = "2.5.29.14"; // 0x00 + private const string oidX509KeyUsage = "2.5.29.15"; // 0x00 + private const string oidX509BasicConstraints = "2.5.29.19"; // 0x00 + private const string oidX509EnhancedKeyUsage = "2.5.29.37"; // 0x00 + private const string nameX509SubjectKeyIdentifier = "System.Security.Cryptography.X509Certificates.X509SubjectKeyIdentifierExtension, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"; // 0x00 + private const string nameX509KeyUsage = "System.Security.Cryptography.X509Certificates.X509KeyUsageExtension, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"; // 0x00 + private const string nameX509BasicConstraints = "System.Security.Cryptography.X509Certificates.X509BasicConstraintsExtension, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"; // 0x00 + private const string nameX509EnhancedKeyUsage = "System.Security.Cryptography.X509Certificates.X509EnhancedKeyUsageExtension, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"; // 0x00 + private const string nameX509Chain = "X509Chain"; // 0x00 + private const string defaultX509Chain = "System.Security.Cryptography.X509Certificates.X509Chain, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"; // 0x00 + private static object lockObject; // 0x00 + private static Hashtable algorithms; // 0x04 + private static Hashtable oid; // 0x08 + + // Methods + public void .ctor(); // 0x00436DDC + private static void .cctor(); // 0x00436DE4 + private static void Initialize(); // 0x00436E64 + private static void LoadConfig(string filename, Hashtable algorithms, Hashtable oid); // 0x004392B0 + public static object CreateFromName(string name); // 0x00436784 + public static object CreateFromName(string name, object[] args); // 0x00439600 + public static string MapNameToOID(string name); // 0x00439960 + public static byte[] EncodeOID(string str); // 0x00439BBC + private static byte[] EncodeLongNumber(long x); // 0x0043A204 +} + +// Namespace: +private class CryptoHandler : IContentHandler // TypeDefIndex: 1278 +{ + // Fields + private Hashtable algorithms; // 0x08 + private Hashtable oid; // 0x0C + private Hashtable names; // 0x10 + private Hashtable classnames; // 0x14 + private int level; // 0x18 + + // Methods + public void .ctor(Hashtable algorithms, Hashtable oid); // 0x0043955C + public void OnStartParsing(SmallXmlParser parser); // 0x0043A42C + public void OnEndParsing(SmallXmlParser parser); // 0x0043A430 + private string Get(IAttrList attrs, string name); // 0x0043A8C0 + public void OnStartElement(string name, IAttrList attrs); // 0x0043ABE0 + public void OnEndElement(string name); // 0x0043B134 + public void OnProcessingInstruction(string name, string text); // 0x0043B354 + public void OnChars(string text); // 0x0043B358 + public void OnIgnorableWhitespace(string text); // 0x0043B35C +} + +// Namespace: System.Security.Cryptography +public class CryptoStream : Stream // TypeDefIndex: 1279 +{ + // Fields + private Stream _stream; // 0x08 + private ICryptoTransform _transform; // 0x0C + private CryptoStreamMode _mode; // 0x10 + private byte[] _currentBlock; // 0x14 + private bool _disposed; // 0x18 + private bool _flushedFinalBlock; // 0x19 + private int _partialCount; // 0x1C + private bool _endOfStream; // 0x20 + private byte[] _waitingBlock; // 0x24 + private int _waitingCount; // 0x28 + private byte[] _transformedBlock; // 0x2C + private int _transformedPos; // 0x30 + private int _transformedCount; // 0x34 + private byte[] _workingBlock; // 0x38 + private int _workingCount; // 0x3C + + // Properties + public override bool CanRead { get; } // 0x0043B858 + public override bool CanSeek { get; } // 0x0043B86C + public override bool CanWrite { get; } // 0x0043B874 + public override long Length { get; } // 0x0043B884 + public override long Position { get; set; } // 0x0043B920 0x0043B9BC + + // Methods + public void .ctor(Stream stream, ICryptoTransform transform, CryptoStreamMode mode); // 0x0043B360 + protected override void Finalize(); // 0x0043B7E0 + public void Clear(); // 0x0043BA58 + public override void Close(); // 0x0043BA8C + public override int Read(out byte[] buffer, int offset, int count); // 0x0043BD90 + public override void Write(byte[] buffer, int offset, int count); // 0x0043CA60 + public override void Flush(); // 0x0043D548 + public void FlushFinalBlock(); // 0x0043BAD4 + public override long Seek(long offset, SeekOrigin origin); // 0x0043D564 + public override void SetLength(long value); // 0x0043D600 + protected override void Dispose(bool disposing); // 0x0043D69C +} + +// Namespace: System.Security.Cryptography +[Serializable] +public enum CryptoStreamMode // TypeDefIndex: 1280 +{ + Read = 0, + Write = 1 +} + +// Namespace: System.Security.Cryptography +[Serializable] +public class CryptographicException : SystemException, _Exception // TypeDefIndex: 1281 +{ + // Methods + public void .ctor(); // 0x0043D710 + public void .ctor(int hr); // 0x0043D790 + public void .ctor(string message); // 0x00436614 + public void .ctor(string message, Exception inner); // 0x0043D7B0 + public void .ctor(string format, string insert); // 0x0043D7D4 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x0043D880 +} + +// Namespace: System.Security.Cryptography +[Serializable] +public class CryptographicUnexpectedOperationException : CryptographicException // TypeDefIndex: 1282 +{ + // Methods + public void .ctor(); // 0x0043D8A0 + public void .ctor(string message); // 0x0043A1E0 + public void .ctor(string message, Exception inner); // 0x0043D920 + public void .ctor(string format, string insert); // 0x0043D944 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x0043D9F0 +} + +// Namespace: System.Security.Cryptography +public sealed class CspKeyContainerInfo // TypeDefIndex: 1283 +{ + // Fields + private CspParameters _params; // 0x08 + internal bool _random; // 0x0C + + // Properties + public bool Accessible { get; } // 0x0043DA38 + public CryptoKeySecurity CryptoKeySecurity { get; } // 0x0043DA40 + public bool Exportable { get; } // 0x0043DA48 + public bool HardwareDevice { get; } // 0x0043DA50 + public string KeyContainerName { get; } // 0x0043DA58 + public KeyNumber KeyNumber { get; } // 0x0043DA7C + public bool MachineKeyStore { get; } // 0x0043DAA0 + public bool Protected { get; } // 0x0043DAA8 + public string ProviderName { get; } // 0x0043DAB0 + public int ProviderType { get; } // 0x0043DAD4 + public bool RandomlyGenerated { get; } // 0x0043DAF8 + public bool Removable { get; } // 0x0043DB00 + public string UniqueKeyContainerName { get; } // 0x0043DB08 + + // Methods + public void .ctor(CspParameters parameters); // 0x0043DA10 +} + +// Namespace: System.Security.Cryptography +public sealed class CspParameters // TypeDefIndex: 1284 +{ + // Fields + private CspProviderFlags _Flags; // 0x08 + public string KeyContainerName; // 0x0C + public int KeyNumber; // 0x10 + public string ProviderName; // 0x14 + public int ProviderType; // 0x18 + private SecureString _password; // 0x1C + private IntPtr _windowHandle; // 0x20 + + // Properties + public CspProviderFlags Flags { get; set; } // 0x0043DDC8 0x0043DDD0 + public CryptoKeySecurity CryptoKeySecurity { get; set; } // 0x0043DDD8 0x0043DCF4 + public SecureString KeyPassword { get; set; } // 0x0043DE60 0x0043DE68 + public IntPtr ParentWindowHandle { get; set; } // 0x0043DE70 0x0043DE78 + + // Methods + public void .ctor(); // 0x0043DBD8 + public void .ctor(int dwTypeIn); // 0x0043DC0C + public void .ctor(int dwTypeIn, string strProviderNameIn); // 0x0043DC40 + public void .ctor(int dwTypeIn, string strProviderNameIn, string strContainerNameIn); // 0x0043DC74 + public void .ctor(int providerType, string providerName, string keyContainerName, CryptoKeySecurity cryptoKeySecurity, IntPtr parentWindowHandle); // 0x0043DCA8 + public void .ctor(int providerType, string providerName, string keyContainerName, CryptoKeySecurity cryptoKeySecurity, SecureString keyPassword); // 0x0043DD7C +} + +// Namespace: System.Security.Cryptography +[Serializable] +public enum CspProviderFlags // TypeDefIndex: 1285 +{ + NoFlags = 0, + UseMachineKeyStore = 1, + UseDefaultKeyContainer = 2, + UseNonExportableKey = 4, + UseExistingKey = 8, + UseArchivableKey = 16, + UseUserProtectedKey = 32, + NoPrompt = 64 +} + +// Namespace: System.Security.Cryptography +public abstract class DES : SymmetricAlgorithm // TypeDefIndex: 1286 +{ + // Fields + private const int keySizeByte = 8; // 0x00 + internal static readonly byte[] weakKeys; // 0x00 + internal static readonly byte[] semiWeakKeys; // 0x04 + + // Properties + public override byte[] Key { get; set; } // 0x0043E910 0x0043E9E8 + + // Methods + protected void .ctor(); // 0x0043DE80 + private static void .cctor(); // 0x0043E080 + public static DES Create(); // 0x0043E174 + public static DES Create(string algName); // 0x0043E1FC + public static bool IsWeakKey(byte[] rgbKey); // 0x0043E2D0 + public static bool IsSemiWeakKey(byte[] rgbKey); // 0x0043E5F0 +} + +// Namespace: System.Security.Cryptography +internal class DESTransform : SymmetricTransform // TypeDefIndex: 1287 +{ + // Fields + internal static readonly int KEY_BIT_SIZE; // 0x00 + internal static readonly int KEY_BYTE_SIZE; // 0x04 + internal static readonly int BLOCK_BIT_SIZE; // 0x08 + internal static readonly int BLOCK_BYTE_SIZE; // 0x0C + private byte[] keySchedule; // 0x34 + private byte[] byteBuff; // 0x38 + private uint[] dwordBuff; // 0x3C + private static readonly uint[] spBoxes; // 0x10 + private static readonly byte[] PC1; // 0x14 + private static readonly byte[] leftRotTotal; // 0x18 + private static readonly byte[] PC2; // 0x1C + internal static readonly uint[] ipTab; // 0x20 + internal static readonly uint[] fpTab; // 0x24 + + // Methods + internal void .ctor(SymmetricAlgorithm symmAlgo, bool encryption, byte[] key, byte[] iv); // 0x0043ED70 + private static void .cctor(); // 0x0043F964 + private uint CipherFunct(uint r, int n); // 0x0043FB6C + internal static void Permutation(byte[] input, byte[] output, uint[] permTab, bool preSwap); // 0x00440068 + private static void BSwap(byte[] byteBuff); // 0x004406B0 + internal void SetKey(byte[] key); // 0x0043F304 + public void ProcessBlock(byte[] input, byte[] output); // 0x00440920 + protected override void ECB(byte[] input, byte[] output); // 0x00440D94 + internal static byte[] GetStrongKey(); // 0x0043F1E0 +} + +// Namespace: System.Security.Cryptography +public sealed class DESCryptoServiceProvider : DES // TypeDefIndex: 1288 +{ + // Methods + public void .ctor(); // 0x0043EC64 + public override ICryptoTransform CreateDecryptor(byte[] rgbKey, byte[] rgbIV); // 0x0043ECE4 + public override ICryptoTransform CreateEncryptor(byte[] rgbKey, byte[] rgbIV); // 0x0043F038 + public override void GenerateIV(); // 0x0043F0C4 + public override void GenerateKey(); // 0x0043F160 +} + +// Namespace: System.Security.Cryptography +public abstract class DSA : AsymmetricAlgorithm // TypeDefIndex: 1289 +{ + // Methods + protected void .ctor(); // 0x00440E7C + public static DSA Create(); // 0x00440E84 + public static DSA Create(string algName); // 0x00440EE0 + public abstract byte[] CreateSignature(byte[] rgbHash); + public abstract DSAParameters ExportParameters(bool includePrivateParameters); + internal void ZeroizePrivateKey(DSAParameters parameters); // 0x00440FB4 + public override void FromXmlString(string xmlString); // 0x00440FD0 + public abstract void ImportParameters(DSAParameters parameters); + public override string ToXmlString(bool includePrivateParameters); // 0x004413D0 + public abstract bool VerifySignature(byte[] rgbHash, byte[] rgbSignature); +} + +// Namespace: System.Security.Cryptography +public sealed class DSACryptoServiceProvider : DSA, ICspAsymmetricAlgorithm // TypeDefIndex: 1290 +{ + // Fields + private const int PROV_DSS_DH = 13; // 0x00 + private KeyPairPersistence store; // 0x10 + private bool persistKey; // 0x14 + private bool persisted; // 0x15 + private bool privateKeyExportable; // 0x16 + private bool m_disposed; // 0x17 + private DSAManaged dsa; // 0x18 + private static bool useMachineKeyStore; // 0x00 + + // Properties + public override string KeyExchangeAlgorithm { get; } // 0x00442150 + public override int KeySize { get; } // 0x00442158 + public bool PersistKeyInCsp { get; set; } // 0x0044218C 0x00442194 + public bool PublicOnly { get; } // 0x0044219C + public override string SignatureAlgorithm { get; } // 0x004421C8 + public static bool UseMachineKeyStore { get; set; } // 0x00442224 0x004422B0 + public CspKeyContainerInfo CspKeyContainerInfo { get; } // 0x00442FD8 + + // Methods + public void .ctor(); // 0x00441CFC + public void .ctor(CspParameters parameters); // 0x00442054 + public void .ctor(int dwKeySize); // 0x00442060 + public void .ctor(int dwKeySize, CspParameters parameters); // 0x00441D08 + private static void .cctor(); // 0x00442068 + protected override void Finalize(); // 0x0044206C + public override DSAParameters ExportParameters(bool includePrivateParameters); // 0x00442340 + public override void ImportParameters(DSAParameters parameters); // 0x00442434 + public override byte[] CreateSignature(byte[] rgbHash); // 0x004424C4 + public byte[] SignData(byte[] buffer); // 0x00442500 + public byte[] SignData(byte[] buffer, int offset, int count); // 0x00442638 + public byte[] SignData(Stream inputStream); // 0x00442954 + public byte[] SignHash(byte[] rgbHash, string str); // 0x00442B58 + public bool VerifyData(byte[] rgbData, byte[] rgbSignature); // 0x00442CD4 + public bool VerifyHash(byte[] rgbHash, string str, byte[] rgbSignature); // 0x00442D48 + public override bool VerifySignature(byte[] rgbHash, byte[] rgbSignature); // 0x00442EE4 + protected override void Dispose(bool disposing); // 0x004420D4 + private void OnKeyGenerated(object sender, EventArgs e); // 0x00442F28 + public byte[] ExportCspBlob(bool includePrivateParameters); // 0x00442FE0 + public void ImportCspBlob(byte[] keyBlob); // 0x00442FF8 +} + +// Namespace: System.Security.Cryptography +[Serializable] +public struct DSAParameters // TypeDefIndex: 1291 +{ + // Fields + public int Counter; // 0x08 + public byte[] G; // 0x0C + public byte[] J; // 0x10 + public byte[] P; // 0x14 + public byte[] Q; // 0x18 + public byte[] Seed; // 0x1C + [NonSerialized] public byte[] X; // 0x20 + public byte[] Y; // 0x24 + +} + +// Namespace: System.Security.Cryptography +public class DSASignatureDeformatter : AsymmetricSignatureDeformatter // TypeDefIndex: 1292 +{ + // Fields + private DSA dsa; // 0x08 + + // Methods + public void .ctor(); // 0x0044334C + public void .ctor(AsymmetricAlgorithm key); // 0x00443354 + public override void SetHashAlgorithm(string strName); // 0x00443388 + public override void SetKey(AsymmetricAlgorithm key); // 0x00443518 + public override bool VerifySignature(byte[] rgbHash, byte[] rgbSignature); // 0x00443610 +} + +// Namespace: System.Security.Cryptography +public class DSASignatureFormatter : AsymmetricSignatureFormatter // TypeDefIndex: 1293 +{ + // Fields + private DSA dsa; // 0x08 + + // Methods + public void .ctor(); // 0x00443790 + public void .ctor(AsymmetricAlgorithm key); // 0x00443798 + public override byte[] CreateSignature(byte[] rgbHash); // 0x004437CC + public override void SetHashAlgorithm(string strName); // 0x0044389C + public override void SetKey(AsymmetricAlgorithm key); // 0x00443A2C +} + +// Namespace: System.Security.Cryptography +public abstract class DeriveBytes // TypeDefIndex: 1294 +{ + // Methods + protected void .ctor(); // 0x00443B24 + public abstract byte[] GetBytes(int cb); + public abstract void Reset(); +} + +// Namespace: System.Security.Cryptography +[Serializable] +public enum FromBase64TransformMode // TypeDefIndex: 1295 +{ + IgnoreWhiteSpaces = 0, + DoNotIgnoreWhiteSpaces = 1 +} + +// Namespace: System.Security.Cryptography +public class FromBase64Transform : IDisposable, ICryptoTransform // TypeDefIndex: 1296 +{ + // Fields + private const byte TerminatorByte = 61; // 0x00 + private FromBase64TransformMode mode; // 0x08 + private byte[] accumulator; // 0x0C + private int accPtr; // 0x10 + private bool m_disposed; // 0x14 + private byte[] lookupTable; // 0x18 + + // Properties + public bool CanTransformMultipleBlocks { get; } // 0x00443C68 + public virtual bool CanReuseTransform { get; } // 0x00443C70 + public int InputBlockSize { get; } // 0x00443C78 + public int OutputBlockSize { get; } // 0x00443C80 + + // Methods + public void .ctor(); // 0x00443B2C + public void .ctor(FromBase64TransformMode whitespaces); // 0x00443B34 + private void System.IDisposable.Dispose(); // 0x00443BBC + protected override void Finalize(); // 0x00443BF0 + public void Clear(); // 0x00443C88 + protected virtual void Dispose(bool disposing); // 0x00443C9C + private byte lookup(byte input); // 0x00443CEC + private int ProcessBlock(byte[] output, int offset); // 0x00443E4C + private void CheckInputParameters(byte[] inputBuffer, int inputOffset, int inputCount); // 0x00444318 + public int TransformBlock(byte[] inputBuffer, int inputOffset, int inputCount, byte[] outputBuffer, int outputOffset); // 0x00444590 + public byte[] TransformFinalBlock(byte[] inputBuffer, int inputOffset, int inputCount); // 0x00444854 +} + +// Namespace: System.Security.Cryptography +public abstract class HMAC : KeyedHashAlgorithm // TypeDefIndex: 1297 +{ + // Fields + private bool _disposed; // 0x1C + private string _hashName; // 0x20 + private HashAlgorithm _algo; // 0x24 + private BlockProcessor _block; // 0x28 + private int _blockSizeValue; // 0x2C + + // Properties + protected int BlockSizeValue { get; set; } // 0x00444CA8 0x00444CB0 + public string HashName { get; set; } // 0x00444CB8 0x00444CC0 + public override byte[] Key { get; set; } // 0x00444DB4 0x00444F2C + internal BlockProcessor Block { get; } // 0x00445168 + + // Methods + protected void .ctor(); // 0x00444C5C + private byte[] KeySetup(byte[] key, byte padding); // 0x004451F8 + protected override void Dispose(bool disposing); // 0x00445368 + protected override void HashCore(byte[] rgb, int ib, int cb); // 0x004453DC + protected override byte[] HashFinal(); // 0x00445500 + public override void Initialize(); // 0x00445C8C + public static HMAC Create(); // 0x00445E0C + public static HMAC Create(string algorithmName); // 0x00445E68 +} + +// Namespace: System.Security.Cryptography +public class HMACMD5 : HMAC // TypeDefIndex: 1298 +{ + // Methods + public void .ctor(); // 0x00445F3C + public void .ctor(byte[] key); // 0x00445F64 +} + +// Namespace: System.Security.Cryptography +public class HMACRIPEMD160 : HMAC // TypeDefIndex: 1299 +{ + // Methods + public void .ctor(); // 0x00446010 + public void .ctor(byte[] key); // 0x00446038 +} + +// Namespace: System.Security.Cryptography +public class HMACSHA1 : HMAC // TypeDefIndex: 1300 +{ + // Methods + public void .ctor(); // 0x004460E4 + public void .ctor(byte[] key); // 0x0044610C + public void .ctor(byte[] key, bool useManagedSha1); // 0x004461B8 +} + +// Namespace: System.Security.Cryptography +public class HMACSHA256 : HMAC // TypeDefIndex: 1301 +{ + // Methods + public void .ctor(); // 0x004462C4 + public void .ctor(byte[] key); // 0x004462EC +} + +// Namespace: System.Security.Cryptography +public class HMACSHA384 : HMAC // TypeDefIndex: 1302 +{ + // Fields + private static bool legacy_mode; // 0x00 + private bool legacy; // 0x30 + + // Properties + public bool ProduceLegacyHmacValues { get; set; } // 0x00446660 0x00446568 + + // Methods + public void .ctor(); // 0x00446398 + public void .ctor(byte[] key); // 0x00446464 + private static void .cctor(); // 0x0044659C +} + +// Namespace: System.Security.Cryptography +public class HMACSHA512 : HMAC // TypeDefIndex: 1303 +{ + // Fields + private static bool legacy_mode; // 0x00 + private bool legacy; // 0x30 + + // Properties + public bool ProduceLegacyHmacValues { get; set; } // 0x00446930 0x00446838 + + // Methods + public void .ctor(); // 0x00446668 + public void .ctor(byte[] key); // 0x00446734 + private static void .cctor(); // 0x0044686C +} + +// Namespace: System.Security.Cryptography +public abstract class HashAlgorithm : IDisposable, ICryptoTransform // TypeDefIndex: 1304 +{ + // Fields + protected internal byte[] HashValue; // 0x08 + protected int HashSizeValue; // 0x0C + protected int State; // 0x10 + private bool disposed; // 0x14 + + // Properties + public virtual bool CanTransformMultipleBlocks { get; } // 0x0044698C + public virtual bool CanReuseTransform { get; } // 0x00446994 + public virtual byte[] Hash { get; } // 0x00446A0C + public virtual int HashSize { get; } // 0x00446AC0 + public virtual int InputBlockSize { get; } // 0x00446AD4 + public virtual int OutputBlockSize { get; } // 0x00446ADC + + // Methods + protected void .ctor(); // 0x00446938 + private void System.IDisposable.Dispose(); // 0x00446958 + public void Clear(); // 0x0044699C + public byte[] ComputeHash(byte[] buffer); // 0x0044256C + public byte[] ComputeHash(byte[] buffer, int offset, int count); // 0x004426BC + public byte[] ComputeHash(Stream inputStream); // 0x004429C0 + public static HashAlgorithm Create(); // 0x004469B0 + public static HashAlgorithm Create(string hashName); // 0x00444CE0 + protected abstract void HashCore(byte[] array, int ibStart, int cbSize); + protected abstract byte[] HashFinal(); + public abstract void Initialize(); + protected virtual void Dispose(bool disposing); // 0x00446AC8 + public int TransformBlock(byte[] inputBuffer, int inputOffset, int inputCount, byte[] outputBuffer, int outputOffset); // 0x00445760 + public byte[] TransformFinalBlock(byte[] inputBuffer, int inputOffset, int inputCount); // 0x00445A74 +} + +// Namespace: System.Security.Cryptography +public interface ICryptoTransform : IDisposable // TypeDefIndex: 1305 +{ + // Properties + bool CanReuseTransform { get; } + bool CanTransformMultipleBlocks { get; } + int InputBlockSize { get; } + int OutputBlockSize { get; } + + // Methods + int TransformBlock(byte[] inputBuffer, int inputOffset, int inputCount, byte[] outputBuffer, int outputOffset); + byte[] TransformFinalBlock(byte[] inputBuffer, int inputOffset, int inputCount); +} + +// Namespace: System.Security.Cryptography +public interface ICspAsymmetricAlgorithm // TypeDefIndex: 1306 +{ + // Properties + CspKeyContainerInfo CspKeyContainerInfo { get; } + + // Methods + byte[] ExportCspBlob(bool includePrivateParameters); + void ImportCspBlob(byte[] rawData); +} + +// Namespace: System.Security.Cryptography +[Serializable] +public enum KeyNumber // TypeDefIndex: 1307 +{ + Exchange = 1, + Signature = 2 +} + +// Namespace: System.Security.Cryptography +public sealed class KeySizes // TypeDefIndex: 1308 +{ + // Fields + private int _maxSize; // 0x08 + private int _minSize; // 0x0C + private int _skipSize; // 0x10 + + // Properties + public int MaxSize { get; } // 0x00446AE4 + public int MinSize { get; } // 0x00446AEC + public int SkipSize { get; } // 0x00446AF4 + + // Methods + public void .ctor(int minSize, int maxSize, int skipSize); // 0x0043E050 + internal bool IsLegal(int keySize); // 0x00446AFC + internal static bool IsLegalKeySize(KeySizes[] legalKeys, int size); // 0x0043655C +} + +// Namespace: System.Security.Cryptography +public abstract class KeyedHashAlgorithm : HashAlgorithm // TypeDefIndex: 1309 +{ + // Fields + protected byte[] KeyValue; // 0x18 + + // Properties + public virtual byte[] Key { get; set; } // 0x00444E74 0x00445028 + + // Methods + protected void .ctor(); // 0x00444C88 + protected override void Finalize(); // 0x00446B6C + protected override void Dispose(bool disposing); // 0x004453A8 + private void ZeroizeKey(); // 0x00446BE4 + public static KeyedHashAlgorithm Create(); // 0x00446C00 + public static KeyedHashAlgorithm Create(string algName); // 0x00446C5C +} + +// Namespace: System.Security.Cryptography +public class MACTripleDES : KeyedHashAlgorithm // TypeDefIndex: 1310 +{ + // Fields + private TripleDES tdes; // 0x1C + private MACAlgorithm mac; // 0x20 + private bool m_disposed; // 0x24 + + // Properties + public PaddingMode Padding { get; set; } // 0x00447158 0x0044718C + + // Methods + public void .ctor(); // 0x00446D30 + public void .ctor(byte[] rgbKey); // 0x00446F10 + public void .ctor(string strTripleDES, byte[] rgbKey); // 0x00446FF0 + private void Setup(string strTripleDES, byte[] rgbKey); // 0x00446DAC + protected override void Finalize(); // 0x004470E8 + protected override void Dispose(bool disposing); // 0x004471C8 + public override void Initialize(); // 0x00447258 + protected override void HashCore(byte[] rgbData, int ibStart, int cbSize); // 0x00447338 + protected override byte[] HashFinal(); // 0x00447454 +} + +// Namespace: System.Security.Cryptography +public abstract class MD5 : HashAlgorithm // TypeDefIndex: 1311 +{ + // Methods + protected void .ctor(); // 0x0044752C + public static MD5 Create(); // 0x00447554 + public static MD5 Create(string algName); // 0x004475B0 +} + +// Namespace: System.Security.Cryptography +public sealed class MD5CryptoServiceProvider : MD5 // TypeDefIndex: 1312 +{ + // Fields + private const int BLOCK_SIZE_BYTES = 64; // 0x00 + private const int HASH_SIZE_BYTES = 16; // 0x00 + private uint[] _H; // 0x18 + private uint[] buff; // 0x1C + private ulong count; // 0x20 + private byte[] _ProcessingBuffer; // 0x28 + private int _ProcessingBufferCount; // 0x2C + private static readonly uint[] K; // 0x00 + + // Methods + public void .ctor(); // 0x00447684 + private static void .cctor(); // 0x0044784C + protected override void Finalize(); // 0x004478E4 + protected override void Dispose(bool disposing); // 0x004478F4 + protected override void HashCore(byte[] rgb, int ibStart, int cbSize); // 0x00447980 + protected override byte[] HashFinal(); // 0x0044A6A8 + public override void Initialize(); // 0x0044773C + private void ProcessBlock(byte[] inputBuffer, int inputOffset); // 0x00447A84 + private void ProcessFinalBlock(byte[] inputBuffer, int inputOffset, int inputCount); // 0x0044A7D0 + internal void AddLength(ulong length, byte[] buffer, int position); // 0x0044A9F4 +} + +// Namespace: System.Security.Cryptography +public abstract class MaskGenerationMethod // TypeDefIndex: 1313 +{ + // Methods + protected void .ctor(); // 0x001681C8 + public abstract byte[] GenerateMask(byte[] rgbSeed, int cbReturn); +} + +// Namespace: System.Security.Cryptography +public class PKCS1MaskGenerationMethod : MaskGenerationMethod // TypeDefIndex: 1314 +{ + // Fields + private string hashName; // 0x08 + + // Properties + public string HashName { get; set; } // 0x0016823C 0x00168244 + + // Methods + public void .ctor(); // 0x001681D0 + public override byte[] GenerateMask(byte[] rgbSeed, int cbReturn); // 0x001682C0 +} + +// Namespace: System.Security.Cryptography +[Serializable] +public enum PaddingMode // TypeDefIndex: 1315 +{ + None = 1, + PKCS7 = 2, + Zeros = 3, + ANSIX923 = 4, + ISO10126 = 5 +} + +// Namespace: System.Security.Cryptography +public class PasswordDeriveBytes : DeriveBytes // TypeDefIndex: 1316 +{ + // Fields + private string HashNameValue; // 0x08 + private byte[] SaltValue; // 0x0C + private int IterationsValue; // 0x10 + private HashAlgorithm hash; // 0x14 + private int state; // 0x18 + private byte[] password; // 0x1C + private byte[] initial; // 0x20 + private byte[] output; // 0x24 + private int position; // 0x28 + private int hashnumber; // 0x2C + + // Properties + public string HashName { get; set; } // 0x00168FA4 0x00168D6C + public int IterationCount { get; set; } // 0x00168FAC 0x00168E80 + public byte[] Salt { get; set; } // 0x00168FB4 0x00168C4C + + // Methods + public void .ctor(string strPassword, byte[] rgbSalt); // 0x00168364 + public void .ctor(string strPassword, byte[] rgbSalt, CspParameters cspParams); // 0x00168558 + public void .ctor(string strPassword, byte[] rgbSalt, string strHashName, int iterations); // 0x00168654 + public void .ctor(string strPassword, byte[] rgbSalt, string strHashName, int iterations, CspParameters cspParams); // 0x0016869C + public void .ctor(byte[] password, byte[] salt); // 0x00168790 + public void .ctor(byte[] password, byte[] salt, CspParameters cspParams); // 0x00168964 + public void .ctor(byte[] password, byte[] salt, string hashName, int iterations); // 0x00168A60 + public void .ctor(byte[] password, byte[] salt, string hashName, int iterations, CspParameters cspParams); // 0x00168AA8 + protected override void Finalize(); // 0x00168B9C + private void Prepare(string strPassword, byte[] rgbSalt, string strHashName, int iterations); // 0x001683F4 + private void Prepare(byte[] password, byte[] rgbSalt, string strHashName, int iterations); // 0x00168820 + public byte[] CryptDeriveKey(string algname, string alghashname, int keySize, byte[] rgbIV); // 0x00169060 + public override byte[] GetBytes(int cb); // 0x00169164 + public override void Reset(); // 0x00169564 +} + +// Namespace: System.Security.Cryptography +public abstract class RC2 : SymmetricAlgorithm // TypeDefIndex: 1317 +{ + // Fields + protected int EffectiveKeySizeValue; // 0x30 + + // Properties + public virtual int EffectiveKeySize { get; set; } // 0x001699A0 0x001699B4 + public override int KeySize { get; set; } // 0x001699BC 0x001699C4 + + // Methods + protected void .ctor(); // 0x00169690 + public static RC2 Create(); // 0x0016986C + public static RC2 Create(string AlgName); // 0x001698C8 +} + +// Namespace: System.Security.Cryptography +public sealed class RC2CryptoServiceProvider : RC2 // TypeDefIndex: 1318 +{ + // Fields + private bool _useSalt; // 0x34 + + // Properties + public override int EffectiveKeySize { get; set; } // 0x001699E8 0x001699FC + public bool UseSalt { get; set; } // 0x0016A410 0x0016A418 + + // Methods + public void .ctor(); // 0x001699E4 + public override ICryptoTransform CreateDecryptor(byte[] rgbKey, byte[] rgbIV); // 0x00169ABC + public override ICryptoTransform CreateEncryptor(byte[] rgbKey, byte[] rgbIV); // 0x0016A33C + public override void GenerateIV(); // 0x0016A3C8 + public override void GenerateKey(); // 0x0016A3EC +} + +// Namespace: System.Security.Cryptography +internal class RC2Transform : SymmetricTransform // TypeDefIndex: 1319 +{ + // Fields + private ushort R0; // 0x34 + private ushort R1; // 0x36 + private ushort R2; // 0x38 + private ushort R3; // 0x3A + private ushort[] K; // 0x3C + private int j; // 0x40 + private static readonly byte[] pitable; // 0x00 + + // Methods + public void .ctor(RC2 rc2Algo, bool encryption, byte[] key, byte[] iv); // 0x00169B48 + private static void .cctor(); // 0x0016A420 + protected override void ECB(byte[] input, byte[] output); // 0x0016A4B8 +} + +// Namespace: System.Security.Cryptography +public abstract class RIPEMD160 : HashAlgorithm // TypeDefIndex: 1320 +{ + // Methods + protected void .ctor(); // 0x0016B80C + public static RIPEMD160 Create(); // 0x0016B82C + public static RIPEMD160 Create(string hashName); // 0x0016B888 +} + +// Namespace: System.Security.Cryptography +public class RIPEMD160Managed : RIPEMD160 // TypeDefIndex: 1321 +{ + // Fields + private const int BLOCK_SIZE_BYTES = 64; // 0x00 + private byte[] _ProcessingBuffer; // 0x18 + private uint[] _X; // 0x1C + private uint[] _HashValue; // 0x20 + private ulong _Length; // 0x28 + private int _ProcessingBufferCount; // 0x30 + + // Methods + public void .ctor(); // 0x0016B960 + public override void Initialize(); // 0x0016BA1C + protected override void HashCore(byte[] rgb, int ibStart, int cbSize); // 0x0016BBB8 + protected override byte[] HashFinal(); // 0x0016BEFC + protected override void Finalize(); // 0x0016C288 + private void ProcessBlock(byte[] buffer, int offset); // 0x0016BCCC + private void Compress(); // 0x0016C300 + private void CompressFinal(ulong length); // 0x0016C090 + private uint ROL(uint x, int n); // 0x00171458 + private uint F(uint x, uint y, uint z); // 0x00171468 + private uint G(uint x, uint y, uint z); // 0x00171474 + private uint H(uint x, uint y, uint z); // 0x00171484 + private uint I(uint x, uint y, uint z); // 0x00171494 + private uint J(uint x, uint y, uint z); // 0x001714A4 + private void FF(uint a, uint b, uint c, uint d, uint e, uint x, int s); // 0x001710D0 + private void GG(uint a, uint b, uint c, uint d, uint e, uint x, int s); // 0x0017111C + private void HH(uint a, uint b, uint c, uint d, uint e, uint x, int s); // 0x00171178 + private void II(uint a, uint b, uint c, uint d, uint e, uint x, int s); // 0x001711D8 + private void JJ(uint a, uint b, uint c, uint d, uint e, uint x, int s); // 0x00171234 + private void FFF(uint a, uint b, uint c, uint d, uint e, uint x, int s); // 0x0017140C + private void GGG(uint a, uint b, uint c, uint d, uint e, uint x, int s); // 0x001713B0 + private void HHH(uint a, uint b, uint c, uint d, uint e, uint x, int s); // 0x00171350 + private void III(uint a, uint b, uint c, uint d, uint e, uint x, int s); // 0x001712F4 + private void JJJ(uint a, uint b, uint c, uint d, uint e, uint x, int s); // 0x00171294 +} + +// Namespace: System.Security.Cryptography +public sealed class RNGCryptoServiceProvider : RandomNumberGenerator // TypeDefIndex: 1322 +{ + // Fields + private static object _lock; // 0x00 + private IntPtr _handle; // 0x08 + + // Methods + public void .ctor(); // 0x001714B4 + private static void .cctor(); // 0x0017161C + private void Check(); // 0x00171558 + private static bool RngOpen(); // 0x001716A8 + private static IntPtr RngInitialize(byte[] seed); // 0x00171554 + private static IntPtr RngGetBytes(IntPtr handle, byte[] data); // 0x001716AC + private static void RngClose(IntPtr handle); // 0x001716B0 + public override void GetBytes(byte[] data); // 0x001716B4 + public override void GetNonZeroBytes(byte[] data); // 0x001718BC + protected override void Finalize(); // 0x00171AB0 +} + +// Namespace: System.Security.Cryptography +public abstract class RSA : AsymmetricAlgorithm // TypeDefIndex: 1323 +{ + // Methods + protected void .ctor(); // 0x00171BA8 + public static RSA Create(); // 0x00171BB0 + public static RSA Create(string algName); // 0x00171C0C + public abstract byte[] EncryptValue(byte[] rgb); + public abstract byte[] DecryptValue(byte[] rgb); + public abstract RSAParameters ExportParameters(bool includePrivateParameters); + public abstract void ImportParameters(RSAParameters parameters); + internal void ZeroizePrivateKey(RSAParameters parameters); // 0x00171CE4 + public override void FromXmlString(string xmlString); // 0x00171DB0 + public override string ToXmlString(bool includePrivateParameters); // 0x001722EC +} + +// Namespace: System.Security.Cryptography +public sealed class RSACryptoServiceProvider : RSA, ICspAsymmetricAlgorithm // TypeDefIndex: 1324 +{ + // Fields + private const int PROV_RSA_FULL = 1; // 0x00 + private KeyPairPersistence store; // 0x10 + private bool persistKey; // 0x14 + private bool persisted; // 0x15 + private bool privateKeyExportable; // 0x16 + private bool m_disposed; // 0x17 + private RSAManaged rsa; // 0x18 + private static bool useMachineKeyStore; // 0x00 + private static Dictionary`2 <>f__switch$map29; // 0x04 + + // Properties + public static bool UseMachineKeyStore { get; set; } // 0x00172F7C 0x00173008 + public override string KeyExchangeAlgorithm { get; } // 0x00173170 + public override int KeySize { get; } // 0x00172F58 + public bool PersistKeyInCsp { get; set; } // 0x001731CC 0x001731D4 + public bool PublicOnly { get; } // 0x00173294 + public override string SignatureAlgorithm { get; } // 0x001732C0 + public CspKeyContainerInfo CspKeyContainerInfo { get; } // 0x00174440 + + // Methods + public void .ctor(); // 0x00172B2C + public void .ctor(CspParameters parameters); // 0x00172EA8 + public void .ctor(int dwKeySize); // 0x00172EE0 + public void .ctor(int dwKeySize, CspParameters parameters); // 0x00172F18 + private static void .cctor(); // 0x00172F54 + private void Common(int dwKeySize, CspParameters p); // 0x00172B60 + protected override void Finalize(); // 0x00173098 + public byte[] Decrypt(byte[] rgb, bool fOAEP); // 0x0017331C + public override byte[] DecryptValue(byte[] rgb); // 0x001734B8 + public byte[] Encrypt(byte[] rgb, bool fOAEP); // 0x001735B4 + public override byte[] EncryptValue(byte[] rgb); // 0x00173700 + public override RSAParameters ExportParameters(bool includePrivateParameters); // 0x0017373C + public override void ImportParameters(RSAParameters parameters); // 0x00173828 + private HashAlgorithm GetHash(object halg); // 0x001738B8 + public byte[] SignData(byte[] buffer, object halg); // 0x00173AA0 + public byte[] SignData(Stream inputStream, object halg); // 0x00173C54 + public byte[] SignData(byte[] buffer, int offset, int count, object halg); // 0x00173B74 + private string GetHashNameFromOID(string oid); // 0x00173D18 + public byte[] SignHash(byte[] rgbHash, string str); // 0x00174014 + public bool VerifyData(byte[] buffer, object halg, byte[] signature); // 0x00174138 + public bool VerifyHash(byte[] rgbHash, string str, byte[] rgbSignature); // 0x001742BC + protected override void Dispose(bool disposing); // 0x00173100 + private void OnKeyGenerated(object sender, EventArgs e); // 0x001731E4 + public byte[] ExportCspBlob(bool includePrivateParameters); // 0x00174448 + public void ImportCspBlob(byte[] keyBlob); // 0x001744AC +} + +// Namespace: System.Security.Cryptography +public class RSAOAEPKeyExchangeDeformatter : AsymmetricKeyExchangeDeformatter // TypeDefIndex: 1325 +{ + // Fields + private RSA rsa; // 0x08 + + // Properties + public override string Parameters { get; set; } // 0x00174808 0x00174810 + + // Methods + public void .ctor(); // 0x00174800 + public void .ctor(AsymmetricAlgorithm key); // 0x00173450 + public override byte[] DecryptKeyExchange(byte[] rgbData); // 0x00174814 + public override void SetKey(AsymmetricAlgorithm key); // 0x00174978 +} + +// Namespace: System.Security.Cryptography +public class RSAOAEPKeyExchangeFormatter : AsymmetricKeyExchangeFormatter // TypeDefIndex: 1326 +{ + // Fields + private RSA rsa; // 0x08 + private RandomNumberGenerator random; // 0x0C + private byte[] param; // 0x10 + + // Properties + public byte[] Parameter { get; set; } // 0x00174A40 0x00174A48 + public override string Parameters { get; } // 0x00174A50 + public RandomNumberGenerator Rng { get; set; } // 0x00174A58 0x00174A60 + + // Methods + public void .ctor(); // 0x00174A20 + public void .ctor(AsymmetricAlgorithm key); // 0x001736A4 + public override byte[] CreateKeyExchange(byte[] rgbData); // 0x00174A68 + public override byte[] CreateKeyExchange(byte[] rgbData, Type symAlgType); // 0x00174BFC + public override void SetKey(AsymmetricAlgorithm key); // 0x00174C0C +} + +// Namespace: System.Security.Cryptography +public class RSAPKCS1KeyExchangeDeformatter : AsymmetricKeyExchangeDeformatter // TypeDefIndex: 1327 +{ + // Fields + private RSA rsa; // 0x08 + private RandomNumberGenerator random; // 0x0C + + // Properties + public override string Parameters { get; set; } // 0x00174CBC 0x00174CC4 + public RandomNumberGenerator RNG { get; set; } // 0x00174CC8 0x00174CD0 + + // Methods + public void .ctor(); // 0x00174CB4 + public void .ctor(AsymmetricAlgorithm key); // 0x00173484 + public override byte[] DecryptKeyExchange(byte[] rgbIn); // 0x00174CD8 + public override void SetKey(AsymmetricAlgorithm key); // 0x00174E28 +} + +// Namespace: System.Security.Cryptography +public class RSAPKCS1KeyExchangeFormatter : AsymmetricKeyExchangeFormatter // TypeDefIndex: 1328 +{ + // Fields + private RSA rsa; // 0x08 + private RandomNumberGenerator random; // 0x0C + + // Properties + public RandomNumberGenerator Rng { get; set; } // 0x00174FD0 0x00174FD8 + public override string Parameters { get; } // 0x00174FE0 + + // Methods + public void .ctor(); // 0x00174ED0 + public void .ctor(AsymmetricAlgorithm key); // 0x001736D8 + public override byte[] CreateKeyExchange(byte[] rgbData); // 0x0017503C + public override byte[] CreateKeyExchange(byte[] rgbData, Type symAlgType); // 0x001751AC + private void SetRSAKey(AsymmetricAlgorithm key); // 0x00174ED8 + public override void SetKey(AsymmetricAlgorithm key); // 0x001751BC +} + +// Namespace: System.Security.Cryptography +public class RSAPKCS1SignatureDeformatter : AsymmetricSignatureDeformatter // TypeDefIndex: 1329 +{ + // Fields + private RSA rsa; // 0x08 + private string hashName; // 0x0C + + // Methods + public void .ctor(); // 0x00175270 + public void .ctor(AsymmetricAlgorithm key); // 0x00175278 + public override void SetHashAlgorithm(string strName); // 0x001752AC + public override void SetKey(AsymmetricAlgorithm key); // 0x0017535C + public override bool VerifySignature(byte[] rgbHash, byte[] rgbSignature); // 0x00175454 +} + +// Namespace: System.Security.Cryptography +public class RSAPKCS1SignatureFormatter : AsymmetricSignatureFormatter // TypeDefIndex: 1330 +{ + // Fields + private RSA rsa; // 0x08 + private HashAlgorithm hash; // 0x0C + + // Methods + public void .ctor(); // 0x00175670 + public void .ctor(AsymmetricAlgorithm key); // 0x00175678 + public override byte[] CreateSignature(byte[] rgbHash); // 0x001756AC + public override void SetHashAlgorithm(string strName); // 0x0017585C + public override void SetKey(AsymmetricAlgorithm key); // 0x0017587C +} + +// Namespace: System.Security.Cryptography +[Serializable] +public struct RSAParameters // TypeDefIndex: 1331 +{ + // Fields + [NonSerialized] public byte[] P; // 0x08 + [NonSerialized] public byte[] Q; // 0x0C + [NonSerialized] public byte[] D; // 0x10 + [NonSerialized] public byte[] DP; // 0x14 + [NonSerialized] public byte[] DQ; // 0x18 + [NonSerialized] public byte[] InverseQ; // 0x1C + public byte[] Modulus; // 0x20 + public byte[] Exponent; // 0x24 + +} + +// Namespace: System.Security.Cryptography +public abstract class RandomNumberGenerator // TypeDefIndex: 1332 +{ + // Methods + protected void .ctor(); // 0x0017154C + public static RandomNumberGenerator Create(); // 0x00174BA0 + public static RandomNumberGenerator Create(string rngName); // 0x00175974 + public abstract void GetBytes(byte[] data); + public abstract void GetNonZeroBytes(byte[] data); +} + +// Namespace: System.Security.Cryptography +public class Rfc2898DeriveBytes : DeriveBytes // TypeDefIndex: 1333 +{ + // Fields + private const int defaultIterations = 1000; // 0x00 + private int _iteration; // 0x08 + private byte[] _salt; // 0x0C + private HMACSHA1 _hmac; // 0x10 + private byte[] _buffer; // 0x14 + private int _pos; // 0x18 + private int _f; // 0x1C + + // Properties + public int IterationCount { get; set; } // 0x001760B8 0x00175D28 + public byte[] Salt { get; set; } // 0x001760C0 0x00175BD0 + + // Methods + public void .ctor(string password, byte[] salt); // 0x00175A4C + public void .ctor(string password, byte[] salt, int iterations); // 0x00175A68 + public void .ctor(byte[] password, byte[] salt, int iterations); // 0x00175DD8 + public void .ctor(string password, int saltSize); // 0x00175EDC + public void .ctor(string password, int saltSize, int iterations); // 0x00175EF8 + private byte[] F(byte[] s, int c, int i); // 0x00176178 + public override byte[] GetBytes(int cb); // 0x00176374 + public override void Reset(); // 0x001765F4 +} + +// Namespace: System.Security.Cryptography +public abstract class Rijndael : SymmetricAlgorithm // TypeDefIndex: 1334 +{ + // Methods + protected void .ctor(); // 0x00176608 + public static Rijndael Create(); // 0x001767E0 + public static Rijndael Create(string algName); // 0x0017683C +} + +// Namespace: System.Security.Cryptography +public sealed class RijndaelManaged : Rijndael // TypeDefIndex: 1335 +{ + // Methods + public void .ctor(); // 0x00176914 + public override void GenerateIV(); // 0x00176918 + public override void GenerateKey(); // 0x0017693C + public override ICryptoTransform CreateDecryptor(byte[] rgbKey, byte[] rgbIV); // 0x00176960 + public override ICryptoTransform CreateEncryptor(byte[] rgbKey, byte[] rgbIV); // 0x00176AB4 +} + +// Namespace: System.Security.Cryptography +internal class RijndaelTransform : SymmetricTransform // TypeDefIndex: 1336 +{ + // Fields + private uint[] expandedKey; // 0x34 + private int Nb; // 0x38 + private int Nk; // 0x3C + private int Nr; // 0x40 + private static readonly uint[] Rcon; // 0x00 + private static readonly byte[] SBox; // 0x04 + private static readonly byte[] iSBox; // 0x08 + private static readonly uint[] T0; // 0x0C + private static readonly uint[] T1; // 0x10 + private static readonly uint[] T2; // 0x14 + private static readonly uint[] T3; // 0x18 + private static readonly uint[] iT0; // 0x1C + private static readonly uint[] iT1; // 0x20 + private static readonly uint[] iT2; // 0x24 + private static readonly uint[] iT3; // 0x28 + + // Methods + public void .ctor(Rijndael algo, bool encryption, byte[] key, byte[] iv); // 0x00176B40 + private static void .cctor(); // 0x00177B64 + public void Clear(); // 0x001777B8 + protected override void ECB(byte[] input, byte[] output); // 0x00177E38 + private uint SubByte(uint a); // 0x001779A0 + private void Encrypt128(byte[] indata, byte[] outdata, uint[] ekey); // 0x00177ED0 + private void Encrypt192(byte[] indata, byte[] outdata, uint[] ekey); // 0x0017E1A8 + private void Encrypt256(byte[] indata, byte[] outdata, uint[] ekey); // 0x001875B8 + private void Decrypt128(byte[] indata, byte[] outdata, uint[] ekey); // 0x00193BE8 + private void Decrypt192(byte[] indata, byte[] outdata, uint[] ekey); // 0x00199D24 + private void Decrypt256(byte[] indata, byte[] outdata, uint[] ekey); // 0x001A30B4 +} + +// Namespace: System.Security.Cryptography +public sealed class RijndaelManagedTransform : IDisposable, ICryptoTransform // TypeDefIndex: 1337 +{ + // Fields + private RijndaelTransform _st; // 0x08 + private int _bs; // 0x0C + + // Properties + public int BlockSizeValue { get; } // 0x001777CC + public bool CanTransformMultipleBlocks { get; } // 0x001777D4 + public bool CanReuseTransform { get; } // 0x00177808 + public int InputBlockSize { get; } // 0x0017783C + public int OutputBlockSize { get; } // 0x00177870 + + // Methods + internal void .ctor(Rijndael algo, bool encryption, byte[] key, byte[] iv); // 0x001769EC + private void System.IDisposable.Dispose(); // 0x00177780 + public void Clear(); // 0x001778A4 + public void Reset(); // 0x001778DC + public int TransformBlock(byte[] inputBuffer, int inputOffset, int inputCount, byte[] outputBuffer, int outputOffset); // 0x001778E0 + public byte[] TransformFinalBlock(byte[] inputBuffer, int inputOffset, int inputCount); // 0x00177948 +} + +// Namespace: System.Security.Cryptography +public abstract class SHA1 : HashAlgorithm // TypeDefIndex: 1338 +{ + // Methods + protected void .ctor(); // 0x003CC368 + public static SHA1 Create(); // 0x003CC388 + public static SHA1 Create(string hashName); // 0x003CC3E4 +} + +// Namespace: System.Security.Cryptography +internal class SHA1Internal // TypeDefIndex: 1339 +{ + // Fields + private const int BLOCK_SIZE_BYTES = 64; // 0x00 + private const int HASH_SIZE_BYTES = 20; // 0x00 + private uint[] _H; // 0x08 + private ulong count; // 0x10 + private byte[] _ProcessingBuffer; // 0x18 + private int _ProcessingBufferCount; // 0x1C + private uint[] buff; // 0x20 + + // Methods + public void .ctor(); // 0x003CC53C + public void HashCore(byte[] rgb, int ibStart, int cbSize); // 0x003CC6A8 + public byte[] HashFinal(); // 0x003CC7D4 + public void Initialize(); // 0x003CC928 + private void ProcessBlock(byte[] inputBuffer, uint inputOffset); // 0x003CCA74 + private static void InitialiseBuff(uint[] buff, byte[] input, uint inputOffset); // 0x003CD750 + private static void FillBuff(uint[] buff); // 0x003CE48C + private void ProcessFinalBlock(byte[] inputBuffer, int inputOffset, int inputCount); // 0x003CD51C + internal void AddLength(ulong length, byte[] buffer, int position); // 0x003CEB18 +} + +// Namespace: System.Security.Cryptography +public sealed class SHA1CryptoServiceProvider : SHA1 // TypeDefIndex: 1340 +{ + // Fields + private SHA1Internal sha; // 0x18 + + // Methods + public void .ctor(); // 0x003CC4BC + protected override void Finalize(); // 0x003CC5E4 + protected override void Dispose(bool disposing); // 0x003CC650 + protected override void HashCore(byte[] rgb, int ibStart, int cbSize); // 0x003CC658 + protected override byte[] HashFinal(); // 0x003CC7A4 + public override void Initialize(); // 0x003CC900 +} + +// Namespace: System.Security.Cryptography +public class SHA1Managed : SHA1 // TypeDefIndex: 1341 +{ + // Fields + private SHA1Internal sha; // 0x18 + + // Methods + public void .ctor(); // 0x003CECAC + protected override void HashCore(byte[] rgb, int ibStart, int cbSize); // 0x003CED2C + protected override byte[] HashFinal(); // 0x003CED7C + public override void Initialize(); // 0x003CEDAC +} + +// Namespace: System.Security.Cryptography +public abstract class SHA256 : HashAlgorithm // TypeDefIndex: 1342 +{ + // Methods + protected void .ctor(); // 0x003CEDD4 + public static SHA256 Create(); // 0x003CEDF4 + public static SHA256 Create(string hashName); // 0x003CEE50 +} + +// Namespace: System.Security.Cryptography +public class SHA256Managed : SHA256 // TypeDefIndex: 1343 +{ + // Fields + private const int BLOCK_SIZE_BYTES = 64; // 0x00 + private const int HASH_SIZE_BYTES = 32; // 0x00 + private uint[] _H; // 0x18 + private ulong count; // 0x20 + private byte[] _ProcessingBuffer; // 0x28 + private int _ProcessingBufferCount; // 0x2C + private uint[] buff; // 0x30 + + // Methods + public void .ctor(); // 0x003CEF28 + protected override void HashCore(byte[] rgb, int ibStart, int cbSize); // 0x003CEFE4 + protected override byte[] HashFinal(); // 0x003CF99C + public override void Initialize(); // 0x003CFCF4 + private void ProcessBlock(byte[] inputBuffer, int inputOffset); // 0x003CF0E8 + private void ProcessFinalBlock(byte[] inputBuffer, int inputOffset, int inputCount); // 0x003CFAD0 + internal void AddLength(ulong length, byte[] buffer, int position); // 0x003CFEF4 +} + +// Namespace: System.Security.Cryptography +public abstract class SHA384 : HashAlgorithm // TypeDefIndex: 1344 +{ + // Methods + protected void .ctor(); // 0x003D0088 + public static SHA384 Create(); // 0x003D00A8 + public static SHA384 Create(string hashName); // 0x003D0104 +} + +// Namespace: System.Security.Cryptography +public class SHA384Managed : SHA384 // TypeDefIndex: 1345 +{ + // Fields + private byte[] xBuf; // 0x18 + private int xBufOff; // 0x1C + private ulong byteCount1; // 0x20 + private ulong byteCount2; // 0x28 + private ulong H1; // 0x30 + private ulong H2; // 0x38 + private ulong H3; // 0x40 + private ulong H4; // 0x48 + private ulong H5; // 0x50 + private ulong H6; // 0x58 + private ulong H7; // 0x60 + private ulong H8; // 0x68 + private ulong[] W; // 0x70 + private int wOff; // 0x74 + + // Methods + public void .ctor(); // 0x003D01E0 + private void Initialize(bool reuse); // 0x003D0300 + public override void Initialize(); // 0x003D0488 + protected override void HashCore(byte[] rgb, int ibStart, int cbSize); // 0x003D0490 + protected override byte[] HashFinal(); // 0x003D08E4 + private void update(byte input); // 0x003D0628 + private void processWord(byte[] input, int inOff); // 0x003D06C8 + private void unpackWord(ulong word, byte[] output, int outOff); // 0x003D1268 + private void adjustByteCounts(); // 0x003D0AA8 + private void processLength(ulong lowW, ulong hiW); // 0x003D0AE4 + private void processBlock(); // 0x003D0B80 +} + +// Namespace: System.Security.Cryptography +public abstract class SHA512 : HashAlgorithm // TypeDefIndex: 1346 +{ + // Methods + protected void .ctor(); // 0x003D13F4 + public static SHA512 Create(); // 0x003D1414 + public static SHA512 Create(string hashName); // 0x003D1470 +} + +// Namespace: System.Security.Cryptography +public class SHA512Managed : SHA512 // TypeDefIndex: 1347 +{ + // Fields + private byte[] xBuf; // 0x18 + private int xBufOff; // 0x1C + private ulong byteCount1; // 0x20 + private ulong byteCount2; // 0x28 + private ulong H1; // 0x30 + private ulong H2; // 0x38 + private ulong H3; // 0x40 + private ulong H4; // 0x48 + private ulong H5; // 0x50 + private ulong H6; // 0x58 + private ulong H7; // 0x60 + private ulong H8; // 0x68 + private ulong[] W; // 0x70 + private int wOff; // 0x74 + + // Methods + public void .ctor(); // 0x003D1548 + private void Initialize(bool reuse); // 0x003D1668 + public override void Initialize(); // 0x003D17F0 + protected override void HashCore(byte[] rgb, int ibStart, int cbSize); // 0x003D17F8 + protected override byte[] HashFinal(); // 0x003D1C4C + private void update(byte input); // 0x003D1990 + private void processWord(byte[] input, int inOff); // 0x003D1A30 + private void unpackWord(ulong word, byte[] output, int outOff); // 0x003D26B0 + private void adjustByteCounts(); // 0x003D1E48 + private void processLength(ulong lowW, ulong hiW); // 0x003D1E84 + private void processBlock(); // 0x003D1F20 + private ulong rotateRight(ulong x, int n); // 0x003D29A8 + private ulong Ch(ulong x, ulong y, ulong z); // 0x003D28F4 + private ulong Maj(ulong x, ulong y, ulong z); // 0x003D296C + private ulong Sum0(ulong x); // 0x003D2928 + private ulong Sum1(ulong x); // 0x003D28B0 + private ulong Sigma0(ulong x); // 0x003D2878 + private ulong Sigma1(ulong x); // 0x003D283C +} + +// Namespace: System.Security.Cryptography +internal static class SHAConstants // TypeDefIndex: 1348 +{ + // Fields + public static readonly uint[] K1; // 0x00 + public static readonly ulong[] K2; // 0x04 + + // Methods + private static void .cctor(); // 0x003D2A14 +} + +// Namespace: System.Security.Cryptography +public class SignatureDescription // TypeDefIndex: 1349 +{ + // Fields + private string _DeformatterAlgorithm; // 0x08 + private string _DigestAlgorithm; // 0x0C + private string _FormatterAlgorithm; // 0x10 + private string _KeyAlgorithm; // 0x14 + + // Properties + public string DeformatterAlgorithm { get; set; } // 0x003D2C74 0x003D2C7C + public string DigestAlgorithm { get; set; } // 0x003D2C84 0x003D2C8C + public string FormatterAlgorithm { get; set; } // 0x003D2C94 0x003D2C9C + public string KeyAlgorithm { get; set; } // 0x003D2CA4 0x003D2CAC + + // Methods + public void .ctor(); // 0x003D2AF0 + public void .ctor(SecurityElement el); // 0x003D2AF8 + public virtual AsymmetricSignatureDeformatter CreateDeformatter(AsymmetricAlgorithm key); // 0x003D2CB4 + public virtual HashAlgorithm CreateDigest(); // 0x003D2E6C + public virtual AsymmetricSignatureFormatter CreateFormatter(AsymmetricAlgorithm key); // 0x003D2FA8 +} + +// Namespace: System.Security.Cryptography +internal class DSASignatureDescription : SignatureDescription // TypeDefIndex: 1350 +{ + // Methods + public void .ctor(); // 0x004436E8 +} + +// Namespace: System.Security.Cryptography +internal class RSAPKCS1SHA1SignatureDescription : SignatureDescription // TypeDefIndex: 1351 +{ + // Methods + public void .ctor(); // 0x001751C0 + public override AsymmetricSignatureDeformatter CreateDeformatter(AsymmetricAlgorithm key); // 0x00175268 +} + +// Namespace: System.Security.Cryptography +public abstract class SymmetricAlgorithm : IDisposable // TypeDefIndex: 1352 +{ + // Fields + protected int BlockSizeValue; // 0x08 + protected byte[] IVValue; // 0x0C + protected int KeySizeValue; // 0x10 + protected byte[] KeyValue; // 0x14 + protected KeySizes[] LegalBlockSizesValue; // 0x18 + protected KeySizes[] LegalKeySizesValue; // 0x1C + protected int FeedbackSizeValue; // 0x20 + protected CipherMode ModeValue; // 0x24 + protected PaddingMode PaddingValue; // 0x28 + private bool m_disposed; // 0x2C + + // Properties + public virtual int BlockSize { get; set; } // 0x003D3298 0x003D32A0 + public virtual int FeedbackSize { get; set; } // 0x003D3380 0x003D3388 + public virtual byte[] IV { get; set; } // 0x003D3450 0x003D3528 + public virtual byte[] Key { get; set; } // 0x003D3698 0x003D3770 + public virtual int KeySize { get; set; } // 0x003D38F4 0x003D38FC + public virtual KeySizes[] LegalBlockSizes { get; } // 0x003D39D0 + public virtual KeySizes[] LegalKeySizes { get; } // 0x003D39D8 + public virtual CipherMode Mode { get; set; } // 0x003D39E0 0x003D39E8 + public virtual PaddingMode Padding { get; set; } // 0x003D3B4C 0x003D3B54 + + // Methods + protected void .ctor(); // 0x003D3160 + private void System.IDisposable.Dispose(); // 0x003D3190 + protected override void Finalize(); // 0x003D31C4 + public void Clear(); // 0x003D323C + protected virtual void Dispose(bool disposing); // 0x003D3250 + public virtual ICryptoTransform CreateDecryptor(); // 0x003D3CB8 + public abstract ICryptoTransform CreateDecryptor(byte[] rgbKey, byte[] rgbIV); + public virtual ICryptoTransform CreateEncryptor(); // 0x003D3D10 + public abstract ICryptoTransform CreateEncryptor(byte[] rgbKey, byte[] rgbIV); + public abstract void GenerateIV(); + public abstract void GenerateKey(); + public bool ValidKeySize(int bitLength); // 0x003D3D68 + public static SymmetricAlgorithm Create(); // 0x003D3D74 + public static SymmetricAlgorithm Create(string algName); // 0x003D3DD0 +} + +// Namespace: System.Security.Cryptography +public class ToBase64Transform : IDisposable, ICryptoTransform // TypeDefIndex: 1353 +{ + // Fields + private const int inputBlockSize = 3; // 0x00 + private const int outputBlockSize = 4; // 0x00 + private bool m_disposed; // 0x08 + + // Properties + public bool CanTransformMultipleBlocks { get; } // 0x003D3F5C + public virtual bool CanReuseTransform { get; } // 0x003D3F64 + public int InputBlockSize { get; } // 0x003D3F6C + public int OutputBlockSize { get; } // 0x003D3F74 + + // Methods + public void .ctor(); // 0x003D3EA8 + private void System.IDisposable.Dispose(); // 0x003D3EB0 + protected override void Finalize(); // 0x003D3EE4 + public void Clear(); // 0x003D3F7C + protected virtual void Dispose(bool disposing); // 0x003D3F90 + public int TransformBlock(byte[] inputBuffer, int inputOffset, int inputCount, byte[] outputBuffer, int outputOffset); // 0x003D3FA4 + internal static void InternalTransformBlock(byte[] inputBuffer, int inputOffset, int inputCount, byte[] outputBuffer, int outputOffset); // 0x003D438C + public byte[] TransformFinalBlock(byte[] inputBuffer, int inputOffset, int inputCount); // 0x003D462C + internal static byte[] InternalTransformFinalBlock(byte[] inputBuffer, int inputOffset, int inputCount); // 0x003D4874 +} + +// Namespace: System.Security.Cryptography +public abstract class TripleDES : SymmetricAlgorithm // TypeDefIndex: 1354 +{ + // Properties + public override byte[] Key { get; set; } // 0x003D4EA0 0x003D5218 + + // Methods + protected void .ctor(); // 0x003D4CB0 + public static bool IsWeakKey(byte[] rgbKey); // 0x003D4FAC + public static TripleDES Create(); // 0x003D5388 + public static TripleDES Create(string str); // 0x003D53E4 +} + +// Namespace: System.Security.Cryptography +public sealed class TripleDESCryptoServiceProvider : TripleDES // TypeDefIndex: 1355 +{ + // Methods + public void .ctor(); // 0x003D54BC + public override void GenerateIV(); // 0x003D54C0 + public override void GenerateKey(); // 0x003D54E4 + public override ICryptoTransform CreateDecryptor(byte[] rgbKey, byte[] rgbIV); // 0x003D55AC + public override ICryptoTransform CreateEncryptor(byte[] rgbKey, byte[] rgbIV); // 0x003D599C +} + +// Namespace: System.Security.Cryptography +internal class TripleDESTransform : SymmetricTransform // TypeDefIndex: 1356 +{ + // Fields + private DESTransform E1; // 0x34 + private DESTransform D2; // 0x38 + private DESTransform E3; // 0x3C + private DESTransform D1; // 0x40 + private DESTransform E2; // 0x44 + private DESTransform D3; // 0x48 + + // Methods + public void .ctor(TripleDES algo, bool encryption, byte[] key, byte[] iv); // 0x003D5638 + protected override void ECB(byte[] input, byte[] output); // 0x003D5A28 + internal static byte[] GetStrongKey(); // 0x003D54FC +} + +// Namespace: System.Security.Permissions +[Serializable] +public abstract class CodeAccessSecurityAttribute : SecurityAttribute // TypeDefIndex: 1357 +{ + // Methods + protected void .ctor(SecurityAction action); // 0x003DA290 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class EnvironmentPermission : CodeAccessPermission, IBuiltInPermission, IUnrestrictedPermission // TypeDefIndex: 1358 +{ + // Fields + private const int version = 1; // 0x00 + private PermissionState _state; // 0x08 + private ArrayList readList; // 0x0C + private ArrayList writeList; // 0x10 + + // Methods + public void .ctor(PermissionState state); // 0x003DA298 + public void .ctor(EnvironmentPermissionAccess flag, string pathList); // 0x003DA344 + private int System.Security.Permissions.IBuiltInPermission.GetTokenIndex(); // 0x003DA838 + public void AddPathList(EnvironmentPermissionAccess flag, string pathList); // 0x003DA840 + public override IPermission Copy(); // 0x003DADF0 + public override void FromXml(SecurityElement esd); // 0x003DAF34 + public string GetPathList(EnvironmentPermissionAccess flag); // 0x003DAED4 + public override IPermission Intersect(IPermission target); // 0x003DB4F0 + public override bool IsSubsetOf(IPermission target); // 0x003DB904 + public bool IsUnrestricted(); // 0x003DB8F4 + public void SetPathList(EnvironmentPermissionAccess flag, string pathList); // 0x003DA3F0 + public override SecurityElement ToXml(); // 0x003DBFA0 + public override IPermission Union(IPermission other); // 0x003DC0D8 + private bool IsEmpty(); // 0x003DC254 + private EnvironmentPermission Cast(IPermission target); // 0x003DB814 + internal void ThrowInvalidFlag(EnvironmentPermissionAccess flag, bool context); // 0x003DACB8 + private string GetPathList(ArrayList list); // 0x003DB070 +} + +// Namespace: System.Security.Permissions +[Serializable] +public enum EnvironmentPermissionAccess // TypeDefIndex: 1359 +{ + NoAccess = 0, + Read = 1, + Write = 2, + AllAccess = 3 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class EnvironmentPermissionAttribute : CodeAccessSecurityAttribute // TypeDefIndex: 1360 +{ + // Fields + private string read; // 0x10 + private string write; // 0x14 + + // Properties + public string All { get; set; } // 0x003DC2E4 0x003DC380 + public string Read { get; set; } // 0x003DC38C 0x003DC394 + public string Write { get; set; } // 0x003DC39C 0x003DC3A4 + + // Methods + public void .ctor(SecurityAction action); // 0x003DC2DC + public override IPermission CreatePermission(); // 0x003DC3AC +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class FileDialogPermission : CodeAccessPermission, IBuiltInPermission, IUnrestrictedPermission // TypeDefIndex: 1361 +{ + // Fields + private const int version = 1; // 0x00 + private FileDialogPermissionAccess _access; // 0x08 + + // Properties + public FileDialogPermissionAccess Access { get; set; } // 0x003DC600 0x003DC418 + + // Methods + public void .ctor(PermissionState state); // 0x003DC3B4 + public void .ctor(FileDialogPermissionAccess access); // 0x003DC3F0 + private int System.Security.Permissions.IBuiltInPermission.GetTokenIndex(); // 0x003DC5F8 + public override IPermission Copy(); // 0x003DC608 + public override void FromXml(SecurityElement esd); // 0x003DC688 + public override IPermission Intersect(IPermission target); // 0x003DC83C + public override bool IsSubsetOf(IPermission target); // 0x003DC9C0 + public bool IsUnrestricted(); // 0x003DC9FC + public override SecurityElement ToXml(); // 0x003DCA10 + public override IPermission Union(IPermission target); // 0x003DCB24 + private FileDialogPermission Cast(IPermission target); // 0x003DC8E0 +} + +// Namespace: System.Security.Permissions +[Serializable] +public enum FileDialogPermissionAccess // TypeDefIndex: 1362 +{ + None = 0, + Open = 1, + Save = 2, + OpenSave = 3 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class FileDialogPermissionAttribute : CodeAccessSecurityAttribute // TypeDefIndex: 1363 +{ + // Fields + private bool canOpen; // 0x0D + private bool canSave; // 0x0E + + // Properties + public bool Open { get; set; } // 0x003DCC20 0x003DCC28 + public bool Save { get; set; } // 0x003DCC30 0x003DCC38 + + // Methods + public void .ctor(SecurityAction action); // 0x003DCC18 + public override IPermission CreatePermission(); // 0x003DCC40 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class FileIOPermission : CodeAccessPermission, IBuiltInPermission, IUnrestrictedPermission // TypeDefIndex: 1364 +{ + // Fields + private const int version = 1; // 0x00 + private static char[] BadPathNameCharacters; // 0x00 + private static char[] BadFileNameCharacters; // 0x04 + private bool m_Unrestricted; // 0x08 + private FileIOPermissionAccess m_AllFilesAccess; // 0x0C + private FileIOPermissionAccess m_AllLocalFilesAccess; // 0x10 + private ArrayList readList; // 0x14 + private ArrayList writeList; // 0x18 + private ArrayList appendList; // 0x1C + private ArrayList pathList; // 0x20 + + // Properties + public FileIOPermissionAccess AllFiles { get; set; } // 0x003DD394 0x003DD39C + public FileIOPermissionAccess AllLocalFiles { get; set; } // 0x003DD3AC 0x003DD3B4 + + // Methods + public void .ctor(PermissionState state); // 0x003DCD1C + public void .ctor(FileIOPermissionAccess access, string path); // 0x003DCE20 + public void .ctor(FileIOPermissionAccess access, string[] pathList); // 0x003DCFC8 + public void .ctor(FileIOPermissionAccess access, AccessControlActions control, string path); // 0x003DD1B4 + public void .ctor(FileIOPermissionAccess access, AccessControlActions control, string[] pathList); // 0x003DD24C + private static void .cctor(); // 0x003DD2E4 + private int System.Security.Permissions.IBuiltInPermission.GetTokenIndex(); // 0x003DD38C + internal void CreateLists(); // 0x003DCD68 + public void AddPathList(FileIOPermissionAccess access, string path); // 0x003DCEF8 + public void AddPathList(FileIOPermissionAccess access, string[] pathList); // 0x003DD0A0 + internal void AddPathInternal(FileIOPermissionAccess access, string path); // 0x003DD87C + public override IPermission Copy(); // 0x003DDAA4 + public override void FromXml(SecurityElement esd); // 0x003DDD44 + public string[] GetPathList(FileIOPermissionAccess access); // 0x003DE090 + public override IPermission Intersect(IPermission target); // 0x003DE2E0 + public override bool IsSubsetOf(IPermission target); // 0x003DEF30 + public bool IsUnrestricted(); // 0x003DF8C0 + public void SetPathList(FileIOPermissionAccess access, string path); // 0x003DF8C8 + public void SetPathList(FileIOPermissionAccess access, string[] pathList); // 0x003DFA78 + public override SecurityElement ToXml(); // 0x003DFB98 + public override IPermission Union(IPermission other); // 0x003DFEC0 + public override bool Equals(object obj); // 0x003E0634 + public override int GetHashCode(); // 0x003E063C + private bool IsEmpty(); // 0x003DEE48 + private static FileIOPermission Cast(IPermission target); // 0x003DE490 + internal static void ThrowInvalidFlag(FileIOPermissionAccess access, bool context); // 0x003DD3C4 + internal static void ThrowIfInvalidPath(string path); // 0x003DD4FC + internal static void ThrowIfInvalidPath(string[] paths); // 0x003DD9DC + internal void Clear(FileIOPermissionAccess access); // 0x003DF9A4 + internal static bool KeyIsSubsetOf(IList local, IList target); // 0x003DF160 + internal static void UnionKeys(IList list, string[] paths); // 0x003E01A4 + internal static void IntersectKeys(IList local, IList target, IList result); // 0x003DE570 +} + +// Namespace: System.Security.Permissions +[Serializable] +public enum FileIOPermissionAccess // TypeDefIndex: 1365 +{ + NoAccess = 0, + Read = 1, + Write = 2, + Append = 4, + PathDiscovery = 8, + AllAccess = 15 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class FileIOPermissionAttribute : CodeAccessSecurityAttribute // TypeDefIndex: 1366 +{ + // Fields + private string append; // 0x10 + private string path; // 0x14 + private string read; // 0x18 + private string write; // 0x1C + private FileIOPermissionAccess allFiles; // 0x20 + private FileIOPermissionAccess allLocalFiles; // 0x24 + private string changeAccessControl; // 0x28 + private string viewAccessControl; // 0x2C + + // Properties + public string All { get; set; } // 0x003E064C 0x003E06E8 + public string Append { get; set; } // 0x003E06F8 0x003E0700 + public string PathDiscovery { get; set; } // 0x003E0708 0x003E0710 + public string Read { get; set; } // 0x003E0718 0x003E0720 + public string Write { get; set; } // 0x003E0728 0x003E0730 + public FileIOPermissionAccess AllFiles { get; set; } // 0x003E0738 0x003E0740 + public FileIOPermissionAccess AllLocalFiles { get; set; } // 0x003E0748 0x003E0750 + public string ChangeAccessControl { get; set; } // 0x003E0758 0x003E0760 + public string ViewAccessControl { get; set; } // 0x003E0768 0x003E0770 + public string ViewAndModify { get; set; } // 0x003E0778 0x003E0800 + + // Methods + public void .ctor(SecurityAction action); // 0x003E0644 + public override IPermission CreatePermission(); // 0x003E0810 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class GacIdentityPermission : CodeAccessPermission, IBuiltInPermission // TypeDefIndex: 1367 +{ + // Fields + private const int version = 1; // 0x00 + + // Methods + public void .ctor(); // 0x003E0818 + public void .ctor(PermissionState state); // 0x003E0820 + private int System.Security.Permissions.IBuiltInPermission.GetTokenIndex(); // 0x003E0848 + public override IPermission Copy(); // 0x003E0850 + public override IPermission Intersect(IPermission target); // 0x003E08BC + public override bool IsSubsetOf(IPermission target); // 0x003E09BC + public override IPermission Union(IPermission target); // 0x003E09D4 + public override void FromXml(SecurityElement securityElement); // 0x003E09E8 + public override SecurityElement ToXml(); // 0x003E0A64 + private GacIdentityPermission Cast(IPermission target); // 0x003E08DC +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class GacIdentityPermissionAttribute : CodeAccessSecurityAttribute // TypeDefIndex: 1368 +{ + // Methods + public void .ctor(SecurityAction action); // 0x003E0A70 + public override IPermission CreatePermission(); // 0x003E0A78 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class HostProtectionAttribute : CodeAccessSecurityAttribute // TypeDefIndex: 1369 +{ + // Fields + private HostProtectionResource _resources; // 0x10 + + // Properties + public bool ExternalProcessMgmt { get; set; } // 0x003E0C38 0x003E0C44 + public bool ExternalThreading { get; set; } // 0x003E0C5C 0x003E0C68 + public bool MayLeakOnAbort { get; set; } // 0x003E0C80 0x003E0C8C + public bool SecurityInfrastructure { get; set; } // 0x003E0CA4 0x003E0CB0 + public bool SelfAffectingProcessMgmt { get; set; } // 0x003E0CC8 0x003E0CD4 + public bool SelfAffectingThreading { get; set; } // 0x003E0CEC 0x003E0CF8 + public bool SharedState { get; set; } // 0x003E0D10 0x003E0D1C + public bool Synchronization { get; set; } // 0x003E0D34 0x003E0D40 + public bool UI { get; set; } // 0x003E0D58 0x003E0D64 + public HostProtectionResource Resources { get; set; } // 0x003E0D7C 0x003E0D84 + + // Methods + public void .ctor(); // 0x003E0AE4 + public void .ctor(SecurityAction action); // 0x003E0AF0 + public override IPermission CreatePermission(); // 0x003E0D8C +} + +// Namespace: System.Security.Permissions +[Serializable] +internal sealed class HostProtectionPermission : CodeAccessPermission, IBuiltInPermission, IUnrestrictedPermission // TypeDefIndex: 1370 +{ + // Fields + private const int version = 1; // 0x00 + private HostProtectionResource _resources; // 0x08 + + // Properties + public HostProtectionResource Resources { get; set; } // 0x003E0FDC 0x003E0DF4 + + // Methods + public void .ctor(PermissionState state); // 0x003E0D94 + public void .ctor(HostProtectionResource resources); // 0x003E0DD0 + private int System.Security.Permissions.IBuiltInPermission.GetTokenIndex(); // 0x003E0FD4 + public override IPermission Copy(); // 0x003E0FE4 + public override IPermission Intersect(IPermission target); // 0x003E105C + public override IPermission Union(IPermission target); // 0x003E1260 + public override bool IsSubsetOf(IPermission target); // 0x003E1358 + public override void FromXml(SecurityElement e); // 0x003E13B8 + public override SecurityElement ToXml(); // 0x003E1548 + public bool IsUnrestricted(); // 0x003E1248 + private HostProtectionPermission Cast(IPermission target); // 0x003E1168 +} + +// Namespace: System.Security.Permissions +[Serializable] +public enum HostProtectionResource // TypeDefIndex: 1371 +{ + None = 0, + Synchronization = 1, + SharedState = 2, + ExternalProcessMgmt = 4, + SelfAffectingProcessMgmt = 8, + ExternalThreading = 16, + SelfAffectingThreading = 32, + SecurityInfrastructure = 64, + UI = 128, + MayLeakOnAbort = 256, + All = 511 +} + +// Namespace: System.Security.Permissions +internal interface IBuiltInPermission // TypeDefIndex: 1372 +{ + // Methods + int GetTokenIndex(); +} + +// Namespace: System.Security.Permissions +internal enum BuiltInToken // TypeDefIndex: 1373 +{ + Environment = 0, + FileDialog = 1, + FileIO = 2, + IsolatedStorageFile = 3, + Reflection = 4, + Registry = 5, + Security = 6, + UI = 7, + Principal = 8, + HostProtection = 9, + PublisherIdentity = 10, + SiteIdentity = 11, + StrongNameIdentity = 12, + UrlIdentity = 13, + ZoneIdentity = 14, + GacIdentity = 15, + KeyContainer = 16 +} + +// Namespace: System.Security.Permissions +public interface IUnrestrictedPermission // TypeDefIndex: 1374 +{ + // Methods + bool IsUnrestricted(); +} + +// Namespace: System.Security.Permissions +[Serializable] +public enum IsolatedStorageContainment // TypeDefIndex: 1375 +{ + None = 0, + DomainIsolationByUser = 16, + ApplicationIsolationByUser = 21, + AssemblyIsolationByUser = 32, + DomainIsolationByMachine = 48, + AssemblyIsolationByMachine = 64, + ApplicationIsolationByMachine = 69, + DomainIsolationByRoamingUser = 80, + AssemblyIsolationByRoamingUser = 96, + ApplicationIsolationByRoamingUser = 101, + AdministerIsolatedStorageByUser = 112, + UnrestrictedIsolatedStorage = 240 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class IsolatedStorageFilePermission : IsolatedStoragePermission, IBuiltInPermission // TypeDefIndex: 1376 +{ + // Fields + private const int version = 1; // 0x00 + + // Methods + public void .ctor(PermissionState state); // 0x003E1630 + private int System.Security.Permissions.IBuiltInPermission.GetTokenIndex(); // 0x003E1674 + public override IPermission Copy(); // 0x003E167C + public override IPermission Intersect(IPermission target); // 0x003E17A4 + public override bool IsSubsetOf(IPermission target); // 0x003E1C5C + public override IPermission Union(IPermission target); // 0x003E1D34 + public override SecurityElement ToXml(); // 0x003E1E88 + private IsolatedStorageFilePermission Cast(IPermission target); // 0x003E1928 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class IsolatedStorageFilePermissionAttribute : IsolatedStoragePermissionAttribute // TypeDefIndex: 1377 +{ + // Methods + public void .ctor(SecurityAction action); // 0x003E2008 + public override IPermission CreatePermission(); // 0x003E2018 +} + +// Namespace: System.Security.Permissions +[Serializable] +public abstract class IsolatedStoragePermission : CodeAccessPermission, IUnrestrictedPermission // TypeDefIndex: 1378 +{ + // Fields + private const int version = 1; // 0x00 + internal long m_userQuota; // 0x08 + internal long m_machineQuota; // 0x10 + internal long m_expirationDays; // 0x18 + internal bool m_permanentData; // 0x20 + internal IsolatedStorageContainment m_allowed; // 0x24 + + // Properties + public long UserQuota { get; set; } // 0x003E20E0 0x003E20E8 + public IsolatedStorageContainment UsageAllowed { get; set; } // 0x003E20F8 0x003E1A38 + + // Methods + protected void .ctor(PermissionState state); // 0x003E1634 + public bool IsUnrestricted(); // 0x003E1D20 + public override SecurityElement ToXml(); // 0x003E1E8C + public override void FromXml(SecurityElement esd); // 0x003E2100 + internal bool IsEmpty(); // 0x003E1A08 +} + +// Namespace: System.Security.Permissions +[Serializable] +public abstract class IsolatedStoragePermissionAttribute : CodeAccessSecurityAttribute // TypeDefIndex: 1379 +{ + // Fields + private IsolatedStorageContainment usage_allowed; // 0x10 + private long user_quota; // 0x18 + + // Properties + public IsolatedStorageContainment UsageAllowed { get; set; } // 0x003E2328 0x003E2330 + public long UserQuota { get; set; } // 0x003E2338 0x003E2340 + + // Methods + protected void .ctor(SecurityAction action); // 0x003E2010 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class KeyContainerPermission : CodeAccessPermission, IBuiltInPermission, IUnrestrictedPermission // TypeDefIndex: 1380 +{ + // Fields + private const int version = 1; // 0x00 + private KeyContainerPermissionAccessEntryCollection _accessEntries; // 0x08 + private KeyContainerPermissionFlags _flags; // 0x0C + + // Properties + public KeyContainerPermissionAccessEntryCollection AccessEntries { get; } // 0x003E25E4 + public KeyContainerPermissionFlags Flags { get; } // 0x003E25EC + + // Methods + public void .ctor(PermissionState state); // 0x003E2350 + public void .ctor(KeyContainerPermissionFlags flags); // 0x003E2388 + public void .ctor(KeyContainerPermissionFlags flags, KeyContainerPermissionAccessEntry[] accessList); // 0x003E24EC + private int System.Security.Permissions.IBuiltInPermission.GetTokenIndex(); // 0x003E25DC + public override IPermission Copy(); // 0x003E25F4 + public override void FromXml(SecurityElement securityElement); // 0x003E27F8 + public override IPermission Intersect(IPermission target); // 0x003E29A0 + public override bool IsSubsetOf(IPermission target); // 0x003E29A8 + public bool IsUnrestricted(); // 0x003E29B0 + public override SecurityElement ToXml(); // 0x003E29C8 + public override IPermission Union(IPermission target); // 0x003E2A78 + private void SetFlags(KeyContainerPermissionFlags flags); // 0x003E23B0 + private KeyContainerPermission Cast(IPermission target); // 0x003E2D80 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class KeyContainerPermissionAccessEntry // TypeDefIndex: 1381 +{ + // Fields + private KeyContainerPermissionFlags _flags; // 0x08 + private string _containerName; // 0x0C + private int _spec; // 0x10 + private string _store; // 0x14 + private string _providerName; // 0x18 + private int _type; // 0x1C + + // Properties + public KeyContainerPermissionFlags Flags { get; set; } // 0x003E3510 0x003E3358 + public string KeyContainerName { get; set; } // 0x003E3518 0x003E3520 + public int KeySpec { get; set; } // 0x003E3528 0x003E3530 + public string KeyStore { get; set; } // 0x003E3538 0x003E3540 + public string ProviderName { get; set; } // 0x003E3548 0x003E3550 + public int ProviderType { get; set; } // 0x003E3558 0x003E3560 + + // Methods + public void .ctor(CspParameters parameters, KeyContainerPermissionFlags flags); // 0x003E326C + public void .ctor(string keyContainerName, KeyContainerPermissionFlags flags); // 0x003E3494 + public void .ctor(string keyStore, string providerName, int providerType, string keyContainerName, int keySpec, KeyContainerPermissionFlags flags); // 0x003E34C4 + public override bool Equals(object o); // 0x003E3568 + public override int GetHashCode(); // 0x003E3704 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class KeyContainerPermissionAccessEntryCollection : IEnumerable, ICollection // TypeDefIndex: 1382 +{ + // Fields + private ArrayList _list; // 0x08 + + // Properties + public int Count { get; } // 0x003E2780 + public bool IsSynchronized { get; } // 0x003E3900 + public KeyContainerPermissionAccessEntry Item { get; } // 0x003E3908 + public object SyncRoot { get; } // 0x003E39BC + + // Methods + internal void .ctor(); // 0x003E2E60 + internal void .ctor(KeyContainerPermissionAccessEntry[] entries); // 0x003E3774 + private void System.Collections.ICollection.CopyTo(Array array, int index); // 0x003E3804 + private IEnumerator System.Collections.IEnumerable.GetEnumerator(); // 0x003E3848 + public int Add(KeyContainerPermissionAccessEntry accessEntry); // 0x003E25A0 + public void Clear(); // 0x003E39C0 + public void CopyTo(KeyContainerPermissionAccessEntry[] array, int index); // 0x003E27B4 + public KeyContainerPermissionAccessEntryEnumerator GetEnumerator(); // 0x003E2EDC + public int IndexOf(KeyContainerPermissionAccessEntry accessEntry); // 0x003E3138 + public void Remove(KeyContainerPermissionAccessEntry accessEntry); // 0x003E39F4 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class KeyContainerPermissionAccessEntryEnumerator : IEnumerator // TypeDefIndex: 1383 +{ + // Fields + private IEnumerator e; // 0x08 + + // Properties + private object System.Collections.IEnumerator.Current { get; } // 0x003E3B4C + public KeyContainerPermissionAccessEntry Current { get; } // 0x003E2F50 + + // Methods + internal void .ctor(ArrayList list); // 0x003E38BC + public bool MoveNext(); // 0x003E3060 + public void Reset(); // 0x003E3C24 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class KeyContainerPermissionAttribute : CodeAccessSecurityAttribute // TypeDefIndex: 1384 +{ + // Fields + private KeyContainerPermissionFlags _flags; // 0x10 + private string _containerName; // 0x14 + private int _spec; // 0x18 + private string _store; // 0x1C + private string _providerName; // 0x20 + private int _type; // 0x24 + + // Properties + public KeyContainerPermissionFlags Flags { get; set; } // 0x003E3D20 0x003E3D28 + public string KeyContainerName { get; set; } // 0x003E3D30 0x003E3D38 + public int KeySpec { get; set; } // 0x003E3D40 0x003E3D48 + public string KeyStore { get; set; } // 0x003E3D50 0x003E3D58 + public string ProviderName { get; set; } // 0x003E3D60 0x003E3D68 + public int ProviderType { get; set; } // 0x003E3D70 0x003E3D78 + + // Methods + public void .ctor(SecurityAction action); // 0x003E3CFC + public override IPermission CreatePermission(); // 0x003E3D80 + private bool EmptyEntry(); // 0x003E3F5C +} + +// Namespace: System.Security.Permissions +[Serializable] +public enum KeyContainerPermissionFlags // TypeDefIndex: 1385 +{ + NoFlags = 0, + Create = 1, + Open = 2, + Delete = 4, + Import = 16, + Export = 32, + Sign = 256, + Decrypt = 512, + ViewAcl = 4096, + ChangeAcl = 8192, + AllFlags = 13111 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class PermissionSetAttribute : CodeAccessSecurityAttribute // TypeDefIndex: 1386 +{ + // Fields + private string file; // 0x10 + private string name; // 0x14 + private bool isUnicodeEncoded; // 0x18 + private string xml; // 0x1C + private string hex; // 0x20 + + // Properties + public string File { get; set; } // 0x003E3FA8 0x003E3FB0 + public string Hex { get; set; } // 0x003E3FB8 0x003E3FC0 + public string Name { get; set; } // 0x003E3FC8 0x003E3FD0 + public bool UnicodeEncoded { get; set; } // 0x003E3FD8 0x003E3FE0 + public string XML { get; set; } // 0x003E3FE8 0x003E3FF0 + + // Methods + public void .ctor(SecurityAction action); // 0x003E3FA0 + public override IPermission CreatePermission(); // 0x003E3FF8 + private PermissionSet CreateFromXml(string xml); // 0x003E4000 + public PermissionSet CreatePermissionSet(); // 0x003E4008 +} + +// Namespace: System.Security.Permissions +[Serializable] +public enum PermissionState // TypeDefIndex: 1387 +{ + None = 0, + Unrestricted = 1 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class PrincipalPermission : IBuiltInPermission, IUnrestrictedPermission, IPermission, ISecurityEncodable // TypeDefIndex: 1388 +{ + // Fields + private const int version = 1; // 0x00 + private ArrayList principals; // 0x08 + + // Methods + public void .ctor(PermissionState state); // 0x003E4010 + public void .ctor(string name, string role); // 0x003E4138 + public void .ctor(string name, string role, bool isAuthenticated); // 0x003E4154 + internal void .ctor(ArrayList principals); // 0x003E4234 + private int System.Security.Permissions.IBuiltInPermission.GetTokenIndex(); // 0x003E4308 + public IPermission Copy(); // 0x003E4310 + public void Demand(); // 0x003E4384 + public void FromXml(SecurityElement elem); // 0x003E4B7C + public IPermission Intersect(IPermission target); // 0x003E55A0 + public bool IsSubsetOf(IPermission target); // 0x003E6310 + public bool IsUnrestricted(); // 0x003E5F9C + public override string ToString(); // 0x003E6B70 + public SecurityElement ToXml(); // 0x003E6BA0 + public IPermission Union(IPermission other); // 0x003E71B4 + public override bool Equals(object obj); // 0x003E7574 + public override int GetHashCode(); // 0x003E7DD8 + private PrincipalPermission Cast(IPermission target); // 0x003E5EBC + private bool IsEmpty(); // 0x003E6B2C + internal int CheckSecurityElement(SecurityElement se, string parameterName, int minimumVersion, int maximumVersion); // 0x003E51A0 +} + +// Namespace: +internal class PrincipalInfo // TypeDefIndex: 1389 +{ + // Fields + private string _name; // 0x08 + private string _role; // 0x0C + private bool _isAuthenticated; // 0x10 + + // Properties + public string Name { get; } // 0x003E7DE0 + public string Role { get; } // 0x003E7DE8 + public bool IsAuthenticated { get; } // 0x003E7DF0 + + // Methods + public void .ctor(string name, string role, bool isAuthenticated); // 0x003E4108 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class PrincipalPermissionAttribute : CodeAccessSecurityAttribute // TypeDefIndex: 1390 +{ + // Fields + private bool authenticated; // 0x0D + private string name; // 0x10 + private string role; // 0x14 + + // Properties + public bool Authenticated { get; set; } // 0x003E7E18 0x003E7E20 + public string Name { get; set; } // 0x003E7E28 0x003E7E30 + public string Role { get; set; } // 0x003E7E38 0x003E7E40 + + // Methods + public void .ctor(SecurityAction action); // 0x003E7DF8 + public override IPermission CreatePermission(); // 0x003E7E48 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class PublisherIdentityPermission : CodeAccessPermission, IBuiltInPermission // TypeDefIndex: 1391 +{ + // Fields + private const int version = 1; // 0x00 + private X509Certificate x509; // 0x08 + + // Properties + public X509Certificate Certificate { get; set; } // 0x003E800C 0x003E7F54 + + // Methods + public void .ctor(PermissionState state); // 0x003E7F04 + public void .ctor(X509Certificate certificate); // 0x003E7F2C + private int System.Security.Permissions.IBuiltInPermission.GetTokenIndex(); // 0x003E8004 + public override IPermission Copy(); // 0x003E8014 + public override void FromXml(SecurityElement esd); // 0x003E80BC + public override IPermission Intersect(IPermission target); // 0x003E81E8 + public override bool IsSubsetOf(IPermission target); // 0x003E8400 + public override SecurityElement ToXml(); // 0x003E8508 + public override IPermission Union(IPermission target); // 0x003E85BC + private PublisherIdentityPermission Cast(IPermission target); // 0x003E8320 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class PublisherIdentityPermissionAttribute : CodeAccessSecurityAttribute // TypeDefIndex: 1392 +{ + // Fields + private string certFile; // 0x10 + private string signedFile; // 0x14 + private string x509data; // 0x18 + + // Properties + public string CertFile { get; set; } // 0x003E8774 0x003E877C + public string SignedFile { get; set; } // 0x003E8784 0x003E878C + public string X509Certificate { get; set; } // 0x003E8794 0x003E879C + + // Methods + public void .ctor(SecurityAction action); // 0x003E876C + public override IPermission CreatePermission(); // 0x003E87A4 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class ReflectionPermission : CodeAccessPermission, IBuiltInPermission, IUnrestrictedPermission // TypeDefIndex: 1393 +{ + // Fields + private const int version = 1; // 0x00 + private ReflectionPermissionFlag flags; // 0x08 + + // Properties + public ReflectionPermissionFlag Flags { get; set; } // 0x003E8AB4 0x003E8970 + + // Methods + public void .ctor(PermissionState state); // 0x003E890C + public void .ctor(ReflectionPermissionFlag flag); // 0x003E8948 + private int System.Security.Permissions.IBuiltInPermission.GetTokenIndex(); // 0x003E8AAC + public override IPermission Copy(); // 0x003E8ABC + public override void FromXml(SecurityElement esd); // 0x003E8B3C + public override IPermission Intersect(IPermission target); // 0x003E8D18 + public override bool IsSubsetOf(IPermission target); // 0x003E8F3C + public bool IsUnrestricted(); // 0x003E8F28 + public override SecurityElement ToXml(); // 0x003E8FA4 + public override IPermission Union(IPermission other); // 0x003E92BC + private ReflectionPermission Cast(IPermission target); // 0x003E8E48 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class ReflectionPermissionAttribute : CodeAccessSecurityAttribute // TypeDefIndex: 1394 +{ + // Fields + private ReflectionPermissionFlag flags; // 0x10 + private bool memberAccess; // 0x14 + private bool reflectionEmit; // 0x15 + private bool typeInfo; // 0x16 + + // Properties + public ReflectionPermissionFlag Flags { get; set; } // 0x003E9414 0x003E941C + public bool MemberAccess { get; set; } // 0x003E943C 0x003E9444 + public bool ReflectionEmit { get; set; } // 0x003E9460 0x003E9468 + public bool RestrictedMemberAccess { get; set; } // 0x003E9484 0x003E9490 + public bool TypeInformation { get; set; } // 0x003E94A8 0x003E94B0 + + // Methods + public void .ctor(SecurityAction action); // 0x003E940C + public override IPermission CreatePermission(); // 0x003E94CC +} + +// Namespace: System.Security.Permissions +[Serializable] +public enum ReflectionPermissionFlag // TypeDefIndex: 1395 +{ + NoFlags = 0, + TypeInformation = 1, + MemberAccess = 2, + ReflectionEmit = 4, + AllFlags = 7, + RestrictedMemberAccess = 8 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class RegistryPermission : CodeAccessPermission, IBuiltInPermission, IUnrestrictedPermission // TypeDefIndex: 1396 +{ + // Fields + private const int version = 1; // 0x00 + private PermissionState _state; // 0x08 + private ArrayList createList; // 0x0C + private ArrayList readList; // 0x10 + private ArrayList writeList; // 0x14 + + // Methods + public void .ctor(PermissionState state); // 0x003E94D4 + public void .ctor(RegistryPermissionAccess access, string pathList); // 0x003E9598 + public void .ctor(RegistryPermissionAccess access, AccessControlActions control, string pathList); // 0x003E9798 + private int System.Security.Permissions.IBuiltInPermission.GetTokenIndex(); // 0x003E9A14 + public void AddPathList(RegistryPermissionAccess access, string pathList); // 0x003E9664 + public void AddPathList(RegistryPermissionAccess access, AccessControlActions control, string pathList); // 0x003E998C + public string GetPathList(RegistryPermissionAccess access); // 0x003EA00C + public void SetPathList(RegistryPermissionAccess access, string pathList); // 0x003EA504 + public override IPermission Copy(); // 0x003EAAB4 + public override void FromXml(SecurityElement esd); // 0x003EABD0 + public override IPermission Intersect(IPermission target); // 0x003EAD70 + public override bool IsSubsetOf(IPermission target); // 0x003EB908 + public bool IsUnrestricted(); // 0x003EAFC0 + public override SecurityElement ToXml(); // 0x003EC0F8 + public override IPermission Union(IPermission other); // 0x003EC278 + private bool IsEmpty(); // 0x003EB850 + private RegistryPermission Cast(IPermission target); // 0x003EAEE0 + internal void ThrowInvalidFlag(RegistryPermissionAccess flag, bool context); // 0x003E9ED4 + private string GetPathList(ArrayList list); // 0x003EA084 + internal bool KeyIsSubsetOf(IList local, IList target); // 0x003EB9BC + internal void AddWithUnionKey(IList list, string pathList); // 0x003E9A1C + internal void IntersectKeys(IList local, IList target, IList result); // 0x003EAFD0 +} + +// Namespace: System.Security.Permissions +[Serializable] +public enum RegistryPermissionAccess // TypeDefIndex: 1397 +{ + NoAccess = 0, + Read = 1, + Write = 2, + Create = 4, + AllAccess = 7 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class RegistryPermissionAttribute : CodeAccessSecurityAttribute // TypeDefIndex: 1398 +{ + // Fields + private string create; // 0x10 + private string read; // 0x14 + private string write; // 0x18 + private string changeAccessControl; // 0x1C + private string viewAccessControl; // 0x20 + + // Properties + public string All { get; set; } // 0x003AA340 0x003AA3DC + public string Create { get; set; } // 0x003AA3EC 0x003AA3F4 + public string Read { get; set; } // 0x003AA3FC 0x003AA404 + public string Write { get; set; } // 0x003AA40C 0x003AA414 + public string ChangeAccessControl { get; set; } // 0x003AA41C 0x003AA424 + public string ViewAccessControl { get; set; } // 0x003AA42C 0x003AA434 + public string ViewAndModify { get; set; } // 0x003AA43C 0x003AA4C4 + + // Methods + public void .ctor(SecurityAction action); // 0x003AA338 + public override IPermission CreatePermission(); // 0x003AA4D4 +} + +// Namespace: System.Security.Permissions +[Serializable] +public enum SecurityAction // TypeDefIndex: 1399 +{ + Demand = 2, + Assert = 3, + Deny = 4, + PermitOnly = 5, + LinkDemand = 6, + InheritanceDemand = 7, + RequestMinimum = 8, + RequestOptional = 9, + RequestRefuse = 10 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class SecurityPermission : CodeAccessPermission, IBuiltInPermission, IUnrestrictedPermission // TypeDefIndex: 1400 +{ + // Fields + private const int version = 1; // 0x00 + private SecurityPermissionFlag flags; // 0x08 + + // Properties + public SecurityPermissionFlag Flags { get; set; } // 0x003AA7E0 0x003AA698 + + // Methods + public void .ctor(PermissionState state); // 0x003AA634 + public void .ctor(SecurityPermissionFlag flag); // 0x003AA670 + private int System.Security.Permissions.IBuiltInPermission.GetTokenIndex(); // 0x003AA7D8 + public bool IsUnrestricted(); // 0x003AA7E8 + public override IPermission Copy(); // 0x003AA800 + public override IPermission Intersect(IPermission target); // 0x003AA880 + public override IPermission Union(IPermission target); // 0x003AAA90 + public override bool IsSubsetOf(IPermission target); // 0x003AAB88 + public override void FromXml(SecurityElement esd); // 0x003AABE8 + public override SecurityElement ToXml(); // 0x003AAD9C + private bool IsEmpty(); // 0x003AAA7C + private SecurityPermission Cast(IPermission target); // 0x003AA99C +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class SecurityPermissionAttribute : CodeAccessSecurityAttribute // TypeDefIndex: 1401 +{ + // Fields + private SecurityPermissionFlag m_Flags; // 0x10 + + // Properties + public bool Assertion { get; set; } // 0x003AAEE8 0x003AAEF4 + public bool BindingRedirects { get; set; } // 0x003AAF0C 0x003AAF18 + public bool ControlAppDomain { get; set; } // 0x003AAF30 0x003AAF3C + public bool ControlDomainPolicy { get; set; } // 0x003AAF54 0x003AAF60 + public bool ControlEvidence { get; set; } // 0x003AAF78 0x003AAF84 + public bool ControlPolicy { get; set; } // 0x003AAF9C 0x003AAFA8 + public bool ControlPrincipal { get; set; } // 0x003AAFC0 0x003AAFCC + public bool ControlThread { get; set; } // 0x003AAFE4 0x003AAFF0 + public bool Execution { get; set; } // 0x003AB008 0x003AB014 + public bool Infrastructure { get; set; } // 0x003AB02C 0x003AB038 + public bool RemotingConfiguration { get; set; } // 0x003AB050 0x003AB05C + public bool SerializationFormatter { get; set; } // 0x003AB074 0x003AB080 + public bool SkipVerification { get; set; } // 0x003AB098 0x003AB0A4 + public bool UnmanagedCode { get; set; } // 0x003AB0BC 0x003AB0C8 + public SecurityPermissionFlag Flags { get; set; } // 0x003AB0E8 0x003AB0F0 + + // Methods + public void .ctor(SecurityAction action); // 0x003AAEC8 + public override IPermission CreatePermission(); // 0x003AB0E0 +} + +// Namespace: System.Security.Permissions +[Serializable] +public enum SecurityPermissionFlag // TypeDefIndex: 1402 +{ + NoFlags = 0, + Assertion = 1, + UnmanagedCode = 2, + SkipVerification = 4, + Execution = 8, + ControlThread = 16, + ControlEvidence = 32, + ControlPolicy = 64, + SerializationFormatter = 128, + ControlDomainPolicy = 256, + ControlPrincipal = 512, + ControlAppDomain = 1024, + RemotingConfiguration = 2048, + Infrastructure = 4096, + BindingRedirects = 8192, + AllFlags = 16383 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class SiteIdentityPermission : CodeAccessPermission, IBuiltInPermission // TypeDefIndex: 1403 +{ + // Fields + private const int version = 1; // 0x00 + private string _site; // 0x08 + private static bool[] valid; // 0x00 + + // Properties + public string Site { get; set; } // 0x003AB2A0 0x003AB148 + + // Methods + public void .ctor(PermissionState state); // 0x003AB0F8 + public void .ctor(string site); // 0x003AB120 + private static void .cctor(); // 0x003AB200 + private int System.Security.Permissions.IBuiltInPermission.GetTokenIndex(); // 0x003AB298 + public override IPermission Copy(); // 0x003AB4EC + public override void FromXml(SecurityElement esd); // 0x003AB588 + public override IPermission Intersect(IPermission target); // 0x003AB64C + public override bool IsSubsetOf(IPermission target); // 0x003AB9B0 + public override SecurityElement ToXml(); // 0x003ABAF8 + public override IPermission Union(IPermission target); // 0x003ABB98 + private bool IsEmpty(); // 0x003AB34C + private SiteIdentityPermission Cast(IPermission target); // 0x003AB73C + private bool IsValid(string s); // 0x003AB360 + private bool Match(string target); // 0x003AB81C +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class SiteIdentityPermissionAttribute : CodeAccessSecurityAttribute // TypeDefIndex: 1404 +{ + // Fields + private string site; // 0x10 + + // Properties + public string Site { get; set; } // 0x003ABD24 0x003ABD2C + + // Methods + public void .ctor(SecurityAction action); // 0x003ABD1C + public override IPermission CreatePermission(); // 0x003ABD34 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class StrongNameIdentityPermission : CodeAccessPermission, IBuiltInPermission // TypeDefIndex: 1405 +{ + // Fields + private const int version = 1; // 0x00 + private static Version defaultVersion; // 0x00 + private PermissionState _state; // 0x08 + private ArrayList _list; // 0x0C + + // Properties + public string Name { get; set; } // 0x003AC660 0x003AC7A0 + public StrongNamePublicKeyBlob PublicKey { get; set; } // 0x003ACA4C 0x003ACB8C + public Version Version { get; set; } // 0x003ACD54 0x003ACE94 + + // Methods + public void .ctor(PermissionState state); // 0x003ABE04 + public void .ctor(StrongNamePublicKeyBlob blob, string name, Version version); // 0x003AC040 + internal void .ctor(StrongNameIdentityPermission snip); // 0x003AC1E4 + private static void .cctor(); // 0x003AC5D0 + private int System.Security.Permissions.IBuiltInPermission.GetTokenIndex(); // 0x003AC658 + internal void ResetToDefault(); // 0x003AC970 + public override IPermission Copy(); // 0x003ACFFC + public override void FromXml(SecurityElement e); // 0x003AD1F8 + private SNIP FromSecurityElement(SecurityElement se); // 0x003AD630 + public override IPermission Intersect(IPermission target); // 0x003AD8E8 + public override bool IsSubsetOf(IPermission target); // 0x003ADE44 + public override SecurityElement ToXml(); // 0x003AE714 + private void ToSecurityElement(SecurityElement se, SNIP snip); // 0x003AEBB4 + public override IPermission Union(IPermission target); // 0x003AEF48 + private bool IsUnrestricted(); // 0x003AE64C + private bool Contains(SNIP snip); // 0x003AF39C + private bool IsEmpty(SNIP snip); // 0x003AECF0 + private bool IsEmpty(); // 0x003AD08C + private StrongNameIdentityPermission Cast(IPermission target); // 0x003AE56C + private bool Match(string target); // 0x003ADB20 +} + +// Namespace: +private struct SNIP // TypeDefIndex: 1406 +{ + // Fields + public StrongNamePublicKeyBlob PublicKey; // 0x08 + public string Name; // 0x0C + public Version AssemblyVersion; // 0x10 + + // Methods + internal void .ctor(StrongNamePublicKeyBlob pk, string name, Version version); // 0x000A76D8 + internal static SNIP CreateDefault(); // 0x003ABEFC + internal bool IsNameSubsetOf(string target); // 0x000A76E4 + internal bool IsSubsetOf(SNIP target); // 0x000A76EC +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class StrongNameIdentityPermissionAttribute : CodeAccessSecurityAttribute // TypeDefIndex: 1407 +{ + // Fields + private string name; // 0x10 + private string key; // 0x14 + private string version; // 0x18 + + // Properties + public string Name { get; set; } // 0x003AF95C 0x003AF964 + public string PublicKey { get; set; } // 0x003AF96C 0x003AF974 + public string Version { get; set; } // 0x003AF97C 0x003AF984 + + // Methods + public void .ctor(SecurityAction action); // 0x003AF954 + public override IPermission CreatePermission(); // 0x003AF98C +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class StrongNamePublicKeyBlob // TypeDefIndex: 1408 +{ + // Fields + internal byte[] pubkey; // 0x08 + + // Methods + public void .ctor(byte[] publicKey); // 0x003AF994 + internal static StrongNamePublicKeyBlob FromString(string s); // 0x003AD768 + private static byte CharToByte(char c); // 0x003AFA50 + public override bool Equals(object obj); // 0x003ADCD4 + public override int GetHashCode(); // 0x003AFAF4 + public override string ToString(); // 0x003AEE20 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class UIPermission : CodeAccessPermission, IBuiltInPermission, IUnrestrictedPermission // TypeDefIndex: 1409 +{ + // Fields + private const int version = 1; // 0x00 + private UIPermissionWindow _window; // 0x08 + private UIPermissionClipboard _clipboard; // 0x0C + + // Properties + public UIPermissionClipboard Clipboard { get; set; } // 0x003B0020 0x003AFBF8 + public UIPermissionWindow Window { get; set; } // 0x003B0028 0x003AFE00 + + // Methods + public void .ctor(PermissionState state); // 0x003AFB90 + public void .ctor(UIPermissionClipboard clipboardFlag); // 0x003AFBD0 + public void .ctor(UIPermissionWindow windowFlag); // 0x003AFDD8 + public void .ctor(UIPermissionWindow windowFlag, UIPermissionClipboard clipboardFlag); // 0x003AFFE0 + private int System.Security.Permissions.IBuiltInPermission.GetTokenIndex(); // 0x003B0018 + public override IPermission Copy(); // 0x003B0030 + public override void FromXml(SecurityElement esd); // 0x003B00AC + public override IPermission Intersect(IPermission target); // 0x003B0388 + public override bool IsSubsetOf(IPermission target); // 0x003B0538 + public bool IsUnrestricted(); // 0x003B05B0 + public override SecurityElement ToXml(); // 0x003B05D8 + public override IPermission Union(IPermission target); // 0x003B0794 + private bool IsEmpty(UIPermissionWindow w, UIPermissionClipboard c); // 0x003B0528 + private UIPermission Cast(IPermission target); // 0x003B0448 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class UIPermissionAttribute : CodeAccessSecurityAttribute // TypeDefIndex: 1410 +{ + // Fields + private UIPermissionClipboard clipboard; // 0x10 + private UIPermissionWindow window; // 0x14 + + // Properties + public UIPermissionClipboard Clipboard { get; set; } // 0x003B086C 0x003B0874 + public UIPermissionWindow Window { get; set; } // 0x003B087C 0x003B0884 + + // Methods + public void .ctor(SecurityAction action); // 0x003B0864 + public override IPermission CreatePermission(); // 0x003B088C +} + +// Namespace: System.Security.Permissions +[Serializable] +public enum UIPermissionClipboard // TypeDefIndex: 1411 +{ + NoClipboard = 0, + OwnClipboard = 1, + AllClipboard = 2 +} + +// Namespace: System.Security.Permissions +[Serializable] +public enum UIPermissionWindow // TypeDefIndex: 1412 +{ + NoWindows = 0, + SafeSubWindows = 1, + SafeTopLevelWindows = 2, + AllWindows = 3 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class UrlIdentityPermission : CodeAccessPermission, IBuiltInPermission // TypeDefIndex: 1413 +{ + // Fields + private const int version = 1; // 0x00 + private string url; // 0x08 + + // Properties + public string Url { get; set; } // 0x003B0AB0 0x003B0AB8 + + // Methods + public void .ctor(PermissionState state); // 0x003B0938 + public void .ctor(string site); // 0x003B09EC + private int System.Security.Permissions.IBuiltInPermission.GetTokenIndex(); // 0x003B0AA8 + public override IPermission Copy(); // 0x003B0B68 + public override void FromXml(SecurityElement esd); // 0x003B0BF0 + public override IPermission Intersect(IPermission target); // 0x003B0D00 + public override bool IsSubsetOf(IPermission target); // 0x003B1014 + public override SecurityElement ToXml(); // 0x003B1198 + public override IPermission Union(IPermission target); // 0x003B1240 + private bool IsEmpty(); // 0x003B0E70 + private UrlIdentityPermission Cast(IPermission target); // 0x003B0D90 + private bool Match(string target); // 0x003B0E94 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class UrlIdentityPermissionAttribute : CodeAccessSecurityAttribute // TypeDefIndex: 1414 +{ + // Fields + private string url; // 0x10 + + // Properties + public string Url { get; set; } // 0x003B13E8 0x003B13F0 + + // Methods + public void .ctor(SecurityAction action); // 0x003B13E0 + public override IPermission CreatePermission(); // 0x003B13F8 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class ZoneIdentityPermission : CodeAccessPermission, IBuiltInPermission // TypeDefIndex: 1415 +{ + // Fields + private const int version = 1; // 0x00 + private SecurityZone zone; // 0x08 + + // Properties + public SecurityZone SecurityZone { get; set; } // 0x003B1C6C 0x003B1508 + + // Methods + public void .ctor(PermissionState state); // 0x003B14AC + public void .ctor(SecurityZone zone); // 0x003B14E0 + private int System.Security.Permissions.IBuiltInPermission.GetTokenIndex(); // 0x003B16E8 + public override IPermission Copy(); // 0x003B16F0 + public override bool IsSubsetOf(IPermission target); // 0x003B1770 + public override IPermission Union(IPermission target); // 0x003B18A0 + public override IPermission Intersect(IPermission target); // 0x003B199C + public override void FromXml(SecurityElement esd); // 0x003B19DC + public override SecurityElement ToXml(); // 0x003B1B7C + private ZoneIdentityPermission Cast(IPermission target); // 0x003B17C0 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class ZoneIdentityPermissionAttribute : CodeAccessSecurityAttribute // TypeDefIndex: 1416 +{ + // Fields + private SecurityZone zone; // 0x10 + + // Properties + public SecurityZone Zone { get; set; } // 0x003B1C94 0x003B1C9C + + // Methods + public void .ctor(SecurityAction action); // 0x003B1C74 + public override IPermission CreatePermission(); // 0x003B1CA4 +} + +// Namespace: System.Security.Policy +[Serializable] +public sealed class AllMembershipCondition : IConstantMembershipCondition, IMembershipCondition, ISecurityEncodable, ISecurityPolicyEncodable // TypeDefIndex: 1417 +{ + // Fields + private readonly int version; // 0x08 + + // Methods + public void .ctor(); // 0x003B1D6C + public bool Check(Evidence evidence); // 0x003B1D7C + public IMembershipCondition Copy(); // 0x003B1D84 + public override bool Equals(object o); // 0x003B1DFC + public void FromXml(SecurityElement e); // 0x003B1E78 + public void FromXml(SecurityElement e, PolicyLevel level); // 0x003B1E7C + public override int GetHashCode(); // 0x003B22A4 + public override string ToString(); // 0x003B235C + public SecurityElement ToXml(); // 0x003B23B8 + public SecurityElement ToXml(PolicyLevel level); // 0x003B23BC +} + +// Namespace: System.Security.Policy +[Serializable] +public sealed class ApplicationDirectory : IBuiltInEvidence // TypeDefIndex: 1418 +{ + // Fields + private string directory; // 0x08 + + // Properties + public string Directory { get; } // 0x003B2818 + + // Methods + public void .ctor(string name); // 0x003B26B4 + private int System.Security.Policy.IBuiltInEvidence.GetRequiredSize(bool verbose); // 0x003B27D4 + private int System.Security.Policy.IBuiltInEvidence.InitFromBuffer(char[] buffer, int position); // 0x003B2808 + private int System.Security.Policy.IBuiltInEvidence.OutputToBuffer(char[] buffer, int position, bool verbose); // 0x003B2810 + public object Copy(); // 0x003B2820 + public override bool Equals(object o); // 0x003B2894 + public override int GetHashCode(); // 0x003B2AEC + public override string ToString(); // 0x003B2B18 + private void ThrowOnInvalid(string appdir); // 0x003B2980 +} + +// Namespace: System.Security.Policy +[Serializable] +public sealed class ApplicationDirectoryMembershipCondition : IConstantMembershipCondition, IMembershipCondition, ISecurityEncodable, ISecurityPolicyEncodable // TypeDefIndex: 1419 +{ + // Fields + private readonly int version; // 0x08 + + // Methods + public void .ctor(); // 0x003B2C60 + public bool Check(Evidence evidence); // 0x003B2C70 + public IMembershipCondition Copy(); // 0x003B3064 + public override bool Equals(object o); // 0x003B30DC + public void FromXml(SecurityElement e); // 0x003B3158 + public void FromXml(SecurityElement e, PolicyLevel level); // 0x003B315C + public override int GetHashCode(); // 0x003B3200 + public override string ToString(); // 0x003B32B8 + public SecurityElement ToXml(); // 0x003B3314 + public SecurityElement ToXml(PolicyLevel level); // 0x003B3318 +} + +// Namespace: System.Security.Policy +public sealed class ApplicationSecurityInfo // TypeDefIndex: 1420 +{ + // Fields + private ActivationContext _context; // 0x08 + private Evidence _evidence; // 0x0C + private ApplicationId _appid; // 0x10 + private PermissionSet _defaultSet; // 0x14 + private ApplicationId _deployid; // 0x18 + + // Properties + public Evidence ApplicationEvidence { get; set; } // 0x003B34A8 0x003B34B0 + public ApplicationId ApplicationId { get; set; } // 0x003B3560 0x003B3568 + public PermissionSet DefaultRequestSet { get; set; } // 0x003B3618 0x003B3698 + public ApplicationId DeploymentId { get; set; } // 0x003B3748 0x003B3750 + + // Methods + public void .ctor(ActivationContext activationContext); // 0x003B33EC +} + +// Namespace: System.Security.Policy +public static class ApplicationSecurityManager // TypeDefIndex: 1421 +{ + // Fields + private const string config = "ApplicationTrust.config"; // 0x00 + private static IApplicationTrustManager _appTrustManager; // 0x00 + private static ApplicationTrustCollection _userAppTrusts; // 0x04 + + // Properties + public static IApplicationTrustManager ApplicationTrustManager { get; } // 0x003B3800 + public static ApplicationTrustCollection UserApplicationTrusts { get; } // 0x003B38B4 + + // Methods + public static bool DetermineApplicationTrust(ActivationContext activationContext, TrustManagerContext context); // 0x003B39D4 +} + +// Namespace: System.Security.Policy +[Serializable] +public sealed class ApplicationTrust : ISecurityEncodable // TypeDefIndex: 1422 +{ + // Fields + private ApplicationIdentity _appid; // 0x08 + private PolicyStatement _defaultPolicy; // 0x0C + private object _xtranfo; // 0x10 + private bool _trustrun; // 0x14 + private bool _persist; // 0x15 + private IList`1 fullTrustAssemblies; // 0x18 + + // Properties + public ApplicationIdentity ApplicationIdentity { get; set; } // 0x003B41CC 0x003B41D4 + public PolicyStatement DefaultGrantSet { get; set; } // 0x003B4284 0x003B433C + public object ExtraInfo { get; set; } // 0x003B4344 0x003B434C + public bool IsApplicationTrustedToRun { get; set; } // 0x003B4354 0x003B435C + public bool Persist { get; set; } // 0x003B4364 0x003B436C + + // Methods + public void .ctor(); // 0x003B3B34 + public void .ctor(ApplicationIdentity applicationIdentity); // 0x003B3BC4 + internal void .ctor(PermissionSet defaultGrantSet, IEnumerable`1 fullTrustAssemblies); // 0x003B3C7C + public void FromXml(SecurityElement element); // 0x003B4374 + public SecurityElement ToXml(); // 0x003B4BA8 + private PolicyStatement GetDefaultGrantSet(); // 0x003B42A8 +} + +// Namespace: System.Security.Policy +public sealed class ApplicationTrustCollection : IEnumerable, ICollection // TypeDefIndex: 1423 +{ + // Fields + private ArrayList _list; // 0x08 + + // Properties + public int Count { get; } // 0x003B50FC + public bool IsSynchronized { get; } // 0x003B5130 + public object SyncRoot { get; } // 0x003B5138 + public ApplicationTrust Item { get; } // 0x003B513C + public ApplicationTrust Item { get; } // 0x003B51F0 + + // Methods + internal void .ctor(); // 0x003B3958 + private void System.Collections.ICollection.CopyTo(Array array, int index); // 0x003B5010 + private IEnumerator System.Collections.IEnumerable.GetEnumerator(); // 0x003B5054 + public int Add(ApplicationTrust trust); // 0x003B5348 + public void AddRange(ApplicationTrust[] trusts); // 0x003B549C + public void AddRange(ApplicationTrustCollection trusts); // 0x003B5640 + public void Clear(); // 0x003B5A48 + public void CopyTo(ApplicationTrust[] array, int index); // 0x003B5A7C + public ApplicationTrustCollection Find(ApplicationIdentity applicationIdentity, ApplicationVersionMatch versionMatch); // 0x003B5AC0 + public ApplicationTrustEnumerator GetEnumerator(); // 0x003B57F0 + public void Remove(ApplicationTrust trust); // 0x003B5F40 + public void Remove(ApplicationIdentity applicationIdentity, ApplicationVersionMatch versionMatch); // 0x003B6150 + public void RemoveRange(ApplicationTrust[] trusts); // 0x003B61C8 + public void RemoveRange(ApplicationTrustCollection trusts); // 0x003B62C0 + internal void RemoveAllInstances(ApplicationTrust trust); // 0x003B6074 +} + +// Namespace: System.Security.Policy +public sealed class ApplicationTrustEnumerator : IEnumerator // TypeDefIndex: 1424 +{ + // Fields + private IEnumerator e; // 0x08 + + // Properties + private object System.Collections.IEnumerator.Current { get; } // 0x003B63C0 + public ApplicationTrust Current { get; } // 0x003B5860 + + // Methods + internal void .ctor(ApplicationTrustCollection collection); // 0x003B50C4 + public bool MoveNext(); // 0x003B5970 + public void Reset(); // 0x003B6498 +} + +// Namespace: System.Security.Policy +public enum ApplicationVersionMatch // TypeDefIndex: 1425 +{ + MatchExactVersion = 0, + MatchAllVersions = 1 +} + +// Namespace: System.Security.Policy +[Serializable] +public class CodeConnectAccess // TypeDefIndex: 1426 +{ + // Fields + public static readonly string AnyScheme; // 0x00 + public static readonly int DefaultPort; // 0x04 + public static readonly int OriginPort; // 0x08 + public static readonly string OriginScheme; // 0x0C + private string _scheme; // 0x08 + private int _port; // 0x0C + + // Properties + public int Port { get; } // 0x003B6730 + public string Scheme { get; } // 0x003B6738 + + // Methods + public void .ctor(string allowScheme, int allowPort); // 0x003B6570 + private static void .cctor(); // 0x003B6688 + public override bool Equals(object o); // 0x003B6740 + public override int GetHashCode(); // 0x003B6854 + public static CodeConnectAccess CreateAnySchemeAccess(int allowPort); // 0x003B688C + public static CodeConnectAccess CreateOriginSchemeAccess(int allowPort); // 0x003B6934 +} + +// Namespace: System.Security.Policy +[Serializable] +public abstract class CodeGroup // TypeDefIndex: 1427 +{ + // Fields + private PolicyStatement m_policy; // 0x08 + private IMembershipCondition m_membershipCondition; // 0x0C + private string m_description; // 0x10 + private string m_name; // 0x14 + private ArrayList m_children; // 0x18 + private static Dictionary`2 <>f__switch$map2A; // 0x00 + + // Properties + public abstract string MergeLogic { get; } + public PolicyStatement PolicyStatement { get; set; } // 0x003B74CC 0x003B74D4 + public string Description { get; set; } // 0x003B74DC 0x003B74E4 + public IMembershipCondition MembershipCondition { get; set; } // 0x003B74EC 0x003B74F4 + public string Name { get; set; } // 0x003B75A4 0x003B75AC + public IList Children { get; set; } // 0x003B75B4 0x003B75BC + public virtual string AttributeString { get; } // 0x003B7694 + public virtual string PermissionSetName { get; } // 0x003B775C + + // Methods + protected void .ctor(IMembershipCondition membershipCondition, PolicyStatement policy); // 0x003B69DC + internal void .ctor(SecurityElement e, PolicyLevel level); // 0x003B6BCC + public abstract CodeGroup Copy(); + public abstract PolicyStatement Resolve(Evidence evidence); + public abstract CodeGroup ResolveMatchingCodeGroups(Evidence evidence); + public void AddChild(CodeGroup group); // 0x003B7908 + public override bool Equals(object o); // 0x003B79FC + public bool Equals(CodeGroup cg, bool compareChildren); // 0x003B7AA4 + public void RemoveChild(CodeGroup group); // 0x003B805C + public override int GetHashCode(); // 0x003B80A0 + public void FromXml(SecurityElement e); // 0x003B8138 + public void FromXml(SecurityElement e, PolicyLevel level); // 0x003B6C60 + protected virtual void ParseXml(SecurityElement e, PolicyLevel level); // 0x003B8A48 + public SecurityElement ToXml(); // 0x003B8A4C + public SecurityElement ToXml(PolicyLevel level); // 0x003B8A54 + protected virtual void CreateXml(SecurityElement element, PolicyLevel level); // 0x003B9098 + internal static CodeGroup CreateFromXml(SecurityElement se, PolicyLevel level); // 0x003B8578 +} + +// Namespace: System.Security.Policy +internal static class DefaultPolicies // TypeDefIndex: 1428 +{ + // Fields + private const string DnsPermissionClass = "System.Net.DnsPermission, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"; // 0x00 + private const string EventLogPermissionClass = "System.Diagnostics.EventLogPermission, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"; // 0x00 + private const string PrintingPermissionClass = "System.Drawing.Printing.PrintingPermission, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + private const string SocketPermissionClass = "System.Net.SocketPermission, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"; // 0x00 + private const string WebPermissionClass = "System.Net.WebPermission, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"; // 0x00 + private const string PerformanceCounterPermissionClass = "System.Diagnostics.PerformanceCounterPermission, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"; // 0x00 + private const string DirectoryServicesPermissionClass = "System.DirectoryServices.DirectoryServicesPermission, System.DirectoryServices, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + private const string MessageQueuePermissionClass = "System.Messaging.MessageQueuePermission, System.Messaging, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + private const string ServiceControllerPermissionClass = "System.ServiceProcess.ServiceControllerPermission, System.ServiceProcess, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + private const string OleDbPermissionClass = "System.Data.OleDb.OleDbPermission, System.Data, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"; // 0x00 + private const string SqlClientPermissionClass = "System.Data.SqlClient.SqlClientPermission, System.Data, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"; // 0x00 + private const string DataProtectionPermissionClass = "System.Security.Permissions.DataProtectionPermission, System.Security, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + private const string StorePermissionClass = "System.Security.Permissions.StorePermission, System.Security, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + private static Version _fxVersion; // 0x00 + private static byte[] _ecmaKey; // 0x04 + private static StrongNamePublicKeyBlob _ecma; // 0x08 + private static byte[] _msFinalKey; // 0x0C + private static StrongNamePublicKeyBlob _msFinal; // 0x10 + private static NamedPermissionSet _fullTrust; // 0x14 + private static NamedPermissionSet _localIntranet; // 0x18 + private static NamedPermissionSet _internet; // 0x1C + private static NamedPermissionSet _skipVerification; // 0x20 + private static NamedPermissionSet _execution; // 0x24 + private static NamedPermissionSet _nothing; // 0x28 + private static NamedPermissionSet _everything; // 0x2C + private static Dictionary`2 <>f__switch$map2B; // 0x30 + + // Properties + public static PermissionSet FullTrust { get; } // 0x003B97D0 + public static PermissionSet LocalIntranet { get; } // 0x003B98D4 + public static PermissionSet Internet { get; } // 0x003B99D8 + public static PermissionSet SkipVerification { get; } // 0x003B9ADC + public static PermissionSet Execution { get; } // 0x003B9BE0 + public static PermissionSet Nothing { get; } // 0x003B9CE4 + public static PermissionSet Everything { get; } // 0x003B9DE8 + + // Methods + private static void .cctor(); // 0x003B912C + public static PermissionSet GetSpecialPermissionSet(string name); // 0x003B9220 + public static StrongNameMembershipCondition FullTrustMembership(string name, Key key); // 0x003BAE5C + private static NamedPermissionSet BuildFullTrust(); // 0x003B9EEC + private static NamedPermissionSet BuildLocalIntranet(); // 0x003B9F70 + private static NamedPermissionSet BuildInternet(); // 0x003BA2FC + private static NamedPermissionSet BuildSkipVerification(); // 0x003BA5B8 + private static NamedPermissionSet BuildExecution(); // 0x003BA6C0 + private static NamedPermissionSet BuildNothing(); // 0x003BA7C8 + private static NamedPermissionSet BuildEverything(); // 0x003BA84C + private static SecurityElement PrintingPermission(string level); // 0x003BB1F8 +} + +// Namespace: +public static class ReservedNames // TypeDefIndex: 1429 +{ + // Fields + public const string FullTrust = "FullTrust"; // 0x00 + public const string LocalIntranet = "LocalIntranet"; // 0x00 + public const string Internet = "Internet"; // 0x00 + public const string SkipVerification = "SkipVerification"; // 0x00 + public const string Execution = "Execution"; // 0x00 + public const string Nothing = "Nothing"; // 0x00 + public const string Everything = "Everything"; // 0x00 + private static Dictionary`2 <>f__switch$map2C; // 0x00 + + // Methods + public static bool IsReserved(string name); // 0x003BB370 +} + +// Namespace: +public enum Key // TypeDefIndex: 1430 +{ + Ecma = 0, + MsFinal = 1 +} + +// Namespace: System.Security.Policy +[Serializable] +public sealed class Evidence : IEnumerable, ICollection // TypeDefIndex: 1431 +{ + // Fields + private bool _locked; // 0x08 + private ArrayList hostEvidenceList; // 0x0C + private ArrayList assemblyEvidenceList; // 0x10 + private int _hashCode; // 0x14 + + // Properties + public int Count { get; } // 0x003BBE3C + public bool IsReadOnly { get; } // 0x003BBE98 + public bool IsSynchronized { get; } // 0x003BBEA0 + public bool Locked { get; set; } // 0x003BBEA8 0x003BBEB0 + public object SyncRoot { get; } // 0x003BBEB8 + internal ArrayList HostEvidenceList { get; } // 0x003BBCEC + internal ArrayList AssemblyEvidenceList { get; } // 0x003BBD94 + + // Methods + public void .ctor(); // 0x003BB6B0 + public void .ctor(Evidence evidence); // 0x003BB6B8 + public void .ctor(object[] hostEvidence, object[] assemblyEvidence); // 0x003BBC54 + public void AddAssembly(object id); // 0x003BBEBC + public void AddHost(object id); // 0x003BBF08 + public void Clear(); // 0x003BC05C + public void CopyTo(Array array, int index); // 0x003BC0AC + public override bool Equals(object obj); // 0x003BC17C + public IEnumerator GetEnumerator(); // 0x003BC518 + public IEnumerator GetAssemblyEnumerator(); // 0x003BC608 + public override int GetHashCode(); // 0x003BC640 + public IEnumerator GetHostEnumerator(); // 0x003B302C + public void Merge(Evidence evidence); // 0x003BB6E8 + public void RemoveType(Type t); // 0x003BC7B0 + private static bool IsAuthenticodePresent(Assembly a); // 0x003BC904 + internal static Evidence GetDefaultHostEvidence(Assembly a); // 0x003BC908 +} + +// Namespace: +private class EvidenceEnumerator : IEnumerator // TypeDefIndex: 1432 +{ + // Fields + private IEnumerator currentEnum; // 0x08 + private IEnumerator hostEnum; // 0x0C + private IEnumerator assemblyEnum; // 0x10 + + // Properties + public object Current { get; } // 0x003BCC64 + + // Methods + public void .ctor(IEnumerator hostenum, IEnumerator assemblyenum); // 0x003BC5DC + public bool MoveNext(); // 0x003BC974 + public void Reset(); // 0x003BCAF8 +} + +// Namespace: System.Security.Policy +[Serializable] +public sealed class FileCodeGroup : CodeGroup // TypeDefIndex: 1433 +{ + // Fields + private FileIOPermissionAccess m_access; // 0x1C + + // Properties + public override string MergeLogic { get; } // 0x003BD154 + public override string AttributeString { get; } // 0x003BDD14 + public override string PermissionSetName { get; } // 0x003BDD1C + + // Methods + public void .ctor(IMembershipCondition membershipCondition, FileIOPermissionAccess access); // 0x003BCD3C + internal void .ctor(SecurityElement e, PolicyLevel level); // 0x003B909C + public override CodeGroup Copy(); // 0x003BCD5C + public override PolicyStatement Resolve(Evidence evidence); // 0x003BD1B0 + public override CodeGroup ResolveMatchingCodeGroups(Evidence evidence); // 0x003BD840 + public override bool Equals(object o); // 0x003BDE04 + public override int GetHashCode(); // 0x003BDEE0 + protected override void ParseXml(SecurityElement e, PolicyLevel level); // 0x003BDFA4 + protected override void CreateXml(SecurityElement element, PolicyLevel level); // 0x003BE114 +} + +// Namespace: System.Security.Policy +[Serializable] +public sealed class FirstMatchCodeGroup : CodeGroup // TypeDefIndex: 1434 +{ + // Properties + public override string MergeLogic { get; } // 0x003BE1EC + + // Methods + public void .ctor(IMembershipCondition membershipCondition, PolicyStatement policy); // 0x003BE1E8 + internal void .ctor(SecurityElement e, PolicyLevel level); // 0x003B90A0 + public override CodeGroup Copy(); // 0x003BE248 + public override PolicyStatement Resolve(Evidence evidence); // 0x003BE698 + public override CodeGroup ResolveMatchingCodeGroups(Evidence evidence); // 0x003BEB7C + private FirstMatchCodeGroup CopyNoChildren(); // 0x003BE5E4 +} + +// Namespace: System.Security.Policy +[Serializable] +public sealed class GacInstalled : IBuiltInEvidence, IIdentityPermissionFactory // TypeDefIndex: 1435 +{ + // Methods + public void .ctor(); // 0x003BF080 + private int System.Security.Policy.IBuiltInEvidence.GetRequiredSize(bool verbose); // 0x003BF088 + private int System.Security.Policy.IBuiltInEvidence.InitFromBuffer(char[] buffer, int position); // 0x003BF090 + private int System.Security.Policy.IBuiltInEvidence.OutputToBuffer(char[] buffer, int position, bool verbose); // 0x003BF098 + public object Copy(); // 0x003BF0E8 + public IPermission CreateIdentityPermission(Evidence evidence); // 0x003BF154 + public override bool Equals(object o); // 0x003BF1C0 + public override int GetHashCode(); // 0x003BF23C + public override string ToString(); // 0x003BF244 +} + +// Namespace: System.Security.Policy +[Serializable] +public sealed class GacMembershipCondition : IConstantMembershipCondition, IMembershipCondition, ISecurityEncodable, ISecurityPolicyEncodable // TypeDefIndex: 1436 +{ + // Fields + private readonly int version; // 0x08 + + // Methods + public void .ctor(); // 0x003BF36C + public bool Check(Evidence evidence); // 0x003BF37C + public IMembershipCondition Copy(); // 0x003BF52C + public override bool Equals(object o); // 0x003BF5A4 + public void FromXml(SecurityElement e); // 0x003BF620 + public void FromXml(SecurityElement e, PolicyLevel level); // 0x003BF624 + public override int GetHashCode(); // 0x003BF6C8 + public override string ToString(); // 0x003BF6D0 + public SecurityElement ToXml(); // 0x003BF72C + public SecurityElement ToXml(PolicyLevel level); // 0x003BF730 +} + +// Namespace: System.Security.Policy +[Serializable] +public sealed class Hash : ISerializable, IBuiltInEvidence // TypeDefIndex: 1437 +{ + // Fields + private Assembly assembly; // 0x08 + private byte[] data; // 0x0C + internal byte[] _md5; // 0x10 + internal byte[] _sha1; // 0x14 + + // Properties + public byte[] MD5 { get; } // 0x003BFA0C + public byte[] SHA1 { get; } // 0x003BFBC0 + + // Methods + public void .ctor(Assembly assembly); // 0x003BF804 + internal void .ctor(); // 0x003BF8C0 + internal void .ctor(SerializationInfo info, StreamingContext context); // 0x003BF8C8 + private int System.Security.Policy.IBuiltInEvidence.GetRequiredSize(bool verbose); // 0x003BF9EC + private int System.Security.Policy.IBuiltInEvidence.InitFromBuffer(char[] buffer, int position); // 0x003BF9FC + private int System.Security.Policy.IBuiltInEvidence.OutputToBuffer(char[] buffer, int position, bool verbose); // 0x003BFA04 + public byte[] GenerateHash(HashAlgorithm hashAlg); // 0x003BFAF8 + public void GetObjectData(SerializationInfo info, StreamingContext context); // 0x003BFE7C + public override string ToString(); // 0x003BFF54 + private byte[] GetData(); // 0x003BFCAC + public static Hash CreateMD5(byte[] md5); // 0x003C0190 + public static Hash CreateSHA1(byte[] sha1); // 0x003C0274 +} + +// Namespace: System.Security.Policy +[Serializable] +public sealed class HashMembershipCondition : ISerializable, IDeserializationCallback, IMembershipCondition, ISecurityEncodable, ISecurityPolicyEncodable // TypeDefIndex: 1438 +{ + // Fields + private readonly int version; // 0x08 + private HashAlgorithm hash_algorithm; // 0x0C + private byte[] hash_value; // 0x10 + + // Properties + public HashAlgorithm HashAlgorithm { get; set; } // 0x003C04E0 0x003C0560 + public byte[] HashValue { get; set; } // 0x003C0610 0x003C0720 + + // Methods + internal void .ctor(); // 0x003C0358 + public void .ctor(HashAlgorithm hashAlg, byte[] value); // 0x003C0368 + private void System.Runtime.Serialization.IDeserializationCallback.OnDeserialization(object sender); // 0x003C04D8 + private void System.Runtime.Serialization.ISerializable.GetObjectData(SerializationInfo info, StreamingContext context); // 0x003C04DC + public bool Check(Evidence evidence); // 0x003C0828 + public IMembershipCondition Copy(); // 0x003C0AD8 + public override bool Equals(object o); // 0x003C0B54 + public SecurityElement ToXml(); // 0x003C0C18 + public SecurityElement ToXml(PolicyLevel level); // 0x003C0C1C + public void FromXml(SecurityElement e); // 0x003C0DB8 + public void FromXml(SecurityElement e, PolicyLevel level); // 0x003C0DBC + public override int GetHashCode(); // 0x003C0F04 + public override string ToString(); // 0x003C0FB4 + private bool Compare(byte[] expected, byte[] actual); // 0x003C0A08 +} + +// Namespace: System.Security.Policy +public interface IApplicationTrustManager : ISecurityEncodable // TypeDefIndex: 1439 +{ + // Methods + ApplicationTrust DetermineApplicationTrust(ActivationContext activationContext, TrustManagerContext context); +} + +// Namespace: System.Security.Policy +internal interface IBuiltInEvidence // TypeDefIndex: 1440 +{ + // Methods + int GetRequiredSize(bool verbose); + int InitFromBuffer(char[] buffer, int position); + int OutputToBuffer(char[] buffer, int position, bool verbose); +} + +// Namespace: System.Security.Policy +internal interface IConstantMembershipCondition // TypeDefIndex: 1441 +{ +} + +// Namespace: System.Security.Policy +public interface IIdentityPermissionFactory // TypeDefIndex: 1442 +{ + // Methods + IPermission CreateIdentityPermission(Evidence evidence); +} + +// Namespace: System.Security.Policy +public interface IMembershipCondition : ISecurityEncodable, ISecurityPolicyEncodable // TypeDefIndex: 1443 +{ + // Methods + bool Check(Evidence evidence); + IMembershipCondition Copy(); + bool Equals(object obj); + string ToString(); +} + +// Namespace: System.Security.Policy +internal sealed class MembershipConditionHelper // TypeDefIndex: 1444 +{ + // Fields + private static readonly string XmlTag; // 0x00 + + // Methods + public void .ctor(); // 0x003C10EC + private static void .cctor(); // 0x003C10F4 + internal static int CheckSecurityElement(SecurityElement se, string parameterName, int minimumVersion, int maximumVersion); // 0x003B1F20 + internal static SecurityElement Element(Type type, int version); // 0x003B2490 +} + +// Namespace: System.Security.Policy +internal class MonoTrustManager : IApplicationTrustManager, ISecurityEncodable // TypeDefIndex: 1445 +{ + // Fields + private const string tag = "IApplicationTrustManager"; // 0x00 + + // Methods + public void .ctor(); // 0x003B38AC + public ApplicationTrust DetermineApplicationTrust(ActivationContext activationContext, TrustManagerContext context); // 0x003C1168 + public void FromXml(SecurityElement e); // 0x003C1214 + public SecurityElement ToXml(); // 0x003C137C +} + +// Namespace: System.Security.Policy +[Serializable] +public sealed class NetCodeGroup : CodeGroup // TypeDefIndex: 1446 +{ + // Fields + public static readonly string AbsentOriginScheme; // 0x00 + public static readonly string AnyOtherOriginScheme; // 0x04 + private Hashtable _rules; // 0x1C + private int _hashcode; // 0x20 + + // Properties + public override string AttributeString { get; } // 0x003C163C + public override string MergeLogic { get; } // 0x003C1644 + public override string PermissionSetName { get; } // 0x003C16A0 + + // Methods + public void .ctor(IMembershipCondition membershipCondition); // 0x003C14F8 + internal void .ctor(SecurityElement e, PolicyLevel level); // 0x003B90A4 + private static void .cctor(); // 0x003C157C + public void AddConnectAccess(string originScheme, CodeConnectAccess connectAccess); // 0x003C16FC + public override CodeGroup Copy(); // 0x003C1BC8 + private bool Equals(CodeConnectAccess[] rules1, CodeConnectAccess[] rules2); // 0x003C1FD0 + public override bool Equals(object o); // 0x003C20C8 + public DictionaryEntry[] GetConnectAccessRules(); // 0x003C2550 + public override int GetHashCode(); // 0x003C2614 + public override PolicyStatement Resolve(Evidence evidence); // 0x003C29F4 + public void ResetConnectAccess(); // 0x003C2FF4 + public override CodeGroup ResolveMatchingCodeGroups(Evidence evidence); // 0x003C3028 + protected override void CreateXml(SecurityElement element, PolicyLevel level); // 0x003C34DC + protected override void ParseXml(SecurityElement e, PolicyLevel level); // 0x003C34E0 +} + +// Namespace: System.Security.Policy +[Serializable] +public sealed class PermissionRequestEvidence : IBuiltInEvidence // TypeDefIndex: 1447 +{ + // Fields + private PermissionSet requested; // 0x08 + private PermissionSet optional; // 0x0C + private PermissionSet denied; // 0x10 + + // Properties + public PermissionSet DeniedPermissions { get; } // 0x003C3730 + public PermissionSet OptionalPermissions { get; } // 0x003C3738 + public PermissionSet RequestedPermissions { get; } // 0x003C3740 + + // Methods + public void .ctor(PermissionSet request, PermissionSet optional, PermissionSet denied); // 0x003C34E4 + private int System.Security.Policy.IBuiltInEvidence.GetRequiredSize(bool verbose); // 0x003C35D8 + private int System.Security.Policy.IBuiltInEvidence.InitFromBuffer(char[] buffer, int position); // 0x003C3720 + private int System.Security.Policy.IBuiltInEvidence.OutputToBuffer(char[] buffer, int position, bool verbose); // 0x003C3728 + public PermissionRequestEvidence Copy(); // 0x003C3748 + public override string ToString(); // 0x003C37D4 +} + +// Namespace: System.Security.Policy +[Serializable] +public class PolicyException : SystemException, _Exception // TypeDefIndex: 1448 +{ + // Methods + public void .ctor(); // 0x003C3AB0 + public void .ctor(string message); // 0x003C3B24 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x003C3B2C + public void .ctor(string message, Exception exception); // 0x003C3B4C +} + +// Namespace: System.Security.Policy +[Serializable] +public sealed class PolicyLevel // TypeDefIndex: 1449 +{ + // Fields + private string label; // 0x08 + private CodeGroup root_code_group; // 0x0C + private ArrayList full_trust_assemblies; // 0x10 + private ArrayList named_permission_sets; // 0x14 + private string _location; // 0x18 + private PolicyLevelType _type; // 0x1C + private Hashtable fullNames; // 0x20 + private SecurityElement xml; // 0x24 + + // Properties + public IList FullTrustAssemblies { get; } // 0x003C65E0 + public string Label { get; } // 0x003C65E8 + public IList NamedPermissionSets { get; } // 0x003C65F0 + public CodeGroup RootCodeGroup { get; set; } // 0x003C65F8 0x003C6600 + public string StoreLocation { get; } // 0x003C66B0 + public PolicyLevelType Type { get; } // 0x003C66B8 + + // Methods + internal void .ctor(string label, PolicyLevelType type); // 0x003C3B54 + internal void LoadFromFile(string filename); // 0x003C3BF8 + internal void LoadFromString(string xml); // 0x003C65C0 + private SecurityElement FromString(string xml); // 0x003C4220 + public void AddFullTrustAssembly(StrongName sn); // 0x003C66C0 + public void AddFullTrustAssembly(StrongNameMembershipCondition snMC); // 0x003C67C4 + public void AddNamedPermissionSet(NamedPermissionSet permSet); // 0x003C6BB4 + public NamedPermissionSet ChangeNamedPermissionSet(string name, PermissionSet pSet); // 0x003C7004 + public static PolicyLevel CreateAppDomainLevel(); // 0x003C7568 + public void FromXml(SecurityElement e); // 0x003C471C + public NamedPermissionSet GetNamedPermissionSet(string name); // 0x003B8140 + public void Recover(); // 0x003C7888 + public void RemoveFullTrustAssembly(StrongName sn); // 0x003C7AE4 + public void RemoveFullTrustAssembly(StrongNameMembershipCondition snMC); // 0x003C7BE8 + public NamedPermissionSet RemoveNamedPermissionSet(NamedPermissionSet permSet); // 0x003C7E18 + public NamedPermissionSet RemoveNamedPermissionSet(string name); // 0x003C7ED4 + public void Reset(); // 0x003C76F4 + public PolicyStatement Resolve(Evidence evidence); // 0x003C83F8 + public CodeGroup ResolveMatchingCodeGroups(Evidence evidence); // 0x003C84E0 + public SecurityElement ToXml(); // 0x003C85BC + internal void Save(); // 0x003C61E4 + internal void CreateDefaultLevel(PolicyLevelType type); // 0x003C5CA4 + internal void CreateDefaultFullTrustAssemblies(); // 0x003C5624 + internal void CreateDefaultNamedPermissionSets(); // 0x003C58BC + internal string ResolveClassName(string className); // 0x003C94F8 + internal bool IsFullTrustAssembly(Assembly a); // 0x003C95A0 +} + +// Namespace: System.Security.Policy +[Serializable] +public sealed class PolicyStatement : ISecurityEncodable, ISecurityPolicyEncodable // TypeDefIndex: 1450 +{ + // Fields + private PermissionSet perms; // 0x08 + private PolicyStatementAttribute attrs; // 0x0C + + // Properties + public PermissionSet PermissionSet { get; set; } // 0x003B7864 0x003C9A28 + public PolicyStatementAttribute Attributes { get; set; } // 0x003C9A30 0x003C9A38 + public string AttributeString { get; } // 0x003B76A8 + + // Methods + public void .ctor(PermissionSet permSet); // 0x003B41C4 + public void .ctor(PermissionSet permSet, PolicyStatementAttribute attributes); // 0x003C99C0 + public PolicyStatement Copy(); // 0x003B6B50 + public void FromXml(SecurityElement et); // 0x003C9B40 + public void FromXml(SecurityElement et, PolicyLevel level); // 0x003B48F0 + public SecurityElement ToXml(); // 0x003B500C + public SecurityElement ToXml(PolicyLevel level); // 0x003C9B44 + public override bool Equals(object obj); // 0x003C9CE4 + public override int GetHashCode(); // 0x003B80F4 + internal static PolicyStatement Empty(); // 0x003BD7AC +} + +// Namespace: System.Security.Policy +[Serializable] +public enum PolicyStatementAttribute // TypeDefIndex: 1451 +{ + Nothing = 0, + Exclusive = 1, + LevelFinal = 2, + All = 3 +} + +// Namespace: System.Security.Policy +[Serializable] +public sealed class Publisher : IBuiltInEvidence, IIdentityPermissionFactory // TypeDefIndex: 1452 +{ + // Fields + private X509Certificate m_cert; // 0x08 + + // Properties + public X509Certificate Certificate { get; } // 0x003C9F58 + + // Methods + public void .ctor(X509Certificate cert); // 0x003C9DD0 + private int System.Security.Policy.IBuiltInEvidence.GetRequiredSize(bool verbose); // 0x003C9EEC + private int System.Security.Policy.IBuiltInEvidence.InitFromBuffer(char[] buffer, int position); // 0x003C9F48 + private int System.Security.Policy.IBuiltInEvidence.OutputToBuffer(char[] buffer, int position, bool verbose); // 0x003C9F50 + public object Copy(); // 0x003CA02C + public IPermission CreateIdentityPermission(Evidence evidence); // 0x003CA0A0 + public override bool Equals(object o); // 0x003CA118 + public override int GetHashCode(); // 0x003CA23C + public override string ToString(); // 0x003CA270 +} + +// Namespace: System.Security.Policy +[Serializable] +public sealed class PublisherMembershipCondition : IConstantMembershipCondition, IMembershipCondition, ISecurityEncodable, ISecurityPolicyEncodable // TypeDefIndex: 1453 +{ + // Fields + private readonly int version; // 0x08 + private X509Certificate x509; // 0x0C + + // Properties + public X509Certificate Certificate { get; set; } // 0x003CA530 0x003CA538 + + // Methods + internal void .ctor(); // 0x003CA3FC + public void .ctor(X509Certificate certificate); // 0x003CA40C + public bool Check(Evidence evidence); // 0x003CA5E8 + public IMembershipCondition Copy(); // 0x003CA8E8 + public override bool Equals(object o); // 0x003CA95C + public void FromXml(SecurityElement e); // 0x003CAA1C + public void FromXml(SecurityElement e, PolicyLevel level); // 0x003CAA20 + public override int GetHashCode(); // 0x003CAB2C + public override string ToString(); // 0x003CAB60 + public SecurityElement ToXml(); // 0x003CAC20 + public SecurityElement ToXml(PolicyLevel level); // 0x003CAC24 +} + +// Namespace: System.Security.Policy +[Serializable] +public sealed class Site : IBuiltInEvidence, IIdentityPermissionFactory // TypeDefIndex: 1454 +{ + // Fields + internal string origin_site; // 0x08 + + // Properties + public string Name { get; } // 0x003CB86C + + // Methods + public void .ctor(string name); // 0x003CAD5C + private int System.Security.Policy.IBuiltInEvidence.GetRequiredSize(bool verbose); // 0x003CB17C + private int System.Security.Policy.IBuiltInEvidence.InitFromBuffer(char[] buffer, int position); // 0x003CB1B0 + private int System.Security.Policy.IBuiltInEvidence.OutputToBuffer(char[] buffer, int position, bool verbose); // 0x003CB1B8 + public static Site CreateFromUrl(string url); // 0x003CB1C0 + public object Copy(); // 0x003CB4DC + public IPermission CreateIdentityPermission(Evidence evidence); // 0x003CB550 + public override bool Equals(object o); // 0x003CB5D0 + public override int GetHashCode(); // 0x003CB700 + public override string ToString(); // 0x003CB72C + internal static bool IsValid(string name); // 0x003CAE80 + internal static string UrlToSite(string url); // 0x003CB3AC +} + +// Namespace: System.Security.Policy +[Serializable] +public sealed class SiteMembershipCondition : IConstantMembershipCondition, IMembershipCondition, ISecurityEncodable, ISecurityPolicyEncodable // TypeDefIndex: 1455 +{ + // Fields + private readonly int version; // 0x08 + private string _site; // 0x0C + + // Properties + public string Site { get; set; } // 0x003CB9BC 0x003CB8B8 + + // Methods + internal void .ctor(); // 0x003CB874 + public void .ctor(string site); // 0x003CB884 + public bool Check(Evidence evidence); // 0x003CB9C4 + public IMembershipCondition Copy(); // 0x003CBF54 + public override bool Equals(object o); // 0x003CBFE0 + public void FromXml(SecurityElement e); // 0x003CC0B4 + public void FromXml(SecurityElement e, PolicyLevel level); // 0x003CC0B8 + public override int GetHashCode(); // 0x003CC18C + public override string ToString(); // 0x003CC1B8 + public SecurityElement ToXml(); // 0x003CC250 + public SecurityElement ToXml(PolicyLevel level); // 0x003CC254 +} + +// Namespace: System.Security.Policy +[Serializable] +public sealed class StrongName : IBuiltInEvidence, IIdentityPermissionFactory // TypeDefIndex: 1456 +{ + // Fields + private StrongNamePublicKeyBlob publickey; // 0x08 + private string name; // 0x0C + private Version version; // 0x10 + + // Properties + public string Name { get; } // 0x00230C90 + public StrongNamePublicKeyBlob PublicKey { get; } // 0x00230C98 + public Version Version { get; } // 0x00230CA0 + + // Methods + public void .ctor(StrongNamePublicKeyBlob blob, string name, Version version); // 0x00230A60 + private int System.Security.Policy.IBuiltInEvidence.GetRequiredSize(bool verbose); // 0x00230C4C + private int System.Security.Policy.IBuiltInEvidence.InitFromBuffer(char[] buffer, int position); // 0x00230C80 + private int System.Security.Policy.IBuiltInEvidence.OutputToBuffer(char[] buffer, int position, bool verbose); // 0x00230C88 + public object Copy(); // 0x00230CA8 + public IPermission CreateIdentityPermission(Evidence evidence); // 0x00230D34 + public override bool Equals(object o); // 0x00230DCC + public override int GetHashCode(); // 0x00230F88 + public override string ToString(); // 0x00230FB4 +} + +// Namespace: System.Security.Policy +[Serializable] +public sealed class StrongNameMembershipCondition : IConstantMembershipCondition, IMembershipCondition, ISecurityEncodable, ISecurityPolicyEncodable // TypeDefIndex: 1457 +{ + // Fields + private readonly int version; // 0x08 + private StrongNamePublicKeyBlob blob; // 0x0C + private string name; // 0x10 + private Version assemblyVersion; // 0x14 + + // Properties + public string Name { get; set; } // 0x00231620 0x00231628 + public Version Version { get; set; } // 0x00231630 0x00231638 + public StrongNamePublicKeyBlob PublicKey { get; set; } // 0x00231640 0x00231648 + + // Methods + public void .ctor(StrongNamePublicKeyBlob blob, string name, Version version); // 0x00231498 + internal void .ctor(SecurityElement e); // 0x002315D8 + internal void .ctor(); // 0x00231610 + public bool Check(Evidence evidence); // 0x002316F8 + public IMembershipCondition Copy(); // 0x00231994 + public override bool Equals(object o); // 0x00231A20 + public override int GetHashCode(); // 0x00231B7C + public void FromXml(SecurityElement e); // 0x0023160C + public void FromXml(SecurityElement e, PolicyLevel level); // 0x00231BA8 + public override string ToString(); // 0x00231E04 + public SecurityElement ToXml(); // 0x00231F4C + public SecurityElement ToXml(PolicyLevel level); // 0x00231F50 +} + +// Namespace: System.Security.Policy +public class TrustManagerContext // TypeDefIndex: 1458 +{ + // Fields + private bool _ignorePersistedDecision; // 0x08 + private bool _noPrompt; // 0x09 + private bool _keepAlive; // 0x0A + private bool _persist; // 0x0B + private ApplicationIdentity _previousId; // 0x0C + private TrustManagerUIContext _ui; // 0x10 + + // Properties + public virtual bool IgnorePersistedDecision { get; set; } // 0x002321B0 0x002321B8 + public virtual bool KeepAlive { get; set; } // 0x002321C0 0x002321C8 + public virtual bool NoPrompt { get; set; } // 0x002321D0 0x002321D8 + public virtual bool Persist { get; set; } // 0x002321E0 0x002321E8 + public virtual ApplicationIdentity PreviousApplicationIdentity { get; set; } // 0x002321F0 0x002321F8 + public virtual TrustManagerUIContext UIContext { get; set; } // 0x00232200 0x00232208 + + // Methods + public void .ctor(); // 0x00232160 + public void .ctor(TrustManagerUIContext uiContext); // 0x00232188 +} + +// Namespace: System.Security.Policy +public enum TrustManagerUIContext // TypeDefIndex: 1459 +{ + Install = 0, + Upgrade = 1, + Run = 2 +} + +// Namespace: System.Security.Policy +[Serializable] +public sealed class UnionCodeGroup : CodeGroup // TypeDefIndex: 1460 +{ + // Properties + public override string MergeLogic { get; } // 0x0023316C + + // Methods + public void .ctor(IMembershipCondition membershipCondition, PolicyStatement policy); // 0x00232210 + internal void .ctor(SecurityElement e, PolicyLevel level); // 0x00232218 + public override CodeGroup Copy(); // 0x00232220 + internal CodeGroup Copy(bool childs); // 0x00232228 + public override PolicyStatement Resolve(Evidence evidence); // 0x00232630 + public override CodeGroup ResolveMatchingCodeGroups(Evidence evidence); // 0x00232C20 +} + +// Namespace: System.Security.Policy +[Serializable] +public sealed class Url : IBuiltInEvidence, IIdentityPermissionFactory // TypeDefIndex: 1461 +{ + // Fields + private string origin_url; // 0x08 + + // Properties + public string Value { get; } // 0x00234260 + + // Methods + public void .ctor(string name); // 0x002331C8 + internal void .ctor(string name, bool validated); // 0x002331D0 + private int System.Security.Policy.IBuiltInEvidence.GetRequiredSize(bool verbose); // 0x00233518 + private int System.Security.Policy.IBuiltInEvidence.InitFromBuffer(char[] buffer, int position); // 0x0023354C + private int System.Security.Policy.IBuiltInEvidence.OutputToBuffer(char[] buffer, int position, bool verbose); // 0x00233554 + public object Copy(); // 0x0023355C + public IPermission CreateIdentityPermission(Evidence evidence); // 0x002335E4 + public override bool Equals(object o); // 0x0023365C + public override int GetHashCode(); // 0x00233CDC + public override string ToString(); // 0x00233E78 + private string Prepare(string url); // 0x00233218 +} + +// Namespace: System.Security.Policy +[Serializable] +public sealed class UrlMembershipCondition : IConstantMembershipCondition, IMembershipCondition, ISecurityEncodable, ISecurityPolicyEncodable // TypeDefIndex: 1462 +{ + // Fields + private readonly int version; // 0x08 + private Url url; // 0x0C + private string userUrl; // 0x10 + + // Properties + public string Url { get; set; } // 0x00234B6C 0x00234BA4 + + // Methods + public void .ctor(string url); // 0x002347C0 + internal void .ctor(Url url, string userUrl); // 0x00234AB0 + public bool Check(Evidence evidence); // 0x00234C1C + public IMembershipCondition Copy(); // 0x002351C0 + public override bool Equals(object o); // 0x0023523C + public void FromXml(SecurityElement e); // 0x00235414 + public void FromXml(SecurityElement e, PolicyLevel level); // 0x00235418 + public override int GetHashCode(); // 0x00235530 + public override string ToString(); // 0x00235558 + public SecurityElement ToXml(); // 0x00235610 + public SecurityElement ToXml(PolicyLevel level); // 0x00235614 + internal void CheckUrl(string url); // 0x002348B8 +} + +// Namespace: System.Security.Policy +[Serializable] +public sealed class Zone : IBuiltInEvidence, IIdentityPermissionFactory // TypeDefIndex: 1463 +{ + // Fields + private SecurityZone zone; // 0x08 + + // Properties + public SecurityZone SecurityZone { get; } // 0x00235B60 + + // Methods + public void .ctor(SecurityZone zone); // 0x00235750 + private int System.Security.Policy.IBuiltInEvidence.GetRequiredSize(bool verbose); // 0x00235A40 + private int System.Security.Policy.IBuiltInEvidence.InitFromBuffer(char[] buffer, int position); // 0x00235A48 + private int System.Security.Policy.IBuiltInEvidence.OutputToBuffer(char[] buffer, int position, bool verbose); // 0x00235AB0 + public object Copy(); // 0x00235B68 + public IPermission CreateIdentityPermission(Evidence evidence); // 0x00235BDC + public static Zone CreateFromUrl(string url); // 0x00235C54 + public override bool Equals(object o); // 0x00235E9C + public override int GetHashCode(); // 0x00235F44 + public override string ToString(); // 0x00235F4C +} + +// Namespace: System.Security.Policy +[Serializable] +public sealed class ZoneMembershipCondition : IConstantMembershipCondition, IMembershipCondition, ISecurityEncodable, ISecurityPolicyEncodable // TypeDefIndex: 1464 +{ + // Fields + private readonly int version; // 0x08 + private SecurityZone zone; // 0x0C + + // Properties + public SecurityZone SecurityZone { get; set; } // 0x002362D0 0x0023610C + + // Methods + internal void .ctor(); // 0x002360C8 + public void .ctor(SecurityZone zone); // 0x002360D8 + public bool Check(Evidence evidence); // 0x002362D8 + public IMembershipCondition Copy(); // 0x002364A4 + public override bool Equals(object o); // 0x00236530 + public void FromXml(SecurityElement e); // 0x002365D8 + public void FromXml(SecurityElement e, PolicyLevel level); // 0x002365DC + public override int GetHashCode(); // 0x002367A0 + public override string ToString(); // 0x00236864 + public SecurityElement ToXml(); // 0x002369F0 + public SecurityElement ToXml(PolicyLevel level); // 0x002369F4 +} + +// Namespace: System.Security.Principal +[Serializable] +public class GenericIdentity : IIdentity // TypeDefIndex: 1465 +{ + // Fields + private string m_name; // 0x08 + private string m_type; // 0x0C + + // Properties + public virtual string AuthenticationType { get; } // 0x00236D04 + public virtual string Name { get; } // 0x00236D0C + public virtual bool IsAuthenticated { get; } // 0x00236D14 + + // Methods + public void .ctor(string name, string type); // 0x00236B54 + public void .ctor(string name); // 0x00236C64 +} + +// Namespace: System.Security.Principal +[Serializable] +public class GenericPrincipal : IPrincipal // TypeDefIndex: 1466 +{ + // Fields + private IIdentity m_identity; // 0x08 + private string[] m_roles; // 0x0C + + // Properties + public virtual IIdentity Identity { get; } // 0x00236EDC + + // Methods + public void .ctor(IIdentity identity, string[] roles); // 0x00236D44 + public virtual bool IsInRole(string role); // 0x00236EE4 +} + +// Namespace: System.Security.Principal +public interface IIdentity // TypeDefIndex: 1467 +{ + // Properties + string AuthenticationType { get; } + bool IsAuthenticated { get; } + string Name { get; } + +} + +// Namespace: System.Security.Principal +public interface IPrincipal // TypeDefIndex: 1468 +{ + // Properties + IIdentity Identity { get; } + + // Methods + bool IsInRole(string role); +} + +// Namespace: System.Security.Principal +[Serializable] +public sealed class IdentityNotMappedException : SystemException // TypeDefIndex: 1469 +{ + // Fields + private IdentityReferenceCollection _coll; // 0x34 + + // Properties + public IdentityReferenceCollection UnmappedIdentities { get; } // 0x0023718C + + // Methods + public void .ctor(); // 0x00237108 + public void .ctor(string message); // 0x0023717C + public void .ctor(string message, Exception inner); // 0x00237184 + public override void GetObjectData(SerializationInfo serializationInfo, StreamingContext streamingContext); // 0x00237284 +} + +// Namespace: System.Security.Principal +public abstract class IdentityReference // TypeDefIndex: 1470 +{ + // Properties + public abstract string Value { get; } + + // Methods + internal void .ctor(); // 0x00237288 + public abstract bool Equals(object o); + public abstract int GetHashCode(); + public abstract bool IsValidTargetType(Type targetType); + public abstract string ToString(); + public abstract IdentityReference Translate(Type targetType); + public static bool op_Equality(IdentityReference left, IdentityReference right); // 0x00237290 + public static bool op_Inequality(IdentityReference left, IdentityReference right); // 0x00237364 +} + +// Namespace: System.Security.Principal +public class IdentityReferenceCollection : IEnumerable, ICollection`1, IEnumerable`1 // TypeDefIndex: 1471 +{ + // Fields + private ArrayList _list; // 0x08 + + // Properties + public int Count { get; } // 0x00237550 + public bool IsReadOnly { get; } // 0x00237584 + public IdentityReference Item { get; set; } // 0x0023758C 0x00237690 + + // Methods + public void .ctor(); // 0x00237208 + public void .ctor(int capacity); // 0x00237444 + private IEnumerator System.Collections.IEnumerable.GetEnumerator(); // 0x002374C8 + public void Add(IdentityReference identity); // 0x002376D4 + public void Clear(); // 0x00237710 + public bool Contains(IdentityReference identity); // 0x00237744 + public void CopyTo(IdentityReference[] array, int offset); // 0x00237AC4 + public IEnumerator`1 GetEnumerator(); // 0x00237B4C + public bool Remove(IdentityReference identity); // 0x00237BD4 + public IdentityReferenceCollection Translate(Type targetType); // 0x00237F8C + public IdentityReferenceCollection Translate(Type targetType, bool forceSuccess); // 0x00238014 +} + +// Namespace: System.Security.Principal +public sealed class NTAccount : IdentityReference // TypeDefIndex: 1472 +{ + // Fields + private string _value; // 0x08 + + // Properties + public override string Value { get; } // 0x0023885C + + // Methods + public void .ctor(string name); // 0x0023809C + public void .ctor(string domainName, string accountName); // 0x00238268 + public override bool Equals(object o); // 0x00238864 + public override int GetHashCode(); // 0x002389F4 + public override bool IsValidTargetType(Type targetType); // 0x00238A1C + public override string ToString(); // 0x00238B18 + public override IdentityReference Translate(Type targetType); // 0x00238B20 + public static bool op_Equality(NTAccount left, NTAccount right); // 0x00238948 + public static bool op_Inequality(NTAccount left, NTAccount right); // 0x00238BC8 +} + +// Namespace: System.Security.Principal +[Serializable] +public enum PrincipalPolicy // TypeDefIndex: 1473 +{ + UnauthenticatedPrincipal = 0, + NoPrincipal = 1, + WindowsPrincipal = 2 +} + +// Namespace: System.Security.Principal +public sealed class SecurityIdentifier : IdentityReference, IComparable`1 // TypeDefIndex: 1474 +{ + // Fields + private string _value; // 0x08 + public static readonly int MaxBinaryLength; // 0x00 + public static readonly int MinBinaryLength; // 0x04 + + // Properties + public SecurityIdentifier AccountDomainSid { get; } // 0x00239270 + public int BinaryLength { get; } // 0x0023930C + public override string Value { get; } // 0x00239314 + + // Methods + public void .ctor(string sddlForm); // 0x00238C80 + public void .ctor(byte[] binaryForm, int offset); // 0x00238E90 + public void .ctor(IntPtr binaryForm); // 0x00238FD8 + public void .ctor(WellKnownSidType sidType, SecurityIdentifier domainSid); // 0x00239070 + private static void .cctor(); // 0x0023926C + public int CompareTo(SecurityIdentifier sid); // 0x0023931C + public override bool Equals(object o); // 0x002393F8 + public bool Equals(SecurityIdentifier sid); // 0x00239480 + public void GetBinaryForm(byte[] binaryForm, int offset); // 0x00239564 + public override int GetHashCode(); // 0x00239664 + public bool IsAccountSid(); // 0x0023968C + public bool IsEqualDomainSid(SecurityIdentifier sid); // 0x00239714 + public override bool IsValidTargetType(Type targetType); // 0x0023979C + public bool IsWellKnown(WellKnownSidType type); // 0x00239898 + public override string ToString(); // 0x00239920 + public override IdentityReference Translate(Type targetType); // 0x00239928 + public static bool op_Equality(SecurityIdentifier left, SecurityIdentifier right); // 0x002391C0 + public static bool op_Inequality(SecurityIdentifier left, SecurityIdentifier right); // 0x002399D0 +} + +// Namespace: System.Security.Principal +[Serializable] +public enum TokenAccessLevels // TypeDefIndex: 1475 +{ + AssignPrimary = 1, + Duplicate = 2, + Impersonate = 4, + Query = 8, + QuerySource = 16, + AdjustPrivileges = 32, + AdjustGroups = 64, + AdjustDefault = 128, + AdjustSessionId = 256, + Read = 131080, + Write = 131296, + AllAccess = 983551, + MaximumAllowed = 33554432 +} + +// Namespace: System.Security.Principal +[Serializable] +public enum TokenImpersonationLevel // TypeDefIndex: 1476 +{ + None = 0, + Anonymous = 1, + Identification = 2, + Impersonation = 3, + Delegation = 4 +} + +// Namespace: System.Security.Principal +public enum WellKnownSidType // TypeDefIndex: 1477 +{ + NullSid = 0, + WorldSid = 1, + LocalSid = 2, + CreatorOwnerSid = 3, + CreatorGroupSid = 4, + CreatorOwnerServerSid = 5, + CreatorGroupServerSid = 6, + NTAuthoritySid = 7, + DialupSid = 8, + NetworkSid = 9, + BatchSid = 10, + InteractiveSid = 11, + ServiceSid = 12, + AnonymousSid = 13, + ProxySid = 14, + EnterpriseControllersSid = 15, + SelfSid = 16, + AuthenticatedUserSid = 17, + RestrictedCodeSid = 18, + TerminalServerSid = 19, + RemoteLogonIdSid = 20, + LogonIdsSid = 21, + LocalSystemSid = 22, + LocalServiceSid = 23, + NetworkServiceSid = 24, + BuiltinDomainSid = 25, + BuiltinAdministratorsSid = 26, + BuiltinUsersSid = 27, + BuiltinGuestsSid = 28, + BuiltinPowerUsersSid = 29, + BuiltinAccountOperatorsSid = 30, + BuiltinSystemOperatorsSid = 31, + BuiltinPrintOperatorsSid = 32, + BuiltinBackupOperatorsSid = 33, + BuiltinReplicatorSid = 34, + BuiltinPreWindows2000CompatibleAccessSid = 35, + BuiltinRemoteDesktopUsersSid = 36, + BuiltinNetworkConfigurationOperatorsSid = 37, + AccountAdministratorSid = 38, + AccountGuestSid = 39, + AccountKrbtgtSid = 40, + AccountDomainAdminsSid = 41, + AccountDomainUsersSid = 42, + AccountDomainGuestsSid = 43, + AccountComputersSid = 44, + AccountControllersSid = 45, + AccountCertAdminsSid = 46, + AccountSchemaAdminsSid = 47, + AccountEnterpriseAdminsSid = 48, + AccountPolicyAdminsSid = 49, + AccountRasAndIasServersSid = 50, + NtlmAuthenticationSid = 51, + DigestAuthenticationSid = 52, + SChannelAuthenticationSid = 53, + ThisOrganizationSid = 54, + OtherOrganizationSid = 55, + BuiltinIncomingForestTrustBuildersSid = 56, + BuiltinPerformanceMonitoringUsersSid = 57, + BuiltinPerformanceLoggingUsersSid = 58, + BuiltinAuthorizationAccessSid = 59, + WinBuiltinTerminalServerLicenseServersSid = 60, + MaxDefined = 60 +} + +// Namespace: System.Security.Principal +[Serializable] +public enum WindowsAccountType // TypeDefIndex: 1478 +{ + Normal = 0, + Guest = 1, + System = 2, + Anonymous = 3 +} + +// Namespace: System.Security.Principal +[Serializable] +public enum WindowsBuiltInRole // TypeDefIndex: 1479 +{ + Administrator = 544, + User = 545, + Guest = 546, + PowerUser = 547, + AccountOperator = 548, + SystemOperator = 549, + PrintOperator = 550, + BackupOperator = 551, + Replicator = 552 +} + +// Namespace: System.Security.Principal +[Serializable] +public class WindowsIdentity : IDisposable, ISerializable, IDeserializationCallback, IIdentity // TypeDefIndex: 1480 +{ + // Fields + private IntPtr _token; // 0x08 + private string _type; // 0x0C + private WindowsAccountType _account; // 0x10 + private bool _authenticated; // 0x14 + private string _name; // 0x18 + private SerializationInfo _info; // 0x1C + private static IntPtr invalidWindows; // 0x00 + + // Properties + public string AuthenticationType { get; } // 0x0023ABBC + public virtual bool IsAnonymous { get; } // 0x0023ABC4 + public virtual bool IsAuthenticated { get; } // 0x0023ABD8 + public virtual bool IsGuest { get; } // 0x0023ABE0 + public virtual bool IsSystem { get; } // 0x0023ABF0 + public virtual string Name { get; } // 0x0023AC04 + public virtual IntPtr Token { get; } // 0x0023AC98 + public IdentityReferenceCollection Groups { get; } // 0x0023ACA0 + public TokenImpersonationLevel ImpersonationLevel { get; } // 0x0023AD28 + public SecurityIdentifier Owner { get; } // 0x0023ADB0 + public SecurityIdentifier User { get; } // 0x0023AE38 + private static bool IsPosix { get; } // 0x00239EEC + + // Methods + public void .ctor(IntPtr userToken); // 0x00239A88 + public void .ctor(IntPtr userToken, string type); // 0x00239B0C + public void .ctor(IntPtr userToken, string type, WindowsAccountType acctType); // 0x00239B4C + public void .ctor(IntPtr userToken, string type, WindowsAccountType acctType, bool isAuthenticated); // 0x00239AC4 + public void .ctor(string sUserPrincipalName); // 0x00239D50 + public void .ctor(string sUserPrincipalName, string type); // 0x00239D58 + public void .ctor(SerializationInfo info, StreamingContext context); // 0x00239F1C + private static void .cctor(); // 0x00239F3C + private void System.Runtime.Serialization.IDeserializationCallback.OnDeserialization(object sender); // 0x00239FA4 + private void System.Runtime.Serialization.ISerializable.GetObjectData(SerializationInfo info, StreamingContext context); // 0x0023A3E4 + public void Dispose(); // 0x0023A588 + protected virtual void Dispose(bool disposing); // 0x0023A5DC + public static WindowsIdentity GetAnonymous(); // 0x0023A630 + public static WindowsIdentity GetCurrent(); // 0x0023A830 + public static WindowsIdentity GetCurrent(bool ifImpersonating); // 0x0023A8F8 + public static WindowsIdentity GetCurrent(TokenAccessLevels desiredAccess); // 0x0023A980 + public virtual WindowsImpersonationContext Impersonate(); // 0x0023AA08 + public static WindowsImpersonationContext Impersonate(IntPtr userToken); // 0x0023AB4C + private void SetToken(IntPtr token); // 0x00239B90 + internal static string[] _GetRoles(IntPtr token); // 0x0023AEC0 + internal static IntPtr GetCurrentToken(); // 0x0023A8F4 + private static string GetTokenName(IntPtr token); // 0x0023A3E0 + private static IntPtr GetUserToken(string username); // 0x00239EE8 +} + +// Namespace: System.Security.Principal +public class WindowsImpersonationContext : IDisposable // TypeDefIndex: 1481 +{ + // Fields + private IntPtr _token; // 0x08 + private bool undo; // 0x0C + + // Methods + internal void .ctor(IntPtr token); // 0x0023AA7C + public void Dispose(); // 0x0023AEF0 + protected virtual void Dispose(bool disposing); // 0x0023AFCC + public void Undo(); // 0x0023AF00 + private static bool CloseToken(IntPtr token); // 0x0023B008 + private static IntPtr DuplicateToken(IntPtr token); // 0x0023AEC4 + private static bool SetCurrentToken(IntPtr token); // 0x0023AEC8 + private static bool RevertToSelf(); // 0x0023B004 +} + +// Namespace: System.Security.Principal +[Serializable] +public class WindowsPrincipal : IPrincipal // TypeDefIndex: 1482 +{ + // Fields + private WindowsIdentity _identity; // 0x08 + private string[] m_roles; // 0x0C + + // Properties + public virtual IIdentity Identity { get; } // 0x0023B0C8 + private static bool IsPosix { get; } // 0x0023B1BC + private IntPtr Token { get; } // 0x0023B1EC + + // Methods + public void .ctor(WindowsIdentity ntIdentity); // 0x0023B00C + public virtual bool IsInRole(int rid); // 0x0023B0D0 + public virtual bool IsInRole(string role); // 0x0023B224 + public virtual bool IsInRole(WindowsBuiltInRole role); // 0x0023B3F4 + public virtual bool IsInRole(SecurityIdentifier sid); // 0x0023B4AC + private static bool IsMemberOfGroupId(IntPtr user, IntPtr group); // 0x0023B220 + private static bool IsMemberOfGroupName(IntPtr user, string group); // 0x0023B3F0 +} + +// Namespace: System.Security +public sealed class AllowPartiallyTrustedCallersAttribute : Attribute // TypeDefIndex: 1483 +{ + // Methods + public void .ctor(); // 0x00434A34 +} + +// Namespace: System.Security +[Serializable] +public abstract class CodeAccessPermission : IPermission, ISecurityEncodable, IStackWalk // TypeDefIndex: 1484 +{ + // Methods + protected void .ctor(); // 0x00434A3C + public void Assert(); // 0x00434A44 + internal bool CheckAssert(CodeAccessPermission asserted); // 0x00434A48 + internal bool CheckDemand(CodeAccessPermission target); // 0x00434AA8 + internal bool CheckDeny(CodeAccessPermission denied); // 0x00434B08 + internal bool CheckPermitOnly(CodeAccessPermission target); // 0x00434BFC + public abstract IPermission Copy(); + public void Demand(); // 0x00434C5C + public void Deny(); // 0x00434C60 + public override bool Equals(object obj); // 0x00434C64 + public abstract void FromXml(SecurityElement elem); + public override int GetHashCode(); // 0x00434D70 + public abstract IPermission Intersect(IPermission target); + public abstract bool IsSubsetOf(IPermission target); + public override string ToString(); // 0x00434D78 + public abstract SecurityElement ToXml(); + public virtual IPermission Union(IPermission other); // 0x00434DB4 + public void PermitOnly(); // 0x00434E4C + public static void RevertAll(); // 0x00434E50 + public static void RevertAssert(); // 0x00434E54 + public static void RevertDeny(); // 0x00434E58 + public static void RevertPermitOnly(); // 0x00434E5C + internal SecurityElement Element(int version); // 0x00434E60 + internal static PermissionState CheckPermissionState(PermissionState state, bool allowUnrestricted); // 0x00435060 + internal static int CheckSecurityElement(SecurityElement se, string parameterName, int minimumVersion, int maximumVersion); // 0x00435194 + internal static bool IsUnrestricted(SecurityElement se); // 0x00435594 + internal bool ProcessFrame(SecurityFrame frame); // 0x004356F4 + internal static void ThrowInvalidPermission(IPermission target, Type expected); // 0x004361F0 + internal static void ThrowExecutionEngineException(SecurityAction stackmod); // 0x00436318 + internal static void ThrowSecurityException(object demanded, string message, SecurityFrame frame, SecurityAction action, IPermission failed); // 0x00436160 +} + +// Namespace: System.Security +[Serializable] +public class HostProtectionException : SystemException // TypeDefIndex: 1485 +{ + // Fields + private HostProtectionResource _protected; // 0x34 + private HostProtectionResource _demanded; // 0x38 + + // Properties + public HostProtectionResource DemandedResources { get; } // 0x003D8A4C + public HostProtectionResource ProtectedResources { get; } // 0x003D8A54 + + // Methods + public void .ctor(); // 0x003D89BC + public void .ctor(string message); // 0x003D89C4 + public void .ctor(string message, Exception e); // 0x003D89CC + public void .ctor(string message, HostProtectionResource protectedResources, HostProtectionResource demandedResources); // 0x003D89D4 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x003D89FC + public override void GetObjectData(SerializationInfo info, StreamingContext context); // 0x003D8A5C + public override string ToString(); // 0x003D8B04 +} + +// Namespace: System.Security +[Serializable] +public class HostSecurityManager // TypeDefIndex: 1486 +{ + // Properties + public virtual PolicyLevel DomainPolicy { get; } // 0x003D8B14 + public virtual HostSecurityManagerOptions Flags { get; } // 0x003D8B1C + + // Methods + public void .ctor(); // 0x003D8B0C + public virtual ApplicationTrust DetermineApplicationTrust(Evidence applicationEvidence, Evidence activatorEvidence, TrustManagerContext context); // 0x003D8B24 + public virtual Evidence ProvideAppDomainEvidence(Evidence inputEvidence); // 0x003D901C + public virtual Evidence ProvideAssemblyEvidence(Assembly loadedAssembly, Evidence inputEvidence); // 0x003D9024 + public virtual PermissionSet ResolvePolicy(Evidence evidence); // 0x003D902C +} + +// Namespace: System.Security +[Serializable] +public enum HostSecurityManagerOptions // TypeDefIndex: 1487 +{ + None = 0, + HostAppDomainEvidence = 1, + HostPolicyLevel = 2, + HostAssemblyEvidence = 4, + HostDetermineApplicationTrust = 8, + HostResolvePolicy = 16, + AllFlags = 31 +} + +// Namespace: System.Security +public interface IEvidenceFactory // TypeDefIndex: 1488 +{ + // Properties + Evidence Evidence { get; } + +} + +// Namespace: System.Security +public interface IPermission : ISecurityEncodable // TypeDefIndex: 1489 +{ + // Methods + IPermission Copy(); + void Demand(); + IPermission Intersect(IPermission target); + bool IsSubsetOf(IPermission target); + IPermission Union(IPermission target); +} + +// Namespace: System.Security +public interface ISecurityEncodable // TypeDefIndex: 1490 +{ + // Methods + void FromXml(SecurityElement e); + SecurityElement ToXml(); +} + +// Namespace: System.Security +public interface ISecurityPolicyEncodable // TypeDefIndex: 1491 +{ + // Methods + void FromXml(SecurityElement e, PolicyLevel level); + SecurityElement ToXml(PolicyLevel level); +} + +// Namespace: System.Security +public interface IStackWalk // TypeDefIndex: 1492 +{ + // Methods + void Assert(); + void Demand(); + void Deny(); + void PermitOnly(); +} + +// Namespace: System.Security +[Serializable] +public sealed class NamedPermissionSet : PermissionSet // TypeDefIndex: 1493 +{ + // Fields + private string name; // 0x10 + private string description; // 0x14 + + // Properties + public string Description { get; set; } // 0x003D9310 0x003D9318 + public string Name { get; set; } // 0x003D9320 0x003D9150 + + // Methods + internal void .ctor(); // 0x003D9110 + public void .ctor(string name, PermissionSet permSet); // 0x003D9120 + public void .ctor(string name, PermissionState state); // 0x003D9264 + public void .ctor(NamedPermissionSet permSet); // 0x003D9294 + public void .ctor(string name); // 0x003D92E8 + public override PermissionSet Copy(); // 0x003D9328 + public NamedPermissionSet Copy(string name); // 0x003D9398 + public override void FromXml(SecurityElement et); // 0x003D9428 + public override SecurityElement ToXml(); // 0x003D9548 + public override bool Equals(object obj); // 0x003D9608 + public override int GetHashCode(); // 0x003D96F8 +} + +// Namespace: System.Security +internal static class PermissionBuilder // TypeDefIndex: 1494 +{ + // Fields + private static object[] psNone; // 0x00 + + // Methods + private static void .cctor(); // 0x003D9730 + public static IPermission Create(string fullname, PermissionState state); // 0x003D9838 + public static IPermission Create(SecurityElement se); // 0x003D9C40 + public static IPermission Create(string fullname, SecurityElement se); // 0x003D9D98 + public static IPermission Create(Type type); // 0x003D9ECC + internal static IPermission CreatePermission(string fullname, SecurityElement se); // 0x003D9A20 +} + +// Namespace: System.Security +[Serializable] +public class PermissionSet // TypeDefIndex: 1495 +{ + // Fields + private PolicyLevel k__BackingField; // 0x08 + private bool k__BackingField; // 0x0C + + // Properties + internal PolicyLevel Resolver { get; set; } // 0x003DA148 0x003DA150 + internal bool DeclarativeSecurity { get; set; } // 0x003DA158 0x003DA160 + + // Methods + public void .ctor(); // 0x003D9118 + internal void .ctor(string xml); // 0x003D9FB4 + public void .ctor(PermissionState state); // 0x003D928C + public void .ctor(PermissionSet permSet); // 0x003D9148 + public IPermission AddPermission(IPermission perm); // 0x003D9FBC + public virtual void Assert(); // 0x003D9FC4 + public virtual PermissionSet Copy(); // 0x003D9FC8 + public virtual void Demand(); // 0x003DA034 + public virtual void PermitOnly(); // 0x003DA038 + public virtual IPermission GetPermission(Type permClass); // 0x003DA03C + public virtual PermissionSet Intersect(PermissionSet other); // 0x003DA044 + public virtual void Deny(); // 0x003DA04C + public virtual void FromXml(SecurityElement et); // 0x003D9544 + public virtual void CopyTo(Array array, int index); // 0x003DA050 + public virtual SecurityElement ToXml(); // 0x003D9600 + public virtual bool IsSubsetOf(PermissionSet target); // 0x003DA054 + internal void SetReadOnly(bool value); // 0x003DA05C + public bool IsUnrestricted(); // 0x003DA060 + public PermissionSet Union(PermissionSet other); // 0x003DA068 + public virtual IEnumerator GetEnumerator(); // 0x003DA0D4 + public virtual bool IsEmpty(); // 0x003DA168 + internal static PermissionSet CreateFromBinaryFormat(byte[] data); // 0x003DA170 +} + +// Namespace: +private sealed class c__Iterator1 : IEnumerator, IDisposable, IEnumerator`1 // TypeDefIndex: 1496 +{ + // Fields + internal int $PC; // 0x08 + internal object $current; // 0x0C + + // Properties + private object System.Collections.Generic.IEnumerator.Current { get; } // 0x003DA1DC + private object System.Collections.IEnumerator.Current { get; } // 0x003DA1E4 + + // Methods + public void .ctor(); // 0x003DA140 + public bool MoveNext(); // 0x003DA1EC + public void Dispose(); // 0x003DA1FC + public void Reset(); // 0x003DA208 +} + +// Namespace: System.Security +[Serializable] +public enum PolicyLevelType // TypeDefIndex: 1497 +{ + User = 0, + Machine = 1, + Enterprise = 2, + AppDomain = 3 +} + +// Namespace: System.Security +public sealed class SecureString : CriticalFinalizerObject, IDisposable // TypeDefIndex: 1498 +{ + // Fields + private const int BlockSize = 16; // 0x00 + private const int MaxSize = 65536; // 0x00 + private int length; // 0x08 + private bool disposed; // 0x0C + private bool read_only; // 0x0D + private byte[] data; // 0x10 + + // Properties + public int Length { get; } // 0x0023B8FC + + // Methods + public void .ctor(); // 0x0023B53C + public void .ctor(void * value, int length); // 0x0023B718 + private static void .cctor(); // 0x0023B8F8 + public void AppendChar(char c); // 0x0023B9AC + public void Clear(); // 0x0023BBF8 + public SecureString Copy(); // 0x0023BD3C + public void Dispose(); // 0x0023BE50 + public void InsertAt(int index, char c); // 0x0023BE94 + public bool IsReadOnly(); // 0x0023C210 + public void MakeReadOnly(); // 0x0023C2C0 + public void RemoveAt(int index); // 0x0023C2CC + public void SetAt(int index, char c); // 0x0023C4E8 + private void Encrypt(); // 0x0023B8F4 + private void Decrypt(); // 0x0023BBF4 + private void Alloc(int length, bool realloc); // 0x0023B564 + internal byte[] GetBuffer(); // 0x0023C728 +} + +// Namespace: System.Security +public sealed class SecurityContext // TypeDefIndex: 1499 +{ + // Fields + private bool _capture; // 0x08 + private IntPtr _winid; // 0x0C + private CompressedStack _stack; // 0x10 + private bool _suppressFlowWindowsIdentity; // 0x14 + private bool _suppressFlow; // 0x15 + + // Properties + internal bool FlowSuppressed { get; set; } // 0x0023CA9C 0x0023CAA4 + internal bool WindowsIdentityFlowSuppressed { get; set; } // 0x0023CAAC 0x0023CAB4 + internal CompressedStack CompressedStack { get; set; } // 0x0023CABC 0x0023CAC4 + internal IntPtr IdentityToken { get; set; } // 0x0023CACC 0x0023CAD4 + + // Methods + internal void .ctor(); // 0x0023C80C + internal void .ctor(SecurityContext sc); // 0x0023C814 + public SecurityContext CreateCopy(); // 0x0023C880 + public static SecurityContext Capture(); // 0x0023C940 + public static bool IsFlowSuppressed(); // 0x0023CADC + public static bool IsWindowsIdentityFlowSuppressed(); // 0x0023CBB0 + public static void RestoreFlow(); // 0x0023CC84 + public static void Run(SecurityContext securityContext, ContextCallback callback, object state); // 0x0023CDB4 + public static AsyncFlowControl SuppressFlow(); // 0x0023D108 + public static AsyncFlowControl SuppressFlowWindowsIdentity(); // 0x0023D25C +} + +// Namespace: System.Security +public sealed class SecurityCriticalAttribute : Attribute // TypeDefIndex: 1500 +{ + // Fields + private SecurityCriticalScope _scope; // 0x08 + + // Properties + public SecurityCriticalScope Scope { get; } // 0x0023D3A0 + + // Methods + public void .ctor(); // 0x0023D358 + public void .ctor(SecurityCriticalScope scope); // 0x0023D378 +} + +// Namespace: System.Security +public enum SecurityCriticalScope // TypeDefIndex: 1501 +{ + Explicit = 0, + Everything = 1 +} + +// Namespace: System.Security +[Serializable] +public sealed class SecurityElement // TypeDefIndex: 1502 +{ + // Fields + private string text; // 0x08 + private string tag; // 0x0C + private ArrayList attributes; // 0x10 + private ArrayList children; // 0x14 + private static readonly char[] invalid_tag_chars; // 0x00 + private static readonly char[] invalid_text_chars; // 0x04 + private static readonly char[] invalid_attr_name_chars; // 0x08 + private static readonly char[] invalid_attr_value_chars; // 0x0C + private static readonly char[] invalid_chars; // 0x10 + + // Properties + public Hashtable Attributes { get; set; } // 0x0023E124 0x0023E4B8 + public ArrayList Children { get; set; } // 0x0023EAC0 0x0023EAC8 + public string Tag { get; set; } // 0x0023EDA8 0x0023DC6C + public string Text { get; set; } // 0x0023EDB0 0x0023D460 + + // Methods + public void .ctor(string tag); // 0x002311D0 + public void .ctor(string tag, string text); // 0x00233FA4 + internal void .ctor(SecurityElement se); // 0x0023D5DC + private static void .cctor(); // 0x0023DDFC + public void AddAttribute(string name, string value); // 0x002311D8 + public void AddChild(SecurityElement child); // 0x00234154 + public string Attribute(string name); // 0x00231D3C + public SecurityElement Copy(); // 0x0023F488 + public bool Equal(SecurityElement other); // 0x0023F4F8 + public static string Escape(string str); // 0x0023FC60 + private static string Unescape(string str); // 0x0023EE70 + public static SecurityElement FromString(string xml); // 0x0023FF78 + public static bool IsValidAttributeName(string name); // 0x002401DC + public static bool IsValidAttributeValue(string value); // 0x00240294 + public static bool IsValidTag(string tag); // 0x0023D3A8 + public static bool IsValidText(string text); // 0x0023EDB8 + public SecurityElement SearchForChildByTag(string tag); // 0x0024034C + public string SearchForTextOfTag(string tag); // 0x00240500 + public override string ToString(); // 0x002313F4 + private void ToXml(StringBuilder s, int level); // 0x002406F8 + internal SecurityAttribute GetAttribute(string name); // 0x0023F0F0 +} + +// Namespace: +internal class SecurityAttribute // TypeDefIndex: 1503 +{ + // Fields + private string _name; // 0x08 + private string _value; // 0x0C + + // Properties + public string Name { get; } // 0x00240F04 + public string Value { get; } // 0x00240F0C + + // Methods + public void .ctor(string name, string value); // 0x0023E860 +} + +// Namespace: System.Security +[Serializable] +public class SecurityException : SystemException // TypeDefIndex: 1504 +{ + // Fields + private string permissionState; // 0x34 + private Type permissionType; // 0x38 + private string _granted; // 0x3C + private string _refused; // 0x40 + private object _demanded; // 0x44 + private IPermission _firstperm; // 0x48 + private MethodInfo _method; // 0x4C + private Evidence _evidence; // 0x50 + private SecurityAction _action; // 0x54 + private object _denyset; // 0x58 + private object _permitset; // 0x5C + private AssemblyName _assembly; // 0x60 + private string _url; // 0x64 + private SecurityZone _zone; // 0x68 + + // Properties + public SecurityAction Action { get; set; } // 0x002413FC 0x00241404 + public object DenySetInstance { get; set; } // 0x0024140C 0x00241414 + public AssemblyName FailedAssemblyInfo { get; set; } // 0x0024141C 0x00241424 + public MethodInfo Method { get; set; } // 0x0024142C 0x00241434 + public object PermitOnlySetInstance { get; set; } // 0x0024143C 0x00241444 + public string Url { get; set; } // 0x0024144C 0x00241454 + public SecurityZone Zone { get; set; } // 0x0024145C 0x00241464 + public object Demanded { get; set; } // 0x0024146C 0x00241474 + public IPermission FirstPermissionThatFailed { get; set; } // 0x0024147C 0x00241484 + public string PermissionState { get; set; } // 0x0024148C 0x00241494 + public Type PermissionType { get; set; } // 0x0024149C 0x002414A4 + public string GrantedSet { get; set; } // 0x002414AC 0x002414B4 + public string RefusedSet { get; set; } // 0x002414BC 0x002414C4 + + // Methods + public void .ctor(); // 0x00240F14 + public void .ctor(string message); // 0x0023AECC + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x00240F94 + public void .ctor(string message, Exception inner); // 0x00241120 + public void .ctor(string message, Type type); // 0x00241144 + public void .ctor(string message, Type type, string state); // 0x00241170 + internal void .ctor(string message, PermissionSet granted, PermissionSet refused); // 0x002411A4 + public void .ctor(string message, object deny, object permitOnly, MethodInfo method, object demanded, IPermission permThatFailed); // 0x00241220 + public void .ctor(string message, AssemblyName assemblyName, PermissionSet grant, PermissionSet refused, MethodInfo method, SecurityAction action, object demanded, IPermission permThatFailed, Evidence evidence); // 0x00241268 + public override void GetObjectData(SerializationInfo info, StreamingContext context); // 0x002414CC + public override string ToString(); // 0x00241608 +} + +// Namespace: System.Security +internal struct RuntimeDeclSecurityEntry // TypeDefIndex: 1505 +{ + // Fields + public IntPtr blob; // 0x08 + public int size; // 0x0C + public int index; // 0x10 + +} + +// Namespace: System.Security +internal class RuntimeSecurityFrame // TypeDefIndex: 1506 +{ + // Fields + public AppDomain domain; // 0x08 + public MethodInfo method; // 0x0C + public RuntimeDeclSecurityEntry assert; // 0x10 + public RuntimeDeclSecurityEntry deny; // 0x1C + public RuntimeDeclSecurityEntry permitonly; // 0x28 + + // Methods + public void .ctor(); // 0x0023B534 +} + +// Namespace: System.Security +internal struct SecurityFrame // TypeDefIndex: 1507 +{ + // Fields + private AppDomain _domain; // 0x08 + private MethodInfo _method; // 0x0C + private PermissionSet _assert; // 0x10 + private PermissionSet _deny; // 0x14 + private PermissionSet _permitonly; // 0x18 + + // Properties + public Assembly Assembly { get; } // 0x0008C4D4 + public AppDomain Domain { get; } // 0x0008C4DC + public MethodInfo Method { get; } // 0x0008C4E4 + public PermissionSet Assert { get; } // 0x0008C4EC + public PermissionSet Deny { get; } // 0x0008C4F4 + public PermissionSet PermitOnly { get; } // 0x0008C4FC + public bool HasStackModifiers { get; } // 0x0008C504 + + // Methods + internal void .ctor(RuntimeSecurityFrame frame); // 0x0008C480 + internal void .ctor(int skip); // 0x0008C498 + private static RuntimeSecurityFrame _GetSecurityFrame(int skip); // 0x0024219C + private static Array _GetSecurityStack(int skip); // 0x002421A0 + internal void InitFromRuntimeFrame(RuntimeSecurityFrame frame); // 0x0008C4CC + public bool Equals(SecurityFrame sf); // 0x0008C534 + public override string ToString(); // 0x0008C55C + public static ArrayList GetStack(int skipFrames); // 0x00242AE0 +} + +// Namespace: System.Security +internal struct RuntimeDeclSecurityActions // TypeDefIndex: 1508 +{ + // Fields + public RuntimeDeclSecurityEntry cas; // 0x08 + public RuntimeDeclSecurityEntry noncas; // 0x14 + public RuntimeDeclSecurityEntry choice; // 0x20 + +} + +// Namespace: System.Security +public static class SecurityManager // TypeDefIndex: 1509 +{ + // Fields + private static object _lockObject; // 0x00 + private static ArrayList _hierarchy; // 0x04 + private static IPermission _unmanagedCode; // 0x08 + private static Hashtable _declsecCache; // 0x0C + private static PolicyLevel _level; // 0x10 + private static SecurityPermission _execution; // 0x14 + + // Properties + public static bool CheckExecutionRights { get; set; } // 0x00242D5C 0x00242D60 + public static bool SecurityEnabled { get; set; } // 0x00242D64 0x00242D68 + private static IEnumerator Hierarchy { get; } // 0x002443A8 + internal static PolicyLevel ResolvingPolicyLevel { get; set; } // 0x00245B14 0x00245BA0 + private static IPermission UnmanagedCode { get; } // 0x00245DE8 + + // Methods + private static void .cctor(); // 0x00242CAC + public static void GetZoneAndOrigin(out ArrayList zone, out ArrayList origin); // 0x00242D6C + public static bool IsGranted(IPermission perm); // 0x00242DF8 + internal static bool IsGranted(Assembly a, IPermission perm); // 0x00242ED0 + internal static IPermission CheckPermissionSet(Assembly a, PermissionSet ps, bool noncas); // 0x0024322C + internal static IPermission CheckPermissionSet(AppDomain ad, PermissionSet ps); // 0x00243794 + public static PolicyLevel LoadPolicyLevelFromFile(string path, PolicyLevelType type); // 0x00243EB0 + public static PolicyLevel LoadPolicyLevelFromString(string str, PolicyLevelType type); // 0x002440F0 + public static IEnumerator PolicyHierarchy(); // 0x00244330 + public static PermissionSet ResolvePolicy(Evidence evidence); // 0x00244564 + public static PermissionSet ResolvePolicy(Evidence[] evidences); // 0x00244B98 + public static PermissionSet ResolveSystemPolicy(Evidence evidence); // 0x00244D54 + public static PermissionSet ResolvePolicy(Evidence evidence, PermissionSet reqdPset, PermissionSet optPset, PermissionSet denyPset, out PermissionSet denied); // 0x00245008 + public static IEnumerator ResolvePolicyGroups(Evidence evidence); // 0x002452A0 + public static void SavePolicy(); // 0x0024556C + public static void SavePolicyLevel(PolicyLevel level); // 0x0024574C + private static void InitializePolicyHierarchy(); // 0x00245778 + internal static bool ResolvePolicyLevel(PermissionSet ps, PolicyLevel pl, Evidence evidence); // 0x00244804 + internal static void ResolveIdentityPermissions(PermissionSet ps, Evidence evidence); // 0x00244908 + internal static PermissionSet Decode(IntPtr permissions, int length); // 0x002421A4 + internal static PermissionSet Decode(byte[] encodedPermissions); // 0x00245C30 + private static bool GetLinkDemandSecurity(MethodBase method, void * cdecl, void * mdecl); // 0x00245FD0 + internal static void ReflectedLinkDemandInvoke(MethodBase mb); // 0x00245FD4 + internal static bool ReflectedLinkDemandQuery(MethodBase mb); // 0x00246248 + private static bool LinkDemand(Assembly a, void * klass, void * method); // 0x0024639C + private static bool LinkDemandFullTrust(Assembly a); // 0x0024665C + private static bool LinkDemandUnmanaged(Assembly a); // 0x002466F0 + private static void LinkDemandSecurityException(int securityViolation, IntPtr methodHandle); // 0x00246778 + private static void InheritanceDemandSecurityException(int securityViolation, Assembly a, Type t, MethodInfo method); // 0x00246A68 + private static void ThrowException(Exception ex); // 0x00246C0C + private static bool InheritanceDemand(AppDomain ad, Assembly a, void * actions); // 0x00246C78 + private static void DemandUnmanaged(); // 0x00246EE4 + private static void InternalDemand(IntPtr permissions, int length); // 0x00246FE8 + private static void InternalDemandChoice(IntPtr permissions, int length); // 0x00247098 +} + +// Namespace: System.Security +public sealed class SecuritySafeCriticalAttribute : Attribute // TypeDefIndex: 1510 +{ + // Methods + public void .ctor(); // 0x00247130 +} + +// Namespace: System.Security +public abstract class SecurityState // TypeDefIndex: 1511 +{ + // Methods + protected void .ctor(); // 0x00247138 + public abstract void EnsureState(); + public bool IsStateAvailable(); // 0x00247140 +} + +// Namespace: System.Security +public sealed class SecurityTransparentAttribute : Attribute // TypeDefIndex: 1512 +{ + // Methods + public void .ctor(); // 0x00247194 +} + +// Namespace: System.Security +public sealed class SecurityTreatAsSafeAttribute : Attribute // TypeDefIndex: 1513 +{ + // Methods + public void .ctor(); // 0x0024719C +} + +// Namespace: System.Security +[Serializable] +public enum SecurityZone // TypeDefIndex: 1514 +{ + NoZone = -1, + MyComputer = 0, + Intranet = 1, + Trusted = 2, + Internet = 3, + Untrusted = 4 +} + +// Namespace: System.Security +public sealed class SuppressUnmanagedCodeSecurityAttribute : Attribute // TypeDefIndex: 1515 +{ + // Methods + public void .ctor(); // 0x002471A4 +} + +// Namespace: System.Security +public sealed class UnverifiableCodeAttribute : Attribute // TypeDefIndex: 1516 +{ + // Methods + public void .ctor(); // 0x002471AC +} + +// Namespace: System.Security +[Serializable] +public class VerificationException : SystemException // TypeDefIndex: 1517 +{ + // Methods + public void .ctor(); // 0x002471B4 + public void .ctor(string message); // 0x002471BC + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x002471C4 + public void .ctor(string message, Exception innerException); // 0x002471E4 +} + +// Namespace: System.Security +[Serializable] +public sealed class XmlSyntaxException : SystemException // TypeDefIndex: 1518 +{ + // Methods + public void .ctor(); // 0x002471EC + public void .ctor(int lineNumber); // 0x002471F4 + public void .ctor(int lineNumber, string message); // 0x002472D0 + public void .ctor(string message); // 0x002401CC + public void .ctor(string message, Exception inner); // 0x002401D4 + internal void .ctor(SerializationInfo info, StreamingContext context); // 0x00247510 +} + +// Namespace: System.Text +[Serializable] +public class ASCIIEncoding : Encoding // TypeDefIndex: 1519 +{ + // Fields + internal const int ASCII_CODE_PAGE = 20127; // 0x00 + + // Properties + public override bool IsSingleByte { get; } // 0x005101F8 + + // Methods + public void .ctor(); // 0x0050FC80 + public override int GetByteCount(char[] chars, int index, int count); // 0x00510200 + public override int GetByteCount(string chars); // 0x005103E8 + public override int GetBytes(char[] chars, int charIndex, int charCount, byte[] bytes, int byteIndex); // 0x00510494 + private int GetBytes(char[] chars, int charIndex, int charCount, byte[] bytes, int byteIndex, EncoderFallbackBuffer buffer, char[] fallback_chars); // 0x005104D4 + public override int GetBytes(string chars, int charIndex, int charCount, byte[] bytes, int byteIndex); // 0x00510BF0 + private int GetBytes(string chars, int charIndex, int charCount, byte[] bytes, int byteIndex, EncoderFallbackBuffer buffer, char[] fallback_chars); // 0x00510C30 + public override int GetCharCount(byte[] bytes, int index, int count); // 0x00511310 + public override int GetChars(byte[] bytes, int byteIndex, int byteCount, char[] chars, int charIndex); // 0x005114F4 + private int GetChars(byte[] bytes, int byteIndex, int byteCount, char[] chars, int charIndex, DecoderFallbackBuffer buffer); // 0x00511528 + public override int GetMaxByteCount(int charCount); // 0x00511A1C + public override int GetMaxCharCount(int byteCount); // 0x00511B08 + public override string GetString(byte[] bytes, int byteIndex, int byteCount); // 0x00511BF4 + public override int GetBytes(void * chars, int charCount, void * bytes, int byteCount); // 0x00511EA8 + public override int GetChars(void * bytes, int byteCount, void * chars, int charCount); // 0x005120C8 + public override int GetCharCount(void * bytes, int count); // 0x005122EC + public override int GetByteCount(void * chars, int count); // 0x005122F4 + public override Decoder GetDecoder(); // 0x005122FC + public override Encoder GetEncoder(); // 0x00512370 +} + +// Namespace: System.Text +[Serializable] +internal sealed class CodePageEncoding : ISerializable, IObjectReference // TypeDefIndex: 1520 +{ + // Fields + private int codePage; // 0x08 + private bool isReadOnly; // 0x0C + private EncoderFallback encoderFallback; // 0x10 + private DecoderFallback decoderFallback; // 0x14 + private Encoding realObject; // 0x18 + + // Methods + private void .ctor(SerializationInfo info, StreamingContext context); // 0x005123E4 + public void GetObjectData(SerializationInfo info, StreamingContext context); // 0x005127F0 + public object GetRealObject(StreamingContext context); // 0x0051288C +} + +// Namespace: +[Serializable] +private sealed class Decoder : ISerializable, IObjectReference // TypeDefIndex: 1521 +{ + // Fields + private Encoding encoding; // 0x08 + private Decoder realObject; // 0x0C + + // Methods + private void .ctor(SerializationInfo info, StreamingContext context); // 0x00513244 + public void GetObjectData(SerializationInfo info, StreamingContext context); // 0x005133BC + public object GetRealObject(StreamingContext context); // 0x00513458 +} + +// Namespace: System.Text +[Serializable] +public abstract class Decoder // TypeDefIndex: 1522 +{ + // Fields + private DecoderFallback fallback; // 0x08 + private DecoderFallbackBuffer fallback_buffer; // 0x0C + + // Properties + public DecoderFallback Fallback { get; set; } // 0x0051357C 0x00513584 + public DecoderFallbackBuffer FallbackBuffer { get; } // 0x00513628 + + // Methods + protected void .ctor(); // 0x005134A0 + public abstract int GetCharCount(byte[] bytes, int index, int count); + public abstract int GetChars(byte[] bytes, int byteIndex, int byteCount, char[] chars, int charIndex); + public virtual int GetCharCount(byte[] bytes, int index, int count, bool flush); // 0x00513670 + public virtual int GetCharCount(void * bytes, int count, bool flush); // 0x005136D8 + public virtual int GetChars(byte[] bytes, int byteIndex, int byteCount, char[] chars, int charIndex, bool flush); // 0x00513880 + public virtual int GetChars(void * bytes, int byteCount, void * chars, int charCount, bool flush); // 0x00513B5C + public virtual void Reset(); // 0x00513E4C + public virtual void Convert(void * bytes, int byteCount, void * chars, int charCount, bool flush, out int bytesUsed, out int charsUsed, out bool completed); // 0x00513E68 + public virtual void Convert(byte[] bytes, int byteIndex, int byteCount, char[] chars, int charIndex, int charCount, bool flush, out int bytesUsed, out int charsUsed, out bool completed); // 0x00513F3C + private void CheckArguments(char[] chars, int charIndex); // 0x00513A5C + private void CheckArguments(byte[] bytes, int byteIndex, int byteCount); // 0x00513904 + private void CheckArguments(void * chars, int charCount, void * bytes, int byteCount); // 0x00513CB4 +} + +// Namespace: System.Text +[Serializable] +public sealed class DecoderExceptionFallback : DecoderFallback // TypeDefIndex: 1523 +{ + // Properties + public override int MaxCharCount { get; } // 0x00514180 + + // Methods + public void .ctor(); // 0x005140F4 + public override DecoderFallbackBuffer CreateFallbackBuffer(); // 0x00514188 + public override bool Equals(object value); // 0x005141FC + public override int GetHashCode(); // 0x00514278 +} + +// Namespace: System.Text +public sealed class DecoderExceptionFallbackBuffer : DecoderFallbackBuffer // TypeDefIndex: 1524 +{ + // Properties + public override int Remaining { get; } // 0x00514288 + + // Methods + public void .ctor(); // 0x005141F4 + public override bool Fallback(byte[] bytesUnknown, int index); // 0x00514290 + public override char GetNextChar(); // 0x00514360 + public override bool MovePrevious(); // 0x00514368 +} + +// Namespace: System.Text +[Serializable] +public abstract class DecoderFallback // TypeDefIndex: 1525 +{ + // Fields + private static DecoderFallback exception_fallback; // 0x00 + private static DecoderFallback replacement_fallback; // 0x04 + private static DecoderFallback standard_safe_fallback; // 0x08 + + // Properties + public static DecoderFallback ExceptionFallback { get; } // 0x00514518 + public abstract int MaxCharCount { get; } + public static DecoderFallback ReplacementFallback { get; } // 0x005145A4 + internal static DecoderFallback StandardSafeFallback { get; } // 0x00514630 + + // Methods + protected void .ctor(); // 0x00514178 + private static void .cctor(); // 0x00514370 + public abstract DecoderFallbackBuffer CreateFallbackBuffer(); +} + +// Namespace: System.Text +public abstract class DecoderFallbackBuffer // TypeDefIndex: 1526 +{ + // Properties + public abstract int Remaining { get; } + + // Methods + protected void .ctor(); // 0x00514280 + public abstract bool Fallback(byte[] bytesUnknown, int index); + public abstract char GetNextChar(); + public abstract bool MovePrevious(); + public virtual void Reset(); // 0x005146BC +} + +// Namespace: System.Text +[Serializable] +public sealed class DecoderFallbackException : ArgumentException // TypeDefIndex: 1527 +{ + // Fields + private const string defaultMessage = "Failed to decode the input byte sequence to Unicode characters."; // 0x00 + private byte[] bytes_unknown; // 0x38 + private int index; // 0x3C + + // Properties + public byte[] BytesUnknown { get; } // 0x005146F4 + public int Index { get; } // 0x005146FC + + // Methods + public void .ctor(); // 0x005146C0 + public void .ctor(string message); // 0x005146D4 + public void .ctor(string message, Exception innerException); // 0x005146E4 + public void .ctor(string message, byte[] bytesUnknown, int index); // 0x0051432C +} + +// Namespace: System.Text +[Serializable] +public sealed class DecoderReplacementFallback : DecoderFallback // TypeDefIndex: 1528 +{ + // Fields + private string replacement; // 0x08 + + // Properties + public string DefaultString { get; } // 0x00514704 + public override int MaxCharCount { get; } // 0x0051470C + + // Methods + public void .ctor(); // 0x00513518 + public void .ctor(string replacement); // 0x00514444 + public override DecoderFallbackBuffer CreateFallbackBuffer(); // 0x00514730 + public override bool Equals(object value); // 0x00514868 + public override int GetHashCode(); // 0x00514928 +} + +// Namespace: System.Text +public sealed class DecoderReplacementFallbackBuffer : DecoderFallbackBuffer // TypeDefIndex: 1529 +{ + // Fields + private bool fallback_assigned; // 0x08 + private int current; // 0x0C + private string replacement; // 0x10 + + // Properties + public override int Remaining { get; } // 0x00514954 + + // Methods + public void .ctor(DecoderReplacementFallback fallback); // 0x005147A0 + public override bool Fallback(byte[] bytesUnknown, int index); // 0x00514998 + public override char GetNextChar(); // 0x00514B48 + public override bool MovePrevious(); // 0x00514BC0 + public override void Reset(); // 0x00514BDC +} + +// Namespace: System.Text +[Serializable] +public abstract class Encoder // TypeDefIndex: 1530 +{ + // Fields + private EncoderFallback fallback; // 0x08 + private EncoderFallbackBuffer fallback_buffer; // 0x0C + + // Properties + public EncoderFallback Fallback { get; set; } // 0x00514CC8 0x00514CD0 + public EncoderFallbackBuffer FallbackBuffer { get; } // 0x00514D74 + + // Methods + protected void .ctor(); // 0x00514BEC + public abstract int GetByteCount(char[] chars, int index, int count, bool flush); + public abstract int GetBytes(char[] chars, int charIndex, int charCount, byte[] bytes, int byteIndex, bool flush); + public virtual int GetByteCount(void * chars, int count, bool flush); // 0x00514DBC + public virtual int GetBytes(void * chars, int charCount, void * bytes, int byteCount, bool flush); // 0x00514F64 + public virtual void Reset(); // 0x00515254 + public virtual void Convert(void * chars, int charCount, void * bytes, int byteCount, bool flush, out int charsUsed, out int bytesUsed, out bool completed); // 0x00515270 + public virtual void Convert(char[] chars, int charIndex, int charCount, byte[] bytes, int byteIndex, int byteCount, bool flush, out int charsUsed, out int bytesUsed, out bool completed); // 0x00515338 + private void CheckArguments(void * chars, int charCount, void * bytes, int byteCount); // 0x005150BC +} + +// Namespace: System.Text +[Serializable] +public sealed class EncoderExceptionFallback : EncoderFallback // TypeDefIndex: 1531 +{ + // Properties + public override int MaxCharCount { get; } // 0x005156D8 + + // Methods + public void .ctor(); // 0x0051564C + public override EncoderFallbackBuffer CreateFallbackBuffer(); // 0x005156E0 + public override bool Equals(object value); // 0x00515754 + public override int GetHashCode(); // 0x005157D0 +} + +// Namespace: System.Text +public sealed class EncoderExceptionFallbackBuffer : EncoderFallbackBuffer // TypeDefIndex: 1532 +{ + // Properties + public override int Remaining { get; } // 0x005157E0 + + // Methods + public void .ctor(); // 0x0051574C + public override bool Fallback(char charUnknown, int index); // 0x005157E8 + public override bool Fallback(char charUnknownHigh, char charUnknownLow, int index); // 0x005158B4 + public override char GetNextChar(); // 0x00515994 + public override bool MovePrevious(); // 0x0051599C +} + +// Namespace: System.Text +[Serializable] +public abstract class EncoderFallback // TypeDefIndex: 1533 +{ + // Fields + private static EncoderFallback exception_fallback; // 0x00 + private static EncoderFallback replacement_fallback; // 0x04 + private static EncoderFallback standard_safe_fallback; // 0x08 + + // Properties + public static EncoderFallback ExceptionFallback { get; } // 0x00515B4C + public abstract int MaxCharCount { get; } + public static EncoderFallback ReplacementFallback { get; } // 0x00515BD8 + internal static EncoderFallback StandardSafeFallback { get; } // 0x00515C64 + + // Methods + protected void .ctor(); // 0x005156D0 + private static void .cctor(); // 0x005159A4 + public abstract EncoderFallbackBuffer CreateFallbackBuffer(); +} + +// Namespace: System.Text +public abstract class EncoderFallbackBuffer // TypeDefIndex: 1534 +{ + // Properties + public abstract int Remaining { get; } + + // Methods + protected void .ctor(); // 0x005157D8 + public abstract bool Fallback(char charUnknown, int index); + public abstract bool Fallback(char charUnknownHigh, char charUnknownLow, int index); + public abstract char GetNextChar(); + public abstract bool MovePrevious(); + public virtual void Reset(); // 0x00515CF0 +} + +// Namespace: System.Text +[Serializable] +public sealed class EncoderFallbackException : ArgumentException // TypeDefIndex: 1535 +{ + // Fields + private const string defaultMessage = "Failed to decode the input byte sequence to Unicode characters."; // 0x00 + private char char_unknown; // 0x38 + private char char_unknown_high; // 0x3A + private char char_unknown_low; // 0x3C + private int index; // 0x40 + + // Properties + public char CharUnknown { get; } // 0x00515D50 + public char CharUnknownHigh { get; } // 0x00515D58 + public char CharUnknownLow { get; } // 0x00515D60 + public int Index { get; } // 0x00515D68 + + // Methods + public void .ctor(); // 0x00515D1C + public void .ctor(string message); // 0x00515D30 + public void .ctor(string message, Exception innerException); // 0x00515D40 + internal void .ctor(char charUnknown, int index); // 0x0051587C + internal void .ctor(char charUnknownHigh, char charUnknownLow, int index); // 0x00515954 + public bool IsUnknownSurrogate(); // 0x00515D70 +} + +// Namespace: System.Text +[Serializable] +public sealed class EncoderReplacementFallback : EncoderFallback // TypeDefIndex: 1536 +{ + // Fields + private string replacement; // 0x08 + + // Properties + public string DefaultString { get; } // 0x00515DF8 + public override int MaxCharCount { get; } // 0x00515E00 + + // Methods + public void .ctor(); // 0x00514C64 + public void .ctor(string replacement); // 0x00515A78 + public override EncoderFallbackBuffer CreateFallbackBuffer(); // 0x00515E24 + public override bool Equals(object value); // 0x00515F5C + public override int GetHashCode(); // 0x0051601C +} + +// Namespace: System.Text +public sealed class EncoderReplacementFallbackBuffer : EncoderFallbackBuffer // TypeDefIndex: 1537 +{ + // Fields + private string replacement; // 0x08 + private int current; // 0x0C + private bool fallback_assigned; // 0x10 + + // Properties + public override int Remaining { get; } // 0x00516048 + + // Methods + public void .ctor(EncoderReplacementFallback fallback); // 0x00515E94 + public override bool Fallback(char charUnknown, int index); // 0x00516078 + public override bool Fallback(char charUnknownHigh, char charUnknownLow, int index); // 0x005161D8 + private bool Fallback(int index); // 0x00516080 + public override char GetNextChar(); // 0x005161E0 + public override bool MovePrevious(); // 0x0051624C + public override void Reset(); // 0x00516268 +} + +// Namespace: System.Text +[Serializable] +public abstract class Encoding : ICloneable // TypeDefIndex: 1538 +{ + // Fields + internal int codePage; // 0x08 + internal int windows_code_page; // 0x0C + private bool is_readonly; // 0x10 + private DecoderFallback decoder_fallback; // 0x14 + private EncoderFallback encoder_fallback; // 0x18 + private static Assembly i18nAssembly; // 0x00 + private static bool i18nDisabled; // 0x04 + private static EncodingInfo[] encoding_infos; // 0x08 + private static readonly object[] encodings; // 0x0C + internal string body_name; // 0x1C + internal string encoding_name; // 0x20 + internal string header_name; // 0x24 + internal bool is_mail_news_display; // 0x28 + internal bool is_mail_news_save; // 0x29 + internal bool is_browser_save; // 0x2A + internal bool is_browser_display; // 0x2B + internal string web_name; // 0x2C + private static Encoding asciiEncoding; // 0x10 + private static Encoding bigEndianEncoding; // 0x14 + private static Encoding defaultEncoding; // 0x18 + private static Encoding utf7Encoding; // 0x1C + private static Encoding utf8EncodingWithMarkers; // 0x20 + private static Encoding utf8EncodingWithoutMarkers; // 0x24 + private static Encoding unicodeEncoding; // 0x28 + private static Encoding isoLatin1Encoding; // 0x2C + private static Encoding utf8EncodingUnsafe; // 0x30 + private static Encoding utf32Encoding; // 0x34 + private static Encoding bigEndianUTF32Encoding; // 0x38 + private static readonly object lockobj; // 0x3C + + // Properties + public bool IsReadOnly { get; } // 0x005175AC + public virtual bool IsSingleByte { get; } // 0x005175B4 + public DecoderFallback DecoderFallback { get; set; } // 0x005175BC 0x00513158 + public EncoderFallback EncoderFallback { get; set; } // 0x005175C4 0x0051306C + public virtual string BodyName { get; } // 0x0051B5A8 + public virtual int CodePage { get; } // 0x0051B5B0 + public virtual string EncodingName { get; } // 0x0051B5B8 + public virtual string HeaderName { get; } // 0x0051B5C0 + public virtual bool IsBrowserDisplay { get; } // 0x0051B5C8 + public virtual bool IsBrowserSave { get; } // 0x0051B5D0 + public virtual bool IsMailNewsDisplay { get; } // 0x0051B5D8 + public virtual bool IsMailNewsSave { get; } // 0x0051B5E0 + public virtual string WebName { get; } // 0x0051B5E8 + public virtual int WindowsCodePage { get; } // 0x0051B5F0 + public static Encoding ASCII { get; } // 0x005192F0 + public static Encoding BigEndianUnicode { get; } // 0x0051A0D0 + public static Encoding Default { get; } // 0x00518E28 + private static Encoding ISOLatin1 { get; } // 0x0051A328 + public static Encoding UTF7 { get; } // 0x00519534 + public static Encoding UTF8 { get; } // 0x0051977C + internal static Encoding UTF8Unmarked { get; } // 0x0051B618 + internal static Encoding UTF8UnmarkedUnsafe { get; } // 0x0051BB58 + public static Encoding Unicode { get; } // 0x00519E78 + public static Encoding UTF32 { get; } // 0x005199C8 + internal static Encoding BigEndianUTF32 { get; } // 0x00519C20 + + // Methods + protected void .ctor(); // 0x00516274 + protected void .ctor(int codePage); // 0x0050FD3C + private static void .cctor(); // 0x00516284 + internal static string _(string arg); // 0x005103E4 + internal void SetFallbackInternal(EncoderFallback e, DecoderFallback d); // 0x005175CC + public static byte[] Convert(Encoding srcEncoding, Encoding dstEncoding, byte[] bytes); // 0x005175E0 + public static byte[] Convert(Encoding srcEncoding, Encoding dstEncoding, byte[] bytes, int index, int count); // 0x00517770 + public override bool Equals(object value); // 0x00517A38 + public abstract int GetByteCount(char[] chars, int index, int count); + public virtual int GetByteCount(string s); // 0x00517B5C + public virtual int GetByteCount(char[] chars); // 0x00517C44 + public abstract int GetBytes(char[] chars, int charIndex, int charCount, byte[] bytes, int byteIndex); + public virtual int GetBytes(string s, int charIndex, int charCount, byte[] bytes, int byteIndex); // 0x00517D20 + public virtual byte[] GetBytes(string s); // 0x00518020 + public virtual byte[] GetBytes(char[] chars, int index, int count); // 0x005181A8 + public virtual byte[] GetBytes(char[] chars); // 0x0051827C + public abstract int GetCharCount(byte[] bytes, int index, int count); + public virtual int GetCharCount(byte[] bytes); // 0x00518364 + public abstract int GetChars(byte[] bytes, int byteIndex, int byteCount, char[] chars, int charIndex); + public virtual char[] GetChars(byte[] bytes, int index, int count); // 0x00518440 + public virtual char[] GetChars(byte[] bytes); // 0x00518514 + public virtual Decoder GetDecoder(); // 0x00512300 + public virtual Encoder GetEncoder(); // 0x00512374 + private static object InvokeI18N(string name, object[] args); // 0x005186BC + public static Encoding GetEncoding(int codepage); // 0x005129EC + public virtual object Clone(); // 0x0051A56C + public static Encoding GetEncoding(int codepage, EncoderFallback encoderFallback, DecoderFallback decoderFallback); // 0x0051A618 + public static Encoding GetEncoding(string name, EncoderFallback encoderFallback, DecoderFallback decoderFallback); // 0x0051A7F0 + public static EncodingInfo[] GetEncodings(); // 0x0051B044 + public bool IsAlwaysNormalized(); // 0x0051B300 + public virtual bool IsAlwaysNormalized(NormalizationForm form); // 0x0051B314 + public static Encoding GetEncoding(string name); // 0x0051A9C8 + public override int GetHashCode(); // 0x0051B3B4 + public abstract int GetMaxByteCount(int charCount); + public abstract int GetMaxCharCount(int byteCount); + public virtual byte[] GetPreamble(); // 0x0051B434 + public virtual string GetString(byte[] bytes, int index, int count); // 0x0051B494 + public virtual string GetString(byte[] bytes); // 0x0051B4CC + internal static string InternalCodePage(int code_page); // 0x0051B614 + public virtual int GetByteCount(void * chars, int count); // 0x0051BECC + public virtual int GetCharCount(void * bytes, int count); // 0x0051C05C + public virtual int GetChars(void * bytes, int byteCount, void * chars, int charCount); // 0x0051C1F4 + public virtual int GetBytes(void * chars, int charCount, void * bytes, int byteCount); // 0x0051C500 +} + +// Namespace: +private sealed class ForwardingDecoder : Decoder // TypeDefIndex: 1539 +{ + // Fields + private Encoding encoding; // 0x10 + + // Methods + public void .ctor(Encoding enc); // 0x0051863C + public override int GetCharCount(byte[] bytes, int index, int count); // 0x0051C804 + public override int GetChars(byte[] bytes, int byteIndex, int byteCount, char[] chars, int charIndex); // 0x0051C85C +} + +// Namespace: +private sealed class ForwardingEncoder : Encoder // TypeDefIndex: 1540 +{ + // Fields + private Encoding encoding; // 0x10 + + // Methods + public void .ctor(Encoding enc); // 0x0051867C + public override int GetByteCount(char[] chars, int index, int count, bool flush); // 0x0051C8C4 + public override int GetBytes(char[] chars, int charIndex, int charCount, byte[] bytes, int byteCount, bool flush); // 0x0051C91C +} + +// Namespace: System.Text +[Serializable] +public sealed class EncodingInfo // TypeDefIndex: 1541 +{ + // Fields + private readonly int codepage; // 0x08 + private Encoding encoding; // 0x0C + + // Properties + public int CodePage { get; } // 0x0051C984 + public string DisplayName { get; } // 0x0051C98C + public string Name { get; } // 0x0051C990 + + // Methods + internal void .ctor(int cp); // 0x0051B2E0 + public override bool Equals(object value); // 0x0051CA60 + public override int GetHashCode(); // 0x0051CAEC + public Encoding GetEncoding(); // 0x0051C9DC +} + +// Namespace: System.Text +[Serializable] +internal class Latin1Encoding : Encoding // TypeDefIndex: 1542 +{ + // Fields + internal const int ISOLATIN_CODE_PAGE = 28591; // 0x00 + + // Properties + public override bool IsSingleByte { get; } // 0x0051CAF4 + public override string BodyName { get; } // 0x0051E75C + public override string EncodingName { get; } // 0x0051E7B8 + public override string HeaderName { get; } // 0x0051E814 + public override bool IsBrowserDisplay { get; } // 0x0051E870 + public override bool IsBrowserSave { get; } // 0x0051E878 + public override bool IsMailNewsDisplay { get; } // 0x0051E880 + public override bool IsMailNewsSave { get; } // 0x0051E888 + public override string WebName { get; } // 0x0051E890 + + // Methods + public void .ctor(); // 0x0051B864 + public override bool IsAlwaysNormalized(NormalizationForm form); // 0x0051CAFC + public override int GetByteCount(char[] chars, int index, int count); // 0x0051CB0C + public override int GetByteCount(string s); // 0x0051CCF0 + public override int GetBytes(char[] chars, int charIndex, int charCount, byte[] bytes, int byteIndex); // 0x0051CD9C + private int GetBytes(char[] chars, int charIndex, int charCount, byte[] bytes, int byteIndex, EncoderFallbackBuffer buffer, char[] fallback_chars); // 0x0051CDDC + public override int GetBytes(string s, int charIndex, int charCount, byte[] bytes, int byteIndex); // 0x0051D4F4 + private int GetBytes(string s, int charIndex, int charCount, byte[] bytes, int byteIndex, EncoderFallbackBuffer buffer, char[] fallback_chars); // 0x0051D534 + public override int GetCharCount(byte[] bytes, int index, int count); // 0x0051DC50 + public override int GetChars(byte[] bytes, int byteIndex, int byteCount, char[] chars, int charIndex); // 0x0051DE34 + public override int GetMaxByteCount(int charCount); // 0x0051E200 + public override int GetMaxCharCount(int byteCount); // 0x0051E2EC + public override string GetString(byte[] bytes, int index, int count); // 0x0051E3D8 + public override string GetString(byte[] bytes); // 0x0051E680 +} + +// Namespace: System.Text +[Serializable] +internal sealed class MLangCodePageEncoding : ISerializable, IObjectReference // TypeDefIndex: 1543 +{ + // Fields + private int codePage; // 0x08 + private bool isReadOnly; // 0x0C + private EncoderFallback encoderFallback; // 0x10 + private DecoderFallback decoderFallback; // 0x14 + private Encoding realObject; // 0x18 + + // Methods + private void .ctor(SerializationInfo info, StreamingContext context); // 0x0051E8EC + public void GetObjectData(SerializationInfo info, StreamingContext context); // 0x0051ECF8 + public object GetRealObject(StreamingContext context); // 0x0051ED94 +} + +// Namespace: +[Serializable] +private sealed class MLangEncoder : ISerializable, IObjectReference // TypeDefIndex: 1544 +{ + // Fields + private Encoding encoding; // 0x08 + private Encoder realObject; // 0x0C + + // Methods + private void .ctor(SerializationInfo info, StreamingContext context); // 0x0051F150 + public void GetObjectData(SerializationInfo info, StreamingContext context); // 0x0051F2C8 + public object GetRealObject(StreamingContext context); // 0x0051F364 +} + +// Namespace: +[Serializable] +private sealed class MLangDecoder : ISerializable, IObjectReference // TypeDefIndex: 1545 +{ + // Fields + private Encoding encoding; // 0x08 + private Decoder realObject; // 0x0C + + // Methods + private void .ctor(SerializationInfo info, StreamingContext context); // 0x0051EEF4 + public void GetObjectData(SerializationInfo info, StreamingContext context); // 0x0051F06C + public object GetRealObject(StreamingContext context); // 0x0051F108 +} + +// Namespace: System.Text +public enum NormalizationForm // TypeDefIndex: 1546 +{ + FormC = 1, + FormD = 2, + FormKC = 5, + FormKD = 6 +} + +// Namespace: System.Text +[Serializable] +public sealed class StringBuilder : ISerializable // TypeDefIndex: 1547 +{ + // Fields + private const int constDefaultCapacity = 16; // 0x00 + private int _length; // 0x08 + private string _str; // 0x0C + private string _cached_str; // 0x10 + private int _maxCapacity; // 0x14 + + // Properties + public int MaxCapacity { get; } // 0x00520154 + public int Capacity { get; set; } // 0x0051FFC8 0x0051FD60 + public int Length { get; set; } // 0x00520370 0x00520378 + public char Chars { get; set; } // 0x00520550 0x00520618 + + // Methods + public void .ctor(string value, int startIndex, int length, int capacity); // 0x0051F3AC + private void .ctor(string value, int startIndex, int length, int capacity, int maxCapacity); // 0x0051F3D0 + public void .ctor(); // 0x0051F8A0 + public void .ctor(int capacity); // 0x0051F97C + public void .ctor(int capacity, int maxCapacity); // 0x0051FA34 + public void .ctor(string value); // 0x0051F8A8 + public void .ctor(string value, int capacity); // 0x0051FAEC + private void .ctor(SerializationInfo info, StreamingContext context); // 0x0051FBD0 + private void System.Runtime.Serialization.ISerializable.GetObjectData(SerializationInfo info, StreamingContext context); // 0x0051FE80 + public override string ToString(); // 0x00520024 + public string ToString(int startIndex, int length); // 0x005206F8 + public int EnsureCapacity(int capacity); // 0x005207E8 + public bool Equals(StringBuilder sb); // 0x005208DC + public StringBuilder Remove(int startIndex, int length); // 0x005209A4 + public StringBuilder Replace(char oldChar, char newChar); // 0x00520AE4 + public StringBuilder Replace(char oldChar, char newChar, int startIndex, int count); // 0x00520B08 + public StringBuilder Replace(string oldValue, string newValue); // 0x00520C5C + public StringBuilder Replace(string oldValue, string newValue, int startIndex, int count); // 0x00520C80 + public StringBuilder Append(char[] value); // 0x00520FA0 + public StringBuilder Append(string value); // 0x005210A0 + public StringBuilder Append(bool value); // 0x005211F8 + public StringBuilder Append(byte value); // 0x0052122C + public StringBuilder Append(Decimal value); // 0x00521260 + public StringBuilder Append(double value); // 0x0052129C + public StringBuilder Append(short value); // 0x005212D0 + public StringBuilder Append(int value); // 0x00521304 + public StringBuilder Append(long value); // 0x00521338 + public StringBuilder Append(object value); // 0x0052136C + public StringBuilder Append(sbyte value); // 0x005213B0 + public StringBuilder Append(float value); // 0x005213E4 + public StringBuilder Append(ushort value); // 0x00521418 + public StringBuilder Append(uint value); // 0x0052144C + public StringBuilder Append(ulong value); // 0x00521480 + public StringBuilder Append(char value); // 0x005214B4 + public StringBuilder Append(char value, int repeatCount); // 0x00520450 + public StringBuilder Append(char[] value, int startIndex, int charCount); // 0x0052153C + public StringBuilder Append(string value, int startIndex, int count); // 0x005216C0 + public StringBuilder AppendLine(); // 0x00521874 + public StringBuilder AppendLine(string value); // 0x00521898 + public StringBuilder AppendFormat(string format, object[] args); // 0x005218D4 + public StringBuilder AppendFormat(IFormatProvider provider, string format, object[] args); // 0x005218F8 + public StringBuilder AppendFormat(string format, object arg0); // 0x005219A4 + public StringBuilder AppendFormat(string format, object arg0, object arg1); // 0x00521A90 + public StringBuilder AppendFormat(string format, object arg0, object arg1, object arg2); // 0x00521BD0 + public StringBuilder Insert(int index, char[] value); // 0x00521D64 + public StringBuilder Insert(int index, string value); // 0x00521D98 + public StringBuilder Insert(int index, bool value); // 0x00521EEC + public StringBuilder Insert(int index, byte value); // 0x00521F28 + public StringBuilder Insert(int index, char value); // 0x00521F64 + public StringBuilder Insert(int index, Decimal value); // 0x005220C4 + public StringBuilder Insert(int index, double value); // 0x00522110 + public StringBuilder Insert(int index, short value); // 0x0052214C + public StringBuilder Insert(int index, int value); // 0x00522188 + public StringBuilder Insert(int index, long value); // 0x005221C4 + public StringBuilder Insert(int index, object value); // 0x00522200 + public StringBuilder Insert(int index, sbyte value); // 0x0052224C + public StringBuilder Insert(int index, float value); // 0x00522288 + public StringBuilder Insert(int index, ushort value); // 0x005222C4 + public StringBuilder Insert(int index, uint value); // 0x00522300 + public StringBuilder Insert(int index, ulong value); // 0x0052233C + public StringBuilder Insert(int index, string value, int count); // 0x00522378 + public StringBuilder Insert(int index, char[] value, int startIndex, int charCount); // 0x005224A0 + private void InternalEnsureCapacity(int size); // 0x0052015C + public void CopyTo(int sourceIndex, char[] destination, int destinationIndex, int count); // 0x005225E8 +} + +// Namespace: System.Text +[Serializable] +internal sealed class SurrogateEncoder : ISerializable, IObjectReference // TypeDefIndex: 1548 +{ + // Fields + private Encoding encoding; // 0x08 + private Encoder realObject; // 0x0C + + // Methods + private void .ctor(SerializationInfo info, StreamingContext context); // 0x00522770 + public void GetObjectData(SerializationInfo info, StreamingContext context); // 0x005228E8 + public object GetRealObject(StreamingContext context); // 0x00522984 +} + +// Namespace: System.Text +[Serializable] +public sealed class UTF32Encoding : Encoding // TypeDefIndex: 1549 +{ + // Fields + internal const int UTF32_CODE_PAGE = 12000; // 0x00 + internal const int BIG_UTF32_CODE_PAGE = 12001; // 0x00 + private bool bigEndian; // 0x30 + private bool byteOrderMark; // 0x31 + + // Methods + public void .ctor(); // 0x005229CC + public void .ctor(bool bigEndian, bool byteOrderMark); // 0x0051BEB0 + public void .ctor(bool bigEndian, bool byteOrderMark, bool throwOnInvalidCharacters); // 0x005229F0 + public override int GetByteCount(char[] chars, int index, int count); // 0x00522D1C + public override int GetBytes(char[] chars, int charIndex, int charCount, byte[] bytes, int byteIndex); // 0x00523008 + public override int GetCharCount(byte[] bytes, int index, int count); // 0x00523834 + public override int GetChars(byte[] bytes, int byteIndex, int byteCount, char[] chars, int charIndex); // 0x00523A18 + public override int GetMaxByteCount(int charCount); // 0x00523F90 + public override int GetMaxCharCount(int byteCount); // 0x0052407C + public override Decoder GetDecoder(); // 0x00524168 + public override byte[] GetPreamble(); // 0x00524208 + public override bool Equals(object value); // 0x0052433C + public override int GetHashCode(); // 0x0052442C + public override int GetByteCount(void * chars, int count); // 0x00524458 + public override int GetByteCount(string s); // 0x00524508 + public override int GetBytes(void * chars, int charCount, void * bytes, int byteCount); // 0x0052450C + public override int GetBytes(string s, int charIndex, int charCount, byte[] bytes, int byteIndex); // 0x0052452C + public override int GetCharCount(void * bytes, int count); // 0x00524550 + public override int GetChars(void * bytes, int byteCount, void * chars, int charCount); // 0x00524554 + public override string GetString(byte[] bytes, int index, int count); // 0x00524574 + public override Encoder GetEncoder(); // 0x005245AC +} + +// Namespace: +private sealed class UTF32Decoder : Decoder // TypeDefIndex: 1550 +{ + // Fields + private bool bigEndian; // 0x10 + private int leftOverByte; // 0x14 + private int leftOverLength; // 0x18 + + // Methods + public void .ctor(bool bigEndian); // 0x005241E4 + public override int GetCharCount(byte[] bytes, int index, int count); // 0x005245B0 + public override int GetChars(byte[] bytes, int byteIndex, int byteCount, char[] chars, int charIndex); // 0x005247B0 +} + +// Namespace: System.Text +[Serializable] +public class UTF7Encoding : Encoding // TypeDefIndex: 1551 +{ + // Fields + internal const int UTF7_CODE_PAGE = 65000; // 0x00 + private const string base64Chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"; // 0x00 + private bool allowOptionals; // 0x30 + private static readonly byte[] encodingRules; // 0x00 + private static readonly sbyte[] base64Values; // 0x04 + + // Methods + public void .ctor(); // 0x0051B8E8 + public void .ctor(bool allowOptionals); // 0x00524FE4 + private static void .cctor(); // 0x005250B0 + public override int GetHashCode(); // 0x0052518C + public override bool Equals(object value); // 0x005251AC + private static int InternalGetByteCount(char[] chars, int index, int count, bool flush, int leftOver, bool isInShifted, bool allowOptionals); // 0x005252E0 + public override int GetByteCount(char[] chars, int index, int count); // 0x005256E8 + private static int InternalGetBytes(char[] chars, int charIndex, int charCount, byte[] bytes, int byteIndex, bool flush, int leftOver, bool isInShifted, bool allowOptionals); // 0x005257A0 + public override int GetBytes(char[] chars, int charIndex, int charCount, byte[] bytes, int byteIndex); // 0x00526580 + private static int InternalGetCharCount(byte[] bytes, int index, int count, int leftOver); // 0x00526660 + public override int GetCharCount(byte[] bytes, int index, int count); // 0x005269C0 + private static int InternalGetChars(byte[] bytes, int byteIndex, int byteCount, char[] chars, int charIndex, int leftOver); // 0x00526A5C + public override int GetChars(byte[] bytes, int byteIndex, int byteCount, char[] chars, int charIndex); // 0x005274D4 + public override int GetMaxByteCount(int charCount); // 0x0052762C + public override int GetMaxCharCount(int byteCount); // 0x00527750 + public override Decoder GetDecoder(); // 0x0052783C + public override Encoder GetEncoder(); // 0x005278C8 + public override int GetByteCount(void * chars, int count); // 0x00527958 + public override int GetByteCount(string s); // 0x0052795C + public override int GetBytes(void * chars, int charCount, void * bytes, int byteCount); // 0x00527960 + public override int GetBytes(string s, int charIndex, int charCount, byte[] bytes, int byteIndex); // 0x00527980 + public override int GetCharCount(void * bytes, int count); // 0x005279A4 + public override int GetChars(void * bytes, int byteCount, void * chars, int charCount); // 0x005279A8 + public override string GetString(byte[] bytes, int index, int count); // 0x005279C8 +} + +// Namespace: +private sealed class UTF7Decoder : Decoder // TypeDefIndex: 1552 +{ + // Fields + private int leftOver; // 0x10 + + // Methods + public void .ctor(); // 0x005278AC + public override int GetCharCount(byte[] bytes, int index, int count); // 0x00527A00 + public override int GetChars(byte[] bytes, int byteIndex, int byteCount, char[] chars, int charIndex); // 0x00527AA4 +} + +// Namespace: +private sealed class UTF7Encoder : Encoder // TypeDefIndex: 1553 +{ + // Fields + private bool allowOptionals; // 0x10 + private int leftOver; // 0x14 + private bool isInShifted; // 0x18 + + // Methods + public void .ctor(bool allowOptionals); // 0x0052793C + public override int GetByteCount(char[] chars, int index, int count, bool flush); // 0x00527B58 + public override int GetBytes(char[] chars, int charIndex, int charCount, byte[] bytes, int byteIndex, bool flush); // 0x00527C24 +} + +// Namespace: System.Text +[Serializable] +public class UTF8Encoding : Encoding // TypeDefIndex: 1554 +{ + // Fields + internal const int UTF8_CODE_PAGE = 65001; // 0x00 + private bool emitIdentifier; // 0x30 + + // Methods + public void .ctor(); // 0x00527CF4 + public void .ctor(bool encoderShouldEmitUTF8Identifier); // 0x0051B8F0 + public void .ctor(bool encoderShouldEmitUTF8Identifier, bool throwOnInvalidBytes); // 0x0051B8F8 + private static int InternalGetByteCount(char[] chars, int index, int count, char leftOver, bool flush); // 0x00527D00 + private static int InternalGetByteCount(void * chars, int count, char leftOver, bool flush); // 0x00527F3C + public override int GetByteCount(char[] chars, int index, int count); // 0x00528044 + public override int GetByteCount(void * chars, int count); // 0x00528080 + private static int InternalGetBytes(char[] chars, int charIndex, int charCount, byte[] bytes, int byteIndex, char leftOver, bool flush); // 0x00528164 + private static int InternalGetBytes(void * chars, int count, void * bytes, int bcount, char leftOver, bool flush); // 0x005284BC + public override int GetBytes(char[] chars, int charIndex, int charCount, byte[] bytes, int byteIndex); // 0x0052879C + public override int GetBytes(string s, int charIndex, int charCount, byte[] bytes, int byteIndex); // 0x005287E8 + public override int GetBytes(void * chars, int charCount, void * bytes, int byteCount); // 0x00528B44 + private static int InternalGetCharCount(byte[] bytes, int index, int count, uint leftOverBits, uint leftOverCount, object provider, DecoderFallbackBuffer fallbackBuffer, byte[] bufferArg, bool flush); // 0x00528D2C + private static int InternalGetCharCount(void * bytes, int count, uint leftOverBits, uint leftOverCount, object provider, DecoderFallbackBuffer fallbackBuffer, byte[] bufferArg, bool flush); // 0x00528F64 + private static int Fallback(object provider, DecoderFallbackBuffer buffer, byte[] bufferArg, void * bytes, long index, uint size); // 0x00529228 + private static void Fallback(object provider, DecoderFallbackBuffer buffer, byte[] bufferArg, void * bytes, long byteIndex, uint size, void * chars, int charIndex); // 0x005294D0 + public override int GetCharCount(byte[] bytes, int index, int count); // 0x005297B0 + public override int GetCharCount(void * bytes, int count); // 0x00529804 + private static int InternalGetChars(byte[] bytes, int byteIndex, int byteCount, char[] chars, int charIndex, uint leftOverBits, uint leftOverCount, object provider, DecoderFallbackBuffer fallbackBuffer, byte[] bufferArg, bool flush); // 0x00529850 + private static int InternalGetChars(void * bytes, int byteCount, void * chars, int charCount, uint leftOverBits, uint leftOverCount, object provider, DecoderFallbackBuffer fallbackBuffer, byte[] bufferArg, bool flush); // 0x00529BCC + public override int GetChars(byte[] bytes, int byteIndex, int byteCount, char[] chars, int charIndex); // 0x0052A130 + public override int GetChars(void * bytes, int byteCount, void * chars, int charCount); // 0x0052A1A4 + public override int GetMaxByteCount(int charCount); // 0x0052A214 + public override int GetMaxCharCount(int byteCount); // 0x0052A300 + public override Decoder GetDecoder(); // 0x0052A3EC + public override Encoder GetEncoder(); // 0x0052A4A4 + public override byte[] GetPreamble(); // 0x0052A530 + public override bool Equals(object value); // 0x0052A634 + public override int GetHashCode(); // 0x0052A778 + public override int GetByteCount(string chars); // 0x0052A77C + public override string GetString(byte[] bytes, int index, int count); // 0x0052A780 +} + +// Namespace: +[Serializable] +private class UTF8Decoder : Decoder // TypeDefIndex: 1555 +{ + // Fields + private uint leftOverBits; // 0x10 + private uint leftOverCount; // 0x14 + + // Methods + public void .ctor(DecoderFallback fallback); // 0x0052A474 + public override int GetCharCount(byte[] bytes, int index, int count); // 0x0052A7B8 + public override int GetChars(byte[] bytes, int byteIndex, int byteCount, char[] chars, int charIndex); // 0x0052A80C +} + +// Namespace: +[Serializable] +private class UTF8Encoder : Encoder // TypeDefIndex: 1556 +{ + // Fields + private char leftOverForCount; // 0x10 + private char leftOverForConv; // 0x12 + + // Methods + public void .ctor(bool emitIdentifier); // 0x0052A514 + public override int GetByteCount(char[] chars, int index, int count, bool flush); // 0x0052A86C + public override int GetBytes(char[] chars, int charIndex, int charCount, byte[] bytes, int byteIndex, bool flush); // 0x0052A8A0 + public override int GetByteCount(void * chars, int count, bool flush); // 0x0052A8E0 + public override int GetBytes(void * chars, int charCount, void * bytes, int byteCount, bool flush); // 0x0052A908 +} + +// Namespace: System.Text +[Serializable] +public class UnicodeEncoding : Encoding // TypeDefIndex: 1557 +{ + // Fields + internal const int UNICODE_CODE_PAGE = 1200; // 0x00 + internal const int BIG_UNICODE_CODE_PAGE = 1201; // 0x00 + public const int CharSize = 2; // 0x00 + private bool bigEndian; // 0x30 + private bool byteOrderMark; // 0x31 + + // Methods + public void .ctor(); // 0x0052A940 + public void .ctor(bool bigEndian, bool byteOrderMark); // 0x0051B5F8 + public void .ctor(bool bigEndian, bool byteOrderMark, bool throwOnInvalidBytes); // 0x0052A970 + public override int GetByteCount(char[] chars, int index, int count); // 0x0052AB18 + public override int GetByteCount(string s); // 0x0052ACFC + public override int GetByteCount(void * chars, int count); // 0x0052ADAC + public override int GetBytes(char[] chars, int charIndex, int charCount, byte[] bytes, int byteIndex); // 0x0052AEA8 + public override int GetBytes(string s, int charIndex, int charCount, byte[] bytes, int byteIndex); // 0x0052B300 + public override int GetBytes(void * chars, int charCount, void * bytes, int byteCount); // 0x0052B664 + private int GetBytesInternal(void * chars, int charCount, void * bytes, int byteCount); // 0x0052B1F4 + public override int GetCharCount(byte[] bytes, int index, int count); // 0x0052BB00 + public override int GetCharCount(void * bytes, int count); // 0x0052BCE4 + public override int GetChars(byte[] bytes, int byteIndex, int byteCount, char[] chars, int charIndex); // 0x0052BDE0 + public override int GetChars(void * bytes, int byteCount, void * chars, int charCount); // 0x0052C23C + public override string GetString(byte[] bytes, int index, int count); // 0x0052C3FC + private int GetCharsInternal(void * bytes, int byteCount, void * chars, int charCount); // 0x0052C12C + public override Encoder GetEncoder(); // 0x0052C6B0 + public override int GetMaxByteCount(int charCount); // 0x0052C6B4 + public override int GetMaxCharCount(int byteCount); // 0x0052C7A0 + public override Decoder GetDecoder(); // 0x0052C88C + public override byte[] GetPreamble(); // 0x0052C92C + public override bool Equals(object value); // 0x0052CA5C + public override int GetHashCode(); // 0x0052CB5C + private static void CopyChars(void * src, void * dest, int count, bool bigEndian); // 0x0052B824 +} + +// Namespace: +private sealed class UnicodeDecoder : Decoder // TypeDefIndex: 1558 +{ + // Fields + private bool bigEndian; // 0x10 + private int leftOverByte; // 0x14 + + // Methods + public void .ctor(bool bigEndian); // 0x0052C908 + public override int GetCharCount(byte[] bytes, int index, int count); // 0x0052CB60 + public override int GetChars(byte[] bytes, int byteIndex, int byteCount, char[] chars, int charIndex); // 0x0052CD5C +} + +// Namespace: System.Threading +[Serializable] +public class AbandonedMutexException : SystemException // TypeDefIndex: 1559 +{ + // Fields + private Mutex mutex; // 0x34 + private int mutex_index; // 0x38 + + // Properties + public Mutex Mutex { get; } // 0x0052D504 + public int MutexIndex { get; } // 0x0052D50C + + // Methods + public void .ctor(); // 0x0052D1E0 + public void .ctor(string message); // 0x0052D25C + public void .ctor(int location, WaitHandle handle); // 0x0052D28C + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x0052D344 + public void .ctor(string message, Exception inner); // 0x0052D36C + public void .ctor(string message, int location, WaitHandle handle); // 0x0052D39C + public void .ctor(string message, Exception inner, int location, WaitHandle handle); // 0x0052D44C +} + +// Namespace: System.Threading +[Serializable] +public enum ApartmentState // TypeDefIndex: 1560 +{ + STA = 0, + MTA = 1, + Unknown = 2 +} + +// Namespace: System.Threading +internal enum AsyncFlowControlType // TypeDefIndex: 1561 +{ + None = 0, + Execution = 1, + Security = 2 +} + +// Namespace: System.Threading +public struct AsyncFlowControl : IDisposable // TypeDefIndex: 1562 +{ + // Fields + private Thread _t; // 0x08 + private AsyncFlowControlType _type; // 0x0C + + // Methods + internal void .ctor(Thread t, AsyncFlowControlType type); // 0x000A778C + private void System.IDisposable.Dispose(); // 0x000A7798 + public void Undo(); // 0x000A77C4 + public override int GetHashCode(); // 0x000A77CC + public override bool Equals(object obj); // 0x000A77D4 + public bool Equals(AsyncFlowControl obj); // 0x000A77DC + public static bool op_Equality(AsyncFlowControl a, AsyncFlowControl b); // 0x0040F96C + public static bool op_Inequality(AsyncFlowControl a, AsyncFlowControl b); // 0x0040F984 +} + +// Namespace: System.Threading +public sealed class AutoResetEvent : EventWaitHandle // TypeDefIndex: 1563 +{ + // Methods + public void .ctor(bool initialState); // 0x0040F998 +} + +// Namespace: System.Threading +[Serializable] +public sealed class CompressedStack : ISerializable // TypeDefIndex: 1564 +{ + // Fields + private ArrayList _list; // 0x08 + + // Properties + internal IList List { get; } // 0x00410938 + + // Methods + internal void .ctor(int length); // 0x0040FA6C + internal void .ctor(CompressedStack cs); // 0x0040FAF8 + public CompressedStack CreateCopy(); // 0x0040FBC8 + public static CompressedStack Capture(); // 0x0040FC38 + public static CompressedStack GetCompressedStack(); // 0x0040FEAC + public void GetObjectData(SerializationInfo info, StreamingContext context); // 0x00410004 + public static void Run(CompressedStack compressedStack, ContextCallback callback, object state); // 0x004100AC + internal bool Equals(CompressedStack cs); // 0x00410644 + internal bool IsEmpty(); // 0x004108FC +} + +// Namespace: System.Threading +public enum EventResetMode // TypeDefIndex: 1565 +{ + AutoReset = 0, + ManualReset = 1 +} + +// Namespace: System.Threading +public class EventWaitHandle : WaitHandle // TypeDefIndex: 1566 +{ + // Methods + private void .ctor(IntPtr handle); // 0x0041098C + public void .ctor(bool initialState, EventResetMode mode); // 0x0040F9A0 + public void .ctor(bool initialState, EventResetMode mode, string name); // 0x00410AF0 + public void .ctor(bool initialState, EventResetMode mode, string name, out bool createdNew); // 0x00410BC0 + private bool IsManualReset(EventResetMode mode); // 0x00410A34 + public bool Reset(); // 0x00410C84 + public bool Set(); // 0x00410D8C +} + +// Namespace: System.Threading +[Serializable] +public sealed class ExecutionContext : ISerializable // TypeDefIndex: 1567 +{ + // Fields + private SecurityContext _sc; // 0x08 + private bool _suppressFlow; // 0x0C + private bool _capture; // 0x0D + + // Properties + internal SecurityContext SecurityContext { get; set; } // 0x00411310 0x00411390 + internal bool FlowSuppressed { get; set; } // 0x00411398 0x004113A0 + + // Methods + internal void .ctor(); // 0x00410DBC + internal void .ctor(ExecutionContext ec); // 0x00410DC4 + internal void .ctor(SerializationInfo info, StreamingContext context); // 0x00410E74 + public static ExecutionContext Capture(); // 0x00410F0C + public ExecutionContext CreateCopy(); // 0x00411178 + public void GetObjectData(SerializationInfo info, StreamingContext context); // 0x00411238 + public static bool IsFlowSuppressed(); // 0x004113A8 + public static void RestoreFlow(); // 0x0040F710 + public static void Run(ExecutionContext executionContext, ContextCallback callback, object state); // 0x0041144C + public static AsyncFlowControl SuppressFlow(); // 0x00411524 +} + +// Namespace: System.Threading +public class HostExecutionContext // TypeDefIndex: 1568 +{ + // Fields + private object _state; // 0x08 + + // Properties + protected internal object State { get; set; } // 0x00411694 0x0041169C + + // Methods + public void .ctor(); // 0x004115DC + public void .ctor(object state); // 0x004115FC + public virtual HostExecutionContext CreateCopy(); // 0x0041161C +} + +// Namespace: System.Threading +public class HostExecutionContextManager // TypeDefIndex: 1569 +{ + // Methods + public void .ctor(); // 0x004116A4 + public virtual HostExecutionContext Capture(); // 0x004116AC + public virtual void Revert(object previousState); // 0x00411734 + public virtual object SetHostExecutionContext(HostExecutionContext hostExecutionContext); // 0x004117BC +} + +// Namespace: System.Threading +public static class Interlocked // TypeDefIndex: 1570 +{ + // Methods + public static int CompareExchange(int location1, int value, int comparand); // 0x00411B6C + public static object CompareExchange(object location1, object value, object comparand); // 0x00411B70 + public static float CompareExchange(float location1, float value, float comparand); // 0x00411B74 + public static int Decrement(int location); // 0x00411B78 + public static long Decrement(long location); // 0x00411B7C + public static int Increment(int location); // 0x00411B80 + public static long Increment(long location); // 0x00411B84 + public static int Exchange(int location1, int value); // 0x00411B88 + public static object Exchange(object location1, object value); // 0x00411B8C + public static float Exchange(float location1, float value); // 0x00411B90 + public static long CompareExchange(long location1, long value, long comparand); // 0x00411B94 + public static IntPtr CompareExchange(IntPtr location1, IntPtr value, IntPtr comparand); // 0x00411B98 + public static double CompareExchange(double location1, double value, double comparand); // 0x00411B9C + public static T CompareExchange(T location1, T value, T comparand); + public static long Exchange(long location1, long value); // 0x00411BA0 + public static IntPtr Exchange(IntPtr location1, IntPtr value); // 0x00411BA4 + public static double Exchange(double location1, double value); // 0x00411BA8 + public static T Exchange(T location1, T value); + public static long Read(long location); // 0x00411BAC + public static int Add(int location1, int value); // 0x00411BB0 + public static long Add(long location1, long value); // 0x00411BB4 +} + +// Namespace: System.Threading +public struct LockCookie // TypeDefIndex: 1571 +{ + // Fields + internal int ThreadId; // 0x08 + internal int ReaderLocks; // 0x0C + internal int WriterLocks; // 0x10 + + // Methods + internal void .ctor(int thread_id); // 0x000A781C + internal void .ctor(int thread_id, int reader_locks, int writer_locks); // 0x000A7830 + public override int GetHashCode(); // 0x000A783C + public bool Equals(LockCookie obj); // 0x000A7844 + public override bool Equals(object obj); // 0x000A7874 + public static bool op_Equality(LockCookie a, LockCookie b); // 0x00411D50 + public static bool op_Inequality(LockCookie a, LockCookie b); // 0x00411D80 +} + +// Namespace: System.Threading +internal class LockQueue // TypeDefIndex: 1572 +{ + // Fields + private ReaderWriterLock rwlock; // 0x08 + private int lockCount; // 0x0C + + // Properties + public bool IsEmpty { get; } // 0x0041210C + + // Methods + public void .ctor(ReaderWriterLock rwlock); // 0x00411DAC + public bool Wait(int timeout); // 0x00411DCC + public void Pulse(); // 0x00412138 + public void PulseAll(); // 0x004122A4 +} + +// Namespace: System.Threading +public sealed class ManualResetEvent : EventWaitHandle // TypeDefIndex: 1573 +{ + // Methods + public void .ctor(bool initialState); // 0x00412410 +} + +// Namespace: System.Threading +public static class Monitor // TypeDefIndex: 1574 +{ + // Methods + private static bool Monitor_try_enter(object obj, int ms); // 0x00412418 + public static void Enter(object obj); // 0x00411F98 + public static void Exit(object obj); // 0x00411F9C + private static void Monitor_pulse(object obj); // 0x0041241C + private static bool Monitor_test_synchronised(object obj); // 0x00412420 + public static void Pulse(object obj); // 0x0041219C + private static void Monitor_pulse_all(object obj); // 0x0041242C + public static void PulseAll(object obj); // 0x00412308 + public static bool TryEnter(object obj); // 0x00412430 + public static bool TryEnter(object obj, int millisecondsTimeout); // 0x00412438 + public static bool TryEnter(object obj, TimeSpan timeout); // 0x00412568 + private static bool Monitor_wait(object obj, int ms); // 0x004126A8 + public static bool Wait(object obj); // 0x004126AC + public static bool Wait(object obj, int millisecondsTimeout); // 0x00411FA0 + public static bool Wait(object obj, TimeSpan timeout); // 0x004126B8 + public static bool Wait(object obj, int millisecondsTimeout, bool exitContext); // 0x004127C4 + public static bool Wait(object obj, TimeSpan timeout, bool exitContext); // 0x00412890 +} + +// Namespace: System.Threading +public sealed class Mutex : WaitHandle // TypeDefIndex: 1575 +{ + // Methods + public void .ctor(); // 0x00412964 + public void .ctor(bool initiallyOwned); // 0x00412A24 + public void .ctor(bool initiallyOwned, string name); // 0x00412AE4 + public void .ctor(bool initiallyOwned, string name, out bool createdNew); // 0x00412BA8 + private static IntPtr CreateMutex_internal(bool initiallyOwned, string name, out bool created); // 0x00412A20 + private static bool ReleaseMutex_internal(IntPtr handle); // 0x00412C60 + public void ReleaseMutex(); // 0x00412C64 +} + +// Namespace: System.Threading +internal sealed class NativeEventCalls // TypeDefIndex: 1576 +{ + // Methods + public void .ctor(); // 0x00412D24 + public static IntPtr CreateEvent_internal(bool manual, bool initial, string name, out bool created); // 0x00410AEC + public static bool SetEvent_internal(IntPtr handle); // 0x00410DB8 + public static bool ResetEvent_internal(IntPtr handle); // 0x00410D88 + public static void CloseEvent_internal(IntPtr handle); // 0x00412D2C +} + +// Namespace: System.Threading +public struct NativeOverlapped // TypeDefIndex: 1577 +{ + // Fields + public IntPtr EventHandle; // 0x08 + public IntPtr InternalHigh; // 0x0C + public IntPtr InternalLow; // 0x10 + public int OffsetHigh; // 0x14 + public int OffsetLow; // 0x18 + internal int Handle1; // 0x1C + internal int Handle2; // 0x20 + +} + +// Namespace: System.Threading +public class Overlapped // TypeDefIndex: 1578 +{ + // Fields + private IAsyncResult ares; // 0x08 + private int offsetL; // 0x0C + private int offsetH; // 0x10 + private int evt; // 0x14 + private IntPtr evt_ptr; // 0x18 + + // Properties + public IAsyncResult AsyncResult { get; set; } // 0x0041332C 0x00413334 + public int EventHandle { get; set; } // 0x0041333C 0x00413344 + public IntPtr EventHandleIntPtr { get; set; } // 0x0041334C 0x00413354 + public int OffsetHigh { get; set; } // 0x0041335C 0x00413364 + public int OffsetLow { get; set; } // 0x0041336C 0x00413374 + + // Methods + public void .ctor(); // 0x00412D30 + public void .ctor(int offsetLo, int offsetHi, int hEvent, IAsyncResult ar); // 0x00412D38 + public void .ctor(int offsetLo, int offsetHi, IntPtr hEvent, IAsyncResult ar); // 0x00412D70 + public static void Free(void * nativeOverlappedPtr); // 0x00412DA8 + public static Overlapped Unpack(void * nativeOverlappedPtr); // 0x00412EB4 + public void * Pack(IOCompletionCallback iocb); // 0x00413008 + public void * Pack(IOCompletionCallback iocb, object userData); // 0x004131EC + public void * UnsafePack(IOCompletionCallback iocb); // 0x00413324 + public void * UnsafePack(IOCompletionCallback iocb, object userData); // 0x00413328 +} + +// Namespace: System.Threading +public sealed class ReaderWriterLock : CriticalFinalizerObject // TypeDefIndex: 1579 +{ + // Fields + private int seq_num; // 0x08 + private int state; // 0x0C + private int readers; // 0x10 + private LockQueue writer_queue; // 0x14 + private Hashtable reader_locks; // 0x18 + private int writer_lock_owner; // 0x1C + + // Properties + public bool IsReaderLockHeld { get; } // 0x00413818 + public bool IsWriterLockHeld { get; } // 0x004139E0 + public int WriterSeqNum { get; } // 0x00413AD4 + + // Methods + public void .ctor(); // 0x00413758 + protected override void Finalize(); // 0x00413810 + public void AcquireReaderLock(int millisecondsTimeout); // 0x00413AF8 + private void AcquireReaderLock(int millisecondsTimeout, int initialLockCount); // 0x00413B00 + public void AcquireReaderLock(TimeSpan timeout); // 0x004141F0 + public void AcquireWriterLock(int millisecondsTimeout); // 0x00414304 + private void AcquireWriterLock(int millisecondsTimeout, int initialLockCount); // 0x00414008 + public void AcquireWriterLock(TimeSpan timeout); // 0x0041430C + public bool AnyWritersSince(int seqNum); // 0x00414338 + public void DowngradeFromWriterLock(LockCookie lockCookie); // 0x00414368 + public LockCookie ReleaseLock(); // 0x00414550 + public void ReleaseReaderLock(); // 0x004149E8 + private void ReleaseReaderLock(int currentCount, int releaseCount); // 0x00414820 + public void ReleaseWriterLock(); // 0x00414BF0 + private void ReleaseWriterLock(int releaseCount); // 0x00414798 + public void RestoreLock(LockCookie lockCookie); // 0x00414D04 + public LockCookie UpgradeToWriterLock(int millisecondsTimeout); // 0x00414D9C + public LockCookie UpgradeToWriterLock(TimeSpan timeout); // 0x00414E80 + private LockCookie GetLockCookie(); // 0x00414620 + private bool HasWriterLock(); // 0x00413F68 + private int CheckTimeout(TimeSpan timeout); // 0x00414220 +} + +// Namespace: System.Threading +public sealed class RegisteredWaitHandle : MarshalByRefObject // TypeDefIndex: 1580 +{ + // Fields + private WaitHandle _waitObject; // 0x0C + private WaitOrTimerCallback _callback; // 0x10 + private TimeSpan _timeout; // 0x18 + private object _state; // 0x20 + private bool _executeOnlyOnce; // 0x24 + private WaitHandle _finalEvent; // 0x28 + private ManualResetEvent _cancelEvent; // 0x2C + private int _callsInProcess; // 0x30 + private bool _unregistered; // 0x34 + + // Methods + internal void .ctor(WaitHandle waitObject, WaitOrTimerCallback callback, object state, TimeSpan timeout, bool executeOnlyOnce); // 0x00414EB0 + internal void Wait(object state); // 0x00414F78 + private void DoCallBack(object timedOut); // 0x00415680 + public bool Unregister(WaitHandle waitObject); // 0x00415B7C +} + +// Namespace: System.Threading +public class SynchronizationContext // TypeDefIndex: 1581 +{ + // Fields + private bool notification_required; // 0x08 + private static SynchronizationContext currentContext; // 0x80000000 + + // Properties + public static SynchronizationContext Current { get; } // 0x00416090 + + // Methods + public void .ctor(); // 0x00416014 + internal void .ctor(SynchronizationContext context); // 0x0041601C + public virtual SynchronizationContext CreateCopy(); // 0x004160F0 + public bool IsWaitNotificationRequired(); // 0x00416160 + public virtual void OperationCompleted(); // 0x00416168 + public virtual void OperationStarted(); // 0x0041616C + public virtual void Post(SendOrPostCallback d, object state); // 0x00416170 + public virtual void Send(SendOrPostCallback d, object state); // 0x004161FC + public static void SetSynchronizationContext(SynchronizationContext syncContext); // 0x00416230 + public static void SetThreadStaticContext(SynchronizationContext syncContext); // 0x00416294 + protected void SetWaitNotificationRequired(); // 0x004162F8 + public virtual int Wait(IntPtr[] waitHandles, bool waitAll, int millisecondsTimeout); // 0x0041638C + protected static int WaitHelper(IntPtr[] waitHandles, bool waitAll, int millisecondsTimeout); // 0x004163A0 +} + +// Namespace: System.Threading +[Serializable] +public class SynchronizationLockException : SystemException // TypeDefIndex: 1582 +{ + // Methods + public void .ctor(); // 0x00416428 + public void .ctor(string message); // 0x00412424 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x00416490 + public void .ctor(string message, Exception innerException); // 0x004164B0 +} + +// Namespace: System.Threading +public sealed class Thread : CriticalFinalizerObject, _Thread // TypeDefIndex: 1583 +{ + // Fields + private int lock_thread_id; // 0x08 + private IntPtr system_thread_handle; // 0x0C + private object cached_culture_info; // 0x10 + private IntPtr unused0; // 0x14 + private bool threadpool_thread; // 0x18 + private IntPtr name; // 0x1C + private int name_len; // 0x20 + private ThreadState state; // 0x24 + private object abort_exc; // 0x28 + private int abort_state_handle; // 0x2C + private long thread_id; // 0x30 + private IntPtr start_notify; // 0x38 + private IntPtr stack_ptr; // 0x3C + private UIntPtr static_data; // 0x40 + private IntPtr jit_data; // 0x44 + private IntPtr lock_data; // 0x48 + private object current_appcontext; // 0x4C + private int stack_size; // 0x50 + private object start_obj; // 0x54 + private IntPtr appdomain_refs; // 0x58 + private int interruption_requested; // 0x5C + private IntPtr suspend_event; // 0x60 + private IntPtr suspended_event; // 0x64 + private IntPtr resume_event; // 0x68 + private IntPtr synch_cs; // 0x6C + private IntPtr serialized_culture_info; // 0x70 + private int serialized_culture_info_len; // 0x74 + private IntPtr serialized_ui_culture_info; // 0x78 + private int serialized_ui_culture_info_len; // 0x7C + private bool thread_dump_requested; // 0x80 + private IntPtr end_stack; // 0x84 + private bool thread_interrupt_requested; // 0x88 + private byte apartment_state; // 0x89 + private int critical_region_level; // 0x8C + private int small_id; // 0x90 + private IntPtr manage_callback; // 0x94 + private object pending_exception; // 0x98 + private ExecutionContext ec_to_set; // 0x9C + private IntPtr interrupt_on_stop; // 0xA0 + private IntPtr unused3; // 0xA4 + private IntPtr unused4; // 0xA8 + private IntPtr unused5; // 0xAC + private IntPtr unused6; // 0xB0 + private static object[] local_slots; // 0x80000000 + private static ExecutionContext _ec; // 0x80000004 + private MulticastDelegate threadstart; // 0xB4 + private int managed_id; // 0xB8 + private IPrincipal _principal; // 0xBC + private static Hashtable datastorehash; // 0x00 + private static object datastore_lock; // 0x04 + private bool in_currentculture; // 0xC0 + private static object culture_lock; // 0x08 + + // Properties + public static Context CurrentContext { get; } // 0x00416B84 + public static IPrincipal CurrentPrincipal { get; set; } // 0x00416B8C 0x00416CE0 + public static Thread CurrentThread { get; } // 0x0040FDB8 + internal static int CurrentThreadId { get; } // 0x00413950 + public ApartmentState ApartmentState { get; set; } // 0x00417C8C 0x00417D4C + public CultureInfo CurrentCulture { get; set; } // 0x00417E74 0x004181CC + public CultureInfo CurrentUICulture { get; set; } // 0x00418400 0x004186E4 + public bool IsThreadPoolThread { get; } // 0x004188D8 + internal bool IsThreadPoolThreadInternal { get; set; } // 0x004188E0 0x004188E8 + public bool IsAlive { get; } // 0x004188F0 + public bool IsBackground { get; set; } // 0x00418920 0x004189D4 + public string Name { get; set; } // 0x004189FC 0x00418A00 + public ThreadPriority Priority { get; set; } // 0x00418A04 0x00418A0C + public ThreadState ThreadState { get; } // 0x00417D40 + public ExecutionContext ExecutionContext { get; } // 0x0041103C + public int ManagedThreadId { get; } // 0x00418FA4 + + // Methods + public void .ctor(ThreadStart start); // 0x004164B8 + public void .ctor(ThreadStart start, int maxStackSize); // 0x0041658C + public void .ctor(ParameterizedThreadStart start); // 0x004166C0 + public void .ctor(ParameterizedThreadStart start, int maxStackSize); // 0x00416790 + private static void .cctor(); // 0x004168C4 + private void System.Runtime.InteropServices._Thread.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x00416964 + private void System.Runtime.InteropServices._Thread.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x004169EC + private void System.Runtime.InteropServices._Thread.GetTypeInfoCount(out uint pcTInfo); // 0x00416A74 + private void System.Runtime.InteropServices._Thread.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x00416AFC + private static Thread CurrentThread_internal(); // 0x00416DC0 + private static void InitDataStoreHash(); // 0x00416DC4 + public static LocalDataStoreSlot AllocateNamedDataSlot(string name); // 0x00416F98 + public static void FreeNamedDataSlot(string name); // 0x004172D0 + public static LocalDataStoreSlot AllocateDataSlot(); // 0x00417260 + public static object GetData(LocalDataStoreSlot slot); // 0x00417460 + public static void SetData(LocalDataStoreSlot slot, object data); // 0x0041758C + internal static void FreeLocalSlotValues(int slot, bool thread_local); // 0x004177AC + public static LocalDataStoreSlot GetNamedDataSlot(string name); // 0x004177B0 + public static AppDomain GetDomain(); // 0x00416CD8 + public static int GetDomainID(); // 0x004179E4 + private static void ResetAbort_internal(); // 0x004179E8 + public static void ResetAbort(); // 0x004179EC + private static void Sleep_internal(int ms); // 0x00417A64 + public static void Sleep(int millisecondsTimeout); // 0x00417A68 + public static void Sleep(TimeSpan timeout); // 0x00417B58 + private IntPtr Thread_internal(MulticastDelegate start); // 0x00417C88 + private void Thread_init(); // 0x00416588 + private CultureInfo GetCachedCurrentCulture(); // 0x00417E54 + private byte[] GetSerializedCurrentCulture(); // 0x00417E58 + private void SetCachedCurrentCulture(CultureInfo culture); // 0x00417E5C + private void SetSerializedCurrentCulture(byte[] culture); // 0x00417E60 + private CultureInfo GetCachedCurrentUICulture(); // 0x00417E64 + private byte[] GetSerializedCurrentUICulture(); // 0x00417E68 + private void SetCachedCurrentUICulture(CultureInfo culture); // 0x00417E6C + private void SetSerializedCurrentUICulture(byte[] culture); // 0x00417E70 + private string GetName_internal(); // 0x004189F4 + private void SetName_internal(string name); // 0x004189F8 + private void Abort_internal(object stateInfo); // 0x00418A10 + public void Abort(); // 0x00418A14 + public void Abort(object stateInfo); // 0x00418A1C + internal object GetAbortExceptionState(); // 0x00418A20 + private void Interrupt_internal(); // 0x00418A24 + public void Interrupt(); // 0x00418A28 + private bool Join_internal(int ms, IntPtr handle); // 0x00418A2C + public void Join(); // 0x00418A30 + public bool Join(int millisecondsTimeout); // 0x00418A3C + public bool Join(TimeSpan timeout); // 0x00418B10 + public static void MemoryBarrier(); // 0x00418C1C + private void Resume_internal(); // 0x00418C20 + public void Resume(); // 0x00418C24 + private static void SpinWait_nop(); // 0x00418C28 + public static void SpinWait(int iterations); // 0x00418C2C + public void Start(); // 0x00418CC0 + private void Suspend_internal(); // 0x00418E44 + public void Suspend(); // 0x00418E48 + private void Thread_free_internal(IntPtr handle); // 0x00418E4C + protected override void Finalize(); // 0x00418E50 + private void SetState(ThreadState set); // 0x004189EC + private void ClrState(ThreadState clr); // 0x004189F0 + private ThreadState GetState(); // 0x0041891C + public static byte VolatileRead(byte address); // 0x00418EB8 + public static double VolatileRead(double address); // 0x00418EBC + public static short VolatileRead(short address); // 0x00418EC0 + public static int VolatileRead(int address); // 0x00418EC4 + public static long VolatileRead(long address); // 0x00418EC8 + public static IntPtr VolatileRead(IntPtr address); // 0x00418ECC + public static object VolatileRead(object address); // 0x00418ED0 + public static sbyte VolatileRead(sbyte address); // 0x00418ED4 + public static float VolatileRead(float address); // 0x00418ED8 + public static ushort VolatileRead(ushort address); // 0x00418EDC + public static uint VolatileRead(uint address); // 0x00418EE0 + public static ulong VolatileRead(ulong address); // 0x00418EE4 + public static UIntPtr VolatileRead(UIntPtr address); // 0x00418EE8 + public static void VolatileWrite(byte address, byte value); // 0x00418EEC + public static void VolatileWrite(double address, double value); // 0x00418EF4 + public static void VolatileWrite(short address, short value); // 0x00418EF8 + public static void VolatileWrite(int address, int value); // 0x00418EFC + public static void VolatileWrite(long address, long value); // 0x00418F00 + public static void VolatileWrite(IntPtr address, IntPtr value); // 0x00418F04 + public static void VolatileWrite(object address, object value); // 0x00418F08 + public static void VolatileWrite(sbyte address, sbyte value); // 0x00418F0C + public static void VolatileWrite(float address, float value); // 0x00418F10 + public static void VolatileWrite(ushort address, ushort value); // 0x00418F14 + public static void VolatileWrite(uint address, uint value); // 0x00418F1C + public static void VolatileWrite(ulong address, ulong value); // 0x00418F20 + public static void VolatileWrite(UIntPtr address, UIntPtr value); // 0x00418F24 + private static int GetNewManagedId(); // 0x00418F28 + private static int GetNewManagedId_internal(); // 0x00418FA0 + public static void BeginCriticalRegion(); // 0x00419040 + public static void EndCriticalRegion(); // 0x004190F8 + public static void BeginThreadAffinity(); // 0x004191B0 + public static void EndThreadAffinity(); // 0x004191B4 + public ApartmentState GetApartmentState(); // 0x004191B8 + public void SetApartmentState(ApartmentState state); // 0x004191C0 + public bool TrySetApartmentState(ApartmentState state); // 0x00417D50 + public override int GetHashCode(); // 0x00419278 + public void Start(object parameter); // 0x0041927C + public CompressedStack GetCompressedStack(); // 0x0040FE30 + public void SetCompressedStack(CompressedStack stack); // 0x0041026C +} + +// Namespace: System.Threading +[Serializable] +public sealed class ThreadAbortException : SystemException // TypeDefIndex: 1584 +{ + // Methods + private void .ctor(); // 0x00419284 + private void .ctor(SerializationInfo info, StreamingContext sc); // 0x004192F8 +} + +// Namespace: System.Threading +[Serializable] +public class ThreadInterruptedException : SystemException // TypeDefIndex: 1585 +{ + // Methods + public void .ctor(); // 0x00419318 + public void .ctor(string message); // 0x00419380 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x00419388 + public void .ctor(string message, Exception innerException); // 0x004193A8 +} + +// Namespace: System.Threading +public static class ThreadPool // TypeDefIndex: 1586 +{ + // Methods + public static bool BindHandle(IntPtr osHandle); // 0x004193B0 + public static bool BindHandle(SafeHandle osHandle); // 0x004193B8 + public static void GetMaxThreads(out int workerThreads, out int completionPortThreads); // 0x00419464 + public static void GetMinThreads(out int workerThreads, out int completionPortThreads); // 0x00419468 + public static bool SetMinThreads(int workerThreads, int completionPortThreads); // 0x0041946C + public static bool SetMaxThreads(int workerThreads, int completionPortThreads); // 0x00419470 + public static bool QueueUserWorkItem(WaitCallback callBack); // 0x00419474 + public static bool QueueUserWorkItem(WaitCallback callBack, object state); // 0x0041559C + public static RegisteredWaitHandle RegisterWaitForSingleObject(WaitHandle waitObject, WaitOrTimerCallback callBack, object state, int millisecondsTimeOutInterval, bool executeOnlyOnce); // 0x004194A8 + public static RegisteredWaitHandle RegisterWaitForSingleObject(WaitHandle waitObject, WaitOrTimerCallback callBack, object state, long millisecondsTimeOutInterval, bool executeOnlyOnce); // 0x004194D0 + public static RegisteredWaitHandle RegisterWaitForSingleObject(WaitHandle waitObject, WaitOrTimerCallback callBack, object state, TimeSpan timeout, bool executeOnlyOnce); // 0x00419750 + public static RegisteredWaitHandle RegisterWaitForSingleObject(WaitHandle waitObject, WaitOrTimerCallback callBack, object state, uint millisecondsTimeOutInterval, bool executeOnlyOnce); // 0x004197B0 +} + +// Namespace: System.Threading +[Serializable] +public enum ThreadPriority // TypeDefIndex: 1587 +{ + Lowest = 0, + BelowNormal = 1, + Normal = 2, + AboveNormal = 3, + Highest = 4 +} + +// Namespace: System.Threading +[Serializable] +public sealed class ThreadStartException : SystemException // TypeDefIndex: 1588 +{ + // Methods + internal void .ctor(); // 0x00419A18 + internal void .ctor(string message); // 0x00419A80 + internal void .ctor(SerializationInfo info, StreamingContext context); // 0x00419A88 + internal void .ctor(string message, Exception innerException); // 0x00419AA8 +} + +// Namespace: System.Threading +[Serializable] +public enum ThreadState // TypeDefIndex: 1589 +{ + Running = 0, + StopRequested = 1, + SuspendRequested = 2, + Background = 4, + Unstarted = 8, + Stopped = 16, + WaitSleepJoin = 32, + Suspended = 64, + AbortRequested = 128, + Aborted = 256 +} + +// Namespace: System.Threading +[Serializable] +public class ThreadStateException : SystemException // TypeDefIndex: 1590 +{ + // Methods + public void .ctor(); // 0x00419AB0 + public void .ctor(string message); // 0x00417D44 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x00419B18 + public void .ctor(string message, Exception innerException); // 0x00419B38 +} + +// Namespace: System.Threading +public static class Timeout // TypeDefIndex: 1591 +{ + // Fields + public const int Infinite = -1; // 0x00 + +} + +// Namespace: System.Threading +public sealed class Timer : MarshalByRefObject, IDisposable // TypeDefIndex: 1592 +{ + // Fields + private const long MaxValue = 4294967294; // 0x00 + private static Scheduler scheduler; // 0x00 + private TimerCallback callback; // 0x0C + private object state; // 0x10 + private long due_time_ms; // 0x18 + private long period_ms; // 0x20 + private long next_run; // 0x28 + private bool disposed; // 0x30 + + // Methods + public void .ctor(TimerCallback callback, object state, int dueTime, int period); // 0x00419B40 + public void .ctor(TimerCallback callback, object state, long dueTime, long period); // 0x00419C80 + public void .ctor(TimerCallback callback, object state, TimeSpan dueTime, TimeSpan period); // 0x00419CD0 + public void .ctor(TimerCallback callback, object state, uint dueTime, uint period); // 0x00419D78 + public void .ctor(TimerCallback callback); // 0x00419DE4 + private static void .cctor(); // 0x00419E2C + private void Init(TimerCallback callback, object state, long dueTime, long period); // 0x00419B98 + public bool Change(int dueTime, int period); // 0x0041A21C + public bool Change(TimeSpan dueTime, TimeSpan period); // 0x0041A248 + public bool Change(uint dueTime, uint period); // 0x0041A2D8 + public void Dispose(); // 0x0041A31C + public bool Change(long dueTime, long period); // 0x0041A47C + private bool Change(long dueTime, long period, bool first); // 0x00419F34 + public bool Dispose(WaitHandle notifyObject); // 0x0041A5D0 +} + +// Namespace: +private sealed class TimerComparer : IComparer // TypeDefIndex: 1593 +{ + // Methods + public void .ctor(); // 0x0041A7DC + public int Compare(object x, object y); // 0x0041B2E0 +} + +// Namespace: +private sealed class Scheduler // TypeDefIndex: 1594 +{ + // Fields + private static Scheduler instance; // 0x00 + private SortedList list; // 0x08 + + // Properties + public static Scheduler Instance { get; } // 0x0041A854 + + // Methods + private void .ctor(); // 0x0041A6A4 + private static void .cctor(); // 0x0041A7E4 + public void Remove(Timer timer); // 0x0041A3DC + public void Change(Timer timer, long new_next_run); // 0x0041A4AC + private void Add(Timer timer); // 0x0041A95C + private int InternalRemove(Timer timer); // 0x0041A8E0 + private void SchedulerThread(); // 0x0041AB2C + private void ShrinkIfNeeded(ArrayList list, int initial); // 0x0041B23C +} + +// Namespace: System.Threading +public abstract class WaitHandle : MarshalByRefObject, IDisposable // TypeDefIndex: 1595 +{ + // Fields + public const int WaitTimeout = 258; // 0x00 + private SafeWaitHandle safe_wait_handle; // 0x0C + protected static readonly IntPtr InvalidHandle; // 0x00 + private bool disposed; // 0x10 + + // Properties + public virtual IntPtr Handle { get; set; } // 0x0041C620 0x0041C64C + public SafeWaitHandle SafeWaitHandle { get; set; } // 0x0041C824 0x0041C82C + + // Methods + protected void .ctor(); // 0x00410A2C + private static void .cctor(); // 0x0041BB4C + private void System.IDisposable.Dispose(); // 0x0041BBB8 + private static bool WaitAll_internal(WaitHandle[] handles, int ms, bool exitContext); // 0x0041BBEC + private static void CheckArray(WaitHandle[] handles, bool waitAll); // 0x0041BBF0 + public static bool WaitAll(WaitHandle[] waitHandles); // 0x0041BDE4 + public static bool WaitAll(WaitHandle[] waitHandles, int millisecondsTimeout, bool exitContext); // 0x0041BE78 + public static bool WaitAll(WaitHandle[] waitHandles, TimeSpan timeout, bool exitContext); // 0x0041C048 + private static int WaitAny_internal(WaitHandle[] handles, int ms, bool exitContext); // 0x0041C258 + public static int WaitAny(WaitHandle[] waitHandles); // 0x0041C25C + public static int WaitAny(WaitHandle[] waitHandles, int millisecondsTimeout, bool exitContext); // 0x0041C2F0 + public static int WaitAny(WaitHandle[] waitHandles, TimeSpan timeout); // 0x0041C4C0 + public static int WaitAny(WaitHandle[] waitHandles, int millisecondsTimeout); // 0x0041C560 + public static int WaitAny(WaitHandle[] waitHandles, TimeSpan timeout, bool exitContext); // 0x00415378 + public virtual void Close(); // 0x0041C5EC + private bool WaitOne_internal(IntPtr handle, int ms, bool exitContext); // 0x0041C788 + protected virtual void Dispose(bool explicitDisposing); // 0x0041C78C + public static bool SignalAndWait(WaitHandle toSignal, WaitHandle toWaitOn); // 0x0041C8F4 + public static bool SignalAndWait(WaitHandle toSignal, WaitHandle toWaitOn, int millisecondsTimeout, bool exitContext); // 0x0041C98C + public static bool SignalAndWait(WaitHandle toSignal, WaitHandle toWaitOn, TimeSpan timeout, bool exitContext); // 0x0041CB50 + private static bool SignalAndWait_Internal(IntPtr toSignal, IntPtr toWaitOn, int ms, bool exitContext); // 0x0041CB4C + public virtual bool WaitOne(); // 0x0041CCC8 + public virtual bool WaitOne(int millisecondsTimeout, bool exitContext); // 0x0041CDF4 + public virtual bool WaitOne(int millisecondsTimeout); // 0x0041CFF4 + public virtual bool WaitOne(TimeSpan timeout); // 0x0041D008 + public virtual bool WaitOne(TimeSpan timeout, bool exitContext); // 0x0041D038 + internal void CheckDisposed(); // 0x00410CB0 + public static bool WaitAll(WaitHandle[] waitHandles, int millisecondsTimeout); // 0x0041D278 + public static bool WaitAll(WaitHandle[] waitHandles, TimeSpan timeout); // 0x0041D304 + protected override void Finalize(); // 0x0041D3A4 +} + +// Namespace: System.Threading +[Serializable] +public class WaitHandleCannotBeOpenedException : ApplicationException // TypeDefIndex: 1596 +{ + // Methods + public void .ctor(); // 0x0041D41C + public void .ctor(string message); // 0x0041D490 + public void .ctor(string message, Exception innerException); // 0x0041D498 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x0041D4A0 +} + +// Namespace: System +[Serializable] +public class AccessViolationException : SystemException // TypeDefIndex: 1597 +{ + // Fields + private const int Result = -2147467261; // 0x00 + + // Methods + public void .ctor(); // 0x00269260 + public void .ctor(string message); // 0x002692E0 + public void .ctor(string message, Exception innerException); // 0x00269304 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x00269328 +} + +// Namespace: System +[Serializable] +public sealed class ActivationContext : IDisposable, ISerializable // TypeDefIndex: 1598 +{ + // Fields + private ContextForm _form; // 0x08 + private ApplicationIdentity _appid; // 0x0C + private bool _disposed; // 0x10 + + // Properties + public ContextForm Form { get; } // 0x00269438 + public ApplicationIdentity Identity { get; } // 0x00269440 + + // Methods + private void .ctor(ApplicationIdentity identity); // 0x00269348 + private void System.Runtime.Serialization.ISerializable.GetObjectData(SerializationInfo info, StreamingContext context); // 0x00269368 + protected override void Finalize(); // 0x0026940C + public static ActivationContext CreatePartialActivationContext(ApplicationIdentity identity); // 0x00269448 + public static ActivationContext CreatePartialActivationContext(ApplicationIdentity identity, string[] manifestPaths); // 0x00269518 + public void Dispose(); // 0x00269634 + private void Dispose(bool disposing); // 0x00269424 +} + +// Namespace: +public enum ContextForm // TypeDefIndex: 1599 +{ + Loose = 0, + StoreBounded = 1 +} + +// Namespace: System +public sealed class Activator : _Activator // TypeDefIndex: 1600 +{ + // Fields + private const BindingFlags _flags = 532; // 0x00 + private const BindingFlags _accessFlags = 127; // 0x00 + + // Methods + private void .ctor(); // 0x0026964C + private void System.Runtime.InteropServices._Activator.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x00269654 + private void System.Runtime.InteropServices._Activator.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x002696DC + private void System.Runtime.InteropServices._Activator.GetTypeInfoCount(out uint pcTInfo); // 0x00269764 + private void System.Runtime.InteropServices._Activator.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x002697EC + public static ObjectHandle CreateComInstanceFrom(string assemblyName, string typeName); // 0x00269874 + public static ObjectHandle CreateComInstanceFrom(string assemblyName, string typeName, byte[] hashValue, AssemblyHashAlgorithm hashAlgorithm); // 0x002699E0 + public static ObjectHandle CreateInstanceFrom(string assemblyFile, string typeName); // 0x00269B4C + public static ObjectHandle CreateInstanceFrom(string assemblyFile, string typeName, object[] activationAttributes); // 0x00269B84 + public static ObjectHandle CreateInstanceFrom(string assemblyFile, string typeName, bool ignoreCase, BindingFlags bindingAttr, Binder binder, object[] args, CultureInfo culture, object[] activationAttributes, Evidence securityInfo); // 0x00269BBC + public static ObjectHandle CreateInstance(string assemblyName, string typeName); // 0x0026A4C4 + public static ObjectHandle CreateInstance(string assemblyName, string typeName, object[] activationAttributes); // 0x0026A530 + public static ObjectHandle CreateInstance(string assemblyName, string typeName, bool ignoreCase, BindingFlags bindingAttr, Binder binder, object[] args, CultureInfo culture, object[] activationAttributes, Evidence securityInfo); // 0x0026A5C4 + public static ObjectHandle CreateInstance(ActivationContext activationContext); // 0x0026A6D0 + public static ObjectHandle CreateInstance(ActivationContext activationContext, string[] activationCustomData); // 0x0026A758 + public static ObjectHandle CreateInstanceFrom(AppDomain domain, string assemblyFile, string typeName); // 0x0026A7E0 + public static ObjectHandle CreateInstanceFrom(AppDomain domain, string assemblyFile, string typeName, bool ignoreCase, BindingFlags bindingAttr, Binder binder, object[] args, CultureInfo culture, object[] activationAttributes, Evidence securityAttributes); // 0x0026A97C + public static ObjectHandle CreateInstance(AppDomain domain, string assemblyName, string typeName); // 0x0026AB5C + public static ObjectHandle CreateInstance(AppDomain domain, string assemblyName, string typeName, bool ignoreCase, BindingFlags bindingAttr, Binder binder, object[] args, CultureInfo culture, object[] activationAttributes, Evidence securityAttributes); // 0x0026ACD0 + public static T CreateInstance(); + public static object CreateInstance(Type type); // 0x0026AEB0 + public static object CreateInstance(Type type, object[] args); // 0x0026B1CC + public static object CreateInstance(Type type, object[] args, object[] activationAttributes); // 0x0026B244 + public static object CreateInstance(Type type, BindingFlags bindingAttr, Binder binder, object[] args, CultureInfo culture); // 0x0026B360 + public static object CreateInstance(Type type, BindingFlags bindingAttr, Binder binder, object[] args, CultureInfo culture, object[] activationAttributes); // 0x00269CAC + public static object CreateInstance(Type type, bool nonPublic); // 0x0026AEB8 + private static void CheckType(Type type); // 0x0026B3F8 + private static void CheckAbstractType(Type type); // 0x0026B6D0 + public static object GetObject(Type type, string url); // 0x0026B80C + public static object GetObject(Type type, string url, object state); // 0x0026B8F4 + internal static object CreateInstanceInternal(Type type); // 0x0026B6CC +} + +// Namespace: System +public sealed class AppDomain : MarshalByRefObject // TypeDefIndex: 1601 +{ + // Fields + private IntPtr _mono_app_domain; // 0x0C + private static string _process_guid; // 0x00 + private static Hashtable type_resolve_in_progress; // 0x80000000 + private static Hashtable assembly_resolve_in_progress; // 0x80000004 + private static Hashtable assembly_resolve_in_progress_refonly; // 0x80000008 + private Evidence _evidence; // 0x10 + private PermissionSet _granted; // 0x14 + private PrincipalPolicy _principalPolicy; // 0x18 + private static IPrincipal _principal; // 0x8000000C + private static AppDomain default_domain; // 0x04 + private AppDomainManager _domain_manager; // 0x1C + private ActivationContext _activation; // 0x20 + private ApplicationIdentity _applicationIdentity; // 0x24 + private AssemblyLoadEventHandler AssemblyLoad; // 0x28 + private ResolveEventHandler AssemblyResolve; // 0x2C + private EventHandler DomainUnload; // 0x30 + private EventHandler ProcessExit; // 0x34 + private ResolveEventHandler ResourceResolve; // 0x38 + private ResolveEventHandler TypeResolve; // 0x3C + private UnhandledExceptionEventHandler UnhandledException; // 0x40 + private ResolveEventHandler ReflectionOnlyAssemblyResolve; // 0x44 + + // Properties + internal AppDomainSetup SetupInformationNoCopy { get; } // 0x0026C2F0 + public AppDomainSetup SetupInformation { get; } // 0x0026C2F4 + public string BaseDirectory { get; } // 0x0026C5D8 + public string RelativeSearchPath { get; } // 0x0026C6E8 + public string DynamicDirectory { get; } // 0x0026C7E8 + public bool ShadowCopyFiles { get; } // 0x0026CACC + public string FriendlyName { get; } // 0x0026CB84 + public Evidence Evidence { get; } // 0x0026CB88 + internal IPrincipal DefaultPrincipal { get; } // 0x0026CE14 + internal PermissionSet GrantedPermissionSet { get; } // 0x0026CFD4 + public static AppDomain CurrentDomain { get; } // 0x0026CFE0 + internal static AppDomain DefaultDomain { get; } // 0x0026CCF4 + public AppDomainManager DomainManager { get; } // 0x0027065C + public ActivationContext ActivationContext { get; } // 0x00270664 + public ApplicationIdentity ApplicationIdentity { get; } // 0x0027066C + public int Id { get; } // 0x00270674 + + // Events + public event AssemblyLoadEventHandler AssemblyLoad { + add; // 0x0026B9EC + remove; // 0x0026BA7C + } + public event ResolveEventHandler AssemblyResolve { + add; // 0x0026BB0C + remove; // 0x0026BB9C + } + public event EventHandler DomainUnload { + add; // 0x0026BC2C + remove; // 0x0026BCBC + } + public event EventHandler ProcessExit { + add; // 0x0026BD4C + remove; // 0x0026BDDC + } + public event ResolveEventHandler ResourceResolve { + add; // 0x0026BE6C + remove; // 0x0026BEFC + } + public event ResolveEventHandler TypeResolve { + add; // 0x0026BF8C + remove; // 0x0026C01C + } + public event UnhandledExceptionEventHandler UnhandledException { + add; // 0x0026C0AC + remove; // 0x0026C13C + } + public event ResolveEventHandler ReflectionOnlyAssemblyResolve { + add; // 0x0026C1CC + remove; // 0x0026C25C + } + + // Methods + private void .ctor(); // 0x0026B9E4 + private AppDomainSetup getSetup(); // 0x0026C2EC + private string getFriendlyName(); // 0x0026CB80 + private static AppDomain getCurDomain(); // 0x0026CFDC + private static AppDomain getRootDomain(); // 0x0026CFE4 + public void AppendPrivatePath(string path); // 0x0026CFE8 + public void ClearPrivatePath(); // 0x0026D210 + public void ClearShadowCopyPath(); // 0x0026D2C8 + public ObjectHandle CreateInstance(string assemblyName, string typeName); // 0x0026AC18 + public ObjectHandle CreateInstance(string assemblyName, string typeName, object[] activationAttributes); // 0x0026D378 + public ObjectHandle CreateInstance(string assemblyName, string typeName, bool ignoreCase, BindingFlags bindingAttr, Binder binder, object[] args, CultureInfo culture, object[] activationAttributes, Evidence securityAttributes); // 0x0026ADC8 + public object CreateInstanceAndUnwrap(string assemblyName, string typeName); // 0x0026D438 + public object CreateInstanceAndUnwrap(string assemblyName, string typeName, object[] activationAttributes); // 0x0026D454 + public object CreateInstanceAndUnwrap(string assemblyName, string typeName, bool ignoreCase, BindingFlags bindingAttr, Binder binder, object[] args, CultureInfo culture, object[] activationAttributes, Evidence securityAttributes); // 0x0026D478 + public ObjectHandle CreateInstanceFrom(string assemblyFile, string typeName); // 0x0026A89C + public ObjectHandle CreateInstanceFrom(string assemblyFile, string typeName, object[] activationAttributes); // 0x0026D4C8 + public ObjectHandle CreateInstanceFrom(string assemblyFile, string typeName, bool ignoreCase, BindingFlags bindingAttr, Binder binder, object[] args, CultureInfo culture, object[] activationAttributes, Evidence securityAttributes); // 0x0026AA74 + public object CreateInstanceFromAndUnwrap(string assemblyName, string typeName); // 0x0026D5AC + public object CreateInstanceFromAndUnwrap(string assemblyName, string typeName, object[] activationAttributes); // 0x0026D5C8 + public object CreateInstanceFromAndUnwrap(string assemblyName, string typeName, bool ignoreCase, BindingFlags bindingAttr, Binder binder, object[] args, CultureInfo culture, object[] activationAttributes, Evidence securityAttributes); // 0x0026D5EC + public AssemblyBuilder DefineDynamicAssembly(AssemblyName name, AssemblyBuilderAccess access); // 0x0026D63C + public AssemblyBuilder DefineDynamicAssembly(AssemblyName name, AssemblyBuilderAccess access, Evidence evidence); // 0x0026D794 + public AssemblyBuilder DefineDynamicAssembly(AssemblyName name, AssemblyBuilderAccess access, string dir); // 0x0026D7C4 + public AssemblyBuilder DefineDynamicAssembly(AssemblyName name, AssemblyBuilderAccess access, string dir, Evidence evidence); // 0x0026D7F0 + public AssemblyBuilder DefineDynamicAssembly(AssemblyName name, AssemblyBuilderAccess access, PermissionSet requiredPermissions, PermissionSet optionalPermissions, PermissionSet refusedPermissions); // 0x0026D81C + public AssemblyBuilder DefineDynamicAssembly(AssemblyName name, AssemblyBuilderAccess access, Evidence evidence, PermissionSet requiredPermissions, PermissionSet optionalPermissions, PermissionSet refusedPermissions); // 0x0026D850 + public AssemblyBuilder DefineDynamicAssembly(AssemblyName name, AssemblyBuilderAccess access, string dir, PermissionSet requiredPermissions, PermissionSet optionalPermissions, PermissionSet refusedPermissions); // 0x0026D88C + public AssemblyBuilder DefineDynamicAssembly(AssemblyName name, AssemblyBuilderAccess access, string dir, Evidence evidence, PermissionSet requiredPermissions, PermissionSet optionalPermissions, PermissionSet refusedPermissions); // 0x0026D8B8 + public AssemblyBuilder DefineDynamicAssembly(AssemblyName name, AssemblyBuilderAccess access, string dir, Evidence evidence, PermissionSet requiredPermissions, PermissionSet optionalPermissions, PermissionSet refusedPermissions, bool isSynchronized); // 0x0026D66C + public AssemblyBuilder DefineDynamicAssembly(AssemblyName name, AssemblyBuilderAccess access, string dir, Evidence evidence, PermissionSet requiredPermissions, PermissionSet optionalPermissions, PermissionSet refusedPermissions, bool isSynchronized, IEnumerable`1 assemblyAttributes); // 0x0026DA5C + public AssemblyBuilder DefineDynamicAssembly(AssemblyName name, AssemblyBuilderAccess access, IEnumerable`1 assemblyAttributes); // 0x0026DD88 + internal AssemblyBuilder DefineInternalDynamicAssembly(AssemblyName name, AssemblyBuilderAccess access); // 0x0026DDBC + public void DoCallBack(CrossAppDomainDelegate callBackDelegate); // 0x0026DE54 + public int ExecuteAssembly(string assemblyFile); // 0x0026DE68 + public int ExecuteAssembly(string assemblyFile, Evidence assemblySecurity); // 0x0026DECC + public int ExecuteAssembly(string assemblyFile, Evidence assemblySecurity, string[] args); // 0x0026DE98 + public int ExecuteAssembly(string assemblyFile, Evidence assemblySecurity, string[] args, byte[] hashValue, AssemblyHashAlgorithm hashAlgorithm); // 0x0026E048 + private int ExecuteAssemblyInternal(Assembly a, string[] args); // 0x0026DEFC + private int ExecuteAssembly(Assembly a, string[] args); // 0x0026E094 + private Assembly[] GetAssemblies(bool refOnly); // 0x0026E098 + public Assembly[] GetAssemblies(); // 0x0026E09C + public object GetData(string name); // 0x0026E0A4 + public Type GetType(); // 0x0026E0A8 + public override object InitializeLifetimeService(); // 0x0026E0B0 + internal Assembly LoadAssembly(string assemblyRef, Evidence securityEvidence, bool refOnly); // 0x0026E0B8 + public Assembly Load(AssemblyName assemblyRef); // 0x0026E0BC + internal Assembly LoadSatellite(AssemblyName assemblyRef, bool throwOnError); // 0x0026E728 + public Assembly Load(AssemblyName assemblyRef, Evidence assemblySecurity); // 0x0026E0C4 + public Assembly Load(string assemblyString); // 0x0026E854 + public Assembly Load(string assemblyString, Evidence assemblySecurity); // 0x0026E9CC + internal Assembly Load(string assemblyString, Evidence assemblySecurity, bool refonly); // 0x0026E874 + public Assembly Load(byte[] rawAssembly); // 0x0026E9E8 + public Assembly Load(byte[] rawAssembly, byte[] rawSymbolStore); // 0x0026EA30 + internal Assembly LoadAssemblyRaw(byte[] rawAssembly, byte[] rawSymbolStore, Evidence securityEvidence, bool refonly); // 0x0026EA54 + public Assembly Load(byte[] rawAssembly, byte[] rawSymbolStore, Evidence securityEvidence); // 0x0026EA10 + internal Assembly Load(byte[] rawAssembly, byte[] rawSymbolStore, Evidence securityEvidence, bool refonly); // 0x0026EA74 + public void SetAppDomainPolicy(PolicyLevel domainPolicy); // 0x0026EB6C + public void SetCachePath(string path); // 0x0026ED80 + public void SetPrincipalPolicy(PrincipalPolicy policy); // 0x0026EDAC + public void SetShadowCopyFiles(); // 0x0026EE6C + public void SetShadowCopyPath(string path); // 0x0026EEE8 + public void SetThreadPrincipal(IPrincipal principal); // 0x0026EF14 + private static AppDomain InternalSetDomainByID(int domain_id); // 0x0026F088 + private static AppDomain InternalSetDomain(AppDomain context); // 0x0026F08C + internal static void InternalPushDomainRef(AppDomain domain); // 0x0026F090 + internal static void InternalPushDomainRefByID(int domain_id); // 0x0026F094 + internal static void InternalPopDomainRef(); // 0x0026F098 + internal static Context InternalSetContext(Context context); // 0x0026F09C + internal static Context InternalGetContext(); // 0x0026F0A0 + internal static Context InternalGetDefaultContext(); // 0x0026F0A4 + internal static string InternalGetProcessGuid(string newguid); // 0x0026F0A8 + internal static object InvokeInDomain(AppDomain domain, MethodInfo method, object obj, object[] args); // 0x0026F0AC + internal static object InvokeInDomainByID(int domain_id, MethodInfo method, object obj, object[] args); // 0x0026F290 + internal static string GetProcessGuid(); // 0x0026F474 + public static AppDomain CreateDomain(string friendlyName); // 0x0026F568 + public static AppDomain CreateDomain(string friendlyName, Evidence securityInfo); // 0x0026F8C8 + private static AppDomain createDomain(string friendlyName, AppDomainSetup info); // 0x0026F8D0 + public static AppDomain CreateDomain(string friendlyName, Evidence securityInfo, AppDomainSetup info); // 0x0026F574 + public static AppDomain CreateDomain(string friendlyName, Evidence securityInfo, string appBasePath, string appRelativeSearchPath, bool shadowCopyFiles); // 0x0026FA34 + private static AppDomainSetup CreateDomainSetup(string appBasePath, string appRelativeSearchPath, bool shadowCopyFiles); // 0x0026FA6C + private static bool InternalIsFinalizingForUnload(int domain_id); // 0x0026FB54 + public bool IsFinalizingForUnload(); // 0x0026ECEC + private static void InternalUnload(int domain_id); // 0x0026FBD4 + private int getDomainID(); // 0x0026FB58 + public static void Unload(AppDomain domain); // 0x0026FBD8 + public void SetData(string name, object data); // 0x0026FC88 + public void SetData(string name, object data, IPermission permission); // 0x0026FC8C + public static int GetCurrentThreadId(); // 0x0026FD14 + public override string ToString(); // 0x0026FD90 + private static void ValidateAssemblyName(string name); // 0x0026D8E4 + private void DoAssemblyLoad(Assembly assembly); // 0x0026FD94 + private Assembly DoAssemblyResolve(string name, bool refonly); // 0x0026FE28 + internal Assembly DoTypeResolve(object name_or_tb); // 0x00270188 + private void DoDomainUnload(); // 0x002704F0 + internal void ProcessMessageInDomain(byte[] arrRequest, CADMethodCallMessage cadMsg, out byte[] arrResponse, out CADMethodReturnMessage cadMrm); // 0x0027050C + public string ApplyPolicy(string assemblyName); // 0x00270678 + public static AppDomain CreateDomain(string friendlyName, Evidence securityInfo, string appBasePath, string appRelativeSearchPath, bool shadowCopyFiles, AppDomainInitializer adInit, string[] adInitArgs); // 0x0027076C + public int ExecuteAssemblyByName(string assemblyName); // 0x002707DC + public int ExecuteAssemblyByName(string assemblyName, Evidence assemblySecurity); // 0x00270840 + public int ExecuteAssemblyByName(string assemblyName, Evidence assemblySecurity, string[] args); // 0x0027080C + public int ExecuteAssemblyByName(AssemblyName assemblyName, Evidence assemblySecurity, string[] args); // 0x00270870 + public bool IsDefaultAppDomain(); // 0x002708A4 + public Assembly[] ReflectionOnlyGetAssemblies(); // 0x002708C8 +} + +// Namespace: System +public class AppDomainManager : MarshalByRefObject // TypeDefIndex: 1602 +{ + // Fields + private ApplicationActivator _activator; // 0x0C + private AppDomainManagerInitializationOptions _flags; // 0x10 + + // Properties + public virtual ApplicationActivator ApplicationActivator { get; } // 0x00270CCC + public virtual Assembly EntryAssembly { get; } // 0x00270D4C + public virtual HostExecutionContextManager HostExecutionContextManager { get; } // 0x00270D54 + public virtual HostSecurityManager HostSecurityManager { get; } // 0x00270DDC + public AppDomainManagerInitializationOptions InitializationFlags { get; set; } // 0x00270DE4 0x00270DEC + + // Methods + public void .ctor(); // 0x00270CAC + public virtual AppDomain CreateDomain(string friendlyName, Evidence securityInfo, AppDomainSetup appDomainInfo); // 0x00270DF4 + public virtual void InitializeNewDomain(AppDomainSetup appDomainInfo); // 0x00270EEC + public virtual bool CheckSecuritySettings(SecurityState state); // 0x00270EF0 + protected static AppDomain CreateDomainHelper(string friendlyName, Evidence securityInfo, AppDomainSetup appDomainInfo); // 0x00270EE8 +} + +// Namespace: System +[Serializable] +public sealed class AppDomainSetup // TypeDefIndex: 1603 +{ + // Fields + private string application_base; // 0x08 + private string application_name; // 0x0C + private string cache_path; // 0x10 + private string configuration_file; // 0x14 + private string dynamic_base; // 0x18 + private string license_file; // 0x1C + private string private_bin_path; // 0x20 + private string private_bin_path_probe; // 0x24 + private string shadow_copy_directories; // 0x28 + private string shadow_copy_files; // 0x2C + private bool publisher_policy; // 0x30 + private bool path_changed; // 0x31 + private LoaderOptimization loader_optimization; // 0x34 + private bool disallow_binding_redirects; // 0x38 + private bool disallow_code_downloads; // 0x39 + private ActivationArguments _activationArguments; // 0x3C + private AppDomainInitializer domain_initializer; // 0x40 + [NonSerialized] private ApplicationTrust application_trust; // 0x44 + private string[] domain_initializer_args; // 0x48 + private SecurityElement application_trust_xml; // 0x4C + private bool disallow_appbase_probe; // 0x50 + private byte[] configuration_bytes; // 0x54 + + // Properties + public string ApplicationBase { get; set; } // 0x0026C6E0 0x0027119C + public string ApplicationName { get; set; } // 0x002711A4 0x002711AC + public string CachePath { get; set; } // 0x002711B4 0x002711BC + public string ConfigurationFile { get; set; } // 0x0026F8DC 0x002711C4 + public bool DisallowPublisherPolicy { get; set; } // 0x002711CC 0x002711D4 + public string DynamicBase { get; set; } // 0x0026C974 0x002711DC + public string LicenseFile { get; set; } // 0x0027130C 0x00271314 + public LoaderOptimization LoaderOptimization { get; set; } // 0x0027131C 0x00271324 + public string PrivateBinPath { get; set; } // 0x0027132C 0x0026D200 + public string PrivateBinPathProbe { get; set; } // 0x00271334 0x0027133C + public string ShadowCopyDirectories { get; set; } // 0x0027134C 0x00271354 + public string ShadowCopyFiles { get; set; } // 0x0027135C 0x00271364 + public bool DisallowBindingRedirects { get; set; } // 0x0027136C 0x00271374 + public bool DisallowCodeDownload { get; set; } // 0x0027137C 0x00271384 + public ActivationArguments ActivationArguments { get; set; } // 0x0027138C 0x00271394 + public AppDomainInitializer AppDomainInitializer { get; set; } // 0x0027139C 0x002713A4 + public string[] AppDomainInitializerArguments { get; set; } // 0x002713AC 0x002713B4 + public ApplicationTrust ApplicationTrust { get; set; } // 0x002713BC 0x00271450 + public bool DisallowApplicationBaseProbing { get; set; } // 0x002714B0 0x002714B8 + + // Methods + public void .ctor(); // 0x0026F8D4 + internal void .ctor(AppDomainSetup setup); // 0x0026C370 + public void .ctor(ActivationArguments activationArguments); // 0x00270EF8 + public void .ctor(ActivationContext activationContext); // 0x00270F18 + private static string GetAppBase(string appBase); // 0x00270F9C + public byte[] GetConfigurationBytes(); // 0x002714C0 + public void SetConfigurationBytes(byte[] value); // 0x0027153C +} + +// Namespace: System +[Serializable] +public class AppDomainUnloadedException : SystemException // TypeDefIndex: 1604 +{ + // Fields + private const int Result = -2146234348; // 0x00 + + // Methods + public void .ctor(); // 0x0026ED00 + public void .ctor(string message); // 0x00271544 + public void .ctor(string message, Exception innerException); // 0x00271568 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x0027158C +} + +// Namespace: System +[Serializable] +public class ApplicationException : Exception // TypeDefIndex: 1605 +{ + // Fields + private const int Result = -2146232832; // 0x00 + + // Methods + public void .ctor(); // 0x002715AC + public void .ctor(string message); // 0x0027162C + public void .ctor(string message, Exception innerException); // 0x00271650 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x00271674 +} + +// Namespace: System +[Serializable] +public sealed class ApplicationId // TypeDefIndex: 1606 +{ + // Fields + private byte[] _token; // 0x08 + private string _name; // 0x0C + private Version _version; // 0x10 + private string _proc; // 0x14 + private string _culture; // 0x18 + + // Properties + public string Culture { get; } // 0x0027186C + public string Name { get; } // 0x00271874 + public string ProcessorArchitecture { get; } // 0x0027187C + public byte[] PublicKeyToken { get; } // 0x00271884 + public Version Version { get; } // 0x0027193C + + // Methods + public void .ctor(byte[] publicKeyToken, string name, Version version, string processorArchitecture, string culture); // 0x00271694 + public ApplicationId Copy(); // 0x00271944 + public override bool Equals(object o); // 0x002719DC + public override int GetHashCode(); // 0x00271C78 + public override string ToString(); // 0x00271D3C +} + +// Namespace: System +[Serializable] +public sealed class ApplicationIdentity : ISerializable // TypeDefIndex: 1607 +{ + // Fields + private string _fullName; // 0x08 + private string _codeBase; // 0x0C + + // Properties + public string CodeBase { get; } // 0x00272134 + public string FullName { get; } // 0x0027213C + + // Methods + public void .ctor(string applicationIdentityFullName); // 0x00271F64 + private void System.Runtime.Serialization.ISerializable.GetObjectData(SerializationInfo info, StreamingContext context); // 0x00272090 + public override string ToString(); // 0x00272144 +} + +// Namespace: System +[Serializable] +public class ArgumentException : SystemException // TypeDefIndex: 1608 +{ + // Fields + private const int Result = -2147024809; // 0x00 + private string param_name; // 0x34 + + // Properties + public virtual string ParamName { get; } // 0x00272710 + public override string Message { get; } // 0x00272718 + + // Methods + public void .ctor(); // 0x00272590 + public void .ctor(string message); // 0x00262270 + public void .ctor(string message, Exception innerException); // 0x00272610 + public void .ctor(string message, string paramName); // 0x0026B6A0 + public void .ctor(string message, string paramName, Exception innerException); // 0x00272634 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x00272664 + public override void GetObjectData(SerializationInfo info, StreamingContext context); // 0x00272868 +} + +// Namespace: System +[Serializable] +public class ArgumentNullException : ArgumentException // TypeDefIndex: 1609 +{ + // Fields + private const int Result = -2147467261; // 0x00 + + // Methods + public void .ctor(); // 0x0027292C + public void .ctor(string paramName); // 0x00259CA0 + public void .ctor(string paramName, string message); // 0x002729AC + public void .ctor(string message, Exception innerException); // 0x002729DC + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x00272A00 +} + +// Namespace: System +[Serializable] +public class ArgumentOutOfRangeException : ArgumentException // TypeDefIndex: 1610 +{ + // Fields + private const int Result = -2146233086; // 0x00 + private object actual_value; // 0x38 + + // Properties + public virtual object ActualValue { get; } // 0x00272C50 + public override string Message { get; } // 0x00272C58 + + // Methods + public void .ctor(); // 0x00272A18 + public void .ctor(string paramName); // 0x00272A98 + public void .ctor(string paramName, string message); // 0x00272B20 + public void .ctor(string paramName, object actualValue, string message); // 0x00272B50 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x00272B88 + public void .ctor(string message, Exception innerException); // 0x00272C2C + public override void GetObjectData(SerializationInfo info, StreamingContext context); // 0x00272D14 +} + +// Namespace: System +[Serializable] +public class ArithmeticException : SystemException // TypeDefIndex: 1611 +{ + // Fields + private const int Result = -2147024362; // 0x00 + + // Methods + public void .ctor(); // 0x004EC7A4 + public void .ctor(string message); // 0x004EC824 + public void .ctor(string message, Exception innerException); // 0x004EC848 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x004EC86C +} + +// Namespace: System +[Serializable] +public struct ArraySegment`1 // TypeDefIndex: 1612 +{ + // Fields + private T[] array; // 0x00 + private int offset; // 0x00 + private int count; // 0x00 + + // Properties + public T[] Array { get; } + public int Offset { get; } + public int Count { get; } + + // Methods + public void .ctor(T[] array, int offset, int count); + public void .ctor(T[] array); + public override bool Equals(object obj); + public bool Equals(ArraySegment`1 obj); + public override int GetHashCode(); + public static bool op_Equality(ArraySegment`1 a, ArraySegment`1 b); + public static bool op_Inequality(ArraySegment`1 a, ArraySegment`1 b); +} + +// Namespace: System +[Serializable] +public class ArrayTypeMismatchException : SystemException // TypeDefIndex: 1613 +{ + // Fields + private const int Result = -2146233085; // 0x00 + + // Methods + public void .ctor(); // 0x004F3C80 + public void .ctor(string message); // 0x004F09F0 + public void .ctor(string message, Exception innerException); // 0x004F3D00 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x004F3D24 +} + +// Namespace: System +public class AssemblyLoadEventArgs : EventArgs // TypeDefIndex: 1614 +{ + // Fields + private Assembly m_loadedAssembly; // 0x08 + + // Properties + public Assembly LoadedAssembly { get; } // 0x004F3DD0 + + // Methods + public void .ctor(Assembly loadedAssembly); // 0x004F3D44 +} + +// Namespace: System +[Serializable] +public enum AttributeTargets // TypeDefIndex: 1615 +{ + Assembly = 1, + Module = 2, + Class = 4, + Struct = 8, + Enum = 16, + Constructor = 32, + Method = 64, + Property = 128, + Field = 256, + Event = 512, + Interface = 1024, + Parameter = 2048, + Delegate = 4096, + ReturnValue = 8192, + GenericParameter = 16384, + All = 32767 +} + +// Namespace: System +[Serializable] +public class BadImageFormatException : SystemException // TypeDefIndex: 1616 +{ + // Fields + private const int Result = -2147024885; // 0x00 + private string fileName; // 0x34 + private string fusionLog; // 0x38 + + // Properties + public override string Message { get; } // 0x004F5B54 + public string FileName { get; } // 0x004F5CC0 + public string FusionLog { get; } // 0x004F5CC8 + + // Methods + public void .ctor(); // 0x004F5938 + public void .ctor(string message); // 0x004F59B8 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x004F59DC + public void .ctor(string message, Exception inner); // 0x004F5AD4 + public void .ctor(string message, string fileName); // 0x004F5AF8 + public void .ctor(string message, string fileName, Exception inner); // 0x004F5B24 + public override void GetObjectData(SerializationInfo info, StreamingContext context); // 0x004F5CD0 + public override string ToString(); // 0x004F5DB4 +} + +// Namespace: System +public enum Base64FormattingOptions // TypeDefIndex: 1617 +{ + None = 0, + InsertLineBreaks = 1 +} + +// Namespace: System +public static class BitConverter // TypeDefIndex: 1618 +{ + // Fields + private static readonly bool SwappedWordsInDouble; // 0x00 + public static readonly bool IsLittleEndian; // 0x01 + + // Methods + private static void .cctor(); // 0x004F6004 + private static bool AmILittleEndian(); // 0x004F60C8 + private static bool DoubleWordsAreSwapped(); // 0x004F609C + public static long DoubleToInt64Bits(double value); // 0x004F60D0 + public static double Int64BitsToDouble(long value); // 0x004F6430 + internal static double InternalInt64BitsToDouble(long value); // 0x004F68AC + private static byte[] GetBytes(void * ptr, int count); // 0x004F6F04 + public static byte[] GetBytes(bool value); // 0x004F6FC4 + public static byte[] GetBytes(char value); // 0x004F7050 + public static byte[] GetBytes(short value); // 0x004F70DC + public static byte[] GetBytes(int value); // 0x004F7168 + public static byte[] GetBytes(long value); // 0x004F64C0 + public static byte[] GetBytes(ushort value); // 0x004F71F4 + public static byte[] GetBytes(uint value); // 0x004F7280 + public static byte[] GetBytes(ulong value); // 0x004F730C + public static byte[] GetBytes(float value); // 0x004F739C + public static byte[] GetBytes(double value); // 0x004F6160 + private static void PutBytes(void * dst, byte[] src, int start_index, int count); // 0x004F7428 + public static bool ToBoolean(byte[] value, int startIndex); // 0x004F75E0 + public static char ToChar(byte[] value, int startIndex); // 0x004F7720 + public static short ToInt16(byte[] value, int startIndex); // 0x004F77C4 + public static int ToInt32(byte[] value, int startIndex); // 0x004F7868 + public static long ToInt64(byte[] value, int startIndex); // 0x004F6384 + public static ushort ToUInt16(byte[] value, int startIndex); // 0x004F790C + public static uint ToUInt32(byte[] value, int startIndex); // 0x004F79B0 + public static ulong ToUInt64(byte[] value, int startIndex); // 0x004F7A54 + public static float ToSingle(byte[] value, int startIndex); // 0x004F7B00 + public static double ToDouble(byte[] value, int startIndex); // 0x004F6550 + internal static double SwappableToDouble(byte[] value, int startIndex); // 0x004F693C + public static string ToString(byte[] value); // 0x004F7BA4 + public static string ToString(byte[] value, int startIndex); // 0x004F807C + public static string ToString(byte[] value, int startIndex, int length); // 0x004F7C8C +} + +// Namespace: System +public static class Buffer // TypeDefIndex: 1619 +{ + // Methods + public static int ByteLength(Array array); // 0x004F9240 + public static byte GetByte(Array array, int index); // 0x004F9354 + public static void SetByte(Array array, int index, byte value); // 0x004F9444 + public static void BlockCopy(Array src, int srcOffset, Array dst, int dstOffset, int count); // 0x004F953C + private static int ByteLengthInternal(Array array); // 0x004F9350 + private static byte GetByteInternal(Array array, int index); // 0x004F9440 + private static void SetByteInternal(Array array, int index, int value); // 0x004F9538 + internal static bool BlockCopyInternal(Array src, int src_offset, Array dest, int dest_offset, int count); // 0x004F9830 +} + +// Namespace: System +[Serializable] +public class CannotUnloadAppDomainException : SystemException // TypeDefIndex: 1620 +{ + // Fields + private const int Result = -2146234347; // 0x00 + + // Methods + public void .ctor(); // 0x004FA5A4 + public void .ctor(string message); // 0x004FA624 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x004FA648 + public void .ctor(string message, Exception innerException); // 0x004FA668 +} + +// Namespace: System +[Serializable] +public sealed class CharEnumerator : IEnumerator, IDisposable, ICloneable, IEnumerator`1 // TypeDefIndex: 1621 +{ + // Fields + private string str; // 0x08 + private int index; // 0x0C + private int length; // 0x10 + + // Properties + private object System.Collections.IEnumerator.Current { get; } // 0x004FD57C + public char Current { get; } // 0x004FD5F8 + + // Methods + internal void .ctor(string s); // 0x004FD53C + private void System.IDisposable.Dispose(); // 0x004FD6E4 + public object Clone(); // 0x004FD6E8 + public bool MoveNext(); // 0x004FD774 + public void Reset(); // 0x004FD798 +} + +// Namespace: System +public static class Console // TypeDefIndex: 1622 +{ + // Fields + internal static TextWriter stdout; // 0x00 + private static TextWriter stderr; // 0x04 + private static TextReader stdin; // 0x08 + private static Encoding inputEncoding; // 0x0C + private static Encoding outputEncoding; // 0x10 + + // Properties + public static TextWriter Error { get; } // 0x00397F2C + public static TextWriter Out { get; } // 0x00397FB8 + public static TextReader In { get; } // 0x00398044 + public static Encoding InputEncoding { get; set; } // 0x0039A900 0x0039A98C + public static Encoding OutputEncoding { get; set; } // 0x0039AA2C 0x0039AAB8 + + // Methods + private static void .cctor(); // 0x00397788 + private static void SetEncodings(Encoding inputEncoding, Encoding outputEncoding); // 0x003978F8 + public static Stream OpenStandardError(); // 0x003980D0 + private static Stream Open(IntPtr handle, FileAccess access, int bufferSize); // 0x0039814C + public static Stream OpenStandardError(int bufferSize); // 0x00397CEC + public static Stream OpenStandardInput(); // 0x003982A0 + public static Stream OpenStandardInput(int bufferSize); // 0x00397E6C + public static Stream OpenStandardOutput(); // 0x0039831C + public static Stream OpenStandardOutput(int bufferSize); // 0x00397DAC + public static void SetError(TextWriter newError); // 0x00398398 + public static void SetIn(TextReader newIn); // 0x00398488 + public static void SetOut(TextWriter newOut); // 0x00398578 + public static void Write(bool value); // 0x00398668 + public static void Write(char value); // 0x00398720 + public static void Write(char[] buffer); // 0x003987D8 + public static void Write(Decimal value); // 0x00398890 + public static void Write(double value); // 0x0039896C + public static void Write(int value); // 0x00398A38 + public static void Write(long value); // 0x00398AF0 + public static void Write(object value); // 0x00398BBC + public static void Write(float value); // 0x00398C74 + public static void Write(string value); // 0x00398D2C + public static void Write(uint value); // 0x00398DE4 + public static void Write(ulong value); // 0x00398E9C + public static void Write(string format, object arg0); // 0x00398F68 + public static void Write(string format, object[] arg); // 0x00399028 + public static void Write(char[] buffer, int index, int count); // 0x003990E8 + public static void Write(string format, object arg0, object arg1); // 0x003991BC + public static void Write(string format, object arg0, object arg1, object arg2); // 0x00399290 + public static void Write(string format, object arg0, object arg1, object arg2, object arg3); // 0x0039936C + public static void WriteLine(); // 0x003996AC + public static void WriteLine(bool value); // 0x0039975C + public static void WriteLine(char value); // 0x00399814 + public static void WriteLine(char[] buffer); // 0x003998CC + public static void WriteLine(Decimal value); // 0x00399984 + public static void WriteLine(double value); // 0x00399A60 + public static void WriteLine(int value); // 0x00399B2C + public static void WriteLine(long value); // 0x00399BE4 + public static void WriteLine(object value); // 0x00399CB0 + public static void WriteLine(float value); // 0x00399D68 + public static void WriteLine(string value); // 0x00399E20 + public static void WriteLine(uint value); // 0x00399ED8 + public static void WriteLine(ulong value); // 0x00399F90 + public static void WriteLine(string format, object arg0); // 0x0039A05C + public static void WriteLine(string format, object[] arg); // 0x0039A11C + public static void WriteLine(char[] buffer, int index, int count); // 0x0039A1DC + public static void WriteLine(string format, object arg0, object arg1); // 0x0039A2B0 + public static void WriteLine(string format, object arg0, object arg1, object arg2); // 0x0039A384 + public static void WriteLine(string format, object arg0, object arg1, object arg2, object arg3); // 0x0039A460 + public static int Read(); // 0x0039A7A0 + public static string ReadLine(); // 0x0039A850 +} + +// Namespace: System +[Serializable] +public sealed class ConsoleCancelEventArgs : EventArgs // TypeDefIndex: 1623 +{ + // Fields + private bool cancel; // 0x08 + private ConsoleSpecialKey specialKey; // 0x0C + + // Properties + public bool Cancel { get; set; } // 0x0039ABE4 0x0039ABEC + public ConsoleSpecialKey SpecialKey { get; } // 0x0039ABF4 + + // Methods + internal void .ctor(ConsoleSpecialKey key); // 0x0039AB58 +} + +// Namespace: System +[Serializable] +public enum ConsoleColor // TypeDefIndex: 1624 +{ + Black = 0, + DarkBlue = 1, + DarkGreen = 2, + DarkCyan = 3, + DarkRed = 4, + DarkMagenta = 5, + DarkYellow = 6, + Gray = 7, + DarkGray = 8, + Blue = 9, + Green = 10, + Cyan = 11, + Red = 12, + Magenta = 13, + Yellow = 14, + White = 15 +} + +// Namespace: System +[Serializable] +public enum ConsoleKey // TypeDefIndex: 1625 +{ + Backspace = 8, + Tab = 9, + Clear = 12, + Enter = 13, + Pause = 19, + Escape = 27, + Spacebar = 32, + PageUp = 33, + PageDown = 34, + End = 35, + Home = 36, + LeftArrow = 37, + UpArrow = 38, + RightArrow = 39, + DownArrow = 40, + Select = 41, + Print = 42, + Execute = 43, + PrintScreen = 44, + Insert = 45, + Delete = 46, + Help = 47, + D0 = 48, + D1 = 49, + D2 = 50, + D3 = 51, + D4 = 52, + D5 = 53, + D6 = 54, + D7 = 55, + D8 = 56, + D9 = 57, + A = 65, + B = 66, + C = 67, + D = 68, + E = 69, + F = 70, + G = 71, + H = 72, + I = 73, + J = 74, + K = 75, + L = 76, + M = 77, + N = 78, + O = 79, + P = 80, + Q = 81, + R = 82, + S = 83, + T = 84, + U = 85, + V = 86, + W = 87, + X = 88, + Y = 89, + Z = 90, + LeftWindows = 91, + RightWindows = 92, + Applications = 93, + Sleep = 95, + NumPad0 = 96, + NumPad1 = 97, + NumPad2 = 98, + NumPad3 = 99, + NumPad4 = 100, + NumPad5 = 101, + NumPad6 = 102, + NumPad7 = 103, + NumPad8 = 104, + NumPad9 = 105, + Multiply = 106, + Add = 107, + Separator = 108, + Subtract = 109, + Decimal = 110, + Divide = 111, + F1 = 112, + F2 = 113, + F3 = 114, + F4 = 115, + F5 = 116, + F6 = 117, + F7 = 118, + F8 = 119, + F9 = 120, + F10 = 121, + F11 = 122, + F12 = 123, + F13 = 124, + F14 = 125, + F15 = 126, + F16 = 127, + F17 = 128, + F18 = 129, + F19 = 130, + F20 = 131, + F21 = 132, + F22 = 133, + F23 = 134, + F24 = 135, + BrowserBack = 166, + BrowserForward = 167, + BrowserRefresh = 168, + BrowserStop = 169, + BrowserSearch = 170, + BrowserFavorites = 171, + BrowserHome = 172, + VolumeMute = 173, + VolumeDown = 174, + VolumeUp = 175, + MediaNext = 176, + MediaPrevious = 177, + MediaStop = 178, + MediaPlay = 179, + LaunchMail = 180, + LaunchMediaSelect = 181, + LaunchApp1 = 182, + LaunchApp2 = 183, + Oem1 = 186, + OemPlus = 187, + OemComma = 188, + OemMinus = 189, + OemPeriod = 190, + Oem2 = 191, + Oem3 = 192, + Oem4 = 219, + Oem5 = 220, + Oem6 = 221, + Oem7 = 222, + Oem8 = 223, + Oem102 = 226, + Process = 229, + Packet = 231, + Attention = 246, + CrSel = 247, + ExSel = 248, + EraseEndOfFile = 249, + Play = 250, + Zoom = 251, + NoName = 252, + Pa1 = 253, + OemClear = 254 +} + +// Namespace: System +[Serializable] +public struct ConsoleKeyInfo // TypeDefIndex: 1626 +{ + // Fields + internal static ConsoleKeyInfo Empty; // 0x00 + private ConsoleKey key; // 0x08 + private char keychar; // 0x0C + private ConsoleModifiers modifiers; // 0x10 + + // Properties + public ConsoleKey Key { get; } // 0x000A7614 + public char KeyChar { get; } // 0x000A761C + public ConsoleModifiers Modifiers { get; } // 0x000A7624 + + // Methods + public void .ctor(char keyChar, ConsoleKey key, bool shift, bool alt, bool control); // 0x000A75BC + internal void .ctor(ConsoleKeyInfo other); // 0x000A75E4 + private static void .cctor(); // 0x0039B048 + internal void SetKey(ConsoleKey key); // 0x000A75F4 + internal void SetKeyChar(char keyChar); // 0x000A75FC + internal void SetModifiers(bool shift, bool alt, bool control); // 0x000A7604 + public override bool Equals(object value); // 0x000A762C + public bool Equals(ConsoleKeyInfo obj); // 0x000A7634 + public override int GetHashCode(); // 0x000A7674 + public static bool op_Equality(ConsoleKeyInfo a, ConsoleKeyInfo b); // 0x0039B328 + public static bool op_Inequality(ConsoleKeyInfo a, ConsoleKeyInfo b); // 0x0039B358 +} + +// Namespace: System +[Serializable] +public enum ConsoleModifiers // TypeDefIndex: 1627 +{ + Alt = 1, + Shift = 2, + Control = 4 +} + +// Namespace: System +[Serializable] +public enum ConsoleSpecialKey // TypeDefIndex: 1628 +{ + ControlC = 0, + ControlBreak = 1 +} + +// Namespace: System +[Serializable] +public abstract class ContextBoundObject : MarshalByRefObject // TypeDefIndex: 1629 +{ + // Methods + protected void .ctor(); // 0x0039B388 +} + +// Namespace: System +[Serializable] +public class ContextMarshalException : SystemException // TypeDefIndex: 1630 +{ + // Fields + private const int Result = -2146233084; // 0x00 + + // Methods + public void .ctor(); // 0x0039B390 + public void .ctor(string message); // 0x0039B410 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x0039B434 + public void .ctor(string message, Exception inner); // 0x0039B454 +} + +// Namespace: System +[Serializable] +public class ContextStaticAttribute : Attribute // TypeDefIndex: 1631 +{ + // Methods + public void .ctor(); // 0x0039B478 +} + +// Namespace: System +internal class ControlCharacters // TypeDefIndex: 1632 +{ + // Fields + public const int Intr = 0; // 0x00 + public const int Quit = 1; // 0x00 + public const int Erase = 2; // 0x00 + public const int Kill = 3; // 0x00 + public const int EOF = 4; // 0x00 + public const int Time = 5; // 0x00 + public const int Min = 6; // 0x00 + public const int SWTC = 7; // 0x00 + public const int Start = 8; // 0x00 + public const int Stop = 9; // 0x00 + public const int Susp = 10; // 0x00 + public const int EOL = 11; // 0x00 + public const int Reprint = 12; // 0x00 + public const int Discard = 13; // 0x00 + public const int WErase = 14; // 0x00 + public const int LNext = 15; // 0x00 + public const int EOL2 = 16; // 0x00 + + // Methods + public void .ctor(); // 0x0039B480 +} + +// Namespace: System +public static class Convert // TypeDefIndex: 1633 +{ + // Fields + private const int MaxBytesPerLine = 57; // 0x00 + public static readonly object DBNull; // 0x00 + private static readonly Type[] conversionTable; // 0x04 + + // Methods + private static void .cctor(); // 0x0039B488 + private static byte[] InternalFromBase64String(string str, bool allowWhitespaceOnly); // 0x0039BCCC + private static byte[] InternalFromBase64CharArray(char[] arr, int offset, int length); // 0x0039BCD0 + public static byte[] FromBase64CharArray(char[] inArray, int offset, int length); // 0x0039BCD4 + public static byte[] FromBase64String(string s); // 0x0039BEB0 + public static TypeCode GetTypeCode(object value); // 0x0039BFBC + public static bool IsDBNull(object value); // 0x0039C060 + public static int ToBase64CharArray(byte[] inArray, int offsetIn, int length, char[] outArray, int offsetOut); // 0x0039C0DC + public static string ToBase64String(byte[] inArray); // 0x0039C380 + public static string ToBase64String(byte[] inArray, int offset, int length); // 0x0039C468 + public static string ToBase64String(byte[] inArray, Base64FormattingOptions options); // 0x0039C620 + public static string ToBase64String(byte[] inArray, int offset, int length, Base64FormattingOptions options); // 0x0039C718 + public static int ToBase64CharArray(byte[] inArray, int offsetIn, int length, char[] outArray, int offsetOut, Base64FormattingOptions options); // 0x0039CC14 + private static StringBuilder ToBase64StringBuilderWithLine(byte[] inArray, int offset, int length); // 0x0039C9A4 + public static bool ToBoolean(bool value); // 0x0039CF9C + public static bool ToBoolean(byte value); // 0x0039CFA0 + public static bool ToBoolean(char value); // 0x0039CFAC + public static bool ToBoolean(DateTime value); // 0x0039D054 + public static bool ToBoolean(Decimal value); // 0x0039D0FC + public static bool ToBoolean(double value); // 0x0039D1C4 + public static bool ToBoolean(float value); // 0x0039D1DC + public static bool ToBoolean(int value); // 0x0039D1F4 + public static bool ToBoolean(long value); // 0x0039D200 + public static bool ToBoolean(sbyte value); // 0x0039D20C + public static bool ToBoolean(short value); // 0x0039D218 + public static bool ToBoolean(string value); // 0x0039D224 + public static bool ToBoolean(string value, IFormatProvider provider); // 0x0039D2B8 + public static bool ToBoolean(uint value); // 0x0039D34C + public static bool ToBoolean(ulong value); // 0x0039D358 + public static bool ToBoolean(ushort value); // 0x0039D364 + public static bool ToBoolean(object value); // 0x0039D370 + public static bool ToBoolean(object value, IFormatProvider provider); // 0x0039D404 + public static byte ToByte(bool value); // 0x0039D544 + public static byte ToByte(byte value); // 0x0039D548 + public static byte ToByte(char value); // 0x0039D54C + public static byte ToByte(DateTime value); // 0x0039D604 + public static byte ToByte(Decimal value); // 0x0039D6A0 + public static byte ToByte(double value); // 0x0039D8A8 + public static byte ToByte(float value); // 0x0039DAAC + public static byte ToByte(int value); // 0x0039DCA0 + public static byte ToByte(long value); // 0x0039DD58 + public static byte ToByte(sbyte value); // 0x0039DE18 + public static byte ToByte(short value); // 0x0039DED0 + public static byte ToByte(string value); // 0x0039DF8C + public static byte ToByte(string value, IFormatProvider provider); // 0x0039DFA0 + public static byte ToByte(string value, int fromBase); // 0x0039DFB4 + public static byte ToByte(uint value); // 0x0039E734 + public static byte ToByte(ulong value); // 0x0039E7EC + public static byte ToByte(ushort value); // 0x0039E8AC + public static byte ToByte(object value); // 0x0039E964 + public static byte ToByte(object value, IFormatProvider provider); // 0x0039E9F8 + public static char ToChar(bool value); // 0x0039EB38 + public static char ToChar(byte value); // 0x0039EBD4 + public static char ToChar(char value); // 0x0039EBD8 + public static char ToChar(DateTime value); // 0x0039EBDC + public static char ToChar(Decimal value); // 0x0039EC78 + public static char ToChar(double value); // 0x0039ED14 + public static char ToChar(int value); // 0x0039EDB0 + public static char ToChar(long value); // 0x0039EE68 + public static char ToChar(float value); // 0x0039EF28 + public static char ToChar(sbyte value); // 0x0039EFC4 + public static char ToChar(short value); // 0x0039F07C + public static char ToChar(string value); // 0x0039F134 + public static char ToChar(string value, IFormatProvider provider); // 0x0039F1B8 + public static char ToChar(uint value); // 0x0039F23C + public static char ToChar(ulong value); // 0x0039F2F4 + public static char ToChar(ushort value); // 0x0039F3B4 + public static char ToChar(object value); // 0x0039F3B8 + public static char ToChar(object value, IFormatProvider provider); // 0x0039F44C + public static DateTime ToDateTime(string value); // 0x0039F58C + public static DateTime ToDateTime(string value, IFormatProvider provider); // 0x0039F660 + public static DateTime ToDateTime(bool value); // 0x0039F73C + public static DateTime ToDateTime(byte value); // 0x0039F7D8 + public static DateTime ToDateTime(char value); // 0x0039F874 + public static DateTime ToDateTime(DateTime value); // 0x0039F910 + public static DateTime ToDateTime(Decimal value); // 0x0039F924 + public static DateTime ToDateTime(double value); // 0x0039F9C0 + public static DateTime ToDateTime(short value); // 0x0039FA5C + public static DateTime ToDateTime(int value); // 0x0039FAF8 + public static DateTime ToDateTime(long value); // 0x0039FB94 + public static DateTime ToDateTime(float value); // 0x0039FC30 + public static DateTime ToDateTime(object value); // 0x0039FCCC + public static DateTime ToDateTime(object value, IFormatProvider provider); // 0x0039FDB0 + public static DateTime ToDateTime(sbyte value); // 0x0039FF40 + public static DateTime ToDateTime(ushort value); // 0x0039FFDC + public static DateTime ToDateTime(uint value); // 0x003A0078 + public static DateTime ToDateTime(ulong value); // 0x003A0114 + public static Decimal ToDecimal(bool value); // 0x003A01B0 + public static Decimal ToDecimal(byte value); // 0x003A023C + public static Decimal ToDecimal(char value); // 0x003A02C8 + public static Decimal ToDecimal(DateTime value); // 0x003A0364 + public static Decimal ToDecimal(Decimal value); // 0x003A0400 + public static Decimal ToDecimal(double value); // 0x003A040C + public static Decimal ToDecimal(float value); // 0x003A04AC + public static Decimal ToDecimal(int value); // 0x003A0538 + public static Decimal ToDecimal(long value); // 0x003A05C4 + public static Decimal ToDecimal(sbyte value); // 0x003A0664 + public static Decimal ToDecimal(short value); // 0x003A06F0 + public static Decimal ToDecimal(string value); // 0x003A077C + public static Decimal ToDecimal(string value, IFormatProvider provider); // 0x003A082C + public static Decimal ToDecimal(uint value); // 0x003A08E4 + public static Decimal ToDecimal(ulong value); // 0x003A0970 + public static Decimal ToDecimal(ushort value); // 0x003A0A10 + public static Decimal ToDecimal(object value); // 0x003A0A9C + public static Decimal ToDecimal(object value, IFormatProvider provider); // 0x003A0B4C + public static double ToDouble(bool value); // 0x003A0CA8 + public static double ToDouble(byte value); // 0x003A0CC0 + public static double ToDouble(char value); // 0x003A0CD0 + public static double ToDouble(DateTime value); // 0x003A0D6C + public static double ToDouble(Decimal value); // 0x003A0E08 + public static double ToDouble(double value); // 0x003A0EB0 + public static double ToDouble(float value); // 0x003A0EB4 + public static double ToDouble(int value); // 0x003A0EC4 + public static double ToDouble(long value); // 0x003A0ED4 + public static double ToDouble(sbyte value); // 0x003A0EE4 + public static double ToDouble(short value); // 0x003A0EF4 + public static double ToDouble(string value); // 0x003A0F04 + public static double ToDouble(string value, IFormatProvider provider); // 0x003A0F20 + public static double ToDouble(uint value); // 0x003A0F3C + public static double ToDouble(ulong value); // 0x003A0F4C + public static double ToDouble(ushort value); // 0x003A0F5C + public static double ToDouble(object value); // 0x003A0F6C + public static double ToDouble(object value, IFormatProvider provider); // 0x003A1004 + public static short ToInt16(bool value); // 0x003A1148 + public static short ToInt16(byte value); // 0x003A114C + public static short ToInt16(char value); // 0x003A1150 + public static short ToInt16(DateTime value); // 0x003A1208 + public static short ToInt16(Decimal value); // 0x003A12A4 + public static short ToInt16(double value); // 0x003A14B0 + public static short ToInt16(float value); // 0x003A1640 + public static short ToInt16(int value); // 0x003A17BC + public static short ToInt16(long value); // 0x003A1878 + public static short ToInt16(sbyte value); // 0x003A1940 + public static short ToInt16(short value); // 0x003A1944 + public static short ToInt16(string value); // 0x003A1948 + public static short ToInt16(string value, IFormatProvider provider); // 0x003A195C + public static short ToInt16(string value, int fromBase); // 0x003A1970 + public static short ToInt16(uint value); // 0x003A1AD8 + public static short ToInt16(ulong value); // 0x003A1B90 + public static short ToInt16(ushort value); // 0x003A1C50 + public static short ToInt16(object value); // 0x003A1D08 + public static short ToInt16(object value, IFormatProvider provider); // 0x003A1D9C + public static int ToInt32(bool value); // 0x003A1EDC + public static int ToInt32(byte value); // 0x003A1EE0 + public static int ToInt32(char value); // 0x003A1EE4 + public static int ToInt32(DateTime value); // 0x003A1EE8 + public static int ToInt32(Decimal value); // 0x003A1F84 + public static int ToInt32(double value); // 0x003A2188 + public static int ToInt32(float value); // 0x003A2338 + public static int ToInt32(int value); // 0x003A24E0 + public static int ToInt32(long value); // 0x003A24E4 + public static int ToInt32(sbyte value); // 0x003A25A4 + public static int ToInt32(short value); // 0x003A25A8 + public static int ToInt32(string value); // 0x003A25AC + public static int ToInt32(string value, IFormatProvider provider); // 0x003A25C0 + public static int ToInt32(string value, int fromBase); // 0x003A25D4 + public static int ToInt32(uint value); // 0x003A2660 + public static int ToInt32(ulong value); // 0x003A2718 + public static int ToInt32(ushort value); // 0x003A27D8 + public static int ToInt32(object value); // 0x003A27DC + public static int ToInt32(object value, IFormatProvider provider); // 0x003A2870 + public static long ToInt64(bool value); // 0x003A29B0 + public static long ToInt64(byte value); // 0x003A29B8 + public static long ToInt64(char value); // 0x003A29C0 + public static long ToInt64(DateTime value); // 0x003A29C8 + public static long ToInt64(Decimal value); // 0x003A2A64 + public static long ToInt64(double value); // 0x003A2C88 + public static long ToInt64(float value); // 0x003A2E18 + public static long ToInt64(int value); // 0x003A2F94 + public static long ToInt64(long value); // 0x003A2F9C + public static long ToInt64(sbyte value); // 0x003A2FA0 + public static long ToInt64(short value); // 0x003A2FA8 + public static long ToInt64(string value); // 0x003A2FB0 + public static long ToInt64(string value, IFormatProvider provider); // 0x003A2FC8 + public static long ToInt64(string value, int fromBase); // 0x003A2FE0 + public static long ToInt64(uint value); // 0x003A3730 + public static long ToInt64(ulong value); // 0x003A3738 + public static long ToInt64(ushort value); // 0x003A37F8 + public static long ToInt64(object value); // 0x003A3800 + public static long ToInt64(object value, IFormatProvider provider); // 0x003A3898 + public static sbyte ToSByte(bool value); // 0x003A39DC + public static sbyte ToSByte(byte value); // 0x003A39E0 + public static sbyte ToSByte(char value); // 0x003A3A98 + public static sbyte ToSByte(DateTime value); // 0x003A3B50 + public static sbyte ToSByte(Decimal value); // 0x003A3BEC + public static sbyte ToSByte(double value); // 0x003A3DF0 + public static sbyte ToSByte(float value); // 0x003A3F80 + public static sbyte ToSByte(int value); // 0x003A40FC + public static sbyte ToSByte(long value); // 0x003A41B8 + public static sbyte ToSByte(sbyte value); // 0x003A4280 + public static sbyte ToSByte(short value); // 0x003A4284 + public static sbyte ToSByte(string value); // 0x003A4344 + public static sbyte ToSByte(string value, IFormatProvider provider); // 0x003A4358 + public static sbyte ToSByte(string value, int fromBase); // 0x003A4418 + public static sbyte ToSByte(uint value); // 0x003A4510 + public static sbyte ToSByte(ulong value); // 0x003A45C8 + public static sbyte ToSByte(ushort value); // 0x003A4688 + public static sbyte ToSByte(object value); // 0x003A4740 + public static sbyte ToSByte(object value, IFormatProvider provider); // 0x003A47D4 + public static float ToSingle(bool value); // 0x003A4914 + public static float ToSingle(byte value); // 0x003A4930 + public static float ToSingle(char value); // 0x003A4940 + public static float ToSingle(DateTime value); // 0x003A49DC + public static float ToSingle(Decimal value); // 0x003A4A78 + public static float ToSingle(double value); // 0x003A4B20 + public static float ToSingle(float value); // 0x003A4B30 + public static float ToSingle(int value); // 0x003A4B34 + public static float ToSingle(long value); // 0x003A4B44 + public static float ToSingle(sbyte value); // 0x003A4B54 + public static float ToSingle(short value); // 0x003A4B64 + public static float ToSingle(string value); // 0x003A4B74 + public static float ToSingle(string value, IFormatProvider provider); // 0x003A4B88 + public static float ToSingle(uint value); // 0x003A4B9C + public static float ToSingle(ulong value); // 0x003A4BB0 + public static float ToSingle(ushort value); // 0x003A4BCC + public static float ToSingle(object value); // 0x003A4BDC + public static float ToSingle(object value, IFormatProvider provider); // 0x003A4C70 + public static string ToString(bool value); // 0x003A4DB0 + public static string ToString(bool value, IFormatProvider provider); // 0x003A4DD4 + public static string ToString(byte value); // 0x003A4DF8 + public static string ToString(byte value, IFormatProvider provider); // 0x003A4E1C + public static string ToString(byte value, int toBase); // 0x003A4E40 + public static string ToString(char value); // 0x003A56F0 + public static string ToString(char value, IFormatProvider provider); // 0x003A5714 + public static string ToString(DateTime value); // 0x003A5738 + public static string ToString(DateTime value, IFormatProvider provider); // 0x003A5758 + public static string ToString(Decimal value); // 0x003A5788 + public static string ToString(Decimal value, IFormatProvider provider); // 0x003A57A8 + public static string ToString(double value); // 0x003A57D8 + public static string ToString(double value, IFormatProvider provider); // 0x003A57F8 + public static string ToString(float value); // 0x003A581C + public static string ToString(float value, IFormatProvider provider); // 0x003A5840 + public static string ToString(int value); // 0x003A5864 + public static string ToString(int value, int toBase); // 0x003A5888 + public static string ToString(int value, IFormatProvider provider); // 0x003A5A80 + public static string ToString(long value); // 0x003A5AA4 + public static string ToString(long value, int toBase); // 0x003A5AC4 + public static string ToString(long value, IFormatProvider provider); // 0x003A5CC8 + public static string ToString(object value); // 0x003A5CEC + public static string ToString(object value, IFormatProvider provider); // 0x003A5D70 + public static string ToString(sbyte value); // 0x003A5F50 + public static string ToString(sbyte value, IFormatProvider provider); // 0x003A5F74 + public static string ToString(short value); // 0x003A5F98 + public static string ToString(short value, int toBase); // 0x003A5FBC + public static string ToString(short value, IFormatProvider provider); // 0x003A61B4 + public static string ToString(string value); // 0x003A61D8 + public static string ToString(string value, IFormatProvider provider); // 0x003A61DC + public static string ToString(uint value); // 0x003A61E0 + public static string ToString(uint value, IFormatProvider provider); // 0x003A6204 + public static string ToString(ulong value); // 0x003A6228 + public static string ToString(ulong value, IFormatProvider provider); // 0x003A6248 + public static string ToString(ushort value); // 0x003A626C + public static string ToString(ushort value, IFormatProvider provider); // 0x003A6290 + public static ushort ToUInt16(bool value); // 0x003A62B4 + public static ushort ToUInt16(byte value); // 0x003A62B8 + public static ushort ToUInt16(char value); // 0x003A62BC + public static ushort ToUInt16(DateTime value); // 0x003A62C0 + public static ushort ToUInt16(Decimal value); // 0x003A635C + public static ushort ToUInt16(double value); // 0x003A6560 + public static ushort ToUInt16(float value); // 0x003A66E8 + public static ushort ToUInt16(int value); // 0x003A6860 + public static ushort ToUInt16(long value); // 0x003A6918 + public static ushort ToUInt16(sbyte value); // 0x003A69D8 + public static ushort ToUInt16(short value); // 0x003A6A90 + public static ushort ToUInt16(string value); // 0x003A6B48 + public static ushort ToUInt16(string value, IFormatProvider provider); // 0x003A6B5C + public static ushort ToUInt16(string value, int fromBase); // 0x003A6B70 + public static ushort ToUInt16(uint value); // 0x003A6C00 + public static ushort ToUInt16(ulong value); // 0x003A6CB8 + public static ushort ToUInt16(ushort value); // 0x003A6D78 + public static ushort ToUInt16(object value); // 0x003A6D7C + public static ushort ToUInt16(object value, IFormatProvider provider); // 0x003A6E10 + public static uint ToUInt32(bool value); // 0x003A6F50 + public static uint ToUInt32(byte value); // 0x003A6F54 + public static uint ToUInt32(char value); // 0x003A6F58 + public static uint ToUInt32(DateTime value); // 0x003A6F5C + public static uint ToUInt32(Decimal value); // 0x003A6FF8 + public static uint ToUInt32(double value); // 0x003A7210 + public static uint ToUInt32(float value); // 0x003A7390 + public static uint ToUInt32(int value); // 0x003A7504 + public static uint ToUInt32(long value); // 0x003A75BC + public static uint ToUInt32(sbyte value); // 0x003A7678 + public static uint ToUInt32(short value); // 0x003A7730 + public static uint ToUInt32(string value); // 0x003A77E8 + public static uint ToUInt32(string value, IFormatProvider provider); // 0x003A77FC + public static uint ToUInt32(string value, int fromBase); // 0x003A7810 + public static uint ToUInt32(uint value); // 0x003A789C + public static uint ToUInt32(ulong value); // 0x003A78A0 + public static uint ToUInt32(ushort value); // 0x003A795C + public static uint ToUInt32(object value); // 0x003A7960 + public static uint ToUInt32(object value, IFormatProvider provider); // 0x003A79F4 + public static ulong ToUInt64(bool value); // 0x003A7B34 + public static ulong ToUInt64(byte value); // 0x003A7B3C + public static ulong ToUInt64(char value); // 0x003A7B44 + public static ulong ToUInt64(DateTime value); // 0x003A7B4C + public static ulong ToUInt64(Decimal value); // 0x003A7BE8 + public static ulong ToUInt64(double value); // 0x003A7E00 + public static ulong ToUInt64(float value); // 0x003A7F80 + public static ulong ToUInt64(int value); // 0x003A80F4 + public static ulong ToUInt64(long value); // 0x003A81B0 + public static ulong ToUInt64(sbyte value); // 0x003A8270 + public static ulong ToUInt64(short value); // 0x003A8320 + public static ulong ToUInt64(string value); // 0x003A83DC + public static ulong ToUInt64(string value, IFormatProvider provider); // 0x003A83F4 + public static ulong ToUInt64(string value, int fromBase); // 0x003A840C + public static ulong ToUInt64(uint value); // 0x003A8498 + public static ulong ToUInt64(ulong value); // 0x003A84A0 + public static ulong ToUInt64(ushort value); // 0x003A84A4 + public static ulong ToUInt64(object value); // 0x003A84AC + public static ulong ToUInt64(object value, IFormatProvider provider); // 0x003A8544 + public static object ChangeType(object value, Type conversionType); // 0x003A8688 + public static object ChangeType(object value, TypeCode typeCode); // 0x003A9E0C + public static object ChangeType(object value, Type conversionType, IFormatProvider provider); // 0x003A9FDC + public static object ChangeType(object value, TypeCode typeCode, IFormatProvider provider); // 0x003AA0E0 + private static bool NotValidBase(int value); // 0x003AA1C4 + private static int ConvertFromBase(string value, int fromBase, bool unsigned); // 0x0039E08C + private static long ConvertFromBase64(string value, int fromBase, bool unsigned); // 0x003A306C + private static void EndianSwap(byte[] value); // 0x003AA1F4 + private static string ConvertToBase2(byte[] value); // 0x003A5038 + private static string ConvertToBase8(byte[] value); // 0x003A5204 + private static string ConvertToBase16(byte[] value); // 0x003A5488 + internal static object ToType(object value, Type conversionType, IFormatProvider provider, bool try_target_to_type); // 0x003A8848 +} + +// Namespace: System +[Serializable] +public sealed class DBNull : IConvertible, ISerializable // TypeDefIndex: 1634 +{ + // Fields + public static readonly DBNull Value; // 0x00 + + // Methods + private void .ctor(); // 0x004AC578 + private void .ctor(SerializationInfo info, StreamingContext context); // 0x004AC580 + private static void .cctor(); // 0x004AC618 + private bool System.IConvertible.ToBoolean(IFormatProvider provider); // 0x004AC68C + private byte System.IConvertible.ToByte(IFormatProvider provider); // 0x004AC714 + private char System.IConvertible.ToChar(IFormatProvider provider); // 0x004AC79C + private DateTime System.IConvertible.ToDateTime(IFormatProvider provider); // 0x004AC824 + private Decimal System.IConvertible.ToDecimal(IFormatProvider provider); // 0x004AC8AC + private double System.IConvertible.ToDouble(IFormatProvider provider); // 0x004AC934 + private short System.IConvertible.ToInt16(IFormatProvider provider); // 0x004AC9BC + private int System.IConvertible.ToInt32(IFormatProvider provider); // 0x004ACA44 + private long System.IConvertible.ToInt64(IFormatProvider provider); // 0x004ACACC + private sbyte System.IConvertible.ToSByte(IFormatProvider provider); // 0x004ACB54 + private float System.IConvertible.ToSingle(IFormatProvider provider); // 0x004ACBDC + private object System.IConvertible.ToType(Type targetType, IFormatProvider provider); // 0x004ACC64 + private ushort System.IConvertible.ToUInt16(IFormatProvider provider); // 0x004ACDE0 + private uint System.IConvertible.ToUInt32(IFormatProvider provider); // 0x004ACE68 + private ulong System.IConvertible.ToUInt64(IFormatProvider provider); // 0x004ACEF0 + public void GetObjectData(SerializationInfo info, StreamingContext context); // 0x004ACF78 + public TypeCode GetTypeCode(); // 0x004ACF98 + public override string ToString(); // 0x004ACFA0 + public string ToString(IFormatProvider provider); // 0x004AD02C +} + +// Namespace: System +[Serializable] +public sealed class DataMisalignedException : SystemException // TypeDefIndex: 1635 +{ + // Fields + private const int Result = -2146233023; // 0x00 + + // Methods + public void .ctor(); // 0x004AD0B8 + public void .ctor(string message); // 0x004AD138 + public void .ctor(string message, Exception innerException); // 0x004AD15C +} + +// Namespace: System +[Serializable] +public struct DateTime : IFormattable, IConvertible, IComparable, IComparable`1, IEquatable`1 // TypeDefIndex: 1636 +{ + // Fields + private const int dp400 = 146097; // 0x00 + private const int dp100 = 36524; // 0x00 + private const int dp4 = 1461; // 0x00 + private const long w32file_epoch = 504911232000000000; // 0x00 + private const long MAX_VALUE_TICKS = 3155378975999999999; // 0x00 + internal const long UnixEpoch = 621355968000000000; // 0x00 + private const long ticks18991230 = 599264352000000000; // 0x00 + private const double OAMinValue = -657435; // 0x00 + private const double OAMaxValue = 2958466; // 0x00 + private const string formatExceptionMessage = "String was not recognized as a valid DateTime."; // 0x00 + private TimeSpan ticks; // 0x08 + private DateTimeKind kind; // 0x10 + public static readonly DateTime MaxValue; // 0x00 + public static readonly DateTime MinValue; // 0x10 + private static readonly string[] ParseTimeFormats; // 0x20 + private static readonly string[] ParseYearDayMonthFormats; // 0x24 + private static readonly string[] ParseYearMonthDayFormats; // 0x28 + private static readonly string[] ParseDayMonthYearFormats; // 0x2C + private static readonly string[] ParseMonthDayYearFormats; // 0x30 + private static readonly string[] MonthDayShortFormats; // 0x34 + private static readonly string[] DayMonthShortFormats; // 0x38 + private static readonly int[] daysmonth; // 0x3C + private static readonly int[] daysmonthleap; // 0x40 + private static object to_local_time_span_object; // 0x44 + private static long last_now; // 0x48 + + // Properties + public DateTime Date { get; } // 0x000A8C28 + public int Month { get; } // 0x000A8C3C + public int Day { get; } // 0x000A8C48 + public DayOfWeek DayOfWeek { get; } // 0x000A8C54 + public int DayOfYear { get; } // 0x000A8C8C + public TimeSpan TimeOfDay { get; } // 0x000A8C98 + public int Hour { get; } // 0x000A8CC8 + public int Minute { get; } // 0x000A8CD4 + public int Second { get; } // 0x000A8CE0 + public int Millisecond { get; } // 0x000A8CEC + public static DateTime Now { get; } // 0x004AC2AC + public long Ticks { get; } // 0x000A8CF8 + public static DateTime Today { get; } // 0x004B0A58 + public static DateTime UtcNow { get; } // 0x004B0B5C + public int Year { get; } // 0x000A8D00 + public DateTimeKind Kind { get; } // 0x000A8D0C + + // Methods + public void .ctor(long ticks); // 0x000A8894 + public void .ctor(int year, int month, int day); // 0x000A88B0 + public void .ctor(int year, int month, int day, int hour, int minute, int second); // 0x000A88E0 + public void .ctor(int year, int month, int day, int hour, int minute, int second, int millisecond); // 0x000A8918 + public void .ctor(int year, int month, int day, Calendar calendar); // 0x000A8954 + public void .ctor(int year, int month, int day, int hour, int minute, int second, Calendar calendar); // 0x000A898C + public void .ctor(int year, int month, int day, int hour, int minute, int second, int millisecond, Calendar calendar); // 0x000A89D0 + internal void .ctor(bool check, TimeSpan value); // 0x000A8A10 + public void .ctor(long ticks, DateTimeKind kind); // 0x000A8A2C + public void .ctor(int year, int month, int day, int hour, int minute, int second, DateTimeKind kind); // 0x000A8A5C + public void .ctor(int year, int month, int day, int hour, int minute, int second, int millisecond, DateTimeKind kind); // 0x000A8AA8 + public void .ctor(int year, int month, int day, int hour, int minute, int second, int millisecond, Calendar calendar, DateTimeKind kind); // 0x000A8AF4 + private static void .cctor(); // 0x004ADBE8 + private bool System.IConvertible.ToBoolean(IFormatProvider provider); // 0x000A8B38 + private byte System.IConvertible.ToByte(IFormatProvider provider); // 0x000A8B48 + private char System.IConvertible.ToChar(IFormatProvider provider); // 0x000A8B58 + private DateTime System.IConvertible.ToDateTime(IFormatProvider provider); // 0x000A8B68 + private Decimal System.IConvertible.ToDecimal(IFormatProvider provider); // 0x000A8B78 + private double System.IConvertible.ToDouble(IFormatProvider provider); // 0x000A8B88 + private short System.IConvertible.ToInt16(IFormatProvider provider); // 0x000A8B98 + private int System.IConvertible.ToInt32(IFormatProvider provider); // 0x000A8BA8 + private long System.IConvertible.ToInt64(IFormatProvider provider); // 0x000A8BB8 + private sbyte System.IConvertible.ToSByte(IFormatProvider provider); // 0x000A8BC8 + private float System.IConvertible.ToSingle(IFormatProvider provider); // 0x000A8BD8 + private object System.IConvertible.ToType(Type targetType, IFormatProvider provider); // 0x000A8BE8 + private ushort System.IConvertible.ToUInt16(IFormatProvider provider); // 0x000A8BF0 + private uint System.IConvertible.ToUInt32(IFormatProvider provider); // 0x000A8C00 + private ulong System.IConvertible.ToUInt64(IFormatProvider provider); // 0x000A8C10 + private static int AbsoluteDays(int year, int month, int day); // 0x004AD57C + private int FromTicks(Which what); // 0x000A8C20 + internal static long GetTimeMonotonic(); // 0x004B0970 + internal static long GetNow(); // 0x004B0974 + public DateTime Add(TimeSpan value); // 0x000A8D14 + public DateTime AddDays(double value); // 0x000A8D54 + public DateTime AddTicks(long value); // 0x000A8D70 + public DateTime AddHours(double value); // 0x000A8D90 + public DateTime AddMilliseconds(double value); // 0x000A8DC8 + private DateTime AddRoundedMilliseconds(double ms); // 0x000A8DE4 + public DateTime AddMinutes(double value); // 0x000A8E00 + public DateTime AddMonths(int months); // 0x000A8E38 + public DateTime AddSeconds(double value); // 0x000A8E50 + public DateTime AddYears(int value); // 0x000A8E88 + public static int Compare(DateTime t1, DateTime t2); // 0x004B1320 + public int CompareTo(object value); // 0x000A8EA4 + public bool IsDaylightSavingTime(); // 0x000A8EAC + public int CompareTo(DateTime value); // 0x000A8EB4 + public bool Equals(DateTime value); // 0x000A8EDC + public long ToBinary(); // 0x000A8F04 + public static DateTime FromBinary(long dateData); // 0x004B1904 + public static DateTime SpecifyKind(DateTime value, DateTimeKind kind); // 0x004B1B24 + public static int DaysInMonth(int year, int month); // 0x004AD3A8 + public override bool Equals(object value); // 0x000A8F0C + public static bool Equals(DateTime t1, DateTime t2); // 0x004B1C3C + public static DateTime FromFileTime(long fileTime); // 0x004B1CE4 + public static DateTime FromFileTimeUtc(long fileTime); // 0x004B1DEC + public static DateTime FromOADate(double d); // 0x004B1EE0 + public string[] GetDateTimeFormats(); // 0x000A8F14 + public string[] GetDateTimeFormats(char format); // 0x000A8F1C + public string[] GetDateTimeFormats(IFormatProvider provider); // 0x000A8F24 + public string[] GetDateTimeFormats(char format, IFormatProvider provider); // 0x000A8F2C + private string[] GetDateTimeFormats(bool adjustutc, string[] patterns, DateTimeFormatInfo dfi); // 0x000A8F34 + private void CheckDateTimeKind(DateTimeKind kind); // 0x000A8F50 + public override int GetHashCode(); // 0x000A8F54 + public TypeCode GetTypeCode(); // 0x000A8F5C + public static bool IsLeapYear(int year); // 0x004B0510 + public static DateTime Parse(string s); // 0x004B299C + public static DateTime Parse(string s, IFormatProvider provider); // 0x004B2A28 + public static DateTime Parse(string s, IFormatProvider provider, DateTimeStyles styles); // 0x004B2AC4 + internal static bool CoreParse(string s, IFormatProvider provider, DateTimeStyles styles, out DateTime result, out DateTimeOffset dto, bool setExceptionOnError, Exception exception); // 0x004B2C30 + public static DateTime ParseExact(string s, string format, IFormatProvider provider); // 0x004B7078 + private static string[] YearMonthDayFormats(DateTimeFormatInfo dfi, bool setExceptionOnError, Exception exc); // 0x004B397C + private static int _ParseNumber(string s, int valuePos, int min_digits, int digits, bool leadingzero, bool sloppy_parsing, out int num_parsed); // 0x004B729C + private static int _ParseEnum(string s, int sPos, string[] values, string[] invValues, bool exact, out int num_parsed); // 0x004B748C + private static bool _ParseString(string s, int sPos, int maxlength, string value, out int num_parsed); // 0x004B78B0 + private static bool _ParseAmPm(string s, int valuePos, int num, DateTimeFormatInfo dfi, bool exact, out int num_parsed, int ampm); // 0x004B79F4 + private static bool _ParseTimeSeparator(string s, int sPos, DateTimeFormatInfo dfi, bool exact, out int num_parsed); // 0x004B7E5C + private static bool _ParseDateSeparator(string s, int sPos, DateTimeFormatInfo dfi, bool exact, out int num_parsed); // 0x004B7F74 + private static bool IsLetter(string s, int pos); // 0x004B7DA0 + private static bool _DoParse(string s, string firstPart, string secondPart, bool exact, out DateTime result, out DateTimeOffset dto, DateTimeFormatInfo dfi, DateTimeStyles style, bool firstPartIsDate, bool incompleteFormat, bool longYear); // 0x004B3E18 + public static DateTime ParseExact(string s, string format, IFormatProvider provider, DateTimeStyles style); // 0x004B7120 + public static DateTime ParseExact(string s, string[] formats, IFormatProvider provider, DateTimeStyles style); // 0x004B89BC + private static void CheckStyle(DateTimeStyles style); // 0x004B8C34 + public static bool TryParse(string s, out DateTime result); // 0x004B8D50 + public static bool TryParse(string s, IFormatProvider provider, DateTimeStyles styles, out DateTime result); // 0x004B8F00 + public static bool TryParseExact(string s, string format, IFormatProvider provider, DateTimeStyles style, out DateTime result); // 0x004B90B8 + public static bool TryParseExact(string s, string[] formats, IFormatProvider provider, DateTimeStyles style, out DateTime result); // 0x004B91DC + private static bool ParseExact(string s, string[] formats, DateTimeFormatInfo dfi, DateTimeStyles style, out DateTime ret, bool exact, bool longYear, bool setExceptionOnError, Exception exception); // 0x004B6DF4 + public TimeSpan Subtract(DateTime value); // 0x000A8F64 + public DateTime Subtract(TimeSpan value); // 0x000A8F8C + public long ToFileTime(); // 0x000A8FA8 + public long ToFileTimeUtc(); // 0x000A8FB0 + public string ToLongDateString(); // 0x000A8FB8 + public string ToLongTimeString(); // 0x000A8FC0 + public double ToOADate(); // 0x000A8FC8 + public string ToShortDateString(); // 0x000A8FD0 + public string ToShortTimeString(); // 0x000A8FD8 + public override string ToString(); // 0x000A8FE0 + public string ToString(IFormatProvider provider); // 0x000A8FE8 + public string ToString(string format); // 0x000A8FF8 + public string ToString(string format, IFormatProvider provider); // 0x000A9004 + public DateTime ToLocalTime(); // 0x000A900C + public DateTime ToUniversalTime(); // 0x000A9020 + public static DateTime op_Addition(DateTime d, TimeSpan t); // 0x004B0978 + public static bool op_Equality(DateTime d1, DateTime d2); // 0x004B9C60 + public static bool op_GreaterThan(DateTime t1, DateTime t2); // 0x004B9D08 + public static bool op_GreaterThanOrEqual(DateTime t1, DateTime t2); // 0x004B9DB0 + public static bool op_Inequality(DateTime d1, DateTime d2); // 0x004B815C + public static bool op_LessThan(DateTime t1, DateTime t2); // 0x004B9E58 + public static bool op_LessThanOrEqual(DateTime t1, DateTime t2); // 0x004B9F00 + public static TimeSpan op_Subtraction(DateTime d1, DateTime d2); // 0x004B9FA8 + public static DateTime op_Subtraction(DateTime d, TimeSpan t); // 0x004BA060 +} + +// Namespace: +private enum Which // TypeDefIndex: 1637 +{ + Day = 0, + DayYear = 1, + Month = 2, + Year = 3 +} + +// Namespace: System +[Serializable] +public enum DateTimeKind // TypeDefIndex: 1638 +{ + Unspecified = 0, + Utc = 1, + Local = 2 +} + +// Namespace: System +[Serializable] +public struct DateTimeOffset : IFormattable, IComparable, ISerializable, IComparable`1, IEquatable`1, IDeserializationCallback // TypeDefIndex: 1639 +{ + // Fields + public static readonly DateTimeOffset MaxValue; // 0x00 + public static readonly DateTimeOffset MinValue; // 0x18 + private DateTime dt; // 0x08 + private TimeSpan utc_offset; // 0x18 + + // Properties + public DateTime Date { get; } // 0x000A9470 + public DateTime DateTime { get; } // 0x000A9484 + public int Day { get; } // 0x000A9498 + public DayOfWeek DayOfWeek { get; } // 0x000A94A4 + public int DayOfYear { get; } // 0x000A94DC + public int Hour { get; } // 0x000A94E8 + public DateTime LocalDateTime { get; } // 0x000A94F4 + public int Millisecond { get; } // 0x000A9530 + public int Minute { get; } // 0x000A953C + public int Month { get; } // 0x000A9548 + public static DateTimeOffset Now { get; } // 0x004C058C + public TimeSpan Offset { get; } // 0x000A9554 + public int Second { get; } // 0x000A9560 + public long Ticks { get; } // 0x000A956C + public TimeSpan TimeOfDay { get; } // 0x000A9574 + public DateTime UtcDateTime { get; } // 0x000A95A4 + public static DateTimeOffset UtcNow { get; } // 0x004C068C + public long UtcTicks { get; } // 0x000A95B8 + public int Year { get; } // 0x000A95DC + + // Methods + public void .ctor(DateTime dateTime); // 0x000A9034 + public void .ctor(DateTime dateTime, TimeSpan offset); // 0x000A905C + public void .ctor(long ticks, TimeSpan offset); // 0x000A908C + public void .ctor(int year, int month, int day, int hour, int minute, int second, TimeSpan offset); // 0x000A90B4 + public void .ctor(int year, int month, int day, int hour, int minute, int second, int millisecond, TimeSpan offset); // 0x000A90F4 + public void .ctor(int year, int month, int day, int hour, int minute, int second, int millisecond, Calendar calendar, TimeSpan offset); // 0x000A913C + private void .ctor(SerializationInfo info, StreamingContext context); // 0x000A9184 + private static void .cctor(); // 0x004BA578 + private int System.IComparable.CompareTo(object obj); // 0x000A91A0 + private void System.Runtime.Serialization.ISerializable.GetObjectData(SerializationInfo info, StreamingContext context); // 0x000A91A8 + private void System.Runtime.Serialization.IDeserializationCallback.OnDeserialization(object sender); // 0x000A91C4 + public DateTimeOffset Add(TimeSpan timeSpan); // 0x000A91C8 + public DateTimeOffset AddDays(double days); // 0x000A91E4 + public DateTimeOffset AddHours(double hours); // 0x000A9200 + public DateTimeOffset AddMilliseconds(double milliseconds); // 0x000A921C + public DateTimeOffset AddMinutes(double minutes); // 0x000A9238 + public DateTimeOffset AddMonths(int months); // 0x000A9254 + public DateTimeOffset AddSeconds(double seconds); // 0x000A9268 + public DateTimeOffset AddTicks(long ticks); // 0x000A9284 + public DateTimeOffset AddYears(int years); // 0x000A92A0 + public static int Compare(DateTimeOffset first, DateTimeOffset second); // 0x004BAE38 + public int CompareTo(DateTimeOffset other); // 0x000A92B4 + public bool Equals(DateTimeOffset other); // 0x000A92E4 + public override bool Equals(object obj); // 0x000A9314 + public static bool Equals(DateTimeOffset first, DateTimeOffset second); // 0x004BB0D0 + public bool EqualsExact(DateTimeOffset other); // 0x000A931C + public static DateTimeOffset FromFileTime(long fileTime); // 0x004BB260 + public override int GetHashCode(); // 0x000A934C + public static DateTimeOffset Parse(string input); // 0x004BB494 + public static DateTimeOffset Parse(string input, IFormatProvider formatProvider); // 0x004BB520 + public static DateTimeOffset Parse(string input, IFormatProvider formatProvider, DateTimeStyles styles); // 0x004BB5BC + public static DateTimeOffset ParseExact(string input, string format, IFormatProvider formatProvider); // 0x004BB790 + public static DateTimeOffset ParseExact(string input, string format, IFormatProvider formatProvider, DateTimeStyles styles); // 0x004BB838 + public static DateTimeOffset ParseExact(string input, string[] formats, IFormatProvider formatProvider, DateTimeStyles styles); // 0x004BBA50 + private static bool ParseExact(string input, string[] formats, DateTimeFormatInfo dfi, DateTimeStyles styles, out DateTimeOffset ret); // 0x004BBD94 + private static bool DoParse(string input, string format, bool exact, out DateTimeOffset result, DateTimeFormatInfo dfi, DateTimeStyles styles); // 0x004BBFE0 + private static int ParseNumber(string input, int pos, int digits, bool leading_zero, bool allow_leading_white, out int result); // 0x004BDD58 + private static int ParseNumber(string input, int pos, int digits, bool leading_zero, bool allow_leading_white, out int result, out int digit_parsed); // 0x004BDF9C + private static int ParseEnum(string input, int pos, string[] enums, bool allow_leading_white, out int result); // 0x004BDE18 + private static int ParseChar(string input, int pos, char c, bool allow_leading_white, out int result); // 0x004BE178 + public TimeSpan Subtract(DateTimeOffset value); // 0x000A936C + public DateTimeOffset Subtract(TimeSpan value); // 0x000A93A8 + public long ToFileTime(); // 0x000A93C4 + public DateTimeOffset ToLocalTime(); // 0x000A93F8 + public DateTimeOffset ToOffset(TimeSpan offset); // 0x000A940C + public override string ToString(); // 0x000A9428 + public string ToString(IFormatProvider formatProvider); // 0x000A9438 + public string ToString(string format); // 0x000A9448 + public string ToString(string format, IFormatProvider formatProvider); // 0x000A9454 + public DateTimeOffset ToUniversalTime(); // 0x000A945C + public static bool TryParse(string input, out DateTimeOffset result); // 0x004BFDC4 + public static bool TryParse(string input, IFormatProvider formatProvider, DateTimeStyles styles, out DateTimeOffset result); // 0x004BFF44 + public static bool TryParseExact(string input, string format, IFormatProvider formatProvider, DateTimeStyles styles, out DateTimeOffset result); // 0x004C00D4 + public static bool TryParseExact(string input, string[] formats, IFormatProvider formatProvider, DateTimeStyles styles, out DateTimeOffset result); // 0x004C026C + public static DateTimeOffset op_Addition(DateTimeOffset dateTimeTz, TimeSpan timeSpan); // 0x004C0774 + public static bool op_Equality(DateTimeOffset left, DateTimeOffset right); // 0x004C07C0 + public static bool op_GreaterThan(DateTimeOffset left, DateTimeOffset right); // 0x004C0820 + public static bool op_GreaterThanOrEqual(DateTimeOffset left, DateTimeOffset right); // 0x004C0930 + public static DateTimeOffset op_Implicit(DateTime dateTime); // 0x004C0A40 + public static bool op_Inequality(DateTimeOffset left, DateTimeOffset right); // 0x004C0A7C + public static bool op_LessThan(DateTimeOffset left, DateTimeOffset right); // 0x004C0B8C + public static bool op_LessThanOrEqual(DateTimeOffset left, DateTimeOffset right); // 0x004C0C9C + public static TimeSpan op_Subtraction(DateTimeOffset left, DateTimeOffset right); // 0x004C0DAC + public static DateTimeOffset op_Subtraction(DateTimeOffset dateTimeTz, TimeSpan timeSpan); // 0x004C0E14 +} + +// Namespace: System +internal static class DateTimeUtils // TypeDefIndex: 1640 +{ + // Methods + public static int CountRepeat(string fmt, int p, char c); // 0x004BDCE8 + public static void ZeroPad(StringBuilder output, int digits, int len); // 0x004C0E60 + public static int ParseQuotedString(string fmt, int pos, StringBuilder output); // 0x004C0F80 + public static string GetStandardPattern(char format, DateTimeFormatInfo dfi, out bool useutc, out bool use_invariant); // 0x004B813C + public static string GetStandardPattern(char format, DateTimeFormatInfo dfi, out bool useutc, out bool use_invariant, bool date_time_offset); // 0x004BD8EC + public static string ToString(DateTime dt, string format, DateTimeFormatInfo dfi); // 0x004B2954 + public static string ToString(DateTime dt, Nullable`1 utc_offset, string format, DateTimeFormatInfo dfi); // 0x004BEB7C +} + +// Namespace: System +[Serializable] +public enum DayOfWeek // TypeDefIndex: 1641 +{ + Sunday = 0, + Monday = 1, + Tuesday = 2, + Wednesday = 3, + Thursday = 4, + Friday = 5, + Saturday = 6 +} + +// Namespace: System +internal class DelegateData // TypeDefIndex: 1642 +{ + // Fields + public Type target_type; // 0x08 + public string method_name; // 0x0C + + // Methods + public void .ctor(); // 0x004C84B0 +} + +// Namespace: System +[Serializable] +internal class DelegateSerializationHolder : ISerializable, IObjectReference // TypeDefIndex: 1643 +{ + // Fields + private Delegate _delegate; // 0x08 + + // Methods + private void .ctor(SerializationInfo info, StreamingContext ctx); // 0x004CA538 + public static void GetDelegateData(Delegate instance, SerializationInfo info, StreamingContext ctx); // 0x004C9E4C + public void GetObjectData(SerializationInfo info, StreamingContext context); // 0x004CAC7C + public object GetRealObject(StreamingContext context); // 0x004CAD04 +} + +// Namespace: +[Serializable] +private class DelegateEntry // TypeDefIndex: 1644 +{ + // Fields + private string type; // 0x08 + private string assembly; // 0x0C + public object target; // 0x10 + private string targetTypeAssembly; // 0x14 + private string targetTypeName; // 0x18 + private string methodName; // 0x1C + public DelegateEntry delegateEntry; // 0x20 + + // Methods + public void .ctor(Delegate del, string targetLabel); // 0x004CAA5C + public Delegate DeserializeDelegate(SerializationInfo info); // 0x004CA79C +} + +// Namespace: System +[Serializable] +public class DivideByZeroException : ArithmeticException // TypeDefIndex: 1645 +{ + // Fields + private const int Result = -2147352558; // 0x00 + + // Methods + public void .ctor(); // 0x002D5BC8 + public void .ctor(string message); // 0x002D5C48 + public void .ctor(string message, Exception innerException); // 0x002D5C6C + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x002D5C90 +} + +// Namespace: System +[Serializable] +public class DllNotFoundException : TypeLoadException // TypeDefIndex: 1646 +{ + // Fields + private const int Result = -2146233052; // 0x00 + + // Methods + public void .ctor(); // 0x002D5CB0 + public void .ctor(string message); // 0x002D5D30 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x002D5D54 + public void .ctor(string message, Exception inner); // 0x002D5D74 +} + +// Namespace: System +public enum AppDomainManagerInitializationOptions // TypeDefIndex: 1647 +{ + None = 0, + RegisterWithHost = 1 +} + +// Namespace: System +[Serializable] +public class DuplicateWaitObjectException : ArgumentException // TypeDefIndex: 1648 +{ + // Fields + private const int Result = -2146233047; // 0x00 + + // Methods + public void .ctor(); // 0x002D84B8 + public void .ctor(string parameterName); // 0x002D8538 + public void .ctor(string parameterName, string message); // 0x002D85C0 + public void .ctor(string message, Exception innerException); // 0x002D85F0 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x002D8614 +} + +// Namespace: System +[Serializable] +public class EntryPointNotFoundException : TypeLoadException // TypeDefIndex: 1649 +{ + // Fields + private const int Result = -2146233053; // 0x00 + + // Methods + public void .ctor(); // 0x002D8634 + public void .ctor(string message); // 0x002D86B4 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x002D86D8 + public void .ctor(string message, Exception inner); // 0x002D86F8 +} + +// Namespace: System +internal struct MonoEnumInfo // TypeDefIndex: 1650 +{ + // Fields + internal Type utype; // 0x08 + internal Array values; // 0x0C + internal string[] names; // 0x10 + internal Hashtable name_hash; // 0x14 + private static Hashtable cache; // 0x80000000 + private static Hashtable global_cache; // 0x00 + private static object global_cache_monitor; // 0x04 + internal static SByteComparer sbyte_comparer; // 0x08 + internal static ShortComparer short_comparer; // 0x0C + internal static IntComparer int_comparer; // 0x10 + internal static LongComparer long_comparer; // 0x14 + + // Properties + private static Hashtable Cache { get; } // 0x001E4834 + + // Methods + private void .ctor(MonoEnumInfo other); // 0x0008BA90 + private static void .cctor(); // 0x001E46B4 + private static void get_enum_info(Type enumType, out MonoEnumInfo info); // 0x001E4830 + internal static void GetInfo(Type enumType, out MonoEnumInfo info); // 0x001E4970 +} + +// Namespace: +internal class SByteComparer : IComparer`1, IComparer // TypeDefIndex: 1651 +{ + // Methods + public void .ctor(); // 0x001E4810 + public int Compare(object x, object y); // 0x001E54DC + public int Compare(sbyte ix, sbyte iy); // 0x001E55D0 +} + +// Namespace: +internal class ShortComparer : IComparer`1, IComparer // TypeDefIndex: 1652 +{ + // Methods + public void .ctor(); // 0x001E4818 + public int Compare(object x, object y); // 0x001E55E0 + public int Compare(short ix, short iy); // 0x001E56D4 +} + +// Namespace: +internal class IntComparer : IComparer`1, IComparer // TypeDefIndex: 1653 +{ + // Methods + public void .ctor(); // 0x001E4820 + public int Compare(object x, object y); // 0x001E5268 + public int Compare(int ix, int iy); // 0x001E5370 +} + +// Namespace: +internal class LongComparer : IComparer`1, IComparer // TypeDefIndex: 1654 +{ + // Methods + public void .ctor(); // 0x001E4828 + public int Compare(object x, object y); // 0x001E5388 + public int Compare(long ix, long iy); // 0x001E54A4 +} + +// Namespace: System +public static class Environment // TypeDefIndex: 1655 +{ + // Fields + private const int mono_corlib_version = 82; // 0x00 + private static OperatingSystem os; // 0x00 + + // Properties + public static string CommandLine { get; } // 0x002DDCE8 + public static string CurrentDirectory { get; set; } // 0x002DDD84 0x002DDD8C + public static int ExitCode { get; set; } // 0x002DDD94 0x002DDD98 + public static bool HasShutdownStarted { get; } // 0x002DDD9C + public static string EmbeddingHostName { get; } // 0x002DDDA0 + public static bool SocketSecurityEnabled { get; } // 0x002DDDA4 + public static bool UnityWebSecurityEnabled { get; } // 0x002DDDA8 + public static string MachineName { get; } // 0x002DDDAC + public static string NewLine { get; } // 0x002D5AC4 + internal static PlatformID Platform { get; } // 0x002DDDB0 + public static OperatingSystem OSVersion { get; } // 0x002DDDB8 + public static string StackTrace { get; } // 0x002DDE84 + public static int TickCount { get; } // 0x002DDF20 + public static string UserDomainName { get; } // 0x002DDF24 + public static bool UserInteractive { get; } // 0x002DDF28 + public static string UserName { get; } // 0x002DDF30 + public static Version Version { get; } // 0x002DDF34 + public static long WorkingSet { get; } // 0x002DDFB4 + public static int ProcessorCount { get; } // 0x002E03DC + internal static bool IsRunningOnWindows { get; } // 0x002DE330 + + // Methods + internal static string GetOSVersionString(); // 0x002DDDB4 + public static void Exit(int exitCode); // 0x002DDFC0 + public static string ExpandEnvironmentVariables(string name); // 0x002DDFC4 + public static string[] GetCommandLineArgs(); // 0x002DDD80 + internal static string internalGetEnvironmentVariable(string variable); // 0x002DE534 + public static string GetEnvironmentVariable(string variable); // 0x002DE32C + private static Hashtable GetEnvironmentVariablesNoCase(); // 0x002DE350 + public static IDictionary GetEnvironmentVariables(); // 0x002DE53C + private static string GetWindowsFolderPath(int folder); // 0x002DE638 + public static string GetFolderPath(SpecialFolder folder); // 0x002DE63C + private static string ReadXdgUserDir(string config_dir, string home_dir, string key, string fallback); // 0x002DEA98 + internal static string InternalGetFolderPath(SpecialFolder folder); // 0x002DE66C + public static string[] GetLogicalDrives(); // 0x002DF09C + private static void internalBroadcastSettingChange(); // 0x002DF0A4 + public static string GetEnvironmentVariable(string variable, EnvironmentVariableTarget target); // 0x002DF0A8 + public static IDictionary GetEnvironmentVariables(EnvironmentVariableTarget target); // 0x002DF594 + public static void SetEnvironmentVariable(string variable, string value); // 0x002DFC94 + public static void SetEnvironmentVariable(string variable, string value, EnvironmentVariableTarget target); // 0x002DFC9C + internal static void InternalSetEnvironmentVariable(string variable, string value); // 0x002E0350 + public static void FailFast(string message); // 0x002E0354 + private static string[] GetLogicalDrivesInternal(); // 0x002DF0A0 + private static string[] GetEnvironmentVariableNames(); // 0x002DE538 + internal static string GetMachineConfigPath(); // 0x002E03E0 + internal static string internalGetHome(); // 0x002DF098 +} + +// Namespace: +public enum SpecialFolder // TypeDefIndex: 1656 +{ + Desktop = 0, + Programs = 2, + MyDocuments = 5, + Personal = 5, + Favorites = 6, + Startup = 7, + Recent = 8, + SendTo = 9, + StartMenu = 11, + MyMusic = 13, + DesktopDirectory = 16, + MyComputer = 17, + Templates = 21, + ApplicationData = 26, + LocalApplicationData = 28, + InternetCache = 32, + Cookies = 33, + History = 34, + CommonApplicationData = 35, + System = 37, + ProgramFiles = 38, + MyPictures = 39, + CommonProgramFiles = 43 +} + +// Namespace: System +public enum EnvironmentVariableTarget // TypeDefIndex: 1657 +{ + Process = 0, + User = 1, + Machine = 2 +} + +// Namespace: System +[Serializable] +public class EventArgs // TypeDefIndex: 1658 +{ + // Fields + public static readonly EventArgs Empty; // 0x00 + + // Methods + public void .ctor(); // 0x002E03E4 + private static void .cctor(); // 0x002E03EC +} + +// Namespace: System +[Serializable] +public sealed class ExecutionEngineException : SystemException // TypeDefIndex: 1659 +{ + // Methods + public void .ctor(); // 0x002E2284 + public void .ctor(string message); // 0x002E22F8 + public void .ctor(string message, Exception innerException); // 0x002E2300 + internal void .ctor(SerializationInfo info, StreamingContext context); // 0x002E2308 +} + +// Namespace: System +[Serializable] +public class FieldAccessException : MemberAccessException // TypeDefIndex: 1660 +{ + // Fields + private const int Result = -2146233081; // 0x00 + + // Methods + public void .ctor(); // 0x002E2328 + public void .ctor(string message); // 0x002E23A8 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x002E23CC + public void .ctor(string message, Exception inner); // 0x002E23EC +} + +// Namespace: System +[Serializable] +public class FlagsAttribute : Attribute // TypeDefIndex: 1661 +{ + // Methods + public void .ctor(); // 0x002E2410 +} + +// Namespace: System +[Serializable] +public class FormatException : SystemException // TypeDefIndex: 1662 +{ + // Fields + private const int Result = -2146233033; // 0x00 + + // Methods + public void .ctor(); // 0x002D807C + public void .ctor(string message); // 0x002D8208 + public void .ctor(string message, Exception innerException); // 0x002E2418 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x002E243C +} + +// Namespace: System +public static class GC // TypeDefIndex: 1663 +{ + // Properties + public static int MaxGeneration { get; } // 0x002E245C + + // Methods + private static void InternalCollect(int generation); // 0x002E2460 + public static void Collect(); // 0x002E2464 + public static void Collect(int generation); // 0x002E2478 + public static void Collect(int generation, GCCollectionMode mode); // 0x002E252C + public static int GetGeneration(object obj); // 0x002E2530 + public static int GetGeneration(WeakReference wo); // 0x002E2534 + public static long GetTotalMemory(bool forceFullCollection); // 0x002E25F4 + public static void KeepAlive(object obj); // 0x002E25F8 + public static void ReRegisterForFinalize(object obj); // 0x002E25FC + public static void SuppressFinalize(object obj); // 0x002E2600 + public static void WaitForPendingFinalizers(); // 0x002E2604 + public static int CollectionCount(int generation); // 0x002E2608 + private static void RecordPressure(long bytesAllocated); // 0x002E260C + public static void AddMemoryPressure(long bytesAllocated); // 0x002E2610 + public static void RemoveMemoryPressure(long bytesAllocated); // 0x002E2614 +} + +// Namespace: System +[Serializable] +public enum GCCollectionMode // TypeDefIndex: 1664 +{ + Default = 0, + Forced = 1, + Optimized = 2 +} + +// Namespace: System +public enum GCNotificationStatus // TypeDefIndex: 1665 +{ + Succeeded = 0, + Failed = 1, + Canceled = 2, + Timeout = 3, + NotApplicable = 4 +} + +// Namespace: System +[Serializable] +public struct Guid : IFormattable, IComparable, IComparable`1, IEquatable`1 // TypeDefIndex: 1666 +{ + // Fields + private int _a; // 0x08 + private short _b; // 0x0C + private short _c; // 0x0E + private byte _d; // 0x10 + private byte _e; // 0x11 + private byte _f; // 0x12 + private byte _g; // 0x13 + private byte _h; // 0x14 + private byte _i; // 0x15 + private byte _j; // 0x16 + private byte _k; // 0x17 + public static readonly Guid Empty; // 0x00 + private static object _rngAccess; // 0x10 + private static RandomNumberGenerator _rng; // 0x14 + private static RandomNumberGenerator _fastRng; // 0x18 + + // Methods + public void .ctor(byte[] b); // 0x000A82C0 + public void .ctor(string g); // 0x000A82C8 + public void .ctor(int a, short b, short c, byte[] d); // 0x000A82D0 + public void .ctor(int a, short b, short c, byte d, byte e, byte f, byte g, byte h, byte i, byte j, byte k); // 0x000A82F4 + public void .ctor(uint a, ushort b, ushort c, byte d, byte e, byte f, byte g, byte h, byte i, byte j, byte k); // 0x000A834C + private static void .cctor(); // 0x0048084C + private static void CheckNull(object o); // 0x00480384 + private static void CheckLength(byte[] o, int l); // 0x00480978 + private static void CheckArray(byte[] o, int l); // 0x004801F8 + private static int Compare(int x, int y); // 0x00480AAC + public int CompareTo(object value); // 0x000A83A4 + public override bool Equals(object o); // 0x000A83AC + public int CompareTo(Guid value); // 0x000A83B4 + public bool Equals(Guid g); // 0x000A83D8 + public override int GetHashCode(); // 0x000A840C + private static char ToHex(int b); // 0x0048100C + public static Guid NewGuid(); // 0x00481024 + internal static byte[] FastNewGuidArray(); // 0x00481274 + public byte[] ToByteArray(); // 0x000A8414 + private static void AppendInt(StringBuilder builder, int value); // 0x00481904 + private static void AppendShort(StringBuilder builder, short value); // 0x00481B1C + private static void AppendByte(StringBuilder builder, byte value); // 0x00481C68 + private string BaseToString(bool h, bool p, bool b); // 0x000A841C + public override string ToString(); // 0x000A8438 + public string ToString(string format); // 0x000A8460 + public string ToString(string format, IFormatProvider provider); // 0x000A8468 + public static bool op_Equality(Guid a, Guid b); // 0x00482380 + public static bool op_Inequality(Guid a, Guid b); // 0x004823DC +} + +// Namespace: +internal class GuidParser // TypeDefIndex: 1667 +{ + // Fields + private string _src; // 0x08 + private int _length; // 0x0C + private int _cur; // 0x10 + + // Methods + public void .ctor(string src); // 0x00480438 + private void Reset(); // 0x00482430 + private bool AtEnd(); // 0x00482464 + private void ThrowFormatException(); // 0x0048247C + private ulong ParseHex(int length, bool strictLength); // 0x00482524 + private bool ParseOptChar(char c); // 0x004826A0 + private void ParseChar(char c); // 0x00482708 + private Guid ParseGuid1(); // 0x00482724 + private void ParseHexPrefix(); // 0x004829B0 + private Guid ParseGuid2(); // 0x004829E8 + public Guid Parse(); // 0x00480478 +} + +// Namespace: System +public interface IAppDomainSetup // TypeDefIndex: 1668 +{ + // Properties + string ApplicationBase { get; set; } + string ApplicationName { get; set; } + string CachePath { get; set; } + string ConfigurationFile { get; set; } + string DynamicBase { get; set; } + string LicenseFile { get; set; } + string PrivateBinPath { get; set; } + string PrivateBinPathProbe { get; set; } + string ShadowCopyDirectories { get; set; } + string ShadowCopyFiles { get; set; } + +} + +// Namespace: System +internal interface IConsoleDriver // TypeDefIndex: 1669 +{ + // Properties + ConsoleColor BackgroundColor { get; set; } + int BufferHeight { get; set; } + int BufferWidth { get; set; } + bool CapsLock { get; } + int CursorLeft { get; set; } + int CursorSize { get; set; } + int CursorTop { get; set; } + bool CursorVisible { get; set; } + ConsoleColor ForegroundColor { get; set; } + bool KeyAvailable { get; } + bool Initialized { get; } + int LargestWindowHeight { get; } + int LargestWindowWidth { get; } + bool NumberLock { get; } + string Title { get; set; } + bool TreatControlCAsInput { get; set; } + int WindowHeight { get; set; } + int WindowLeft { get; set; } + int WindowTop { get; set; } + int WindowWidth { get; set; } + + // Methods + void Init(); + void Beep(int frequency, int duration); + void Clear(); + void MoveBufferArea(int sourceLeft, int sourceTop, int sourceWidth, int sourceHeight, int targetLeft, int targetTop, char sourceChar, ConsoleColor sourceForeColor, ConsoleColor sourceBackColor); + ConsoleKeyInfo ReadKey(bool intercept); + void ResetColor(); + void SetBufferSize(int width, int height); + void SetCursorPosition(int left, int top); + void SetWindowPosition(int left, int top); + void SetWindowSize(int width, int height); + string ReadLine(); +} + +// Namespace: System +public interface ICustomFormatter // TypeDefIndex: 1670 +{ + // Methods + string Format(string format, object arg, IFormatProvider formatProvider); +} + +// Namespace: System +public interface IFormatProvider // TypeDefIndex: 1671 +{ + // Methods + object GetFormat(Type formatType); +} + +// Namespace: System +public interface IServiceProvider // TypeDefIndex: 1672 +{ + // Methods + object GetService(Type serviceType); +} + +// Namespace: System +[Serializable] +public sealed class IndexOutOfRangeException : SystemException // TypeDefIndex: 1673 +{ + // Methods + public void .ctor(); // 0x001D6CA4 + public void .ctor(string message); // 0x001D5CDC + public void .ctor(string message, Exception innerException); // 0x001D6D18 + internal void .ctor(SerializationInfo info, StreamingContext context); // 0x001D6D20 +} + +// Namespace: System +[Serializable] +public sealed class InsufficientMemoryException : OutOfMemoryException // TypeDefIndex: 1674 +{ + // Methods + public void .ctor(); // 0x001D6D40 + public void .ctor(string message); // 0x001D6DA8 + public void .ctor(string message, Exception innerException); // 0x001D6DB0 +} + +// Namespace: System +[Serializable] +public class InvalidCastException : SystemException // TypeDefIndex: 1675 +{ + // Fields + private const int Result = -2147467262; // 0x00 + + // Methods + public void .ctor(); // 0x001DDAB4 + public void .ctor(string message); // 0x001DDB34 + public void .ctor(string message, Exception innerException); // 0x001DDB58 + public void .ctor(string message, int errorCode); // 0x001DDB7C + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x001DDB9C +} + +// Namespace: System +[Serializable] +public class InvalidOperationException : SystemException // TypeDefIndex: 1676 +{ + // Fields + private const int Result = -2146233079; // 0x00 + + // Methods + public void .ctor(); // 0x001DDBBC + public void .ctor(string message); // 0x001DDC3C + public void .ctor(string message, Exception innerException); // 0x001DDC60 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x001DDC84 +} + +// Namespace: System +[Serializable] +public sealed class InvalidProgramException : SystemException // TypeDefIndex: 1677 +{ + // Methods + public void .ctor(); // 0x001DDCA4 + public void .ctor(string message); // 0x001DDD18 + public void .ctor(string message, Exception inner); // 0x001DDD20 + internal void .ctor(SerializationInfo info, StreamingContext context); // 0x001DDD28 +} + +// Namespace: System +internal static class KnownTerminals // TypeDefIndex: 1678 +{ + // Properties + public static byte[] linux { get; } // 0x001DDD48 + public static byte[] xterm { get; } // 0x001DDDCC + public static byte[] ansi { get; } // 0x001DDE50 + +} + +// Namespace: System +[Serializable] +public enum LoaderOptimization // TypeDefIndex: 1679 +{ + NotSpecified = 0, + SingleDomain = 1, + MultiDomain = 2, + MultiDomainHost = 3, + DomainMask = 3, + DisallowBindings = 4 +} + +// Namespace: System +public sealed class LoaderOptimizationAttribute : Attribute // TypeDefIndex: 1680 +{ + // Fields + private LoaderOptimization lo; // 0x08 + + // Properties + public LoaderOptimization Value { get; } // 0x001DDF14 + + // Methods + public void .ctor(byte value); // 0x001DDED4 + public void .ctor(LoaderOptimization value); // 0x001DDEF4 +} + +// Namespace: System +public sealed class LocalDataStoreSlot // TypeDefIndex: 1681 +{ + // Fields + internal int slot; // 0x08 + internal bool thread_local; // 0x0C + private static object lock_obj; // 0x00 + private static bool[] slot_bitmap_thread; // 0x04 + private static bool[] slot_bitmap_context; // 0x08 + + // Methods + internal void .ctor(bool in_thread); // 0x001DDF1C + private static void .cctor(); // 0x001DE260 + protected override void Finalize(); // 0x001DE2E0 +} + +// Namespace: System +public sealed class MTAThreadAttribute : Attribute // TypeDefIndex: 1682 +{ + // Methods + public void .ctor(); // 0x001DE5D4 +} + +// Namespace: System +public static class Math // TypeDefIndex: 1683 +{ + // Fields + public const double E = 2.718281828459045; // 0x00 + public const double PI = 3.141592653589793; // 0x00 + + // Methods + public static Decimal Abs(Decimal value); // 0x001DE938 + public static double Abs(double value); // 0x001DEA7C + public static float Abs(float value); // 0x001DEA9C + public static int Abs(int value); // 0x001DEAB8 + public static long Abs(long value); // 0x001DEB7C + public static sbyte Abs(sbyte value); // 0x001DEC4C + public static short Abs(short value); // 0x001DED10 + public static Decimal Ceiling(Decimal d); // 0x001DEDD4 + public static double Ceiling(double a); // 0x001DEFD0 + public static long BigMul(int a, int b); // 0x001DF008 + public static int DivRem(int a, int b, out int result); // 0x001DF010 + public static long DivRem(long a, long b, out long result); // 0x001DF028 + public static double Floor(double d); // 0x001DF048 + public static double IEEERemainder(double x, double y); // 0x001DF050 + public static double Log(double a, double newBase); // 0x001DF1D0 + public static byte Max(byte val1, byte val2); // 0x001DF21C + public static Decimal Max(Decimal val1, Decimal val2); // 0x001DF228 + public static double Max(double val1, double val2); // 0x001DF338 + public static float Max(float val1, float val2); // 0x001DF3B8 + public static int Max(int val1, int val2); // 0x001CE9B8 + public static long Max(long val1, long val2); // 0x001DF420 + public static sbyte Max(sbyte val1, sbyte val2); // 0x001DF448 + public static short Max(short val1, short val2); // 0x001DF454 + public static uint Max(uint val1, uint val2); // 0x001DF460 + public static ulong Max(ulong val1, ulong val2); // 0x001DF46C + public static ushort Max(ushort val1, ushort val2); // 0x001DF494 + public static byte Min(byte val1, byte val2); // 0x001DF4A0 + public static Decimal Min(Decimal val1, Decimal val2); // 0x001DF4AC + public static double Min(double val1, double val2); // 0x001DF5C0 + public static float Min(float val1, float val2); // 0x001DF640 + public static int Min(int val1, int val2); // 0x001DF6A8 + public static long Min(long val1, long val2); // 0x001DF6B4 + public static sbyte Min(sbyte val1, sbyte val2); // 0x001DF6DC + public static short Min(short val1, short val2); // 0x001DF6E8 + public static uint Min(uint val1, uint val2); // 0x001DF6F4 + public static ulong Min(ulong val1, ulong val2); // 0x001DF700 + public static ushort Min(ushort val1, ushort val2); // 0x001DF728 + public static Decimal Round(Decimal d); // 0x001DF734 + public static Decimal Round(Decimal d, int decimals); // 0x001DFB60 + public static Decimal Round(Decimal d, MidpointRounding mode); // 0x001DFC14 + private static Decimal RoundAwayFromZero(Decimal d); // 0x001DFDA0 + public static Decimal Round(Decimal d, int decimals, MidpointRounding mode); // 0x001E0188 + public static double Round(double a); // 0x001E0244 + public static double Round(double value, int digits); // 0x001E02F4 + private static double Round2(double value, int digits, bool away_from_zero); // 0x001E0480 + public static double Round(double value, MidpointRounding mode); // 0x001E0484 + public static double Round(double value, int digits, MidpointRounding mode); // 0x001E06AC + public static double Truncate(double d); // 0x001E0830 + public static Decimal Truncate(Decimal d); // 0x001E0878 + public static Decimal Floor(Decimal d); // 0x001DEF20 + public static int Sign(Decimal value); // 0x001E0928 + public static int Sign(double value); // 0x001E0A78 + public static int Sign(float value); // 0x001E0B6C + public static int Sign(int value); // 0x001E0C58 + public static int Sign(long value); // 0x001E0C6C + public static int Sign(sbyte value); // 0x001E0C88 + public static int Sign(short value); // 0x001E0C9C + public static double Sin(double a); // 0x001E0CB0 + public static double Cos(double d); // 0x001E0CB4 + public static double Tan(double a); // 0x001E0CB8 + public static double Sinh(double value); // 0x001E0CBC + public static double Cosh(double value); // 0x001E0CC0 + public static double Tanh(double value); // 0x001E0CC4 + public static double Acos(double d); // 0x001E0CC8 + public static double Asin(double d); // 0x001E0CCC + public static double Atan(double d); // 0x001E0CD0 + public static double Atan2(double y, double x); // 0x001E0CD4 + public static double Exp(double d); // 0x001E0CD8 + public static double Log(double d); // 0x001E0CDC + public static double Log10(double d); // 0x001E0CE0 + public static double Pow(double x, double y); // 0x001E0CE4 + public static double Sqrt(double d); // 0x001E0CE8 +} + +// Namespace: System +[Serializable] +public class MemberAccessException : SystemException // TypeDefIndex: 1684 +{ + // Fields + private const int Result = -2146233062; // 0x00 + + // Methods + public void .ctor(); // 0x001E0D04 + public void .ctor(string message); // 0x001E0D84 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x001E0DA8 + public void .ctor(string message, Exception inner); // 0x001E0DC8 +} + +// Namespace: System +[Serializable] +public class MethodAccessException : MemberAccessException // TypeDefIndex: 1685 +{ + // Fields + private const int Result = -2146233072; // 0x00 + + // Methods + public void .ctor(); // 0x001E0DEC + public void .ctor(string message); // 0x001E0E6C + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x001E0E90 + public void .ctor(string message, Exception inner); // 0x001E0EB0 +} + +// Namespace: System +public enum MidpointRounding // TypeDefIndex: 1686 +{ + ToEven = 0, + AwayFromZero = 1 +} + +// Namespace: System +[Serializable] +public class MissingFieldException : MissingMemberException // TypeDefIndex: 1687 +{ + // Fields + private const int Result = -2146233071; // 0x00 + + // Properties + public override string Message { get; } // 0x001E121C + + // Methods + public void .ctor(); // 0x001E0ED4 + public void .ctor(string message); // 0x001E0F78 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x001E0F9C + public void .ctor(string message, Exception inner); // 0x001E1174 + public void .ctor(string className, string fieldName); // 0x001E11BC +} + +// Namespace: System +[Serializable] +public class MissingMemberException : MemberAccessException // TypeDefIndex: 1688 +{ + // Fields + private const int Result = -2146233070; // 0x00 + protected string ClassName; // 0x34 + protected string MemberName; // 0x38 + protected byte[] Signature; // 0x3C + + // Properties + public override string Message { get; } // 0x001E12E4 + + // Methods + public void .ctor(); // 0x001E13B0 + public void .ctor(string message); // 0x001E0F54 + public void .ctor(string message, Exception inner); // 0x001E1198 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x001E0FB4 + public void .ctor(string className, string memberName); // 0x001E11EC + public override void GetObjectData(SerializationInfo info, StreamingContext context); // 0x001E1430 +} + +// Namespace: System +[Serializable] +public class MissingMethodException : MissingMemberException // TypeDefIndex: 1689 +{ + // Fields + private const int Result = -2146233069; // 0x00 + + // Properties + public override string Message { get; } // 0x001E1658 + + // Methods + public void .ctor(); // 0x001E1548 + public void .ctor(string message); // 0x001E15C8 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x001E15EC + public void .ctor(string message, Exception inner); // 0x001E1604 + public void .ctor(string className, string methodName); // 0x001E1628 +} + +// Namespace: System +public struct ModuleHandle // TypeDefIndex: 1690 +{ + // Fields + private IntPtr value; // 0x08 + public static readonly ModuleHandle EmptyHandle; // 0x00 + + // Properties + internal IntPtr Value { get; } // 0x0008B8C8 + public int MDStreamVersion { get; } // 0x0008B8D0 + + // Methods + internal void .ctor(IntPtr v); // 0x0008B8C0 + private static void .cctor(); // 0x001E1728 + internal void GetPEKind(out PortableExecutableKinds peKind, out ImageFileMachine machine); // 0x0008B8D8 + public RuntimeFieldHandle ResolveFieldHandle(int fieldToken); // 0x0008B8E0 + public RuntimeMethodHandle ResolveMethodHandle(int methodToken); // 0x0008B904 + public RuntimeTypeHandle ResolveTypeHandle(int typeToken); // 0x0008B928 + private IntPtr[] ptrs_from_handles(RuntimeTypeHandle[] handles); // 0x0008B94C + public RuntimeTypeHandle ResolveTypeHandle(int typeToken, RuntimeTypeHandle[] typeInstantiationContext, RuntimeTypeHandle[] methodInstantiationContext); // 0x0008B950 + public RuntimeMethodHandle ResolveMethodHandle(int methodToken, RuntimeTypeHandle[] typeInstantiationContext, RuntimeTypeHandle[] methodInstantiationContext); // 0x0008B96C + public RuntimeFieldHandle ResolveFieldHandle(int fieldToken, RuntimeTypeHandle[] typeInstantiationContext, RuntimeTypeHandle[] methodInstantiationContext); // 0x0008B988 + public RuntimeFieldHandle GetRuntimeFieldHandleFromMetadataToken(int fieldToken); // 0x0008B9A4 + public RuntimeMethodHandle GetRuntimeMethodHandleFromMetadataToken(int methodToken); // 0x0008B9C8 + public RuntimeTypeHandle GetRuntimeTypeHandleFromMetadataToken(int typeToken); // 0x0008B9EC + public override bool Equals(object obj); // 0x0008BA10 + public bool Equals(ModuleHandle handle); // 0x0008BA18 + public override int GetHashCode(); // 0x0008BA2C + public static bool op_Equality(ModuleHandle left, ModuleHandle right); // 0x001E23DC + public static bool op_Inequality(ModuleHandle left, ModuleHandle right); // 0x001E2474 +} + +// Namespace: System +internal class MonoAsyncCall // TypeDefIndex: 1691 +{ + // Fields + private object msg; // 0x08 + private IntPtr cb_method; // 0x0C + private object cb_target; // 0x10 + private object state; // 0x14 + private object res; // 0x18 + private object out_args; // 0x1C + private long wait_event; // 0x20 + + // Methods + public void .ctor(); // 0x001E2510 +} + +// Namespace: System +internal class MonoCustomAttrs // TypeDefIndex: 1692 +{ + // Fields + private static Assembly corlib; // 0x00 + private static readonly Type AttributeUsageType; // 0x04 + private static readonly AttributeUsageAttribute DefaultAttributeUsage; // 0x08 + + // Methods + public void .ctor(); // 0x001E2518 + private static void .cctor(); // 0x001E2520 + private static bool IsUserCattrProvider(object obj); // 0x001E25F8 + internal static object[] GetCustomAttributesInternal(ICustomAttributeProvider obj, Type attributeType, bool pseudoAttrs); // 0x001E28A4 + internal static object[] GetPseudoCustomAttributes(ICustomAttributeProvider obj, Type attributeType); // 0x001E28A8 + internal static object[] GetCustomAttributesBase(ICustomAttributeProvider obj, Type attributeType); // 0x001E2B68 + internal static Attribute GetCustomAttribute(ICustomAttributeProvider obj, Type attributeType, bool inherit); // 0x001E2DB8 + internal static object[] GetCustomAttributes(ICustomAttributeProvider obj, Type attributeType, bool inherit); // 0x001E2F64 + internal static object[] GetCustomAttributes(ICustomAttributeProvider obj, bool inherit); // 0x001E3D08 + private static CustomAttributeData[] GetCustomAttributesDataInternal(ICustomAttributeProvider obj); // 0x001E3EF0 + internal static IList`1 GetCustomAttributesData(ICustomAttributeProvider obj); // 0x001E3EF4 + internal static bool IsDefined(ICustomAttributeProvider obj, Type attributeType, bool inherit); // 0x001E3FE8 + internal static bool IsDefinedInternal(ICustomAttributeProvider obj, Type AttributeType); // 0x001E4338 + private static PropertyInfo GetBasePropertyDefinition(PropertyInfo property); // 0x001E433C + private static ICustomAttributeProvider GetBase(ICustomAttributeProvider obj); // 0x001E3B14 + private static AttributeUsageAttribute RetrieveAttributeUsage(Type attributeType); // 0x001E3854 +} + +// Namespace: +private class AttributeInfo // TypeDefIndex: 1693 +{ + // Fields + private AttributeUsageAttribute _usage; // 0x08 + private int _inheritanceLevel; // 0x0C + + // Properties + public AttributeUsageAttribute Usage { get; } // 0x001E4658 + public int InheritanceLevel { get; } // 0x001E4660 + + // Methods + public void .ctor(AttributeUsageAttribute usage, int inheritanceLevel); // 0x001E3AEC +} + +// Namespace: System +internal sealed class MonoListItem // TypeDefIndex: 1694 +{ + // Fields + private MonoListItem next; // 0x08 + private object data; // 0x0C + + // Methods + public void .ctor(); // 0x001E5744 +} + +// Namespace: System +internal class MonoTouchAOTHelper // TypeDefIndex: 1695 +{ + // Fields + internal static bool FalseFlag; // 0x00 + + // Methods + public void .ctor(); // 0x001E577C + private static void .cctor(); // 0x001E5784 +} + +// Namespace: System +internal class MonoTypeInfo // TypeDefIndex: 1696 +{ + // Fields + public string full_name; // 0x08 + public ConstructorInfo default_ctor; // 0x0C + + // Methods + public void .ctor(); // 0x001E5A08 +} + +// Namespace: System +[Serializable] +internal class MonoType : Type, ISerializable // TypeDefIndex: 1697 +{ + // Fields + [NonSerialized] private MonoTypeInfo type_info; // 0x0C + + // Properties + public override Type UnderlyingSystemType { get; } // 0x001E8500 + public override Assembly Assembly { get; } // 0x001E8504 + public override string AssemblyQualifiedName { get; } // 0x001E8508 + public override Type BaseType { get; } // 0x001E8518 + public override string FullName { get; } // 0x001E851C + public override Guid GUID { get; } // 0x001E85E8 + public override MemberTypes MemberType { get; } // 0x001E8988 + public override string Name { get; } // 0x001E89E0 + public override string Namespace { get; } // 0x001E89E4 + public override Module Module { get; } // 0x001E89E8 + public override Type DeclaringType { get; } // 0x001E89EC + public override Type ReflectedType { get; } // 0x001E89F0 + public override RuntimeTypeHandle TypeHandle { get; } // 0x001E8A00 + public override bool ContainsGenericParameters { get; } // 0x001E8A3C + public override bool IsGenericParameter { get; } // 0x001E8B70 + public override MethodBase DeclaringMethod { get; } // 0x001E8B74 + + // Methods + internal void .ctor(object obj); // 0x001E5788 + private static void type_from_obj(MonoType type, object obj); // 0x001E5858 + private static TypeAttributes get_attributes(Type type); // 0x001E58DC + internal ConstructorInfo GetDefaultConstructor(); // 0x001E58E0 + protected override TypeAttributes GetAttributeFlagsImpl(); // 0x001E5A10 + protected override ConstructorInfo GetConstructorImpl(BindingFlags bindingAttr, Binder binder, CallingConventions callConvention, Type[] types, ParameterModifier[] modifiers); // 0x001E5A14 + internal ConstructorInfo[] GetConstructors_internal(BindingFlags bindingAttr, Type reflected_type); // 0x001E5E98 + public override ConstructorInfo[] GetConstructors(BindingFlags bindingAttr); // 0x001E5E9C + private EventInfo InternalGetEvent(string name, BindingFlags bindingAttr); // 0x001E5EA4 + public override EventInfo GetEvent(string name, BindingFlags bindingAttr); // 0x001E5EA8 + internal EventInfo[] GetEvents_internal(BindingFlags bindingAttr, Type reflected_type); // 0x001E5F6C + public override EventInfo[] GetEvents(BindingFlags bindingAttr); // 0x001E5F70 + public override FieldInfo GetField(string name, BindingFlags bindingAttr); // 0x001E5F78 + internal FieldInfo[] GetFields_internal(BindingFlags bindingAttr, Type reflected_type); // 0x001E5F7C + public override FieldInfo[] GetFields(BindingFlags bindingAttr); // 0x001E5F80 + public override Type GetInterface(string name, bool ignoreCase); // 0x001E5F88 + public override Type[] GetInterfaces(); // 0x001E625C + public override MemberInfo[] GetMembers(BindingFlags bindingAttr); // 0x001E6260 + internal MethodInfo[] GetMethodsByName(string name, BindingFlags bindingAttr, bool ignoreCase, Type reflected_type); // 0x001E629C + public override MethodInfo[] GetMethods(BindingFlags bindingAttr); // 0x001E62A0 + protected override MethodInfo GetMethodImpl(string name, BindingFlags bindingAttr, Binder binder, CallingConventions callConvention, Type[] types, ParameterModifier[] modifiers); // 0x001E62C8 + private MethodInfo GetCorrespondingInflatedMethod(MethodInfo generic); // 0x001E6700 + private ConstructorInfo GetCorrespondingInflatedConstructor(ConstructorInfo generic); // 0x001E6754 + internal override MethodInfo GetMethod(MethodInfo fromNoninstanciated); // 0x001E67A8 + internal override ConstructorInfo GetConstructor(ConstructorInfo fromNoninstanciated); // 0x001E6898 + internal override FieldInfo GetField(FieldInfo fromNoninstanciated); // 0x001E6988 + public override Type GetNestedType(string name, BindingFlags bindingAttr); // 0x001E6A60 + public override Type[] GetNestedTypes(BindingFlags bindingAttr); // 0x001E6A64 + internal PropertyInfo[] GetPropertiesByName(string name, BindingFlags bindingAttr, bool icase, Type reflected_type); // 0x001E6A68 + public override PropertyInfo[] GetProperties(BindingFlags bindingAttr); // 0x001E6A6C + protected override PropertyInfo GetPropertyImpl(string name, BindingFlags bindingAttr, Binder binder, Type returnType, Type[] types, ParameterModifier[] modifiers); // 0x001E6A94 + protected override bool HasElementTypeImpl(); // 0x001E6CA0 + protected override bool IsArrayImpl(); // 0x001E6D04 + protected override bool IsByRefImpl(); // 0x001E6D88 + protected override bool IsCOMObjectImpl(); // 0x001E6D8C + protected override bool IsPointerImpl(); // 0x001E6D90 + protected override bool IsPrimitiveImpl(); // 0x001E6D94 + public override bool IsSubclassOf(Type type); // 0x001E6D98 + public override object InvokeMember(string name, BindingFlags invokeAttr, Binder binder, object target, object[] args, ParameterModifier[] modifiers, CultureInfo culture, string[] namedParameters); // 0x001E6E58 + public override Type GetElementType(); // 0x001E84FC + private string getFullName(bool full_name, bool assembly_qualified); // 0x001E8514 + public override bool IsDefined(Type attributeType, bool inherit); // 0x001E8780 + public override object[] GetCustomAttributes(bool inherit); // 0x001E8810 + public override object[] GetCustomAttributes(Type attributeType, bool inherit); // 0x001E8898 + public override int GetArrayRank(); // 0x001E8A08 + public void GetObjectData(SerializationInfo info, StreamingContext context); // 0x001E8A0C + public override string ToString(); // 0x001E8A2C + public override Type[] GetGenericArguments(); // 0x001E8A38 + public override Type GetGenericTypeDefinition(); // 0x001E8B78 + private MethodBase CheckMethodSecurity(MethodBase mb); // 0x001E5E90 + private void ReorderParamArrayArguments(object[] args, MethodBase method); // 0x001E81E8 +} + +// Namespace: System +[Serializable] +public sealed class MulticastNotSupportedException : SystemException // TypeDefIndex: 1698 +{ + // Methods + public void .ctor(); // 0x001E997C + public void .ctor(string message); // 0x001E99F0 + public void .ctor(string message, Exception inner); // 0x001E99F8 + internal void .ctor(SerializationInfo info, StreamingContext context); // 0x001E9A00 +} + +// Namespace: System +public sealed class NonSerializedAttribute : Attribute // TypeDefIndex: 1699 +{ + // Methods + public void .ctor(); // 0x001E9A20 +} + +// Namespace: System +[Serializable] +public class NotFiniteNumberException : ArithmeticException // TypeDefIndex: 1700 +{ + // Fields + private const int Result = -2146233048; // 0x00 + private double offending_number; // 0x38 + + // Properties + public double OffendingNumber { get; } // 0x001E9C3C + + // Methods + public void .ctor(); // 0x001E9A28 + public void .ctor(double offendingNumber); // 0x001E9AA8 + public void .ctor(string message); // 0x001E9ADC + public void .ctor(string message, double offendingNumber); // 0x001E9B00 + public void .ctor(string message, double offendingNumber, Exception innerException); // 0x001E9B34 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x001E9B6C + public void .ctor(string message, Exception innerException); // 0x001E9C18 + public override void GetObjectData(SerializationInfo info, StreamingContext context); // 0x001E9C48 +} + +// Namespace: System +[Serializable] +public class NotImplementedException : SystemException // TypeDefIndex: 1701 +{ + // Fields + private const int Result = -2147467263; // 0x00 + + // Methods + public void .ctor(); // 0x001E585C + public void .ctor(string message); // 0x001E9D00 + public void .ctor(string message, Exception inner); // 0x001E9D24 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x001E9D48 +} + +// Namespace: System +[Serializable] +public class NotSupportedException : SystemException // TypeDefIndex: 1702 +{ + // Fields + private const int Result = -2146233067; // 0x00 + + // Methods + public void .ctor(); // 0x001E9D68 + public void .ctor(string message); // 0x001D6118 + public void .ctor(string message, Exception innerException); // 0x001E9DE8 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x001E9E0C +} + +// Namespace: System +[Serializable] +public class NullReferenceException : SystemException // TypeDefIndex: 1703 +{ + // Fields + private const int Result = -2147467261; // 0x00 + + // Methods + public void .ctor(); // 0x001E9E2C + public void .ctor(string message); // 0x001E9EAC + public void .ctor(string message, Exception innerException); // 0x001E9ED0 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x001E9EF4 +} + +// Namespace: System +public static class Nullable // TypeDefIndex: 1704 +{ + // Methods + public static int Compare(Nullable`1 value1, Nullable`1 value2); + public static bool Equals(Nullable`1 value1, Nullable`1 value2); + public static Type GetUnderlyingType(Type nullableType); // 0x001E9F14 +} + +// Namespace: System +internal sealed class NumberFormatter // TypeDefIndex: 1705 +{ + // Fields + private const int DefaultExpPrecision = 6; // 0x00 + private const int HundredMillion = 100000000; // 0x00 + private const long SeventeenDigitsThreshold = 10000000000000000; // 0x00 + private const ulong ULongDivHundredMillion = 184467440737; // 0x00 + private const ulong ULongModHundredMillion = 9551616; // 0x00 + private const int DoubleBitsExponentShift = 52; // 0x00 + private const int DoubleBitsExponentMask = 2047; // 0x00 + private const long DoubleBitsMantissaMask = 4503599627370495; // 0x00 + private const int DecimalBitsScaleMask = 2031616; // 0x00 + private const int SingleDefPrecision = 7; // 0x00 + private const int DoubleDefPrecision = 15; // 0x00 + private const int Int8DefPrecision = 3; // 0x00 + private const int UInt8DefPrecision = 3; // 0x00 + private const int Int16DefPrecision = 5; // 0x00 + private const int UInt16DefPrecision = 5; // 0x00 + private const int Int32DefPrecision = 10; // 0x00 + private const int UInt32DefPrecision = 10; // 0x00 + private const int Int64DefPrecision = 19; // 0x00 + private const int UInt64DefPrecision = 20; // 0x00 + private const int DecimalDefPrecision = 100; // 0x00 + private const int TenPowersListLength = 19; // 0x00 + private const double MinRoundtripVal = -1.79769313486231E+308; // 0x00 + private const double MaxRoundtripVal = 1.79769313486231E+308; // 0x00 + private static readonly void * MantissaBitsTable; // 0x00 + private static readonly void * TensExponentTable; // 0x04 + private static readonly void * DigitLowerTable; // 0x08 + private static readonly void * DigitUpperTable; // 0x0C + private static readonly void * TenPowersList; // 0x10 + private static readonly void * DecHexDigits; // 0x14 + private Thread _thread; // 0x08 + private NumberFormatInfo _nfi; // 0x0C + private bool _NaN; // 0x10 + private bool _infinity; // 0x11 + private bool _isCustomFormat; // 0x12 + private bool _specifierIsUpper; // 0x13 + private bool _positive; // 0x14 + private char _specifier; // 0x16 + private int _precision; // 0x18 + private int _defPrecision; // 0x1C + private int _digitsLen; // 0x20 + private int _offset; // 0x24 + private int _decPointPos; // 0x28 + private uint _val1; // 0x2C + private uint _val2; // 0x30 + private uint _val3; // 0x34 + private uint _val4; // 0x38 + private char[] _cbuf; // 0x3C + private int _ind; // 0x40 + private static NumberFormatter threadNumberFormatter; // 0x80000000 + + // Properties + public CultureInfo CurrentCulture { set; } // 0x001EA154 + private int IntegerDigits { get; } // 0x001EBDB0 + private int DecimalDigits { get; } // 0x001EBDC0 + private bool IsFloatingSource { get; } // 0x001EBDD4 + private bool IsZero { get; } // 0x001EBDEC + private bool IsZeroInteger { get; } // 0x001EBE00 + + // Methods + public void .ctor(Thread current); // 0x001EA098 + private static void .cctor(); // 0x001EA194 + private static void GetFormatterTables(out void * MantissaBitsTable, out void * TensExponentTable, out void * DigitLowerTable, out void * DigitUpperTable, out void * TenPowersList, out void * DecHexDigits); // 0x001EA218 + private static long GetTenPowerOf(int i); // 0x001EA21C + private void InitDecHexDigits(uint value); // 0x001EA2B4 + private void InitDecHexDigits(ulong value); // 0x001EA58C + private void InitDecHexDigits(uint hi, ulong lo); // 0x001EA764 + private static uint FastToDecHex(int val); // 0x001EA3A0 + private static uint ToDecHex(int val); // 0x001EA4A4 + private static int FastDecHexLen(int val); // 0x001EAA5C + private static int DecHexLen(uint val); // 0x001EAA8C + private int DecHexLen(); // 0x001EAB78 + private static int ScaleOrder(long hi); // 0x001EACE4 + private int InitialFloatingPrecision(); // 0x001EAD90 + private static int ParsePrecision(string format); // 0x001EADE0 + private void Init(string format); // 0x001EAE5C + private void InitHex(ulong value); // 0x001EAFAC + private void Init(string format, int value, int defPrecision); // 0x001EB014 + private void Init(string format, uint value, int defPrecision); // 0x001EB094 + private void Init(string format, long value); // 0x001EB108 + private void Init(string format, ulong value); // 0x001EB190 + private void Init(string format, double value, int defPrecision); // 0x001EB20C + private void Init(string format, Decimal value); // 0x001EB74C + private void ResetCharBuf(int size); // 0x001EB9D4 + private void Resize(int len); // 0x001EBA68 + private void Append(char c); // 0x001EBAEC + private void Append(char c, int cnt); // 0x001EBB78 + private void Append(string s); // 0x001EBC28 + private NumberFormatInfo GetNumberFormatInstance(IFormatProvider fp); // 0x001EBD14 + private void RoundPos(int pos); // 0x001EBE24 + private bool RoundDecimal(int decimals); // 0x001EBFA8 + private bool RoundBits(int shift); // 0x001EBE30 + private void RemoveTrailingZeros(); // 0x001EC0E4 + private void AddOneToDecHex(); // 0x001EBFBC + private static uint AddOneToDecHex(uint val); // 0x001EC120 + private int CountTrailingZeros(); // 0x001EB5E0 + private static int CountTrailingZeros(uint val); // 0x001EC1CC + private static NumberFormatter GetInstance(); // 0x001EC240 + private void Release(); // 0x001EC34C + internal static void SetThreadCurrentCulture(CultureInfo culture); // 0x001EC3DC + public static string NumberToString(string format, sbyte value, IFormatProvider fp); // 0x001EC4F4 + public static string NumberToString(string format, byte value, IFormatProvider fp); // 0x001EC88C + public static string NumberToString(string format, ushort value, IFormatProvider fp); // 0x001ECA10 + public static string NumberToString(string format, short value, IFormatProvider fp); // 0x001D8354 + public static string NumberToString(string format, uint value, IFormatProvider fp); // 0x001ECB94 + public static string NumberToString(string format, int value, IFormatProvider fp); // 0x001DADD4 + public static string NumberToString(string format, ulong value, IFormatProvider fp); // 0x001ECD18 + public static string NumberToString(string format, long value, IFormatProvider fp); // 0x001DD66C + public static string NumberToString(string format, float value, IFormatProvider fp); // 0x001ECEA0 + public static string NumberToString(string format, double value, IFormatProvider fp); // 0x001ED324 + public static string NumberToString(string format, Decimal value, IFormatProvider fp); // 0x001ED5F8 + public static string NumberToString(uint value, IFormatProvider fp); // 0x001ED7B4 + public static string NumberToString(int value, IFormatProvider fp); // 0x001D8098 + public static string NumberToString(ulong value, IFormatProvider fp); // 0x001EDA2C + public static string NumberToString(long value, IFormatProvider fp); // 0x001DD414 + public static string NumberToString(float value, IFormatProvider fp); // 0x001EDBCC + public static string NumberToString(double value, IFormatProvider fp); // 0x001EDF38 + private string FastIntegerToString(int value, IFormatProvider fp); // 0x001ED93C + private string IntegerToString(string format, IFormatProvider fp); // 0x001EC678 + private string NumberToString(string format, NumberFormatInfo nfi); // 0x001ED140 + public string FormatCurrency(int precision, NumberFormatInfo nfi); // 0x001EE3D4 + private string FormatDecimal(int precision, NumberFormatInfo nfi); // 0x001EE6CC + private string FormatHexadecimal(int precision); // 0x001EEC3C + public string FormatFixedPoint(int precision, NumberFormatInfo nfi); // 0x001EE804 + private string FormatRoundtrip(double origval, NumberFormatInfo nfi); // 0x001ED540 + private string FormatRoundtrip(float origval, NumberFormatInfo nfi); // 0x001ED0C0 + private string FormatGeneral(int precision, NumberFormatInfo nfi); // 0x001EDDC8 + public string FormatNumber(int precision, NumberFormatInfo nfi); // 0x001EE914 + public string FormatPercent(int precision, NumberFormatInfo nfi); // 0x001EEAC8 + public string FormatExponential(int precision, NumberFormatInfo nfi); // 0x001EE7B4 + private string FormatExponential(int precision, NumberFormatInfo nfi, int expDigits); // 0x001EFBBC + public string FormatCustom(string format, NumberFormatInfo nfi); // 0x001EEE08 + private static void ZeroTrimEnd(StringBuilder sb, bool canEmpty); // 0x001F0268 + private static bool IsZeroOnly(StringBuilder sb); // 0x001F017C + private static void AppendNonNegativeNumber(StringBuilder sb, int v); // 0x001EFF54 + private void AppendIntegerString(int minLength, StringBuilder sb); // 0x001F00AC + private void AppendIntegerString(int minLength); // 0x001EFAD0 + private void AppendDecimalString(int precision, StringBuilder sb); // 0x001F0148 + private void AppendDecimalString(int precision); // 0x001EF6E4 + private void AppendIntegerStringWithGroupSeparator(int[] groups, string groupSeparator); // 0x001EF48C + private void AppendExponent(NumberFormatInfo nfi, int exponent, int minDigits); // 0x001EFDAC + private void AppendOneDigit(int start); // 0x001EFCC0 + private void FastAppendDigits(int val, bool force); // 0x001EE12C + private void AppendDigits(int start, int end); // 0x001EF6FC + private void AppendDigits(int start, int end, StringBuilder sb); // 0x001F0350 + private void Multiply10(int count); // 0x001EFCA0 + private void Divide10(int count); // 0x001EFF34 + private NumberFormatter GetClone(); // 0x001EFB2C +} + +// Namespace: +private class CustomInfo // TypeDefIndex: 1706 +{ + // Fields + public bool UseGroup; // 0x08 + public int DecimalDigits; // 0x0C + public int DecimalPointPos; // 0x10 + public int DecimalTailSharpDigits; // 0x14 + public int IntegerDigits; // 0x18 + public int IntegerHeadSharpDigits; // 0x1C + public int IntegerHeadPos; // 0x20 + public bool UseExponent; // 0x24 + public int ExponentDigits; // 0x28 + public int ExponentTailSharpDigits; // 0x2C + public bool ExponentNegativeSignOnly; // 0x30 + public int DividePlaces; // 0x34 + public int Percents; // 0x38 + public int Permilles; // 0x3C + + // Methods + public void .ctor(); // 0x001AF628 + public static void GetActiveSection(string format, bool positive, bool zero, int offset, int length); // 0x001AF640 + public static CustomInfo Parse(string format, int offset, int length, NumberFormatInfo nfi); // 0x001AFB88 + public string Format(string format, int offset, int length, NumberFormatInfo nfi, bool positive, StringBuilder sb_int, StringBuilder sb_dec, StringBuilder sb_exp); // 0x001B0248 +} + +// Namespace: System +[Serializable] +public class ObjectDisposedException : InvalidOperationException // TypeDefIndex: 1707 +{ + // Fields + private string obj_name; // 0x34 + private string msg; // 0x38 + + // Properties + public override string Message { get; } // 0x001B0EE0 + public string ObjectName { get; } // 0x001B0EE8 + + // Methods + public void .ctor(string objectName); // 0x001B0D74 + public void .ctor(string objectName, string message); // 0x001B0E00 + public void .ctor(string message, Exception innerException); // 0x001B0E2C + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x001B0E34 + public override void GetObjectData(SerializationInfo info, StreamingContext context); // 0x001B0EF0 +} + +// Namespace: System +[Serializable] +public sealed class OperatingSystem : ICloneable, ISerializable // TypeDefIndex: 1708 +{ + // Fields + private PlatformID _platform; // 0x08 + private Version _version; // 0x0C + private string _servicePack; // 0x10 + + // Properties + public PlatformID Platform { get; } // 0x001B1110 + public Version Version { get; } // 0x001B1118 + public string ServicePack { get; } // 0x001B1120 + public string VersionString { get; } // 0x001B1128 + + // Methods + public void .ctor(PlatformID platform, Version version); // 0x001B1000 + public object Clone(); // 0x001B12D0 + public void GetObjectData(SerializationInfo info, StreamingContext context); // 0x001B134C + public override string ToString(); // 0x001B112C +} + +// Namespace: System +[Serializable] +public class OperationCanceledException : SystemException // TypeDefIndex: 1709 +{ + // Fields + private const int Result = -2146233029; // 0x00 + + // Methods + public void .ctor(); // 0x001B1460 + public void .ctor(string message); // 0x001B14E0 + public void .ctor(string message, Exception innerException); // 0x001B1504 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x001B1528 +} + +// Namespace: System +[Serializable] +public class OutOfMemoryException : SystemException // TypeDefIndex: 1710 +{ + // Fields + private const int Result = -2147024882; // 0x00 + + // Methods + public void .ctor(); // 0x001B186C + public void .ctor(string message); // 0x001B18EC + public void .ctor(string message, Exception innerException); // 0x001B1910 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x001B1934 +} + +// Namespace: System +[Serializable] +public class OverflowException : ArithmeticException // TypeDefIndex: 1711 +{ + // Fields + private const int Result = -2146233066; // 0x00 + + // Methods + public void .ctor(); // 0x001B1954 + public void .ctor(string message); // 0x001B19D4 + public void .ctor(string message, Exception innerException); // 0x001B19F8 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x001B1A1C +} + +// Namespace: System +[Serializable] +public enum PlatformID // TypeDefIndex: 1712 +{ + Win32S = 0, + Win32Windows = 1, + Win32NT = 2, + WinCE = 3, + Unix = 4, + Xbox = 5, + MacOSX = 6 +} + +// Namespace: System +[Serializable] +public class PlatformNotSupportedException : NotSupportedException // TypeDefIndex: 1713 +{ + // Fields + private const int Result = -2146233031; // 0x00 + + // Methods + public void .ctor(); // 0x001B1A44 + public void .ctor(string message); // 0x001B1AC4 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x001B1AE8 + public void .ctor(string message, Exception inner); // 0x001B1B08 +} + +// Namespace: System +[Serializable] +public class Random // TypeDefIndex: 1714 +{ + // Fields + private const int MBIG = 2147483647; // 0x00 + private const int MSEED = 161803398; // 0x00 + private const int MZ = 0; // 0x00 + private int inext; // 0x08 + private int inextp; // 0x0C + private int[] SeedArray; // 0x10 + + // Methods + public void .ctor(); // 0x001B1B2C + public void .ctor(int Seed); // 0x001B1B50 + protected virtual double Sample(); // 0x001B1E18 + public virtual int Next(); // 0x001B1F28 + public virtual int Next(int maxValue); // 0x001B1F60 + public virtual int Next(int minValue, int maxValue); // 0x001B2048 + public virtual void NextBytes(byte[] buffer); // 0x001B2148 + public virtual double NextDouble(); // 0x001B2278 +} + +// Namespace: System +[Serializable] +public class RankException : SystemException // TypeDefIndex: 1715 +{ + // Fields + private const int Result = -2146233065; // 0x00 + + // Methods + public void .ctor(); // 0x001B2288 + public void .ctor(string message); // 0x001B2308 + public void .ctor(string message, Exception innerException); // 0x001B232C + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x001B2350 +} + +// Namespace: System +public class ResolveEventArgs : EventArgs // TypeDefIndex: 1716 +{ + // Fields + private string m_Name; // 0x08 + + // Properties + public string Name { get; } // 0x0036B100 + + // Methods + public void .ctor(string name); // 0x0036B074 +} + +// Namespace: System +[Serializable] +public struct RuntimeMethodHandle : ISerializable // TypeDefIndex: 1717 +{ + // Fields + private IntPtr value; // 0x08 + + // Properties + public IntPtr Value { get; } // 0x0008BD9C + + // Methods + internal void .ctor(IntPtr v); // 0x0008BD78 + private void .ctor(SerializationInfo info, StreamingContext context); // 0x0008BD80 + public void GetObjectData(SerializationInfo info, StreamingContext context); // 0x0008BDA4 + private static IntPtr GetFunctionPointer(IntPtr m); // 0x0020EB48 + public IntPtr GetFunctionPointer(); // 0x0008BDC0 + public override bool Equals(object obj); // 0x0008BDC8 + public bool Equals(RuntimeMethodHandle handle); // 0x0008BDD0 + public override int GetHashCode(); // 0x0008BDDC + public static bool op_Equality(RuntimeMethodHandle left, RuntimeMethodHandle right); // 0x0020EC80 + public static bool op_Inequality(RuntimeMethodHandle left, RuntimeMethodHandle right); // 0x0020EC88 +} + +// Namespace: System +public sealed class STAThreadAttribute : Attribute // TypeDefIndex: 1718 +{ + // Methods + public void .ctor(); // 0x002106D4 +} + +// Namespace: System +[Serializable] +public sealed class StackOverflowException : SystemException // TypeDefIndex: 1719 +{ + // Methods + public void .ctor(); // 0x00248A0C + public void .ctor(string message); // 0x00248A80 + public void .ctor(string message, Exception innerException); // 0x00248A88 + internal void .ctor(SerializationInfo info, StreamingContext context); // 0x00248A90 +} + +// Namespace: System +[Serializable] +public abstract class StringComparer : IComparer`1, IEqualityComparer`1, IComparer, IEqualityComparer // TypeDefIndex: 1720 +{ + // Fields + private static StringComparer invariantCultureIgnoreCase; // 0x00 + private static StringComparer invariantCulture; // 0x04 + private static StringComparer ordinalIgnoreCase; // 0x08 + private static StringComparer ordinal; // 0x0C + + // Properties + public static StringComparer CurrentCulture { get; } // 0x0050F3BC + public static StringComparer CurrentCultureIgnoreCase { get; } // 0x0050F468 + public static StringComparer InvariantCulture { get; } // 0x0050F514 + public static StringComparer InvariantCultureIgnoreCase { get; } // 0x0050F5A0 + public static StringComparer Ordinal { get; } // 0x0050F62C + public static StringComparer OrdinalIgnoreCase { get; } // 0x0050F6B8 + + // Methods + protected void .ctor(); // 0x0050F26C + private static void .cctor(); // 0x0050F274 + public static StringComparer Create(CultureInfo culture, bool ignoreCase); // 0x0050F744 + public int Compare(object x, object y); // 0x0050F820 + public bool Equals(object x, object y); // 0x0050F9CC + public int GetHashCode(object obj); // 0x0050FAA0 + public abstract int Compare(string x, string y); + public abstract bool Equals(string x, string y); + public abstract int GetHashCode(string obj); +} + +// Namespace: System +[Serializable] +internal sealed class CultureAwareComparer : StringComparer // TypeDefIndex: 1721 +{ + // Fields + private readonly bool _ignoreCase; // 0x08 + private readonly CompareInfo _compareInfo; // 0x0C + + // Methods + public void .ctor(CultureInfo ci, bool ignore_case); // 0x004AB248 + public override int Compare(string x, string y); // 0x004AB300 + public override bool Equals(string x, string y); // 0x004AB358 + public override int GetHashCode(string s); // 0x004AB378 +} + +// Namespace: System +[Serializable] +internal sealed class OrdinalComparer : StringComparer // TypeDefIndex: 1722 +{ + // Fields + private readonly bool _ignoreCase; // 0x08 + + // Methods + public void .ctor(bool ignoreCase); // 0x001B1548 + public override int Compare(string x, string y); // 0x001B15D4 + public override bool Equals(string x, string y); // 0x001B16D4 + public override int GetHashCode(string s); // 0x001B1794 +} + +// Namespace: System +[Serializable] +public enum StringComparison // TypeDefIndex: 1723 +{ + CurrentCulture = 0, + CurrentCultureIgnoreCase = 1, + InvariantCulture = 2, + InvariantCultureIgnoreCase = 3, + Ordinal = 4, + OrdinalIgnoreCase = 5 +} + +// Namespace: System +public enum StringSplitOptions // TypeDefIndex: 1724 +{ + None = 0, + RemoveEmptyEntries = 1 +} + +// Namespace: System +[Serializable] +public class SystemException : Exception // TypeDefIndex: 1725 +{ + // Fields + private const int Result = -2146233087; // 0x00 + + // Methods + public void .ctor(); // 0x0050FB98 + public void .ctor(string message); // 0x0050FC18 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x0050FC3C + public void .ctor(string message, Exception innerException); // 0x0050FC5C +} + +// Namespace: System +internal enum TermInfoBooleans // TypeDefIndex: 1726 +{ + AutoLeftMargin = 0, + AutoRightMargin = 1, + NoEscCtlc = 2, + CeolStandoutGlitch = 3, + EatNewlineGlitch = 4, + EraseOverstrike = 5, + GenericType = 6, + HardCopy = 7, + HasMetaKey = 8, + HasStatusLine = 9, + InsertNullGlitch = 10, + MemoryAbove = 11, + MemoryBelow = 12, + MoveInsertMode = 13, + MoveStandoutMode = 14, + OverStrike = 15, + StatusLineEscOk = 16, + DestTabsMagicSmso = 17, + TildeGlitch = 18, + TransparentUnderline = 19, + XonXoff = 20, + NeedsXonXoff = 21, + PrtrSilent = 22, + HardCursor = 23, + NonRevRmcup = 24, + NoPadChar = 25, + NonDestScrollRegion = 26, + CanChange = 27, + BackColorErase = 28, + HueLightnessSaturation = 29, + ColAddrGlitch = 30, + CrCancelsMicroMode = 31, + HasPrintWheel = 32, + RowAddrGlitch = 33, + SemiAutoRightMargin = 34, + CpiChangesRes = 35, + LpiChangesRes = 36, + Last = 37 +} + +// Namespace: System +[Serializable] +public class ThreadStaticAttribute : Attribute // TypeDefIndex: 1727 +{ + // Methods + public void .ctor(); // 0x0052D1D8 +} + +// Namespace: System +[Serializable] +public struct TimeSpan : IComparable, IComparable`1, IEquatable`1 // TypeDefIndex: 1728 +{ + // Fields + public const long TicksPerDay = 864000000000; // 0x00 + public const long TicksPerHour = 36000000000; // 0x00 + public const long TicksPerMillisecond = 10000; // 0x00 + public const long TicksPerMinute = 600000000; // 0x00 + public const long TicksPerSecond = 10000000; // 0x00 + public static readonly TimeSpan MaxValue; // 0x00 + public static readonly TimeSpan MinValue; // 0x08 + public static readonly TimeSpan Zero; // 0x10 + private long _ticks; // 0x08 + + // Properties + public int Days { get; } // 0x000A7900 + public int Hours { get; } // 0x000A7920 + public int Milliseconds { get; } // 0x000A795C + public int Minutes { get; } // 0x000A7990 + public int Seconds { get; } // 0x000A79CC + public long Ticks { get; } // 0x000A7A08 + public double TotalDays { get; } // 0x000A7A10 + public double TotalHours { get; } // 0x000A7A40 + public double TotalMilliseconds { get; } // 0x000A7A70 + public double TotalMinutes { get; } // 0x000A7AA0 + public double TotalSeconds { get; } // 0x000A7AD0 + + // Methods + public void .ctor(long ticks); // 0x000A7888 + public void .ctor(int hours, int minutes, int seconds); // 0x000A7898 + public void .ctor(int days, int hours, int minutes, int seconds); // 0x000A78B4 + public void .ctor(int days, int hours, int minutes, int seconds, int milliseconds); // 0x000A78D8 + private static void .cctor(); // 0x0041D8B0 + internal static long CalculateTicks(int days, int hours, int minutes, int seconds, int milliseconds); // 0x0041D674 + public TimeSpan Add(TimeSpan ts); // 0x000A7B00 + public static int Compare(TimeSpan t1, TimeSpan t2); // 0x0041DD58 + public int CompareTo(object value); // 0x000A7B1C + public int CompareTo(TimeSpan value); // 0x000A7B24 + public bool Equals(TimeSpan obj); // 0x000A7B40 + public TimeSpan Duration(); // 0x000A7B5C + public override bool Equals(object value); // 0x000A7BC4 + public static bool Equals(TimeSpan t1, TimeSpan t2); // 0x0041E0C0 + public static TimeSpan FromDays(double value); // 0x0041E0D8 + public static TimeSpan FromHours(double value); // 0x0041E5EC + public static TimeSpan FromMinutes(double value); // 0x0041E698 + public static TimeSpan FromSeconds(double value); // 0x0041E744 + public static TimeSpan FromMilliseconds(double value); // 0x0041E7F0 + private static TimeSpan From(double value, long tickMultiplicator); // 0x0041E188 + public static TimeSpan FromTicks(long value); // 0x0041E898 + public override int GetHashCode(); // 0x000A7BCC + public TimeSpan Negate(); // 0x000A7BD8 + public static TimeSpan Parse(string s); // 0x0041E9CC + public static bool TryParse(string s, out TimeSpan result); // 0x0041EE3C + public TimeSpan Subtract(TimeSpan ts); // 0x000A7BEC + public override string ToString(); // 0x000A7C08 + public static TimeSpan op_Addition(TimeSpan t1, TimeSpan t2); // 0x0041F540 + public static bool op_Equality(TimeSpan t1, TimeSpan t2); // 0x0041F574 + public static bool op_GreaterThan(TimeSpan t1, TimeSpan t2); // 0x0041F58C + public static bool op_GreaterThanOrEqual(TimeSpan t1, TimeSpan t2); // 0x0041F5A4 + public static bool op_Inequality(TimeSpan t1, TimeSpan t2); // 0x0041F5BC + public static bool op_LessThan(TimeSpan t1, TimeSpan t2); // 0x0041F5D0 + public static bool op_LessThanOrEqual(TimeSpan t1, TimeSpan t2); // 0x0041F5E8 + public static TimeSpan op_Subtraction(TimeSpan t1, TimeSpan t2); // 0x0041F600 + public static TimeSpan op_UnaryNegation(TimeSpan t); // 0x0041F634 + public static TimeSpan op_UnaryPlus(TimeSpan t); // 0x0041F650 +} + +// Namespace: +private class Parser // TypeDefIndex: 1729 +{ + // Fields + private string _src; // 0x08 + private int _cur; // 0x0C + private int _length; // 0x10 + private bool formatError; // 0x14 + + // Properties + public bool AtEnd { get; } // 0x0041F660 + + // Methods + public void .ctor(string src); // 0x0041EAB8 + private void ParseWhiteSpace(); // 0x0041F678 + private bool ParseSign(); // 0x0041F734 + private int ParseInt(bool optional); // 0x0041F798 + private bool ParseOptDot(); // 0x0041F95C + private void ParseOptColon(); // 0x0041F9C0 + private long ParseTicks(); // 0x0041FA24 + public TimeSpan Execute(); // 0x0041EAF0 +} + +// Namespace: System +[Serializable] +public abstract class TimeZone // TypeDefIndex: 1730 +{ + // Fields + private static TimeZone currentTimeZone; // 0x00 + [NonSerialized] private static object tz_lock; // 0x04 + [NonSerialized] private static long timezone_check; // 0x08 + + // Properties + public static TimeZone CurrentTimeZone { get; } // 0x0041FC14 + public abstract string DaylightName { get; } + public abstract string StandardName { get; } + + // Methods + protected void .ctor(); // 0x0041FB8C + private static void .cctor(); // 0x0041FB94 + public abstract DaylightTime GetDaylightChanges(int year); + public abstract TimeSpan GetUtcOffset(DateTime time); + public virtual bool IsDaylightSavingTime(DateTime time); // 0x0041FEA4 + public static bool IsDaylightSavingTime(DateTime time, DaylightTime daylightTimes); // 0x0041FF80 + public virtual DateTime ToLocalTime(DateTime time); // 0x00420254 + public virtual DateTime ToUniversalTime(DateTime time); // 0x004207C4 + internal TimeSpan GetLocalTimeDiff(DateTime time); // 0x00420B24 + internal TimeSpan GetLocalTimeDiff(DateTime time, TimeSpan utc_offset); // 0x00420B94 +} + +// Namespace: System +[Serializable] +internal class CurrentSystemTimeZone : TimeZone, IDeserializationCallback // TypeDefIndex: 1731 +{ + // Fields + private string m_standardName; // 0x08 + private string m_daylightName; // 0x0C + private Hashtable m_CachedDaylightChanges; // 0x10 + private long m_ticksOffset; // 0x18 + [NonSerialized] private TimeSpan utcOffsetWithOutDLS; // 0x20 + [NonSerialized] private TimeSpan utcOffsetWithDLS; // 0x28 + private static int this_year; // 0x00 + private static DaylightTime this_year_dlt; // 0x04 + + // Properties + public override string DaylightName { get; } // 0x004ABE70 + public override string StandardName { get; } // 0x004ABE78 + + // Methods + internal void .ctor(); // 0x004AB484 + internal void .ctor(long lnow); // 0x004AB530 + private void System.Runtime.Serialization.IDeserializationCallback.OnDeserialization(object sender); // 0x004ABE68 + private static bool GetTimeZoneData(int year, out long[] data, out string[] names); // 0x004ABAC8 + public override DaylightTime GetDaylightChanges(int year); // 0x004ABE80 + public override TimeSpan GetUtcOffset(DateTime time); // 0x004AC258 + private void OnDeserialization(DaylightTime dlt); // 0x004ABC10 + private DaylightTime GetDaylightTimeFromData(long[] data); // 0x004ABACC +} + +// Namespace: +internal enum TimeZoneData // TypeDefIndex: 1732 +{ + DaylightSavingStartIdx = 0, + DaylightSavingEndIdx = 1, + UtcOffsetIdx = 2, + AdditionalDaylightOffsetIdx = 3 +} + +// Namespace: +internal enum TimeZoneNames // TypeDefIndex: 1733 +{ + StandardNameIdx = 0, + DaylightNameIdx = 1 +} + +// Namespace: System +[Serializable] +public class TimeoutException : SystemException // TypeDefIndex: 1734 +{ + // Fields + private const int Result = -2146233083; // 0x00 + + // Methods + public void .ctor(); // 0x00420F30 + public void .ctor(string message); // 0x00420FB0 + public void .ctor(string message, Exception innerException); // 0x00420FD4 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x00420FF8 +} + +// Namespace: System +[Serializable] +public enum TypeCode // TypeDefIndex: 1735 +{ + Empty = 0, + Object = 1, + DBNull = 2, + Boolean = 3, + Char = 4, + SByte = 5, + Byte = 6, + Int16 = 7, + UInt16 = 8, + Int32 = 9, + UInt32 = 10, + Int64 = 11, + UInt64 = 12, + Single = 13, + Double = 14, + Decimal = 15, + DateTime = 16, + String = 18 +} + +// Namespace: System +[Serializable] +public sealed class TypeInitializationException : SystemException // TypeDefIndex: 1736 +{ + // Fields + private string type_name; // 0x34 + + // Properties + public string TypeName { get; } // 0x00426770 + + // Methods + public void .ctor(string fullTypeName, Exception innerException); // 0x00426600 + internal void .ctor(SerializationInfo info, StreamingContext context); // 0x004266C4 + public override void GetObjectData(SerializationInfo info, StreamingContext context); // 0x00426778 +} + +// Namespace: System +[Serializable] +public class TypeLoadException : SystemException // TypeDefIndex: 1737 +{ + // Fields + private const int Result = -2146233054; // 0x00 + private string className; // 0x34 + private string assemblyName; // 0x38 + + // Properties + public override string Message { get; } // 0x0042698C + public string TypeName { get; } // 0x00426AF8 + + // Methods + public void .ctor(); // 0x00425AF8 + public void .ctor(string message); // 0x00422658 + public void .ctor(string message, Exception inner); // 0x00426828 + internal void .ctor(string className, string assemblyName); // 0x0042684C + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x00426870 + public override void GetObjectData(SerializationInfo info, StreamingContext context); // 0x00426B94 +} + +// Namespace: System +[Serializable] +public class TypeUnloadedException : SystemException // TypeDefIndex: 1738 +{ + // Methods + public void .ctor(); // 0x00426DF0 + public void .ctor(string message); // 0x00426E64 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x00426E6C + public void .ctor(string message, Exception innerException); // 0x00426E8C +} + +// Namespace: System +[Serializable] +public class UnauthorizedAccessException : SystemException // TypeDefIndex: 1739 +{ + // Fields + private const int Result = -2146233088; // 0x00 + + // Methods + public void .ctor(); // 0x0055AAB0 + public void .ctor(string message); // 0x0055AB30 + public void .ctor(string message, Exception inner); // 0x0055AB54 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x0055AB78 +} + +// Namespace: System +[Serializable] +public class UnhandledExceptionEventArgs : EventArgs // TypeDefIndex: 1740 +{ + // Fields + private object exception; // 0x08 + private bool m_isTerminating; // 0x0C + + // Properties + public object ExceptionObject { get; } // 0x0055AC2C + public bool IsTerminating { get; } // 0x0055AC34 + + // Methods + public void .ctor(object exception, bool isTerminating); // 0x0055AB98 +} + +// Namespace: System +[Serializable] +internal class UnitySerializationHolder : ISerializable, IObjectReference // TypeDefIndex: 1741 +{ + // Fields + private string _data; // 0x08 + private UnityType _unityType; // 0x0C + private string _assemblyName; // 0x10 + + // Methods + private void .ctor(SerializationInfo info, StreamingContext ctx); // 0x0055B040 + public static void GetTypeData(Type instance, SerializationInfo info, StreamingContext ctx); // 0x0055B148 + public static void GetDBNullData(DBNull instance, SerializationInfo info, StreamingContext ctx); // 0x0055B318 + public static void GetAssemblyData(Assembly instance, SerializationInfo info, StreamingContext ctx); // 0x0055B4F0 + public static void GetModuleData(Module instance, SerializationInfo info, StreamingContext ctx); // 0x0055B698 + public virtual void GetObjectData(SerializationInfo info, StreamingContext context); // 0x0055B840 + public virtual object GetRealObject(StreamingContext context); // 0x0055B8C8 +} + +// Namespace: +private enum UnityType : byte // TypeDefIndex: 1742 +{ + DBNull = 2, + Type = 4, + Module = 5, + Assembly = 6 +} + +// Namespace: System +internal struct Variant // TypeDefIndex: 1743 +{ + // Fields + public short vt; // 0x08 + public ushort wReserved1; // 0x0A + public ushort wReserved2; // 0x0C + public ushort wReserved3; // 0x0E + public long llVal; // 0x10 + public int lVal; // 0x10 + public byte bVal; // 0x10 + public short iVal; // 0x10 + public float fltVal; // 0x10 + public double dblVal; // 0x10 + public short boolVal; // 0x10 + public IntPtr bstrVal; // 0x10 + public sbyte cVal; // 0x10 + public ushort uiVal; // 0x10 + public uint ulVal; // 0x10 + public ulong ullVal; // 0x10 + public int intVal; // 0x10 + public uint uintVal; // 0x10 + public IntPtr pdispVal; // 0x10 + public BRECORD bRecord; // 0x10 + + // Methods + public void SetValue(object obj); // 0x000C7BA0 + public object GetValue(); // 0x000C7BA8 + public void Clear(); // 0x000C7BB0 +} + +// Namespace: System +internal struct BRECORD // TypeDefIndex: 1744 +{ + // Fields + private IntPtr pvRecord; // 0x08 + private IntPtr pRecInfo; // 0x0C + +} + +// Namespace: System +[Serializable] +public sealed class Version : IComparable, ICloneable, IComparable`1, IEquatable`1 // TypeDefIndex: 1745 +{ + // Fields + private const int UNDEFINED = -1; // 0x00 + private int _Major; // 0x08 + private int _Minor; // 0x0C + private int _Build; // 0x10 + private int _Revision; // 0x14 + + // Properties + public int Build { get; } // 0x0055D19C + public int Major { get; } // 0x0055D1A4 + public int Minor { get; } // 0x0055D1AC + public int Revision { get; } // 0x0055D1B4 + public short MajorRevision { get; } // 0x0055D1BC + public short MinorRevision { get; } // 0x0055D1C4 + + // Methods + public void .ctor(); // 0x0055CC10 + public void .ctor(string version); // 0x0055CE58 + public void .ctor(int major, int minor); // 0x0055D0C0 + public void .ctor(int major, int minor, int build); // 0x0055D108 + public void .ctor(int major, int minor, int build, int revision); // 0x0055D150 + private void CheckedSet(int defined, int major, int minor, int build, int revision); // 0x0055CC84 + public object Clone(); // 0x0055D1CC + public int CompareTo(object version); // 0x0055D2DC + public override bool Equals(object obj); // 0x0055D470 + public int CompareTo(Version value); // 0x0055D3C8 + public bool Equals(Version obj); // 0x0055D4F8 + public override int GetHashCode(); // 0x0055D5A0 + public override string ToString(); // 0x0055D5C0 + public string ToString(int fieldCount); // 0x0055D758 + internal static Version CreateFromString(string info); // 0x0055DF90 + public static bool op_Equality(Version v1, Version v2); // 0x0055D580 + public static bool op_Inequality(Version v1, Version v2); // 0x0055D588 + public static bool op_GreaterThan(Version v1, Version v2); // 0x0055E23C + public static bool op_GreaterThanOrEqual(Version v1, Version v2); // 0x0055E27C + public static bool op_LessThan(Version v1, Version v2); // 0x0055E2BC + public static bool op_LessThanOrEqual(Version v1, Version v2); // 0x0055E2F0 +} + +// Namespace: System +[Serializable] +public class WeakReference : ISerializable // TypeDefIndex: 1746 +{ + // Fields + private bool isLongReference; // 0x08 + private GCHandle gcHandle; // 0x0C + + // Properties + public virtual bool IsAlive { get; } // 0x0055E524 + public virtual object Target { get; set; } // 0x0055E548 0x0055E554 + public virtual bool TrackResurrection { get; } // 0x0055E560 + + // Methods + protected void .ctor(); // 0x0055E330 + public void .ctor(object target); // 0x0055E338 + public void .ctor(object target, bool trackResurrection); // 0x0055E370 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x0055E3D0 + private void AllocateHandle(object target); // 0x0055E3A8 + protected override void Finalize(); // 0x0055E568 + public virtual void GetObjectData(SerializationInfo info, StreamingContext context); // 0x0055E5D4 +} + +// Namespace: System +public interface _AppDomain // TypeDefIndex: 1747 +{ + // Properties + string BaseDirectory { get; } + string DynamicDirectory { get; } + Evidence Evidence { get; } + string FriendlyName { get; } + string RelativeSearchPath { get; } + bool ShadowCopyFiles { get; } + + // Events + event AssemblyLoadEventHandler AssemblyLoad { + add; // 0x00000000 + remove; // 0x00000000 + } + event ResolveEventHandler AssemblyResolve { + add; // 0x00000000 + remove; // 0x00000000 + } + event EventHandler DomainUnload { + add; // 0x00000000 + remove; // 0x00000000 + } + event EventHandler ProcessExit { + add; // 0x00000000 + remove; // 0x00000000 + } + event ResolveEventHandler ResourceResolve { + add; // 0x00000000 + remove; // 0x00000000 + } + event ResolveEventHandler TypeResolve { + add; // 0x00000000 + remove; // 0x00000000 + } + event UnhandledExceptionEventHandler UnhandledException { + add; // 0x00000000 + remove; // 0x00000000 + } + + // Methods + void AppendPrivatePath(string path); + void ClearPrivatePath(); + void ClearShadowCopyPath(); + ObjectHandle CreateInstance(string assemblyName, string typeName); + ObjectHandle CreateInstance(string assemblyName, string typeName, object[] activationAttributes); + ObjectHandle CreateInstance(string assemblyName, string typeName, bool ignoreCase, BindingFlags bindingAttr, Binder binder, object[] args, CultureInfo culture, object[] activationAttributes, Evidence securityAttributes); + ObjectHandle CreateInstanceFrom(string assemblyFile, string typeName); + ObjectHandle CreateInstanceFrom(string assemblyFile, string typeName, object[] activationAttributes); + ObjectHandle CreateInstanceFrom(string assemblyFile, string typeName, bool ignoreCase, BindingFlags bindingAttr, Binder binder, object[] args, CultureInfo culture, object[] activationAttributes, Evidence securityAttributes); + AssemblyBuilder DefineDynamicAssembly(AssemblyName name, AssemblyBuilderAccess access); + AssemblyBuilder DefineDynamicAssembly(AssemblyName name, AssemblyBuilderAccess access, Evidence evidence); + AssemblyBuilder DefineDynamicAssembly(AssemblyName name, AssemblyBuilderAccess access, string dir); + AssemblyBuilder DefineDynamicAssembly(AssemblyName name, AssemblyBuilderAccess access, string dir, Evidence evidence); + AssemblyBuilder DefineDynamicAssembly(AssemblyName name, AssemblyBuilderAccess access, PermissionSet requiredPermissions, PermissionSet optionalPermissions, PermissionSet refusedPermissions); + AssemblyBuilder DefineDynamicAssembly(AssemblyName name, AssemblyBuilderAccess access, Evidence evidence, PermissionSet requiredPermissions, PermissionSet optionalPermissions, PermissionSet refusedPermissions); + AssemblyBuilder DefineDynamicAssembly(AssemblyName name, AssemblyBuilderAccess access, string dir, PermissionSet requiredPermissions, PermissionSet optionalPermissions, PermissionSet refusedPermissions); + AssemblyBuilder DefineDynamicAssembly(AssemblyName name, AssemblyBuilderAccess access, string dir, Evidence evidence, PermissionSet requiredPermissions, PermissionSet optionalPermissions, PermissionSet refusedPermissions); + AssemblyBuilder DefineDynamicAssembly(AssemblyName name, AssemblyBuilderAccess access, string dir, Evidence evidence, PermissionSet requiredPermissions, PermissionSet optionalPermissions, PermissionSet refusedPermissions, bool isSynchronized); + void DoCallBack(CrossAppDomainDelegate theDelegate); + bool Equals(object other); + int ExecuteAssembly(string assemblyFile); + int ExecuteAssembly(string assemblyFile, Evidence assemblySecurity); + int ExecuteAssembly(string assemblyFile, Evidence assemblySecurity, string[] args); + Assembly[] GetAssemblies(); + object GetData(string name); + int GetHashCode(); + object GetLifetimeService(); + Type GetType(); + object InitializeLifetimeService(); + Assembly Load(AssemblyName assemblyRef); + Assembly Load(byte[] rawAssembly); + Assembly Load(string assemblyString); + Assembly Load(AssemblyName assemblyRef, Evidence assemblySecurity); + Assembly Load(byte[] rawAssembly, byte[] rawSymbolStore); + Assembly Load(string assemblyString, Evidence assemblySecurity); + Assembly Load(byte[] rawAssembly, byte[] rawSymbolStore, Evidence securityEvidence); + void SetAppDomainPolicy(PolicyLevel domainPolicy); + void SetCachePath(string s); + void SetData(string name, object data); + void SetPrincipalPolicy(PrincipalPolicy policy); + void SetShadowCopyPath(string s); + void SetThreadPrincipal(IPrincipal principal); + string ToString(); + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); +} + +// Namespace: System +internal class __ComObject : MarshalByRefObject // TypeDefIndex: 1748 +{ + // Fields + private IntPtr iunknown; // 0x0C + private IntPtr hash_table; // 0x10 + + // Properties + internal IntPtr IUnknown { get; } // 0x0055F000 + internal IntPtr IDispatch { get; } // 0x0055F0BC + internal static Guid IID_IUnknown { get; } // 0x0055EAA4 + internal static Guid IID_IDispatch { get; } // 0x0055F1DC + + // Methods + public void .ctor(); // 0x0055E798 + internal void .ctor(Type t); // 0x0055E9AC + internal void .ctor(IntPtr pItf); // 0x0055E9D4 + internal static __ComObject CreateRCW(Type t); // 0x0055EB14 + private void ReleaseInterfaces(); // 0x0055EB18 + protected override void Finalize(); // 0x0055EB1C + internal void Initialize(Type t); // 0x0055E7C8 + private static Guid GetCLSID(Type t); // 0x0055EB80 + internal IntPtr GetInterfaceInternal(Type t, bool throwException); // 0x0055EEF0 + internal IntPtr GetInterface(Type t, bool throwException); // 0x0055EEF4 + internal IntPtr GetInterface(Type t); // 0x0055EFD8 + private void CheckIUnknown(); // 0x0055EF20 + public override bool Equals(object obj); // 0x0055F24C + public override int GetHashCode(); // 0x0055F31C + private static extern int CoCreateInstance(Guid rclsid, IntPtr pUnkOuter, uint dwClsContext, Guid riid, out IntPtr pUnk); // 0x0055EDB0 +} + +// Namespace: Mono.Math.Prime +internal delegate bool PrimalityTest(BigInteger bi, ConfidenceFactor confidence); // TypeDefIndex: 1749; 0x004542B0 + +// Namespace: System.Reflection +[Serializable] +public delegate bool MemberFilter(MemberInfo m, object filterCriteria); // TypeDefIndex: 1750; 0x002812D8 + +// Namespace: System.Reflection +[Serializable] +public delegate Module ModuleResolveEventHandler(object sender, ResolveEventArgs e); // TypeDefIndex: 1751; 0x00285684 + +// Namespace: System.Reflection +internal delegate object GetterAdapter(object _this); // TypeDefIndex: 1752; 0x00280CB8 + +// Namespace: System.Reflection +internal delegate T Getter`2(T _this); // TypeDefIndex: 1753; 0x00000000 + +// Namespace: System.Reflection +[Serializable] +public delegate bool TypeFilter(Type m, object filterCriteria); // TypeDefIndex: 1754; 0x0036AC58 + +// Namespace: System.Runtime.InteropServices +public delegate IntPtr ObjectCreationDelegate(IntPtr aggregator); // TypeDefIndex: 1755; 0x002BD150 + +// Namespace: System.Runtime.Remoting.Contexts +public delegate void CrossContextDelegate(); // TypeDefIndex: 1756; 0x00302A38 + +// Namespace: System.Runtime.Remoting.Messaging +public delegate object HeaderHandler(Header[] headers); // TypeDefIndex: 1757; 0x003129A4 + +// Namespace: System.Runtime.Remoting.Messaging +public delegate bool MessageSurrogateFilter(string key, object value); // TypeDefIndex: 1758; 0x00313754 + +// Namespace: System.Threading +public delegate void ContextCallback(object state); // TypeDefIndex: 1759; 0x004102B4 + +// Namespace: System.Threading +public delegate void IOCompletionCallback(uint errorCode, uint numBytes, void * pOVERLAP); // TypeDefIndex: 1760; 0x00411858 + +// Namespace: System.Threading +public delegate void ParameterizedThreadStart(object obj); // TypeDefIndex: 1761; 0x00413390 + +// Namespace: System.Threading +public delegate void SendOrPostCallback(object state); // TypeDefIndex: 1762; 0x00415C4C + +// Namespace: System.Threading +public delegate void ThreadStart(); // TypeDefIndex: 1763; 0x004197EC + +// Namespace: System.Threading +public delegate void TimerCallback(object state); // TypeDefIndex: 1764; 0x0041B3E8 + +// Namespace: System.Threading +public delegate void WaitCallback(object state); // TypeDefIndex: 1765; 0x0041B7B0 + +// Namespace: System.Threading +public delegate void WaitOrTimerCallback(object state, bool timedOut); // TypeDefIndex: 1766; 0x004157D0 + +// Namespace: System +public delegate void Action`1(T obj); // TypeDefIndex: 1767; 0x00000000 + +// Namespace: System +[Serializable] +public delegate void AppDomainInitializer(string[] args); // TypeDefIndex: 1768; 0x002708E4 + +// Namespace: System +[Serializable] +public delegate void AssemblyLoadEventHandler(object sender, AssemblyLoadEventArgs args); // TypeDefIndex: 1769; 0x004F3DEC + +// Namespace: System +public delegate int Comparison`1(T x, T y); // TypeDefIndex: 1770; 0x00000000 + +// Namespace: System +public delegate void ConsoleCancelEventHandler(object sender, ConsoleCancelEventArgs e); // TypeDefIndex: 1771; 0x0039AC10 + +// Namespace: System +public delegate T Converter`2(T input); // TypeDefIndex: 1772; 0x00000000 + +// Namespace: System +public delegate void CrossAppDomainDelegate(); // TypeDefIndex: 1773; 0x004AB01C + +// Namespace: System +[Serializable] +public delegate void EventHandler`1(object sender, T e); // TypeDefIndex: 1774; 0x00000000 + +// Namespace: System +[Serializable] +public delegate void EventHandler(object sender, EventArgs e); // TypeDefIndex: 1775; 0x002E0474 + +// Namespace: System +public delegate bool Predicate`1(T obj); // TypeDefIndex: 1776; 0x00000000 + +// Namespace: System +[Serializable] +public delegate Assembly ResolveEventHandler(object sender, ResolveEventArgs args); // TypeDefIndex: 1777; 0x0036B11C + +// Namespace: System +[Serializable] +public delegate void UnhandledExceptionEventHandler(object sender, UnhandledExceptionEventArgs e); // TypeDefIndex: 1778; 0x0055AC50 + +// Namespace: +internal class // TypeDefIndex: 1779 +{ + // Fields + internal static $ArrayType$56 $$field-0 = null; // 0x00 + internal static $ArrayType$24 $$field-1 = null; // 0x38 + internal static $ArrayType$24 $$field-2 = null; // 0x50 + internal static $ArrayType$24 $$field-3 = null; // 0x68 + internal static $ArrayType$24 $$field-4 = null; // 0x80 + internal static $ArrayType$16 $$field-5 = null; // 0x98 + internal static $ArrayType$16 $$field-6 = null; // 0xA8 + internal static $ArrayType$40 $$field-7 = null; // 0xB8 + internal static $ArrayType$40 $$field-8 = null; // 0xE0 + internal static $ArrayType$36 $$field-9 = null; // 0x108 + internal static $ArrayType$36 $$field-10 = null; // 0x12C + internal static $ArrayType$120 $$field-11 = null; // 0x150 + internal static $ArrayType$120 $$field-12 = null; // 0x1C8 + internal static $ArrayType$36 $$field-13 = null; // 0x240 + internal static $ArrayType$36 $$field-14 = null; // 0x264 + internal static $ArrayType$3132 $$field-15 = null; // 0x288 + internal static $ArrayType$20 $$field-16 = null; // 0xEC4 + internal static $ArrayType$32 $$field-17 = null; // 0xED8 + internal static $ArrayType$48 $$field-18 = null; // 0xEF8 + internal static $ArrayType$64 $$field-19 = null; // 0xF28 + internal static $ArrayType$64 $$field-20 = null; // 0xF68 + internal static $ArrayType$64 $$field-21 = null; // 0xFA8 + internal static $ArrayType$64 $$field-22 = null; // 0xFE8 + internal static $ArrayType$12 $$field-23 = null; // 0x1028 + internal static $ArrayType$12 $$field-24 = null; // 0x1034 + internal static $ArrayType$12 $$field-25 = null; // 0x1040 + internal static $ArrayType$16 $$field-26 = null; // 0x104C + internal static $ArrayType$136 $$field-27 = null; // 0x105C + internal static $ArrayType$8 $$field-28 = null; // 0x10E4 + internal static $ArrayType$84 $$field-29 = null; // 0x10EC + internal static $ArrayType$72 $$field-30 = null; // 0x1140 + internal static $ArrayType$8 $$field-31 = null; // 0x1188 + internal static $ArrayType$20 $$field-32 = null; // 0x1190 + internal static $ArrayType$64 $$field-33 = null; // 0x11A4 + internal static $ArrayType$124 $$field-34 = null; // 0x11E4 + internal static $ArrayType$32 $$field-35 = null; // 0x1260 + internal static $ArrayType$96 $$field-36 = null; // 0x1280 + internal static $ArrayType$2048 $$field-37 = null; // 0x12E0 + internal static $ArrayType$56 $$field-38 = null; // 0x1AE0 + internal static $ArrayType$16 $$field-39 = null; // 0x1B18 + internal static $ArrayType$48 $$field-40 = null; // 0x1B28 + internal static $ArrayType$2048 $$field-41 = null; // 0x1B58 + internal static $ArrayType$2048 $$field-42 = null; // 0x2358 + internal static $ArrayType$256 $$field-43 = null; // 0x2B58 + internal static $ArrayType$256 $$field-44 = null; // 0x2C58 + internal static $ArrayType$120 $$field-45 = null; // 0x2D58 + internal static $ArrayType$256 $$field-46 = null; // 0x2DD0 + internal static $ArrayType$256 $$field-47 = null; // 0x2ED0 + internal static $ArrayType$1024 $$field-48 = null; // 0x2FD0 + internal static $ArrayType$1024 $$field-49 = null; // 0x33D0 + internal static $ArrayType$1024 $$field-50 = null; // 0x37D0 + internal static $ArrayType$1024 $$field-51 = null; // 0x3BD0 + internal static $ArrayType$1024 $$field-52 = null; // 0x3FD0 + internal static $ArrayType$1024 $$field-53 = null; // 0x43D0 + internal static $ArrayType$1024 $$field-54 = null; // 0x47D0 + internal static $ArrayType$1024 $$field-55 = null; // 0x4BD0 + internal static $ArrayType$256 $$field-56 = null; // 0x4FD0 + internal static $ArrayType$640 $$field-57 = null; // 0x50D0 + internal static $ArrayType$96 $$field-58 = null; // 0x5350 + internal static $ArrayType$160 $$field-59 = null; // 0x53B0 + internal static $ArrayType$12 $$field-60 = null; // 0x5450 + internal static $ArrayType$380 $$field-61 = null; // 0x545C + internal static $ArrayType$128 $$field-62 = null; // 0x55D8 + internal static $ArrayType$256 $$field-63 = null; // 0x5658 + internal static $ArrayType$52 $$field-64 = null; // 0x5758 + internal static $ArrayType$52 $$field-65 = null; // 0x578C + internal static $ArrayType$1668 $$field-66 = null; // 0x57C0 + internal static $ArrayType$2100 $$field-67 = null; // 0x5E44 + internal static $ArrayType$1452 $$field-68 = null; // 0x6678 + + // Methods + public void .ctor(); // 0x003EC430 +} + +// Namespace: +private struct $ArrayType$56 // TypeDefIndex: 1780 +{ +} + +// Namespace: +private struct $ArrayType$24 // TypeDefIndex: 1781 +{ +} + +// Namespace: +private struct $ArrayType$16 // TypeDefIndex: 1782 +{ +} + +// Namespace: +private struct $ArrayType$40 // TypeDefIndex: 1783 +{ +} + +// Namespace: +private struct $ArrayType$36 // TypeDefIndex: 1784 +{ +} + +// Namespace: +private struct $ArrayType$120 // TypeDefIndex: 1785 +{ +} + +// Namespace: +private struct $ArrayType$3132 // TypeDefIndex: 1786 +{ +} + +// Namespace: +private struct $ArrayType$20 // TypeDefIndex: 1787 +{ +} + +// Namespace: +private struct $ArrayType$32 // TypeDefIndex: 1788 +{ +} + +// Namespace: +private struct $ArrayType$48 // TypeDefIndex: 1789 +{ +} + +// Namespace: +private struct $ArrayType$64 // TypeDefIndex: 1790 +{ +} + +// Namespace: +private struct $ArrayType$12 // TypeDefIndex: 1791 +{ +} + +// Namespace: +private struct $ArrayType$136 // TypeDefIndex: 1792 +{ +} + +// Namespace: +private struct $ArrayType$8 // TypeDefIndex: 1793 +{ +} + +// Namespace: +private struct $ArrayType$84 // TypeDefIndex: 1794 +{ +} + +// Namespace: +private struct $ArrayType$72 // TypeDefIndex: 1795 +{ +} + +// Namespace: +private struct $ArrayType$124 // TypeDefIndex: 1796 +{ +} + +// Namespace: +private struct $ArrayType$96 // TypeDefIndex: 1797 +{ +} + +// Namespace: +private struct $ArrayType$2048 // TypeDefIndex: 1798 +{ +} + +// Namespace: +private struct $ArrayType$256 // TypeDefIndex: 1799 +{ +} + +// Namespace: +private struct $ArrayType$1024 // TypeDefIndex: 1800 +{ +} + +// Namespace: +private struct $ArrayType$640 // TypeDefIndex: 1801 +{ +} + +// Namespace: +private struct $ArrayType$160 // TypeDefIndex: 1802 +{ +} + +// Namespace: +private struct $ArrayType$380 // TypeDefIndex: 1803 +{ +} + +// Namespace: +private struct $ArrayType$128 // TypeDefIndex: 1804 +{ +} + +// Namespace: +private struct $ArrayType$52 // TypeDefIndex: 1805 +{ +} + +// Namespace: +private struct $ArrayType$1668 // TypeDefIndex: 1806 +{ +} + +// Namespace: +private struct $ArrayType$2100 // TypeDefIndex: 1807 +{ +} + +// Namespace: +private struct $ArrayType$1452 // TypeDefIndex: 1808 +{ +} + +// Namespace: System +internal class __Il2CppComObject // TypeDefIndex: 1809 +{ + // Methods + protected override void Finalize(); // 0x0055F33C +} + +// Namespace: +internal class // TypeDefIndex: 1810 +{ +} + +// Namespace: Il2CppTests.TestSources +internal class GenericClass`1 // TypeDefIndex: 1811 +{ + // Methods + public void GenericMethodWithClassGenericTypeParameter(T v); + public void .ctor(); +} diff --git a/Il2CppTests/TestExpectedResults/Methods.cs b/Il2CppTests/TestExpectedResults/Methods.cs new file mode 100644 index 0000000..8c51151 --- /dev/null +++ b/Il2CppTests/TestExpectedResults/Methods.cs @@ -0,0 +1,37249 @@ +// Image 0: mscorlib.dll - 0 +// Image 1: Methods.dll - 1810 + +// Namespace: +internal class // TypeDefIndex: 0 +{ +} + +// Namespace: System +[Serializable] +public class Object // TypeDefIndex: 1 +{ + // Methods + public void .ctor(); // 0x001AF62C + public virtual bool Equals(object obj); // 0x001B0CB0 + public static bool Equals(object objA, object objB); // 0x001B0CC4 + protected override void Finalize(); // 0x001B0CF8 + public virtual int GetHashCode(); // 0x001B0CFC + public Type GetType(); // 0x001B0D04 + protected object MemberwiseClone(); // 0x001B0D08 + public virtual string ToString(); // 0x001B0D0C + public static bool ReferenceEquals(object objA, object objB); // 0x001B0D44 + internal static int InternalGetHashCode(object o); // 0x001B0D00 + internal IntPtr obj_address(); // 0x001B0D58 + private void FieldGetter(string typeName, string fieldName, object val); // 0x001B0D5C + private void FieldSetter(string typeName, string fieldName, object val); // 0x001B0D60 +} + +// Namespace: System +[Serializable] +public abstract class ValueType // TypeDefIndex: 2 +{ + // Methods + protected void .ctor(); // 0x0055BA38 + private static bool InternalEquals(object o1, object o2, out object[] fields); // 0x0055BA40 + internal static bool DefaultEquals(object o1, object o2); // 0x0055BA44 + public override bool Equals(object obj); // 0x0055BB60 + internal static int InternalGetHashCode(object o, out object[] fields); // 0x0055BB64 + public override int GetHashCode(); // 0x0055BB68 + public override string ToString(); // 0x0055BC68 +} + +// Namespace: System +[Serializable] +public abstract class Attribute : _Attribute // TypeDefIndex: 3 +{ + // Properties + public virtual object TypeId { get; } // 0x004F47A0 + + // Methods + protected void .ctor(); // 0x004F4578 + private void System.Runtime.InteropServices._Attribute.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x004F4580 + private void System.Runtime.InteropServices._Attribute.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x004F4608 + private void System.Runtime.InteropServices._Attribute.GetTypeInfoCount(out uint pcTInfo); // 0x004F4690 + private void System.Runtime.InteropServices._Attribute.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x004F4718 + private static void CheckParameters(object element, Type attributeType); // 0x004F47A8 + private static Attribute FindAttribute(object[] attributes); // 0x004F4988 + public static Attribute GetCustomAttribute(ParameterInfo element, Type attributeType); // 0x004F4AB8 + public static Attribute GetCustomAttribute(MemberInfo element, Type attributeType); // 0x004F4B0C + public static Attribute GetCustomAttribute(Assembly element, Type attributeType); // 0x004F4BB4 + public static Attribute GetCustomAttribute(Module element, Type attributeType); // 0x004F4C08 + public static Attribute GetCustomAttribute(Module element, Type attributeType, bool inherit); // 0x004F4C10 + public static Attribute GetCustomAttribute(Assembly element, Type attributeType, bool inherit); // 0x004F4BBC + public static Attribute GetCustomAttribute(ParameterInfo element, Type attributeType, bool inherit); // 0x004F4AC0 + public static Attribute GetCustomAttribute(MemberInfo element, Type attributeType, bool inherit); // 0x004F4B14 + public static Attribute[] GetCustomAttributes(Assembly element); // 0x004F4C5C + public static Attribute[] GetCustomAttributes(ParameterInfo element); // 0x004F4D7C + public static Attribute[] GetCustomAttributes(MemberInfo element); // 0x004F4E9C + public static Attribute[] GetCustomAttributes(Module element); // 0x004F505C + public static Attribute[] GetCustomAttributes(Assembly element, Type attributeType); // 0x004F517C + public static Attribute[] GetCustomAttributes(Module element, Type attributeType); // 0x004F5254 + public static Attribute[] GetCustomAttributes(ParameterInfo element, Type attributeType); // 0x004F532C + public static Attribute[] GetCustomAttributes(MemberInfo element, Type type); // 0x004F5404 + public static Attribute[] GetCustomAttributes(Assembly element, Type attributeType, bool inherit); // 0x004F5184 + public static Attribute[] GetCustomAttributes(ParameterInfo element, Type attributeType, bool inherit); // 0x004F5334 + public static Attribute[] GetCustomAttributes(Module element, Type attributeType, bool inherit); // 0x004F525C + public static Attribute[] GetCustomAttributes(MemberInfo element, Type type, bool inherit); // 0x004F540C + public static Attribute[] GetCustomAttributes(Module element, bool inherit); // 0x004F5064 + public static Attribute[] GetCustomAttributes(Assembly element, bool inherit); // 0x004F4C64 + public static Attribute[] GetCustomAttributes(MemberInfo element, bool inherit); // 0x004F4EA4 + public static Attribute[] GetCustomAttributes(ParameterInfo element, bool inherit); // 0x004F4D84 + public override int GetHashCode(); // 0x004F553C + public virtual bool IsDefaultAttribute(); // 0x004F5544 + public static bool IsDefined(Module element, Type attributeType); // 0x004F554C + public static bool IsDefined(ParameterInfo element, Type attributeType); // 0x004F559C + public static bool IsDefined(MemberInfo element, Type attributeType); // 0x004F561C + public static bool IsDefined(Assembly element, Type attributeType); // 0x004F579C + public static bool IsDefined(MemberInfo element, Type attributeType, bool inherit); // 0x004F5624 + public static bool IsDefined(Assembly element, Type attributeType, bool inherit); // 0x004F57A4 + public static bool IsDefined(Module element, Type attributeType, bool inherit); // 0x004F5554 + public static bool IsDefined(ParameterInfo element, Type attributeType, bool inherit); // 0x004F55A4 + public virtual bool Match(object obj); // 0x004F57EC + public override bool Equals(object obj); // 0x004F57FC +} + +// Namespace: System.Runtime.InteropServices +public interface _Attribute // TypeDefIndex: 4 +{ + // Methods + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); +} + +// Namespace: System +[Serializable] +public struct Int32 : IFormattable, IConvertible, IComparable, IComparable`1, IEquatable`1 // TypeDefIndex: 5 +{ + // Fields + public const int MaxValue = 2147483647; // 0x00 + public const int MinValue = -2147483648; // 0x00 + internal int m_value; // 0x08 + + // Methods + private bool System.IConvertible.ToBoolean(IFormatProvider provider); // 0x0008B5B8 + private byte System.IConvertible.ToByte(IFormatProvider provider); // 0x0008B5C0 + private char System.IConvertible.ToChar(IFormatProvider provider); // 0x0008B5C8 + private DateTime System.IConvertible.ToDateTime(IFormatProvider provider); // 0x0008B5D0 + private Decimal System.IConvertible.ToDecimal(IFormatProvider provider); // 0x0008B5E4 + private double System.IConvertible.ToDouble(IFormatProvider provider); // 0x0008B5F8 + private short System.IConvertible.ToInt16(IFormatProvider provider); // 0x0008B600 + private int System.IConvertible.ToInt32(IFormatProvider provider); // 0x0008B608 + private long System.IConvertible.ToInt64(IFormatProvider provider); // 0x0008B610 + private sbyte System.IConvertible.ToSByte(IFormatProvider provider); // 0x0008B618 + private float System.IConvertible.ToSingle(IFormatProvider provider); // 0x0008B620 + private object System.IConvertible.ToType(Type targetType, IFormatProvider provider); // 0x0008B628 + private ushort System.IConvertible.ToUInt16(IFormatProvider provider); // 0x0008B630 + private uint System.IConvertible.ToUInt32(IFormatProvider provider); // 0x0008B638 + private ulong System.IConvertible.ToUInt64(IFormatProvider provider); // 0x0008B640 + public int CompareTo(object value); // 0x0008B648 + public override bool Equals(object obj); // 0x0008B650 + public override int GetHashCode(); // 0x0008B658 + public int CompareTo(int value); // 0x0008B660 + public bool Equals(int obj); // 0x0008B678 + internal static bool ProcessTrailingWhitespace(bool tryParse, string s, int position, Exception exc); // 0x001D7BBC + internal static bool Parse(string s, bool tryParse, out int result, out Exception exc); // 0x001D8EC8 + public static int Parse(string s, IFormatProvider provider); // 0x001D91EC + public static int Parse(string s, NumberStyles style); // 0x001D91F8 + internal static bool CheckStyle(NumberStyles style, bool tryParse, Exception exc); // 0x001D9200 + internal static bool JumpOverWhite(int pos, string s, bool reportError, bool tryParse, Exception exc); // 0x001D930C + internal static void FindSign(int pos, string s, NumberFormatInfo nfi, bool foundSign, bool negative); // 0x001D942C + internal static void FindCurrency(int pos, string s, NumberFormatInfo nfi, bool foundCurrency); // 0x001D95C0 + internal static bool FindExponent(int pos, string s, int exponent, bool tryParse, Exception exc); // 0x001D9708 + internal static bool FindOther(int pos, string s, string other); // 0x001D9AE8 + internal static bool ValidDigit(char e, bool allowHex); // 0x001D9BF0 + internal static Exception GetFormatException(); // 0x001D7B3C + internal static bool Parse(string s, NumberStyles style, IFormatProvider fp, bool tryParse, out int result, out Exception exc); // 0x001D9CE0 + public static int Parse(string s); // 0x001DABBC + public static int Parse(string s, NumberStyles style, IFormatProvider provider); // 0x001D7DB4 + public static bool TryParse(string s, out int result); // 0x001DAC5C + public static bool TryParse(string s, NumberStyles style, IFormatProvider provider, out int result); // 0x001D7FB8 + public override string ToString(); // 0x0008B68C + public string ToString(IFormatProvider provider); // 0x0008B694 + public string ToString(string format); // 0x0008B69C + public string ToString(string format, IFormatProvider provider); // 0x0008B6A8 + public TypeCode GetTypeCode(); // 0x0008B6B0 +} + +// Namespace: System +public interface IFormattable // TypeDefIndex: 6 +{ + // Methods + string ToString(string format, IFormatProvider formatProvider); +} + +// Namespace: System +public interface IConvertible // TypeDefIndex: 7 +{ + // Methods + TypeCode GetTypeCode(); + bool ToBoolean(IFormatProvider provider); + byte ToByte(IFormatProvider provider); + char ToChar(IFormatProvider provider); + DateTime ToDateTime(IFormatProvider provider); + Decimal ToDecimal(IFormatProvider provider); + double ToDouble(IFormatProvider provider); + short ToInt16(IFormatProvider provider); + int ToInt32(IFormatProvider provider); + long ToInt64(IFormatProvider provider); + sbyte ToSByte(IFormatProvider provider); + float ToSingle(IFormatProvider provider); + string ToString(IFormatProvider provider); + object ToType(Type conversionType, IFormatProvider provider); + ushort ToUInt16(IFormatProvider provider); + uint ToUInt32(IFormatProvider provider); + ulong ToUInt64(IFormatProvider provider); +} + +// Namespace: System +public interface IComparable // TypeDefIndex: 8 +{ + // Methods + int CompareTo(object obj); +} + +// Namespace: System +public interface IComparable`1 // TypeDefIndex: 9 +{ + // Methods + int CompareTo(T other); +} + +// Namespace: System +public sealed class SerializableAttribute : Attribute // TypeDefIndex: 10 +{ + // Methods + public void .ctor(); // 0x00247520 +} + +// Namespace: System +[Serializable] +public sealed class AttributeUsageAttribute : Attribute // TypeDefIndex: 11 +{ + // Fields + private AttributeTargets valid_on; // 0x08 + private bool allow_multiple; // 0x0C + private bool inherited; // 0x0D + + // Properties + public bool AllowMultiple { get; set; } // 0x004F58D0 0x004F58D8 + public bool Inherited { get; set; } // 0x004F58E0 0x004F58E8 + public AttributeTargets ValidOn { get; } // 0x004F58F0 + + // Methods + public void .ctor(AttributeTargets validOn); // 0x004F58A4 +} + +// Namespace: System.Runtime.InteropServices +public sealed class ComVisibleAttribute : Attribute // TypeDefIndex: 12 +{ + // Fields + private bool Visible; // 0x08 + + // Properties + public bool Value { get; } // 0x002B5F10 + + // Methods + public void .ctor(bool visibility); // 0x002B5EF0 +} + +// Namespace: System +public interface IEquatable`1 // TypeDefIndex: 13 +{ + // Methods + bool Equals(T other); +} + +// Namespace: System +[Serializable] +public struct Int64 : IFormattable, IConvertible, IComparable, IComparable`1, IEquatable`1 // TypeDefIndex: 14 +{ + // Fields + public const long MaxValue = 9223372036854775807; // 0x00 + public const long MinValue = -9223372036854775808; // 0x00 + internal long m_value; // 0x08 + + // Methods + private bool System.IConvertible.ToBoolean(IFormatProvider provider); // 0x0008B6B8 + private byte System.IConvertible.ToByte(IFormatProvider provider); // 0x0008B6C0 + private char System.IConvertible.ToChar(IFormatProvider provider); // 0x0008B6C8 + private DateTime System.IConvertible.ToDateTime(IFormatProvider provider); // 0x0008B6D0 + private Decimal System.IConvertible.ToDecimal(IFormatProvider provider); // 0x0008B6E4 + private double System.IConvertible.ToDouble(IFormatProvider provider); // 0x0008B6F8 + private short System.IConvertible.ToInt16(IFormatProvider provider); // 0x0008B700 + private int System.IConvertible.ToInt32(IFormatProvider provider); // 0x0008B708 + private long System.IConvertible.ToInt64(IFormatProvider provider); // 0x0008B710 + private sbyte System.IConvertible.ToSByte(IFormatProvider provider); // 0x0008B718 + private float System.IConvertible.ToSingle(IFormatProvider provider); // 0x0008B720 + private object System.IConvertible.ToType(Type targetType, IFormatProvider provider); // 0x0008B728 + private ushort System.IConvertible.ToUInt16(IFormatProvider provider); // 0x0008B730 + private uint System.IConvertible.ToUInt32(IFormatProvider provider); // 0x0008B738 + private ulong System.IConvertible.ToUInt64(IFormatProvider provider); // 0x0008B740 + public int CompareTo(object value); // 0x0008B748 + public override bool Equals(object obj); // 0x0008B750 + public override int GetHashCode(); // 0x0008B758 + public int CompareTo(long value); // 0x0008B764 + public bool Equals(long obj); // 0x0008B798 + internal static bool Parse(string s, bool tryParse, out long result, out Exception exc); // 0x001DBA68 + public static long Parse(string s, IFormatProvider provider); // 0x001DBDF4 + public static long Parse(string s, NumberStyles style); // 0x001DBEC0 + internal static bool Parse(string s, NumberStyles style, IFormatProvider fp, bool tryParse, out long result, out Exception exc); // 0x001DBEC8 + public static long Parse(string s); // 0x001DD23C + public static long Parse(string s, NumberStyles style, IFormatProvider provider); // 0x001DBE00 + public static bool TryParse(string s, out long result); // 0x001DD2E4 + public static bool TryParse(string s, NumberStyles style, IFormatProvider provider, out long result); // 0x001DD32C + public override string ToString(); // 0x0008B7B4 + public string ToString(IFormatProvider provider); // 0x0008B7BC + public string ToString(string format); // 0x0008B7C4 + public string ToString(string format, IFormatProvider provider); // 0x0008B7D0 + public TypeCode GetTypeCode(); // 0x0008B7D8 +} + +// Namespace: System +[Serializable] +public struct UInt32 : IFormattable, IConvertible, IComparable, IComparable`1, IEquatable`1 // TypeDefIndex: 15 +{ + // Fields + public const uint MaxValue = 4294967295; // 0x00 + public const uint MinValue = 0; // 0x00 + internal uint m_value; // 0x08 + + // Methods + private bool System.IConvertible.ToBoolean(IFormatProvider provider); // 0x000A7D0C + private byte System.IConvertible.ToByte(IFormatProvider provider); // 0x000A7D14 + private char System.IConvertible.ToChar(IFormatProvider provider); // 0x000A7D1C + private DateTime System.IConvertible.ToDateTime(IFormatProvider provider); // 0x000A7D24 + private Decimal System.IConvertible.ToDecimal(IFormatProvider provider); // 0x000A7D38 + private double System.IConvertible.ToDouble(IFormatProvider provider); // 0x000A7D4C + private short System.IConvertible.ToInt16(IFormatProvider provider); // 0x000A7D54 + private int System.IConvertible.ToInt32(IFormatProvider provider); // 0x000A7D5C + private long System.IConvertible.ToInt64(IFormatProvider provider); // 0x000A7D64 + private sbyte System.IConvertible.ToSByte(IFormatProvider provider); // 0x000A7D6C + private float System.IConvertible.ToSingle(IFormatProvider provider); // 0x000A7D74 + private object System.IConvertible.ToType(Type targetType, IFormatProvider provider); // 0x000A7D7C + private ushort System.IConvertible.ToUInt16(IFormatProvider provider); // 0x000A7D84 + private uint System.IConvertible.ToUInt32(IFormatProvider provider); // 0x000A7D8C + private ulong System.IConvertible.ToUInt64(IFormatProvider provider); // 0x000A7D94 + public int CompareTo(object value); // 0x000A7D9C + public override bool Equals(object obj); // 0x000A7DA4 + public override int GetHashCode(); // 0x000A7DAC + public int CompareTo(uint value); // 0x000A7DB4 + public bool Equals(uint obj); // 0x000A7DCC + internal static bool Parse(string s, bool tryParse, out uint result, out Exception exc); // 0x00428ABC + internal static bool Parse(string s, NumberStyles style, IFormatProvider provider, bool tryParse, out uint result, out Exception exc); // 0x00428DF0 + public static uint Parse(string s); // 0x00429BDC + public static uint Parse(string s, NumberStyles style, IFormatProvider provider); // 0x00427D6C + public static uint Parse(string s, IFormatProvider provider); // 0x00429C7C + public static uint Parse(string s, NumberStyles style); // 0x00429C88 + public static bool TryParse(string s, out uint result); // 0x00429C90 + public static bool TryParse(string s, NumberStyles style, IFormatProvider provider, out uint result); // 0x00427EB8 + public override string ToString(); // 0x000A7DE0 + public string ToString(IFormatProvider provider); // 0x000A7DE8 + public string ToString(string format); // 0x000A7DF0 + public string ToString(string format, IFormatProvider provider); // 0x000A7DFC + public TypeCode GetTypeCode(); // 0x000A7E04 +} + +// Namespace: System +[Serializable] +public sealed class CLSCompliantAttribute : Attribute // TypeDefIndex: 16 +{ + // Fields + private bool is_compliant; // 0x08 + + // Properties + public bool IsCompliant { get; } // 0x004FA55C + + // Methods + public void .ctor(bool isCompliant); // 0x004FA53C +} + +// Namespace: System +[Serializable] +public struct UInt64 : IFormattable, IConvertible, IComparable, IComparable`1, IEquatable`1 // TypeDefIndex: 17 +{ + // Fields + public const ulong MaxValue = 18446744073709551615; // 0x00 + public const ulong MinValue = 0; // 0x00 + internal ulong m_value; // 0x08 + + // Methods + private bool System.IConvertible.ToBoolean(IFormatProvider provider); // 0x000A7E0C + private byte System.IConvertible.ToByte(IFormatProvider provider); // 0x000A7E14 + private char System.IConvertible.ToChar(IFormatProvider provider); // 0x000A7E1C + private DateTime System.IConvertible.ToDateTime(IFormatProvider provider); // 0x000A7E24 + private Decimal System.IConvertible.ToDecimal(IFormatProvider provider); // 0x000A7E38 + private double System.IConvertible.ToDouble(IFormatProvider provider); // 0x000A7E4C + private short System.IConvertible.ToInt16(IFormatProvider provider); // 0x000A7E54 + private int System.IConvertible.ToInt32(IFormatProvider provider); // 0x000A7E5C + private long System.IConvertible.ToInt64(IFormatProvider provider); // 0x000A7E64 + private sbyte System.IConvertible.ToSByte(IFormatProvider provider); // 0x000A7E6C + private float System.IConvertible.ToSingle(IFormatProvider provider); // 0x000A7E74 + private object System.IConvertible.ToType(Type targetType, IFormatProvider provider); // 0x000A7E7C + private ushort System.IConvertible.ToUInt16(IFormatProvider provider); // 0x000A7E84 + private uint System.IConvertible.ToUInt32(IFormatProvider provider); // 0x000A7E8C + private ulong System.IConvertible.ToUInt64(IFormatProvider provider); // 0x000A7E94 + public int CompareTo(object value); // 0x000A7E9C + public override bool Equals(object obj); // 0x000A7EA4 + public override int GetHashCode(); // 0x000A7EAC + public int CompareTo(ulong value); // 0x000A7EB8 + public bool Equals(ulong obj); // 0x000A7EEC + public static ulong Parse(string s); // 0x0042A92C + public static ulong Parse(string s, IFormatProvider provider); // 0x0042A9F8 + public static ulong Parse(string s, NumberStyles style); // 0x0042AA04 + internal static bool Parse(string s, NumberStyles style, IFormatProvider provider, bool tryParse, out ulong result, out Exception exc); // 0x0042AA0C + public static ulong Parse(string s, NumberStyles style, IFormatProvider provider); // 0x0042A938 + public static bool TryParse(string s, out ulong result); // 0x0042B864 + public static bool TryParse(string s, NumberStyles style, IFormatProvider provider, out ulong result); // 0x0042B8B8 + public override string ToString(); // 0x000A7F08 + public string ToString(IFormatProvider provider); // 0x000A7F10 + public string ToString(string format); // 0x000A7F18 + public string ToString(string format, IFormatProvider provider); // 0x000A7F24 + public TypeCode GetTypeCode(); // 0x000A7F2C +} + +// Namespace: System +[Serializable] +public struct Byte : IFormattable, IConvertible, IComparable, IComparable`1, IEquatable`1 // TypeDefIndex: 18 +{ + // Fields + public const byte MinValue = 0; // 0x00 + public const byte MaxValue = 255; // 0x00 + internal byte m_value; // 0x08 + + // Methods + private object System.IConvertible.ToType(Type targetType, IFormatProvider provider); // 0x000A9940 + private bool System.IConvertible.ToBoolean(IFormatProvider provider); // 0x000A9948 + private byte System.IConvertible.ToByte(IFormatProvider provider); // 0x000A9950 + private char System.IConvertible.ToChar(IFormatProvider provider); // 0x000A9958 + private DateTime System.IConvertible.ToDateTime(IFormatProvider provider); // 0x000A9960 + private Decimal System.IConvertible.ToDecimal(IFormatProvider provider); // 0x000A9970 + private double System.IConvertible.ToDouble(IFormatProvider provider); // 0x000A9984 + private short System.IConvertible.ToInt16(IFormatProvider provider); // 0x000A998C + private int System.IConvertible.ToInt32(IFormatProvider provider); // 0x000A9994 + private long System.IConvertible.ToInt64(IFormatProvider provider); // 0x000A999C + private sbyte System.IConvertible.ToSByte(IFormatProvider provider); // 0x000A99A4 + private float System.IConvertible.ToSingle(IFormatProvider provider); // 0x000A99AC + private ushort System.IConvertible.ToUInt16(IFormatProvider provider); // 0x000A99B4 + private uint System.IConvertible.ToUInt32(IFormatProvider provider); // 0x000A99BC + private ulong System.IConvertible.ToUInt64(IFormatProvider provider); // 0x000A99C4 + public int CompareTo(object value); // 0x000A99CC + public override bool Equals(object obj); // 0x000A99D4 + public override int GetHashCode(); // 0x000A99DC + public int CompareTo(byte value); // 0x000A99E4 + public bool Equals(byte obj); // 0x000A99FC + public static byte Parse(string s, IFormatProvider provider); // 0x004FA1E4 + public static byte Parse(string s, NumberStyles style); // 0x004FA2C4 + public static byte Parse(string s, NumberStyles style, IFormatProvider provider); // 0x004FA1F0 + public static byte Parse(string s); // 0x004FA2CC + public static bool TryParse(string s, out byte result); // 0x004FA2D8 + public static bool TryParse(string s, NumberStyles style, IFormatProvider provider, out byte result); // 0x004FA32C + public override string ToString(); // 0x000A9A10 + public string ToString(string format); // 0x000A9A18 + public string ToString(IFormatProvider provider); // 0x000A9A24 + public string ToString(string format, IFormatProvider provider); // 0x000A9A2C + public TypeCode GetTypeCode(); // 0x000A9A34 +} + +// Namespace: System +[Serializable] +public struct SByte : IFormattable, IConvertible, IComparable, IComparable`1, IEquatable`1 // TypeDefIndex: 19 +{ + // Fields + public const sbyte MinValue = 128; // 0x00 + public const sbyte MaxValue = 127; // 0x00 + internal sbyte m_value; // 0x08 + + // Methods + private bool System.IConvertible.ToBoolean(IFormatProvider provider); // 0x0008BE48 + private byte System.IConvertible.ToByte(IFormatProvider provider); // 0x0008BE50 + private char System.IConvertible.ToChar(IFormatProvider provider); // 0x0008BE58 + private DateTime System.IConvertible.ToDateTime(IFormatProvider provider); // 0x0008BE60 + private Decimal System.IConvertible.ToDecimal(IFormatProvider provider); // 0x0008BE74 + private double System.IConvertible.ToDouble(IFormatProvider provider); // 0x0008BE88 + private short System.IConvertible.ToInt16(IFormatProvider provider); // 0x0008BE90 + private int System.IConvertible.ToInt32(IFormatProvider provider); // 0x0008BE98 + private long System.IConvertible.ToInt64(IFormatProvider provider); // 0x0008BEA0 + private sbyte System.IConvertible.ToSByte(IFormatProvider provider); // 0x0008BEA8 + private float System.IConvertible.ToSingle(IFormatProvider provider); // 0x0008BEB0 + private object System.IConvertible.ToType(Type targetType, IFormatProvider provider); // 0x0008BEB8 + private ushort System.IConvertible.ToUInt16(IFormatProvider provider); // 0x0008BEC0 + private uint System.IConvertible.ToUInt32(IFormatProvider provider); // 0x0008BEC8 + private ulong System.IConvertible.ToUInt64(IFormatProvider provider); // 0x0008BED0 + public int CompareTo(object obj); // 0x0008BED8 + public override bool Equals(object obj); // 0x0008BEE0 + public override int GetHashCode(); // 0x0008BEE8 + public int CompareTo(sbyte value); // 0x0008BEF0 + public bool Equals(sbyte obj); // 0x0008BF14 + internal static bool Parse(string s, bool tryParse, out sbyte result, out Exception exc); // 0x0020FF1C + public static sbyte Parse(string s, IFormatProvider provider); // 0x002102E0 + public static sbyte Parse(string s, NumberStyles style); // 0x002103C4 + public static sbyte Parse(string s, NumberStyles style, IFormatProvider provider); // 0x002102EC + public static sbyte Parse(string s); // 0x002103CC + public static bool TryParse(string s, out sbyte result); // 0x0021046C + public static bool TryParse(string s, NumberStyles style, IFormatProvider provider, out sbyte result); // 0x002104B0 + public override string ToString(); // 0x0008BF2C + public string ToString(IFormatProvider provider); // 0x0008BF34 + public string ToString(string format); // 0x0008BF3C + public string ToString(string format, IFormatProvider provider); // 0x0008BF48 + public TypeCode GetTypeCode(); // 0x0008BF50 +} + +// Namespace: System +[Serializable] +public struct Int16 : IFormattable, IConvertible, IComparable, IComparable`1, IEquatable`1 // TypeDefIndex: 20 +{ + // Fields + public const short MaxValue = 32767; // 0x00 + public const short MinValue = -32768; // 0x00 + internal short m_value; // 0x08 + + // Methods + private bool System.IConvertible.ToBoolean(IFormatProvider provider); // 0x0008B4A8 + private byte System.IConvertible.ToByte(IFormatProvider provider); // 0x0008B4B0 + private char System.IConvertible.ToChar(IFormatProvider provider); // 0x0008B4B8 + private DateTime System.IConvertible.ToDateTime(IFormatProvider provider); // 0x0008B4C0 + private Decimal System.IConvertible.ToDecimal(IFormatProvider provider); // 0x0008B4D4 + private double System.IConvertible.ToDouble(IFormatProvider provider); // 0x0008B4E8 + private short System.IConvertible.ToInt16(IFormatProvider provider); // 0x0008B4F0 + private int System.IConvertible.ToInt32(IFormatProvider provider); // 0x0008B4F8 + private long System.IConvertible.ToInt64(IFormatProvider provider); // 0x0008B500 + private sbyte System.IConvertible.ToSByte(IFormatProvider provider); // 0x0008B508 + private float System.IConvertible.ToSingle(IFormatProvider provider); // 0x0008B510 + private object System.IConvertible.ToType(Type targetType, IFormatProvider provider); // 0x0008B518 + private ushort System.IConvertible.ToUInt16(IFormatProvider provider); // 0x0008B520 + private uint System.IConvertible.ToUInt32(IFormatProvider provider); // 0x0008B528 + private ulong System.IConvertible.ToUInt64(IFormatProvider provider); // 0x0008B530 + public int CompareTo(object value); // 0x0008B538 + public override bool Equals(object obj); // 0x0008B540 + public override int GetHashCode(); // 0x0008B548 + public int CompareTo(short value); // 0x0008B550 + public bool Equals(short obj); // 0x0008B574 + internal static bool Parse(string s, bool tryParse, out short result, out Exception exc); // 0x001D783C + public static short Parse(string s, IFormatProvider provider); // 0x001D7CD8 + public static short Parse(string s, NumberStyles style); // 0x001D7DAC + public static short Parse(string s, NumberStyles style, IFormatProvider provider); // 0x001D7CE4 + public static short Parse(string s); // 0x001D7E6C + public static bool TryParse(string s, out short result); // 0x001D7F0C + public static bool TryParse(string s, NumberStyles style, IFormatProvider provider, out short result); // 0x001D7F50 + public override string ToString(); // 0x0008B58C + public string ToString(IFormatProvider provider); // 0x0008B594 + public string ToString(string format); // 0x0008B59C + public string ToString(string format, IFormatProvider provider); // 0x0008B5A8 + public TypeCode GetTypeCode(); // 0x0008B5B0 +} + +// Namespace: System +[Serializable] +public struct UInt16 : IFormattable, IConvertible, IComparable, IComparable`1, IEquatable`1 // TypeDefIndex: 21 +{ + // Fields + public const ushort MaxValue = 65535; // 0x00 + public const ushort MinValue = 0; // 0x00 + internal ushort m_value; // 0x08 + + // Methods + private bool System.IConvertible.ToBoolean(IFormatProvider provider); // 0x000A7C18 + private byte System.IConvertible.ToByte(IFormatProvider provider); // 0x000A7C20 + private char System.IConvertible.ToChar(IFormatProvider provider); // 0x000A7C28 + private DateTime System.IConvertible.ToDateTime(IFormatProvider provider); // 0x000A7C30 + private Decimal System.IConvertible.ToDecimal(IFormatProvider provider); // 0x000A7C44 + private double System.IConvertible.ToDouble(IFormatProvider provider); // 0x000A7C58 + private short System.IConvertible.ToInt16(IFormatProvider provider); // 0x000A7C60 + private int System.IConvertible.ToInt32(IFormatProvider provider); // 0x000A7C68 + private long System.IConvertible.ToInt64(IFormatProvider provider); // 0x000A7C70 + private sbyte System.IConvertible.ToSByte(IFormatProvider provider); // 0x000A7C78 + private float System.IConvertible.ToSingle(IFormatProvider provider); // 0x000A7C80 + private object System.IConvertible.ToType(Type targetType, IFormatProvider provider); // 0x000A7C88 + private ushort System.IConvertible.ToUInt16(IFormatProvider provider); // 0x000A7C90 + private uint System.IConvertible.ToUInt32(IFormatProvider provider); // 0x000A7C98 + private ulong System.IConvertible.ToUInt64(IFormatProvider provider); // 0x000A7CA0 + public int CompareTo(object value); // 0x000A7CA8 + public override bool Equals(object obj); // 0x000A7CB0 + public override int GetHashCode(); // 0x000A7CB8 + public int CompareTo(ushort value); // 0x000A7CC0 + public bool Equals(ushort obj); // 0x000A7CCC + public static ushort Parse(string s, IFormatProvider provider); // 0x00427C88 + public static ushort Parse(string s, NumberStyles style); // 0x00427D64 + public static ushort Parse(string s, NumberStyles style, IFormatProvider provider); // 0x00427C94 + public static ushort Parse(string s); // 0x00427E24 + public static bool TryParse(string s, out ushort result); // 0x00427E30 + public static bool TryParse(string s, NumberStyles style, IFormatProvider provider, out ushort result); // 0x00427E54 + public override string ToString(); // 0x000A7CE0 + public string ToString(IFormatProvider provider); // 0x000A7CE8 + public string ToString(string format); // 0x000A7CF0 + public string ToString(string format, IFormatProvider provider); // 0x000A7CFC + public TypeCode GetTypeCode(); // 0x000A7D04 +} + +// Namespace: System.Collections +public interface IEnumerator // TypeDefIndex: 22 +{ + // Properties + object Current { get; } + + // Methods + bool MoveNext(); + void Reset(); +} + +// Namespace: System.Collections +public interface IEnumerable // TypeDefIndex: 23 +{ + // Methods + IEnumerator GetEnumerator(); +} + +// Namespace: System +public interface IDisposable // TypeDefIndex: 24 +{ + // Methods + void Dispose(); +} + +// Namespace: System.Collections.Generic +public interface IEnumerator`1 : IEnumerator, IDisposable // TypeDefIndex: 25 +{ + // Properties + T Current { get; } + +} + +// Namespace: System +[Serializable] +public struct Char : IConvertible, IComparable, IComparable`1, IEquatable`1 // TypeDefIndex: 26 +{ + // Fields + public const char MaxValue = '\xffff'; // 0x00 + public const char MinValue = '\x0000'; // 0x00 + internal char m_value; // 0x08 + private static readonly void * category_data; // 0x00 + private static readonly void * numeric_data; // 0x04 + private static readonly void * numeric_data_values; // 0x08 + private static readonly void * to_lower_data_low; // 0x0C + private static readonly void * to_lower_data_high; // 0x10 + private static readonly void * to_upper_data_low; // 0x14 + private static readonly void * to_upper_data_high; // 0x18 + + // Methods + private static void .cctor(); // 0x004FA64C + private object System.IConvertible.ToType(Type targetType, IFormatProvider provider); // 0x000A9A3C + private bool System.IConvertible.ToBoolean(IFormatProvider provider); // 0x000A9A44 + private byte System.IConvertible.ToByte(IFormatProvider provider); // 0x000A9A54 + private char System.IConvertible.ToChar(IFormatProvider provider); // 0x000A9A5C + private DateTime System.IConvertible.ToDateTime(IFormatProvider provider); // 0x000A9A64 + private Decimal System.IConvertible.ToDecimal(IFormatProvider provider); // 0x000A9A74 + private double System.IConvertible.ToDouble(IFormatProvider provider); // 0x000A9A84 + private short System.IConvertible.ToInt16(IFormatProvider provider); // 0x000A9A94 + private int System.IConvertible.ToInt32(IFormatProvider provider); // 0x000A9A9C + private long System.IConvertible.ToInt64(IFormatProvider provider); // 0x000A9AA4 + private sbyte System.IConvertible.ToSByte(IFormatProvider provider); // 0x000A9AAC + private float System.IConvertible.ToSingle(IFormatProvider provider); // 0x000A9AB4 + private ushort System.IConvertible.ToUInt16(IFormatProvider provider); // 0x000A9AC4 + private uint System.IConvertible.ToUInt32(IFormatProvider provider); // 0x000A9ACC + private ulong System.IConvertible.ToUInt64(IFormatProvider provider); // 0x000A9AD4 + private static void GetDataTablePointers(out void * category_data, out void * numeric_data, out void * numeric_data_values, out void * to_lower_data_low, out void * to_lower_data_high, out void * to_upper_data_low, out void * to_upper_data_high); // 0x004FA6D8 + public int CompareTo(object value); // 0x000A9ADC + public override bool Equals(object obj); // 0x000A9AE4 + public int CompareTo(char value); // 0x000A9AEC + public static string ConvertFromUtf32(int utf32); // 0x004FB0A8 + public static int ConvertToUtf32(char highSurrogate, char lowSurrogate); // 0x004FB278 + public static int ConvertToUtf32(string s, int index); // 0x004FB384 + public bool Equals(char obj); // 0x000A9B04 + public static bool IsSurrogatePair(char highSurrogate, char lowSurrogate); // 0x004FB820 + public static bool IsSurrogatePair(string s, int index); // 0x004FB83C + public override int GetHashCode(); // 0x000A9B18 + public static double GetNumericValue(char c); // 0x004FB960 + public static double GetNumericValue(string s, int index); // 0x004FBA3C + public static UnicodeCategory GetUnicodeCategory(char c); // 0x004FBAE8 + public static UnicodeCategory GetUnicodeCategory(string s, int index); // 0x004FBB7C + public static bool IsControl(char c); // 0x004FBC28 + public static bool IsControl(string s, int index); // 0x004FBCC8 + public static bool IsDigit(char c); // 0x004FBD74 + public static bool IsDigit(string s, int index); // 0x004FBE14 + public static bool IsHighSurrogate(char c); // 0x004FB7E4 + public static bool IsHighSurrogate(string s, int index); // 0x004FBEC0 + public static bool IsLetter(char c); // 0x004FBF7C + public static bool IsLetter(string s, int index); // 0x004FC01C + public static bool IsLetterOrDigit(char c); // 0x004FC0C8 + public static bool IsLetterOrDigit(string s, int index); // 0x004FC178 + public static bool IsLower(char c); // 0x004FC224 + public static bool IsLower(string s, int index); // 0x004FC2C0 + public static bool IsLowSurrogate(char c); // 0x004FB7F8 + public static bool IsLowSurrogate(string s, int index); // 0x004FC36C + public static bool IsNumber(char c); // 0x004FC428 + public static bool IsNumber(string s, int index); // 0x004FC4D0 + public static bool IsPunctuation(char c); // 0x004FC57C + public static bool IsPunctuation(string s, int index); // 0x004FC624 + public static bool IsSeparator(char c); // 0x004FC6D0 + public static bool IsSeparator(string s, int index); // 0x004FC778 + public static bool IsSurrogate(char c); // 0x004FB744 + public static bool IsSurrogate(string s, int index); // 0x004FC824 + public static bool IsSymbol(char c); // 0x004FC8D0 + public static bool IsSymbol(string s, int index); // 0x004FC978 + public static bool IsUpper(char c); // 0x004FCA24 + public static bool IsUpper(string s, int index); // 0x004FCAC4 + public static bool IsWhiteSpace(char c); // 0x004FCB70 + public static bool IsWhiteSpace(string s, int index); // 0x004FCC54 + private static void CheckParameter(string s, int index); // 0x004FB630 + public static bool TryParse(string s, out char result); // 0x004FCD00 + public static char Parse(string s); // 0x004FCD58 + public static char ToLower(char c); // 0x004FCE78 + public static char ToLowerInvariant(char c); // 0x004FCF4C + public static char ToLower(char c, CultureInfo culture); // 0x004FD054 + public static char ToUpper(char c); // 0x004FD198 + public static char ToUpperInvariant(char c); // 0x004FD26C + public static char ToUpper(char c, CultureInfo culture); // 0x004FD374 + public override string ToString(); // 0x000A9B20 + public static string ToString(char c); // 0x004FD4CC + public string ToString(IFormatProvider provider); // 0x000A9B34 + public TypeCode GetTypeCode(); // 0x000A9B48 +} + +// Namespace: System +[Serializable] +public sealed class String : IConvertible, IComparable, IEnumerable, ICloneable, IComparable`1, IEquatable`1, IEnumerable`1 // TypeDefIndex: 27 +{ + // Fields + [NonSerialized] private int length; // 0x08 + [NonSerialized] private char start_char; // 0x0C + public static readonly string Empty; // 0x00 + private static readonly char[] WhiteChars; // 0x04 + + // Properties + public char Chars { get; } // 0x00234500 + public int Length { get; } // 0x00253A04 + + // Methods + public void .ctor(void * value); // 0x00248AA0 + public void .ctor(void * value, int startIndex, int length); // 0x00248AA4 + public void .ctor(void * value); // 0x00248AA8 + public void .ctor(void * value, int startIndex, int length); // 0x00248AAC + public void .ctor(void * value, int startIndex, int length, Encoding enc); // 0x00248AB0 + public void .ctor(char[] value, int startIndex, int length); // 0x00248AB4 + public void .ctor(char[] value); // 0x00248AB8 + public void .ctor(char c, int count); // 0x00248ABC + private static void .cctor(); // 0x00248AC0 + private bool System.IConvertible.ToBoolean(IFormatProvider provider); // 0x00248B74 + private byte System.IConvertible.ToByte(IFormatProvider provider); // 0x00248C00 + private char System.IConvertible.ToChar(IFormatProvider provider); // 0x00248C8C + private DateTime System.IConvertible.ToDateTime(IFormatProvider provider); // 0x00248D18 + private Decimal System.IConvertible.ToDecimal(IFormatProvider provider); // 0x00248DAC + private double System.IConvertible.ToDouble(IFormatProvider provider); // 0x00248E40 + private short System.IConvertible.ToInt16(IFormatProvider provider); // 0x00248ECC + private int System.IConvertible.ToInt32(IFormatProvider provider); // 0x00248F58 + private long System.IConvertible.ToInt64(IFormatProvider provider); // 0x00248FE4 + private sbyte System.IConvertible.ToSByte(IFormatProvider provider); // 0x00249070 + private float System.IConvertible.ToSingle(IFormatProvider provider); // 0x002490FC + private object System.IConvertible.ToType(Type targetType, IFormatProvider provider); // 0x00249188 + private ushort System.IConvertible.ToUInt16(IFormatProvider provider); // 0x0024928C + private uint System.IConvertible.ToUInt32(IFormatProvider provider); // 0x00249318 + private ulong System.IConvertible.ToUInt64(IFormatProvider provider); // 0x002493A4 + private IEnumerator`1 System.Collections.Generic.IEnumerable.GetEnumerator(); // 0x00249430 + private IEnumerator System.Collections.IEnumerable.GetEnumerator(); // 0x002494A4 + public static bool Equals(string a, string b); // 0x00249518 + public override bool Equals(object obj); // 0x00249634 + public bool Equals(string value); // 0x002496E8 + public object Clone(); // 0x00249770 + public TypeCode GetTypeCode(); // 0x00249774 + public void CopyTo(int sourceIndex, char[] destination, int destinationIndex, int count); // 0x0024977C + public char[] ToCharArray(); // 0x00249B74 + public char[] ToCharArray(int startIndex, int length); // 0x00249B80 + public string[] Split(char[] separator); // 0x00249D88 + public string[] Split(char[] separator, int count); // 0x00249D90 + public string[] Split(char[] separator, int count, StringSplitOptions options); // 0x00249F60 + public string[] Split(string[] separator, int count, StringSplitOptions options); // 0x0024A354 + public string[] Split(char[] separator, StringSplitOptions options); // 0x0024A988 + public string[] Split(string[] separator, StringSplitOptions options); // 0x0024A9A8 + public string Substring(int startIndex); // 0x0023442C + public string Substring(int startIndex, int length); // 0x002345AC + internal string SubstringUnchecked(int startIndex, int length); // 0x0024A9C8 + public string Trim(); // 0x0024AAC4 + public string Trim(char[] trimChars); // 0x0024ACFC + public string TrimStart(char[] trimChars); // 0x0024AF28 + public string TrimEnd(char[] trimChars); // 0x0024B034 + private int FindNotWhiteSpace(int pos, int target, int change); // 0x0024AC04 + private int FindNotInTable(int pos, int target, int change, char[] table); // 0x0024AE68 + public static int Compare(string strA, string strB); // 0x0024B148 + public static int Compare(string strA, string strB, bool ignoreCase); // 0x0024B234 + public static int Compare(string strA, string strB, bool ignoreCase, CultureInfo culture); // 0x00233BC0 + public static int Compare(string strA, int indexA, string strB, int indexB, int length); // 0x0024B324 + public static int Compare(string strA, int indexA, string strB, int indexB, int length, bool ignoreCase); // 0x0023700C + public static int Compare(string strA, int indexA, string strB, int indexB, int length, bool ignoreCase, CultureInfo culture); // 0x00234FE4 + public static int Compare(string strA, string strB, StringComparison comparisonType); // 0x0024B40C + public static int Compare(string strA, int indexA, string strB, int indexB, int length, StringComparison comparisonType); // 0x0024BA54 + public static bool Equals(string a, string b, StringComparison comparisonType); // 0x0024C050 + public bool Equals(string value, StringComparison comparisonType); // 0x0024C0F0 + public static int Compare(string strA, string strB, CultureInfo culture, CompareOptions options); // 0x0024C190 + public static int Compare(string strA, int indexA, string strB, int indexB, int length, CultureInfo culture, CompareOptions options); // 0x0024C29C + public int CompareTo(object value); // 0x0024C404 + public int CompareTo(string strB); // 0x00239350 + public static int CompareOrdinal(string strA, string strB); // 0x0024C514 + public static int CompareOrdinal(string strA, int indexA, string strB, int indexB, int length); // 0x0024BDF0 + internal static int CompareOrdinalCaseInsensitive(string strA, int indexA, string strB, int indexB, int length); // 0x0024BF20 + internal static int CompareOrdinalUnchecked(string strA, int indexA, int lenA, string strB, int indexB, int lenB); // 0x0024B7A4 + internal static int CompareOrdinalCaseInsensitiveUnchecked(string strA, int indexA, int lenA, string strB, int indexB, int lenB); // 0x0024B8B0 + public bool EndsWith(string value); // 0x0024C5BC + public bool EndsWith(string value, bool ignoreCase, CultureInfo culture); // 0x0024C708 + public int IndexOfAny(char[] anyOf); // 0x0023FE9C + public int IndexOfAny(char[] anyOf, int startIndex); // 0x0024C97C + public int IndexOfAny(char[] anyOf, int startIndex, int count); // 0x0024CA78 + private int IndexOfAnyUnchecked(char[] anyOf, int startIndex, int count); // 0x0024C868 + public int IndexOf(string value, StringComparison comparisonType); // 0x0024CD80 + public int IndexOf(string value, int startIndex, StringComparison comparisonType); // 0x0024D0D0 + public int IndexOf(string value, int startIndex, int count, StringComparison comparisonType); // 0x0024CDA4 + internal int IndexOfOrdinal(string value, int startIndex, int count, CompareOptions options); // 0x0024D0F4 + internal int IndexOfOrdinalUnchecked(string value, int startIndex, int count); // 0x0024D294 + internal int IndexOfOrdinalIgnoreCaseUnchecked(string value, int startIndex, int count); // 0x0024D3B0 + public int LastIndexOf(string value, StringComparison comparisonType); // 0x0024D540 + public int LastIndexOf(string value, int startIndex, StringComparison comparisonType); // 0x0024D944 + public int LastIndexOf(string value, int startIndex, int count, StringComparison comparisonType); // 0x0024D618 + internal int LastIndexOfOrdinal(string value, int startIndex, int count, CompareOptions options); // 0x0024D964 + internal int LastIndexOfOrdinalUnchecked(string value, int startIndex, int count); // 0x0024DB0C + internal int LastIndexOfOrdinalIgnoreCaseUnchecked(string value, int startIndex, int count); // 0x0024DC4C + public int IndexOf(char value); // 0x00235714 + public int IndexOf(char value, int startIndex); // 0x0024DF8C + public int IndexOf(char value, int startIndex, int count); // 0x0024E0E4 + internal int IndexOfUnchecked(char value, int startIndex, int count); // 0x0024CBDC + internal int IndexOfOrdinalIgnoreCase(char value, int startIndex, int count); // 0x0024E2AC + public int IndexOf(string value); // 0x002338D8 + public int IndexOf(string value, int startIndex); // 0x0024A968 + public int IndexOf(string value, int startIndex, int count); // 0x0024E3CC + public int LastIndexOfAny(char[] anyOf); // 0x0024E628 + public int LastIndexOfAny(char[] anyOf, int startIndex); // 0x0024E7B8 + public int LastIndexOfAny(char[] anyOf, int startIndex, int count); // 0x0024E8EC + private int LastIndexOfAnyUnchecked(char[] anyOf, int startIndex, int count); // 0x0024E6E0 + public int LastIndexOf(char value); // 0x0024EAD8 + public int LastIndexOf(char value, int startIndex); // 0x0024EB04 + public int LastIndexOf(char value, int startIndex, int count); // 0x0024EB20 + internal int LastIndexOfUnchecked(char value, int startIndex, int count); // 0x0024DDE0 + internal int LastIndexOfOrdinalIgnoreCase(char value, int startIndex, int count); // 0x0024ECE4 + public int LastIndexOf(string value); // 0x00234FB8 + public int LastIndexOf(string value, int startIndex); // 0x0024F0DC + public int LastIndexOf(string value, int startIndex, int count); // 0x0024EE04 + public bool Contains(string value); // 0x0024F104 + public static bool IsNullOrEmpty(string value); // 0x0024F124 + public string Normalize(); // 0x0024F144 + public string Normalize(NormalizationForm normalizationForm); // 0x0024F1CC + public bool IsNormalized(); // 0x0024F2B0 + public bool IsNormalized(NormalizationForm normalizationForm); // 0x0024F338 + public string Remove(int startIndex); // 0x0024F41C + public string PadLeft(int totalWidth); // 0x0024F74C + public string PadLeft(int totalWidth, char paddingChar); // 0x0024F754 + public string PadRight(int totalWidth); // 0x0024F8F8 + public string PadRight(int totalWidth, char paddingChar); // 0x0024F900 + public bool StartsWith(string value); // 0x002342E0 + public bool StartsWith(string value, StringComparison comparisonType); // 0x0024FAA0 + public bool EndsWith(string value, StringComparison comparisonType); // 0x0024FEC0 + public bool StartsWith(string value, bool ignoreCase, CultureInfo culture); // 0x002502E0 + public string Replace(char oldChar, char newChar); // 0x002503E0 + public string Replace(string oldValue, string newValue); // 0x00250548 + private string ReplaceUnchecked(string oldValue, string newValue); // 0x002506BC + private string ReplaceFallback(string oldValue, string newValue, int testedCount); // 0x002509DC + public string Remove(int startIndex, int count); // 0x0024F54C + public string ToLower(); // 0x00250B90 + public string ToLower(CultureInfo culture); // 0x00250C1C + public string ToLowerInvariant(); // 0x00250D34 + public string ToUpper(); // 0x002381CC + public string ToUpper(CultureInfo culture); // 0x00250E7C + public string ToUpperInvariant(); // 0x00238D38 + public override string ToString(); // 0x00250F94 + public string ToString(IFormatProvider provider); // 0x00250F98 + public static string Format(string format, object arg0); // 0x00235928 + public static string Format(string format, object arg0, object arg1); // 0x002473A4 + public static string Format(string format, object arg0, object arg1, object arg2); // 0x00251058 + public static string Format(string format, object[] args); // 0x00251208 + public static string Format(IFormatProvider provider, string format, object[] args); // 0x00250F9C + internal static StringBuilder FormatHelper(StringBuilder result, IFormatProvider provider, string format, object[] args); // 0x00251294 + public static string Copy(string str); // 0x00252064 + public static string Concat(object arg0); // 0x002521B4 + public static string Concat(object arg0, object arg1); // 0x00236910 + public static string Concat(object arg0, object arg1, object arg2); // 0x0024A18C + public static string Concat(object arg0, object arg1, object arg2, object arg3); // 0x00252264 + public static string Concat(string str0, string str1); // 0x00233A5C + public static string Concat(string str0, string str1, string str2); // 0x00238410 + public static string Concat(string str0, string str1, string str2, string str3); // 0x00252548 + public static string Concat(object[] args); // 0x002529C8 + public static string Concat(string[] values); // 0x00252E08 + private static string ConcatInternal(string[] values, int length); // 0x00252C68 + public string Insert(int startIndex, string value); // 0x00252F44 + public static string Intern(string str); // 0x00253124 + public static string IsInterned(string str); // 0x00253208 + public static string Join(string separator, string[] value); // 0x002532EC + public static string Join(string separator, string[] value, int startIndex, int count); // 0x00253758 + private static string JoinUnchecked(string separator, string[] value, int startIndex, int count); // 0x00253420 + public CharEnumerator GetEnumerator(); // 0x00253A0C + private static void ParseFormatSpecifier(string str, int ptr, out int n, out int width, out bool left_align, out string format); // 0x00251B00 + private static int ParseDecimal(string str, int ptr); // 0x00253A80 + internal void InternalSetChar(int idx, char val); // 0x00253AF0 + internal void InternalSetLength(int newLength); // 0x00253BAC + public override int GetHashCode(); // 0x00233DE4 + internal int GetCaseInsensitiveHashCode(); // 0x00253C98 + private string CreateString(void * value); // 0x00253DE0 + private string CreateString(void * value, int startIndex, int length); // 0x00254390 + private string CreateString(void * value, int startIndex, int length, Encoding enc); // 0x00253EC4 + private string CreateString(void * value); // 0x0025451C + private string CreateString(void * value, int startIndex, int length); // 0x0025466C + private string CreateString(char[] val, int startIndex, int length); // 0x0025485C + private string CreateString(char[] val); // 0x00254B00 + private string CreateString(char c, int count); // 0x00254C70 + internal static void memset(void * dest, int val, int len); // 0x00254DBC + private static void memcpy4(void * dest, void * src, int size); // 0x00254E7C + private static void memcpy2(void * dest, void * src, int size); // 0x00254F08 + private static void memcpy1(void * dest, void * src, int size); // 0x00254F80 + internal static void memcpy(void * dest, void * src, int size); // 0x002543B0 + internal static void CharCopy(void * dest, void * src, int count); // 0x00249A70 + internal static void CharCopyReverse(void * dest, void * src, int count); // 0x00255028 + internal static void CharCopy(string target, int targetIndex, string source, int sourceIndex, int count); // 0x00255058 + internal static void CharCopy(string target, int targetIndex, char[] source, int sourceIndex, int count); // 0x00255118 + internal static void CharCopyReverse(string target, int targetIndex, string source, int sourceIndex, int count); // 0x002551E0 + private string[] InternalSplit(char[] separator, int count, int options); // 0x00249F5C + internal static string InternalAllocateStr(int length); // 0x0024AAC0 + private static string InternalIntern(string str); // 0x00253204 + private static string InternalIsInterned(string str); // 0x002532E8 + public static bool op_Equality(string a, string b); // 0x00234258 + public static bool op_Inequality(string a, string b); // 0x00230EEC +} + +// Namespace: System +public interface ICloneable // TypeDefIndex: 28 +{ + // Methods + object Clone(); +} + +// Namespace: System.Collections.Generic +public interface IEnumerable`1 : IEnumerable // TypeDefIndex: 29 +{ + // Methods + IEnumerator`1 GetEnumerator(); +} + +// Namespace: System +[Serializable] +public struct Single : IFormattable, IConvertible, IComparable, IComparable`1, IEquatable`1 // TypeDefIndex: 30 +{ + // Fields + public const float Epsilon = 1E-45; // 0x00 + public const float MaxValue = 3.4028235E+38; // 0x00 + public const float MinValue = -3.4028235E+38; // 0x00 + public const float NaN = NaN; // 0x00 + public const float PositiveInfinity = ∞; // 0x00 + public const float NegativeInfinity = -∞; // 0x00 + private const double MaxValueEpsilon = 3.6147112457961776E+29; // 0x00 + internal float m_value; // 0x08 + + // Methods + private bool System.IConvertible.ToBoolean(IFormatProvider provider); // 0x0008C554 + private byte System.IConvertible.ToByte(IFormatProvider provider); // 0x0008C55C + private char System.IConvertible.ToChar(IFormatProvider provider); // 0x0008C564 + private DateTime System.IConvertible.ToDateTime(IFormatProvider provider); // 0x0008C56C + private Decimal System.IConvertible.ToDecimal(IFormatProvider provider); // 0x0008C580 + private double System.IConvertible.ToDouble(IFormatProvider provider); // 0x0008C594 + private short System.IConvertible.ToInt16(IFormatProvider provider); // 0x0008C59C + private int System.IConvertible.ToInt32(IFormatProvider provider); // 0x0008C5A4 + private long System.IConvertible.ToInt64(IFormatProvider provider); // 0x0008C5AC + private sbyte System.IConvertible.ToSByte(IFormatProvider provider); // 0x0008C5B4 + private float System.IConvertible.ToSingle(IFormatProvider provider); // 0x0008C5BC + private object System.IConvertible.ToType(Type targetType, IFormatProvider provider); // 0x0008C5C4 + private ushort System.IConvertible.ToUInt16(IFormatProvider provider); // 0x0008C5CC + private uint System.IConvertible.ToUInt32(IFormatProvider provider); // 0x0008C5D4 + private ulong System.IConvertible.ToUInt64(IFormatProvider provider); // 0x0008C5DC + public int CompareTo(object value); // 0x0008C5E4 + public override bool Equals(object obj); // 0x0008C5EC + public int CompareTo(float value); // 0x0008C5F4 + public bool Equals(float obj); // 0x0008C5FC + public override int GetHashCode(); // 0x0008C634 + public static bool IsInfinity(float f); // 0x00248320 + public static bool IsNaN(float f); // 0x002480E8 + public static bool IsNegativeInfinity(float f); // 0x002480A0 + public static bool IsPositiveInfinity(float f); // 0x00248058 + public static float Parse(string s); // 0x00248360 + public static float Parse(string s, IFormatProvider provider); // 0x00248458 + public static float Parse(string s, NumberStyles style); // 0x00248550 + public static float Parse(string s, NumberStyles style, IFormatProvider provider); // 0x00248648 + public static bool TryParse(string s, NumberStyles style, IFormatProvider provider, out float result); // 0x00248748 + public static bool TryParse(string s, out float result); // 0x002487FC + public override string ToString(); // 0x0008C63C + public string ToString(IFormatProvider provider); // 0x0008C644 + public string ToString(string format); // 0x0008C64C + public string ToString(string format, IFormatProvider provider); // 0x0008C658 + public TypeCode GetTypeCode(); // 0x0008C660 +} + +// Namespace: System +[Serializable] +public struct Double : IFormattable, IConvertible, IComparable, IComparable`1, IEquatable`1 // TypeDefIndex: 31 +{ + // Fields + public const double Epsilon = 5E-324; // 0x00 + public const double MaxValue = 1.7976931348623157E+308; // 0x00 + public const double MinValue = -1.7976931348623157E+308; // 0x00 + public const double NaN = NaN; // 0x00 + public const double NegativeInfinity = -∞; // 0x00 + public const double PositiveInfinity = ∞; // 0x00 + private const int State_AllowSign = 1; // 0x00 + private const int State_Digits = 2; // 0x00 + private const int State_Decimal = 3; // 0x00 + private const int State_ExponentSign = 4; // 0x00 + private const int State_Exponent = 5; // 0x00 + private const int State_ConsumeWhiteSpace = 6; // 0x00 + private const int State_Exit = 7; // 0x00 + internal double m_value; // 0x08 + + // Methods + private object System.IConvertible.ToType(Type targetType, IFormatProvider provider); // 0x0008D198 + private bool System.IConvertible.ToBoolean(IFormatProvider provider); // 0x0008D1A0 + private byte System.IConvertible.ToByte(IFormatProvider provider); // 0x0008D1A8 + private char System.IConvertible.ToChar(IFormatProvider provider); // 0x0008D1B0 + private DateTime System.IConvertible.ToDateTime(IFormatProvider provider); // 0x0008D1C0 + private Decimal System.IConvertible.ToDecimal(IFormatProvider provider); // 0x0008D1D0 + private double System.IConvertible.ToDouble(IFormatProvider provider); // 0x0008D1E4 + private short System.IConvertible.ToInt16(IFormatProvider provider); // 0x0008D1EC + private int System.IConvertible.ToInt32(IFormatProvider provider); // 0x0008D1F4 + private long System.IConvertible.ToInt64(IFormatProvider provider); // 0x0008D1FC + private sbyte System.IConvertible.ToSByte(IFormatProvider provider); // 0x0008D204 + private float System.IConvertible.ToSingle(IFormatProvider provider); // 0x0008D20C + private ushort System.IConvertible.ToUInt16(IFormatProvider provider); // 0x0008D214 + private uint System.IConvertible.ToUInt32(IFormatProvider provider); // 0x0008D21C + private ulong System.IConvertible.ToUInt64(IFormatProvider provider); // 0x0008D224 + public int CompareTo(object value); // 0x0008D22C + public override bool Equals(object obj); // 0x0008D234 + public int CompareTo(double value); // 0x0008D23C + public bool Equals(double obj); // 0x0008D258 + public override int GetHashCode(); // 0x0008D290 + public static bool IsInfinity(double d); // 0x002D6B90 + public static bool IsNaN(double d); // 0x002D6950 + public static bool IsNegativeInfinity(double d); // 0x002D6900 + public static bool IsPositiveInfinity(double d); // 0x002D68B0 + public static double Parse(string s); // 0x002D6BD8 + public static double Parse(string s, IFormatProvider provider); // 0x002D6CA4 + public static double Parse(string s, NumberStyles style); // 0x002D6CB0 + public static double Parse(string s, NumberStyles style, IFormatProvider provider); // 0x002D6BE4 + internal static bool Parse(string s, NumberStyles style, IFormatProvider provider, bool tryParse, out double result, out Exception exc); // 0x002D6CB8 + private static bool TryParseStringConstant(string format, string s, int start, int end); // 0x002D811C + private static bool ParseImpl(void * byte_ptr, out double value); // 0x002D821C + public static bool TryParse(string s, NumberStyles style, IFormatProvider provider, out double result); // 0x002D8220 + public static bool TryParse(string s, out double result); // 0x002D826C + public override string ToString(); // 0x0008D29C + public string ToString(IFormatProvider provider); // 0x0008D2A4 + public string ToString(string format); // 0x0008D2AC + public string ToString(string format, IFormatProvider provider); // 0x0008D2B8 + public TypeCode GetTypeCode(); // 0x0008D2C0 +} + +// Namespace: System +[Serializable] +public struct Decimal : IFormattable, IConvertible, IComparable, IComparable`1, IEquatable`1 // TypeDefIndex: 32 +{ + // Fields + public static readonly Decimal MinValue; // 0x00 + public static readonly Decimal MaxValue; // 0x10 + public static readonly Decimal MinusOne; // 0x20 + public static readonly Decimal One; // 0x30 + public static readonly Decimal Zero; // 0x40 + private const int DECIMAL_DIVIDE_BY_ZERO = 5; // 0x00 + private const uint MAX_SCALE = 28; // 0x00 + private const int iMAX_SCALE = 28; // 0x00 + private const uint SIGN_FLAG = 2147483648; // 0x00 + private const uint SCALE_MASK = 16711680; // 0x00 + private const int SCALE_SHIFT = 16; // 0x00 + private const uint RESERVED_SS32_BITS = 2130771967; // 0x00 + private static readonly Decimal MaxValueDiv10; // 0x50 + private uint flags; // 0x08 + private uint hi; // 0x0C + private uint lo; // 0x10 + private uint mid; // 0x14 + + // Methods + public void .ctor(int lo, int mid, int hi, bool isNegative, byte scale); // 0x000A95D8 + public void .ctor(int value); // 0x000A9600 + public void .ctor(uint value); // 0x000A9628 + public void .ctor(long value); // 0x000A9640 + public void .ctor(ulong value); // 0x000A9674 + public void .ctor(float value); // 0x000A9688 + public void .ctor(double value); // 0x000A9690 + public void .ctor(int[] bits); // 0x000A96AC + private static void .cctor(); // 0x004C1AC8 + private object System.IConvertible.ToType(Type targetType, IFormatProvider provider); // 0x000A96B4 + private bool System.IConvertible.ToBoolean(IFormatProvider provider); // 0x000A96BC + private byte System.IConvertible.ToByte(IFormatProvider provider); // 0x000A96C4 + private char System.IConvertible.ToChar(IFormatProvider provider); // 0x000A96CC + private DateTime System.IConvertible.ToDateTime(IFormatProvider provider); // 0x000A96DC + private Decimal System.IConvertible.ToDecimal(IFormatProvider provider); // 0x000A96EC + private double System.IConvertible.ToDouble(IFormatProvider provider); // 0x000A96FC + private short System.IConvertible.ToInt16(IFormatProvider provider); // 0x000A9704 + private int System.IConvertible.ToInt32(IFormatProvider provider); // 0x000A970C + private long System.IConvertible.ToInt64(IFormatProvider provider); // 0x000A9714 + private sbyte System.IConvertible.ToSByte(IFormatProvider provider); // 0x000A971C + private float System.IConvertible.ToSingle(IFormatProvider provider); // 0x000A9724 + private ushort System.IConvertible.ToUInt16(IFormatProvider provider); // 0x000A972C + private uint System.IConvertible.ToUInt32(IFormatProvider provider); // 0x000A9734 + private ulong System.IConvertible.ToUInt64(IFormatProvider provider); // 0x000A973C + public static Decimal FromOACurrency(long cy); // 0x004C2564 + public static int[] GetBits(Decimal d); // 0x004C2734 + public static Decimal Negate(Decimal d); // 0x004C283C + public static Decimal Add(Decimal d1, Decimal d2); // 0x004C284C + public static Decimal Subtract(Decimal d1, Decimal d2); // 0x004C2984 + public override int GetHashCode(); // 0x000A9744 + private static ulong u64(Decimal value); // 0x004C2B44 + private static long s64(Decimal value); // 0x004C2C48 + public static bool Equals(Decimal d1, Decimal d2); // 0x004C2D48 + public override bool Equals(object value); // 0x000A9760 + private bool IsZero(); // 0x000A9768 + private bool IsNegative(); // 0x000A979C + public static Decimal Floor(Decimal d); // 0x004C2FFC + public static Decimal Truncate(Decimal d); // 0x004C30A4 + public static Decimal Round(Decimal d, int decimals); // 0x004C314C + public static Decimal Round(Decimal d, int decimals, MidpointRounding mode); // 0x004C3200 + public static Decimal Round(Decimal d); // 0x004C3BA4 + public static Decimal Round(Decimal d, MidpointRounding mode); // 0x004C3BC8 + public static Decimal Multiply(Decimal d1, Decimal d2); // 0x004C3BF4 + public static Decimal Divide(Decimal d1, Decimal d2); // 0x004C3D28 + public static Decimal Remainder(Decimal d1, Decimal d2); // 0x004C3EA4 + public static int Compare(Decimal d1, Decimal d2); // 0x004C2E18 + public int CompareTo(object value); // 0x000A97A8 + public int CompareTo(Decimal value); // 0x000A97B0 + public bool Equals(Decimal value); // 0x000A97D4 + public static Decimal Ceiling(Decimal d); // 0x004C45E4 + public static Decimal Parse(string s); // 0x004C4608 + public static Decimal Parse(string s, NumberStyles style); // 0x004C46A0 + public static Decimal Parse(string s, IFormatProvider provider); // 0x004C473C + private static void ThrowAtPos(int pos); // 0x004C47D8 + private static void ThrowInvalidExp(); // 0x004C48E8 + private static string stripStyles(string s, NumberStyles style, NumberFormatInfo nfi, out int decPos, out bool isNegative, out bool expFlag, out int exp, bool throwex); // 0x004C4990 + public static Decimal Parse(string s, NumberStyles style, IFormatProvider provider); // 0x004C14DC + public static bool TryParse(string s, out Decimal result); // 0x004C5F4C + public static bool TryParse(string s, NumberStyles style, IFormatProvider provider, out Decimal result); // 0x004C6008 + private static bool PerformParse(string s, NumberStyles style, IFormatProvider provider, out Decimal res, bool throwex); // 0x004C593C + public TypeCode GetTypeCode(); // 0x000A97F8 + public static byte ToByte(Decimal value); // 0x004C60E4 + public static double ToDouble(Decimal d); // 0x004C6444 + public static short ToInt16(Decimal value); // 0x004C64EC + public static int ToInt32(Decimal d); // 0x004C678C + public static long ToInt64(Decimal d); // 0x004C6A24 + public static long ToOACurrency(Decimal value); // 0x004C6D10 + public static sbyte ToSByte(Decimal value); // 0x004C6DD8 + public static float ToSingle(Decimal d); // 0x004C7078 + public static ushort ToUInt16(Decimal value); // 0x004C7120 + public static uint ToUInt32(Decimal d); // 0x004C73BC + public static ulong ToUInt64(Decimal d); // 0x004C768C + public string ToString(string format, IFormatProvider provider); // 0x000A9800 + public override string ToString(); // 0x000A9808 + public string ToString(string format); // 0x000A9810 + public string ToString(IFormatProvider provider); // 0x000A981C + private static int decimal2UInt64(Decimal val, out ulong result); // 0x004C2C44 + private static int decimal2Int64(Decimal val, out long result); // 0x004C2D44 + private static int decimalIncr(Decimal d1, Decimal d2); // 0x004C2980 + internal static int decimal2string(Decimal val, int digits, int decimals, char[] bufDigits, int bufSize, out int decPos, out int sign); // 0x004C7AC8 + internal static int string2decimal(out Decimal val, string sDigits, uint decPos, int sign); // 0x004C60D4 + internal static int decimalSetExponent(Decimal val, int exp); // 0x004C60D8 + private static double decimal2double(Decimal val); // 0x004C7ACC + private static void decimalFloorAndTrunc(Decimal val, int floorFlag); // 0x004C2C40 + private static int decimalMult(Decimal pd1, Decimal pd2); // 0x004C3D24 + private static int decimalDiv(out Decimal pc, Decimal pa, Decimal pb); // 0x004C3EA0 + private static int decimalIntDiv(out Decimal pc, Decimal pa, Decimal pb); // 0x004C7AD0 + private static int decimalCompare(Decimal d1, Decimal d2); // 0x004C42FC + public static Decimal op_Addition(Decimal d1, Decimal d2); // 0x004C3A08 + public static Decimal op_Decrement(Decimal d); // 0x004C7AD4 + public static Decimal op_Increment(Decimal d); // 0x004C7B98 + public static Decimal op_Subtraction(Decimal d1, Decimal d2); // 0x004C3870 + public static Decimal op_UnaryNegation(Decimal d); // 0x004C7C58 + public static Decimal op_UnaryPlus(Decimal d); // 0x004C7CF0 + public static Decimal op_Multiply(Decimal d1, Decimal d2); // 0x004C393C + public static Decimal op_Division(Decimal d1, Decimal d2); // 0x004C2668 + public static Decimal op_Modulus(Decimal d1, Decimal d2); // 0x004C7CFC + public static byte op_Explicit(Decimal value); // 0x004C6374 + public static sbyte op_Explicit(Decimal value); // 0x004C6FA8 + public static char op_Explicit(Decimal value); // 0x004C7DC8 + public static short op_Explicit(Decimal value); // 0x004C66BC + public static ushort op_Explicit(Decimal value); // 0x004C72EC + public static int op_Explicit(Decimal value); // 0x004C6958 + public static uint op_Explicit(Decimal value); // 0x004C75C4 + public static long op_Explicit(Decimal value); // 0x004C6C70 + public static ulong op_Explicit(Decimal value); // 0x004C7898 + public static Decimal op_Implicit(byte value); // 0x004C7E98 + public static Decimal op_Implicit(sbyte value); // 0x004C7EA8 + public static Decimal op_Implicit(short value); // 0x004C7ED4 + public static Decimal op_Implicit(ushort value); // 0x004C7F00 + public static Decimal op_Implicit(char value); // 0x004C7F10 + public static Decimal op_Implicit(int value); // 0x004C7F20 + public static Decimal op_Implicit(uint value); // 0x004C7F4C + public static Decimal op_Implicit(long value); // 0x004C2630 + public static Decimal op_Implicit(ulong value); // 0x004C7F64 + public static Decimal op_Explicit(float value); // 0x004C7F74 + public static Decimal op_Explicit(double value); // 0x004C3850 + public static float op_Explicit(Decimal value); // 0x004C7F8C + public static double op_Explicit(Decimal value); // 0x004C8038 + public static bool op_Inequality(Decimal d1, Decimal d2); // 0x004C80C4 + public static bool op_Equality(Decimal d1, Decimal d2); // 0x004C423C + public static bool op_GreaterThan(Decimal d1, Decimal d2); // 0x004C3AD4 + public static bool op_GreaterThanOrEqual(Decimal d1, Decimal d2); // 0x004C8188 + public static bool op_LessThan(Decimal d1, Decimal d2); // 0x004C62B0 + public static bool op_LessThanOrEqual(Decimal d1, Decimal d2); // 0x004C8258 +} + +// Namespace: System +[Serializable] +public struct Boolean : IConvertible, IComparable, IComparable`1, IEquatable`1 // TypeDefIndex: 33 +{ + // Fields + public static readonly string FalseString; // 0x00 + public static readonly string TrueString; // 0x04 + internal bool m_value; // 0x08 + + // Methods + private static void .cctor(); // 0x004F812C + private object System.IConvertible.ToType(Type targetType, IFormatProvider provider); // 0x000A9838 + private bool System.IConvertible.ToBoolean(IFormatProvider provider); // 0x000A9840 + private byte System.IConvertible.ToByte(IFormatProvider provider); // 0x000A9850 + private char System.IConvertible.ToChar(IFormatProvider provider); // 0x000A9858 + private DateTime System.IConvertible.ToDateTime(IFormatProvider provider); // 0x000A9868 + private Decimal System.IConvertible.ToDecimal(IFormatProvider provider); // 0x000A9878 + private double System.IConvertible.ToDouble(IFormatProvider provider); // 0x000A988C + private short System.IConvertible.ToInt16(IFormatProvider provider); // 0x000A9894 + private int System.IConvertible.ToInt32(IFormatProvider provider); // 0x000A989C + private long System.IConvertible.ToInt64(IFormatProvider provider); // 0x000A98A4 + private sbyte System.IConvertible.ToSByte(IFormatProvider provider); // 0x000A98AC + private float System.IConvertible.ToSingle(IFormatProvider provider); // 0x000A98B4 + private ushort System.IConvertible.ToUInt16(IFormatProvider provider); // 0x000A98BC + private uint System.IConvertible.ToUInt32(IFormatProvider provider); // 0x000A98C4 + private ulong System.IConvertible.ToUInt64(IFormatProvider provider); // 0x000A98CC + public int CompareTo(object obj); // 0x000A98D4 + public override bool Equals(object obj); // 0x000A98DC + public int CompareTo(bool value); // 0x000A98E4 + public bool Equals(bool obj); // 0x000A9904 + public override int GetHashCode(); // 0x000A9918 + public static bool Parse(string value); // 0x004F8C3C + public static bool TryParse(string value, out bool result); // 0x004F8EF8 + public override string ToString(); // 0x000A9928 + public TypeCode GetTypeCode(); // 0x000A9930 + public string ToString(IFormatProvider provider); // 0x000A9938 +} + +// Namespace: System +[Serializable] +public struct IntPtr : ISerializable // TypeDefIndex: 34 +{ + // Fields + private void * m_value; // 0x08 + public static readonly IntPtr Zero; // 0x00 + + // Properties + public static int Size { get; } // 0x001DD95C + + // Methods + public void .ctor(int value); // 0x0008B7E0 + public void .ctor(long value); // 0x0008B7E8 + public void .ctor(void * value); // 0x0008B7F0 + private void .ctor(SerializationInfo info, StreamingContext context); // 0x0008B7F8 + private void System.Runtime.Serialization.ISerializable.GetObjectData(SerializationInfo info, StreamingContext context); // 0x0008B814 + public override bool Equals(object obj); // 0x0008B830 + public override int GetHashCode(); // 0x0008B838 + public int ToInt32(); // 0x0008B840 + public long ToInt64(); // 0x0008B848 + public void * ToPointer(); // 0x0008B854 + public override string ToString(); // 0x0008B85C + public string ToString(string format); // 0x0008B888 + public static bool op_Equality(IntPtr value1, IntPtr value2); // 0x001DDA64 + public static bool op_Inequality(IntPtr value1, IntPtr value2); // 0x001DDA78 + public static IntPtr op_Explicit(int value); // 0x001DDA8C + public static IntPtr op_Explicit(long value); // 0x001DDA90 + public static IntPtr op_Explicit(void * value); // 0x001DDA94 + public static int op_Explicit(IntPtr value); // 0x001DDA98 + public static long op_Explicit(IntPtr value); // 0x001DDA9C + public static void * op_Explicit(IntPtr value); // 0x001D5CD4 +} + +// Namespace: System.Runtime.Serialization +public interface ISerializable // TypeDefIndex: 35 +{ + // Methods + void GetObjectData(SerializationInfo info, StreamingContext context); +} + +// Namespace: System +[Serializable] +public struct UIntPtr : ISerializable // TypeDefIndex: 36 +{ + // Fields + public static readonly UIntPtr Zero; // 0x00 + private void * _pointer; // 0x08 + + // Properties + public static int Size { get; } // 0x0055A7DC + + // Methods + public void .ctor(ulong value); // 0x000C7AE8 + public void .ctor(uint value); // 0x000C7B04 + public void .ctor(void * value); // 0x000C7B0C + private static void .cctor(); // 0x0055A7F4 + private void System.Runtime.Serialization.ISerializable.GetObjectData(SerializationInfo info, StreamingContext context); // 0x000C7B14 + public override bool Equals(object obj); // 0x000C7B30 + public override int GetHashCode(); // 0x000C7B38 + public uint ToUInt32(); // 0x000C7B40 + public ulong ToUInt64(); // 0x000C7B48 + public void * ToPointer(); // 0x000C7B54 + public override string ToString(); // 0x000C7B5C + public static bool op_Equality(UIntPtr value1, UIntPtr value2); // 0x0055AA00 + public static bool op_Inequality(UIntPtr value1, UIntPtr value2); // 0x0055AA14 + public static ulong op_Explicit(UIntPtr value); // 0x0055AA28 + public static uint op_Explicit(UIntPtr value); // 0x0055AA30 + public static UIntPtr op_Explicit(ulong value); // 0x0055AA34 + public static UIntPtr op_Explicit(void * value); // 0x0055AA64 + public static void * op_Explicit(UIntPtr value); // 0x0055AA68 + public static UIntPtr op_Explicit(uint value); // 0x0055AA6C +} + +// Namespace: System +[Serializable] +public abstract class MulticastDelegate : Delegate // TypeDefIndex: 37 +{ + // Fields + private MulticastDelegate prev; // 0x2C + private MulticastDelegate kpm_next; // 0x30 + + // Methods + protected void .ctor(object target, string method); // 0x001E8C04 + protected void .ctor(Type target, string method); // 0x001E8C24 + public override void GetObjectData(SerializationInfo info, StreamingContext context); // 0x001E8C44 + protected sealed override object DynamicInvokeImpl(object[] args); // 0x001E8C64 + public sealed override bool Equals(object obj); // 0x001E8C98 + public sealed override int GetHashCode(); // 0x001E8DA4 + public sealed override Delegate[] GetInvocationList(); // 0x001E8DAC + protected sealed override Delegate CombineImpl(Delegate follow); // 0x001E917C + private bool BaseEquals(MulticastDelegate value); // 0x001E9584 + private static MulticastDelegate KPM(MulticastDelegate needle, MulticastDelegate haystack, out MulticastDelegate tail); // 0x001E958C + protected sealed override Delegate RemoveImpl(Delegate value); // 0x001E96F8 + public static bool op_Equality(MulticastDelegate d1, MulticastDelegate d2); // 0x001E9920 + public static bool op_Inequality(MulticastDelegate d1, MulticastDelegate d2); // 0x001E993C +} + +// Namespace: System +[Serializable] +public abstract class Delegate : ICloneable, ISerializable // TypeDefIndex: 38 +{ + // Fields + private IntPtr method_ptr; // 0x08 + private IntPtr invoke_impl; // 0x0C + private object m_target; // 0x10 + private IntPtr method; // 0x14 + private IntPtr delegate_trampoline; // 0x18 + private IntPtr method_code; // 0x1C + private MethodInfo method_info; // 0x20 + private MethodInfo original_method_info; // 0x24 + private DelegateData data; // 0x28 + + // Properties + public MethodInfo Method { get; } // 0x004C85D4 + public object Target { get; } // 0x004C86B0 + + // Methods + protected void .ctor(object target, string method); // 0x004C8328 + protected void .ctor(Type target, string method); // 0x004C8478 + internal static Delegate CreateDelegate_internal(Type type, object target, MethodInfo info, bool throwOnBindFailure); // 0x004C86B8 + internal void SetMulticastInvoke(); // 0x004C86BC + private static bool arg_type_match(Type delArgType, Type argType); // 0x004C86C0 + private static bool return_type_match(Type delReturnType, Type returnType); // 0x004C8738 + public static Delegate CreateDelegate(Type type, object firstArgument, MethodInfo method, bool throwOnBindFailure); // 0x004C87B0 + public static Delegate CreateDelegate(Type type, object firstArgument, MethodInfo method); // 0x004C9194 + public static Delegate CreateDelegate(Type type, MethodInfo method, bool throwOnBindFailure); // 0x004C91B0 + public static Delegate CreateDelegate(Type type, MethodInfo method); // 0x004C91D4 + public static Delegate CreateDelegate(Type type, object target, string method); // 0x004C91F8 + private static MethodInfo GetCandidateMethod(Type type, Type target, string method, BindingFlags bflags, bool ignoreCase, bool throwOnBindFailure); // 0x004C923C + public static Delegate CreateDelegate(Type type, Type target, string method, bool ignoreCase, bool throwOnBindFailure); // 0x004C96C8 + public static Delegate CreateDelegate(Type type, Type target, string method); // 0x004C97C8 + public static Delegate CreateDelegate(Type type, Type target, string method, bool ignoreCase); // 0x004C97EC + public static Delegate CreateDelegate(Type type, object target, string method, bool ignoreCase, bool throwOnBindFailure); // 0x004C980C + public static Delegate CreateDelegate(Type type, object target, string method, bool ignoreCase); // 0x004C921C + public object DynamicInvoke(object[] args); // 0x004C991C + protected virtual object DynamicInvokeImpl(object[] args); // 0x004C992C + public virtual object Clone(); // 0x004C9C48 + public override bool Equals(object obj); // 0x004C9C50 + public override int GetHashCode(); // 0x004C9DA8 + protected virtual MethodInfo GetMethodImpl(); // 0x004C9DF0 + public virtual void GetObjectData(SerializationInfo info, StreamingContext context); // 0x004C9DF4 + public virtual Delegate[] GetInvocationList(); // 0x004CA09C + public static Delegate Combine(Delegate a, Delegate b); // 0x004CA168 + public static Delegate Combine(Delegate[] delegates); // 0x004CA274 + protected virtual Delegate CombineImpl(Delegate d); // 0x004CA2E4 + public static Delegate Remove(Delegate source, Delegate value); // 0x004CA3B4 + protected virtual Delegate RemoveImpl(Delegate d); // 0x004CA3D0 + public static Delegate RemoveAll(Delegate source, Delegate value); // 0x004CA400 + public static bool op_Equality(Delegate d1, Delegate d2); // 0x004CA4C8 + public static bool op_Inequality(Delegate d1, Delegate d2); // 0x004CA484 +} + +// Namespace: System +[Serializable] +public abstract struct Enum : IFormattable, IConvertible, IComparable // TypeDefIndex: 39 +{ + // Fields + private static char[] split_char; // 0x00 + + // Properties + private object Value { get; } // 0x002D885C + + // Methods + protected void .ctor(); // 0x002D870C + private static void .cctor(); // 0x002D8714 + private bool System.IConvertible.ToBoolean(IFormatProvider provider); // 0x002D87C4 + private byte System.IConvertible.ToByte(IFormatProvider provider); // 0x002D8860 + private char System.IConvertible.ToChar(IFormatProvider provider); // 0x002D88F8 + private DateTime System.IConvertible.ToDateTime(IFormatProvider provider); // 0x002D8990 + private Decimal System.IConvertible.ToDecimal(IFormatProvider provider); // 0x002D8A30 + private double System.IConvertible.ToDouble(IFormatProvider provider); // 0x002D8AD0 + private short System.IConvertible.ToInt16(IFormatProvider provider); // 0x002D8B68 + private int System.IConvertible.ToInt32(IFormatProvider provider); // 0x002D8C00 + private long System.IConvertible.ToInt64(IFormatProvider provider); // 0x002D8C98 + private sbyte System.IConvertible.ToSByte(IFormatProvider provider); // 0x002D8D30 + private float System.IConvertible.ToSingle(IFormatProvider provider); // 0x002D8DC8 + private object System.IConvertible.ToType(Type targetType, IFormatProvider provider); // 0x002D8E60 + private ushort System.IConvertible.ToUInt16(IFormatProvider provider); // 0x002D9038 + private uint System.IConvertible.ToUInt32(IFormatProvider provider); // 0x002D90D0 + private ulong System.IConvertible.ToUInt64(IFormatProvider provider); // 0x002D9168 + public TypeCode GetTypeCode(); // 0x002D9200 + private object get_value(); // 0x002D9414 + public static Array GetValues(Type enumType); // 0x002D9418 + public static string[] GetNames(Type enumType); // 0x002D95F0 + private static int FindPosition(object value, Array values); // 0x002D97B0 + public static string GetName(Type enumType, object value); // 0x002D9A40 + public static bool IsDefined(Type enumType, object value); // 0x002D9C8C + private static Type get_underlying_type(Type enumType); // 0x002DA020 + public static Type GetUnderlyingType(Type enumType); // 0x002D92CC + public static object Parse(Type enumType, string value); // 0x002DA024 + private static int FindName(Hashtable name_hash, string[] names, string name, bool ignoreCase); // 0x002DAA1C + private static ulong GetValue(object value, TypeCode typeCode); // 0x002DACDC + public static object Parse(Type enumType, string value, bool ignoreCase); // 0x002DA0B0 + private int compare_value_to(object other); // 0x002DB4B8 + public int CompareTo(object target); // 0x002DB4BC + public override string ToString(); // 0x002DB5F4 + public string ToString(IFormatProvider provider); // 0x002D8FD4 + public string ToString(string format); // 0x002DB658 + public string ToString(string format, IFormatProvider provider); // 0x002DB778 + public static object ToObject(Type enumType, byte value); // 0x002DB090 + public static object ToObject(Type enumType, short value); // 0x002DB140 + public static object ToObject(Type enumType, int value); // 0x002DB2A0 + public static object ToObject(Type enumType, long value); // 0x002DB400 + public static object ToObject(Type enumType, object value); // 0x002D9C88 + public static object ToObject(Type enumType, sbyte value); // 0x002DAFE0 + public static object ToObject(Type enumType, ushort value); // 0x002DB1F0 + public static object ToObject(Type enumType, uint value); // 0x002DB350 + public static object ToObject(Type enumType, ulong value); // 0x002DAF28 + public override bool Equals(object obj); // 0x002DC1FC + private int get_hashcode(); // 0x002DC204 + public override int GetHashCode(); // 0x002DC208 + private static string FormatSpecifier_X(Type enumType, object value, bool upper); // 0x002DC20C + private static string FormatFlags(Type enumType, object value); // 0x002DC70C + public static string Format(Type enumType, object value, string format); // 0x002DB898 +} + +// Namespace: System +[Serializable] +public abstract class Array : IEnumerable, ICloneable, ICollection, IList // TypeDefIndex: 40 +{ + // Properties + private object System.Collections.IList.Item { get; set; } // 0x004EC854 0x004EC9E0 + private int System.Collections.ICollection.Count { get; } // 0x004ED16C + public int Length { get; } // 0x004EC980 + public long LongLength { get; } // 0x004ED2B8 + public int Rank { get; } // 0x004EC9D8 + public bool IsSynchronized { get; } // 0x004ED2F4 + public object SyncRoot { get; } // 0x004ED2FC + public bool IsFixedSize { get; } // 0x004ED300 + public bool IsReadOnly { get; } // 0x004ED308 + + // Methods + private void .ctor(); // 0x004EC84C + private int System.Collections.IList.Add(object value); // 0x004ECB18 + private void System.Collections.IList.Clear(); // 0x004ECBA0 + private bool System.Collections.IList.Contains(object value); // 0x004ECD9C + private int System.Collections.IList.IndexOf(object value); // 0x004ECEB0 + private void System.Collections.IList.Insert(int index, object value); // 0x004ECFD4 + private void System.Collections.IList.Remove(object value); // 0x004ED05C + private void System.Collections.IList.RemoveAt(int index); // 0x004ED0E4 + internal int InternalArray__ICollection_get_Count(); // 0x004ED170 + internal bool InternalArray__ICollection_get_IsReadOnly(); // 0x004ED174 + internal IEnumerator`1 InternalArray__IEnumerable_GetEnumerator(); + internal void InternalArray__ICollection_Clear(); // 0x004ED17C + internal void InternalArray__ICollection_Add(T item); + internal bool InternalArray__ICollection_Remove(T item); + internal bool InternalArray__ICollection_Contains(T item); + internal void InternalArray__ICollection_CopyTo(T[] array, int index); + internal void InternalArray__Insert(int index, T item); + internal void InternalArray__RemoveAt(int index); // 0x004ED218 + internal int InternalArray__IndexOf(T item); + internal T InternalArray__get_Item(int index); + internal void InternalArray__set_Item(int index, T item); + internal void GetGenericValueImpl(int pos, out T value); + internal void SetGenericValueImpl(int pos, T value); + private int GetRank(); // 0x004ED2CC + public int GetLength(int dimension); // 0x004ED2B4 + public long GetLongLength(int dimension); // 0x004ED2D0 + public int GetLowerBound(int dimension); // 0x004ECBD4 + public object GetValue(int[] indices); // 0x004ED2E4 + public void SetValue(object value, int[] indices); // 0x004ED2E8 + internal object GetValueImpl(int pos); // 0x004EC9DC + internal void SetValueImpl(object value, int pos); // 0x004ECB14 + internal static bool FastCopy(Array source, int source_idx, Array dest, int dest_idx, int length); // 0x004ED2EC + internal static Array CreateInstanceImpl(Type elementType, int[] lengths, int[] bounds); // 0x004ED2F0 + public IEnumerator GetEnumerator(); // 0x004ED310 + public int GetUpperBound(int dimension); // 0x004ED3C4 + public object GetValue(int index); // 0x004ED3F4 + public object GetValue(int index1, int index2); // 0x004ED560 + public object GetValue(int index1, int index2, int index3); // 0x004ED62C + public object GetValue(long index); // 0x004ED71C + public object GetValue(long index1, long index2); // 0x004ED800 + public object GetValue(long index1, long index2, long index3); // 0x004ED960 + public void SetValue(object value, long index); // 0x004EDB3C + public void SetValue(object value, long index1, long index2); // 0x004EDD9C + public void SetValue(object value, long index1, long index2, long index3); // 0x004EDF6C + public void SetValue(object value, int index); // 0x004EDC28 + public void SetValue(object value, int index1, int index2); // 0x004EE1D8 + public void SetValue(object value, int index1, int index2, int index3); // 0x004EE2AC + public static Array CreateInstance(Type elementType, int length); // 0x004EE3A4 + public static Array CreateInstance(Type elementType, int length1, int length2); // 0x004EE74C + public static Array CreateInstance(Type elementType, int length1, int length2, int length3); // 0x004EE818 + public static Array CreateInstance(Type elementType, int[] lengths); // 0x004EE44C + public static Array CreateInstance(Type elementType, int[] lengths, int[] lowerBounds); // 0x004EE908 + private static int[] GetIntArray(long[] values); // 0x004EEE80 + public static Array CreateInstance(Type elementType, long[] lengths); // 0x004EF004 + public object GetValue(long[] indices); // 0x004EF0C8 + public void SetValue(object value, long[] indices); // 0x004EF18C + public static int BinarySearch(Array array, object value); // 0x004EF258 + public static int BinarySearch(Array array, object value, IComparer comparer); // 0x004EF704 + public static int BinarySearch(Array array, int index, int length, object value); // 0x004EF8F8 + public static int BinarySearch(Array array, int index, int length, object value, IComparer comparer); // 0x004EFC30 + private static int DoBinarySearch(Array array, int index, int length, object value, IComparer comparer); // 0x004EF444 + public static void Clear(Array array, int index, int length); // 0x004ECBD8 + private static void ClearInternal(Array a, int index, int count); // 0x004EFF70 + public object Clone(); // 0x004EFF74 + public static void Copy(Array sourceArray, Array destinationArray, int length); // 0x004EFF78 + public static void Copy(Array sourceArray, int sourceIndex, Array destinationArray, int destinationIndex, int length); // 0x004F00B4 + public static void Copy(Array sourceArray, long sourceIndex, Array destinationArray, long destinationIndex, long length); // 0x004F09D4 + public static void Copy(Array sourceArray, Array destinationArray, long length); // 0x004F0C58 + public static int IndexOf(Array array, object value); // 0x004F0D44 + public static int IndexOf(Array array, object value, int startIndex); // 0x004F1004 + public static int IndexOf(Array array, object value, int startIndex, int count); // 0x004F0E18 + public void Initialize(); // 0x004F10DC + public static int LastIndexOf(Array array, object value); // 0x004F10E0 + public static int LastIndexOf(Array array, object value, int startIndex); // 0x004F11CC + public static int LastIndexOf(Array array, object value, int startIndex, int count); // 0x004F12AC + private static Swapper get_swapper(Array array); // 0x004F14A0 + private static Swapper get_swapper(T[] array); + public static void Reverse(Array array); // 0x004F15E0 + public static void Reverse(Array array, int index, int length); // 0x004F16B8 + public static void Sort(Array array); // 0x004F1EB8 + public static void Sort(Array keys, Array items); // 0x004F2480 + public static void Sort(Array array, IComparer comparer); // 0x004F2570 + public static void Sort(Array array, int index, int length); // 0x004F265C + public static void Sort(Array keys, Array items, IComparer comparer); // 0x004F2688 + public static void Sort(Array keys, Array items, int index, int length); // 0x004F2778 + public static void Sort(Array array, int index, int length, IComparer comparer); // 0x004F2798 + public static void Sort(Array keys, Array items, int index, int length, IComparer comparer); // 0x004F1FA4 + private void int_swapper(int i, int j); // 0x004F2F50 + private void obj_swapper(int i, int j); // 0x004F3060 + private void slow_swapper(int i, int j); // 0x004F31D0 + private void double_swapper(int i, int j); // 0x004F321C + private static int new_gap(int gap); // 0x004F3334 + private static void combsort(double[] array, int start, int size, Swapper swap_items); // 0x004F27C4 + private static void combsort(int[] array, int start, int size, Swapper swap_items); // 0x004F29C4 + private static void combsort(char[] array, int start, int size, Swapper swap_items); // 0x004F2BE4 + private static void qsort(Array keys, Array items, int low0, int high0, IComparer comparer); // 0x004F2DE0 + private static void swap(Array keys, Array items, int i, int j); // 0x004F3568 + private static int compare(object value1, object value2, IComparer comparer); // 0x004F3380 + public static void Sort(T[] array); + public static void Sort(T[] keys, T[] items); + public static void Sort(T[] array, IComparer`1 comparer); + public static void Sort(T[] keys, T[] items, IComparer`1 comparer); + public static void Sort(T[] array, int index, int length); + public static void Sort(T[] keys, T[] items, int index, int length); + public static void Sort(T[] array, int index, int length, IComparer`1 comparer); + public static void Sort(T[] keys, T[] items, int index, int length, IComparer`1 comparer); + public static void Sort(T[] array, Comparison`1 comparison); + internal static void Sort(T[] array, int length, Comparison`1 comparison); + private static void qsort(T[] keys, T[] items, int low0, int high0, IComparer`1 comparer); + private static int compare(T value1, T value2, IComparer`1 comparer); + private static void qsort(T[] array, int low0, int high0, Comparison`1 comparison); + private static void swap(T[] keys, T[] items, int i, int j); + private static void swap(T[] array, int i, int j); + public void CopyTo(Array array, int index); // 0x004F3664 + public void CopyTo(Array array, long index); // 0x004F3908 + public static void Resize(T[] array, int newSize); + internal static void Resize(T[] array, int length, int newSize); + public static bool TrueForAll(T[] array, Predicate`1 match); + public static void ForEach(T[] array, Action`1 action); + public static T[] ConvertAll(T[] array, Converter`2 converter); + public static int FindLastIndex(T[] array, Predicate`1 match); + public static int FindLastIndex(T[] array, int startIndex, Predicate`1 match); + public static int FindLastIndex(T[] array, int startIndex, int count, Predicate`1 match); + public static int FindIndex(T[] array, Predicate`1 match); + public static int FindIndex(T[] array, int startIndex, Predicate`1 match); + public static int FindIndex(T[] array, int startIndex, int count, Predicate`1 match); + public static int BinarySearch(T[] array, T value); + public static int BinarySearch(T[] array, T value, IComparer`1 comparer); + public static int BinarySearch(T[] array, int index, int length, T value); + public static int BinarySearch(T[] array, int index, int length, T value, IComparer`1 comparer); + public static int IndexOf(T[] array, T value); + public static int IndexOf(T[] array, T value, int startIndex); + public static int IndexOf(T[] array, T value, int startIndex, int count); + public static int LastIndexOf(T[] array, T value); + public static int LastIndexOf(T[] array, T value, int startIndex); + public static int LastIndexOf(T[] array, T value, int startIndex, int count); + public static T[] FindAll(T[] array, Predicate`1 match); + public static bool Exists(T[] array, Predicate`1 match); + public static ReadOnlyCollection`1 AsReadOnly(T[] array); + public static T Find(T[] array, Predicate`1 match); + public static T FindLast(T[] array, Predicate`1 match); + public static void ConstrainedCopy(Array sourceArray, int sourceIndex, Array destinationArray, int destinationIndex, int length); // 0x004F39F4 +} + +// Namespace: +internal struct InternalEnumerator`1 : IEnumerator, IDisposable, IEnumerator`1 // TypeDefIndex: 41 +{ + // Fields + private const int NOT_STARTED = -2; // 0x00 + private const int FINISHED = -1; // 0x00 + private Array array; // 0x00 + private int idx; // 0x00 + + // Properties + private object System.Collections.IEnumerator.Current { get; } + public T Current { get; } + + // Methods + internal void .ctor(Array array); + private void System.Collections.IEnumerator.Reset(); + public void Dispose(); + public bool MoveNext(); +} + +// Namespace: +internal class SimpleEnumerator : IEnumerator, ICloneable // TypeDefIndex: 42 +{ + // Fields + private Array enumeratee; // 0x08 + private int currentpos; // 0x0C + private int length; // 0x10 + + // Properties + public object Current { get; } // 0x004F3A14 + + // Methods + public void .ctor(Array arrayToEnumerate); // 0x004ED380 + public bool MoveNext(); // 0x004F3B4C + public void Reset(); // 0x004F3B70 + public object Clone(); // 0x004F3B7C +} + +// Namespace: +private class ArrayReadOnlyList`1 : IEnumerable, IList`1, ICollection`1, IEnumerable`1 // TypeDefIndex: 43 +{ + // Fields + private T[] array; // 0x00 + + // Properties + public T Item { get; set; } + public int Count { get; } + public bool IsReadOnly { get; } + + // Methods + public void .ctor(T[] array); + private IEnumerator System.Collections.IEnumerable.GetEnumerator(); + public void Add(T item); + public void Clear(); + public bool Contains(T item); + public void CopyTo(T[] array, int index); + public IEnumerator`1 GetEnumerator(); + public int IndexOf(T item); + public void Insert(int index, T item); + public bool Remove(T item); + public void RemoveAt(int index); + private static Exception ReadOnlyError(); +} + +// Namespace: +private sealed class c__Iterator0 : IEnumerator, IDisposable, IEnumerator`1 // TypeDefIndex: 44 +{ + // Fields + internal int __0; // 0x00 + internal int $PC; // 0x00 + internal T $current; // 0x00 + internal ArrayReadOnlyList`1 <>f__this; // 0x00 + + // Properties + private T System.Collections.Generic.IEnumerator.Current { get; } + private object System.Collections.IEnumerator.Current { get; } + + // Methods + public void .ctor(); + public bool MoveNext(); + public void Dispose(); + public void Reset(); +} + +// Namespace: +private delegate void Swapper(int i, int j); // TypeDefIndex: 45; 0x004F1C8C + +// Namespace: System.Collections +public interface ICollection : IEnumerable // TypeDefIndex: 46 +{ + // Properties + int Count { get; } + bool IsSynchronized { get; } + object SyncRoot { get; } + + // Methods + void CopyTo(Array array, int index); +} + +// Namespace: System.Collections +public interface IList : IEnumerable, ICollection // TypeDefIndex: 47 +{ + // Properties + bool IsFixedSize { get; } + bool IsReadOnly { get; } + object Item { get; set; } + + // Methods + int Add(object value); + void Clear(); + bool Contains(object value); + int IndexOf(object value); + void Insert(int index, object value); + void Remove(object value); + void RemoveAt(int index); +} + +// Namespace: System.Collections.Generic +public interface IList`1 : IEnumerable, ICollection`1, IEnumerable`1 // TypeDefIndex: 48 +{ + // Properties + T Item { get; set; } + + // Methods + int IndexOf(T item); + void Insert(int index, T item); + void RemoveAt(int index); +} + +// Namespace: System.Collections.Generic +public interface ICollection`1 : IEnumerable, IEnumerable`1 // TypeDefIndex: 49 +{ + // Properties + int Count { get; } + bool IsReadOnly { get; } + + // Methods + void Add(T item); + void Clear(); + bool Contains(T item); + void CopyTo(T[] array, int arrayIndex); + bool Remove(T item); +} + +// Namespace: System +[Serializable] +public struct Void // TypeDefIndex: 50 +{ +} + +// Namespace: System +[Serializable] +public abstract class Type : MemberInfo, IReflect, _Type // TypeDefIndex: 51 +{ + // Fields + internal const BindingFlags DefaultBindingFlags = 28; // 0x00 + internal RuntimeTypeHandle _impl; // 0x08 + public static readonly char Delimiter; // 0x00 + public static readonly Type[] EmptyTypes; // 0x04 + public static readonly MemberFilter FilterAttribute; // 0x08 + public static readonly MemberFilter FilterName; // 0x0C + public static readonly MemberFilter FilterNameIgnoreCase; // 0x10 + public static readonly object Missing; // 0x14 + + // Properties + public abstract Assembly Assembly { get; } + public abstract string AssemblyQualifiedName { get; } + public TypeAttributes Attributes { get; } // 0x004219A4 + public abstract Type BaseType { get; } + public override Type DeclaringType { get; } // 0x004219B4 + public static Binder DefaultBinder { get; } // 0x004219BC + public abstract string FullName { get; } + public abstract Guid GUID { get; } + public bool HasElementType { get; } // 0x00421AAC + public bool IsAbstract { get; } // 0x00421ABC + public bool IsAnsiClass { get; } // 0x00421ADC + public bool IsArray { get; } // 0x00421B08 + public bool IsAutoClass { get; } // 0x00421B18 + public bool IsAutoLayout { get; } // 0x00421B44 + public bool IsByRef { get; } // 0x00421B70 + public bool IsClass { get; } // 0x00421B80 + public bool IsCOMObject { get; } // 0x00421BFC + public bool IsContextful { get; } // 0x00421C0C + public bool IsEnum { get; } // 0x00421C1C + public bool IsExplicitLayout { get; } // 0x00421CC4 + public bool IsImport { get; } // 0x00421CF0 + public bool IsInterface { get; } // 0x00421BCC + public bool IsLayoutSequential { get; } // 0x00421D10 + public bool IsMarshalByRef { get; } // 0x00421D3C + public bool IsNestedAssembly { get; } // 0x00421D4C + public bool IsNestedFamANDAssem { get; } // 0x00421D78 + public bool IsNestedFamily { get; } // 0x00421DA4 + public bool IsNestedFamORAssem { get; } // 0x00421DD0 + public bool IsNestedPrivate { get; } // 0x00421DFC + public bool IsNestedPublic { get; } // 0x00421E28 + public bool IsNotPublic { get; } // 0x00421E54 + public bool IsPointer { get; } // 0x00421E80 + public bool IsPrimitive { get; } // 0x00421E90 + public bool IsPublic { get; } // 0x00421EA0 + public bool IsSealed { get; } // 0x00421EC8 + public bool IsSerializable { get; } // 0x00421EE8 + public bool IsSpecialName { get; } // 0x00422164 + public bool IsUnicodeClass { get; } // 0x00422184 + public bool IsValueType { get; } // 0x00421BEC + public override MemberTypes MemberType { get; } // 0x004221B0 + public abstract Module Module { get; } + public abstract string Namespace { get; } + public override Type ReflectedType { get; } // 0x004221B8 + public virtual RuntimeTypeHandle TypeHandle { get; } // 0x004221C0 + public ConstructorInfo TypeInitializer { get; } // 0x004221C8 + public abstract Type UnderlyingSystemType { get; } + internal bool IsSystemType { get; } // 0x00422104 + public virtual bool ContainsGenericParameters { get; } // 0x00425598 + public virtual bool IsGenericTypeDefinition { get; } // 0x004255A0 + public virtual bool IsGenericType { get; } // 0x00425644 + public virtual bool IsGenericParameter { get; } // 0x00425B38 + public bool IsNested { get; } // 0x00425B40 + public bool IsVisible { get; } // 0x00425B64 + public virtual int GenericParameterPosition { get; } // 0x00425BE4 + public virtual GenericParameterAttributes GenericParameterAttributes { get; } // 0x00425C84 + public virtual MethodBase DeclaringMethod { get; } // 0x00425DF0 + public virtual StructLayoutAttribute StructLayoutAttribute { get; } // 0x004260FC + internal bool IsUserType { get; } // 0x00426444 + + // Methods + protected void .ctor(); // 0x00420FD8 + private static void .cctor(); // 0x00420FE0 + private void System.Runtime.InteropServices._Type.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x00421178 + private void System.Runtime.InteropServices._Type.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x00421200 + private void System.Runtime.InteropServices._Type.GetTypeInfoCount(out uint pcTInfo); // 0x00421288 + private void System.Runtime.InteropServices._Type.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x00421310 + private static bool FilterName_impl(MemberInfo m, object filterCriteria); // 0x00421398 + private static bool FilterNameIgnoreCase_impl(MemberInfo m, object filterCriteria); // 0x00421524 + private static bool FilterAttribute_impl(MemberInfo m, object filterCriteria); // 0x00421724 + public override bool Equals(object o); // 0x0042228C + public bool Equals(Type o); // 0x00422330 + internal bool EqualsInternal(Type type); // 0x00422398 + private static Type internal_from_handle(IntPtr handle); // 0x0042239C + private static Type internal_from_name(string name, bool throwOnError, bool ignoreCase); // 0x004223A0 + public static Type GetType(string typeName); // 0x004223A4 + public static Type GetType(string typeName, bool throwOnError); // 0x0042248C + public static Type GetType(string typeName, bool throwOnError, bool ignoreCase); // 0x0042263C + public static Type[] GetTypeArray(object[] args); // 0x004227CC + internal static TypeCode GetTypeCodeInternal(Type type); // 0x0042295C + public static TypeCode GetTypeCode(Type type); // 0x00422960 + public static Type GetTypeFromCLSID(Guid clsid); // 0x00422A74 + public static Type GetTypeFromCLSID(Guid clsid, bool throwOnError); // 0x00422AFC + public static Type GetTypeFromCLSID(Guid clsid, string server); // 0x00422B84 + public static Type GetTypeFromCLSID(Guid clsid, string server, bool throwOnError); // 0x00422C0C + public static Type GetTypeFromHandle(RuntimeTypeHandle handle); // 0x00413108 + public static Type GetTypeFromProgID(string progID); // 0x00422C94 + public static Type GetTypeFromProgID(string progID, bool throwOnError); // 0x00422D1C + public static Type GetTypeFromProgID(string progID, string server); // 0x00422DA4 + public static Type GetTypeFromProgID(string progID, string server, bool throwOnError); // 0x00422E2C + public static RuntimeTypeHandle GetTypeHandle(object o); // 0x00422EB4 + internal static bool type_is_subtype_of(Type a, Type b, bool check_interfaces); // 0x00422160 + internal static bool type_is_assignable_from(Type a, Type b); // 0x00422F80 + public Type GetType(); // 0x00422F84 + public virtual bool IsSubclassOf(Type c); // 0x00422F8C + public virtual Type[] FindInterfaces(TypeFilter filter, object filterCriteria); // 0x0042307C + public Type GetInterface(string name); // 0x004232B0 + public abstract Type GetInterface(string name, bool ignoreCase); + internal static void GetInterfaceMapData(Type t, Type iface, out MethodInfo[] targets, out MethodInfo[] methods); // 0x004232C4 + public virtual InterfaceMapping GetInterfaceMap(Type interfaceType); // 0x004232C8 + public abstract Type[] GetInterfaces(); + public virtual bool IsAssignableFrom(Type c); // 0x00423540 + public virtual bool IsInstanceOfType(object o); // 0x004236EC + public virtual int GetArrayRank(); // 0x004236F0 + public abstract Type GetElementType(); + public EventInfo GetEvent(string name); // 0x00423778 + public abstract EventInfo GetEvent(string name, BindingFlags bindingAttr); + public virtual EventInfo[] GetEvents(); // 0x0042378C + public abstract EventInfo[] GetEvents(BindingFlags bindingAttr); + public FieldInfo GetField(string name); // 0x004237A0 + public abstract FieldInfo GetField(string name, BindingFlags bindingAttr); + public FieldInfo[] GetFields(); // 0x004237B4 + public abstract FieldInfo[] GetFields(BindingFlags bindingAttr); + public override int GetHashCode(); // 0x004237C8 + public MemberInfo[] GetMember(string name); // 0x00423818 + public virtual MemberInfo[] GetMember(string name, BindingFlags bindingAttr); // 0x00423848 + public virtual MemberInfo[] GetMember(string name, MemberTypes type, BindingFlags bindingAttr); // 0x00423878 + public MemberInfo[] GetMembers(); // 0x004239E4 + public abstract MemberInfo[] GetMembers(BindingFlags bindingAttr); + public MethodInfo GetMethod(string name); // 0x004239F8 + public MethodInfo GetMethod(string name, BindingFlags bindingAttr); // 0x00423AE8 + public MethodInfo GetMethod(string name, Type[] types); // 0x00423BDC + public MethodInfo GetMethod(string name, Type[] types, ParameterModifier[] modifiers); // 0x00423DDC + public MethodInfo GetMethod(string name, BindingFlags bindingAttr, Binder binder, Type[] types, ParameterModifier[] modifiers); // 0x00423E08 + public MethodInfo GetMethod(string name, BindingFlags bindingAttr, Binder binder, CallingConventions callConvention, Type[] types, ParameterModifier[] modifiers); // 0x00423C0C + protected abstract MethodInfo GetMethodImpl(string name, BindingFlags bindingAttr, Binder binder, CallingConventions callConvention, Type[] types, ParameterModifier[] modifiers); + internal MethodInfo GetMethodImplInternal(string name, BindingFlags bindingAttr, Binder binder, CallingConventions callConvention, Type[] types, ParameterModifier[] modifiers); // 0x00423E30 + internal virtual MethodInfo GetMethod(MethodInfo fromNoninstanciated); // 0x00423E6C + internal virtual ConstructorInfo GetConstructor(ConstructorInfo fromNoninstanciated); // 0x00423F08 + internal virtual FieldInfo GetField(FieldInfo fromNoninstanciated); // 0x00423FA4 + public MethodInfo[] GetMethods(); // 0x00424040 + public abstract MethodInfo[] GetMethods(BindingFlags bindingAttr); + public Type GetNestedType(string name); // 0x00424054 + public abstract Type GetNestedType(string name, BindingFlags bindingAttr); + public Type[] GetNestedTypes(); // 0x00424068 + public abstract Type[] GetNestedTypes(BindingFlags bindingAttr); + public PropertyInfo[] GetProperties(); // 0x0042407C + public abstract PropertyInfo[] GetProperties(BindingFlags bindingAttr); + public PropertyInfo GetProperty(string name); // 0x00424090 + public PropertyInfo GetProperty(string name, BindingFlags bindingAttr); // 0x0042417C + public PropertyInfo GetProperty(string name, Type returnType); // 0x0042426C + public PropertyInfo GetProperty(string name, Type[] types); // 0x0042435C + public PropertyInfo GetProperty(string name, Type returnType, Type[] types); // 0x00424558 + public PropertyInfo GetProperty(string name, Type returnType, Type[] types, ParameterModifier[] modifiers); // 0x00424580 + public PropertyInfo GetProperty(string name, BindingFlags bindingAttr, Binder binder, Type returnType, Type[] types, ParameterModifier[] modifiers); // 0x00424388 + protected abstract PropertyInfo GetPropertyImpl(string name, BindingFlags bindingAttr, Binder binder, Type returnType, Type[] types, ParameterModifier[] modifiers); + internal PropertyInfo GetPropertyImplInternal(string name, BindingFlags bindingAttr, Binder binder, Type returnType, Type[] types, ParameterModifier[] modifiers); // 0x004245A8 + protected abstract ConstructorInfo GetConstructorImpl(BindingFlags bindingAttr, Binder binder, CallingConventions callConvention, Type[] types, ParameterModifier[] modifiers); + protected abstract TypeAttributes GetAttributeFlagsImpl(); + protected abstract bool HasElementTypeImpl(); + protected abstract bool IsArrayImpl(); + protected abstract bool IsByRefImpl(); + protected abstract bool IsCOMObjectImpl(); + protected abstract bool IsPointerImpl(); + protected abstract bool IsPrimitiveImpl(); + internal static bool IsArrayImpl(Type type); // 0x004245E4 + protected virtual bool IsValueTypeImpl(); // 0x004245E8 + protected virtual bool IsContextfulImpl(); // 0x00424730 + protected virtual bool IsMarshalByRefImpl(); // 0x004247EC + public ConstructorInfo GetConstructor(Type[] types); // 0x004248A8 + public ConstructorInfo GetConstructor(BindingFlags bindingAttr, Binder binder, Type[] types, ParameterModifier[] modifiers); // 0x00424A50 + public ConstructorInfo GetConstructor(BindingFlags bindingAttr, Binder binder, CallingConventions callConvention, Type[] types, ParameterModifier[] modifiers); // 0x004248D4 + public ConstructorInfo[] GetConstructors(); // 0x00424A74 + public abstract ConstructorInfo[] GetConstructors(BindingFlags bindingAttr); + public virtual MemberInfo[] GetDefaultMembers(); // 0x00424A88 + public virtual MemberInfo[] FindMembers(MemberTypes memberType, BindingFlags bindingAttr, MemberFilter filter, object filterCriteria); // 0x00424C00 + public object InvokeMember(string name, BindingFlags invokeAttr, Binder binder, object target, object[] args); // 0x00425470 + public object InvokeMember(string name, BindingFlags invokeAttr, Binder binder, object target, object[] args, CultureInfo culture); // 0x004254B8 + public abstract object InvokeMember(string name, BindingFlags invokeAttr, Binder binder, object target, object[] args, ParameterModifier[] modifiers, CultureInfo culture, string[] namedParameters); + public override string ToString(); // 0x00425500 + public virtual Type[] GetGenericArguments(); // 0x00425510 + internal Type GetGenericTypeDefinition_impl(); // 0x004255A4 + public virtual Type GetGenericTypeDefinition(); // 0x004255A8 + private static Type MakeGenericType(Type gt, Type[] types); // 0x00425648 + public virtual Type MakeGenericType(Type[] typeArguments); // 0x0042564C + private int GetGenericParameterPosition(); // 0x00425BE0 + private GenericParameterAttributes GetGenericParameterAttributes(); // 0x00425C80 + private Type[] GetGenericParameterConstraints_impl(); // 0x00425D38 + public virtual Type[] GetGenericParameterConstraints(); // 0x00425D3C + private Type make_array_type(int rank); // 0x00425DF8 + public virtual Type MakeArrayType(); // 0x00425DFC + public virtual Type MakeArrayType(int rank); // 0x00425E04 + private Type make_byref_type(); // 0x00425EAC + public virtual Type MakeByRefType(); // 0x00425EB0 + public virtual Type MakePointerType(); // 0x00425EB4 + public static Type ReflectionOnlyGetType(string typeName, bool throwIfNotFound, bool ignoreCase); // 0x00425EB8 + private void GetPacking(out int packing, out int size); // 0x004260F8 + internal object[] GetPseudoCustomAttributes(); // 0x00426240 +} + +// Namespace: System.Reflection +[Serializable] +public abstract class MemberInfo : ICustomAttributeProvider, _MemberInfo // TypeDefIndex: 52 +{ + // Properties + public abstract Type DeclaringType { get; } + public abstract MemberTypes MemberType { get; } + public abstract string Name { get; } + public abstract Type ReflectedType { get; } + public virtual Module Module { get; } // 0x00281904 + public virtual int MetadataToken { get; } // 0x00281948 + + // Methods + protected void .ctor(); // 0x0027E9E4 + private void System.Runtime.InteropServices._MemberInfo.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x002816E4 + private void System.Runtime.InteropServices._MemberInfo.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x0028176C + private void System.Runtime.InteropServices._MemberInfo.GetTypeInfoCount(out uint pcTInfo); // 0x002817F4 + private void System.Runtime.InteropServices._MemberInfo.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x0028187C + public abstract bool IsDefined(Type attributeType, bool inherit); + public abstract object[] GetCustomAttributes(bool inherit); + public abstract object[] GetCustomAttributes(Type attributeType, bool inherit); + virtual Type System.Runtime.InteropServices._MemberInfo.GetType(); // 0x0028194C +} + +// Namespace: System.Reflection +public interface ICustomAttributeProvider // TypeDefIndex: 53 +{ + // Methods + object[] GetCustomAttributes(bool inherit); + object[] GetCustomAttributes(Type attributeType, bool inherit); + bool IsDefined(Type attributeType, bool inherit); +} + +// Namespace: System.Runtime.InteropServices +public interface _MemberInfo // TypeDefIndex: 54 +{ + // Properties + Type DeclaringType { get; } + MemberTypes MemberType { get; } + string Name { get; } + Type ReflectedType { get; } + + // Methods + bool Equals(object other); + object[] GetCustomAttributes(bool inherit); + object[] GetCustomAttributes(Type attributeType, bool inherit); + int GetHashCode(); + Type GetType(); + bool IsDefined(Type attributeType, bool inherit); + string ToString(); + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); +} + +// Namespace: System.Reflection +public interface IReflect // TypeDefIndex: 55 +{ + // Properties + Type UnderlyingSystemType { get; } + + // Methods + FieldInfo GetField(string name, BindingFlags bindingAttr); + FieldInfo[] GetFields(BindingFlags bindingAttr); + MemberInfo[] GetMember(string name, BindingFlags bindingAttr); + MemberInfo[] GetMembers(BindingFlags bindingAttr); + MethodInfo GetMethod(string name, BindingFlags bindingAttr); + MethodInfo GetMethod(string name, BindingFlags bindingAttr, Binder binder, Type[] types, ParameterModifier[] modifiers); + MethodInfo[] GetMethods(BindingFlags bindingAttr); + PropertyInfo[] GetProperties(BindingFlags bindingAttr); + PropertyInfo GetProperty(string name, BindingFlags bindingAttr); + PropertyInfo GetProperty(string name, BindingFlags bindingAttr, Binder binder, Type returnType, Type[] types, ParameterModifier[] modifiers); + object InvokeMember(string name, BindingFlags invokeAttr, Binder binder, object target, object[] args, ParameterModifier[] modifiers, CultureInfo culture, string[] namedParameters); +} + +// Namespace: System.Runtime.InteropServices +public interface _Type // TypeDefIndex: 56 +{ + // Properties + Assembly Assembly { get; } + string AssemblyQualifiedName { get; } + TypeAttributes Attributes { get; } + Type BaseType { get; } + Type DeclaringType { get; } + string FullName { get; } + Guid GUID { get; } + bool HasElementType { get; } + bool IsAbstract { get; } + bool IsAnsiClass { get; } + bool IsArray { get; } + bool IsAutoClass { get; } + bool IsAutoLayout { get; } + bool IsByRef { get; } + bool IsClass { get; } + bool IsCOMObject { get; } + bool IsContextful { get; } + bool IsEnum { get; } + bool IsExplicitLayout { get; } + bool IsImport { get; } + bool IsInterface { get; } + bool IsLayoutSequential { get; } + bool IsMarshalByRef { get; } + bool IsNestedAssembly { get; } + bool IsNestedFamANDAssem { get; } + bool IsNestedFamily { get; } + bool IsNestedFamORAssem { get; } + bool IsNestedPrivate { get; } + bool IsNestedPublic { get; } + bool IsNotPublic { get; } + bool IsPointer { get; } + bool IsPrimitive { get; } + bool IsPublic { get; } + bool IsSealed { get; } + bool IsSerializable { get; } + bool IsSpecialName { get; } + bool IsUnicodeClass { get; } + bool IsValueType { get; } + MemberTypes MemberType { get; } + Module Module { get; } + string Name { get; } + string Namespace { get; } + Type ReflectedType { get; } + RuntimeTypeHandle TypeHandle { get; } + ConstructorInfo TypeInitializer { get; } + Type UnderlyingSystemType { get; } + + // Methods + bool Equals(object other); + bool Equals(Type o); + Type[] FindInterfaces(TypeFilter filter, object filterCriteria); + MemberInfo[] FindMembers(MemberTypes memberType, BindingFlags bindingAttr, MemberFilter filter, object filterCriteria); + int GetArrayRank(); + ConstructorInfo GetConstructor(Type[] types); + ConstructorInfo GetConstructor(BindingFlags bindingAttr, Binder binder, Type[] types, ParameterModifier[] modifiers); + ConstructorInfo GetConstructor(BindingFlags bindingAttr, Binder binder, CallingConventions callConvention, Type[] types, ParameterModifier[] modifiers); + ConstructorInfo[] GetConstructors(); + ConstructorInfo[] GetConstructors(BindingFlags bindingAttr); + object[] GetCustomAttributes(bool inherit); + object[] GetCustomAttributes(Type attributeType, bool inherit); + MemberInfo[] GetDefaultMembers(); + Type GetElementType(); + EventInfo GetEvent(string name); + EventInfo GetEvent(string name, BindingFlags bindingAttr); + EventInfo[] GetEvents(); + EventInfo[] GetEvents(BindingFlags bindingAttr); + FieldInfo GetField(string name); + FieldInfo GetField(string name, BindingFlags bindingAttr); + FieldInfo[] GetFields(); + FieldInfo[] GetFields(BindingFlags bindingAttr); + int GetHashCode(); + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); + Type GetInterface(string name); + Type GetInterface(string name, bool ignoreCase); + InterfaceMapping GetInterfaceMap(Type interfaceType); + Type[] GetInterfaces(); + MemberInfo[] GetMember(string name); + MemberInfo[] GetMember(string name, MemberTypes type, BindingFlags bindingAttr); + MemberInfo[] GetMember(string name, BindingFlags bindingAttr); + MemberInfo[] GetMembers(); + MemberInfo[] GetMembers(BindingFlags bindingAttr); + MethodInfo GetMethod(string name); + MethodInfo GetMethod(string name, BindingFlags bindingAttr); + MethodInfo GetMethod(string name, Type[] types); + MethodInfo GetMethod(string name, Type[] types, ParameterModifier[] modifiers); + MethodInfo GetMethod(string name, BindingFlags bindingAttr, Binder binder, Type[] types, ParameterModifier[] modifiers); + MethodInfo GetMethod(string name, BindingFlags bindingAttr, Binder binder, CallingConventions callConvention, Type[] types, ParameterModifier[] modifiers); + MethodInfo[] GetMethods(); + MethodInfo[] GetMethods(BindingFlags bindingAttr); + Type GetNestedType(string name); + Type GetNestedType(string name, BindingFlags bindingAttr); + Type[] GetNestedTypes(); + Type[] GetNestedTypes(BindingFlags bindingAttr); + PropertyInfo[] GetProperties(); + PropertyInfo[] GetProperties(BindingFlags bindingAttr); + PropertyInfo GetProperty(string name); + PropertyInfo GetProperty(string name, BindingFlags bindingAttr); + PropertyInfo GetProperty(string name, Type returnType); + PropertyInfo GetProperty(string name, Type[] types); + PropertyInfo GetProperty(string name, Type returnType, Type[] types); + PropertyInfo GetProperty(string name, Type returnType, Type[] types, ParameterModifier[] modifiers); + PropertyInfo GetProperty(string name, BindingFlags bindingAttr, Binder binder, Type returnType, Type[] types, ParameterModifier[] modifiers); + Type GetType(); + object InvokeMember(string name, BindingFlags invokeAttr, Binder binder, object target, object[] args); + object InvokeMember(string name, BindingFlags invokeAttr, Binder binder, object target, object[] args, CultureInfo culture); + object InvokeMember(string name, BindingFlags invokeAttr, Binder binder, object target, object[] args, ParameterModifier[] modifiers, CultureInfo culture, string[] namedParameters); + bool IsAssignableFrom(Type c); + bool IsDefined(Type attributeType, bool inherit); + bool IsInstanceOfType(object o); + bool IsSubclassOf(Type c); + string ToString(); +} + +// Namespace: System +[Serializable] +public class Exception : ISerializable, _Exception // TypeDefIndex: 57 +{ + // Fields + private IntPtr[] trace_ips; // 0x08 + private Exception inner_exception; // 0x0C + internal string message; // 0x10 + private string help_link; // 0x14 + private string class_name; // 0x18 + private string stack_trace; // 0x1C + private string _remoteStackTraceString; // 0x20 + private int remote_stack_index; // 0x24 + internal int hresult; // 0x28 + private string source; // 0x2C + private IDictionary _data; // 0x30 + + // Properties + public Exception InnerException { get; } // 0x002E0C68 + public virtual string HelpLink { get; set; } // 0x002E0C70 0x002E0C78 + protected int HResult { get; set; } // 0x002E0C80 0x002E0C88 + private string ClassName { get; } // 0x002E0CA0 + public virtual string Message { get; } // 0x002E0CFC + public virtual string Source { get; set; } // 0x002E0DBC 0x002E0F48 + public virtual string StackTrace { get; } // 0x002E0F50 + public MethodBase TargetSite { get; } // 0x002E1A6C + public virtual IDictionary Data { get; } // 0x002E1B6C + + // Methods + public void .ctor(); // 0x002E0854 + public void .ctor(string message); // 0x002D80EC + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x002E0868 + public void .ctor(string message, Exception innerException); // 0x002E0C30 + internal void SetMessage(string s); // 0x002E0C90 + internal void SetStackTrace(string s); // 0x002E0C98 + public virtual Exception GetBaseException(); // 0x002E1BEC + public virtual void GetObjectData(SerializationInfo info, StreamingContext context); // 0x002E1C18 + public override string ToString(); // 0x002E1EB4 + internal Exception FixRemotingException(); // 0x002E214C + internal void GetFullNameForStackTrace(StringBuilder sb, MethodBase mi); // 0x002E145C + public Type GetType(); // 0x002E0CF4 +} + +// Namespace: System.Runtime.InteropServices +public interface _Exception // TypeDefIndex: 58 +{ + // Properties + string HelpLink { get; set; } + Exception InnerException { get; } + string Message { get; } + string Source { get; set; } + string StackTrace { get; } + MethodBase TargetSite { get; } + + // Methods + bool Equals(object obj); + Exception GetBaseException(); + int GetHashCode(); + void GetObjectData(SerializationInfo info, StreamingContext context); + Type GetType(); + string ToString(); +} + +// Namespace: System +[Serializable] +public struct RuntimeFieldHandle : ISerializable // TypeDefIndex: 59 +{ + // Fields + private IntPtr value; // 0x08 + + // Properties + public IntPtr Value { get; } // 0x0008BD24 + + // Methods + internal void .ctor(IntPtr v); // 0x0008BD00 + private void .ctor(SerializationInfo info, StreamingContext context); // 0x0008BD08 + public void GetObjectData(SerializationInfo info, StreamingContext context); // 0x0008BD2C + public override bool Equals(object obj); // 0x0008BD48 + public bool Equals(RuntimeFieldHandle handle); // 0x0008BD50 + public override int GetHashCode(); // 0x0008BD5C + public static bool op_Equality(RuntimeFieldHandle left, RuntimeFieldHandle right); // 0x0020E740 + public static bool op_Inequality(RuntimeFieldHandle left, RuntimeFieldHandle right); // 0x0020E748 +} + +// Namespace: System +[Serializable] +public struct RuntimeTypeHandle : ISerializable // TypeDefIndex: 60 +{ + // Fields + private IntPtr value; // 0x08 + + // Properties + public IntPtr Value { get; } // 0x0008BDFC + + // Methods + internal void .ctor(IntPtr val); // 0x0008BDD8 + private void .ctor(SerializationInfo info, StreamingContext context); // 0x0008BDE0 + public void GetObjectData(SerializationInfo info, StreamingContext context); // 0x0008BE04 + public override bool Equals(object obj); // 0x0008BE20 + public bool Equals(RuntimeTypeHandle handle); // 0x0008BE28 + public override int GetHashCode(); // 0x0008BE34 + public ModuleHandle GetModuleHandle(); // 0x0008BE40 + public static bool op_Equality(RuntimeTypeHandle left, object right); // 0x0020F2B8 + public static bool op_Inequality(RuntimeTypeHandle left, object right); // 0x0020F34C + public static bool op_Equality(object left, RuntimeTypeHandle right); // 0x0020F3E0 + public static bool op_Inequality(object left, RuntimeTypeHandle right); // 0x0020F474 +} + +// Namespace: System +public sealed class ParamArrayAttribute : Attribute // TypeDefIndex: 61 +{ + // Methods + public void .ctor(); // 0x001B1A2C +} + +// Namespace: System.Runtime.InteropServices +public sealed class OutAttribute : Attribute // TypeDefIndex: 62 +{ + // Methods + public void .ctor(); // 0x002BD42C +} + +// Namespace: System +[Serializable] +public sealed class ObsoleteAttribute : Attribute // TypeDefIndex: 63 +{ + // Fields + private string _message; // 0x08 + private bool _error; // 0x0C + + // Properties + public string Message { get; } // 0x001B0FE0 + public bool IsError { get; } // 0x001B0FE8 + + // Methods + public void .ctor(); // 0x001B0F90 + public void .ctor(string message); // 0x001B0F98 + public void .ctor(string message, bool error); // 0x001B0FB8 +} + +// Namespace: System.Runtime.InteropServices +public sealed class DllImportAttribute : Attribute // TypeDefIndex: 64 +{ + // Fields + public CallingConvention CallingConvention; // 0x08 + public CharSet CharSet; // 0x0C + private string Dll; // 0x10 + public string EntryPoint; // 0x14 + public bool ExactSpelling; // 0x18 + public bool PreserveSig; // 0x19 + public bool SetLastError; // 0x1A + public bool BestFitMapping; // 0x1B + public bool ThrowOnUnmappableChar; // 0x1C + + // Properties + public string Value { get; } // 0x002B63E4 + + // Methods + public void .ctor(string dllName); // 0x002B63C4 +} + +// Namespace: System.Runtime.CompilerServices +[Serializable] +public sealed class MethodImplAttribute : Attribute // TypeDefIndex: 65 +{ + // Fields + private MethodImplOptions _val; // 0x08 + public MethodCodeType MethodCodeType; // 0x0C + + // Properties + public MethodImplOptions Value { get; } // 0x0037D3FC + + // Methods + public void .ctor(); // 0x0037D3B4 + public void .ctor(short value); // 0x0037D3BC + public void .ctor(MethodImplOptions methodImplOptions); // 0x0037D3DC +} + +// Namespace: System.Runtime.InteropServices +public sealed class MarshalAsAttribute : Attribute // TypeDefIndex: 66 +{ + // Fields + private UnmanagedType utype; // 0x08 + public UnmanagedType ArraySubType; // 0x0C + public string MarshalCookie; // 0x10 + public string MarshalType; // 0x14 + public Type MarshalTypeRef; // 0x18 + public VarEnum SafeArraySubType; // 0x1C + public int SizeConst; // 0x20 + public short SizeParamIndex; // 0x24 + public Type SafeArrayUserDefinedSubType; // 0x28 + public int IidParameterIndex; // 0x2C + + // Properties + public UnmanagedType Value { get; } // 0x002BD03C + + // Methods + public void .ctor(short unmanagedType); // 0x002BCFFC + public void .ctor(UnmanagedType unmanagedType); // 0x002BD01C +} + +// Namespace: System.Runtime.InteropServices +public sealed class InAttribute : Attribute // TypeDefIndex: 67 +{ + // Methods + public void .ctor(); // 0x002B7168 +} + +// Namespace: System.Runtime.CompilerServices +[Serializable] +public sealed class IndexerNameAttribute : Attribute // TypeDefIndex: 68 +{ + // Methods + public void .ctor(string indexerName); // 0x0037D368 +} + +// Namespace: System.Diagnostics +[Serializable] +public sealed class ConditionalAttribute : Attribute // TypeDefIndex: 69 +{ + // Fields + private string myCondition; // 0x08 + + // Properties + public string ConditionString { get; } // 0x004CB22C + + // Methods + public void .ctor(string conditionString); // 0x004CB20C +} + +// Namespace: System.Security.Permissions +[Serializable] +public abstract class SecurityAttribute : Attribute // TypeDefIndex: 70 +{ + // Fields + private SecurityAction m_Action; // 0x08 + private bool m_Unrestricted; // 0x0C + + // Properties + public bool Unrestricted { get; set; } // 0x003AA5D4 0x003AA5DC + public SecurityAction Action { get; set; } // 0x003AA5E4 0x003AA5EC + + // Methods + protected void .ctor(SecurityAction action); // 0x003AA5B4 + public abstract IPermission CreatePermission(); +} + +// Namespace: System.Runtime.CompilerServices +[Serializable] +public sealed class RequiredAttributeAttribute : Attribute // TypeDefIndex: 71 +{ + // Properties + public Type RequiredContract { get; } // 0x0037D414 + + // Methods + public void .ctor(Type requiredContract); // 0x0037D40C +} + +// Namespace: System.Runtime.InteropServices +public sealed class GuidAttribute : Attribute // TypeDefIndex: 72 +{ + // Fields + private string guidValue; // 0x08 + + // Properties + public string Value { get; } // 0x002B70C8 + + // Methods + public void .ctor(string guid); // 0x002B70A8 +} + +// Namespace: System.Reflection +public sealed class AssemblyCultureAttribute : Attribute // TypeDefIndex: 73 +{ + // Fields + private string name; // 0x08 + + // Properties + public string Culture { get; } // 0x001B5838 + + // Methods + public void .ctor(string culture); // 0x001B5818 +} + +// Namespace: System.Reflection +public sealed class AssemblyVersionAttribute : Attribute // TypeDefIndex: 74 +{ + // Fields + private string name; // 0x08 + + // Properties + public string Version { get; } // 0x001B768C + + // Methods + public void .ctor(string version); // 0x001B766C +} + +// Namespace: System.Runtime.InteropServices +public sealed class ComImportAttribute : Attribute // TypeDefIndex: 75 +{ + // Methods + public void .ctor(); // 0x0037F184 +} + +// Namespace: System.Runtime.InteropServices +public sealed class CoClassAttribute : Attribute // TypeDefIndex: 76 +{ + // Fields + private Type klass; // 0x08 + + // Properties + public Type CoClass { get; } // 0x0037F094 + + // Methods + public void .ctor(Type coClass); // 0x0037F074 +} + +// Namespace: System.Runtime.InteropServices +public sealed class OptionalAttribute : Attribute // TypeDefIndex: 77 +{ + // Methods + public void .ctor(); // 0x002BD424 +} + +// Namespace: System.Runtime.InteropServices +public sealed class DefaultCharSetAttribute : Attribute // TypeDefIndex: 78 +{ + // Fields + private CharSet _set; // 0x08 + + // Properties + public CharSet CharSet { get; } // 0x002B626C + + // Methods + public void .ctor(CharSet charSet); // 0x002B624C +} + +// Namespace: System.Runtime.CompilerServices +public sealed class TypeForwardedToAttribute : Attribute // TypeDefIndex: 79 +{ + // Fields + private Type destination; // 0x08 + + // Properties + public Type Destination { get; } // 0x0037E24C + + // Methods + public void .ctor(Type destination); // 0x0037E22C +} + +// Namespace: System.Runtime.CompilerServices +public sealed class FixedBufferAttribute : Attribute // TypeDefIndex: 80 +{ + // Fields + private Type elementType; // 0x08 + private int length; // 0x0C + + // Properties + public Type ElementType { get; } // 0x0037D330 + public int Length { get; } // 0x0037D338 + + // Methods + public void .ctor(Type elementType, int length); // 0x0037D308 +} + +// Namespace: System.Runtime.CompilerServices +[Serializable] +public sealed class CompilerGeneratedAttribute : Attribute // TypeDefIndex: 81 +{ + // Methods + public void .ctor(); // 0x0037D06C +} + +// Namespace: System.Runtime.CompilerServices +public sealed class InternalsVisibleToAttribute : Attribute // TypeDefIndex: 82 +{ + // Fields + private string assemblyName; // 0x08 + private bool all_visible; // 0x0C + + // Properties + public string AssemblyName { get; } // 0x0037D39C + public bool AllInternalsVisible { get; set; } // 0x0037D3A4 0x0037D3AC + + // Methods + public void .ctor(string assemblyName); // 0x0037D370 +} + +// Namespace: System.Runtime.CompilerServices +[Serializable] +public sealed class RuntimeCompatibilityAttribute : Attribute // TypeDefIndex: 83 +{ + // Fields + private bool wrap_non_exception_throws; // 0x08 + + // Properties + public bool WrapNonExceptionThrows { get; set; } // 0x0037D4A4 0x0037D4AC + + // Methods + public void .ctor(); // 0x0037D49C +} + +// Namespace: System.Diagnostics +[Serializable] +public sealed class DebuggerHiddenAttribute : Attribute // TypeDefIndex: 84 +{ + // Methods + public void .ctor(); // 0x002D3D18 +} + +// Namespace: System.Runtime.CompilerServices +[Serializable] +public sealed class UnsafeValueTypeAttribute : Attribute // TypeDefIndex: 85 +{ + // Methods + public void .ctor(); // 0x0037E254 +} + +// Namespace: System.Reflection +[Serializable] +public sealed class DefaultMemberAttribute : Attribute // TypeDefIndex: 86 +{ + // Fields + private string member_name; // 0x08 + + // Properties + public string MemberName { get; } // 0x001BCDFC + + // Methods + public void .ctor(string memberName); // 0x001BCDDC +} + +// Namespace: System.Runtime.CompilerServices +[Serializable] +public sealed class DecimalConstantAttribute : Attribute // TypeDefIndex: 87 +{ + // Fields + private byte scale; // 0x08 + private bool sign; // 0x09 + private int hi; // 0x0C + private int mid; // 0x10 + private int low; // 0x14 + + // Properties + public Decimal Value { get; } // 0x00367A48 + + // Methods + public void .ctor(byte scale, byte sign, uint hi, uint mid, uint low); // 0x0037D128 + public void .ctor(byte scale, byte sign, int hi, int mid, int low); // 0x0037D1E0 +} + +// Namespace: System.Runtime.InteropServices +public sealed class StructLayoutAttribute : Attribute // TypeDefIndex: 88 +{ + // Fields + public CharSet CharSet; // 0x08 + public int Pack; // 0x0C + public int Size; // 0x10 + private LayoutKind lkind; // 0x14 + + // Properties + public LayoutKind Value { get; } // 0x002BE918 + + // Methods + public void .ctor(short layoutKind); // 0x002BE8B0 + public void .ctor(LayoutKind layoutKind); // 0x002BE8E4 +} + +// Namespace: System.Runtime.InteropServices +public sealed class FieldOffsetAttribute : Attribute // TypeDefIndex: 89 +{ + // Fields + private int val; // 0x08 + + // Properties + public int Value { get; } // 0x002B6AD4 + + // Methods + public void .ctor(int offset); // 0x002B6AB4 +} + +// Namespace: System +public struct RuntimeArgumentHandle // TypeDefIndex: 90 +{ + // Fields + internal IntPtr args; // 0x08 + +} + +// Namespace: System +[Serializable] +public delegate void AsyncCallback(IAsyncResult ar); // TypeDefIndex: 91; 0x004F41B0 + +// Namespace: System +public interface IAsyncResult // TypeDefIndex: 92 +{ + // Properties + object AsyncState { get; } + WaitHandle AsyncWaitHandle { get; } + bool CompletedSynchronously { get; } + bool IsCompleted { get; } + +} + +// Namespace: System +public struct TypedReference // TypeDefIndex: 93 +{ + // Fields + private RuntimeTypeHandle type; // 0x08 + private IntPtr value; // 0x0C + private IntPtr klass; // 0x10 + + // Methods + public override bool Equals(object o); // 0x000A7C00 + public override int GetHashCode(); // 0x000A7C10 + public static Type GetTargetType(TypedReference value); // 0x00426FC4 + public static TypedReference MakeTypedReference(object target, FieldInfo[] flds); // 0x00427044 + public static void SetTypedReference(TypedReference target, object value); // 0x004271D0 + public static RuntimeTypeHandle TargetTypeToken(TypedReference value); // 0x004272A8 + public static object ToObject(TypedReference value); // 0x004272AC +} + +// Namespace: System +public struct ArgIterator // TypeDefIndex: 94 +{ + // Fields + private IntPtr sig; // 0x08 + private IntPtr args; // 0x0C + private int next_arg; // 0x10 + private int num_args; // 0x14 + + // Methods + public void .ctor(RuntimeArgumentHandle arglist); // 0x0008C728 + public void .ctor(RuntimeArgumentHandle arglist, void * ptr); // 0x0008C730 + private void Setup(IntPtr argsp, IntPtr start); // 0x0008C738 + public void End(); // 0x0008C740 + public override bool Equals(object o); // 0x0008C74C + public override int GetHashCode(); // 0x0008C75C + public TypedReference GetNextArg(); // 0x0008C768 + private TypedReference IntGetNextArg(); // 0x0008C77C + public TypedReference GetNextArg(RuntimeTypeHandle rth); // 0x0008C790 + private TypedReference IntGetNextArg(IntPtr rth); // 0x0008C7A4 + public RuntimeTypeHandle GetNextArgType(); // 0x0008C7B8 + private IntPtr IntGetNextArgType(); // 0x0008C7C0 + public int GetRemainingCount(); // 0x0008C7C8 +} + +// Namespace: System +[Serializable] +public abstract class MarshalByRefObject // TypeDefIndex: 95 +{ + // Fields + [NonSerialized] private ServerIdentity _identity; // 0x08 + + // Properties + internal ServerIdentity ObjectIdentity { get; set; } // 0x001DE6DC 0x001DE6E4 + + // Methods + protected void .ctor(); // 0x001DE5CC + internal Identity GetObjectIdentity(MarshalByRefObject obj, out bool IsClient); // 0x001DE5D4 + public virtual ObjRef CreateObjRef(Type requestedType); // 0x001DE6EC + public object GetLifetimeService(); // 0x001DE7C0 + public virtual object InitializeLifetimeService(); // 0x001DE7D4 + protected MarshalByRefObject MemberwiseClone(bool cloneIdentity); // 0x001DE858 +} + +// Namespace: System +[Serializable] +public struct Nullable`1 // TypeDefIndex: 96 +{ + // Fields + internal T value; // 0x00 + internal bool has_value; // 0x00 + + // Properties + public bool HasValue { get; } + public T Value { get; } + + // Methods + public void .ctor(T value); + public override bool Equals(object other); + private bool Equals(Nullable`1 other); + public override int GetHashCode(); + public T GetValueOrDefault(); + public T GetValueOrDefault(T defaultValue); + public override string ToString(); + private static object Box(Nullable`1 o); + private static Nullable`1 Unbox(object o); + public static Nullable`1 op_Implicit(T value); + public static T op_Explicit(Nullable`1 value); +} + +// Namespace: System.Runtime.CompilerServices +public static class RuntimeHelpers // TypeDefIndex: 97 +{ + // Properties + public static int OffsetToStringData { get; } // 0x0037D578 + + // Methods + private static void InitializeArray(Array array, IntPtr fldHandle); // 0x0037D4B4 + public static void InitializeArray(Array array, RuntimeFieldHandle fldHandle); // 0x0037D4B8 + public static int GetHashCode(object o); // 0x0037D57C + public static bool Equals(object o1, object o2); // 0x0037D584 + public static object GetObjectValue(object obj); // 0x0037D650 + private static void RunClassConstructor(IntPtr type); // 0x0037D654 + public static void RunClassConstructor(RuntimeTypeHandle type); // 0x0037D658 + public static void ExecuteCodeWithGuaranteedCleanup(TryCode code, CleanupCode backoutCode, object userData); // 0x0037D72C + public static void PrepareConstrainedRegions(); // 0x0037D730 + public static void PrepareConstrainedRegionsNoOP(); // 0x0037D734 + public static void ProbeForSufficientStack(); // 0x0037D738 + public static void PrepareDelegate(Delegate d); // 0x0037D73C + public static void PrepareMethod(RuntimeMethodHandle method); // 0x0037D7E4 + public static void PrepareMethod(RuntimeMethodHandle method, RuntimeTypeHandle[] instantiation); // 0x0037D7E8 + public static void RunModuleConstructor(ModuleHandle module); // 0x0037D7EC + public static void RunModuleConstructor(IntPtr module); // 0x0037D900 +} + +// Namespace: +public delegate void TryCode(object userData); // TypeDefIndex: 98; 0x0037DD84 + +// Namespace: +public delegate void CleanupCode(object userData, bool exceptionThrown); // TypeDefIndex: 99; 0x0037D918 + +// Namespace: +internal static class Consts // TypeDefIndex: 100 +{ + // Fields + public const string MonoVersion = "2.6.5.0"; // 0x00 + public const string MonoCompany = "MONO development team"; // 0x00 + public const string MonoProduct = "MONO Common language infrastructure"; // 0x00 + public const string MonoCopyright = "(c) various MONO Authors"; // 0x00 + public const string FxVersion = "2.0.0.0"; // 0x00 + public const string VsVersion = "8.0.0.0"; // 0x00 + public const string FxFileVersion = "2.0.50727.1433"; // 0x00 + public const string VsFileVersion = "8.0.50727.1433"; // 0x00 + public const string AssemblyI18N = "I18N, Version=2.0.0.0, Culture=neutral, PublicKeyToken=0738eb9f132ed756"; // 0x00 + public const string AssemblyMicrosoft_VisualStudio = "Microsoft.VisualStudio, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + public const string AssemblyMicrosoft_VisualStudio_Web = "Microsoft.VisualStudio.Web, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + public const string AssemblyMicrosoft_VSDesigner = "Microsoft.VSDesigner, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + public const string AssemblyMono_Http = "Mono.Http, Version=2.0.0.0, Culture=neutral, PublicKeyToken=0738eb9f132ed756"; // 0x00 + public const string AssemblyMono_Posix = "Mono.Posix, Version=2.0.0.0, Culture=neutral, PublicKeyToken=0738eb9f132ed756"; // 0x00 + public const string AssemblyMono_Security = "Mono.Security, Version=2.0.0.0, Culture=neutral, PublicKeyToken=0738eb9f132ed756"; // 0x00 + public const string AssemblyMono_Messaging_RabbitMQ = "Mono.Messaging.RabbitMQ, Version=2.0.0.0, Culture=neutral, PublicKeyToken=0738eb9f132ed756"; // 0x00 + public const string AssemblyCorlib = "mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"; // 0x00 + public const string AssemblySystem = "System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"; // 0x00 + public const string AssemblySystem_Data = "System.Data, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"; // 0x00 + public const string AssemblySystem_Design = "System.Design, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + public const string AssemblySystem_DirectoryServices = "System.DirectoryServices, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + public const string AssemblySystem_Drawing = "System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + public const string AssemblySystem_Drawing_Design = "System.Drawing.Design, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + public const string AssemblySystem_Messaging = "System.Messaging, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + public const string AssemblySystem_Security = "System.Security, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + public const string AssemblySystem_ServiceProcess = "System.ServiceProcess, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + public const string AssemblySystem_Web = "System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + public const string AssemblySystem_Windows_Forms = "System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"; // 0x00 + public const string AssemblySystem_Core = "System.Core, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"; // 0x00 + +} + +// Namespace: +internal sealed class Locale // TypeDefIndex: 101 +{ + // Methods + private void .ctor(); // 0x003EC3F8 + public static string GetText(string msg); // 0x003EC400 + public static string GetText(string fmt, object[] args); // 0x003EC404 +} + +// Namespace: System +internal class MonoTODOAttribute : Attribute // TypeDefIndex: 102 +{ + // Fields + private string comment; // 0x08 + + // Properties + public string Comment { get; } // 0x001E5764 + + // Methods + public void .ctor(); // 0x001E575C + public void .ctor(string comment); // 0x001E4678 +} + +// Namespace: System +internal class MonoDocumentationNoteAttribute : MonoTODOAttribute // TypeDefIndex: 103 +{ + // Methods + public void .ctor(string comment); // 0x001E4658 +} + +// Namespace: System +internal class MonoExtensionAttribute : MonoTODOAttribute // TypeDefIndex: 104 +{ + // Methods + public void .ctor(string comment); // 0x001E56D4 +} + +// Namespace: System +internal class MonoInternalNoteAttribute : MonoTODOAttribute // TypeDefIndex: 105 +{ + // Methods + public void .ctor(string comment); // 0x001E56F4 +} + +// Namespace: System +internal class MonoLimitationAttribute : MonoTODOAttribute // TypeDefIndex: 106 +{ + // Methods + public void .ctor(string comment); // 0x001E5714 +} + +// Namespace: System +internal class MonoNotSupportedAttribute : MonoTODOAttribute // TypeDefIndex: 107 +{ + // Methods + public void .ctor(string comment); // 0x001E573C +} + +// Namespace: Microsoft.Win32.SafeHandles +public abstract class CriticalHandleMinusOneIsInvalid : CriticalHandle, IDisposable // TypeDefIndex: 108 +{ + // Properties + public override bool IsInvalid { get; } // 0x003F4F54 + + // Methods + protected void .ctor(); // 0x003F4F28 +} + +// Namespace: Microsoft.Win32.SafeHandles +public abstract class CriticalHandleZeroOrMinusOneIsInvalid : CriticalHandle, IDisposable // TypeDefIndex: 109 +{ + // Properties + public override bool IsInvalid { get; } // 0x003F4FAC + + // Methods + protected void .ctor(); // 0x003F4F80 +} + +// Namespace: Microsoft.Win32.SafeHandles +public sealed class SafeFileHandle : SafeHandleZeroOrMinusOneIsInvalid // TypeDefIndex: 110 +{ + // Methods + public void .ctor(IntPtr preexistingHandle, bool ownsHandle); // 0x003F5034 + internal void .ctor(); // 0x003F50A4 + protected override bool ReleaseHandle(); // 0x003F50D4 +} + +// Namespace: Microsoft.Win32.SafeHandles +public abstract class SafeHandleMinusOneIsInvalid : SafeHandle, IDisposable // TypeDefIndex: 111 +{ + // Properties + public override bool IsInvalid { get; } // 0x003F51B4 + + // Methods + protected void .ctor(bool ownsHandle); // 0x003F5180 +} + +// Namespace: Microsoft.Win32.SafeHandles +public abstract class SafeHandleZeroOrMinusOneIsInvalid : SafeHandle, IDisposable // TypeDefIndex: 112 +{ + // Properties + public override bool IsInvalid { get; } // 0x003F51E0 + + // Methods + protected void .ctor(bool ownsHandle); // 0x003F5070 +} + +// Namespace: Microsoft.Win32.SafeHandles +public sealed class SafeWaitHandle : SafeHandleZeroOrMinusOneIsInvalid // TypeDefIndex: 113 +{ + // Methods + public void .ctor(IntPtr existingHandle, bool ownsHandle); // 0x003F523C + protected override bool ReleaseHandle(); // 0x003F5278 +} + +// Namespace: Microsoft.Win32 +internal interface IRegistryApi // TypeDefIndex: 114 +{ + // Methods + RegistryKey CreateSubKey(RegistryKey rkey, string keyname); + RegistryKey OpenRemoteBaseKey(RegistryHive hKey, string machineName); + RegistryKey OpenSubKey(RegistryKey rkey, string keyname, bool writtable); + void Flush(RegistryKey rkey); + void Close(RegistryKey rkey); + object GetValue(RegistryKey rkey, string name, object default_value, RegistryValueOptions options); + void SetValue(RegistryKey rkey, string name, object value); + int SubKeyCount(RegistryKey rkey); + int ValueCount(RegistryKey rkey); + void DeleteValue(RegistryKey rkey, string value, bool throw_if_missing); + void DeleteKey(RegistryKey rkey, string keyName, bool throw_if_missing); + string[] GetSubKeyNames(RegistryKey rkey); + string[] GetValueNames(RegistryKey rkey); + string ToString(RegistryKey rkey); + void SetValue(RegistryKey rkey, string name, object value, RegistryValueKind valueKind); +} + +// Namespace: Microsoft.Win32 +public static class Registry // TypeDefIndex: 115 +{ + // Fields + public static readonly RegistryKey ClassesRoot; // 0x00 + public static readonly RegistryKey CurrentConfig; // 0x04 + public static readonly RegistryKey CurrentUser; // 0x08 + public static readonly RegistryKey DynData; // 0x0C + public static readonly RegistryKey LocalMachine; // 0x10 + public static readonly RegistryKey PerformanceData; // 0x14 + public static readonly RegistryKey Users; // 0x18 + private static Dictionary`2 <>f__switch$map0; // 0x1C + + // Methods + private static void .cctor(); // 0x003F1B08 + private static RegistryKey ToKey(string keyName, bool setting); // 0x003F1D78 + public static void SetValue(string keyName, string valueName, object value); // 0x003F28C0 + public static void SetValue(string keyName, string valueName, object value, RegistryValueKind valueKind); // 0x003F2C3C + public static object GetValue(string keyName, string valueName, object defaultValue); // 0x003F2FD4 +} + +// Namespace: Microsoft.Win32 +[Serializable] +public enum RegistryHive // TypeDefIndex: 116 +{ + ClassesRoot = -2147483648, + CurrentUser = -2147483647, + LocalMachine = -2147483646, + Users = -2147483645, + PerformanceData = -2147483644, + CurrentConfig = -2147483643, + DynData = -2147483642 +} + +// Namespace: Microsoft.Win32 +public sealed class RegistryKey : MarshalByRefObject, IDisposable // TypeDefIndex: 117 +{ + // Fields + private object handle; // 0x0C + private object hive; // 0x10 + private readonly string qname; // 0x14 + private readonly bool isRemoteRoot; // 0x18 + private readonly bool isWritable; // 0x19 + private static readonly IRegistryApi RegistryApi; // 0x00 + + // Properties + public string Name { get; } // 0x003F375C + public int SubKeyCount { get; } // 0x003F3880 + public int ValueCount { get; } // 0x003F3A50 + internal bool IsRoot { get; } // 0x003EEBA4 + private bool IsWritable { get; } // 0x003F4DFC + internal RegistryHive Hive { get; } // 0x003EEBB4 + internal object Handle { get; } // 0x003F4E04 + + // Methods + internal void .ctor(RegistryHive hiveId); // 0x003F1D34 + internal void .ctor(RegistryHive hiveId, IntPtr keyHandle, bool remoteRoot); // 0x003F31C4 + internal void .ctor(object data, string keyName, bool writable); // 0x003EE1E4 + private static void .cctor(); // 0x003F3400 + private void System.IDisposable.Dispose(); // 0x003F3594 + protected override void Finalize(); // 0x003F36F8 + public void Flush(); // 0x003F3764 + public void Close(); // 0x003F35B4 + public void SetValue(string name, object value); // 0x003F2A40 + public void SetValue(string name, object value, RegistryValueKind valueKind); // 0x003F2DCC + public RegistryKey OpenSubKey(string name); // 0x003F3C30 + public RegistryKey OpenSubKey(string name, bool writable); // 0x003F2578 + public object GetValue(string name); // 0x003F3C38 + public object GetValue(string name, object defaultValue); // 0x003F307C + public object GetValue(string name, object defaultValue, RegistryValueOptions options); // 0x003F3C40 + public RegistryValueKind GetValueKind(string name); // 0x003F3D88 + public RegistryKey CreateSubKey(string subkey); // 0x003F2720 + public RegistryKey CreateSubKey(string subkey, RegistryKeyPermissionCheck permissionCheck); // 0x003F3EB8 + public RegistryKey CreateSubKey(string subkey, RegistryKeyPermissionCheck permissionCheck, RegistrySecurity registrySecurity); // 0x003F3F40 + public void DeleteSubKey(string subkey); // 0x003F3FC8 + public void DeleteSubKey(string subkey, bool throwOnMissingSubKey); // 0x003F3FD0 + public void DeleteSubKeyTree(string subkey); // 0x003F4248 + public void DeleteValue(string name); // 0x003F446C + public void DeleteValue(string name, bool throwOnMissingValue); // 0x003F4474 + public RegistrySecurity GetAccessControl(); // 0x003F4664 + public RegistrySecurity GetAccessControl(AccessControlSections includeSections); // 0x003F46EC + public string[] GetSubKeyNames(); // 0x003F4774 + public string[] GetValueNames(); // 0x003F4898 + public static RegistryKey OpenRemoteBaseKey(RegistryHive hKey, string machineName); // 0x003F49BC + public RegistryKey OpenSubKey(string name, RegistryKeyPermissionCheck permissionCheck); // 0x003F4B40 + public RegistryKey OpenSubKey(string name, RegistryKeyPermissionCheck permissionCheck, RegistryRights rights); // 0x003F4BC8 + public void SetAccessControl(RegistrySecurity registrySecurity); // 0x003F4C50 + public override string ToString(); // 0x003F4CD8 + private void AssertKeyStillValid(); // 0x003F39A4 + private void AssertKeyNameNotNull(string subKeyName); // 0x003F3E10 + private void AssertKeyNameLength(string name); // 0x003F3B74 + private void DeleteChildKeysAndValues(); // 0x003F4344 + internal static string DecodeString(byte[] data); // 0x003F4E0C + internal static IOException CreateMarkedForDeletionException(); // 0x003F1A6C + private static string GetHiveName(RegistryHive hive); // 0x003F32B4 +} + +// Namespace: Microsoft.Win32 +public enum RegistryKeyPermissionCheck // TypeDefIndex: 118 +{ + Default = 0, + ReadSubTree = 1, + ReadWriteSubTree = 2 +} + +// Namespace: Microsoft.Win32 +public enum RegistryValueKind // TypeDefIndex: 119 +{ + Unknown = 0, + String = 1, + ExpandString = 2, + Binary = 3, + DWord = 4, + MultiString = 7, + QWord = 11 +} + +// Namespace: Microsoft.Win32 +public enum RegistryValueOptions // TypeDefIndex: 120 +{ + None = 0, + DoNotExpandEnvironmentNames = 1 +} + +// Namespace: Microsoft.Win32 +internal class ExpandString // TypeDefIndex: 121 +{ + // Fields + private string value; // 0x08 + + // Methods + public void .ctor(string s); // 0x003EC490 + public override string ToString(); // 0x003EC4B0 + public string Expand(); // 0x003EC4B8 +} + +// Namespace: Microsoft.Win32 +internal class KeyHandler // TypeDefIndex: 122 +{ + // Fields + private static Hashtable key_to_handler; // 0x00 + private static Hashtable dir_to_handler; // 0x04 + public string Dir; // 0x08 + private Hashtable values; // 0x0C + private string file; // 0x10 + private bool dirty; // 0x14 + private static Dictionary`2 <>f__switch$map1; // 0x08 + + // Properties + public int ValueCount { get; } // 0x003F18BC + public bool IsMarkedForDeletion { get; } // 0x003EFEE4 + private static string UserStore { get; } // 0x003EEC84 + private static string MachineStore { get; } // 0x003EED24 + + // Methods + private void .ctor(RegistryKey rkey, string basedir); // 0x003EC6EC + private static void .cctor(); // 0x003ED17C + public void Load(); // 0x003EC89C + private void LoadKey(SecurityElement se); // 0x003ED264 + public RegistryKey Ensure(RegistryKey rkey, string extra, bool writable); // 0x003EDD8C + public RegistryKey Probe(RegistryKey rkey, string extra, bool writable); // 0x003EE214 + private static string CombineName(RegistryKey rkey, string extra); // 0x003EE0E4 + public static KeyHandler Lookup(RegistryKey rkey, bool createNonExisting); // 0x003EE638 + public static void Drop(RegistryKey rkey); // 0x003EEE6C + public static void Drop(string dir); // 0x003EF468 + public object GetValue(string name, RegistryValueOptions options); // 0x003EFD6C + public void SetValue(string name, object value); // 0x003EFFA4 + public string[] GetValueNames(); // 0x003F0344 + public void SetValue(string name, object value, RegistryValueKind valueKind); // 0x003F04FC + private void SetDirty(); // 0x003F01B8 + public void DirtyTimeout(object state); // 0x003F096C + public void Flush(); // 0x003F0970 + public bool ValueExists(string name); // 0x003F17F4 + public void RemoveValue(string name); // 0x003F19BC + protected override void Finalize(); // 0x003F1A08 + private void Save(); // 0x003F0A7C + private void AssertNotMarkedForDeletion(); // 0x003F012C +} + +// Namespace: Microsoft.Win32 +internal class UnixRegistryApi : IRegistryApi // TypeDefIndex: 123 +{ + // Methods + public void .ctor(); // 0x003F358C + private static string ToUnix(string keyname); // 0x003F5294 + private static bool IsWellKnownKey(string parentKeyName, string keyname); // 0x003F5310 + public RegistryKey CreateSubKey(RegistryKey rkey, string keyname); // 0x003F553C + public RegistryKey OpenRemoteBaseKey(RegistryHive hKey, string machineName); // 0x003F5648 + public RegistryKey OpenSubKey(RegistryKey rkey, string keyname, bool writable); // 0x003F56D0 + public void Flush(RegistryKey rkey); // 0x003F57D0 + public void Close(RegistryKey rkey); // 0x003F5860 + public object GetValue(RegistryKey rkey, string name, object default_value, RegistryValueOptions options); // 0x003F58E0 + public void SetValue(RegistryKey rkey, string name, object value); // 0x003F59A8 + public void SetValue(RegistryKey rkey, string name, object value, RegistryValueKind valueKind); // 0x003F5A7C + public int SubKeyCount(RegistryKey rkey); // 0x003F5B5C + public int ValueCount(RegistryKey rkey); // 0x003F5C40 + public void DeleteValue(RegistryKey rkey, string name, bool throw_if_missing); // 0x003F5D04 + public void DeleteKey(RegistryKey rkey, string keyname, bool throw_if_missing); // 0x003F5E1C + public string[] GetSubKeyNames(RegistryKey rkey); // 0x003F6004 + public string[] GetValueNames(RegistryKey rkey); // 0x003F61CC + public string ToString(RegistryKey rkey); // 0x003F6290 + private RegistryKey CreateSubKey(RegistryKey rkey, string keyname, bool writable); // 0x003F5558 +} + +// Namespace: Microsoft.Win32 +internal class Win32RegistryApi : IRegistryApi // TypeDefIndex: 124 +{ + // Fields + private const int OpenRegKeyRead = 131097; // 0x00 + private const int OpenRegKeyWrite = 131078; // 0x00 + private const int Int32ByteSize = 4; // 0x00 + private const int BufferMaxLength = 1024; // 0x00 + private readonly int NativeBytesPerCharacter; // 0x08 + + // Methods + public void .ctor(); // 0x003F34EC + private static extern int RegCreateKey(IntPtr keyBase, string keyName, out IntPtr keyHandle); // 0x003F62B8 + private static extern int RegCloseKey(IntPtr keyHandle); // 0x003F63D0 + private static extern int RegConnectRegistry(string machineName, IntPtr hKey, out IntPtr keyHandle); // 0x003F64D0 + private static extern int RegFlushKey(IntPtr keyHandle); // 0x003F65F8 + private static extern int RegOpenKeyEx(IntPtr keyBase, string keyName, IntPtr reserved, int access, out IntPtr keyHandle); // 0x003F66F8 + private static extern int RegDeleteKey(IntPtr keyHandle, string valueName); // 0x003F6820 + private static extern int RegDeleteValue(IntPtr keyHandle, string valueName); // 0x003F6930 + private static extern int RegEnumKey(IntPtr keyBase, int index, StringBuilder nameBuffer, int bufferLength); // 0x003F6A48 + private static extern int RegEnumValue(IntPtr keyBase, int index, StringBuilder nameBuffer, int nameLength, IntPtr reserved, RegistryValueKind type, IntPtr data, IntPtr dataLength); // 0x003F6B88 + private static extern int RegSetValueEx(IntPtr keyBase, string valueName, IntPtr reserved, RegistryValueKind type, string data, int rawDataLength); // 0x003F6CF0 + private static extern int RegSetValueEx(IntPtr keyBase, string valueName, IntPtr reserved, RegistryValueKind type, byte[] rawData, int rawDataLength); // 0x003F6DF8 + private static extern int RegSetValueEx(IntPtr keyBase, string valueName, IntPtr reserved, RegistryValueKind type, int data, int rawDataLength); // 0x003F6F00 + private static extern int RegQueryValueEx(IntPtr keyBase, string valueName, IntPtr reserved, RegistryValueKind type, IntPtr zero, int dataSize); // 0x003F7000 + private static extern int RegQueryValueEx(IntPtr keyBase, string valueName, IntPtr reserved, RegistryValueKind type, out byte[] data, int dataSize); // 0x003F7100 + private static extern int RegQueryValueEx(IntPtr keyBase, string valueName, IntPtr reserved, RegistryValueKind type, int data, int dataSize); // 0x003F7298 + private static IntPtr GetHandle(RegistryKey key); // 0x003F7394 + private static bool IsHandleValid(RegistryKey key); // 0x003F7444 + public object GetValue(RegistryKey rkey, string name, object defaultValue, RegistryValueOptions options); // 0x003F7470 + public void SetValue(RegistryKey rkey, string name, object value, RegistryValueKind valueKind); // 0x003F7A10 + public void SetValue(RegistryKey rkey, string name, object value); // 0x003F8030 + private int GetBinaryValue(RegistryKey rkey, string name, RegistryValueKind type, out byte[] data, int size); // 0x003F7968 + public int SubKeyCount(RegistryKey rkey); // 0x003F85D8 + public int ValueCount(RegistryKey rkey); // 0x003F86F8 + public RegistryKey OpenRemoteBaseKey(RegistryHive hKey, string machineName); // 0x003F8854 + public RegistryKey OpenSubKey(RegistryKey rkey, string keyName, bool writable); // 0x003F891C + public void Flush(RegistryKey rkey); // 0x003F8AE4 + public void Close(RegistryKey rkey); // 0x003F8B1C + public RegistryKey CreateSubKey(RegistryKey rkey, string keyName); // 0x003F8B54 + public void DeleteKey(RegistryKey rkey, string keyName, bool shouldThrowWhenKeyMissing); // 0x003F8C84 + public void DeleteValue(RegistryKey rkey, string value, bool shouldThrowWhenKeyMissing); // 0x003F8DA0 + public string[] GetSubKeyNames(RegistryKey rkey); // 0x003F8EC4 + public string[] GetValueNames(RegistryKey rkey); // 0x003F90EC + private void GenerateException(int errorCode); // 0x003F7810 + public string ToString(RegistryKey rkey); // 0x003F9370 + internal static string CombineName(RegistryKey rkey, string localName); // 0x003F8A34 +} + +// Namespace: Microsoft.Win32 +internal class Win32ResultCode // TypeDefIndex: 125 +{ + // Fields + public const int Success = 0; // 0x00 + public const int FileNotFound = 2; // 0x00 + public const int AccessDenied = 5; // 0x00 + public const int InvalidParameter = 87; // 0x00 + public const int MoreData = 234; // 0x00 + public const int NetworkPathNotFound = 53; // 0x00 + public const int NoMoreEntries = 259; // 0x00 + public const int MarkedForDeletion = 1018; // 0x00 + + // Methods + public void .ctor(); // 0x003F9394 +} + +// Namespace: Mono.Globalization.Unicode +internal class CodePointIndexer // TypeDefIndex: 126 +{ + // Fields + private readonly TableRange[] ranges; // 0x08 + public readonly int TotalCount; // 0x0C + private int defaultIndex; // 0x10 + private int defaultCP; // 0x14 + + // Methods + public void .ctor(int[] starts, int[] ends, int defaultIndex, int defaultCP); // 0x003FEBBC + public static Array CompressArray(Array source, Type type, CodePointIndexer indexer); // 0x003FEEC4 + public int ToIndex(int cp); // 0x003FF078 + public int ToCodePoint(int i); // 0x003FF1C0 +} + +// Namespace: +[Serializable] +internal struct TableRange // TypeDefIndex: 127 +{ + // Fields + public readonly int Start; // 0x08 + public readonly int End; // 0x0C + public readonly int Count; // 0x10 + public readonly int IndexStart; // 0x14 + public readonly int IndexEnd; // 0x18 + + // Methods + public void .ctor(int start, int end, int indexStart); // 0x000A76F8 +} + +// Namespace: Mono.Globalization.Unicode +internal class TailoringInfo // TypeDefIndex: 128 +{ + // Fields + public readonly int LCID; // 0x08 + public readonly int TailoringIndex; // 0x0C + public readonly int TailoringCount; // 0x10 + public readonly bool FrenchSort; // 0x14 + + // Methods + public void .ctor(int lcid, int tailoringIndex, int tailoringCount, bool frenchSort); // 0x0044B894 +} + +// Namespace: Mono.Globalization.Unicode +internal class Contraction // TypeDefIndex: 129 +{ + // Fields + public readonly char[] Source; // 0x08 + public readonly string Replacement; // 0x0C + public readonly byte[] SortKey; // 0x10 + + // Methods + public void .ctor(char[] source, string replacement, byte[] sortkey); // 0x003FF308 +} + +// Namespace: Mono.Globalization.Unicode +internal class ContractionComparer : IComparer // TypeDefIndex: 130 +{ + // Fields + public static readonly ContractionComparer Instance; // 0x00 + + // Methods + public void .ctor(); // 0x003FF338 + private static void .cctor(); // 0x003FF340 + public int Compare(object o1, object o2); // 0x003FF3B4 +} + +// Namespace: Mono.Globalization.Unicode +internal class Level2Map // TypeDefIndex: 131 +{ + // Fields + public byte Source; // 0x08 + public byte Replace; // 0x09 + + // Methods + public void .ctor(byte source, byte replace); // 0x003FF5C4 +} + +// Namespace: Mono.Globalization.Unicode +internal class Level2MapComparer : IComparer // TypeDefIndex: 132 +{ + // Fields + public static readonly Level2MapComparer Instance; // 0x00 + + // Methods + public void .ctor(); // 0x003FF5EC + private static void .cctor(); // 0x003FF5F4 + public int Compare(object o1, object o2); // 0x003FF668 +} + +// Namespace: Mono.Globalization.Unicode +internal class MSCompatUnicodeTable // TypeDefIndex: 133 +{ + // Fields + private const int ResourceVersionSize = 1; // 0x00 + public static int MaxExpansionLength; // 0x00 + private static readonly void * ignorableFlags; // 0x04 + private static readonly void * categories; // 0x08 + private static readonly void * level1; // 0x0C + private static readonly void * level2; // 0x10 + private static readonly void * level3; // 0x14 + private static void * cjkCHScategory; // 0x18 + private static void * cjkCHTcategory; // 0x1C + private static void * cjkJAcategory; // 0x20 + private static void * cjkKOcategory; // 0x24 + private static void * cjkCHSlv1; // 0x28 + private static void * cjkCHTlv1; // 0x2C + private static void * cjkJAlv1; // 0x30 + private static void * cjkKOlv1; // 0x34 + private static void * cjkKOlv2; // 0x38 + private static readonly char[] tailoringArr; // 0x3C + private static readonly TailoringInfo[] tailoringInfos; // 0x40 + private static object forLock; // 0x44 + public static readonly bool isReady; // 0x48 + private static Dictionary`2 <>f__switch$map2; // 0x4C + private static Dictionary`2 <>f__switch$map3; // 0x50 + private static Dictionary`2 <>f__switch$map4; // 0x54 + + // Properties + public static bool IsReady { get; } // 0x0040194C + + // Methods + public void .ctor(); // 0x003FF784 + private static void .cctor(); // 0x003FF78C + public static TailoringInfo GetTailoringInfo(int lcid); // 0x003FFC7C + public static void BuildTailoringTables(CultureInfo culture, TailoringInfo t, Contraction[] contractions, Level2Map[] diacriticals); // 0x003FFE5C + private static void SetCJKReferences(string name, CodePointIndexer cjkIndexer, void * catTable, void * lv1Table, CodePointIndexer lv2Indexer, void * lv2Table); // 0x004006F8 + public static byte Category(int cp); // 0x00400CE4 + public static byte Level1(int cp); // 0x00400DD8 + public static byte Level2(int cp); // 0x00400ECC + public static byte Level3(int cp); // 0x00400FC0 + public static bool IsSortable(string s); // 0x004010B4 + public static bool IsSortable(int cp); // 0x00401180 + public static bool IsIgnorable(int cp); // 0x00401270 + public static bool IsIgnorable(int cp, byte flag); // 0x004012F4 + public static bool IsIgnorableSymbol(int cp); // 0x00401470 + public static bool IsIgnorableNonSpacing(int cp); // 0x004014F4 + public static int ToKanaTypeInsensitive(int i); // 0x00401578 + public static int ToWidthCompat(int i); // 0x00401590 + public static bool HasSpecialWeight(char c); // 0x00401728 + public static byte GetJapaneseDashType(char c); // 0x004017B4 + public static bool IsHalfWidthKana(char c); // 0x0040181C + public static bool IsHiragana(char c); // 0x00401834 + public static bool IsJapaneseSmallLetter(char c); // 0x00401850 + private static IntPtr GetResource(string name); // 0x003FFBD4 + private static uint UInt32FromBytePtr(void * raw, uint idx); // 0x003FFC74 + public static void FillCJK(string culture, CodePointIndexer cjkIndexer, void * catTable, void * lv1Table, CodePointIndexer lv2Indexer, void * lv2Table); // 0x004019D8 + private static void FillCJKCore(string culture, CodePointIndexer cjkIndexer, void * catTable, void * lv1Table, CodePointIndexer cjkLv2Indexer, void * lv2Table); // 0x00401B4C +} + +// Namespace: Mono.Globalization.Unicode +internal class MSCompatUnicodeTableUtil // TypeDefIndex: 134 +{ + // Fields + public const byte ResourceVersion = 3; // 0x00 + public static readonly CodePointIndexer Ignorable; // 0x00 + public static readonly CodePointIndexer Category; // 0x04 + public static readonly CodePointIndexer Level1; // 0x08 + public static readonly CodePointIndexer Level2; // 0x0C + public static readonly CodePointIndexer Level3; // 0x10 + public static readonly CodePointIndexer CjkCHS; // 0x14 + public static readonly CodePointIndexer Cjk; // 0x18 + + // Methods + public void .ctor(); // 0x004026C4 + private static void .cctor(); // 0x004026CC +} + +// Namespace: Mono.Globalization.Unicode +internal enum NormalizationCheck // TypeDefIndex: 135 +{ + Yes = 0, + No = 1, + Maybe = 2 +} + +// Namespace: Mono.Globalization.Unicode +internal class Normalization // TypeDefIndex: 136 +{ + // Fields + public const int NoNfd = 1; // 0x00 + public const int NoNfkd = 2; // 0x00 + public const int NoNfc = 4; // 0x00 + public const int MaybeNfc = 8; // 0x00 + public const int NoNfkc = 16; // 0x00 + public const int MaybeNfkc = 32; // 0x00 + public const int FullCompositionExclusion = 64; // 0x00 + public const int IsUnsafe = 128; // 0x00 + private const int HangulSBase = 44032; // 0x00 + private const int HangulLBase = 4352; // 0x00 + private const int HangulVBase = 4449; // 0x00 + private const int HangulTBase = 4519; // 0x00 + private const int HangulLCount = 19; // 0x00 + private const int HangulVCount = 21; // 0x00 + private const int HangulTCount = 28; // 0x00 + private const int HangulNCount = 588; // 0x00 + private const int HangulSCount = 11172; // 0x00 + private static void * props; // 0x00 + private static void * mappedChars; // 0x04 + private static void * charMapIndex; // 0x08 + private static void * helperIndex; // 0x0C + private static void * mapIdxToComposite; // 0x10 + private static void * combiningClass; // 0x14 + private static object forLock; // 0x18 + public static readonly bool isReady; // 0x1C + + // Properties + public static bool IsReady { get; } // 0x00405528 + + // Methods + public void .ctor(); // 0x00402E10 + private static void .cctor(); // 0x00402E18 + private static uint PropValue(int cp); // 0x00403054 + private static int CharMapIdx(int cp); // 0x004031C8 + private static int GetNormalizedStringLength(int ch); // 0x00403340 + private static byte GetCombiningClass(int c); // 0x00403474 + private static int GetPrimaryCompositeFromMapIndex(int src); // 0x00403568 + private static int GetPrimaryCompositeHelperIndex(int cp); // 0x00403660 + private static int GetPrimaryCompositeCharIndex(object chars, int start); // 0x00403758 + private static string Compose(string source, int checkType); // 0x00403BB0 + private static StringBuilder Combine(string source, int start, int checkType); // 0x00403E6C + private static bool CanBePrimaryComposite(int i); // 0x00404548 + private static void Combine(StringBuilder sb, int start, int checkType); // 0x00403FE0 + private static int GetPrimaryCompositeMapIndex(object o, int cur, int bufferPos); // 0x0040460C + private static string Decompose(string source, int checkType); // 0x00404718 + private static void Decompose(string source, StringBuilder sb, int checkType); // 0x00403CE4 + private static void ReorderCanonical(string src, StringBuilder sb, int start); // 0x00404AC0 + private static void DecomposeChar(StringBuilder sb, int[] buf, string s, int i, int start); // 0x004047D0 + public static NormalizationCheck QuickCheck(char c, int type); // 0x00404398 + private static bool GetCanonicalHangul(int s, int[] buf, int bufIdx); // 0x00405038 + public static void GetCanonical(int c, int[] buf, int bufIdx); // 0x00404E5C + public static bool IsNormalized(string source, int type); // 0x00405184 + public static string Normalize(string source, int type); // 0x00405458 + private static void load_normalization_resource(out IntPtr props, out IntPtr mappedChars, out IntPtr charMapIndex, out IntPtr helperIndex, out IntPtr mapIdxToComposite, out IntPtr combiningClass); // 0x00403050 +} + +// Namespace: Mono.Globalization.Unicode +internal class NormalizationTableUtil // TypeDefIndex: 137 +{ + // Fields + public static readonly CodePointIndexer Prop; // 0x00 + public static readonly CodePointIndexer Map; // 0x04 + public static readonly CodePointIndexer Combining; // 0x08 + public static readonly CodePointIndexer Composite; // 0x0C + public static readonly CodePointIndexer Helper; // 0x10 + + // Properties + public static int PropCount { get; } // 0x00405A34 + public static int MapCount { get; } // 0x00405CD8 + + // Methods + public void .ctor(); // 0x004055B4 + private static void .cctor(); // 0x004055BC + public static int PropIdx(int cp); // 0x0040311C + public static int PropCP(int index); // 0x00405988 + public static int MapIdx(int cp); // 0x00403294 + public static int MapCP(int index); // 0x00405AD4 + public static int CbIdx(int cp); // 0x00405B80 + public static int CbCP(int index); // 0x00405C2C +} + +// Namespace: Mono.Globalization.Unicode +internal class SimpleCollator // TypeDefIndex: 138 +{ + // Fields + private const int UnsafeFlagLength = 96; // 0x00 + private static bool QuickCheckDisabled; // 0x00 + private static SimpleCollator invariant; // 0x04 + private readonly TextInfo textInfo; // 0x08 + private readonly bool frenchSort; // 0x0C + private readonly void * cjkCatTable; // 0x10 + private readonly void * cjkLv1Table; // 0x14 + private readonly CodePointIndexer cjkIndexer; // 0x18 + private readonly void * cjkLv2Table; // 0x1C + private readonly CodePointIndexer cjkLv2Indexer; // 0x20 + private readonly int lcid; // 0x24 + private readonly Contraction[] contractions; // 0x28 + private readonly Level2Map[] level2Maps; // 0x2C + private readonly byte[] unsafeFlags; // 0x30 + + // Methods + public void .ctor(CultureInfo culture); // 0x00405D78 + private static void .cctor(); // 0x00406378 + private void SetCJKTable(CultureInfo culture, CodePointIndexer cjkIndexer, void * catTable, void * lv1Table, CodePointIndexer lv2Indexer, void * lv2Table); // 0x0040626C + private static CultureInfo GetNeutralCulture(CultureInfo info); // 0x004064A0 + private byte Category(int cp); // 0x0040653C + private byte Level1(int cp); // 0x00406614 + private byte Level2(int cp, ExtenderType ext); // 0x004066EC + private static bool IsHalfKana(int cp, CompareOptions opt); // 0x0040691C + private Contraction GetContraction(string s, int start, int end); // 0x004069B8 + private Contraction GetContraction(string s, int start, int end, Contraction[] clist); // 0x00406AB4 + private Contraction GetTailContraction(string s, int start, int end); // 0x00406C5C + private Contraction GetTailContraction(string s, int start, int end, Contraction[] clist); // 0x00406D58 + private Contraction GetContraction(char c); // 0x00407040 + private Contraction GetContraction(char c, Contraction[] clist); // 0x00407118 + private int FilterOptions(int i, CompareOptions opt); // 0x00407230 + private ExtenderType GetExtenderType(int i); // 0x00407398 + private static byte ToDashTypeValue(ExtenderType ext, CompareOptions opt); // 0x00407498 + private int FilterExtender(int i, ExtenderType ext, CompareOptions opt); // 0x004074D0 + private static bool IsIgnorable(int i, CompareOptions opt); // 0x00407710 + private bool IsSafe(int i); // 0x004077B8 + public SortKey GetSortKey(string s); // 0x00407850 + public SortKey GetSortKey(string s, CompareOptions options); // 0x00407858 + public SortKey GetSortKey(string s, int start, int length, CompareOptions options); // 0x004078A0 + private void GetSortKey(string s, int start, int end, SortKeyBuffer buf, CompareOptions opt); // 0x004079E4 + private void FillSortKeyRaw(int i, ExtenderType ext, SortKeyBuffer buf, CompareOptions opt); // 0x00407ED0 + private void FillSurrogateSortKeyRaw(int i, SortKeyBuffer buf); // 0x004083D8 + public int Compare(string s1, string s2); // 0x004084AC + public int Compare(string s1, string s2, CompareOptions options); // 0x004084C8 + private int CompareOrdinal(string s1, int idx1, int len1, string s2, int idx2, int len2); // 0x00408710 + private int CompareQuick(string s1, int idx1, int len1, string s2, int idx2, int len2, out bool sourceConsumed, out bool targetConsumed, bool immediateBreakup); // 0x00408C3C + private int CompareOrdinalIgnoreCase(string s1, int idx1, int len1, string s2, int idx2, int len2); // 0x0040962C + public int Compare(string s1, int idx1, int len1, string s2, int idx2, int len2, CompareOptions options); // 0x0040853C + private void ClearBuffer(void * buffer, int size); // 0x00407EB4 + private bool QuickCheckPossible(string s1, int idx1, int end1, string s2, int idx2, int end2); // 0x00409C34 + private int CompareInternal(string s1, int idx1, int len1, string s2, int idx2, int len2, out bool targetConsumed, out bool sourceConsumed, bool skipHeadingExtenders, bool immediateBreakup, Context ctx); // 0x00409C3C + private int CompareFlagPair(bool b1, bool b2); // 0x0040B94C + public bool IsPrefix(string src, string target, CompareOptions opt); // 0x0040B96C + public bool IsPrefix(string s, string target, int start, int length, CompareOptions opt); // 0x0040B9BC + private bool IsPrefix(string s, string target, int start, int length, bool skipHeadingExtenders, Context ctx); // 0x0040BB18 + public bool IsSuffix(string src, string target, CompareOptions opt); // 0x0040BB9C + public bool IsSuffix(string s, string target, int start, int length, CompareOptions opt); // 0x0040BC08 + public int IndexOf(string s, string target, CompareOptions opt); // 0x0040BEBC + private int QuickIndexOf(string s, string target, int start, int length, out bool testWasUnable); // 0x0040C134 + public int IndexOf(string s, string target, int start, int length, CompareOptions opt); // 0x0040BF0C + private int IndexOfOrdinal(string s, string target, int start, int length); // 0x0040C2AC + private int IndexOfOrdinalIgnoreCase(string s, string target, int start, int length); // 0x0040C37C + public int IndexOf(string s, char target, CompareOptions opt); // 0x0040CA28 + public int IndexOf(string s, char target, int start, int length, CompareOptions opt); // 0x0040CA78 + private int IndexOfOrdinal(string s, char target, int start, int length); // 0x0040CEE8 + private int IndexOfOrdinalIgnoreCase(string s, char target, int start, int length); // 0x0040CF54 + private int IndexOfSortKey(string s, int start, int length, void * sortkey, char target, int ti, bool noLv4, Context ctx); // 0x0040D02C + private int IndexOf(string s, string target, int start, int length, void * targetSortKey, Context ctx); // 0x0040C4C8 + public int LastIndexOf(string s, string target, CompareOptions opt); // 0x0040D26C + public int LastIndexOf(string s, string target, int start, int length, CompareOptions opt); // 0x0040BCD0 + private int LastIndexOfOrdinal(string s, string target, int start, int length); // 0x0040D2D8 + private int LastIndexOfOrdinalIgnoreCase(string s, string target, int start, int length); // 0x0040D490 + public int LastIndexOf(string s, char target, CompareOptions opt); // 0x0040DD7C + public int LastIndexOf(string s, char target, int start, int length, CompareOptions opt); // 0x0040DDE8 + private int LastIndexOfOrdinal(string s, char target, int start, int length); // 0x0040E26C + private int LastIndexOfOrdinalIgnoreCase(string s, char target, int start, int length); // 0x0040E2F4 + private int LastIndexOfSortKey(string s, int start, int orgStart, int length, void * sortkey, int ti, bool noLv4, Context ctx); // 0x0040E3E8 + private int LastIndexOf(string s, string target, int start, int length, void * targetSortKey, Context ctx); // 0x0040D740 + private bool MatchesForward(string s, int idx, int end, int ti, void * sortkey, bool noLv4, Context ctx); // 0x0040D0AC + private bool MatchesForwardCore(string s, int idx, int end, int ti, void * sortkey, bool noLv4, ExtenderType ext, Contraction ct, Context ctx); // 0x0040E63C + private bool MatchesPrimitive(CompareOptions opt, void * source, int si, ExtenderType ext, void * target, int ti, bool noLv4); // 0x0040EAF4 + private bool MatchesBackward(string s, int idx, int end, int orgStart, int ti, void * sortkey, bool noLv4, Context ctx); // 0x0040E474 + private bool MatchesBackwardCore(string s, int idx, int end, int orgStart, int ti, void * sortkey, bool noLv4, ExtenderType ext, Contraction ct, Context ctx); // 0x0040EF9C +} + +// Namespace: +internal struct Context // TypeDefIndex: 139 +{ + // Fields + public readonly CompareOptions Option; // 0x08 + public readonly void * NeverMatchFlags; // 0x0C + public readonly void * AlwaysMatchFlags; // 0x10 + public void * Buffer1; // 0x14 + public void * Buffer2; // 0x18 + public int PrevCode; // 0x1C + public void * PrevSortKey; // 0x20 + public readonly bool QuickCheckPossible; // 0x24 + + // Methods + public void .ctor(CompareOptions opt, void * alwaysMatchFlags, void * neverMatchFlags, void * buffer1, void * buffer2, void * prev1, bool quickCheckPossible); // 0x000A81AC + public void ClearPrevInfo(); // 0x000A81E8 +} + +// Namespace: +private struct PreviousInfo // TypeDefIndex: 140 +{ + // Fields + public int Code; // 0x08 + public void * SortKey; // 0x0C + + // Methods + public void .ctor(bool dummy); // 0x000A829C +} + +// Namespace: +private struct Escape // TypeDefIndex: 141 +{ + // Fields + public string Source; // 0x08 + public int Index; // 0x0C + public int Start; // 0x10 + public int End; // 0x14 + public int Optional; // 0x18 + +} + +// Namespace: +private enum ExtenderType // TypeDefIndex: 142 +{ + None = 0, + Simple = 1, + Voiced = 2, + Conditional = 3, + Buggy = 4 +} + +// Namespace: System.Globalization +[Serializable] +public class SortKey // TypeDefIndex: 143 +{ + // Fields + private readonly string source; // 0x08 + private readonly CompareOptions options; // 0x0C + private readonly byte[] key; // 0x10 + private readonly int lcid; // 0x14 + + // Properties + public virtual string OriginalString { get; } // 0x004797B8 + public virtual byte[] KeyData { get; } // 0x004797C0 + + // Methods + internal void .ctor(int lcid, string source, CompareOptions opt); // 0x004794D8 + internal void .ctor(int lcid, string source, byte[] buffer, CompareOptions opt, int lv1Length, int lv2Length, int lv3Length, int kanaSmallLength, int markTypeLength, int katakanaLength, int kanaWidthLength, int identLength); // 0x00479508 + public static int Compare(SortKey sortkey1, SortKey sortkey2); // 0x0047953C + public override bool Equals(object value); // 0x004797C8 + public override int GetHashCode(); // 0x00479898 + public override string ToString(); // 0x00479974 +} + +// Namespace: Mono.Globalization.Unicode +internal class SortKeyBuffer // TypeDefIndex: 144 +{ + // Fields + private int l1; // 0x08 + private int l2; // 0x0C + private int l3; // 0x10 + private int l4s; // 0x14 + private int l4t; // 0x18 + private int l4k; // 0x1C + private int l4w; // 0x20 + private int l5; // 0x24 + private byte[] l1b; // 0x28 + private byte[] l2b; // 0x2C + private byte[] l3b; // 0x30 + private byte[] l4sb; // 0x34 + private byte[] l4tb; // 0x38 + private byte[] l4kb; // 0x3C + private byte[] l4wb; // 0x40 + private byte[] l5b; // 0x44 + private string source; // 0x48 + private bool processLevel2; // 0x4C + private bool frenchSort; // 0x4D + private bool frenchSorted; // 0x4E + private int lcid; // 0x50 + private CompareOptions options; // 0x54 + + // Methods + public void .ctor(int lcid); // 0x0044ABA8 + public void Reset(); // 0x0044ABB0 + internal void ClearBuffer(); // 0x0044ABD0 + internal void Initialize(CompareOptions options, int lcid, string s, bool frenchSort); // 0x0044ABE8 + internal void AppendCJKExtension(byte lv1msb, byte lv1lsb); // 0x0044ADE8 + internal void AppendKana(byte category, byte lv1, byte lv2, byte lv3, bool isSmallKana, byte markType, bool isKatakana, bool isHalfWidth); // 0x0044AF84 + internal void AppendNormal(byte category, byte lv1, byte lv2, byte lv3); // 0x0044B064 + private void AppendLevel5(byte category, byte lv1); // 0x0044B1D8 + private void AppendBufferPrimitive(byte value, byte[] buf, int bidx); // 0x0044AE7C + public SortKey GetResultAndReset(); // 0x0044B26C + private int GetOptimizedLength(byte[] data, int len, byte defaultValue); // 0x0044B818 + public SortKey GetResult(); // 0x0044B29C +} + +// Namespace: Mono.Interop +internal class ComInteropProxy : RealProxy, IRemotingTypeInfo // TypeDefIndex: 145 +{ + // Fields + private __ComObject com_object; // 0x28 + private int ref_count; // 0x2C + private string type_name; // 0x30 + + // Properties + public string TypeName { get; set; } // 0x0044BEAC 0x0044BEB4 + + // Methods + private void .ctor(Type t); // 0x0044B8CC + private void .ctor(IntPtr pUnk); // 0x0044B904 + internal void .ctor(IntPtr pUnk, Type t); // 0x0044B9AC + private static void AddProxy(IntPtr pItf, ComInteropProxy proxy); // 0x0044BA80 + internal static ComInteropProxy FindProxy(IntPtr pItf); // 0x0044BA84 + private void CacheProxy(); // 0x0044BA48 + internal static ComInteropProxy GetProxy(IntPtr pItf, Type t); // 0x0044BA88 + internal static ComInteropProxy CreateProxy(Type t); // 0x0044BBFC + public override IMessage Invoke(IMessage msg); // 0x0044BDBC + public bool CanCastTo(Type fromType, object o); // 0x0044BEBC +} + +// Namespace: Mono.Interop +internal interface IDispatch // TypeDefIndex: 146 +{ +} + +// Namespace: Mono.Interop +internal interface IUnknown // TypeDefIndex: 147 +{ +} + +// Namespace: Mono.Math.Prime.Generator +internal class NextPrimeFinder : SequentialSearchPrimeGeneratorBase // TypeDefIndex: 148 +{ + // Methods + public void .ctor(); // 0x0045071C + protected override BigInteger GenerateSearchBase(int bits, object Context); // 0x00454030 +} + +// Namespace: Mono.Math.Prime.Generator +internal abstract class PrimeGeneratorBase // TypeDefIndex: 149 +{ + // Properties + public virtual ConfidenceFactor Confidence { get; } // 0x00454164 + public virtual PrimalityTest PrimalityTest { get; } // 0x0045416C + public virtual int TrialDivisionBounds { get; } // 0x00454200 + + // Methods + protected void .ctor(); // 0x0045415C + protected bool PostTrialDivisionTests(BigInteger bi); // 0x00454208 + public abstract BigInteger GenerateNewPrime(int bits); +} + +// Namespace: Mono.Math.Prime.Generator +internal class SequentialSearchPrimeGeneratorBase : PrimeGeneratorBase // TypeDefIndex: 150 +{ + // Methods + public void .ctor(); // 0x004507B8 + protected virtual BigInteger GenerateSearchBase(int bits, object context); // 0x0045461C + public override BigInteger GenerateNewPrime(int bits); // 0x004546C4 + public virtual BigInteger GenerateNewPrime(int bits, object context); // 0x004546D8 + protected virtual bool IsPrimeAcceptable(BigInteger bi, object context); // 0x00454AA0 +} + +// Namespace: Mono.Math.Prime +internal enum ConfidenceFactor // TypeDefIndex: 151 +{ + ExtraLow = 0, + Low = 1, + Medium = 2, + High = 3, + ExtraHigh = 4, + Provable = 5 +} + +// Namespace: Mono.Math.Prime +internal sealed class PrimalityTests // TypeDefIndex: 152 +{ + // Methods + private void .ctor(); // 0x00454B80 + private static int GetSPPRounds(BigInteger bi, ConfidenceFactor confidence); // 0x00454B88 + public static bool Test(BigInteger n, ConfidenceFactor confidence); // 0x00450634 + public static bool RabinMillerTest(BigInteger n, ConfidenceFactor confidence); // 0x0045500C + public static bool SmallPrimeSppTest(BigInteger bi, ConfidenceFactor confidence); // 0x00454D78 +} + +// Namespace: Mono.Math +internal class BigInteger // TypeDefIndex: 153 +{ + // Fields + private const uint DEFAULT_LEN = 20; // 0x00 + private const string WouldReturnNegVal = "Operation would return a negative value"; // 0x00 + private uint length; // 0x08 + private uint[] data; // 0x0C + internal static readonly uint[] smallPrimes; // 0x00 + private static RandomNumberGenerator rng; // 0x04 + + // Properties + private static RandomNumberGenerator Rng { get; } // 0x0044DD38 + + // Methods + public void .ctor(); // 0x0044BFF0 + public void .ctor(Sign sign, uint len); // 0x0044C074 + public void .ctor(BigInteger bi); // 0x0044C0F8 + public void .ctor(BigInteger bi, uint len); // 0x0044C1E0 + public void .ctor(byte[] inData); // 0x0044C2FC + public void .ctor(uint[] inData); // 0x0044C860 + public void .ctor(uint ui); // 0x0044C990 + public void .ctor(ulong ul); // 0x0044CA44 + private static void .cctor(); // 0x0044CB2C + public static BigInteger Parse(string number); // 0x0044CBC4 + public static BigInteger Add(BigInteger bi1, BigInteger bi2); // 0x0044D208 + public static BigInteger Subtract(BigInteger bi1, BigInteger bi2); // 0x0044D290 + public static int Modulus(BigInteger bi, int i); // 0x0044D538 + public static uint Modulus(BigInteger bi, uint ui); // 0x0044D5E4 + public static BigInteger Modulus(BigInteger bi1, BigInteger bi2); // 0x0044D670 + public static BigInteger Divid(BigInteger bi, int i); // 0x0044D73C + public static BigInteger Divid(BigInteger bi1, BigInteger bi2); // 0x0044D880 + public static BigInteger Multiply(BigInteger bi1, BigInteger bi2); // 0x0044D94C + public static BigInteger Multiply(BigInteger bi, int i); // 0x0044DCB0 + public static BigInteger GenerateRandom(int bits, RandomNumberGenerator rng); // 0x0044DE50 + public static BigInteger GenerateRandom(int bits); // 0x0044E04C + public void Randomize(RandomNumberGenerator rng); // 0x0044E0D4 + public void Randomize(); // 0x0044E40C + public int BitCount(); // 0x0044E378 + public bool TestBit(uint bitNum); // 0x0044E494 + public bool TestBit(int bitNum); // 0x0044E4F0 + public void SetBit(uint bitNum); // 0x0044E630 + public void ClearBit(uint bitNum); // 0x0044E6AC + public void SetBit(uint bitNum, bool value); // 0x0044E638 + public int LowestSetBit(); // 0x0044E6B4 + public byte[] GetBytes(); // 0x0044E764 + public Sign Compare(BigInteger bi); // 0x0044E928 + public string ToString(uint radix); // 0x0044EC14 + public string ToString(uint radix, string characterSet); // 0x0044EC80 + private void Normalize(); // 0x0044C7DC + public void Clear(); // 0x0044F13C + public override int GetHashCode(); // 0x0044F1AC + public override string ToString(); // 0x0044F220 + public override bool Equals(object o); // 0x0044F228 + public BigInteger GCD(BigInteger bi); // 0x0044F4BC + public BigInteger ModInverse(BigInteger modulus); // 0x0044F6BC + public BigInteger ModPow(BigInteger exp, BigInteger n); // 0x0044FFA4 + public bool IsProbablePrime(); // 0x004502B4 + public static BigInteger NextHighestPrime(BigInteger bi); // 0x00450684 + public static BigInteger GeneratePseudoPrime(int bits); // 0x00450724 + public void Incr2(); // 0x004507C0 + public static BigInteger op_Implicit(uint value); // 0x004505A4 + public static BigInteger op_Implicit(int value); // 0x0044D020 + public static BigInteger op_Implicit(ulong value); // 0x0045092C + public static BigInteger op_Addition(BigInteger bi1, BigInteger bi2); // 0x0044D0F0 + public static BigInteger op_Subtraction(BigInteger bi1, BigInteger bi2); // 0x0044D318 + public static int op_Modulus(BigInteger bi, int i); // 0x0044D5C0 + public static uint op_Modulus(BigInteger bi, uint ui); // 0x0044D66C + public static BigInteger op_Modulus(BigInteger bi1, BigInteger bi2); // 0x0044D6F8 + public static BigInteger op_Division(BigInteger bi, int i); // 0x0044D7C4 + public static BigInteger op_Division(BigInteger bi1, BigInteger bi2); // 0x0044D908 + public static BigInteger op_Multiply(BigInteger bi1, BigInteger bi2); // 0x0044D9D4 + public static BigInteger op_Multiply(BigInteger bi, int i); // 0x0044CEF4 + public static BigInteger op_LeftShift(BigInteger bi1, int shiftVal); // 0x00451EF0 + public static BigInteger op_RightShift(BigInteger bi1, int shiftVal); // 0x0045227C + public static bool op_Equality(BigInteger bi1, uint ui); // 0x0044E2F0 + public static bool op_Inequality(BigInteger bi1, uint ui); // 0x0044F0B4 + public static bool op_Equality(BigInteger bi1, BigInteger bi2); // 0x0044F3B8 + public static bool op_Inequality(BigInteger bi1, BigInteger bi2); // 0x00452540 + public static bool op_GreaterThan(BigInteger bi1, BigInteger bi2); // 0x00452640 + public static bool op_LessThan(BigInteger bi1, BigInteger bi2); // 0x00452660 + public static bool op_GreaterThanOrEqual(BigInteger bi1, BigInteger bi2); // 0x00452674 + public static bool op_LessThanOrEqual(BigInteger bi1, BigInteger bi2); // 0x00450614 +} + +// Namespace: +public enum Sign // TypeDefIndex: 154 +{ + Negative = -1, + Zero = 0, + Positive = 1 +} + +// Namespace: +internal sealed class ModulusRing // TypeDefIndex: 155 +{ + // Fields + private BigInteger mod; // 0x08 + private BigInteger constant; // 0x0C + + // Methods + public void .ctor(BigInteger modulus); // 0x00450038 + public void BarrettReduction(BigInteger x); // 0x004535DC + public BigInteger Multiply(BigInteger a, BigInteger b); // 0x004539B4 + public BigInteger Difference(BigInteger a, BigInteger b); // 0x00453360 + public BigInteger Pow(BigInteger a, BigInteger k); // 0x0045016C + public BigInteger Pow(uint b, BigInteger exp); // 0x00453C14 +} + +// Namespace: +internal sealed class Montgomery // TypeDefIndex: 156 +{ + // Methods + private void .ctor(); // 0x00453C98 + public static uint Inverse(uint n); // 0x00453CA0 + public static BigInteger ToMont(BigInteger n, BigInteger m); // 0x00453CD4 + public static BigInteger Reduce(BigInteger n, BigInteger m, uint mPrime); // 0x00453DAC +} + +// Namespace: +private sealed class Kernel // TypeDefIndex: 157 +{ + // Methods + public void .ctor(); // 0x00452694 + public static BigInteger AddSameSign(BigInteger bi1, BigInteger bi2); // 0x004509AC + public static BigInteger Subtract(BigInteger big, BigInteger small); // 0x00450CCC + public static void MinusEq(BigInteger big, BigInteger small); // 0x0045269C + public static void PlusEq(BigInteger bi1, BigInteger bi2); // 0x004528AC + public static Sign Compare(BigInteger bi1, BigInteger bi2); // 0x0044E92C + public static uint SingleByteDivideInPlace(BigInteger n, uint d); // 0x0044EFBC + public static uint DwordMod(BigInteger n, uint d); // 0x00450FDC + public static BigInteger DwordDiv(BigInteger n, uint d); // 0x00451A88 + public static BigInteger[] DwordDivMod(BigInteger n, uint d); // 0x00452BB4 + public static BigInteger[] multiByteDivide(BigInteger bi1, BigInteger bi2); // 0x00451078 + public static BigInteger LeftShift(BigInteger bi, int n); // 0x00451EF4 + public static BigInteger RightShift(BigInteger bi, int n); // 0x00452280 + public static BigInteger MultiplyByDword(BigInteger n, uint f); // 0x00451D5C + public static void Multiply(uint[] x, uint xOffset, uint xLen, uint[] y, uint yOffset, uint yLen, uint[] d, uint dOffset); // 0x00451C28 + public static void MultiplyMod2p32pmod(uint[] x, int xOffset, int xLen, uint[] y, int yOffest, int yLen, uint[] d, int dOffset, int mod); // 0x00452E5C + public static void SquarePositive(BigInteger bi, uint[] wkSpace); // 0x00452F88 + public static BigInteger gcd(BigInteger a, BigInteger b); // 0x0044F4C0 + public static uint modInverse(BigInteger bi, uint modulus); // 0x0045326C + public static BigInteger modInverse(BigInteger bi, BigInteger modulus); // 0x0044F6C0 +} + +// Namespace: Mono.Security.Authenticode +internal enum Authority // TypeDefIndex: 158 +{ + Individual = 0, + Commercial = 1, + Maximum = 2 +} + +// Namespace: Mono.Security.Authenticode +internal class AuthenticodeBase // TypeDefIndex: 159 +{ + // Fields + public const string spcIndirectDataContext = "1.3.6.1.4.1.311.2.1.4"; // 0x00 + private byte[] fileblock; // 0x08 + private FileStream fs; // 0x0C + private int blockNo; // 0x10 + private int blockLength; // 0x14 + private int peOffset; // 0x18 + private int dirSecurityOffset; // 0x1C + private int dirSecuritySize; // 0x20 + private int coffSymbolTableOffset; // 0x24 + + // Properties + internal int PEOffset { get; } // 0x004582D4 + internal int CoffSymbolTableOffset { get; } // 0x004585F4 + internal int SecurityOffset { get; } // 0x00458618 + + // Methods + public void .ctor(); // 0x00458260 + internal void Open(string filename); // 0x0045863C + internal void Close(); // 0x004586FC + internal bool ReadFirstBlock(); // 0x004582F8 + internal byte[] GetSecurityEntry(); // 0x004587C4 + internal byte[] GetHash(HashAlgorithm hash); // 0x004588D8 + protected byte[] HashFile(string fileName, string hashName); // 0x00459074 +} + +// Namespace: Mono.Security.Authenticode +internal class AuthenticodeDeformatter : AuthenticodeBase // TypeDefIndex: 160 +{ + // Fields + private string filename; // 0x28 + private byte[] hash; // 0x2C + private X509CertificateCollection coll; // 0x30 + private ASN1 signedHash; // 0x34 + private DateTime timestamp; // 0x38 + private X509Certificate signingCertificate; // 0x48 + private int reason; // 0x4C + private bool trustedRoot; // 0x50 + private bool trustedTimestampRoot; // 0x51 + private byte[] entry; // 0x54 + private X509Chain signerChain; // 0x58 + private X509Chain timestampChain; // 0x5C + private static Dictionary`2 <>f__switch$map5; // 0x00 + private static Dictionary`2 <>f__switch$map6; // 0x04 + private static Dictionary`2 <>f__switch$map7; // 0x08 + + // Properties + public string FileName { get; set; } // 0x004593B0 0x00459270 + public byte[] Hash { get; } // 0x004598AC + public int Reason { get; } // 0x00459974 + public byte[] Signature { get; } // 0x00459BA0 + public DateTime Timestamp { get; } // 0x00459C4C + public X509CertificateCollection Certificates { get; } // 0x00459C5C + public X509Certificate SigningCertificate { get; } // 0x00459C64 + + // Methods + public void .ctor(); // 0x004591B4 + public void .ctor(string fileName); // 0x0045924C + public bool IsTrusted(); // 0x0045999C + private bool CheckSignature(string fileName); // 0x004594B4 + private bool CompareIssuerSerial(string issuer, byte[] serial, X509Certificate x509); // 0x0045AC74 + private bool VerifySignature(SignedData sd, byte[] calculatedMessageDigest, HashAlgorithm ha); // 0x00459C6C + private bool VerifyCounterSignature(SignerInfo cs, byte[] signature); // 0x0045AE44 + private void Reset(); // 0x004593B8 +} + +// Namespace: Mono.Security.Cryptography +internal sealed class CryptoConvert // TypeDefIndex: 161 +{ + // Methods + private void .ctor(); // 0x0045D1F0 + private static int ToInt32LE(byte[] bytes, int offset); // 0x0045D1F8 + private static uint ToUInt32LE(byte[] bytes, int offset); // 0x0045D2C8 + private static byte[] GetBytesLE(int val); // 0x0045D398 + private static byte[] Trim(byte[] array); // 0x0045D4A0 + public static RSA FromCapiPrivateKeyBlob(byte[] blob); // 0x0045D5A0 + public static RSA FromCapiPrivateKeyBlob(byte[] blob, int offset); // 0x0045D5A8 + public static DSA FromCapiPrivateKeyBlobDSA(byte[] blob); // 0x0045DC48 + public static DSA FromCapiPrivateKeyBlobDSA(byte[] blob, int offset); // 0x0045DC50 + public static byte[] ToCapiPrivateKeyBlob(RSA rsa); // 0x0045E1C0 + public static byte[] ToCapiPrivateKeyBlob(DSA dsa); // 0x0045E760 + public static RSA FromCapiPublicKeyBlob(byte[] blob); // 0x0045EB8C + public static RSA FromCapiPublicKeyBlob(byte[] blob, int offset); // 0x0045EB94 + public static DSA FromCapiPublicKeyBlobDSA(byte[] blob); // 0x0045F09C + public static DSA FromCapiPublicKeyBlobDSA(byte[] blob, int offset); // 0x0045F0A4 + public static byte[] ToCapiPublicKeyBlob(RSA rsa); // 0x0045F618 + public static byte[] ToCapiPublicKeyBlob(DSA dsa); // 0x0045F9C0 + public static RSA FromCapiKeyBlob(byte[] blob); // 0x0045FDEC + public static RSA FromCapiKeyBlob(byte[] blob, int offset); // 0x0045FDF4 + public static DSA FromCapiKeyBlobDSA(byte[] blob); // 0x0045FFB8 + public static DSA FromCapiKeyBlobDSA(byte[] blob, int offset); // 0x0045FFC0 + public static byte[] ToCapiKeyBlob(AsymmetricAlgorithm keypair, bool includePrivateKey); // 0x0046014C + public static byte[] ToCapiKeyBlob(RSA rsa, bool includePrivateKey); // 0x00460288 + public static byte[] ToCapiKeyBlob(DSA dsa, bool includePrivateKey); // 0x00460350 + public static string ToHex(byte[] input); // 0x00460418 + private static byte FromHexChar(char c); // 0x00460580 + public static byte[] FromHex(string hex); // 0x00460668 +} + +// Namespace: Mono.Security.Cryptography +internal sealed class KeyBuilder // TypeDefIndex: 162 +{ + // Fields + private static RandomNumberGenerator rng; // 0x00 + + // Properties + private static RandomNumberGenerator Rng { get; } // 0x0046367C + + // Methods + private void .ctor(); // 0x00463674 + public static byte[] Key(int size); // 0x00463710 + public static byte[] IV(int size); // 0x004637AC +} + +// Namespace: Mono.Security.Cryptography +internal class BlockProcessor // TypeDefIndex: 163 +{ + // Fields + private ICryptoTransform transform; // 0x08 + private byte[] block; // 0x0C + private int blockSize; // 0x10 + private int blockCount; // 0x14 + + // Methods + public void .ctor(ICryptoTransform transform); // 0x0045CC00 + public void .ctor(ICryptoTransform transform, int blockSize); // 0x0045CCE8 + protected override void Finalize(); // 0x0045CD6C + public void Initialize(); // 0x0045CDE0 + public void Core(byte[] rgb); // 0x0045CE0C + public void Core(byte[] rgb, int ib, int cb); // 0x0045CE4C + public byte[] Final(); // 0x0045D0F8 +} + +// Namespace: Mono.Security.Cryptography +internal class DSAManaged : DSA // TypeDefIndex: 164 +{ + // Fields + private const int defaultKeySize = 1024; // 0x00 + private bool keypairGenerated; // 0x10 + private bool m_disposed; // 0x11 + private BigInteger p; // 0x14 + private BigInteger q; // 0x18 + private BigInteger g; // 0x1C + private BigInteger x; // 0x20 + private BigInteger y; // 0x24 + private BigInteger j; // 0x28 + private BigInteger seed; // 0x2C + private int counter; // 0x30 + private bool j_missing; // 0x34 + private RandomNumberGenerator rng; // 0x38 + private KeyGeneratedEventHandler KeyGenerated; // 0x3C + + // Properties + private RandomNumberGenerator Random { get; } // 0x004618E4 + public override int KeySize { get; } // 0x0046190C + public override string KeyExchangeAlgorithm { get; } // 0x00461944 + public bool PublicOnly { get; } // 0x0046194C + public override string SignatureAlgorithm { get; } // 0x004619E8 + + // Events + public event KeyGeneratedEventHandler KeyGenerated { + add; // 0x0046091C + remove; // 0x004609AC + } + + // Methods + public void .ctor(); // 0x004607FC + public void .ctor(int dwKeySize); // 0x00460804 + protected override void Finalize(); // 0x00460A3C + private void Generate(); // 0x00460AB4 + private void GenerateKeyPair(); // 0x004612C8 + private void add(byte[] a, byte[] b, int value); // 0x004617D8 + private void GenerateParams(int keyLength); // 0x00460AF8 + private byte[] NormalizeArray(byte[] array); // 0x00461A44 + public override DSAParameters ExportParameters(bool includePrivateParameters); // 0x00461B10 + public override void ImportParameters(DSAParameters parameters); // 0x00461E58 + public override byte[] CreateSignature(byte[] rgbHash); // 0x004621DC + public override bool VerifySignature(byte[] rgbHash, byte[] rgbSignature); // 0x0046263C + protected override void Dispose(bool disposing); // 0x00462C74 +} + +// Namespace: +public delegate void KeyGeneratedEventHandler(object sender, EventArgs e); // TypeDefIndex: 165; 0x0046142C + +// Namespace: Mono.Security.Cryptography +internal class HMACAlgorithm // TypeDefIndex: 166 +{ + // Fields + private byte[] key; // 0x08 + private byte[] hash; // 0x0C + private HashAlgorithm algo; // 0x10 + private string hashName; // 0x14 + private BlockProcessor block; // 0x18 + + // Properties + public HashAlgorithm Algo { get; } // 0x00463160 + public string HashName { get; set; } // 0x00463168 0x00463170 + public byte[] Key { get; set; } // 0x00463174 0x0046317C + + // Methods + public void .ctor(string algoName); // 0x00463010 + protected override void Finalize(); // 0x004630C8 + private void CreateHash(string algoName); // 0x00463038 + public void Dispose(); // 0x00463144 + public void Initialize(); // 0x0046326C + private byte[] KeySetup(byte[] key, byte padding); // 0x0046332C + public void Core(byte[] rgb, int ib, int cb); // 0x00463494 + public byte[] Final(); // 0x004634DC +} + +// Namespace: Mono.Security.Cryptography +internal class KeyPairPersistence // TypeDefIndex: 167 +{ + // Fields + private static bool _userPathExists; // 0x00 + private static string _userPath; // 0x04 + private static bool _machinePathExists; // 0x08 + private static string _machinePath; // 0x0C + private CspParameters _params; // 0x08 + private string _keyvalue; // 0x0C + private string _filename; // 0x10 + private string _container; // 0x14 + private static object lockobj; // 0x10 + + // Properties + public string Filename { get; } // 0x00463AD0 + public string KeyValue { get; set; } // 0x00464C8C 0x00464C94 + public CspParameters Parameters { get; } // 0x00464CB8 + private static string UserPath { get; } // 0x00464670 + private static string MachinePath { get; } // 0x00464054 + private bool CanChange { get; } // 0x00464CA4 + private bool UseDefaultKeyContainer { get; } // 0x00465A18 + private bool UseMachineKeyStore { get; } // 0x0046402C + private string ContainerName { get; } // 0x00463E1C + + // Methods + public void .ctor(CspParameters parameters); // 0x00463848 + public void .ctor(CspParameters parameters, string keyPair); // 0x00463850 + private static void .cctor(); // 0x00463A34 + public bool Load(); // 0x00464CC0 + public void Save(); // 0x00465028 + public void Remove(); // 0x0046575C + internal static bool _CanSecure(string root); // 0x0046590C + internal static bool _ProtectUser(string path); // 0x00465910 + internal static bool _ProtectMachine(string path); // 0x00465914 + internal static bool _IsUserProtected(string path); // 0x00465918 + internal static bool _IsMachineProtected(string path); // 0x0046591C + private static bool CanSecure(string path); // 0x00465920 + private static bool ProtectUser(string path); // 0x0046569C + private static bool ProtectMachine(string path); // 0x004655DC + private static bool IsUserProtected(string path); // 0x0046578C + private static bool IsMachineProtected(string path); // 0x0046584C + private CspParameters Copy(CspParameters p); // 0x00463920 + private void FromXml(string xml); // 0x00464E5C + private string ToXml(); // 0x004652B8 +} + +// Namespace: Mono.Security.Cryptography +internal class MACAlgorithm // TypeDefIndex: 168 +{ + // Fields + private SymmetricAlgorithm algo; // 0x08 + private ICryptoTransform enc; // 0x0C + private byte[] block; // 0x10 + private int blockSize; // 0x14 + private int blockCount; // 0x18 + + // Methods + public void .ctor(SymmetricAlgorithm algorithm); // 0x00465A40 + public void Initialize(byte[] key); // 0x00465B58 + public void Core(byte[] rgb, int ib, int cb); // 0x00465BEC + public byte[] Final(); // 0x00465E84 +} + +// Namespace: Mono.Security.Cryptography +internal sealed class PKCS1 // TypeDefIndex: 169 +{ + // Fields + private static byte[] emptySHA1; // 0x00 + private static byte[] emptySHA256; // 0x04 + private static byte[] emptySHA384; // 0x08 + private static byte[] emptySHA512; // 0x0C + + // Methods + private void .ctor(); // 0x0046618C + private static void .cctor(); // 0x00466194 + private static bool Compare(byte[] array1, byte[] array2); // 0x004662D4 + private static byte[] xor(byte[] array1, byte[] array2); // 0x0046639C + private static byte[] GetEmptyHash(HashAlgorithm hash); // 0x004664DC + public static byte[] I2OSP(int x, int size); // 0x00466730 + public static byte[] I2OSP(byte[] x, int size); // 0x004667F4 + public static byte[] OS2IP(byte[] x); // 0x004668B8 + public static byte[] RSAEP(RSA rsa, byte[] m); // 0x004669C4 + public static byte[] RSADP(RSA rsa, byte[] c); // 0x00466A00 + public static byte[] RSASP1(RSA rsa, byte[] m); // 0x00466A3C + public static byte[] RSAVP1(RSA rsa, byte[] s); // 0x00466A78 + public static byte[] Encrypt_OAEP(RSA rsa, HashAlgorithm hash, RandomNumberGenerator rng, byte[] M); // 0x00466AB4 + public static byte[] Decrypt_OAEP(RSA rsa, HashAlgorithm hash, byte[] C); // 0x00467124 + public static byte[] Encrypt_v15(RSA rsa, RandomNumberGenerator rng, byte[] M); // 0x0046753C + public static byte[] Decrypt_v15(RSA rsa, byte[] C); // 0x0046777C + public static byte[] Sign_v15(RSA rsa, HashAlgorithm hash, byte[] hashValue); // 0x00467A00 + public static bool Verify_v15(RSA rsa, HashAlgorithm hash, byte[] hashValue, byte[] signature); // 0x00467F4C + public static bool Verify_v15(RSA rsa, HashAlgorithm hash, byte[] hashValue, byte[] signature, bool tryNonStandardEncoding); // 0x0045BBD0 + public static byte[] Encode_v15(HashAlgorithm hash, byte[] hashValue, int emLength); // 0x00467AE0 + public static byte[] MGF1(HashAlgorithm hash, byte[] mgfSeed, int maskLen); // 0x00466ECC +} + +// Namespace: Mono.Security.Cryptography +internal sealed class PKCS8 // TypeDefIndex: 170 +{ + // Methods + private void .ctor(); // 0x00467FF4 + public static KeyInfo GetType(byte[] data); // 0x00467FFC +} + +// Namespace: +public enum KeyInfo // TypeDefIndex: 171 +{ + PrivateKey = 0, + EncryptedPrivateKey = 1, + Unknown = 2 +} + +// Namespace: +public class PrivateKeyInfo // TypeDefIndex: 172 +{ + // Fields + private int _version; // 0x08 + private string _algorithm; // 0x0C + private byte[] _key; // 0x10 + private ArrayList _list; // 0x14 + + // Properties + public string Algorithm { get; set; } // 0x0033CEA4 0x0033CEAC + public ArrayList Attributes { get; } // 0x0033CEB4 + public byte[] PrivateKey { get; set; } // 0x0033CEBC 0x0033CF68 + public int Version { get; set; } // 0x0033D070 0x0033D078 + + // Methods + public void .ctor(); // 0x0033CA88 + public void .ctor(byte[] data); // 0x0033CB0C + private void Decode(byte[] data); // 0x0033CB30 + public byte[] GetBytes(); // 0x0033D128 + private static byte[] RemoveLeadingZero(byte[] bigInt); // 0x0033D6A8 + private static byte[] Normalize(byte[] bigInt, int length); // 0x0033D794 + public static RSA DecodeRSA(byte[] keypair); // 0x0033D864 + public static byte[] Encode(RSA rsa); // 0x0033DDA4 + public static DSA DecodeDSA(byte[] privateKey, DSAParameters dsaParameters); // 0x0033E084 + public static byte[] Encode(DSA dsa); // 0x0033E1FC + public static byte[] Encode(AsymmetricAlgorithm aa); // 0x0033E274 +} + +// Namespace: +public class EncryptedPrivateKeyInfo // TypeDefIndex: 173 +{ + // Fields + private string _algorithm; // 0x08 + private byte[] _salt; // 0x0C + private int _iterations; // 0x10 + private byte[] _data; // 0x14 + + // Properties + public string Algorithm { get; set; } // 0x00468634 0x0046863C + public byte[] EncryptedData { get; set; } // 0x00468644 0x004686F0 + public byte[] Salt { get; set; } // 0x004687B0 0x004688C8 + public int IterationCount { get; set; } // 0x00468980 0x00468988 + + // Methods + public void .ctor(); // 0x0046822C + public void .ctor(byte[] data); // 0x00468234 + private void Decode(byte[] data); // 0x0046825C + public byte[] GetBytes(); // 0x00468A48 +} + +// Namespace: Mono.Security.Cryptography +internal class RSAManaged : RSA // TypeDefIndex: 174 +{ + // Fields + private const int defaultKeySize = 1024; // 0x00 + private bool isCRTpossible; // 0x10 + private bool keyBlinding; // 0x11 + private bool keypairGenerated; // 0x12 + private bool m_disposed; // 0x13 + private BigInteger d; // 0x14 + private BigInteger p; // 0x18 + private BigInteger q; // 0x1C + private BigInteger dp; // 0x20 + private BigInteger dq; // 0x24 + private BigInteger qInv; // 0x28 + private BigInteger n; // 0x2C + private BigInteger e; // 0x30 + private KeyGeneratedEventHandler KeyGenerated; // 0x34 + + // Properties + public override int KeySize { get; } // 0x0033EE08 + public override string KeyExchangeAlgorithm { get; } // 0x0033EE5C + public bool PublicOnly { get; } // 0x0033EEB8 + public override string SignatureAlgorithm { get; } // 0x0033EFA8 + public bool UseKeyBlinding { get; set; } // 0x00340FD4 0x00340FDC + public bool IsCrtPossible { get; } // 0x00340FE4 + + // Events + public event KeyGeneratedEventHandler KeyGenerated { + add; // 0x0033E4F8 + remove; // 0x0033E588 + } + + // Methods + public void .ctor(); // 0x0033E3C4 + public void .ctor(int keySize); // 0x0033E3CC + protected override void Finalize(); // 0x0033E618 + private void GenerateKeyPair(); // 0x0033E690 + public override byte[] DecryptValue(byte[] rgb); // 0x0033F004 + public override byte[] EncryptValue(byte[] rgb); // 0x0033F5C4 + public override RSAParameters ExportParameters(bool includePrivateParameters); // 0x0033F73C + public override void ImportParameters(RSAParameters parameters); // 0x0033FBEC + protected override void Dispose(bool disposing); // 0x0034031C + public override string ToXmlString(bool includePrivateParameters); // 0x00340708 + private byte[] GetPaddedValue(BigInteger value, int length); // 0x0033F4D4 +} + +// Namespace: +public delegate void KeyGeneratedEventHandler(object sender, EventArgs e); // TypeDefIndex: 175; 0x0033EA5C + +// Namespace: Mono.Security.Cryptography +internal abstract class SymmetricTransform : IDisposable, ICryptoTransform // TypeDefIndex: 176 +{ + // Fields + protected SymmetricAlgorithm algo; // 0x08 + protected bool encrypt; // 0x0C + private int BlockSizeByte; // 0x10 + private byte[] temp; // 0x14 + private byte[] temp2; // 0x18 + private byte[] workBuff; // 0x1C + private byte[] workout; // 0x20 + private int FeedBackByte; // 0x24 + private int FeedBackIter; // 0x28 + private bool m_disposed; // 0x2C + private bool lastBlock; // 0x2D + private RandomNumberGenerator _rng; // 0x30 + + // Properties + public virtual bool CanTransformMultipleBlocks { get; } // 0x0034147C + public virtual bool CanReuseTransform { get; } // 0x00341484 + public virtual int InputBlockSize { get; } // 0x0034148C + public virtual int OutputBlockSize { get; } // 0x00341494 + private bool KeepLastBlock { get; } // 0x003422A4 + + // Methods + public void .ctor(SymmetricAlgorithm symmAlgo, bool encryption, byte[] rgbIV); // 0x0034105C + private void System.IDisposable.Dispose(); // 0x00341370 + protected override void Finalize(); // 0x003413A4 + protected virtual void Dispose(bool disposing); // 0x0034141C + protected virtual void Transform(byte[] input, byte[] output); // 0x0034149C + protected abstract void ECB(byte[] input, byte[] output); + protected virtual void CBC(byte[] input, byte[] output); // 0x003416B4 + protected virtual void CFB(byte[] input, byte[] output); // 0x003418A4 + protected virtual void OFB(byte[] input, byte[] output); // 0x00341BDC + protected virtual void CTS(byte[] input, byte[] output); // 0x00341C78 + private void CheckInput(byte[] inputBuffer, int inputOffset, int inputCount); // 0x00341D14 + public virtual int TransformBlock(byte[] inputBuffer, int inputOffset, int inputCount, byte[] outputBuffer, int outputOffset); // 0x00341EF8 + private int InternalTransformBlock(byte[] inputBuffer, int inputOffset, int inputCount, byte[] outputBuffer, int outputOffset); // 0x0034232C + private void Random(byte[] buffer, int start, int length); // 0x00342554 + private void ThrowBadPaddingException(PaddingMode padding, int length, int position); // 0x00342634 + private byte[] FinalEncrypt(byte[] inputBuffer, int inputOffset, int inputCount); // 0x00342874 + private byte[] FinalDecrypt(byte[] inputBuffer, int inputOffset, int inputCount); // 0x00342C40 + public virtual byte[] TransformFinalBlock(byte[] inputBuffer, int inputOffset, int inputCount); // 0x00343044 +} + +// Namespace: Mono.Security.X509.Extensions +internal class BasicConstraintsExtension : X509Extension // TypeDefIndex: 177 +{ + // Fields + public const int NoPathLengthConstraint = -1; // 0x00 + private bool cA; // 0x14 + private int pathLenConstraint; // 0x18 + + // Properties + public bool CertificateAuthority { get; set; } // 0x003544F0 0x003544F8 + public override string Name { get; } // 0x00354500 + public int PathLenConstraint { get; set; } // 0x0035455C 0x00354564 + + // Methods + public void .ctor(); // 0x00354114 + public void .ctor(ASN1 asn1); // 0x00354188 + public void .ctor(X509Extension extension); // 0x00354190 + protected override void Decode(); // 0x00354198 + protected override void Encode(); // 0x00354350 + public override string ToString(); // 0x00354690 +} + +// Namespace: Mono.Security.X509.Extensions +internal enum KeyUsages // TypeDefIndex: 178 +{ + none = 0, + encipherOnly = 1, + cRLSign = 2, + keyCertSign = 4, + keyAgreement = 8, + dataEncipherment = 16, + keyEncipherment = 32, + nonRepudiation = 64, + digitalSignature = 128, + decipherOnly = 2048 +} + +// Namespace: Mono.Security.X509.Extensions +internal class KeyUsageExtension : X509Extension // TypeDefIndex: 179 +{ + // Fields + private int kubits; // 0x14 + + // Properties + public KeyUsages KeyUsage { get; set; } // 0x00354DB4 0x00354DBC + public override string Name { get; } // 0x00354EAC + + // Methods + public void .ctor(ASN1 asn1); // 0x003548C0 + public void .ctor(X509Extension extension); // 0x003548C8 + public void .ctor(); // 0x003548D0 + protected override void Decode(); // 0x0035493C + protected override void Encode(); // 0x00354AEC + public bool Support(KeyUsages usage); // 0x00354F08 + public override string ToString(); // 0x0035500C +} + +// Namespace: Mono.Security.X509.Extensions +internal class SubjectKeyIdentifierExtension : X509Extension // TypeDefIndex: 180 +{ + // Fields + private byte[] ski; // 0x14 + + // Properties + public override string Name { get; } // 0x003556D0 + public byte[] Identifier { get; } // 0x0035572C + + // Methods + public void .ctor(); // 0x0035553C + public void .ctor(ASN1 asn1); // 0x003555A8 + public void .ctor(X509Extension extension); // 0x003555B0 + protected override void Decode(); // 0x003555B8 + public override string ToString(); // 0x003557D8 +} + +// Namespace: Mono.Security.X509 +internal class PKCS5 // TypeDefIndex: 181 +{ + // Fields + public const string pbeWithMD2AndDESCBC = "1.2.840.113549.1.5.1"; // 0x00 + public const string pbeWithMD5AndDESCBC = "1.2.840.113549.1.5.3"; // 0x00 + public const string pbeWithMD2AndRC2CBC = "1.2.840.113549.1.5.4"; // 0x00 + public const string pbeWithMD5AndRC2CBC = "1.2.840.113549.1.5.6"; // 0x00 + public const string pbeWithSHA1AndDESCBC = "1.2.840.113549.1.5.10"; // 0x00 + public const string pbeWithSHA1AndRC2CBC = "1.2.840.113549.1.5.11"; // 0x00 + + // Methods + public void .ctor(); // 0x00256118 +} + +// Namespace: Mono.Security.X509 +internal class PKCS9 // TypeDefIndex: 182 +{ + // Fields + public const string friendlyName = "1.2.840.113549.1.9.20"; // 0x00 + public const string localKeyId = "1.2.840.113549.1.9.21"; // 0x00 + + // Methods + public void .ctor(); // 0x00256120 +} + +// Namespace: Mono.Security.X509 +internal class SafeBag // TypeDefIndex: 183 +{ + // Fields + private string _bagOID; // 0x08 + private ASN1 _asn1; // 0x0C + + // Properties + public string BagOID { get; } // 0x00256150 + public ASN1 ASN1 { get; } // 0x00256158 + + // Methods + public void .ctor(string bagOID, ASN1 asn1); // 0x00256128 +} + +// Namespace: Mono.Security.X509 +internal class PKCS12 : ICloneable // TypeDefIndex: 184 +{ + // Fields + public const string pbeWithSHAAnd128BitRC4 = "1.2.840.113549.1.12.1.1"; // 0x00 + public const string pbeWithSHAAnd40BitRC4 = "1.2.840.113549.1.12.1.2"; // 0x00 + public const string pbeWithSHAAnd3KeyTripleDESCBC = "1.2.840.113549.1.12.1.3"; // 0x00 + public const string pbeWithSHAAnd2KeyTripleDESCBC = "1.2.840.113549.1.12.1.4"; // 0x00 + public const string pbeWithSHAAnd128BitRC2CBC = "1.2.840.113549.1.12.1.5"; // 0x00 + public const string pbeWithSHAAnd40BitRC2CBC = "1.2.840.113549.1.12.1.6"; // 0x00 + public const string keyBag = "1.2.840.113549.1.12.10.1.1"; // 0x00 + public const string pkcs8ShroudedKeyBag = "1.2.840.113549.1.12.10.1.2"; // 0x00 + public const string certBag = "1.2.840.113549.1.12.10.1.3"; // 0x00 + public const string crlBag = "1.2.840.113549.1.12.10.1.4"; // 0x00 + public const string secretBag = "1.2.840.113549.1.12.10.1.5"; // 0x00 + public const string safeContentsBag = "1.2.840.113549.1.12.10.1.6"; // 0x00 + public const string x509Certificate = "1.2.840.113549.1.9.22.1"; // 0x00 + public const string sdsiCertificate = "1.2.840.113549.1.9.22.2"; // 0x00 + public const string x509Crl = "1.2.840.113549.1.9.23.1"; // 0x00 + public const int CryptoApiPasswordLimit = 32; // 0x00 + private static int recommendedIterationCount; // 0x00 + private byte[] _password; // 0x08 + private ArrayList _keyBags; // 0x0C + private ArrayList _secretBags; // 0x10 + private X509CertificateCollection _certs; // 0x14 + private bool _keyBagsChanged; // 0x18 + private bool _secretBagsChanged; // 0x19 + private bool _certsChanged; // 0x1A + private int _iterations; // 0x1C + private ArrayList _safeBags; // 0x20 + private RandomNumberGenerator _rng; // 0x24 + private static int password_max_length; // 0x04 + private static Dictionary`2 <>f__switch$map8; // 0x08 + private static Dictionary`2 <>f__switch$map9; // 0x0C + private static Dictionary`2 <>f__switch$mapA; // 0x10 + private static Dictionary`2 <>f__switch$mapB; // 0x14 + private static Dictionary`2 <>f__switch$mapC; // 0x18 + private static Dictionary`2 <>f__switch$mapD; // 0x1C + private static Dictionary`2 <>f__switch$mapE; // 0x20 + private static Dictionary`2 <>f__switch$mapF; // 0x24 + + // Properties + public string Password { set; } // 0x00355B38 + public int IterationCount { get; set; } // 0x00357CFC 0x00357D04 + public ArrayList Keys { get; } // 0x00357D0C + public ArrayList Secrets { get; } // 0x00358738 + public X509CertificateCollection Certificates { get; } // 0x00358B64 + internal RandomNumberGenerator RNG { get; } // 0x00359014 + public static int MaximumPasswordLength { get; set; } // 0x003664F0 0x0036657C + + // Methods + public void .ctor(); // 0x003559AC + public void .ctor(byte[] data); // 0x00355AD0 + public void .ctor(byte[] data, string password); // 0x003569E0 + public void .ctor(byte[] data, byte[] password); // 0x00356A14 + private static void .cctor(); // 0x00356A40 + private void Decode(byte[] data); // 0x00355DCC + protected override void Finalize(); // 0x00357C78 + private bool Compare(byte[] expected, byte[] actual); // 0x00356C98 + private SymmetricAlgorithm GetSymmetricAlgorithm(string algorithmOid, byte[] salt, int iterationCount); // 0x0035903C + public byte[] Decrypt(string algorithmOid, byte[] salt, int iterationCount, byte[] encryptedData); // 0x00358570 + public byte[] Decrypt(EncryptedData ed); // 0x00357B6C + public byte[] Encrypt(string algorithmOid, byte[] salt, int iterationCount, byte[] data); // 0x00359928 + private DSAParameters GetExistingParameters(out bool found); // 0x00359B5C + private void AddPrivateKey(PrivateKeyInfo pki); // 0x00359E28 + private void ReadSafeBag(ASN1 safeBag); // 0x00356D60 + private ASN1 Pkcs8ShroudedKeyBagSafeBag(AsymmetricAlgorithm aa, IDictionary attributes); // 0x00359FF8 + private ASN1 KeyBagSafeBag(AsymmetricAlgorithm aa, IDictionary attributes); // 0x0035B378 + private ASN1 SecretBagSafeBag(byte[] secret, IDictionary attributes); // 0x0035C5D8 + private ASN1 CertificateSafeBag(X509Certificate x509, IDictionary attributes); // 0x0035D604 + private byte[] MAC(byte[] password, byte[] salt, int iterations, byte[] data); // 0x00356AB8 + public byte[] GetBytes(); // 0x0035E784 + private ContentInfo EncryptedContentInfo(ASN1 safeBags, string algorithmOid); // 0x00360F44 + public void AddCertificate(X509Certificate cert); // 0x00360F3C + public void AddCertificate(X509Certificate cert, IDictionary attributes); // 0x00361358 + public void RemoveCertificate(X509Certificate cert); // 0x00360F34 + public void RemoveCertificate(X509Certificate cert, IDictionary attrs); // 0x00361678 + private bool CompareAsymmetricAlgorithm(AsymmetricAlgorithm a1, AsymmetricAlgorithm a2); // 0x00361D54 + public void AddPkcs8ShroudedKeyBag(AsymmetricAlgorithm aa); // 0x00361E74 + public void AddPkcs8ShroudedKeyBag(AsymmetricAlgorithm aa, IDictionary attributes); // 0x00361E7C + public void RemovePkcs8ShroudedKeyBag(AsymmetricAlgorithm aa); // 0x00362300 + public void AddKeyBag(AsymmetricAlgorithm aa); // 0x00362770 + public void AddKeyBag(AsymmetricAlgorithm aa, IDictionary attributes); // 0x00362778 + public void RemoveKeyBag(AsymmetricAlgorithm aa); // 0x00362AF4 + public void AddSecretBag(byte[] secret); // 0x00362E60 + public void AddSecretBag(byte[] secret, IDictionary attributes); // 0x00362E68 + public void RemoveSecretBag(byte[] secret); // 0x00363088 + public AsymmetricAlgorithm GetAsymmetricAlgorithm(IDictionary attrs); // 0x0036329C + public byte[] GetSecret(IDictionary attrs); // 0x00363EE0 + public X509Certificate GetCertificate(IDictionary attrs); // 0x003646EC + public IDictionary GetAttributes(AsymmetricAlgorithm aa); // 0x00364FBC + public IDictionary GetAttributes(X509Certificate cert); // 0x00365A40 + public void SaveToFile(string filename); // 0x003661D4 + public object Clone(); // 0x003663C0 + private static byte[] LoadFile(string filename); // 0x003666EC + public static PKCS12 LoadFromFile(string filename); // 0x003668EC + public static PKCS12 LoadFromFile(string filename, string password); // 0x003669F4 +} + +// Namespace: +public class DeriveBytes // TypeDefIndex: 185 +{ + // Fields + private static byte[] keyDiversifier; // 0x00 + private static byte[] ivDiversifier; // 0x04 + private static byte[] macDiversifier; // 0x08 + private string _hashName; // 0x08 + private int _iterations; // 0x0C + private byte[] _password; // 0x10 + private byte[] _salt; // 0x14 + + // Properties + public string HashName { get; set; } // 0x002553D4 0x002553DC + public int IterationCount { get; set; } // 0x002553E4 0x002553EC + public byte[] Password { get; set; } // 0x002553F4 0x002554AC + public byte[] Salt { get; set; } // 0x0025557C 0x00255634 + + // Methods + public void .ctor(); // 0x002552C4 + private static void .cctor(); // 0x002552CC + private void Adjust(byte[] a, int aOff, byte[] b); // 0x002556E4 + private byte[] Derive(byte[] diversifier, int n); // 0x00255878 + public byte[] DeriveKey(int size); // 0x00255F38 + public byte[] DeriveIV(int size); // 0x00255FD8 + public byte[] DeriveMAC(int size); // 0x00256078 +} + +// Namespace: +public enum Purpose // TypeDefIndex: 186 +{ + Key = 0, + IV = 1, + MAC = 2 +} + +// Namespace: Mono.Security.X509 +internal sealed class X501 // TypeDefIndex: 187 +{ + // Fields + private static byte[] countryName; // 0x00 + private static byte[] organizationName; // 0x04 + private static byte[] organizationalUnitName; // 0x08 + private static byte[] commonName; // 0x0C + private static byte[] localityName; // 0x10 + private static byte[] stateOrProvinceName; // 0x14 + private static byte[] streetAddress; // 0x18 + private static byte[] domainComponent; // 0x1C + private static byte[] userid; // 0x20 + private static byte[] email; // 0x24 + private static byte[] dnQualifier; // 0x28 + private static byte[] title; // 0x2C + private static byte[] surname; // 0x30 + private static byte[] givenName; // 0x34 + private static byte[] initial; // 0x38 + private static Dictionary`2 <>f__switch$map10; // 0x3C + + // Methods + private void .ctor(); // 0x00256160 + private static void .cctor(); // 0x00256168 + public static string ToString(ASN1 seq); // 0x00256A94 + public static string ToString(ASN1 seq, bool reversed, string separator, bool quotes); // 0x002579B0 + private static void AppendEntry(StringBuilder sb, ASN1 entry, bool quotes); // 0x00256C00 + private static AttributeTypeAndValue GetAttributeFromOid(string attributeType); // 0x00257BEC + private static bool IsOid(string oid); // 0x00258C80 + private static AttributeTypeAndValue ReadAttribute(string value, int pos); // 0x00258D90 + private static bool IsHex(char c); // 0x00258FD0 + private static string ReadHex(string value, int pos); // 0x002590EC + private static int ReadEscaped(StringBuilder sb, string value, int pos); // 0x00259384 + private static int ReadQuoted(StringBuilder sb, string value, int pos); // 0x002595B8 + private static string ReadValue(string value, int pos); // 0x00259788 + public static ASN1 FromString(string rdn); // 0x00259AA0 +} + +// Namespace: Mono.Security.X509 +internal class X509Crl // TypeDefIndex: 188 +{ + // Fields + private string issuer; // 0x08 + private byte version; // 0x0C + private DateTime thisUpdate; // 0x10 + private DateTime nextUpdate; // 0x20 + private ArrayList entries; // 0x30 + private string signatureOID; // 0x34 + private byte[] signature; // 0x38 + private X509ExtensionCollection extensions; // 0x3C + private byte[] encoded; // 0x40 + private byte[] hash_value; // 0x44 + private static Dictionary`2 <>f__switch$map11; // 0x00 + private static Dictionary`2 <>f__switch$map12; // 0x04 + + // Properties + public ArrayList Entries { get; } // 0x0025FF80 + public X509CrlEntry Item { get; } // 0x00260008 + public X509CrlEntry Item { get; } // 0x002600D8 + public X509ExtensionCollection Extensions { get; } // 0x0026026C + public byte[] Hash { get; } // 0x00260274 + public string IssuerName { get; } // 0x00260684 + public DateTime NextUpdate { get; } // 0x0026068C + public DateTime ThisUpdate { get; } // 0x0026069C + public string SignatureAlgorithm { get; } // 0x002606AC + public byte[] Signature { get; } // 0x002606B4 + public byte[] RawData { get; } // 0x00260760 + public byte Version { get; } // 0x00260818 + public bool IsCurrent { get; } // 0x00260820 + + // Methods + public void .ctor(byte[] crl); // 0x0025F48C + private void Parse(byte[] crl); // 0x0025F5A4 + public bool WasCurrent(DateTime instant); // 0x002608C8 + public byte[] GetBytes(); // 0x00260AE4 + private bool Compare(byte[] array1, byte[] array2); // 0x00260B9C + public X509CrlEntry GetCrlEntry(X509Certificate x509); // 0x00260C5C + public X509CrlEntry GetCrlEntry(byte[] serialNumber); // 0x002600DC + public bool VerifySignature(X509Certificate x509); // 0x00260DE0 + private string GetHashName(); // 0x00260378 + internal bool VerifySignature(DSA dsa); // 0x00261150 + internal bool VerifySignature(RSA rsa); // 0x00261514 + public bool VerifySignature(AsymmetricAlgorithm aa); // 0x002615F8 + public static X509Crl CreateFromFile(string filename); // 0x002617C4 +} + +// Namespace: +public class X509CrlEntry // TypeDefIndex: 189 +{ + // Fields + private byte[] sn; // 0x08 + private DateTime revocationDate; // 0x10 + private X509ExtensionCollection extensions; // 0x20 + + // Properties + public byte[] SerialNumber { get; } // 0x00260D28 + public DateTime RevocationDate { get; } // 0x00261AB0 + public X509ExtensionCollection Extensions { get; } // 0x00261AC0 + + // Methods + internal void .ctor(byte[] serialNumber, DateTime revocationDate, X509ExtensionCollection extensions); // 0x002619F4 + internal void .ctor(ASN1 entry); // 0x0025FE48 + public byte[] GetBytes(); // 0x00261AC8 +} + +// Namespace: Mono.Security.X509 +internal class X509Certificate : ISerializable // TypeDefIndex: 190 +{ + // Fields + private ASN1 decoder; // 0x08 + private byte[] m_encodedcert; // 0x0C + private DateTime m_from; // 0x10 + private DateTime m_until; // 0x20 + private ASN1 issuer; // 0x30 + private string m_issuername; // 0x34 + private string m_keyalgo; // 0x38 + private byte[] m_keyalgoparams; // 0x3C + private ASN1 subject; // 0x40 + private string m_subject; // 0x44 + private byte[] m_publickey; // 0x48 + private byte[] signature; // 0x4C + private string m_signaturealgo; // 0x50 + private byte[] m_signaturealgoparams; // 0x54 + private byte[] certhash; // 0x58 + private RSA _rsa; // 0x5C + private DSA _dsa; // 0x60 + private int version; // 0x64 + private byte[] serialnumber; // 0x68 + private byte[] issuerUniqueID; // 0x6C + private byte[] subjectUniqueID; // 0x70 + private X509ExtensionCollection extensions; // 0x74 + private static string encoding_error; // 0x00 + private static Dictionary`2 <>f__switch$map13; // 0x04 + private static Dictionary`2 <>f__switch$map14; // 0x08 + private static Dictionary`2 <>f__switch$map15; // 0x0C + + // Properties + public DSA DSA { get; set; } // 0x0025B25C 0x0025B5B8 + public X509ExtensionCollection Extensions { get; } // 0x0025B5CC + public byte[] Hash { get; } // 0x0025B5D4 + public virtual string IssuerName { get; } // 0x0025BA68 + public virtual string KeyAlgorithm { get; } // 0x0025BA70 + public virtual byte[] KeyAlgorithmParameters { get; set; } // 0x0025BA78 0x0025BB24 + public virtual byte[] PublicKey { get; } // 0x0025BB2C + public virtual RSA RSA { get; set; } // 0x0025BBD8 0x0025BD9C + public virtual byte[] RawData { get; } // 0x0025BDB0 + public virtual byte[] SerialNumber { get; } // 0x0025BE5C + public virtual byte[] Signature { get; } // 0x0025BF08 + public virtual string SignatureAlgorithm { get; } // 0x0025C544 + public virtual byte[] SignatureAlgorithmParameters { get; } // 0x0025C54C + public virtual string SubjectName { get; } // 0x0025C5F8 + public virtual DateTime ValidFrom { get; } // 0x0025C600 + public virtual DateTime ValidUntil { get; } // 0x0025C610 + public int Version { get; } // 0x0025C620 + public bool IsCurrent { get; } // 0x0025C628 + public byte[] IssuerUniqueIdentifier { get; } // 0x0025C814 + public byte[] SubjectUniqueIdentifier { get; } // 0x0025C8C0 + public bool IsSelfSigned { get; } // 0x0025D1B8 + + // Methods + public void .ctor(byte[] data); // 0x00259E60 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x0025AE70 + private static void .cctor(); // 0x0025AF9C + private void Parse(byte[] data); // 0x0025A23C + private byte[] GetUnsignedBigInteger(byte[] integer); // 0x0025B180 + public bool WasCurrent(DateTime instant); // 0x0025C6D0 + internal bool VerifySignature(DSA dsa); // 0x0025C96C + internal string GetHashNameFromOID(string oid); // 0x0025CA64 + internal bool VerifySignature(RSA rsa); // 0x0025CD88 + public bool VerifySignature(AsymmetricAlgorithm aa); // 0x0025CF20 + public bool CheckSignature(byte[] hash, string hashAlgorithm, byte[] signature); // 0x0025D0EC + public ASN1 GetIssuerName(); // 0x0025D278 + public ASN1 GetSubjectName(); // 0x0025D280 + public virtual void GetObjectData(SerializationInfo info, StreamingContext context); // 0x0025D288 + private static byte[] PEM(string type, byte[] data); // 0x0025A044 +} + +// Namespace: Mono.Security.X509 +[Serializable] +internal class X509CertificateCollection : CollectionBase, IEnumerable // TypeDefIndex: 191 +{ + // Properties + public X509Certificate Item { get; set; } // 0x0025D604 0x0025D6E0 + + // Methods + public void .ctor(); // 0x0025D30C + public void .ctor(X509Certificate[] value); // 0x0025D314 + public void .ctor(X509CertificateCollection value); // 0x0025D464 + private IEnumerator System.Collections.IEnumerable.GetEnumerator(); // 0x0025D5C8 + public int Add(X509Certificate value); // 0x0025D72C + public void AddRange(X509Certificate[] value); // 0x0025D33C + public void AddRange(X509CertificateCollection value); // 0x0025D48C + public bool Contains(X509Certificate value); // 0x0025D810 + public void CopyTo(X509Certificate[] array, int index); // 0x0025D9E4 + public X509CertificateEnumerator GetEnumerator(); // 0x0025DA30 + public override int GetHashCode(); // 0x0025DB88 + public int IndexOf(X509Certificate value); // 0x0025D830 + public void Insert(int index, X509Certificate value); // 0x0025DC84 + public void Remove(X509Certificate value); // 0x0025DCD0 + private bool Compare(byte[] array1, byte[] array2); // 0x0025DBC4 +} + +// Namespace: +public class X509CertificateEnumerator : IEnumerator // TypeDefIndex: 192 +{ + // Fields + private IEnumerator enumerator; // 0x08 + + // Properties + private object System.Collections.IEnumerator.Current { get; } // 0x0025DD14 + public X509Certificate Current { get; } // 0x0025DF9C + + // Methods + public void .ctor(X509CertificateCollection mappings); // 0x0025DAA0 + private bool System.Collections.IEnumerator.MoveNext(); // 0x0025DDEC + private void System.Collections.IEnumerator.Reset(); // 0x0025DEC4 + public bool MoveNext(); // 0x0025E0C8 + public void Reset(); // 0x0025E1A0 +} + +// Namespace: Mono.Security.X509 +internal class X509Chain // TypeDefIndex: 193 +{ + // Fields + private X509CertificateCollection roots; // 0x08 + private X509CertificateCollection certs; // 0x0C + private X509Certificate _root; // 0x10 + private X509CertificateCollection _chain; // 0x14 + private X509ChainStatusFlags _status; // 0x18 + + // Properties + public X509CertificateCollection Chain { get; } // 0x0025E38C + public X509Certificate Root { get; } // 0x0025E394 + public X509ChainStatusFlags Status { get; } // 0x0025E39C + public X509CertificateCollection TrustAnchors { get; set; } // 0x0025E3A4 0x0025E594 + + // Methods + public void .ctor(); // 0x0025E278 + public void .ctor(X509CertificateCollection chain); // 0x0025E2F4 + public void LoadCertificate(X509Certificate x509); // 0x0025E59C + public void LoadCertificates(X509CertificateCollection collection); // 0x0025E5CC + public X509Certificate FindByIssuerName(string issuerName); // 0x0025E5FC + public bool Build(X509Certificate leaf); // 0x0025E86C + public void Reset(); // 0x0025F304 + private bool IsValid(X509Certificate cert); // 0x0025F2C0 + private X509Certificate FindCertificateParent(X509Certificate child); // 0x0025EC74 + private X509Certificate FindCertificateRoot(X509Certificate potentialRoot); // 0x0025EE8C + private bool IsTrusted(X509Certificate potentialTrusted); // 0x0025F354 + private bool IsParent(X509Certificate child, X509Certificate parent); // 0x0025F0FC +} + +// Namespace: Mono.Security.X509 +[Serializable] +internal enum X509ChainStatusFlags // TypeDefIndex: 194 +{ + NoError = 0, + NotTimeValid = 1, + NotTimeNested = 2, + NotSignatureValid = 8, + UntrustedRoot = 32, + InvalidBasicConstraints = 1024, + PartialChain = 65536 +} + +// Namespace: Mono.Security.X509 +internal class X509Extension // TypeDefIndex: 195 +{ + // Fields + protected string extnOid; // 0x08 + protected bool extnCritical; // 0x0C + protected ASN1 extnValue; // 0x10 + + // Properties + public ASN1 ASN1 { get; } // 0x0026249C + public string Oid { get; } // 0x0026261C + public bool Critical { get; set; } // 0x00262624 0x0026262C + public virtual string Name { get; } // 0x00262634 + public ASN1 Value { get; } // 0x00262460 + + // Methods + protected void .ctor(); // 0x00261E44 + public void .ctor(ASN1 asn1); // 0x00261E64 + public void .ctor(X509Extension extension); // 0x00262284 + protected virtual void Decode(); // 0x00262494 + protected virtual void Encode(); // 0x00262498 + public override bool Equals(object obj); // 0x0026263C + public byte[] GetBytes(); // 0x0026283C + public override int GetHashCode(); // 0x00262874 + private void WriteLine(StringBuilder sb, int n, int pos); // 0x002628A0 + public override string ToString(); // 0x00262B9C +} + +// Namespace: Mono.Security.X509 +internal sealed class X509ExtensionCollection : CollectionBase, IEnumerable // TypeDefIndex: 196 +{ + // Fields + private bool readOnly; // 0x0C + + // Properties + public X509Extension Item { get; } // 0x00263130 + public X509Extension Item { get; } // 0x0025F398 + + // Methods + public void .ctor(); // 0x00261AA8 + public void .ctor(ASN1 asn1); // 0x0025B014 + private IEnumerator System.Collections.IEnumerable.GetEnumerator(); // 0x00262CBC + public int Add(X509Extension extension); // 0x00262CF8 + public void AddRange(X509Extension[] extension); // 0x00262E2C + public void AddRange(X509ExtensionCollection collection); // 0x00262FA4 + public bool Contains(X509Extension extension); // 0x0026320C + public bool Contains(string oid); // 0x002633CC + public void CopyTo(X509Extension[] extensions, int index); // 0x002635BC + public int IndexOf(X509Extension extension); // 0x0026322C + public int IndexOf(string oid); // 0x002633EC + public void Insert(int index, X509Extension extension); // 0x002636A8 + public void Remove(X509Extension extension); // 0x00263794 + public void Remove(string oid); // 0x00263878 + public byte[] GetBytes(); // 0x00261C68 +} + +// Namespace: Mono.Security.X509 +internal class X509Store // TypeDefIndex: 197 +{ + // Fields + private string _storePath; // 0x08 + private X509CertificateCollection _certificates; // 0x0C + private ArrayList _crls; // 0x10 + private bool _crl; // 0x14 + private string _name; // 0x18 + + // Properties + public X509CertificateCollection Certificates { get; } // 0x0026399C + public ArrayList Crls { get; } // 0x00263BB4 + public string Name { get; } // 0x00263E50 + + // Methods + internal void .ctor(string path, bool crl); // 0x00263974 + public void Clear(); // 0x00263F3C + public void Import(X509Certificate certificate); // 0x00263F88 + public void Import(X509Crl crl); // 0x002643B4 + public void Remove(X509Certificate certificate); // 0x0026467C + public void Remove(X509Crl crl); // 0x0026473C + private string GetUniqueName(X509Certificate certificate); // 0x002642F8 + private string GetUniqueName(X509Crl crl); // 0x002645C0 + private byte[] GetUniqueName(X509ExtensionCollection extensions); // 0x002647FC + private string GetUniqueName(string method, byte[] name, string fileExtension); // 0x002648C4 + private byte[] Load(string filename); // 0x00264A80 + private X509Certificate LoadCertificate(string filename); // 0x00264C80 + private X509Crl LoadCrl(string filename); // 0x00264CFC + private bool CheckStore(string path, bool throwException); // 0x002641B8 + private X509CertificateCollection BuildCertificatesCollection(string storeName); // 0x002639C8 + private ArrayList BuildCrlsCollection(string storeName); // 0x00263C58 +} + +// Namespace: Mono.Security.X509 +internal sealed class X509StoreManager // TypeDefIndex: 198 +{ + // Fields + private static X509Stores _userStore; // 0x00 + private static X509Stores _machineStore; // 0x04 + + // Properties + public static X509Stores CurrentUser { get; } // 0x00264D80 + public static X509Stores LocalMachine { get; } // 0x00264EC4 + public static X509CertificateCollection IntermediateCACertificates { get; } // 0x00264FE4 + public static ArrayList IntermediateCACrls { get; } // 0x0026520C + public static X509CertificateCollection TrustedRootCertificates { get; } // 0x0025E448 + public static ArrayList TrustedRootCACrls { get; } // 0x00265410 + public static X509CertificateCollection UntrustedCertificates { get; } // 0x00265538 + + // Methods + private void .ctor(); // 0x00264D78 +} + +// Namespace: Mono.Security.X509 +internal class X509Stores // TypeDefIndex: 199 +{ + // Fields + private string _storePath; // 0x08 + private X509Store _personal; // 0x0C + private X509Store _other; // 0x10 + private X509Store _intermediate; // 0x14 + private X509Store _trusted; // 0x18 + private X509Store _untrusted; // 0x1C + + // Properties + public X509Store Personal { get; } // 0x00265760 + public X509Store OtherPeople { get; } // 0x0026583C + public X509Store IntermediateCA { get; } // 0x00265130 + public X509Store TrustedRoot { get; } // 0x00265334 + public X509Store Untrusted { get; } // 0x00265684 + + // Methods + internal void .ctor(string path); // 0x00264EA4 + public void Clear(); // 0x00265918 + public X509Store Open(string storeName, bool create); // 0x00265984 +} + +// Namespace: +public class Names // TypeDefIndex: 200 +{ + // Fields + public const string Personal = "My"; // 0x00 + public const string OtherPeople = "AddressBook"; // 0x00 + public const string IntermediateCA = "CA"; // 0x00 + public const string TrustedRoot = "Trust"; // 0x00 + public const string Untrusted = "Disallowed"; // 0x00 + + // Methods + public void .ctor(); // 0x00265AC8 +} + +// Namespace: Mono.Security.X509 +internal class X520 // TypeDefIndex: 201 +{ + // Methods + public void .ctor(); // 0x00265AD0 +} + +// Namespace: +public abstract class AttributeTypeAndValue // TypeDefIndex: 202 +{ + // Fields + private string oid; // 0x08 + private string attrValue; // 0x0C + private int upperBound; // 0x10 + private byte encoding; // 0x14 + + // Properties + public string Value { get; set; } // 0x00265B38 0x00259D18 + public ASN1 ASN1 { get; } // 0x00265B40 + + // Methods + protected void .ctor(string oid, int upperBound); // 0x00265AD8 + protected void .ctor(string oid, int upperBound, byte encoding); // 0x00265B08 + internal ASN1 GetASN1(byte encoding); // 0x00265B48 + internal ASN1 GetASN1(); // 0x00259E58 + public byte[] GetBytes(byte encoding); // 0x00265E44 + public byte[] GetBytes(); // 0x00265E7C + private byte SelectBestEncoding(); // 0x00265DDC +} + +// Namespace: +public class Name : AttributeTypeAndValue // TypeDefIndex: 203 +{ + // Methods + public void .ctor(); // 0x00265EB8 +} + +// Namespace: +public class CommonName : AttributeTypeAndValue // TypeDefIndex: 204 +{ + // Methods + public void .ctor(); // 0x002586FC +} + +// Namespace: +public class SerialNumber : AttributeTypeAndValue // TypeDefIndex: 205 +{ + // Methods + public void .ctor(); // 0x00265F34 +} + +// Namespace: +public class LocalityName : AttributeTypeAndValue // TypeDefIndex: 206 +{ + // Methods + public void .ctor(); // 0x00258778 +} + +// Namespace: +public class StateOrProvinceName : AttributeTypeAndValue // TypeDefIndex: 207 +{ + // Methods + public void .ctor(); // 0x002587F4 +} + +// Namespace: +public class OrganizationName : AttributeTypeAndValue // TypeDefIndex: 208 +{ + // Methods + public void .ctor(); // 0x00258604 +} + +// Namespace: +public class OrganizationalUnitName : AttributeTypeAndValue // TypeDefIndex: 209 +{ + // Methods + public void .ctor(); // 0x00258680 +} + +// Namespace: +public class EmailAddress : AttributeTypeAndValue // TypeDefIndex: 210 +{ + // Methods + public void .ctor(); // 0x00258870 +} + +// Namespace: +public class DomainComponent : AttributeTypeAndValue // TypeDefIndex: 211 +{ + // Methods + public void .ctor(); // 0x002588EC +} + +// Namespace: +public class UserId : AttributeTypeAndValue // TypeDefIndex: 212 +{ + // Methods + public void .ctor(); // 0x00258968 +} + +// Namespace: +public class Oid : AttributeTypeAndValue // TypeDefIndex: 213 +{ + // Methods + public void .ctor(string oid); // 0x00258C50 +} + +// Namespace: +public class Title : AttributeTypeAndValue // TypeDefIndex: 214 +{ + // Methods + public void .ctor(); // 0x00258A60 +} + +// Namespace: +public class CountryName : AttributeTypeAndValue // TypeDefIndex: 215 +{ + // Methods + public void .ctor(); // 0x00258588 +} + +// Namespace: +public class DnQualifier : AttributeTypeAndValue // TypeDefIndex: 216 +{ + // Methods + public void .ctor(); // 0x002589E4 +} + +// Namespace: +public class Surname : AttributeTypeAndValue // TypeDefIndex: 217 +{ + // Methods + public void .ctor(); // 0x00258ADC +} + +// Namespace: +public class GivenName : AttributeTypeAndValue // TypeDefIndex: 218 +{ + // Methods + public void .ctor(); // 0x00258B58 +} + +// Namespace: +public class Initial : AttributeTypeAndValue // TypeDefIndex: 219 +{ + // Methods + public void .ctor(); // 0x00258BD4 +} + +// Namespace: Mono.Security +internal class ASN1 // TypeDefIndex: 220 +{ + // Fields + private byte m_nTag; // 0x08 + private byte[] m_aValue; // 0x0C + private ArrayList elist; // 0x10 + + // Properties + public int Count { get; } // 0x004557E0 + public byte Tag { get; } // 0x00455800 + public int Length { get; } // 0x00455808 + public byte[] Value { get; set; } // 0x0045581C 0x004558F4 + public ASN1 Item { get; } // 0x00456554 + + // Methods + public void .ctor(); // 0x0045543C + public void .ctor(byte tag); // 0x00455488 + public void .ctor(byte tag, byte[] data); // 0x00455460 + public void .ctor(byte[] data); // 0x004554B0 + private bool CompareArray(byte[] array1, byte[] array2); // 0x004559A4 + public bool Equals(byte[] asn1); // 0x00455A6C + public bool CompareValue(byte[] value); // 0x00455A98 + public ASN1 Add(ASN1 asn1); // 0x00455AA4 + public virtual byte[] GetBytes(); // 0x00455B5C + protected void Decode(byte[] asn1, int anPos, int anLength); // 0x00455690 + protected void DecodeTLV(byte[] asn1, int pos, out byte tag, out int length, out byte[] content); // 0x004563DC + public ASN1 Element(int index, byte anTag); // 0x004566E0 + public override string ToString(); // 0x00456888 + public void SaveToFile(string filename); // 0x00456B94 +} + +// Namespace: Mono.Security +internal static class ASN1Convert // TypeDefIndex: 221 +{ + // Methods + public static ASN1 FromDateTime(DateTime dt); // 0x00456D8C + public static ASN1 FromInt32(int value); // 0x004570AC + public static ASN1 FromOid(string oid); // 0x0045726C + public static ASN1 FromUnsignedBigInteger(byte[] big); // 0x00457378 + public static int ToInt32(ASN1 asn1); // 0x004574CC + public static string ToOid(ASN1 asn1); // 0x00457648 + public static DateTime ToDateTime(ASN1 time); // 0x00457A58 +} + +// Namespace: Mono.Security +internal sealed class BitConverterLE // TypeDefIndex: 222 +{ + // Methods + private void .ctor(); // 0x0045BE60 + private static byte[] GetUShortBytes(void * bytes); // 0x0045BE68 + private static byte[] GetUIntBytes(void * bytes); // 0x0045BFB8 + private static byte[] GetULongBytes(void * bytes); // 0x0045C198 + internal static byte[] GetBytes(bool value); // 0x0045C498 + internal static byte[] GetBytes(char value); // 0x0045C534 + internal static byte[] GetBytes(short value); // 0x0045C554 + internal static byte[] GetBytes(int value); // 0x0045724C + internal static byte[] GetBytes(long value); // 0x0045C574 + internal static byte[] GetBytes(ushort value); // 0x0045C590 + internal static byte[] GetBytes(uint value); // 0x0045C5B0 + internal static byte[] GetBytes(ulong value); // 0x0045C5D0 + internal static byte[] GetBytes(float value); // 0x0045C5EC + internal static byte[] GetBytes(double value); // 0x0045C60C + private static void UShortFromBytes(void * dst, byte[] src, int startIndex); // 0x0045C628 + private static void UIntFromBytes(void * dst, byte[] src, int startIndex); // 0x0045C758 + private static void ULongFromBytes(void * dst, byte[] src, int startIndex); // 0x0045C938 + internal static bool ToBoolean(byte[] value, int startIndex); // 0x0045CA80 + internal static char ToChar(byte[] value, int startIndex); // 0x0045CAD0 + internal static short ToInt16(byte[] value, int startIndex); // 0x0045CB00 + internal static int ToInt32(byte[] value, int startIndex); // 0x00458764 + internal static long ToInt64(byte[] value, int startIndex); // 0x0045CB30 + internal static ushort ToUInt16(byte[] value, int startIndex); // 0x00458734 + internal static uint ToUInt32(byte[] value, int startIndex); // 0x00458794 + internal static ulong ToUInt64(byte[] value, int startIndex); // 0x0045CB64 + internal static float ToSingle(byte[] value, int startIndex); // 0x0045CB98 + internal static double ToDouble(byte[] value, int startIndex); // 0x0045CBC8 +} + +// Namespace: Mono.Security +internal sealed class PKCS7 // TypeDefIndex: 223 +{ + // Methods + private void .ctor(); // 0x00343154 + public static ASN1 Attribute(string oid, ASN1 value); // 0x0034315C + public static ASN1 AlgorithmIdentifier(string oid); // 0x0034326C + public static ASN1 AlgorithmIdentifier(string oid, ASN1 parameters); // 0x00343354 + public static ASN1 IssuerAndSerialNumber(X509Certificate x509); // 0x00343428 +} + +// Namespace: +public class Oid // TypeDefIndex: 224 +{ + // Fields + public const string rsaEncryption = "1.2.840.113549.1.1.1"; // 0x00 + public const string data = "1.2.840.113549.1.7.1"; // 0x00 + public const string signedData = "1.2.840.113549.1.7.2"; // 0x00 + public const string envelopedData = "1.2.840.113549.1.7.3"; // 0x00 + public const string signedAndEnvelopedData = "1.2.840.113549.1.7.4"; // 0x00 + public const string digestedData = "1.2.840.113549.1.7.5"; // 0x00 + public const string encryptedData = "1.2.840.113549.1.7.6"; // 0x00 + public const string contentType = "1.2.840.113549.1.9.3"; // 0x00 + public const string messageDigest = "1.2.840.113549.1.9.4"; // 0x00 + public const string signingTime = "1.2.840.113549.1.9.5"; // 0x00 + public const string countersignature = "1.2.840.113549.1.9.6"; // 0x00 + + // Methods + public void .ctor(); // 0x00344C78 +} + +// Namespace: +public class ContentInfo // TypeDefIndex: 225 +{ + // Fields + private string contentType; // 0x08 + private ASN1 content; // 0x0C + + // Properties + public ASN1 ASN1 { get; } // 0x0034395C + public ASN1 Content { get; set; } // 0x00343A44 0x00343A4C + public string ContentType { get; set; } // 0x00343A54 0x00343A5C + + // Methods + public void .ctor(); // 0x0034361C + public void .ctor(string oid); // 0x0034369C + public void .ctor(byte[] data); // 0x003436B8 + public void .ctor(ASN1 asn1); // 0x00343738 + internal ASN1 GetASN1(); // 0x00343960 + public byte[] GetBytes(); // 0x00343A64 +} + +// Namespace: +public class EncryptedData // TypeDefIndex: 226 +{ + // Fields + private byte _version; // 0x08 + private ContentInfo _content; // 0x0C + private ContentInfo _encryptionAlgorithm; // 0x10 + private byte[] _encrypted; // 0x14 + + // Properties + public ASN1 ASN1 { get; } // 0x00343F80 + public ContentInfo ContentInfo { get; } // 0x00343F90 + public ContentInfo EncryptionAlgorithm { get; } // 0x00343F98 + public byte[] EncryptedContent { get; } // 0x00343FA0 + public byte Version { get; set; } // 0x0034404C 0x00344054 + + // Methods + public void .ctor(); // 0x00343A9C + public void .ctor(byte[] data); // 0x00343ABC + public void .ctor(ASN1 asn1); // 0x00343B3C + internal ASN1 GetASN1(); // 0x00343F88 + public byte[] GetBytes(); // 0x0034405C +} + +// Namespace: +public class EnvelopedData // TypeDefIndex: 227 +{ + // Fields + private byte _version; // 0x08 + private ContentInfo _content; // 0x0C + private ContentInfo _encryptionAlgorithm; // 0x10 + private ArrayList _recipientInfos; // 0x14 + private byte[] _encrypted; // 0x18 + + // Properties + public ArrayList RecipientInfos { get; } // 0x00344AF8 + public ASN1 ASN1 { get; } // 0x00344B00 + public ContentInfo ContentInfo { get; } // 0x00344B74 + public ContentInfo EncryptionAlgorithm { get; } // 0x00344B7C + public byte[] EncryptedContent { get; } // 0x00344B84 + public byte Version { get; set; } // 0x00344C30 0x00344C38 + + // Methods + public void .ctor(); // 0x00344070 + public void .ctor(byte[] data); // 0x00344128 + public void .ctor(ASN1 asn1); // 0x003441A8 + internal ASN1 GetASN1(); // 0x00344B04 + public byte[] GetBytes(); // 0x00344C40 +} + +// Namespace: +public class RecipientInfo // TypeDefIndex: 228 +{ + // Fields + private int _version; // 0x08 + private string _oid; // 0x0C + private byte[] _key; // 0x10 + private byte[] _ski; // 0x14 + private string _issuer; // 0x18 + private byte[] _serial; // 0x1C + + // Properties + public string Oid { get; } // 0x00344C88 + public byte[] Key { get; } // 0x00344C90 + public byte[] SubjectKeyIdentifier { get; } // 0x00344D3C + public string Issuer { get; } // 0x00344DE8 + public byte[] Serial { get; } // 0x00344DF0 + public int Version { get; } // 0x00344E9C + + // Methods + public void .ctor(); // 0x00344C80 + public void .ctor(ASN1 data); // 0x0034482C +} + +// Namespace: +public class SignedData // TypeDefIndex: 229 +{ + // Fields + private byte version; // 0x08 + private string hashAlgorithm; // 0x0C + private ContentInfo contentInfo; // 0x10 + private X509CertificateCollection certs; // 0x14 + private ArrayList crls; // 0x18 + private SignerInfo signerInfo; // 0x1C + private bool mda; // 0x20 + private bool signed; // 0x21 + private static Dictionary`2 <>f__switch$map16; // 0x00 + + // Properties + public ASN1 ASN1 { get; } // 0x003462CC + public X509CertificateCollection Certificates { get; } // 0x00346F0C + public ContentInfo ContentInfo { get; } // 0x00346F14 + public ArrayList Crls { get; } // 0x00346F1C + public string HashName { get; set; } // 0x00346F24 0x003462A0 + public SignerInfo SignerInfo { get; } // 0x00346F2C + public byte Version { get; set; } // 0x00346F34 0x00346F3C + public bool UseAuthenticatedAttributes { get; set; } // 0x00346F44 0x00346F4C + + // Methods + public void .ctor(); // 0x00344EA4 + public void .ctor(byte[] data); // 0x0034502C + public void .ctor(ASN1 asn1); // 0x003450AC + public bool VerifySignature(AsymmetricAlgorithm aa); // 0x00346F54 + internal string OidToName(string oid); // 0x00345F08 + internal ASN1 GetASN1(); // 0x003462D0 + public byte[] GetBytes(); // 0x00347594 +} + +// Namespace: +public class SignerInfo // TypeDefIndex: 230 +{ + // Fields + private byte version; // 0x08 + private X509Certificate x509; // 0x0C + private string hashAlgorithm; // 0x10 + private AsymmetricAlgorithm key; // 0x14 + private ArrayList authenticatedAttributes; // 0x18 + private ArrayList unauthenticatedAttributes; // 0x1C + private byte[] signature; // 0x20 + private string issuer; // 0x24 + private byte[] serial; // 0x28 + private byte[] ski; // 0x2C + + // Properties + public string IssuerName { get; } // 0x0034764C + public byte[] SerialNumber { get; } // 0x00347654 + public byte[] SubjectKeyIdentifier { get; } // 0x00347700 + public ASN1 ASN1 { get; } // 0x00347590 + public ArrayList AuthenticatedAttributes { get; } // 0x003482FC + public X509Certificate Certificate { get; set; } // 0x00348304 0x0034830C + public string HashName { get; set; } // 0x00348314 0x0034831C + public AsymmetricAlgorithm Key { get; set; } // 0x00348324 0x0034832C + public byte[] Signature { get; set; } // 0x00347434 0x003474E0 + public ArrayList UnauthenticatedAttributes { get; } // 0x00348334 + public byte Version { get; set; } // 0x0034833C 0x00348344 + + // Methods + public void .ctor(); // 0x00344F90 + public void .ctor(byte[] data); // 0x003475CC + public void .ctor(ASN1 asn1); // 0x003458E4 + internal ASN1 GetASN1(); // 0x003477AC + public byte[] GetBytes(); // 0x0034834C +} + +// Namespace: Mono.Security +internal sealed class StrongName // TypeDefIndex: 231 +{ + // Fields + private RSA rsa; // 0x08 + private byte[] publicKey; // 0x0C + private byte[] keyToken; // 0x10 + private string tokenAlgorithm; // 0x14 + private static object lockObject; // 0x00 + private static bool initialized; // 0x04 + + // Properties + public bool CanSign { get; } // 0x0034875C + public RSA RSA { get; set; } // 0x003488F4 0x003485E0 + public byte[] PublicKey { get; } // 0x0034891C + public byte[] PublicKeyToken { get; } // 0x00348EB8 + public string TokenAlgorithm { get; set; } // 0x00349094 0x00349100 + + // Methods + public void .ctor(); // 0x00348384 + public void .ctor(int keySize); // 0x0034838C + public void .ctor(byte[] data); // 0x0034840C + public void .ctor(RSA rsa); // 0x003485F4 + private static void .cctor(); // 0x003486BC + private void InvalidateCache(); // 0x0034874C + public byte[] GetBytes(); // 0x003492B4 + private uint RVAtoPosition(uint r, int sections, byte[] headers); // 0x003492E4 + internal StrongNameSignature StrongHash(Stream stream, StrongNameOptions options); // 0x0034938C + public byte[] Hash(string fileName); // 0x00349D78 + public bool Sign(string fileName); // 0x00349DE4 + public bool Verify(string fileName); // 0x0034A2FC + public bool Verify(Stream stream); // 0x0034A470 + public static bool IsAssemblyStrongnamed(string assemblyName); // 0x0034A720 + public static bool VerifySignature(byte[] publicKey, int algorithm, byte[] hash, byte[] signature); // 0x0034AE1C + private static bool Verify(RSA rsa, AssemblyHashAlgorithm algorithm, byte[] hash, byte[] signature); // 0x0034A634 +} + +// Namespace: +internal class StrongNameSignature // TypeDefIndex: 232 +{ + // Fields + private byte[] hash; // 0x08 + private byte[] signature; // 0x0C + private uint signaturePosition; // 0x10 + private uint signatureLength; // 0x14 + private uint metadataPosition; // 0x18 + private uint metadataLength; // 0x1C + private byte cliFlag; // 0x20 + private uint cliFlagPosition; // 0x24 + + // Properties + public byte[] Hash { get; set; } // 0x0034AF5C 0x0034AF64 + public byte[] Signature { get; set; } // 0x0034AF6C 0x0034AF74 + public uint MetadataPosition { get; set; } // 0x0034AF7C 0x0034AF84 + public uint MetadataLength { get; set; } // 0x0034AF8C 0x0034AF94 + public uint SignaturePosition { get; set; } // 0x0034AF9C 0x0034AFA4 + public uint SignatureLength { get; set; } // 0x0034AFAC 0x0034AFB4 + public byte CliFlag { get; set; } // 0x0034AFBC 0x0034AFC4 + public uint CliFlagPosition { get; set; } // 0x0034AFCC 0x0034AFD4 + + // Methods + public void .ctor(); // 0x00349D70 +} + +// Namespace: +internal enum StrongNameOptions // TypeDefIndex: 233 +{ + Metadata = 0, + Signature = 1 +} + +// Namespace: Mono.Security +internal class StrongNameManager // TypeDefIndex: 234 +{ + // Fields + private static Hashtable mappings; // 0x00 + private static Hashtable tokens; // 0x04 + + // Methods + public void .ctor(); // 0x0034AFDC + private static void .cctor(); // 0x0034AFE4 + public static void LoadConfig(string filename); // 0x0034AFE8 + private static void LoadMapping(SecurityElement mapping); // 0x0034B394 + private static void LoadVerificationSettings(SecurityElement settings); // 0x0034BB10 + public static byte[] GetMappedPublicKey(byte[] token); // 0x0034AAA4 + public static bool MustVerify(AssemblyName an); // 0x0034ABF4 + public override string ToString(); // 0x0034C640 +} + +// Namespace: +private class Element // TypeDefIndex: 235 +{ + // Fields + internal Hashtable assemblies; // 0x08 + + // Methods + public void .ctor(); // 0x0034D074 + public void .ctor(string assembly, string users); // 0x0034C540 + public string GetUsers(string assembly); // 0x0034C58C +} + +// Namespace: Mono.Security +internal enum UriPartial // TypeDefIndex: 236 +{ + Scheme = 0, + Authority = 1, + Path = 2 +} + +// Namespace: Mono.Security +internal class Uri // TypeDefIndex: 237 +{ + // Fields + private bool isUnixFilePath; // 0x08 + private string source; // 0x0C + private string scheme; // 0x10 + private string host; // 0x14 + private int port; // 0x18 + private string path; // 0x1C + private string query; // 0x20 + private string fragment; // 0x24 + private string userinfo; // 0x28 + private bool isUnc; // 0x2C + private bool isOpaquePart; // 0x2D + private string[] segments; // 0x30 + private bool userEscaped; // 0x34 + private string cachedAbsoluteUri; // 0x38 + private string cachedToString; // 0x3C + private string cachedLocalPath; // 0x40 + private int cachedHashCode; // 0x44 + private bool reduce; // 0x48 + private static readonly string hexUpperChars; // 0x00 + public static readonly string SchemeDelimiter; // 0x04 + public static readonly string UriSchemeFile; // 0x08 + public static readonly string UriSchemeFtp; // 0x0C + public static readonly string UriSchemeGopher; // 0x10 + public static readonly string UriSchemeHttp; // 0x14 + public static readonly string UriSchemeHttps; // 0x18 + public static readonly string UriSchemeMailto; // 0x1C + public static readonly string UriSchemeNews; // 0x20 + public static readonly string UriSchemeNntp; // 0x24 + private static UriScheme[] schemes; // 0x28 + private static Dictionary`2 <>f__switch$map17; // 0x2C + + // Properties + public string AbsolutePath { get; } // 0x0034E490 + public string AbsoluteUri { get; } // 0x0034E498 + public string Authority { get; } // 0x0034ED24 + public string Fragment { get; } // 0x0034F048 + public string Host { get; } // 0x0034F050 + public bool IsDefaultPort { get; } // 0x0034F058 + public bool IsFile { get; } // 0x0034F0F0 + public bool IsLoopback { get; } // 0x0034F1C0 + public bool IsUnc { get; } // 0x0034F318 + public string LocalPath { get; } // 0x0034F320 + public string PathAndQuery { get; } // 0x0034F768 + public int Port { get; } // 0x0034F7F8 + public string Query { get; } // 0x0034F800 + public string Scheme { get; } // 0x0034F808 + public string[] Segments { get; } // 0x0034F810 + public bool UserEscaped { get; } // 0x0034FCE4 + public string UserInfo { get; } // 0x0034FCEC + + // Methods + public void .ctor(string uriString); // 0x0034D0F0 + public void .ctor(string uriString, bool dontEscape); // 0x0034D0F8 + public void .ctor(string uriString, bool dontEscape, bool reduce); // 0x0034D2C0 + public void .ctor(Uri baseUri, string relativeUri); // 0x0034D3CC + public void .ctor(Uri baseUri, string relativeUri, bool dontEscape); // 0x0034D3E8 + private static void .cctor(); // 0x0034DFC4 + internal static bool IsIPv4Address(string name); // 0x0034FCF4 + internal static bool IsDomainAddress(string name); // 0x0034FF08 + public static bool CheckSchemeName(string schemeName); // 0x003500AC + public override bool Equals(object comparant); // 0x003501F8 + public override int GetHashCode(); // 0x003505AC + public string GetLeftPart(UriPartial part); // 0x0034E54C + public static int FromHex(char digit); // 0x0035073C + public static string HexEscape(char character); // 0x00350820 + public static char HexUnescape(string pattern, int index); // 0x00350A04 + public static bool IsHexDigit(char digit); // 0x00350D98 + public static bool IsHexEncoding(string pattern, int index); // 0x00350DD4 + public string MakeRelative(Uri toUri); // 0x00350F48 + public override string ToString(); // 0x0035134C + protected void Escape(); // 0x003516E8 + protected static string EscapeString(string str); // 0x0034DF30 + internal static string EscapeString(string str, bool escapeReserved, bool escapeHex, bool escapeBrackets); // 0x00351770 + protected void Parse(); // 0x0034D1FC + protected string Unescape(string str); // 0x0034F760 + internal string Unescape(string str, bool excludeSharp); // 0x003514F0 + private void ParseAsWindowsUNC(string uriString); // 0x00352DC8 + private void ParseAsWindowsAbsoluteFilePath(string uriString); // 0x00353060 + private void ParseAsUnixAbsoluteFilePath(string uriString); // 0x00353244 + private void Parse(string uriString); // 0x00351BBC + private static string Reduce(string path); // 0x00353898 + internal static string GetSchemeDelimiter(string scheme); // 0x00353DD8 + internal static int GetDefaultPort(string scheme); // 0x0034EE34 + private string GetOpaqueWiseSchemeDelimiter(); // 0x0035069C + protected bool IsBadFileSystemCharacter(char ch); // 0x00354018 + protected static bool IsExcludedCharacter(char ch); // 0x0035406C + private static bool IsPredefinedScheme(string scheme); // 0x00353474 + protected bool IsReservedCharacter(char ch); // 0x003540E0 +} + +// Namespace: +private struct UriScheme // TypeDefIndex: 238 +{ + // Fields + public string scheme; // 0x08 + public string delimiter; // 0x0C + public int defaultPort; // 0x10 + + // Methods + public void .ctor(string s, string d, int p); // 0x000A6310 +} + +// Namespace: Mono.Xml +internal class SecurityParser : SmallXmlParser, IContentHandler // TypeDefIndex: 239 +{ + // Fields + private SecurityElement root; // 0x38 + private SecurityElement current; // 0x3C + private Stack stack; // 0x40 + + // Methods + public void .ctor(); // 0x00265FD4 + public void LoadXml(string xml); // 0x0026614C + public SecurityElement ToXml(); // 0x00266490 + public void OnStartParsing(SmallXmlParser parser); // 0x00266498 + public void OnProcessingInstruction(string name, string text); // 0x0026649C + public void OnIgnorableWhitespace(string s); // 0x002664A0 + public void OnStartElement(string name, IAttrList attrs); // 0x002664A4 + public void OnEndElement(string name); // 0x00266834 + public void OnChars(string ch); // 0x002668E0 + public void OnEndParsing(SmallXmlParser parser); // 0x00266990 +} + +// Namespace: Mono.Xml +internal class DefaultHandler : IContentHandler // TypeDefIndex: 240 +{ + // Methods + public void .ctor(); // 0x00265FB0 + public void OnStartParsing(SmallXmlParser parser); // 0x00265FB8 + public void OnEndParsing(SmallXmlParser parser); // 0x00265FBC + public void OnStartElement(string name, IAttrList attrs); // 0x00265FC0 + public void OnEndElement(string name); // 0x00265FC4 + public void OnChars(string s); // 0x00265FC8 + public void OnIgnorableWhitespace(string s); // 0x00265FCC + public void OnProcessingInstruction(string name, string text); // 0x00265FD0 +} + +// Namespace: Mono.Xml +internal class SmallXmlParser // TypeDefIndex: 241 +{ + // Fields + private IContentHandler handler; // 0x08 + private TextReader reader; // 0x0C + private Stack elementNames; // 0x10 + private Stack xmlSpaces; // 0x14 + private string xmlSpace; // 0x18 + private StringBuilder buffer; // 0x1C + private char[] nameBuffer; // 0x20 + private bool isWhitespace; // 0x24 + private AttrListImpl attributes; // 0x28 + private int line; // 0x2C + private int column; // 0x30 + private bool resetColumn; // 0x34 + private static Dictionary`2 <>f__switch$map18; // 0x00 + + // Methods + public void .ctor(); // 0x0026604C + private Exception Error(string msg); // 0x00266A28 + private Exception UnexpectedEndError(); // 0x00266BB4 + private bool IsNameChar(char c, bool start); // 0x00266CE4 + private bool IsWhitespace(int c); // 0x00266DF0 + public void SkipWhitespaces(); // 0x00266E1C + private void HandleWhitespaces(); // 0x00266F08 + public void SkipWhitespaces(bool expected); // 0x00266E24 + private int Peek(); // 0x0026707C + private int Read(); // 0x00266FF8 + public void Expect(int c); // 0x002670B0 + private string ReadUntil(char until, bool handleReferences); // 0x002671E4 + public string ReadName(); // 0x0026772C + public void Parse(TextReader input, IContentHandler handler); // 0x00266200 + private void Cleanup(); // 0x0026854C + public void ReadContent(); // 0x00267964 + private void HandleBufferedContent(); // 0x002683A4 + private void ReadCharacters(); // 0x00268A60 + private void ReadReference(); // 0x00267330 + private int ReadCharacterReference(); // 0x00268AFC + private void ReadAttribute(AttrListImpl a); // 0x00268894 + private void ReadCDATASection(); // 0x00268670 + private void ReadComment(); // 0x002687CC +} + +// Namespace: +public interface IContentHandler // TypeDefIndex: 242 +{ + // Methods + void OnStartParsing(SmallXmlParser parser); + void OnEndParsing(SmallXmlParser parser); + void OnStartElement(string name, IAttrList attrs); + void OnEndElement(string name); + void OnProcessingInstruction(string name, string text); + void OnChars(string text); + void OnIgnorableWhitespace(string text); +} + +// Namespace: +public interface IAttrList // TypeDefIndex: 243 +{ + // Properties + int Length { get; } + bool IsEmpty { get; } + string[] Names { get; } + string[] Values { get; } + + // Methods + string GetName(int i); + string GetValue(int i); + string GetValue(string name); +} + +// Namespace: +private class AttrListImpl : IAttrList // TypeDefIndex: 244 +{ + // Fields + private ArrayList attrNames; // 0x08 + private ArrayList attrValues; // 0x0C + + // Properties + public int Length { get; } // 0x00268C90 + public bool IsEmpty { get; } // 0x00268CC4 + public string[] Names { get; } // 0x00269020 + public string[] Values { get; } // 0x00269130 + + // Methods + public void .ctor(); // 0x00266994 + public string GetName(int i); // 0x00268D08 + public string GetValue(int i); // 0x00268DBC + public string GetValue(string name); // 0x00268E70 + internal void Clear(); // 0x00268610 + internal void Add(string name, string value); // 0x00268C20 +} + +// Namespace: Mono.Xml +internal class SmallXmlParserException : SystemException // TypeDefIndex: 245 +{ + // Fields + private int line; // 0x34 + private int column; // 0x38 + + // Properties + public int Line { get; } // 0x00269240 + public int Column { get; } // 0x00269248 + + // Methods + public void .ctor(string msg, int line, int column); // 0x00266AB4 +} + +// Namespace: Mono +internal abstract class DataConverter // TypeDefIndex: 246 +{ + // Fields + private static DataConverter SwapConv; // 0x00 + private static DataConverter CopyConv; // 0x04 + public static readonly bool IsLittleEndian; // 0x08 + + // Properties + public static DataConverter LittleEndian { get; } // 0x003F9AA4 + public static DataConverter BigEndian { get; } // 0x003F9BB8 + public static DataConverter Native { get; } // 0x003F9CCC + + // Methods + protected void .ctor(); // 0x003F939C + private static void .cctor(); // 0x003F93A4 + public abstract double GetDouble(byte[] data, int index); + public abstract float GetFloat(byte[] data, int index); + public abstract long GetInt64(byte[] data, int index); + public abstract int GetInt32(byte[] data, int index); + public abstract short GetInt16(byte[] data, int index); + public abstract uint GetUInt32(byte[] data, int index); + public abstract ushort GetUInt16(byte[] data, int index); + public abstract ulong GetUInt64(byte[] data, int index); + public abstract void PutBytes(byte[] dest, int destIdx, double value); + public abstract void PutBytes(byte[] dest, int destIdx, float value); + public abstract void PutBytes(byte[] dest, int destIdx, int value); + public abstract void PutBytes(byte[] dest, int destIdx, long value); + public abstract void PutBytes(byte[] dest, int destIdx, short value); + public abstract void PutBytes(byte[] dest, int destIdx, ushort value); + public abstract void PutBytes(byte[] dest, int destIdx, uint value); + public abstract void PutBytes(byte[] dest, int destIdx, ulong value); + public byte[] GetBytes(double value); // 0x003F95AC + public byte[] GetBytes(float value); // 0x003F9650 + public byte[] GetBytes(int value); // 0x003F96EC + public byte[] GetBytes(long value); // 0x003F9788 + public byte[] GetBytes(short value); // 0x003F982C + public byte[] GetBytes(ushort value); // 0x003F98C8 + public byte[] GetBytes(uint value); // 0x003F9964 + public byte[] GetBytes(ulong value); // 0x003F9A00 + private static int Align(int current, int align); // 0x003F9D58 + public static byte[] Pack(string description, object[] args); // 0x003F9D78 + public static byte[] PackEnumerable(string description, IEnumerable args); // 0x003FADCC + private static bool PackOne(PackContext b, object oarg); // 0x003F9F7C + private static bool Prepare(byte[] buffer, int idx, int size, bool align); // 0x003FB46C + public static IList Unpack(string description, byte[] buffer, int startIndex); // 0x003FB550 + internal void Check(byte[] dest, int destIdx, int size); // 0x003FC91C +} + +// Namespace: +private class PackContext // TypeDefIndex: 247 +{ + // Fields + public byte[] buffer; // 0x08 + private int next; // 0x0C + public string description; // 0x10 + public int i; // 0x14 + public DataConverter conv; // 0x18 + public int repeat; // 0x1C + public int align; // 0x20 + + // Methods + public void .ctor(); // 0x003F9F74 + public void Add(byte[] group); // 0x003FB240 + public byte[] Get(); // 0x003FAD14 +} + +// Namespace: +private class CopyConverter : DataConverter // TypeDefIndex: 248 +{ + // Methods + public void .ctor(); // 0x003F9528 + public override double GetDouble(byte[] data, int index); // 0x003FCA24 + public override ulong GetUInt64(byte[] data, int index); // 0x003FCBD8 + public override long GetInt64(byte[] data, int index); // 0x003FCD88 + public override float GetFloat(byte[] data, int index); // 0x003FCF38 + public override int GetInt32(byte[] data, int index); // 0x003FD0E4 + public override uint GetUInt32(byte[] data, int index); // 0x003FD290 + public override short GetInt16(byte[] data, int index); // 0x003FD43C + public override ushort GetUInt16(byte[] data, int index); // 0x003FD5E8 + public override void PutBytes(byte[] dest, int destIdx, double value); // 0x003FD794 + public override void PutBytes(byte[] dest, int destIdx, float value); // 0x003FD7F8 + public override void PutBytes(byte[] dest, int destIdx, int value); // 0x003FD860 + public override void PutBytes(byte[] dest, int destIdx, uint value); // 0x003FD8BC + public override void PutBytes(byte[] dest, int destIdx, long value); // 0x003FD918 + public override void PutBytes(byte[] dest, int destIdx, ulong value); // 0x003FD978 + public override void PutBytes(byte[] dest, int destIdx, short value); // 0x003FD9D8 + public override void PutBytes(byte[] dest, int destIdx, ushort value); // 0x003FDA34 +} + +// Namespace: +private class SwapConverter : DataConverter // TypeDefIndex: 249 +{ + // Methods + public void .ctor(); // 0x003F94A4 + public override double GetDouble(byte[] data, int index); // 0x003FDA90 + public override ulong GetUInt64(byte[] data, int index); // 0x003FDC40 + public override long GetInt64(byte[] data, int index); // 0x003FDDEC + public override float GetFloat(byte[] data, int index); // 0x003FDF98 + public override int GetInt32(byte[] data, int index); // 0x003FE140 + public override uint GetUInt32(byte[] data, int index); // 0x003FE2E8 + public override short GetInt16(byte[] data, int index); // 0x003FE490 + public override ushort GetUInt16(byte[] data, int index); // 0x003FE638 + public override void PutBytes(byte[] dest, int destIdx, double value); // 0x003FE7E0 + public override void PutBytes(byte[] dest, int destIdx, float value); // 0x003FE854 + public override void PutBytes(byte[] dest, int destIdx, int value); // 0x003FE8CC + public override void PutBytes(byte[] dest, int destIdx, uint value); // 0x003FE944 + public override void PutBytes(byte[] dest, int destIdx, long value); // 0x003FE9BC + public override void PutBytes(byte[] dest, int destIdx, ulong value); // 0x003FEA44 + public override void PutBytes(byte[] dest, int destIdx, short value); // 0x003FEACC + public override void PutBytes(byte[] dest, int destIdx, ushort value); // 0x003FEB44 +} + +// Namespace: Mono +internal class Runtime // TypeDefIndex: 250 +{ + // Methods + public void .ctor(); // 0x00455428 + private static void mono_runtime_install_handlers(); // 0x00455430 + internal static void InstallSignalHandlers(); // 0x00455434 + internal static string GetDisplayName(); // 0x00455438 +} + +// Namespace: System.Collections.Generic +internal sealed class CollectionDebuggerView`1 // TypeDefIndex: 251 +{ + // Fields + private readonly ICollection`1 c; // 0x00 + + // Properties + public T[] Items { get; } + + // Methods + public void .ctor(ICollection`1 col); +} + +// Namespace: System.Collections.Generic +internal sealed class CollectionDebuggerView`2 // TypeDefIndex: 252 +{ + // Fields + private readonly ICollection`1> c; // 0x00 + + // Properties + public KeyValuePair`2[] Items { get; } + + // Methods + public void .ctor(ICollection`1> col); +} + +// Namespace: System.Collections.Generic +[Serializable] +public abstract class Comparer`1 : IComparer`1, IComparer // TypeDefIndex: 253 +{ + // Fields + private static readonly Comparer`1 _default; // 0x00 + + // Properties + public static Comparer`1 Default { get; } + + // Methods + protected void .ctor(); + private static void .cctor(); + private int System.Collections.IComparer.Compare(object x, object y); + public abstract int Compare(T x, T y); +} + +// Namespace: +private sealed class DefaultComparer : Comparer`1 // TypeDefIndex: 254 +{ + // Methods + public void .ctor(); + public override int Compare(T x, T y); +} + +// Namespace: System.Collections.Generic +[Serializable] +internal sealed class GenericComparer`1 : Comparer`1 // TypeDefIndex: 255 +{ + // Methods + public void .ctor(); + public override int Compare(T x, T y); +} + +// Namespace: System.Collections.Generic +internal struct Link // TypeDefIndex: 256 +{ + // Fields + public int HashCode; // 0x08 + public int Next; // 0x0C + +} + +// Namespace: System.Collections.Generic +[Serializable] +public class Dictionary`2 : IEnumerable, ISerializable, ICollection, ICollection`1>, IEnumerable`1>, IDictionary`2, IDictionary, IDeserializationCallback // TypeDefIndex: 257 +{ + // Fields + private const int INITIAL_SIZE = 10; // 0x00 + private const float DEFAULT_LOAD_FACTOR = 0.9; // 0x00 + private const int NO_SLOT = -1; // 0x00 + private const int HASH_FLAG = -2147483648; // 0x00 + private int[] table; // 0x00 + private Link[] linkSlots; // 0x00 + private T[] keySlots; // 0x00 + private T[] valueSlots; // 0x00 + private int touchedSlots; // 0x00 + private int emptySlot; // 0x00 + private int count; // 0x00 + private int threshold; // 0x00 + private IEqualityComparer`1 hcp; // 0x00 + private SerializationInfo serialization_info; // 0x00 + private int generation; // 0x00 + private static Transform`1 <>f__am$cacheB; // 0x00 + + // Properties + private ICollection`1 System.Collections.Generic.IDictionary.Keys { get; } + private ICollection`1 System.Collections.Generic.IDictionary.Values { get; } + private ICollection System.Collections.IDictionary.Keys { get; } + private ICollection System.Collections.IDictionary.Values { get; } + private bool System.Collections.IDictionary.IsFixedSize { get; } + private bool System.Collections.IDictionary.IsReadOnly { get; } + private object System.Collections.IDictionary.Item { get; set; } + private bool System.Collections.ICollection.IsSynchronized { get; } + private object System.Collections.ICollection.SyncRoot { get; } + private bool System.Collections.Generic.ICollection>.IsReadOnly { get; } + public int Count { get; } + public T Item { get; set; } + public IEqualityComparer`1 Comparer { get; } + public KeyCollection Keys { get; } + public ValueCollection Values { get; } + + // Methods + public void .ctor(); + public void .ctor(IEqualityComparer`1 comparer); + public void .ctor(IDictionary`2 dictionary); + public void .ctor(int capacity); + public void .ctor(IDictionary`2 dictionary, IEqualityComparer`1 comparer); + public void .ctor(int capacity, IEqualityComparer`1 comparer); + protected void .ctor(SerializationInfo info, StreamingContext context); + private void System.Collections.IDictionary.Add(object key, object value); + private bool System.Collections.IDictionary.Contains(object key); + private void System.Collections.IDictionary.Remove(object key); + private void System.Collections.Generic.ICollection>.Add(KeyValuePair`2 keyValuePair); + private bool System.Collections.Generic.ICollection>.Contains(KeyValuePair`2 keyValuePair); + private void System.Collections.Generic.ICollection>.CopyTo(KeyValuePair`2[] array, int index); + private bool System.Collections.Generic.ICollection>.Remove(KeyValuePair`2 keyValuePair); + private void System.Collections.ICollection.CopyTo(Array array, int index); + private IEnumerator System.Collections.IEnumerable.GetEnumerator(); + private IEnumerator`1> System.Collections.Generic.IEnumerable>.GetEnumerator(); + private IDictionaryEnumerator System.Collections.IDictionary.GetEnumerator(); + private void Init(int capacity, IEqualityComparer`1 hcp); + private void InitArrays(int size); + private void CopyToCheck(Array array, int index); + private void Do_CopyTo(T[] array, int index, Transform`1 transform); + private static KeyValuePair`2 make_pair(T key, T value); + private static T pick_key(T key, T value); + private static T pick_value(T key, T value); + private void CopyTo(KeyValuePair`2[] array, int index); + private void Do_ICollectionCopyTo(Array array, int index, Transform`1 transform); + private void Resize(); + public void Add(T key, T value); + public void Clear(); + public bool ContainsKey(T key); + public bool ContainsValue(T value); + public virtual void GetObjectData(SerializationInfo info, StreamingContext context); + public virtual void OnDeserialization(object sender); + public bool Remove(T key); + public bool TryGetValue(T key, out T value); + private T ToTKey(object key); + private T ToTValue(object value); + private bool ContainsKeyValuePair(KeyValuePair`2 pair); + public Enumerator GetEnumerator(); + private static DictionaryEntry m__0(T key, T value); +} + +// Namespace: +[Serializable] +private class ShimEnumerator : IEnumerator, IDictionaryEnumerator // TypeDefIndex: 258 +{ + // Fields + private Enumerator host_enumerator; // 0x00 + + // Properties + public DictionaryEntry Entry { get; } + public object Key { get; } + public object Value { get; } + public object Current { get; } + + // Methods + public void .ctor(Dictionary`2 host); + public void Dispose(); + public bool MoveNext(); + public void Reset(); +} + +// Namespace: +[Serializable] +public struct Enumerator : IEnumerator, IDisposable, IEnumerator`1>, IDictionaryEnumerator // TypeDefIndex: 259 +{ + // Fields + private Dictionary`2 dictionary; // 0x00 + private int next; // 0x00 + private int stamp; // 0x00 + internal KeyValuePair`2 current; // 0x00 + + // Properties + private object System.Collections.IEnumerator.Current { get; } + private DictionaryEntry System.Collections.IDictionaryEnumerator.Entry { get; } + private object System.Collections.IDictionaryEnumerator.Key { get; } + private object System.Collections.IDictionaryEnumerator.Value { get; } + public KeyValuePair`2 Current { get; } + internal T CurrentKey { get; } + internal T CurrentValue { get; } + + // Methods + internal void .ctor(Dictionary`2 dictionary); + private void System.Collections.IEnumerator.Reset(); + public bool MoveNext(); + internal void Reset(); + private void VerifyState(); + private void VerifyCurrent(); + public void Dispose(); +} + +// Namespace: +[Serializable] +public sealed class KeyCollection : IEnumerable, ICollection, ICollection`1, IEnumerable`1 // TypeDefIndex: 260 +{ + // Fields + private Dictionary`2 dictionary; // 0x00 + + // Properties + private bool System.Collections.Generic.ICollection.IsReadOnly { get; } + private bool System.Collections.ICollection.IsSynchronized { get; } + private object System.Collections.ICollection.SyncRoot { get; } + public int Count { get; } + + // Methods + public void .ctor(Dictionary`2 dictionary); + private void System.Collections.Generic.ICollection.Add(T item); + private void System.Collections.Generic.ICollection.Clear(); + private bool System.Collections.Generic.ICollection.Contains(T item); + private bool System.Collections.Generic.ICollection.Remove(T item); + private IEnumerator`1 System.Collections.Generic.IEnumerable.GetEnumerator(); + private void System.Collections.ICollection.CopyTo(Array array, int index); + private IEnumerator System.Collections.IEnumerable.GetEnumerator(); + public void CopyTo(T[] array, int index); + public Enumerator GetEnumerator(); +} + +// Namespace: +[Serializable] +public struct Enumerator : IEnumerator, IDisposable, IEnumerator`1 // TypeDefIndex: 261 +{ + // Fields + private Enumerator host_enumerator; // 0x00 + + // Properties + private object System.Collections.IEnumerator.Current { get; } + public T Current { get; } + + // Methods + internal void .ctor(Dictionary`2 host); + private void System.Collections.IEnumerator.Reset(); + public void Dispose(); + public bool MoveNext(); +} + +// Namespace: +[Serializable] +public sealed class ValueCollection : IEnumerable, ICollection, ICollection`1, IEnumerable`1 // TypeDefIndex: 262 +{ + // Fields + private Dictionary`2 dictionary; // 0x00 + + // Properties + private bool System.Collections.Generic.ICollection.IsReadOnly { get; } + private bool System.Collections.ICollection.IsSynchronized { get; } + private object System.Collections.ICollection.SyncRoot { get; } + public int Count { get; } + + // Methods + public void .ctor(Dictionary`2 dictionary); + private void System.Collections.Generic.ICollection.Add(T item); + private void System.Collections.Generic.ICollection.Clear(); + private bool System.Collections.Generic.ICollection.Contains(T item); + private bool System.Collections.Generic.ICollection.Remove(T item); + private IEnumerator`1 System.Collections.Generic.IEnumerable.GetEnumerator(); + private void System.Collections.ICollection.CopyTo(Array array, int index); + private IEnumerator System.Collections.IEnumerable.GetEnumerator(); + public void CopyTo(T[] array, int index); + public Enumerator GetEnumerator(); +} + +// Namespace: +[Serializable] +public struct Enumerator : IEnumerator, IDisposable, IEnumerator`1 // TypeDefIndex: 263 +{ + // Fields + private Enumerator host_enumerator; // 0x00 + + // Properties + private object System.Collections.IEnumerator.Current { get; } + public T Current { get; } + + // Methods + internal void .ctor(Dictionary`2 host); + private void System.Collections.IEnumerator.Reset(); + public void Dispose(); + public bool MoveNext(); +} + +// Namespace: +private delegate T Transform`1(T key, T value); // TypeDefIndex: 264; 0x00000000 + +// Namespace: System.Collections.Generic +[Serializable] +public abstract class EqualityComparer`1 : IEqualityComparer`1, IEqualityComparer // TypeDefIndex: 265 +{ + // Fields + private static readonly EqualityComparer`1 _default; // 0x00 + + // Properties + public static EqualityComparer`1 Default { get; } + + // Methods + protected void .ctor(); + private static void .cctor(); + private int System.Collections.IEqualityComparer.GetHashCode(object obj); + private bool System.Collections.IEqualityComparer.Equals(object x, object y); + public abstract int GetHashCode(T obj); + public abstract bool Equals(T x, T y); +} + +// Namespace: +[Serializable] +private sealed class DefaultComparer : EqualityComparer`1 // TypeDefIndex: 266 +{ + // Methods + public void .ctor(); + public override int GetHashCode(T obj); + public override bool Equals(T x, T y); +} + +// Namespace: System.Collections.Generic +[Serializable] +internal sealed class GenericEqualityComparer`1 : EqualityComparer`1 // TypeDefIndex: 267 +{ + // Methods + public void .ctor(); + public override int GetHashCode(T obj); + public override bool Equals(T x, T y); +} + +// Namespace: System.Collections.Generic +public interface IComparer`1 // TypeDefIndex: 268 +{ + // Methods + int Compare(T x, T y); +} + +// Namespace: System.Collections.Generic +public interface IDictionary`2 : IEnumerable, ICollection`1>, IEnumerable`1> // TypeDefIndex: 269 +{ + // Properties + T Item { get; set; } + ICollection`1 Keys { get; } + ICollection`1 Values { get; } + + // Methods + void Add(T key, T value); + bool ContainsKey(T key); + bool Remove(T key); + bool TryGetValue(T key, out T value); +} + +// Namespace: System.Collections.Generic +public interface IEqualityComparer`1 // TypeDefIndex: 270 +{ + // Methods + bool Equals(T x, T y); + int GetHashCode(T obj); +} + +// Namespace: System.Collections.Generic +[Serializable] +public class KeyNotFoundException : SystemException, ISerializable // TypeDefIndex: 271 +{ + // Methods + public void .ctor(); // 0x00388F60 + public void .ctor(string message); // 0x00388FC8 + public void .ctor(string message, Exception innerException); // 0x00388FD0 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x00388FD8 +} + +// Namespace: System.Collections.Generic +[Serializable] +public struct KeyValuePair`2 // TypeDefIndex: 272 +{ + // Fields + private T key; // 0x00 + private T value; // 0x00 + + // Properties + public T Key { get; set; } + public T Value { get; set; } + + // Methods + public void .ctor(T key, T value); + public override string ToString(); +} + +// Namespace: System.Collections.Generic +[Serializable] +public class List`1 : IEnumerable, ICollection, IList, ICollection`1, IEnumerable`1, IList`1 // TypeDefIndex: 273 +{ + // Fields + private const int DefaultCapacity = 4; // 0x00 + private T[] _items; // 0x00 + private int _size; // 0x00 + private int _version; // 0x00 + private static readonly T[] EmptyArray; // 0x00 + + // Properties + private bool System.Collections.Generic.ICollection.IsReadOnly { get; } + private bool System.Collections.ICollection.IsSynchronized { get; } + private object System.Collections.ICollection.SyncRoot { get; } + private bool System.Collections.IList.IsFixedSize { get; } + private bool System.Collections.IList.IsReadOnly { get; } + private object System.Collections.IList.Item { get; set; } + public int Capacity { get; set; } + public int Count { get; } + public T Item { get; set; } + + // Methods + public void .ctor(); + public void .ctor(IEnumerable`1 collection); + public void .ctor(int capacity); + internal void .ctor(T[] data, int size); + private static void .cctor(); + private IEnumerator`1 System.Collections.Generic.IEnumerable.GetEnumerator(); + private void System.Collections.ICollection.CopyTo(Array array, int arrayIndex); + private IEnumerator System.Collections.IEnumerable.GetEnumerator(); + private int System.Collections.IList.Add(object item); + private bool System.Collections.IList.Contains(object item); + private int System.Collections.IList.IndexOf(object item); + private void System.Collections.IList.Insert(int index, object item); + private void System.Collections.IList.Remove(object item); + public void Add(T item); + private void GrowIfNeeded(int newCount); + private void CheckRange(int idx, int count); + private void AddCollection(ICollection`1 collection); + private void AddEnumerable(IEnumerable`1 enumerable); + public void AddRange(IEnumerable`1 collection); + public ReadOnlyCollection`1 AsReadOnly(); + public int BinarySearch(T item); + public int BinarySearch(T item, IComparer`1 comparer); + public int BinarySearch(int index, int count, T item, IComparer`1 comparer); + public void Clear(); + public bool Contains(T item); + public List`1 ConvertAll(Converter`2 converter); + public void CopyTo(T[] array); + public void CopyTo(T[] array, int arrayIndex); + public void CopyTo(int index, T[] array, int arrayIndex, int count); + public bool Exists(Predicate`1 match); + public T Find(Predicate`1 match); + private static void CheckMatch(Predicate`1 match); + public List`1 FindAll(Predicate`1 match); + private List`1 FindAllStackBits(Predicate`1 match); + private List`1 FindAllList(Predicate`1 match); + public int FindIndex(Predicate`1 match); + public int FindIndex(int startIndex, Predicate`1 match); + public int FindIndex(int startIndex, int count, Predicate`1 match); + private int GetIndex(int startIndex, int count, Predicate`1 match); + public T FindLast(Predicate`1 match); + public int FindLastIndex(Predicate`1 match); + public int FindLastIndex(int startIndex, Predicate`1 match); + public int FindLastIndex(int startIndex, int count, Predicate`1 match); + private int GetLastIndex(int startIndex, int count, Predicate`1 match); + public void ForEach(Action`1 action); + public Enumerator GetEnumerator(); + public List`1 GetRange(int index, int count); + public int IndexOf(T item); + public int IndexOf(T item, int index); + public int IndexOf(T item, int index, int count); + private void Shift(int start, int delta); + private void CheckIndex(int index); + public void Insert(int index, T item); + private void CheckCollection(IEnumerable`1 collection); + public void InsertRange(int index, IEnumerable`1 collection); + private void InsertCollection(int index, ICollection`1 collection); + private void InsertEnumeration(int index, IEnumerable`1 enumerable); + public int LastIndexOf(T item); + public int LastIndexOf(T item, int index); + public int LastIndexOf(T item, int index, int count); + public bool Remove(T item); + public int RemoveAll(Predicate`1 match); + public void RemoveAt(int index); + public void RemoveRange(int index, int count); + public void Reverse(); + public void Reverse(int index, int count); + public void Sort(); + public void Sort(IComparer`1 comparer); + public void Sort(Comparison`1 comparison); + public void Sort(int index, int count, IComparer`1 comparer); + public T[] ToArray(); + public void TrimExcess(); + public bool TrueForAll(Predicate`1 match); +} + +// Namespace: +[Serializable] +public struct Enumerator : IEnumerator, IDisposable, IEnumerator`1 // TypeDefIndex: 274 +{ + // Fields + private List`1 l; // 0x00 + private int next; // 0x00 + private int ver; // 0x00 + private T current; // 0x00 + + // Properties + private object System.Collections.IEnumerator.Current { get; } + public T Current { get; } + + // Methods + internal void .ctor(List`1 l); + private void System.Collections.IEnumerator.Reset(); + public void Dispose(); + private void VerifyState(); + public bool MoveNext(); +} + +// Namespace: System.Collections.ObjectModel +[Serializable] +public class Collection`1 : IEnumerable, ICollection, IList, ICollection`1, IList`1, IEnumerable`1 // TypeDefIndex: 275 +{ + // Fields + private IList`1 list; // 0x00 + private object syncRoot; // 0x00 + + // Properties + private bool System.Collections.Generic.ICollection.IsReadOnly { get; } + private bool System.Collections.ICollection.IsSynchronized { get; } + private object System.Collections.ICollection.SyncRoot { get; } + private bool System.Collections.IList.IsFixedSize { get; } + private bool System.Collections.IList.IsReadOnly { get; } + private object System.Collections.IList.Item { get; set; } + protected IList`1 Items { get; } + public int Count { get; } + public T Item { get; set; } + + // Methods + public void .ctor(); + public void .ctor(IList`1 list); + private void System.Collections.ICollection.CopyTo(Array array, int index); + private IEnumerator System.Collections.IEnumerable.GetEnumerator(); + private int System.Collections.IList.Add(object value); + private bool System.Collections.IList.Contains(object value); + private int System.Collections.IList.IndexOf(object value); + private void System.Collections.IList.Insert(int index, object value); + private void System.Collections.IList.Remove(object value); + public void Add(T item); + public void Clear(); + protected virtual void ClearItems(); + public bool Contains(T item); + public void CopyTo(T[] array, int index); + public IEnumerator`1 GetEnumerator(); + public int IndexOf(T item); + public void Insert(int index, T item); + protected virtual void InsertItem(int index, T item); + public bool Remove(T item); + public void RemoveAt(int index); + protected virtual void RemoveItem(int index); + protected virtual void SetItem(int index, T item); + internal static bool IsValidItem(object item); + internal static T ConvertItem(object item); + internal static void CheckWritable(IList`1 list); + internal static bool IsSynchronized(IList`1 list); + internal static bool IsFixedSize(IList`1 list); +} + +// Namespace: System.Collections.ObjectModel +[Serializable] +public abstract class KeyedCollection`2 : Collection`1 // TypeDefIndex: 276 +{ + // Fields + private Dictionary`2 dictionary; // 0x00 + private IEqualityComparer`1 comparer; // 0x00 + private int dictionaryCreationThreshold; // 0x00 + + // Properties + public IEqualityComparer`1 Comparer { get; } + public T Item { get; } + protected IDictionary`2 Dictionary { get; } + + // Methods + protected void .ctor(); + protected void .ctor(IEqualityComparer`1 comparer); + protected void .ctor(IEqualityComparer`1 comparer, int dictionaryCreationThreshold); + public bool Contains(T key); + private int IndexOfKey(T key); + public bool Remove(T key); + protected void ChangeItemKey(T item, T newKey); + protected override void ClearItems(); + protected abstract T GetKeyForItem(T item); + protected override void InsertItem(int index, T item); + protected override void RemoveItem(int index); + protected override void SetItem(int index, T item); +} + +// Namespace: System.Collections.ObjectModel +[Serializable] +public class ReadOnlyCollection`1 : IEnumerable, ICollection, IList, ICollection`1, IList`1, IEnumerable`1 // TypeDefIndex: 277 +{ + // Fields + private IList`1 list; // 0x00 + + // Properties + private T System.Collections.Generic.IList.Item { get; set; } + private bool System.Collections.Generic.ICollection.IsReadOnly { get; } + private bool System.Collections.ICollection.IsSynchronized { get; } + private object System.Collections.ICollection.SyncRoot { get; } + private bool System.Collections.IList.IsFixedSize { get; } + private bool System.Collections.IList.IsReadOnly { get; } + private object System.Collections.IList.Item { get; set; } + public int Count { get; } + protected IList`1 Items { get; } + public T Item { get; } + + // Methods + public void .ctor(IList`1 list); + private void System.Collections.Generic.ICollection.Add(T item); + private void System.Collections.Generic.ICollection.Clear(); + private void System.Collections.Generic.IList.Insert(int index, T item); + private bool System.Collections.Generic.ICollection.Remove(T item); + private void System.Collections.Generic.IList.RemoveAt(int index); + private void System.Collections.ICollection.CopyTo(Array array, int index); + private IEnumerator System.Collections.IEnumerable.GetEnumerator(); + private int System.Collections.IList.Add(object value); + private void System.Collections.IList.Clear(); + private bool System.Collections.IList.Contains(object value); + private int System.Collections.IList.IndexOf(object value); + private void System.Collections.IList.Insert(int index, object value); + private void System.Collections.IList.Remove(object value); + private void System.Collections.IList.RemoveAt(int index); + public bool Contains(T value); + public void CopyTo(T[] array, int index); + public IEnumerator`1 GetEnumerator(); + public int IndexOf(T value); +} + +// Namespace: System.Collections +[Serializable] +public class ArrayList : IEnumerable, ICloneable, ICollection, IList // TypeDefIndex: 278 +{ + // Fields + private const int DefaultInitialCapacity = 4; // 0x00 + private int _size; // 0x08 + private object[] _items; // 0x0C + private int _version; // 0x10 + private static readonly object[] EmptyArray; // 0x00 + + // Properties + public virtual object Item { get; set; } // 0x004FDD7C 0x004FDE94 + public virtual int Count { get; } // 0x004FDFEC + public virtual int Capacity { get; set; } // 0x004FDFF4 0x004FE018 + public virtual bool IsFixedSize { get; } // 0x004FE130 + public virtual bool IsReadOnly { get; } // 0x004FE138 + public virtual bool IsSynchronized { get; } // 0x004FE140 + public virtual object SyncRoot { get; } // 0x004FE148 + + // Methods + public void .ctor(); // 0x004FD764 + public void .ctor(ICollection c); // 0x004FD804 + public void .ctor(int capacity); // 0x004FD9E4 + private void .ctor(int initialCapacity, bool forceZeroSize); // 0x004FDB98 + private void .ctor(object[] array, int index, int count); // 0x004FDC58 + private static void .cctor(); // 0x004FDD04 + private void EnsureCapacity(int count); // 0x004FE14C + private void Shift(int index, int count); // 0x004FE248 + public virtual int Add(object value); // 0x004FE3F0 + public virtual void Clear(); // 0x004FE4B8 + public virtual bool Contains(object item); // 0x004FE4EC + internal virtual bool Contains(object value, int startIndex, int count); // 0x004FE52C + public virtual int IndexOf(object value); // 0x004FE564 + public virtual int IndexOf(object value, int startIndex); // 0x004FE578 + public virtual int IndexOf(object value, int startIndex, int count); // 0x004FE5A8 + public virtual int LastIndexOf(object value); // 0x004FE79C + public virtual int LastIndexOf(object value, int startIndex); // 0x004FE7B4 + public virtual int LastIndexOf(object value, int startIndex, int count); // 0x004FE7E0 + public virtual void Insert(int index, object value); // 0x004FE868 + public virtual void InsertRange(int index, ICollection c); // 0x004FE9DC + public virtual void Remove(object obj); // 0x004FEDCC + public virtual void RemoveAt(int index); // 0x004FEE1C + public virtual void RemoveRange(int index, int count); // 0x004FEF24 + public virtual void Reverse(); // 0x004FF19C + public virtual void Reverse(int index, int count); // 0x004FF1C8 + public virtual void CopyTo(Array array); // 0x004FF278 + public virtual void CopyTo(Array array, int arrayIndex); // 0x004FF284 + public virtual void CopyTo(int index, Array array, int arrayIndex, int count); // 0x004FF2C4 + public virtual IEnumerator GetEnumerator(); // 0x004FF404 + public virtual IEnumerator GetEnumerator(int index, int count); // 0x004FF53C + public virtual void AddRange(ICollection c); // 0x004FF65C + public virtual int BinarySearch(object value); // 0x004FF674 + public virtual int BinarySearch(object value, IComparer comparer); // 0x004FF7E4 + public virtual int BinarySearch(int index, int count, object value, IComparer comparer); // 0x004FF948 + public virtual ArrayList GetRange(int index, int count); // 0x004FFAB4 + public virtual void SetRange(int index, ICollection c); // 0x004FFD0C + public virtual void TrimToSize(); // 0x004FFF2C + public virtual void Sort(); // 0x004FFFE4 + public virtual void Sort(IComparer comparer); // 0x0050005C + public virtual void Sort(int index, int count, IComparer comparer); // 0x00500088 + public virtual object[] ToArray(); // 0x00500140 + public virtual Array ToArray(Type type); // 0x005001C4 + public virtual object Clone(); // 0x00500204 + internal static void CheckRange(int index, int count, int listCount); // 0x004FEFE0 + internal static void ThrowNewArgumentOutOfRangeException(string name, object actual, string message); // 0x004FDAEC + public static ArrayList Adapter(IList list); // 0x0050028C + public static ArrayList Synchronized(ArrayList list); // 0x004FFC18 + public static IList Synchronized(IList list); // 0x0050051C + public static ArrayList ReadOnly(ArrayList list); // 0x00500760 + public static IList ReadOnly(IList list); // 0x00500858 + public static ArrayList FixedSize(ArrayList list); // 0x005009D4 + public static IList FixedSize(IList list); // 0x00500ACC + public static ArrayList Repeat(object value, int count); // 0x00500C48 +} + +// Namespace: +private sealed class ArrayListEnumerator : IEnumerator, ICloneable // TypeDefIndex: 279 +{ + // Fields + private int m_Pos; // 0x08 + private int m_Index; // 0x0C + private int m_Count; // 0x10 + private object m_Current; // 0x14 + private ArrayList m_List; // 0x18 + private int m_ExpectedStateChanges; // 0x1C + + // Properties + public object Current { get; } // 0x00506128 + + // Methods + public void .ctor(ArrayList list); // 0x005060CC + public void .ctor(ArrayList list, int index, int count); // 0x004FF604 + public object Clone(); // 0x00506120 + public bool MoveNext(); // 0x005061E0 + public void Reset(); // 0x005062FC +} + +// Namespace: +private sealed class SimpleEnumerator : IEnumerator, ICloneable // TypeDefIndex: 280 +{ + // Fields + private ArrayList list; // 0x08 + private int index; // 0x0C + private int version; // 0x10 + private object currentElement; // 0x14 + private static object endFlag; // 0x00 + + // Properties + public object Current { get; } // 0x0050AAFC + + // Methods + public void .ctor(ArrayList list); // 0x004FF474 + private static void .cctor(); // 0x0050A8E8 + public object Clone(); // 0x0050A968 + public bool MoveNext(); // 0x0050A970 + public void Reset(); // 0x0050AC28 +} + +// Namespace: +[Serializable] +private sealed class ArrayListAdapter : ArrayList // TypeDefIndex: 281 +{ + // Fields + private IList m_Adaptee; // 0x14 + + // Properties + public override object Item { get; set; } // 0x00500CF4 0x00500DD4 + public override int Count { get; } // 0x00500EBC + public override int Capacity { get; set; } // 0x00500F94 0x0050106C + public override bool IsFixedSize { get; } // 0x005011A4 + public override bool IsReadOnly { get; } // 0x0050127C + public override object SyncRoot { get; } // 0x00501354 + public override bool IsSynchronized { get; } // 0x00503D28 + + // Methods + public void .ctor(IList adaptee); // 0x00500450 + public override int Add(object value); // 0x0050142C + public override void Clear(); // 0x0050150C + public override bool Contains(object value); // 0x005015E4 + public override int IndexOf(object value); // 0x005016C4 + public override int IndexOf(object value, int startIndex); // 0x005017A4 + public override int IndexOf(object value, int startIndex, int count); // 0x005018A0 + public override int LastIndexOf(object value); // 0x00501D24 + public override int LastIndexOf(object value, int startIndex); // 0x00501E1C + public override int LastIndexOf(object value, int startIndex, int count); // 0x00501E38 + public override void Insert(int index, object value); // 0x0050219C + public override void InsertRange(int index, ICollection c); // 0x00502284 + public override void Remove(object value); // 0x0050279C + public override void RemoveAt(int index); // 0x0050287C + public override void RemoveRange(int index, int count); // 0x0050295C + public override void Reverse(); // 0x00502B2C + public override void Reverse(int index, int count); // 0x00502C14 + public override void SetRange(int index, ICollection c); // 0x00502FFC + public override void CopyTo(Array array); // 0x00503568 + public override void CopyTo(Array array, int index); // 0x0050364C + public override void CopyTo(int index, Array array, int arrayIndex, int count); // 0x00503734 + public override IEnumerator GetEnumerator(); // 0x00503E00 + public override IEnumerator GetEnumerator(int index, int count); // 0x00503ED8 + public override void AddRange(ICollection c); // 0x00504110 + public override int BinarySearch(object value); // 0x005044B0 + public override int BinarySearch(object value, IComparer comparer); // 0x005044B8 + public override int BinarySearch(int index, int count, object value, IComparer comparer); // 0x005045B8 + public override object Clone(); // 0x005048C4 + public override ArrayList GetRange(int index, int count); // 0x00504938 + public override void TrimToSize(); // 0x00504A8C + public override void Sort(); // 0x00504A90 + public override void Sort(IComparer comparer); // 0x00504B28 + public override void Sort(int index, int count, IComparer comparer); // 0x00504C20 + private static void Swap(IList list, int x, int y); // 0x005057BC + internal static void QuickSort(IList list, int left, int right, IComparer comparer); // 0x00504DB8 + public override object[] ToArray(); // 0x00505A58 + public override Array ToArray(Type elementType); // 0x00505BE4 +} + +// Namespace: +private sealed class EnumeratorWithRange : IEnumerator, ICloneable // TypeDefIndex: 282 +{ + // Fields + private int m_StartIndex; // 0x08 + private int m_Count; // 0x0C + private int m_MaxCount; // 0x10 + private IEnumerator m_Enumerator; // 0x14 + + // Properties + public object Current { get; } // 0x00505EFC + + // Methods + public void .ctor(IEnumerator enumerator, int index, int count); // 0x005040D0 + public object Clone(); // 0x00505EF4 + public bool MoveNext(); // 0x00505FD4 + public void Reset(); // 0x00505D68 +} + +// Namespace: +[Serializable] +private class ArrayListWrapper : ArrayList // TypeDefIndex: 283 +{ + // Fields + protected ArrayList m_InnerArrayList; // 0x14 + + // Properties + public override object Item { get; set; } // 0x0050639C 0x005063D8 + public override int Count { get; } // 0x0050641C + public override int Capacity { get; set; } // 0x00506450 0x00506484 + public override bool IsFixedSize { get; } // 0x005064C0 + public override bool IsReadOnly { get; } // 0x005064F4 + public override bool IsSynchronized { get; } // 0x00506528 + public override object SyncRoot { get; } // 0x0050655C + + // Methods + public void .ctor(ArrayList innerArrayList); // 0x00506314 + public override int Add(object value); // 0x00506590 + public override void Clear(); // 0x005065CC + public override bool Contains(object value); // 0x00506600 + public override int IndexOf(object value); // 0x0050663C + public override int IndexOf(object value, int startIndex); // 0x00506678 + public override int IndexOf(object value, int startIndex, int count); // 0x005066BC + public override int LastIndexOf(object value); // 0x00506714 + public override int LastIndexOf(object value, int startIndex); // 0x00506750 + public override int LastIndexOf(object value, int startIndex, int count); // 0x00506794 + public override void Insert(int index, object value); // 0x005067EC + public override void InsertRange(int index, ICollection c); // 0x00506830 + public override void Remove(object value); // 0x00506874 + public override void RemoveAt(int index); // 0x005068B0 + public override void RemoveRange(int index, int count); // 0x005068EC + public override void Reverse(); // 0x00506930 + public override void Reverse(int index, int count); // 0x00506964 + public override void SetRange(int index, ICollection c); // 0x005069A8 + public override void CopyTo(Array array); // 0x005069EC + public override void CopyTo(Array array, int index); // 0x00506A28 + public override void CopyTo(int index, Array array, int arrayIndex, int count); // 0x00506A6C + public override IEnumerator GetEnumerator(); // 0x00506ACC + public override IEnumerator GetEnumerator(int index, int count); // 0x00506B00 + public override void AddRange(ICollection c); // 0x00506B44 + public override int BinarySearch(object value); // 0x00506B80 + public override int BinarySearch(object value, IComparer comparer); // 0x00506BBC + public override int BinarySearch(int index, int count, object value, IComparer comparer); // 0x00506C00 + public override object Clone(); // 0x00506C60 + public override ArrayList GetRange(int index, int count); // 0x00506C94 + public override void TrimToSize(); // 0x00506CD8 + public override void Sort(); // 0x00506D0C + public override void Sort(IComparer comparer); // 0x00506D40 + public override void Sort(int index, int count, IComparer comparer); // 0x00506D7C + public override object[] ToArray(); // 0x00506DD4 + public override Array ToArray(Type elementType); // 0x00506E08 +} + +// Namespace: +[Serializable] +private sealed class SynchronizedArrayListWrapper : ArrayListWrapper // TypeDefIndex: 284 +{ + // Fields + private object m_SyncRoot; // 0x18 + + // Properties + public override object Item { get; set; } // 0x0050AD40 0x0050ADF0 + public override int Count { get; } // 0x0050AE9C + public override int Capacity { get; set; } // 0x0050AF44 0x0050AFEC + public override bool IsFixedSize { get; } // 0x0050B08C + public override bool IsReadOnly { get; } // 0x0050B134 + public override bool IsSynchronized { get; } // 0x0050B1DC + public override object SyncRoot { get; } // 0x0050B1E4 + + // Methods + internal void .ctor(ArrayList innerArrayList); // 0x005004DC + public override int Add(object value); // 0x0050B1EC + public override void Clear(); // 0x0050B29C + public override bool Contains(object value); // 0x0050B334 + public override int IndexOf(object value); // 0x0050B3E4 + public override int IndexOf(object value, int startIndex); // 0x0050B494 + public override int IndexOf(object value, int startIndex, int count); // 0x0050B54C + public override int LastIndexOf(object value); // 0x0050B618 + public override int LastIndexOf(object value, int startIndex); // 0x0050B6C8 + public override int LastIndexOf(object value, int startIndex, int count); // 0x0050B780 + public override void Insert(int index, object value); // 0x0050B84C + public override void InsertRange(int index, ICollection c); // 0x0050B8F8 + public override void Remove(object value); // 0x0050B9A4 + public override void RemoveAt(int index); // 0x0050BA44 + public override void RemoveRange(int index, int count); // 0x0050BAE4 + public override void Reverse(); // 0x0050BB90 + public override void Reverse(int index, int count); // 0x0050BC28 + public override void CopyTo(Array array); // 0x0050BCD4 + public override void CopyTo(Array array, int index); // 0x0050BD74 + public override void CopyTo(int index, Array array, int arrayIndex, int count); // 0x0050BE20 + public override IEnumerator GetEnumerator(); // 0x0050BEF0 + public override IEnumerator GetEnumerator(int index, int count); // 0x0050BF98 + public override void AddRange(ICollection c); // 0x0050C050 + public override int BinarySearch(object value); // 0x0050C0F0 + public override int BinarySearch(object value, IComparer comparer); // 0x0050C1A0 + public override int BinarySearch(int index, int count, object value, IComparer comparer); // 0x0050C258 + public override object Clone(); // 0x0050C328 + public override ArrayList GetRange(int index, int count); // 0x0050C3D0 + public override void TrimToSize(); // 0x0050C488 + public override void Sort(); // 0x0050C520 + public override void Sort(IComparer comparer); // 0x0050C5B8 + public override void Sort(int index, int count, IComparer comparer); // 0x0050C658 + public override object[] ToArray(); // 0x0050C720 + public override Array ToArray(Type elementType); // 0x0050C7C8 +} + +// Namespace: +[Serializable] +private class FixedSizeArrayListWrapper : ArrayListWrapper // TypeDefIndex: 285 +{ + // Properties + protected virtual string ErrorMessage { get; } // 0x00506E44 + public override int Capacity { get; set; } // 0x00506EA0 0x00506ED4 + public override bool IsFixedSize { get; } // 0x00506F7C + + // Methods + public void .ctor(ArrayList innerList); // 0x00500AC8 + public override int Add(object value); // 0x00506F84 + public override void AddRange(ICollection c); // 0x0050702C + public override void Clear(); // 0x005070D4 + public override void Insert(int index, object value); // 0x0050717C + public override void InsertRange(int index, ICollection c); // 0x00507224 + public override void Remove(object value); // 0x005072CC + public override void RemoveAt(int index); // 0x00507374 + public override void RemoveRange(int index, int count); // 0x0050741C + public override void TrimToSize(); // 0x005074C4 +} + +// Namespace: +[Serializable] +private sealed class ReadOnlyArrayListWrapper : FixedSizeArrayListWrapper // TypeDefIndex: 286 +{ + // Properties + protected override string ErrorMessage { get; } // 0x0050A264 + public override bool IsReadOnly { get; } // 0x0050A2C0 + public override object Item { get; set; } // 0x0050A2C8 0x0050A304 + + // Methods + public void .ctor(ArrayList innerArrayList); // 0x00500854 + public override void Reverse(); // 0x0050A398 + public override void Reverse(int index, int count); // 0x0050A42C + public override void SetRange(int index, ICollection c); // 0x0050A4C0 + public override void Sort(); // 0x0050A554 + public override void Sort(IComparer comparer); // 0x0050A5E8 + public override void Sort(int index, int count, IComparer comparer); // 0x0050A67C +} + +// Namespace: +[Serializable] +private sealed class RangedArrayList : ArrayListWrapper // TypeDefIndex: 287 +{ + // Fields + private int m_InnerIndex; // 0x18 + private int m_InnerCount; // 0x1C + private int m_InnerStateChanges; // 0x20 + + // Properties + public override bool IsSynchronized { get; } // 0x00508718 + public override object Item { get; set; } // 0x00508720 0x00508808 + public override int Count { get; } // 0x005088F8 + public override int Capacity { get; set; } // 0x005089D4 0x00508A08 + + // Methods + public void .ctor(ArrayList innerList, int index, int count); // 0x004FFBD8 + private void VerifyStateChanges(); // 0x00508910 + public override int Add(object value); // 0x00508AA4 + public override void Clear(); // 0x00508B1C + public override bool Contains(object value); // 0x00508B8C + public override int IndexOf(object value); // 0x00508BE4 + public override int IndexOf(object value, int startIndex); // 0x00508C04 + public override int IndexOf(object value, int startIndex, int count); // 0x00508C24 + public override int LastIndexOf(object value); // 0x00508E3C + public override int LastIndexOf(object value, int startIndex); // 0x00508E5C + public override int LastIndexOf(object value, int startIndex, int count); // 0x00508E78 + public override void Insert(int index, object value); // 0x00509014 + public override void InsertRange(int index, ICollection c); // 0x0050915C + public override void Remove(object value); // 0x0050932C + public override void RemoveAt(int index); // 0x0050938C + public override void RemoveRange(int index, int count); // 0x005094CC + public override void Reverse(); // 0x005095C4 + public override void Reverse(int index, int count); // 0x005095D0 + public override void SetRange(int index, ICollection c); // 0x005096BC + public override void CopyTo(Array array); // 0x005097F8 + public override void CopyTo(Array array, int index); // 0x00509824 + public override void CopyTo(int index, Array array, int arrayIndex, int count); // 0x00509850 + public override IEnumerator GetEnumerator(); // 0x00509934 + public override IEnumerator GetEnumerator(int index, int count); // 0x00509940 + public override void AddRange(ICollection c); // 0x00509A08 + public override int BinarySearch(object value); // 0x00509B44 + public override int BinarySearch(object value, IComparer comparer); // 0x00509CE0 + public override int BinarySearch(int index, int count, object value, IComparer comparer); // 0x00509BFC + public override object Clone(); // 0x00509D10 + public override ArrayList GetRange(int index, int count); // 0x00509E1C + public override void TrimToSize(); // 0x00509EE4 + public override void Sort(); // 0x00509F6C + public override void Sort(IComparer comparer); // 0x0050A014 + public override void Sort(int index, int count, IComparer comparer); // 0x0050A038 + public override object[] ToArray(); // 0x0050A138 + public override Array ToArray(Type elementType); // 0x0050A1F0 +} + +// Namespace: +[Serializable] +private sealed class SynchronizedListWrapper : ListWrapper // TypeDefIndex: 288 +{ + // Fields + private object m_SyncRoot; // 0x0C + + // Properties + public override int Count { get; } // 0x0050C878 + public override bool IsSynchronized { get; } // 0x0050C9C0 + public override object SyncRoot { get; } // 0x0050C9C8 + public override bool IsFixedSize { get; } // 0x0050CB10 + public override bool IsReadOnly { get; } // 0x0050CC58 + public override object Item { get; set; } // 0x0050CDA0 0x0050CEF0 + + // Methods + public void .ctor(IList innerList); // 0x00500674 + public override int Add(object value); // 0x0050D04C + public override void Clear(); // 0x0050D19C + public override bool Contains(object value); // 0x0050D2D8 + public override int IndexOf(object value); // 0x0050D428 + public override void Insert(int index, object value); // 0x0050D578 + public override void Remove(object value); // 0x0050D6D4 + public override void RemoveAt(int index); // 0x0050D818 + public override void CopyTo(Array array, int index); // 0x0050D95C + public override IEnumerator GetEnumerator(); // 0x0050DAB8 +} + +// Namespace: +[Serializable] +private class FixedSizeListWrapper : ListWrapper // TypeDefIndex: 289 +{ + // Properties + protected virtual string ErrorMessage { get; } // 0x0050758C + public override bool IsFixedSize { get; } // 0x005075E8 + + // Methods + public void .ctor(IList innerList); // 0x00500C28 + public override int Add(object value); // 0x005075F0 + public override void Clear(); // 0x00507698 + public override void Insert(int index, object value); // 0x00507740 + public override void Remove(object value); // 0x005077E8 + public override void RemoveAt(int index); // 0x00507890 +} + +// Namespace: +[Serializable] +private sealed class ReadOnlyListWrapper : FixedSizeListWrapper // TypeDefIndex: 290 +{ + // Properties + protected override string ErrorMessage { get; } // 0x0050A710 + public override bool IsReadOnly { get; } // 0x0050A76C + public override object Item { get; set; } // 0x0050A774 0x0050A854 + + // Methods + public void .ctor(IList innerList); // 0x005009B4 +} + +// Namespace: +[Serializable] +private class ListWrapper : IEnumerable, ICollection, IList // TypeDefIndex: 291 +{ + // Fields + protected IList m_InnerList; // 0x08 + + // Properties + public virtual object Item { get; set; } // 0x00507938 0x00507A18 + public virtual int Count { get; } // 0x00507B00 + public virtual bool IsSynchronized { get; } // 0x00507BD8 + public virtual object SyncRoot { get; } // 0x00507CB0 + public virtual bool IsFixedSize { get; } // 0x00507D88 + public virtual bool IsReadOnly { get; } // 0x00507E60 + + // Methods + public void .ctor(IList innerList); // 0x0050756C + public virtual int Add(object value); // 0x00507F38 + public virtual void Clear(); // 0x00508018 + public virtual bool Contains(object value); // 0x005080F0 + public virtual int IndexOf(object value); // 0x005081D0 + public virtual void Insert(int index, object value); // 0x005082B0 + public virtual void Remove(object value); // 0x00508398 + public virtual void RemoveAt(int index); // 0x00508478 + public virtual void CopyTo(Array array, int index); // 0x00508558 + public virtual IEnumerator GetEnumerator(); // 0x00508640 +} + +// Namespace: System.Collections +[Serializable] +public sealed class BitArray : IEnumerable, ICloneable, ICollection // TypeDefIndex: 292 +{ + // Fields + private int[] m_array; // 0x08 + private int m_length; // 0x0C + private int _version; // 0x10 + + // Properties + public int Count { get; } // 0x0050E4B0 + public bool IsReadOnly { get; } // 0x0050E4B8 + public bool IsSynchronized { get; } // 0x0050E4C0 + public bool Item { get; set; } // 0x0050E4C8 0x0050DED8 + public int Length { get; set; } // 0x0050E6C8 0x0050E6D0 + public object SyncRoot { get; } // 0x0050E898 + + // Methods + public void .ctor(BitArray bits); // 0x0050DC00 + public void .ctor(bool[] values); // 0x0050DDA0 + public void .ctor(byte[] bytes); // 0x0050DEDC + public void .ctor(int[] values); // 0x0050E0DC + public void .ctor(int length); // 0x0050E1D0 + public void .ctor(int length, bool defaultValue); // 0x0050E2B8 + private void .ctor(int[] array, int length); // 0x0050E340 + private byte getByte(int byteIndex); // 0x0050E368 + private void setByte(int byteIndex, byte value); // 0x0050E01C + private void checkOperand(BitArray operand); // 0x0050E3D8 + public object Clone(); // 0x0050E89C + public void CopyTo(Array array, int index); // 0x0050E90C + public BitArray Not(); // 0x0050EDB0 + public BitArray And(BitArray value); // 0x0050EE58 + public BitArray Or(BitArray value); // 0x0050EF3C + public BitArray Xor(BitArray value); // 0x0050F020 + public bool Get(int index); // 0x0050E4CC + public void Set(int index, bool value); // 0x0050E5C0 + public void SetAll(bool value); // 0x0050F104 + public IEnumerator GetEnumerator(); // 0x0050F1B8 +} + +// Namespace: +[Serializable] +private class BitArrayEnumerator : IEnumerator, ICloneable // TypeDefIndex: 293 +{ + // Fields + private BitArray _bitArray; // 0x08 + private bool _current; // 0x0C + private int _index; // 0x10 + private int _version; // 0x14 + + // Properties + public object Current { get; } // 0x00385650 + + // Methods + public void .ctor(BitArray ba); // 0x00385608 + public object Clone(); // 0x00385648 + public bool MoveNext(); // 0x0038578C + public void Reset(); // 0x003858D4 + private void checkVersion(); // 0x00385824 +} + +// Namespace: System.Collections +[Serializable] +public class CaseInsensitiveComparer : IComparer // TypeDefIndex: 294 +{ + // Fields + private static CaseInsensitiveComparer defaultComparer; // 0x00 + private static CaseInsensitiveComparer defaultInvariantComparer; // 0x04 + private CultureInfo culture; // 0x08 + + // Properties + public static CaseInsensitiveComparer Default { get; } // 0x00385B50 + public static CaseInsensitiveComparer DefaultInvariant { get; } // 0x00385BDC + + // Methods + public void .ctor(); // 0x003858F0 + private void .ctor(bool invariant); // 0x00385980 + public void .ctor(CultureInfo culture); // 0x00385988 + private static void .cctor(); // 0x00385AC0 + public int Compare(object a, object b); // 0x00385C68 +} + +// Namespace: System.Collections +[Serializable] +public class CaseInsensitiveHashCodeProvider : IHashCodeProvider // TypeDefIndex: 295 +{ + // Fields + private static readonly CaseInsensitiveHashCodeProvider singletonInvariant; // 0x00 + private static CaseInsensitiveHashCodeProvider singleton; // 0x04 + private static readonly object sync; // 0x08 + private TextInfo m_text; // 0x08 + + // Properties + public static CaseInsensitiveHashCodeProvider Default { get; } // 0x00386560 + public static CaseInsensitiveHashCodeProvider DefaultInvariant { get; } // 0x00386A60 + + // Methods + public void .ctor(); // 0x00386124 + public void .ctor(CultureInfo culture); // 0x0038633C + private static void .cctor(); // 0x00386488 + private static bool AreEqual(CultureInfo a, CultureInfo b); // 0x00386260 + private static bool AreEqual(TextInfo info, CultureInfo culture); // 0x0038698C + public int GetHashCode(object obj); // 0x00386AEC +} + +// Namespace: System.Collections +[Serializable] +public abstract class CollectionBase : IEnumerable, ICollection, IList // TypeDefIndex: 296 +{ + // Fields + private ArrayList list; // 0x08 + + // Properties + private object System.Collections.ICollection.SyncRoot { get; } // 0x00386EEC + private bool System.Collections.ICollection.IsSynchronized { get; } // 0x00386F24 + private bool System.Collections.IList.IsFixedSize { get; } // 0x003874E8 + private bool System.Collections.IList.IsReadOnly { get; } // 0x00387520 + private object System.Collections.IList.Item { get; set; } // 0x00387558 0x00387598 + public int Count { get; } // 0x00387828 + public int Capacity { get; set; } // 0x003879CC 0x00387A70 + protected ArrayList InnerList { get; } // 0x00386E6C + protected IList List { get; } // 0x00387B1C + + // Methods + protected void .ctor(); // 0x00386D98 + protected void .ctor(int capacity); // 0x00386DA0 + private void System.Collections.ICollection.CopyTo(Array array, int index); // 0x00386E24 + private int System.Collections.IList.Add(object value); // 0x00386F5C + private bool System.Collections.IList.Contains(object value); // 0x0038713C + private int System.Collections.IList.IndexOf(object value); // 0x0038717C + private void System.Collections.IList.Insert(int index, object value); // 0x003871BC + private void System.Collections.IList.Remove(object value); // 0x0038736C + public IEnumerator GetEnumerator(); // 0x00387860 + public void Clear(); // 0x00387898 + public void RemoveAt(int index); // 0x00387900 + protected virtual void OnClear(); // 0x00387B20 + protected virtual void OnClearComplete(); // 0x00387B24 + protected virtual void OnInsert(int index, object value); // 0x00387B28 + protected virtual void OnInsertComplete(int index, object value); // 0x00387B2C + protected virtual void OnRemove(int index, object value); // 0x00387B30 + protected virtual void OnRemoveComplete(int index, object value); // 0x00387B34 + protected virtual void OnSet(int index, object oldValue, object newValue); // 0x00387B38 + protected virtual void OnSetComplete(int index, object oldValue, object newValue); // 0x00387B3C + protected virtual void OnValidate(object value); // 0x00387B40 +} + +// Namespace: System.Collections +internal sealed class CollectionDebuggerView // TypeDefIndex: 297 +{ + // Fields + private readonly ICollection c; // 0x08 + + // Properties + public object[] Items { get; } // 0x00387C08 + + // Methods + public void .ctor(ICollection col); // 0x00387BE8 +} + +// Namespace: System.Collections +[Serializable] +public sealed class Comparer : ISerializable, IComparer // TypeDefIndex: 298 +{ + // Fields + public static readonly Comparer Default; // 0x00 + public static readonly Comparer DefaultInvariant; // 0x04 + private CompareInfo m_compareInfo; // 0x08 + + // Methods + private void .ctor(); // 0x00387DA0 + public void .ctor(CultureInfo culture); // 0x00387DA8 + private static void .cctor(); // 0x00387E7C + public int Compare(object a, object b); // 0x00385E44 + public void GetObjectData(SerializationInfo info, StreamingContext context); // 0x00387F54 +} + +// Namespace: System.Collections +[Serializable] +public abstract class DictionaryBase : IEnumerable, ICollection, IDictionary // TypeDefIndex: 299 +{ + // Fields + private Hashtable hashtable; // 0x08 + + // Properties + private bool System.Collections.IDictionary.IsFixedSize { get; } // 0x00388140 + private bool System.Collections.IDictionary.IsReadOnly { get; } // 0x00388148 + private object System.Collections.IDictionary.Item { get; set; } // 0x00388150 0x003881B4 + private ICollection System.Collections.IDictionary.Keys { get; } // 0x003883A8 + private ICollection System.Collections.IDictionary.Values { get; } // 0x003883DC + private bool System.Collections.ICollection.IsSynchronized { get; } // 0x003887FC + private object System.Collections.ICollection.SyncRoot { get; } // 0x00388830 + public int Count { get; } // 0x003888F8 + protected IDictionary Dictionary { get; } // 0x0038892C + protected Hashtable InnerHashtable { get; } // 0x00388930 + + // Methods + protected void .ctor(); // 0x00388080 + private void System.Collections.IDictionary.Add(object key, object value); // 0x00388410 + private void System.Collections.IDictionary.Remove(object key); // 0x003885B8 + private bool System.Collections.IDictionary.Contains(object key); // 0x003887C0 + private IEnumerator System.Collections.IEnumerable.GetEnumerator(); // 0x00388864 + public void Clear(); // 0x00388898 + public void CopyTo(Array array, int index); // 0x00388938 + private void DoCopy(Array array, int index); // 0x00388B74 + public IDictionaryEnumerator GetEnumerator(); // 0x00388ED8 + protected virtual void OnClear(); // 0x00388F0C + protected virtual void OnClearComplete(); // 0x00388F10 + protected virtual object OnGet(object key, object currentValue); // 0x00388F14 + protected virtual void OnInsert(object key, object value); // 0x00388F1C + protected virtual void OnInsertComplete(object key, object value); // 0x00388F20 + protected virtual void OnSet(object key, object oldValue, object newValue); // 0x00388F24 + protected virtual void OnSetComplete(object key, object oldValue, object newValue); // 0x00388F28 + protected virtual void OnRemove(object key, object value); // 0x00388F2C + protected virtual void OnRemoveComplete(object key, object value); // 0x00388F30 + protected virtual void OnValidate(object key, object value); // 0x00388F34 +} + +// Namespace: System.Collections +[Serializable] +public struct DictionaryEntry // TypeDefIndex: 300 +{ + // Fields + private object _key; // 0x08 + private object _value; // 0x0C + + // Properties + public object Key { get; set; } // 0x000A7028 0x000A7030 + public object Value { get; set; } // 0x000A7038 0x000A7040 + + // Methods + public void .ctor(object key, object value); // 0x000A701C +} + +// Namespace: System.Collections +[Serializable] +public class Hashtable : IEnumerable, ICloneable, ISerializable, ICollection, IDictionary, IDeserializationCallback // TypeDefIndex: 301 +{ + // Fields + private const int CHAIN_MARKER = -2147483648; // 0x00 + private int inUse; // 0x08 + private int modificationCount; // 0x0C + private float loadFactor; // 0x10 + private Slot[] table; // 0x14 + private int[] hashes; // 0x18 + private int threshold; // 0x1C + private HashKeys hashKeys; // 0x20 + private HashValues hashValues; // 0x24 + private IHashCodeProvider hcpRef; // 0x28 + private IComparer comparerRef; // 0x2C + private SerializationInfo serializationInfo; // 0x30 + private IEqualityComparer equalityComparer; // 0x34 + private static readonly int[] primeTbl; // 0x00 + + // Properties + protected IComparer comparer { get; set; } // 0x00389EB0 0x00389EA8 + protected IHashCodeProvider hcp { get; set; } // 0x00389EC0 0x00389EB8 + protected IEqualityComparer EqualityComparer { get; } // 0x00389EC8 + public virtual int Count { get; } // 0x00389ED0 + public virtual bool IsSynchronized { get; } // 0x00389ED8 + public virtual object SyncRoot { get; } // 0x00389EE0 + public virtual bool IsFixedSize { get; } // 0x00389EE4 + public virtual bool IsReadOnly { get; } // 0x00389EEC + public virtual ICollection Keys { get; } // 0x00389EF4 + public virtual ICollection Values { get; } // 0x0038A01C + public virtual object Item { get; set; } // 0x0038A144 0x0038A360 + + // Methods + public void .ctor(); // 0x00388114 + public void .ctor(int capacity, float loadFactor, IHashCodeProvider hcp, IComparer comparer); // 0x00389020 + public void .ctor(int capacity, float loadFactor); // 0x00388FF8 + public void .ctor(int capacity); // 0x0038955C + internal void .ctor(Hashtable source); // 0x00389584 + public void .ctor(int capacity, IHashCodeProvider hcp, IComparer comparer); // 0x00389724 + public void .ctor(IDictionary d, float loadFactor, IHashCodeProvider hcp, IComparer comparer); // 0x0038974C + public void .ctor(IDictionary d, float loadFactor); // 0x00389B3C + public void .ctor(IDictionary d); // 0x00389B60 + public void .ctor(IDictionary d, IHashCodeProvider hcp, IComparer comparer); // 0x00389B88 + public void .ctor(IHashCodeProvider hcp, IComparer comparer); // 0x00389BB0 + public void .ctor(SerializationInfo info, StreamingContext context); // 0x00389BD8 + public void .ctor(IDictionary d, IEqualityComparer equalityComparer); // 0x00389BF8 + public void .ctor(IDictionary d, float loadFactor, IEqualityComparer equalityComparer); // 0x00389C30 + public void .ctor(IEqualityComparer equalityComparer); // 0x00389C64 + public void .ctor(int capacity, IEqualityComparer equalityComparer); // 0x00389CD4 + public void .ctor(int capacity, float loadFactor, IEqualityComparer equalityComparer); // 0x00389CA0 + private static void .cctor(); // 0x00389D0C + private IEnumerator System.Collections.IEnumerable.GetEnumerator(); // 0x00389DA4 + public virtual void CopyTo(Array array, int arrayIndex); // 0x0038A8A0 + public virtual void Add(object key, object value); // 0x0038AC54 + public virtual void Clear(); // 0x0038AC70 + public virtual bool Contains(object key); // 0x0038AD6C + public virtual IDictionaryEnumerator GetEnumerator(); // 0x0038AF9C + public virtual void Remove(object key); // 0x0038B010 + public virtual bool ContainsKey(object key); // 0x0038B1D4 + public virtual bool ContainsValue(object value); // 0x0038B1E4 + public virtual object Clone(); // 0x0038B3EC + public virtual void GetObjectData(SerializationInfo info, StreamingContext context); // 0x0038B45C + public virtual void OnDeserialization(object sender); // 0x0038B878 + public static Hashtable Synchronized(Hashtable table); // 0x0038C1B4 + protected virtual int GetHash(object key); // 0x0038C370 + protected virtual bool KeyEquals(object item, object key); // 0x0038C4E4 + private void AdjustThreshold(); // 0x0038C168 + private void SetTable(Slot[] table, int[] hashes); // 0x00389498 + private int Find(object key); // 0x0038AD8C + private void Rehash(); // 0x0038C6E4 + private void PutImpl(object key, object value, bool overwrite); // 0x0038A37C + private void CopyToArray(Array arr, int i, EnumeratorMode mode); // 0x0038B6A0 + internal static bool TestPrime(int x); // 0x0038C9F0 + internal static int CalcPrime(int x); // 0x0038CA80 + internal static int ToPrime(int x); // 0x003892A8 +} + +// Namespace: +[Serializable] +internal struct Slot // TypeDefIndex: 302 +{ + // Fields + internal object key; // 0x08 + internal object value; // 0x0C + +} + +// Namespace: +[Serializable] +internal class KeyMarker // TypeDefIndex: 303 +{ + // Fields + public static readonly KeyMarker Removed; // 0x00 + + // Methods + public void .ctor(); // 0x0038D7F4 + private static void .cctor(); // 0x0038D7FC +} + +// Namespace: +private enum EnumeratorMode // TypeDefIndex: 304 +{ + KEY_MODE = 0, + VALUE_MODE = 1, + ENTRY_MODE = 2 +} + +// Namespace: +[Serializable] +private sealed class Enumerator : IEnumerator, IDictionaryEnumerator // TypeDefIndex: 305 +{ + // Fields + private Hashtable host; // 0x08 + private int stamp; // 0x0C + private int pos; // 0x10 + private int size; // 0x14 + private EnumeratorMode mode; // 0x18 + private object currentKey; // 0x1C + private object currentValue; // 0x20 + private static readonly string xstr; // 0x00 + + // Properties + public DictionaryEntry Entry { get; } // 0x0038CE9C + public object Key { get; } // 0x0038CF50 + public object Value { get; } // 0x0038CFF8 + public object Current { get; } // 0x0038D0A0 + + // Methods + public void .ctor(Hashtable host, EnumeratorMode mode); // 0x00389E18 + public void .ctor(Hashtable host); // 0x0038CBC0 + private static void .cctor(); // 0x0038CBC8 + private void FailFast(); // 0x0038CC3C + public void Reset(); // 0x0038CB98 + public bool MoveNext(); // 0x0038CD34 +} + +// Namespace: +[Serializable] +private class HashKeys : IEnumerable, ICollection // TypeDefIndex: 306 +{ + // Fields + private Hashtable host; // 0x08 + + // Properties + public virtual int Count { get; } // 0x0038D1D4 + public virtual bool IsSynchronized { get; } // 0x0038D208 + public virtual object SyncRoot { get; } // 0x0038D23C + + // Methods + public void .ctor(Hashtable host); // 0x00389F74 + public virtual void CopyTo(Array array, int arrayIndex); // 0x0038D270 + public virtual IEnumerator GetEnumerator(); // 0x0038D46C +} + +// Namespace: +[Serializable] +private class HashValues : IEnumerable, ICollection // TypeDefIndex: 307 +{ + // Fields + private Hashtable host; // 0x08 + + // Properties + public virtual int Count { get; } // 0x0038D4E4 + public virtual bool IsSynchronized { get; } // 0x0038D518 + public virtual object SyncRoot { get; } // 0x0038D54C + + // Methods + public void .ctor(Hashtable host); // 0x0038A09C + public virtual void CopyTo(Array array, int arrayIndex); // 0x0038D580 + public virtual IEnumerator GetEnumerator(); // 0x0038D77C +} + +// Namespace: +[Serializable] +private class SyncHashtable : Hashtable, IEnumerable // TypeDefIndex: 308 +{ + // Fields + private Hashtable host; // 0x38 + + // Properties + public override int Count { get; } // 0x0038DADC + public override bool IsSynchronized { get; } // 0x0038DB10 + public override object SyncRoot { get; } // 0x0038DB18 + public override bool IsFixedSize { get; } // 0x0038DB4C + public override bool IsReadOnly { get; } // 0x0038DB80 + public override ICollection Keys { get; } // 0x0038DBB4 + public override ICollection Values { get; } // 0x0038DC80 + public override object Item { get; set; } // 0x0038DD4C 0x0038DD88 + + // Methods + public void .ctor(Hashtable host); // 0x0038C284 + internal void .ctor(SerializationInfo info, StreamingContext context); // 0x0038D870 + private IEnumerator System.Collections.IEnumerable.GetEnumerator(); // 0x0038D9E0 + public override void GetObjectData(SerializationInfo info, StreamingContext context); // 0x0038DA58 + public override void CopyTo(Array array, int arrayIndex); // 0x0038DE58 + public override void Add(object key, object value); // 0x0038DE9C + public override void Clear(); // 0x0038DF6C + public override bool Contains(object key); // 0x0038E028 + public override IDictionaryEnumerator GetEnumerator(); // 0x0038E068 + public override void Remove(object key); // 0x0038E0E0 + public override bool ContainsKey(object key); // 0x0038E1A4 + public override bool ContainsValue(object value); // 0x0038E1E0 + public override object Clone(); // 0x0038E21C +} + +// Namespace: System.Collections +public interface IComparer // TypeDefIndex: 309 +{ + // Methods + int Compare(object x, object y); +} + +// Namespace: System.Collections +public interface IDictionary : IEnumerable, ICollection // TypeDefIndex: 310 +{ + // Properties + bool IsFixedSize { get; } + bool IsReadOnly { get; } + object Item { get; set; } + ICollection Keys { get; } + ICollection Values { get; } + + // Methods + void Add(object key, object value); + void Clear(); + bool Contains(object key); + IDictionaryEnumerator GetEnumerator(); + void Remove(object key); +} + +// Namespace: System.Collections +public interface IDictionaryEnumerator : IEnumerator // TypeDefIndex: 311 +{ + // Properties + DictionaryEntry Entry { get; } + object Key { get; } + object Value { get; } + +} + +// Namespace: System.Collections +public interface IEqualityComparer // TypeDefIndex: 312 +{ + // Methods + bool Equals(object x, object y); + int GetHashCode(object obj); +} + +// Namespace: System.Collections +public interface IHashCodeProvider // TypeDefIndex: 313 +{ + // Methods + int GetHashCode(object obj); +} + +// Namespace: System.Collections +[Serializable] +public class Queue : IEnumerable, ICloneable, ICollection // TypeDefIndex: 314 +{ + // Fields + private object[] _array; // 0x08 + private int _head; // 0x0C + private int _size; // 0x10 + private int _tail; // 0x14 + private int _growFactor; // 0x18 + private int _version; // 0x1C + + // Properties + public virtual int Count { get; } // 0x0038E954 + public virtual bool IsSynchronized { get; } // 0x0038E95C + public virtual object SyncRoot { get; } // 0x0038E964 + + // Methods + public void .ctor(); // 0x0038E3A4 + public void .ctor(int capacity); // 0x0038E530 + public void .ctor(ICollection col); // 0x0038E538 + public void .ctor(int capacity, float growFactor); // 0x0038E3B0 + public virtual void CopyTo(Array array, int index); // 0x0038E968 + public virtual IEnumerator GetEnumerator(); // 0x0038EB68 + public virtual object Clone(); // 0x0038EC18 + public virtual void Clear(); // 0x0038ED30 + public virtual bool Contains(object obj); // 0x0038EDD4 + public virtual object Dequeue(); // 0x0038EF04 + public virtual void Enqueue(object obj); // 0x0038F060 + public virtual object Peek(); // 0x0038F258 + public static Queue Synchronized(Queue queue); // 0x0038F330 + public virtual object[] ToArray(); // 0x0038F42C + public virtual void TrimToSize(); // 0x0038F4B4 + private void grow(); // 0x0038F148 +} + +// Namespace: +private class SyncQueue : Queue // TypeDefIndex: 315 +{ + // Fields + private Queue queue; // 0x20 + + // Properties + public override int Count { get; } // 0x0038F940 + public override bool IsSynchronized { get; } // 0x0038F9E8 + public override object SyncRoot { get; } // 0x0038F9F0 + + // Methods + internal void .ctor(Queue queue); // 0x0038F408 + public override void CopyTo(Array array, int index); // 0x0038FA24 + public override IEnumerator GetEnumerator(); // 0x0038FAD0 + public override object Clone(); // 0x0038FB78 + public override void Clear(); // 0x0038FCE4 + public override void TrimToSize(); // 0x0038FD7C + public override bool Contains(object obj); // 0x0038FE14 + public override object Dequeue(); // 0x0038FEC4 + public override void Enqueue(object obj); // 0x0038FF6C + public override object Peek(); // 0x0039000C + public override object[] ToArray(); // 0x003900B4 +} + +// Namespace: +[Serializable] +private class QueueEnumerator : IEnumerator, ICloneable // TypeDefIndex: 316 +{ + // Fields + private Queue queue; // 0x08 + private int _version; // 0x0C + private int current; // 0x10 + + // Properties + public virtual object Current { get; } // 0x0038F600 + + // Methods + internal void .ctor(Queue q); // 0x0038EBD8 + public object Clone(); // 0x0038F554 + public virtual bool MoveNext(); // 0x0038F790 + public virtual void Reset(); // 0x0038F888 +} + +// Namespace: System.Collections +[Serializable] +public abstract class ReadOnlyCollectionBase : IEnumerable, ICollection // TypeDefIndex: 317 +{ + // Fields + private ArrayList list; // 0x08 + + // Properties + private object System.Collections.ICollection.SyncRoot { get; } // 0x00390294 + private bool System.Collections.ICollection.IsSynchronized { get; } // 0x003902C8 + public virtual int Count { get; } // 0x003902FC + protected ArrayList InnerList { get; } // 0x00390364 + + // Methods + protected void .ctor(); // 0x0039015C + private IEnumerator System.Collections.IEnumerable.GetEnumerator(); // 0x003901D8 + private void System.Collections.ICollection.CopyTo(Array array, int index); // 0x003901E8 + public virtual IEnumerator GetEnumerator(); // 0x00390330 +} + +// Namespace: System.Collections +[Serializable] +public class SortedList : IEnumerable, ICloneable, ICollection, IDictionary // TypeDefIndex: 318 +{ + // Fields + private static readonly int INITIAL_SIZE; // 0x00 + private int inUse; // 0x08 + private int modificationCount; // 0x0C + private Slot[] table; // 0x10 + private IComparer comparer; // 0x14 + private int defaultCapacity; // 0x18 + + // Properties + public virtual int Count { get; } // 0x00390B78 + public virtual bool IsSynchronized { get; } // 0x00390B80 + public virtual object SyncRoot { get; } // 0x00390B88 + public virtual bool IsFixedSize { get; } // 0x00390B8C + public virtual bool IsReadOnly { get; } // 0x00390B94 + public virtual ICollection Keys { get; } // 0x00390B9C + public virtual ICollection Values { get; } // 0x00390CB4 + public virtual object Item { get; set; } // 0x00390DCC 0x00390ED4 + public virtual int Capacity { get; set; } // 0x003918D8 0x003918FC + + // Methods + public void .ctor(); // 0x0039036C + public void .ctor(int initialCapacity); // 0x0039052C + public void .ctor(IComparer comparer, int capacity); // 0x00390408 + public void .ctor(IComparer comparer); // 0x003905C8 + public void .ctor(IDictionary d); // 0x00390678 + public void .ctor(IDictionary d, IComparer comparer); // 0x00390680 + private static void .cctor(); // 0x00390A24 + private IEnumerator System.Collections.IEnumerable.GetEnumerator(); // 0x00390A8C + public virtual void Add(object key, object value); // 0x00391A54 + public virtual void Clear(); // 0x00391A70 + public virtual bool Contains(object key); // 0x00391B30 + public virtual IDictionaryEnumerator GetEnumerator(); // 0x00391C9C + public virtual void Remove(object key); // 0x00391D10 + public virtual void CopyTo(Array array, int arrayIndex); // 0x00391D54 + public virtual object Clone(); // 0x003920E0 + public virtual IList GetKeyList(); // 0x00392170 + public virtual IList GetValueList(); // 0x003921E0 + public virtual void RemoveAt(int index); // 0x00392250 + public virtual int IndexOfKey(object key); // 0x003923C4 + public virtual int IndexOfValue(object value); // 0x00392524 + public virtual bool ContainsKey(object key); // 0x003925B4 + public virtual bool ContainsValue(object value); // 0x0039271C + public virtual object GetByIndex(int index); // 0x00392748 + public virtual void SetByIndex(int index, object value); // 0x0039284C + public virtual object GetKey(int index); // 0x00392954 + public static SortedList Synchronized(SortedList list); // 0x00392A58 + public virtual void TrimToSize(); // 0x00392C04 + private void Resize(int n, bool copy); // 0x00392C68 + private void EnsureCapacity(int n, int free); // 0x00392D10 + private void PutImpl(object key, object value, bool overwrite); // 0x00391260 + private object GetImpl(object key); // 0x00390E74 + private void InitTable(int capacity, bool forceSize); // 0x00390538 + private void CopyToArray(Array arr, int i, EnumeratorMode mode); // 0x00392EC0 + private int Find(object key); // 0x00391064 +} + +// Namespace: +[Serializable] +internal struct Slot // TypeDefIndex: 319 +{ + // Fields + internal object key; // 0x08 + internal object value; // 0x0C + +} + +// Namespace: +private enum EnumeratorMode // TypeDefIndex: 320 +{ + KEY_MODE = 0, + VALUE_MODE = 1, + ENTRY_MODE = 2 +} + +// Namespace: +private sealed class Enumerator : IEnumerator, ICloneable, IDictionaryEnumerator // TypeDefIndex: 321 +{ + // Fields + private SortedList host; // 0x08 + private int stamp; // 0x0C + private int pos; // 0x10 + private int size; // 0x14 + private EnumeratorMode mode; // 0x18 + private object currentKey; // 0x1C + private object currentValue; // 0x20 + private bool invalid; // 0x24 + private static readonly string xstr; // 0x00 + + // Properties + public DictionaryEntry Entry { get; } // 0x00393470 + public object Key { get; } // 0x00393578 + public object Value { get; } // 0x00393674 + public object Current { get; } // 0x00393770 + + // Methods + public void .ctor(SortedList host, EnumeratorMode mode); // 0x00390B00 + public void .ctor(SortedList host); // 0x0039326C + private static void .cctor(); // 0x00393274 + public void Reset(); // 0x00393158 + public bool MoveNext(); // 0x003932E8 + public object Clone(); // 0x00393970 +} + +// Namespace: +[Serializable] +private class ListKeys : IEnumerable, ICollection, IList // TypeDefIndex: 322 +{ + // Fields + private SortedList host; // 0x08 + + // Properties + public virtual int Count { get; } // 0x00393A94 + public virtual bool IsSynchronized { get; } // 0x00393AC8 + public virtual object SyncRoot { get; } // 0x00393AFC + public virtual bool IsFixedSize { get; } // 0x00393B74 + public virtual bool IsReadOnly { get; } // 0x00393B7C + public virtual object Item { get; set; } // 0x00393B84 0x00393BC0 + + // Methods + public void .ctor(SortedList host); // 0x00390C0C + public virtual void CopyTo(Array array, int arrayIndex); // 0x00393B30 + public virtual int Add(object value); // 0x00393C5C + public virtual void Clear(); // 0x00393CF8 + public virtual bool Contains(object key); // 0x00393D94 + public virtual int IndexOf(object key); // 0x00393DD0 + public virtual void Insert(int index, object value); // 0x00393E0C + public virtual void Remove(object value); // 0x00393EA8 + public virtual void RemoveAt(int index); // 0x00393F44 + public virtual IEnumerator GetEnumerator(); // 0x00393FE0 +} + +// Namespace: +[Serializable] +private class ListValues : IEnumerable, ICollection, IList // TypeDefIndex: 323 +{ + // Fields + private SortedList host; // 0x08 + + // Properties + public virtual int Count { get; } // 0x00394058 + public virtual bool IsSynchronized { get; } // 0x0039408C + public virtual object SyncRoot { get; } // 0x003940C0 + public virtual bool IsFixedSize { get; } // 0x00394138 + public virtual bool IsReadOnly { get; } // 0x00394140 + public virtual object Item { get; set; } // 0x00394148 0x00394184 + + // Methods + public void .ctor(SortedList host); // 0x00390D24 + public virtual void CopyTo(Array array, int arrayIndex); // 0x003940F4 + public virtual int Add(object value); // 0x00394220 + public virtual void Clear(); // 0x003942BC + public virtual bool Contains(object value); // 0x00394358 + public virtual int IndexOf(object value); // 0x00394394 + public virtual void Insert(int index, object value); // 0x003943D0 + public virtual void Remove(object value); // 0x0039446C + public virtual void RemoveAt(int index); // 0x00394508 + public virtual IEnumerator GetEnumerator(); // 0x003945A4 +} + +// Namespace: +private class SynchedSortedList : SortedList // TypeDefIndex: 324 +{ + // Fields + private SortedList host; // 0x1C + + // Properties + public override int Capacity { get; set; } // 0x0039461C 0x003946E8 + public override int Count { get; } // 0x003947AC + public override bool IsSynchronized { get; } // 0x003947E0 + public override object SyncRoot { get; } // 0x003947E8 + public override bool IsFixedSize { get; } // 0x0039481C + public override bool IsReadOnly { get; } // 0x00394850 + public override ICollection Keys { get; } // 0x00394884 + public override ICollection Values { get; } // 0x00394950 + public override object Item { get; set; } // 0x00394A1C 0x00394AE4 + + // Methods + public void .ctor(SortedList host); // 0x00392B34 + public override void CopyTo(Array array, int arrayIndex); // 0x00394BBC + public override void Add(object key, object value); // 0x00394C8C + public override void Clear(); // 0x00394D64 + public override bool Contains(object key); // 0x00394E20 + public override IDictionaryEnumerator GetEnumerator(); // 0x00394EF4 + public override void Remove(object key); // 0x00394FC0 + public override bool ContainsKey(object key); // 0x00395084 + public override bool ContainsValue(object value); // 0x00395158 + public override object Clone(); // 0x0039522C + public override object GetByIndex(int index); // 0x00395378 + public override object GetKey(int index); // 0x0039544C + public override IList GetKeyList(); // 0x00395520 + public override IList GetValueList(); // 0x00395628 + public override void RemoveAt(int index); // 0x00395730 + public override int IndexOfKey(object key); // 0x003957F4 + public override int IndexOfValue(object val); // 0x003958C8 + public override void SetByIndex(int index, object value); // 0x0039599C + public override void TrimToSize(); // 0x00395A6C +} + +// Namespace: System.Collections +[Serializable] +public class Stack : IEnumerable, ICloneable, ICollection // TypeDefIndex: 325 +{ + // Fields + private const int default_capacity = 16; // 0x00 + private object[] contents; // 0x08 + private int current; // 0x0C + private int count; // 0x10 + private int capacity; // 0x14 + private int modCount; // 0x18 + + // Properties + public virtual int Count { get; } // 0x00396230 + public virtual bool IsSynchronized { get; } // 0x00396238 + public virtual object SyncRoot { get; } // 0x00396240 + + // Methods + public void .ctor(); // 0x00395B28 + public void .ctor(ICollection col); // 0x00395BAC + public void .ctor(int initialCapacity); // 0x00395FC4 + private void Resize(int ncapacity); // 0x003960A8 + public static Stack Synchronized(Stack stack); // 0x00396144 + public virtual void Clear(); // 0x00396244 + public virtual object Clone(); // 0x003962CC + public virtual bool Contains(object obj); // 0x00396378 + public virtual void CopyTo(Array array, int index); // 0x00396480 + public virtual IEnumerator GetEnumerator(); // 0x00396678 + public virtual object Peek(); // 0x00396728 + public virtual object Pop(); // 0x003967FC + public virtual void Push(object obj); // 0x00396968 + public virtual object[] ToArray(); // 0x00396A20 +} + +// Namespace: +[Serializable] +private class SyncStack : Stack // TypeDefIndex: 326 +{ + // Fields + private Stack stack; // 0x1C + + // Properties + public override int Count { get; } // 0x00396D9C + public override bool IsSynchronized { get; } // 0x00396E44 + public override object SyncRoot { get; } // 0x00396E4C + + // Methods + internal void .ctor(Stack s); // 0x00396214 + public override void Clear(); // 0x00396E80 + public override object Clone(); // 0x00396F18 + public override bool Contains(object obj); // 0x00397058 + public override void CopyTo(Array array, int index); // 0x00397108 + public override IEnumerator GetEnumerator(); // 0x003971B4 + public override object Peek(); // 0x00397298 + public override object Pop(); // 0x00397340 + public override void Push(object obj); // 0x003973E8 + public override object[] ToArray(); // 0x00397488 +} + +// Namespace: +private class Enumerator : IEnumerator, ICloneable // TypeDefIndex: 327 +{ + // Fields + private const int EOF = -1; // 0x00 + private const int BOF = -2; // 0x00 + private Stack stack; // 0x08 + private int modCount; // 0x0C + private int current; // 0x10 + + // Properties + public virtual object Current { get; } // 0x00396AB4 + + // Methods + internal void .ctor(Stack s); // 0x003966E8 + public object Clone(); // 0x00396AAC + public virtual bool MoveNext(); // 0x00396BE4 + public virtual void Reset(); // 0x00396CE4 +} + +// Namespace: System.Configuration.Assemblies +[Serializable] +public struct AssemblyHash : ICloneable // TypeDefIndex: 328 +{ + // Fields + private AssemblyHashAlgorithm _algorithm; // 0x08 + private byte[] _value; // 0x0C + public static readonly AssemblyHash Empty; // 0x00 + + // Properties + public AssemblyHashAlgorithm Algorithm { get; set; } // 0x000A7548 0x000A7550 + + // Methods + public void .ctor(AssemblyHashAlgorithm algorithm, byte[] value); // 0x000A7530 + public void .ctor(byte[] value); // 0x000A7538 + private static void .cctor(); // 0x003975F4 + public object Clone(); // 0x000A7558 + public byte[] GetValue(); // 0x000A7560 + public void SetValue(byte[] value); // 0x000A7568 +} + +// Namespace: System.Configuration.Assemblies +[Serializable] +public enum AssemblyHashAlgorithm // TypeDefIndex: 329 +{ + None = 0, + MD5 = 32771, + SHA1 = 32772 +} + +// Namespace: System.Configuration.Assemblies +[Serializable] +public enum AssemblyVersionCompatibility // TypeDefIndex: 330 +{ + SameMachine = 1, + SameProcess = 2, + SameDomain = 3 +} + +// Namespace: System.Deployment.Internal +public static class InternalActivationContextHelper // TypeDefIndex: 331 +{ + // Methods + public static object GetActivationContextData(ActivationContext appInfo); // 0x004CACCC + public static object GetApplicationComponentManifest(ActivationContext appInfo); // 0x004CAD54 + public static byte[] GetApplicationManifestBytes(ActivationContext appInfo); // 0x004CADDC + public static object GetDeploymentComponentManifest(ActivationContext appInfo); // 0x004CAE64 + public static byte[] GetDeploymentManifestBytes(ActivationContext appInfo); // 0x004CAEEC + public static bool IsFirstRun(ActivationContext appInfo); // 0x004CAF74 + public static void PrepareForExecution(ActivationContext appInfo); // 0x004CAFFC +} + +// Namespace: System.Deployment.Internal +public static class InternalApplicationIdentityHelper // TypeDefIndex: 332 +{ + // Methods + public static object GetActivationContextData(ActivationContext appInfo); // 0x004CB084 + public static object GetInternalAppId(ApplicationIdentity id); // 0x004CB10C +} + +// Namespace: System.Diagnostics.CodeAnalysis +public sealed class SuppressMessageAttribute : Attribute // TypeDefIndex: 333 +{ + // Fields + private string category; // 0x08 + private string checkId; // 0x0C + private string justification; // 0x10 + private string messageId; // 0x14 + private string scope; // 0x18 + private string target; // 0x1C + + // Properties + public string Category { get; } // 0x004CB1BC + public string CheckId { get; } // 0x004CB1C4 + public string Justification { get; set; } // 0x004CB1CC 0x004CB1D4 + public string MessageId { get; set; } // 0x004CB1DC 0x004CB1E4 + public string Scope { get; set; } // 0x004CB1EC 0x004CB1F4 + public string Target { get; set; } // 0x004CB1FC 0x004CB204 + + // Methods + public void .ctor(string category, string checkId); // 0x004CB194 +} + +// Namespace: System.Diagnostics.SymbolStore +public interface ISymbolBinder // TypeDefIndex: 334 +{ + // Methods + ISymbolReader GetReader(int importer, string filename, string searchPath); +} + +// Namespace: System.Diagnostics.SymbolStore +public interface ISymbolBinder1 // TypeDefIndex: 335 +{ + // Methods + ISymbolReader GetReader(IntPtr importer, string filename, string searchPath); +} + +// Namespace: System.Diagnostics.SymbolStore +public interface ISymbolDocument // TypeDefIndex: 336 +{ + // Properties + Guid CheckSumAlgorithmId { get; } + Guid DocumentType { get; } + bool HasEmbeddedSource { get; } + Guid Language { get; } + Guid LanguageVendor { get; } + int SourceLength { get; } + string URL { get; } + + // Methods + int FindClosestLine(int line); + byte[] GetCheckSum(); + byte[] GetSourceRange(int startLine, int startColumn, int endLine, int endColumn); +} + +// Namespace: System.Diagnostics.SymbolStore +public interface ISymbolDocumentWriter // TypeDefIndex: 337 +{ + // Methods + void SetCheckSum(Guid algorithmId, byte[] checkSum); + void SetSource(byte[] source); +} + +// Namespace: System.Diagnostics.SymbolStore +public interface ISymbolMethod // TypeDefIndex: 338 +{ + // Properties + ISymbolScope RootScope { get; } + int SequencePointCount { get; } + SymbolToken Token { get; } + + // Methods + ISymbolNamespace GetNamespace(); + int GetOffset(ISymbolDocument document, int line, int column); + ISymbolVariable[] GetParameters(); + int[] GetRanges(ISymbolDocument document, int line, int column); + ISymbolScope GetScope(int offset); + void GetSequencePoints(int[] offsets, ISymbolDocument[] documents, int[] lines, int[] columns, int[] endLines, int[] endColumns); + bool GetSourceStartEnd(ISymbolDocument[] docs, int[] lines, int[] columns); +} + +// Namespace: System.Diagnostics.SymbolStore +public interface ISymbolNamespace // TypeDefIndex: 339 +{ + // Properties + string Name { get; } + + // Methods + ISymbolNamespace[] GetNamespaces(); + ISymbolVariable[] GetVariables(); +} + +// Namespace: System.Diagnostics.SymbolStore +public interface ISymbolReader // TypeDefIndex: 340 +{ + // Properties + SymbolToken UserEntryPoint { get; } + + // Methods + ISymbolDocument GetDocument(string url, Guid language, Guid languageVendor, Guid documentType); + ISymbolDocument[] GetDocuments(); + ISymbolVariable[] GetGlobalVariables(); + ISymbolMethod GetMethod(SymbolToken method); + ISymbolMethod GetMethod(SymbolToken method, int version); + ISymbolMethod GetMethodFromDocumentPosition(ISymbolDocument document, int line, int column); + ISymbolNamespace[] GetNamespaces(); + byte[] GetSymAttribute(SymbolToken parent, string name); + ISymbolVariable[] GetVariables(SymbolToken parent); +} + +// Namespace: System.Diagnostics.SymbolStore +public interface ISymbolScope // TypeDefIndex: 341 +{ + // Properties + int EndOffset { get; } + ISymbolMethod Method { get; } + ISymbolScope Parent { get; } + int StartOffset { get; } + + // Methods + ISymbolScope[] GetChildren(); + ISymbolVariable[] GetLocals(); + ISymbolNamespace[] GetNamespaces(); +} + +// Namespace: System.Diagnostics.SymbolStore +public interface ISymbolVariable // TypeDefIndex: 342 +{ + // Properties + int AddressField1 { get; } + int AddressField2 { get; } + int AddressField3 { get; } + SymAddressKind AddressKind { get; } + object Attributes { get; } + int EndOffset { get; } + string Name { get; } + int StartOffset { get; } + + // Methods + byte[] GetSignature(); +} + +// Namespace: System.Diagnostics.SymbolStore +public interface ISymbolWriter // TypeDefIndex: 343 +{ + // Methods + void Close(); + void CloseMethod(); + void CloseNamespace(); + void CloseScope(int endOffset); + ISymbolDocumentWriter DefineDocument(string url, Guid language, Guid languageVendor, Guid documentType); + void DefineField(SymbolToken parent, string name, FieldAttributes attributes, byte[] signature, SymAddressKind addrKind, int addr1, int addr2, int addr3); + void DefineGlobalVariable(string name, FieldAttributes attributes, byte[] signature, SymAddressKind addrKind, int addr1, int addr2, int addr3); + void DefineLocalVariable(string name, FieldAttributes attributes, byte[] signature, SymAddressKind addrKind, int addr1, int addr2, int addr3, int startOffset, int endOffset); + void DefineParameter(string name, ParameterAttributes attributes, int sequence, SymAddressKind addrKind, int addr1, int addr2, int addr3); + void DefineSequencePoints(ISymbolDocumentWriter document, int[] offsets, int[] lines, int[] columns, int[] endLines, int[] endColumns); + void Initialize(IntPtr emitter, string filename, bool fFullBuild); + void OpenMethod(SymbolToken method); + void OpenNamespace(string name); + int OpenScope(int startOffset); + void SetMethodSourceRange(ISymbolDocumentWriter startDoc, int startLine, int startColumn, ISymbolDocumentWriter endDoc, int endLine, int endColumn); + void SetScopeRange(int scopeID, int startOffset, int endOffset); + void SetSymAttribute(SymbolToken parent, string name, byte[] data); + void SetUnderlyingWriter(IntPtr underlyingWriter); + void SetUserEntryPoint(SymbolToken entryMethod); + void UsingNamespace(string fullName); +} + +// Namespace: System.Diagnostics.SymbolStore +[Serializable] +public enum SymAddressKind // TypeDefIndex: 344 +{ + ILOffset = 1, + NativeRVA = 2, + NativeRegister = 3, + NativeRegisterRelative = 4, + NativeOffset = 5, + NativeRegisterRegister = 6, + NativeRegisterStack = 7, + NativeStackRegister = 8, + BitField = 9, + NativeSectionOffset = 10 +} + +// Namespace: System.Diagnostics.SymbolStore +public class SymDocumentType // TypeDefIndex: 345 +{ + // Fields + public static readonly Guid Text; // 0x00 + + // Methods + public void .ctor(); // 0x002D5AB8 +} + +// Namespace: System.Diagnostics.SymbolStore +public class SymLanguageType // TypeDefIndex: 346 +{ + // Fields + public static readonly Guid Basic; // 0x00 + public static readonly Guid C; // 0x10 + public static readonly Guid Cobol; // 0x20 + public static readonly Guid CPlusPlus; // 0x30 + public static readonly Guid CSharp; // 0x40 + public static readonly Guid ILAssembly; // 0x50 + public static readonly Guid Java; // 0x60 + public static readonly Guid JScript; // 0x70 + public static readonly Guid MCPlusPlus; // 0x80 + public static readonly Guid Pascal; // 0x90 + public static readonly Guid SMC; // 0xA0 + + // Methods + public void .ctor(); // 0x002D5AC0 +} + +// Namespace: System.Diagnostics.SymbolStore +public class SymLanguageVendor // TypeDefIndex: 347 +{ + // Fields + public static readonly Guid Microsoft; // 0x00 + + // Methods + public void .ctor(); // 0x002D5AC8 +} + +// Namespace: System.Diagnostics.SymbolStore +public struct SymbolToken // TypeDefIndex: 348 +{ + // Fields + private int _val; // 0x08 + + // Methods + public void .ctor(int val); // 0x0008D160 + public override bool Equals(object obj); // 0x0008D168 + public bool Equals(SymbolToken obj); // 0x0008D170 + public override int GetHashCode(); // 0x0008D184 + public int GetToken(); // 0x0008D190 + public static bool op_Equality(SymbolToken a, SymbolToken b); // 0x002D5B90 + public static bool op_Inequality(SymbolToken a, SymbolToken b); // 0x002D5BA4 +} + +// Namespace: System.Diagnostics +public sealed class DebuggableAttribute : Attribute // TypeDefIndex: 349 +{ + // Fields + private bool JITTrackingEnabledFlag; // 0x08 + private bool JITOptimizerDisabledFlag; // 0x09 + private DebuggingModes debuggingModes; // 0x0C + + // Properties + public DebuggingModes DebuggingFlags { get; } // 0x004CB2AC + public bool IsJITTrackingEnabled { get; } // 0x004CB2B4 + public bool IsJITOptimizerDisabled { get; } // 0x004CB2BC + + // Methods + public void .ctor(bool isJITTrackingEnabled, bool isJITOptimizerDisabled); // 0x004CB234 + public void .ctor(DebuggingModes modes); // 0x004CB27C +} + +// Namespace: +public enum DebuggingModes // TypeDefIndex: 350 +{ + None = 0, + Default = 1, + IgnoreSymbolStoreSequencePoints = 2, + EnableEditAndContinue = 4, + DisableOptimizations = 256 +} + +// Namespace: System.Diagnostics +public sealed class Debugger // TypeDefIndex: 351 +{ + // Fields + public static readonly string DefaultCategory; // 0x00 + + // Properties + public static bool IsAttached { get; } // 0x004CB370 + + // Methods + public void .ctor(); // 0x004CB2C4 + private static void .cctor(); // 0x004CB2CC + private static bool IsAttached_internal(); // 0x004CB3E8 + public static void Break(); // 0x004CB3EC + public static bool IsLogging(); // 0x004CB3F0 + public static bool Launch(); // 0x004CB3F8 + public static void Log(int level, string category, string message); // 0x004CB480 +} + +// Namespace: System.Diagnostics +public sealed class DebuggerBrowsableAttribute : Attribute // TypeDefIndex: 352 +{ + // Fields + private DebuggerBrowsableState state; // 0x08 + + // Properties + public DebuggerBrowsableState State { get; } // 0x004CB4A4 + + // Methods + public void .ctor(DebuggerBrowsableState state); // 0x004CB484 +} + +// Namespace: System.Diagnostics +public enum DebuggerBrowsableState // TypeDefIndex: 353 +{ + Never = 0, + Collapsed = 2, + RootHidden = 3 +} + +// Namespace: System.Diagnostics +public sealed class DebuggerDisplayAttribute : Attribute // TypeDefIndex: 354 +{ + // Fields + private string value; // 0x08 + private string type; // 0x0C + private string name; // 0x10 + private string target_type_name; // 0x14 + private Type target_type; // 0x18 + + // Properties + public string Value { get; } // 0x004CB59C + public Type Target { get; set; } // 0x004CB5A4 0x004CB5AC + public string TargetTypeName { get; set; } // 0x004CB678 0x004CB680 + public string Type { get; set; } // 0x004CB688 0x004CB690 + public string Name { get; set; } // 0x004CB698 0x004CB6A0 + + // Methods + public void .ctor(string value); // 0x004CB4AC +} + +// Namespace: System.Diagnostics +[Serializable] +public sealed class DebuggerNonUserCodeAttribute : Attribute // TypeDefIndex: 355 +{ + // Methods + public void .ctor(); // 0x002D3D20 +} + +// Namespace: System.Diagnostics +[Serializable] +public sealed class DebuggerStepThroughAttribute : Attribute // TypeDefIndex: 356 +{ + // Methods + public void .ctor(); // 0x002D3D28 +} + +// Namespace: System.Diagnostics +[Serializable] +public sealed class DebuggerStepperBoundaryAttribute : Attribute // TypeDefIndex: 357 +{ + // Methods + public void .ctor(); // 0x002D3D30 +} + +// Namespace: System.Diagnostics +public sealed class DebuggerTypeProxyAttribute : Attribute // TypeDefIndex: 358 +{ + // Fields + private string proxy_type_name; // 0x08 + private string target_type_name; // 0x0C + private Type target_type; // 0x10 + + // Properties + public string ProxyTypeName { get; } // 0x002D3D9C + public Type Target { get; set; } // 0x002D3DA4 0x002D3DAC + public string TargetTypeName { get; set; } // 0x002D3DEC 0x002D3DF4 + + // Methods + public void .ctor(string typeName); // 0x002D3D38 + public void .ctor(Type type); // 0x002D3D58 +} + +// Namespace: System.Diagnostics +public sealed class DebuggerVisualizerAttribute : Attribute // TypeDefIndex: 359 +{ + // Fields + private string description; // 0x08 + private string visualizerSourceName; // 0x0C + private string visualizerName; // 0x10 + private string targetTypeName; // 0x14 + private Type target; // 0x18 + + // Properties + public string Description { get; set; } // 0x002D420C 0x002D4214 + public Type Target { get; set; } // 0x002D421C 0x002D4224 + public string TargetTypeName { get; set; } // 0x002D4264 0x002D426C + public string VisualizerObjectSourceTypeName { get; } // 0x002D4274 + public string VisualizerTypeName { get; } // 0x002D427C + + // Methods + public void .ctor(string visualizerTypeName); // 0x002D3DFC + public void .ctor(Type visualizer); // 0x002D3E1C + public void .ctor(string visualizerTypeName, string visualizerObjectSourceTypeName); // 0x002D3EF0 + public void .ctor(string visualizerTypeName, Type visualizerObjectSource); // 0x002D3F18 + public void .ctor(Type visualizer, string visualizerObjectSourceTypeName); // 0x002D3FF4 + public void .ctor(Type visualizer, Type visualizerObjectSource); // 0x002D40D0 +} + +// Namespace: System.Diagnostics +[Serializable] +public class StackFrame // TypeDefIndex: 360 +{ + // Fields + public const int OFFSET_UNKNOWN = -1; // 0x00 + private int ilOffset; // 0x08 + private int nativeOffset; // 0x0C + private MethodBase methodBase; // 0x10 + private string fileName; // 0x14 + private int lineNumber; // 0x18 + private int columnNumber; // 0x1C + private string internalMethodName; // 0x20 + + // Methods + public void .ctor(); // 0x002D4284 + public void .ctor(bool fNeedFileInfo); // 0x002D42F0 + public void .ctor(int skipFrames); // 0x002D435C + public void .ctor(int skipFrames, bool fNeedFileInfo); // 0x002D43C8 + public void .ctor(string fileName, int lineNumber); // 0x002D4438 + public void .ctor(string fileName, int lineNumber, int colNumber); // 0x002D44BC + private static bool get_frame_info(int skip, bool needFileInfo, out MethodBase method, out int iloffset, out int native_offset, out string file, out int line, out int column); // 0x002D42EC + public virtual int GetFileLineNumber(); // 0x002D4540 + public virtual int GetFileColumnNumber(); // 0x002D4548 + public virtual string GetFileName(); // 0x002D4550 + internal string GetSecureFileName(); // 0x002D4558 + public virtual int GetILOffset(); // 0x002D4660 + public virtual MethodBase GetMethod(); // 0x002D4668 + public virtual int GetNativeOffset(); // 0x002D4670 + internal string GetInternalMethodName(); // 0x002D4678 + public override string ToString(); // 0x002D4680 +} + +// Namespace: System.Diagnostics +[Serializable] +public class StackTrace // TypeDefIndex: 361 +{ + // Fields + public const int METHODS_TO_SKIP = 0; // 0x00 + private StackFrame[] frames; // 0x08 + private bool debug_info; // 0x0C + + // Properties + public virtual int FrameCount { get; } // 0x002D521C + + // Methods + public void .ctor(); // 0x002D4960 + public void .ctor(bool fNeedFileInfo); // 0x002D4BD4 + public void .ctor(int skipFrames); // 0x002D4C00 + public void .ctor(int skipFrames, bool fNeedFileInfo); // 0x002D4C2C + public void .ctor(Exception e); // 0x002D4C5C + public void .ctor(Exception e, bool fNeedFileInfo); // 0x002D4CA4 + public void .ctor(Exception e, int skipFrames); // 0x002D4CCC + public void .ctor(Exception e, int skipFrames, bool fNeedFileInfo); // 0x002D4C84 + internal void .ctor(Exception e, int skipFrames, bool fNeedFileInfo, bool returnNativeFrames); // 0x002D4CF0 + public void .ctor(StackFrame frame); // 0x002D50A8 + public void .ctor(Thread targetThread, bool needFileInfo); // 0x002D5184 + private void init_frames(int skipFrames, bool fNeedFileInfo); // 0x002D4988 + private static StackFrame[] get_trace(Exception e, int skipFrames, bool fNeedFileInfo); // 0x002D50A4 + public virtual StackFrame GetFrame(int index); // 0x002D5230 + public virtual StackFrame[] GetFrames(); // 0x002D52A8 + public override string ToString(); // 0x002D52B0 +} + +// Namespace: System.Globalization +[Serializable] +public abstract class Calendar : ICloneable // TypeDefIndex: 362 +{ + // Fields + public const int CurrentEra = 0; // 0x00 + [NonSerialized] private bool m_isReadOnly; // 0x08 + [NonSerialized] internal int twoDigitYearMax; // 0x0C + [NonSerialized] private int M_MaxYearValue; // 0x10 + [NonSerialized] internal string[] M_AbbrEraNames; // 0x14 + [NonSerialized] internal string[] M_EraNames; // 0x18 + internal int m_currentEraValue; // 0x1C + + // Properties + internal virtual int M_DaysInWeek { get; } // 0x002E8318 + public abstract int[] Eras { get; } + public virtual CalendarAlgorithmType AlgorithmType { get; } // 0x002E85E4 + public virtual DateTime MaxSupportedDateTime { get; } // 0x002E85EC + public virtual DateTime MinSupportedDateTime { get; } // 0x002E8680 + public bool IsReadOnly { get; } // 0x002E88F4 + internal virtual int M_MaxYear { get; } // 0x002E8A88 + public virtual int TwoDigitYearMax { get; set; } // 0x002E8B54 0x002E8B5C + internal string[] AbbreviatedEraNames { get; set; } // 0x002E987C 0x002E99CC + internal string[] EraNames { get; set; } // 0x002E9BD0 0x002E9D20 + + // Methods + protected void .ctor(); // 0x002E82F8 + internal string M_ValidValues(object a, object b); // 0x002E8320 + internal void M_ArgumentInRange(string param, int arg, int a, int b); // 0x002E83FC + internal void M_CheckHMSM(int hour, int minute, int second, int milliseconds); // 0x002E84F4 + public virtual object Clone(); // 0x002E8718 + public virtual int GetLeapMonth(int year); // 0x002E87C4 + public virtual int GetLeapMonth(int year, int era); // 0x002E8868 + public static Calendar ReadOnly(Calendar calendar); // 0x002E88FC + internal void CheckReadOnly(); // 0x002E89DC + internal virtual void M_CheckYE(int year, int era); // 0x002E8B50 + public virtual DateTime AddDays(DateTime time, int days); // 0x002E8C1C + public virtual DateTime AddHours(DateTime time, int hours); // 0x002E8CEC + public virtual DateTime AddMilliseconds(DateTime time, double milliseconds); // 0x002E8DBC + public virtual DateTime AddMinutes(DateTime time, int minutes); // 0x002E8E8C + public abstract DateTime AddMonths(DateTime time, int months); + public virtual DateTime AddSeconds(DateTime time, int seconds); // 0x002E8F5C + public virtual DateTime AddWeeks(DateTime time, int weeks); // 0x002E902C + public abstract DateTime AddYears(DateTime time, int years); + public abstract int GetDayOfMonth(DateTime time); + public abstract DayOfWeek GetDayOfWeek(DateTime time); + public abstract int GetDayOfYear(DateTime time); + public virtual int GetDaysInMonth(int year, int month); // 0x002E9098 + public abstract int GetDaysInMonth(int year, int month, int era); + public virtual int GetDaysInYear(int year); // 0x002E90C4 + public abstract int GetDaysInYear(int year, int era); + public abstract int GetEra(DateTime time); + public virtual int GetHour(DateTime time); // 0x002E90D8 + public virtual double GetMilliseconds(DateTime time); // 0x002E912C + public virtual int GetMinute(DateTime time); // 0x002E918C + public abstract int GetMonth(DateTime time); + public virtual int GetMonthsInYear(int year); // 0x002E91E0 + public abstract int GetMonthsInYear(int year, int era); + public virtual int GetSecond(DateTime time); // 0x002E91F4 + internal int M_DiffDays(DateTime timeA, DateTime timeB); // 0x002E9248 + internal DateTime M_GetFirstDayOfSecondWeekOfYear(int year, CalendarWeekRule rule, DayOfWeek firstDayOfWeek); // 0x002E92F0 + public virtual int GetWeekOfYear(DateTime time, CalendarWeekRule rule, DayOfWeek firstDayOfWeek); // 0x002E94BC + public abstract int GetYear(DateTime time); + public virtual bool IsLeapDay(int year, int month, int day); // 0x002E9668 + public abstract bool IsLeapDay(int year, int month, int day, int era); + public virtual bool IsLeapMonth(int year, int month); // 0x002E9694 + public abstract bool IsLeapMonth(int year, int month, int era); + public virtual bool IsLeapYear(int year); // 0x002E96C0 + public abstract bool IsLeapYear(int year, int era); + public virtual DateTime ToDateTime(int year, int month, int day, int hour, int minute, int second, int millisecond); // 0x002E96D4 + public abstract DateTime ToDateTime(int year, int month, int day, int hour, int minute, int second, int millisecond, int era); + public virtual int ToFourDigitYear(int year); // 0x002E9728 +} + +// Namespace: System.Globalization +public enum CalendarAlgorithmType // TypeDefIndex: 363 +{ + Unknown = 0, + SolarCalendar = 1, + LunarCalendar = 2, + LunisolarCalendar = 3 +} + +// Namespace: System.Globalization +[Serializable] +public enum CalendarWeekRule // TypeDefIndex: 364 +{ + FirstDay = 0, + FirstFullWeek = 1, + FirstFourDayWeek = 2 +} + +// Namespace: System.Globalization +internal class CCMath // TypeDefIndex: 365 +{ + // Methods + public void .ctor(); // 0x002E81DC + public static double round(double x); // 0x002E81E4 + public static double mod(double x, double y); // 0x002E81F8 + public static int div(int x, int y); // 0x002E5018 + public static int mod(int x, int y); // 0x002E4C80 + public static int div_mod(out int remainder, int x, int y); // 0x002E504C + public static int signum(double x); // 0x002E8230 + public static int signum(int x); // 0x002E8258 + public static double amod(double x, double y); // 0x002E826C + public static int amod(int x, int y); // 0x002E82B0 +} + +// Namespace: System.Globalization +internal class CCFixed // TypeDefIndex: 366 +{ + // Methods + public void .ctor(); // 0x002E4AF8 + public static DateTime ToDateTime(int date); // 0x002E4B00 + public static DateTime ToDateTime(int date, int hour, int minute, int second, double milliseconds); // 0x002E4B48 + public static int FromDateTime(DateTime time); // 0x002E3BCC + public static DayOfWeek day_of_week(int date); // 0x002E4C44 + public static int kday_on_or_before(int date, int k); // 0x002E4CC0 + public static int kday_on_or_after(int date, int k); // 0x002E4D00 + public static int kd_nearest(int date, int k); // 0x002E4D44 + public static int kday_after(int date, int k); // 0x002E4D88 + public static int kday_before(int date, int k); // 0x002E4DCC +} + +// Namespace: System.Globalization +internal class CCGregorianCalendar // TypeDefIndex: 367 +{ + // Fields + private const int epoch = 1; // 0x00 + + // Methods + public void .ctor(); // 0x002E4E10 + public static bool is_leap_year(int year); // 0x002E4E18 + public static int fixed_from_dmy(int day, int month, int year); // 0x002E4EB0 + public static int year_from_fixed(int date); // 0x002E49E0 + public static void my_from_fixed(out int month, out int year, int date); // 0x002E5098 + public static void dmy_from_fixed(out int day, out int month, out int year, int date); // 0x002E5238 + public static int month_from_fixed(int date); // 0x002E5280 + public static int day_from_fixed(int date); // 0x002E52B4 + public static int date_difference(int dayA, int monthA, int yearA, int dayB, int monthB, int yearB); // 0x002E5300 + public static int day_number(int day, int month, int year); // 0x002E5340 + public static int days_remaining(int day, int month, int year); // 0x002E536C + public static DateTime AddMonths(DateTime time, int months); // 0x002E53A8 + public static DateTime AddYears(DateTime time, int years); // 0x002E557C + public static int GetDayOfMonth(DateTime time); // 0x002E56E0 + public static int GetDayOfYear(DateTime time); // 0x002E5718 + public static int GetDaysInMonth(int year, int month); // 0x002E5544 + public static int GetDaysInYear(int year); // 0x002E57F0 + public static int GetMonth(DateTime time); // 0x002E5910 + public static int GetYear(DateTime time); // 0x002E5964 + public static bool IsLeapDay(int year, int month, int day); // 0x002E59A0 + public static DateTime ToDateTime(int year, int month, int day, int hour, int minute, int second, int milliseconds); // 0x002E5A68 +} + +// Namespace: +public enum Month // TypeDefIndex: 368 +{ + january = 1, + february = 2, + march = 3, + april = 4, + may = 5, + june = 6, + july = 7, + august = 8, + september = 9, + october = 10, + november = 11, + december = 12 +} + +// Namespace: System.Globalization +internal class CCJulianCalendar // TypeDefIndex: 369 +{ + // Fields + private const int epoch = -1; // 0x00 + + // Methods + public void .ctor(); // 0x002E7CC0 + public static bool is_leap_year(int year); // 0x002E7CC8 + public static int fixed_from_dmy(int day, int month, int year); // 0x002E7D18 + public static int year_from_fixed(int date); // 0x002E7E00 + public static void my_from_fixed(out int month, out int year, int date); // 0x002E7E48 + public static void dmy_from_fixed(out int day, out int month, out int year, int date); // 0x002E7F80 + public static int month_from_fixed(int date); // 0x002E7FC8 + public static int day_from_fixed(int date); // 0x002E7FFC + public static int date_difference(int dayA, int monthA, int yearA, int dayB, int monthB, int yearB); // 0x002E8048 + public static int day_number(int day, int month, int year); // 0x002E8088 + public static int days_remaining(int day, int month, int year); // 0x002E8138 +} + +// Namespace: +public enum Month // TypeDefIndex: 370 +{ + january = 1, + february = 2, + march = 3, + april = 4, + may = 5, + june = 6, + july = 7, + august = 8, + september = 9, + october = 10, + november = 11, + december = 12 +} + +// Namespace: System.Globalization +internal class CCHebrewCalendar // TypeDefIndex: 371 +{ + // Fields + private const int epoch = -1373427; // 0x00 + + // Methods + public void .ctor(); // 0x002E6DF4 + public static bool is_leap_year(int year); // 0x002E6DFC + public static int last_month_of_year(int year); // 0x002E6E48 + public static int elapsed_days(int year); // 0x002E6E98 + public static int new_year_delay(int year); // 0x002E6FC0 + public static int last_day_of_month(int month, int year); // 0x002E700C + public static bool long_heshvan(int year); // 0x002E71DC + public static bool short_kislev(int year); // 0x002E724C + public static int days_in_year(int year); // 0x002E72BC + public static int fixed_from_dmy(int day, int month, int year); // 0x002E72F4 + public static int year_from_fixed(int date); // 0x002E73F0 + public static void my_from_fixed(out int month, out int year, int date); // 0x002E7470 + public static void dmy_from_fixed(out int day, out int month, out int year, int date); // 0x002E74E8 + public static int month_from_fixed(int date); // 0x002E7530 + public static int day_from_fixed(int date); // 0x002E7564 + public static int date_difference(int dayA, int monthA, int yearA, int dayB, int monthB, int yearB); // 0x002E75B0 + public static int day_number(int day, int month, int year); // 0x002E75F0 + public static int days_remaining(int day, int month, int year); // 0x002E7628 +} + +// Namespace: +public enum Month // TypeDefIndex: 372 +{ + nisan = 1, + iyyar = 2, + sivan = 3, + tammuz = 4, + av = 5, + elul = 6, + tishri = 7, + heshvan = 8, + kislev = 9, + teveth = 10, + shevat = 11, + adar = 12, + adar_I = 12, + adar_II = 13 +} + +// Namespace: System.Globalization +internal class CCHijriCalendar // TypeDefIndex: 373 +{ + // Fields + private const int epoch = 227014; // 0x00 + + // Methods + public void .ctor(); // 0x002E7680 + public static bool is_leap_year(int year); // 0x002E7688 + public static int fixed_from_dmy(int day, int month, int year); // 0x002E76D8 + public static int year_from_fixed(int date); // 0x002E7778 + public static void my_from_fixed(out int month, out int year, int date); // 0x002E77C0 + public static void dmy_from_fixed(out int day, out int month, out int year, int date); // 0x002E78B0 + public static int month_from_fixed(int date); // 0x002E7970 + public static int day_from_fixed(int date); // 0x002E7A40 + public static int date_difference(int dayA, int monthA, int yearA, int dayB, int monthB, int yearB); // 0x002E7A80 + public static int day_number(int day, int month, int year); // 0x002E7BB8 + public static int days_remaining(int day, int month, int year); // 0x002E7C78 +} + +// Namespace: +public enum Month // TypeDefIndex: 374 +{ + muharram = 1, + safar = 2, + rabi_I = 3, + rabi_II = 4, + jumada_I = 5, + jumada_II = 6, + rajab = 7, + shaban = 8, + ramadan = 9, + shawwal = 10, + dhu_al_quada = 11, + dhu_al_hijja = 12 +} + +// Namespace: System.Globalization +internal class CCEastAsianLunisolarCalendar // TypeDefIndex: 375 +{ + // Fields + private const int initial_epact = 29; // 0x00 + + // Methods + public void .ctor(); // 0x002E2EF4 + public static int fixed_from_dmy(int day, int month, int year); // 0x002E2EFC + public static int year_from_fixed(int date); // 0x002E2F94 + public static void my_from_fixed(out int month, out int year, int date); // 0x002E302C + public static void dmy_from_fixed(out int day, out int month, out int year, int date); // 0x002E30C4 + public static DateTime AddMonths(DateTime date, int months); // 0x002E315C + public static DateTime AddYears(DateTime date, int years); // 0x002E31F4 + public static int GetDayOfMonth(DateTime date); // 0x002E328C + public static int GetDayOfYear(DateTime date); // 0x002E3324 + public static int GetDaysInMonth(int gyear, int month); // 0x002E33BC + public static int GetDaysInYear(int year); // 0x002E3454 + public static int GetMonth(DateTime date); // 0x002E34EC + public static bool IsLeapMonth(int gyear, int month); // 0x002E3584 + public static bool IsLeapYear(int gyear); // 0x002E35D8 + public static DateTime ToDateTime(int year, int month, int day, int hour, int minute, int second, int millisecond); // 0x002E3618 +} + +// Namespace: System.Globalization +[Serializable] +internal class CCGregorianEraHandler // TypeDefIndex: 376 +{ + // Fields + private SortedList _Eras; // 0x08 + + // Properties + public int[] Eras { get; } // 0x002E5B38 + + // Methods + public void .ctor(); // 0x002E5ABC + public void appendEra(int nr, int rd_start, int rd_end); // 0x002E5CC4 + public void appendEra(int nr, int rd_start); // 0x002E5F04 + public int GregorianYear(int year, int era); // 0x002E5FD8 + public int EraYear(out int era, int date); // 0x002E6298 + public void CheckDateTime(DateTime time); // 0x002E6848 + public bool ValidDate(int date); // 0x002E6948 + public bool ValidEra(int era); // 0x002E6D48 +} + +// Namespace: +[Serializable] +private struct Era // TypeDefIndex: 377 +{ + // Fields + private int _nr; // 0x08 + private int _start; // 0x0C + private int _gregorianYearStart; // 0x10 + private int _end; // 0x14 + private int _maxYear; // 0x18 + + // Properties + public int Nr { get; } // 0x0008D34C + + // Methods + public void .ctor(int nr, int start, int end); // 0x0008D330 + public int GregorianYear(int year); // 0x0008D354 + public bool Covers(int date); // 0x0008D35C + public int EraYear(out int era, int date); // 0x0008D384 +} + +// Namespace: System.Globalization +[Serializable] +internal class CCEastAsianLunisolarEraHandler // TypeDefIndex: 378 +{ + // Fields + private SortedList _Eras; // 0x08 + + // Properties + public int[] Eras { get; } // 0x002E372C + + // Methods + public void .ctor(); // 0x002E36B0 + public void appendEra(int nr, int rd_start, int rd_end); // 0x002E38B8 + public void appendEra(int nr, int rd_start); // 0x002E3AF8 + public int GregorianYear(int year, int era); // 0x002E3C00 + public int EraYear(out int era, int date); // 0x002E3E8C + public void CheckDateTime(DateTime time); // 0x002E443C + public bool ValidDate(int date); // 0x002E453C + public bool ValidEra(int era); // 0x002E493C +} + +// Namespace: +[Serializable] +private struct Era // TypeDefIndex: 379 +{ + // Fields + private int _nr; // 0x08 + private int _start; // 0x0C + private int _gregorianYearStart; // 0x10 + private int _end; // 0x14 + private int _maxYear; // 0x18 + + // Properties + public int Nr { get; } // 0x0008D2F0 + + // Methods + public void .ctor(int nr, int start, int end); // 0x0008D2D4 + public int GregorianYear(int year); // 0x0008D2F8 + public bool Covers(int date); // 0x0008D300 + public int EraYear(out int era, int date); // 0x0008D328 +} + +// Namespace: System.Globalization +public sealed class CharUnicodeInfo // TypeDefIndex: 380 +{ + // Methods + private void .ctor(); // 0x002E9F24 + public static int GetDecimalDigitValue(char ch); // 0x002E9F2C + public static int GetDecimalDigitValue(string s, int index); // 0x002EA1F4 + public static int GetDigitValue(char ch); // 0x002EA2B8 + public static int GetDigitValue(string s, int index); // 0x002EA3C8 + public static double GetNumericValue(char ch); // 0x002EA490 + public static double GetNumericValue(string s, int index); // 0x002EAA48 + public static UnicodeCategory GetUnicodeCategory(char ch); // 0x002EAB0C + public static UnicodeCategory GetUnicodeCategory(string s, int index); // 0x002EAB90 +} + +// Namespace: System.Globalization +[Serializable] +public class ChineseLunisolarCalendar : EastAsianLunisolarCalendar // TypeDefIndex: 381 +{ + // Fields + public const int ChineseEra = 1; // 0x00 + internal static readonly CCEastAsianLunisolarEraHandler era_handler; // 0x00 + private static DateTime ChineseMin; // 0x08 + private static DateTime ChineseMax; // 0x18 + + // Properties + public override int[] Eras { get; } // 0x002EAEA4 + public override DateTime MinSupportedDateTime { get; } // 0x002EB0AC + public override DateTime MaxSupportedDateTime { get; } // 0x002EB144 + + // Methods + public void .ctor(); // 0x002EAC7C + private static void .cctor(); // 0x002EAD18 + public override int GetEra(DateTime time); // 0x002EAFB4 +} + +// Namespace: System.Globalization +[Serializable] +internal sealed class CodePageDataItem // TypeDefIndex: 382 +{ + // Fields + private string m_bodyName; // 0x08 + private int m_codePage; // 0x0C + private int m_dataIndex; // 0x10 + private string m_description; // 0x14 + private uint m_flags; // 0x18 + private string m_headerName; // 0x1C + private int m_uiFamilyCodePage; // 0x20 + private string m_webName; // 0x24 + + // Methods + private void .ctor(); // 0x002EB1DC +} + +// Namespace: System.Globalization +[Serializable] +public class CompareInfo : IDeserializationCallback // TypeDefIndex: 383 +{ + // Fields + private const CompareOptions ValidCompareOptions_NoStringSort = 1342177311; // 0x00 + private const CompareOptions ValidCompareOptions = 1879048223; // 0x00 + private static readonly bool useManagedCollation; // 0x00 + private int culture; // 0x08 + [NonSerialized] private string icu_name; // 0x0C + private int win32LCID; // 0x10 + private string m_name; // 0x14 + [NonSerialized] private SimpleCollator collator; // 0x18 + private static Hashtable collators; // 0x04 + [NonSerialized] private static object monitor; // 0x08 + + // Properties + internal static bool UseManagedCollation { get; } // 0x002EBA78 + public int LCID { get; } // 0x002EE72C + public virtual string Name { get; } // 0x002EE734 + + // Methods + private void .ctor(); // 0x002EB1E4 + internal void .ctor(CultureInfo ci); // 0x002EB1EC + private static void .cctor(); // 0x002EB6C4 + private void System.Runtime.Serialization.IDeserializationCallback.OnDeserialization(object sender); // 0x002EB864 + private void construct_compareinfo(string locale); // 0x002EB6C0 + private void free_internal_collator(); // 0x002EBB04 + private int internal_compare(string str1, int offset1, int length1, string str2, int offset2, int length2, CompareOptions options); // 0x002EBB08 + private void assign_sortkey(object key, string source, CompareOptions options); // 0x002EBB0C + private int internal_index(string source, int sindex, int count, char value, CompareOptions options, bool first); // 0x002EBB10 + private int internal_index(string source, int sindex, int count, string value, CompareOptions options, bool first); // 0x002EBB3C + protected override void Finalize(); // 0x002EBB68 + private int internal_compare_managed(string str1, int offset1, int length1, string str2, int offset2, int length2, CompareOptions options); // 0x002EBBCC + private int internal_compare_switch(string str1, int offset1, int length1, string str2, int offset2, int length2, CompareOptions options); // 0x002EBC3C + public virtual int Compare(string string1, string string2); // 0x002EBDA0 + public virtual int Compare(string string1, string string2, CompareOptions options); // 0x002EBDCC + public virtual int Compare(string string1, int offset1, string string2, int offset2); // 0x002EBEFC + public virtual int Compare(string string1, int offset1, string string2, int offset2, CompareOptions options); // 0x002EBF2C + public virtual int Compare(string string1, int offset1, int length1, string string2, int offset2, int length2); // 0x002EC160 + public virtual int Compare(string string1, int offset1, int length1, string string2, int offset2, int length2, CompareOptions options); // 0x002EC1A4 + public override bool Equals(object value); // 0x002EC498 + public static CompareInfo GetCompareInfo(int culture); // 0x002EC558 + public static CompareInfo GetCompareInfo(string name); // 0x002EC5F8 + public static CompareInfo GetCompareInfo(int culture, Assembly assembly); // 0x002EC718 + public static CompareInfo GetCompareInfo(string name, Assembly assembly); // 0x002EC8D0 + public override int GetHashCode(); // 0x002ECAD4 + public virtual SortKey GetSortKey(string source); // 0x002ECADC + public virtual SortKey GetSortKey(string source, CompareOptions options); // 0x002ECAF0 + public virtual int IndexOf(string source, char value); // 0x002ECCF0 + public virtual int IndexOf(string source, string value); // 0x002ECD50 + public virtual int IndexOf(string source, char value, CompareOptions options); // 0x002ECDB0 + public virtual int IndexOf(string source, char value, int startIndex); // 0x002ECE10 + public virtual int IndexOf(string source, string value, CompareOptions options); // 0x002ECE78 + public virtual int IndexOf(string source, string value, int startIndex); // 0x002ECED8 + public virtual int IndexOf(string source, char value, int startIndex, CompareOptions options); // 0x002ECF40 + public virtual int IndexOf(string source, char value, int startIndex, int count); // 0x002ECFA8 + public virtual int IndexOf(string source, string value, int startIndex, CompareOptions options); // 0x002ECFD8 + public virtual int IndexOf(string source, string value, int startIndex, int count); // 0x002ED040 + private int internal_index_managed(string s, int sindex, int count, char c, CompareOptions opt, bool first); // 0x002ED070 + private int internal_index_switch(string s, int sindex, int count, char c, CompareOptions opt, bool first); // 0x002ED0F4 + public virtual int IndexOf(string source, char value, int startIndex, int count, CompareOptions options); // 0x002ED264 + private int internal_index_managed(string s1, int sindex, int count, string s2, CompareOptions opt, bool first); // 0x002ED49C + private int internal_index_switch(string s1, int sindex, int count, string s2, CompareOptions opt, bool first); // 0x002ED520 + public virtual int IndexOf(string source, string value, int startIndex, int count, CompareOptions options); // 0x002ED690 + public virtual bool IsPrefix(string source, string prefix); // 0x002ED8E0 + public virtual bool IsPrefix(string source, string prefix, CompareOptions options); // 0x002ED90C + public virtual bool IsSuffix(string source, string suffix); // 0x002EDB54 + public virtual bool IsSuffix(string source, string suffix, CompareOptions options); // 0x002EDB80 + public virtual int LastIndexOf(string source, char value); // 0x002EDDC8 + public virtual int LastIndexOf(string source, string value); // 0x002EDE44 + public virtual int LastIndexOf(string source, char value, CompareOptions options); // 0x002EDEC0 + public virtual int LastIndexOf(string source, char value, int startIndex); // 0x002EDF3C + public virtual int LastIndexOf(string source, string value, CompareOptions options); // 0x002EDF70 + public virtual int LastIndexOf(string source, string value, int startIndex); // 0x002EDFEC + public virtual int LastIndexOf(string source, char value, int startIndex, CompareOptions options); // 0x002EE020 + public virtual int LastIndexOf(string source, char value, int startIndex, int count); // 0x002EE054 + public virtual int LastIndexOf(string source, string value, int startIndex, CompareOptions options); // 0x002EE084 + public virtual int LastIndexOf(string source, string value, int startIndex, int count); // 0x002EE0B8 + public virtual int LastIndexOf(string source, char value, int startIndex, int count, CompareOptions options); // 0x002EE0E8 + public virtual int LastIndexOf(string source, string value, int startIndex, int count, CompareOptions options); // 0x002EE318 + public static bool IsSortable(char ch); // 0x002EE564 + public static bool IsSortable(string text); // 0x002EE5E8 + public override string ToString(); // 0x002EE66C +} + +// Namespace: System.Globalization +[Serializable] +public enum CompareOptions // TypeDefIndex: 384 +{ + None = 0, + IgnoreCase = 1, + IgnoreNonSpace = 2, + IgnoreSymbols = 4, + IgnoreKanaType = 8, + IgnoreWidth = 16, + OrdinalIgnoreCase = 268435456, + StringSort = 536870912, + Ordinal = 1073741824 +} + +// Namespace: System.Globalization +[Serializable] +public class CultureInfo : ICloneable, IFormatProvider // TypeDefIndex: 385 +{ + // Fields + private const int NumOptionalCalendars = 5; // 0x00 + private const int GregorianTypeMask = 16777215; // 0x00 + private const int CalendarTypeBits = 24; // 0x00 + private const int InvariantCultureId = 127; // 0x00 + private static CultureInfo invariant_culture_info; // 0x00 + private static object shared_table_lock; // 0x04 + internal static int BootstrapCultureID; // 0x08 + private bool m_isReadOnly; // 0x08 + private int cultureID; // 0x0C + [NonSerialized] private int parent_lcid; // 0x10 + [NonSerialized] private int specific_lcid; // 0x14 + [NonSerialized] private int datetime_index; // 0x18 + [NonSerialized] private int number_index; // 0x1C + private bool m_useUserOverride; // 0x20 + [NonSerialized] private NumberFormatInfo numInfo; // 0x24 + private DateTimeFormatInfo dateTimeInfo; // 0x28 + private TextInfo textInfo; // 0x2C + private string m_name; // 0x30 + [NonSerialized] private string displayname; // 0x34 + [NonSerialized] private string englishname; // 0x38 + [NonSerialized] private string nativename; // 0x3C + [NonSerialized] private string iso3lang; // 0x40 + [NonSerialized] private string iso2lang; // 0x44 + [NonSerialized] private string icu_name; // 0x48 + [NonSerialized] private string win3lang; // 0x4C + [NonSerialized] private string territory; // 0x50 + private CompareInfo compareInfo; // 0x54 + [NonSerialized] private readonly void * calendar_data; // 0x58 + [NonSerialized] private readonly void * textinfo_data; // 0x5C + [NonSerialized] private Calendar[] optional_calendars; // 0x60 + [NonSerialized] private CultureInfo parent_culture; // 0x64 + private int m_dataItem; // 0x68 + private Calendar calendar; // 0x6C + [NonSerialized] private bool constructed; // 0x70 + [NonSerialized] internal byte[] cached_serialized_form; // 0x74 + private static readonly string MSG_READONLY; // 0x0C + private static Hashtable shared_by_number; // 0x10 + private static Hashtable shared_by_name; // 0x14 + private static Dictionary`2 <>f__switch$map19; // 0x18 + private static Dictionary`2 <>f__switch$map1A; // 0x1C + + // Properties + public static CultureInfo InvariantCulture { get; } // 0x002DAC48 + public static CultureInfo CurrentCulture { get; } // 0x002EF390 + public static CultureInfo CurrentUICulture { get; } // 0x002EF42C + internal string Territory { get; } // 0x002EF6F0 + public virtual int LCID { get; } // 0x002EF6F8 + public virtual string Name { get; } // 0x002EF700 + public virtual string NativeName { get; } // 0x002EF708 + public virtual Calendar Calendar { get; } // 0x002EF75C + public virtual Calendar[] OptionalCalendars { get; } // 0x002EF790 + public virtual CultureInfo Parent { get; } // 0x002EFB10 + public virtual TextInfo TextInfo { get; } // 0x002EFC20 + public virtual string ThreeLetterISOLanguageName { get; } // 0x002EFD94 + public virtual string ThreeLetterWindowsLanguageName { get; } // 0x002EFDC8 + public virtual string TwoLetterISOLanguageName { get; } // 0x002EFDFC + public bool UseUserOverride { get; } // 0x002EFE30 + internal string IcuName { get; } // 0x002EB68C + public virtual CompareInfo CompareInfo { get; } // 0x002F0754 + public virtual bool IsNeutralCulture { get; } // 0x002F09D0 + public virtual NumberFormatInfo NumberFormat { get; set; } // 0x002F0B3C 0x002F0C88 + public virtual DateTimeFormatInfo DateTimeFormat { get; set; } // 0x002F0DEC 0x002F1308 + public virtual string DisplayName { get; } // 0x002F146C + public virtual string EnglishName { get; } // 0x002F14A0 + public static CultureInfo InstalledUICulture { get; } // 0x002F14D4 + public bool IsReadOnly { get; } // 0x002F17D4 + + // Methods + public void .ctor(int culture); // 0x002EBA58 + public void .ctor(int culture, bool useUserOverride); // 0x002EE73C + private void .ctor(int culture, bool useUserOverride, bool read_only); // 0x002EE758 + public void .ctor(string name); // 0x002EC6F8 + public void .ctor(string name, bool useUserOverride); // 0x002EEB90 + private void .ctor(string name, bool useUserOverride, bool read_only); // 0x002EEBAC + private void .ctor(); // 0x002EEFE0 + private static void .cctor(); // 0x002EF000 + public static CultureInfo CreateSpecificCulture(string name); // 0x002EF0C8 + internal static CultureInfo ConstructCurrentCulture(); // 0x002EF4C8 + internal static CultureInfo ConstructCurrentUICulture(); // 0x002EF678 + public void ClearCachedData(); // 0x002EFE38 + public virtual object Clone(); // 0x002EFF04 + public override bool Equals(object value); // 0x002F01A0 + public static CultureInfo[] GetCultures(CultureTypes types); // 0x002F0260 + public override int GetHashCode(); // 0x002F047C + public static CultureInfo ReadOnly(CultureInfo ci); // 0x002F0484 + public override string ToString(); // 0x002F074C + internal static bool IsIDNeutralCulture(int lcid); // 0x002F087C + internal void CheckNeutral(); // 0x002F0A30 + public virtual object GetFormat(Type formatType); // 0x002F17DC + private void Construct(); // 0x002EF73C + private bool ConstructInternalLocaleFromName(string locale); // 0x002EED64 + private bool ConstructInternalLocaleFromLcid(int lcid); // 0x002EEB8C + private static bool ConstructInternalLocaleFromSpecificName(CultureInfo ci, string name); // 0x002EF308 + private static bool ConstructInternalLocaleFromCurrentLocale(CultureInfo ci); // 0x002EF5F8 + private bool construct_internal_locale_from_lcid(int lcid); // 0x002F18FC + private bool construct_internal_locale_from_name(string name); // 0x002F1900 + private static bool construct_internal_locale_from_specific_name(CultureInfo ci, string name); // 0x002F1904 + private static bool construct_internal_locale_from_current_locale(CultureInfo ci); // 0x002F1908 + private static CultureInfo[] internal_get_cultures(bool neutral, bool specific, bool installed); // 0x002F0478 + private void construct_datetime_format(); // 0x002F11DC + private void construct_number_format(); // 0x002F0C84 + private static bool internal_is_lcid_neutral(int lcid, out bool is_neutral); // 0x002F09CC + private void ConstructInvariant(bool read_only); // 0x002EE928 + private TextInfo CreateTextInfo(bool readOnly); // 0x002EFCF8 + private static void insert_into_shared_tables(CultureInfo c); // 0x002F1A60 + public static CultureInfo GetCultureInfo(int culture); // 0x002F1564 + public static CultureInfo GetCultureInfo(string name); // 0x002F1C78 + public static CultureInfo GetCultureInfo(string name, string altName); // 0x002F1F28 + public static CultureInfo GetCultureInfoByIetfLanguageTag(string name); // 0x002F2058 + internal static CultureInfo CreateCulture(string name, bool reference); // 0x002F2350 + internal void ConstructCalendars(); // 0x002EF820 +} + +// Namespace: System.Globalization +[Serializable] +public enum CultureTypes // TypeDefIndex: 386 +{ + NeutralCultures = 1, + SpecificCultures = 2, + InstalledWin32Cultures = 4, + AllCultures = 7, + UserCustomCulture = 8, + ReplacementCultures = 16, + WindowsOnlyCultures = 32, + FrameworkCultures = 64 +} + +// Namespace: System.Globalization +internal enum DateTimeFormatFlags // TypeDefIndex: 387 +{ + Unused = 0, + But = 1, + Serialized = 2, + By = 3, + Microsoft = 4 +} + +// Namespace: System.Globalization +[Serializable] +public sealed class DateTimeFormatInfo : ICloneable, IFormatProvider // TypeDefIndex: 388 +{ + // Fields + private const string _RoundtripPattern = "yyyy'-'MM'-'dd'T'HH':'mm':'ss.fffffffK"; // 0x00 + private static readonly string MSG_READONLY; // 0x00 + private static readonly string MSG_ARRAYSIZE_MONTH; // 0x04 + private static readonly string MSG_ARRAYSIZE_DAY; // 0x08 + private static readonly string[] INVARIANT_ABBREVIATED_DAY_NAMES; // 0x0C + private static readonly string[] INVARIANT_DAY_NAMES; // 0x10 + private static readonly string[] INVARIANT_ABBREVIATED_MONTH_NAMES; // 0x14 + private static readonly string[] INVARIANT_MONTH_NAMES; // 0x18 + private static readonly string[] INVARIANT_SHORT_DAY_NAMES; // 0x1C + private static DateTimeFormatInfo theInvariantDateTimeFormatInfo; // 0x20 + private bool m_isReadOnly; // 0x08 + private string amDesignator; // 0x0C + private string pmDesignator; // 0x10 + private string dateSeparator; // 0x14 + private string timeSeparator; // 0x18 + private string shortDatePattern; // 0x1C + private string longDatePattern; // 0x20 + private string shortTimePattern; // 0x24 + private string longTimePattern; // 0x28 + private string monthDayPattern; // 0x2C + private string yearMonthPattern; // 0x30 + private string fullDateTimePattern; // 0x34 + private string _RFC1123Pattern; // 0x38 + private string _SortableDateTimePattern; // 0x3C + private string _UniversalSortableDateTimePattern; // 0x40 + private int firstDayOfWeek; // 0x44 + private Calendar calendar; // 0x48 + private int calendarWeekRule; // 0x4C + private string[] abbreviatedDayNames; // 0x50 + private string[] dayNames; // 0x54 + private string[] monthNames; // 0x58 + private string[] abbreviatedMonthNames; // 0x5C + private string[] allShortDatePatterns; // 0x60 + private string[] allLongDatePatterns; // 0x64 + private string[] allShortTimePatterns; // 0x68 + private string[] allLongTimePatterns; // 0x6C + private string[] monthDayPatterns; // 0x70 + private string[] yearMonthPatterns; // 0x74 + private string[] shortDayNames; // 0x78 + private int nDataItem; // 0x7C + private bool m_useUserOverride; // 0x80 + private bool m_isDefaultCalendar; // 0x81 + private int CultureID; // 0x84 + private bool bUseCalendarInfo; // 0x88 + private string generalShortTimePattern; // 0x8C + private string generalLongTimePattern; // 0x90 + private string[] m_eraNames; // 0x94 + private string[] m_abbrevEraNames; // 0x98 + private string[] m_abbrevEnglishEraNames; // 0x9C + private string[] m_dateWords; // 0xA0 + private int[] optionalCalendars; // 0xA4 + private string[] m_superShortDayNames; // 0xA8 + private string[] genitiveMonthNames; // 0xAC + private string[] m_genitiveAbbreviatedMonthNames; // 0xB0 + private string[] leapYearMonthNames; // 0xB4 + private DateTimeFormatFlags formatFlags; // 0xB8 + private string m_name; // 0xBC + private string[] all_date_time_patterns; // 0xC0 + + // Properties + public bool IsReadOnly { get; } // 0x002F3C24 + public string[] AbbreviatedDayNames { get; set; } // 0x002F43F0 0x002F44A8 + internal string[] RawAbbreviatedDayNames { get; set; } // 0x002F46BC 0x002F44AC + public string[] AbbreviatedMonthNames { get; set; } // 0x002F46C4 0x002F477C + internal string[] RawAbbreviatedMonthNames { get; set; } // 0x002F4990 0x002F4780 + public string[] DayNames { get; set; } // 0x002F4998 0x002F4A50 + internal string[] RawDayNames { get; set; } // 0x002F4C64 0x002F4A54 + public string[] MonthNames { get; set; } // 0x002F4C6C 0x002F4D24 + internal string[] RawMonthNames { get; set; } // 0x002F4F38 0x002F4D28 + public string AMDesignator { get; set; } // 0x002F4F40 0x002F4F48 + public string PMDesignator { get; set; } // 0x002F5070 0x002F5078 + public string DateSeparator { get; set; } // 0x002F51A0 0x002F51A8 + public string TimeSeparator { get; set; } // 0x002F52D0 0x002F52D8 + public string LongDatePattern { get; set; } // 0x002F5400 0x002F5408 + public string ShortDatePattern { get; set; } // 0x002F5530 0x002F5538 + public string ShortTimePattern { get; set; } // 0x002F5660 0x002F5668 + public string LongTimePattern { get; set; } // 0x002F5790 0x002F5798 + public string MonthDayPattern { get; set; } // 0x002F58C0 0x002F58C8 + public string YearMonthPattern { get; set; } // 0x002F59F0 0x002F59F8 + public string FullDateTimePattern { get; set; } // 0x002F5B20 0x002F5BCC + public static DateTimeFormatInfo CurrentInfo { get; } // 0x002F3B60 + public static DateTimeFormatInfo InvariantInfo { get; } // 0x002F190C + public DayOfWeek FirstDayOfWeek { get; set; } // 0x002F622C 0x002F6234 + public Calendar Calendar { get; set; } // 0x002F635C 0x002F11E0 + public CalendarWeekRule CalendarWeekRule { get; set; } // 0x002F6364 0x002F636C + public string RFC1123Pattern { get; } // 0x002F6454 + internal string RoundtripPattern { get; } // 0x002F645C + public string SortableDateTimePattern { get; } // 0x002F64B8 + public string UniversalSortableDateTimePattern { get; } // 0x002F64C0 + public string[] AbbreviatedMonthGenitiveNames { get; set; } // 0x002F750C 0x002F7514 + public string[] MonthGenitiveNames { get; set; } // 0x002F751C 0x002F7524 + public string NativeCalendarName { get; } // 0x002F752C + public string[] ShortestDayNames { get; set; } // 0x002F75B8 0x002F75C0 + + // Methods + internal void .ctor(bool read_only); // 0x002F0FA4 + public void .ctor(); // 0x002F23EC + private static void .cctor(); // 0x002F23F4 + public static DateTimeFormatInfo GetInstance(IFormatProvider provider); // 0x002F39E8 + public static DateTimeFormatInfo ReadOnly(DateTimeFormatInfo dtfi); // 0x002F06B0 + public object Clone(); // 0x002F0110 + public object GetFormat(Type formatType); // 0x002F3C2C + public string GetAbbreviatedEraName(int era); // 0x002F3C58 + public string GetAbbreviatedMonthName(int month); // 0x002F3DB8 + public int GetEra(string eraName); // 0x002F3E90 + public string GetEraName(int era); // 0x002F41B4 + public string GetMonthName(int month); // 0x002F4318 + public string[] GetAllDateTimePatterns(); // 0x002F64C8 + internal string[] GetAllDateTimePatternsInternal(); // 0x002F658C + private void FillAllDateTimePatterns(); // 0x002F65AC + public string[] GetAllDateTimePatterns(char format); // 0x002F7088 + internal string[] GetAllRawDateTimePatterns(char format); // 0x002F6A90 + public string GetDayName(DayOfWeek dayofweek); // 0x002F7364 + public string GetAbbreviatedDayName(DayOfWeek dayofweek); // 0x002F7438 + private void FillInvariantPatterns(); // 0x002F5CF4 + private string[] PopulateCombinedList(string[] dates, string[] times); // 0x002F7150 + public string GetShortestDayName(DayOfWeek dayOfWeek); // 0x002F77A4 + public void SetAllDateTimePatterns(string[] patterns, char format); // 0x002F7878 +} + +// Namespace: System.Globalization +[Serializable] +public enum DateTimeStyles // TypeDefIndex: 389 +{ + None = 0, + AllowLeadingWhite = 1, + AllowTrailingWhite = 2, + AllowInnerWhite = 4, + AllowWhiteSpaces = 7, + NoCurrentDateDefault = 8, + AdjustToUniversal = 16, + AssumeLocal = 32, + AssumeUniversal = 64, + RoundtripKind = 128 +} + +// Namespace: System.Globalization +[Serializable] +public class DaylightTime // TypeDefIndex: 390 +{ + // Fields + private DateTime m_start; // 0x08 + private DateTime m_end; // 0x18 + private TimeSpan m_delta; // 0x28 + + // Properties + public DateTime Start { get; } // 0x00468D4C + public DateTime End { get; } // 0x00468D5C + public TimeSpan Delta { get; } // 0x00468D6C + + // Methods + public void .ctor(DateTime start, DateTime end, TimeSpan delta); // 0x00468CEC +} + +// Namespace: System.Globalization +[Serializable] +public enum DigitShapes // TypeDefIndex: 391 +{ + Context = 0, + None = 1, + NativeNational = 2 +} + +// Namespace: System.Globalization +[Serializable] +public abstract class EastAsianLunisolarCalendar : Calendar // TypeDefIndex: 392 +{ + // Fields + internal readonly CCEastAsianLunisolarEraHandler M_EraHandler; // 0x20 + + // Properties + public override int TwoDigitYearMax { get; set; } // 0x00468D98 0x00468DA0 + internal virtual int ActualCurrentEra { get; } // 0x00468E98 + public override CalendarAlgorithmType AlgorithmType { get; } // 0x004696D8 + + // Methods + internal void .ctor(CCEastAsianLunisolarEraHandler eraHandler); // 0x00468D78 + internal void M_CheckDateTime(DateTime time); // 0x00468E44 + internal void M_CheckEra(int era); // 0x00468EA0 + internal int M_CheckYEG(int year, int era); // 0x00468F98 + internal override void M_CheckYE(int year, int era); // 0x00468FE4 + internal int M_CheckYMEG(int year, int month, int era); // 0x00468FE8 + internal int M_CheckYMDEG(int year, int month, int day, int era); // 0x004690C0 + public override DateTime AddMonths(DateTime time, int months); // 0x0046918C + public override DateTime AddYears(DateTime time, int years); // 0x004691FC + public override int GetDayOfMonth(DateTime time); // 0x0046926C + public override DayOfWeek GetDayOfWeek(DateTime time); // 0x004692B4 + public override int GetDayOfYear(DateTime time); // 0x00469304 + public override int GetDaysInMonth(int year, int month, int era); // 0x0046934C + public override int GetDaysInYear(int year, int era); // 0x0046937C + public override int GetLeapMonth(int year, int era); // 0x004693A4 + public override int GetMonth(DateTime time); // 0x004693AC + public override int GetMonthsInYear(int year, int era); // 0x004693F4 + public override int GetYear(DateTime time); // 0x00469458 + public override bool IsLeapDay(int year, int month, int day, int era); // 0x004694C4 + public override bool IsLeapMonth(int year, int month, int era); // 0x004694F8 + public override bool IsLeapYear(int year, int era); // 0x00469528 + public override DateTime ToDateTime(int year, int month, int day, int hour, int minute, int second, int millisecond, int era); // 0x00469550 + public override int ToFourDigitYear(int year); // 0x004695E4 + public int GetCelestialStem(int sexagenaryYear); // 0x004696E0 + public virtual int GetSexagenaryYear(DateTime time); // 0x004697A8 + public int GetTerrestrialBranch(int sexagenaryYear); // 0x00469804 +} + +// Namespace: System.Globalization +[Serializable] +public class GregorianCalendar : Calendar // TypeDefIndex: 393 +{ + // Fields + public const int ADEra = 1; // 0x00 + [NonSerialized] internal GregorianCalendarTypes m_type; // 0x20 + private static Nullable`1 Min; // 0x00 + private static Nullable`1 Max; // 0x18 + + // Properties + public override int[] Eras { get; } // 0x00469A90 + public override int TwoDigitYearMax { get; set; } // 0x00469B2C 0x00469B34 + public virtual GregorianCalendarTypes CalendarType { get; set; } // 0x00469BD8 0x00469BE0 + public override DateTime MinSupportedDateTime { get; } // 0x0046A2A4 + public override DateTime MaxSupportedDateTime { get; } // 0x0046A3D8 + + // Methods + public void .ctor(GregorianCalendarTypes type); // 0x004698CC + public void .ctor(); // 0x00469A88 + internal void M_CheckEra(int era); // 0x00469C00 + internal override void M_CheckYE(int year, int era); // 0x00469CC0 + internal void M_CheckYME(int year, int month, int era); // 0x00469D54 + internal void M_CheckYMDE(int year, int month, int day, int era); // 0x00469E38 + public override DateTime AddMonths(DateTime time, int months); // 0x00469EFC + public override DateTime AddYears(DateTime time, int years); // 0x00469F28 + public override int GetDayOfMonth(DateTime time); // 0x00469F54 + public override DayOfWeek GetDayOfWeek(DateTime time); // 0x00469F8C + public override int GetDayOfYear(DateTime time); // 0x00469FCC + public override int GetDaysInMonth(int year, int month, int era); // 0x0046A004 + public override int GetDaysInYear(int year, int era); // 0x0046A03C + public override int GetEra(DateTime time); // 0x0046A07C + public override int GetLeapMonth(int year, int era); // 0x0046A084 + public override int GetMonth(DateTime time); // 0x0046A08C + public override int GetMonthsInYear(int year, int era); // 0x0046A0C4 + public override int GetWeekOfYear(DateTime time, CalendarWeekRule rule, DayOfWeek firstDayOfWeek); // 0x0046A0F4 + public override int GetYear(DateTime time); // 0x0046A128 + public override bool IsLeapDay(int year, int month, int day, int era); // 0x0046A160 + public override bool IsLeapMonth(int year, int month, int era); // 0x0046A1A4 + public override bool IsLeapYear(int year, int era); // 0x0046A1C8 + public override DateTime ToDateTime(int year, int month, int day, int hour, int minute, int second, int millisecond, int era); // 0x0046A208 + public override int ToFourDigitYear(int year); // 0x0046A29C +} + +// Namespace: System.Globalization +[Serializable] +public enum GregorianCalendarTypes // TypeDefIndex: 394 +{ + Localized = 1, + USEnglish = 2, + MiddleEastFrench = 9, + Arabic = 10, + TransliteratedEnglish = 11, + TransliteratedFrench = 12 +} + +// Namespace: System.Globalization +[Serializable] +public class HebrewCalendar : Calendar // TypeDefIndex: 395 +{ + // Fields + internal const long M_MinTicks = 499147488000000000; // 0x00 + internal const long M_MaxTicks = 706783967999999999; // 0x00 + internal const int M_MinYear = 5343; // 0x00 + public static readonly int HebrewEra; // 0x00 + private static DateTime Min; // 0x08 + private static DateTime Max; // 0x18 + + // Properties + internal override int M_MaxYear { get; } // 0x0046A7BC + public override int[] Eras { get; } // 0x0046A7C4 + public override int TwoDigitYearMax { get; set; } // 0x0046A8A0 0x0046A8A8 + public override DateTime MinSupportedDateTime { get; } // 0x0046B92C + public override DateTime MaxSupportedDateTime { get; } // 0x0046B9C4 + + // Methods + public void .ctor(); // 0x0046A518 + private static void .cctor(); // 0x0046A6B8 + internal void M_CheckDateTime(DateTime time); // 0x0046A94C + internal void M_CheckEra(int era); // 0x0046AA64 + internal override void M_CheckYE(int year, int era); // 0x0046ABA4 + internal void M_CheckYME(int year, int month, int era); // 0x0046AC8C + internal void M_CheckYMDE(int year, int month, int day, int era); // 0x0046AE18 + public override DateTime AddMonths(DateTime time, int months); // 0x0046AEDC + public override DateTime AddYears(DateTime time, int years); // 0x0046B120 + public override int GetDayOfMonth(DateTime time); // 0x0046B224 + public override DayOfWeek GetDayOfWeek(DateTime time); // 0x0046B274 + public override int GetDayOfYear(DateTime time); // 0x0046B2C4 + internal int M_CCMonth(int month, int year); // 0x0046B334 + internal int M_Month(int ccmonth, int year); // 0x0046B0E8 + public override int GetDaysInMonth(int year, int month, int era); // 0x0046B378 + public override int GetDaysInYear(int year, int era); // 0x0046B3E0 + public override int GetEra(DateTime time); // 0x0046B444 + public override int GetLeapMonth(int year, int era); // 0x0046B4FC + public override int GetMonth(DateTime time); // 0x0046B534 + public override int GetMonthsInYear(int year, int era); // 0x0046B5CC + public override int GetYear(DateTime time); // 0x0046B60C + public override bool IsLeapDay(int year, int month, int day, int era); // 0x0046B65C + public override bool IsLeapMonth(int year, int month, int era); // 0x0046B6DC + public override bool IsLeapYear(int year, int era); // 0x0046B730 + public override DateTime ToDateTime(int year, int month, int day, int hour, int minute, int second, int millisecond, int era); // 0x0046B770 + public override int ToFourDigitYear(int year); // 0x0046B850 +} + +// Namespace: System.Globalization +[Serializable] +public class HijriCalendar : Calendar // TypeDefIndex: 396 +{ + // Fields + public static readonly int HijriEra; // 0x00 + internal static readonly int M_MinFixed; // 0x04 + internal static readonly int M_MaxFixed; // 0x08 + internal int M_AddHijriDate; // 0x20 + private static DateTime Min; // 0x10 + private static DateTime Max; // 0x20 + + // Properties + public override int[] Eras { get; } // 0x0046BD40 + public int HijriAdjustment { get; set; } // 0x0046BE1C 0x0046BEA4 + public override int TwoDigitYearMax { get; set; } // 0x0046BF2C 0x0046BF34 + internal virtual int AddHijriDate { get; set; } // 0x0046BFD8 0x0046BFE0 + public override DateTime MinSupportedDateTime { get; } // 0x0046D574 + public override DateTime MaxSupportedDateTime { get; } // 0x0046D60C + + // Methods + public void .ctor(); // 0x0046BA5C + private static void .cctor(); // 0x0046BBFC + internal void M_CheckFixedHijri(string param, int rdHijri); // 0x0046C040 + internal void M_CheckDateTime(DateTime time); // 0x0046C548 + internal int M_FromDateTime(DateTime time); // 0x0046C5FC + internal DateTime M_ToDateTime(int rd); // 0x0046C654 + internal DateTime M_ToDateTime(int date, int hour, int minute, int second, int milliseconds); // 0x0046C690 + internal void M_CheckEra(int era); // 0x0046C6F8 + internal override void M_CheckYE(int year, int era); // 0x0046C838 + internal void M_CheckYME(int year, int month, int era); // 0x0046C8CC + internal void M_CheckYMDE(int year, int month, int day, int era); // 0x0046C9F0 + public override DateTime AddMonths(DateTime time, int months); // 0x0046CB38 + public override DateTime AddYears(DateTime time, int years); // 0x0046CCCC + public override int GetDayOfMonth(DateTime time); // 0x0046CE40 + public override DayOfWeek GetDayOfWeek(DateTime time); // 0x0046CF04 + public override int GetDayOfYear(DateTime time); // 0x0046CFC8 + public override int GetDaysInMonth(int year, int month, int era); // 0x0046D0A8 + public override int GetDaysInYear(int year, int era); // 0x0046D100 + public override int GetEra(DateTime time); // 0x0046D164 + public override int GetLeapMonth(int year, int era); // 0x0046D220 + public override int GetMonth(DateTime time); // 0x0046D228 + public override int GetMonthsInYear(int year, int era); // 0x0046D2EC + public override int GetYear(DateTime time); // 0x0046D31C + public override bool IsLeapDay(int year, int month, int day, int era); // 0x0046D3E0 + public override bool IsLeapMonth(int year, int month, int era); // 0x0046D44C + public override bool IsLeapYear(int year, int era); // 0x0046D470 + public override DateTime ToDateTime(int year, int month, int day, int hour, int minute, int second, int millisecond, int era); // 0x0046D4B0 + public override int ToFourDigitYear(int year); // 0x0046D56C +} + +// Namespace: System.Globalization +public sealed class IdnMapping // TypeDefIndex: 397 +{ + // Fields + private bool allow_unassigned; // 0x08 + private bool use_std3; // 0x09 + private Punycode puny; // 0x0C + + // Properties + public bool AllowUnassigned { get; set; } // 0x0046D7B0 0x0046D7B8 + public bool UseStd3AsciiRules { get; set; } // 0x0046D7C0 0x0046D7C8 + + // Methods + public void .ctor(); // 0x0046D6A4 + public override bool Equals(object obj); // 0x0046D7D0 + public override int GetHashCode(); // 0x0046D88C + public string GetAscii(string unicode); // 0x0046D8A0 + public string GetAscii(string unicode, int index); // 0x0046DAF0 + public string GetAscii(string unicode, int index, int count); // 0x0046D96C + private string Convert(string input, int index, int count, bool toAscii); // 0x0046DBC4 + private string ToAscii(string s, int offset); // 0x0046DEBC + private void VerifyLength(string s, int offset); // 0x0046E994 + private string NamePrep(string s, int offset); // 0x0046E4B4 + private void VerifyProhibitedCharacters(string s, int offset); // 0x0046EB60 + private void VerifyStd3AsciiRules(string s, int offset); // 0x0046E674 + public string GetUnicode(string ascii); // 0x0046EDBC + public string GetUnicode(string ascii, int index); // 0x0046F00C + public string GetUnicode(string ascii, int index, int count); // 0x0046EE88 + private string ToUnicode(string s, int offset); // 0x0046E204 +} + +// Namespace: System.Globalization +internal class Bootstring // TypeDefIndex: 398 +{ + // Fields + private readonly char delimiter; // 0x08 + private readonly int base_num; // 0x0C + private readonly int tmin; // 0x10 + private readonly int tmax; // 0x14 + private readonly int skew; // 0x18 + private readonly int damp; // 0x1C + private readonly int initial_bias; // 0x20 + private readonly int initial_n; // 0x24 + + // Methods + public void .ctor(char delimiter, int baseNum, int tmin, int tmax, int skew, int damp, int initialBias, int initialN); // 0x002E2610 + public string Encode(string s, int offset); // 0x002E2660 + private char EncodeDigit(int d); // 0x002E2A94 + private int DecodeDigit(char c); // 0x002E2B44 + private int Adapt(int delta, int numPoints, bool firstTime); // 0x002E2AAC + public string Decode(string s, int offset); // 0x002E2B6C +} + +// Namespace: System.Globalization +internal class Punycode : Bootstring // TypeDefIndex: 399 +{ + // Methods + public void .ctor(); // 0x0046D760 +} + +// Namespace: System.Globalization +[Serializable] +public class JapaneseCalendar : Calendar // TypeDefIndex: 400 +{ + // Fields + internal static readonly CCGregorianEraHandler M_EraHandler; // 0x00 + private static DateTime JapanMin; // 0x08 + private static DateTime JapanMax; // 0x18 + + // Properties + public override int[] Eras { get; } // 0x0046F7B4 + public override int TwoDigitYearMax { get; set; } // 0x0046F8C8 0x0046F8D0 + public override DateTime MinSupportedDateTime { get; } // 0x0047044C + public override DateTime MaxSupportedDateTime { get; } // 0x004704E4 + + // Methods + public void .ctor(); // 0x0046F0E0 + private static void .cctor(); // 0x0046F4F8 + internal void M_CheckDateTime(DateTime time); // 0x0046F974 + internal void M_CheckEra(int era); // 0x0046FA44 + internal int M_CheckYEG(int year, int era); // 0x0046FB64 + internal override void M_CheckYE(int year, int era); // 0x0046FC28 + internal int M_CheckYMEG(int year, int month, int era); // 0x0046FC2C + internal int M_CheckYMDEG(int year, int month, int day, int era); // 0x0046FCFC + public override DateTime AddMonths(DateTime time, int months); // 0x0046FDC4 + public override DateTime AddYears(DateTime time, int years); // 0x0046FE1C + public override int GetDayOfMonth(DateTime time); // 0x0046FE74 + public override DayOfWeek GetDayOfWeek(DateTime time); // 0x0046FEBC + public override int GetDayOfYear(DateTime time); // 0x0046FF0C + public override int GetDaysInMonth(int year, int month, int era); // 0x0046FF54 + public override int GetDaysInYear(int year, int era); // 0x0046FF84 + public override int GetEra(DateTime time); // 0x0046FFAC + public override int GetLeapMonth(int year, int era); // 0x0047009C + public override int GetMonth(DateTime time); // 0x004700A4 + public override int GetMonthsInYear(int year, int era); // 0x004700EC + public override int GetWeekOfYear(DateTime time, CalendarWeekRule rule, DayOfWeek firstDayOfWeek); // 0x0047011C + public override int GetYear(DateTime time); // 0x00470150 + public override bool IsLeapDay(int year, int month, int day, int era); // 0x0047023C + public override bool IsLeapMonth(int year, int month, int era); // 0x00470278 + public override bool IsLeapYear(int year, int era); // 0x0047029C + public override DateTime ToDateTime(int year, int month, int day, int hour, int minute, int second, int millisecond, int era); // 0x004702C4 + public override int ToFourDigitYear(int year); // 0x00470358 +} + +// Namespace: System.Globalization +[Serializable] +public class JapaneseLunisolarCalendar : EastAsianLunisolarCalendar // TypeDefIndex: 401 +{ + // Fields + public const int JapaneseEra = 1; // 0x00 + internal static readonly CCEastAsianLunisolarEraHandler era_handler; // 0x00 + private static DateTime JapanMin; // 0x08 + private static DateTime JapanMax; // 0x18 + + // Properties + internal override int ActualCurrentEra { get; } // 0x004707F4 + public override int[] Eras { get; } // 0x004707FC + public override DateTime MinSupportedDateTime { get; } // 0x00470A00 + public override DateTime MaxSupportedDateTime { get; } // 0x00470A98 + + // Methods + public void .ctor(); // 0x0047057C + private static void .cctor(); // 0x0047061C + public override int GetEra(DateTime time); // 0x00470910 +} + +// Namespace: System.Globalization +[Serializable] +public class JulianCalendar : Calendar // TypeDefIndex: 402 +{ + // Fields + public static readonly int JulianEra; // 0x00 + private static DateTime JulianMin; // 0x08 + private static DateTime JulianMax; // 0x18 + + // Properties + public override int[] Eras { get; } // 0x00470DD4 + public override int TwoDigitYearMax { get; set; } // 0x00470EB0 0x00470EB8 + public override CalendarAlgorithmType AlgorithmType { get; } // 0x00471990 + public override DateTime MinSupportedDateTime { get; } // 0x00471998 + public override DateTime MaxSupportedDateTime { get; } // 0x00471A30 + + // Methods + public void .ctor(); // 0x00470B30 + private static void .cctor(); // 0x00470CD0 + internal void M_CheckEra(int era); // 0x00470F5C + internal override void M_CheckYE(int year, int era); // 0x0047109C + internal void M_CheckYME(int year, int month, int era); // 0x00471130 + internal void M_CheckYMDE(int year, int month, int day, int era); // 0x00471214 + public override DateTime AddMonths(DateTime time, int months); // 0x00471364 + public override DateTime AddYears(DateTime time, int years); // 0x0047145C + public override int GetDayOfMonth(DateTime time); // 0x00471534 + public override DayOfWeek GetDayOfWeek(DateTime time); // 0x00471574 + public override int GetDayOfYear(DateTime time); // 0x004715B4 + public override int GetDaysInMonth(int year, int month, int era); // 0x00471614 + public override int GetDaysInYear(int year, int era); // 0x0047166C + public override int GetEra(DateTime time); // 0x004716D0 + public override int GetLeapMonth(int year, int era); // 0x0047175C + public override int GetMonth(DateTime time); // 0x00471764 + public override int GetMonthsInYear(int year, int era); // 0x004717A4 + public override int GetYear(DateTime time); // 0x004717D4 + public override bool IsLeapDay(int year, int month, int day, int era); // 0x00471814 + public override bool IsLeapMonth(int year, int month, int era); // 0x00471880 + public override bool IsLeapYear(int year, int era); // 0x004718A4 + public override DateTime ToDateTime(int year, int month, int day, int hour, int minute, int second, int millisecond, int era); // 0x004718E4 + public override int ToFourDigitYear(int year); // 0x00471988 +} + +// Namespace: System.Globalization +[Serializable] +public class KoreanCalendar : Calendar // TypeDefIndex: 403 +{ + // Fields + public const int KoreanEra = 1; // 0x00 + internal static readonly CCGregorianEraHandler M_EraHandler; // 0x00 + private static DateTime KoreanMin; // 0x08 + private static DateTime KoreanMax; // 0x18 + + // Properties + public override int[] Eras { get; } // 0x00471DD4 + public override int TwoDigitYearMax { get; set; } // 0x00471EE8 0x00471EF0 + public override DateTime MinSupportedDateTime { get; } // 0x0047280C + public override DateTime MaxSupportedDateTime { get; } // 0x004728A4 + + // Methods + public void .ctor(); // 0x00471AC8 + private static void .cctor(); // 0x00471C68 + internal void M_CheckEra(int era); // 0x00471F94 + internal int M_CheckYEG(int year, int era); // 0x004720B4 + internal override void M_CheckYE(int year, int era); // 0x00472178 + internal int M_CheckYMEG(int year, int month, int era); // 0x0047217C + internal int M_CheckYMDEG(int year, int month, int day, int era); // 0x0047224C + public override DateTime AddMonths(DateTime time, int months); // 0x00472314 + public override DateTime AddYears(DateTime time, int years); // 0x00472340 + public override int GetDayOfMonth(DateTime time); // 0x0047236C + public override DayOfWeek GetDayOfWeek(DateTime time); // 0x004723A4 + public override int GetDayOfYear(DateTime time); // 0x004723E4 + public override int GetDaysInMonth(int year, int month, int era); // 0x0047241C + public override int GetDaysInYear(int year, int era); // 0x0047244C + public override int GetEra(DateTime time); // 0x00472474 + public override int GetLeapMonth(int year, int era); // 0x00472564 + public override int GetMonth(DateTime time); // 0x0047256C + public override int GetMonthsInYear(int year, int era); // 0x004725A4 + public override int GetWeekOfYear(DateTime time, CalendarWeekRule rule, DayOfWeek firstDayOfWeek); // 0x004725C8 + public override int GetYear(DateTime time); // 0x004725FC + public override bool IsLeapDay(int year, int month, int day, int era); // 0x004726E8 + public override bool IsLeapMonth(int year, int month, int era); // 0x00472724 + public override bool IsLeapYear(int year, int era); // 0x00472748 + public override DateTime ToDateTime(int year, int month, int day, int hour, int minute, int second, int millisecond, int era); // 0x00472770 + public override int ToFourDigitYear(int year); // 0x00472804 +} + +// Namespace: System.Globalization +[Serializable] +public class KoreanLunisolarCalendar : EastAsianLunisolarCalendar // TypeDefIndex: 404 +{ + // Fields + public const int GregorianEra = 1; // 0x00 + internal static readonly CCEastAsianLunisolarEraHandler era_handler; // 0x00 + private static DateTime KoreanMin; // 0x08 + private static DateTime KoreanMax; // 0x18 + + // Properties + public override int[] Eras { get; } // 0x00472B5C + public override DateTime MinSupportedDateTime { get; } // 0x00472D60 + public override DateTime MaxSupportedDateTime { get; } // 0x00472DF8 + + // Methods + public void .ctor(); // 0x0047293C + private static void .cctor(); // 0x004729DC + public override int GetEra(DateTime time); // 0x00472C70 +} + +// Namespace: System.Globalization +[Serializable] +public sealed class NumberFormatInfo : ICloneable, IFormatProvider // TypeDefIndex: 405 +{ + // Fields + private bool isReadOnly; // 0x08 + private string decimalFormats; // 0x0C + private string currencyFormats; // 0x10 + private string percentFormats; // 0x14 + private string digitPattern; // 0x18 + private string zeroPattern; // 0x1C + private int currencyDecimalDigits; // 0x20 + private string currencyDecimalSeparator; // 0x24 + private string currencyGroupSeparator; // 0x28 + private int[] currencyGroupSizes; // 0x2C + private int currencyNegativePattern; // 0x30 + private int currencyPositivePattern; // 0x34 + private string currencySymbol; // 0x38 + private string nanSymbol; // 0x3C + private string negativeInfinitySymbol; // 0x40 + private string negativeSign; // 0x44 + private int numberDecimalDigits; // 0x48 + private string numberDecimalSeparator; // 0x4C + private string numberGroupSeparator; // 0x50 + private int[] numberGroupSizes; // 0x54 + private int numberNegativePattern; // 0x58 + private int percentDecimalDigits; // 0x5C + private string percentDecimalSeparator; // 0x60 + private string percentGroupSeparator; // 0x64 + private int[] percentGroupSizes; // 0x68 + private int percentNegativePattern; // 0x6C + private int percentPositivePattern; // 0x70 + private string percentSymbol; // 0x74 + private string perMilleSymbol; // 0x78 + private string positiveInfinitySymbol; // 0x7C + private string positiveSign; // 0x80 + private string ansiCurrencySymbol; // 0x84 + private int m_dataItem; // 0x88 + private bool m_useUserOverride; // 0x8C + private bool validForParseAsNumber; // 0x8D + private bool validForParseAsCurrency; // 0x8E + private string[] nativeDigits; // 0x90 + private int digitSubstitution; // 0x94 + private static readonly string[] invariantNativeDigits; // 0x00 + + // Properties + public int CurrencyDecimalDigits { get; set; } // 0x00474D98 0x00474DA0 + public string CurrencyDecimalSeparator { get; set; } // 0x00474EA0 0x00474EA8 + public string CurrencyGroupSeparator { get; set; } // 0x00474FA8 0x00474FB0 + public int[] CurrencyGroupSizes { get; set; } // 0x004750B0 0x00475168 + internal int[] RawCurrencyGroupSizes { get; set; } // 0x00475438 0x0047516C + public int CurrencyNegativePattern { get; set; } // 0x00475440 0x00475448 + public int CurrencyPositivePattern { get; set; } // 0x00475548 0x00475550 + public string CurrencySymbol { get; set; } // 0x00475650 0x00475658 + public static NumberFormatInfo CurrentInfo { get; } // 0x00475758 + public static NumberFormatInfo InvariantInfo { get; } // 0x0047583C + public bool IsReadOnly { get; } // 0x004759E8 + public string NaNSymbol { get; set; } // 0x004759F0 0x004759F8 + public string NegativeInfinitySymbol { get; set; } // 0x00475AF8 0x00475B00 + public string NegativeSign { get; set; } // 0x00475C00 0x00475C08 + public int NumberDecimalDigits { get; set; } // 0x00475D08 0x00475D10 + public string NumberDecimalSeparator { get; set; } // 0x00475E10 0x00475E18 + public string NumberGroupSeparator { get; set; } // 0x00475F18 0x00475F20 + public int[] NumberGroupSizes { get; set; } // 0x00476020 0x004760D8 + internal int[] RawNumberGroupSizes { get; set; } // 0x004763A8 0x004760DC + public int NumberNegativePattern { get; set; } // 0x004763B0 0x004758E8 + public int PercentDecimalDigits { get; set; } // 0x004763B8 0x004763C0 + public string PercentDecimalSeparator { get; set; } // 0x004764C0 0x004764C8 + public string PercentGroupSeparator { get; set; } // 0x004765C8 0x004765D0 + public int[] PercentGroupSizes { get; set; } // 0x004766D0 0x00476788 + internal int[] RawPercentGroupSizes { get; set; } // 0x00476B00 0x0047678C + public int PercentNegativePattern { get; set; } // 0x00476B08 0x00476B10 + public int PercentPositivePattern { get; set; } // 0x00476C10 0x00476C18 + public string PercentSymbol { get; set; } // 0x00476D18 0x00476D20 + public string PerMilleSymbol { get; set; } // 0x00476E20 0x00476E28 + public string PositiveInfinitySymbol { get; set; } // 0x00476F28 0x00476F30 + public string PositiveSign { get; set; } // 0x00477030 0x00477038 + + // Methods + internal void .ctor(int lcid, bool read_only); // 0x00472E90 + internal void .ctor(bool read_only); // 0x004731B4 + public void .ctor(); // 0x004731C0 + private static void .cctor(); // 0x004731CC + private void InitPatterns(); // 0x00473690 + public object GetFormat(Type formatType); // 0x00477138 + public object Clone(); // 0x004771E0 + public static NumberFormatInfo ReadOnly(NumberFormatInfo nfi); // 0x00477270 + public static NumberFormatInfo GetInstance(IFormatProvider formatProvider); // 0x0047730C +} + +// Namespace: System.Globalization +[Serializable] +public enum NumberStyles // TypeDefIndex: 406 +{ + None = 0, + AllowLeadingWhite = 1, + AllowTrailingWhite = 2, + AllowLeadingSign = 4, + Integer = 7, + AllowTrailingSign = 8, + AllowParentheses = 16, + AllowDecimalPoint = 32, + AllowThousands = 64, + Number = 111, + AllowExponent = 128, + Float = 167, + AllowCurrencySymbol = 256, + Currency = 383, + Any = 511, + AllowHexSpecifier = 512, + HexNumber = 515 +} + +// Namespace: System.Globalization +[Serializable] +public class PersianCalendar : Calendar // TypeDefIndex: 407 +{ + // Fields + internal const long M_MinTicks = 196036416000000000; // 0x00 + internal const int M_MinYear = 1; // 0x00 + internal const int epoch = 226895; // 0x00 + public static readonly int PersianEra; // 0x00 + private static DateTime PersianMin; // 0x08 + private static DateTime PersianMax; // 0x18 + + // Properties + public override int[] Eras { get; } // 0x00477728 + public override int TwoDigitYearMax { get; set; } // 0x00477804 0x0047780C + public override CalendarAlgorithmType AlgorithmType { get; } // 0x00478A64 + public override DateTime MinSupportedDateTime { get; } // 0x00478A6C + public override DateTime MaxSupportedDateTime { get; } // 0x00478B04 + + // Methods + public void .ctor(); // 0x00477484 + private static void .cctor(); // 0x00477624 + internal void M_CheckDateTime(DateTime time); // 0x004778B0 + internal void M_CheckEra(int era); // 0x004779A0 + internal override void M_CheckYE(int year, int era); // 0x00477AE0 + internal void M_CheckYME(int year, int month, int era); // 0x00477BC4 + internal void M_CheckYMDE(int year, int month, int day, int era); // 0x00477D24 + internal int fixed_from_dmy(int day, int month, int year); // 0x00477E78 + internal int year_from_fixed(int date); // 0x00477EC8 + internal void my_from_fixed(out int month, out int year, int date); // 0x00477EF4 + internal void dmy_from_fixed(out int day, out int month, out int year, int date); // 0x00477F90 + internal bool is_leap_year(int year); // 0x00478084 + public override DateTime AddMonths(DateTime time, int months); // 0x004780BC + public override DateTime AddYears(DateTime time, int years); // 0x00478218 + public override int GetDayOfMonth(DateTime time); // 0x00478354 + public override DayOfWeek GetDayOfWeek(DateTime time); // 0x004783C4 + public override int GetDayOfYear(DateTime time); // 0x00478414 + public override int GetDaysInMonth(int year, int month, int era); // 0x004784B4 + public override int GetDaysInYear(int year, int era); // 0x0047852C + public override int GetEra(DateTime time); // 0x00478594 + public override int GetLeapMonth(int year, int era); // 0x0047864C + public override int GetMonth(DateTime time); // 0x00478654 + public override int GetMonthsInYear(int year, int era); // 0x00478724 + public override int GetYear(DateTime time); // 0x00478754 + public override bool IsLeapDay(int year, int month, int day, int era); // 0x004787C4 + public override bool IsLeapMonth(int year, int month, int era); // 0x00478848 + public override bool IsLeapYear(int year, int era); // 0x0047886C + public override DateTime ToDateTime(int year, int month, int day, int hour, int minute, int second, int millisecond, int era); // 0x004788D4 + public override int ToFourDigitYear(int year); // 0x004789B0 +} + +// Namespace: System.Globalization +[Serializable] +public class RegionInfo // TypeDefIndex: 408 +{ + // Fields + private static RegionInfo currentRegion; // 0x00 + private int lcid; // 0x08 + private int regionId; // 0x0C + private string iso2Name; // 0x10 + private string iso3Name; // 0x14 + private string win3Name; // 0x18 + private string englishName; // 0x1C + private string currencySymbol; // 0x20 + private string isoCurrencySymbol; // 0x24 + private string currencyEnglishName; // 0x28 + private static Dictionary`2 <>f__switch$map1B; // 0x04 + + // Properties + public static RegionInfo CurrentRegion { get; } // 0x00478FF8 + public virtual string CurrencyEnglishName { get; } // 0x00479160 + public virtual string CurrencySymbol { get; } // 0x00479168 + public virtual string DisplayName { get; } // 0x00479170 + public virtual string EnglishName { get; } // 0x00479178 + public virtual int GeoId { get; } // 0x00479180 + public virtual bool IsMetric { get; } // 0x00479188 + public virtual string ISOCurrencySymbol { get; } // 0x0047934C + public virtual string NativeName { get; } // 0x00479354 + public virtual string CurrencyNativeName { get; } // 0x00479364 + public virtual string Name { get; } // 0x004793EC + public virtual string ThreeLetterISORegionName { get; } // 0x004793F4 + public virtual string ThreeLetterWindowsRegionName { get; } // 0x004793FC + public virtual string TwoLetterISORegionName { get; } // 0x00479404 + + // Methods + public void .ctor(int culture); // 0x00478B9C + public void .ctor(string name); // 0x00478E34 + private bool GetByTerritory(CultureInfo ci); // 0x00478D10 + private bool construct_internal_region_from_name(string name); // 0x00478FF4 + public override bool Equals(object value); // 0x0047940C + public override int GetHashCode(); // 0x004794B4 + public override string ToString(); // 0x004794C8 +} + +// Namespace: System.Globalization +[Serializable] +public class StringInfo // TypeDefIndex: 409 +{ + // Fields + private string s; // 0x08 + private int length; // 0x0C + + // Properties + public int LengthInTextElements { get; } // 0x00479E9C + public string String { get; set; } // 0x0047A158 0x00479CDC + + // Methods + public void .ctor(); // 0x00479CAC + public void .ctor(string value); // 0x00479CB4 + public override bool Equals(object value); // 0x00479D94 + public override int GetHashCode(); // 0x00479E70 + public string SubstringByTextElements(int startingTextElement); // 0x0047A160 + public string SubstringByTextElements(int startingTextElement, int lengthInTextElements); // 0x0047A2CC + public static string GetNextTextElement(string str); // 0x0047A528 + public static string GetNextTextElement(string str, int index); // 0x0047A5E8 + private static int GetNextTextElementLength(string str, int index); // 0x00479F04 + public static TextElementEnumerator GetTextElementEnumerator(string str); // 0x0047A650 + public static TextElementEnumerator GetTextElementEnumerator(string str, int index); // 0x0047A784 + public static int[] ParseCombiningCharacters(string str); // 0x0047A8B0 +} + +// Namespace: System.Globalization +[Serializable] +public class TaiwanCalendar : Calendar // TypeDefIndex: 410 +{ + // Fields + internal static readonly CCGregorianEraHandler M_EraHandler; // 0x00 + private static DateTime TaiwanMin; // 0x08 + private static DateTime TaiwanMax; // 0x18 + + // Properties + public override int[] Eras { get; } // 0x0047AF34 + public override int TwoDigitYearMax { get; set; } // 0x0047B048 0x0047B050 + public override DateTime MinSupportedDateTime { get; } // 0x0047BBC0 + public override DateTime MaxSupportedDateTime { get; } // 0x0047BC58 + + // Methods + public void .ctor(); // 0x0047AC3C + private static void .cctor(); // 0x0047ADCC + internal void M_CheckDateTime(DateTime time); // 0x0047B0F4 + internal void M_CheckEra(int era); // 0x0047B1C4 + internal int M_CheckYEG(int year, int era); // 0x0047B2E4 + internal override void M_CheckYE(int year, int era); // 0x0047B3A8 + internal int M_CheckYMEG(int year, int month, int era); // 0x0047B3AC + internal int M_CheckYMDEG(int year, int month, int day, int era); // 0x0047B47C + public override DateTime AddMonths(DateTime time, int months); // 0x0047B544 + public override DateTime AddYears(DateTime time, int years); // 0x0047B59C + public override int GetDayOfMonth(DateTime time); // 0x0047B5F4 + public override DayOfWeek GetDayOfWeek(DateTime time); // 0x0047B63C + public override int GetDayOfYear(DateTime time); // 0x0047B68C + public override int GetDaysInMonth(int year, int month, int era); // 0x0047B6D4 + public override int GetDaysInYear(int year, int era); // 0x0047B704 + public override int GetEra(DateTime time); // 0x0047B72C + public override int GetLeapMonth(int year, int era); // 0x0047B81C + public override int GetMonth(DateTime time); // 0x0047B824 + public override int GetMonthsInYear(int year, int era); // 0x0047B86C + public override int GetWeekOfYear(DateTime time, CalendarWeekRule rule, DayOfWeek firstDayOfWeek); // 0x0047B890 + public override int GetYear(DateTime time); // 0x0047B8C4 + public override bool IsLeapDay(int year, int month, int day, int era); // 0x0047B9B0 + public override bool IsLeapMonth(int year, int month, int era); // 0x0047B9EC + public override bool IsLeapYear(int year, int era); // 0x0047BA10 + public override DateTime ToDateTime(int year, int month, int day, int hour, int minute, int second, int millisecond, int era); // 0x0047BA38 + public override int ToFourDigitYear(int year); // 0x0047BACC +} + +// Namespace: System.Globalization +[Serializable] +public class TaiwanLunisolarCalendar : EastAsianLunisolarCalendar // TypeDefIndex: 411 +{ + // Fields + private const int TaiwanEra = 1; // 0x00 + internal static readonly CCEastAsianLunisolarEraHandler era_handler; // 0x00 + private static DateTime TaiwanMin; // 0x08 + private static DateTime TaiwanMax; // 0x18 + + // Properties + public override int[] Eras { get; } // 0x0047BF10 + public override DateTime MinSupportedDateTime { get; } // 0x0047C114 + public override DateTime MaxSupportedDateTime { get; } // 0x0047C1AC + + // Methods + public void .ctor(); // 0x0047BCF0 + private static void .cctor(); // 0x0047BD90 + public override int GetEra(DateTime time); // 0x0047C024 +} + +// Namespace: System.Globalization +[Serializable] +public class TextElementEnumerator : IEnumerator // TypeDefIndex: 412 +{ + // Fields + private int index; // 0x08 + private int elementindex; // 0x0C + private int startpos; // 0x10 + private string str; // 0x14 + private string element; // 0x18 + + // Properties + public object Current { get; } // 0x0047C244 + public int ElementIndex { get; } // 0x0047AB18 + + // Methods + internal void .ctor(string str, int startpos); // 0x0047A72C + public string GetTextElement(); // 0x0047C2DC + public bool MoveNext(); // 0x0047ABBC + public void Reset(); // 0x0047AB04 +} + +// Namespace: System.Globalization +[Serializable] +public class TextInfo : ICloneable, IDeserializationCallback // TypeDefIndex: 413 +{ + // Fields + private string m_listSeparator; // 0x08 + private bool m_isReadOnly; // 0x0C + private string customCultureName; // 0x10 + [NonSerialized] private int m_nDataItem; // 0x14 + private bool m_useUserOverride; // 0x18 + private int m_win32LangID; // 0x1C + [NonSerialized] private readonly CultureInfo ci; // 0x20 + [NonSerialized] private readonly bool handleDotI; // 0x24 + [NonSerialized] private readonly Data data; // 0x28 + + // Properties + public virtual int ANSICodePage { get; } // 0x0047C62C + public virtual int EBCDICCodePage { get; } // 0x0047C634 + public int LCID { get; } // 0x0047C63C + public virtual string ListSeparator { get; set; } // 0x0047C644 0x0047C688 + public virtual int MacCodePage { get; } // 0x0047C690 + public virtual int OEMCodePage { get; } // 0x0047C698 + public string CultureName { get; } // 0x0047C5E0 + public bool IsReadOnly { get; } // 0x0047C6A0 + public bool IsRightToLeft { get; } // 0x0047C6A8 + + // Methods + internal void .ctor(CultureInfo ci, int lcid, void * data, bool read_only); // 0x0047C374 + private void .ctor(TextInfo textInfo); // 0x0047C4C0 + private void System.Runtime.Serialization.IDeserializationCallback.OnDeserialization(object sender); // 0x0047C628 + public override bool Equals(object obj); // 0x0047C814 + public override int GetHashCode(); // 0x0047C8E4 + public override string ToString(); // 0x0047C8EC + public string ToTitleCase(string str); // 0x0047C9AC + public virtual char ToLower(char c); // 0x0047CF2C + public virtual char ToUpper(char c); // 0x0047D104 + private char ToTitleCase(char c); // 0x0047CE84 + public virtual string ToLower(string str); // 0x0047D330 + public virtual string ToUpper(string str); // 0x0047D4C4 + public static TextInfo ReadOnly(TextInfo textInfo); // 0x0047D658 + public virtual object Clone(); // 0x0047D740 +} + +// Namespace: +private struct Data // TypeDefIndex: 414 +{ + // Fields + public int ansi; // 0x08 + public int ebcdic; // 0x0C + public int mac; // 0x10 + public int oem; // 0x14 + public byte list_sep; // 0x18 + +} + +// Namespace: System.Globalization +[Serializable] +public class ThaiBuddhistCalendar : Calendar // TypeDefIndex: 415 +{ + // Fields + public const int ThaiBuddhistEra = 1; // 0x00 + internal static readonly CCGregorianEraHandler M_EraHandler; // 0x00 + private static DateTime ThaiMin; // 0x08 + private static DateTime ThaiMax; // 0x18 + + // Properties + public override int[] Eras { get; } // 0x0047DABC + public override int TwoDigitYearMax { get; set; } // 0x0047DBD0 0x0047DBD8 + public override DateTime MinSupportedDateTime { get; } // 0x0047E500 + public override DateTime MaxSupportedDateTime { get; } // 0x0047E598 + + // Methods + public void .ctor(); // 0x0047D7B0 + private static void .cctor(); // 0x0047D950 + internal void M_CheckEra(int era); // 0x0047DC7C + internal int M_CheckYEG(int year, int era); // 0x0047DD9C + internal override void M_CheckYE(int year, int era); // 0x0047DE60 + internal int M_CheckYMEG(int year, int month, int era); // 0x0047DE64 + internal int M_CheckYMDEG(int year, int month, int day, int era); // 0x0047DF34 + public override DateTime AddMonths(DateTime time, int months); // 0x0047DFFC + public override DateTime AddYears(DateTime time, int years); // 0x0047E028 + public override int GetDayOfMonth(DateTime time); // 0x0047E054 + public override DayOfWeek GetDayOfWeek(DateTime time); // 0x0047E08C + public override int GetDayOfYear(DateTime time); // 0x0047E0CC + public override int GetDaysInMonth(int year, int month, int era); // 0x0047E104 + public override int GetDaysInYear(int year, int era); // 0x0047E134 + public override int GetEra(DateTime time); // 0x0047E15C + public override int GetLeapMonth(int year, int era); // 0x0047E24C + public override int GetMonth(DateTime time); // 0x0047E254 + public override int GetMonthsInYear(int year, int era); // 0x0047E28C + public override int GetWeekOfYear(DateTime time, CalendarWeekRule rule, DayOfWeek firstDayOfWeek); // 0x0047E2BC + public override int GetYear(DateTime time); // 0x0047E2F0 + public override bool IsLeapDay(int year, int month, int day, int era); // 0x0047E3DC + public override bool IsLeapMonth(int year, int month, int era); // 0x0047E418 + public override bool IsLeapYear(int year, int era); // 0x0047E43C + public override DateTime ToDateTime(int year, int month, int day, int hour, int minute, int second, int millisecond, int era); // 0x0047E464 + public override int ToFourDigitYear(int year); // 0x0047E4F8 +} + +// Namespace: System.Globalization +[Serializable] +public class UmAlQuraCalendar : Calendar // TypeDefIndex: 416 +{ + // Fields + public const int UmAlQuraEra = 1; // 0x00 + internal static readonly int M_MinFixed; // 0x00 + internal static readonly int M_MaxFixed; // 0x04 + internal int M_AddHijriDate; // 0x20 + private static DateTime Min; // 0x08 + private static DateTime Max; // 0x18 + + // Properties + public override int[] Eras { get; } // 0x0047E904 + public override int TwoDigitYearMax { get; set; } // 0x0047E9A0 0x0047E9A8 + internal virtual int AddHijriDate { get; set; } // 0x0047EA4C 0x0047EA54 + public override DateTime MinSupportedDateTime { get; } // 0x0047FE94 + public override DateTime MaxSupportedDateTime { get; } // 0x0047FF2C + + // Methods + public void .ctor(); // 0x0047E630 + private static void .cctor(); // 0x0047E7D0 + internal void M_CheckFixedHijri(string param, int rdHijri); // 0x0047EAB4 + internal void M_CheckDateTime(DateTime time); // 0x0047EFBC + internal int M_FromDateTime(DateTime time); // 0x0047F070 + internal DateTime M_ToDateTime(int rd); // 0x0047F0C8 + internal DateTime M_ToDateTime(int date, int hour, int minute, int second, int milliseconds); // 0x0047F104 + internal void M_CheckEra(int era); // 0x0047F16C + internal override void M_CheckYE(int year, int era); // 0x0047F22C + internal void M_CheckYME(int year, int month, int era); // 0x0047F2C0 + internal void M_CheckYMDE(int year, int month, int day, int era); // 0x0047F3E4 + public override DateTime AddMonths(DateTime time, int months); // 0x0047F4EC + public override DateTime AddYears(DateTime time, int years); // 0x0047F680 + public override int GetDayOfMonth(DateTime time); // 0x0047F7F4 + public override DayOfWeek GetDayOfWeek(DateTime time); // 0x0047F8B8 + public override int GetDayOfYear(DateTime time); // 0x0047F97C + public override int GetDaysInMonth(int year, int month, int era); // 0x0047FA5C + public override int GetDaysInYear(int year, int era); // 0x0047FAB4 + public override int GetEra(DateTime time); // 0x0047FB18 + public override int GetLeapMonth(int year, int era); // 0x0047FB40 + public override int GetMonth(DateTime time); // 0x0047FB48 + public override int GetMonthsInYear(int year, int era); // 0x0047FC0C + public override int GetYear(DateTime time); // 0x0047FC3C + public override bool IsLeapDay(int year, int month, int day, int era); // 0x0047FD00 + public override bool IsLeapMonth(int year, int month, int era); // 0x0047FD6C + public override bool IsLeapYear(int year, int era); // 0x0047FD90 + public override DateTime ToDateTime(int year, int month, int day, int hour, int minute, int second, int millisecond, int era); // 0x0047FDD0 + public override int ToFourDigitYear(int year); // 0x0047FE8C +} + +// Namespace: System.Globalization +[Serializable] +public enum UnicodeCategory // TypeDefIndex: 417 +{ + UppercaseLetter = 0, + LowercaseLetter = 1, + TitlecaseLetter = 2, + ModifierLetter = 3, + OtherLetter = 4, + NonSpacingMark = 5, + SpacingCombiningMark = 6, + EnclosingMark = 7, + DecimalDigitNumber = 8, + LetterNumber = 9, + OtherNumber = 10, + SpaceSeparator = 11, + LineSeparator = 12, + ParagraphSeparator = 13, + Control = 14, + Format = 15, + Surrogate = 16, + PrivateUse = 17, + ConnectorPunctuation = 18, + DashPunctuation = 19, + OpenPunctuation = 20, + ClosePunctuation = 21, + InitialQuotePunctuation = 22, + FinalQuotePunctuation = 23, + OtherPunctuation = 24, + MathSymbol = 25, + CurrencySymbol = 26, + ModifierSymbol = 27, + OtherSymbol = 28, + OtherNotAssigned = 29 +} + +// Namespace: System.IO.IsolatedStorage +public interface INormalizeForIsolatedStorage // TypeDefIndex: 418 +{ + // Methods + object Normalize(); +} + +// Namespace: System.IO.IsolatedStorage +public abstract class IsolatedStorage : MarshalByRefObject // TypeDefIndex: 419 +{ + // Fields + internal IsolatedStorageScope storage_scope; // 0x0C + internal object _assemblyIdentity; // 0x10 + internal object _domainIdentity; // 0x14 + internal object _applicationIdentity; // 0x18 + + // Properties + public object ApplicationIdentity { get; } // 0x0049D748 + public object AssemblyIdentity { get; } // 0x0049D8AC + public virtual ulong CurrentSize { get; } // 0x0049D9C0 + public object DomainIdentity { get; } // 0x0049DA68 + public virtual ulong MaximumSize { get; } // 0x0049DB7C + public IsolatedStorageScope Scope { get; } // 0x0049DC24 + protected virtual char SeparatorExternal { get; } // 0x0049DC2C + protected virtual char SeparatorInternal { get; } // 0x0049DCB8 + + // Methods + protected void .ctor(); // 0x0049D740 + protected abstract IsolatedStoragePermission GetPermission(PermissionSet ps); + protected void InitStore(IsolatedStorageScope scope, Type domainEvidenceType, Type assemblyEvidenceType); // 0x0049DCC0 + protected void InitStore(IsolatedStorageScope scope, Type appEvidenceType); // 0x0049DE14 + public abstract void Remove(); +} + +// Namespace: System.IO.IsolatedStorage +[Serializable] +public class IsolatedStorageException : Exception // TypeDefIndex: 420 +{ + // Methods + public void .ctor(); // 0x0049DEF0 + public void .ctor(string message); // 0x00497DA4 + public void .ctor(string message, Exception inner); // 0x0049DF64 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x0049DF6C +} + +// Namespace: System.IO.IsolatedStorage +public sealed class IsolatedStorageFile : IsolatedStorage, IDisposable // TypeDefIndex: 421 +{ + // Fields + private bool _resolved; // 0x1C + private ulong _maxSize; // 0x20 + private Evidence _fullEvidences; // 0x28 + private static Mutex mutex; // 0x00 + private DirectoryInfo directory; // 0x2C + + // Properties + public override ulong CurrentSize { get; } // 0x004A09BC + public override ulong MaximumSize { get; } // 0x004A0A40 + internal string Root { get; } // 0x004A0DE8 + + // Methods + private void .ctor(IsolatedStorageScope scope); // 0x0049DF8C + internal void .ctor(IsolatedStorageScope scope, string location); // 0x0049DFAC + private static void .cctor(); // 0x0049E0B8 + public static IEnumerator GetEnumerator(IsolatedStorageScope scope); // 0x0049E138 + public static IsolatedStorageFile GetStore(IsolatedStorageScope scope, Evidence domainEvidence, Type domainEvidenceType, Evidence assemblyEvidence, Type assemblyEvidenceType); // 0x0049E6A4 + public static IsolatedStorageFile GetStore(IsolatedStorageScope scope, object domainIdentity, object assemblyIdentity); // 0x0049F494 + public static IsolatedStorageFile GetStore(IsolatedStorageScope scope, Type domainEvidenceType, Type assemblyEvidenceType); // 0x0049F690 + public static IsolatedStorageFile GetStore(IsolatedStorageScope scope, object applicationIdentity); // 0x0049F94C + public static IsolatedStorageFile GetStore(IsolatedStorageScope scope, Type applicationEvidenceType); // 0x0049FAA0 + public static IsolatedStorageFile GetMachineStoreForApplication(); // 0x0049FBC8 + public static IsolatedStorageFile GetMachineStoreForAssembly(); // 0x0049FCB8 + public static IsolatedStorageFile GetMachineStoreForDomain(); // 0x0049FDAC + public static IsolatedStorageFile GetUserStoreForApplication(); // 0x0049FED4 + public static IsolatedStorageFile GetUserStoreForAssembly(); // 0x0049FFC4 + public static IsolatedStorageFile GetUserStoreForDomain(); // 0x004A00B8 + public static void Remove(IsolatedStorageScope scope); // 0x004A01E0 + internal static string GetIsolatedStorageRoot(IsolatedStorageScope scope); // 0x0049E470 + private static void Demand(IsolatedStorageScope scope); // 0x0049E298 + private static IsolatedStorageContainment ScopeToContainment(IsolatedStorageScope scope); // 0x004A026C + internal static ulong GetDirectorySize(DirectoryInfo di); // 0x004A0320 + protected override void Finalize(); // 0x004A04A8 + private void PostInit(); // 0x0049F084 + public void Close(); // 0x004A0E1C + public void CreateDirectory(string dir); // 0x004A0E20 + public void DeleteDirectory(string dir); // 0x004A1150 + public void DeleteFile(string file); // 0x004A1314 + public void Dispose(); // 0x004A13CC + public string[] GetDirectoryNames(string searchPattern); // 0x004A13D4 + private string[] GetNames(FileSystemInfo[] afsi); // 0x004A16A4 + public string[] GetFileNames(string searchPattern); // 0x004A17EC + public override void Remove(); // 0x004A1ABC + protected override IsolatedStoragePermission GetPermission(PermissionSet ps); // 0x004A0CD8 + private string GetNameFromIdentity(object identity); // 0x004A04B0 + private static object GetTypeFromEvidence(Evidence e, Type t); // 0x0049EB84 + internal static object GetAssemblyIdentityFromEvidence(Evidence e); // 0x0049EE98 + internal static object GetDomainIdentityFromEvidence(Evidence e); // 0x0049EA28 + private void SaveIdentities(string root); // 0x004A0630 +} + +// Namespace: +[Serializable] +private struct Identities // TypeDefIndex: 422 +{ + // Fields + public object Application; // 0x08 + public object Assembly; // 0x0C + public object Domain; // 0x10 + + // Methods + public void .ctor(object application, object assembly, object domain); // 0x000A8784 +} + +// Namespace: System.IO.IsolatedStorage +internal class IsolatedStorageFileEnumerator : IEnumerator // TypeDefIndex: 423 +{ + // Fields + private IsolatedStorageScope _scope; // 0x08 + private string[] _storages; // 0x0C + private int _pos; // 0x10 + + // Properties + public object Current { get; } // 0x004A1AF4 + + // Methods + public void .ctor(IsolatedStorageScope scope, string root); // 0x0049E604 + public bool MoveNext(); // 0x004A1BB4 + public void Reset(); // 0x004A1BE4 +} + +// Namespace: System.IO.IsolatedStorage +public class IsolatedStorageFileStream : FileStream // TypeDefIndex: 424 +{ + // Properties + public override bool CanRead { get; } // 0x004A27DC + public override bool CanSeek { get; } // 0x004A27F4 + public override bool CanWrite { get; } // 0x004A27FC + public override SafeFileHandle SafeFileHandle { get; } // 0x004A2814 + public override IntPtr Handle { get; } // 0x004A28BC + public override bool IsAsync { get; } // 0x004A2964 + public override long Length { get; } // 0x004A296C + public override long Position { get; set; } // 0x004A2970 0x004A2974 + + // Methods + public void .ctor(string path, FileMode mode); // 0x004A1BF0 + public void .ctor(string path, FileMode mode, FileAccess access); // 0x004A1CC0 + public void .ctor(string path, FileMode mode, FileAccess access, FileShare share); // 0x004A1D3C + public void .ctor(string path, FileMode mode, FileAccess access, FileShare share, int bufferSize); // 0x004A1D90 + public void .ctor(string path, FileMode mode, FileAccess access, FileShare share, int bufferSize, IsolatedStorageFile isf); // 0x004A1C64 + public void .ctor(string path, FileMode mode, FileAccess access, FileShare share, IsolatedStorageFile isf); // 0x004A242C + public void .ctor(string path, FileMode mode, FileAccess access, IsolatedStorageFile isf); // 0x004A247C + public void .ctor(string path, FileMode mode, IsolatedStorageFile isf); // 0x004A24FC + private static string CreateIsolatedPath(IsolatedStorageFile isf, string path, FileMode mode); // 0x004A1DE4 + public override IAsyncResult BeginRead(byte[] buffer, int offset, int numBytes, AsyncCallback userCallback, object stateObject); // 0x004A298C + public override IAsyncResult BeginWrite(byte[] buffer, int offset, int numBytes, AsyncCallback userCallback, object stateObject); // 0x004A29B0 + public override int EndRead(IAsyncResult asyncResult); // 0x004A29D4 + public override void EndWrite(IAsyncResult asyncResult); // 0x004A29D8 + public override void Flush(); // 0x004A29DC + public override int Read(byte[] buffer, int offset, int count); // 0x004A29E0 + public override int ReadByte(); // 0x004A29F8 + public override long Seek(long offset, SeekOrigin origin); // 0x004A29FC + public override void SetLength(long value); // 0x004A2A1C + public override void Write(byte[] buffer, int offset, int count); // 0x004A2A34 + public override void WriteByte(byte value); // 0x004A2A4C + protected override void Dispose(bool disposing); // 0x004A2A50 +} + +// Namespace: System.IO.IsolatedStorage +[Serializable] +public enum IsolatedStorageScope // TypeDefIndex: 425 +{ + None = 0, + User = 1, + Domain = 2, + Assembly = 4, + Roaming = 8, + Machine = 16, + Application = 32 +} + +// Namespace: System.IO +public class BinaryReader : IDisposable // TypeDefIndex: 426 +{ + // Fields + private const int MaxBufferSize = 128; // 0x00 + private Stream m_stream; // 0x08 + private Encoding m_encoding; // 0x0C + private byte[] m_buffer; // 0x10 + private Decoder decoder; // 0x14 + private char[] charBuffer; // 0x18 + private bool m_disposed; // 0x1C + + // Properties + public virtual Stream BaseStream { get; } // 0x00482DD0 + + // Methods + public void .ctor(Stream input); // 0x00482BB0 + public void .ctor(Stream input, Encoding encoding); // 0x00482C44 + private void System.IDisposable.Dispose(); // 0x00482DBC + public virtual void Close(); // 0x00482DD8 + protected virtual void Dispose(bool disposing); // 0x00482E08 + protected virtual void FillBuffer(int numBytes); // 0x00482E58 + public virtual int PeekChar(); // 0x004830D8 + public virtual int Read(); // 0x0048343C + public virtual int Read(byte[] buffer, int index, int count); // 0x00483520 + public virtual int Read(char[] buffer, int index, int count); // 0x0048379C + private int ReadCharBytes(char[] buffer, int index, int count, out int bytes_read); // 0x004832F0 + protected int Read7BitEncodedInt(); // 0x00483A1C + public virtual bool ReadBoolean(); // 0x00483B0C + public virtual byte ReadByte(); // 0x00483B30 + public virtual byte[] ReadBytes(int count); // 0x00483C88 + public virtual char ReadChar(); // 0x00483EB0 + public virtual char[] ReadChars(int count); // 0x00483F5C + public virtual Decimal ReadDecimal(); // 0x00484108 + public virtual double ReadDouble(); // 0x0048430C + public virtual short ReadInt16(); // 0x00484344 + public virtual int ReadInt32(); // 0x004843DC + public virtual long ReadInt64(); // 0x004844E0 + public virtual sbyte ReadSByte(); // 0x004846DC + public virtual string ReadString(); // 0x004846FC + public virtual float ReadSingle(); // 0x0048498C + public virtual ushort ReadUInt16(); // 0x004849C4 + public virtual uint ReadUInt32(); // 0x00484A58 + public virtual ulong ReadUInt64(); // 0x00484B5C + private void CheckBuffer(int length); // 0x0048300C +} + +// Namespace: System.IO +[Serializable] +public class BinaryWriter : IDisposable // TypeDefIndex: 427 +{ + // Fields + public static readonly BinaryWriter Null; // 0x00 + protected Stream OutStream; // 0x08 + private Encoding m_encoding; // 0x0C + private byte[] buffer; // 0x10 + private bool disposed; // 0x14 + private byte[] stringBuffer; // 0x18 + private int maxCharsPerRound; // 0x1C + + // Properties + public virtual Stream BaseStream { get; } // 0x004850E8 + + // Methods + protected void .ctor(); // 0x00484D58 + public void .ctor(Stream output); // 0x00484FD0 + public void .ctor(Stream output, Encoding encoding); // 0x00484E2C + private static void .cctor(); // 0x00485064 + private void System.IDisposable.Dispose(); // 0x004850D4 + public virtual void Close(); // 0x004850F0 + protected virtual void Dispose(bool disposing); // 0x00485104 + public virtual void Flush(); // 0x0048514C + public virtual long Seek(int offset, SeekOrigin origin); // 0x00485180 + public virtual void Write(bool value); // 0x004851D4 + public virtual void Write(byte value); // 0x00485310 + public virtual void Write(byte[] buffer); // 0x00485400 + public virtual void Write(byte[] buffer, int index, int count); // 0x00485550 + public virtual void Write(char ch); // 0x004856A8 + public virtual void Write(char[] chars); // 0x00485844 + public virtual void Write(char[] chars, int index, int count); // 0x004859E0 + public virtual void Write(Decimal value); // 0x00485B84 + public virtual void Write(double value); // 0x00485E78 + public virtual void Write(short value); // 0x00485F94 + public virtual void Write(int value); // 0x00486108 + public virtual void Write(long value); // 0x004862EC + public virtual void Write(sbyte value); // 0x00486460 + public virtual void Write(float value); // 0x0048659C + public virtual void Write(string value); // 0x004866B0 + public virtual void Write(ushort value); // 0x00486978 + public virtual void Write(uint value); // 0x00486AEC + public virtual void Write(ulong value); // 0x00486CD0 + protected void Write7BitEncodedInt(int value); // 0x0048692C +} + +// Namespace: System.IO +public sealed class BufferedStream : Stream // TypeDefIndex: 428 +{ + // Fields + private Stream m_stream; // 0x08 + private byte[] m_buffer; // 0x0C + private int m_buffer_pos; // 0x10 + private int m_buffer_read_ahead; // 0x14 + private bool m_buffer_reading; // 0x18 + private bool disposed; // 0x19 + + // Properties + public override bool CanRead { get; } // 0x0048709C + public override bool CanWrite { get; } // 0x004870D0 + public override bool CanSeek { get; } // 0x00487104 + public override long Length { get; } // 0x00487138 + public override long Position { get; set; } // 0x00487268 0x00487388 + + // Methods + public void .ctor(Stream stream); // 0x00486E44 + public void .ctor(Stream stream, int bufferSize); // 0x00486E4C + protected override void Dispose(bool disposing); // 0x00487498 + public override void Flush(); // 0x00487174 + public override long Seek(long offset, SeekOrigin origin); // 0x004874FC + public override void SetLength(long value); // 0x00487638 + public override int ReadByte(); // 0x00487890 + public override void WriteByte(byte value); // 0x00487D58 + public override int Read(out byte[] array, int offset, int count); // 0x0048795C + public override void Write(byte[] array, int offset, int count); // 0x00487E18 + private void CheckObjectDisposedException(); // 0x004872BC +} + +// Namespace: System.IO +public static class Directory // TypeDefIndex: 429 +{ + // Methods + public static DirectoryInfo CreateDirectory(string path); // 0x0048812C + private static DirectoryInfo CreateDirectoriesInternal(string path); // 0x00488470 + public static void Delete(string path); // 0x0048864C + private static void RecursiveDelete(string path); // 0x00488AA8 + public static void Delete(string path, bool recursive); // 0x00488D38 + public static bool Exists(string path); // 0x00488F6C + public static DateTime GetLastAccessTime(string path); // 0x0048900C + public static DateTime GetLastAccessTimeUtc(string path); // 0x00489020 + public static DateTime GetLastWriteTime(string path); // 0x0048906C + public static DateTime GetLastWriteTimeUtc(string path); // 0x00489080 + public static DateTime GetCreationTime(string path); // 0x004890CC + public static DateTime GetCreationTimeUtc(string path); // 0x004890E0 + public static string GetCurrentDirectory(); // 0x0048912C + public static string[] GetDirectories(string path); // 0x00488C50 + public static string[] GetDirectories(string path, string searchPattern); // 0x0048921C + public static string[] GetDirectories(string path, string searchPattern, SearchOption searchOption); // 0x00489A00 + private static void GetDirectoriesRecurse(string path, string searchPattern, ArrayList all); // 0x00489B70 + public static string GetDirectoryRoot(string path); // 0x00489C28 + public static string[] GetFiles(string path); // 0x00488CC4 + public static string[] GetFiles(string path, string searchPattern); // 0x00489CC4 + public static string[] GetFiles(string path, string searchPattern, SearchOption searchOption); // 0x00489CE4 + private static void GetFilesRecurse(string path, string searchPattern, ArrayList all); // 0x00489E54 + public static string[] GetFileSystemEntries(string path); // 0x00489F0C + public static string[] GetFileSystemEntries(string path, string searchPattern); // 0x00489F80 + public static string[] GetLogicalDrives(); // 0x00489FA0 + private static bool IsRootDirectory(string path); // 0x00489FA8 + public static DirectoryInfo GetParent(string path); // 0x0048A134 + public static void Move(string sourceDirName, string destDirName); // 0x0048A368 + public static void SetCreationTime(string path, DateTime creationTime); // 0x0048A8FC + public static void SetCreationTimeUtc(string path, DateTime creationTimeUtc); // 0x0048A92C + public static void SetCurrentDirectory(string path); // 0x0048A98C + public static void SetLastAccessTime(string path, DateTime lastAccessTime); // 0x0048ABF4 + public static void SetLastAccessTimeUtc(string path, DateTime lastAccessTimeUtc); // 0x0048AC24 + public static void SetLastWriteTime(string path, DateTime lastWriteTime); // 0x0048AC84 + public static void SetLastWriteTimeUtc(string path, DateTime lastWriteTimeUtc); // 0x0048ACB4 + private static void CheckPathExceptions(string path); // 0x00488D68 + private static string[] GetFileSystemEntries(string path, string searchPattern, FileAttributes mask, FileAttributes attrs); // 0x0048923C +} + +// Namespace: System.IO +[Serializable] +public sealed class DirectoryInfo : FileSystemInfo // TypeDefIndex: 430 +{ + // Fields + private string current; // 0x44 + private string parent; // 0x48 + + // Properties + public override bool Exists { get; } // 0x0048B694 + public override string Name { get; } // 0x0048B828 + public DirectoryInfo Parent { get; } // 0x0048B830 + public DirectoryInfo Root { get; } // 0x0048B8BC + + // Methods + public void .ctor(string path); // 0x0048AD14 + internal void .ctor(string path, bool simpleOriginalPath); // 0x0048AD1C + private void .ctor(SerializationInfo info, StreamingContext context); // 0x0048B574 + private void Initialize(); // 0x0048B1D0 + public void Create(); // 0x0048C0E4 + public DirectoryInfo CreateSubdirectory(string path); // 0x0048C0F0 + public FileInfo[] GetFiles(); // 0x0048C5DC + public FileInfo[] GetFiles(string searchPattern); // 0x0048C640 + public DirectoryInfo[] GetDirectories(); // 0x0048C918 + public DirectoryInfo[] GetDirectories(string searchPattern); // 0x0048C97C + public FileSystemInfo[] GetFileSystemInfos(); // 0x0048CB4C + public FileSystemInfo[] GetFileSystemInfos(string searchPattern); // 0x0048CBB0 + public override void Delete(); // 0x0048CF1C + public void Delete(bool recursive); // 0x0048CF2C + public void MoveTo(string destDirName); // 0x0048CF38 + public override string ToString(); // 0x0048D090 + public DirectoryInfo[] GetDirectories(string searchPattern, SearchOption searchOption); // 0x0048D098 + internal int GetFilesSubdirs(ArrayList l, string pattern); // 0x0048D400 + public FileInfo[] GetFiles(string searchPattern, SearchOption searchOption); // 0x0048D5B0 +} + +// Namespace: System.IO +[Serializable] +public class DirectoryNotFoundException : IOException // TypeDefIndex: 431 +{ + // Methods + public void .ctor(); // 0x0048DA60 + public void .ctor(string message); // 0x0048DAC8 + public void .ctor(string message, Exception innerException); // 0x0048DAD0 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x0048DAE0 +} + +// Namespace: System.IO +[Serializable] +public sealed class DriveInfo : ISerializable // TypeDefIndex: 432 +{ + // Fields + private _DriveType _drive_type; // 0x08 + private string drive_format; // 0x0C + private string path; // 0x10 + + // Properties + public long AvailableFreeSpace { get; } // 0x0048E790 + public long TotalFreeSpace { get; } // 0x0048E7FC + public long TotalSize { get; } // 0x0048E868 + public string VolumeLabel { get; set; } // 0x0048E8D4 0x0048E8DC + public string DriveFormat { get; } // 0x0048E964 + public DriveType DriveType { get; } // 0x0048E96C + public string Name { get; } // 0x0048E978 + public DirectoryInfo RootDirectory { get; } // 0x0048E980 + public bool IsReady { get; } // 0x0048E9F8 + + // Methods + private void .ctor(_DriveType _drive_type, string path, string fstype); // 0x0048DB20 + public void .ctor(string driveName); // 0x0048DB50 + private void System.Runtime.Serialization.ISerializable.GetObjectData(SerializationInfo info, StreamingContext context); // 0x0048DD14 + private static void GetDiskFreeSpace(string path, out ulong availableFreeSpace, out ulong totalSize, out ulong totalFreeSpace); // 0x0048DD9C + private static StreamReader TryOpen(string name); // 0x0048EA00 + private static DriveInfo[] LinuxGetDrives(); // 0x0048EC2C + private static DriveInfo[] UnixGetDrives(); // 0x0048F054 + private static DriveInfo[] WindowsGetDrives(); // 0x0048F3AC + public static DriveInfo[] GetDrives(); // 0x0048DCE0 + public override string ToString(); // 0x0048F434 + private static bool GetDiskFreeSpaceInternal(string pathName, out ulong freeBytesAvail, out ulong totalNumberOfBytes, out ulong totalNumberOfFreeBytes, out MonoIOError error); // 0x0048DE80 + private static uint GetDriveTypeInternal(string rootPathName); // 0x0048E974 +} + +// Namespace: +private enum _DriveType // TypeDefIndex: 433 +{ + GenericUnix = 0, + Linux = 1, + Windows = 2 +} + +// Namespace: System.IO +[Serializable] +public class DriveNotFoundException : IOException // TypeDefIndex: 434 +{ + // Fields + private const int ErrorCode = -2147024893; // 0x00 + + // Methods + public void .ctor(); // 0x0048F43C + public void .ctor(string message); // 0x0048F4B0 + public void .ctor(string message, Exception innerException); // 0x0048F4D4 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x0048F4F8 +} + +// Namespace: System.IO +[Serializable] +public enum DriveType // TypeDefIndex: 435 +{ + Unknown = 0, + NoRootDirectory = 1, + Removable = 2, + Fixed = 3, + Network = 4, + CDRom = 5, + Ram = 6 +} + +// Namespace: System.IO +[Serializable] +public class EndOfStreamException : IOException // TypeDefIndex: 436 +{ + // Methods + public void .ctor(); // 0x0048F518 + public void .ctor(string message); // 0x0048F58C + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x0048F594 + public void .ctor(string message, Exception innerException); // 0x0048F5B4 +} + +// Namespace: System.IO +public static class File // TypeDefIndex: 437 +{ + // Fields + private static Nullable`1 defaultLocalFileTime; // 0x00 + + // Properties + private static DateTime DefaultLocalFileTime { get; } // 0x00491430 + + // Methods + public static void AppendAllText(string path, string contents); // 0x0048F5BC + public static void AppendAllText(string path, string contents, Encoding encoding); // 0x0048F72C + public static StreamWriter AppendText(string path); // 0x0048F8AC + public static void Copy(string sourceFileName, string destFileName); // 0x0048F924 + public static void Copy(string sourceFileName, string destFileName, bool overwrite); // 0x0048F92C + public static FileStream Create(string path); // 0x00490A78 + public static FileStream Create(string path, int bufferSize); // 0x00490A80 + public static StreamWriter CreateText(string path); // 0x00490B48 + public static void Delete(string path); // 0x00490BC0 + public static bool Exists(string path); // 0x0048EAD8 + public static FileAttributes GetAttributes(string path); // 0x00490318 + public static DateTime GetCreationTime(string path); // 0x00491088 + public static DateTime GetCreationTimeUtc(string path); // 0x00491570 + public static DateTime GetLastAccessTime(string path); // 0x004915B8 + public static DateTime GetLastAccessTimeUtc(string path); // 0x0049172C + public static DateTime GetLastWriteTime(string path); // 0x00491774 + public static DateTime GetLastWriteTimeUtc(string path); // 0x004918E8 + public static void Move(string sourceFileName, string destFileName); // 0x00491930 + public static FileStream Open(string path, FileMode mode); // 0x004920D8 + public static FileStream Open(string path, FileMode mode, FileAccess access); // 0x004921AC + public static FileStream Open(string path, FileMode mode, FileAccess access, FileShare share); // 0x0049224C + public static FileStream OpenRead(string path); // 0x004922F4 + public static StreamReader OpenText(string path); // 0x00492394 + public static FileStream OpenWrite(string path); // 0x004924AC + public static void Replace(string sourceFileName, string destinationFileName, string destinationBackupFileName); // 0x00492544 + public static void Replace(string sourceFileName, string destinationFileName, string destinationBackupFileName, bool ignoreMetadataErrors); // 0x00492560 + public static void SetAttributes(string path, FileAttributes fileAttributes); // 0x00493064 + public static void SetCreationTime(string path, DateTime creationTime); // 0x0049316C + public static void SetCreationTimeUtc(string path, DateTime creationTimeUtc); // 0x004933E4 + public static void SetLastAccessTime(string path, DateTime lastAccessTime); // 0x00493440 + public static void SetLastAccessTimeUtc(string path, DateTime lastAccessTimeUtc); // 0x004936B8 + public static void SetLastWriteTime(string path, DateTime lastWriteTime); // 0x00493714 + public static void SetLastWriteTimeUtc(string path, DateTime lastWriteTimeUtc); // 0x0049398C + private static void CheckPathExceptions(string path); // 0x004911FC + public static byte[] ReadAllBytes(string path); // 0x004939E8 + public static string[] ReadAllLines(string path); // 0x00493CB4 + public static string[] ReadAllLines(string path, Encoding encoding); // 0x00493F38 + private static string[] ReadAllLines(StreamReader reader); // 0x00493E20 + public static string ReadAllText(string path); // 0x004940FC + public static string ReadAllText(string path, Encoding encoding); // 0x00494188 + public static void WriteAllBytes(string path, byte[] bytes); // 0x0049433C + public static void WriteAllLines(string path, string[] contents); // 0x004944B8 + public static void WriteAllLines(string path, string[] contents, Encoding encoding); // 0x0049468C + private static void WriteAllLines(StreamWriter writer, string[] contents); // 0x00494608 + public static void WriteAllText(string path, string contents); // 0x004947F4 + public static void WriteAllText(string path, string contents, Encoding encoding); // 0x00494888 + public static void Encrypt(string path); // 0x00494A08 + public static void Decrypt(string path); // 0x00494AB0 +} + +// Namespace: System.IO +[Serializable] +public enum FileAccess // TypeDefIndex: 438 +{ + Read = 1, + Write = 2, + ReadWrite = 3 +} + +// Namespace: System.IO +[Serializable] +public enum FileAttributes // TypeDefIndex: 439 +{ + ReadOnly = 1, + Hidden = 2, + System = 4, + Directory = 16, + Archive = 32, + Device = 64, + Normal = 128, + Temporary = 256, + SparseFile = 512, + ReparsePoint = 1024, + Compressed = 2048, + Offline = 4096, + NotContentIndexed = 8192, + Encrypted = 16384 +} + +// Namespace: System.IO +[Serializable] +public sealed class FileInfo : FileSystemInfo // TypeDefIndex: 440 +{ + // Fields + private bool exists; // 0x41 + + // Properties + public override bool Exists { get; } // 0x00494B8C + public override string Name { get; } // 0x00494C54 + public bool IsReadOnly { get; set; } // 0x00494CD8 0x00494DE4 + public long Length { get; } // 0x00495060 + public string DirectoryName { get; } // 0x00495168 + public DirectoryInfo Directory { get; } // 0x004951EC + + // Methods + public void .ctor(string fileName); // 0x0048C80C + private void .ctor(SerializationInfo info, StreamingContext context); // 0x00494B58 + internal override void InternalRefresh(); // 0x00494B70 + public void Encrypt(); // 0x00494F10 + public void Decrypt(); // 0x00494FB8 + public StreamReader OpenText(); // 0x0049526C + public StreamWriter CreateText(); // 0x004953C0 + public StreamWriter AppendText(); // 0x00495454 + public FileStream Create(); // 0x004954E8 + public FileStream OpenRead(); // 0x004954F4 + public FileStream OpenWrite(); // 0x004955C4 + public FileStream Open(FileMode mode); // 0x004955E8 + public FileStream Open(FileMode mode, FileAccess access); // 0x004952FC + public FileStream Open(FileMode mode, FileAccess access, FileShare share); // 0x00495518 + public override void Delete(); // 0x00495608 + public void MoveTo(string destFileName); // 0x00495828 + public FileInfo CopyTo(string destFileName); // 0x00495A84 + public FileInfo CopyTo(string destFileName, bool overwrite); // 0x00495A8C + public override string ToString(); // 0x00495C28 + public FileInfo Replace(string destinationFileName, string destinationBackupFileName); // 0x00495C2C + public FileInfo Replace(string destinationFileName, string destinationBackupFileName, bool ignoreMetadataErrors); // 0x00495F14 +} + +// Namespace: System.IO +[Serializable] +public class FileLoadException : IOException // TypeDefIndex: 441 +{ + // Fields + private const int Result = -2147024894; // 0x00 + private string msg; // 0x34 + private string fileName; // 0x38 + private string fusionLog; // 0x3C + + // Properties + public override string Message { get; } // 0x0049622C + public string FileName { get; } // 0x00496234 + public string FusionLog { get; } // 0x0049623C + + // Methods + public void .ctor(); // 0x00495F9C + public void .ctor(string message); // 0x0049602C + public void .ctor(string message, string fileName); // 0x00496058 + public void .ctor(string message, Exception inner); // 0x0049608C + public void .ctor(string message, string fileName, Exception inner); // 0x004960B8 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x004960F0 + public override void GetObjectData(SerializationInfo info, StreamingContext context); // 0x00496244 + public override string ToString(); // 0x00496328 +} + +// Namespace: System.IO +[Serializable] +public enum FileMode // TypeDefIndex: 442 +{ + CreateNew = 1, + Create = 2, + Open = 3, + OpenOrCreate = 4, + Truncate = 5, + Append = 6 +} + +// Namespace: System.IO +[Serializable] +public class FileNotFoundException : IOException // TypeDefIndex: 443 +{ + // Fields + private const int Result = -2146232799; // 0x00 + private string fileName; // 0x34 + private string fusionLog; // 0x38 + + // Properties + public string FileName { get; } // 0x00496688 + public string FusionLog { get; } // 0x00496690 + public override string Message { get; } // 0x00496698 + + // Methods + public void .ctor(); // 0x00495A04 + public void .ctor(string message); // 0x00496518 + public void .ctor(string message, Exception innerException); // 0x0049653C + public void .ctor(string message, string fileName); // 0x004902EC + public void .ctor(string message, string fileName, Exception innerException); // 0x00496560 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x00496590 + public override void GetObjectData(SerializationInfo info, StreamingContext context); // 0x00496808 + public override string ToString(); // 0x004968EC +} + +// Namespace: System.IO +[Serializable] +public enum FileOptions // TypeDefIndex: 444 +{ + WriteThrough = -2147483648, + None = 0, + Encrypted = 16384, + DeleteOnClose = 67108864, + SequentialScan = 134217728, + RandomAccess = 268435456, + Asynchronous = 1073741824 +} + +// Namespace: System.IO +[Serializable] +public enum FileShare // TypeDefIndex: 445 +{ + None = 0, + Read = 1, + Write = 2, + ReadWrite = 3, + Delete = 4, + Inheritable = 16 +} + +// Namespace: System.IO +public class FileStream : Stream // TypeDefIndex: 446 +{ + // Fields + internal const int DefaultBufferSize = 8192; // 0x00 + private FileAccess access; // 0x08 + private bool owner; // 0x0C + private bool async; // 0x0D + private bool canseek; // 0x0E + private long append_startpos; // 0x10 + private bool anonymous; // 0x18 + private byte[] buf; // 0x1C + private int buf_size; // 0x20 + private int buf_length; // 0x24 + private int buf_offset; // 0x28 + private bool buf_dirty; // 0x2C + private long buf_start; // 0x30 + private string name; // 0x38 + private IntPtr handle; // 0x3C + private SafeFileHandle safeHandle; // 0x40 + + // Properties + public override bool CanRead { get; } // 0x00497F44 + public override bool CanWrite { get; } // 0x00497F5C + public override bool CanSeek { get; } // 0x00497F74 + public virtual bool IsAsync { get; } // 0x00497F7C + public string Name { get; } // 0x00497F84 + public override long Length { get; } // 0x00497F8C + public override long Position { get; set; } // 0x004981CC 0x00498340 + public virtual IntPtr Handle { get; } // 0x00498524 + public virtual SafeFileHandle SafeFileHandle { get; } // 0x0049852C + + // Methods + public void .ctor(IntPtr handle, FileAccess access); // 0x00496B3C + public void .ctor(IntPtr handle, FileAccess access, bool ownsHandle); // 0x00496B94 + public void .ctor(IntPtr handle, FileAccess access, bool ownsHandle, int bufferSize); // 0x00496BC0 + public void .ctor(IntPtr handle, FileAccess access, bool ownsHandle, int bufferSize, bool isAsync); // 0x00496B68 + internal void .ctor(IntPtr handle, FileAccess access, bool ownsHandle, int bufferSize, bool isAsync, bool noBuffering); // 0x00496BE8 + public void .ctor(string path, FileMode mode); // 0x004970C4 + public void .ctor(string path, FileMode mode, FileAccess access); // 0x00497C98 + public void .ctor(string path, FileMode mode, FileAccess access, FileShare share); // 0x0049217C + public void .ctor(string path, FileMode mode, FileAccess access, FileShare share, int bufferSize); // 0x00490B18 + public void .ctor(string path, FileMode mode, FileAccess access, FileShare share, int bufferSize, bool useAsync); // 0x00497D70 + internal void .ctor(string path, FileMode mode, FileAccess access, FileShare share, int bufferSize, bool isAsync, bool anonymous); // 0x00497D00 + internal void .ctor(string path, FileMode mode, FileAccess access, FileShare share, int bufferSize, bool anonymous, FileOptions options); // 0x00497130 + public override int ReadByte(); // 0x004985CC + public override void WriteByte(byte value); // 0x004989C4 + public override int Read(out byte[] array, int offset, int count); // 0x00498BF8 + private int ReadInternal(byte[] dest, int offset, int count); // 0x00498F80 + public override IAsyncResult BeginRead(byte[] array, int offset, int numBytes, AsyncCallback userCallback, object stateObject); // 0x0049907C + public override int EndRead(IAsyncResult asyncResult); // 0x004996CC + public override void Write(byte[] array, int offset, int count); // 0x00499AA4 + private void WriteInternal(byte[] src, int offset, int count); // 0x00499DE0 + public override IAsyncResult BeginWrite(byte[] array, int offset, int numBytes, AsyncCallback userCallback, object stateObject); // 0x0049A018 + public override void EndWrite(IAsyncResult asyncResult); // 0x0049AAA8 + public override long Seek(long offset, SeekOrigin origin); // 0x0049AE60 + public override void SetLength(long value); // 0x0049B1D8 + public override void Flush(); // 0x0049B508 + public virtual void Lock(long position, long length); // 0x0049B614 + public virtual void Unlock(long position, long length); // 0x0049B92C + protected override void Finalize(); // 0x0049BBA4 + protected override void Dispose(bool disposing); // 0x0049BC1C + private int ReadSegment(byte[] dest, int dest_offset, int count); // 0x0049901C + private int WriteSegment(byte[] src, int src_offset, int count); // 0x00499F9C + private void FlushBuffer(Stream st); // 0x0049A77C + private void FlushBuffer(); // 0x004985C4 + private void FlushBufferIfDirty(); // 0x004981B4 + private void RefillBuffer(); // 0x00498984 + private int ReadData(IntPtr handle, byte[] buf, int offset, int count); // 0x0049880C + private void InitBuffer(int size, bool noBuffering); // 0x00496FAC + private string GetSecureFileName(string filename); // 0x00497E88 + private string GetSecureFileName(string filename, bool full); // 0x00497DAC +} + +// Namespace: +private delegate int ReadDelegate(byte[] buffer, int offset, int count); // TypeDefIndex: 447; 0x0049BEC0 + +// Namespace: +private delegate void WriteDelegate(byte[] buffer, int offset, int count); // TypeDefIndex: 448; 0x0049C2C4 + +// Namespace: System.IO +internal class FileStreamAsyncResult : IAsyncResult // TypeDefIndex: 449 +{ + // Fields + private object state; // 0x08 + private bool completed; // 0x0C + private bool done; // 0x0D + private Exception exc; // 0x10 + private ManualResetEvent wh; // 0x14 + private AsyncCallback cb; // 0x18 + private bool completedSynch; // 0x1C + public byte[] Buffer; // 0x20 + public int Offset; // 0x24 + public int Count; // 0x28 + public int OriginalCount; // 0x2C + public int BytesRead; // 0x30 + private AsyncCallback realcb; // 0x34 + + // Properties + public object AsyncState { get; } // 0x0049C808 + public bool CompletedSynchronously { get; } // 0x0049C810 + public WaitHandle AsyncWaitHandle { get; } // 0x0049C818 + public bool IsCompleted { get; } // 0x0049C820 + public Exception Exception { get; } // 0x0049C828 + public bool Done { get; set; } // 0x0049C830 0x0049C838 + + // Methods + public void .ctor(AsyncCallback cb, object state); // 0x0049A6A0 + private static void CBWrapper(IAsyncResult ares); // 0x0049C6C8 + public void SetComplete(Exception e); // 0x0049C7A0 + public void SetComplete(Exception e, int nbytes); // 0x0049C7F4 + public void SetComplete(Exception e, int nbytes, bool synch); // 0x0049C7FC +} + +// Namespace: System.IO +[Serializable] +public abstract class FileSystemInfo : MarshalByRefObject, ISerializable // TypeDefIndex: 450 +{ + // Fields + protected string FullPath; // 0x0C + protected string OriginalPath; // 0x10 + internal MonoIOStat stat; // 0x18 + internal bool valid; // 0x40 + + // Properties + public abstract bool Exists { get; } + public abstract string Name { get; } + public virtual string FullName { get; } // 0x0049C978 + public string Extension { get; } // 0x0049C980 + public FileAttributes Attributes { get; set; } // 0x0049CBC8 0x0049CBE4 + public DateTime CreationTime { get; set; } // 0x0049CD20 0x0049CDD0 + public DateTime CreationTimeUtc { get; set; } // 0x0049D0AC 0x0049D0F4 + public DateTime LastAccessTime { get; set; } // 0x0049D150 0x0049D200 + public DateTime LastAccessTimeUtc { get; set; } // 0x0049D37C 0x0049D3D8 + public DateTime LastWriteTime { get; set; } // 0x0049D434 0x0049D4E4 + public DateTime LastWriteTimeUtc { get; set; } // 0x0049D65C 0x0049D6B8 + + // Methods + protected void .ctor(); // 0x0048AE14 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x0048B598 + public virtual void GetObjectData(SerializationInfo info, StreamingContext context); // 0x0049C840 + public abstract void Delete(); + public void Refresh(); // 0x0049D714 + internal void Refresh(bool force); // 0x0048B744 + internal virtual void InternalRefresh(); // 0x0049D71C + internal void CheckPath(string path); // 0x0048AE38 +} + +// Namespace: System.IO +[Serializable] +public class IOException : SystemException // TypeDefIndex: 451 +{ + // Methods + public void .ctor(); // 0x004961C4 + public void .ctor(string message); // 0x0048CF14 + public void .ctor(string message, Exception innerException); // 0x0048DAD8 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x0048DB00 + public void .ctor(string message, int hresult); // 0x0049D720 +} + +// Namespace: System.IO +[Serializable] +public class MemoryStream : Stream // TypeDefIndex: 452 +{ + // Fields + private bool canWrite; // 0x08 + private bool allowGetBuffer; // 0x09 + private int capacity; // 0x0C + private int length; // 0x10 + private byte[] internalBuffer; // 0x14 + private int initialIndex; // 0x18 + private bool expandable; // 0x1C + private bool streamClosed; // 0x1D + private int position; // 0x20 + private int dirty_bytes; // 0x24 + + // Properties + public override bool CanRead { get; } // 0x004A3200 + public override bool CanSeek { get; } // 0x004A3214 + public override bool CanWrite { get; } // 0x004A3228 + public virtual int Capacity { get; set; } // 0x004A324C 0x004A326C + public override long Length { get; } // 0x004A3620 + public override long Position { get; set; } // 0x004A3644 0x004A3668 + + // Methods + public void .ctor(); // 0x0049A774 + public void .ctor(int capacity); // 0x004A2A54 + public void .ctor(byte[] buffer); // 0x004A2B6C + public void .ctor(byte[] buffer, bool writable); // 0x004A2E14 + public void .ctor(byte[] buffer, int index, int count); // 0x004A2F24 + public void .ctor(byte[] buffer, int index, int count, bool writable); // 0x004A2FDC + public void .ctor(byte[] buffer, int index, int count, bool writable, bool publiclyVisible); // 0x004A3098 + private void InternalConstructor(byte[] buffer, int index, int count, bool writable, bool publicallyVisible); // 0x004A2C7C + private void CheckIfClosedThrowDisposed(); // 0x004A3154 + protected override void Dispose(bool disposing); // 0x004A379C + public override void Flush(); // 0x004A37A8 + public virtual byte[] GetBuffer(); // 0x004A37AC + public override int Read(out byte[] buffer, int offset, int count); // 0x004A3848 + public override int ReadByte(); // 0x004A3A14 + public override long Seek(long offset, SeekOrigin loc); // 0x004A3A7C + private int CalculateNewCapacity(int minimum); // 0x004A3CD8 + private void Expand(int newSize); // 0x004A3CF4 + public override void SetLength(long value); // 0x004A3D5C + public virtual byte[] ToArray(); // 0x004A3F24 + public override void Write(byte[] buffer, int offset, int count); // 0x004A3FCC + public override void WriteByte(byte value); // 0x004A41DC + public virtual void WriteTo(Stream stream); // 0x004A4300 +} + +// Namespace: System.IO +internal enum MonoFileType // TypeDefIndex: 453 +{ + Unknown = 0, + Disk = 1, + Char = 2, + Pipe = 3, + Remote = 32768 +} + +// Namespace: System.IO +internal sealed class MonoIO // TypeDefIndex: 454 +{ + // Fields + public static readonly FileAttributes InvalidFileAttributes; // 0x00 + public static readonly IntPtr InvalidHandle; // 0x04 + + // Properties + public static IntPtr ConsoleOutput { get; } // 0x004A4728 + public static IntPtr ConsoleInput { get; } // 0x004A472C + public static IntPtr ConsoleError { get; } // 0x004A4730 + public static char VolumeSeparatorChar { get; } // 0x004A473C + public static char DirectorySeparatorChar { get; } // 0x004A4740 + public static char AltDirectorySeparatorChar { get; } // 0x004A4744 + public static char PathSeparator { get; } // 0x004A4748 + + // Methods + public void .ctor(); // 0x004A43E8 + private static void .cctor(); // 0x004A43F0 + public static Exception GetException(MonoIOError error); // 0x00491F80 + public static Exception GetException(string path, MonoIOError error); // 0x0048DE84 + public static bool CreateDirectory(string path, out MonoIOError error); // 0x004A4478 + public static bool RemoveDirectory(string path, out MonoIOError error); // 0x004A447C + public static string[] GetFileSystemEntries(string path, string path_with_pattern, int attrs, int mask, out MonoIOError error); // 0x004A4480 + public static string GetCurrentDirectory(out MonoIOError error); // 0x004A4484 + public static bool SetCurrentDirectory(string path, out MonoIOError error); // 0x004A4488 + public static bool MoveFile(string path, string dest, out MonoIOError error); // 0x00491F7C + public static bool CopyFile(string path, string dest, bool overwrite, out MonoIOError error); // 0x00490A74 + public static bool DeleteFile(string path, out MonoIOError error); // 0x00490FC4 + public static bool ReplaceFile(string sourceFileName, string destinationFileName, string destinationBackupFileName, bool ignoreMetadataErrors, out MonoIOError error); // 0x00493060 + public static FileAttributes GetFileAttributes(string path, out MonoIOError error); // 0x00491084 + public static bool SetFileAttributes(string path, FileAttributes attrs, out MonoIOError error); // 0x00493168 + public static MonoFileType GetFileType(IntPtr handle, out MonoIOError error); // 0x00496FA8 + public static bool Exists(string path, out MonoIOError error); // 0x0049023C + public static bool ExistsFile(string path, out MonoIOError error); // 0x00490FC8 + public static bool ExistsDirectory(string path, out MonoIOError error); // 0x00492F74 + public static bool ExistsSymlink(string path, out MonoIOError error); // 0x004A448C + public static bool GetFileStat(string path, out MonoIOStat stat, out MonoIOError error); // 0x0049142C + public static IntPtr Open(string filename, FileMode mode, FileAccess access, FileShare share, FileOptions options, out MonoIOError error); // 0x00497F40 + public static bool Close(IntPtr handle, out MonoIOError error); // 0x0049BEB8 + public static int Read(IntPtr handle, byte[] dest, int dest_offset, int count, out MonoIOError error); // 0x0049BEBC + public static int Write(IntPtr handle, byte[] src, int src_offset, int count, out MonoIOError error); // 0x00499F98 + public static long Seek(IntPtr handle, long offset, SeekOrigin origin, out MonoIOError error); // 0x004970C0 + public static bool Flush(IntPtr handle, out MonoIOError error); // 0x004A4538 + public static long GetLength(IntPtr handle, out MonoIOError error); // 0x004981C8 + public static bool SetLength(IntPtr handle, long length, out MonoIOError error); // 0x0049B504 + public static bool SetFileTime(IntPtr handle, long creation_time, long last_access_time, long last_write_time, out MonoIOError error); // 0x004A453C + public static bool SetFileTime(string path, long creation_time, long last_access_time, long last_write_time, out MonoIOError error); // 0x0049CF50 + public static bool SetCreationTime(string path, DateTime dateTime, out MonoIOError error); // 0x00493314 + public static bool SetLastAccessTime(string path, DateTime dateTime, out MonoIOError error); // 0x004935E8 + public static bool SetLastWriteTime(string path, DateTime dateTime, out MonoIOError error); // 0x004938BC + public static bool SetFileTime(string path, int type, long creation_time, long last_access_time, long last_write_time, DateTime dateTime, out MonoIOError error); // 0x004A4540 + public static void Lock(IntPtr handle, long position, long length, out MonoIOError error); // 0x0049B928 + public static void Unlock(IntPtr handle, long position, long length, out MonoIOError error); // 0x0049BBA0 + public static bool CreatePipe(out IntPtr read_handle, out IntPtr write_handle); // 0x004A4734 + public static bool DuplicateHandle(IntPtr source_process_handle, IntPtr source_handle, IntPtr target_process_handle, out IntPtr target_handle, int access, int inherit, int options); // 0x004A4738 + public static int GetTempPath(out string path); // 0x004A474C + public static bool RemapPath(string path, out string newPath); // 0x004A4750 +} + +// Namespace: System.IO +internal enum MonoIOError // TypeDefIndex: 455 +{ + ERROR_SUCCESS = 0, + ERROR_FILE_NOT_FOUND = 2, + ERROR_PATH_NOT_FOUND = 3, + ERROR_TOO_MANY_OPEN_FILES = 4, + ERROR_ACCESS_DENIED = 5, + ERROR_INVALID_HANDLE = 6, + ERROR_INVALID_DRIVE = 15, + ERROR_NOT_SAME_DEVICE = 17, + ERROR_NO_MORE_FILES = 18, + ERROR_WRITE_FAULT = 29, + ERROR_READ_FAULT = 30, + ERROR_GEN_FAILURE = 31, + ERROR_SHARING_VIOLATION = 32, + ERROR_LOCK_VIOLATION = 33, + ERROR_HANDLE_DISK_FULL = 39, + ERROR_FILE_EXISTS = 80, + ERROR_CANNOT_MAKE = 82, + ERROR_INVALID_PARAMETER = 87, + ERROR_BROKEN_PIPE = 109, + ERROR_INVALID_NAME = 123, + ERROR_DIR_NOT_EMPTY = 145, + ERROR_ALREADY_EXISTS = 183, + ERROR_FILENAME_EXCED_RANGE = 206, + ERROR_ENCRYPTION_FAILED = 6000 +} + +// Namespace: System.IO +internal struct MonoIOStat // TypeDefIndex: 456 +{ + // Fields + public string Name; // 0x08 + public FileAttributes Attributes; // 0x0C + public long Length; // 0x10 + public long CreationTime; // 0x18 + public long LastAccessTime; // 0x20 + public long LastWriteTime; // 0x28 + +} + +// Namespace: System.IO +public static class Path // TypeDefIndex: 457 +{ + // Fields + public static readonly char[] InvalidPathChars; // 0x00 + public static readonly char AltDirectorySeparatorChar; // 0x04 + public static readonly char DirectorySeparatorChar; // 0x06 + public static readonly char PathSeparator; // 0x08 + internal static readonly string DirectorySeparatorStr; // 0x0C + public static readonly char VolumeSeparatorChar; // 0x10 + internal static readonly char[] PathSeparatorChars; // 0x14 + private static readonly bool dirEqualsVolume; // 0x18 + + // Methods + private static void .cctor(); // 0x004A4838 + public static string ChangeExtension(string path, string extension); // 0x004A4AC8 + public static string Combine(string path1, string path2); // 0x0048C1B8 + internal static string CleanPath(string s); // 0x004A4EDC + public static string GetDirectoryName(string path); // 0x0049058C + public static string GetExtension(string path); // 0x0049CA18 + public static string GetFileName(string path); // 0x0048B04C + public static string GetFileNameWithoutExtension(string path); // 0x004A5548 + public static string GetFullPath(string path); // 0x0048AFCC + internal static string WindowsDriveAdjustment(string path); // 0x004A5F64 + internal static string InsecureGetFullPath(string path); // 0x004A55D0 + private static bool IsDsc(char c); // 0x004A631C + public static string GetPathRoot(string path); // 0x0048B97C + public static string GetTempFileName(); // 0x004A7040 + public static string GetTempPath(); // 0x004A7430 + private static string get_temp_path(); // 0x004A75C8 + public static bool HasExtension(string path); // 0x004A75CC + public static bool IsPathRooted(string path); // 0x004A2578 + public static char[] GetInvalidFileNameChars(); // 0x004A775C + public static char[] GetInvalidPathChars(); // 0x004A4A24 + public static string GetRandomFileName(); // 0x004A7838 + private static int findExtension(string path); // 0x004A4E10 + private static string GetServerAndShare(string path); // 0x004A79AC + private static bool SameRoot(string root, string path); // 0x004A7B6C + private static string CanonicalizePath(string path); // 0x004A63FC + internal static bool IsPathSubsetOf(string subset, string path); // 0x004A7F7C +} + +// Namespace: System.IO +[Serializable] +public class PathTooLongException : IOException // TypeDefIndex: 458 +{ + // Methods + public void .ctor(); // 0x004A81B8 + public void .ctor(string message); // 0x004A4470 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x004A822C + public void .ctor(string message, Exception innerException); // 0x004A824C +} + +// Namespace: System.IO +[Serializable] +public enum SearchOption // TypeDefIndex: 459 +{ + TopDirectoryOnly = 0, + AllDirectories = 1 +} + +// Namespace: System.IO +internal class SearchPattern // TypeDefIndex: 460 +{ + // Fields + private Op ops; // 0x08 + private bool ignore; // 0x0C + internal static readonly char[] WildcardChars; // 0x00 + internal static readonly char[] InvalidChars; // 0x04 + + // Methods + public void .ctor(string pattern); // 0x004A8254 + public void .ctor(string pattern, bool ignore); // 0x004A8284 + private static void .cctor(); // 0x004A866C + public bool IsMatch(string text); // 0x004A8820 + private void Compile(string pattern); // 0x004A82B4 + private bool Match(Op op, string text, int ptr); // 0x004A8844 +} + +// Namespace: +private class Op // TypeDefIndex: 461 +{ + // Fields + public OpCode Code; // 0x08 + public string Argument; // 0x0C + public Op Next; // 0x10 + + // Methods + public void .ctor(OpCode code); // 0x004A8A64 +} + +// Namespace: +private enum OpCode // TypeDefIndex: 462 +{ + ExactString = 0, + AnyChar = 1, + AnyString = 2, + End = 3, + True = 4 +} + +// Namespace: System.IO +[Serializable] +public enum SeekOrigin // TypeDefIndex: 463 +{ + Begin = 0, + Current = 1, + End = 2 +} + +// Namespace: System.IO +[Serializable] +public abstract class Stream : IDisposable // TypeDefIndex: 464 +{ + // Fields + public static readonly Stream Null; // 0x00 + + // Properties + public abstract bool CanRead { get; } + public abstract bool CanSeek { get; } + public abstract bool CanWrite { get; } + public virtual bool CanTimeout { get; } // 0x004A8B0C + public abstract long Length { get; } + public abstract long Position { get; set; } + public virtual int ReadTimeout { get; set; } // 0x004A8B3C 0x004A8BD8 + public virtual int WriteTimeout { get; set; } // 0x004A8C74 0x004A8D10 + + // Methods + protected void .ctor(); // 0x00496FA0 + private static void .cctor(); // 0x004A8A90 + public void Dispose(); // 0x004A8B14 + protected virtual void Dispose(bool disposing); // 0x004A8B24 + public virtual void Close(); // 0x004A8B28 + public static Stream Synchronized(Stream stream); // 0x004A8DAC + protected virtual WaitHandle CreateWaitHandle(); // 0x004A8E34 + public abstract void Flush(); + public abstract int Read(out byte[] buffer, int offset, int count); + public virtual int ReadByte(); // 0x004A8EA4 + public abstract long Seek(long offset, SeekOrigin origin); + public abstract void SetLength(long value); + public abstract void Write(byte[] buffer, int offset, int count); + public virtual void WriteByte(byte value); // 0x004A8F78 + public virtual IAsyncResult BeginRead(byte[] buffer, int offset, int count, AsyncCallback callback, object state); // 0x004993E4 + public virtual IAsyncResult BeginWrite(byte[] buffer, int offset, int count, AsyncCallback callback, object state); // 0x0049A488 + public virtual int EndRead(IAsyncResult asyncResult); // 0x004998B0 + public virtual void EndWrite(IAsyncResult asyncResult); // 0x0049AC90 +} + +// Namespace: System.IO +internal class NullStream : Stream // TypeDefIndex: 465 +{ + // Properties + public override bool CanRead { get; } // 0x004A47D8 + public override bool CanSeek { get; } // 0x004A47E0 + public override bool CanWrite { get; } // 0x004A47E8 + public override long Length { get; } // 0x004A47F0 + public override long Position { get; set; } // 0x004A47FC 0x004A4808 + + // Methods + public void .ctor(); // 0x004A4754 + public override void Flush(); // 0x004A480C + public override int Read(byte[] buffer, int offset, int count); // 0x004A4810 + public override int ReadByte(); // 0x004A4818 + public override long Seek(long offset, SeekOrigin origin); // 0x004A4820 + public override void SetLength(long value); // 0x004A482C + public override void Write(byte[] buffer, int offset, int count); // 0x004A4830 + public override void WriteByte(byte value); // 0x004A4834 +} + +// Namespace: System.IO +internal class StreamAsyncResult : IAsyncResult // TypeDefIndex: 466 +{ + // Fields + private object state; // 0x08 + private bool completed; // 0x0C + private bool done; // 0x0D + private Exception exc; // 0x10 + private int nbytes; // 0x14 + private ManualResetEvent wh; // 0x18 + + // Properties + public object AsyncState { get; } // 0x004A9100 + public WaitHandle AsyncWaitHandle { get; } // 0x004A9108 + public virtual bool CompletedSynchronously { get; } // 0x004A9204 + public bool IsCompleted { get; } // 0x004A920C + public Exception Exception { get; } // 0x004A9214 + public int NBytes { get; } // 0x004A921C + public bool Done { get; set; } // 0x004A9224 0x004A922C + + // Methods + public void .ctor(object state); // 0x004A9040 + public void SetComplete(Exception e); // 0x004A9074 + public void SetComplete(Exception e, int nbytes); // 0x004A906C +} + +// Namespace: System.IO +[Serializable] +public class StreamReader : TextReader // TypeDefIndex: 467 +{ + // Fields + private const int DefaultBufferSize = 1024; // 0x00 + private const int DefaultFileBufferSize = 4096; // 0x00 + private const int MinimumBufferSize = 128; // 0x00 + private byte[] input_buffer; // 0x08 + private char[] decoded_buffer; // 0x0C + private int decoded_count; // 0x10 + private int pos; // 0x14 + private int buffer_size; // 0x18 + private int do_checks; // 0x1C + private Encoding encoding; // 0x20 + private Decoder decoder; // 0x24 + private Stream base_stream; // 0x28 + private bool mayBlock; // 0x2C + private StringBuilder line_builder; // 0x30 + public static readonly StreamReader Null; // 0x00 + private bool foundCR; // 0x34 + + // Properties + public virtual Stream BaseStream { get; } // 0x004A9B50 + public virtual Encoding CurrentEncoding { get; } // 0x004A9B58 + public bool EndOfStream { get; } // 0x004940DC + + // Methods + internal void .ctor(); // 0x004A9234 + public void .ctor(Stream stream); // 0x00495318 + public void .ctor(Stream stream, bool detectEncodingFromByteOrderMarks); // 0x004A936C + public void .ctor(Stream stream, Encoding encoding); // 0x004A9418 + public void .ctor(Stream stream, Encoding encoding, bool detectEncodingFromByteOrderMarks); // 0x004A943C + public void .ctor(Stream stream, Encoding encoding, bool detectEncodingFromByteOrderMarks, int bufferSize); // 0x004A92B8 + public void .ctor(string path); // 0x00492404 + public void .ctor(string path, bool detectEncodingFromByteOrderMarks); // 0x004A9A04 + public void .ctor(string path, Encoding encoding); // 0x0048EC08 + public void .ctor(string path, Encoding encoding, bool detectEncodingFromByteOrderMarks); // 0x004A9AB0 + public void .ctor(string path, Encoding encoding, bool detectEncodingFromByteOrderMarks, int bufferSize); // 0x004A9708 + private static void .cctor(); // 0x004A9AD0 + internal void Initialize(Stream stream, Encoding encoding, bool detectEncodingFromByteOrderMarks, int bufferSize); // 0x004A945C + public override void Close(); // 0x004A9BF0 + protected override void Dispose(bool disposing); // 0x004A9C04 + private int DoChecks(int count); // 0x004A9C64 + public void DiscardBufferedData(); // 0x004AA2A0 + private int ReadBuffer(); // 0x004AA2EC + public override int Peek(); // 0x004AA514 + internal bool DataAvailable(); // 0x004AA638 + public override int Read(); // 0x004AA650 + public override int Read(out char[] buffer, int index, int count); // 0x004AA77C + private int FindNextEOL(); // 0x004AAA40 + public override string ReadLine(); // 0x004AAB2C + public override string ReadToEnd(); // 0x004AAE40 +} + +// Namespace: +private class NullStreamReader : StreamReader // TypeDefIndex: 468 +{ + // Properties + public override Stream BaseStream { get; } // 0x001CDFD8 + public override Encoding CurrentEncoding { get; } // 0x001CE064 + + // Methods + public void .ctor(); // 0x001CDEA8 + public override int Peek(); // 0x001CDF2C + public override int Read(); // 0x001CDF34 + public override int Read(out char[] buffer, int index, int count); // 0x001CDF3C + public override string ReadLine(); // 0x001CDF44 + public override string ReadToEnd(); // 0x001CDF4C +} + +// Namespace: System.IO +[Serializable] +public class StreamWriter : TextWriter // TypeDefIndex: 469 +{ + // Fields + private const int DefaultBufferSize = 1024; // 0x00 + private const int DefaultFileBufferSize = 4096; // 0x00 + private const int MinimumBufferSize = 256; // 0x00 + private Encoding internalEncoding; // 0x10 + private Stream internalStream; // 0x14 + private bool iflush; // 0x18 + private byte[] byte_buf; // 0x1C + private int byte_pos; // 0x20 + private char[] decode_buf; // 0x24 + private int decode_pos; // 0x28 + private bool DisposedAlready; // 0x2C + private bool preamble_done; // 0x2D + public static readonly StreamWriter Null; // 0x00 + + // Properties + public virtual bool AutoFlush { get; set; } // 0x001CE9B4 0x001CE9BC + public virtual Stream BaseStream { get; } // 0x001CE9D8 + public override Encoding Encoding { get; } // 0x001CE9E0 + + // Methods + public void .ctor(Stream stream); // 0x001CE0E0 + public void .ctor(Stream stream, Encoding encoding); // 0x001CE378 + public void .ctor(Stream stream, Encoding encoding, int bufferSize); // 0x001CE180 + public void .ctor(string path); // 0x001CE50C + public void .ctor(string path, bool append); // 0x001CE7DC + public void .ctor(string path, bool append, Encoding encoding); // 0x001CE888 + public void .ctor(string path, bool append, Encoding encoding, int bufferSize); // 0x001CE5B4 + private static void .cctor(); // 0x001CE8A8 + internal void Initialize(Encoding encoding, int bufferSize); // 0x001CE3D8 + protected override void Dispose(bool disposing); // 0x001CE9E8 + public override void Flush(); // 0x001CEBF8 + private void FlushBytes(); // 0x001CED80 + private void Decode(); // 0x001CECEC + public override void Write(char[] buffer, int index, int count); // 0x001CEE80 + private void LowLevelWrite(char[] buffer, int index, int count); // 0x001CF0D8 + private void LowLevelWrite(string s); // 0x001CF190 + public override void Write(char value); // 0x001CF2D8 + public override void Write(char[] buffer); // 0x001CF418 + public override void Write(string value); // 0x001CF514 + public override void Close(); // 0x001CF5F8 + protected override void Finalize(); // 0x001CF60C +} + +// Namespace: System.IO +[Serializable] +public class StringReader : TextReader // TypeDefIndex: 470 +{ + // Fields + private string source; // 0x08 + private int nextChar; // 0x0C + private int sourceLength; // 0x10 + + // Methods + public void .ctor(string s); // 0x001CF684 + public override void Close(); // 0x001CF784 + protected override void Dispose(bool disposing); // 0x001CF798 + public override int Peek(); // 0x001CF7C0 + public override int Read(); // 0x001CF8D8 + public override int Read(out char[] buffer, int index, int count); // 0x001CF92C + public override string ReadLine(); // 0x001CFAC8 + public override string ReadToEnd(); // 0x001CFBF8 + private void CheckObjectDisposedException(); // 0x001CF80C +} + +// Namespace: System.IO +[Serializable] +public class StringWriter : TextWriter // TypeDefIndex: 471 +{ + // Fields + private StringBuilder internalString; // 0x10 + private bool disposed; // 0x14 + + // Properties + public override Encoding Encoding { get; } // 0x001CFE30 + + // Methods + public void .ctor(); // 0x001CFC40 + public void .ctor(IFormatProvider formatProvider); // 0x001CFCC4 + public void .ctor(StringBuilder sb); // 0x001CFCBC + public void .ctor(StringBuilder sb, IFormatProvider formatProvider); // 0x001CFD44 + public override void Close(); // 0x001CFEAC + protected override void Dispose(bool disposing); // 0x001CFEDC + public virtual StringBuilder GetStringBuilder(); // 0x001CFF18 + public override string ToString(); // 0x001CFF20 + public override void Write(char value); // 0x001CFF4C + public override void Write(string value); // 0x001D0044 + public override void Write(char[] buffer, int index, int count); // 0x001D013C +} + +// Namespace: System.IO +[Serializable] +public abstract class TextReader : IDisposable // TypeDefIndex: 472 +{ + // Fields + public static readonly TextReader Null; // 0x00 + + // Methods + protected void .ctor(); // 0x001CF77C + private static void .cctor(); // 0x001D2370 + public virtual void Close(); // 0x001D2470 + public void Dispose(); // 0x001D2484 + protected virtual void Dispose(bool disposing); // 0x001CF7B0 + public virtual int Peek(); // 0x001D2498 + public virtual int Read(); // 0x001D24A0 + public virtual int Read(out char[] buffer, int index, int count); // 0x001D24A8 + public virtual int ReadBlock(out char[] buffer, int index, int count); // 0x001D254C + public virtual string ReadLine(); // 0x001D25B8 + public virtual string ReadToEnd(); // 0x001D2644 + public static TextReader Synchronized(TextReader reader); // 0x001D26D0 +} + +// Namespace: +private class NullTextReader : TextReader // TypeDefIndex: 473 +{ + // Methods + public void .ctor(); // 0x001D23EC + public override string ReadLine(); // 0x001D27D0 +} + +// Namespace: System.IO +[Serializable] +internal class SynchronizedReader : TextReader // TypeDefIndex: 474 +{ + // Fields + private TextReader reader; // 0x08 + + // Methods + public void .ctor(TextReader reader); // 0x001D03B0 + public override void Close(); // 0x001D043C + public override int Peek(); // 0x001D04CC + public override int ReadBlock(char[] buffer, int index, int count); // 0x001D056C + public override string ReadLine(); // 0x001D0630 + public override string ReadToEnd(); // 0x001D06D0 + public override int Read(); // 0x001D0770 + public override int Read(char[] buffer, int index, int count); // 0x001D0810 +} + +// Namespace: System.IO +[Serializable] +public abstract class TextWriter : IDisposable // TypeDefIndex: 475 +{ + // Fields + protected char[] CoreNewLine; // 0x08 + internal IFormatProvider internalFormatProvider; // 0x0C + public static readonly TextWriter Null; // 0x00 + + // Properties + public abstract Encoding Encoding { get; } + public virtual IFormatProvider FormatProvider { get; } // 0x001D2920 + public virtual string NewLine { get; set; } // 0x001D2928 0x001D2938 + + // Methods + protected void .ctor(); // 0x001CE394 + protected void .ctor(IFormatProvider formatProvider); // 0x001D27D8 + private static void .cctor(); // 0x001D2824 + public virtual void Close(); // 0x001D2980 + protected virtual void Dispose(bool disposing); // 0x001CFF08 + public void Dispose(); // 0x001D2994 + public virtual void Flush(); // 0x001D29C8 + public static TextWriter Synchronized(TextWriter writer); // 0x001D29CC + internal static TextWriter Synchronized(TextWriter writer, bool neverClose); // 0x001D2A50 + public virtual void Write(bool value); // 0x001D2B58 + public virtual void Write(char value); // 0x001D2B98 + public virtual void Write(char[] buffer); // 0x001D2B9C + public virtual void Write(Decimal value); // 0x001D2BD4 + public virtual void Write(double value); // 0x001D2C20 + public virtual void Write(int value); // 0x001D2C64 + public virtual void Write(long value); // 0x001D2D30 + public virtual void Write(object value); // 0x001D2E04 + public virtual void Write(float value); // 0x001D2E4C + public virtual void Write(string value); // 0x001D2E90 + public virtual void Write(uint value); // 0x001D2ECC + public virtual void Write(ulong value); // 0x001D2F10 + public virtual void Write(string format, object arg0); // 0x001D2F54 + public virtual void Write(string format, object[] arg); // 0x001D2FFC + public virtual void Write(char[] buffer, int index, int count); // 0x001D30A4 + public virtual void Write(string format, object arg0, object arg1); // 0x001D3260 + public virtual void Write(string format, object arg0, object arg1, object arg2); // 0x001D3310 + public virtual void WriteLine(); // 0x001D33D4 + public virtual void WriteLine(bool value); // 0x001D33E8 + public virtual void WriteLine(char value); // 0x001D3420 + public virtual void WriteLine(char[] buffer); // 0x001D3458 + public virtual void WriteLine(Decimal value); // 0x001D3490 + public virtual void WriteLine(double value); // 0x001D34D8 + public virtual void WriteLine(int value); // 0x001D351C + public virtual void WriteLine(long value); // 0x001D3554 + public virtual void WriteLine(object value); // 0x001D3598 + public virtual void WriteLine(float value); // 0x001D35D0 + public virtual void WriteLine(string value); // 0x001D3608 + public virtual void WriteLine(uint value); // 0x001D3640 + public virtual void WriteLine(ulong value); // 0x001D3678 + public virtual void WriteLine(string format, object arg0); // 0x001D36BC + public virtual void WriteLine(string format, object[] arg); // 0x001D36F4 + public virtual void WriteLine(char[] buffer, int index, int count); // 0x001D372C + public virtual void WriteLine(string format, object arg0, object arg1); // 0x001D3770 + public virtual void WriteLine(string format, object arg0, object arg1, object arg2); // 0x001D37B4 +} + +// Namespace: +private sealed class NullTextWriter : TextWriter // TypeDefIndex: 476 +{ + // Properties + public override Encoding Encoding { get; } // 0x001D37FC + + // Methods + public void .ctor(); // 0x001D28A0 + public override void Write(string s); // 0x001D3878 + public override void Write(char value); // 0x001D387C + public override void Write(char[] value, int index, int count); // 0x001D3880 +} + +// Namespace: System.IO +[Serializable] +internal class SynchronizedWriter : TextWriter // TypeDefIndex: 477 +{ + // Fields + private TextWriter writer; // 0x10 + private bool neverClose; // 0x14 + + // Properties + public override Encoding Encoding { get; } // 0x001D20F8 + public override IFormatProvider FormatProvider { get; } // 0x001D2198 + public override string NewLine { get; set; } // 0x001D2238 0x001D22D8 + + // Methods + public void .ctor(TextWriter writer); // 0x001D08D4 + public void .ctor(TextWriter writer, bool neverClose); // 0x001D08DC + public override void Close(); // 0x001D096C + public override void Flush(); // 0x001D0A10 + public override void Write(bool value); // 0x001D0AA0 + public override void Write(char value); // 0x001D0B38 + public override void Write(char[] value); // 0x001D0BD0 + public override void Write(Decimal value); // 0x001D0C68 + public override void Write(int value); // 0x001D0D30 + public override void Write(long value); // 0x001D0DC8 + public override void Write(object value); // 0x001D0E80 + public override void Write(float value); // 0x001D0F18 + public override void Write(string value); // 0x001D0FB0 + public override void Write(uint value); // 0x001D1048 + public override void Write(ulong value); // 0x001D10E0 + public override void Write(string format, object value); // 0x001D1198 + public override void Write(string format, object[] value); // 0x001D123C + public override void Write(char[] buffer, int index, int count); // 0x001D12E0 + public override void Write(string format, object arg0, object arg1); // 0x001D13A0 + public override void Write(string format, object arg0, object arg1, object arg2); // 0x001D1460 + public override void WriteLine(); // 0x001D1528 + public override void WriteLine(bool value); // 0x001D15B8 + public override void WriteLine(char value); // 0x001D1650 + public override void WriteLine(char[] value); // 0x001D16E8 + public override void WriteLine(Decimal value); // 0x001D1780 + public override void WriteLine(double value); // 0x001D1848 + public override void WriteLine(int value); // 0x001D1900 + public override void WriteLine(long value); // 0x001D1998 + public override void WriteLine(object value); // 0x001D1A50 + public override void WriteLine(float value); // 0x001D1AE8 + public override void WriteLine(string value); // 0x001D1B80 + public override void WriteLine(uint value); // 0x001D1C18 + public override void WriteLine(ulong value); // 0x001D1CB0 + public override void WriteLine(string format, object value); // 0x001D1D68 + public override void WriteLine(string format, object[] value); // 0x001D1E0C + public override void WriteLine(char[] buffer, int index, int count); // 0x001D1EB0 + public override void WriteLine(string format, object arg0, object arg1); // 0x001D1F70 + public override void WriteLine(string format, object arg0, object arg1, object arg2); // 0x001D2030 +} + +// Namespace: System.IO +internal class UnexceptionalStreamReader : StreamReader // TypeDefIndex: 478 +{ + // Fields + private static bool[] newline; // 0x00 + private static char newlineChar; // 0x04 + + // Methods + public void .ctor(Stream stream); // 0x001D3884 + public void .ctor(Stream stream, bool detect_encoding_from_bytemarks); // 0x001D3910 + public void .ctor(Stream stream, Encoding encoding); // 0x001D39A4 + public void .ctor(Stream stream, Encoding encoding, bool detect_encoding_from_bytemarks); // 0x001D3A38 + public void .ctor(Stream stream, Encoding encoding, bool detect_encoding_from_bytemarks, int buffer_size); // 0x001D3AE0 + public void .ctor(string path); // 0x001D3B90 + public void .ctor(string path, bool detect_encoding_from_bytemarks); // 0x001D3C1C + public void .ctor(string path, Encoding encoding); // 0x001D3CB0 + public void .ctor(string path, Encoding encoding, bool detect_encoding_from_bytemarks); // 0x001D3D44 + public void .ctor(string path, Encoding encoding, bool detect_encoding_from_bytemarks, int buffer_size); // 0x001D3DEC + private static void .cctor(); // 0x001D3E9C + public override int Peek(); // 0x001D3F80 + public override int Read(); // 0x001D4064 + public override int Read(out char[] dest_buffer, int index, int count); // 0x001D4148 + private bool CheckEOL(char current); // 0x001D4494 + public override string ReadLine(); // 0x001D47CC + public override string ReadToEnd(); // 0x001D48B0 +} + +// Namespace: System.IO +internal class UnexceptionalStreamWriter : StreamWriter // TypeDefIndex: 479 +{ + // Methods + public void .ctor(Stream stream); // 0x001D4994 + public void .ctor(Stream stream, Encoding encoding); // 0x001D4A1C + public void .ctor(Stream stream, Encoding encoding, int bufferSize); // 0x001D4AB8 + public void .ctor(string path); // 0x001D4B58 + public void .ctor(string path, bool append); // 0x001D4BE0 + public void .ctor(string path, bool append, Encoding encoding); // 0x001D4C70 + public void .ctor(string path, bool append, Encoding encoding, int bufferSize); // 0x001D4D18 + public override void Flush(); // 0x001D4DC0 + public override void Write(char[] buffer, int index, int count); // 0x001D4E9C + public override void Write(char value); // 0x001D4F9C + public override void Write(char[] value); // 0x001D5080 + public override void Write(string value); // 0x001D5164 +} + +// Namespace: System.IO +public class UnmanagedMemoryStream : Stream // TypeDefIndex: 480 +{ + // Fields + private long length; // 0x08 + private bool closed; // 0x10 + private long capacity; // 0x18 + private FileAccess fileaccess; // 0x20 + private IntPtr initial_pointer; // 0x24 + private long initial_position; // 0x28 + private long current_position; // 0x30 + private EventHandler Closed; // 0x38 + + // Properties + public override bool CanRead { get; } // 0x001D57D4 + public override bool CanSeek { get; } // 0x001D57FC + public override bool CanWrite { get; } // 0x001D5810 + public long Capacity { get; } // 0x001D5838 + public override long Length { get; } // 0x001D58E8 + public override long Position { get; set; } // 0x001D5998 0x001D5A48 + public void * PositionPointer { get; set; } // 0x001D5BC0 0x001D5CD8 + + // Events + internal event EventHandler Closed { + add; // 0x001D56B4 + remove; // 0x001D5744 + } + + // Methods + protected void .ctor(); // 0x001D5248 + public void .ctor(void * pointer, long length); // 0x001D52D4 + public void .ctor(void * pointer, long length, long capacity, FileAccess access); // 0x001D55F4 + public override int Read(out byte[] buffer, int offset, int count); // 0x001D5E04 + public override int ReadByte(); // 0x001D6140 + public override long Seek(long offset, SeekOrigin loc); // 0x001D62A8 + public override void SetLength(long value); // 0x001D6480 + public override void Flush(); // 0x001D6654 + protected override void Dispose(bool disposing); // 0x001D6700 + public override void Write(byte[] buffer, int offset, int count); // 0x001D6734 + public override void WriteByte(byte value); // 0x001D6ACC + protected void Initialize(void * pointer, long length, long capacity, FileAccess access); // 0x001D5390 +} + +// Namespace: System.Reflection.Emit +internal enum NativeResourceType // TypeDefIndex: 481 +{ + None = 0, + Unmanaged = 1, + Assembly = 2, + Explicit = 3 +} + +// Namespace: System.Reflection.Emit +internal struct RefEmitPermissionSet // TypeDefIndex: 482 +{ + // Fields + public SecurityAction action; // 0x08 + public string pset; // 0x0C + + // Methods + public void .ctor(SecurityAction action, string pset); // 0x0008C874 +} + +// Namespace: System.Reflection.Emit +internal struct MonoResource // TypeDefIndex: 483 +{ + // Fields + public byte[] data; // 0x08 + public string name; // 0x0C + public string filename; // 0x10 + public ResourceAttributes attrs; // 0x14 + public int offset; // 0x18 + public Stream stream; // 0x1C + +} + +// Namespace: System.Reflection.Emit +internal struct MonoWin32Resource // TypeDefIndex: 484 +{ + // Fields + public int res_type; // 0x08 + public int res_id; // 0x0C + public int lang_id; // 0x10 + public byte[] data; // 0x14 + + // Methods + public void .ctor(int res_type, int res_id, int lang_id, byte[] data); // 0x0008C2EC +} + +// Namespace: System.Reflection.Emit +public sealed class AssemblyBuilder : Assembly, _AssemblyBuilder // TypeDefIndex: 485 +{ + // Fields + private const AssemblyBuilderAccess COMPILER_ACCESS = 2048; // 0x00 + private UIntPtr dynamic_assembly; // 0x30 + private MethodInfo entry_point; // 0x34 + private ModuleBuilder[] modules; // 0x38 + private string name; // 0x3C + private string dir; // 0x40 + private CustomAttributeBuilder[] cattrs; // 0x44 + private MonoResource[] resources; // 0x48 + private byte[] public_key; // 0x4C + private string version; // 0x50 + private string culture; // 0x54 + private uint algid; // 0x58 + private uint flags; // 0x5C + private PEFileKinds pekind; // 0x60 + private bool delay_sign; // 0x64 + private uint access; // 0x68 + private Module[] loaded_modules; // 0x6C + private MonoWin32Resource[] win32_resources; // 0x70 + private RefEmitPermissionSet[] permissions_minimum; // 0x74 + private RefEmitPermissionSet[] permissions_optional; // 0x78 + private RefEmitPermissionSet[] permissions_refused; // 0x7C + private PortableExecutableKinds peKind; // 0x80 + private ImageFileMachine machine; // 0x84 + private bool corlib_internal; // 0x88 + private Type[] type_forwarders; // 0x8C + private byte[] pktoken; // 0x90 + internal Type corlib_object_type; // 0x94 + internal Type corlib_value_type; // 0x98 + internal Type corlib_enum_type; // 0x9C + internal Type corlib_void_type; // 0xA0 + private ArrayList resource_writers; // 0xA4 + private Win32VersionResource version_res; // 0xA8 + private bool created; // 0xAC + private bool is_module_only; // 0xAD + private StrongName sn; // 0xB0 + private NativeResourceType native_resource; // 0xB4 + private readonly bool is_compiler_context; // 0xB8 + private string versioninfo_culture; // 0xBC + private ModuleBuilder manifest_module; // 0xC0 + + // Properties + public override string CodeBase { get; } // 0x001BDAC4 + public override MethodInfo EntryPoint { get; } // 0x001BDBAC + public override string Location { get; } // 0x001BDBB4 + public override string ImageRuntimeVersion { get; } // 0x001BDC1C + public override bool ReflectionOnly { get; } // 0x001BDC20 + internal bool IsCompilerContext { get; } // 0x001C1CC4 + internal bool IsSave { get; } // 0x001BD88C + internal bool IsRun { get; } // 0x001C1CCC + internal string AssemblyDir { get; } // 0x001C1CE4 + internal bool IsModuleOnly { get; set; } // 0x001C1CEC 0x001C1CF4 + + // Methods + internal void .ctor(AssemblyName n, string directory, AssemblyBuilderAccess access, bool corlib_internal); // 0x001BD240 + private void System.Runtime.InteropServices._AssemblyBuilder.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x001BD8A4 + private void System.Runtime.InteropServices._AssemblyBuilder.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x001BD92C + private void System.Runtime.InteropServices._AssemblyBuilder.GetTypeInfoCount(out uint pcTInfo); // 0x001BD9B4 + private void System.Runtime.InteropServices._AssemblyBuilder.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x001BDA3C + private static void basic_init(AssemblyBuilder ab); // 0x001BD8A0 + public void AddResourceFile(string name, string fileName); // 0x001BDC24 + public void AddResourceFile(string name, string fileName, ResourceAttributes attribute); // 0x001BDC48 + private void AddResourceFile(string name, string fileName, ResourceAttributes attribute, bool fileNeedsToExists); // 0x001BDC68 + internal void AddPermissionRequests(PermissionSet required, PermissionSet optional, PermissionSet refused); // 0x001BE778 + internal void EmbedResourceFile(string name, string fileName); // 0x001BE77C + internal void EmbedResourceFile(string name, string fileName, ResourceAttributes attribute); // 0x001BE798 + internal void EmbedResource(string name, byte[] blob, ResourceAttributes attribute); // 0x001BEAEC + internal void AddTypeForwarder(Type t); // 0x001BEC7C + public ModuleBuilder DefineDynamicModule(string name); // 0x001BEE64 + public ModuleBuilder DefineDynamicModule(string name, bool emitSymbolInfo); // 0x001BF258 + public ModuleBuilder DefineDynamicModule(string name, string fileName); // 0x001BF280 + public ModuleBuilder DefineDynamicModule(string name, string fileName, bool emitSymbolInfo); // 0x001BF2A4 + private ModuleBuilder DefineDynamicModule(string name, string fileName, bool emitSymbolInfo, bool transient); // 0x001BEE8C + private Module InternalAddModule(string fileName); // 0x001BF2C4 + internal Module AddModule(string fileName); // 0x001BF2C8 + public IResourceWriter DefineResource(string name, string description, string fileName); // 0x001BF454 + public IResourceWriter DefineResource(string name, string description, string fileName, ResourceAttributes attribute); // 0x001BF474 + private void AddUnmanagedResource(Win32Resource res); // 0x001BF574 + public void DefineUnmanagedResource(byte[] resource); // 0x001BF760 + public void DefineUnmanagedResource(string resourceFileName); // 0x001BF894 + public void DefineVersionInfoResource(); // 0x001C0060 + public void DefineVersionInfoResource(string product, string productVersion, string company, string copyright, string trademark); // 0x001C015C + internal void DefineIconResource(string iconFileName); // 0x001C03C0 + private void DefineVersionInfoResourceImpl(string fileName); // 0x001C0888 + public ModuleBuilder GetDynamicModule(string name); // 0x001C142C + public override Type[] GetExportedTypes(); // 0x001C1640 + public override FileStream GetFile(string name); // 0x001C16A8 + public override FileStream[] GetFiles(bool getResourceModules); // 0x001C1710 + internal override Module[] GetModulesInternal(); // 0x001C1778 + internal override Type[] GetTypes(bool exportedOnly); // 0x001C1844 + public override ManifestResourceInfo GetManifestResourceInfo(string resourceName); // 0x001C1B24 + public override string[] GetManifestResourceNames(); // 0x001C1B8C + public override Stream GetManifestResourceStream(string name); // 0x001C1BF4 + public override Stream GetManifestResourceStream(Type type, string name); // 0x001C1C5C + internal override Module GetManifestModule(); // 0x001C1CFC + public void Save(string assemblyFileName, PortableExecutableKinds portableExecutableKind, ImageFileMachine imageFileMachine); // 0x001C1D88 + public void Save(string assemblyFileName); // 0x001C28F0 + public void SetEntryPoint(MethodInfo entryMethod); // 0x001C2910 + public void SetEntryPoint(MethodInfo entryMethod, PEFileKinds fileKind); // 0x001C2918 + public void SetCustomAttribute(CustomAttributeBuilder customBuilder); // 0x001C2A58 + public void SetCustomAttribute(ConstructorInfo con, byte[] binaryAttribute); // 0x001C3B78 + internal void SetCorlibTypeBuilders(Type corlib_object_type, Type corlib_value_type, Type corlib_enum_type); // 0x001C3D68 + internal void SetCorlibTypeBuilders(Type corlib_object_type, Type corlib_value_type, Type corlib_enum_type, Type corlib_void_type); // 0x001C3D74 + private Exception not_supported(); // 0x001BDB2C + private void check_name_and_filename(string name, string fileName, bool fileNeedsToExists); // 0x001BDE5C + private string create_assembly_version(string version); // 0x001C2F8C + private string GetCultureString(string str); // 0x001C3A94 + internal override AssemblyName UnprotectedGetName(); // 0x001C3D84 +} + +// Namespace: System.Reflection.Emit +[Serializable] +public enum AssemblyBuilderAccess // TypeDefIndex: 486 +{ + Run = 1, + Save = 2, + RunAndSave = 3, + ReflectionOnly = 6 +} + +// Namespace: System.Reflection.Emit +public sealed class ConstructorBuilder : ConstructorInfo, _ConstructorBuilder // TypeDefIndex: 487 +{ + // Fields + private RuntimeMethodHandle mhandle; // 0x08 + private ILGenerator ilgen; // 0x0C + internal Type[] parameters; // 0x10 + private MethodAttributes attrs; // 0x14 + private MethodImplAttributes iattrs; // 0x18 + private int table_idx; // 0x1C + private CallingConventions call_conv; // 0x20 + private TypeBuilder type; // 0x24 + internal ParameterBuilder[] pinfo; // 0x28 + private CustomAttributeBuilder[] cattrs; // 0x2C + private bool init_locals; // 0x30 + private Type[][] paramModReq; // 0x34 + private Type[][] paramModOpt; // 0x38 + private RefEmitPermissionSet[] permissions; // 0x3C + + // Properties + public override CallingConventions CallingConvention { get; } // 0x001C46C4 + public bool InitLocals { get; set; } // 0x001C46CC 0x001C46D4 + internal TypeBuilder TypeBuilder { get; } // 0x001C46DC + public override RuntimeMethodHandle MethodHandle { get; } // 0x001C4C40 + public override MethodAttributes Attributes { get; } // 0x001C4CA8 + public override Type ReflectedType { get; } // 0x001C4CB0 + public override Type DeclaringType { get; } // 0x001C4CB8 + public Type ReturnType { get; } // 0x001C4CC0 + public override string Name { get; } // 0x001C4CC8 + public string Signature { get; } // 0x001C4D9C + public override Module Module { get; } // 0x001C59BC + private bool IsCompilerContext { get; } // 0x001C479C + + // Methods + internal void .ctor(TypeBuilder tb, MethodAttributes attributes, CallingConventions callingConvention, Type[] parameterTypes, Type[][] paramModReq, Type[][] paramModOpt); // 0x001C41B4 + private void System.Runtime.InteropServices._ConstructorBuilder.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x001C44A4 + private void System.Runtime.InteropServices._ConstructorBuilder.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x001C452C + private void System.Runtime.InteropServices._ConstructorBuilder.GetTypeInfoCount(out uint pcTInfo); // 0x001C45B4 + private void System.Runtime.InteropServices._ConstructorBuilder.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x001C463C + public override MethodImplAttributes GetMethodImplementationFlags(); // 0x001C46E4 + public override ParameterInfo[] GetParameters(); // 0x001C46EC + internal ParameterInfo[] GetParametersInternal(); // 0x001C48F8 + internal override int GetParameterCount(); // 0x001C4ADC + public override object Invoke(object obj, BindingFlags invokeAttr, Binder binder, object[] parameters, CultureInfo culture); // 0x001C4AF0 + public override object Invoke(BindingFlags invokeAttr, Binder binder, object[] parameters, CultureInfo culture); // 0x001C4BD8 + public void AddDeclarativeSecurity(SecurityAction action, PermissionSet pset); // 0x001C4DF8 + public ParameterBuilder DefineParameter(int iSequence, ParameterAttributes attributes, string strParamName); // 0x001C4DFC + public override bool IsDefined(Type attributeType, bool inherit); // 0x001C5078 + public override object[] GetCustomAttributes(bool inherit); // 0x001C50E0 + public override object[] GetCustomAttributes(Type attributeType, bool inherit); // 0x001C51C8 + public ILGenerator GetILGenerator(); // 0x001C52B8 + public ILGenerator GetILGenerator(int streamSize); // 0x001C52C0 + public void SetCustomAttribute(CustomAttributeBuilder customBuilder); // 0x001C5448 + public void SetCustomAttribute(ConstructorInfo con, byte[] binaryAttribute); // 0x001C57D4 + public void SetImplementationFlags(MethodImplAttributes attributes); // 0x001C5738 + public Module GetModule(); // 0x001C5904 + public MethodToken GetToken(); // 0x001C4498 + public void SetSymCustomAttribute(string name, byte[] data); // 0x001C5928 + public override string ToString(); // 0x001C59C4 + internal void fixup(); // 0x001C5A80 + internal void GenerateDebugInfo(ISymbolWriter symbolWriter); // 0x001C5BF0 + internal override int get_next_table_index(object obj, int table, bool inc); // 0x001C4448 + private void RejectIfCreated(); // 0x001C5EC8 + private Exception not_supported(); // 0x001C4B58 + private Exception not_after_created(); // 0x001C4FF8 + private Exception not_created(); // 0x001C4878 +} + +// Namespace: System.Reflection.Emit +internal class ConstructorOnTypeBuilderInst : ConstructorInfo // TypeDefIndex: 488 +{ + // Fields + private MonoGenericClass instantiation; // 0x08 + private ConstructorBuilder cb; // 0x0C + + // Properties + public override Type DeclaringType { get; } // 0x001C6024 + public override string Name { get; } // 0x001C602C + public override Type ReflectedType { get; } // 0x001C6054 + public override int MetadataToken { get; } // 0x001C64C4 + public override RuntimeMethodHandle MethodHandle { get; } // 0x001C6678 + public override MethodAttributes Attributes { get; } // 0x001C6694 + public override CallingConventions CallingConvention { get; } // 0x001C66B8 + public override bool ContainsGenericParameters { get; } // 0x001C6710 + public override bool IsGenericMethodDefinition { get; } // 0x001C6718 + public override bool IsGenericMethod { get; } // 0x001C6720 + + // Methods + public void .ctor(MonoGenericClass instantiation, ConstructorBuilder cb); // 0x001C5F90 + public override bool IsDefined(Type attributeType, bool inherit); // 0x001C605C + public override object[] GetCustomAttributes(bool inherit); // 0x001C607C + public override object[] GetCustomAttributes(Type attributeType, bool inherit); // 0x001C60AC + public override MethodImplAttributes GetMethodImplementationFlags(); // 0x001C60E4 + public override ParameterInfo[] GetParameters(); // 0x001C6108 + internal override int GetParameterCount(); // 0x001C6620 + public override object Invoke(object obj, BindingFlags invokeAttr, Binder binder, object[] parameters, CultureInfo culture); // 0x001C6650 + public override Type[] GetGenericArguments(); // 0x001C66DC + public override object Invoke(BindingFlags invokeAttr, Binder binder, object[] parameters, CultureInfo culture); // 0x001C6728 +} + +// Namespace: System.Reflection.Emit +public class CustomAttributeBuilder : _CustomAttributeBuilder // TypeDefIndex: 489 +{ + // Fields + private ConstructorInfo ctor; // 0x08 + private byte[] data; // 0x0C + private static Dictionary`2 <>f__switch$map1C; // 0x00 + + // Properties + internal ConstructorInfo Ctor { get; } // 0x001C836C + internal byte[] Data { get; } // 0x001C8374 + + // Methods + internal void .ctor(ConstructorInfo con, byte[] cdata); // 0x001C3CA8 + public void .ctor(ConstructorInfo con, object[] constructorArgs); // 0x001C67B0 + public void .ctor(ConstructorInfo con, object[] constructorArgs, FieldInfo[] namedFields, object[] fieldValues); // 0x001C7FB8 + public void .ctor(ConstructorInfo con, object[] constructorArgs, PropertyInfo[] namedProperties, object[] propertyValues); // 0x001C8068 + public void .ctor(ConstructorInfo con, object[] constructorArgs, PropertyInfo[] namedProperties, object[] propertyValues, FieldInfo[] namedFields, object[] fieldValues); // 0x001C8120 + private void System.Runtime.InteropServices._CustomAttributeBuilder.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x001C814C + private void System.Runtime.InteropServices._CustomAttributeBuilder.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x001C81D4 + private void System.Runtime.InteropServices._CustomAttributeBuilder.GetTypeInfoCount(out uint pcTInfo); // 0x001C825C + private void System.Runtime.InteropServices._CustomAttributeBuilder.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x001C82E4 + private static byte[] GetBlob(Assembly asmb, ConstructorInfo con, object[] constructorArgs, PropertyInfo[] namedProperties, object[] propertyValues, FieldInfo[] namedFields, object[] fieldValues); // 0x001C837C + private bool IsValidType(Type t); // 0x001C8380 + private void Initialize(ConstructorInfo con, object[] constructorArgs, PropertyInfo[] namedProperties, object[] propertyValues, FieldInfo[] namedFields, object[] fieldValues); // 0x001C6888 + internal static int decode_len(byte[] data, int pos, out int rpos); // 0x001C854C + internal static string string_from_bytes(byte[] data, int pos, int len); // 0x001C86C8 + internal string string_arg(); // 0x001C13EC + internal static UnmanagedMarshal get_umarshal(CustomAttributeBuilder customBuilder, bool is_field); // 0x001C8790 + private static Type elementTypeToType(int elementType); // 0x001C95B4 + private static object decode_cattr_value(Type t, byte[] data, int pos, out int rpos); // 0x001C98B4 + internal static CustomAttributeInfo decode_cattr(CustomAttributeBuilder customBuilder); // 0x001C9CEC + private static ParameterInfo[] GetParameters(ConstructorInfo ctor); // 0x001C84B4 +} + +// Namespace: +internal struct CustomAttributeInfo // TypeDefIndex: 490 +{ + // Fields + public ConstructorInfo ctor; // 0x08 + public object[] ctorArgs; // 0x0C + public string[] namedParamNames; // 0x10 + public object[] namedParamValues; // 0x14 + +} + +// Namespace: System.Reflection.Emit +internal enum TypeKind // TypeDefIndex: 491 +{ + ARRAY = 20, + SZARRAY = 29 +} + +// Namespace: System.Reflection.Emit +internal abstract class DerivedType : Type // TypeDefIndex: 492 +{ + // Fields + internal Type elementType; // 0x0C + + // Properties + public override bool ContainsGenericParameters { get; } // 0x001CB12C + public override GenericParameterAttributes GenericParameterAttributes { get; } // 0x001CB458 + public override StructLayoutAttribute StructLayoutAttribute { get; } // 0x001CB4E0 + public override Assembly Assembly { get; } // 0x001CB568 + public override string AssemblyQualifiedName { get; } // 0x001CB59C + public override string FullName { get; } // 0x001CB6DC + public override string Name { get; } // 0x001CB72C + public override Guid GUID { get; } // 0x001CB77C + public override Module Module { get; } // 0x001CB804 + public override string Namespace { get; } // 0x001CB838 + public override RuntimeTypeHandle TypeHandle { get; } // 0x001CB86C + public override Type UnderlyingSystemType { get; } // 0x001CB8F4 + + // Methods + internal void .ctor(Type elementType); // 0x001BCE20 + internal static void create_unmanaged_type(Type type); // 0x001CA7AC + internal abstract string FormatName(string elementName); + public override Type GetInterface(string name, bool ignoreCase); // 0x001CA7B0 + public override Type[] GetInterfaces(); // 0x001CA838 + public override Type GetElementType(); // 0x001CA8C0 + public override EventInfo GetEvent(string name, BindingFlags bindingAttr); // 0x001CA8C8 + public override EventInfo[] GetEvents(BindingFlags bindingAttr); // 0x001CA950 + public override FieldInfo GetField(string name, BindingFlags bindingAttr); // 0x001CA9D8 + public override FieldInfo[] GetFields(BindingFlags bindingAttr); // 0x001CAA60 + public override MemberInfo[] GetMembers(BindingFlags bindingAttr); // 0x001CAAE8 + protected override MethodInfo GetMethodImpl(string name, BindingFlags bindingAttr, Binder binder, CallingConventions callConvention, Type[] types, ParameterModifier[] modifiers); // 0x001CAB70 + public override MethodInfo[] GetMethods(BindingFlags bindingAttr); // 0x001CABF8 + public override Type GetNestedType(string name, BindingFlags bindingAttr); // 0x001CAC80 + public override Type[] GetNestedTypes(BindingFlags bindingAttr); // 0x001CAD08 + public override PropertyInfo[] GetProperties(BindingFlags bindingAttr); // 0x001CAD90 + protected override PropertyInfo GetPropertyImpl(string name, BindingFlags bindingAttr, Binder binder, Type returnType, Type[] types, ParameterModifier[] modifiers); // 0x001CAE18 + protected override ConstructorInfo GetConstructorImpl(BindingFlags bindingAttr, Binder binder, CallingConventions callConvention, Type[] types, ParameterModifier[] modifiers); // 0x001CAEA0 + protected override TypeAttributes GetAttributeFlagsImpl(); // 0x001CAF28 + protected override bool HasElementTypeImpl(); // 0x001CAF54 + protected override bool IsArrayImpl(); // 0x001CAF5C + protected override bool IsByRefImpl(); // 0x001CAF64 + protected override bool IsCOMObjectImpl(); // 0x001CAF6C + protected override bool IsPointerImpl(); // 0x001CAF74 + protected override bool IsPrimitiveImpl(); // 0x001CAF7C + public override ConstructorInfo[] GetConstructors(BindingFlags bindingAttr); // 0x001CAF84 + public override object InvokeMember(string name, BindingFlags invokeAttr, Binder binder, object target, object[] args, ParameterModifier[] modifiers, CultureInfo culture, string[] namedParameters); // 0x001CB00C + public override InterfaceMapping GetInterfaceMap(Type interfaceType); // 0x001CB094 + public override bool IsInstanceOfType(object o); // 0x001CB11C + public override bool IsAssignableFrom(Type c); // 0x001CB124 + public override Type MakeGenericType(Type[] typeArguments); // 0x001CB160 + public override Type MakeArrayType(); // 0x001CB1E8 + public override Type MakeArrayType(int rank); // 0x001CB260 + public override Type MakeByRefType(); // 0x001CB324 + public override Type MakePointerType(); // 0x001CB394 + public override string ToString(); // 0x001CB408 + public override bool IsDefined(Type attributeType, bool inherit); // 0x001CB90C + public override object[] GetCustomAttributes(bool inherit); // 0x001CB994 + public override object[] GetCustomAttributes(Type attributeType, bool inherit); // 0x001CBA1C +} + +// Namespace: System.Reflection.Emit +internal class ArrayType : DerivedType // TypeDefIndex: 493 +{ + // Fields + private int rank; // 0x10 + + // Properties + public override Type BaseType { get; } // 0x001BCEC4 + + // Methods + internal void .ctor(Type elementType, int rank); // 0x001BCE04 + protected override bool IsArrayImpl(); // 0x001BCEAC + public override int GetArrayRank(); // 0x001BCEB4 + protected override TypeAttributes GetAttributeFlagsImpl(); // 0x001BCF54 + internal override string FormatName(string elementName); // 0x001BD0B0 +} + +// Namespace: System.Reflection.Emit +internal class ByRefType : DerivedType // TypeDefIndex: 494 +{ + // Properties + public override Type BaseType { get; } // 0x001C3E10 + + // Methods + internal void .ctor(Type elementType); // 0x001C3E04 + protected override bool IsByRefImpl(); // 0x001C3E08 + internal override string FormatName(string elementName); // 0x001C3EA0 + public override Type MakeArrayType(); // 0x001C3F44 + public override Type MakeArrayType(int rank); // 0x001C3FE0 + public override Type MakeByRefType(); // 0x001C407C + public override Type MakePointerType(); // 0x001C4118 +} + +// Namespace: System.Reflection.Emit +internal class PointerType : DerivedType // TypeDefIndex: 495 +{ + // Properties + public override Type BaseType { get; } // 0x0022FFE8 + + // Methods + internal void .ctor(Type elementType); // 0x00213278 + protected override bool IsPointerImpl(); // 0x0022FFE0 + internal override string FormatName(string elementName); // 0x00230078 +} + +// Namespace: System.Reflection.Emit +public class DynamicILInfo // TypeDefIndex: 496 +{ + // Properties + public DynamicMethod DynamicMethod { get; } // 0x001CBAA8 + + // Methods + internal void .ctor(); // 0x001CBAA4 + public int GetTokenFor(byte[] signature); // 0x001CBB30 + public int GetTokenFor(DynamicMethod method); // 0x001CBBB8 + public int GetTokenFor(RuntimeFieldHandle field); // 0x001CBC40 + public int GetTokenFor(RuntimeMethodHandle method); // 0x001CBCC8 + public int GetTokenFor(RuntimeTypeHandle type); // 0x001CBD50 + public int GetTokenFor(string literal); // 0x001CBDD8 + public int GetTokenFor(RuntimeMethodHandle method, RuntimeTypeHandle contextType); // 0x001CBE60 + public void SetCode(byte[] code, int maxStackSize); // 0x001CBEE8 + public void SetCode(void * code, int codeSize, int maxStackSize); // 0x001CBF70 + public void SetExceptions(byte[] exceptions); // 0x001CBFF8 + public void SetExceptions(void * exceptions, int exceptionsSize); // 0x001CC080 + public void SetLocalSignature(byte[] localSignature); // 0x001CC108 + public void SetLocalSignature(void * localSignature, int signatureSize); // 0x001CC190 +} + +// Namespace: System.Reflection.Emit +public sealed class DynamicMethod : MethodInfo // TypeDefIndex: 497 +{ + // Fields + private RuntimeMethodHandle mhandle; // 0x08 + private string name; // 0x0C + private Type returnType; // 0x10 + private Type[] parameters; // 0x14 + private MethodAttributes attributes; // 0x18 + private CallingConventions callingConvention; // 0x1C + private Module module; // 0x20 + private bool skipVisibility; // 0x24 + private bool init_locals; // 0x25 + private ILGenerator ilgen; // 0x28 + private int nrefs; // 0x2C + private object[] refs; // 0x30 + private IntPtr referenced_by; // 0x34 + private Type owner; // 0x38 + private Delegate deleg; // 0x3C + private MonoMethod method; // 0x40 + private ParameterBuilder[] pinfo; // 0x44 + internal bool creating; // 0x48 + + // Properties + public override MethodAttributes Attributes { get; } // 0x001CDB8C + public override CallingConventions CallingConvention { get; } // 0x001CDB94 + public override Type DeclaringType { get; } // 0x001CDB9C + public bool InitLocals { get; set; } // 0x001CDBA4 0x001CDBAC + public override RuntimeMethodHandle MethodHandle { get; } // 0x001CDBB4 + public override Module Module { get; } // 0x001CDBBC + public override string Name { get; } // 0x001CDBC4 + public override Type ReflectedType { get; } // 0x001CDBCC + public override ParameterInfo ReturnParameter { get; } // 0x001CDBD4 + public override Type ReturnType { get; } // 0x001CDC5C + public override ICustomAttributeProvider ReturnTypeCustomAttributes { get; } // 0x001CDC64 + + // Methods + public void .ctor(string name, Type returnType, Type[] parameterTypes, Module m); // 0x001CC218 + public void .ctor(string name, Type returnType, Type[] parameterTypes, Type owner); // 0x001CC284 + public void .ctor(string name, Type returnType, Type[] parameterTypes, Module m, bool skipVisibility); // 0x001CC250 + public void .ctor(string name, Type returnType, Type[] parameterTypes, Type owner, bool skipVisibility); // 0x001CC2B0 + public void .ctor(string name, MethodAttributes attributes, CallingConventions callingConvention, Type returnType, Type[] parameterTypes, Type owner, bool skipVisibility); // 0x001CC31C + public void .ctor(string name, MethodAttributes attributes, CallingConventions callingConvention, Type returnType, Type[] parameterTypes, Module m, bool skipVisibility); // 0x001CC2DC + public void .ctor(string name, Type returnType, Type[] parameterTypes); // 0x001CC74C + public void .ctor(string name, Type returnType, Type[] parameterTypes, bool restrictedSkipVisibility); // 0x001CC784 + private void .ctor(string name, MethodAttributes attributes, CallingConventions callingConvention, Type returnType, Type[] parameterTypes, Type owner, Module m, bool skipVisibility, bool anonHosted); // 0x001CC3A0 + private void create_dynamic_method(DynamicMethod m); // 0x001CC7BC + private void destroy_dynamic_method(DynamicMethod m); // 0x001CC810 + private void CreateDynMethod(); // 0x001CC864 + protected override void Finalize(); // 0x001CCBA4 + public Delegate CreateDelegate(Type delegateType); // 0x001CCC2C + public Delegate CreateDelegate(Type delegateType, object target); // 0x001CCD04 + public ParameterBuilder DefineParameter(int position, ParameterAttributes attributes, string parameterName); // 0x001CCDD4 + public override MethodInfo GetBaseDefinition(); // 0x001CD05C + public override object[] GetCustomAttributes(bool inherit); // 0x001CD060 + public override object[] GetCustomAttributes(Type attributeType, bool inherit); // 0x001CD0E8 + public DynamicILInfo GetDynamicILInfo(); // 0x001CD170 + public ILGenerator GetILGenerator(); // 0x001CD1F8 + public ILGenerator GetILGenerator(int streamSize); // 0x001CD200 + public override MethodImplAttributes GetMethodImplementationFlags(); // 0x001CD2C4 + public override ParameterInfo[] GetParameters(); // 0x001CD2CC + public override object Invoke(object obj, BindingFlags invokeAttr, Binder binder, object[] parameters, CultureInfo culture); // 0x001CD4B0 + public override bool IsDefined(Type attributeType, bool inherit); // 0x001CD658 + public override string ToString(); // 0x001CD6E0 + private void RejectIfCreated(); // 0x001CCFA4 + internal int AddRef(object reference); // 0x001CDCEC +} + +// Namespace: +private class AnonHostModuleHolder // TypeDefIndex: 498 +{ + // Fields + public static Module anon_host_module; // 0x00 + + // Methods + public void .ctor(); // 0x00212118 + private static void .cctor(); // 0x00212120 +} + +// Namespace: System.Reflection.Emit +internal class DynamicMethodTokenGenerator : TokenGenerator // TypeDefIndex: 499 +{ + // Fields + private DynamicMethod m; // 0x08 + + // Methods + public void .ctor(DynamicMethod m); // 0x00212214 + public int GetToken(string str); // 0x00212234 + public int GetToken(MethodInfo method, Type[] opt_param_types); // 0x00212268 + public int GetToken(MemberInfo member); // 0x002122F0 + public int GetToken(SignatureHelper helper); // 0x00212324 +} + +// Namespace: System.Reflection.Emit +public sealed class EnumBuilder : Type, _EnumBuilder // TypeDefIndex: 500 +{ + // Fields + private TypeBuilder _tb; // 0x0C + private FieldBuilder _underlyingField; // 0x10 + private Type _underlyingType; // 0x14 + + // Properties + public override Assembly Assembly { get; } // 0x002126C8 + public override string AssemblyQualifiedName { get; } // 0x002126F4 + public override Type BaseType { get; } // 0x00212720 + public override Type DeclaringType { get; } // 0x00212744 + public override string FullName { get; } // 0x00212768 + public override Guid GUID { get; } // 0x0021278C + public override Module Module { get; } // 0x002127C0 + public override string Name { get; } // 0x002127E4 + public override string Namespace { get; } // 0x00212808 + public override Type ReflectedType { get; } // 0x0021282C + public override RuntimeTypeHandle TypeHandle { get; } // 0x00212850 + public TypeToken TypeToken { get; } // 0x0021287C + public FieldBuilder UnderlyingField { get; } // 0x002128A8 + public override Type UnderlyingSystemType { get; } // 0x002128B0 + + // Methods + internal void .ctor(ModuleBuilder mb, string name, TypeAttributes visibility, Type underlyingType); // 0x00212358 + private void System.Runtime.InteropServices._EnumBuilder.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x002124A0 + private void System.Runtime.InteropServices._EnumBuilder.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x00212528 + private void System.Runtime.InteropServices._EnumBuilder.GetTypeInfoCount(out uint pcTInfo); // 0x002125B0 + private void System.Runtime.InteropServices._EnumBuilder.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x00212638 + internal TypeBuilder GetTypeBuilder(); // 0x002126C0 + public Type CreateType(); // 0x002128B8 + private void setup_enum_type(Type t); // 0x0021249C + public FieldBuilder DefineLiteral(string literalName, object literalValue); // 0x002128E4 + protected override TypeAttributes GetAttributeFlagsImpl(); // 0x00212974 + protected override ConstructorInfo GetConstructorImpl(BindingFlags bindingAttr, Binder binder, CallingConventions callConvention, Type[] types, ParameterModifier[] modifiers); // 0x00212998 + public override ConstructorInfo[] GetConstructors(BindingFlags bindingAttr); // 0x002129F8 + public override object[] GetCustomAttributes(bool inherit); // 0x00212A2C + public override object[] GetCustomAttributes(Type attributeType, bool inherit); // 0x00212A60 + public override Type GetElementType(); // 0x00212A9C + public override EventInfo GetEvent(string name, BindingFlags bindingAttr); // 0x00212AC8 + public override EventInfo[] GetEvents(); // 0x00212B04 + public override EventInfo[] GetEvents(BindingFlags bindingAttr); // 0x00212B30 + public override FieldInfo GetField(string name, BindingFlags bindingAttr); // 0x00212B64 + public override FieldInfo[] GetFields(BindingFlags bindingAttr); // 0x00212BA0 + public override Type GetInterface(string name, bool ignoreCase); // 0x00212BD4 + public override InterfaceMapping GetInterfaceMap(Type interfaceType); // 0x00212C10 + public override Type[] GetInterfaces(); // 0x00212C4C + public override MemberInfo[] GetMember(string name, MemberTypes type, BindingFlags bindingAttr); // 0x00212C78 + public override MemberInfo[] GetMembers(BindingFlags bindingAttr); // 0x00212CC8 + protected override MethodInfo GetMethodImpl(string name, BindingFlags bindingAttr, Binder binder, CallingConventions callConvention, Type[] types, ParameterModifier[] modifiers); // 0x00212CFC + public override MethodInfo[] GetMethods(BindingFlags bindingAttr); // 0x00212D7C + public override Type GetNestedType(string name, BindingFlags bindingAttr); // 0x00212DB0 + public override Type[] GetNestedTypes(BindingFlags bindingAttr); // 0x00212DEC + public override PropertyInfo[] GetProperties(BindingFlags bindingAttr); // 0x00212E20 + protected override PropertyInfo GetPropertyImpl(string name, BindingFlags bindingAttr, Binder binder, Type returnType, Type[] types, ParameterModifier[] modifiers); // 0x00212E54 + protected override bool HasElementTypeImpl(); // 0x00212F3C + public override object InvokeMember(string name, BindingFlags invokeAttr, Binder binder, object target, object[] args, ParameterModifier[] modifiers, CultureInfo culture, string[] namedParameters); // 0x00212F68 + protected override bool IsArrayImpl(); // 0x00212FE4 + protected override bool IsByRefImpl(); // 0x00212FEC + protected override bool IsCOMObjectImpl(); // 0x00212FF4 + protected override bool IsPointerImpl(); // 0x00212FFC + protected override bool IsPrimitiveImpl(); // 0x00213004 + protected override bool IsValueTypeImpl(); // 0x0021300C + public override bool IsDefined(Type attributeType, bool inherit); // 0x00213014 + public override Type MakeArrayType(); // 0x00213050 + public override Type MakeArrayType(int rank); // 0x002130C8 + public override Type MakeByRefType(); // 0x00213190 + public override Type MakePointerType(); // 0x00213204 + public void SetCustomAttribute(CustomAttributeBuilder customBuilder); // 0x00213280 + public void SetCustomAttribute(ConstructorInfo con, byte[] binaryAttribute); // 0x002132B4 + private Exception CreateNotSupportedException(); // 0x00212EBC +} + +// Namespace: System.Reflection.Emit +public sealed class EventBuilder : _EventBuilder // TypeDefIndex: 501 +{ + // Fields + internal string name; // 0x08 + private Type type; // 0x0C + private TypeBuilder typeb; // 0x10 + private CustomAttributeBuilder[] cattrs; // 0x14 + internal MethodBuilder add_method; // 0x18 + internal MethodBuilder remove_method; // 0x1C + internal MethodBuilder raise_method; // 0x20 + internal MethodBuilder[] other_methods; // 0x24 + internal EventAttributes attrs; // 0x28 + private int table_idx; // 0x2C + + // Methods + internal void .ctor(TypeBuilder tb, string eventName, EventAttributes eventAttrs, Type eventType); // 0x0021333C + private void System.Runtime.InteropServices._EventBuilder.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x002133E4 + private void System.Runtime.InteropServices._EventBuilder.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x0021346C + private void System.Runtime.InteropServices._EventBuilder.GetTypeInfoCount(out uint pcTInfo); // 0x002134F4 + private void System.Runtime.InteropServices._EventBuilder.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x0021357C + internal int get_next_table_index(object obj, int table, bool inc); // 0x00213394 + public void AddOtherMethod(MethodBuilder mdBuilder); // 0x00213604 + public EventToken GetEventToken(); // 0x00213854 + public void SetAddOnMethod(MethodBuilder mdBuilder); // 0x00213860 + public void SetRaiseMethod(MethodBuilder mdBuilder); // 0x0021391C + public void SetRemoveOnMethod(MethodBuilder mdBuilder); // 0x002139D8 + public void SetCustomAttribute(CustomAttributeBuilder customBuilder); // 0x00213A94 + public void SetCustomAttribute(ConstructorInfo con, byte[] binaryAttribute); // 0x00213D38 + private void RejectIfCreated(); // 0x0021378C +} + +// Namespace: System.Reflection.Emit +internal class EventOnTypeBuilderInst : EventInfo // TypeDefIndex: 502 +{ + // Fields + private MonoGenericClass instantiation; // 0x0C + private EventBuilder evt; // 0x10 + + // Properties + public override EventAttributes Attributes { get; } // 0x00213E94 + public override Type DeclaringType { get; } // 0x002142A0 + public override string Name { get; } // 0x002142A8 + public override Type ReflectedType { get; } // 0x002142CC + + // Methods + internal void .ctor(MonoGenericClass instantiation, EventBuilder evt); // 0x00213E6C + public override MethodInfo GetAddMethod(bool nonPublic); // 0x00213EB8 + public override MethodInfo GetRaiseMethod(bool nonPublic); // 0x00213F60 + public override MethodInfo GetRemoveMethod(bool nonPublic); // 0x00214008 + public override MethodInfo[] GetOtherMethods(bool nonPublic); // 0x002140B0 + public override bool IsDefined(Type attributeType, bool inherit); // 0x002142D4 + public override object[] GetCustomAttributes(bool inherit); // 0x0021435C + public override object[] GetCustomAttributes(Type attributeType, bool inherit); // 0x002143E4 +} + +// Namespace: System.Reflection.Emit +[Serializable] +public struct EventToken // TypeDefIndex: 503 +{ + // Fields + internal int tokValue; // 0x08 + public static readonly EventToken Empty; // 0x00 + + // Properties + public int Token { get; } // 0x0008BF84 + + // Methods + internal void .ctor(int val); // 0x0008BF58 + private static void .cctor(); // 0x00214474 + public override bool Equals(object obj); // 0x0008BF60 + public bool Equals(EventToken obj); // 0x0008BF68 + public override int GetHashCode(); // 0x0008BF7C + public static bool op_Equality(EventToken a, EventToken b); // 0x00214594 + public static bool op_Inequality(EventToken a, EventToken b); // 0x0021462C +} + +// Namespace: System.Reflection.Emit +public sealed class FieldBuilder : FieldInfo, _FieldBuilder // TypeDefIndex: 504 +{ + // Fields + private FieldAttributes attrs; // 0x08 + private Type type; // 0x0C + private string name; // 0x10 + private object def_value; // 0x14 + private int offset; // 0x18 + private int table_idx; // 0x1C + internal TypeBuilder typeb; // 0x20 + private byte[] rva_data; // 0x24 + private CustomAttributeBuilder[] cattrs; // 0x28 + private UnmanagedMarshal marshal_info; // 0x2C + private RuntimeFieldHandle handle; // 0x30 + private Type[] modReq; // 0x34 + private Type[] modOpt; // 0x38 + + // Properties + public override FieldAttributes Attributes { get; } // 0x00214A10 + public override Type DeclaringType { get; } // 0x00214A18 + public override RuntimeFieldHandle FieldHandle { get; } // 0x00214A20 + public override Type FieldType { get; } // 0x00214B08 + public override string Name { get; } // 0x00214B10 + public override Type ReflectedType { get; } // 0x00214B18 + internal override UnmanagedMarshal UMarshal { get; } // 0x002154A8 + public override Module Module { get; } // 0x002154B0 + + // Methods + internal void .ctor(TypeBuilder tb, string fieldName, Type type, FieldAttributes attributes, Type[] modReq, Type[] modOpt); // 0x002146C8 + private void System.Runtime.InteropServices._FieldBuilder.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x002147F0 + private void System.Runtime.InteropServices._FieldBuilder.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x00214878 + private void System.Runtime.InteropServices._FieldBuilder.GetTypeInfoCount(out uint pcTInfo); // 0x00214900 + private void System.Runtime.InteropServices._FieldBuilder.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x00214988 + public override object[] GetCustomAttributes(bool inherit); // 0x00214B20 + public override object[] GetCustomAttributes(Type attributeType, bool inherit); // 0x00214BF8 + public FieldToken GetToken(); // 0x00214CD8 + public override object GetValue(object obj); // 0x00214CE8 + public override bool IsDefined(Type attributeType, bool inherit); // 0x00214D50 + internal override int GetFieldOffset(); // 0x00214DB8 + internal void SetRVAData(byte[] data); // 0x00214DC0 + public void SetConstant(object defaultValue); // 0x00212958 + public void SetCustomAttribute(CustomAttributeBuilder customBuilder); // 0x00214F40 + public void SetCustomAttribute(ConstructorInfo con, byte[] binaryAttribute); // 0x0021536C + public void SetMarshal(UnmanagedMarshal unmanagedMarshal); // 0x002153FC + public void SetOffset(int iOffset); // 0x00215424 + public override void SetValue(object obj, object val, BindingFlags invokeAttr, Binder binder, CultureInfo culture); // 0x00215440 + private Exception CreateNotSupportedException(); // 0x00214A88 + private void RejectIfCreated(); // 0x00214E78 +} + +// Namespace: System.Reflection.Emit +internal class FieldOnTypeBuilderInst : FieldInfo // TypeDefIndex: 505 +{ + // Fields + internal MonoGenericClass instantiation; // 0x08 + internal FieldBuilder fb; // 0x0C + + // Properties + public override Type DeclaringType { get; } // 0x002154E0 + public override string Name { get; } // 0x002154E8 + public override Type ReflectedType { get; } // 0x0021550C + public override FieldAttributes Attributes { get; } // 0x00215910 + public override RuntimeFieldHandle FieldHandle { get; } // 0x00215934 + public override int MetadataToken { get; } // 0x002159BC + public override Type FieldType { get; } // 0x00215B54 + + // Methods + public void .ctor(MonoGenericClass instantiation, FieldBuilder fb); // 0x002154B8 + public override bool IsDefined(Type attributeType, bool inherit); // 0x00215514 + public override object[] GetCustomAttributes(bool inherit); // 0x0021559C + public override object[] GetCustomAttributes(Type attributeType, bool inherit); // 0x00215624 + public override string ToString(); // 0x002156AC + public override object GetValue(object obj); // 0x00215D00 + public override void SetValue(object obj, object value, BindingFlags invokeAttr, Binder binder, CultureInfo culture); // 0x00215D88 +} + +// Namespace: System.Reflection.Emit +[Serializable] +public struct FieldToken // TypeDefIndex: 506 +{ + // Fields + internal int tokValue; // 0x08 + public static readonly FieldToken Empty; // 0x00 + + // Properties + public int Token { get; } // 0x0008BFB8 + + // Methods + internal void .ctor(int val); // 0x0008BF8C + private static void .cctor(); // 0x00215E18 + public override bool Equals(object obj); // 0x0008BF94 + public bool Equals(FieldToken obj); // 0x0008BF9C + public override int GetHashCode(); // 0x0008BFB0 + public static bool op_Equality(FieldToken a, FieldToken b); // 0x00215F38 + public static bool op_Inequality(FieldToken a, FieldToken b); // 0x00215FD0 +} + +// Namespace: System.Reflection.Emit +[Serializable] +public enum FlowControl // TypeDefIndex: 507 +{ + Branch = 0, + Break = 1, + Call = 2, + Cond_Branch = 3, + Meta = 4, + Next = 5, + Phi = 6, + Return = 7, + Throw = 8 +} + +// Namespace: System.Reflection.Emit +public sealed class GenericTypeParameterBuilder : Type // TypeDefIndex: 508 +{ + // Fields + private TypeBuilder tbuilder; // 0x0C + private MethodBuilder mbuilder; // 0x10 + private string name; // 0x14 + private int index; // 0x18 + private Type base_type; // 0x1C + private Type[] iface_constraints; // 0x20 + private CustomAttributeBuilder[] cattrs; // 0x24 + private GenericParameterAttributes attrs; // 0x28 + + // Properties + public override Type UnderlyingSystemType { get; } // 0x00216DD4 + public override Assembly Assembly { get; } // 0x00216DD8 + public override string AssemblyQualifiedName { get; } // 0x00216E04 + public override Type BaseType { get; } // 0x00216E0C + public override string FullName { get; } // 0x00216E14 + public override Guid GUID { get; } // 0x00216E1C + public override string Name { get; } // 0x00217024 + public override string Namespace { get; } // 0x0021702C + public override Module Module { get; } // 0x00217034 + public override Type DeclaringType { get; } // 0x00217058 + public override Type ReflectedType { get; } // 0x00217070 + public override RuntimeTypeHandle TypeHandle { get; } // 0x00217088 + public override bool ContainsGenericParameters { get; } // 0x00217200 + public override bool IsGenericParameter { get; } // 0x00217208 + public override bool IsGenericType { get; } // 0x00217210 + public override bool IsGenericTypeDefinition { get; } // 0x00217218 + public override GenericParameterAttributes GenericParameterAttributes { get; } // 0x00217220 + public override int GenericParameterPosition { get; } // 0x0021737C + public override MethodBase DeclaringMethod { get; } // 0x0021766C + + // Methods + internal void .ctor(TypeBuilder tbuilder, MethodBuilder mbuilder, string name, int index); // 0x0021606C + public void SetBaseTypeConstraint(Type baseTypeConstraint); // 0x0021611C + public void SetInterfaceConstraints(Type[] interfaceConstraints); // 0x002161D4 + public void SetGenericParameterAttributes(GenericParameterAttributes genericParameterAttributes); // 0x002161DC + private void initialize(); // 0x00216118 + public override bool IsSubclassOf(Type c); // 0x002161E4 + protected override TypeAttributes GetAttributeFlagsImpl(); // 0x002163C8 + protected override ConstructorInfo GetConstructorImpl(BindingFlags bindingAttr, Binder binder, CallingConventions callConvention, Type[] types, ParameterModifier[] modifiers); // 0x00216504 + public override ConstructorInfo[] GetConstructors(BindingFlags bindingAttr); // 0x0021656C + public override EventInfo GetEvent(string name, BindingFlags bindingAttr); // 0x002165D4 + public override EventInfo[] GetEvents(); // 0x0021663C + public override EventInfo[] GetEvents(BindingFlags bindingAttr); // 0x002166A4 + public override FieldInfo GetField(string name, BindingFlags bindingAttr); // 0x0021670C + public override FieldInfo[] GetFields(BindingFlags bindingAttr); // 0x00216774 + public override Type GetInterface(string name, bool ignoreCase); // 0x002167DC + public override Type[] GetInterfaces(); // 0x00216844 + public override MemberInfo[] GetMembers(BindingFlags bindingAttr); // 0x002168AC + public override MemberInfo[] GetMember(string name, MemberTypes type, BindingFlags bindingAttr); // 0x00216914 + public override MethodInfo[] GetMethods(BindingFlags bindingAttr); // 0x0021697C + protected override MethodInfo GetMethodImpl(string name, BindingFlags bindingAttr, Binder binder, CallingConventions callConvention, Type[] types, ParameterModifier[] modifiers); // 0x002169E4 + public override Type GetNestedType(string name, BindingFlags bindingAttr); // 0x00216A4C + public override Type[] GetNestedTypes(BindingFlags bindingAttr); // 0x00216AB4 + public override PropertyInfo[] GetProperties(BindingFlags bindingAttr); // 0x00216B1C + protected override PropertyInfo GetPropertyImpl(string name, BindingFlags bindingAttr, Binder binder, Type returnType, Type[] types, ParameterModifier[] modifiers); // 0x00216B84 + protected override bool HasElementTypeImpl(); // 0x00216BEC + public override bool IsAssignableFrom(Type c); // 0x00216BF4 + public override bool IsInstanceOfType(object o); // 0x00216C5C + protected override bool IsArrayImpl(); // 0x00216CC4 + protected override bool IsByRefImpl(); // 0x00216CCC + protected override bool IsCOMObjectImpl(); // 0x00216CD4 + protected override bool IsPointerImpl(); // 0x00216CDC + protected override bool IsPrimitiveImpl(); // 0x00216CE4 + protected override bool IsValueTypeImpl(); // 0x00216CEC + public override object InvokeMember(string name, BindingFlags invokeAttr, Binder binder, object target, object[] args, ParameterModifier[] modifiers, CultureInfo culture, string[] namedParameters); // 0x00216D04 + public override Type GetElementType(); // 0x00216D6C + public override bool IsDefined(Type attributeType, bool inherit); // 0x00216E84 + public override object[] GetCustomAttributes(bool inherit); // 0x00216EEC + public override object[] GetCustomAttributes(Type attributeType, bool inherit); // 0x00216F54 + public override InterfaceMapping GetInterfaceMap(Type interfaceType); // 0x00216FBC + public override Type[] GetGenericArguments(); // 0x002170F0 + public override Type GetGenericTypeDefinition(); // 0x00217178 + public override Type[] GetGenericParameterConstraints(); // 0x00217384 + public void SetCustomAttribute(CustomAttributeBuilder customBuilder); // 0x00217674 + public void SetCustomAttribute(ConstructorInfo con, byte[] binaryAttribute); // 0x0021785C + private Exception not_supported(); // 0x0021635C + public override string ToString(); // 0x002178E4 + public override bool Equals(object o); // 0x002178EC + public override int GetHashCode(); // 0x002178F4 + public override Type MakeArrayType(); // 0x002178FC + public override Type MakeArrayType(int rank); // 0x00217974 + public override Type MakeByRefType(); // 0x00217A3C + public override Type MakeGenericType(Type[] typeArguments); // 0x00217AB0 + public override Type MakePointerType(); // 0x00217AB8 +} + +// Namespace: System.Reflection.Emit +internal struct ILExceptionBlock // TypeDefIndex: 509 +{ + // Fields + public const int CATCH = 0; // 0x00 + public const int FILTER = 1; // 0x00 + public const int FINALLY = 2; // 0x00 + public const int FAULT = 4; // 0x00 + public const int FILTER_START = -1; // 0x00 + internal Type extype; // 0x08 + internal int type; // 0x0C + internal int start; // 0x10 + internal int len; // 0x14 + internal int filter_offset; // 0x18 + + // Methods + internal void Debug(); // 0x0008C01C +} + +// Namespace: System.Reflection.Emit +internal struct ILExceptionInfo // TypeDefIndex: 510 +{ + // Fields + private ILExceptionBlock[] handlers; // 0x08 + internal int start; // 0x0C + private int len; // 0x10 + internal Label end; // 0x14 + + // Methods + internal int NumHandlers(); // 0x0008C07C + internal void AddCatch(Type extype, int offset); // 0x0008C0A0 + internal void AddFinally(int offset); // 0x0008C0A8 + internal void AddFault(int offset); // 0x0008C0B0 + internal void AddFilter(int offset); // 0x0008C0B8 + internal void End(int offset); // 0x0008C0C0 + internal int LastClauseType(); // 0x0008C0C8 + internal void PatchFilterClause(int start); // 0x0008C0D0 + internal void Debug(int b); // 0x0008C0D8 + private void add_block(int offset); // 0x0008C0DC +} + +// Namespace: System.Reflection.Emit +internal struct ILTokenInfo // TypeDefIndex: 511 +{ + // Fields + public MemberInfo member; // 0x08 + public int code_pos; // 0x0C + +} + +// Namespace: System.Reflection.Emit +internal interface TokenGenerator // TypeDefIndex: 512 +{ + // Methods + int GetToken(string str); + int GetToken(MemberInfo member); + int GetToken(MethodInfo method, Type[] opt_param_types); + int GetToken(SignatureHelper helper); +} + +// Namespace: System.Reflection.Emit +public class ILGenerator : _ILGenerator // TypeDefIndex: 513 +{ + // Fields + private const int defaultFixupSize = 4; // 0x00 + private const int defaultLabelsSize = 4; // 0x00 + private const int defaultExceptionStackSize = 2; // 0x00 + private static readonly Type void_type; // 0x00 + private byte[] code; // 0x08 + private int code_len; // 0x0C + private int max_stack; // 0x10 + private int cur_stack; // 0x14 + private LocalBuilder[] locals; // 0x18 + private ILExceptionInfo[] ex_handlers; // 0x1C + private int num_token_fixups; // 0x20 + private ILTokenInfo[] token_fixups; // 0x24 + private LabelData[] labels; // 0x28 + private int num_labels; // 0x2C + private LabelFixup[] fixups; // 0x30 + private int num_fixups; // 0x34 + internal Module module; // 0x38 + private int cur_block; // 0x3C + private Stack open_blocks; // 0x40 + private TokenGenerator token_gen; // 0x44 + private ArrayList sequencePointLists; // 0x48 + private SequencePointList currentSequence; // 0x4C + + // Properties + internal bool HasDebugInfo { get; } // 0x0021D9E0 + + // Methods + internal void .ctor(Module m, TokenGenerator token_gen, int size); // 0x002181C8 + private static void .cctor(); // 0x00218274 + private void System.Runtime.InteropServices._ILGenerator.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x0021831C + private void System.Runtime.InteropServices._ILGenerator.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x002183A4 + private void System.Runtime.InteropServices._ILGenerator.GetTypeInfoCount(out uint pcTInfo); // 0x0021842C + private void System.Runtime.InteropServices._ILGenerator.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x002184B4 + private void add_token_fixup(MemberInfo mi); // 0x0021853C + private void make_room(int nbytes); // 0x00218684 + private void emit_int(int val); // 0x00218764 + private void ll_emit(OpCode opcode); // 0x00218894 + private static int target_len(OpCode opcode); // 0x002189EC + private void InternalEndClause(); // 0x002189FC + public virtual void BeginCatchBlock(Type exceptionType); // 0x00218BB4 + public virtual void BeginExceptFilterBlock(); // 0x00218EC4 + public virtual Label BeginExceptionBlock(); // 0x0021901C + public virtual void BeginFaultBlock(); // 0x002191FC + public virtual void BeginFinallyBlock(); // 0x00219490 + public virtual void BeginScope(); // 0x00219724 + public virtual LocalBuilder DeclareLocal(Type localType); // 0x00219728 + public virtual LocalBuilder DeclareLocal(Type localType, bool pinned); // 0x0021973C + public virtual Label DefineLabel(); // 0x00219A0C + public virtual void Emit(OpCode opcode); // 0x00219B40 + public virtual void Emit(OpCode opcode, byte arg); // 0x00219B70 + public virtual void Emit(OpCode opcode, ConstructorInfo con); // 0x00219BE8 + public virtual void Emit(OpCode opcode, double arg); // 0x00219D94 + public virtual void Emit(OpCode opcode, FieldInfo field); // 0x0021A1D4 + public virtual void Emit(OpCode opcode, short arg); // 0x0021A354 + public virtual void Emit(OpCode opcode, int arg); // 0x0021A414 + public virtual void Emit(OpCode opcode, long arg); // 0x0021A454 + public virtual void Emit(OpCode opcode, Label label); // 0x0021A6D0 + public virtual void Emit(OpCode opcode, Label[] labels); // 0x0021A96C + public virtual void Emit(OpCode opcode, LocalBuilder local); // 0x0021AD10 + public virtual void Emit(OpCode opcode, MethodInfo meth); // 0x0021B1B0 + private void Emit(OpCode opcode, MethodInfo method, int token); // 0x0021B5A0 + public void Emit(OpCode opcode, sbyte arg); // 0x0021B710 + public virtual void Emit(OpCode opcode, SignatureHelper signature); // 0x0021B788 + public virtual void Emit(OpCode opcode, float arg); // 0x0021B8A4 + public virtual void Emit(OpCode opcode, string str); // 0x0021BB4C + public virtual void Emit(OpCode opcode, Type cls); // 0x0021BC68 + public virtual void EmitCall(OpCode opcode, MethodInfo methodInfo, Type[] optionalParameterTypes); // 0x0021BD78 + public virtual void EmitCalli(OpCode opcode, CallingConvention unmanagedCallConv, Type returnType, Type[] parameterTypes); // 0x0021C0E8 + public virtual void EmitCalli(OpCode opcode, CallingConventions callingConvention, Type returnType, Type[] parameterTypes, Type[] optionalParameterTypes); // 0x0021C150 + public virtual void EmitWriteLine(FieldInfo fld); // 0x0021C244 + public virtual void EmitWriteLine(LocalBuilder localBuilder); // 0x0021C570 + public virtual void EmitWriteLine(string value); // 0x0021C834 + public virtual void EndExceptionBlock(); // 0x0021CA44 + public virtual void EndScope(); // 0x0021CD84 + public virtual void MarkLabel(Label loc); // 0x0021CD88 + public virtual void MarkSequencePoint(ISymbolDocumentWriter document, int startLine, int startColumn, int endLine, int endColumn); // 0x0021CF84 + internal void GenerateDebugInfo(ISymbolWriter symbolWriter); // 0x0021D0D0 + public virtual void ThrowException(Type excType); // 0x0021D9F0 + public virtual void UsingNamespace(string usingNamespace); // 0x0021DCF8 + internal void label_fixup(); // 0x0021DD80 + internal static int Mono_GetCurrentOffset(ILGenerator ig); // 0x0021E0B8 +} + +// Namespace: +private struct LabelFixup // TypeDefIndex: 514 +{ + // Fields + public int offset; // 0x08 + public int pos; // 0x0C + public int label_idx; // 0x10 + +} + +// Namespace: +private struct LabelData // TypeDefIndex: 515 +{ + // Fields + public int addr; // 0x08 + public int maxStack; // 0x0C + + // Methods + public void .ctor(int addr, int maxStack); // 0x0008C0E4 +} + +// Namespace: System.Reflection.Emit +internal class SequencePointList // TypeDefIndex: 516 +{ + // Fields + private const int arrayGrow = 10; // 0x00 + private ISymbolDocumentWriter doc; // 0x08 + private SequencePoint[] points; // 0x0C + private int count; // 0x10 + + // Properties + public ISymbolDocumentWriter Document { get; } // 0x00273D70 + public int StartLine { get; } // 0x00274264 + public int EndLine { get; } // 0x002742A4 + public int StartColumn { get; } // 0x002742F4 + public int EndColumn { get; } // 0x00274334 + + // Methods + public void .ctor(ISymbolDocumentWriter doc); // 0x00273D50 + public int[] GetOffsets(); // 0x00273D78 + public int[] GetLines(); // 0x00273E74 + public int[] GetColumns(); // 0x00273F70 + public int[] GetEndLines(); // 0x0027406C + public int[] GetEndColumns(); // 0x00274168 + public void AddSequencePoint(int offset, int line, int col, int endLine, int endCol); // 0x00274384 +} + +// Namespace: System.Reflection.Emit +internal struct SequencePoint // TypeDefIndex: 517 +{ + // Fields + public int Offset; // 0x08 + public int Line; // 0x0C + public int Col; // 0x10 + public int EndLine; // 0x14 + public int EndCol; // 0x18 + +} + +// Namespace: System.Reflection.Emit +[Serializable] +public struct Label // TypeDefIndex: 518 +{ + // Fields + internal int label; // 0x08 + + // Methods + internal void .ctor(int val); // 0x0008C14C + public override bool Equals(object obj); // 0x0008C154 + public bool Equals(Label obj); // 0x0008C15C + public override int GetHashCode(); // 0x0008C170 + public static bool op_Equality(Label a, Label b); // 0x0021E194 + public static bool op_Inequality(Label a, Label b); // 0x0021E1A8 +} + +// Namespace: System.Reflection.Emit +public sealed class LocalBuilder : LocalVariableInfo, _LocalBuilder // TypeDefIndex: 519 +{ + // Fields + private string name; // 0x10 + internal ILGenerator ilgen; // 0x14 + private int startOffset; // 0x18 + private int endOffset; // 0x1C + + // Properties + public override Type LocalType { get; } // 0x0021E400 + public override bool IsPinned { get; } // 0x0021E408 + public override int LocalIndex { get; } // 0x0021E410 + internal string Name { get; } // 0x0021E43C + internal int StartOffset { get; } // 0x0021E444 + internal int EndOffset { get; } // 0x0021E44C + + // Methods + internal void .ctor(Type t, ILGenerator ilgen); // 0x002199E4 + private void System.Runtime.InteropServices._LocalBuilder.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x0021E1BC + private void System.Runtime.InteropServices._LocalBuilder.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x0021E244 + private void System.Runtime.InteropServices._LocalBuilder.GetTypeInfoCount(out uint pcTInfo); // 0x0021E2CC + private void System.Runtime.InteropServices._LocalBuilder.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x0021E354 + public void SetLocalSymInfo(string name, int startOffset, int endOffset); // 0x0021E3DC + public void SetLocalSymInfo(string name); // 0x0021E3EC + internal static int Mono_GetLocalIndex(LocalBuilder builder); // 0x0021E418 +} + +// Namespace: System.Reflection.Emit +public sealed class MethodBuilder : MethodInfo, _MethodBuilder // TypeDefIndex: 520 +{ + // Fields + private RuntimeMethodHandle mhandle; // 0x08 + private Type rtype; // 0x0C + internal Type[] parameters; // 0x10 + private MethodAttributes attrs; // 0x14 + private MethodImplAttributes iattrs; // 0x18 + private string name; // 0x1C + private int table_idx; // 0x20 + private byte[] code; // 0x24 + private ILGenerator ilgen; // 0x28 + private TypeBuilder type; // 0x2C + internal ParameterBuilder[] pinfo; // 0x30 + private CustomAttributeBuilder[] cattrs; // 0x34 + private MethodInfo override_method; // 0x38 + private string pi_dll; // 0x3C + private string pi_entry; // 0x40 + private CharSet charset; // 0x44 + private uint extra_flags; // 0x48 + private CallingConvention native_cc; // 0x4C + private CallingConventions call_conv; // 0x50 + private bool init_locals; // 0x54 + private IntPtr generic_container; // 0x58 + internal GenericTypeParameterBuilder[] generic_params; // 0x5C + private Type[] returnModReq; // 0x60 + private Type[] returnModOpt; // 0x64 + private Type[][] paramModReq; // 0x68 + private Type[][] paramModOpt; // 0x6C + private RefEmitPermissionSet[] permissions; // 0x70 + private static Dictionary`2 <>f__switch$map1D; // 0x00 + + // Properties + public override bool ContainsGenericParameters { get; } // 0x0021E9EC + public bool InitLocals { get; set; } // 0x0021EA74 0x0021EA7C + internal TypeBuilder TypeBuilder { get; } // 0x0021EA84 + public override RuntimeMethodHandle MethodHandle { get; } // 0x0021EA8C + public override Type ReturnType { get; } // 0x0021EB74 + public override Type ReflectedType { get; } // 0x0021EB7C + public override Type DeclaringType { get; } // 0x0021EB84 + public override string Name { get; } // 0x0021EB8C + public override MethodAttributes Attributes { get; } // 0x0021EB94 + public override ICustomAttributeProvider ReturnTypeCustomAttributes { get; } // 0x0021EB9C + public override CallingConventions CallingConvention { get; } // 0x0021EBA4 + public string Signature { get; } // 0x0021EBAC + internal bool BestFitMapping { set; } // 0x0021EC34 + internal bool ThrowOnUnmappableChar { set; } // 0x0021EC70 + internal bool ExactSpelling { set; } // 0x0021ECAC + internal bool SetLastError { set; } // 0x0021ECE0 + public override bool IsGenericMethodDefinition { get; } // 0x002210C0 + public override bool IsGenericMethod { get; } // 0x002210D0 + public override Module Module { get; } // 0x002216F4 + + // Methods + internal void .ctor(TypeBuilder tb, string name, MethodAttributes attributes, CallingConventions callingConvention, Type returnType, Type[] returnModReq, Type[] returnModOpt, Type[] parameterTypes, Type[][] paramModReq, Type[][] paramModOpt); // 0x0021E454 + internal void .ctor(TypeBuilder tb, string name, MethodAttributes attributes, CallingConventions callingConvention, Type returnType, Type[] returnModReq, Type[] returnModOpt, Type[] parameterTypes, Type[][] paramModReq, Type[][] paramModOpt, string dllName, string entryName, CallingConvention nativeCConv, CharSet nativeCharset); // 0x0021E758 + private void System.Runtime.InteropServices._MethodBuilder.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x0021E7CC + private void System.Runtime.InteropServices._MethodBuilder.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x0021E854 + private void System.Runtime.InteropServices._MethodBuilder.GetTypeInfoCount(out uint pcTInfo); // 0x0021E8DC + private void System.Runtime.InteropServices._MethodBuilder.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x0021E964 + public MethodToken GetToken(); // 0x0021E748 + public override MethodInfo GetBaseDefinition(); // 0x0021ED1C + public override MethodImplAttributes GetMethodImplementationFlags(); // 0x0021ED20 + public override ParameterInfo[] GetParameters(); // 0x0021ED28 + internal override int GetParameterCount(); // 0x0021EF4C + public Module GetModule(); // 0x0021EF60 + public void CreateMethodBody(byte[] il, int count); // 0x0021EF84 + public override object Invoke(object obj, BindingFlags invokeAttr, Binder binder, object[] parameters, CultureInfo culture); // 0x0021F104 + public override bool IsDefined(Type attributeType, bool inherit); // 0x0021F16C + public override object[] GetCustomAttributes(bool inherit); // 0x0021F1D4 + public override object[] GetCustomAttributes(Type attributeType, bool inherit); // 0x0021F2AC + public ILGenerator GetILGenerator(); // 0x0021F38C + public ILGenerator GetILGenerator(int size); // 0x0021F394 + public ParameterBuilder DefineParameter(int position, ParameterAttributes attributes, string strParamName); // 0x0021F5F8 + internal void check_override(); // 0x0021F964 + internal void fixup(); // 0x0021FA80 + internal void GenerateDebugInfo(ISymbolWriter symbolWriter); // 0x0021FC18 + public void SetCustomAttribute(CustomAttributeBuilder customBuilder); // 0x0021FEDC + public void SetCustomAttribute(ConstructorInfo con, byte[] binaryAttribute); // 0x00220B54 + public void SetImplementationFlags(MethodImplAttributes attributes); // 0x00220C88 + public void AddDeclarativeSecurity(SecurityAction action, PermissionSet pset); // 0x00220CA4 + public void SetMarshal(UnmanagedMarshal unmanagedMarshal); // 0x00220CA8 + public void SetSymCustomAttribute(string name, byte[] data); // 0x00220D3C + public override string ToString(); // 0x00220DD0 + public override bool Equals(object obj); // 0x00221080 + public override int GetHashCode(); // 0x00221088 + internal override int get_next_table_index(object obj, int table, bool inc); // 0x0021E6F8 + internal void set_override(MethodInfo mdecl); // 0x002210B4 + private void RejectIfCreated(); // 0x0021F7BC + private Exception NotSupported(); // 0x0021EAF4 + public override MethodInfo MakeGenericMethod(Type[] typeArguments); // 0x002210BC + public override MethodInfo GetGenericMethodDefinition(); // 0x002210E0 + public override Type[] GetGenericArguments(); // 0x0022117C + public GenericTypeParameterBuilder[] DefineGenericParameters(string[] names); // 0x00221300 + public void SetReturnType(Type returnType); // 0x00221578 + public void SetParameters(Type[] parameterTypes); // 0x00221580 + public void SetSignature(Type returnType, Type[] returnTypeRequiredCustomModifiers, Type[] returnTypeOptionalCustomModifiers, Type[] parameterTypes, Type[][] parameterTypeRequiredCustomModifiers, Type[][] parameterTypeOptionalCustomModifiers); // 0x002216B4 +} + +// Namespace: System.Reflection.Emit +internal class MethodOnTypeBuilderInst : MethodInfo // TypeDefIndex: 521 +{ + // Fields + private MonoGenericClass instantiation; // 0x08 + internal MethodBuilder mb; // 0x0C + private Type[] method_arguments; // 0x10 + private MethodOnTypeBuilderInst generic_method_definition; // 0x14 + + // Properties + public override Type DeclaringType { get; } // 0x00221814 + public override string Name { get; } // 0x0022181C + public override Type ReflectedType { get; } // 0x00221840 + public override Type ReturnType { get; } // 0x00221848 + public override int MetadataToken { get; } // 0x00222280 + public override RuntimeMethodHandle MethodHandle { get; } // 0x00222494 + public override MethodAttributes Attributes { get; } // 0x0022251C + public override CallingConventions CallingConvention { get; } // 0x00222540 + public override bool ContainsGenericParameters { get; } // 0x00222894 + public override bool IsGenericMethodDefinition { get; } // 0x002229C8 + public override bool IsGenericMethod { get; } // 0x00222A10 + public override ICustomAttributeProvider ReturnTypeCustomAttributes { get; } // 0x00222AC4 + + // Methods + public void .ctor(MonoGenericClass instantiation, MethodBuilder mb); // 0x002216FC + internal void .ctor(MethodOnTypeBuilderInst gmd, Type[] typeArguments); // 0x00221724 + public override bool IsDefined(Type attributeType, bool inherit); // 0x002219CC + public override object[] GetCustomAttributes(bool inherit); // 0x00221A54 + public override object[] GetCustomAttributes(Type attributeType, bool inherit); // 0x00221ADC + public override string ToString(); // 0x00221B64 + public override MethodImplAttributes GetMethodImplementationFlags(); // 0x00221EC8 + public override ParameterInfo[] GetParameters(); // 0x00221EEC + internal override int GetParameterCount(); // 0x002223DC + public override object Invoke(object obj, BindingFlags invokeAttr, Binder binder, object[] parameters, CultureInfo culture); // 0x0022240C + public override MethodInfo MakeGenericMethod(Type[] typeArguments); // 0x00222564 + public override Type[] GetGenericArguments(); // 0x002227A0 + public override MethodInfo GetGenericMethodDefinition(); // 0x00222880 + public override MethodInfo GetBaseDefinition(); // 0x00222A3C +} + +// Namespace: System.Reflection.Emit +public sealed class MethodRental : _MethodRental // TypeDefIndex: 522 +{ + // Fields + public const int JitImmediate = 1; // 0x00 + public const int JitOnDemand = 0; // 0x00 + + // Methods + private void .ctor(); // 0x00222B4C + private void System.Runtime.InteropServices._MethodRental.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x00222B54 + private void System.Runtime.InteropServices._MethodRental.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x00222BDC + private void System.Runtime.InteropServices._MethodRental.GetTypeInfoCount(out uint pcTInfo); // 0x00222C64 + private void System.Runtime.InteropServices._MethodRental.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x00222CEC + public static void SwapMethodBody(Type cls, int methodtoken, IntPtr rgIL, int methodSize, int flags); // 0x00222D74 +} + +// Namespace: System.Reflection.Emit +[Serializable] +public struct MethodToken // TypeDefIndex: 523 +{ + // Fields + internal int tokValue; // 0x08 + public static readonly MethodToken Empty; // 0x00 + + // Properties + public int Token { get; } // 0x0008C1A8 + + // Methods + internal void .ctor(int val); // 0x0008C17C + private static void .cctor(); // 0x00222F88 + public override bool Equals(object obj); // 0x0008C184 + public bool Equals(MethodToken obj); // 0x0008C18C + public override int GetHashCode(); // 0x0008C1A0 + public static bool op_Equality(MethodToken a, MethodToken b); // 0x002230A8 + public static bool op_Inequality(MethodToken a, MethodToken b); // 0x00223140 +} + +// Namespace: System.Reflection.Emit +public class ModuleBuilder : Module, _ModuleBuilder // TypeDefIndex: 524 +{ + // Fields + private UIntPtr dynamic_image; // 0x24 + private int num_types; // 0x28 + private TypeBuilder[] types; // 0x2C + private CustomAttributeBuilder[] cattrs; // 0x30 + private byte[] guid; // 0x34 + private int table_idx; // 0x38 + internal AssemblyBuilder assemblyb; // 0x3C + private MethodBuilder[] global_methods; // 0x40 + private FieldBuilder[] global_fields; // 0x44 + private bool is_main; // 0x48 + private MonoResource[] resources; // 0x4C + private TypeBuilder global_type; // 0x50 + private Type global_type_created; // 0x54 + private Hashtable name_cache; // 0x58 + private Hashtable us_string_cache; // 0x5C + private int[] table_indexes; // 0x60 + private bool transient; // 0x64 + private ModuleBuilderTokenGenerator token_gen; // 0x68 + private Hashtable resource_writers; // 0x6C + private ISymbolWriter symbolWriter; // 0x70 + private static readonly char[] type_modifiers; // 0x00 + + // Properties + public override string FullyQualifiedName { get; } // 0x00223C00 + internal string FileName { get; } // 0x00228024 + internal bool IsMain { set; } // 0x0022802C + + // Methods + internal void .ctor(AssemblyBuilder assb, string name, string fullyqname, bool emitSymbolInfo, bool transient); // 0x002231DC + private static void .cctor(); // 0x002238E8 + private void System.Runtime.InteropServices._ModuleBuilder.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x002239E0 + private void System.Runtime.InteropServices._ModuleBuilder.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x00223A68 + private void System.Runtime.InteropServices._ModuleBuilder.GetTypeInfoCount(out uint pcTInfo); // 0x00223AF0 + private void System.Runtime.InteropServices._ModuleBuilder.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x00223B78 + private static void basic_init(ModuleBuilder ab); // 0x00223848 + private static void set_wrappers_type(ModuleBuilder mb, Type ab); // 0x002238E4 + public bool IsTransient(); // 0x00223C08 + public void CreateGlobalFunctions(); // 0x00223C10 + public FieldBuilder DefineInitializedData(string name, byte[] data, FieldAttributes attributes); // 0x00223CD8 + public FieldBuilder DefineUninitializedData(string name, int size, FieldAttributes attributes); // 0x00223DD0 + private void addGlobalMethod(MethodBuilder mb); // 0x0022433C + public MethodBuilder DefineGlobalMethod(string name, MethodAttributes attributes, Type returnType, Type[] parameterTypes); // 0x002244D4 + public MethodBuilder DefineGlobalMethod(string name, MethodAttributes attributes, CallingConventions callingConvention, Type returnType, Type[] parameterTypes); // 0x0022450C + public MethodBuilder DefineGlobalMethod(string name, MethodAttributes attributes, CallingConventions callingConvention, Type returnType, Type[] requiredReturnTypeCustomModifiers, Type[] optionalReturnTypeCustomModifiers, Type[] parameterTypes, Type[][] requiredParameterTypeCustomModifiers, Type[][] optionalParameterTypeCustomModifiers); // 0x00224548 + public MethodBuilder DefinePInvokeMethod(string name, string dllName, MethodAttributes attributes, CallingConventions callingConvention, Type returnType, Type[] parameterTypes, CallingConvention nativeCallConv, CharSet nativeCharSet); // 0x00224720 + public MethodBuilder DefinePInvokeMethod(string name, string dllName, string entryName, MethodAttributes attributes, CallingConventions callingConvention, Type returnType, Type[] parameterTypes, CallingConvention nativeCallConv, CharSet nativeCharSet); // 0x00224760 + public TypeBuilder DefineType(string name); // 0x00224934 + public TypeBuilder DefineType(string name, TypeAttributes attr); // 0x0022493C + public TypeBuilder DefineType(string name, TypeAttributes attr, Type parent); // 0x00224A38 + private void AddType(TypeBuilder tb); // 0x00224A60 + private TypeBuilder DefineType(string name, TypeAttributes attr, Type parent, Type[] interfaces, PackingSize packingSize, int typesize); // 0x002241BC + internal void RegisterTypeName(TypeBuilder tb, string name); // 0x00224BA0 + internal TypeBuilder GetRegisteredType(string name); // 0x00224BE4 + public TypeBuilder DefineType(string name, TypeAttributes attr, Type parent, Type[] interfaces); // 0x00224A10 + public TypeBuilder DefineType(string name, TypeAttributes attr, Type parent, int typesize); // 0x00224C98 + public TypeBuilder DefineType(string name, TypeAttributes attr, Type parent, PackingSize packsize); // 0x00224CC0 + public TypeBuilder DefineType(string name, TypeAttributes attr, Type parent, PackingSize packingSize, int typesize); // 0x00224CE8 + public MethodInfo GetArrayMethod(Type arrayClass, string methodName, CallingConventions callingConvention, Type returnType, Type[] parameterTypes); // 0x00224D10 + public EnumBuilder DefineEnum(string name, TypeAttributes visibility, Type underlyingType); // 0x00224DB4 + public override Type GetType(string className); // 0x00224F20 + public override Type GetType(string className, bool ignoreCase); // 0x00224F50 + private TypeBuilder search_in_array(TypeBuilder[] arr, int validElementsInArray, string className); // 0x00224F80 + private TypeBuilder search_nested_in_array(TypeBuilder[] arr, int validElementsInArray, string className); // 0x002250F8 + private static Type create_modified_type(TypeBuilder tb, string modifiers); // 0x00225270 + private TypeBuilder GetMaybeNested(TypeBuilder t, string className); // 0x00225274 + public override Type GetType(string className, bool throwOnError, bool ignoreCase); // 0x0022538C + internal int get_next_table_index(object obj, int table, bool inc); // 0x002236E8 + public void SetCustomAttribute(CustomAttributeBuilder customBuilder); // 0x002257B0 + public void SetCustomAttribute(ConstructorInfo con, byte[] binaryAttribute); // 0x00225948 + public ISymbolWriter GetSymWriter(); // 0x002259D0 + public ISymbolDocumentWriter DefineDocument(string url, Guid language, Guid languageVendor, Guid documentType); // 0x002259D8 + public override Type[] GetTypes(); // 0x00225B38 + public IResourceWriter DefineResource(string name, string description, ResourceAttributes attribute); // 0x00225D38 + public IResourceWriter DefineResource(string name, string description); // 0x002260EC + public void DefineUnmanagedResource(byte[] resource); // 0x00226108 + public void DefineUnmanagedResource(string resourceFileName); // 0x002261E0 + public void DefineManifestResource(string name, Stream stream, ResourceAttributes attribute); // 0x00226414 + public void SetSymCustomAttribute(string name, byte[] data); // 0x002267A8 + public void SetUserEntryPoint(MethodInfo entryPoint); // 0x00226830 + public MethodToken GetMethodToken(MethodInfo method); // 0x00226994 + public MethodToken GetArrayMethodToken(Type arrayClass, string methodName, CallingConventions callingConvention, Type returnType, Type[] parameterTypes); // 0x00226B60 + public MethodToken GetConstructorToken(ConstructorInfo con); // 0x00226B94 + public FieldToken GetFieldToken(FieldInfo field); // 0x00226C50 + public SignatureToken GetSignatureToken(byte[] sigBytes, int sigLength); // 0x00226D94 + public SignatureToken GetSignatureToken(SignatureHelper sigHelper); // 0x00226E1C + public StringToken GetStringConstant(string str); // 0x00226F60 + public TypeToken GetTypeToken(Type type); // 0x002271BC + public TypeToken GetTypeToken(string name); // 0x0022743C + private static int getUSIndex(ModuleBuilder mb, string str); // 0x0022746C + private static int getToken(ModuleBuilder mb, object obj); // 0x00227470 + private static int getMethodToken(ModuleBuilder mb, MethodInfo method, Type[] opt_param_types); // 0x00227474 + internal int GetToken(string str); // 0x0022701C + internal int GetToken(MemberInfo member); // 0x00226AD8 + internal int GetToken(MethodInfo method, Type[] opt_param_types); // 0x00227478 + internal int GetToken(SignatureHelper helper); // 0x00226ED8 + internal void RegisterToken(object obj, int token); // 0x0021E754 + internal TokenGenerator GetTokenGenerator(); // 0x0021F574 + private static void build_metadata(ModuleBuilder mb); // 0x00227528 + private void WriteToFile(IntPtr handle); // 0x0022752C + internal void Save(); // 0x00227530 + internal void CreateGlobalType(); // 0x0022384C + internal override Guid GetModuleVersionId(); // 0x00228034 + internal static Guid Mono_GetGuid(ModuleBuilder mb); // 0x00228054 +} + +// Namespace: System.Reflection.Emit +internal class ModuleBuilderTokenGenerator : TokenGenerator // TypeDefIndex: 525 +{ + // Fields + private ModuleBuilder mb; // 0x08 + + // Methods + public void .ctor(ModuleBuilder mb); // 0x00227508 + public int GetToken(string str); // 0x00228090 + public int GetToken(MemberInfo member); // 0x002280C0 + public int GetToken(MethodInfo method, Type[] opt_param_types); // 0x002280F0 + public int GetToken(SignatureHelper helper); // 0x00228128 +} + +// Namespace: System.Reflection +internal class MonoArrayMethod : MethodInfo // TypeDefIndex: 526 +{ + // Fields + internal RuntimeMethodHandle mhandle; // 0x08 + internal Type parent; // 0x0C + internal Type ret; // 0x10 + internal Type[] parameters; // 0x14 + internal string name; // 0x18 + internal int table_idx; // 0x1C + internal CallingConventions call_conv; // 0x20 + + // Properties + public override Type ReturnType { get; } // 0x00285B54 + public override ICustomAttributeProvider ReturnTypeCustomAttributes { get; } // 0x00285B5C + public override RuntimeMethodHandle MethodHandle { get; } // 0x00285C54 + public override MethodAttributes Attributes { get; } // 0x00285C5C + public override Type ReflectedType { get; } // 0x00285C64 + public override Type DeclaringType { get; } // 0x00285C6C + public override string Name { get; } // 0x00285C74 + + // Methods + internal void .ctor(Type arrayClass, string methodName, CallingConventions callingConvention, Type returnType, Type[] parameterTypes); // 0x00285A64 + public override MethodInfo GetBaseDefinition(); // 0x00285B50 + public override MethodImplAttributes GetMethodImplementationFlags(); // 0x00285B64 + public override ParameterInfo[] GetParameters(); // 0x00285B6C + public override object Invoke(object obj, BindingFlags invokeAttr, Binder binder, object[] parameters, CultureInfo culture); // 0x00285BCC + public override bool IsDefined(Type attributeType, bool inherit); // 0x00285C7C + public override object[] GetCustomAttributes(bool inherit); // 0x00285D10 + public override object[] GetCustomAttributes(Type attributeType, bool inherit); // 0x00285D9C + public override string ToString(); // 0x00285E30 +} + +// Namespace: System.Reflection.Emit +public struct OpCode // TypeDefIndex: 527 +{ + // Fields + internal byte op1; // 0x08 + internal byte op2; // 0x09 + private byte push; // 0x0A + private byte pop; // 0x0B + private byte size; // 0x0C + private byte type; // 0x0D + private byte args; // 0x0E + private byte flow; // 0x0F + + // Properties + public string Name { get; } // 0x0008C380 + public int Size { get; } // 0x0008C388 + public OpCodeType OpCodeType { get; } // 0x0008C390 + public OperandType OperandType { get; } // 0x0008C398 + public FlowControl FlowControl { get; } // 0x0008C3A0 + public StackBehaviour StackBehaviourPop { get; } // 0x0008C3A8 + public StackBehaviour StackBehaviourPush { get; } // 0x0008C3B0 + public short Value { get; } // 0x0008C3B8 + + // Methods + internal void .ctor(int p, int q); // 0x0008C2FC + public override int GetHashCode(); // 0x0008C338 + public override bool Equals(object obj); // 0x0008C340 + public bool Equals(OpCode obj); // 0x0008C348 + public override string ToString(); // 0x0008C378 + public static bool op_Equality(OpCode a, OpCode b); // 0x0021B570 + public static bool op_Inequality(OpCode a, OpCode b); // 0x00228428 +} + +// Namespace: System.Reflection.Emit +internal class OpCodeNames // TypeDefIndex: 528 +{ + // Fields + internal static readonly string[] names; // 0x00 + + // Methods + public void .ctor(); // 0x00228458 + private static void .cctor(); // 0x00228460 +} + +// Namespace: System.Reflection.Emit +[Serializable] +public enum OpCodeType // TypeDefIndex: 529 +{ + Annotation = 0, + Macro = 1, + Nternal = 2, + Objmodel = 3, + Prefix = 4, + Primitive = 5 +} + +// Namespace: System.Reflection.Emit +public class OpCodes // TypeDefIndex: 530 +{ + // Fields + public static readonly OpCode Nop; // 0x00 + public static readonly OpCode Break; // 0x08 + public static readonly OpCode Ldarg_0; // 0x10 + public static readonly OpCode Ldarg_1; // 0x18 + public static readonly OpCode Ldarg_2; // 0x20 + public static readonly OpCode Ldarg_3; // 0x28 + public static readonly OpCode Ldloc_0; // 0x30 + public static readonly OpCode Ldloc_1; // 0x38 + public static readonly OpCode Ldloc_2; // 0x40 + public static readonly OpCode Ldloc_3; // 0x48 + public static readonly OpCode Stloc_0; // 0x50 + public static readonly OpCode Stloc_1; // 0x58 + public static readonly OpCode Stloc_2; // 0x60 + public static readonly OpCode Stloc_3; // 0x68 + public static readonly OpCode Ldarg_S; // 0x70 + public static readonly OpCode Ldarga_S; // 0x78 + public static readonly OpCode Starg_S; // 0x80 + public static readonly OpCode Ldloc_S; // 0x88 + public static readonly OpCode Ldloca_S; // 0x90 + public static readonly OpCode Stloc_S; // 0x98 + public static readonly OpCode Ldnull; // 0xA0 + public static readonly OpCode Ldc_I4_M1; // 0xA8 + public static readonly OpCode Ldc_I4_0; // 0xB0 + public static readonly OpCode Ldc_I4_1; // 0xB8 + public static readonly OpCode Ldc_I4_2; // 0xC0 + public static readonly OpCode Ldc_I4_3; // 0xC8 + public static readonly OpCode Ldc_I4_4; // 0xD0 + public static readonly OpCode Ldc_I4_5; // 0xD8 + public static readonly OpCode Ldc_I4_6; // 0xE0 + public static readonly OpCode Ldc_I4_7; // 0xE8 + public static readonly OpCode Ldc_I4_8; // 0xF0 + public static readonly OpCode Ldc_I4_S; // 0xF8 + public static readonly OpCode Ldc_I4; // 0x100 + public static readonly OpCode Ldc_I8; // 0x108 + public static readonly OpCode Ldc_R4; // 0x110 + public static readonly OpCode Ldc_R8; // 0x118 + public static readonly OpCode Dup; // 0x120 + public static readonly OpCode Pop; // 0x128 + public static readonly OpCode Jmp; // 0x130 + public static readonly OpCode Call; // 0x138 + public static readonly OpCode Calli; // 0x140 + public static readonly OpCode Ret; // 0x148 + public static readonly OpCode Br_S; // 0x150 + public static readonly OpCode Brfalse_S; // 0x158 + public static readonly OpCode Brtrue_S; // 0x160 + public static readonly OpCode Beq_S; // 0x168 + public static readonly OpCode Bge_S; // 0x170 + public static readonly OpCode Bgt_S; // 0x178 + public static readonly OpCode Ble_S; // 0x180 + public static readonly OpCode Blt_S; // 0x188 + public static readonly OpCode Bne_Un_S; // 0x190 + public static readonly OpCode Bge_Un_S; // 0x198 + public static readonly OpCode Bgt_Un_S; // 0x1A0 + public static readonly OpCode Ble_Un_S; // 0x1A8 + public static readonly OpCode Blt_Un_S; // 0x1B0 + public static readonly OpCode Br; // 0x1B8 + public static readonly OpCode Brfalse; // 0x1C0 + public static readonly OpCode Brtrue; // 0x1C8 + public static readonly OpCode Beq; // 0x1D0 + public static readonly OpCode Bge; // 0x1D8 + public static readonly OpCode Bgt; // 0x1E0 + public static readonly OpCode Ble; // 0x1E8 + public static readonly OpCode Blt; // 0x1F0 + public static readonly OpCode Bne_Un; // 0x1F8 + public static readonly OpCode Bge_Un; // 0x200 + public static readonly OpCode Bgt_Un; // 0x208 + public static readonly OpCode Ble_Un; // 0x210 + public static readonly OpCode Blt_Un; // 0x218 + public static readonly OpCode Switch; // 0x220 + public static readonly OpCode Ldind_I1; // 0x228 + public static readonly OpCode Ldind_U1; // 0x230 + public static readonly OpCode Ldind_I2; // 0x238 + public static readonly OpCode Ldind_U2; // 0x240 + public static readonly OpCode Ldind_I4; // 0x248 + public static readonly OpCode Ldind_U4; // 0x250 + public static readonly OpCode Ldind_I8; // 0x258 + public static readonly OpCode Ldind_I; // 0x260 + public static readonly OpCode Ldind_R4; // 0x268 + public static readonly OpCode Ldind_R8; // 0x270 + public static readonly OpCode Ldind_Ref; // 0x278 + public static readonly OpCode Stind_Ref; // 0x280 + public static readonly OpCode Stind_I1; // 0x288 + public static readonly OpCode Stind_I2; // 0x290 + public static readonly OpCode Stind_I4; // 0x298 + public static readonly OpCode Stind_I8; // 0x2A0 + public static readonly OpCode Stind_R4; // 0x2A8 + public static readonly OpCode Stind_R8; // 0x2B0 + public static readonly OpCode Add; // 0x2B8 + public static readonly OpCode Sub; // 0x2C0 + public static readonly OpCode Mul; // 0x2C8 + public static readonly OpCode Div; // 0x2D0 + public static readonly OpCode Div_Un; // 0x2D8 + public static readonly OpCode Rem; // 0x2E0 + public static readonly OpCode Rem_Un; // 0x2E8 + public static readonly OpCode And; // 0x2F0 + public static readonly OpCode Or; // 0x2F8 + public static readonly OpCode Xor; // 0x300 + public static readonly OpCode Shl; // 0x308 + public static readonly OpCode Shr; // 0x310 + public static readonly OpCode Shr_Un; // 0x318 + public static readonly OpCode Neg; // 0x320 + public static readonly OpCode Not; // 0x328 + public static readonly OpCode Conv_I1; // 0x330 + public static readonly OpCode Conv_I2; // 0x338 + public static readonly OpCode Conv_I4; // 0x340 + public static readonly OpCode Conv_I8; // 0x348 + public static readonly OpCode Conv_R4; // 0x350 + public static readonly OpCode Conv_R8; // 0x358 + public static readonly OpCode Conv_U4; // 0x360 + public static readonly OpCode Conv_U8; // 0x368 + public static readonly OpCode Callvirt; // 0x370 + public static readonly OpCode Cpobj; // 0x378 + public static readonly OpCode Ldobj; // 0x380 + public static readonly OpCode Ldstr; // 0x388 + public static readonly OpCode Newobj; // 0x390 + public static readonly OpCode Castclass; // 0x398 + public static readonly OpCode Isinst; // 0x3A0 + public static readonly OpCode Conv_R_Un; // 0x3A8 + public static readonly OpCode Unbox; // 0x3B0 + public static readonly OpCode Throw; // 0x3B8 + public static readonly OpCode Ldfld; // 0x3C0 + public static readonly OpCode Ldflda; // 0x3C8 + public static readonly OpCode Stfld; // 0x3D0 + public static readonly OpCode Ldsfld; // 0x3D8 + public static readonly OpCode Ldsflda; // 0x3E0 + public static readonly OpCode Stsfld; // 0x3E8 + public static readonly OpCode Stobj; // 0x3F0 + public static readonly OpCode Conv_Ovf_I1_Un; // 0x3F8 + public static readonly OpCode Conv_Ovf_I2_Un; // 0x400 + public static readonly OpCode Conv_Ovf_I4_Un; // 0x408 + public static readonly OpCode Conv_Ovf_I8_Un; // 0x410 + public static readonly OpCode Conv_Ovf_U1_Un; // 0x418 + public static readonly OpCode Conv_Ovf_U2_Un; // 0x420 + public static readonly OpCode Conv_Ovf_U4_Un; // 0x428 + public static readonly OpCode Conv_Ovf_U8_Un; // 0x430 + public static readonly OpCode Conv_Ovf_I_Un; // 0x438 + public static readonly OpCode Conv_Ovf_U_Un; // 0x440 + public static readonly OpCode Box; // 0x448 + public static readonly OpCode Newarr; // 0x450 + public static readonly OpCode Ldlen; // 0x458 + public static readonly OpCode Ldelema; // 0x460 + public static readonly OpCode Ldelem_I1; // 0x468 + public static readonly OpCode Ldelem_U1; // 0x470 + public static readonly OpCode Ldelem_I2; // 0x478 + public static readonly OpCode Ldelem_U2; // 0x480 + public static readonly OpCode Ldelem_I4; // 0x488 + public static readonly OpCode Ldelem_U4; // 0x490 + public static readonly OpCode Ldelem_I8; // 0x498 + public static readonly OpCode Ldelem_I; // 0x4A0 + public static readonly OpCode Ldelem_R4; // 0x4A8 + public static readonly OpCode Ldelem_R8; // 0x4B0 + public static readonly OpCode Ldelem_Ref; // 0x4B8 + public static readonly OpCode Stelem_I; // 0x4C0 + public static readonly OpCode Stelem_I1; // 0x4C8 + public static readonly OpCode Stelem_I2; // 0x4D0 + public static readonly OpCode Stelem_I4; // 0x4D8 + public static readonly OpCode Stelem_I8; // 0x4E0 + public static readonly OpCode Stelem_R4; // 0x4E8 + public static readonly OpCode Stelem_R8; // 0x4F0 + public static readonly OpCode Stelem_Ref; // 0x4F8 + public static readonly OpCode Ldelem; // 0x500 + public static readonly OpCode Stelem; // 0x508 + public static readonly OpCode Unbox_Any; // 0x510 + public static readonly OpCode Conv_Ovf_I1; // 0x518 + public static readonly OpCode Conv_Ovf_U1; // 0x520 + public static readonly OpCode Conv_Ovf_I2; // 0x528 + public static readonly OpCode Conv_Ovf_U2; // 0x530 + public static readonly OpCode Conv_Ovf_I4; // 0x538 + public static readonly OpCode Conv_Ovf_U4; // 0x540 + public static readonly OpCode Conv_Ovf_I8; // 0x548 + public static readonly OpCode Conv_Ovf_U8; // 0x550 + public static readonly OpCode Refanyval; // 0x558 + public static readonly OpCode Ckfinite; // 0x560 + public static readonly OpCode Mkrefany; // 0x568 + public static readonly OpCode Ldtoken; // 0x570 + public static readonly OpCode Conv_U2; // 0x578 + public static readonly OpCode Conv_U1; // 0x580 + public static readonly OpCode Conv_I; // 0x588 + public static readonly OpCode Conv_Ovf_I; // 0x590 + public static readonly OpCode Conv_Ovf_U; // 0x598 + public static readonly OpCode Add_Ovf; // 0x5A0 + public static readonly OpCode Add_Ovf_Un; // 0x5A8 + public static readonly OpCode Mul_Ovf; // 0x5B0 + public static readonly OpCode Mul_Ovf_Un; // 0x5B8 + public static readonly OpCode Sub_Ovf; // 0x5C0 + public static readonly OpCode Sub_Ovf_Un; // 0x5C8 + public static readonly OpCode Endfinally; // 0x5D0 + public static readonly OpCode Leave; // 0x5D8 + public static readonly OpCode Leave_S; // 0x5E0 + public static readonly OpCode Stind_I; // 0x5E8 + public static readonly OpCode Conv_U; // 0x5F0 + public static readonly OpCode Prefix7; // 0x5F8 + public static readonly OpCode Prefix6; // 0x600 + public static readonly OpCode Prefix5; // 0x608 + public static readonly OpCode Prefix4; // 0x610 + public static readonly OpCode Prefix3; // 0x618 + public static readonly OpCode Prefix2; // 0x620 + public static readonly OpCode Prefix1; // 0x628 + public static readonly OpCode Prefixref; // 0x630 + public static readonly OpCode Arglist; // 0x638 + public static readonly OpCode Ceq; // 0x640 + public static readonly OpCode Cgt; // 0x648 + public static readonly OpCode Cgt_Un; // 0x650 + public static readonly OpCode Clt; // 0x658 + public static readonly OpCode Clt_Un; // 0x660 + public static readonly OpCode Ldftn; // 0x668 + public static readonly OpCode Ldvirtftn; // 0x670 + public static readonly OpCode Ldarg; // 0x678 + public static readonly OpCode Ldarga; // 0x680 + public static readonly OpCode Starg; // 0x688 + public static readonly OpCode Ldloc; // 0x690 + public static readonly OpCode Ldloca; // 0x698 + public static readonly OpCode Stloc; // 0x6A0 + public static readonly OpCode Localloc; // 0x6A8 + public static readonly OpCode Endfilter; // 0x6B0 + public static readonly OpCode Unaligned; // 0x6B8 + public static readonly OpCode Volatile; // 0x6C0 + public static readonly OpCode Tailcall; // 0x6C8 + public static readonly OpCode Initobj; // 0x6D0 + public static readonly OpCode Constrained; // 0x6D8 + public static readonly OpCode Cpblk; // 0x6E0 + public static readonly OpCode Initblk; // 0x6E8 + public static readonly OpCode Rethrow; // 0x6F0 + public static readonly OpCode Sizeof; // 0x6F8 + public static readonly OpCode Refanytype; // 0x700 + public static readonly OpCode Readonly; // 0x708 + + // Methods + internal void .ctor(); // 0x0022E4AC + private static void .cctor(); // 0x0022E4B4 + public static bool TakesSingleByteArgument(OpCode inst); // 0x0022F620 +} + +// Namespace: System.Reflection.Emit +[Serializable] +public enum OperandType // TypeDefIndex: 531 +{ + InlineBrTarget = 0, + InlineField = 1, + InlineI = 2, + InlineI8 = 3, + InlineMethod = 4, + InlineNone = 5, + InlinePhi = 6, + InlineR = 7, + InlineSig = 9, + InlineString = 10, + InlineSwitch = 11, + InlineTok = 12, + InlineType = 13, + InlineVar = 14, + ShortInlineBrTarget = 15, + ShortInlineI = 16, + ShortInlineR = 17, + ShortInlineVar = 18 +} + +// Namespace: System.Reflection.Emit +[Serializable] +public enum PEFileKinds // TypeDefIndex: 532 +{ + Dll = 1, + ConsoleApplication = 2, + WindowApplication = 3 +} + +// Namespace: System.Reflection.Emit +[Serializable] +public enum PackingSize // TypeDefIndex: 533 +{ + Unspecified = 0, + Size1 = 1, + Size2 = 2, + Size4 = 4, + Size8 = 8, + Size16 = 16, + Size32 = 32, + Size64 = 64, + Size128 = 128 +} + +// Namespace: System.Reflection.Emit +public class ParameterBuilder : _ParameterBuilder // TypeDefIndex: 534 +{ + // Fields + private MethodBase methodb; // 0x08 + private string name; // 0x0C + private CustomAttributeBuilder[] cattrs; // 0x10 + private UnmanagedMarshal marshal_info; // 0x14 + private ParameterAttributes attrs; // 0x18 + private int position; // 0x1C + private int table_idx; // 0x20 + private object def_value; // 0x24 + + // Properties + public virtual int Attributes { get; } // 0x0022F858 + public bool IsIn { get; } // 0x0022F860 + public bool IsOut { get; } // 0x0022F86C + public bool IsOptional { get; } // 0x0022F878 + public virtual string Name { get; } // 0x0022F884 + public virtual int Position { get; } // 0x0022F88C + + // Methods + internal void .ctor(MethodBase mb, int pos, ParameterAttributes attributes, string strParamName); // 0x0021F884 + private void System.Runtime.InteropServices._ParameterBuilder.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x0022F638 + private void System.Runtime.InteropServices._ParameterBuilder.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x0022F6C0 + private void System.Runtime.InteropServices._ParameterBuilder.GetTypeInfoCount(out uint pcTInfo); // 0x0022F748 + private void System.Runtime.InteropServices._ParameterBuilder.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x0022F7D0 + public virtual ParameterToken GetToken(); // 0x0022F894 + public virtual void SetConstant(object defaultValue); // 0x0022F8A0 + public void SetCustomAttribute(CustomAttributeBuilder customBuilder); // 0x0022F8B4 + public void SetCustomAttribute(ConstructorInfo con, byte[] binaryAttribute); // 0x0022FCE8 + public virtual void SetMarshal(UnmanagedMarshal unmanagedMarshal); // 0x0022FD70 +} + +// Namespace: System.Reflection.Emit +[Serializable] +public struct ParameterToken // TypeDefIndex: 535 +{ + // Fields + internal int tokValue; // 0x08 + public static readonly ParameterToken Empty; // 0x00 + + // Properties + public int Token { get; } // 0x0008C40C + + // Methods + internal void .ctor(int val); // 0x0008C3E0 + private static void .cctor(); // 0x0022FD8C + public override bool Equals(object obj); // 0x0008C3E8 + public bool Equals(ParameterToken obj); // 0x0008C3F0 + public override int GetHashCode(); // 0x0008C404 + public static bool op_Equality(ParameterToken a, ParameterToken b); // 0x0022FEAC + public static bool op_Inequality(ParameterToken a, ParameterToken b); // 0x0022FF44 +} + +// Namespace: System.Reflection.Emit +public sealed class PropertyBuilder : PropertyInfo, _PropertyBuilder // TypeDefIndex: 536 +{ + // Fields + private PropertyAttributes attrs; // 0x08 + private string name; // 0x0C + private Type type; // 0x10 + private Type[] parameters; // 0x14 + private CustomAttributeBuilder[] cattrs; // 0x18 + private object def_value; // 0x1C + private MethodBuilder set_method; // 0x20 + private MethodBuilder get_method; // 0x24 + private int table_idx; // 0x28 + internal TypeBuilder typeb; // 0x2C + private Type[] returnModReq; // 0x30 + private Type[] returnModOpt; // 0x34 + private Type[][] paramModReq; // 0x38 + private Type[][] paramModOpt; // 0x3C + + // Properties + public override PropertyAttributes Attributes { get; } // 0x00230458 + public override bool CanRead { get; } // 0x00230460 + public override bool CanWrite { get; } // 0x00230470 + public override Type DeclaringType { get; } // 0x00230480 + public override string Name { get; } // 0x00230488 + public PropertyToken PropertyToken { get; } // 0x00230490 + public override Type PropertyType { get; } // 0x00230498 + public override Type ReflectedType { get; } // 0x002304A0 + public override Module Module { get; } // 0x00230A48 + + // Methods + internal void .ctor(TypeBuilder tb, string name, PropertyAttributes attributes, Type returnType, Type[] returnModReq, Type[] returnModOpt, Type[] parameterTypes, Type[][] paramModReq, Type[][] paramModOpt); // 0x0023011C + private void System.Runtime.InteropServices._PropertyBuilder.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x00230238 + private void System.Runtime.InteropServices._PropertyBuilder.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x002302C0 + private void System.Runtime.InteropServices._PropertyBuilder.GetTypeInfoCount(out uint pcTInfo); // 0x00230348 + private void System.Runtime.InteropServices._PropertyBuilder.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x002303D0 + public void AddOtherMethod(MethodBuilder mdBuilder); // 0x002304A8 + public override MethodInfo[] GetAccessors(bool nonPublic); // 0x002304AC + public override object[] GetCustomAttributes(bool inherit); // 0x002304B4 + public override object[] GetCustomAttributes(Type attributeType, bool inherit); // 0x0023059C + public override MethodInfo GetGetMethod(bool nonPublic); // 0x00230604 + public override ParameterInfo[] GetIndexParameters(); // 0x0023060C + public override MethodInfo GetSetMethod(bool nonPublic); // 0x00230674 + public override object GetValue(object obj, object[] index); // 0x0023067C + public override object GetValue(object obj, BindingFlags invokeAttr, Binder binder, object[] index, CultureInfo culture); // 0x00230684 + public override bool IsDefined(Type attributeType, bool inherit); // 0x002306EC + public void SetConstant(object defaultValue); // 0x00230754 + public void SetCustomAttribute(CustomAttributeBuilder customBuilder); // 0x0023075C + public void SetCustomAttribute(ConstructorInfo con, byte[] binaryAttribute); // 0x002309A8 + public void SetGetMethod(MethodBuilder mdBuilder); // 0x00230A30 + public void SetSetMethod(MethodBuilder mdBuilder); // 0x00230A38 + public override void SetValue(object obj, object value, object[] index); // 0x00230A40 + public override void SetValue(object obj, object value, BindingFlags invokeAttr, Binder binder, object[] index, CultureInfo culture); // 0x00230A44 + private Exception not_supported(); // 0x0023051C +} + +// Namespace: System.Reflection.Emit +internal class PropertyOnTypeBuilderInst : PropertyInfo // TypeDefIndex: 537 +{ + // Fields + private MonoGenericClass instantiation; // 0x08 + private PropertyInfo prop; // 0x0C + + // Properties + public override PropertyAttributes Attributes { get; } // 0x00272DD4 + public override bool CanRead { get; } // 0x00272E5C + public override bool CanWrite { get; } // 0x00272EE4 + public override Type PropertyType { get; } // 0x00272F6C + public override Type DeclaringType { get; } // 0x00272FD0 + public override Type ReflectedType { get; } // 0x0027302C + public override string Name { get; } // 0x00273034 + + // Methods + internal void .ctor(MonoGenericClass instantiation, PropertyInfo prop); // 0x00272DAC + public override MethodInfo[] GetAccessors(bool nonPublic); // 0x00273068 + public override MethodInfo GetGetMethod(bool nonPublic); // 0x002731F8 + public override ParameterInfo[] GetIndexParameters(); // 0x00273634 + public override MethodInfo GetSetMethod(bool nonPublic); // 0x002736CC + public override string ToString(); // 0x0027377C + public override object GetValue(object obj, BindingFlags invokeAttr, Binder binder, object[] index, CultureInfo culture); // 0x00273844 + public override void SetValue(object obj, object value, BindingFlags invokeAttr, Binder binder, object[] index, CultureInfo culture); // 0x002738CC + public override bool IsDefined(Type attributeType, bool inherit); // 0x00273954 + public override object[] GetCustomAttributes(bool inherit); // 0x002739DC + public override object[] GetCustomAttributes(Type attributeType, bool inherit); // 0x00273A64 +} + +// Namespace: System.Reflection.Emit +[Serializable] +public struct PropertyToken // TypeDefIndex: 538 +{ + // Fields + internal int tokValue; // 0x08 + public static readonly PropertyToken Empty; // 0x00 + + // Properties + public int Token { get; } // 0x0008C804 + + // Methods + internal void .ctor(int val); // 0x0008C7D8 + private static void .cctor(); // 0x00273AF4 + public override bool Equals(object obj); // 0x0008C7E0 + public bool Equals(PropertyToken obj); // 0x0008C7E8 + public override int GetHashCode(); // 0x0008C7FC + public static bool op_Equality(PropertyToken a, PropertyToken b); // 0x00273C14 + public static bool op_Inequality(PropertyToken a, PropertyToken b); // 0x00273CAC +} + +// Namespace: System.Reflection.Emit +public sealed class SignatureHelper : _SignatureHelper // TypeDefIndex: 539 +{ + // Fields + private ModuleBuilder module; // 0x08 + private Type[] arguments; // 0x0C + private SignatureHelperType type; // 0x10 + private Type returnType; // 0x14 + private CallingConventions callConv; // 0x18 + private CallingConvention unmanagedCallConv; // 0x1C + private Type[][] modreqs; // 0x20 + private Type[][] modopts; // 0x24 + + // Methods + internal void .ctor(ModuleBuilder module, SignatureHelperType type); // 0x002744D8 + private void System.Runtime.InteropServices._SignatureHelper.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x00274500 + private void System.Runtime.InteropServices._SignatureHelper.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x00274588 + private void System.Runtime.InteropServices._SignatureHelper.GetTypeInfoCount(out uint pcTInfo); // 0x00274610 + private void System.Runtime.InteropServices._SignatureHelper.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x00274698 + public static SignatureHelper GetFieldSigHelper(Module mod); // 0x00274720 + public static SignatureHelper GetLocalVarSigHelper(Module mod); // 0x00274890 + public static SignatureHelper GetLocalVarSigHelper(); // 0x002749FC + public static SignatureHelper GetMethodSigHelper(CallingConventions callingConvention, Type returnType); // 0x00274A78 + public static SignatureHelper GetMethodSigHelper(CallingConvention unmanagedCallingConvention, Type returnType); // 0x00274EC0 + public static SignatureHelper GetMethodSigHelper(Module mod, CallingConventions callingConvention, Type returnType); // 0x00274EF0 + public static SignatureHelper GetMethodSigHelper(Module mod, CallingConvention unmanagedCallConv, Type returnType); // 0x00274F18 + public static SignatureHelper GetMethodSigHelper(Module mod, Type returnType, Type[] parameterTypes); // 0x00274F44 + public static SignatureHelper GetPropertySigHelper(Module mod, Type returnType, Type[] parameterTypes); // 0x00274F6C + private static int AppendArray(Type[] array, Type t); // 0x00274FF4 + private static void AppendArrayAt(Type[][] array, Type[] t, int pos); // 0x00275198 + private static void ValidateParameterModifiers(string name, Type[] parameter_modifiers); // 0x002752AC + private static void ValidateCustomModifier(int n, Type[][] custom_modifiers, string name); // 0x00275470 + private static Exception MissingFeature(); // 0x002755D8 + public void AddArguments(Type[] arguments, Type[][] requiredCustomModifiers, Type[][] optionalCustomModifiers); // 0x00275674 + public void AddArgument(Type argument, bool pinned); // 0x00275918 + public void AddArgument(Type argument, Type[] requiredCustomModifiers, Type[] optionalCustomModifiers); // 0x002757E0 + public static SignatureHelper GetPropertySigHelper(Module mod, Type returnType, Type[] requiredReturnTypeCustomModifiers, Type[] optionalReturnTypeCustomModifiers, Type[] parameterTypes, Type[][] requiredParameterTypeCustomModifiers, Type[][] optionalParameterTypeCustomModifiers); // 0x002759D8 + public void AddArgument(Type clsArgument); // 0x0027591C + public void AddSentinel(); // 0x00275A60 + private static bool CompareOK(Type[][] one, Type[][] two); // 0x00275AE8 + public override bool Equals(object obj); // 0x00275C84 + public override int GetHashCode(); // 0x00275E68 + internal byte[] get_signature_local(); // 0x00275E70 + internal byte[] get_signature_field(); // 0x00275E74 + public byte[] GetSignature(); // 0x00275E78 + public override string ToString(); // 0x00275F30 + internal static SignatureHelper GetMethodSigHelper(Module mod, CallingConventions callingConvention, CallingConvention unmanagedCallingConvention, Type returnType, Type[] parameters); // 0x00274AA8 +} + +// Namespace: +internal enum SignatureHelperType // TypeDefIndex: 540 +{ + HELPER_FIELD = 0, + HELPER_LOCAL = 1, + HELPER_METHOD = 2, + HELPER_PROPERTY = 3 +} + +// Namespace: System.Reflection.Emit +public struct SignatureToken // TypeDefIndex: 541 +{ + // Fields + internal int tokValue; // 0x08 + public static readonly SignatureToken Empty; // 0x00 + + // Properties + public int Token { get; } // 0x0008C8AC + + // Methods + internal void .ctor(int val); // 0x0008C880 + private static void .cctor(); // 0x00275F94 + public override bool Equals(object obj); // 0x0008C888 + public bool Equals(SignatureToken obj); // 0x0008C890 + public override int GetHashCode(); // 0x0008C8A4 + public static bool op_Equality(SignatureToken a, SignatureToken b); // 0x002760B4 + public static bool op_Inequality(SignatureToken a, SignatureToken b); // 0x0027614C +} + +// Namespace: System.Reflection.Emit +[Serializable] +public enum StackBehaviour // TypeDefIndex: 542 +{ + Pop0 = 0, + Pop1 = 1, + Pop1_pop1 = 2, + Popi = 3, + Popi_pop1 = 4, + Popi_popi = 5, + Popi_popi8 = 6, + Popi_popi_popi = 7, + Popi_popr4 = 8, + Popi_popr8 = 9, + Popref = 10, + Popref_pop1 = 11, + Popref_popi = 12, + Popref_popi_popi = 13, + Popref_popi_popi8 = 14, + Popref_popi_popr4 = 15, + Popref_popi_popr8 = 16, + Popref_popi_popref = 17, + Push0 = 18, + Push1 = 19, + Push1_push1 = 20, + Pushi = 21, + Pushi8 = 22, + Pushr4 = 23, + Pushr8 = 24, + Pushref = 25, + Varpop = 26, + Varpush = 27, + Popref_popi_pop1 = 28 +} + +// Namespace: System.Reflection.Emit +[Serializable] +public struct StringToken // TypeDefIndex: 543 +{ + // Fields + internal int tokValue; // 0x08 + + // Properties + public int Token { get; } // 0x0008C8E0 + + // Methods + internal void .ctor(int val); // 0x0008C8B4 + private static void .cctor(); // 0x002761F0 + public override bool Equals(object obj); // 0x0008C8BC + public bool Equals(StringToken obj); // 0x0008C8C4 + public override int GetHashCode(); // 0x0008C8D8 + public static bool op_Equality(StringToken a, StringToken b); // 0x002762AC + public static bool op_Inequality(StringToken a, StringToken b); // 0x00276344 +} + +// Namespace: System.Reflection.Emit +public sealed class TypeBuilder : Type, _TypeBuilder // TypeDefIndex: 544 +{ + // Fields + public const int UnspecifiedTypeSize = 0; // 0x00 + private string tname; // 0x0C + private string nspace; // 0x10 + private Type parent; // 0x14 + private Type nesting_type; // 0x18 + internal Type[] interfaces; // 0x1C + internal int num_methods; // 0x20 + internal MethodBuilder[] methods; // 0x24 + internal ConstructorBuilder[] ctors; // 0x28 + internal PropertyBuilder[] properties; // 0x2C + internal int num_fields; // 0x30 + internal FieldBuilder[] fields; // 0x34 + internal EventBuilder[] events; // 0x38 + private CustomAttributeBuilder[] cattrs; // 0x3C + internal TypeBuilder[] subtypes; // 0x40 + internal TypeAttributes attrs; // 0x44 + private int table_idx; // 0x48 + private ModuleBuilder pmodule; // 0x4C + private int class_size; // 0x50 + private PackingSize packing_size; // 0x54 + private IntPtr generic_container; // 0x58 + private GenericTypeParameterBuilder[] generic_params; // 0x5C + private RefEmitPermissionSet[] permissions; // 0x60 + private Type created; // 0x64 + private string fullname; // 0x68 + private bool createTypeCalled; // 0x6C + private Type underlying_type; // 0x70 + private static Dictionary`2 <>f__switch$map1E; // 0x00 + + // Properties + public override Assembly Assembly { get; } // 0x00276D5C + public override string AssemblyQualifiedName { get; } // 0x00276D80 + public override Type BaseType { get; } // 0x00276E5C + public override Type DeclaringType { get; } // 0x00276E64 + public override Type UnderlyingSystemType { get; } // 0x00276E6C + public override string FullName { get; } // 0x00276F70 + public override Guid GUID { get; } // 0x00276F78 + public override Module Module { get; } // 0x00277038 + public override string Name { get; } // 0x00277040 + public override string Namespace { get; } // 0x00277048 + public PackingSize PackingSize { get; } // 0x00277050 + public int Size { get; } // 0x00277058 + public override Type ReflectedType { get; } // 0x00277060 + public override RuntimeTypeHandle TypeHandle { get; } // 0x0027C3CC + public TypeToken TypeToken { get; } // 0x0027D544 + internal bool IsCompilerContext { get; } // 0x002769D0 + internal bool is_created { get; } // 0x00276F60 + public override bool ContainsGenericParameters { get; } // 0x0027D9E0 + public override bool IsGenericParameter { get; } // 0x0027D9F0 + public override GenericParameterAttributes GenericParameterAttributes { get; } // 0x0027D9F4 + public override bool IsGenericTypeDefinition { get; } // 0x0027D9FC + public override bool IsGenericType { get; } // 0x0027DA0C + public override int GenericParameterPosition { get; } // 0x0027DA1C + public override MethodBase DeclaringMethod { get; } // 0x0027DA24 + + // Methods + internal void .ctor(ModuleBuilder mb, TypeAttributes attr, int table_idx); // 0x002763E0 + internal void .ctor(ModuleBuilder mb, string name, TypeAttributes attr, Type parent, Type[] interfaces, PackingSize packing_size, int type_size, Type nesting_type); // 0x00276574 + private void System.Runtime.InteropServices._TypeBuilder.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x00276B24 + private void System.Runtime.InteropServices._TypeBuilder.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x00276BAC + private void System.Runtime.InteropServices._TypeBuilder.GetTypeInfoCount(out uint pcTInfo); // 0x00276C34 + private void System.Runtime.InteropServices._TypeBuilder.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x00276CBC + protected override TypeAttributes GetAttributeFlagsImpl(); // 0x00276D44 + private void setup_internal_class(TypeBuilder tb); // 0x00276570 + private void create_internal_class(TypeBuilder tb); // 0x00276D4C + private void setup_generic_class(); // 0x00276D50 + private void create_generic_class(); // 0x00276D54 + private EventInfo get_event_info(EventBuilder eb); // 0x00276D58 + private string GetFullName(); // 0x00276A08 + public void AddDeclarativeSecurity(SecurityAction action, PermissionSet pset); // 0x00277068 + public void AddInterfaceImplementation(Type interfaceType); // 0x0027706C + protected override ConstructorInfo GetConstructorImpl(BindingFlags bindingAttr, Binder binder, CallingConventions callConvention, Type[] types, ParameterModifier[] modifiers); // 0x00277378 + public override bool IsDefined(Type attributeType, bool inherit); // 0x00277848 + public override object[] GetCustomAttributes(bool inherit); // 0x0027793C + public override object[] GetCustomAttributes(Type attributeType, bool inherit); // 0x00277980 + public TypeBuilder DefineNestedType(string name); // 0x002779CC + public TypeBuilder DefineNestedType(string name, TypeAttributes attr); // 0x00277A5C + public TypeBuilder DefineNestedType(string name, TypeAttributes attr, Type parent); // 0x00277AC8 + private TypeBuilder DefineNestedType(string name, TypeAttributes attr, Type parent, Type[] interfaces, PackingSize packSize, int typeSize); // 0x00277AF0 + public TypeBuilder DefineNestedType(string name, TypeAttributes attr, Type parent, Type[] interfaces); // 0x00277A34 + public TypeBuilder DefineNestedType(string name, TypeAttributes attr, Type parent, int typeSize); // 0x00277E04 + public TypeBuilder DefineNestedType(string name, TypeAttributes attr, Type parent, PackingSize packSize); // 0x00277E30 + public ConstructorBuilder DefineConstructor(MethodAttributes attributes, CallingConventions callingConvention, Type[] parameterTypes); // 0x00277E58 + public ConstructorBuilder DefineConstructor(MethodAttributes attributes, CallingConventions callingConvention, Type[] parameterTypes, Type[][] requiredCustomModifiers, Type[][] optionalCustomModifiers); // 0x00277E7C + public ConstructorBuilder DefineDefaultConstructor(MethodAttributes attributes); // 0x00278074 + private void append_method(MethodBuilder mb); // 0x00278370 + public MethodBuilder DefineMethod(string name, MethodAttributes attributes, Type returnType, Type[] parameterTypes); // 0x002784B0 + public MethodBuilder DefineMethod(string name, MethodAttributes attributes, CallingConventions callingConvention, Type returnType, Type[] parameterTypes); // 0x002784E8 + public MethodBuilder DefineMethod(string name, MethodAttributes attributes, CallingConventions callingConvention, Type returnType, Type[] returnTypeRequiredCustomModifiers, Type[] returnTypeOptionalCustomModifiers, Type[] parameterTypes, Type[][] parameterTypeRequiredCustomModifiers, Type[][] parameterTypeOptionalCustomModifiers); // 0x00278524 + public MethodBuilder DefinePInvokeMethod(string name, string dllName, string entryName, MethodAttributes attributes, CallingConventions callingConvention, Type returnType, Type[] parameterTypes, CallingConvention nativeCallConv, CharSet nativeCharSet); // 0x002786D8 + public MethodBuilder DefinePInvokeMethod(string name, string dllName, string entryName, MethodAttributes attributes, CallingConventions callingConvention, Type returnType, Type[] returnTypeRequiredCustomModifiers, Type[] returnTypeOptionalCustomModifiers, Type[] parameterTypes, Type[][] parameterTypeRequiredCustomModifiers, Type[][] parameterTypeOptionalCustomModifiers, CallingConvention nativeCallConv, CharSet nativeCharSet); // 0x00278730 + public MethodBuilder DefinePInvokeMethod(string name, string dllName, MethodAttributes attributes, CallingConventions callingConvention, Type returnType, Type[] parameterTypes, CallingConvention nativeCallConv, CharSet nativeCharSet); // 0x00278930 + public MethodBuilder DefineMethod(string name, MethodAttributes attributes); // 0x00278984 + public MethodBuilder DefineMethod(string name, MethodAttributes attributes, CallingConventions callingConvention); // 0x002789BC + public void DefineMethodOverride(MethodInfo methodInfoBody, MethodInfo methodInfoDeclaration); // 0x002789F0 + public FieldBuilder DefineField(string fieldName, Type type, FieldAttributes attributes); // 0x00278B74 + public FieldBuilder DefineField(string fieldName, Type type, Type[] requiredCustomModifiers, Type[] optionalCustomModifiers, FieldAttributes attributes); // 0x00278B9C + public PropertyBuilder DefineProperty(string name, PropertyAttributes attributes, Type returnType, Type[] parameterTypes); // 0x00278EB4 + public PropertyBuilder DefineProperty(string name, PropertyAttributes attributes, Type returnType, Type[] returnTypeRequiredCustomModifiers, Type[] returnTypeOptionalCustomModifiers, Type[] parameterTypes, Type[][] parameterTypeRequiredCustomModifiers, Type[][] parameterTypeOptionalCustomModifiers); // 0x00278EE8 + public ConstructorBuilder DefineTypeInitializer(); // 0x002791B8 + private Type create_runtime_class(TypeBuilder tb); // 0x002791E8 + private bool is_nested_in(Type t); // 0x002791EC + private bool has_ctor_method(); // 0x0027923C + public Type CreateType(); // 0x002793A8 + internal void GenerateDebugInfo(ISymbolWriter symbolWriter); // 0x0027A004 + public override ConstructorInfo[] GetConstructors(BindingFlags bindingAttr); // 0x0027A2EC + internal ConstructorInfo[] GetConstructorsInternal(BindingFlags bindingAttr); // 0x0027A3C0 + public override Type GetElementType(); // 0x0027A580 + public override EventInfo GetEvent(string name, BindingFlags bindingAttr); // 0x0027A608 + public override EventInfo[] GetEvents(); // 0x0027A654 + public override EventInfo[] GetEvents(BindingFlags bindingAttr); // 0x0027A65C + internal EventInfo[] GetEvents_internal(BindingFlags bindingAttr); // 0x0027A73C + public override FieldInfo GetField(string name, BindingFlags bindingAttr); // 0x0027A960 + public override FieldInfo[] GetFields(BindingFlags bindingAttr); // 0x0027AAEC + public override Type GetInterface(string name, bool ignoreCase); // 0x0027ACDC + public override Type[] GetInterfaces(); // 0x0027AD28 + public override MemberInfo[] GetMember(string name, MemberTypes type, BindingFlags bindingAttr); // 0x0027AE30 + public override MemberInfo[] GetMembers(BindingFlags bindingAttr); // 0x0027AE90 + private MethodInfo[] GetMethodsByName(string name, BindingFlags bindingAttr, bool ignoreCase, Type reflected_type); // 0x0027AED4 + public override MethodInfo[] GetMethods(BindingFlags bindingAttr); // 0x0027B3E0 + protected override MethodInfo GetMethodImpl(string name, BindingFlags bindingAttr, Binder binder, CallingConventions callConvention, Type[] types, ParameterModifier[] modifiers); // 0x0027B404 + public override Type GetNestedType(string name, BindingFlags bindingAttr); // 0x0027B888 + public override Type[] GetNestedTypes(BindingFlags bindingAttr); // 0x0027B9E0 + public override PropertyInfo[] GetProperties(BindingFlags bindingAttr); // 0x0027BC04 + protected override PropertyInfo GetPropertyImpl(string name, BindingFlags bindingAttr, Binder binder, Type returnType, Type[] types, ParameterModifier[] modifiers); // 0x0027BE38 + protected override bool HasElementTypeImpl(); // 0x0027BF20 + public override object InvokeMember(string name, BindingFlags invokeAttr, Binder binder, object target, object[] args, ParameterModifier[] modifiers, CultureInfo culture, string[] namedParameters); // 0x0027BF38 + protected override bool IsArrayImpl(); // 0x0027BFD0 + protected override bool IsByRefImpl(); // 0x0027BFD8 + protected override bool IsCOMObjectImpl(); // 0x0027BFE0 + protected override bool IsPointerImpl(); // 0x0027BFEC + protected override bool IsPrimitiveImpl(); // 0x0027BFF4 + protected override bool IsValueTypeImpl(); // 0x0027BFFC + public override Type MakeArrayType(); // 0x0027C19C + public override Type MakeArrayType(int rank); // 0x0027C214 + public override Type MakeByRefType(); // 0x0027C2DC + public override Type MakeGenericType(Type[] typeArguments); // 0x0027C350 + public override Type MakePointerType(); // 0x0027C358 + internal void SetCharSet(TypeAttributes ta); // 0x0027C408 + public void SetCustomAttribute(CustomAttributeBuilder customBuilder); // 0x0027C410 + public void SetCustomAttribute(ConstructorInfo con, byte[] binaryAttribute); // 0x0027CE8C + public EventBuilder DefineEvent(string name, EventAttributes attributes, Type eventtype); // 0x0027CF14 + public FieldBuilder DefineInitializedData(string name, byte[] data, FieldAttributes attributes); // 0x0027D178 + public FieldBuilder DefineUninitializedData(string name, int size, FieldAttributes attributes); // 0x0027D274 + public void SetParent(Type parent); // 0x00279E94 + internal int get_next_table_index(object obj, int table, bool inc); // 0x0027D550 + public override InterfaceMapping GetInterfaceMap(Type interfaceType); // 0x0027D5A0 + private Exception not_supported(); // 0x0027BEA0 + private void check_not_created(); // 0x002772CC + private void check_created(); // 0x00276FC0 + private void check_name(string argName, string name); // 0x00276880 + public override string ToString(); // 0x0027D670 + public override bool IsAssignableFrom(Type c); // 0x0027D678 + public override bool IsSubclassOf(Type c); // 0x0027D680 + internal bool IsAssignableTo(Type c); // 0x0027D688 + public bool IsCreated(); // 0x0027D878 + public override Type[] GetGenericArguments(); // 0x0027D888 + public override Type GetGenericTypeDefinition(); // 0x0027D930 + public GenericTypeParameterBuilder[] DefineGenericParameters(string[] names); // 0x0027DA2C + public static ConstructorInfo GetConstructor(Type type, ConstructorInfo constructor); // 0x0027DC94 + private static bool IsValidGetMethodType(Type type); // 0x0027DDB4 + public static MethodInfo GetMethod(Type type, MethodInfo method); // 0x002732A8 + public static FieldInfo GetField(Type type, FieldInfo field); // 0x0027DF58 +} + +// Namespace: System.Reflection.Emit +[Serializable] +public struct TypeToken // TypeDefIndex: 545 +{ + // Fields + internal int tokValue; // 0x08 + public static readonly TypeToken Empty; // 0x00 + + // Properties + public int Token { get; } // 0x0008C914 + + // Methods + internal void .ctor(int val); // 0x0008C8E8 + private static void .cctor(); // 0x0027E034 + public override bool Equals(object obj); // 0x0008C8F0 + public bool Equals(TypeToken obj); // 0x0008C8F8 + public override int GetHashCode(); // 0x0008C90C + public static bool op_Equality(TypeToken a, TypeToken b); // 0x0027E154 + public static bool op_Inequality(TypeToken a, TypeToken b); // 0x0027E1EC +} + +// Namespace: System.Reflection.Emit +[Serializable] +public sealed class UnmanagedMarshal // TypeDefIndex: 546 +{ + // Fields + private int count; // 0x08 + private UnmanagedType t; // 0x0C + private UnmanagedType tbase; // 0x10 + private string guid; // 0x14 + private string mcookie; // 0x18 + private string marshaltype; // 0x1C + private Type marshaltyperef; // 0x20 + private int param_num; // 0x24 + private bool has_size; // 0x28 + + // Properties + public UnmanagedType BaseType { get; } // 0x0027E2E4 + public int ElementCount { get; } // 0x0027E388 + public UnmanagedType GetUnmanagedType { get; } // 0x0027E390 + public Guid IIDGuid { get; } // 0x0027E398 + + // Methods + private void .ctor(UnmanagedType maint, int cnt); // 0x0027E288 + private void .ctor(UnmanagedType maint, UnmanagedType elemt); // 0x0027E2B4 + public static UnmanagedMarshal DefineByValArray(int elemCount); // 0x0027E3B8 + public static UnmanagedMarshal DefineByValTStr(int elemCount); // 0x0027E438 + public static UnmanagedMarshal DefineLPArray(UnmanagedType elemType); // 0x0027E4B8 + public static UnmanagedMarshal DefineSafeArray(UnmanagedType elemType); // 0x0027E53C + public static UnmanagedMarshal DefineUnmanagedMarshal(UnmanagedType unmanagedType); // 0x0027E5C0 + public static UnmanagedMarshal DefineCustom(Type typeref, string cookie, string mtype, Guid id); // 0x0027E640 + internal static UnmanagedMarshal DefineLPArrayInternal(UnmanagedType elemType, int sizeConst, int sizeParamIndex); // 0x0027E808 + internal MarshalAsAttribute ToMarshalAsAttribute(); // 0x0027E8D4 +} + +// Namespace: System.Reflection +[Serializable] +public sealed class AmbiguousMatchException : SystemException // TypeDefIndex: 547 +{ + // Methods + public void .ctor(); // 0x001B2360 + public void .ctor(string message); // 0x001B23C8 + public void .ctor(string message, Exception inner); // 0x001B23D0 + internal void .ctor(SerializationInfo info, StreamingContext context); // 0x001B23D8 +} + +// Namespace: System.Reflection +[Serializable] +public class Assembly : ICustomAttributeProvider, _Assembly // TypeDefIndex: 548 +{ + // Fields + private IntPtr _mono_assembly; // 0x08 + private ResolveEventHolder resolve_event_holder; // 0x0C + private Evidence _evidence; // 0x10 + internal PermissionSet _minimum; // 0x14 + internal PermissionSet _optional; // 0x18 + internal PermissionSet _refuse; // 0x1C + private PermissionSet _granted; // 0x20 + private PermissionSet _denied; // 0x24 + private bool fromByteArray; // 0x28 + private string assemblyName; // 0x2C + + // Properties + public virtual string CodeBase { get; } // 0x001B25F4 + public virtual string EscapedCodeBase { get; } // 0x001B25FC + public virtual string FullName { get; } // 0x001B2604 + public virtual MethodInfo EntryPoint { get; } // 0x001B2614 + public virtual Evidence Evidence { get; } // 0x001B2618 + public bool GlobalAssemblyCache { get; } // 0x001B26AC + internal bool FromByteArray { set; } // 0x001B26B0 + public virtual string Location { get; } // 0x001B26B8 + public virtual string ImageRuntimeVersion { get; } // 0x001B2760 + public long HostContext { get; } // 0x001B4E74 + public Module ManifestModule { get; } // 0x001B4E80 + public virtual bool ReflectionOnly { get; } // 0x001B4E98 + internal PermissionSet GrantedPermissionSet { get; } // 0x001B5314 + internal PermissionSet DeniedPermissionSet { get; } // 0x001B552C + + // Events + public event ModuleResolveEventHandler ModuleResolve { + add; // 0x001B2460 + remove; // 0x001B2520 + } + + // Methods + internal void .ctor(); // 0x001B23F8 + private string get_code_base(bool escaped); // 0x001B25E0 + private string get_fullname(); // 0x001B25E4 + private string get_location(); // 0x001B25E8 + private string InternalImageRuntimeVersion(); // 0x001B25EC + private string GetCodeBase(bool escaped); // 0x001B25F0 + internal Evidence UnprotectedGetEvidence(); // 0x001B261C + private bool get_global_assembly_cache(); // 0x001B26A8 + public virtual void GetObjectData(SerializationInfo info, StreamingContext context); // 0x001B2764 + public virtual bool IsDefined(Type attributeType, bool inherit); // 0x001B2840 + public virtual object[] GetCustomAttributes(bool inherit); // 0x001B28D4 + public virtual object[] GetCustomAttributes(Type attributeType, bool inherit); // 0x001B2960 + private object GetFilesInternal(string name, bool getResourceModules); // 0x001B29F4 + public virtual FileStream[] GetFiles(); // 0x001B29F8 + public virtual FileStream[] GetFiles(bool getResourceModules); // 0x001B2A0C + public virtual FileStream GetFile(string name); // 0x001B2DC0 + internal IntPtr GetManifestResourceInternal(string name, out int size, out Module module); // 0x001B2F4C + public virtual Stream GetManifestResourceStream(string name); // 0x001B2F50 + public virtual Stream GetManifestResourceStream(Type type, string name); // 0x001B335C + internal virtual Type[] GetTypes(bool exportedOnly); // 0x001B34AC + public virtual Type[] GetTypes(); // 0x001B34B0 + public virtual Type[] GetExportedTypes(); // 0x001B34C4 + public virtual Type GetType(string name, bool throwOnError); // 0x001B34D8 + public virtual Type GetType(string name); // 0x001B361C + internal Type InternalGetType(Module module, string name, bool throwOnError, bool ignoreCase); // 0x001B363C + public Type GetType(string name, bool throwOnError, bool ignoreCase); // 0x001B34F4 + internal static void InternalGetAssemblyName(string assemblyFile, AssemblyName aname); // 0x001B365C + private static void FillName(Assembly ass, AssemblyName aname); // 0x001B3660 + public virtual AssemblyName GetName(bool copiedName); // 0x001B3664 + public virtual AssemblyName GetName(); // 0x001B370C + internal virtual AssemblyName UnprotectedGetName(); // 0x001B3720 + public override string ToString(); // 0x001B37A8 + public static string CreateQualifiedName(string assemblyName, string typeName); // 0x001B37D0 + public static Assembly GetAssembly(Type type); // 0x001B386C + public static Assembly GetEntryAssembly(); // 0x001B392C + public Assembly GetSatelliteAssembly(CultureInfo culture); // 0x001B3930 + public Assembly GetSatelliteAssembly(CultureInfo culture, Version version); // 0x001B3CA8 + internal Assembly GetSatelliteAssemblyNoThrow(CultureInfo culture, Version version); // 0x001B3CC4 + private Assembly GetSatelliteAssembly(CultureInfo culture, Version version, bool throwOnError); // 0x001B3950 + private static Assembly LoadFrom(string assemblyFile, bool refonly); // 0x001B3D98 + public static Assembly LoadFrom(string assemblyFile); // 0x001B3D90 + public static Assembly LoadFrom(string assemblyFile, Evidence securityEvidence); // 0x001B3D9C + public static Assembly LoadFrom(string assemblyFile, Evidence securityEvidence, byte[] hashValue, AssemblyHashAlgorithm hashAlgorithm); // 0x001B3DA4 + public static Assembly LoadFile(string path, Evidence securityEvidence); // 0x001B3F28 + public static Assembly LoadFile(string path); // 0x001B408C + public static Assembly Load(string assemblyString); // 0x001B4090 + public static Assembly Load(string assemblyString, Evidence assemblySecurity); // 0x001B40CC + public static Assembly Load(AssemblyName assemblyRef); // 0x001B4110 + public static Assembly Load(AssemblyName assemblyRef, Evidence assemblySecurity); // 0x001B414C + public static Assembly Load(byte[] rawAssembly); // 0x001B4190 + public static Assembly Load(byte[] rawAssembly, byte[] rawSymbolStore); // 0x001B41CC + public static Assembly Load(byte[] rawAssembly, byte[] rawSymbolStore, Evidence securityEvidence); // 0x001B4210 + public static Assembly ReflectionOnlyLoad(byte[] rawAssembly); // 0x001B4268 + public static Assembly ReflectionOnlyLoad(string assemblyString); // 0x001B42BC + public static Assembly ReflectionOnlyLoadFrom(string assemblyFile); // 0x001B430C + public static Assembly LoadWithPartialName(string partialName); // 0x001B43C4 + public Module LoadModule(string moduleName, byte[] rawModule); // 0x001B43D8 + public Module LoadModule(string moduleName, byte[] rawModule, byte[] rawSymbolStore); // 0x001B4460 + private static Assembly load_with_partial_name(string name, Evidence e); // 0x001B44E8 + public static Assembly LoadWithPartialName(string partialName, Evidence securityEvidence); // 0x001B43D0 + internal static Assembly LoadWithPartialName(string partialName, Evidence securityEvidence, bool oldBehavior); // 0x001B44EC + public object CreateInstance(string typeName); // 0x001B45D0 + public object CreateInstance(string typeName, bool ignoreCase); // 0x001B45D8 + public object CreateInstance(string typeName, bool ignoreCase, BindingFlags bindingAttr, Binder binder, object[] args, CultureInfo culture, object[] activationAttributes); // 0x001B4740 + public Module[] GetLoadedModules(); // 0x001B48C4 + public Module[] GetLoadedModules(bool getResourceModules); // 0x001B48CC + public Module[] GetModules(); // 0x001B4AB8 + public Module GetModule(string name); // 0x001B4AC0 + internal virtual Module[] GetModulesInternal(); // 0x001B4CC4 + public Module[] GetModules(bool getResourceModules); // 0x001B48D0 + internal string[] GetNamespaces(); // 0x001B4CC8 + public virtual string[] GetManifestResourceNames(); // 0x001B4CCC + public static Assembly GetExecutingAssembly(); // 0x001B4CD0 + public static Assembly GetCallingAssembly(); // 0x001B4D2C + public AssemblyName[] GetReferencedAssemblies(); // 0x001B4D30 + private bool GetManifestResourceInfoInternal(string name, ManifestResourceInfo info); // 0x001B4D34 + public virtual ManifestResourceInfo GetManifestResourceInfo(string resourceName); // 0x001B4D38 + internal static int MonoDebugger_GetMethodToken(MethodBase method); // 0x001B4E70 + internal virtual Module GetManifestModule(); // 0x001B4E90 + internal Module GetManifestModuleInternal(); // 0x001B4E94 + internal void Resolve(); // 0x001B4E9C + internal static bool LoadPermissions(Assembly a, IntPtr minimum, int minLength, IntPtr optional, int optLength, IntPtr refused, int refLength); // 0x001B5744 + private void LoadAssemblyPermissions(); // 0x001B5060 + virtual Type System.Runtime.InteropServices._Assembly.GetType(); // 0x001B5748 +} + +// Namespace: +internal class ResolveEventHolder // TypeDefIndex: 549 +{ + // Fields + private ModuleResolveEventHandler ModuleResolve; // 0x08 + + // Events + public event ModuleResolveEventHandler ModuleResolve { + add; // 0x001B2490 + remove; // 0x001B2550 + } + + // Methods + public void .ctor(); // 0x001B245C +} + +// Namespace: +private class ResourceCloseHandler // TypeDefIndex: 550 +{ + // Fields + private Module module; // 0x08 + + // Methods + public void .ctor(Module module); // 0x001B3354 + public void OnClose(object sender, EventArgs e); // 0x001B574C +} + +// Namespace: System.Reflection +public sealed class AssemblyAlgorithmIdAttribute : Attribute // TypeDefIndex: 551 +{ + // Fields + private uint id; // 0x08 + + // Properties + public uint AlgorithmId { get; } // 0x001B5798 + + // Methods + public void .ctor(AssemblyHashAlgorithm algorithmId); // 0x001B5758 + public void .ctor(uint algorithmId); // 0x001B5778 +} + +// Namespace: System.Reflection +public sealed class AssemblyCompanyAttribute : Attribute // TypeDefIndex: 552 +{ + // Fields + private string name; // 0x08 + + // Properties + public string Company { get; } // 0x001B57C0 + + // Methods + public void .ctor(string company); // 0x001B57A0 +} + +// Namespace: System.Reflection +public sealed class AssemblyConfigurationAttribute : Attribute // TypeDefIndex: 553 +{ + // Fields + private string name; // 0x08 + + // Properties + public string Configuration { get; } // 0x001B57E8 + + // Methods + public void .ctor(string configuration); // 0x001B57C8 +} + +// Namespace: System.Reflection +public sealed class AssemblyCopyrightAttribute : Attribute // TypeDefIndex: 554 +{ + // Fields + private string name; // 0x08 + + // Properties + public string Copyright { get; } // 0x001B5810 + + // Methods + public void .ctor(string copyright); // 0x001B57F0 +} + +// Namespace: System.Reflection +public sealed class AssemblyDefaultAliasAttribute : Attribute // TypeDefIndex: 555 +{ + // Fields + private string name; // 0x08 + + // Properties + public string DefaultAlias { get; } // 0x001B5860 + + // Methods + public void .ctor(string defaultAlias); // 0x001B5840 +} + +// Namespace: System.Reflection +public sealed class AssemblyDelaySignAttribute : Attribute // TypeDefIndex: 556 +{ + // Fields + private bool delay; // 0x08 + + // Properties + public bool DelaySign { get; } // 0x001B5888 + + // Methods + public void .ctor(bool delaySign); // 0x001B5868 +} + +// Namespace: System.Reflection +public sealed class AssemblyDescriptionAttribute : Attribute // TypeDefIndex: 557 +{ + // Fields + private string name; // 0x08 + + // Properties + public string Description { get; } // 0x001B58B0 + + // Methods + public void .ctor(string description); // 0x001B5890 +} + +// Namespace: System.Reflection +public sealed class AssemblyFileVersionAttribute : Attribute // TypeDefIndex: 558 +{ + // Fields + private string name; // 0x08 + + // Properties + public string Version { get; } // 0x001B5974 + + // Methods + public void .ctor(string version); // 0x001B58B8 +} + +// Namespace: System.Reflection +public sealed class AssemblyFlagsAttribute : Attribute // TypeDefIndex: 559 +{ + // Fields + private uint flags; // 0x08 + + // Properties + public uint Flags { get; } // 0x001B59DC + public int AssemblyFlags { get; } // 0x001B59E4 + + // Methods + public void .ctor(uint flags); // 0x001B597C + public void .ctor(int assemblyFlags); // 0x001B599C + public void .ctor(AssemblyNameFlags assemblyFlags); // 0x001B59BC +} + +// Namespace: System.Reflection +public sealed class AssemblyInformationalVersionAttribute : Attribute // TypeDefIndex: 560 +{ + // Fields + private string name; // 0x08 + + // Properties + public string InformationalVersion { get; } // 0x001B5A0C + + // Methods + public void .ctor(string informationalVersion); // 0x001B59EC +} + +// Namespace: System.Reflection +public sealed class AssemblyKeyFileAttribute : Attribute // TypeDefIndex: 561 +{ + // Fields + private string name; // 0x08 + + // Properties + public string KeyFile { get; } // 0x001B5A34 + + // Methods + public void .ctor(string keyFile); // 0x001B5A14 +} + +// Namespace: System.Reflection +public sealed class AssemblyKeyNameAttribute : Attribute // TypeDefIndex: 562 +{ + // Fields + private string name; // 0x08 + + // Properties + public string KeyName { get; } // 0x001B5A5C + + // Methods + public void .ctor(string keyName); // 0x001B5A3C +} + +// Namespace: System.Reflection +[Serializable] +public sealed class AssemblyName : ICloneable, ISerializable, _AssemblyName, IDeserializationCallback // TypeDefIndex: 563 +{ + // Fields + private string name; // 0x08 + private string codebase; // 0x0C + private int major; // 0x10 + private int minor; // 0x14 + private int build; // 0x18 + private int revision; // 0x1C + private CultureInfo cultureinfo; // 0x20 + private AssemblyNameFlags flags; // 0x24 + private AssemblyHashAlgorithm hashalg; // 0x28 + private StrongNameKeyPair keypair; // 0x2C + private byte[] publicKey; // 0x30 + private byte[] keyToken; // 0x34 + private AssemblyVersionCompatibility versioncompat; // 0x38 + private Version version; // 0x3C + private ProcessorArchitecture processor_architecture; // 0x40 + + // Properties + public ProcessorArchitecture ProcessorArchitecture { get; set; } // 0x001B6358 0x001B6360 + public string Name { get; set; } // 0x001B6368 0x001B6370 + public string CodeBase { get; set; } // 0x001B6378 0x001B6380 + public string EscapedCodeBase { get; } // 0x001B6388 + public CultureInfo CultureInfo { get; set; } // 0x001B643C 0x001B6444 + public AssemblyNameFlags Flags { get; set; } // 0x001B644C 0x001B6454 + public string FullName { get; } // 0x001B645C + public AssemblyHashAlgorithm HashAlgorithm { get; set; } // 0x001B6950 0x001B6958 + public StrongNameKeyPair KeyPair { get; set; } // 0x001B6960 0x001B6968 + public Version Version { get; set; } // 0x001B6970 0x001B3CE0 + public AssemblyVersionCompatibility VersionCompatibility { get; set; } // 0x001B6978 0x001B6980 + private bool IsPublicKeyValid { get; } // 0x001B6ABC + + // Methods + public void .ctor(); // 0x001B379C + public void .ctor(string assemblyName); // 0x001B5A64 + internal void .ctor(SerializationInfo si, StreamingContext sc); // 0x001B5BBC + private void System.Runtime.InteropServices._AssemblyName.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x001B6138 + private void System.Runtime.InteropServices._AssemblyName.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x001B61C0 + private void System.Runtime.InteropServices._AssemblyName.GetTypeInfoCount(out uint pcTInfo); // 0x001B6248 + private void System.Runtime.InteropServices._AssemblyName.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x001B62D0 + private static bool ParseName(AssemblyName aname, string assemblyName); // 0x001B5BB8 + public override string ToString(); // 0x001B6988 + public byte[] GetPublicKey(); // 0x001B69AC + public byte[] GetPublicKeyToken(); // 0x001B69B4 + private byte[] InternalGetPublicKeyToken(); // 0x001B684C + private byte[] ComputePublicKeyToken(); // 0x001B6D70 + public static bool ReferenceMatchesDefinition(AssemblyName reference, AssemblyName definition); // 0x001B6E64 + public void SetPublicKey(byte[] publicKey); // 0x001B6FDC + public void SetPublicKeyToken(byte[] publicKeyToken); // 0x001B6FF8 + public void GetObjectData(SerializationInfo info, StreamingContext context); // 0x001B7000 + public object Clone(); // 0x001B72D4 + public void OnDeserialization(object sender); // 0x001B74CC + public static AssemblyName GetAssemblyName(string assemblyFile); // 0x001B74D4 +} + +// Namespace: System.Reflection +[Serializable] +public enum AssemblyNameFlags // TypeDefIndex: 564 +{ + None = 0, + PublicKey = 1, + Retargetable = 256, + EnableJITcompileOptimizer = 16384, + EnableJITcompileTracking = 32768 +} + +// Namespace: System.Reflection +public class AssemblyNameProxy : MarshalByRefObject // TypeDefIndex: 565 +{ + // Methods + public void .ctor(); // 0x001B75E4 + public AssemblyName GetAssemblyName(string assemblyFile); // 0x001B75EC +} + +// Namespace: System.Reflection +public sealed class AssemblyProductAttribute : Attribute // TypeDefIndex: 566 +{ + // Fields + private string name; // 0x08 + + // Properties + public string Product { get; } // 0x001B7614 + + // Methods + public void .ctor(string product); // 0x001B75F4 +} + +// Namespace: System.Reflection +public sealed class AssemblyTitleAttribute : Attribute // TypeDefIndex: 567 +{ + // Fields + private string name; // 0x08 + + // Properties + public string Title { get; } // 0x001B763C + + // Methods + public void .ctor(string title); // 0x001B761C +} + +// Namespace: System.Reflection +public sealed class AssemblyTrademarkAttribute : Attribute // TypeDefIndex: 568 +{ + // Fields + private string name; // 0x08 + + // Properties + public string Trademark { get; } // 0x001B7664 + + // Methods + public void .ctor(string trademark); // 0x001B7644 +} + +// Namespace: System.Reflection +[Serializable] +public abstract class Binder // TypeDefIndex: 569 +{ + // Fields + private static Binder default_binder; // 0x00 + + // Properties + internal static Binder DefaultBinder { get; } // 0x001B778C + + // Methods + protected void .ctor(); // 0x001B7694 + private static void .cctor(); // 0x001B7698 + public abstract FieldInfo BindToField(BindingFlags bindingAttr, FieldInfo[] match, object value, CultureInfo culture); + public abstract MethodBase BindToMethod(BindingFlags bindingAttr, MethodBase[] match, object[] args, ParameterModifier[] modifiers, CultureInfo culture, string[] names, out object state); + public abstract object ChangeType(object value, Type type, CultureInfo culture); + public abstract void ReorderArgumentArray(object[] args, object state); + public abstract MethodBase SelectMethod(BindingFlags bindingAttr, MethodBase[] match, Type[] types, ParameterModifier[] modifiers); + public abstract PropertyInfo SelectProperty(BindingFlags bindingAttr, PropertyInfo[] match, Type returnType, Type[] indexes, ParameterModifier[] modifiers); + internal static bool ConvertArgs(Binder binder, object[] args, ParameterInfo[] pinfo, CultureInfo culture); // 0x001B7818 + internal static int GetDerivedLevel(Type type); // 0x001B7A84 + internal static MethodBase FindMostDerivedMatch(MethodBase[] match); // 0x001B7AE8 +} + +// Namespace: +internal sealed class Default : Binder // TypeDefIndex: 570 +{ + // Methods + public void .ctor(); // 0x001B7714 + public override FieldInfo BindToField(BindingFlags bindingAttr, FieldInfo[] match, object value, CultureInfo culture); // 0x001B7E2C + public override MethodBase BindToMethod(BindingFlags bindingAttr, MethodBase[] match, object[] args, ParameterModifier[] modifiers, CultureInfo culture, string[] names, out object state); // 0x001B87F8 + private void ReorderParameters(string[] names, object[] args, MethodBase selected); // 0x001B8FCC + private static bool IsArrayAssignable(Type object_type, Type target_type); // 0x001B92B0 + public override object ChangeType(object value, Type type, CultureInfo culture); // 0x001B9388 + public override void ReorderArgumentArray(object[] args, object state); // 0x001B97D4 + private static bool check_type(Type from, Type to); // 0x001B7F78 + private static bool check_arguments(Type[] types, ParameterInfo[] args, bool allowByRefMatch); // 0x001B97D8 + public override MethodBase SelectMethod(BindingFlags bindingAttr, MethodBase[] match, Type[] types, ParameterModifier[] modifiers); // 0x001B9994 + private MethodBase SelectMethod(BindingFlags bindingAttr, MethodBase[] match, Type[] types, ParameterModifier[] modifiers, bool allowByRefMatch); // 0x001B8A44 + private MethodBase GetBetterMethod(MethodBase m1, MethodBase m2, Type[] types); // 0x001B99B4 + private int CompareCloserType(Type t1, Type t2); // 0x001B9DB0 + public override PropertyInfo SelectProperty(BindingFlags bindingAttr, PropertyInfo[] match, Type returnType, Type[] indexes, ParameterModifier[] modifiers); // 0x001BA030 + private static int check_arguments_with_score(Type[] types, ParameterInfo[] args); // 0x001BA304 + private static int check_type_with_score(Type from, Type to); // 0x001BA3F4 +} + +// Namespace: System.Reflection +[Serializable] +public enum BindingFlags // TypeDefIndex: 571 +{ + Default = 0, + IgnoreCase = 1, + DeclaredOnly = 2, + Instance = 4, + Static = 8, + Public = 16, + NonPublic = 32, + FlattenHierarchy = 64, + InvokeMethod = 256, + CreateInstance = 512, + GetField = 1024, + SetField = 2048, + GetProperty = 4096, + SetProperty = 8192, + PutDispProperty = 16384, + PutRefDispProperty = 32768, + ExactBinding = 65536, + SuppressChangeType = 131072, + OptionalParamBinding = 262144, + IgnoreReturn = 16777216 +} + +// Namespace: System.Reflection +[Serializable] +public enum CallingConventions // TypeDefIndex: 572 +{ + Standard = 1, + VarArgs = 2, + Any = 3, + HasThis = 32, + ExplicitThis = 64 +} + +// Namespace: System.Reflection +[Serializable] +public abstract class ConstructorInfo : MethodBase, _ConstructorInfo // TypeDefIndex: 573 +{ + // Fields + public static readonly string ConstructorName; // 0x00 + public static readonly string TypeConstructorName; // 0x04 + + // Properties + public override MemberTypes MemberType { get; } // 0x001BAC34 + + // Methods + protected void .ctor(); // 0x001BA864 + private static void .cctor(); // 0x001BA86C + private void System.Runtime.InteropServices._ConstructorInfo.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x001BA8FC + private void System.Runtime.InteropServices._ConstructorInfo.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x001BA984 + private void System.Runtime.InteropServices._ConstructorInfo.GetTypeInfoCount(out uint pcTInfo); // 0x001BAA0C + private void System.Runtime.InteropServices._ConstructorInfo.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x001BAA94 + private object System.Runtime.InteropServices._ConstructorInfo.Invoke_2(object obj, BindingFlags invokeAttr, Binder binder, object[] parameters, CultureInfo culture); // 0x001BAB1C + private object System.Runtime.InteropServices._ConstructorInfo.Invoke_3(object obj, object[] parameters); // 0x001BAB54 + private object System.Runtime.InteropServices._ConstructorInfo.Invoke_4(BindingFlags invokeAttr, Binder binder, object[] parameters, CultureInfo culture); // 0x001BAB5C + private object System.Runtime.InteropServices._ConstructorInfo.Invoke_5(object[] parameters); // 0x001BAB88 + public object Invoke(object[] parameters); // 0x001BAB8C + public abstract object Invoke(BindingFlags invokeAttr, Binder binder, object[] parameters, CultureInfo culture); + virtual Type System.Runtime.InteropServices._ConstructorInfo.GetType(); // 0x001BAC3C +} + +// Namespace: System.Reflection +[Serializable] +public sealed class CustomAttributeData // TypeDefIndex: 574 +{ + // Fields + private ConstructorInfo ctorInfo; // 0x08 + private IList`1 ctorArgs; // 0x0C + private IList`1 namedArgs; // 0x10 + + // Properties + public ConstructorInfo Constructor { get; } // 0x001BAD44 + public IList`1 ConstructorArguments { get; } // 0x001BAD4C + public IList`1 NamedArguments { get; } // 0x001BAD54 + + // Methods + internal void .ctor(ConstructorInfo ctorInfo, object[] ctorArgs, object[] namedArgs); // 0x001BAC40 + public static IList`1 GetCustomAttributes(Assembly target); // 0x001BAD5C + public static IList`1 GetCustomAttributes(MemberInfo target); // 0x001BADE0 + public static IList`1 GetCustomAttributes(Module target); // 0x001BAE64 + public static IList`1 GetCustomAttributes(ParameterInfo target); // 0x001BAEE8 + public override string ToString(); // 0x001BAF6C + private static T[] UnboxValues(object[] values); + public override bool Equals(object obj); // 0x001BBA3C + public override int GetHashCode(); // 0x001BC444 +} + +// Namespace: System.Reflection +[Serializable] +public class CustomAttributeFormatException : FormatException // TypeDefIndex: 575 +{ + // Methods + public void .ctor(); // 0x001BC84C + public void .ctor(string message); // 0x001BC8C0 + public void .ctor(string message, Exception inner); // 0x001BC8C8 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x001BC8D0 +} + +// Namespace: System.Reflection +[Serializable] +public struct CustomAttributeNamedArgument // TypeDefIndex: 576 +{ + // Fields + private CustomAttributeTypedArgument typedArgument; // 0x08 + private MemberInfo memberInfo; // 0x10 + + // Properties + public MemberInfo MemberInfo { get; } // 0x0008B38C + public CustomAttributeTypedArgument TypedValue { get; } // 0x0008B394 + + // Methods + internal void .ctor(MemberInfo memberInfo, object typedArgument); // 0x0008B384 + public override string ToString(); // 0x0008B3A8 + public override bool Equals(object obj); // 0x0008B3B0 + public override int GetHashCode(); // 0x0008B3B8 + public static bool op_Equality(CustomAttributeNamedArgument left, CustomAttributeNamedArgument right); // 0x001BC9A8 + public static bool op_Inequality(CustomAttributeNamedArgument left, CustomAttributeNamedArgument right); // 0x001BCA38 +} + +// Namespace: System.Reflection +[Serializable] +public struct CustomAttributeTypedArgument // TypeDefIndex: 577 +{ + // Fields + private Type argumentType; // 0x08 + private object value; // 0x0C + + // Properties + public Type ArgumentType { get; } // 0x0008B424 + public object Value { get; } // 0x0008B42C + + // Methods + internal void .ctor(Type argumentType, object value); // 0x0008B41C + public override string ToString(); // 0x0008B434 + public override bool Equals(object obj); // 0x0008B43C + public override int GetHashCode(); // 0x0008B444 + public static bool op_Equality(CustomAttributeTypedArgument left, CustomAttributeTypedArgument right); // 0x001BCCC0 + public static bool op_Inequality(CustomAttributeTypedArgument left, CustomAttributeTypedArgument right); // 0x001BCD4C +} + +// Namespace: System.Reflection +[Serializable] +public enum EventAttributes // TypeDefIndex: 578 +{ + None = 0, + SpecialName = 512, + ReservedMask = 1024, + RTSpecialName = 1024 +} + +// Namespace: System.Reflection +[Serializable] +public abstract class EventInfo : MemberInfo, _EventInfo // TypeDefIndex: 579 +{ + // Fields + private AddEventAdapter cached_add_event; // 0x08 + + // Properties + public abstract EventAttributes Attributes { get; } + public Type EventHandlerType { get; } // 0x0027EC0C + public bool IsMulticast { get; } // 0x0027ECA4 + public bool IsSpecialName { get; } // 0x0027ECAC + public override MemberTypes MemberType { get; } // 0x0027ECCC + + // Methods + protected void .ctor(); // 0x0027E9DC + private void System.Runtime.InteropServices._EventInfo.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x0027E9EC + private void System.Runtime.InteropServices._EventInfo.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x0027EA74 + private void System.Runtime.InteropServices._EventInfo.GetTypeInfoCount(out uint pcTInfo); // 0x0027EAFC + private void System.Runtime.InteropServices._EventInfo.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x0027EB84 + public void AddEventHandler(object target, Delegate handler); // 0x0027ECD4 + public MethodInfo GetAddMethod(); // 0x0027EF4C + public abstract MethodInfo GetAddMethod(bool nonPublic); + public MethodInfo GetRaiseMethod(); // 0x0027F864 + public abstract MethodInfo GetRaiseMethod(bool nonPublic); + public MethodInfo GetRemoveMethod(); // 0x0027F878 + public abstract MethodInfo GetRemoveMethod(bool nonPublic); + public virtual MethodInfo[] GetOtherMethods(bool nonPublic); // 0x0027F88C + public MethodInfo[] GetOtherMethods(); // 0x0027F8EC + public void RemoveEventHandler(object target, Delegate handler); // 0x0027F900 + private static void AddEventFrame(AddEvent`2 addEvent, object obj, object dele); + private static void StaticAddEventAdapterFrame(StaticAddEvent`1 addEvent, object obj, object dele); + private static AddEventAdapter CreateAddEventDelegate(MethodInfo method); // 0x0027EF98 + virtual Type System.Runtime.InteropServices._EventInfo.GetType(); // 0x0027FA84 +} + +// Namespace: +private delegate void AddEventAdapter(object _this, Delegate dele); // TypeDefIndex: 580; 0x0027F4B8 + +// Namespace: +private delegate void AddEvent`2(T _this, T dele); // TypeDefIndex: 581; 0x00000000 + +// Namespace: +private delegate void StaticAddEvent`1(T dele); // TypeDefIndex: 582; 0x00000000 + +// Namespace: System.Reflection +public sealed class ExceptionHandlingClause // TypeDefIndex: 583 +{ + // Fields + internal Type catch_type; // 0x08 + internal int filter_offset; // 0x0C + internal ExceptionHandlingClauseOptions flags; // 0x10 + internal int try_offset; // 0x14 + internal int try_length; // 0x18 + internal int handler_offset; // 0x1C + internal int handler_length; // 0x20 + + // Properties + public Type CatchType { get; } // 0x0027FAEC + public int FilterOffset { get; } // 0x0027FAF4 + public ExceptionHandlingClauseOptions Flags { get; } // 0x0027FAFC + public int HandlerLength { get; } // 0x0027FB04 + public int HandlerOffset { get; } // 0x0027FB0C + public int TryLength { get; } // 0x0027FB14 + public int TryOffset { get; } // 0x0027FB1C + + // Methods + internal void .ctor(); // 0x0027FAE4 + public override string ToString(); // 0x0027FB24 +} + +// Namespace: System.Reflection +public enum ExceptionHandlingClauseOptions // TypeDefIndex: 584 +{ + Clause = 0, + Filter = 1, + Finally = 2, + Fault = 4 +} + +// Namespace: System.Reflection +[Serializable] +public enum FieldAttributes // TypeDefIndex: 585 +{ + PrivateScope = 0, + Private = 1, + FamANDAssem = 2, + Assembly = 3, + Family = 4, + FamORAssem = 5, + Public = 6, + FieldAccessMask = 7, + Static = 16, + InitOnly = 32, + Literal = 64, + NotSerialized = 128, + HasFieldRVA = 256, + SpecialName = 512, + RTSpecialName = 1024, + HasFieldMarshal = 4096, + PinvokeImpl = 8192, + HasDefault = 32768, + ReservedMask = 38144 +} + +// Namespace: System.Reflection +[Serializable] +public abstract class FieldInfo : MemberInfo, _FieldInfo // TypeDefIndex: 586 +{ + // Properties + public abstract FieldAttributes Attributes { get; } + public abstract RuntimeFieldHandle FieldHandle { get; } + public abstract Type FieldType { get; } + public override MemberTypes MemberType { get; } // 0x00280240 + public bool IsLiteral { get; } // 0x00280248 + public bool IsStatic { get; } // 0x00279FC4 + public bool IsInitOnly { get; } // 0x00280268 + public bool IsPublic { get; } // 0x00280288 + public bool IsPrivate { get; } // 0x002802B4 + public bool IsFamily { get; } // 0x002802DC + public bool IsAssembly { get; } // 0x00280308 + public bool IsFamilyAndAssembly { get; } // 0x00280334 + public bool IsFamilyOrAssembly { get; } // 0x00280360 + public bool IsPinvokeImpl { get; } // 0x0028038C + public bool IsSpecialName { get; } // 0x002803AC + public bool IsNotSerialized { get; } // 0x002803CC + internal virtual UnmanagedMarshal UMarshal { get; } // 0x002807B4 + + // Methods + protected void .ctor(); // 0x00280018 + private void System.Runtime.InteropServices._FieldInfo.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x00280020 + private void System.Runtime.InteropServices._FieldInfo.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x002800A8 + private void System.Runtime.InteropServices._FieldInfo.GetTypeInfoCount(out uint pcTInfo); // 0x00280130 + private void System.Runtime.InteropServices._FieldInfo.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x002801B8 + public abstract object GetValue(object obj); + public abstract void SetValue(object obj, object value, BindingFlags invokeAttr, Binder binder, CultureInfo culture); + public void SetValue(object obj, object value); // 0x002803EC + private static FieldInfo internal_from_handle_type(IntPtr field_handle, IntPtr type_handle); // 0x00280424 + public static FieldInfo GetFieldFromHandle(RuntimeFieldHandle handle); // 0x00280428 + public static FieldInfo GetFieldFromHandle(RuntimeFieldHandle handle, RuntimeTypeHandle declaringType); // 0x002804F0 + internal virtual int GetFieldOffset(); // 0x00280604 + public virtual object GetValueDirect(TypedReference obj); // 0x002806A0 + public virtual void SetValueDirect(TypedReference obj, object value); // 0x00280728 + private UnmanagedMarshal GetUnmanagedMarshal(); // 0x002807B0 + internal object[] GetPseudoCustomAttributes(); // 0x002807B8 + private Type[] GetTypeModifiers(bool optional); // 0x00280AA4 + public virtual Type[] GetOptionalCustomModifiers(); // 0x00280AA8 + public virtual Type[] GetRequiredCustomModifiers(); // 0x00280B4C + public virtual object GetRawConstantValue(); // 0x00280BF0 + virtual Type System.Runtime.InteropServices._FieldInfo.GetType(); // 0x00280C8C +} + +// Namespace: System.Reflection +public enum GenericParameterAttributes // TypeDefIndex: 587 +{ + None = 0, + Covariant = 1, + Contravariant = 2, + VarianceMask = 3, + ReferenceTypeConstraint = 4, + NotNullableValueTypeConstraint = 8, + DefaultConstructorConstraint = 16, + SpecialConstraintMask = 28 +} + +// Namespace: System.Reflection +[Serializable] +public enum ImageFileMachine // TypeDefIndex: 588 +{ + I386 = 332, + IA64 = 512, + AMD64 = 34404 +} + +// Namespace: System.Reflection +public struct InterfaceMapping // TypeDefIndex: 589 +{ + // Fields + public MethodInfo[] InterfaceMethods; // 0x08 + public Type InterfaceType; // 0x0C + public MethodInfo[] TargetMethods; // 0x10 + public Type TargetType; // 0x14 + +} + +// Namespace: System.Reflection +[Serializable] +public class InvalidFilterCriteriaException : ApplicationException // TypeDefIndex: 590 +{ + // Methods + public void .ctor(); // 0x00281070 + public void .ctor(string message); // 0x002810E4 + public void .ctor(string message, Exception inner); // 0x002810EC + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x002810F4 +} + +// Namespace: System.Reflection +public class LocalVariableInfo // TypeDefIndex: 591 +{ + // Fields + internal Type type; // 0x08 + internal bool is_pinned; // 0x0C + internal ushort position; // 0x0E + + // Properties + public virtual bool IsPinned { get; } // 0x0028111C + public virtual int LocalIndex { get; } // 0x00281124 + public virtual Type LocalType { get; } // 0x0028112C + + // Methods + internal void .ctor(); // 0x00281114 + public override string ToString(); // 0x00281134 +} + +// Namespace: System.Reflection +public class ManifestResourceInfo // TypeDefIndex: 592 +{ + // Fields + private Assembly _assembly; // 0x08 + private string _filename; // 0x0C + private ResourceLocation _location; // 0x10 + + // Properties + public virtual string FileName { get; } // 0x0028129C + public virtual Assembly ReferencedAssembly { get; } // 0x002812A4 + public virtual ResourceLocation ResourceLocation { get; } // 0x002812AC + + // Methods + internal void .ctor(); // 0x00281264 + internal void .ctor(Assembly assembly, string filename, ResourceLocation location); // 0x0028126C +} + +// Namespace: System.Reflection +[Serializable] +internal class MemberInfoSerializationHolder : ISerializable, IObjectReference // TypeDefIndex: 593 +{ + // Fields + private const BindingFlags DefaultBinding = 60; // 0x00 + private readonly string _memberName; // 0x08 + private readonly string _memberSignature; // 0x0C + private readonly MemberTypes _memberType; // 0x10 + private readonly Type _reflectedType; // 0x14 + private readonly Type[] _genericArguments; // 0x18 + + // Methods + private void .ctor(SerializationInfo info, StreamingContext ctx); // 0x00281954 + public static void Serialize(SerializationInfo info, string name, Type klass, string signature, MemberTypes type); // 0x00281B3C + public static void Serialize(SerializationInfo info, string name, Type klass, string signature, MemberTypes type, Type[] genericArguments); // 0x00281B60 + public void GetObjectData(SerializationInfo info, StreamingContext context); // 0x00281EA4 + public object GetRealObject(StreamingContext context); // 0x00281F2C +} + +// Namespace: System.Reflection +[Serializable] +public enum MemberTypes // TypeDefIndex: 594 +{ + Constructor = 1, + Event = 2, + Field = 4, + Method = 8, + Property = 16, + TypeInfo = 32, + Custom = 64, + NestedType = 128, + All = 191 +} + +// Namespace: System.Reflection +[Serializable] +public enum MethodAttributes // TypeDefIndex: 595 +{ + PrivateScope = 0, + ReuseSlot = 0, + Private = 1, + FamANDAssem = 2, + Assembly = 3, + Family = 4, + FamORAssem = 5, + Public = 6, + MemberAccessMask = 7, + UnmanagedExport = 8, + Static = 16, + Final = 32, + Virtual = 64, + HideBySig = 128, + VtableLayoutMask = 256, + NewSlot = 256, + CheckAccessOnOverride = 512, + Abstract = 1024, + SpecialName = 2048, + RTSpecialName = 4096, + PinvokeImpl = 8192, + HasSecurity = 16384, + RequireSecObject = 32768, + ReservedMask = 53248 +} + +// Namespace: System.Reflection +[Serializable] +public abstract class MethodBase : MemberInfo, _MethodBase // TypeDefIndex: 596 +{ + // Properties + public abstract RuntimeMethodHandle MethodHandle { get; } + public abstract MethodAttributes Attributes { get; } + public virtual CallingConventions CallingConvention { get; } // 0x00282CC8 + public bool IsPublic { get; } // 0x00282CD0 + public bool IsPrivate { get; } // 0x00282CFC + public bool IsFamily { get; } // 0x00282D24 + public bool IsAssembly { get; } // 0x00282D50 + public bool IsFamilyAndAssembly { get; } // 0x00282D7C + public bool IsFamilyOrAssembly { get; } // 0x00282DA8 + public bool IsStatic { get; } // 0x0027B3C0 + public bool IsFinal { get; } // 0x00282DD4 + public bool IsVirtual { get; } // 0x00282DF4 + public bool IsHideBySig { get; } // 0x00282E14 + public bool IsAbstract { get; } // 0x00279FE4 + public bool IsSpecialName { get; } // 0x00282E34 + public bool IsConstructor { get; } // 0x00282E54 + public virtual bool ContainsGenericParameters { get; } // 0x002830DC + public virtual bool IsGenericMethodDefinition { get; } // 0x002830E4 + public virtual bool IsGenericMethod { get; } // 0x002830EC + + // Methods + protected void .ctor(); // 0x00282770 + private void System.Runtime.InteropServices._MethodBase.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x00282778 + private void System.Runtime.InteropServices._MethodBase.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x00282800 + private void System.Runtime.InteropServices._MethodBase.GetTypeInfoCount(out uint pcTInfo); // 0x00282888 + private void System.Runtime.InteropServices._MethodBase.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x00282910 + public static MethodBase GetCurrentMethod(); // 0x00282998 + internal static MethodBase GetMethodFromHandleNoGenericCheck(RuntimeMethodHandle handle); // 0x00282A08 + private static MethodBase GetMethodFromIntPtr(IntPtr handle, IntPtr declaringType); // 0x00282A60 + public static MethodBase GetMethodFromHandle(RuntimeMethodHandle handle); // 0x00282B78 + private static MethodBase GetMethodFromHandleInternalType(IntPtr method_handle, IntPtr type_handle); // 0x00282B74 + public static MethodBase GetMethodFromHandle(RuntimeMethodHandle handle, RuntimeTypeHandle declaringType); // 0x00282C9C + public abstract MethodImplAttributes GetMethodImplementationFlags(); + public abstract ParameterInfo[] GetParameters(); + internal virtual int GetParameterCount(); // 0x00282CA0 + public object Invoke(object obj, object[] parameters); // 0x0027EF60 + public abstract object Invoke(object obj, BindingFlags invokeAttr, Binder binder, object[] parameters, CultureInfo culture); + internal virtual int get_next_table_index(object obj, int table, bool inc); // 0x00282F20 + public virtual Type[] GetGenericArguments(); // 0x00283054 + internal static MethodBody GetMethodBodyInternal(IntPtr handle); // 0x002830F4 + internal static MethodBody GetMethodBody(IntPtr handle); // 0x002830F8 + public virtual MethodBody GetMethodBody(); // 0x002830FC + virtual Type System.Runtime.InteropServices._MethodBase.GetType(); // 0x00283184 +} + +// Namespace: System.Reflection +public sealed class MethodBody // TypeDefIndex: 597 +{ + // Fields + private ExceptionHandlingClause[] clauses; // 0x08 + private LocalVariableInfo[] locals; // 0x0C + private byte[] il; // 0x10 + private bool init_locals; // 0x14 + private int sig_token; // 0x18 + private int max_stack; // 0x1C + + // Properties + public IList`1 ExceptionHandlingClauses { get; } // 0x00283194 + public IList`1 LocalVariables { get; } // 0x002831F8 + public bool InitLocals { get; } // 0x0028325C + public int LocalSignatureMetadataToken { get; } // 0x00283264 + public int MaxStackSize { get; } // 0x0028326C + + // Methods + internal void .ctor(); // 0x0028318C + public byte[] GetILAsByteArray(); // 0x00283274 +} + +// Namespace: System.Reflection +[Serializable] +public enum MethodImplAttributes // TypeDefIndex: 598 +{ + IL = 0, + Managed = 0, + Native = 1, + OPTIL = 2, + CodeTypeMask = 3, + Runtime = 3, + ManagedMask = 4, + Unmanaged = 4, + NoInlining = 8, + ForwardRef = 16, + Synchronized = 32, + PreserveSig = 128, + InternalCall = 4096, + MaxMethodImplVal = 65535 +} + +// Namespace: System.Reflection +[Serializable] +public abstract class MethodInfo : MethodBase, _MethodInfo // TypeDefIndex: 599 +{ + // Properties + public override MemberTypes MemberType { get; } // 0x002834A4 + public virtual Type ReturnType { get; } // 0x002834AC + public abstract ICustomAttributeProvider ReturnTypeCustomAttributes { get; } + public override bool IsGenericMethod { get; } // 0x00283688 + public override bool IsGenericMethodDefinition { get; } // 0x00283690 + public override bool ContainsGenericParameters { get; } // 0x00283698 + public virtual ParameterInfo ReturnParameter { get; } // 0x002836A0 + + // Methods + protected void .ctor(); // 0x0028327C + private void System.Runtime.InteropServices._MethodInfo.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x00283284 + private void System.Runtime.InteropServices._MethodInfo.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x0028330C + private void System.Runtime.InteropServices._MethodInfo.GetTypeInfoCount(out uint pcTInfo); // 0x00283394 + private void System.Runtime.InteropServices._MethodInfo.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x0028341C + public abstract MethodInfo GetBaseDefinition(); + public virtual MethodInfo GetGenericMethodDefinition(); // 0x002834B4 + public virtual MethodInfo MakeGenericMethod(Type[] typeArguments); // 0x0028353C + public override Type[] GetGenericArguments(); // 0x002835FC + virtual Type System.Runtime.InteropServices._MethodInfo.GetType(); // 0x00283728 +} + +// Namespace: System.Reflection +[Serializable] +public sealed class Missing : ISerializable // TypeDefIndex: 600 +{ + // Fields + public static readonly Missing Value; // 0x00 + + // Methods + internal void .ctor(); // 0x00283730 + private static void .cctor(); // 0x00283738 + private void System.Runtime.Serialization.ISerializable.GetObjectData(SerializationInfo info, StreamingContext context); // 0x002837AC +} + +// Namespace: System.Reflection +internal enum ResolveTokenError // TypeDefIndex: 601 +{ + OutOfRange = 0, + BadTable = 1, + Other = 2 +} + +// Namespace: System.Reflection +[Serializable] +public class Module : ISerializable, ICustomAttributeProvider, _Module // TypeDefIndex: 602 +{ + // Fields + private const BindingFlags defaultBindingFlags = 28; // 0x00 + public static readonly TypeFilter FilterTypeName; // 0x00 + public static readonly TypeFilter FilterTypeNameIgnoreCase; // 0x04 + private IntPtr _impl; // 0x08 + internal Assembly assembly; // 0x0C + internal string fqname; // 0x10 + internal string name; // 0x14 + internal string scopename; // 0x18 + internal bool is_resource; // 0x1C + internal int token; // 0x20 + + // Properties + public Assembly Assembly { get; } // 0x00283AA8 + public virtual string FullyQualifiedName { get; } // 0x00283AB0 + public string Name { get; } // 0x00283AB8 + public string ScopeName { get; } // 0x00283AC0 + public ModuleHandle ModuleHandle { get; } // 0x00283AC8 + public int MetadataToken { get; } // 0x00283AD0 + public int MDStreamVersion { get; } // 0x00283AD4 + internal Guid MvId { get; } // 0x0028469C + public Guid ModuleVersionId { get; } // 0x002846B8 + + // Methods + internal void .ctor(); // 0x002837B0 + private static void .cctor(); // 0x002837B8 + private void System.Runtime.InteropServices._Module.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x00283888 + private void System.Runtime.InteropServices._Module.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x00283910 + private void System.Runtime.InteropServices._Module.GetTypeInfoCount(out uint pcTInfo); // 0x00283998 + private void System.Runtime.InteropServices._Module.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x00283A20 + internal static int GetMDStreamVersion(IntPtr module_handle); // 0x00283BB4 + public virtual Type[] FindTypes(TypeFilter filter, object filterCriteria); // 0x00283BB8 + public virtual object[] GetCustomAttributes(bool inherit); // 0x00283DA8 + public virtual object[] GetCustomAttributes(Type attributeType, bool inherit); // 0x00283E34 + public FieldInfo GetField(string name); // 0x00283EC8 + public FieldInfo GetField(string name, BindingFlags bindingAttr); // 0x00283F14 + public FieldInfo[] GetFields(); // 0x00283F60 + public MethodInfo GetMethod(string name); // 0x00284008 + public MethodInfo GetMethod(string name, Type[] types); // 0x00284044 + public MethodInfo GetMethod(string name, BindingFlags bindingAttr, Binder binder, CallingConventions callConvention, Type[] types, ParameterModifier[] modifiers); // 0x00284084 + protected virtual MethodInfo GetMethodImpl(string name, BindingFlags bindingAttr, Binder binder, CallingConventions callConvention, Type[] types, ParameterModifier[] modifiers); // 0x002840C0 + public MethodInfo[] GetMethods(); // 0x00284130 + public MethodInfo[] GetMethods(BindingFlags bindingFlags); // 0x002841CC + public FieldInfo[] GetFields(BindingFlags bindingFlags); // 0x00284278 + public virtual void GetObjectData(SerializationInfo info, StreamingContext context); // 0x00284324 + public virtual Type GetType(string className); // 0x00284400 + public virtual Type GetType(string className, bool ignoreCase); // 0x00284430 + public virtual Type GetType(string className, bool throwOnError, bool ignoreCase); // 0x00284460 + private Type[] InternalGetTypes(); // 0x002845F0 + public virtual Type[] GetTypes(); // 0x002845F4 + public virtual bool IsDefined(Type attributeType, bool inherit); // 0x002845F8 + public bool IsResource(); // 0x0028468C + public override string ToString(); // 0x00284694 + public void GetPEKind(out PortableExecutableKinds peKind, out ImageFileMachine machine); // 0x002846D4 + private Exception resolve_token_exception(int metadataToken, ResolveTokenError error, string tokenType); // 0x002846FC + private IntPtr[] ptrs_from_types(Type[] types); // 0x002848CC + public FieldInfo ResolveField(int metadataToken); // 0x00284A50 + public FieldInfo ResolveField(int metadataToken, Type[] genericTypeArguments, Type[] genericMethodArguments); // 0x00284A70 + public MemberInfo ResolveMember(int metadataToken); // 0x00284BA0 + public MemberInfo ResolveMember(int metadataToken, Type[] genericTypeArguments, Type[] genericMethodArguments); // 0x00284BC0 + public MethodBase ResolveMethod(int metadataToken); // 0x00284CD4 + public MethodBase ResolveMethod(int metadataToken, Type[] genericTypeArguments, Type[] genericMethodArguments); // 0x00284CF4 + public string ResolveString(int metadataToken); // 0x00284E24 + public Type ResolveType(int metadataToken); // 0x00284F0C + public Type ResolveType(int metadataToken, Type[] genericTypeArguments, Type[] genericMethodArguments); // 0x00284F2C + public byte[] ResolveSignature(int metadataToken); // 0x0028508C + internal static Type MonoDebugger_ResolveType(Module module, int token); // 0x00285174 + internal static Guid Mono_GetGuid(Module module); // 0x0028528C + internal virtual Guid GetModuleVersionId(); // 0x002852C8 + private static bool filter_by_type_name(Type m, object filterCriteria); // 0x002852FC + private static bool filter_by_type_name_ignore_case(Type m, object filterCriteria); // 0x00285480 + internal IntPtr GetHINSTANCE(); // 0x00285658 + private string GetGuidInternal(); // 0x002852F8 + private Type GetGlobalType(); // 0x00283F10 + internal static IntPtr ResolveTypeToken(IntPtr module, int token, IntPtr[] type_args, IntPtr[] method_args, out ResolveTokenError error); // 0x00285088 + internal static IntPtr ResolveMethodToken(IntPtr module, int token, IntPtr[] type_args, IntPtr[] method_args, out ResolveTokenError error); // 0x00284E20 + internal static IntPtr ResolveFieldToken(IntPtr module, int token, IntPtr[] type_args, IntPtr[] method_args, out ResolveTokenError error); // 0x00284B9C + internal static string ResolveStringToken(IntPtr module, int token, out ResolveTokenError error); // 0x00284F08 + internal static MemberInfo ResolveMemberToken(IntPtr module, int token, IntPtr[] type_args, IntPtr[] method_args, out ResolveTokenError error); // 0x00284CD0 + internal static byte[] ResolveSignature(IntPtr module, int metadataToken, out ResolveTokenError error); // 0x00285170 + internal static void GetPEKind(IntPtr module, out PortableExecutableKinds peKind, out ImageFileMachine machine); // 0x0028565C +} + +// Namespace: System.Reflection +internal struct MonoEventInfo // TypeDefIndex: 603 +{ + // Fields + public Type declaring_type; // 0x08 + public Type reflected_type; // 0x0C + public string name; // 0x10 + public MethodInfo add_method; // 0x14 + public MethodInfo remove_method; // 0x18 + public MethodInfo raise_method; // 0x1C + public EventAttributes attrs; // 0x20 + public MethodInfo[] other_methods; // 0x24 + + // Methods + private static void get_event_info(MonoEvent ev, out MonoEventInfo info); // 0x00287B28 + internal static MonoEventInfo GetEventInfo(MonoEvent ev); // 0x002873E0 +} + +// Namespace: System.Reflection +[Serializable] +internal sealed class MonoEvent : EventInfo, ISerializable // TypeDefIndex: 604 +{ + // Fields + private IntPtr klass; // 0x0C + private IntPtr handle; // 0x10 + + // Properties + public override EventAttributes Attributes { get; } // 0x002873B0 + public override Type DeclaringType { get; } // 0x00287788 + public override Type ReflectedType { get; } // 0x002877B8 + public override string Name { get; } // 0x002877E8 + + // Methods + public void .ctor(); // 0x002873A8 + public override MethodInfo GetAddMethod(bool nonPublic); // 0x00287428 + public override MethodInfo GetRaiseMethod(bool nonPublic); // 0x0028749C + public override MethodInfo GetRemoveMethod(bool nonPublic); // 0x00287510 + public override MethodInfo[] GetOtherMethods(bool nonPublic); // 0x00287584 + public override string ToString(); // 0x00287818 + public override bool IsDefined(Type attributeType, bool inherit); // 0x002878E4 + public override object[] GetCustomAttributes(bool inherit); // 0x00287978 + public override object[] GetCustomAttributes(Type attributeType, bool inherit); // 0x00287A04 + public void GetObjectData(SerializationInfo info, StreamingContext context); // 0x00287A98 +} + +// Namespace: System.Reflection +[Serializable] +internal class MonoField : FieldInfo, ISerializable // TypeDefIndex: 605 +{ + // Fields + internal IntPtr klass; // 0x08 + internal RuntimeFieldHandle fhandle; // 0x0C + private string name; // 0x10 + private Type type; // 0x14 + private FieldAttributes attrs; // 0x18 + + // Properties + public override FieldAttributes Attributes { get; } // 0x00287B34 + public override RuntimeFieldHandle FieldHandle { get; } // 0x00287B3C + public override Type FieldType { get; } // 0x00287B44 + public override Type ReflectedType { get; } // 0x00287B50 + public override Type DeclaringType { get; } // 0x00287B58 + public override string Name { get; } // 0x00287B60 + + // Methods + public void .ctor(); // 0x00287B2C + private Type GetParentType(bool declaring); // 0x00287B4C + public override bool IsDefined(Type attributeType, bool inherit); // 0x00287B68 + public override object[] GetCustomAttributes(bool inherit); // 0x00287BFC + public override object[] GetCustomAttributes(Type attributeType, bool inherit); // 0x00287C88 + internal override int GetFieldOffset(); // 0x00287D1C + private object GetValueInternal(object obj); // 0x00287D20 + public override object GetValue(object obj); // 0x00287D24 + public override string ToString(); // 0x00288048 + private static void SetValueInternal(FieldInfo fi, object obj, object value); // 0x002880E8 + public override void SetValue(object obj, object val, BindingFlags invokeAttr, Binder binder, CultureInfo culture); // 0x002880EC + internal MonoField Clone(string newName); // 0x002886BC + public void GetObjectData(SerializationInfo info, StreamingContext context); // 0x002887B8 + public override object GetRawConstantValue(); // 0x0028883C + private void CheckGeneric(); // 0x00287F64 +} + +// Namespace: System.Reflection +internal class MonoGenericClass : MonoType // TypeDefIndex: 606 +{ + // Fields + private const BindingFlags flags = 62; // 0x00 + internal TypeBuilder generic_type; // 0x10 + private Type[] type_arguments; // 0x14 + private bool initialized; // 0x18 + private Hashtable fields; // 0x1C + private Hashtable ctors; // 0x20 + private Hashtable methods; // 0x24 + private int event_count; // 0x28 + + // Properties + public override Type BaseType { get; } // 0x00289010 + public override Type UnderlyingSystemType { get; } // 0x0028B40C + public override string Name { get; } // 0x0028B410 + public override string Namespace { get; } // 0x0028B434 + public override string FullName { get; } // 0x0028B458 + public override string AssemblyQualifiedName { get; } // 0x0028B898 + public override Guid GUID { get; } // 0x0028B8A4 + + // Methods + internal void .ctor(); // 0x002888D8 + internal void .ctor(TypeBuilder tb, Type[] args); // 0x00288974 + private void initialize(MethodInfo[] methods, ConstructorInfo[] ctors, FieldInfo[] fields, PropertyInfo[] properties, EventInfo[] events); // 0x002889A0 + private void initialize(); // 0x002889A4 + private Type GetParentType(); // 0x00288B3C + internal Type InflateType(Type type); // 0x00272FC8 + internal Type InflateType(Type type, Type[] method_args); // 0x00288B70 + private Type[] GetInterfacesInternal(); // 0x00289044 + public override Type[] GetInterfaces(); // 0x002891EC + protected override bool IsValueTypeImpl(); // 0x002892A8 + internal override MethodInfo GetMethod(MethodInfo fromNoninstanciated); // 0x002892D4 + internal override ConstructorInfo GetConstructor(ConstructorInfo fromNoninstanciated); // 0x00289538 + internal override FieldInfo GetField(FieldInfo fromNoninstanciated); // 0x0028979C + public override MethodInfo[] GetMethods(BindingFlags bf); // 0x00289A00 + private MethodInfo[] GetMethodsInternal(BindingFlags bf, MonoGenericClass reftype); // 0x00289CA4 + public override ConstructorInfo[] GetConstructors(BindingFlags bf); // 0x00289EC0 + private ConstructorInfo[] GetConstructorsInternal(BindingFlags bf, MonoGenericClass reftype); // 0x0028A154 + public override FieldInfo[] GetFields(BindingFlags bf); // 0x0028A384 + private FieldInfo[] GetFieldsInternal(BindingFlags bf, MonoGenericClass reftype); // 0x0028A618 + public override PropertyInfo[] GetProperties(BindingFlags bf); // 0x0028A834 + private PropertyInfo[] GetPropertiesInternal(BindingFlags bf, MonoGenericClass reftype); // 0x0028AADC + public override EventInfo[] GetEvents(BindingFlags bf); // 0x0028AD54 + private EventInfo[] GetEventsInternal(BindingFlags bf, MonoGenericClass reftype); // 0x0028AFE8 + public override Type[] GetNestedTypes(BindingFlags bf); // 0x0028B230 + public override bool IsAssignableFrom(Type c); // 0x0028B260 + private string format_name(bool full_name, bool assembly_qualified); // 0x0028B464 + public override string ToString(); // 0x0028B92C + public override Type MakeArrayType(); // 0x0028B938 + public override Type MakeArrayType(int rank); // 0x0028B9B0 + public override Type MakeByRefType(); // 0x0028BA78 + public override Type MakePointerType(); // 0x0028BAEC + protected override bool IsCOMObjectImpl(); // 0x0028BB60 + protected override bool IsPrimitiveImpl(); // 0x0028BB68 + protected override TypeAttributes GetAttributeFlagsImpl(); // 0x0028BB70 + public override Type GetInterface(string name, bool ignoreCase); // 0x0028BB9C + public override EventInfo GetEvent(string name, BindingFlags bindingAttr); // 0x0028BC24 + public override FieldInfo GetField(string name, BindingFlags bindingAttr); // 0x0028BDC0 + public override MemberInfo[] GetMembers(BindingFlags bindingAttr); // 0x0028BE48 + public override Type GetNestedType(string name, BindingFlags bindingAttr); // 0x0028BED0 + public override object InvokeMember(string name, BindingFlags invokeAttr, Binder binder, object target, object[] args, ParameterModifier[] modifiers, CultureInfo culture, string[] namedParameters); // 0x0028BF58 + protected override MethodInfo GetMethodImpl(string name, BindingFlags bindingAttr, Binder binder, CallingConventions callConvention, Type[] types, ParameterModifier[] modifiers); // 0x0028BFE0 + protected override PropertyInfo GetPropertyImpl(string name, BindingFlags bindingAttr, Binder binder, Type returnType, Type[] types, ParameterModifier[] modifiers); // 0x0028C068 + protected override ConstructorInfo GetConstructorImpl(BindingFlags bindingAttr, Binder binder, CallingConventions callConvention, Type[] types, ParameterModifier[] modifiers); // 0x0028C0F0 + public override bool IsDefined(Type attributeType, bool inherit); // 0x0028C178 + public override object[] GetCustomAttributes(bool inherit); // 0x0028C200 + public override object[] GetCustomAttributes(Type attributeType, bool inherit); // 0x0028C288 +} + +// Namespace: System.Reflection +[Serializable] +internal class MonoGenericMethod : MonoMethod // TypeDefIndex: 607 +{ + // Properties + public override Type ReflectedType { get; } // 0x0028C3B0 + + // Methods + internal void .ctor(); // 0x0028C310 +} + +// Namespace: System.Reflection +[Serializable] +internal class MonoGenericCMethod : MonoCMethod // TypeDefIndex: 608 +{ + // Properties + public override Type ReflectedType { get; } // 0x002888D4 + + // Methods + internal void .ctor(); // 0x00288840 +} + +// Namespace: System.Reflection +internal struct MonoMethodInfo // TypeDefIndex: 609 +{ + // Fields + private Type parent; // 0x08 + private Type ret; // 0x0C + internal MethodAttributes attrs; // 0x10 + internal MethodImplAttributes iattrs; // 0x14 + private CallingConventions callconv; // 0x18 + + // Methods + private static void get_method_info(IntPtr handle, out MonoMethodInfo info); // 0x0028DB58 + internal static MonoMethodInfo GetMethodInfo(IntPtr handle); // 0x0028CFFC + internal static Type GetDeclaringType(IntPtr handle); // 0x00286E48 + internal static Type GetReturnType(IntPtr handle); // 0x0028C4EC + internal static MethodAttributes GetAttributes(IntPtr handle); // 0x00286D68 + internal static CallingConventions GetCallingConvention(IntPtr handle); // 0x00286DD4 + internal static MethodImplAttributes GetMethodImplementationFlags(IntPtr handle); // 0x00286614 + private static ParameterInfo[] get_parameter_info(IntPtr handle, MemberInfo member); // 0x0028DB5C + internal static ParameterInfo[] GetParametersInfo(IntPtr handle, MemberInfo member); // 0x00286654 + private static UnmanagedMarshal get_retval_marshal(IntPtr handle); // 0x0028DB60 + internal static ParameterInfo GetReturnParameterInfo(MonoMethod method); // 0x0028C3E0 +} + +// Namespace: System.Reflection +[Serializable] +internal class MonoMethod : MethodInfo, ISerializable // TypeDefIndex: 610 +{ + // Fields + internal IntPtr mhandle; // 0x08 + private string name; // 0x0C + private Type reftype; // 0x10 + + // Properties + public override ParameterInfo ReturnParameter { get; } // 0x0028C3DC + public override Type ReturnType { get; } // 0x0028C4B4 + public override ICustomAttributeProvider ReturnTypeCustomAttributes { get; } // 0x0028C520 + public override RuntimeMethodHandle MethodHandle { get; } // 0x0028CB48 + public override MethodAttributes Attributes { get; } // 0x0028CB50 + public override CallingConventions CallingConvention { get; } // 0x0028CB88 + public override Type ReflectedType { get; } // 0x0028CBC0 + public override Type DeclaringType { get; } // 0x0028CBC8 + public override string Name { get; } // 0x0028CC00 + public override bool IsGenericMethodDefinition { get; } // 0x0028DA50 + public override bool IsGenericMethod { get; } // 0x0028DA54 + public override bool ContainsGenericParameters { get; } // 0x0028DA58 + + // Methods + internal void .ctor(); // 0x0028C3A8 + internal void .ctor(RuntimeMethodHandle mhandle); // 0x0028C3B4 + internal static string get_name(MethodBase method); // 0x00286EA4 + internal static MonoMethod get_base_definition(MonoMethod method); // 0x0028C3D4 + public override MethodInfo GetBaseDefinition(); // 0x0028C3D8 + public override MethodImplAttributes GetMethodImplementationFlags(); // 0x0028C524 + public override ParameterInfo[] GetParameters(); // 0x0028C55C + internal object InternalInvoke(object obj, object[] parameters, out Exception exc); // 0x0028C60C + public override object Invoke(object obj, BindingFlags invokeAttr, Binder binder, object[] parameters, CultureInfo culture); // 0x0028C610 + public override bool IsDefined(Type attributeType, bool inherit); // 0x0028CC28 + public override object[] GetCustomAttributes(bool inherit); // 0x0028CCBC + public override object[] GetCustomAttributes(Type attributeType, bool inherit); // 0x0028CD48 + internal static DllImportAttribute GetDllImportAttribute(IntPtr mhandle); // 0x0028CDDC + internal object[] GetPseudoCustomAttributes(); // 0x0028CDE0 + private static bool ShouldPrintFullName(Type type); // 0x0028D048 + public override string ToString(); // 0x0028D134 + public void GetObjectData(SerializationInfo info, StreamingContext context); // 0x0028D6A8 + public override MethodInfo MakeGenericMethod(Type[] methodInstantiation); // 0x0028D778 + private MethodInfo MakeGenericMethod_impl(Type[] types); // 0x0028D9A8 + public override Type[] GetGenericArguments(); // 0x0028D9AC + private MethodInfo GetGenericMethodDefinition_impl(); // 0x0028D9B0 + public override MethodInfo GetGenericMethodDefinition(); // 0x0028D9B4 + public override MethodBody GetMethodBody(); // 0x0028DB50 +} + +// Namespace: System.Reflection +internal class MonoCMethod : ConstructorInfo, ISerializable // TypeDefIndex: 611 +{ + // Fields + internal IntPtr mhandle; // 0x08 + private string name; // 0x0C + private Type reftype; // 0x10 + + // Properties + public override RuntimeMethodHandle MethodHandle { get; } // 0x00286D28 + public override MethodAttributes Attributes { get; } // 0x00286D30 + public override CallingConventions CallingConvention { get; } // 0x00286D9C + public override Type ReflectedType { get; } // 0x00286E08 + public override Type DeclaringType { get; } // 0x00286E10 + public override string Name { get; } // 0x00286E7C + + // Methods + public void .ctor(); // 0x00286558 + public override MethodImplAttributes GetMethodImplementationFlags(); // 0x002865DC + public override ParameterInfo[] GetParameters(); // 0x00286648 + internal object InternalInvoke(object obj, object[] parameters, out Exception exc); // 0x00286658 + public override object Invoke(object obj, BindingFlags invokeAttr, Binder binder, object[] parameters, CultureInfo culture); // 0x0028665C + public override object Invoke(BindingFlags invokeAttr, Binder binder, object[] parameters, CultureInfo culture); // 0x00286CE8 + public override bool IsDefined(Type attributeType, bool inherit); // 0x00286EA8 + public override object[] GetCustomAttributes(bool inherit); // 0x00286F3C + public override object[] GetCustomAttributes(Type attributeType, bool inherit); // 0x00286FC8 + public override MethodBody GetMethodBody(); // 0x0028705C + public override string ToString(); // 0x00287064 + public void GetObjectData(SerializationInfo info, StreamingContext context); // 0x00287324 +} + +// Namespace: System.Reflection +internal struct MonoPropertyInfo // TypeDefIndex: 612 +{ + // Fields + public Type parent; // 0x08 + public string name; // 0x0C + public MethodInfo get_method; // 0x10 + public MethodInfo set_method; // 0x14 + public PropertyAttributes attrs; // 0x18 + + // Methods + internal static void get_property_info(MonoProperty prop, MonoPropertyInfo info, PInfo req_info); // 0x00366EE4 + internal static Type[] GetTypeModifiers(MonoProperty prop, bool optional); // 0x00366EE8 +} + +// Namespace: System.Reflection +internal enum PInfo // TypeDefIndex: 613 +{ + Attributes = 1, + GetMethod = 2, + SetMethod = 4, + ReflectedType = 8, + DeclaringType = 16, + Name = 32 +} + +// Namespace: System.Reflection +[Serializable] +internal class MonoProperty : PropertyInfo, ISerializable // TypeDefIndex: 614 +{ + // Fields + internal IntPtr klass; // 0x08 + internal IntPtr prop; // 0x0C + private MonoPropertyInfo info; // 0x10 + private PInfo cached; // 0x24 + private GetterAdapter cached_getter; // 0x28 + + // Properties + public override PropertyAttributes Attributes { get; } // 0x0028DBB0 + public override bool CanRead { get; } // 0x0028DBF0 + public override bool CanWrite { get; } // 0x0028DC38 + public override Type PropertyType { get; } // 0x0028DC80 + public override Type ReflectedType { get; } // 0x0028DD70 + public override Type DeclaringType { get; } // 0x0028DDB0 + public override string Name { get; } // 0x0028DDF0 + + // Methods + public void .ctor(); // 0x0028DB64 + private void CachePropertyInfo(PInfo flags); // 0x0028DB6C + public override MethodInfo[] GetAccessors(bool nonPublic); // 0x0028DE30 + public override MethodInfo GetGetMethod(bool nonPublic); // 0x0028E038 + public override ParameterInfo[] GetIndexParameters(); // 0x0028E0AC + public override MethodInfo GetSetMethod(bool nonPublic); // 0x0028E2AC + public override bool IsDefined(Type attributeType, bool inherit); // 0x0028E320 + public override object[] GetCustomAttributes(bool inherit); // 0x0028E3B0 + public override object[] GetCustomAttributes(Type attributeType, bool inherit); // 0x0028E438 + private static object GetterAdapterFrame(Getter`2 getter, object obj); + private static object StaticGetterAdapterFrame(StaticGetter`1 getter, object obj); + private static GetterAdapter CreateGetterDelegate(MethodInfo method); // 0x0028E4C8 + public override object GetValue(object obj, object[] index); // 0x0028E938 + public override object GetValue(object obj, BindingFlags invokeAttr, Binder binder, object[] index, CultureInfo culture); // 0x0028E970 + public override void SetValue(object obj, object value, BindingFlags invokeAttr, Binder binder, object[] index, CultureInfo culture); // 0x0028EBD0 + public override string ToString(); // 0x0028EE6C + public override Type[] GetOptionalCustomModifiers(); // 0x0028EF5C + public override Type[] GetRequiredCustomModifiers(); // 0x0028F004 + public void GetObjectData(SerializationInfo info, StreamingContext context); // 0x0028F0AC +} + +// Namespace: +private delegate object GetterAdapter(object _this); // TypeDefIndex: 615; 0x00366B1C + +// Namespace: +private delegate T Getter`2(T _this); // TypeDefIndex: 616; 0x00000000 + +// Namespace: +private delegate T StaticGetter`1(); // TypeDefIndex: 617; 0x00000000 + +// Namespace: System.Reflection +public sealed class ObfuscateAssemblyAttribute : Attribute // TypeDefIndex: 618 +{ + // Fields + private bool is_private; // 0x08 + private bool strip; // 0x09 + + // Properties + public bool AssemblyIsPrivate { get; } // 0x00366F14 + public bool StripAfterObfuscation { get; set; } // 0x00366F1C 0x00366F24 + + // Methods + public void .ctor(bool assemblyIsPrivate); // 0x00366EEC +} + +// Namespace: System.Reflection +public sealed class ObfuscationAttribute : Attribute // TypeDefIndex: 619 +{ + // Fields + private bool exclude; // 0x08 + private bool strip; // 0x09 + private bool applyToMembers; // 0x0A + private string feature; // 0x0C + + // Properties + public bool Exclude { get; set; } // 0x00366FA8 0x00366FB0 + public bool StripAfterObfuscation { get; set; } // 0x00366FB8 0x00366FC0 + public bool ApplyToMembers { get; set; } // 0x00366FC8 0x00366FD0 + public string Feature { get; set; } // 0x00366FD8 0x00366FE0 + + // Methods + public void .ctor(); // 0x00366F2C +} + +// Namespace: System.Reflection +[Serializable] +public enum ParameterAttributes // TypeDefIndex: 620 +{ + None = 0, + In = 1, + Out = 2, + Lcid = 4, + Retval = 8, + Optional = 16, + HasDefault = 4096, + HasFieldMarshal = 8192, + Reserved3 = 16384, + Reserved4 = 32768, + ReservedMask = 61440 +} + +// Namespace: System.Reflection +[Serializable] +public class ParameterInfo : ICustomAttributeProvider, _ParameterInfo // TypeDefIndex: 621 +{ + // Fields + protected Type ClassImpl; // 0x08 + protected object DefaultValueImpl; // 0x0C + protected MemberInfo MemberImpl; // 0x10 + protected string NameImpl; // 0x14 + protected int PositionImpl; // 0x18 + protected ParameterAttributes AttrsImpl; // 0x1C + private UnmanagedMarshal marshalAs; // 0x20 + + // Properties + public virtual Type ParameterType { get; } // 0x00367718 + public virtual ParameterAttributes Attributes { get; } // 0x00367720 + public virtual object DefaultValue { get; } // 0x00367728 + public bool IsIn { get; } // 0x00367A8C + public bool IsLcid { get; } // 0x00367AAC + public bool IsOptional { get; } // 0x00367ACC + public bool IsOut { get; } // 0x00367AEC + public bool IsRetval { get; } // 0x003676F8 + public virtual MemberInfo Member { get; } // 0x00367B0C + public virtual string Name { get; } // 0x00367B14 + public virtual int Position { get; } // 0x00367B1C + public int MetadataToken { get; } // 0x00367B28 + public virtual object RawDefaultValue { get; } // 0x003683B8 + + // Methods + protected void .ctor(); // 0x00366FE8 + internal void .ctor(ParameterBuilder pb, Type type, MemberInfo member, int position); // 0x00366FF0 + internal void .ctor(ParameterInfo pinfo, MemberInfo member); // 0x0036708C + internal void .ctor(Type type, MemberInfo member, UnmanagedMarshal marshalAs); // 0x00367164 + private void System.Runtime.InteropServices._ParameterInfo.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x00367224 + private void System.Runtime.InteropServices._ParameterInfo.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x003672AC + private void System.Runtime.InteropServices._ParameterInfo.GetTypeInfoCount(out uint pcTInfo); // 0x00367334 + private void System.Runtime.InteropServices._ParameterInfo.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x003673BC + public override string ToString(); // 0x00367444 + private int GetMetadataToken(); // 0x00367B24 + public virtual object[] GetCustomAttributes(bool inherit); // 0x00367D68 + public virtual object[] GetCustomAttributes(Type attributeType, bool inherit); // 0x00367DF4 + public virtual bool IsDefined(Type attributeType, bool inherit); // 0x00367E88 + internal object[] GetPseudoCustomAttributes(); // 0x00367F1C + private Type[] GetTypeModifiers(bool optional); // 0x0036826C + public virtual Type[] GetOptionalCustomModifiers(); // 0x00368270 + public virtual Type[] GetRequiredCustomModifiers(); // 0x00368314 +} + +// Namespace: System.Reflection +[Serializable] +public struct ParameterModifier // TypeDefIndex: 622 +{ + // Fields + private bool[] _byref; // 0x08 + + // Properties + public bool Item { get; set; } // 0x000A650C 0x000A6514 + + // Methods + public void .ctor(int parameterCount); // 0x000A6504 +} + +// Namespace: System.Reflection +[Serializable] +public sealed class Pointer : ISerializable // TypeDefIndex: 623 +{ + // Fields + private void * data; // 0x08 + private Type type; // 0x0C + + // Methods + private void .ctor(); // 0x00368528 + private void System.Runtime.Serialization.ISerializable.GetObjectData(SerializationInfo info, StreamingContext context); // 0x00368530 + public static object Box(void * ptr, Type type); // 0x003685CC + public static void * Unbox(object ptr); // 0x00368724 +} + +// Namespace: System.Reflection +[Serializable] +public enum PortableExecutableKinds // TypeDefIndex: 624 +{ + NotAPortableExecutableImage = 0, + ILOnly = 1, + Required32Bit = 2, + PE32Plus = 4, + Unmanaged32Bit = 8 +} + +// Namespace: System.Reflection +[Serializable] +public enum ProcessorArchitecture // TypeDefIndex: 625 +{ + None = 0, + MSIL = 1, + X86 = 2, + IA64 = 3, + Amd64 = 4 +} + +// Namespace: System.Reflection +[Serializable] +public enum PropertyAttributes // TypeDefIndex: 626 +{ + None = 0, + SpecialName = 512, + RTSpecialName = 1024, + HasDefault = 4096, + Reserved2 = 8192, + Reserved3 = 16384, + Reserved4 = 32768, + ReservedMask = 62464 +} + +// Namespace: System.Reflection +[Serializable] +public abstract class PropertyInfo : MemberInfo, _PropertyInfo // TypeDefIndex: 627 +{ + // Properties + public abstract PropertyAttributes Attributes { get; } + public abstract bool CanRead { get; } + public abstract bool CanWrite { get; } + public bool IsSpecialName { get; } // 0x00368A14 + public override MemberTypes MemberType { get; } // 0x00368A34 + public abstract Type PropertyType { get; } + + // Methods + protected void .ctor(); // 0x003687EC + private void System.Runtime.InteropServices._PropertyInfo.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x003687F4 + private void System.Runtime.InteropServices._PropertyInfo.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x0036887C + private void System.Runtime.InteropServices._PropertyInfo.GetTypeInfoCount(out uint pcTInfo); // 0x00368904 + private void System.Runtime.InteropServices._PropertyInfo.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x0036898C + public MethodInfo[] GetAccessors(); // 0x00368A3C + public abstract MethodInfo[] GetAccessors(bool nonPublic); + public MethodInfo GetGetMethod(); // 0x00368A50 + public abstract MethodInfo GetGetMethod(bool nonPublic); + public abstract ParameterInfo[] GetIndexParameters(); + public MethodInfo GetSetMethod(); // 0x00368A64 + public abstract MethodInfo GetSetMethod(bool nonPublic); + public virtual object GetValue(object obj, object[] index); // 0x00368A78 + public abstract object GetValue(object obj, BindingFlags invokeAttr, Binder binder, object[] index, CultureInfo culture); + public virtual void SetValue(object obj, object value, object[] index); // 0x00368AB0 + public abstract void SetValue(object obj, object value, BindingFlags invokeAttr, Binder binder, object[] index, CultureInfo culture); + public virtual Type[] GetOptionalCustomModifiers(); // 0x00368AE4 + public virtual Type[] GetRequiredCustomModifiers(); // 0x00368B70 + public virtual object GetConstantValue(); // 0x00368BFC + public virtual object GetRawConstantValue(); // 0x00368C84 + virtual Type System.Runtime.InteropServices._PropertyInfo.GetType(); // 0x00368D0C +} + +// Namespace: System.Reflection +[Serializable] +public sealed class ReflectionTypeLoadException : SystemException // TypeDefIndex: 628 +{ + // Fields + private Exception[] loaderExceptions; // 0x34 + private Type[] types; // 0x38 + + // Properties + public Type[] Types { get; } // 0x00368FA0 + public Exception[] LoaderExceptions { get; } // 0x00368FA8 + + // Methods + public void .ctor(Type[] classes, Exception[] exceptions); // 0x00368D14 + public void .ctor(Type[] classes, Exception[] exceptions, string message); // 0x00368D98 + private void .ctor(SerializationInfo info, StreamingContext sc); // 0x00368DC4 + public override void GetObjectData(SerializationInfo info, StreamingContext context); // 0x00368FB0 +} + +// Namespace: System.Reflection +[Serializable] +public enum ResourceAttributes // TypeDefIndex: 629 +{ + Public = 1, + Private = 2 +} + +// Namespace: System.Reflection +[Serializable] +public enum ResourceLocation // TypeDefIndex: 630 +{ + Embedded = 1, + ContainedInAnotherAssembly = 2, + ContainedInManifestFile = 4 +} + +// Namespace: System.Reflection +[Serializable] +public class StrongNameKeyPair : ISerializable, IDeserializationCallback // TypeDefIndex: 631 +{ + // Fields + private byte[] _publicKey; // 0x08 + private string _keyPairContainer; // 0x0C + private bool _keyPairExported; // 0x10 + private byte[] _keyPairArray; // 0x14 + [NonSerialized] private RSA _rsa; // 0x18 + + // Properties + public byte[] PublicKey { get; } // 0x00369A2C + + // Methods + public void .ctor(byte[] keyPairArray); // 0x00369094 + public void .ctor(FileStream keyPairFile); // 0x0036941C + public void .ctor(string keyPairContainer); // 0x00369580 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x00369648 + private void System.Runtime.Serialization.ISerializable.GetObjectData(SerializationInfo info, StreamingContext context); // 0x00369880 + private void System.Runtime.Serialization.IDeserializationCallback.OnDeserialization(object sender); // 0x00369A28 + private RSA GetRSA(); // 0x00369310 + private void LoadKey(byte[] key); // 0x00369164 + internal StrongName StrongName(); // 0x00369E00 +} + +// Namespace: System.Reflection +[Serializable] +public class TargetException : Exception // TypeDefIndex: 632 +{ + // Methods + public void .ctor(); // 0x00369EC4 + public void .ctor(string message); // 0x00369F38 + public void .ctor(string message, Exception inner); // 0x00369F40 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x00369F48 +} + +// Namespace: System.Reflection +[Serializable] +public sealed class TargetInvocationException : Exception // TypeDefIndex: 633 +{ + // Methods + public void .ctor(Exception inner); // 0x00369F68 + public void .ctor(string message, Exception inner); // 0x00369FD8 + internal void .ctor(SerializationInfo info, StreamingContext sc); // 0x00369FE0 +} + +// Namespace: System.Reflection +[Serializable] +public sealed class TargetParameterCountException : Exception // TypeDefIndex: 634 +{ + // Methods + public void .ctor(); // 0x0036A000 + public void .ctor(string message); // 0x0036A074 + public void .ctor(string message, Exception inner); // 0x0036A07C + internal void .ctor(SerializationInfo info, StreamingContext context); // 0x0036A084 +} + +// Namespace: System.Reflection +[Serializable] +public enum TypeAttributes // TypeDefIndex: 635 +{ + NotPublic = 0, + AutoLayout = 0, + Class = 0, + AnsiClass = 0, + Public = 1, + NestedPublic = 2, + NestedPrivate = 3, + NestedFamily = 4, + NestedAssembly = 5, + NestedFamANDAssem = 6, + VisibilityMask = 7, + NestedFamORAssem = 7, + SequentialLayout = 8, + ExplicitLayout = 16, + LayoutMask = 24, + ClassSemanticsMask = 32, + Interface = 32, + Abstract = 128, + Sealed = 256, + SpecialName = 1024, + RTSpecialName = 2048, + Import = 4096, + Serializable = 8192, + UnicodeClass = 65536, + AutoClass = 131072, + StringFormatMask = 196608, + CustomFormatClass = 196608, + HasSecurity = 262144, + ReservedMask = 264192, + BeforeFieldInit = 1048576, + CustomFormatMask = 12582912 +} + +// Namespace: System.Reflection +[Serializable] +public class TypeDelegator : Type // TypeDefIndex: 636 +{ + // Fields + protected Type typeImpl; // 0x0C + + // Properties + public override Assembly Assembly { get; } // 0x0036A210 + public override string AssemblyQualifiedName { get; } // 0x0036A244 + public override Type BaseType { get; } // 0x0036A278 + public override string FullName { get; } // 0x0036A2AC + public override Guid GUID { get; } // 0x0036A2E0 + public override Module Module { get; } // 0x0036A31C + public override string Name { get; } // 0x0036A350 + public override string Namespace { get; } // 0x0036A384 + public override RuntimeTypeHandle TypeHandle { get; } // 0x0036A3B8 + public override Type UnderlyingSystemType { get; } // 0x0036A3EC + public override int MetadataToken { get; } // 0x0036ABD0 + + // Methods + protected void .ctor(); // 0x0036A0A4 + public void .ctor(Type delegatingType); // 0x0036A128 + protected override TypeAttributes GetAttributeFlagsImpl(); // 0x0036A420 + protected override ConstructorInfo GetConstructorImpl(BindingFlags bindingAttr, Binder binder, CallingConventions callConvention, Type[] types, ParameterModifier[] modifiers); // 0x0036A44C + public override ConstructorInfo[] GetConstructors(BindingFlags bindingAttr); // 0x0036A4AC + public override object[] GetCustomAttributes(bool inherit); // 0x0036A4E8 + public override object[] GetCustomAttributes(Type attributeType, bool inherit); // 0x0036A524 + public override Type GetElementType(); // 0x0036A568 + public override EventInfo GetEvent(string name, BindingFlags bindingAttr); // 0x0036A59C + public override EventInfo[] GetEvents(); // 0x0036A5E0 + public override EventInfo[] GetEvents(BindingFlags bindingAttr); // 0x0036A5F4 + public override FieldInfo GetField(string name, BindingFlags bindingAttr); // 0x0036A630 + public override FieldInfo[] GetFields(BindingFlags bindingAttr); // 0x0036A674 + public override Type GetInterface(string name, bool ignoreCase); // 0x0036A6B0 + public override InterfaceMapping GetInterfaceMap(Type interfaceType); // 0x0036A6F4 + public override Type[] GetInterfaces(); // 0x0036A738 + public override MemberInfo[] GetMember(string name, MemberTypes type, BindingFlags bindingAttr); // 0x0036A76C + public override MemberInfo[] GetMembers(BindingFlags bindingAttr); // 0x0036A7C4 + protected override MethodInfo GetMethodImpl(string name, BindingFlags bindingAttr, Binder binder, CallingConventions callConvention, Type[] types, ParameterModifier[] modifiers); // 0x0036A800 + public override MethodInfo[] GetMethods(BindingFlags bindingAttr); // 0x0036A868 + public override Type GetNestedType(string name, BindingFlags bindingAttr); // 0x0036A8A4 + public override Type[] GetNestedTypes(BindingFlags bindingAttr); // 0x0036A8E8 + public override PropertyInfo[] GetProperties(BindingFlags bindingAttr); // 0x0036A924 + protected override PropertyInfo GetPropertyImpl(string name, BindingFlags bindingAttr, Binder binder, Type returnType, Type[] types, ParameterModifier[] modifiers); // 0x0036A960 + protected override bool HasElementTypeImpl(); // 0x0036A9C8 + public override object InvokeMember(string name, BindingFlags invokeAttr, Binder binder, object target, object[] args, ParameterModifier[] modifiers, CultureInfo culture, string[] namedParameters); // 0x0036A9F4 + protected override bool IsArrayImpl(); // 0x0036AA84 + protected override bool IsByRefImpl(); // 0x0036AAB0 + protected override bool IsCOMObjectImpl(); // 0x0036AADC + public override bool IsDefined(Type attributeType, bool inherit); // 0x0036AB08 + protected override bool IsPointerImpl(); // 0x0036AB4C + protected override bool IsPrimitiveImpl(); // 0x0036AB78 + protected override bool IsValueTypeImpl(); // 0x0036ABA4 +} + +// Namespace: System.Resources +public interface IResourceReader : IEnumerable, IDisposable // TypeDefIndex: 637 +{ + // Methods + void Close(); + IDictionaryEnumerator GetEnumerator(); +} + +// Namespace: System.Resources +public interface IResourceWriter : IDisposable // TypeDefIndex: 638 +{ + // Methods + void AddResource(string name, byte[] value); + void AddResource(string name, object value); + void AddResource(string name, string value); + void Close(); + void Generate(); +} + +// Namespace: System.Resources +[Serializable] +public class MissingManifestResourceException : SystemException // TypeDefIndex: 639 +{ + // Methods + public void .ctor(); // 0x0036B898 + public void .ctor(string message); // 0x0036B90C + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x0036B914 + public void .ctor(string message, Exception inner); // 0x0036B934 +} + +// Namespace: System.Resources +[Serializable] +public class MissingSatelliteAssemblyException : SystemException // TypeDefIndex: 640 +{ + // Fields + private string culture; // 0x34 + + // Properties + public string CultureName { get; } // 0x0036BA00 + + // Methods + public void .ctor(); // 0x0036B93C + public void .ctor(string message); // 0x0036B9B0 + public void .ctor(string message, string cultureName); // 0x0036B9B8 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x0036B9D8 + public void .ctor(string message, Exception inner); // 0x0036B9F8 +} + +// Namespace: System.Resources +public sealed class NeutralResourcesLanguageAttribute : Attribute // TypeDefIndex: 641 +{ + // Fields + private string culture; // 0x08 + private UltimateResourceFallbackLocation loc; // 0x0C + + // Properties + public string CultureName { get; } // 0x0036BD24 + public UltimateResourceFallbackLocation Location { get; } // 0x0036BD2C + + // Methods + public void .ctor(string cultureName); // 0x0036BBA4 + public void .ctor(string cultureName, UltimateResourceFallbackLocation location); // 0x0036BC60 +} + +// Namespace: System.Resources +[Serializable] +public class ResourceManager // TypeDefIndex: 642 +{ + // Fields + private static Hashtable ResourceCache; // 0x00 + private static Hashtable NonExistent; // 0x04 + public static readonly int HeaderVersionNumber; // 0x08 + public static readonly int MagicNumber; // 0x0C + protected string BaseNameField; // 0x08 + protected Assembly MainAssembly; // 0x0C + protected Hashtable ResourceSets; // 0x10 + private bool ignoreCase; // 0x14 + private Type resourceSource; // 0x18 + private Type resourceSetType; // 0x1C + private string resourceDir; // 0x20 + private CultureInfo neutral_culture; // 0x24 + private UltimateResourceFallbackLocation fallbackLocation; // 0x28 + + // Properties + public virtual string BaseName { get; } // 0x0036CDDC + public virtual bool IgnoreCase { get; set; } // 0x0036CDE4 0x0036CDEC + public virtual Type ResourceSetType { get; } // 0x0036CDF4 + protected UltimateResourceFallbackLocation FallbackLocation { get; set; } // 0x0036F16C 0x0036F174 + + // Methods + protected void .ctor(); // 0x0036BD34 + public void .ctor(Type resourceSource); // 0x0036BDD8 + public void .ctor(string baseName, Assembly assembly); // 0x0036C5B0 + public void .ctor(string baseName, Assembly assembly, Type usingResourceSet); // 0x0036C75C + private void .ctor(string baseName, string resourceDir, Type usingResourceSet); // 0x0036CA70 + private static void .cctor(); // 0x0036CC60 + private static Hashtable GetResourceSets(Assembly assembly, string basename); // 0x0036BF68 + private Type CheckResourceSetType(Type usingResourceSet, bool verifyType); // 0x0036C920 + public static ResourceManager CreateFileBasedResourceManager(string baseName, string resourceDir, Type usingResourceSet); // 0x0036CD54 + public virtual object GetObject(string name); // 0x0036CDFC + public virtual object GetObject(string name, CultureInfo culture); // 0x0036CE10 + public virtual ResourceSet GetResourceSet(CultureInfo culture, bool createIfNotExists, bool tryParents); // 0x0036D0E4 + public virtual string GetString(string name); // 0x0036D234 + public virtual string GetString(string name, CultureInfo culture); // 0x0036D248 + protected virtual string GetResourceFileName(CultureInfo culture); // 0x0036D51C + private string GetResourceFilePath(CultureInfo culture); // 0x0036D6A8 + private Stream GetManifestResourceStreamNoCase(Assembly ass, string fn); // 0x0036D764 + public UnmanagedMemoryStream GetStream(string name); // 0x0036DA3C + public UnmanagedMemoryStream GetStream(string name, CultureInfo culture); // 0x0036DA44 + protected virtual ResourceSet InternalGetResourceSet(CultureInfo culture, bool createIfNotExists, bool tryParents); // 0x0036DF7C + public virtual void ReleaseAllResources(); // 0x0036ECB0 + protected static CultureInfo GetNeutralResourcesLanguage(Assembly a); // 0x0036C430 + protected static Version GetSatelliteContractVersion(Assembly a); // 0x0036E9E8 + private MissingManifestResourceException AssemblyResourceMissing(string fileName); // 0x0036EB40 + private string GetManifestResourceName(string fn); // 0x0036D900 +} + +// Namespace: System.Resources +internal enum PredefinedResourceType // TypeDefIndex: 643 +{ + Null = 0, + String = 1, + Bool = 2, + Char = 3, + Byte = 4, + SByte = 5, + Int16 = 6, + UInt16 = 7, + Int32 = 8, + UInt32 = 9, + Int64 = 10, + UInt64 = 11, + Single = 12, + Double = 13, + Decimal = 14, + DateTime = 15, + TimeSpan = 16, + ByteArray = 32, + Stream = 33, + FistCustom = 64 +} + +// Namespace: System.Resources +public sealed class ResourceReader : IEnumerable, IDisposable, IResourceReader // TypeDefIndex: 644 +{ + // Fields + private BinaryReader reader; // 0x08 + private object readerLock; // 0x0C + private IFormatter formatter; // 0x10 + internal int resourceCount; // 0x14 + private int typeCount; // 0x18 + private string[] typeNames; // 0x1C + private int[] hashes; // 0x20 + private ResourceInfo[] infos; // 0x24 + private int dataSectionOffset; // 0x28 + private long nameSectionOffset; // 0x30 + private int resource_ver; // 0x38 + private ResourceCacheItem[] cache; // 0x3C + private object cache_lock; // 0x40 + + // Methods + public void .ctor(Stream stream); // 0x0036F17C + public void .ctor(string fileName); // 0x0037013C + private IEnumerator System.Collections.IEnumerable.GetEnumerator(); // 0x0037028C + private void System.IDisposable.Dispose(); // 0x00370350 + private void ReadHeaders(); // 0x0036F394 + private void CreateResourceInfo(long position, ResourceInfo info); // 0x003703E0 + private int Read7BitEncodedInt(); // 0x00370670 + private object ReadValueVer2(int type_index); // 0x003706E0 + private object ReadValueVer1(Type type); // 0x00370F08 + private object ReadNonPredefinedValue(Type exp_type); // 0x00370D7C + private void LoadResourceValues(ResourceCacheItem[] store); // 0x00371740 + internal UnmanagedMemoryStream ResourceValueAsStream(string name, int index); // 0x00371AB8 + public void Close(); // 0x003720A8 + public IDictionaryEnumerator GetEnumerator(); // 0x003720EC + public void GetResourceData(string resourceName, out string resourceType, out byte[] resourceData); // 0x0037220C + private void GetResourceDataAt(int index, out string resourceType, out byte[] data); // 0x003725C8 + private void Dispose(bool disposing); // 0x00370394 +} + +// Namespace: +private struct ResourceInfo // TypeDefIndex: 645 +{ + // Fields + public readonly long ValuePosition; // 0x08 + public readonly string ResourceName; // 0x10 + public readonly int TypeIndex; // 0x14 + + // Methods + public void .ctor(string resourceName, long valuePosition, int type_index); // 0x000A6710 +} + +// Namespace: +private struct ResourceCacheItem // TypeDefIndex: 646 +{ + // Fields + public readonly string ResourceName; // 0x08 + public readonly object ResourceValue; // 0x0C + + // Methods + public void .ctor(string name, object value); // 0x000A6684 +} + +// Namespace: +internal sealed class ResourceEnumerator : IEnumerator, IDictionaryEnumerator // TypeDefIndex: 647 +{ + // Fields + private ResourceReader reader; // 0x08 + private int index; // 0x0C + private bool finished; // 0x10 + + // Properties + public int Index { get; } // 0x00372E90 + public DictionaryEntry Entry { get; } // 0x00372E98 + public object Key { get; } // 0x00372464 + public object Value { get; } // 0x00372FE4 + public UnmanagedMemoryStream ValueAsStream { get; } // 0x00373148 + public object Current { get; } // 0x003732C8 + + // Methods + internal void .ctor(ResourceReader readerToEnumerate); // 0x003721D8 + public bool MoveNext(); // 0x00372B80 + public void Reset(); // 0x0037334C + private void FillCache(); // 0x00372D14 +} + +// Namespace: +private sealed class c__AnonStorey2 // TypeDefIndex: 648 +{ + // Fields + internal IntPtr ptr; // 0x08 + + // Methods + public void .ctor(); // 0x003720A0 + internal void <>m__1(object o, EventArgs e); // 0x00372C8C +} + +// Namespace: System.Resources +[Serializable] +public class ResourceSet : IEnumerable, IDisposable // TypeDefIndex: 649 +{ + // Fields + [NonSerialized] protected IResourceReader Reader; // 0x08 + protected Hashtable Table; // 0x0C + private bool resources_read; // 0x10 + [NonSerialized] private bool disposed; // 0x11 + + // Methods + protected void .ctor(); // 0x0037341C + public void .ctor(IResourceReader reader); // 0x003734A0 + public void .ctor(Stream stream); // 0x00373584 + internal void .ctor(UnmanagedMemoryStream stream); // 0x00373628 + public void .ctor(string fileName); // 0x003736CC + private IEnumerator System.Collections.IEnumerable.GetEnumerator(); // 0x00373770 + public virtual void Close(); // 0x00373780 + public void Dispose(); // 0x003737B4 + protected virtual void Dispose(bool disposing); // 0x003737E8 + public virtual Type GetDefaultReader(); // 0x003738D8 + public virtual Type GetDefaultWriter(); // 0x00373968 + public virtual IDictionaryEnumerator GetEnumerator(); // 0x003739F8 + private object GetObjectInternal(string name, bool ignoreCase); // 0x00373AE4 + public virtual object GetObject(string name); // 0x00374030 + public virtual object GetObject(string name, bool ignoreCase); // 0x00374038 + private string GetStringInternal(string name, bool ignoreCase); // 0x0037403C + public virtual string GetString(string name); // 0x0037415C + public virtual string GetString(string name, bool ignoreCase); // 0x00374164 + protected virtual void ReadResources(); // 0x00374168 + internal UnmanagedMemoryStream GetStream(string name, bool ignoreCase); // 0x0036DB94 +} + +// Namespace: System.Resources +public sealed class ResourceWriter : IDisposable, IResourceWriter // TypeDefIndex: 650 +{ + // Fields + private SortedList resources; // 0x08 + private Stream stream; // 0x0C + + // Properties + internal Stream Stream { get; } // 0x003783C0 + + // Methods + public void .ctor(Stream stream); // 0x003745DC + public void .ctor(string fileName); // 0x003747C8 + public void AddResource(string name, byte[] value); // 0x00374990 + public void AddResource(string name, object value); // 0x00374B68 + public void AddResource(string name, string value); // 0x00374D40 + public void Close(); // 0x00374F18 + public void Dispose(); // 0x00374F7C + private void Dispose(bool disposing); // 0x00374F20 + public void AddResourceData(string name, string typeName, byte[] serializedData); // 0x003780C0 + public void Generate(); // 0x00374F84 + private int GetHash(string name); // 0x00378310 + private void Write7BitEncodedInt(BinaryWriter writer, int value); // 0x00378368 +} + +// Namespace: +private class TypeByNameObject // TypeDefIndex: 651 +{ + // Fields + public readonly string TypeName; // 0x08 + public readonly byte[] Value; // 0x0C + + // Methods + public void .ctor(string typeName, byte[] value); // 0x00378244 +} + +// Namespace: System.Resources +[Serializable] +internal class RuntimeResourceSet : ResourceSet // TypeDefIndex: 652 +{ + // Methods + public void .ctor(UnmanagedMemoryStream stream); // 0x003783C8 + public void .ctor(Stream stream); // 0x003783CC + public void .ctor(string fileName); // 0x003783D0 + public override object GetObject(string name); // 0x003783D4 + public override object GetObject(string name, bool ignoreCase); // 0x003785B0 + private object CloneDisposableObjectIfPossible(object value); // 0x003784A0 +} + +// Namespace: System.Resources +public sealed class SatelliteContractVersionAttribute : Attribute // TypeDefIndex: 653 +{ + // Fields + private Version ver; // 0x08 + + // Properties + public string Version { get; } // 0x0036F140 + + // Methods + public void .ctor(string version); // 0x00378680 +} + +// Namespace: System.Resources +[Serializable] +public enum UltimateResourceFallbackLocation // TypeDefIndex: 654 +{ + MainAssembly = 0, + Satellite = 1 +} + +// Namespace: System.Resources +internal enum Win32ResourceType // TypeDefIndex: 655 +{ + RT_CURSOR = 1, + RT_BITMAP = 2, + RT_ICON = 3, + RT_MENU = 4, + RT_DIALOG = 5, + RT_STRING = 6, + RT_FONTDIR = 7, + RT_FONT = 8, + RT_ACCELERATOR = 9, + RT_RCDATA = 10, + RT_MESSAGETABLE = 11, + RT_GROUP_CURSOR = 12, + RT_GROUP_ICON = 14, + RT_VERSION = 16, + RT_DLGINCLUDE = 17, + RT_PLUGPLAY = 19, + RT_VXD = 20, + RT_ANICURSOR = 21, + RT_ANIICON = 22, + RT_HTML = 23 +} + +// Namespace: System.Resources +internal class NameOrId // TypeDefIndex: 656 +{ + // Fields + private string name; // 0x08 + private int id; // 0x0C + + // Properties + public bool IsName { get; } // 0x0036BA48 + public string Name { get; } // 0x0036BA58 + public int Id { get; } // 0x0036BA60 + + // Methods + public void .ctor(string name); // 0x0036BA08 + public void .ctor(int id); // 0x0036BA28 + public override string ToString(); // 0x0036BA68 +} + +// Namespace: System.Resources +internal abstract class Win32Resource // TypeDefIndex: 657 +{ + // Fields + private NameOrId type; // 0x08 + private NameOrId name; // 0x0C + private int language; // 0x10 + + // Properties + public Win32ResourceType ResourceType { get; } // 0x0037993C + public NameOrId Name { get; } // 0x00379988 + public NameOrId Type { get; } // 0x00379990 + public int Language { get; } // 0x00379998 + + // Methods + internal void .ctor(NameOrId type, NameOrId name, int language); // 0x0037873C + internal void .ctor(Win32ResourceType type, int name, int language); // 0x00378804 + public abstract void WriteTo(Stream s); + public override string ToString(); // 0x003799A0 +} + +// Namespace: System.Resources +internal class Win32EncodedResource : Win32Resource // TypeDefIndex: 658 +{ + // Fields + private byte[] data; // 0x14 + + // Properties + public byte[] Data { get; } // 0x0037876C + + // Methods + internal void .ctor(NameOrId type, NameOrId name, int language, byte[] data); // 0x00378704 + public override void WriteTo(Stream s); // 0x00378774 +} + +// Namespace: System.Resources +internal class Win32IconResource : Win32Resource // TypeDefIndex: 659 +{ + // Fields + private ICONDIRENTRY icon; // 0x14 + + // Properties + public ICONDIRENTRY Icon { get; } // 0x00379348 + + // Methods + public void .ctor(int id, int language, ICONDIRENTRY icon); // 0x00379318 + public override void WriteTo(Stream s); // 0x00379350 +} + +// Namespace: System.Resources +internal class Win32GroupIconResource : Win32Resource // TypeDefIndex: 660 +{ + // Fields + private Win32IconResource[] icons; // 0x14 + + // Methods + public void .ctor(int id, int language, Win32IconResource[] icons); // 0x003787D4 + public override void WriteTo(Stream s); // 0x003788B0 +} + +// Namespace: System.Resources +internal class Win32VersionResource : Win32Resource // TypeDefIndex: 661 +{ + // Fields + public string[] WellKnownProperties; // 0x14 + private long signature; // 0x18 + private int struct_version; // 0x20 + private long file_version; // 0x28 + private long product_version; // 0x30 + private int file_flags_mask; // 0x38 + private int file_flags; // 0x3C + private int file_os; // 0x40 + private int file_type; // 0x44 + private int file_subtype; // 0x48 + private long file_date; // 0x50 + private int file_lang; // 0x58 + private int file_codepage; // 0x5C + private Hashtable properties; // 0x60 + + // Properties + public string Version { get; set; } // 0x0037A22C 0x0037A684 + public virtual string Item { set; } // 0x0037A998 + public virtual string Comments { get; set; } // 0x0037A9DC 0x0037AA98 + public virtual string CompanyName { get; set; } // 0x0037AB90 0x0037AC4C + public virtual string LegalCopyright { get; set; } // 0x0037AD44 0x0037AE00 + public virtual string LegalTrademarks { get; set; } // 0x0037AEF8 0x0037AFB4 + public virtual string OriginalFilename { get; set; } // 0x0037B0AC 0x0037B168 + public virtual string ProductName { get; set; } // 0x0037B260 0x0037B31C + public virtual string ProductVersion { get; set; } // 0x0037B414 0x0037B4D0 + public virtual string InternalName { get; set; } // 0x0037B804 0x0037B8C0 + public virtual string FileDescription { get; set; } // 0x0037B9B8 0x0037BA74 + public virtual int FileLanguage { get; set; } // 0x0037BB6C 0x0037BB74 + public virtual string FileVersion { get; set; } // 0x0037BB7C 0x0037BC38 + + // Methods + public void .ctor(int id, int language, bool compilercontext); // 0x00379C70 + private void emit_padding(BinaryWriter w); // 0x0037BF6C + private void patch_length(BinaryWriter w, long len_pos); // 0x0037BFE8 + public override void WriteTo(Stream ms); // 0x0037C0D8 +} + +// Namespace: System.Resources +internal class Win32ResFileReader // TypeDefIndex: 662 +{ + // Fields + private Stream res_file; // 0x08 + + // Methods + public void .ctor(Stream s); // 0x003793E8 + private int read_int16(); // 0x00379408 + private int read_int32(); // 0x00379484 + private void read_padding(); // 0x003794BC + private NameOrId read_ordinal(); // 0x00379504 + public ICollection ReadResources(); // 0x00379764 +} + +// Namespace: System.Resources +internal class ICONDIRENTRY // TypeDefIndex: 663 +{ + // Fields + public byte bWidth; // 0x08 + public byte bHeight; // 0x09 + public byte bColorCount; // 0x0A + public byte bReserved; // 0x0B + public short wPlanes; // 0x0C + public short wBitCount; // 0x0E + public int dwBytesInRes; // 0x10 + public int dwImageOffset; // 0x14 + public byte[] image; // 0x18 + + // Methods + public void .ctor(); // 0x0036B4CC + public override string ToString(); // 0x0036B4D4 +} + +// Namespace: System.Resources +internal class Win32IconFileReader // TypeDefIndex: 664 +{ + // Fields + private Stream iconFile; // 0x08 + + // Methods + public void .ctor(Stream s); // 0x00378C10 + public ICONDIRENTRY[] ReadIcons(); // 0x00378C30 +} + +// Namespace: System.Runtime.CompilerServices +public sealed class AccessedThroughPropertyAttribute : Attribute // TypeDefIndex: 665 +{ + // Fields + private string name; // 0x08 + + // Properties + public string PropertyName { get; } // 0x0037CFFC + + // Methods + public void .ctor(string propertyName); // 0x0037CFDC +} + +// Namespace: System.Runtime.CompilerServices +public class CallConvCdecl // TypeDefIndex: 666 +{ + // Methods + public void .ctor(); // 0x0037D004 +} + +// Namespace: System.Runtime.CompilerServices +public class CallConvFastcall // TypeDefIndex: 667 +{ + // Methods + public void .ctor(); // 0x0037D00C +} + +// Namespace: System.Runtime.CompilerServices +public class CallConvStdcall // TypeDefIndex: 668 +{ + // Methods + public void .ctor(); // 0x0037D014 +} + +// Namespace: System.Runtime.CompilerServices +public class CallConvThiscall // TypeDefIndex: 669 +{ + // Methods + public void .ctor(); // 0x0037D01C +} + +// Namespace: System.Runtime.CompilerServices +[Serializable] +public enum CompilationRelaxations // TypeDefIndex: 670 +{ + NoStringInterning = 8 +} + +// Namespace: System.Runtime.CompilerServices +[Serializable] +public class CompilationRelaxationsAttribute : Attribute // TypeDefIndex: 671 +{ + // Fields + private int relax; // 0x08 + + // Properties + public int CompilationRelaxations { get; } // 0x0037D064 + + // Methods + public void .ctor(int relaxations); // 0x0037D024 + public void .ctor(CompilationRelaxations relaxations); // 0x0037D044 +} + +// Namespace: System.Runtime.CompilerServices +[Serializable] +public class CompilerGlobalScopeAttribute : Attribute // TypeDefIndex: 672 +{ + // Methods + public void .ctor(); // 0x0037D074 +} + +// Namespace: System.Runtime.CompilerServices +public static class CompilerMarshalOverride // TypeDefIndex: 673 +{ +} + +// Namespace: System.Runtime.CompilerServices +[Serializable] +public abstract class CustomConstantAttribute : Attribute // TypeDefIndex: 674 +{ + // Properties + public abstract object Value { get; } + + // Methods + protected void .ctor(); // 0x0037D07C +} + +// Namespace: System.Runtime.CompilerServices +[Serializable] +public sealed class DateTimeConstantAttribute : CustomConstantAttribute // TypeDefIndex: 675 +{ + // Fields + private long ticks; // 0x08 + + // Properties + internal long Ticks { get; } // 0x0037D0AC + public override object Value { get; } // 0x0037D0B4 + + // Methods + public void .ctor(long ticks); // 0x0037D084 +} + +// Namespace: System.Runtime.CompilerServices +[Serializable] +public sealed class DefaultDependencyAttribute : Attribute // TypeDefIndex: 676 +{ + // Fields + private LoadHint hint; // 0x08 + + // Properties + public LoadHint LoadHint { get; } // 0x0037D2B8 + + // Methods + public void .ctor(LoadHint loadHintArgument); // 0x0037D298 +} + +// Namespace: System.Runtime.CompilerServices +[Serializable] +public sealed class DependencyAttribute : Attribute // TypeDefIndex: 677 +{ + // Fields + private string dependentAssembly; // 0x08 + private LoadHint hint; // 0x0C + + // Properties + public string DependentAssembly { get; } // 0x0037D2E8 + public LoadHint LoadHint { get; } // 0x0037D2F0 + + // Methods + public void .ctor(string dependentAssemblyArgument, LoadHint loadHintArgument); // 0x0037D2C0 +} + +// Namespace: System.Runtime.CompilerServices +public class DiscardableAttribute : Attribute // TypeDefIndex: 678 +{ + // Methods + public void .ctor(); // 0x0037D2F8 +} + +// Namespace: System.Runtime.CompilerServices +[Serializable] +public sealed class FixedAddressValueTypeAttribute : Attribute // TypeDefIndex: 679 +{ + // Methods + public void .ctor(); // 0x0037D300 +} + +// Namespace: System.Runtime.CompilerServices +[Serializable] +public sealed class HasCopySemanticsAttribute : Attribute // TypeDefIndex: 680 +{ + // Methods + public void .ctor(); // 0x0037D340 +} + +// Namespace: System.Runtime.CompilerServices +[Serializable] +public sealed class IDispatchConstantAttribute : CustomConstantAttribute // TypeDefIndex: 681 +{ + // Properties + public override object Value { get; } // 0x0037D350 + + // Methods + public void .ctor(); // 0x0037D348 +} + +// Namespace: System.Runtime.CompilerServices +[Serializable] +public sealed class IUnknownConstantAttribute : CustomConstantAttribute // TypeDefIndex: 682 +{ + // Properties + public override object Value { get; } // 0x0037D360 + + // Methods + public void .ctor(); // 0x0037D358 +} + +// Namespace: System.Runtime.CompilerServices +public static class IsBoxed // TypeDefIndex: 683 +{ +} + +// Namespace: System.Runtime.CompilerServices +public static class IsByValue // TypeDefIndex: 684 +{ +} + +// Namespace: System.Runtime.CompilerServices +public static class IsConst // TypeDefIndex: 685 +{ +} + +// Namespace: System.Runtime.CompilerServices +public static class IsCopyConstructed // TypeDefIndex: 686 +{ +} + +// Namespace: System.Runtime.CompilerServices +public static class IsExplicitlyDereferenced // TypeDefIndex: 687 +{ +} + +// Namespace: System.Runtime.CompilerServices +public static class IsImplicitlyDereferenced // TypeDefIndex: 688 +{ +} + +// Namespace: System.Runtime.CompilerServices +public static class IsJitIntrinsic // TypeDefIndex: 689 +{ +} + +// Namespace: System.Runtime.CompilerServices +public static class IsLong // TypeDefIndex: 690 +{ +} + +// Namespace: System.Runtime.CompilerServices +public static class IsPinned // TypeDefIndex: 691 +{ +} + +// Namespace: System.Runtime.CompilerServices +public static class IsSignUnspecifiedByte // TypeDefIndex: 692 +{ +} + +// Namespace: System.Runtime.CompilerServices +public static class IsUdtReturn // TypeDefIndex: 693 +{ +} + +// Namespace: System.Runtime.CompilerServices +public static class IsVolatile // TypeDefIndex: 694 +{ +} + +// Namespace: System.Runtime.CompilerServices +[Serializable] +public enum LoadHint // TypeDefIndex: 695 +{ + Default = 0, + Always = 1, + Sometimes = 2 +} + +// Namespace: System.Runtime.CompilerServices +[Serializable] +public enum MethodCodeType // TypeDefIndex: 696 +{ + IL = 0, + Native = 1, + OPTIL = 2, + Runtime = 3 +} + +// Namespace: System.Runtime.CompilerServices +[Serializable] +public enum MethodImplOptions // TypeDefIndex: 697 +{ + Unmanaged = 4, + NoInlining = 8, + ForwardRef = 16, + Synchronized = 32, + NoOptimization = 64, + PreserveSig = 128, + InternalCall = 4096 +} + +// Namespace: System.Runtime.CompilerServices +[Serializable] +public sealed class NativeCppClassAttribute : Attribute // TypeDefIndex: 698 +{ + // Methods + public void .ctor(); // 0x0037D404 +} + +// Namespace: System.Runtime.CompilerServices +[Serializable] +public sealed class RuntimeWrappedException : Exception // TypeDefIndex: 699 +{ + // Fields + private object wrapped_exception; // 0x34 + + // Properties + public object WrappedException { get; } // 0x0037E154 + + // Methods + private void .ctor(); // 0x0037E14C + public override void GetObjectData(SerializationInfo info, StreamingContext context); // 0x0037E15C +} + +// Namespace: System.Runtime.CompilerServices +[Serializable] +public sealed class ScopelessEnumAttribute : Attribute // TypeDefIndex: 700 +{ + // Methods + public void .ctor(); // 0x0037E20C +} + +// Namespace: System.Runtime.CompilerServices +public sealed class SpecialNameAttribute : Attribute // TypeDefIndex: 701 +{ + // Methods + public void .ctor(); // 0x0037E214 +} + +// Namespace: System.Runtime.CompilerServices +[Serializable] +public sealed class StringFreezingAttribute : Attribute // TypeDefIndex: 702 +{ + // Methods + public void .ctor(); // 0x0037E21C +} + +// Namespace: System.Runtime.CompilerServices +public sealed class SuppressIldasmAttribute : Attribute // TypeDefIndex: 703 +{ + // Methods + public void .ctor(); // 0x0037E224 +} + +// Namespace: System.Runtime.ConstrainedExecution +[Serializable] +public enum Cer // TypeDefIndex: 704 +{ + None = 0, + MayFail = 1, + Success = 2 +} + +// Namespace: System.Runtime.ConstrainedExecution +[Serializable] +public enum Consistency // TypeDefIndex: 705 +{ + MayCorruptProcess = 0, + MayCorruptAppDomain = 1, + MayCorruptInstance = 2, + WillNotCorruptState = 3 +} + +// Namespace: System.Runtime.ConstrainedExecution +public abstract class CriticalFinalizerObject // TypeDefIndex: 706 +{ + // Methods + protected void .ctor(); // 0x0037E25C + protected override void Finalize(); // 0x0037E264 +} + +// Namespace: System.Runtime.ConstrainedExecution +public sealed class PrePrepareMethodAttribute : Attribute // TypeDefIndex: 707 +{ + // Methods + public void .ctor(); // 0x0037E26C +} + +// Namespace: System.Runtime.ConstrainedExecution +public sealed class ReliabilityContractAttribute : Attribute // TypeDefIndex: 708 +{ + // Fields + private Consistency consistency; // 0x08 + private Cer cer; // 0x0C + + // Properties + public Cer Cer { get; } // 0x0037E29C + public Consistency ConsistencyGuarantee { get; } // 0x0037E2A4 + + // Methods + public void .ctor(Consistency consistencyGuarantee, Cer cer); // 0x0037E274 +} + +// Namespace: System.Runtime.Hosting +[Serializable] +public sealed class ActivationArguments // TypeDefIndex: 709 +{ + // Fields + private ActivationContext _context; // 0x08 + private ApplicationIdentity _identity; // 0x0C + private string[] _data; // 0x10 + + // Properties + public ActivationContext ActivationContext { get; } // 0x0037E5D0 + public string[] ActivationData { get; } // 0x0037E5D8 + public ApplicationIdentity ApplicationIdentity { get; } // 0x0037E5E0 + + // Methods + public void .ctor(ActivationContext activationData); // 0x0037E2C0 + public void .ctor(ApplicationIdentity applicationIdentity); // 0x0037E384 + public void .ctor(ActivationContext activationContext, string[] activationData); // 0x0037E440 + public void .ctor(ApplicationIdentity applicationIdentity, string[] activationData); // 0x0037E50C +} + +// Namespace: System.Runtime.Hosting +public class ApplicationActivator // TypeDefIndex: 710 +{ + // Methods + public void .ctor(); // 0x0037E5E8 + public virtual ObjectHandle CreateInstance(ActivationContext activationContext); // 0x0037E5F0 + public virtual ObjectHandle CreateInstance(ActivationContext activationContext, string[] activationCustomData); // 0x0037E604 + protected static ObjectHandle CreateInstanceHelper(AppDomainSetup adSetup); // 0x0037E6DC +} + +// Namespace: System.Runtime.InteropServices.ComTypes +public struct BINDPTR // TypeDefIndex: 711 +{ + // Fields + public IntPtr lpfuncdesc; // 0x08 + public IntPtr lptcomp; // 0x08 + public IntPtr lpvardesc; // 0x08 + +} + +// Namespace: System.Runtime.InteropServices.ComTypes +public struct BIND_OPTS // TypeDefIndex: 712 +{ + // Fields + public int cbStruct; // 0x08 + public int grfFlags; // 0x0C + public int grfMode; // 0x10 + public int dwTickCountDeadline; // 0x14 + +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[Serializable] +public enum CALLCONV // TypeDefIndex: 713 +{ + CC_CDECL = 1, + CC_PASCAL = 2, + CC_MSCPASCAL = 2, + CC_MACPASCAL = 3, + CC_STDCALL = 4, + CC_RESERVED = 5, + CC_SYSCALL = 6, + CC_MPWCDECL = 7, + CC_MPWPASCAL = 8, + CC_MAX = 9 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +public struct CONNECTDATA // TypeDefIndex: 714 +{ + // Fields + public object pUnk; // 0x08 + public int dwCookie; // 0x0C + +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[Serializable] +public enum DESCKIND // TypeDefIndex: 715 +{ + DESCKIND_NONE = 0, + DESCKIND_FUNCDESC = 1, + DESCKIND_VARDESC = 2, + DESCKIND_TYPECOMP = 3, + DESCKIND_IMPLICITAPPOBJ = 4, + DESCKIND_MAX = 5 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +public struct DISPPARAMS // TypeDefIndex: 716 +{ + // Fields + public IntPtr rgvarg; // 0x08 + public IntPtr rgdispidNamedArgs; // 0x0C + public int cArgs; // 0x10 + public int cNamedArgs; // 0x14 + +} + +// Namespace: System.Runtime.InteropServices.ComTypes +public struct ELEMDESC // TypeDefIndex: 717 +{ + // Fields + public TYPEDESC tdesc; // 0x08 + public DESCUNION desc; // 0x10 + +} + +// Namespace: +public struct DESCUNION // TypeDefIndex: 718 +{ + // Fields + public IDLDESC idldesc; // 0x08 + public PARAMDESC paramdesc; // 0x08 + +} + +// Namespace: System.Runtime.InteropServices.ComTypes +public struct EXCEPINFO // TypeDefIndex: 719 +{ + // Fields + public short wCode; // 0x08 + public short wReserved; // 0x0A + public string bstrSource; // 0x0C + public string bstrDescription; // 0x10 + public string bstrHelpFile; // 0x14 + public int dwHelpContext; // 0x18 + public IntPtr pvReserved; // 0x1C + public IntPtr pfnDeferredFillIn; // 0x20 + public int scode; // 0x24 + +} + +// Namespace: System.Runtime.InteropServices.ComTypes +public struct FILETIME // TypeDefIndex: 720 +{ + // Fields + public int dwLowDateTime; // 0x08 + public int dwHighDateTime; // 0x0C + +} + +// Namespace: System.Runtime.InteropServices.ComTypes +public struct FUNCDESC // TypeDefIndex: 721 +{ + // Fields + public int memid; // 0x08 + public IntPtr lprgscode; // 0x0C + public IntPtr lprgelemdescParam; // 0x10 + public FUNCKIND funckind; // 0x14 + public INVOKEKIND invkind; // 0x18 + public CALLCONV callconv; // 0x1C + public short cParams; // 0x20 + public short cParamsOpt; // 0x22 + public short oVft; // 0x24 + public short cScodes; // 0x26 + public ELEMDESC elemdescFunc; // 0x28 + public short wFuncFlags; // 0x38 + +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[Serializable] +public enum FUNCFLAGS // TypeDefIndex: 722 +{ + FUNCFLAG_FRESTRICTED = 1, + FUNCFLAG_FSOURCE = 2, + FUNCFLAG_FBINDABLE = 4, + FUNCFLAG_FREQUESTEDIT = 8, + FUNCFLAG_FDISPLAYBIND = 16, + FUNCFLAG_FDEFAULTBIND = 32, + FUNCFLAG_FHIDDEN = 64, + FUNCFLAG_FUSESGETLASTERROR = 128, + FUNCFLAG_FDEFAULTCOLLELEM = 256, + FUNCFLAG_FUIDEFAULT = 512, + FUNCFLAG_FNONBROWSABLE = 1024, + FUNCFLAG_FREPLACEABLE = 2048, + FUNCFLAG_FIMMEDIATEBIND = 4096 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[Serializable] +public enum FUNCKIND // TypeDefIndex: 723 +{ + FUNC_VIRTUAL = 0, + FUNC_PUREVIRTUAL = 1, + FUNC_NONVIRTUAL = 2, + FUNC_STATIC = 3, + FUNC_DISPATCH = 4 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[ComImport]public interface IBindCtx // TypeDefIndex: 724 +{ + // Methods + void RegisterObjectBound(object punk); // 0x0037F56C + void RevokeObjectBound(object punk); // 0x0037F634 + void ReleaseBoundObjects(); // 0x0037F6FC + void SetBindOptions(BIND_OPTS pbindopts); // 0x0037F738 + void GetBindOptions(BIND_OPTS pbindopts); // 0x0037F77C + void GetRunningObjectTable(out IRunningObjectTable pprot); // 0x0037F7C0 + void RegisterObjectParam(string pszKey, object punk); // 0x0037F8D4 + void GetObjectParam(string pszKey, out object ppunk); // 0x0037F9AC + void EnumObjectParam(out IEnumString ppenum); // 0x0037FAD0 + int RevokeObjectParam(string pszKey); // 0x0037FBE4 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[ComImport]public interface IConnectionPoint // TypeDefIndex: 725 +{ + // Methods + void GetConnectionInterface(out Guid pIID); // 0x0037FC48 + void GetConnectionPointContainer(out IConnectionPointContainer ppCPC); // 0x0037FC8C + void Advise(object pUnkSink, out int pdwCookie); // 0x0037FDA0 + void Unadvise(int dwCookie); // 0x0037FE70 + void EnumConnections(out IEnumConnections ppEnum); // 0x0037FEB4 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[ComImport]public interface IConnectionPointContainer // TypeDefIndex: 726 +{ + // Methods + void EnumConnectionPoints(out IEnumConnectionPoints ppEnum); // 0x0037FFC8 + void FindConnectionPoint(Guid riid, out IConnectionPoint ppCP); // 0x003800DC +} + +// Namespace: System.Runtime.InteropServices.ComTypes +public struct IDLDESC // TypeDefIndex: 727 +{ + // Fields + public IntPtr dwReserved; // 0x08 + public IDLFLAG wIDLFlags; // 0x0C + +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[Serializable] +public enum IDLFLAG // TypeDefIndex: 728 +{ + IDLFLAG_NONE = 0, + IDLFLAG_FIN = 1, + IDLFLAG_FOUT = 2, + IDLFLAG_FLCID = 4, + IDLFLAG_FRETVAL = 8 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[ComImport]public interface IEnumConnectionPoints // TypeDefIndex: 729 +{ + // Methods + int Next(int celt, out IConnectionPoint[] rgelt, IntPtr pceltFetched); // 0x003801F8 + int Skip(int celt); // 0x00380224 + void Reset(); // 0x00380280 + void Clone(out IEnumConnectionPoints ppenum); // 0x003802BC +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[ComImport]public interface IEnumConnections // TypeDefIndex: 730 +{ + // Methods + int Next(int celt, out CONNECTDATA[] rgelt, IntPtr pceltFetched); // 0x003803D0 + int Skip(int celt); // 0x00380514 + void Reset(); // 0x00380570 + void Clone(out IEnumConnections ppenum); // 0x003805AC +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[ComImport]public interface IEnumMoniker // TypeDefIndex: 731 +{ + // Methods + int Next(int celt, out IMoniker[] rgelt, IntPtr pceltFetched); // 0x003806C0 + int Skip(int celt); // 0x003806EC + void Reset(); // 0x00380748 + void Clone(out IEnumMoniker ppenum); // 0x00380784 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[ComImport]public interface IEnumString // TypeDefIndex: 732 +{ + // Methods + int Next(int celt, out string[] rgelt, IntPtr pceltFetched); // 0x00380898 + int Skip(int celt); // 0x003809A8 + void Reset(); // 0x00380A04 + void Clone(out IEnumString ppenum); // 0x00380A40 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[ComImport]public interface IEnumVARIANT // TypeDefIndex: 733 +{ + // Methods + int Next(int celt, out object[] rgVar, IntPtr pceltFetched); // 0x00380B54 + int Skip(int celt); // 0x00380BA0 + int Reset(); // 0x00380BFC + IEnumVARIANT Clone(); // 0x00380C50 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[Serializable] +public enum IMPLTYPEFLAGS // TypeDefIndex: 734 +{ + IMPLTYPEFLAG_FDEFAULT = 1, + IMPLTYPEFLAG_FSOURCE = 2, + IMPLTYPEFLAG_FRESTRICTED = 4, + IMPLTYPEFLAG_FDEFAULTVTABLE = 8 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[ComImport]public interface IMoniker // TypeDefIndex: 735 +{ + // Methods + void GetClassID(out Guid pClassID); // 0x00380D54 + int IsDirty(); // 0x00380D98 + void Load(IStream pStm); // 0x00380DEC + void Save(IStream pStm, bool fClearDirty); // 0x00380EB4 + void GetSizeMax(out long pcbSize); // 0x00380F84 + void BindToObject(IBindCtx pbc, IMoniker pmkToLeft, Guid riidResult, out object ppvResult); // 0x00380FC8 + void BindToStorage(IBindCtx pbc, IMoniker pmkToLeft, Guid riid, out object ppvObj); // 0x003811F0 + void Reduce(IBindCtx pbc, int dwReduceHowFar, IMoniker ppmkToLeft, out IMoniker ppmkReduced); // 0x00381418 + void ComposeWith(IMoniker pmkRight, bool fOnlyIfNotGeneric, out IMoniker ppmkComposite); // 0x003816A4 + void Enum(bool fForward, out IEnumMoniker ppenumMoniker); // 0x00381848 + int IsEqual(IMoniker pmkOtherMoniker); // 0x00381964 + void Hash(out int pdwHash); // 0x00381A40 + int IsRunning(IBindCtx pbc, IMoniker pmkToLeft, IMoniker pmkNewlyRunning); // 0x00381A84 + void GetTimeOfLastChange(IBindCtx pbc, IMoniker pmkToLeft, out FILETIME pFileTime); // 0x00381C64 + void Inverse(out IMoniker ppmk); // 0x00381DB4 + void CommonPrefixWith(IMoniker pmkOther, out IMoniker ppmkPrefix); // 0x00381EC8 + void RelativePathTo(IMoniker pmkOther, out IMoniker ppmkRelPath); // 0x00382064 + void GetDisplayName(IBindCtx pbc, IMoniker pmkToLeft, out string ppszDisplayName); // 0x00382200 + void ParseDisplayName(IBindCtx pbc, IMoniker pmkToLeft, string pszDisplayName, out int pchEaten, out IMoniker ppmkOut); // 0x00382370 + int IsSystemMoniker(out int pdwMksys); // 0x003825A8 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[Serializable] +public enum INVOKEKIND // TypeDefIndex: 736 +{ + INVOKE_FUNC = 1, + INVOKE_PROPERTYGET = 2, + INVOKE_PROPERTYPUT = 4, + INVOKE_PROPERTYPUTREF = 8 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[ComImport]public interface IPersistFile // TypeDefIndex: 737 +{ + // Methods + void GetClassID(out Guid pClassID); // 0x00382604 + int IsDirty(); // 0x00382648 + void Load(string pszFileName, int dwMode); // 0x0038269C + void Save(string pszFileName, bool fRemember); // 0x003826F0 + void SaveCompleted(string pszFileName); // 0x00382744 + void GetCurFile(out string ppszFileName); // 0x00382790 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[ComImport]public interface IRunningObjectTable // TypeDefIndex: 738 +{ + // Methods + int Register(int grfFlags, object punkObject, IMoniker pmkObjectName); // 0x003827F8 + void Revoke(int dwRegister); // 0x00382960 + int IsRunning(IMoniker pmkObjectName); // 0x003829A4 + int GetObject(IMoniker pmkObjectName, out object ppunkObject); // 0x00382A80 + void NoteChangeTime(int dwRegister, FILETIME pfiletime); // 0x00382C28 + int GetTimeOfLastChange(IMoniker pmkObjectName, out FILETIME pfiletime); // 0x00382C74 + void EnumRunning(out IEnumMoniker ppenumMoniker); // 0x00382D58 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[ComImport]public interface IStream // TypeDefIndex: 739 +{ + // Methods + void Read(out byte[] pv, int cb, IntPtr pcbRead); // 0x00382E6C + void Write(byte[] pv, int cb, IntPtr pcbWritten); // 0x00382F24 + void Seek(long dlibMove, int dwOrigin, IntPtr plibNewPosition); // 0x00382F80 + void SetSize(long libNewSize); // 0x00382FE4 + void CopyTo(IStream pstm, long cb, IntPtr pcbRead, IntPtr pcbWritten); // 0x00383030 + void Commit(int grfCommitFlags); // 0x00383124 + void Revert(); // 0x00383168 + void LockRegion(long libOffset, long cb, int dwLockType); // 0x003831A4 + void UnlockRegion(long libOffset, long cb, int dwLockType); // 0x00383210 + void Stat(out STATSTG pstatstg, int grfStatFlag); // 0x0038327C + void Clone(out IStream ppstm); // 0x00383320 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[ComImport]public interface ITypeComp // TypeDefIndex: 740 +{ + // Methods + void Bind(string szName, int lHashVal, short wFlags, out ITypeInfo ppTInfo, out DESCKIND pDescKind, out BINDPTR pBindPtr); // 0x00383434 + void BindType(string szName, int lHashVal, out ITypeInfo ppTInfo, out ITypeComp ppTComp); // 0x00383578 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[ComImport]public interface ITypeInfo // TypeDefIndex: 741 +{ + // Methods + void GetTypeAttr(out IntPtr ppTypeAttr); // 0x00383730 + void GetTypeComp(out ITypeComp ppTComp); // 0x00383774 + void GetFuncDesc(int index, out IntPtr ppFuncDesc); // 0x00383888 + void GetVarDesc(int index, out IntPtr ppVarDesc); // 0x003838D4 + void GetNames(int memid, out string[] rgBstrNames, int cMaxNames, out int pcNames); // 0x00383920 + void GetRefTypeOfImplType(int index, out int href); // 0x00383A24 + void GetImplTypeFlags(int index, out IMPLTYPEFLAGS pImplTypeFlags); // 0x00383A70 + void GetIDsOfNames(string[] rgszNames, int cNames, out int[] pMemId); // 0x00383ABC + void Invoke(object pvInstance, int memid, short wFlags, DISPPARAMS pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, out int puArgErr); // 0x00383C28 + void GetDocumentation(int index, out string strName, out string strDocString, out int dwHelpContext, out string strHelpFile); // 0x00383D24 + void GetDllEntry(int memid, INVOKEKIND invKind, IntPtr pBstrDllName, IntPtr pBstrName, IntPtr pwOrdinal); // 0x00383DE4 + void GetRefTypeInfo(int hRef, out ITypeInfo ppTI); // 0x00383E54 + void AddressOfMember(int memid, INVOKEKIND invKind, out IntPtr ppv); // 0x00383F70 + void CreateInstance(object pUnkOuter, Guid riid, out object ppvObj); // 0x00383FC4 + void GetMops(int memid, out string pBstrMops); // 0x00384168 + void GetContainingTypeLib(out ITypeLib ppTLB, out int pIndex); // 0x003841D8 + void ReleaseTypeAttr(IntPtr pTypeAttr); // 0x003842F4 + void ReleaseFuncDesc(IntPtr pFuncDesc); // 0x00384338 + void ReleaseVarDesc(IntPtr pVarDesc); // 0x0038437C +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[ComImport]public interface ITypeInfo2 : ITypeInfo // TypeDefIndex: 742 +{ + // Methods + void AddressOfMember(int memid, INVOKEKIND invKind, out IntPtr ppv); // 0x003843C0 + void CreateInstance(object pUnkOuter, Guid riid, out object ppvObj); // 0x00384414 + void GetContainingTypeLib(out ITypeLib ppTLB, out int pIndex); // 0x003845B8 + void GetDllEntry(int memid, INVOKEKIND invKind, IntPtr pBstrDllName, IntPtr pBstrName, IntPtr pwOrdinal); // 0x003846D4 + void GetDocumentation(int index, out string strName, out string strDocString, out int dwHelpContext, out string strHelpFile); // 0x00384744 + void GetIDsOfNames(string[] rgszNames, int cNames, out int[] pMemId); // 0x00384804 + void GetImplTypeFlags(int index, out IMPLTYPEFLAGS pImplTypeFlags); // 0x00384970 + void GetTypeKind(out TYPEKIND pTypeKind); // 0x003849BC + void GetTypeFlags(out int pTypeFlags); // 0x00384A00 + void GetFuncDesc(int index, out IntPtr ppFuncDesc); // 0x00384A44 + void GetMops(int memid, out string pBstrMops); // 0x00384A90 + void GetNames(int memid, out string[] rgBstrNames, int cMaxNames, out int pcNames); // 0x00384B00 + void GetRefTypeInfo(int hRef, out ITypeInfo ppTI); // 0x00384C04 + void GetRefTypeOfImplType(int index, out int href); // 0x00384D20 + void GetTypeAttr(out IntPtr ppTypeAttr); // 0x00384D6C + void GetTypeComp(out ITypeComp ppTComp); // 0x00384DB0 + void GetVarDesc(int index, out IntPtr ppVarDesc); // 0x00384EC4 + void GetFuncIndexOfMemId(int memid, INVOKEKIND invKind, out int pFuncIndex); // 0x00384F10 + void GetVarIndexOfMemId(int memid, out int pVarIndex); // 0x00384F64 + void GetCustData(Guid guid, out object pVarVal); // 0x00384FB0 + void GetFuncCustData(int index, Guid guid, out object pVarVal); // 0x00385024 + void GetParamCustData(int indexFunc, int indexParam, Guid guid, out object pVarVal); // 0x003850A0 + void GetVarCustData(int index, Guid guid, out object pVarVal); // 0x00385128 + void GetImplTypeCustData(int index, Guid guid, out object pVarVal); // 0x003851A4 + void GetDocumentation2(int memid, out string pbstrHelpString, out int pdwHelpStringContext, out string pbstrHelpStringDll); // 0x00385220 + void GetAllCustData(IntPtr pCustData); // 0x003852C0 + void GetAllFuncCustData(int index, IntPtr pCustData); // 0x00385304 + void GetAllParamCustData(int indexFunc, int indexParam, IntPtr pCustData); // 0x00385350 + void GetAllVarCustData(int index, IntPtr pCustData); // 0x003853A4 + void GetAllImplTypeCustData(int index, IntPtr pCustData); // 0x003853F0 + void Invoke(object pvInstance, int memid, short wFlags, DISPPARAMS pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, out int puArgErr); // 0x0038543C + void ReleaseTypeAttr(IntPtr pTypeAttr); // 0x00385538 + void ReleaseFuncDesc(IntPtr pFuncDesc); // 0x0038557C + void ReleaseVarDesc(IntPtr pVarDesc); // 0x003855C0 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[ComImport]public interface ITypeLib // TypeDefIndex: 743 +{ + // Methods + int GetTypeInfoCount(); // 0x002B519C + void GetTypeInfo(int index, out ITypeInfo ppTI); // 0x002B51F0 + void GetTypeInfoType(int index, out TYPEKIND pTKind); // 0x002B530C + void GetTypeInfoOfGuid(Guid guid, out ITypeInfo ppTInfo); // 0x002B5358 + void GetLibAttr(out IntPtr ppTLibAttr); // 0x002B5474 + void GetTypeComp(out ITypeComp ppTComp); // 0x002B54B8 + void GetDocumentation(int index, out string strName, out string strDocString, out int dwHelpContext, out string strHelpFile); // 0x002B55CC + bool IsName(string szNameBuf, int lHashVal); // 0x002B568C + void FindName(string szNameBuf, int lHashVal, out ITypeInfo[] ppTInfo, out int[] rgMemId, short pcFound); // 0x002B5700 + void ReleaseTLibAttr(IntPtr pTLibAttr); // 0x002B572C +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[ComImport]public interface ITypeLib2 : ITypeLib // TypeDefIndex: 744 +{ + // Methods + void FindName(string szNameBuf, int lHashVal, out ITypeInfo[] ppTInfo, out int[] rgMemId, short pcFound); // 0x002B5770 + void GetCustData(Guid guid, out object pVarVal); // 0x002B579C + void GetDocumentation(int index, out string strName, out string strDocString, out int dwHelpContext, out string strHelpFile); // 0x002B5810 + void GetLibAttr(out IntPtr ppTLibAttr); // 0x002B58D0 + void GetLibStatistics(IntPtr pcUniqueNames, out int pcchUniqueNames); // 0x002B5914 + void GetDocumentation2(int index, out string pbstrHelpString, out int pdwHelpStringContext, out string pbstrHelpStringDll); // 0x002B5960 + void GetAllCustData(IntPtr pCustData); // 0x002B5A00 + void GetTypeComp(out ITypeComp ppTComp); // 0x002B5A44 + void GetTypeInfo(int index, out ITypeInfo ppTI); // 0x002B5B58 + void GetTypeInfoOfGuid(Guid guid, out ITypeInfo ppTInfo); // 0x002B5C74 + void GetTypeInfoType(int index, out TYPEKIND pTKind); // 0x002B5D90 + bool IsName(string szNameBuf, int lHashVal); // 0x002B5DDC + void ReleaseTLibAttr(IntPtr pTLibAttr); // 0x002B5E50 + int GetTypeInfoCount(); // 0x002B5E94 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[Serializable] +public enum LIBFLAGS // TypeDefIndex: 745 +{ + LIBFLAG_FRESTRICTED = 1, + LIBFLAG_FCONTROL = 2, + LIBFLAG_FHIDDEN = 4, + LIBFLAG_FHASDISKIMAGE = 8 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +public struct PARAMDESC // TypeDefIndex: 746 +{ + // Fields + public IntPtr lpVarValue; // 0x08 + public PARAMFLAG wParamFlags; // 0x0C + +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[Serializable] +public enum PARAMFLAG // TypeDefIndex: 747 +{ + PARAMFLAG_NONE = 0, + PARAMFLAG_FIN = 1, + PARAMFLAG_FOUT = 2, + PARAMFLAG_FLCID = 4, + PARAMFLAG_FRETVAL = 8, + PARAMFLAG_FOPT = 16, + PARAMFLAG_FHASDEFAULT = 32, + PARAMFLAG_FHASCUSTDATA = 64 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +public struct STATSTG // TypeDefIndex: 748 +{ + // Fields + public string pwcsName; // 0x08 + public int type; // 0x0C + public long cbSize; // 0x10 + public FILETIME mtime; // 0x18 + public FILETIME ctime; // 0x20 + public FILETIME atime; // 0x28 + public int grfMode; // 0x30 + public int grfLocksSupported; // 0x34 + public Guid clsid; // 0x38 + public int grfStateBits; // 0x48 + public int reserved; // 0x4C + +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[Serializable] +public enum SYSKIND // TypeDefIndex: 749 +{ + SYS_WIN16 = 0, + SYS_WIN32 = 1, + SYS_MAC = 2, + SYS_WIN64 = 3 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +public struct TYPEATTR // TypeDefIndex: 750 +{ + // Fields + public const int MEMBER_ID_NIL = -1; // 0x00 + public Guid guid; // 0x08 + public int lcid; // 0x18 + public int dwReserved; // 0x1C + public int memidConstructor; // 0x20 + public int memidDestructor; // 0x24 + public IntPtr lpstrSchema; // 0x28 + public int cbSizeInstance; // 0x2C + public TYPEKIND typekind; // 0x30 + public short cFuncs; // 0x34 + public short cVars; // 0x36 + public short cImplTypes; // 0x38 + public short cbSizeVft; // 0x3A + public short cbAlignment; // 0x3C + public TYPEFLAGS wTypeFlags; // 0x40 + public short wMajorVerNum; // 0x44 + public short wMinorVerNum; // 0x46 + public TYPEDESC tdescAlias; // 0x48 + public IDLDESC idldescType; // 0x50 + +} + +// Namespace: System.Runtime.InteropServices.ComTypes +public struct TYPEDESC // TypeDefIndex: 751 +{ + // Fields + public IntPtr lpValue; // 0x08 + public short vt; // 0x0C + +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[Serializable] +public enum TYPEFLAGS // TypeDefIndex: 752 +{ + TYPEFLAG_FAPPOBJECT = 1, + TYPEFLAG_FCANCREATE = 2, + TYPEFLAG_FLICENSED = 4, + TYPEFLAG_FPREDECLID = 8, + TYPEFLAG_FHIDDEN = 16, + TYPEFLAG_FCONTROL = 32, + TYPEFLAG_FDUAL = 64, + TYPEFLAG_FNONEXTENSIBLE = 128, + TYPEFLAG_FOLEAUTOMATION = 256, + TYPEFLAG_FRESTRICTED = 512, + TYPEFLAG_FAGGREGATABLE = 1024, + TYPEFLAG_FREPLACEABLE = 2048, + TYPEFLAG_FDISPATCHABLE = 4096, + TYPEFLAG_FREVERSEBIND = 8192, + TYPEFLAG_FPROXY = 16384 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[Serializable] +public enum TYPEKIND // TypeDefIndex: 753 +{ + TKIND_ENUM = 0, + TKIND_RECORD = 1, + TKIND_MODULE = 2, + TKIND_INTERFACE = 3, + TKIND_DISPATCH = 4, + TKIND_COCLASS = 5, + TKIND_ALIAS = 6, + TKIND_UNION = 7, + TKIND_MAX = 8 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[Serializable] +public struct TYPELIBATTR // TypeDefIndex: 754 +{ + // Fields + public Guid guid; // 0x08 + public int lcid; // 0x18 + public SYSKIND syskind; // 0x1C + public short wMajorVerNum; // 0x20 + public short wMinorVerNum; // 0x22 + public LIBFLAGS wLibFlags; // 0x24 + +} + +// Namespace: System.Runtime.InteropServices.ComTypes +public struct VARDESC // TypeDefIndex: 755 +{ + // Fields + public int memid; // 0x08 + public string lpstrSchema; // 0x0C + public DESCUNION desc; // 0x10 + public ELEMDESC elemdescVar; // 0x14 + public short wVarFlags; // 0x24 + public VARKIND varkind; // 0x28 + +} + +// Namespace: +public struct DESCUNION // TypeDefIndex: 756 +{ + // Fields + public IntPtr lpvarValue; // 0x08 + public int oInst; // 0x08 + +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[Serializable] +public enum VARFLAGS // TypeDefIndex: 757 +{ + VARFLAG_FREADONLY = 1, + VARFLAG_FSOURCE = 2, + VARFLAG_FBINDABLE = 4, + VARFLAG_FREQUESTEDIT = 8, + VARFLAG_FDISPLAYBIND = 16, + VARFLAG_FDEFAULTBIND = 32, + VARFLAG_FHIDDEN = 64, + VARFLAG_FRESTRICTED = 128, + VARFLAG_FDEFAULTCOLLELEM = 256, + VARFLAG_FUIDEFAULT = 512, + VARFLAG_FNONBROWSABLE = 1024, + VARFLAG_FREPLACEABLE = 2048, + VARFLAG_FIMMEDIATEBIND = 4096 +} + +// Namespace: System.Runtime.InteropServices.ComTypes +[Serializable] +public enum VARKIND // TypeDefIndex: 758 +{ + VAR_PERINSTANCE = 0, + VAR_STATIC = 1, + VAR_CONST = 2, + VAR_DISPATCH = 3 +} + +// Namespace: System.Runtime.InteropServices.Expando +public interface IExpando : IReflect // TypeDefIndex: 759 +{ + // Methods + FieldInfo AddField(string name); + MethodInfo AddMethod(string name, Delegate method); + PropertyInfo AddProperty(string name); + void RemoveMember(MemberInfo m); +} + +// Namespace: System.Runtime.InteropServices +public sealed class AllowReversePInvokeCallsAttribute : Attribute // TypeDefIndex: 760 +{ + // Methods + public void .ctor(); // 0x0037EA68 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public struct ArrayWithOffset // TypeDefIndex: 761 +{ + // Fields + private object array; // 0x08 + private int offset; // 0x0C + + // Methods + public void .ctor(object array, int offset); // 0x000A687C + public override bool Equals(object obj); // 0x000A6888 + public bool Equals(ArrayWithOffset obj); // 0x000A6890 + public override int GetHashCode(); // 0x000A68B8 + public object GetArray(); // 0x000A68C0 + public int GetOffset(); // 0x000A68C8 + public static bool op_Equality(ArrayWithOffset a, ArrayWithOffset b); // 0x0037EB60 + public static bool op_Inequality(ArrayWithOffset a, ArrayWithOffset b); // 0x0037EB78 +} + +// Namespace: System.Runtime.InteropServices +public enum AssemblyRegistrationFlags // TypeDefIndex: 762 +{ + None = 0, + SetCodeBase = 1 +} + +// Namespace: System.Runtime.InteropServices +public sealed class AutomationProxyAttribute : Attribute // TypeDefIndex: 763 +{ + // Fields + private bool val; // 0x08 + + // Properties + public bool Value { get; } // 0x0037EBAC + + // Methods + public void .ctor(bool val); // 0x0037EB8C +} + +// Namespace: System.Runtime.InteropServices +public struct BINDPTR // TypeDefIndex: 764 +{ + // Fields + public IntPtr lpfuncdesc; // 0x08 + public IntPtr lptcomp; // 0x08 + public IntPtr lpvardesc; // 0x08 + +} + +// Namespace: System.Runtime.InteropServices +public struct BIND_OPTS // TypeDefIndex: 765 +{ + // Fields + public int cbStruct; // 0x08 + public int grfFlags; // 0x0C + public int grfMode; // 0x10 + public int dwTickCountDeadline; // 0x14 + +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public sealed class BStrWrapper // TypeDefIndex: 766 +{ + // Fields + private string _value; // 0x08 + + // Properties + public string WrappedObject { get; } // 0x0037EBD4 + + // Methods + public void .ctor(string value); // 0x0037EBB4 +} + +// Namespace: System.Runtime.InteropServices +public sealed class BestFitMappingAttribute : Attribute // TypeDefIndex: 767 +{ + // Fields + private bool bfm; // 0x08 + public bool ThrowOnUnmappableChar; // 0x09 + + // Properties + public bool BestFitMapping { get; } // 0x0037EBFC + + // Methods + public void .ctor(bool BestFitMapping); // 0x0037EBDC +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum CALLCONV // TypeDefIndex: 768 +{ + CC_CDECL = 1, + CC_PASCAL = 2, + CC_MSCPASCAL = 2, + CC_MACPASCAL = 3, + CC_STDCALL = 4, + CC_RESERVED = 5, + CC_SYSCALL = 6, + CC_MPWCDECL = 7, + CC_MPWPASCAL = 8, + CC_MAX = 9 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public class COMException : ExternalException // TypeDefIndex: 769 +{ + // Methods + public void .ctor(); // 0x0037EC04 + public void .ctor(string message); // 0x0037EC0C + public void .ctor(string message, Exception inner); // 0x0037EC14 + public void .ctor(string message, int errorCode); // 0x0037EC1C + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x0037EC24 + public override string ToString(); // 0x0037EC44 +} + +// Namespace: System.Runtime.InteropServices +public struct CONNECTDATA // TypeDefIndex: 770 +{ + // Fields + public object pUnk; // 0x08 + public int dwCookie; // 0x0C + +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum CallingConvention // TypeDefIndex: 771 +{ + Winapi = 1, + Cdecl = 2, + StdCall = 3, + ThisCall = 4, + FastCall = 5 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum CharSet // TypeDefIndex: 772 +{ + None = 1, + Ansi = 2, + Unicode = 3, + Auto = 4 +} + +// Namespace: System.Runtime.InteropServices +public sealed class ClassInterfaceAttribute : Attribute // TypeDefIndex: 773 +{ + // Fields + private ClassInterfaceType ciType; // 0x08 + + // Properties + public ClassInterfaceType Value { get; } // 0x0037F06C + + // Methods + public void .ctor(short classInterfaceType); // 0x0037F02C + public void .ctor(ClassInterfaceType classInterfaceType); // 0x0037F04C +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum ClassInterfaceType // TypeDefIndex: 774 +{ + None = 0, + AutoDispatch = 1, + AutoDual = 2 +} + +// Namespace: System.Runtime.InteropServices +public sealed class ComAliasNameAttribute : Attribute // TypeDefIndex: 775 +{ + // Fields + private string val; // 0x08 + + // Properties + public string Value { get; } // 0x0037F0BC + + // Methods + public void .ctor(string alias); // 0x0037F09C +} + +// Namespace: System.Runtime.InteropServices +public sealed class ComCompatibleVersionAttribute : Attribute // TypeDefIndex: 776 +{ + // Fields + private int major; // 0x08 + private int minor; // 0x0C + private int build; // 0x10 + private int revision; // 0x14 + + // Properties + public int MajorVersion { get; } // 0x0037F0FC + public int MinorVersion { get; } // 0x0037F104 + public int BuildNumber { get; } // 0x0037F10C + public int RevisionNumber { get; } // 0x0037F114 + + // Methods + public void .ctor(int major, int minor, int build, int revision); // 0x0037F0C4 +} + +// Namespace: System.Runtime.InteropServices +public sealed class ComConversionLossAttribute : Attribute // TypeDefIndex: 777 +{ + // Methods + public void .ctor(); // 0x0037F11C +} + +// Namespace: System.Runtime.InteropServices +public sealed class ComDefaultInterfaceAttribute : Attribute // TypeDefIndex: 778 +{ + // Fields + private Type _type; // 0x08 + + // Properties + public Type Value { get; } // 0x0037F144 + + // Methods + public void .ctor(Type defaultInterface); // 0x0037F124 +} + +// Namespace: System.Runtime.InteropServices +public sealed class ComEventInterfaceAttribute : Attribute // TypeDefIndex: 779 +{ + // Fields + private Type si; // 0x08 + private Type ep; // 0x0C + + // Properties + public Type EventProvider { get; } // 0x0037F174 + public Type SourceInterface { get; } // 0x0037F17C + + // Methods + public void .ctor(Type SourceInterface, Type EventProvider); // 0x0037F14C +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum ComInterfaceType // TypeDefIndex: 780 +{ + InterfaceIsDual = 0, + InterfaceIsIUnknown = 1, + InterfaceIsIDispatch = 2 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum ComMemberType // TypeDefIndex: 781 +{ + Method = 0, + PropGet = 1, + PropSet = 2 +} + +// Namespace: System.Runtime.InteropServices +public sealed class ComRegisterFunctionAttribute : Attribute // TypeDefIndex: 782 +{ + // Methods + public void .ctor(); // 0x0037F18C +} + +// Namespace: System.Runtime.InteropServices +public sealed class ComSourceInterfacesAttribute : Attribute // TypeDefIndex: 783 +{ + // Fields + private string internalValue; // 0x08 + + // Properties + public string Value { get; } // 0x0037F564 + + // Methods + public void .ctor(string sourceInterfaces); // 0x0037F194 + public void .ctor(Type sourceInterface); // 0x0037F1B4 + public void .ctor(Type sourceInterface1, Type sourceInterface2); // 0x0037F1F8 + public void .ctor(Type sourceInterface1, Type sourceInterface2, Type sourceInterface3); // 0x0037F2E8 + public void .ctor(Type sourceInterface1, Type sourceInterface2, Type sourceInterface3, Type sourceInterface4); // 0x0037F408 +} + +// Namespace: System.Runtime.InteropServices +public sealed class ComUnregisterFunctionAttribute : Attribute // TypeDefIndex: 784 +{ + // Methods + public void .ctor(); // 0x002B5EE8 +} + +// Namespace: System.Runtime.InteropServices +public abstract class CriticalHandle : CriticalFinalizerObject, IDisposable // TypeDefIndex: 785 +{ + // Fields + protected IntPtr handle; // 0x08 + private bool _disposed; // 0x0C + + // Properties + public bool IsClosed { get; } // 0x002B6080 + public abstract bool IsInvalid { get; } + + // Methods + protected void .ctor(IntPtr invalidHandleValue); // 0x002B5F18 + protected override void Finalize(); // 0x002B5F38 + public void Close(); // 0x002B5FB0 + public void Dispose(); // 0x002B5FC4 + protected virtual void Dispose(bool disposing); // 0x002B5FD8 + protected abstract bool ReleaseHandle(); + protected void SetHandle(IntPtr handle); // 0x002B606C + public void SetHandleAsInvalid(); // 0x002B6074 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public sealed class CurrencyWrapper // TypeDefIndex: 786 +{ + // Fields + private Decimal currency; // 0x08 + + // Properties + public Decimal WrappedObject { get; } // 0x002B623C + + // Methods + public void .ctor(Decimal obj); // 0x002B6088 + public void .ctor(object obj); // 0x002B60C0 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum DESCKIND // TypeDefIndex: 787 +{ + DESCKIND_NONE = 0, + DESCKIND_FUNCDESC = 1, + DESCKIND_VARDESC = 2, + DESCKIND_TYPECOMP = 3, + DESCKIND_IMPLICITAPPOBJ = 4, + DESCKIND_MAX = 5 +} + +// Namespace: System.Runtime.InteropServices +public struct DISPPARAMS // TypeDefIndex: 788 +{ + // Fields + public IntPtr rgvarg; // 0x08 + public IntPtr rgdispidNamedArgs; // 0x0C + public int cArgs; // 0x10 + public int cNamedArgs; // 0x14 + +} + +// Namespace: System.Runtime.InteropServices +public sealed class DispIdAttribute : Attribute // TypeDefIndex: 789 +{ + // Fields + private int id; // 0x08 + + // Properties + public int Value { get; } // 0x002B6294 + + // Methods + public void .ctor(int dispId); // 0x002B6274 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public sealed class DispatchWrapper // TypeDefIndex: 790 +{ + // Fields + private object wrappedObject; // 0x08 + + // Properties + public object WrappedObject { get; } // 0x002B63BC + + // Methods + public void .ctor(object obj); // 0x002B629C +} + +// Namespace: System.Runtime.InteropServices +public struct ELEMDESC // TypeDefIndex: 791 +{ + // Fields + public TYPEDESC tdesc; // 0x08 + public DESCUNION desc; // 0x10 + +} + +// Namespace: +public struct DESCUNION // TypeDefIndex: 792 +{ + // Fields + public IDLDESC idldesc; // 0x08 + public PARAMDESC paramdesc; // 0x08 + +} + +// Namespace: System.Runtime.InteropServices +public struct EXCEPINFO // TypeDefIndex: 793 +{ + // Fields + public short wCode; // 0x08 + public short wReserved; // 0x0A + public string bstrSource; // 0x0C + public string bstrDescription; // 0x10 + public string bstrHelpFile; // 0x14 + public int dwHelpContext; // 0x18 + public IntPtr pvReserved; // 0x1C + public IntPtr pfnDeferredFillIn; // 0x20 + +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public sealed class ErrorWrapper // TypeDefIndex: 794 +{ + // Fields + private int errorCode; // 0x08 + + // Properties + public int ErrorCode { get; } // 0x002B6624 + + // Methods + public void .ctor(Exception e); // 0x002B63EC + public void .ctor(int errorCode); // 0x002B648C + public void .ctor(object errorCode); // 0x002B64AC +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum ExporterEventKind // TypeDefIndex: 795 +{ + NOTIF_TYPECONVERTED = 0, + NOTIF_CONVERTWARNING = 1, + ERROR_REFTOINVALIDASSEMBLY = 2 +} + +// Namespace: System.Runtime.InteropServices +public sealed class ExtensibleClassFactory // TypeDefIndex: 796 +{ + // Fields + private static Hashtable hashtable; // 0x00 + + // Methods + private void .ctor(); // 0x002B662C + private static void .cctor(); // 0x002B6634 + internal static ObjectCreationDelegate GetObjectCreationCallback(Type t); // 0x002B66B4 + public static void RegisterObjectCreationCallback(ObjectCreationDelegate callback); // 0x002B6798 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public class ExternalException : SystemException // TypeDefIndex: 797 +{ + // Properties + public virtual int ErrorCode { get; } // 0x002B6AAC + + // Methods + public void .ctor(); // 0x002B69A4 + public void .ctor(string message); // 0x002B6A24 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x002B6A48 + public void .ctor(string message, Exception inner); // 0x002B6A68 + public void .ctor(string message, int errorCode); // 0x002B6A8C +} + +// Namespace: System.Runtime.InteropServices +public struct FILETIME // TypeDefIndex: 798 +{ + // Fields + public int dwLowDateTime; // 0x08 + public int dwHighDateTime; // 0x0C + +} + +// Namespace: System.Runtime.InteropServices +public struct FUNCDESC // TypeDefIndex: 799 +{ + // Fields + public int memid; // 0x08 + public IntPtr lprgscode; // 0x0C + public IntPtr lprgelemdescParam; // 0x10 + public FUNCKIND funckind; // 0x14 + public INVOKEKIND invkind; // 0x18 + public CALLCONV callconv; // 0x1C + public short cParams; // 0x20 + public short cParamsOpt; // 0x22 + public short oVft; // 0x24 + public short cScodes; // 0x26 + public ELEMDESC elemdescFunc; // 0x28 + public short wFuncFlags; // 0x38 + +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum FUNCFLAGS // TypeDefIndex: 800 +{ + FUNCFLAG_FRESTRICTED = 1, + FUNCFLAG_FSOURCE = 2, + FUNCFLAG_FBINDABLE = 4, + FUNCFLAG_FREQUESTEDIT = 8, + FUNCFLAG_FDISPLAYBIND = 16, + FUNCFLAG_FDEFAULTBIND = 32, + FUNCFLAG_FHIDDEN = 64, + FUNCFLAG_FUSESGETLASTERROR = 128, + FUNCFLAG_FDEFAULTCOLLELEM = 256, + FUNCFLAG_FUIDEFAULT = 512, + FUNCFLAG_FNONBROWSABLE = 1024, + FUNCFLAG_FREPLACEABLE = 2048, + FUNCFLAG_FIMMEDIATEBIND = 4096 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum FUNCKIND // TypeDefIndex: 801 +{ + FUNC_VIRTUAL = 0, + FUNC_PUREVIRTUAL = 1, + FUNC_NONVIRTUAL = 2, + FUNC_STATIC = 3, + FUNC_DISPATCH = 4 +} + +// Namespace: System.Runtime.InteropServices +public struct GCHandle // TypeDefIndex: 802 +{ + // Fields + private int handle; // 0x08 + + // Properties + public bool IsAllocated { get; } // 0x0008CE5C + public object Target { get; set; } // 0x0008CE6C 0x0008CE74 + + // Methods + private void .ctor(IntPtr h); // 0x0008CDF0 + private void .ctor(object obj); // 0x0008CE10 + private void .ctor(object value, GCHandleType type); // 0x0008CE34 + public IntPtr AddrOfPinnedObject(); // 0x0008CE9C + public static GCHandle Alloc(object value); // 0x002B6D88 + public static GCHandle Alloc(object value, GCHandleType type); // 0x002B6D94 + public void Free(); // 0x0008CEA4 + private static bool CheckCurrentDomain(int handle); // 0x002B6DCC + private static object GetTarget(int handle); // 0x002B6C1C + private static int GetTargetHandle(object obj, int handle, GCHandleType type); // 0x002B6B48 + private static void FreeHandle(int handle); // 0x002B6DC8 + private static IntPtr GetAddrOfPinnedObject(int handle); // 0x002B6D84 + public override bool Equals(object o); // 0x0008CEC4 + public override int GetHashCode(); // 0x0008CECC + public static GCHandle FromIntPtr(IntPtr value); // 0x002B6E6C + public static IntPtr ToIntPtr(GCHandle value); // 0x002B6F94 + public static IntPtr op_Explicit(GCHandle value); // 0x002B6F9C + public static GCHandle op_Explicit(IntPtr value); // 0x002B6E70 + public static bool op_Equality(GCHandle a, GCHandle b); // 0x002B6FA4 + public static bool op_Inequality(GCHandle a, GCHandle b); // 0x002B7024 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum GCHandleType // TypeDefIndex: 803 +{ + Weak = 0, + WeakTrackResurrection = 1, + Normal = 2, + Pinned = 3 +} + +// Namespace: System.Runtime.InteropServices +public struct HandleRef // TypeDefIndex: 804 +{ + // Fields + private object wrapper; // 0x08 + private IntPtr handle; // 0x0C + + // Properties + public IntPtr Handle { get; } // 0x0008CEE4 + public object Wrapper { get; } // 0x0008CEEC + + // Methods + public void .ctor(object wrapper, IntPtr handle); // 0x0008CED8 + public static IntPtr ToIntPtr(HandleRef value); // 0x002B70E8 + public static IntPtr op_Explicit(HandleRef value); // 0x002B70F0 +} + +// Namespace: System.Runtime.InteropServices +public interface ICustomAdapter // TypeDefIndex: 805 +{ + // Methods + object GetUnderlyingObject(); +} + +// Namespace: System.Runtime.InteropServices +public interface ICustomFactory // TypeDefIndex: 806 +{ + // Methods + MarshalByRefObject CreateInstance(Type serverType); +} + +// Namespace: System.Runtime.InteropServices +public interface ICustomMarshaler // TypeDefIndex: 807 +{ + // Methods + void CleanUpManagedData(object ManagedObj); + void CleanUpNativeData(IntPtr pNativeData); + int GetNativeDataSize(); + IntPtr MarshalManagedToNative(object ManagedObj); + object MarshalNativeToManaged(IntPtr pNativeData); +} + +// Namespace: System.Runtime.InteropServices +public struct IDLDESC // TypeDefIndex: 808 +{ + // Fields + public int dwReserved; // 0x08 + public IDLFLAG wIDLFlags; // 0x0C + +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum IDLFLAG // TypeDefIndex: 809 +{ + IDLFLAG_NONE = 0, + IDLFLAG_FIN = 1, + IDLFLAG_FOUT = 2, + IDLFLAG_FLCID = 4, + IDLFLAG_FRETVAL = 8 +} + +// Namespace: System.Runtime.InteropServices +public sealed class IDispatchImplAttribute : Attribute // TypeDefIndex: 810 +{ + // Fields + private IDispatchImplType Impl; // 0x08 + + // Properties + public IDispatchImplType Value { get; } // 0x002B7138 + + // Methods + public void .ctor(IDispatchImplType implType); // 0x002B70F8 + public void .ctor(short implType); // 0x002B7118 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum IDispatchImplType // TypeDefIndex: 811 +{ + SystemDefinedImpl = 0, + InternalImpl = 1, + CompatibleImpl = 2 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum IMPLTYPEFLAGS // TypeDefIndex: 812 +{ + IMPLTYPEFLAG_FDEFAULT = 1, + IMPLTYPEFLAG_FSOURCE = 2, + IMPLTYPEFLAG_FRESTRICTED = 4, + IMPLTYPEFLAG_FDEFAULTVTABLE = 8 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum INVOKEKIND // TypeDefIndex: 813 +{ + INVOKE_FUNC = 1, + INVOKE_PROPERTYGET = 2, + INVOKE_PROPERTYPUT = 4, + INVOKE_PROPERTYPUTREF = 8 +} + +// Namespace: System.Runtime.InteropServices +public interface IRegistrationServices // TypeDefIndex: 814 +{ + // Methods + Guid GetManagedCategoryGuid(); + string GetProgIdForType(Type type); + Type[] GetRegistrableTypesInAssembly(Assembly assembly); + bool RegisterAssembly(Assembly assembly, AssemblyRegistrationFlags flags); + void RegisterTypeForComClients(Type type, Guid g); + bool TypeRepresentsComType(Type type); + bool TypeRequiresRegistration(Type type); + bool UnregisterAssembly(Assembly assembly); +} + +// Namespace: System.Runtime.InteropServices +public interface ITypeLibConverter // TypeDefIndex: 815 +{ + // Methods + object ConvertAssemblyToTypeLib(Assembly assembly, string typeLibName, TypeLibExporterFlags flags, ITypeLibExporterNotifySink notifySink); + AssemblyBuilder ConvertTypeLibToAssembly(object typeLib, string asmFileName, int flags, ITypeLibImporterNotifySink notifySink, byte[] publicKey, StrongNameKeyPair keyPair, bool unsafeInterfaces); + AssemblyBuilder ConvertTypeLibToAssembly(object typeLib, string asmFileName, TypeLibImporterFlags flags, ITypeLibImporterNotifySink notifySink, byte[] publicKey, StrongNameKeyPair keyPair, string asmNamespace, Version asmVersion); + bool GetPrimaryInteropAssembly(Guid g, int major, int minor, int lcid, out string asmName, out string asmCodeBase); +} + +// Namespace: System.Runtime.InteropServices +public interface ITypeLibExporterNameProvider // TypeDefIndex: 816 +{ + // Methods + string[] GetNames(); +} + +// Namespace: System.Runtime.InteropServices +public interface ITypeLibExporterNotifySink // TypeDefIndex: 817 +{ + // Methods + void ReportEvent(ExporterEventKind eventKind, int eventCode, string eventMsg); + object ResolveRef(Assembly assembly); +} + +// Namespace: System.Runtime.InteropServices +public interface ITypeLibImporterNotifySink // TypeDefIndex: 818 +{ + // Methods + void ReportEvent(ImporterEventKind eventKind, int eventCode, string eventMsg); + Assembly ResolveRef(object typeLib); +} + +// Namespace: System.Runtime.InteropServices +public sealed class ImportedFromTypeLibAttribute : Attribute // TypeDefIndex: 819 +{ + // Fields + private string TlbFile; // 0x08 + + // Properties + public string Value { get; } // 0x002B7160 + + // Methods + public void .ctor(string tlbFile); // 0x002B7140 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum ImporterEventKind // TypeDefIndex: 820 +{ + NOTIF_TYPECONVERTED = 0, + NOTIF_CONVERTWARNING = 1, + ERROR_REFTOINVALIDTYPELIB = 2 +} + +// Namespace: System.Runtime.InteropServices +public sealed class InterfaceTypeAttribute : Attribute // TypeDefIndex: 821 +{ + // Fields + private ComInterfaceType intType; // 0x08 + + // Properties + public ComInterfaceType Value { get; } // 0x002B71B0 + + // Methods + public void .ctor(ComInterfaceType interfaceType); // 0x002B7170 + public void .ctor(short interfaceType); // 0x002B7190 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public class InvalidComObjectException : SystemException // TypeDefIndex: 822 +{ + // Fields + private const int ErrorCode = -2146233049; // 0x00 + + // Methods + public void .ctor(); // 0x002B71B8 + public void .ctor(string message); // 0x002B7238 + public void .ctor(string message, Exception inner); // 0x002B725C + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x002B7280 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public class InvalidOleVariantTypeException : SystemException // TypeDefIndex: 823 +{ + // Fields + private const int ErrorCode = -2146233039; // 0x00 + + // Methods + public void .ctor(); // 0x002B72A0 + public void .ctor(string message); // 0x002B7320 + public void .ctor(string message, Exception inner); // 0x002B7344 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x002B7368 +} + +// Namespace: System.Runtime.InteropServices +public sealed class LCIDConversionAttribute : Attribute // TypeDefIndex: 824 +{ + // Fields + private int id; // 0x08 + + // Properties + public int Value { get; } // 0x002B73A8 + + // Methods + public void .ctor(int lcid); // 0x002B7388 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum LIBFLAGS // TypeDefIndex: 825 +{ + LIBFLAG_FRESTRICTED = 1, + LIBFLAG_FCONTROL = 2, + LIBFLAG_FHIDDEN = 4, + LIBFLAG_FHASDISKIMAGE = 8 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum LayoutKind // TypeDefIndex: 826 +{ + Sequential = 0, + Explicit = 2, + Auto = 3 +} + +// Namespace: System.Runtime.InteropServices +public static class Marshal // TypeDefIndex: 827 +{ + // Fields + public static readonly int SystemMaxDBCSCharSize; // 0x00 + public static readonly int SystemDefaultCharSize; // 0x04 + + // Methods + private static void .cctor(); // 0x002B73B0 + private static int AddRefInternal(IntPtr pUnk); // 0x002B7454 + public static int AddRef(IntPtr pUnk); // 0x002B7458 + public static IntPtr AllocCoTaskMem(int cb); // 0x002B7558 + public static IntPtr AllocHGlobal(IntPtr cb); // 0x002B755C + public static IntPtr AllocHGlobal(int cb); // 0x002B7560 + public static object BindToMoniker(string monikerName); // 0x002B75F0 + public static void ChangeWrapperHandleStrength(object otp, bool fIsWeak); // 0x002B7678 + private static void copy_to_unmanaged(Array source, int startIndex, IntPtr destination, int length); // 0x002B7700 + private static void copy_from_unmanaged(IntPtr source, int startIndex, Array destination, int length); // 0x002B7704 + public static void Copy(byte[] source, int startIndex, IntPtr destination, int length); // 0x002B7708 + public static void Copy(char[] source, int startIndex, IntPtr destination, int length); // 0x002B77A0 + public static void Copy(short[] source, int startIndex, IntPtr destination, int length); // 0x002B7838 + public static void Copy(int[] source, int startIndex, IntPtr destination, int length); // 0x002B78D0 + public static void Copy(long[] source, int startIndex, IntPtr destination, int length); // 0x002B7968 + public static void Copy(float[] source, int startIndex, IntPtr destination, int length); // 0x002B7A00 + public static void Copy(double[] source, int startIndex, IntPtr destination, int length); // 0x002B7A98 + public static void Copy(IntPtr[] source, int startIndex, IntPtr destination, int length); // 0x002B7B30 + public static void Copy(IntPtr source, byte[] destination, int startIndex, int length); // 0x002B7BC8 + public static void Copy(IntPtr source, char[] destination, int startIndex, int length); // 0x002B7C60 + public static void Copy(IntPtr source, short[] destination, int startIndex, int length); // 0x002B7CF8 + public static void Copy(IntPtr source, int[] destination, int startIndex, int length); // 0x002B7D90 + public static void Copy(IntPtr source, long[] destination, int startIndex, int length); // 0x002B7E28 + public static void Copy(IntPtr source, float[] destination, int startIndex, int length); // 0x002B7EC0 + public static void Copy(IntPtr source, double[] destination, int startIndex, int length); // 0x002B7F58 + public static void Copy(IntPtr source, IntPtr[] destination, int startIndex, int length); // 0x002B7FF0 + public static IntPtr CreateAggregatedObject(IntPtr pOuter, object o); // 0x002B8088 + public static object CreateWrapperOfType(object o, Type t); // 0x002B8110 + public static void DestroyStructure(IntPtr ptr, Type structuretype); // 0x002B838C + public static void FreeBSTR(IntPtr ptr); // 0x002B8390 + public static void FreeCoTaskMem(IntPtr ptr); // 0x002B8394 + public static void FreeHGlobal(IntPtr hglobal); // 0x002B8398 + private static void ClearBSTR(IntPtr ptr); // 0x002B839C + public static void ZeroFreeBSTR(IntPtr s); // 0x002B8480 + private static void ClearAnsi(IntPtr ptr); // 0x002B8508 + private static void ClearUnicode(IntPtr ptr); // 0x002B85E0 + public static void ZeroFreeCoTaskMemAnsi(IntPtr s); // 0x002B86BC + public static void ZeroFreeCoTaskMemUnicode(IntPtr s); // 0x002B8744 + public static void ZeroFreeGlobalAllocAnsi(IntPtr s); // 0x002B87CC + public static void ZeroFreeGlobalAllocUnicode(IntPtr s); // 0x002B8854 + public static Guid GenerateGuidForType(Type type); // 0x002B88DC + public static string GenerateProgIdForType(Type type); // 0x002B8918 + public static object GetActiveObject(string progID); // 0x002B89A0 + private static IntPtr GetCCW(object o, Type T); // 0x002B8A28 + private static IntPtr GetComInterfaceForObjectInternal(object o, Type T); // 0x002B8A2C + public static IntPtr GetComInterfaceForObject(object o, Type T); // 0x002B8BAC + public static IntPtr GetComInterfaceForObjectInContext(object o, Type t); // 0x002B8C40 + public static object GetComObjectData(object obj, object key); // 0x002B8CC8 + private static int GetComSlotForMethodInfoInternal(MemberInfo m); // 0x002B8D64 + public static int GetComSlotForMethodInfo(MemberInfo m); // 0x002B8D68 + public static int GetEndComSlot(Type t); // 0x002B8F60 + public static int GetExceptionCode(); // 0x002B8FE8 + public static IntPtr GetExceptionPointers(); // 0x002B9070 + public static IntPtr GetHINSTANCE(Module m); // 0x002B90F8 + public static int GetHRForException(Exception e); // 0x002B91B0 + public static int GetHRForLastWin32Error(); // 0x002B91D4 + private static IntPtr GetIDispatchForObjectInternal(object o); // 0x002B925C + public static IntPtr GetIDispatchForObject(object o); // 0x002B6330 + public static IntPtr GetIDispatchForObjectInContext(object o); // 0x002B9260 + public static IntPtr GetITypeInfoForType(Type t); // 0x002B92E8 + private static IntPtr GetIUnknownForObjectInternal(object o); // 0x002B9370 + public static IntPtr GetIUnknownForObject(object o); // 0x002B9374 + public static IntPtr GetIUnknownForObjectInContext(object o); // 0x002B9400 + public static IntPtr GetManagedThunkForUnmanagedMethodPtr(IntPtr pfnMethodToWrap, IntPtr pbSignature, int cbSignature); // 0x002B9488 + public static MemberInfo GetMethodInfoForComSlot(Type t, int slot, ComMemberType memberType); // 0x002B9510 + public static void GetNativeVariantForObject(object obj, IntPtr pDstNativeVariant); // 0x002B9598 + private static object GetObjectForCCW(IntPtr pUnk); // 0x002B9670 + public static object GetObjectForIUnknown(IntPtr pUnk); // 0x002B9674 + public static object GetObjectForNativeVariant(IntPtr pSrcNativeVariant); // 0x002B977C + public static object[] GetObjectsForNativeVariants(IntPtr aSrcNativeVariant, int cVars); // 0x002B98CC + public static int GetStartComSlot(Type t); // 0x002B9AFC + public static Thread GetThreadFromFiberCookie(int cookie); // 0x002B9B84 + public static object GetTypedObjectForIUnknown(IntPtr pUnk, Type t); // 0x002B9C0C + public static Type GetTypeForITypeInfo(IntPtr piTypeInfo); // 0x002B9DCC + public static string GetTypeInfoName(UCOMITypeInfo pTI); // 0x002B9E54 + public static string GetTypeInfoName(ITypeInfo typeInfo); // 0x002B9EDC + public static Guid GetTypeLibGuid(UCOMITypeLib pTLB); // 0x002B9F64 + public static Guid GetTypeLibGuid(ITypeLib typelib); // 0x002B9FEC + public static Guid GetTypeLibGuidForAssembly(Assembly asm); // 0x002BA074 + public static int GetTypeLibLcid(UCOMITypeLib pTLB); // 0x002BA0FC + public static int GetTypeLibLcid(ITypeLib typelib); // 0x002BA184 + public static string GetTypeLibName(UCOMITypeLib pTLB); // 0x002BA20C + public static string GetTypeLibName(ITypeLib typelib); // 0x002BA294 + public static void GetTypeLibVersionForAssembly(Assembly inputAssembly, out int majorVersion, out int minorVersion); // 0x002BA31C + public static object GetUniqueObjectForIUnknown(IntPtr unknown); // 0x002BA3A4 + public static IntPtr GetUnmanagedThunkForManagedMethodPtr(IntPtr pfnMethodToWrap, IntPtr pbSignature, int cbSignature); // 0x002BA42C + public static bool IsComObject(object o); // 0x002B8BA8 + public static bool IsTypeVisibleFromCom(Type t); // 0x002BA4B4 + public static int NumParamBytes(MethodInfo m); // 0x002BA53C + public static int GetLastWin32Error(); // 0x002BA5C4 + public static IntPtr OffsetOf(Type t, string fieldName); // 0x002BA5C8 + public static void Prelink(MethodInfo m); // 0x002BA5CC + public static void PrelinkAll(Type c); // 0x002BA5D0 + public static string PtrToStringAnsi(IntPtr ptr); // 0x002BA5D4 + public static string PtrToStringAnsi(IntPtr ptr, int len); // 0x002BA5D8 + public static string PtrToStringAuto(IntPtr ptr); // 0x002BA5DC + public static string PtrToStringAuto(IntPtr ptr, int len); // 0x002BA6C4 + public static string PtrToStringUni(IntPtr ptr); // 0x002BA6C0 + public static string PtrToStringUni(IntPtr ptr, int len); // 0x002BA7B4 + public static string PtrToStringBSTR(IntPtr ptr); // 0x002BA7B8 + public static void PtrToStructure(IntPtr ptr, object structure); // 0x002BA7BC + public static object PtrToStructure(IntPtr ptr, Type structureType); // 0x002B98C8 + private static int QueryInterfaceInternal(IntPtr pUnk, Guid iid, out IntPtr ppv); // 0x002BA7C0 + public static int QueryInterface(IntPtr pUnk, Guid iid, out IntPtr ppv); // 0x002BA7C4 + public static byte ReadByte(IntPtr ptr); // 0x002BA8D4 + public static byte ReadByte(IntPtr ptr, int ofs); // 0x002B85DC + public static byte ReadByte(object ptr, int ofs); // 0x002BA958 + public static short ReadInt16(IntPtr ptr); // 0x002BA9E0 + public static short ReadInt16(IntPtr ptr, int ofs); // 0x002B86B8 + public static short ReadInt16(object ptr, int ofs); // 0x002BAA64 + public static int ReadInt32(IntPtr ptr); // 0x002BAAEC + public static int ReadInt32(IntPtr ptr, int ofs); // 0x002B8478 + public static int ReadInt32(object ptr, int ofs); // 0x002BAB70 + public static long ReadInt64(IntPtr ptr); // 0x002BABF8 + public static long ReadInt64(IntPtr ptr, int ofs); // 0x002BAC7C + public static long ReadInt64(object ptr, int ofs); // 0x002BAC80 + public static IntPtr ReadIntPtr(IntPtr ptr); // 0x002BAD08 + public static IntPtr ReadIntPtr(IntPtr ptr, int ofs); // 0x002BAD8C + public static IntPtr ReadIntPtr(object ptr, int ofs); // 0x002BAD90 + public static IntPtr ReAllocCoTaskMem(IntPtr pv, int cb); // 0x002BAE18 + public static IntPtr ReAllocHGlobal(IntPtr pv, IntPtr cb); // 0x002BAE1C + private static int ReleaseInternal(IntPtr pUnk); // 0x002BAE20 + public static int Release(IntPtr pUnk); // 0x002BAE24 + private static int ReleaseComObjectInternal(object co); // 0x002BAF24 + public static int ReleaseComObject(object o); // 0x002BAF28 + public static void ReleaseThreadCache(); // 0x002BB0A8 + public static bool SetComObjectData(object obj, object key, object data); // 0x002BB130 + public static int SizeOf(object structure); // 0x002BB1CC + public static int SizeOf(Type t); // 0x002B9AF8 + public static IntPtr StringToBSTR(string s); // 0x002BB26C + public static IntPtr StringToCoTaskMemAnsi(string s); // 0x002BB270 + public static IntPtr StringToCoTaskMemAuto(string s); // 0x002BB430 + public static IntPtr StringToCoTaskMemUni(string s); // 0x002BB514 + public static IntPtr StringToHGlobalAnsi(string s); // 0x002BB648 + public static IntPtr StringToHGlobalAuto(string s); // 0x002BB64C + public static IntPtr StringToHGlobalUni(string s); // 0x002BB730 + public static IntPtr SecureStringToBSTR(SecureString s); // 0x002BB734 + public static IntPtr SecureStringToCoTaskMemAnsi(SecureString s); // 0x002BBA74 + public static IntPtr SecureStringToCoTaskMemUnicode(SecureString s); // 0x002BBDD8 + public static IntPtr SecureStringToGlobalAllocAnsi(SecureString s); // 0x002BC0EC + public static IntPtr SecureStringToGlobalAllocUnicode(SecureString s); // 0x002BC1CC + public static void StructureToPtr(object structure, IntPtr ptr, bool fDeleteOld); // 0x002B966C + public static void ThrowExceptionForHR(int errorCode); // 0x002BC2AC + public static void ThrowExceptionForHR(int errorCode, IntPtr errorInfo); // 0x002BC3D0 + public static IntPtr UnsafeAddrOfPinnedArrayElement(Array arr, int index); // 0x002BC5A4 + public static void WriteByte(IntPtr ptr, byte val); // 0x002BC5A8 + public static void WriteByte(IntPtr ptr, int ofs, byte val); // 0x002B847C + public static void WriteByte(out object ptr, int ofs, byte val); // 0x002BC634 + public static void WriteInt16(IntPtr ptr, short val); // 0x002BC6BC + public static void WriteInt16(IntPtr ptr, int ofs, short val); // 0x002B86B4 + public static void WriteInt16(out object ptr, int ofs, short val); // 0x002BC748 + public static void WriteInt16(IntPtr ptr, char val); // 0x002BC7D0 + public static void WriteInt16(IntPtr ptr, int ofs, char val); // 0x002BC85C + public static void WriteInt16(out object ptr, int ofs, char val); // 0x002BC864 + public static void WriteInt32(IntPtr ptr, int val); // 0x002BC8EC + public static void WriteInt32(IntPtr ptr, int ofs, int val); // 0x002BBA70 + public static void WriteInt32(out object ptr, int ofs, int val); // 0x002BC978 + public static void WriteInt64(IntPtr ptr, long val); // 0x002BCA00 + public static void WriteInt64(IntPtr ptr, int ofs, long val); // 0x002BCA94 + public static void WriteInt64(out object ptr, int ofs, long val); // 0x002BCA98 + public static void WriteIntPtr(IntPtr ptr, IntPtr val); // 0x002BCB20 + public static void WriteIntPtr(IntPtr ptr, int ofs, IntPtr val); // 0x002BCBAC + public static void WriteIntPtr(out object ptr, int ofs, IntPtr val); // 0x002BCBB0 + public static Exception GetExceptionForHR(int errorCode); // 0x002BC350 + public static Exception GetExceptionForHR(int errorCode, IntPtr errorInfo); // 0x002BC474 + public static int FinalReleaseComObject(object o); // 0x002BCC38 + private static Delegate GetDelegateForFunctionPointerInternal(IntPtr ptr, Type t); // 0x002BCCC4 + public static Delegate GetDelegateForFunctionPointer(IntPtr ptr, Type t); // 0x002BCCC8 + private static IntPtr GetFunctionPointerForDelegateInternal(Delegate d); // 0x002BCF18 + public static IntPtr GetFunctionPointerForDelegate(Delegate d); // 0x002BCF1C +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public class MarshalDirectiveException : SystemException // TypeDefIndex: 828 +{ + // Fields + private const int ErrorCode = -2146233035; // 0x00 + + // Methods + public void .ctor(); // 0x002BD044 + public void .ctor(string message); // 0x002BD0C4 + public void .ctor(string message, Exception inner); // 0x002BD0E8 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x002BD10C +} + +// Namespace: System.Runtime.InteropServices +public struct PARAMDESC // TypeDefIndex: 829 +{ + // Fields + public IntPtr lpVarValue; // 0x08 + public PARAMFLAG wParamFlags; // 0x0C + +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum PARAMFLAG // TypeDefIndex: 830 +{ + PARAMFLAG_NONE = 0, + PARAMFLAG_FIN = 1, + PARAMFLAG_FOUT = 2, + PARAMFLAG_FLCID = 4, + PARAMFLAG_FRETVAL = 8, + PARAMFLAG_FOPT = 16, + PARAMFLAG_FHASDEFAULT = 32, + PARAMFLAG_FHASCUSTDATA = 64 +} + +// Namespace: System.Runtime.InteropServices +public sealed class PreserveSigAttribute : Attribute // TypeDefIndex: 831 +{ + // Methods + public void .ctor(); // 0x002BD434 +} + +// Namespace: System.Runtime.InteropServices +public sealed class PrimaryInteropAssemblyAttribute : Attribute // TypeDefIndex: 832 +{ + // Fields + private int major; // 0x08 + private int minor; // 0x0C + + // Properties + public int MajorVersion { get; } // 0x002BD464 + public int MinorVersion { get; } // 0x002BD46C + + // Methods + public void .ctor(int major, int minor); // 0x002BD43C +} + +// Namespace: System.Runtime.InteropServices +public sealed class ProgIdAttribute : Attribute // TypeDefIndex: 833 +{ + // Fields + private string pid; // 0x08 + + // Properties + public string Value { get; } // 0x002BD494 + + // Methods + public void .ctor(string progId); // 0x002BD474 +} + +// Namespace: System.Runtime.InteropServices +public enum RegistrationClassContext // TypeDefIndex: 834 +{ + InProcessServer = 1, + InProcessHandler = 2, + LocalServer = 4, + InProcessServer16 = 8, + RemoteServer = 16, + InProcessHandler16 = 32, + Reserved1 = 64, + Reserved2 = 128, + Reserved3 = 256, + Reserved4 = 512, + NoCodeDownload = 1024, + Reserved5 = 2048, + NoCustomMarshal = 4096, + EnableCodeDownload = 8192, + NoFailureLog = 16384, + DisableActivateAsActivator = 32768, + EnableActivateAsActivator = 65536, + FromDefaultContext = 131072 +} + +// Namespace: System.Runtime.InteropServices +public enum RegistrationConnectionType // TypeDefIndex: 835 +{ + SingleUse = 0, + MultipleUse = 1, + MultiSeparate = 2, + Suspended = 4, + Surrogate = 8 +} + +// Namespace: System.Runtime.InteropServices +public class RegistrationServices : IRegistrationServices // TypeDefIndex: 836 +{ + // Methods + public void .ctor(); // 0x002BD49C + public virtual Guid GetManagedCategoryGuid(); // 0x002BD4A4 + public virtual string GetProgIdForType(Type type); // 0x002BD52C + public virtual Type[] GetRegistrableTypesInAssembly(Assembly assembly); // 0x002BD5B4 + public virtual bool RegisterAssembly(Assembly assembly, AssemblyRegistrationFlags flags); // 0x002BD63C + public virtual void RegisterTypeForComClients(Type type, Guid g); // 0x002BD6C4 + public virtual bool TypeRepresentsComType(Type type); // 0x002BD74C + public virtual bool TypeRequiresRegistration(Type type); // 0x002BD7D4 + public virtual bool UnregisterAssembly(Assembly assembly); // 0x002BD85C + public virtual int RegisterTypeForComClients(Type type, RegistrationClassContext classContext, RegistrationConnectionType flags); // 0x002BD8E4 + public virtual void UnregisterTypeForComClients(int cookie); // 0x002BD96C +} + +// Namespace: System.Runtime.InteropServices +public class RuntimeEnvironment // TypeDefIndex: 837 +{ + // Properties + public static string SystemConfigurationFile { get; } // 0x002BD9FC + + // Methods + public void .ctor(); // 0x002BD9F4 + public static bool FromGlobalAccessCache(Assembly a); // 0x002BDAD4 + public static string GetRuntimeDirectory(); // 0x002BDB00 + public static string GetSystemVersion(); // 0x002BDC1C +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public class SEHException : ExternalException // TypeDefIndex: 838 +{ + // Methods + public void .ctor(); // 0x002BDFC4 + public void .ctor(string message); // 0x002BDFC8 + public void .ctor(string message, Exception inner); // 0x002BDFEC + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x002BE010 + public virtual bool CanResume(); // 0x002BE030 +} + +// Namespace: System.Runtime.InteropServices +public struct STATSTG // TypeDefIndex: 839 +{ + // Fields + public string pwcsName; // 0x08 + public int type; // 0x0C + public long cbSize; // 0x10 + public FILETIME mtime; // 0x18 + public FILETIME ctime; // 0x20 + public FILETIME atime; // 0x28 + public int grfMode; // 0x30 + public int grfLocksSupported; // 0x34 + public Guid clsid; // 0x38 + public int grfStateBits; // 0x48 + public int reserved; // 0x4C + +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum SYSKIND // TypeDefIndex: 840 +{ + SYS_WIN16 = 0, + SYS_WIN32 = 1, + SYS_MAC = 2 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public class SafeArrayRankMismatchException : SystemException // TypeDefIndex: 841 +{ + // Fields + private const int ErrorCode = -2146233032; // 0x00 + + // Methods + public void .ctor(); // 0x002BE038 + public void .ctor(string message); // 0x002BE0B8 + public void .ctor(string message, Exception inner); // 0x002BE0DC + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x002BE100 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public class SafeArrayTypeMismatchException : SystemException // TypeDefIndex: 842 +{ + // Fields + private const int ErrorCode = -2146233037; // 0x00 + + // Methods + public void .ctor(); // 0x002BE120 + public void .ctor(string message); // 0x002BE1A0 + public void .ctor(string message, Exception inner); // 0x002BE1C4 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x002BE1E8 +} + +// Namespace: System.Runtime.InteropServices +public abstract class SafeHandle : CriticalFinalizerObject, IDisposable // TypeDefIndex: 843 +{ + // Fields + protected IntPtr handle; // 0x08 + private IntPtr invalid_handle_value; // 0x0C + private int refcount; // 0x10 + private bool owns_handle; // 0x14 + + // Properties + public bool IsClosed { get; } // 0x002BE7F0 + public abstract bool IsInvalid { get; } + + // Methods + protected void .ctor(); // 0x002BE208 + protected void .ctor(IntPtr invalidHandleValue, bool ownsHandle); // 0x002BE2A0 + public void Close(); // 0x002BE2D0 + public void DangerousAddRef(bool success); // 0x002BE41C + public IntPtr DangerousGetHandle(); // 0x002BE588 + public void DangerousRelease(); // 0x002BE658 + public void Dispose(); // 0x002BE79C + public void SetHandleAsInvalid(); // 0x002BE7D0 + protected virtual void Dispose(bool disposing); // 0x002BE7DC + protected abstract bool ReleaseHandle(); + protected void SetHandle(IntPtr handle); // 0x002BE7E8 + protected override void Finalize(); // 0x002BE804 +} + +// Namespace: System.Runtime.InteropServices +public sealed class SetWin32ContextInIDispatchAttribute : Attribute // TypeDefIndex: 844 +{ + // Methods + public void .ctor(); // 0x002BE8A8 +} + +// Namespace: System.Runtime.InteropServices +public struct TYPEATTR // TypeDefIndex: 845 +{ + // Fields + public const int MEMBER_ID_NIL = -1; // 0x00 + public Guid guid; // 0x08 + public int lcid; // 0x18 + public int dwReserved; // 0x1C + public int memidConstructor; // 0x20 + public int memidDestructor; // 0x24 + public IntPtr lpstrSchema; // 0x28 + public int cbSizeInstance; // 0x2C + public TYPEKIND typekind; // 0x30 + public short cFuncs; // 0x34 + public short cVars; // 0x36 + public short cImplTypes; // 0x38 + public short cbSizeVft; // 0x3A + public short cbAlignment; // 0x3C + public TYPEFLAGS wTypeFlags; // 0x40 + public short wMajorVerNum; // 0x44 + public short wMinorVerNum; // 0x46 + public TYPEDESC tdescAlias; // 0x48 + public IDLDESC idldescType; // 0x50 + +} + +// Namespace: System.Runtime.InteropServices +public struct TYPEDESC // TypeDefIndex: 846 +{ + // Fields + public IntPtr lpValue; // 0x08 + public short vt; // 0x0C + +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum TYPEFLAGS // TypeDefIndex: 847 +{ + TYPEFLAG_FAPPOBJECT = 1, + TYPEFLAG_FCANCREATE = 2, + TYPEFLAG_FLICENSED = 4, + TYPEFLAG_FPREDECLID = 8, + TYPEFLAG_FHIDDEN = 16, + TYPEFLAG_FCONTROL = 32, + TYPEFLAG_FDUAL = 64, + TYPEFLAG_FNONEXTENSIBLE = 128, + TYPEFLAG_FOLEAUTOMATION = 256, + TYPEFLAG_FRESTRICTED = 512, + TYPEFLAG_FAGGREGATABLE = 1024, + TYPEFLAG_FREPLACEABLE = 2048, + TYPEFLAG_FDISPATCHABLE = 4096, + TYPEFLAG_FREVERSEBIND = 8192, + TYPEFLAG_FPROXY = 16384 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum TYPEKIND // TypeDefIndex: 848 +{ + TKIND_ENUM = 0, + TKIND_RECORD = 1, + TKIND_MODULE = 2, + TKIND_INTERFACE = 3, + TKIND_DISPATCH = 4, + TKIND_COCLASS = 5, + TKIND_ALIAS = 6, + TKIND_UNION = 7, + TKIND_MAX = 8 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public struct TYPELIBATTR // TypeDefIndex: 849 +{ + // Fields + public Guid guid; // 0x08 + public int lcid; // 0x18 + public SYSKIND syskind; // 0x1C + public short wMajorVerNum; // 0x20 + public short wMinorVerNum; // 0x22 + public LIBFLAGS wLibFlags; // 0x24 + +} + +// Namespace: System.Runtime.InteropServices +public sealed class TypeLibConverter : ITypeLibConverter // TypeDefIndex: 850 +{ + // Methods + public void .ctor(); // 0x002BE920 + public object ConvertAssemblyToTypeLib(Assembly assembly, string strTypeLibName, TypeLibExporterFlags flags, ITypeLibExporterNotifySink notifySink); // 0x002BE928 + public AssemblyBuilder ConvertTypeLibToAssembly(object typeLib, string asmFileName, int flags, ITypeLibImporterNotifySink notifySink, byte[] publicKey, StrongNameKeyPair keyPair, bool unsafeInterfaces); // 0x002BE9B0 + public AssemblyBuilder ConvertTypeLibToAssembly(object typeLib, string asmFileName, TypeLibImporterFlags flags, ITypeLibImporterNotifySink notifySink, byte[] publicKey, StrongNameKeyPair keyPair, string asmNamespace, Version asmVersion); // 0x002BEA38 + public bool GetPrimaryInteropAssembly(Guid g, int major, int minor, int lcid, out string asmName, out string asmCodeBase); // 0x002BEAC0 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum TypeLibExporterFlags // TypeDefIndex: 851 +{ + None = 0, + OnlyReferenceRegistered = 1, + CallerResolvedReferences = 2, + OldNames = 4, + ExportAs32Bit = 16, + ExportAs64Bit = 32 +} + +// Namespace: System.Runtime.InteropServices +public sealed class TypeLibFuncAttribute : Attribute // TypeDefIndex: 852 +{ + // Fields + private TypeLibFuncFlags flags; // 0x08 + + // Properties + public TypeLibFuncFlags Value { get; } // 0x002BEB88 + + // Methods + public void .ctor(short flags); // 0x002BEB48 + public void .ctor(TypeLibFuncFlags flags); // 0x002BEB68 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum TypeLibFuncFlags // TypeDefIndex: 853 +{ + FRestricted = 1, + FSource = 2, + FBindable = 4, + FRequestEdit = 8, + FDisplayBind = 16, + FDefaultBind = 32, + FHidden = 64, + FUsesGetLastError = 128, + FDefaultCollelem = 256, + FUiDefault = 512, + FNonBrowsable = 1024, + FReplaceable = 2048, + FImmediateBind = 4096 +} + +// Namespace: System.Runtime.InteropServices +public sealed class TypeLibImportClassAttribute : Attribute // TypeDefIndex: 854 +{ + // Fields + private string _importClass; // 0x08 + + // Properties + public string Value { get; } // 0x002BEBD4 + + // Methods + public void .ctor(Type importClass); // 0x002BEB90 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum TypeLibImporterFlags // TypeDefIndex: 855 +{ + None = 0, + PrimaryInteropAssembly = 1, + UnsafeInterfaces = 2, + SafeArrayAsSystemArray = 4, + TransformDispRetVals = 8, + PreventClassMembers = 16, + SerializableValueClasses = 32, + ImportAsX86 = 256, + ImportAsX64 = 512, + ImportAsItanium = 1024, + ImportAsAgnostic = 2048, + ReflectionOnlyLoading = 4096 +} + +// Namespace: System.Runtime.InteropServices +public sealed class TypeLibTypeAttribute : Attribute // TypeDefIndex: 856 +{ + // Fields + private TypeLibTypeFlags flags; // 0x08 + + // Properties + public TypeLibTypeFlags Value { get; } // 0x002BEC1C + + // Methods + public void .ctor(short flags); // 0x002BEBDC + public void .ctor(TypeLibTypeFlags flags); // 0x002BEBFC +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum TypeLibTypeFlags // TypeDefIndex: 857 +{ + FAppObject = 1, + FCanCreate = 2, + FLicensed = 4, + FPreDeclId = 8, + FHidden = 16, + FControl = 32, + FDual = 64, + FNonExtensible = 128, + FOleAutomation = 256, + FRestricted = 512, + FAggregatable = 1024, + FReplaceable = 2048, + FDispatchable = 4096, + FReverseBind = 8192 +} + +// Namespace: System.Runtime.InteropServices +public sealed class TypeLibVarAttribute : Attribute // TypeDefIndex: 858 +{ + // Fields + private TypeLibVarFlags flags; // 0x08 + + // Properties + public TypeLibVarFlags Value { get; } // 0x002BEC64 + + // Methods + public void .ctor(short flags); // 0x002BEC24 + public void .ctor(TypeLibVarFlags flags); // 0x002BEC44 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum TypeLibVarFlags // TypeDefIndex: 859 +{ + FReadOnly = 1, + FSource = 2, + FBindable = 4, + FRequestEdit = 8, + FDisplayBind = 16, + FDefaultBind = 32, + FHidden = 64, + FRestricted = 128, + FDefaultCollelem = 256, + FUiDefault = 512, + FNonBrowsable = 1024, + FReplaceable = 2048, + FImmediateBind = 4096 +} + +// Namespace: System.Runtime.InteropServices +public sealed class TypeLibVersionAttribute : Attribute // TypeDefIndex: 860 +{ + // Fields + private int major; // 0x08 + private int minor; // 0x0C + + // Properties + public int MajorVersion { get; } // 0x002BEC94 + public int MinorVersion { get; } // 0x002BEC9C + + // Methods + public void .ctor(int major, int minor); // 0x002BEC6C +} + +// Namespace: System.Runtime.InteropServices +[ComImport]public interface UCOMIBindCtx // TypeDefIndex: 861 +{ + // Methods + void RegisterObjectBound(object punk); // 0x002BECA4 + void RevokeObjectBound(object punk); // 0x002BED6C + void ReleaseBoundObjects(); // 0x002BEE34 + void SetBindOptions(BIND_OPTS pbindopts); // 0x002BEE70 + void GetBindOptions(BIND_OPTS pbindopts); // 0x002BEEB4 + void GetRunningObjectTable(out UCOMIRunningObjectTable pprot); // 0x002BEEF8 + void RegisterObjectParam(string pszKey, object punk); // 0x002BF00C + void GetObjectParam(string pszKey, out object ppunk); // 0x002BF0E4 + void EnumObjectParam(out UCOMIEnumString ppenum); // 0x002BF208 + void RevokeObjectParam(string pszKey); // 0x002BF31C +} + +// Namespace: System.Runtime.InteropServices +[ComImport]public interface UCOMIConnectionPoint // TypeDefIndex: 862 +{ + // Methods + void GetConnectionInterface(out Guid pIID); // 0x002BF368 + void GetConnectionPointContainer(out UCOMIConnectionPointContainer ppCPC); // 0x002BF3AC + void Advise(object pUnkSink, out int pdwCookie); // 0x002BF4C0 + void Unadvise(int dwCookie); // 0x002BF590 + void EnumConnections(out UCOMIEnumConnections ppEnum); // 0x002BF5D4 +} + +// Namespace: System.Runtime.InteropServices +[ComImport]public interface UCOMIConnectionPointContainer // TypeDefIndex: 863 +{ + // Methods + void EnumConnectionPoints(out UCOMIEnumConnectionPoints ppEnum); // 0x002BF6E8 + void FindConnectionPoint(Guid riid, out UCOMIConnectionPoint ppCP); // 0x002BF7FC +} + +// Namespace: System.Runtime.InteropServices +[ComImport]public interface UCOMIEnumConnectionPoints // TypeDefIndex: 864 +{ + // Methods + int Next(int celt, out UCOMIConnectionPoint[] rgelt, out int pceltFetched); // 0x002BF918 + int Skip(int celt); // 0x002BF944 + int Reset(); // 0x002BF9A0 + void Clone(out UCOMIEnumConnectionPoints ppenum); // 0x002BF9F4 +} + +// Namespace: System.Runtime.InteropServices +[ComImport]public interface UCOMIEnumConnections // TypeDefIndex: 865 +{ + // Methods + int Next(int celt, out CONNECTDATA[] rgelt, out int pceltFetched); // 0x002BFB08 + int Skip(int celt); // 0x002BFC34 + void Reset(); // 0x002BFC90 + void Clone(out UCOMIEnumConnections ppenum); // 0x002BFCCC +} + +// Namespace: System.Runtime.InteropServices +[ComImport]public interface UCOMIEnumMoniker // TypeDefIndex: 866 +{ + // Methods + int Next(int celt, out UCOMIMoniker[] rgelt, out int pceltFetched); // 0x002BFDE0 + int Skip(int celt); // 0x002BFE0C + int Reset(); // 0x002BFE68 + void Clone(out UCOMIEnumMoniker ppenum); // 0x002BFEBC +} + +// Namespace: System.Runtime.InteropServices +[ComImport]public interface UCOMIEnumString // TypeDefIndex: 867 +{ + // Methods + int Next(int celt, out string[] rgelt, out int pceltFetched); // 0x002BFFD0 + int Skip(int celt); // 0x002C00E0 + int Reset(); // 0x002C013C + void Clone(out UCOMIEnumString ppenum); // 0x002C0190 +} + +// Namespace: System.Runtime.InteropServices +[ComImport]public interface UCOMIEnumVARIANT // TypeDefIndex: 868 +{ + // Methods + int Next(int celt, int rgvar, int pceltFetched); // 0x002C02A4 + int Skip(int celt); // 0x002C0314 + int Reset(); // 0x002C0370 + void Clone(int ppenum); // 0x002C03C4 +} + +// Namespace: System.Runtime.InteropServices +[ComImport]public interface UCOMIMoniker // TypeDefIndex: 869 +{ + // Methods + void GetClassID(out Guid pClassID); // 0x002C0408 + int IsDirty(); // 0x002C044C + void Load(UCOMIStream pStm); // 0x002C04A0 + void Save(UCOMIStream pStm, bool fClearDirty); // 0x002C0568 + void GetSizeMax(out long pcbSize); // 0x002C0638 + void BindToObject(UCOMIBindCtx pbc, UCOMIMoniker pmkToLeft, Guid riidResult, out object ppvResult); // 0x002C067C + void BindToStorage(UCOMIBindCtx pbc, UCOMIMoniker pmkToLeft, Guid riid, out object ppvObj); // 0x002C08A4 + void Reduce(UCOMIBindCtx pbc, int dwReduceHowFar, UCOMIMoniker ppmkToLeft, out UCOMIMoniker ppmkReduced); // 0x002C0ACC + void ComposeWith(UCOMIMoniker pmkRight, bool fOnlyIfNotGeneric, out UCOMIMoniker ppmkComposite); // 0x002C0D58 + void Enum(bool fForward, out UCOMIEnumMoniker ppenumMoniker); // 0x002C0EFC + void IsEqual(UCOMIMoniker pmkOtherMoniker); // 0x002C1018 + void Hash(out int pdwHash); // 0x002C10E0 + void IsRunning(UCOMIBindCtx pbc, UCOMIMoniker pmkToLeft, UCOMIMoniker pmkNewlyRunning); // 0x002C1124 + void GetTimeOfLastChange(UCOMIBindCtx pbc, UCOMIMoniker pmkToLeft, out FILETIME pFileTime); // 0x002C12F0 + void Inverse(out UCOMIMoniker ppmk); // 0x002C1440 + void CommonPrefixWith(UCOMIMoniker pmkOther, out UCOMIMoniker ppmkPrefix); // 0x002C1554 + void RelativePathTo(UCOMIMoniker pmkOther, out UCOMIMoniker ppmkRelPath); // 0x002C16F0 + void GetDisplayName(UCOMIBindCtx pbc, UCOMIMoniker pmkToLeft, out string ppszDisplayName); // 0x002C188C + void ParseDisplayName(UCOMIBindCtx pbc, UCOMIMoniker pmkToLeft, string pszDisplayName, out int pchEaten, out UCOMIMoniker ppmkOut); // 0x002C19FC + void IsSystemMoniker(out int pdwMksys); // 0x002C1C34 +} + +// Namespace: System.Runtime.InteropServices +[ComImport]public interface UCOMIPersistFile // TypeDefIndex: 870 +{ + // Methods + void GetClassID(out Guid pClassID); // 0x002C1C78 + int IsDirty(); // 0x002C1CBC + void Load(string pszFileName, int dwMode); // 0x002C1D10 + void Save(string pszFileName, bool fRemember); // 0x002C1D64 + void SaveCompleted(string pszFileName); // 0x002C1DB8 + void GetCurFile(out string ppszFileName); // 0x002C1E04 +} + +// Namespace: System.Runtime.InteropServices +[ComImport]public interface UCOMIRunningObjectTable // TypeDefIndex: 871 +{ + // Methods + void Register(int grfFlags, object punkObject, UCOMIMoniker pmkObjectName, out int pdwRegister); // 0x002C1E6C + void Revoke(int dwRegister); // 0x002C1FD0 + void IsRunning(UCOMIMoniker pmkObjectName); // 0x002C2014 + void GetObject(UCOMIMoniker pmkObjectName, out object ppunkObject); // 0x002C20DC + void NoteChangeTime(int dwRegister, FILETIME pfiletime); // 0x002C2278 + void GetTimeOfLastChange(UCOMIMoniker pmkObjectName, out FILETIME pfiletime); // 0x002C22C4 + void EnumRunning(out UCOMIEnumMoniker ppenumMoniker); // 0x002C2394 +} + +// Namespace: System.Runtime.InteropServices +[ComImport]public interface UCOMIStream // TypeDefIndex: 872 +{ + // Methods + void Read(out byte[] pv, int cb, IntPtr pcbRead); // 0x002C24A8 + void Write(byte[] pv, int cb, IntPtr pcbWritten); // 0x002C2560 + void Seek(long dlibMove, int dwOrigin, IntPtr plibNewPosition); // 0x002C25BC + void SetSize(long libNewSize); // 0x002C2620 + void CopyTo(UCOMIStream pstm, long cb, IntPtr pcbRead, IntPtr pcbWritten); // 0x002C266C + void Commit(int grfCommitFlags); // 0x002C2760 + void Revert(); // 0x002C27A4 + void LockRegion(long libOffset, long cb, int dwLockType); // 0x002C27E0 + void UnlockRegion(long libOffset, long cb, int dwLockType); // 0x002C284C + void Stat(out STATSTG pstatstg, int grfStatFlag); // 0x002C28B8 + void Clone(out UCOMIStream ppstm); // 0x002C2978 +} + +// Namespace: System.Runtime.InteropServices +[ComImport]public interface UCOMITypeComp // TypeDefIndex: 873 +{ + // Methods + void Bind(string szName, int lHashVal, short wFlags, out UCOMITypeInfo ppTInfo, out DESCKIND pDescKind, out BINDPTR pBindPtr); // 0x002C2A8C + void BindType(string szName, int lHashVal, out UCOMITypeInfo ppTInfo, out UCOMITypeComp ppTComp); // 0x002C2BD0 +} + +// Namespace: System.Runtime.InteropServices +[ComImport]public interface UCOMITypeInfo // TypeDefIndex: 874 +{ + // Methods + void GetTypeAttr(out IntPtr ppTypeAttr); // 0x002C2D88 + void GetTypeComp(out UCOMITypeComp ppTComp); // 0x002C2DCC + void GetFuncDesc(int index, out IntPtr ppFuncDesc); // 0x002C2EE0 + void GetVarDesc(int index, out IntPtr ppVarDesc); // 0x002C2F2C + void GetNames(int memid, out string[] rgBstrNames, int cMaxNames, out int pcNames); // 0x002C2F78 + void GetRefTypeOfImplType(int index, out int href); // 0x002C307C + void GetImplTypeFlags(int index, out int pImplTypeFlags); // 0x002C30C8 + void GetIDsOfNames(string[] rgszNames, int cNames, out int[] pMemId); // 0x002C3114 + void Invoke(object pvInstance, int memid, short wFlags, DISPPARAMS pDispParams, out object pVarResult, out EXCEPINFO pExcepInfo, out int puArgErr); // 0x002C3280 + void GetDocumentation(int index, out string strName, out string strDocString, out int dwHelpContext, out string strHelpFile); // 0x002C340C + void GetDllEntry(int memid, INVOKEKIND invKind, out string pBstrDllName, out string pBstrName, out short pwOrdinal); // 0x002C34CC + void GetRefTypeInfo(int hRef, out UCOMITypeInfo ppTI); // 0x002C3574 + void AddressOfMember(int memid, INVOKEKIND invKind, out IntPtr ppv); // 0x002C3690 + void CreateInstance(object pUnkOuter, Guid riid, out object ppvObj); // 0x002C36E4 + void GetMops(int memid, out string pBstrMops); // 0x002C3888 + void GetContainingTypeLib(out UCOMITypeLib ppTLB, out int pIndex); // 0x002C38F8 + void ReleaseTypeAttr(IntPtr pTypeAttr); // 0x002C3A14 + void ReleaseFuncDesc(IntPtr pFuncDesc); // 0x002C3A58 + void ReleaseVarDesc(IntPtr pVarDesc); // 0x002C3A9C +} + +// Namespace: System.Runtime.InteropServices +[ComImport]public interface UCOMITypeLib // TypeDefIndex: 875 +{ + // Methods + int GetTypeInfoCount(); // 0x002C3AE0 + void GetTypeInfo(int index, out UCOMITypeInfo ppTI); // 0x002C3B34 + void GetTypeInfoType(int index, out TYPEKIND pTKind); // 0x002C3C50 + void GetTypeInfoOfGuid(Guid guid, out UCOMITypeInfo ppTInfo); // 0x002C3C9C + void GetLibAttr(out IntPtr ppTLibAttr); // 0x002C3DB8 + void GetTypeComp(out UCOMITypeComp ppTComp); // 0x002C3DFC + void GetDocumentation(int index, out string strName, out string strDocString, out int dwHelpContext, out string strHelpFile); // 0x002C3F10 + bool IsName(string szNameBuf, int lHashVal); // 0x002C3FD0 + void FindName(string szNameBuf, int lHashVal, out UCOMITypeInfo[] ppTInfo, out int[] rgMemId, short pcFound); // 0x002C4044 + void ReleaseTLibAttr(IntPtr pTLibAttr); // 0x002C4070 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public sealed class UnknownWrapper // TypeDefIndex: 876 +{ + // Fields + private object InternalObject; // 0x08 + + // Properties + public object WrappedObject { get; } // 0x002C40D4 + + // Methods + public void .ctor(object obj); // 0x002C40B4 +} + +// Namespace: System.Runtime.InteropServices +public sealed class UnmanagedFunctionPointerAttribute : Attribute // TypeDefIndex: 877 +{ + // Fields + private CallingConvention call_conv; // 0x08 + public CharSet CharSet; // 0x0C + public bool SetLastError; // 0x10 + public bool BestFitMapping; // 0x11 + public bool ThrowOnUnmappableChar; // 0x12 + + // Properties + public CallingConvention CallingConvention { get; } // 0x002C40FC + + // Methods + public void .ctor(CallingConvention callingConvention); // 0x002C40DC +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum UnmanagedType // TypeDefIndex: 878 +{ + Bool = 2, + I1 = 3, + U1 = 4, + I2 = 5, + U2 = 6, + I4 = 7, + U4 = 8, + I8 = 9, + U8 = 10, + R4 = 11, + R8 = 12, + Currency = 15, + BStr = 19, + LPStr = 20, + LPWStr = 21, + LPTStr = 22, + ByValTStr = 23, + IUnknown = 25, + IDispatch = 26, + Struct = 27, + Interface = 28, + SafeArray = 29, + ByValArray = 30, + SysInt = 31, + SysUInt = 32, + VBByRefStr = 34, + AnsiBStr = 35, + TBStr = 36, + VariantBool = 37, + FunctionPtr = 38, + AsAny = 40, + LPArray = 42, + LPStruct = 43, + CustomMarshaler = 44, + Error = 45 +} + +// Namespace: System.Runtime.InteropServices +public struct VARDESC // TypeDefIndex: 879 +{ + // Fields + public int memid; // 0x08 + public string lpstrSchema; // 0x0C + public ELEMDESC elemdescVar; // 0x10 + public short wVarFlags; // 0x20 + public VarEnum varkind; // 0x24 + +} + +// Namespace: +public struct DESCUNION // TypeDefIndex: 880 +{ + // Fields + public IntPtr lpvarValue; // 0x08 + public int oInst; // 0x08 + +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum VARFLAGS // TypeDefIndex: 881 +{ + VARFLAG_FREADONLY = 1, + VARFLAG_FSOURCE = 2, + VARFLAG_FBINDABLE = 4, + VARFLAG_FREQUESTEDIT = 8, + VARFLAG_FDISPLAYBIND = 16, + VARFLAG_FDEFAULTBIND = 32, + VARFLAG_FHIDDEN = 64, + VARFLAG_FRESTRICTED = 128, + VARFLAG_FDEFAULTCOLLELEM = 256, + VARFLAG_FUIDEFAULT = 512, + VARFLAG_FNONBROWSABLE = 1024, + VARFLAG_FREPLACEABLE = 2048, + VARFLAG_FIMMEDIATEBIND = 4096 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public enum VarEnum // TypeDefIndex: 882 +{ + VT_EMPTY = 0, + VT_NULL = 1, + VT_I2 = 2, + VT_I4 = 3, + VT_R4 = 4, + VT_R8 = 5, + VT_CY = 6, + VT_DATE = 7, + VT_BSTR = 8, + VT_DISPATCH = 9, + VT_ERROR = 10, + VT_BOOL = 11, + VT_VARIANT = 12, + VT_UNKNOWN = 13, + VT_DECIMAL = 14, + VT_I1 = 16, + VT_UI1 = 17, + VT_UI2 = 18, + VT_UI4 = 19, + VT_I8 = 20, + VT_UI8 = 21, + VT_INT = 22, + VT_UINT = 23, + VT_VOID = 24, + VT_HRESULT = 25, + VT_PTR = 26, + VT_SAFEARRAY = 27, + VT_CARRAY = 28, + VT_USERDEFINED = 29, + VT_LPSTR = 30, + VT_LPWSTR = 31, + VT_RECORD = 36, + VT_FILETIME = 64, + VT_BLOB = 65, + VT_STREAM = 66, + VT_STORAGE = 67, + VT_STREAMED_OBJECT = 68, + VT_STORED_OBJECT = 69, + VT_BLOB_OBJECT = 70, + VT_CF = 71, + VT_CLSID = 72, + VT_VECTOR = 4096, + VT_ARRAY = 8192, + VT_BYREF = 16384 +} + +// Namespace: System.Runtime.InteropServices +[Serializable] +public sealed class VariantWrapper // TypeDefIndex: 883 +{ + // Fields + private object _wrappedObject; // 0x08 + + // Properties + public object WrappedObject { get; } // 0x002C4124 + + // Methods + public void .ctor(object obj); // 0x002C4104 +} + +// Namespace: System.Runtime.InteropServices +public interface _Activator // TypeDefIndex: 884 +{ + // Methods + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); +} + +// Namespace: System.Runtime.InteropServices +public interface _Assembly // TypeDefIndex: 885 +{ + // Properties + string CodeBase { get; } + string EscapedCodeBase { get; } + string FullName { get; } + MethodInfo EntryPoint { get; } + string Location { get; } + + // Events + event ModuleResolveEventHandler ModuleResolve { + add; // 0x00000000 + remove; // 0x00000000 + } + + // Methods + string ToString(); + bool Equals(object other); + int GetHashCode(); + Type GetType(); + AssemblyName GetName(); + AssemblyName GetName(bool copiedName); + Type GetType(string name); + Type GetType(string name, bool throwOnError); + Type[] GetExportedTypes(); + Type[] GetTypes(); + Stream GetManifestResourceStream(Type type, string name); + Stream GetManifestResourceStream(string name); + FileStream GetFile(string name); + FileStream[] GetFiles(); + FileStream[] GetFiles(bool getResourceModules); + string[] GetManifestResourceNames(); + ManifestResourceInfo GetManifestResourceInfo(string resourceName); + object[] GetCustomAttributes(Type attributeType, bool inherit); + object[] GetCustomAttributes(bool inherit); + bool IsDefined(Type attributeType, bool inherit); + void GetObjectData(SerializationInfo info, StreamingContext context); + Type GetType(string name, bool throwOnError, bool ignoreCase); + Assembly GetSatelliteAssembly(CultureInfo culture); + Assembly GetSatelliteAssembly(CultureInfo culture, Version version); + Module LoadModule(string moduleName, byte[] rawModule); + Module LoadModule(string moduleName, byte[] rawModule, byte[] rawSymbolStore); + object CreateInstance(string typeName); + object CreateInstance(string typeName, bool ignoreCase); + object CreateInstance(string typeName, bool ignoreCase, BindingFlags bindingAttr, Binder binder, object[] args, CultureInfo culture, object[] activationAttributes); + Module[] GetLoadedModules(); + Module[] GetLoadedModules(bool getResourceModules); + Module[] GetModules(); + Module[] GetModules(bool getResourceModules); + Module GetModule(string name); + AssemblyName[] GetReferencedAssemblies(); +} + +// Namespace: System.Runtime.InteropServices +public interface _AssemblyBuilder // TypeDefIndex: 886 +{ + // Methods + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); +} + +// Namespace: System.Runtime.InteropServices +public interface _AssemblyName // TypeDefIndex: 887 +{ + // Methods + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); +} + +// Namespace: System.Runtime.InteropServices +public interface _ConstructorBuilder // TypeDefIndex: 888 +{ + // Methods + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); +} + +// Namespace: System.Runtime.InteropServices +public interface _ConstructorInfo // TypeDefIndex: 889 +{ + // Properties + MethodAttributes Attributes { get; } + CallingConventions CallingConvention { get; } + Type DeclaringType { get; } + bool IsAbstract { get; } + bool IsAssembly { get; } + bool IsConstructor { get; } + bool IsFamily { get; } + bool IsFamilyAndAssembly { get; } + bool IsFamilyOrAssembly { get; } + bool IsFinal { get; } + bool IsHideBySig { get; } + bool IsPrivate { get; } + bool IsPublic { get; } + bool IsSpecialName { get; } + bool IsStatic { get; } + bool IsVirtual { get; } + MemberTypes MemberType { get; } + RuntimeMethodHandle MethodHandle { get; } + string Name { get; } + Type ReflectedType { get; } + + // Methods + bool Equals(object other); + object[] GetCustomAttributes(bool inherit); + object[] GetCustomAttributes(Type attributeType, bool inherit); + int GetHashCode(); + MethodImplAttributes GetMethodImplementationFlags(); + ParameterInfo[] GetParameters(); + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); + Type GetType(); + object Invoke_5(object[] parameters); + object Invoke_3(object obj, object[] parameters); + object Invoke_4(BindingFlags invokeAttr, Binder binder, object[] parameters, CultureInfo culture); + object Invoke_2(object obj, BindingFlags invokeAttr, Binder binder, object[] parameters, CultureInfo culture); + bool IsDefined(Type attributeType, bool inherit); + string ToString(); +} + +// Namespace: System.Runtime.InteropServices +public interface _CustomAttributeBuilder // TypeDefIndex: 890 +{ + // Methods + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); +} + +// Namespace: System.Runtime.InteropServices +public interface _EnumBuilder // TypeDefIndex: 891 +{ + // Methods + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); +} + +// Namespace: System.Runtime.InteropServices +public interface _EventBuilder // TypeDefIndex: 892 +{ + // Methods + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); +} + +// Namespace: System.Runtime.InteropServices +public interface _EventInfo // TypeDefIndex: 893 +{ + // Properties + EventAttributes Attributes { get; } + Type DeclaringType { get; } + Type EventHandlerType { get; } + bool IsMulticast { get; } + bool IsSpecialName { get; } + MemberTypes MemberType { get; } + string Name { get; } + Type ReflectedType { get; } + + // Methods + void AddEventHandler(object target, Delegate handler); + bool Equals(object other); + MethodInfo GetAddMethod(); + MethodInfo GetAddMethod(bool nonPublic); + object[] GetCustomAttributes(bool inherit); + object[] GetCustomAttributes(Type attributeType, bool inherit); + int GetHashCode(); + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); + MethodInfo GetRaiseMethod(); + MethodInfo GetRaiseMethod(bool nonPublic); + MethodInfo GetRemoveMethod(); + MethodInfo GetRemoveMethod(bool nonPublic); + Type GetType(); + bool IsDefined(Type attributeType, bool inherit); + void RemoveEventHandler(object target, Delegate handler); + string ToString(); +} + +// Namespace: System.Runtime.InteropServices +public interface _FieldBuilder // TypeDefIndex: 894 +{ + // Methods + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); +} + +// Namespace: System.Runtime.InteropServices +public interface _FieldInfo // TypeDefIndex: 895 +{ + // Properties + FieldAttributes Attributes { get; } + Type DeclaringType { get; } + RuntimeFieldHandle FieldHandle { get; } + Type FieldType { get; } + bool IsAssembly { get; } + bool IsFamily { get; } + bool IsFamilyAndAssembly { get; } + bool IsFamilyOrAssembly { get; } + bool IsInitOnly { get; } + bool IsLiteral { get; } + bool IsNotSerialized { get; } + bool IsPinvokeImpl { get; } + bool IsPrivate { get; } + bool IsPublic { get; } + bool IsSpecialName { get; } + bool IsStatic { get; } + MemberTypes MemberType { get; } + string Name { get; } + Type ReflectedType { get; } + + // Methods + bool Equals(object other); + object[] GetCustomAttributes(bool inherit); + object[] GetCustomAttributes(Type attributeType, bool inherit); + int GetHashCode(); + Type GetType(); + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); + object GetValue(object obj); + object GetValueDirect(TypedReference obj); + bool IsDefined(Type attributeType, bool inherit); + void SetValue(object obj, object value); + void SetValue(object obj, object value, BindingFlags invokeAttr, Binder binder, CultureInfo culture); + void SetValueDirect(TypedReference obj, object value); + string ToString(); +} + +// Namespace: System.Runtime.InteropServices +public interface _ILGenerator // TypeDefIndex: 896 +{ + // Methods + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); +} + +// Namespace: System.Runtime.InteropServices +public interface _LocalBuilder // TypeDefIndex: 897 +{ + // Methods + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); +} + +// Namespace: System.Runtime.InteropServices +public interface _MethodBase // TypeDefIndex: 898 +{ + // Properties + MethodAttributes Attributes { get; } + CallingConventions CallingConvention { get; } + Type DeclaringType { get; } + bool IsAbstract { get; } + bool IsAssembly { get; } + bool IsConstructor { get; } + bool IsFamily { get; } + bool IsFamilyAndAssembly { get; } + bool IsFamilyOrAssembly { get; } + bool IsFinal { get; } + bool IsHideBySig { get; } + bool IsPrivate { get; } + bool IsPublic { get; } + bool IsSpecialName { get; } + bool IsStatic { get; } + bool IsVirtual { get; } + MemberTypes MemberType { get; } + RuntimeMethodHandle MethodHandle { get; } + string Name { get; } + Type ReflectedType { get; } + + // Methods + bool Equals(object other); + object[] GetCustomAttributes(bool inherit); + object[] GetCustomAttributes(Type attributeType, bool inherit); + int GetHashCode(); + MethodImplAttributes GetMethodImplementationFlags(); + ParameterInfo[] GetParameters(); + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); + Type GetType(); + object Invoke(object obj, object[] parameters); + object Invoke(object obj, BindingFlags invokeAttr, Binder binder, object[] parameters, CultureInfo culture); + bool IsDefined(Type attributeType, bool inherit); + string ToString(); +} + +// Namespace: System.Runtime.InteropServices +public interface _MethodBuilder // TypeDefIndex: 899 +{ + // Methods + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); +} + +// Namespace: System.Runtime.InteropServices +public interface _MethodInfo // TypeDefIndex: 900 +{ + // Properties + MethodAttributes Attributes { get; } + CallingConventions CallingConvention { get; } + Type DeclaringType { get; } + bool IsAbstract { get; } + bool IsAssembly { get; } + bool IsConstructor { get; } + bool IsFamily { get; } + bool IsFamilyAndAssembly { get; } + bool IsFamilyOrAssembly { get; } + bool IsFinal { get; } + bool IsHideBySig { get; } + bool IsPrivate { get; } + bool IsPublic { get; } + bool IsSpecialName { get; } + bool IsStatic { get; } + bool IsVirtual { get; } + MemberTypes MemberType { get; } + RuntimeMethodHandle MethodHandle { get; } + string Name { get; } + Type ReflectedType { get; } + Type ReturnType { get; } + ICustomAttributeProvider ReturnTypeCustomAttributes { get; } + + // Methods + bool Equals(object other); + MethodInfo GetBaseDefinition(); + object[] GetCustomAttributes(bool inherit); + object[] GetCustomAttributes(Type attributeType, bool inherit); + int GetHashCode(); + MethodImplAttributes GetMethodImplementationFlags(); + ParameterInfo[] GetParameters(); + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); + Type GetType(); + object Invoke(object obj, object[] parameters); + object Invoke(object obj, BindingFlags invokeAttr, Binder binder, object[] parameters, CultureInfo culture); + bool IsDefined(Type attributeType, bool inherit); + string ToString(); +} + +// Namespace: System.Runtime.InteropServices +public interface _MethodRental // TypeDefIndex: 901 +{ + // Methods + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); +} + +// Namespace: System.Runtime.InteropServices +public interface _Module // TypeDefIndex: 902 +{ + // Methods + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); +} + +// Namespace: System.Runtime.InteropServices +public interface _ModuleBuilder // TypeDefIndex: 903 +{ + // Methods + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); +} + +// Namespace: System.Runtime.InteropServices +public interface _ParameterBuilder // TypeDefIndex: 904 +{ + // Methods + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); +} + +// Namespace: System.Runtime.InteropServices +public interface _ParameterInfo // TypeDefIndex: 905 +{ + // Methods + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); +} + +// Namespace: System.Runtime.InteropServices +public interface _PropertyBuilder // TypeDefIndex: 906 +{ + // Methods + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); +} + +// Namespace: System.Runtime.InteropServices +public interface _PropertyInfo // TypeDefIndex: 907 +{ + // Properties + PropertyAttributes Attributes { get; } + bool CanRead { get; } + bool CanWrite { get; } + Type DeclaringType { get; } + bool IsSpecialName { get; } + MemberTypes MemberType { get; } + string Name { get; } + Type PropertyType { get; } + Type ReflectedType { get; } + + // Methods + bool Equals(object other); + MethodInfo[] GetAccessors(); + MethodInfo[] GetAccessors(bool nonPublic); + object[] GetCustomAttributes(bool inherit); + object[] GetCustomAttributes(Type attributeType, bool inherit); + MethodInfo GetGetMethod(); + MethodInfo GetGetMethod(bool nonPublic); + int GetHashCode(); + ParameterInfo[] GetIndexParameters(); + MethodInfo GetSetMethod(); + MethodInfo GetSetMethod(bool nonPublic); + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); + Type GetType(); + object GetValue(object obj, object[] index); + object GetValue(object obj, BindingFlags invokeAttr, Binder binder, object[] index, CultureInfo culture); + bool IsDefined(Type attributeType, bool inherit); + void SetValue(object obj, object value, object[] index); + void SetValue(object obj, object value, BindingFlags invokeAttr, Binder binder, object[] index, CultureInfo culture); + string ToString(); +} + +// Namespace: System.Runtime.InteropServices +public interface _SignatureHelper // TypeDefIndex: 908 +{ + // Methods + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); +} + +// Namespace: System.Runtime.InteropServices +public interface _Thread // TypeDefIndex: 909 +{ + // Methods + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); +} + +// Namespace: System.Runtime.InteropServices +public interface _TypeBuilder // TypeDefIndex: 910 +{ + // Methods + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); +} + +// Namespace: System.Runtime.Remoting.Activation +internal class ActivationServices // TypeDefIndex: 911 +{ + // Fields + private static IActivator _constructionActivator; // 0x00 + + // Properties + private static IActivator ConstructionActivator { get; } // 0x002C4788 + + // Methods + public void .ctor(); // 0x002C4780 + public static IMessage Activate(RemotingProxy proxy, ConstructionCall ctorCall); // 0x002C483C + public static IMessage RemoteActivate(IConstructionCallMessage ctorCall); // 0x002C4BA4 + public static object CreateProxyFromAttributes(Type type, object[] activationAttributes); // 0x002C4DC4 + public static ConstructionCall CreateConstructionCall(Type type, string activationUrl, object[] activationAttributes); // 0x002C5048 + public static IMessage CreateInstanceFromMessage(IConstructionCallMessage ctorCall); // 0x002C5D50 + public static object CreateProxyForType(Type type); // 0x002C62B0 + public static object AllocateUninitializedClassInstance(Type type); // 0x002C62AC + public static void EnableProxyActivation(Type type, bool enable); // 0x002C6464 +} + +// Namespace: System.Runtime.Remoting.Activation +[Serializable] +public enum ActivatorLevel // TypeDefIndex: 912 +{ + Construction = 4, + Context = 8, + AppDomain = 12, + Process = 16, + Machine = 20 +} + +// Namespace: System.Runtime.Remoting.Activation +internal class AppDomainLevelActivator : IActivator // TypeDefIndex: 913 +{ + // Fields + private string _activationUrl; // 0x08 + private IActivator _next; // 0x0C + + // Properties + public ActivatorLevel Level { get; } // 0x002C6468 + public IActivator NextActivator { get; set; } // 0x002C6470 0x002C6478 + + // Methods + public void .ctor(string activationUrl, IActivator next); // 0x002C5D08 + public IConstructionReturnMessage Activate(IConstructionCallMessage ctorCall); // 0x002C6480 +} + +// Namespace: System.Runtime.Remoting.Activation +[Serializable] +internal class ConstructionLevelActivator : IActivator // TypeDefIndex: 914 +{ + // Properties + public ActivatorLevel Level { get; } // 0x002C6A7C + public IActivator NextActivator { get; set; } // 0x002C6A84 0x002C6A8C + + // Methods + public void .ctor(); // 0x002C4834 + public IConstructionReturnMessage Activate(IConstructionCallMessage msg); // 0x002C6A90 +} + +// Namespace: System.Runtime.Remoting.Activation +[Serializable] +internal class ContextLevelActivator : IActivator // TypeDefIndex: 915 +{ + // Fields + private IActivator m_NextActivator; // 0x08 + + // Properties + public ActivatorLevel Level { get; } // 0x002C6C04 + public IActivator NextActivator { get; set; } // 0x002C6C0C 0x002C6C14 + + // Methods + public void .ctor(IActivator next); // 0x002C5D30 + public IConstructionReturnMessage Activate(IConstructionCallMessage ctorCall); // 0x002C6C1C +} + +// Namespace: System.Runtime.Remoting.Activation +public interface IActivator // TypeDefIndex: 916 +{ + // Properties + ActivatorLevel Level { get; } + IActivator NextActivator { get; set; } + + // Methods + IConstructionReturnMessage Activate(IConstructionCallMessage msg); +} + +// Namespace: System.Runtime.Remoting.Activation +public interface IConstructionCallMessage : IMessage, IMethodCallMessage, IMethodMessage // TypeDefIndex: 917 +{ + // Properties + Type ActivationType { get; } + string ActivationTypeName { get; } + IActivator Activator { get; set; } + object[] CallSiteActivationAttributes { get; } + IList ContextProperties { get; } + +} + +// Namespace: System.Runtime.Remoting.Activation +public interface IConstructionReturnMessage : IMessage, IMethodMessage, IMethodReturnMessage // TypeDefIndex: 918 +{ +} + +// Namespace: System.Runtime.Remoting.Activation +internal class RemoteActivationAttribute : Attribute, IContextAttribute // TypeDefIndex: 919 +{ + // Fields + private IList _contextProperties; // 0x08 + + // Methods + public void .ctor(); // 0x002C6FF8 + public void .ctor(IList contextProperties); // 0x002C7000 + public bool IsContextOK(Context ctx, IConstructionCallMessage ctor); // 0x002C7020 + public void GetPropertiesForNewContext(IConstructionCallMessage ctor); // 0x002C7028 +} + +// Namespace: System.Runtime.Remoting.Activation +internal class RemoteActivator : MarshalByRefObject, IActivator // TypeDefIndex: 920 +{ + // Properties + public ActivatorLevel Level { get; } // 0x002C7D4C + public IActivator NextActivator { get; set; } // 0x002C7DD4 0x002C7E5C + + // Methods + public void .ctor(); // 0x002C745C + public IConstructionReturnMessage Activate(IConstructionCallMessage msg); // 0x002C7464 + public override object InitializeLifetimeService(); // 0x002C79C8 +} + +// Namespace: System.Runtime.Remoting.Activation +[Serializable] +public sealed class UrlAttribute : ContextAttribute // TypeDefIndex: 921 +{ + // Fields + private string url; // 0x0C + + // Properties + public string UrlValue { get; } // 0x002C7F04 + + // Methods + public void .ctor(string callsiteURL); // 0x002C7EE4 + public override bool Equals(object o); // 0x002C7F0C + public override int GetHashCode(); // 0x002C7FCC + public override void GetPropertiesForNewContext(IConstructionCallMessage ctorMsg); // 0x002C7FF8 + public override bool IsContextOK(Context ctx, IConstructionCallMessage msg); // 0x002C7FFC +} + +// Namespace: System.Runtime.Remoting.Channels +internal class AggregateDictionary : IEnumerable, ICollection, IDictionary // TypeDefIndex: 922 +{ + // Fields + private IDictionary[] dictionaries; // 0x08 + private ArrayList _values; // 0x0C + private ArrayList _keys; // 0x10 + + // Properties + public bool IsFixedSize { get; } // 0x002C9514 + public bool IsReadOnly { get; } // 0x002C951C + public object Item { get; set; } // 0x002C9524 0x002C96EC + public ICollection Keys { get; } // 0x002C9774 + public ICollection Values { get; } // 0x002C9918 + public int Count { get; } // 0x002CA0C8 + public bool IsSynchronized { get; } // 0x002CA204 + public object SyncRoot { get; } // 0x002CA20C + + // Methods + public void .ctor(IDictionary[] dics); // 0x002C944C + private IEnumerator System.Collections.IEnumerable.GetEnumerator(); // 0x002C946C + public void Add(object key, object value); // 0x002C9ABC + public void Clear(); // 0x002C9B44 + public bool Contains(object ob); // 0x002C9BCC + public IDictionaryEnumerator GetEnumerator(); // 0x002C9D0C + public void Remove(object ob); // 0x002C9D8C + public void CopyTo(Array array, int index); // 0x002C9E14 +} + +// Namespace: System.Runtime.Remoting.Channels +internal class AggregateEnumerator : IEnumerator, IDictionaryEnumerator // TypeDefIndex: 923 +{ + // Fields + private IDictionary[] dictionaries; // 0x08 + private int pos; // 0x0C + private IDictionaryEnumerator currente; // 0x10 + + // Properties + public DictionaryEntry Entry { get; } // 0x002CA344 + public object Key { get; } // 0x002CA424 + public object Value { get; } // 0x002CA4FC + public object Current { get; } // 0x002CA5D4 + + // Methods + public void .ctor(IDictionary[] dics); // 0x002C94EC + public bool MoveNext(); // 0x002CA6AC + public void Reset(); // 0x002CA210 +} + +// Namespace: System.Runtime.Remoting.Channels +public abstract class BaseChannelObjectWithProperties : IEnumerable, ICollection, IDictionary // TypeDefIndex: 924 +{ + // Fields + private Hashtable table; // 0x08 + + // Properties + public virtual int Count { get; } // 0x002CA9B0 + public virtual bool IsFixedSize { get; } // 0x002CA9E4 + public virtual bool IsReadOnly { get; } // 0x002CA9EC + public virtual bool IsSynchronized { get; } // 0x002CA9F4 + public virtual object Item { get; set; } // 0x002CA9FC 0x002CAA84 + public virtual ICollection Keys { get; } // 0x002CAB0C + public virtual IDictionary Properties { get; } // 0x002CAB40 + public virtual object SyncRoot { get; } // 0x002CAB44 + public virtual ICollection Values { get; } // 0x002CAB48 + + // Methods + protected void .ctor(); // 0x002CA900 + private IEnumerator System.Collections.IEnumerable.GetEnumerator(); // 0x002CA97C + public virtual void Add(object key, object value); // 0x002CAB7C + public virtual void Clear(); // 0x002CAC04 + public virtual bool Contains(object key); // 0x002CAC8C + public virtual void CopyTo(Array array, int index); // 0x002CACC8 + public virtual IDictionaryEnumerator GetEnumerator(); // 0x002CAD50 + public virtual void Remove(object key); // 0x002CAD84 +} + +// Namespace: System.Runtime.Remoting.Channels +public abstract class BaseChannelSinkWithProperties : BaseChannelObjectWithProperties // TypeDefIndex: 925 +{ + // Methods + protected void .ctor(); // 0x002CAE0C +} + +// Namespace: System.Runtime.Remoting.Channels +public abstract class BaseChannelWithProperties : BaseChannelObjectWithProperties // TypeDefIndex: 926 +{ + // Fields + protected IChannelSinkBase SinksWithProperties; // 0x0C + + // Properties + public override IDictionary Properties { get; } // 0x002CAE14 + + // Methods + protected void .ctor(); // 0x002CAE10 +} + +// Namespace: System.Runtime.Remoting.Channels +[Serializable] +public class ChannelDataStore : IChannelDataStore // TypeDefIndex: 927 +{ + // Fields + private string[] _channelURIs; // 0x08 + private DictionaryEntry[] _extraData; // 0x0C + + // Properties + public string[] ChannelUris { get; set; } // 0x002CB52C 0x002CB534 + public object Item { get; set; } // 0x002CB53C 0x002CB5D8 + + // Methods + public void .ctor(string[] channelURIs); // 0x002CB50C +} + +// Namespace: System.Runtime.Remoting +[Serializable] +internal class ChannelInfo : IChannelInfo // TypeDefIndex: 928 +{ + // Fields + private object[] channelData; // 0x08 + + // Properties + public object[] ChannelData { get; set; } // 0x002C943C 0x002C9444 + + // Methods + public void .ctor(); // 0x002C8DA0 + public void .ctor(object remoteChannelData); // 0x002C9360 +} + +// Namespace: System.Runtime.Remoting.Channels +public sealed class ChannelServices // TypeDefIndex: 929 +{ + // Fields + private static ArrayList registeredChannels; // 0x00 + private static ArrayList delayedClientChannels; // 0x04 + private static CrossContextChannel _crossContextSink; // 0x08 + internal static string CrossContextUrl; // 0x0C + private static IList oldStartModeTypes; // 0x10 + + // Properties + internal static CrossContextChannel CrossContextChannel { get; } // 0x002CB9AC + public static IChannel[] RegisteredChannels { get; } // 0x002CC700 + + // Methods + private void .ctor(); // 0x002CB7A4 + private static void .cctor(); // 0x002CB7AC + internal static IMessageSink CreateClientChannelSinkChain(string url, object remoteChannelData, out string objectUri); // 0x002CBA38 + internal static IMessageSink CreateClientChannelSinkChain(IChannelSender sender, string url, object[] channelDataArray, out string objectUri); // 0x002CC440 + public static IServerChannelSink CreateServerChannelSinkChain(IServerChannelSinkProvider provider, IChannelReceiver channel); // 0x002CCAE0 + public static ServerProcessing DispatchMessage(IServerChannelSinkStack sinkStack, IMessage msg, out IMessage replyMsg); // 0x002CCDA0 + public static IChannel GetChannel(string name); // 0x002CD0C0 + public static IDictionary GetChannelSinkProperties(object obj); // 0x002CD688 + public static string[] GetUrlsForObject(MarshalByRefObject obj); // 0x002CDB48 + public static void RegisterChannel(IChannel chnl); // 0x002CC67C + public static void RegisterChannel(IChannel chnl, bool ensureSecurity); // 0x002CE1C8 + internal static void RegisterChannelConfig(ChannelData channel); // 0x002CEE04 + private static object CreateProvider(ProviderData prov); // 0x002CFF44 + public static IMessage SyncDispatchMessage(IMessage msg); // 0x002CCFA0 + public static IMessageCtrl AsyncDispatchMessage(IMessage msg, IMessageSink replySink); // 0x002D09C4 + private static ReturnMessage CheckIncomingMessage(IMessage msg); // 0x002D0470 + internal static IMessage CheckReturnMessage(IMessage callMsg, IMessage retMsg); // 0x002D07BC + private static bool IsLocalCall(IMessage callMsg); // 0x002D0C18 + public static void UnregisterChannel(IChannel chnl); // 0x002D0C48 + internal static object[] GetCurrentChannelInfo(); // 0x002C8E2C +} + +// Namespace: System.Runtime.Remoting.Channels +internal class ExceptionFilterSink : IMessageSink // TypeDefIndex: 930 +{ + // Fields + private IMessageSink _next; // 0x08 + private IMessage _call; // 0x0C + + // Properties + public IMessageSink NextSink { get; } // 0x002D2AA0 + + // Methods + public void .ctor(IMessage call, IMessageSink next); // 0x002D0C20 + public IMessage SyncProcessMessage(IMessage msg); // 0x002D28F8 + public IMessageCtrl AsyncProcessMessage(IMessage msg, IMessageSink replySink); // 0x002D2A18 +} + +// Namespace: System.Runtime.Remoting.Channels +internal class ChanelSinkStackEntry // TypeDefIndex: 931 +{ + // Fields + public IChannelSinkBase Sink; // 0x08 + public object State; // 0x0C + public ChanelSinkStackEntry Next; // 0x10 + + // Methods + public void .ctor(IChannelSinkBase sink, object state, ChanelSinkStackEntry next); // 0x002CB4DC +} + +// Namespace: System.Runtime.Remoting.Channels +public class ClientChannelSinkStack : IClientChannelSinkStack, IClientResponseChannelSinkStack // TypeDefIndex: 932 +{ + // Fields + private IMessageSink _replySink; // 0x08 + private ChanelSinkStackEntry _sinkStack; // 0x0C + + // Methods + public void .ctor(); // 0x002D102C + public void .ctor(IMessageSink replySink); // 0x002D1034 + public void AsyncProcessResponse(ITransportHeaders headers, Stream stream); // 0x002D1054 + public void DispatchException(Exception e); // 0x002D1220 + public void DispatchReplyMessage(IMessage msg); // 0x002D12A4 + public object Pop(IClientChannelSink sink); // 0x002D1380 + public void Push(IClientChannelSink sink, object state); // 0x002D1450 +} + +// Namespace: System.Runtime.Remoting.Channels +[Serializable] +internal class CrossAppDomainData // TypeDefIndex: 933 +{ + // Fields + private object _ContextID; // 0x08 + private int _DomainID; // 0x0C + private string _processGuid; // 0x10 + + // Properties + internal int DomainID { get; } // 0x002D1E74 + internal string ProcessID { get; } // 0x002D1E7C + + // Methods + internal void .ctor(int domainId); // 0x002D17BC +} + +// Namespace: System.Runtime.Remoting.Channels +[Serializable] +internal class CrossAppDomainChannel : IChannel, IChannelReceiver, IChannelSender // TypeDefIndex: 934 +{ + // Fields + private const string _strName = "MONOCAD"; // 0x00 + private const string _strBaseURI = "MONOCADURI"; // 0x00 + private static object s_lock; // 0x00 + + // Properties + public virtual string ChannelName { get; } // 0x002D16A8 + public virtual int ChannelPriority { get; } // 0x002D1704 + public virtual object ChannelData { get; } // 0x002D1718 + + // Methods + public void .ctor(); // 0x002D14D8 + private static void .cctor(); // 0x002D14E0 + internal static void RegisterCrossAppDomainChannel(); // 0x002D1560 + public string Parse(string url, out string objectURI); // 0x002D170C + public virtual string[] GetUrlsForUri(string objectURI); // 0x002D1880 + public virtual void StartListening(object data); // 0x002D191C + public virtual void StopListening(object data); // 0x002D1920 + public virtual IMessageSink CreateMessageSink(string url, object data, out string uri); // 0x002D1924 +} + +// Namespace: System.Runtime.Remoting.Channels +internal class CrossAppDomainSink : IMessageSink // TypeDefIndex: 935 +{ + // Fields + private static Hashtable s_sinks; // 0x00 + private static MethodInfo processMessageMethod; // 0x04 + private int _domainID; // 0x08 + + // Properties + internal int TargetDomainId { get; } // 0x002D1FB8 + public IMessageSink NextSink { get; } // 0x002D28F0 + + // Methods + internal void .ctor(int domainID); // 0x002D1E84 + private static void .cctor(); // 0x002D1EA4 + internal static CrossAppDomainSink GetSink(int domainID); // 0x002D1B0C + private static ProcessMessageRes ProcessMessageInDomain(byte[] arrRequest, CADMethodCallMessage cadMsg); // 0x002D1FC0 + public virtual IMessage SyncProcessMessage(IMessage msgRequest); // 0x002D217C + public virtual IMessageCtrl AsyncProcessMessage(IMessage reqMsg, IMessageSink replySink); // 0x002D26BC + public void SendAsyncMessage(object data); // 0x002D2784 +} + +// Namespace: +private struct ProcessMessageRes // TypeDefIndex: 936 +{ + // Fields + public byte[] arrResponse; // 0x08 + public CADMethodReturnMessage cadMrm; // 0x0C + +} + +// Namespace: System.Runtime.Remoting.Channels +internal class CADSerializer // TypeDefIndex: 937 +{ + // Methods + public void .ctor(); // 0x002CB080 + internal static IMessage DeserializeMessage(MemoryStream mem, IMethodCallMessage msg); // 0x002CB088 + internal static MemoryStream SerializeMessage(IMessage msg); // 0x002CB1C8 + internal static MemoryStream SerializeObject(object obj); // 0x002CB2EC + internal static object DeserializeObject(MemoryStream mem); // 0x002CB410 +} + +// Namespace: System.Runtime.Remoting.Channels +internal class AsyncRequest // TypeDefIndex: 938 +{ + // Fields + internal IMessageSink ReplySink; // 0x08 + internal IMessage MsgRequest; // 0x0C + + // Methods + public void .ctor(IMessage msgRequest, IMessageSink replySink); // 0x002CA8D8 +} + +// Namespace: System.Runtime.Remoting.Channels +public interface IChannel // TypeDefIndex: 939 +{ + // Properties + string ChannelName { get; } + int ChannelPriority { get; } + + // Methods + string Parse(string url, out string objectURI); +} + +// Namespace: System.Runtime.Remoting.Channels +public interface IChannelDataStore // TypeDefIndex: 940 +{ + // Properties + string[] ChannelUris { get; } + object Item { get; set; } + +} + +// Namespace: System.Runtime.Remoting.Channels +public interface IChannelReceiver : IChannel // TypeDefIndex: 941 +{ + // Properties + object ChannelData { get; } + + // Methods + string[] GetUrlsForUri(string objectURI); + void StartListening(object data); + void StopListening(object data); +} + +// Namespace: System.Runtime.Remoting.Channels +public interface IChannelReceiverHook // TypeDefIndex: 942 +{ + // Properties + string ChannelScheme { get; } + IServerChannelSink ChannelSinkChain { get; } + bool WantsToListen { get; } + + // Methods + void AddHookChannelUri(string channelUri); +} + +// Namespace: System.Runtime.Remoting.Channels +public interface IChannelSender : IChannel // TypeDefIndex: 943 +{ + // Methods + IMessageSink CreateMessageSink(string url, object remoteChannelData, out string objectURI); +} + +// Namespace: System.Runtime.Remoting.Channels +public interface IChannelSinkBase // TypeDefIndex: 944 +{ + // Properties + IDictionary Properties { get; } + +} + +// Namespace: System.Runtime.Remoting.Channels +public interface IClientChannelSink : IChannelSinkBase // TypeDefIndex: 945 +{ + // Properties + IClientChannelSink NextChannelSink { get; } + + // Methods + void AsyncProcessRequest(IClientChannelSinkStack sinkStack, IMessage msg, ITransportHeaders headers, Stream stream); + void AsyncProcessResponse(IClientResponseChannelSinkStack sinkStack, object state, ITransportHeaders headers, Stream stream); + Stream GetRequestStream(IMessage msg, ITransportHeaders headers); + void ProcessMessage(IMessage msg, ITransportHeaders requestHeaders, Stream requestStream, out ITransportHeaders responseHeaders, out Stream responseStream); +} + +// Namespace: System.Runtime.Remoting.Channels +public interface IClientChannelSinkProvider // TypeDefIndex: 946 +{ + // Properties + IClientChannelSinkProvider Next { get; set; } + + // Methods + IClientChannelSink CreateSink(IChannelSender channel, string url, object remoteChannelData); +} + +// Namespace: System.Runtime.Remoting.Channels +public interface IClientChannelSinkStack : IClientResponseChannelSinkStack // TypeDefIndex: 947 +{ + // Methods + object Pop(IClientChannelSink sink); + void Push(IClientChannelSink sink, object state); +} + +// Namespace: System.Runtime.Remoting.Channels +public interface IClientFormatterSink : IChannelSinkBase, IClientChannelSink, IMessageSink // TypeDefIndex: 948 +{ +} + +// Namespace: System.Runtime.Remoting.Channels +public interface IClientFormatterSinkProvider : IClientChannelSinkProvider // TypeDefIndex: 949 +{ +} + +// Namespace: System.Runtime.Remoting.Channels +public interface IClientResponseChannelSinkStack // TypeDefIndex: 950 +{ + // Methods + void AsyncProcessResponse(ITransportHeaders headers, Stream stream); + void DispatchException(Exception e); + void DispatchReplyMessage(IMessage msg); +} + +// Namespace: System.Runtime.Remoting.Channels +public interface ISecurableChannel // TypeDefIndex: 951 +{ + // Properties + bool IsSecured { get; set; } + +} + +// Namespace: System.Runtime.Remoting.Channels +public interface IServerChannelSink : IChannelSinkBase // TypeDefIndex: 952 +{ + // Properties + IServerChannelSink NextChannelSink { get; } + + // Methods + void AsyncProcessResponse(IServerResponseChannelSinkStack sinkStack, object state, IMessage msg, ITransportHeaders headers, Stream stream); + Stream GetResponseStream(IServerResponseChannelSinkStack sinkStack, object state, IMessage msg, ITransportHeaders headers); + ServerProcessing ProcessMessage(IServerChannelSinkStack sinkStack, IMessage requestMsg, ITransportHeaders requestHeaders, Stream requestStream, out IMessage responseMsg, out ITransportHeaders responseHeaders, out Stream responseStream); +} + +// Namespace: System.Runtime.Remoting.Channels +public interface IServerChannelSinkProvider // TypeDefIndex: 953 +{ + // Properties + IServerChannelSinkProvider Next { get; set; } + + // Methods + IServerChannelSink CreateSink(IChannelReceiver channel); + void GetChannelData(IChannelDataStore channelData); +} + +// Namespace: System.Runtime.Remoting.Channels +public interface IServerChannelSinkStack : IServerResponseChannelSinkStack // TypeDefIndex: 954 +{ + // Methods + object Pop(IServerChannelSink sink); + void Push(IServerChannelSink sink, object state); + void ServerCallback(IAsyncResult ar); + void Store(IServerChannelSink sink, object state); + void StoreAndDispatch(IServerChannelSink sink, object state); +} + +// Namespace: System.Runtime.Remoting.Channels +public interface IServerFormatterSinkProvider : IServerChannelSinkProvider // TypeDefIndex: 955 +{ +} + +// Namespace: System.Runtime.Remoting.Channels +public interface IServerResponseChannelSinkStack // TypeDefIndex: 956 +{ + // Methods + void AsyncProcessResponse(IMessage msg, ITransportHeaders headers, Stream stream); + Stream GetResponseStream(IMessage msg, ITransportHeaders headers); +} + +// Namespace: System.Runtime.Remoting.Channels +public interface ITransportHeaders // TypeDefIndex: 957 +{ + // Properties + object Item { get; set; } + + // Methods + IEnumerator GetEnumerator(); +} + +// Namespace: System.Runtime.Remoting.Channels +public class ServerChannelSinkStack : IServerChannelSinkStack, IServerResponseChannelSinkStack // TypeDefIndex: 958 +{ + // Fields + private ChanelSinkStackEntry _sinkStack; // 0x08 + + // Methods + public void .ctor(); // 0x002D2AA8 + public Stream GetResponseStream(IMessage msg, ITransportHeaders headers); // 0x002D2AB0 + public object Pop(IServerChannelSink sink); // 0x002D2C74 + public void Push(IServerChannelSink sink, object state); // 0x002D2D44 + public void ServerCallback(IAsyncResult ar); // 0x002D2DCC + public void Store(IServerChannelSink sink, object state); // 0x002D2E54 + public void StoreAndDispatch(IServerChannelSink sink, object state); // 0x002D2EDC + public void AsyncProcessResponse(IMessage msg, ITransportHeaders headers, Stream stream); // 0x002D2F64 +} + +// Namespace: System.Runtime.Remoting.Channels +internal class ServerDispatchSink : IChannelSinkBase, IServerChannelSink // TypeDefIndex: 959 +{ + // Properties + public IServerChannelSink NextChannelSink { get; } // 0x002D3140 + public IDictionary Properties { get; } // 0x002D3148 + + // Methods + public void .ctor(); // 0x002D3138 + public void AsyncProcessResponse(IServerResponseChannelSinkStack sinkStack, object state, IMessage msg, ITransportHeaders headers, Stream stream); // 0x002D3150 + public Stream GetResponseStream(IServerResponseChannelSinkStack sinkStack, object state, IMessage msg, ITransportHeaders headers); // 0x002D31D8 + public ServerProcessing ProcessMessage(IServerChannelSinkStack sinkStack, IMessage requestMsg, ITransportHeaders requestHeaders, Stream requestStream, out IMessage responseMsg, out ITransportHeaders responseHeaders, out Stream responseStream); // 0x002D31E0 +} + +// Namespace: System.Runtime.Remoting.Channels +internal class ServerDispatchSinkProvider : IServerChannelSinkProvider, IServerFormatterSinkProvider // TypeDefIndex: 960 +{ + // Properties + public IServerChannelSinkProvider Next { get; set; } // 0x002D3284 0x002D328C + + // Methods + public void .ctor(); // 0x002CCD98 + public void .ctor(IDictionary properties, ICollection providerData); // 0x002D327C + public IServerChannelSink CreateSink(IChannelReceiver channel); // 0x002D3314 + public void GetChannelData(IChannelDataStore channelData); // 0x002D3380 +} + +// Namespace: System.Runtime.Remoting.Channels +[Serializable] +public enum ServerProcessing // TypeDefIndex: 961 +{ + Complete = 0, + OneWay = 1, + Async = 2 +} + +// Namespace: System.Runtime.Remoting.Channels +public class SinkProviderData // TypeDefIndex: 962 +{ + // Fields + private string sinkName; // 0x08 + private ArrayList children; // 0x0C + private Hashtable properties; // 0x10 + + // Properties + public IList Children { get; } // 0x002D342C + public string Name { get; } // 0x002D3434 + public IDictionary Properties { get; } // 0x002D343C + + // Methods + public void .ctor(string name); // 0x002D3384 +} + +// Namespace: System.Runtime.Remoting.Channels +[Serializable] +public class TransportHeaders : ITransportHeaders // TypeDefIndex: 963 +{ + // Fields + private Hashtable hash_table; // 0x08 + + // Properties + public object Item { get; set; } // 0x002D3618 0x002D3654 + + // Methods + public void .ctor(); // 0x002D3444 + public IEnumerator GetEnumerator(); // 0x002D3698 +} + +// Namespace: System.Runtime.Remoting.Contexts +public class Context // TypeDefIndex: 964 +{ + // Fields + private int domain_id; // 0x08 + private int context_id; // 0x0C + private UIntPtr static_data; // 0x10 + private static IMessageSink default_server_context_sink; // 0x00 + private IMessageSink server_context_sink_chain; // 0x14 + private IMessageSink client_context_sink_chain; // 0x18 + private object[] datastore; // 0x1C + private ArrayList context_properties; // 0x20 + private bool frozen; // 0x24 + private static int global_count; // 0x04 + private static Hashtable namedSlots; // 0x08 + private static DynamicPropertyCollection global_dynamic_properties; // 0x0C + private DynamicPropertyCollection context_dynamic_properties; // 0x28 + private ContextCallbackObject callback_object; // 0x2C + + // Properties + public static Context DefaultContext { get; } // 0x002FD05C + public virtual int ContextID { get; } // 0x002FD064 + public virtual IContextProperty[] ContextProperties { get; } // 0x002FD06C + internal bool IsDefaultContext { get; } // 0x002FD190 + internal bool NeedsContextSink { get; } // 0x002FD1A4 + internal static bool HasGlobalDynamicSinks { get; } // 0x002FE648 + internal bool HasDynamicSinks { get; } // 0x002FE7F4 + internal bool HasExitSinks { get; } // 0x002FE848 + + // Methods + public void .ctor(); // 0x002FCEF4 + private static void .cctor(); // 0x002FCFD4 + protected override void Finalize(); // 0x002FD054 + public static bool RegisterDynamicProperty(IDynamicProperty prop, ContextBoundObject obj, Context ctx); // 0x002FD358 + public static bool UnregisterDynamicProperty(string name, ContextBoundObject obj, Context ctx); // 0x002FD9D8 + private static DynamicPropertyCollection GetDynamicPropertyCollection(ContextBoundObject obj, Context ctx); // 0x002FD404 + internal static void NotifyGlobalDynamicSinks(bool start, IMessage req_msg, bool client_site, bool async); // 0x002FDDB0 + internal void NotifyDynamicSinks(bool start, IMessage req_msg, bool client_site, bool async); // 0x002FE764 + public virtual IContextProperty GetProperty(string name); // 0x002FED00 + public virtual void SetProperty(IContextProperty prop); // 0x002FF118 + public virtual void Freeze(); // 0x002FF2F4 + public override string ToString(); // 0x002FF660 + internal IMessageSink GetServerContextSinkChain(); // 0x002FF720 + internal IMessageSink GetClientContextSinkChain(); // 0x002FE924 + internal IMessageSink CreateServerObjectSinkChain(MarshalByRefObject obj, bool forceInternalExecute); // 0x002FF9B4 + internal IMessageSink CreateEnvoySink(MarshalByRefObject serverObject); // 0x002FFC00 + internal static Context SwitchToContext(Context newContext); // 0x002FFFDC + internal static Context CreateNewContext(IConstructionCallMessage msg); // 0x002FFFE4 + public void DoCallBack(CrossContextDelegate deleg); // 0x003009BC + public static LocalDataStoreSlot AllocateDataSlot(); // 0x00300B0C + public static LocalDataStoreSlot AllocateNamedDataSlot(string name); // 0x00300B7C + public static void FreeNamedDataSlot(string name); // 0x00300D14 + public static object GetData(LocalDataStoreSlot slot); // 0x00300E94 + public static LocalDataStoreSlot GetNamedDataSlot(string name); // 0x00301028 + public static void SetData(LocalDataStoreSlot slot, object data); // 0x00301218 +} + +// Namespace: System.Runtime.Remoting.Contexts +internal class DynamicPropertyCollection // TypeDefIndex: 965 +{ + // Fields + private ArrayList _properties; // 0x08 + + // Properties + public bool HasProperties { get; } // 0x002FD314 + + // Methods + public void .ctor(); // 0x002FDD34 + public bool RegisterDynamicProperty(IDynamicProperty prop); // 0x002FD6B8 + public bool UnregisterDynamicProperty(string name); // 0x002FDA84 + public void NotifyMessage(bool start, IMessage msg, bool client_site, bool async); // 0x002FDF40 + private int FindProperty(string name); // 0x00302C54 +} + +// Namespace: +private class DynamicPropertyReg // TypeDefIndex: 966 +{ + // Fields + public IDynamicProperty Property; // 0x08 + public IDynamicMessageSink Sink; // 0x0C + + // Methods + public void .ctor(); // 0x00302EA0 +} + +// Namespace: System.Runtime.Remoting.Contexts +internal class ContextCallbackObject : ContextBoundObject // TypeDefIndex: 967 +{ + // Methods + public void .ctor(); // 0x00300B00 + public void DoCallBack(CrossContextDelegate deleg); // 0x00300B08 +} + +// Namespace: System.Runtime.Remoting.Contexts +[Serializable] +public class ContextAttribute : Attribute, IContextAttribute, IContextProperty // TypeDefIndex: 968 +{ + // Fields + protected string AttributeName; // 0x08 + + // Properties + public virtual string Name { get; } // 0x00301484 + + // Methods + public void .ctor(string name); // 0x00301464 + public override bool Equals(object o); // 0x0030148C + public virtual void Freeze(Context newContext); // 0x0030156C + public override int GetHashCode(); // 0x00301570 + public virtual void GetPropertiesForNewContext(IConstructionCallMessage ctorMsg); // 0x00301588 + public virtual bool IsContextOK(Context ctx, IConstructionCallMessage ctorMsg); // 0x00301740 + public virtual bool IsNewContextOK(Context newCtx); // 0x0030191C +} + +// Namespace: System.Runtime.Remoting.Contexts +public class ContextProperty // TypeDefIndex: 969 +{ + // Fields + private string name; // 0x08 + private object prop; // 0x0C + + // Properties + public virtual string Name { get; } // 0x0030194C + public virtual object Property { get; } // 0x00301954 + + // Methods + private void .ctor(string name, object prop); // 0x00301924 +} + +// Namespace: System.Runtime.Remoting.Contexts +internal class CrossContextChannel : IMessageSink // TypeDefIndex: 970 +{ + // Properties + public IMessageSink NextSink { get; } // 0x00302604 + + // Methods + public void .ctor(); // 0x0030195C + public IMessage SyncProcessMessage(IMessage msg); // 0x00301964 + public IMessageCtrl AsyncProcessMessage(IMessage msg, IMessageSink replySink); // 0x00302008 +} + +// Namespace: +private class ContextRestoreSink : IMessageSink // TypeDefIndex: 971 +{ + // Fields + private IMessageSink _next; // 0x08 + private Context _context; // 0x0C + private IMessage _call; // 0x10 + + // Properties + public IMessageSink NextSink { get; } // 0x00302A0C + + // Methods + public void .ctor(IMessageSink next, Context context, IMessage call); // 0x003025D4 + public IMessage SyncProcessMessage(IMessage msg); // 0x0030260C + public IMessageCtrl AsyncProcessMessage(IMessage msg, IMessageSink replySink); // 0x00302984 +} + +// Namespace: System.Runtime.Remoting.Contexts +public interface IContextAttribute // TypeDefIndex: 972 +{ + // Methods + void GetPropertiesForNewContext(IConstructionCallMessage msg); + bool IsContextOK(Context ctx, IConstructionCallMessage msg); +} + +// Namespace: System.Runtime.Remoting.Contexts +public interface IContextProperty // TypeDefIndex: 973 +{ + // Properties + string Name { get; } + + // Methods + void Freeze(Context newContext); + bool IsNewContextOK(Context newCtx); +} + +// Namespace: System.Runtime.Remoting.Contexts +public interface IContextPropertyActivator // TypeDefIndex: 974 +{ + // Methods + void CollectFromClientContext(IConstructionCallMessage msg); + void CollectFromServerContext(IConstructionReturnMessage msg); + bool DeliverClientContextToServerContext(IConstructionCallMessage msg); + bool DeliverServerContextToClientContext(IConstructionReturnMessage msg); + bool IsOKToActivate(IConstructionCallMessage msg); +} + +// Namespace: System.Runtime.Remoting.Contexts +public interface IContributeClientContextSink // TypeDefIndex: 975 +{ + // Methods + IMessageSink GetClientContextSink(IMessageSink nextSink); +} + +// Namespace: System.Runtime.Remoting.Contexts +public interface IContributeDynamicSink // TypeDefIndex: 976 +{ + // Methods + IDynamicMessageSink GetDynamicSink(); +} + +// Namespace: System.Runtime.Remoting.Contexts +public interface IContributeEnvoySink // TypeDefIndex: 977 +{ + // Methods + IMessageSink GetEnvoySink(MarshalByRefObject obj, IMessageSink nextSink); +} + +// Namespace: System.Runtime.Remoting.Contexts +public interface IContributeObjectSink // TypeDefIndex: 978 +{ + // Methods + IMessageSink GetObjectSink(MarshalByRefObject obj, IMessageSink nextSink); +} + +// Namespace: System.Runtime.Remoting.Contexts +public interface IContributeServerContextSink // TypeDefIndex: 979 +{ + // Methods + IMessageSink GetServerContextSink(IMessageSink nextSink); +} + +// Namespace: System.Runtime.Remoting.Contexts +public interface IDynamicMessageSink // TypeDefIndex: 980 +{ + // Methods + void ProcessMessageFinish(IMessage replyMsg, bool bCliSide, bool bAsync); + void ProcessMessageStart(IMessage reqMsg, bool bCliSide, bool bAsync); +} + +// Namespace: System.Runtime.Remoting.Contexts +public interface IDynamicProperty // TypeDefIndex: 981 +{ + // Properties + string Name { get; } + +} + +// Namespace: System.Runtime.Remoting.Contexts +[Serializable] +public class SynchronizationAttribute : ContextAttribute, IContributeClientContextSink, IContributeServerContextSink // TypeDefIndex: 982 +{ + // Fields + public const int NOT_SUPPORTED = 1; // 0x00 + public const int SUPPORTED = 2; // 0x00 + public const int REQUIRED = 4; // 0x00 + public const int REQUIRES_NEW = 8; // 0x00 + private bool _bReEntrant; // 0x0C + private int _flavor; // 0x10 + [NonSerialized] private bool _locked; // 0x14 + [NonSerialized] private int _lockCount; // 0x18 + [NonSerialized] private Mutex _mutex; // 0x1C + [NonSerialized] private Thread _ownerThread; // 0x20 + + // Properties + public virtual bool IsReEntrant { get; } // 0x00302FD8 + public virtual bool Locked { get; set; } // 0x00302FE0 0x00302FE8 + + // Methods + public void .ctor(); // 0x00302EA8 + public void .ctor(bool reEntrant); // 0x00302FC4 + public void .ctor(int flag); // 0x00302FD0 + public void .ctor(int flag, bool reEntrant); // 0x00302EB4 + internal void AcquireLock(); // 0x003032E8 + internal void ReleaseLock(); // 0x003031BC + public override void GetPropertiesForNewContext(IConstructionCallMessage ctorMsg); // 0x003033FC + public virtual IMessageSink GetClientContextSink(IMessageSink nextSink); // 0x00303570 + public virtual IMessageSink GetServerContextSink(IMessageSink nextSink); // 0x00303614 + public override bool IsContextOK(Context ctx, IConstructionCallMessage msg); // 0x003036B8 + internal static void ExitContext(); // 0x003037CC + internal static void EnterContext(); // 0x00303948 +} + +// Namespace: System.Runtime.Remoting.Contexts +internal class SynchronizedClientContextSink : IMessageSink // TypeDefIndex: 983 +{ + // Fields + private IMessageSink _next; // 0x08 + private SynchronizationAttribute _att; // 0x0C + + // Properties + public IMessageSink NextSink { get; } // 0x00303AC4 + + // Methods + public void .ctor(IMessageSink next, SynchronizationAttribute att); // 0x003035EC + public IMessageCtrl AsyncProcessMessage(IMessage msg, IMessageSink replySink); // 0x00303ACC + public IMessage SyncProcessMessage(IMessage msg); // 0x00303C6C +} + +// Namespace: System.Runtime.Remoting.Contexts +internal class SynchronizedServerContextSink : IMessageSink // TypeDefIndex: 984 +{ + // Fields + private IMessageSink _next; // 0x08 + private SynchronizationAttribute _att; // 0x0C + + // Properties + public IMessageSink NextSink { get; } // 0x003040BC + + // Methods + public void .ctor(IMessageSink next, SynchronizationAttribute att); // 0x00303690 + public IMessageCtrl AsyncProcessMessage(IMessage msg, IMessageSink replySink); // 0x003040C4 + public IMessage SyncProcessMessage(IMessage msg); // 0x003041FC +} + +// Namespace: System.Runtime.Remoting.Contexts +internal class SynchronizedContextReplySink : IMessageSink // TypeDefIndex: 985 +{ + // Fields + private IMessageSink _next; // 0x08 + private bool _newLock; // 0x0C + private SynchronizationAttribute _att; // 0x10 + + // Properties + public IMessageSink NextSink { get; } // 0x00303E6C + + // Methods + public void .ctor(IMessageSink next, SynchronizationAttribute att, bool newLock); // 0x00303C3C + public IMessageCtrl AsyncProcessMessage(IMessage msg, IMessageSink replySink); // 0x00303E74 + public IMessage SyncProcessMessage(IMessage msg); // 0x00303EFC +} + +// Namespace: System.Runtime.Remoting.Lifetime +public class ClientSponsor : MarshalByRefObject, ISponsor // TypeDefIndex: 986 +{ + // Fields + private TimeSpan renewal_time; // 0x10 + private Hashtable registered_objects; // 0x18 + + // Properties + public TimeSpan RenewalTime { get; set; } // 0x0030525C 0x00305268 + + // Methods + public void .ctor(); // 0x00305120 + public void .ctor(TimeSpan renewalTime); // 0x003051D4 + public void Close(); // 0x00305278 + protected override void Finalize(); // 0x003056EC + public override object InitializeLifetimeService(); // 0x00305750 + public bool Register(MarshalByRefObject obj); // 0x00305758 + public TimeSpan Renewal(ILease lease); // 0x003058D4 + public void Unregister(MarshalByRefObject obj); // 0x003058E0 +} + +// Namespace: System.Runtime.Remoting.Lifetime +public interface ILease // TypeDefIndex: 987 +{ + // Properties + TimeSpan CurrentLeaseTime { get; } + LeaseState CurrentState { get; } + TimeSpan InitialLeaseTime { get; set; } + TimeSpan RenewOnCallTime { get; set; } + TimeSpan SponsorshipTimeout { get; set; } + + // Methods + void Register(ISponsor obj); + void Register(ISponsor obj, TimeSpan renewalTime); + TimeSpan Renew(TimeSpan renewalTime); + void Unregister(ISponsor obj); +} + +// Namespace: System.Runtime.Remoting.Lifetime +public interface ISponsor // TypeDefIndex: 988 +{ + // Methods + TimeSpan Renewal(ILease lease); +} + +// Namespace: System.Runtime.Remoting.Lifetime +internal class Lease : MarshalByRefObject, ILease // TypeDefIndex: 989 +{ + // Fields + private DateTime _leaseExpireTime; // 0x10 + private LeaseState _currentState; // 0x20 + private TimeSpan _initialLeaseTime; // 0x28 + private TimeSpan _renewOnCallTime; // 0x30 + private TimeSpan _sponsorshipTimeout; // 0x38 + private ArrayList _sponsors; // 0x40 + private Queue _renewingSponsors; // 0x44 + private RenewalDelegate _renewalDelegate; // 0x48 + + // Properties + public TimeSpan CurrentLeaseTime { get; } // 0x00305CE8 + public LeaseState CurrentState { get; } // 0x00305DB0 + public TimeSpan InitialLeaseTime { get; set; } // 0x00305DC4 0x00305DD0 + public TimeSpan RenewOnCallTime { get; set; } // 0x00305FDC 0x00305FE8 + public TimeSpan SponsorshipTimeout { get; set; } // 0x00306118 0x00306124 + + // Methods + public void .ctor(); // 0x00305A50 + public void Activate(); // 0x00305DB8 + public void Register(ISponsor obj); // 0x00306254 + public void Register(ISponsor obj, TimeSpan renewalTime); // 0x003062FC + public TimeSpan Renew(TimeSpan renewalTime); // 0x00306494 + public void Unregister(ISponsor obj); // 0x003065B8 + internal void UpdateState(); // 0x003066D8 + private void CheckNextSponsor(); // 0x0030685C + private void ProcessSponsorResponse(object state, bool timedOut); // 0x00306B6C +} + +// Namespace: +private delegate TimeSpan RenewalDelegate(ILease lease); // TypeDefIndex: 990; 0x00306E18 + +// Namespace: System.Runtime.Remoting.Lifetime +internal class LeaseManager // TypeDefIndex: 991 +{ + // Fields + private ArrayList _objects; // 0x08 + private Timer _timer; // 0x0C + + // Methods + public void .ctor(); // 0x003071E0 + public void SetPollTime(TimeSpan timeSpan); // 0x0030725C + public void TrackLifetime(ServerIdentity identity); // 0x00307330 + public void StopTrackingLifetime(ServerIdentity identity); // 0x00307648 + public void StartManager(); // 0x00307440 + public void StopManager(); // 0x0030770C + public void ManageLeases(object state); // 0x00307740 +} + +// Namespace: System.Runtime.Remoting.Lifetime +internal class LeaseSink : IMessageSink // TypeDefIndex: 992 +{ + // Fields + private IMessageSink _nextSink; // 0x08 + + // Properties + public IMessageSink NextSink { get; } // 0x00307EC0 + + // Methods + public void .ctor(IMessageSink nextSink); // 0x002FFBE0 + public IMessage SyncProcessMessage(IMessage msg); // 0x003079AC + public IMessageCtrl AsyncProcessMessage(IMessage msg, IMessageSink replySink); // 0x00307DD0 + private void RenewLease(IMessage msg); // 0x00307A94 +} + +// Namespace: System.Runtime.Remoting.Lifetime +[Serializable] +public enum LeaseState // TypeDefIndex: 993 +{ + Null = 0, + Initial = 1, + Active = 2, + Renewing = 3, + Expired = 4 +} + +// Namespace: System.Runtime.Remoting.Lifetime +public sealed class LifetimeServices // TypeDefIndex: 994 +{ + // Fields + private static TimeSpan _leaseManagerPollTime; // 0x00 + private static TimeSpan _leaseTime; // 0x08 + private static TimeSpan _renewOnCallTime; // 0x10 + private static TimeSpan _sponsorshipTimeout; // 0x18 + private static LeaseManager _leaseManager; // 0x20 + + // Properties + public static TimeSpan LeaseManagerPollTime { get; set; } // 0x00308038 0x002FC94C + public static TimeSpan LeaseTime { get; set; } // 0x003080CC 0x00308160 + public static TimeSpan RenewOnCallTime { get; set; } // 0x003081F4 0x00308288 + public static TimeSpan SponsorshipTimeout { get; set; } // 0x0030831C 0x003083B0 + + // Methods + public void .ctor(); // 0x00307EC8 + private static void .cctor(); // 0x00307ED0 + internal static void TrackLifetime(ServerIdentity identity); // 0x00308444 + internal static void StopTrackingLifetime(ServerIdentity identity); // 0x003084F0 +} + +// Namespace: System.Runtime.Remoting.Messaging +internal enum ArgInfoType : byte // TypeDefIndex: 995 +{ + In = 0, + Out = 1 +} + +// Namespace: System.Runtime.Remoting.Messaging +internal class ArgInfo // TypeDefIndex: 996 +{ + // Fields + private int[] _paramMap; // 0x08 + private int _inoutArgCount; // 0x0C + private MethodBase _method; // 0x10 + + // Methods + public void .ctor(MethodBase method, ArgInfoType type); // 0x0030859C + public int GetInOutArgIndex(int inoutArgNum); // 0x00308848 + public virtual string GetInOutArgName(int index); // 0x00308890 + public int GetInOutArgCount(); // 0x00308960 + public object[] GetInOutArgs(object[] args); // 0x00308968 +} + +// Namespace: System.Runtime.Remoting.Messaging +public class AsyncResult : IAsyncResult, IMessageSink // TypeDefIndex: 997 +{ + // Fields + private object async_state; // 0x08 + private WaitHandle handle; // 0x0C + private object async_delegate; // 0x10 + private IntPtr data; // 0x14 + private object object_data; // 0x18 + private bool sync_completed; // 0x1C + private bool completed; // 0x1D + private bool endinvoke_called; // 0x1E + private object async_callback; // 0x20 + private ExecutionContext current; // 0x24 + private ExecutionContext original; // 0x28 + private int gchandle; // 0x2C + private MonoMethodMessage call_message; // 0x30 + private IMessageCtrl message_ctrl; // 0x34 + private IMessage reply_message; // 0x38 + + // Properties + public virtual object AsyncState { get; } // 0x00308AD4 + public virtual WaitHandle AsyncWaitHandle { get; } // 0x00308ADC + public virtual bool CompletedSynchronously { get; } // 0x00308BD8 + public virtual bool IsCompleted { get; } // 0x00308BE0 + public bool EndInvokeCalled { get; set; } // 0x00308BE8 0x00308BF0 + public virtual object AsyncDelegate { get; } // 0x00308BF8 + public IMessageSink NextSink { get; } // 0x00308C00 + internal MonoMethodMessage CallMessage { get; set; } // 0x00308EDC 0x00308EE4 + + // Methods + internal void .ctor(); // 0x00308ACC + public virtual IMessageCtrl AsyncProcessMessage(IMessage msg, IMessageSink replySink); // 0x00308C08 + public virtual IMessage GetReplyMessage(); // 0x00308C90 + public virtual void SetMessageCtrl(IMessageCtrl mc); // 0x00308C98 + internal void SetCompletedSynchronously(bool completed); // 0x00308CA0 + internal IMessage EndInvoke(); // 0x00308CA8 + public virtual IMessage SyncProcessMessage(IMessage msg); // 0x00308D30 +} + +// Namespace: System.Runtime.Remoting.Messaging +internal class CADArgHolder // TypeDefIndex: 998 +{ + // Fields + public int index; // 0x08 + + // Methods + public void .ctor(int i); // 0x00308EEC +} + +// Namespace: System.Runtime.Remoting.Messaging +internal class CADObjRef // TypeDefIndex: 999 +{ + // Fields + private ObjRef objref; // 0x08 + public int SourceDomain; // 0x0C + + // Properties + public string TypeName { get; } // 0x0030A958 + public string URI { get; } // 0x0030AA58 + + // Methods + public void .ctor(ObjRef o, int sourceDomain); // 0x00309F94 +} + +// Namespace: System.Runtime.Remoting.Messaging +internal class CADMessageBase // TypeDefIndex: 1000 +{ + // Fields + protected object[] _args; // 0x08 + protected byte[] _serializedArgs; // 0x0C + protected int _propertyCount; // 0x10 + protected CADArgHolder _callContext; // 0x14 + + // Methods + public void .ctor(); // 0x00308F0C + internal static int MarshalProperties(IDictionary dict, ArrayList args); // 0x00308F14 + internal static void UnmarshalProperties(IDictionary dict, int count, ArrayList args); // 0x00309938 + private static bool IsPossibleToIgnoreMarshal(object obj); // 0x00309AD8 + protected object MarshalArgument(object arg, ArrayList args); // 0x00309D58 + protected object UnmarshalArgument(object arg, ArrayList args); // 0x00309FBC + internal object[] MarshalArguments(object[] arguments, ArrayList args); // 0x0030AA8C + internal object[] UnmarshalArguments(object[] arguments, ArrayList args); // 0x0030ABD8 + protected void SaveLogicalCallContext(IMethodMessage msg, ArrayList serializeList); // 0x0030AD24 + internal LogicalCallContext GetLogicalCallContext(ArrayList args); // 0x0030B044 +} + +// Namespace: System.Runtime.Remoting.Messaging +internal class CADMethodCallMessage : CADMessageBase // TypeDefIndex: 1001 +{ + // Fields + private string _uri; // 0x18 + internal RuntimeMethodHandle MethodHandle; // 0x1C + internal string FullTypeName; // 0x20 + + // Properties + internal string Uri { get; } // 0x0030B52C + internal int PropertiesCount { get; } // 0x0030B6E4 + + // Methods + internal void .ctor(IMethodCallMessage callMsg); // 0x0030B10C + internal static CADMethodCallMessage Create(IMessage callMsg); // 0x0030B534 + internal ArrayList GetArguments(); // 0x0030B5D0 + internal object[] GetArgs(ArrayList args); // 0x0030B6D8 + private static Type[] GetSignature(MethodBase methodBase, bool load); // 0x0030B6EC + internal MethodBase GetMethod(); // 0x0030B910 +} + +// Namespace: System.Runtime.Remoting.Messaging +internal class CADMethodReturnMessage : CADMessageBase // TypeDefIndex: 1002 +{ + // Fields + private object _returnValue; // 0x18 + private CADArgHolder _exception; // 0x1C + + // Properties + internal int PropertiesCount { get; } // 0x0030C758 + + // Methods + internal void .ctor(IMethodReturnMessage retMsg); // 0x0030C060 + internal static CADMethodReturnMessage Create(IMessage callMsg); // 0x0030C4B8 + internal ArrayList GetArguments(); // 0x0030C554 + internal object[] GetArgs(ArrayList args); // 0x0030C65C + internal object GetReturnValue(ArrayList args); // 0x0030C668 + internal Exception GetException(ArrayList args); // 0x0030C674 +} + +// Namespace: System.Runtime.Remoting.Messaging +[Serializable] +public sealed class CallContext // TypeDefIndex: 1003 +{ + // Fields + private static Header[] Headers; // 0x80000000 + private static Hashtable datastore; // 0x80000004 + + // Properties + public static object HostContext { get; set; } // 0x0030C768 0x0030C7F0 + private static Hashtable Datastore { get; } // 0x0030C8B8 + + // Methods + private void .ctor(); // 0x0030C760 + public static void FreeNamedDataSlot(string name); // 0x0030C878 + public static object GetData(string name); // 0x0030C95C + public static void SetData(string name, object data); // 0x0030C99C + public static object LogicalGetData(string name); // 0x0030C9E4 + public static void LogicalSetData(string name, object data); // 0x0030CA6C + public static Header[] GetHeaders(); // 0x0030CAF4 + public static void SetHeaders(Header[] headers); // 0x0030CB54 + internal static LogicalCallContext CreateLogicalCallContext(bool createEmpty); // 0x0030CBB8 + internal static object SetCurrentCallContext(LogicalCallContext ctx); // 0x0030D164 + internal static void UpdateCurrentCallContext(LogicalCallContext ctx); // 0x0030D2B0 + internal static void RestoreCallContext(object oldContext); // 0x0030D5FC +} + +// Namespace: System.Runtime.Remoting.Messaging +public interface ILogicalThreadAffinative // TypeDefIndex: 1004 +{ +} + +// Namespace: System.Runtime.Remoting.Messaging +internal class ClientContextTerminatorSink : IMessageSink // TypeDefIndex: 1005 +{ + // Fields + private Context _context; // 0x08 + + // Properties + public IMessageSink NextSink { get; } // 0x0030DF18 + + // Methods + public void .ctor(Context ctx); // 0x002FF994 + public IMessage SyncProcessMessage(IMessage msg); // 0x0030D968 + public IMessageCtrl AsyncProcessMessage(IMessage msg, IMessageSink replySink); // 0x0030DBF0 +} + +// Namespace: System.Runtime.Remoting.Messaging +internal class ClientContextReplySink : IMessageSink // TypeDefIndex: 1006 +{ + // Fields + private IMessageSink _replySink; // 0x08 + private Context _context; // 0x0C + + // Properties + public IMessageSink NextSink { get; } // 0x0030D960 + + // Methods + public void .ctor(Context ctx, IMessageSink replySink); // 0x0030D758 + public IMessage SyncProcessMessage(IMessage msg); // 0x0030D780 + public IMessageCtrl AsyncProcessMessage(IMessage msg, IMessageSink replySink); // 0x0030D8D8 +} + +// Namespace: System.Runtime.Remoting.Messaging +[Serializable] +public class ConstructionCall : MethodCall, IConstructionCallMessage, IMessage, IMethodCallMessage, IMethodMessage // TypeDefIndex: 1007 +{ + // Fields + private IActivator _activator; // 0x38 + private object[] _activationAttributes; // 0x3C + private IList _contextProperties; // 0x40 + private Type _activationType; // 0x44 + private string _activationTypeName; // 0x48 + private bool _isContextOk; // 0x4C + [NonSerialized] private RemotingProxy _sourceProxy; // 0x50 + private static Dictionary`2 <>f__switch$map20; // 0x00 + + // Properties + internal bool IsContextOk { get; set; } // 0x0030E81C 0x0030E824 + public Type ActivationType { get; } // 0x0030E82C + public string ActivationTypeName { get; } // 0x0030E8E0 + public IActivator Activator { get; set; } // 0x0030E8E8 0x0030E8F0 + public object[] CallSiteActivationAttributes { get; } // 0x0030E8F8 + public IList ContextProperties { get; } // 0x0030E908 + public override IDictionary Properties { get; } // 0x0030FB24 + internal RemotingProxy SourceProxy { get; set; } // 0x0030FB8C 0x0030FB94 + + // Methods + public void .ctor(IMessage m); // 0x0030DF20 + internal void .ctor(Type type); // 0x0030E48C + public void .ctor(Header[] headers); // 0x0030E4E4 + internal void .ctor(SerializationInfo info, StreamingContext context); // 0x0030E5C0 + internal override void InitDictionary(); // 0x0030E698 + internal void SetActivationAttributes(object[] attributes); // 0x0030E900 + internal override void InitMethodProperty(string key, object value); // 0x0030E988 + public override void GetObjectData(SerializationInfo info, StreamingContext context); // 0x0030F3CC +} + +// Namespace: System.Runtime.Remoting.Messaging +internal class ConstructionCallDictionary : MethodDictionary // TypeDefIndex: 1008 +{ + // Fields + public static string[] InternalKeys; // 0x00 + private static Dictionary`2 <>f__switch$map23; // 0x04 + private static Dictionary`2 <>f__switch$map24; // 0x08 + + // Methods + public void .ctor(IConstructionCallMessage message); // 0x0030E740 + private static void .cctor(); // 0x0030FBBC + protected override object GetMethodProperty(string key); // 0x003100EC + protected override void SetMethodProperty(string key, object value); // 0x003111B0 +} + +// Namespace: System.Runtime.Remoting.Messaging +[Serializable] +public class ConstructionResponse : MethodResponse, IConstructionReturnMessage, IMessage, IMethodMessage, IMethodReturnMessage // TypeDefIndex: 1009 +{ + // Properties + public override IDictionary Properties { get; } // 0x00312344 + + // Methods + public void .ctor(Header[] h, IMethodCallMessage mcm); // 0x00311BE4 + internal void .ctor(object resultObject, LogicalCallContext callCtx, IMethodCallMessage msg); // 0x00312004 + internal void .ctor(Exception e, IMethodCallMessage msg); // 0x00312130 + internal void .ctor(SerializationInfo info, StreamingContext context); // 0x0031228C +} + +// Namespace: System.Runtime.Remoting.Messaging +[Serializable] +internal class EnvoyTerminatorSink : IMessageSink // TypeDefIndex: 1010 +{ + // Fields + public static EnvoyTerminatorSink Instance; // 0x00 + + // Properties + public IMessageSink NextSink { get; } // 0x003126E0 + + // Methods + public void .ctor(); // 0x00312404 + private static void .cctor(); // 0x0031240C + public IMessage SyncProcessMessage(IMessage msg); // 0x00312480 + public IMessageCtrl AsyncProcessMessage(IMessage msg, IMessageSink replySink); // 0x003125AC +} + +// Namespace: System.Runtime.Remoting.Messaging +[Serializable] +internal class ErrorMessage : IMessage, IMethodCallMessage, IMethodMessage // TypeDefIndex: 1011 +{ + // Fields + private string _uri; // 0x08 + + // Properties + public int ArgCount { get; } // 0x00312754 + public object[] Args { get; } // 0x0031275C + public bool HasVarArgs { get; } // 0x00312764 + public MethodBase MethodBase { get; } // 0x0031276C + public string MethodName { get; } // 0x00312774 + public object MethodSignature { get; } // 0x003127D0 + public virtual IDictionary Properties { get; } // 0x003127D8 + public string TypeName { get; } // 0x003127E0 + public string Uri { get; set; } // 0x0031283C 0x00312844 + public int InArgCount { get; } // 0x003128B0 + public object[] InArgs { get; } // 0x003128C8 + public LogicalCallContext LogicalCallContext { get; } // 0x003128D0 + + // Methods + public void .ctor(); // 0x003126E8 + public object GetArg(int arg_num); // 0x0031284C + public string GetArgName(int arg_num); // 0x00312854 + public string GetInArgName(int index); // 0x003128B8 + public object GetInArg(int argNum); // 0x003128C0 +} + +// Namespace: System.Runtime.Remoting.Messaging +[Serializable] +public class Header // TypeDefIndex: 1012 +{ + // Fields + public string HeaderNamespace; // 0x08 + public bool MustUnderstand; // 0x0C + public string Name; // 0x10 + public object Value; // 0x14 + + // Methods + public void .ctor(string _Name, object _Value); // 0x003128D8 + public void .ctor(string _Name, object _Value, bool _MustUnderstand); // 0x00312910 + public void .ctor(string _Name, object _Value, bool _MustUnderstand, string _HeaderNamespace); // 0x00312948 +} + +// Namespace: System.Runtime.Remoting.Messaging +internal interface IInternalMessage // TypeDefIndex: 1013 +{ + // Properties + Identity TargetIdentity { get; set; } + string Uri { get; set; } + +} + +// Namespace: System.Runtime.Remoting.Messaging +public interface IMessage // TypeDefIndex: 1014 +{ + // Properties + IDictionary Properties { get; } + +} + +// Namespace: System.Runtime.Remoting.Messaging +public interface IMessageCtrl // TypeDefIndex: 1015 +{ + // Methods + void Cancel(int msToCancel); +} + +// Namespace: System.Runtime.Remoting.Messaging +public interface IMessageSink // TypeDefIndex: 1016 +{ + // Properties + IMessageSink NextSink { get; } + + // Methods + IMessage SyncProcessMessage(IMessage msg); + IMessageCtrl AsyncProcessMessage(IMessage msg, IMessageSink replySink); +} + +// Namespace: System.Runtime.Remoting.Messaging +public interface IMethodCallMessage : IMessage, IMethodMessage // TypeDefIndex: 1017 +{ + // Properties + int InArgCount { get; } + object[] InArgs { get; } + + // Methods + object GetInArg(int argNum); + string GetInArgName(int index); +} + +// Namespace: System.Runtime.Remoting.Messaging +public interface IMethodMessage : IMessage // TypeDefIndex: 1018 +{ + // Properties + int ArgCount { get; } + object[] Args { get; } + bool HasVarArgs { get; } + LogicalCallContext LogicalCallContext { get; } + MethodBase MethodBase { get; } + string MethodName { get; } + object MethodSignature { get; } + string TypeName { get; } + string Uri { get; } + + // Methods + object GetArg(int argNum); + string GetArgName(int index); +} + +// Namespace: System.Runtime.Remoting.Messaging +public interface IMethodReturnMessage : IMessage, IMethodMessage // TypeDefIndex: 1019 +{ + // Properties + Exception Exception { get; } + int OutArgCount { get; } + object[] OutArgs { get; } + object ReturnValue { get; } + + // Methods + object GetOutArg(int argNum); + string GetOutArgName(int index); +} + +// Namespace: System.Runtime.Remoting.Messaging +public interface IRemotingFormatter : IFormatter // TypeDefIndex: 1020 +{ + // Methods + object Deserialize(Stream serializationStream, HeaderHandler handler); + void Serialize(Stream serializationStream, object graph, Header[] headers); +} + +// Namespace: System.Runtime.Remoting.Messaging +internal interface ISerializationRootObject // TypeDefIndex: 1021 +{ + // Methods + void RootSetObjectData(SerializationInfo info, StreamingContext context); +} + +// Namespace: System.Runtime.Remoting.Messaging +public class InternalMessageWrapper // TypeDefIndex: 1022 +{ + // Fields + protected IMessage WrappedMessage; // 0x08 + + // Methods + public void .ctor(IMessage msg); // 0x00312D5C +} + +// Namespace: System.Runtime.Remoting.Messaging +[Serializable] +public sealed class LogicalCallContext : ICloneable, ISerializable // TypeDefIndex: 1023 +{ + // Fields + private Hashtable _data; // 0x08 + private CallContextRemotingData _remotingData; // 0x0C + + // Properties + public bool HasInfo { get; } // 0x0030B008 + internal Hashtable Datastore { get; } // 0x00313728 + + // Methods + internal void .ctor(); // 0x0030D034 + internal void .ctor(SerializationInfo info, StreamingContext context); // 0x00312D7C + public void FreeNamedDataSlot(string name); // 0x00312F40 + public object GetData(string name); // 0x00312F5C + public void GetObjectData(SerializationInfo info, StreamingContext context); // 0x00312F7C + public void SetData(string name, object data); // 0x0030D0B0 + public object Clone(); // 0x00313308 +} + +// Namespace: System.Runtime.Remoting.Messaging +[Serializable] +internal class CallContextRemotingData : ICloneable // TypeDefIndex: 1024 +{ + // Fields + private string _logicalCallID; // 0x08 + + // Properties + public string LogicalCallID { get; set; } // 0x0030D6C0 0x0030D6C8 + + // Methods + public void .ctor(); // 0x0030D6B8 + public object Clone(); // 0x0030D6D0 +} + +// Namespace: System.Runtime.Remoting.Messaging +[Serializable] +public class MethodCall : ISerializable, IInternalMessage, IMessage, IMethodCallMessage, IMethodMessage, ISerializationRootObject // TypeDefIndex: 1025 +{ + // Fields + private string _uri; // 0x08 + private string _typeName; // 0x0C + private string _methodName; // 0x10 + private object[] _args; // 0x14 + private Type[] _methodSignature; // 0x18 + private MethodBase _methodBase; // 0x1C + private LogicalCallContext _callContext; // 0x20 + private ArgInfo _inArgInfo; // 0x24 + private Identity _targetIdentity; // 0x28 + private Type[] _genericArguments; // 0x2C + protected IDictionary ExternalProperties; // 0x30 + protected IDictionary InternalProperties; // 0x34 + private static Dictionary`2 <>f__switch$map1F; // 0x00 + + // Properties + private string System.Runtime.Remoting.Messaging.IInternalMessage.Uri { get; set; } // 0x00314D74 0x00314D7C + private Identity System.Runtime.Remoting.Messaging.IInternalMessage.TargetIdentity { get; set; } // 0x00314D84 0x00314D8C + public int ArgCount { get; } // 0x00314D94 + public object[] Args { get; } // 0x00314DB8 + public bool HasVarArgs { get; } // 0x00314DC0 + public int InArgCount { get; } // 0x00314E3C + public object[] InArgs { get; } // 0x00314ED8 + public LogicalCallContext LogicalCallContext { get; } // 0x00314F90 + public MethodBase MethodBase { get; } // 0x00314E14 + public string MethodName { get; } // 0x0031500C + public object MethodSignature { get; } // 0x00315054 + public virtual IDictionary Properties { get; } // 0x0030FB58 + public string TypeName { get; } // 0x0030E41C + public string Uri { get; set; } // 0x00315330 0x00315338 + private Type[] GenericArguments { get; } // 0x00315890 + + // Methods + public void .ctor(Header[] h1); // 0x0030E4E8 + internal void .ctor(SerializationInfo info, StreamingContext context); // 0x0030E5D8 + internal void .ctor(CADMethodCallMessage msg); // 0x00314758 + public void .ctor(IMessage msg); // 0x0030DF48 + internal void .ctor(string uri, string typeName, string methodName, object[] args); // 0x00314D20 + internal void .ctor(); // 0x0030E4DC + internal void CopyFrom(IMethodMessage call); // 0x003148A4 + internal virtual void InitMethodProperty(string key, object value); // 0x0030EDD8 + public virtual void GetObjectData(SerializationInfo info, StreamingContext context); // 0x0030F5F8 + internal virtual void InitDictionary(); // 0x003151E0 + public object GetArg(int argNum); // 0x00315340 + public string GetArgName(int index); // 0x00315388 + public object GetInArg(int argNum); // 0x0031541C + public string GetInArgName(int index); // 0x00315510 + public virtual object HeaderHandler(Header[] h); // 0x003155C4 + public virtual void Init(); // 0x0031564C + public void ResolveMethod(); // 0x00313B60 + private Type CastTo(string clientType, Type serverType); // 0x00315650 + private static string GetTypeNameFromAssemblyQualifiedName(string aqname); // 0x003158EC + public void RootSetObjectData(SerializationInfo info, StreamingContext ctx); // 0x003159EC +} + +// Namespace: System.Runtime.Remoting.Messaging +internal class MethodCallDictionary : MethodDictionary // TypeDefIndex: 1026 +{ + // Fields + public static string[] InternalKeys; // 0x00 + + // Methods + public void .ctor(IMethodMessage message); // 0x00315288 + private static void .cctor(); // 0x00315A74 +} + +// Namespace: System.Runtime.Remoting.Messaging +public class MethodCallMessageWrapper : InternalMessageWrapper, IMessage, IMethodCallMessage, IMethodMessage // TypeDefIndex: 1027 +{ + // Fields + private object[] _args; // 0x0C + private ArgInfo _inArgInfo; // 0x10 + private DictionaryWrapper _properties; // 0x14 + + // Properties + public virtual int ArgCount { get; } // 0x00315FB4 + public virtual object[] Args { get; set; } // 0x003160F8 0x00316100 + public virtual bool HasVarArgs { get; } // 0x00316108 + public virtual int InArgCount { get; } // 0x0031624C + public virtual object[] InArgs { get; } // 0x00316270 + public virtual LogicalCallContext LogicalCallContext { get; } // 0x003162A0 + public virtual MethodBase MethodBase { get; } // 0x003163E4 + public virtual string MethodName { get; } // 0x00316528 + public virtual object MethodSignature { get; } // 0x0031666C + public virtual IDictionary Properties { get; } // 0x003167B0 + public virtual string TypeName { get; } // 0x0031699C + public virtual string Uri { get; set; } // 0x00316AE0 0x00316C24 + + // Methods + public void .ctor(IMethodCallMessage msg); // 0x00315D88 + public virtual object GetArg(int argNum); // 0x00316DD0 + public virtual string GetArgName(int index); // 0x00316E18 + public virtual object GetInArg(int argNum); // 0x00316F64 + public virtual string GetInArgName(int index); // 0x00316FD0 +} + +// Namespace: +private class DictionaryWrapper : MethodCallDictionary // TypeDefIndex: 1028 +{ + // Fields + private IDictionary _wrappedDictionary; // 0x18 + private static string[] _keys; // 0x00 + + // Methods + public void .ctor(IMethodMessage message, IDictionary wrappedDictionary); // 0x003168C4 + private static void .cctor(); // 0x0031700C + protected override IDictionary AllocInternalProperties(); // 0x00317104 + protected override void SetMethodProperty(string key, object value); // 0x0031710C + protected override object GetMethodProperty(string key); // 0x003172B0 +} + +// Namespace: System.Runtime.Remoting.Messaging +[Serializable] +internal class MethodDictionary : IEnumerable, ICollection, IDictionary // TypeDefIndex: 1029 +{ + // Fields + private IDictionary _internalProperties; // 0x08 + protected IMethodMessage _message; // 0x0C + private string[] _methodKeys; // 0x10 + private bool _ownProperties; // 0x14 + private static Dictionary`2 <>f__switch$map21; // 0x00 + private static Dictionary`2 <>f__switch$map22; // 0x04 + + // Properties + internal bool HasInternalProperties { get; } // 0x00309770 + internal IDictionary InternalProperties { get; } // 0x00309898 + public string[] MethodKeys { get; set; } // 0x003175C8 0x003175D0 + public bool IsFixedSize { get; } // 0x00317748 + public bool IsReadOnly { get; } // 0x00317750 + public object Item { get; set; } // 0x00317758 0x00317930 + public ICollection Keys { get; } // 0x00317B48 + public ICollection Values { get; } // 0x00317FF4 + public int Count { get; } // 0x00318934 + public bool IsSynchronized { get; } // 0x00318A40 + public object SyncRoot { get; } // 0x00318A48 + + // Methods + public void .ctor(IMethodMessage message); // 0x0030FB9C + public void .ctor(string[] keys); // 0x003173F8 + private IEnumerator System.Collections.IEnumerable.GetEnumerator(); // 0x00317418 + protected virtual IDictionary AllocInternalProperties(); // 0x003175D8 + public IDictionary GetInternalProperties(); // 0x0030E7E8 + private bool IsOverridenKey(string key); // 0x00317650 + protected virtual object GetMethodProperty(string key); // 0x00310918 + protected virtual void SetMethodProperty(string key, object value); // 0x00311698 + public void Add(object key, object value); // 0x00317934 + public void Clear(); // 0x00318490 + public bool Contains(object key); // 0x00318560 + public void Remove(object key); // 0x00318724 + public void CopyTo(Array array, int index); // 0x00318A4C + public IDictionaryEnumerator GetEnumerator(); // 0x00318B3C +} + +// Namespace: +private class DictionaryEnumerator : IEnumerator, IDictionaryEnumerator // TypeDefIndex: 1030 +{ + // Fields + private MethodDictionary _methodDictionary; // 0x08 + private IDictionaryEnumerator _hashtableEnum; // 0x0C + private int _posMethod; // 0x10 + + // Properties + public object Current { get; } // 0x00318BAC + public DictionaryEntry Entry { get; } // 0x00318BD0 + public object Key { get; } // 0x00319120 + public object Value { get; } // 0x00319144 + + // Methods + public void .ctor(MethodDictionary methodDictionary); // 0x00317488 + public bool MoveNext(); // 0x00318DE8 + public void Reset(); // 0x00319040 +} + +// Namespace: System.Runtime.Remoting.Messaging +[Serializable] +public class MethodResponse : ISerializable, IInternalMessage, IMessage, IMethodMessage, IMethodReturnMessage, ISerializationRootObject // TypeDefIndex: 1031 +{ + // Fields + private string _methodName; // 0x08 + private string _uri; // 0x0C + private string _typeName; // 0x10 + private MethodBase _methodBase; // 0x14 + private object _returnValue; // 0x18 + private Exception _exception; // 0x1C + private Type[] _methodSignature; // 0x20 + private ArgInfo _inArgInfo; // 0x24 + private object[] _args; // 0x28 + private object[] _outArgs; // 0x2C + private IMethodCallMessage _callMsg; // 0x30 + private LogicalCallContext _callContext; // 0x34 + private Identity _targetIdentity; // 0x38 + protected IDictionary ExternalProperties; // 0x3C + protected IDictionary InternalProperties; // 0x40 + private static Dictionary`2 <>f__switch$map25; // 0x00 + + // Properties + private string System.Runtime.Remoting.Messaging.IInternalMessage.Uri { get; set; } // 0x00319B0C 0x00319BF8 + private Identity System.Runtime.Remoting.Messaging.IInternalMessage.TargetIdentity { get; set; } // 0x00319C00 0x00319C08 + public int ArgCount { get; } // 0x00319C10 + public object[] Args { get; } // 0x00319C24 + public Exception Exception { get; } // 0x00319C2C + public bool HasVarArgs { get; } // 0x00319C34 + public LogicalCallContext LogicalCallContext { get; } // 0x00319DB0 + public MethodBase MethodBase { get; } // 0x00319C70 + public string MethodName { get; } // 0x00319E2C + public object MethodSignature { get; } // 0x00319FFC + public int OutArgCount { get; } // 0x0031A128 + public object[] OutArgs { get; } // 0x0031A1E4 + public virtual IDictionary Properties { get; } // 0x00312348 + public object ReturnValue { get; } // 0x0031A42C + public string TypeName { get; } // 0x00319F14 + public string Uri { get; set; } // 0x00319B10 0x0031A434 + + // Methods + public void .ctor(Header[] h1, IMethodCallMessage mcm); // 0x00311BE8 + internal void .ctor(Exception e, IMethodCallMessage msg); // 0x00312134 + internal void .ctor(object returnValue, object[] outArgs, LogicalCallContext callCtx, IMethodCallMessage msg); // 0x00312024 + internal void .ctor(IMethodCallMessage msg, CADMethodReturnMessage retmsg); // 0x003197E0 + internal void .ctor(SerializationInfo info, StreamingContext context); // 0x003122A4 + internal void InitMethodProperty(string key, object value); // 0x00319168 + public object GetArg(int argNum); // 0x0031A43C + public string GetArgName(int index); // 0x0031A484 + public virtual void GetObjectData(SerializationInfo info, StreamingContext context); // 0x0031A51C + public object GetOutArg(int argNum); // 0x0031AA74 + public string GetOutArgName(int index); // 0x0031AB88 + public virtual object HeaderHandler(Header[] h); // 0x0031ACC8 + public void RootSetObjectData(SerializationInfo info, StreamingContext ctx); // 0x0031AD50 +} + +// Namespace: System.Runtime.Remoting.Messaging +internal class MethodReturnDictionary : MethodDictionary // TypeDefIndex: 1032 +{ + // Fields + public static string[] InternalReturnKeys; // 0x00 + public static string[] InternalExceptionKeys; // 0x04 + + // Methods + public void .ctor(IMethodReturnMessage message); // 0x0031A2B8 + private static void .cctor(); // 0x0031ADD8 +} + +// Namespace: System.Runtime.Remoting.Messaging +public class MethodReturnMessageWrapper : InternalMessageWrapper, IMessage, IMethodMessage, IMethodReturnMessage // TypeDefIndex: 1033 +{ + // Fields + private object[] _args; // 0x0C + private ArgInfo _outArgInfo; // 0x10 + private DictionaryWrapper _properties; // 0x14 + private Exception _exception; // 0x18 + private object _return; // 0x1C + + // Properties + public virtual int ArgCount { get; } // 0x0031B5F4 + public virtual object[] Args { get; set; } // 0x0031B618 0x0031B620 + public virtual Exception Exception { get; set; } // 0x0031B628 0x0031B630 + public virtual bool HasVarArgs { get; } // 0x0031B638 + public virtual LogicalCallContext LogicalCallContext { get; } // 0x0031B77C + public virtual MethodBase MethodBase { get; } // 0x0031B8C0 + public virtual string MethodName { get; } // 0x0031BA04 + public virtual object MethodSignature { get; } // 0x0031BB48 + public virtual int OutArgCount { get; } // 0x0031BC8C + public virtual object[] OutArgs { get; } // 0x0031BCA0 + public virtual IDictionary Properties { get; } // 0x0031BCB8 + public virtual object ReturnValue { get; set; } // 0x0031BEA4 0x0031BEAC + public virtual string TypeName { get; } // 0x0031BEB4 + public string Uri { get; set; } // 0x0031BFF8 0x0031C13C + + // Methods + public void .ctor(IMethodReturnMessage msg); // 0x0031B208 + public virtual object GetArg(int argNum); // 0x0031C244 + public virtual string GetArgName(int index); // 0x0031C28C + public virtual object GetOutArg(int argNum); // 0x0031C3D8 + public virtual string GetOutArgName(int index); // 0x0031C444 +} + +// Namespace: +private class DictionaryWrapper : MethodReturnDictionary // TypeDefIndex: 1034 +{ + // Fields + private IDictionary _wrappedDictionary; // 0x18 + private static string[] _keys; // 0x00 + + // Methods + public void .ctor(IMethodReturnMessage message, IDictionary wrappedDictionary); // 0x0031BDCC + private static void .cctor(); // 0x0031C480 + protected override IDictionary AllocInternalProperties(); // 0x0031C5E4 + protected override void SetMethodProperty(string key, object value); // 0x0031C5EC + protected override object GetMethodProperty(string key); // 0x0031C87C +} + +// Namespace: System.Runtime.Remoting.Messaging +[Serializable] +internal class MonoMethodMessage : IInternalMessage, IMessage, IMethodCallMessage, IMethodMessage, IMethodReturnMessage // TypeDefIndex: 1035 +{ + // Fields + private MonoMethod method; // 0x08 + private object[] args; // 0x0C + private string[] names; // 0x10 + private byte[] arg_types; // 0x14 + public LogicalCallContext ctx; // 0x18 + public object rval; // 0x1C + public Exception exc; // 0x20 + private AsyncResult asyncResult; // 0x24 + private CallType call_type; // 0x28 + private string uri; // 0x2C + private MethodCallDictionary properties; // 0x30 + private Type[] methodSignature; // 0x34 + private Identity identity; // 0x38 + + // Properties + private Identity System.Runtime.Remoting.Messaging.IInternalMessage.TargetIdentity { get; set; } // 0x0031CD20 0x0031CD28 + public IDictionary Properties { get; } // 0x0031CD30 + public int ArgCount { get; } // 0x0031CDB0 + public object[] Args { get; } // 0x0031CE94 + public bool HasVarArgs { get; } // 0x0031CE9C + public LogicalCallContext LogicalCallContext { get; set; } // 0x0031CEA4 0x0031CEAC + public MethodBase MethodBase { get; } // 0x0031CEB4 + public string MethodName { get; } // 0x0031CEBC + public object MethodSignature { get; } // 0x0031CF6C + public string TypeName { get; } // 0x0031D0F8 + public string Uri { get; set; } // 0x0031D1D0 0x0031D1D8 + public int InArgCount { get; } // 0x0031D304 + public object[] InArgs { get; } // 0x0031D394 + public Exception Exception { get; } // 0x0031D67C + public int OutArgCount { get; } // 0x0031D684 + public object[] OutArgs { get; } // 0x0031D700 + public object ReturnValue { get; } // 0x0031D88C + public bool IsAsync { get; } // 0x0031DA04 + public AsyncResult AsyncResult { get; } // 0x0031DA14 + internal CallType CallType { get; } // 0x0031CDEC + + // Methods + public void .ctor(MethodBase method, object[] out_args); // 0x0031CAA8 + public void .ctor(Type type, string method_name, object[] in_args); // 0x0031CB74 + internal void InitMessage(MonoMethod method, object[] out_args); // 0x0031CB70 + public object GetArg(int arg_num); // 0x0031D1E0 + public string GetArgName(int arg_num); // 0x0031D228 + public object GetInArg(int arg_num); // 0x0031D50C + public string GetInArgName(int arg_num); // 0x0031D5C4 + public object GetOutArg(int arg_num); // 0x0031D894 + public string GetOutArgName(int arg_num); // 0x0031D94C + public bool NeedsOutProcessing(out int outCount); // 0x0031DA1C +} + +// Namespace: System.Runtime.Remoting.Messaging +internal enum CallType // TypeDefIndex: 1036 +{ + Sync = 0, + BeginInvoke = 1, + EndInvoke = 2, + OneWay = 3 +} + +// Namespace: System.Runtime.Remoting.Messaging +public class OneWayAttribute : Attribute // TypeDefIndex: 1037 +{ + // Methods + public void .ctor(); // 0x0031DCDC +} + +// Namespace: System.Runtime.Remoting.Messaging +internal class RemotingSurrogate : ISerializationSurrogate // TypeDefIndex: 1038 +{ + // Methods + public void .ctor(); // 0x0031DCE4 + public virtual void GetObjectData(object obj, SerializationInfo si, StreamingContext sc); // 0x0031DCEC + public virtual object SetObjectData(object obj, SerializationInfo si, StreamingContext sc, ISurrogateSelector selector); // 0x0031DE90 +} + +// Namespace: System.Runtime.Remoting.Messaging +internal class ObjRefSurrogate : ISerializationSurrogate // TypeDefIndex: 1039 +{ + // Methods + public void .ctor(); // 0x0031DAB8 + public virtual void GetObjectData(object obj, SerializationInfo si, StreamingContext sc); // 0x0031DAC0 + public virtual object SetObjectData(object obj, SerializationInfo si, StreamingContext sc, ISurrogateSelector selector); // 0x0031DC40 +} + +// Namespace: System.Runtime.Remoting.Messaging +public class RemotingSurrogateSelector : ISurrogateSelector // TypeDefIndex: 1040 +{ + // Fields + private static Type s_cachedTypeObjRef; // 0x00 + private static ObjRefSurrogate _objRefSurrogate; // 0x04 + private static RemotingSurrogate _objRemotingSurrogate; // 0x08 + private object _rootObj; // 0x08 + private MessageSurrogateFilter _filter; // 0x0C + private ISurrogateSelector _next; // 0x10 + + // Properties + public MessageSurrogateFilter Filter { get; set; } // 0x0031E020 0x0031E028 + + // Methods + public void .ctor(); // 0x0031DF18 + private static void .cctor(); // 0x0031DF20 + public virtual void ChainSelector(ISurrogateSelector selector); // 0x0031E030 + public virtual ISurrogateSelector GetNextSelector(); // 0x0031E11C + public object GetRootObject(); // 0x0031E124 + public virtual ISerializationSurrogate GetSurrogate(Type type, StreamingContext context, out ISurrogateSelector ssout); // 0x0031E12C + public void SetRootObject(object obj); // 0x0031E364 + public virtual void UseSoapFormat(); // 0x0031E400 +} + +// Namespace: System.Runtime.Remoting.Messaging +public class ReturnMessage : IInternalMessage, IMessage, IMethodMessage, IMethodReturnMessage // TypeDefIndex: 1041 +{ + // Fields + private object[] _outArgs; // 0x08 + private object[] _args; // 0x0C + private int _outArgsCount; // 0x10 + private LogicalCallContext _callCtx; // 0x14 + private object _returnValue; // 0x18 + private string _uri; // 0x1C + private Exception _exception; // 0x20 + private MethodBase _methodBase; // 0x24 + private string _methodName; // 0x28 + private Type[] _methodSignature; // 0x2C + private string _typeName; // 0x30 + private MethodReturnDictionary _properties; // 0x34 + private Identity _targetIdentity; // 0x38 + private ArgInfo _inArgInfo; // 0x3C + + // Properties + private string System.Runtime.Remoting.Messaging.IInternalMessage.Uri { get; set; } // 0x0031E62C 0x0031E634 + private Identity System.Runtime.Remoting.Messaging.IInternalMessage.TargetIdentity { get; set; } // 0x0031E63C 0x0031E644 + public int ArgCount { get; } // 0x0031E64C + public object[] Args { get; } // 0x0031E670 + public bool HasVarArgs { get; } // 0x0031E678 + public LogicalCallContext LogicalCallContext { get; } // 0x0031E6A8 + public MethodBase MethodBase { get; } // 0x0031E724 + public string MethodName { get; } // 0x0031E72C + public object MethodSignature { get; } // 0x0031E76C + public virtual IDictionary Properties { get; } // 0x0031E8EC + public string TypeName { get; } // 0x0031E96C + public string Uri { get; set; } // 0x0031E9D4 0x0031E9DC + public Exception Exception { get; } // 0x0031EAC0 + public int OutArgCount { get; } // 0x0031EAC8 + public object[] OutArgs { get; } // 0x0031EB7C + public virtual object ReturnValue { get; } // 0x0031EC48 + + // Methods + public void .ctor(object ret, object[] outArgs, int outArgsCount, LogicalCallContext callCtx, IMethodCallMessage mcm); // 0x0031E488 + public void .ctor(Exception e, IMethodCallMessage mcm); // 0x00301E88 + public object GetArg(int argNum); // 0x0031E9E4 + public string GetArgName(int index); // 0x0031EA2C + public object GetOutArg(int argNum); // 0x0031EC50 + public string GetOutArgName(int index); // 0x0031ED3C +} + +// Namespace: System.Runtime.Remoting.Messaging +internal class ServerContextTerminatorSink : IMessageSink // TypeDefIndex: 1042 +{ + // Properties + public IMessageSink NextSink { get; } // 0x0031F034 + + // Methods + public void .ctor(); // 0x002FF98C + public IMessage SyncProcessMessage(IMessage msg); // 0x0031EDF0 + public IMessageCtrl AsyncProcessMessage(IMessage msg, IMessageSink replySink); // 0x0031EF44 +} + +// Namespace: System.Runtime.Remoting.Messaging +internal class ServerObjectTerminatorSink : IMessageSink // TypeDefIndex: 1043 +{ + // Fields + private IMessageSink _nextSink; // 0x08 + + // Properties + public IMessageSink NextSink { get; } // 0x0028F968 + + // Methods + public void .ctor(IMessageSink nextSink); // 0x0028F130 + public IMessage SyncProcessMessage(IMessage msg); // 0x0028F150 + public IMessageCtrl AsyncProcessMessage(IMessage msg, IMessageSink replySink); // 0x0028F718 +} + +// Namespace: System.Runtime.Remoting.Messaging +internal class ServerObjectReplySink : IMessageSink // TypeDefIndex: 1044 +{ + // Fields + private IMessageSink _replySink; // 0x08 + private ServerIdentity _identity; // 0x0C + + // Properties + public IMessageSink NextSink { get; } // 0x0031F204 + + // Methods + public void .ctor(ServerIdentity identity, IMessageSink replySink); // 0x0031F03C + public IMessage SyncProcessMessage(IMessage msg); // 0x0031F064 + public IMessageCtrl AsyncProcessMessage(IMessage msg, IMessageSink replySink); // 0x0031F17C +} + +// Namespace: System.Runtime.Remoting.Messaging +internal class StackBuilderSink : IMessageSink // TypeDefIndex: 1045 +{ + // Fields + private MarshalByRefObject _target; // 0x08 + private RealProxy _rp; // 0x0C + + // Properties + public IMessageSink NextSink { get; } // 0x00291530 + + // Methods + public void .ctor(MarshalByRefObject obj, bool forceInternalExecute); // 0x0028F970 + public IMessage SyncProcessMessage(IMessage msg); // 0x0028FBC8 + public IMessageCtrl AsyncProcessMessage(IMessage msg, IMessageSink replySink); // 0x0029116C + private void ExecuteAsyncMessage(object ob); // 0x002912D8 + private void CheckParameters(IMessage msg); // 0x0028FCC0 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +public interface ISoapXsd // TypeDefIndex: 1046 +{ + // Methods + string GetXsdType(); +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapAnyUri : ISoapXsd // TypeDefIndex: 1047 +{ + // Fields + private string _value; // 0x08 + + // Properties + public string Value { get; set; } // 0x00292218 0x00292220 + public static string XsdType { get; } // 0x00292228 + + // Methods + public void .ctor(); // 0x002921F0 + public void .ctor(string value); // 0x002921F8 + public string GetXsdType(); // 0x00292284 + public static SoapAnyUri Parse(string value); // 0x002922E0 + public override string ToString(); // 0x00292354 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapBase64Binary : ISoapXsd // TypeDefIndex: 1048 +{ + // Fields + private byte[] _value; // 0x08 + + // Properties + public byte[] Value { get; set; } // 0x00292384 0x0029238C + public static string XsdType { get; } // 0x00292394 + + // Methods + public void .ctor(); // 0x0029235C + public void .ctor(byte[] value); // 0x00292364 + public string GetXsdType(); // 0x002923F0 + public static SoapBase64Binary Parse(string value); // 0x0029244C + public override string ToString(); // 0x002924FC +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapDate : ISoapXsd // TypeDefIndex: 1049 +{ + // Fields + private static readonly string[] _datetimeFormats; // 0x00 + private int _sign; // 0x08 + private DateTime _value; // 0x10 + + // Properties + public int Sign { get; set; } // 0x00292918 0x00292920 + public DateTime Value { get; set; } // 0x00292928 0x00292938 + public static string XsdType { get; } // 0x00292950 + + // Methods + public void .ctor(); // 0x00292584 + public void .ctor(DateTime value); // 0x0029258C + public void .ctor(DateTime value, int sign); // 0x002925C4 + private static void .cctor(); // 0x00292604 + public string GetXsdType(); // 0x002929AC + public static SoapDate Parse(string value); // 0x00292A6C + public override string ToString(); // 0x00292BD4 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +public sealed class SoapDateTime // TypeDefIndex: 1050 +{ + // Fields + private static readonly string[] _datetimeFormats; // 0x00 + + // Properties + public static string XsdType { get; } // 0x002937A4 + + // Methods + public void .ctor(); // 0x00292CF0 + private static void .cctor(); // 0x00292CF8 + public static DateTime Parse(string value); // 0x00293800 + public static string ToString(DateTime value); // 0x002938E8 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapDay : ISoapXsd // TypeDefIndex: 1051 +{ + // Fields + private static readonly string[] _datetimeFormats; // 0x00 + private DateTime _value; // 0x08 + + // Properties + public DateTime Value { get; set; } // 0x00293B38 0x00293B48 + public static string XsdType { get; } // 0x00293B60 + + // Methods + public void .ctor(); // 0x00293994 + public void .ctor(DateTime value); // 0x0029399C + private static void .cctor(); // 0x002939D4 + public string GetXsdType(); // 0x00293BBC + public static SoapDay Parse(string value); // 0x00293C7C + public override string ToString(); // 0x00293D9C +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +public sealed class SoapDuration // TypeDefIndex: 1052 +{ + // Properties + public static string XsdType { get; } // 0x00293E48 + + // Methods + public void .ctor(); // 0x00293E40 + public static TimeSpan Parse(string value); // 0x00293EA4 + public static string ToString(TimeSpan timeSpan); // 0x002944E8 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapEntities : ISoapXsd // TypeDefIndex: 1053 +{ + // Fields + private string _value; // 0x08 + + // Properties + public string Value { get; set; } // 0x002949B0 0x002949B8 + public static string XsdType { get; } // 0x002949C0 + + // Methods + public void .ctor(); // 0x00294984 + public void .ctor(string value); // 0x0029498C + public string GetXsdType(); // 0x00294A1C + public static SoapEntities Parse(string value); // 0x00294A78 + public override string ToString(); // 0x00294AEC +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapEntity : ISoapXsd // TypeDefIndex: 1054 +{ + // Fields + private string _value; // 0x08 + + // Properties + public string Value { get; set; } // 0x00294B1C 0x00294B24 + public static string XsdType { get; } // 0x00294B2C + + // Methods + public void .ctor(); // 0x00294AF4 + public void .ctor(string value); // 0x00294AFC + public string GetXsdType(); // 0x00294B88 + public static SoapEntity Parse(string value); // 0x00294BE4 + public override string ToString(); // 0x00294C58 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +internal class SoapHelper // TypeDefIndex: 1055 +{ + // Methods + public void .ctor(); // 0x00294C60 + public static Exception GetException(ISoapXsd type, string msg); // 0x00294C68 + public static string Normalize(string s); // 0x002949AC +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapHexBinary : ISoapXsd // TypeDefIndex: 1056 +{ + // Fields + private byte[] _value; // 0x08 + private StringBuilder sb; // 0x0C + + // Properties + public byte[] Value { get; set; } // 0x00294ED8 0x00294EE0 + public static string XsdType { get; } // 0x00294EE8 + + // Methods + public void .ctor(); // 0x00294DD8 + public void .ctor(byte[] value); // 0x00294E54 + public string GetXsdType(); // 0x00294F44 + public static SoapHexBinary Parse(string value); // 0x00294FA0 + internal static byte[] FromBinHexString(string value); // 0x0029501C + private static byte FromHex(char hexDigit, string value); // 0x00295460 + private static Exception CreateInvalidValueException(string value); // 0x0029524C + public override string ToString(); // 0x002955C4 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapId : ISoapXsd // TypeDefIndex: 1057 +{ + // Fields + private string _value; // 0x08 + + // Properties + public string Value { get; set; } // 0x0029571C 0x00295724 + public static string XsdType { get; } // 0x0029572C + + // Methods + public void .ctor(); // 0x002956F4 + public void .ctor(string value); // 0x002956FC + public string GetXsdType(); // 0x00295788 + public static SoapId Parse(string value); // 0x002957E4 + public override string ToString(); // 0x00295858 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapIdref : ISoapXsd // TypeDefIndex: 1058 +{ + // Fields + private string _value; // 0x08 + + // Properties + public string Value { get; set; } // 0x00295888 0x00295890 + public static string XsdType { get; } // 0x00295898 + + // Methods + public void .ctor(); // 0x00295860 + public void .ctor(string value); // 0x00295868 + public string GetXsdType(); // 0x002958F4 + public static SoapIdref Parse(string value); // 0x00295950 + public override string ToString(); // 0x002959C4 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapIdrefs : ISoapXsd // TypeDefIndex: 1059 +{ + // Fields + private string _value; // 0x08 + + // Properties + public string Value { get; set; } // 0x002959F4 0x002959FC + public static string XsdType { get; } // 0x00295A04 + + // Methods + public void .ctor(); // 0x002959CC + public void .ctor(string value); // 0x002959D4 + public string GetXsdType(); // 0x00295A60 + public static SoapIdrefs Parse(string value); // 0x00295ABC + public override string ToString(); // 0x00295B30 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapInteger : ISoapXsd // TypeDefIndex: 1060 +{ + // Fields + private Decimal _value; // 0x08 + + // Properties + public Decimal Value { get; set; } // 0x00295B78 0x00295B88 + public static string XsdType { get; } // 0x00295B98 + + // Methods + public void .ctor(); // 0x00295B38 + public void .ctor(Decimal value); // 0x00295B40 + public string GetXsdType(); // 0x00295BF4 + public static SoapInteger Parse(string value); // 0x00295C50 + public override string ToString(); // 0x00295D20 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapLanguage : ISoapXsd // TypeDefIndex: 1061 +{ + // Fields + private string _value; // 0x08 + + // Properties + public string Value { get; set; } // 0x00295D54 0x00295D5C + public static string XsdType { get; } // 0x00295D64 + + // Methods + public void .ctor(); // 0x00295D2C + public void .ctor(string value); // 0x00295D34 + public string GetXsdType(); // 0x00295DC0 + public static SoapLanguage Parse(string value); // 0x00295E1C + public override string ToString(); // 0x00295E90 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapMonth : ISoapXsd // TypeDefIndex: 1062 +{ + // Fields + private static readonly string[] _datetimeFormats; // 0x00 + private DateTime _value; // 0x08 + + // Properties + public DateTime Value { get; set; } // 0x0029603C 0x0029604C + public static string XsdType { get; } // 0x00296064 + + // Methods + public void .ctor(); // 0x00295E98 + public void .ctor(DateTime value); // 0x00295EA0 + private static void .cctor(); // 0x00295ED8 + public string GetXsdType(); // 0x002960C0 + public static SoapMonth Parse(string value); // 0x00296180 + public override string ToString(); // 0x002962A0 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapMonthDay : ISoapXsd // TypeDefIndex: 1063 +{ + // Fields + private static readonly string[] _datetimeFormats; // 0x00 + private DateTime _value; // 0x08 + + // Properties + public DateTime Value { get; set; } // 0x002964E8 0x002964F8 + public static string XsdType { get; } // 0x00296510 + + // Methods + public void .ctor(); // 0x00296344 + public void .ctor(DateTime value); // 0x0029634C + private static void .cctor(); // 0x00296384 + public string GetXsdType(); // 0x0029656C + public static SoapMonthDay Parse(string value); // 0x0029662C + public override string ToString(); // 0x0029674C +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapName : ISoapXsd // TypeDefIndex: 1064 +{ + // Fields + private string _value; // 0x08 + + // Properties + public string Value { get; set; } // 0x00296818 0x00296820 + public static string XsdType { get; } // 0x00296828 + + // Methods + public void .ctor(); // 0x002967F0 + public void .ctor(string value); // 0x002967F8 + public string GetXsdType(); // 0x00296884 + public static SoapName Parse(string value); // 0x002968E0 + public override string ToString(); // 0x00296954 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapNcName : ISoapXsd // TypeDefIndex: 1065 +{ + // Fields + private string _value; // 0x08 + + // Properties + public string Value { get; set; } // 0x00296984 0x0029698C + public static string XsdType { get; } // 0x00296994 + + // Methods + public void .ctor(); // 0x0029695C + public void .ctor(string value); // 0x00296964 + public string GetXsdType(); // 0x002969F0 + public static SoapNcName Parse(string value); // 0x00296A4C + public override string ToString(); // 0x00296AC0 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapNegativeInteger : ISoapXsd // TypeDefIndex: 1066 +{ + // Fields + private Decimal _value; // 0x08 + + // Properties + public Decimal Value { get; set; } // 0x00296C5C 0x00296C6C + public static string XsdType { get; } // 0x00296C7C + + // Methods + public void .ctor(); // 0x00296AC8 + public void .ctor(Decimal value); // 0x00296AD0 + public string GetXsdType(); // 0x00296CD8 + public static SoapNegativeInteger Parse(string value); // 0x00296D34 + public override string ToString(); // 0x00296DF8 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapNmtoken : ISoapXsd // TypeDefIndex: 1067 +{ + // Fields + private string _value; // 0x08 + + // Properties + public string Value { get; set; } // 0x00296E2C 0x00296E34 + public static string XsdType { get; } // 0x00296E3C + + // Methods + public void .ctor(); // 0x00296E04 + public void .ctor(string value); // 0x00296E0C + public string GetXsdType(); // 0x00296E98 + public static SoapNmtoken Parse(string value); // 0x00296EF4 + public override string ToString(); // 0x00296F68 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapNmtokens : ISoapXsd // TypeDefIndex: 1068 +{ + // Fields + private string _value; // 0x08 + + // Properties + public string Value { get; set; } // 0x00296F98 0x00296FA0 + public static string XsdType { get; } // 0x00296FA8 + + // Methods + public void .ctor(); // 0x00296F70 + public void .ctor(string value); // 0x00296F78 + public string GetXsdType(); // 0x00297004 + public static SoapNmtokens Parse(string value); // 0x00297060 + public override string ToString(); // 0x002970D4 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapNonNegativeInteger : ISoapXsd // TypeDefIndex: 1069 +{ + // Fields + private Decimal _value; // 0x08 + + // Properties + public Decimal Value { get; set; } // 0x00297270 0x00297280 + public static string XsdType { get; } // 0x00297290 + + // Methods + public void .ctor(); // 0x002970DC + public void .ctor(Decimal value); // 0x002970E4 + public string GetXsdType(); // 0x002972EC + public static SoapNonNegativeInteger Parse(string value); // 0x00297348 + public override string ToString(); // 0x0029740C +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapNonPositiveInteger : ISoapXsd // TypeDefIndex: 1070 +{ + // Fields + private Decimal _value; // 0x08 + + // Properties + public Decimal Value { get; set; } // 0x002975AC 0x002975BC + public static string XsdType { get; } // 0x002975CC + + // Methods + public void .ctor(); // 0x00297418 + public void .ctor(Decimal value); // 0x00297420 + public string GetXsdType(); // 0x00297628 + public static SoapNonPositiveInteger Parse(string value); // 0x00297684 + public override string ToString(); // 0x00297748 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapNormalizedString : ISoapXsd // TypeDefIndex: 1071 +{ + // Fields + private string _value; // 0x08 + + // Properties + public string Value { get; set; } // 0x0029777C 0x00297784 + public static string XsdType { get; } // 0x0029778C + + // Methods + public void .ctor(); // 0x00297754 + public void .ctor(string value); // 0x0029775C + public string GetXsdType(); // 0x002977E8 + public static SoapNormalizedString Parse(string value); // 0x00297844 + public override string ToString(); // 0x002978B8 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapNotation : ISoapXsd // TypeDefIndex: 1072 +{ + // Fields + private string _value; // 0x08 + + // Properties + public string Value { get; set; } // 0x002978E8 0x002978F0 + public static string XsdType { get; } // 0x002978F8 + + // Methods + public void .ctor(); // 0x002978C0 + public void .ctor(string value); // 0x002978C8 + public string GetXsdType(); // 0x00297954 + public static SoapNotation Parse(string value); // 0x002979B0 + public override string ToString(); // 0x00297A24 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapPositiveInteger : ISoapXsd // TypeDefIndex: 1073 +{ + // Fields + private Decimal _value; // 0x08 + + // Properties + public Decimal Value { get; set; } // 0x00297BC0 0x00297BD0 + public static string XsdType { get; } // 0x00297BE0 + + // Methods + public void .ctor(); // 0x00297A2C + public void .ctor(Decimal value); // 0x00297A34 + public string GetXsdType(); // 0x00297C3C + public static SoapPositiveInteger Parse(string value); // 0x00297C98 + public override string ToString(); // 0x00297D5C +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapQName : ISoapXsd // TypeDefIndex: 1074 +{ + // Fields + private string _name; // 0x08 + private string _key; // 0x0C + private string _namespace; // 0x10 + + // Properties + public string Key { get; set; } // 0x00297DE8 0x00297DF0 + public string Name { get; set; } // 0x00297DF8 0x00297E00 + public string Namespace { get; set; } // 0x00297E08 0x00297E10 + public static string XsdType { get; } // 0x00297E18 + + // Methods + public void .ctor(); // 0x00297D68 + public void .ctor(string value); // 0x00297D70 + public void .ctor(string key, string name); // 0x00297D90 + public void .ctor(string key, string name, string namespaceValue); // 0x00297DB8 + public string GetXsdType(); // 0x00297E74 + public static SoapQName Parse(string value); // 0x00297ED0 + public override string ToString(); // 0x00297FE4 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapTime : ISoapXsd // TypeDefIndex: 1075 +{ + // Fields + private static readonly string[] _datetimeFormats; // 0x00 + private DateTime _value; // 0x08 + + // Properties + public DateTime Value { get; set; } // 0x00298BDC 0x00298BEC + public static string XsdType { get; } // 0x00298C04 + + // Methods + public void .ctor(); // 0x002980F0 + public void .ctor(DateTime value); // 0x002980F8 + private static void .cctor(); // 0x00298130 + public string GetXsdType(); // 0x00298C60 + public static SoapTime Parse(string value); // 0x00298D20 + public override string ToString(); // 0x00298E40 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapToken : ISoapXsd // TypeDefIndex: 1076 +{ + // Fields + private string _value; // 0x08 + + // Properties + public string Value { get; set; } // 0x00298F0C 0x00298F14 + public static string XsdType { get; } // 0x00298F1C + + // Methods + public void .ctor(); // 0x00298EE4 + public void .ctor(string value); // 0x00298EEC + public string GetXsdType(); // 0x00298F78 + public static SoapToken Parse(string value); // 0x00298FD4 + public override string ToString(); // 0x00299048 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapYear : ISoapXsd // TypeDefIndex: 1077 +{ + // Fields + private static readonly string[] _datetimeFormats; // 0x00 + private int _sign; // 0x08 + private DateTime _value; // 0x10 + + // Properties + public int Sign { get; set; } // 0x002993E4 0x002993EC + public DateTime Value { get; set; } // 0x002993F4 0x00299404 + public static string XsdType { get; } // 0x0029941C + + // Methods + public void .ctor(); // 0x00299050 + public void .ctor(DateTime value); // 0x00299058 + public void .ctor(DateTime value, int sign); // 0x00299090 + private static void .cctor(); // 0x002990D0 + public string GetXsdType(); // 0x00299478 + public static SoapYear Parse(string value); // 0x00299538 + public override string ToString(); // 0x002996A0 +} + +// Namespace: System.Runtime.Remoting.Metadata.W3cXsd2001 +[Serializable] +public sealed class SoapYearMonth : ISoapXsd // TypeDefIndex: 1078 +{ + // Fields + private static readonly string[] _datetimeFormats; // 0x00 + private int _sign; // 0x08 + private DateTime _value; // 0x10 + + // Properties + public int Sign { get; set; } // 0x00299B50 0x00299B58 + public DateTime Value { get; set; } // 0x00299B60 0x00299B70 + public static string XsdType { get; } // 0x00299B88 + + // Methods + public void .ctor(); // 0x002997BC + public void .ctor(DateTime value); // 0x002997C4 + public void .ctor(DateTime value, int sign); // 0x002997FC + private static void .cctor(); // 0x0029983C + public string GetXsdType(); // 0x00299BE4 + public static SoapYearMonth Parse(string value); // 0x00299CA4 + public override string ToString(); // 0x00299E0C +} + +// Namespace: System.Runtime.Remoting.Metadata +public class SoapAttribute : Attribute // TypeDefIndex: 1079 +{ + // Fields + private bool _nested; // 0x08 + private bool _useAttribute; // 0x09 + protected string ProtXmlNamespace; // 0x0C + protected object ReflectInfo; // 0x10 + + // Properties + public virtual bool Embedded { get; set; } // 0x00291548 0x00291550 + public virtual bool UseAttribute { get; set; } // 0x00291558 0x00291560 + public virtual string XmlNamespace { get; set; } // 0x00291568 0x00291570 + + // Methods + public void .ctor(); // 0x00291540 + internal virtual void SetReflectionObject(object reflectionObject); // 0x00291578 +} + +// Namespace: System.Runtime.Remoting.Metadata +public sealed class SoapFieldAttribute : SoapAttribute // TypeDefIndex: 1080 +{ + // Fields + private int _order; // 0x14 + private string _elementName; // 0x18 + private bool _isElement; // 0x1C + + // Properties + public int Order { get; set; } // 0x00291588 0x00291590 + public string XmlElementName { get; set; } // 0x00291598 0x002915A0 + + // Methods + public void .ctor(); // 0x00291580 + public bool IsInteropXmlElement(); // 0x002915B4 + internal override void SetReflectionObject(object reflectionObject); // 0x002915BC +} + +// Namespace: System.Runtime.Remoting.Metadata +public sealed class SoapMethodAttribute : SoapAttribute // TypeDefIndex: 1081 +{ + // Fields + private string _responseElement; // 0x14 + private string _responseNamespace; // 0x18 + private string _returnElement; // 0x1C + private string _soapAction; // 0x20 + private bool _useAttribute; // 0x24 + private string _namespace; // 0x28 + + // Properties + public string ResponseXmlElementName { get; set; } // 0x0029169C 0x002916A4 + public string ResponseXmlNamespace { get; set; } // 0x002916AC 0x002916B4 + public string ReturnXmlElementName { get; set; } // 0x002916BC 0x002916C4 + public string SoapAction { get; set; } // 0x002916CC 0x002916D4 + public override bool UseAttribute { get; set; } // 0x002916DC 0x002916E4 + public override string XmlNamespace { get; set; } // 0x002916EC 0x002916F4 + + // Methods + public void .ctor(); // 0x00291694 + internal override void SetReflectionObject(object reflectionObject); // 0x002916FC +} + +// Namespace: System.Runtime.Remoting.Metadata +[Serializable] +public enum SoapOption // TypeDefIndex: 1082 +{ + None = 0, + AlwaysIncludeTypes = 1, + XsdString = 2, + EmbedAll = 4, + Option1 = 8, + Option2 = 16 +} + +// Namespace: System.Runtime.Remoting.Metadata +public sealed class SoapParameterAttribute : SoapAttribute // TypeDefIndex: 1083 +{ + // Methods + public void .ctor(); // 0x00291B3C +} + +// Namespace: System.Runtime.Remoting.Metadata +public sealed class SoapTypeAttribute : SoapAttribute // TypeDefIndex: 1084 +{ + // Fields + private SoapOption _soapOption; // 0x14 + private bool _useAttribute; // 0x18 + private string _xmlElementName; // 0x1C + private XmlFieldOrderOption _xmlFieldOrder; // 0x20 + private string _xmlNamespace; // 0x24 + private string _xmlTypeName; // 0x28 + private string _xmlTypeNamespace; // 0x2C + private bool _isType; // 0x30 + private bool _isElement; // 0x31 + + // Properties + public SoapOption SoapOptions { get; set; } // 0x00291B4C 0x00291B54 + public override bool UseAttribute { get; set; } // 0x00291B5C 0x00291B64 + public string XmlElementName { get; set; } // 0x00291B6C 0x00291B74 + public XmlFieldOrderOption XmlFieldOrder { get; set; } // 0x00291B88 0x00291B90 + public override string XmlNamespace { get; set; } // 0x00291B98 0x00291BA0 + public string XmlTypeName { get; set; } // 0x00291BB4 0x00291BBC + public string XmlTypeNamespace { get; set; } // 0x00291BD0 0x00291BD8 + internal bool IsInteropXmlElement { get; } // 0x00291BEC + internal bool IsInteropXmlType { get; } // 0x00291BF4 + + // Methods + public void .ctor(); // 0x00291B44 + internal override void SetReflectionObject(object reflectionObject); // 0x00291BFC +} + +// Namespace: System.Runtime.Remoting.Metadata +[Serializable] +public enum XmlFieldOrderOption // TypeDefIndex: 1085 +{ + All = 0, + Sequence = 1, + Choice = 2 +} + +// Namespace: System.Runtime.Remoting.Proxies +public class ProxyAttribute : Attribute, IContextAttribute // TypeDefIndex: 1086 +{ + // Methods + public void .ctor(); // 0x0029CA30 + public virtual MarshalByRefObject CreateInstance(Type serverType); // 0x0029CA38 + public virtual RealProxy CreateProxy(ObjRef objRef, Type serverType, object serverObject, Context serverContext); // 0x0029CBBC + public void GetPropertiesForNewContext(IConstructionCallMessage msg); // 0x0029CD74 + public bool IsContextOK(Context ctx, IConstructionCallMessage msg); // 0x0029CD78 +} + +// Namespace: System.Runtime.Remoting.Proxies +internal class TransparentProxy // TypeDefIndex: 1087 +{ + // Fields + public RealProxy _rp; // 0x08 + private IntPtr _class; // 0x0C + private bool _custom_type_info; // 0x10 + + // Methods + public void .ctor(); // 0x002A0E74 +} + +// Namespace: System.Runtime.Remoting.Proxies +public abstract class RealProxy // TypeDefIndex: 1088 +{ + // Fields + private Type class_to_proxy; // 0x08 + internal Context _targetContext; // 0x0C + private MarshalByRefObject _server; // 0x10 + private int _targetDomainId; // 0x14 + internal string _targetUri; // 0x18 + internal Identity _objectIdentity; // 0x1C + private object _objTP; // 0x20 + private object _stubData; // 0x24 + + // Properties + internal Identity ObjectIdentity { get; set; } // 0x0029D984 0x0029D98C + + // Methods + protected void .ctor(); // 0x0029CD80 + protected void .ctor(Type classToProxy); // 0x0029CD90 + internal void .ctor(Type classToProxy, ClientIdentity identity); // 0x0029CF5C + protected void .ctor(Type classToProxy, IntPtr stub, object stubData); // 0x0029CDF8 + private static Type InternalGetProxyType(object transparentProxy); // 0x0029CFCC + public Type GetProxiedType(); // 0x0029CFD0 + public virtual ObjRef CreateObjRef(Type requestedType); // 0x0029D0A4 + public virtual void GetObjectData(SerializationInfo info, StreamingContext context); // 0x0029D75C + public virtual IntPtr GetCOMIUnknown(bool fIsMarshalled); // 0x0029D994 + public virtual void SetCOMIUnknown(IntPtr i); // 0x0029DA1C + public virtual IntPtr SupportsInterface(Guid iid); // 0x0029DAA4 + public static object GetStubData(RealProxy rp); // 0x0029DB2C + public static void SetStubData(RealProxy rp, object stubData); // 0x0029DB50 + public abstract IMessage Invoke(IMessage msg); + internal static object PrivateInvoke(RealProxy rp, IMessage msg, out Exception exc, out object[] out_args); // 0x0029DB78 + internal virtual object InternalGetTransparentProxy(string className); // 0x0029F340 + public virtual object GetTransparentProxy(); // 0x0029F344 + public IConstructionReturnMessage InitializeServerObject(IConstructionCallMessage ctorMsg); // 0x0029F548 + protected void AttachServer(MarshalByRefObject s); // 0x0029F5D0 + protected MarshalByRefObject DetachServer(); // 0x0029F5D8 + protected MarshalByRefObject GetUnwrappedServer(); // 0x0029F5EC + internal void SetTargetDomain(int domainId); // 0x0029F5F4 + internal object GetAppDomainTarget(); // 0x0029F5FC + private static object[] ProcessResponse(IMethodReturnMessage mrm, MonoMethodMessage call); // 0x0029E8E4 +} + +// Namespace: System.Runtime.Remoting.Proxies +internal class RemotingProxy : RealProxy, IRemotingTypeInfo // TypeDefIndex: 1089 +{ + // Fields + private static MethodInfo _cache_GetTypeMethod; // 0x00 + private static MethodInfo _cache_GetHashCodeMethod; // 0x04 + private IMessageSink _sink; // 0x28 + private bool _hasEnvoySink; // 0x2C + private ConstructionCall _ctorCall; // 0x30 + + // Properties + public string TypeName { get; set; } // 0x002A0684 0x002A0828 + + // Methods + internal void .ctor(Type type, ClientIdentity identity); // 0x0029F9E8 + internal void .ctor(Type type, string activationUrl, object[] activationAttributes); // 0x0029CB7C + private static void .cctor(); // 0x0029FA50 + public override IMessage Invoke(IMessage request); // 0x0029FB88 + internal void AttachIdentity(Identity identity); // 0x002A0318 + internal IMessage ActivateRemoteObject(IMethodMessage request); // 0x0029E7E4 + public bool CanCastTo(Type fromType, object o); // 0x002A08B0 + protected override void Finalize(); // 0x002A0B10 +} + +// Namespace: System.Runtime.Remoting.Services +public sealed class EnterpriseServicesHelper // TypeDefIndex: 1090 +{ + // Methods + public void .ctor(); // 0x002AB7F8 + public static IConstructionReturnMessage CreateConstructionReturnMessage(IConstructionCallMessage ctorMsg, MarshalByRefObject retObj); // 0x002AB800 + public static void SwitchWrappers(RealProxy oldcp, RealProxy newcp); // 0x002AB890 + public static object WrapIUnknownWithComObject(IntPtr punk); // 0x002AB918 +} + +// Namespace: System.Runtime.Remoting.Services +public interface ITrackingHandler // TypeDefIndex: 1091 +{ + // Methods + void DisconnectedObject(object obj); + void MarshaledObject(object obj, ObjRef or); + void UnmarshaledObject(object obj, ObjRef or); +} + +// Namespace: System.Runtime.Remoting.Services +public class TrackingServices // TypeDefIndex: 1092 +{ + // Fields + private static ArrayList _handlers; // 0x00 + + // Properties + public static ITrackingHandler[] RegisteredHandlers { get; } // 0x002ABF94 + + // Methods + public void .ctor(); // 0x002AB9A0 + private static void .cctor(); // 0x002AB9A8 + public static void RegisterTrackingHandler(ITrackingHandler handler); // 0x002ABA28 + public static void UnregisterTrackingHandler(ITrackingHandler handler); // 0x002ABCDC + internal static void NotifyMarshaledObject(object obj, ObjRef or); // 0x002A79D4 + internal static void NotifyUnmarshaledObject(object obj, ObjRef or); // 0x002A6D94 + internal static void NotifyDisconnectedObject(object obj); // 0x002A6518 +} + +// Namespace: System.Runtime.Remoting +public class ActivatedClientTypeEntry : TypeEntry // TypeDefIndex: 1093 +{ + // Fields + private string applicationUrl; // 0x10 + private Type obj_type; // 0x14 + + // Properties + public string ApplicationUrl { get; } // 0x002C4444 + public IContextAttribute[] ContextAttributes { get; set; } // 0x002C444C 0x002C4454 + public Type ObjectType { get; } // 0x002C4458 + + // Methods + public void .ctor(Type type, string appUrl); // 0x002C4254 + public void .ctor(string typeName, string assemblyName, string appUrl); // 0x002C42E4 + public override string ToString(); // 0x002C4460 +} + +// Namespace: System.Runtime.Remoting +public class ActivatedServiceTypeEntry : TypeEntry // TypeDefIndex: 1094 +{ + // Fields + private Type obj_type; // 0x10 + + // Properties + public IContextAttribute[] ContextAttributes { get; set; } // 0x002C46DC 0x002C46E4 + public Type ObjectType { get; } // 0x002C46E8 + + // Methods + public void .ctor(Type type); // 0x002C44F8 + public void .ctor(string typeName, string assemblyName); // 0x002C4580 + public override string ToString(); // 0x002C46F0 +} + +// Namespace: System.Runtime.Remoting +public enum CustomErrorsModes // TypeDefIndex: 1095 +{ + On = 0, + Off = 1, + RemoteOnly = 2 +} + +// Namespace: System.Runtime.Remoting +[Serializable] +internal class EnvoyInfo : IEnvoyInfo // TypeDefIndex: 1096 +{ + // Fields + private IMessageSink envoySinks; // 0x08 + + // Properties + public IMessageSink EnvoySinks { get; set; } // 0x003045E0 0x003045E8 + + // Methods + public void .ctor(IMessageSink sinks); // 0x003045C0 +} + +// Namespace: System.Runtime.Remoting +public interface IChannelInfo // TypeDefIndex: 1097 +{ + // Properties + object[] ChannelData { get; set; } + +} + +// Namespace: System.Runtime.Remoting +public interface IEnvoyInfo // TypeDefIndex: 1098 +{ + // Properties + IMessageSink EnvoySinks { get; set; } + +} + +// Namespace: System.Runtime.Remoting +public interface IObjectHandle // TypeDefIndex: 1099 +{ + // Methods + object Unwrap(); +} + +// Namespace: System.Runtime.Remoting +public interface IRemotingTypeInfo // TypeDefIndex: 1100 +{ + // Properties + string TypeName { get; set; } + + // Methods + bool CanCastTo(Type fromType, object o); +} + +// Namespace: System.Runtime.Remoting +internal abstract class Identity // TypeDefIndex: 1101 +{ + // Fields + protected string _objectUri; // 0x08 + protected IMessageSink _channelSink; // 0x0C + protected IMessageSink _envoySink; // 0x10 + private DynamicPropertyCollection _clientDynamicProperties; // 0x14 + private DynamicPropertyCollection _serverDynamicProperties; // 0x18 + protected ObjRef _objRef; // 0x1C + private bool _disposed; // 0x20 + + // Properties + public bool IsFromThisAppDomain { get; } // 0x00304610 + public IMessageSink ChannelSink { get; set; } // 0x00304624 0x0030462C + public IMessageSink EnvoySink { get; } // 0x00304634 + public string ObjectUri { get; set; } // 0x0030463C 0x00304644 + public bool IsConnected { get; } // 0x0030464C + public bool Disposed { get; set; } // 0x0030465C 0x00304664 + public DynamicPropertyCollection ClientDynamicProperties { get; } // 0x002FDC3C + public DynamicPropertyCollection ServerDynamicProperties { get; } // 0x002FDCB8 + public bool HasClientDynamicSinks { get; } // 0x0030466C + public bool HasServerDynamicSinks { get; } // 0x003046C0 + + // Methods + public void .ctor(string objectUri); // 0x003045F0 + public abstract ObjRef CreateObjRef(Type requestedType); + public void NotifyClientDynamicSinks(bool start, IMessage req_msg, bool client_site, bool async); // 0x00304714 + public void NotifyServerDynamicSinks(bool start, IMessage req_msg, bool client_site, bool async); // 0x003047A4 +} + +// Namespace: System.Runtime.Remoting +internal class ClientIdentity : Identity // TypeDefIndex: 1102 +{ + // Fields + private WeakReference _proxyReference; // 0x24 + + // Properties + public MarshalByRefObject ClientProxy { get; set; } // 0x002D3B98 0x002D3C60 + public string TargetUri { get; } // 0x002D3CE0 + + // Methods + public void .ctor(string objectUri, ObjRef objRef); // 0x002D3A34 + public override ObjRef CreateObjRef(Type requestedType); // 0x002D3CD8 +} + +// Namespace: System.Runtime.Remoting +public class InternalRemotingServices // TypeDefIndex: 1103 +{ + // Fields + private static Hashtable _soapAttributes; // 0x00 + + // Methods + public void .ctor(); // 0x00304834 + private static void .cctor(); // 0x0030483C + public static void DebugOutChnl(string s); // 0x003048BC + public static SoapAttribute GetCachedSoapAttribute(object reflectionObject); // 0x00304944 + public static void RemotingAssert(bool condition, string message); // 0x00304EEC + public static void RemotingTrace(object[] messages); // 0x00304F74 + public static void SetServerIdentity(MethodCall m, object srvID); // 0x00304FFC +} + +// Namespace: System.Runtime.Remoting +[Serializable] +public class ObjRef : ISerializable, IObjectReference // TypeDefIndex: 1104 +{ + // Fields + private IChannelInfo channel_info; // 0x08 + private string uri; // 0x0C + private IRemotingTypeInfo typeInfo; // 0x10 + private IEnvoyInfo envoyInfo; // 0x14 + private int flags; // 0x18 + private Type _serverType; // 0x1C + private static int MarshalledObjectRef; // 0x00 + private static int WellKnowObjectRef; // 0x04 + private static Dictionary`2 <>f__switch$map26; // 0x08 + + // Properties + internal bool IsReferenceToWellKnow { get; } // 0x0029B4E8 + public virtual IChannelInfo ChannelInfo { get; set; } // 0x0029B58C 0x0029B594 + public virtual IEnvoyInfo EnvoyInfo { get; set; } // 0x0029B59C 0x0029B5A4 + public virtual IRemotingTypeInfo TypeInfo { get; set; } // 0x0029B5AC 0x0029B5B4 + public virtual string URI { get; set; } // 0x0029B5BC 0x0029B5C4 + internal Type ServerType { get; } // 0x0029BFBC + + // Methods + public void .ctor(); // 0x00299F28 + internal void .ctor(string typeName, string uri, IChannelInfo cinfo); // 0x00299FB8 + internal void .ctor(ObjRef o, bool unmarshalAsProxy); // 0x0029A5C8 + public void .ctor(MarshalByRefObject o, Type requestedType); // 0x0029A708 + internal void .ctor(Type type, string url, object remoteChannelData); // 0x0029AA10 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x0029AB1C + private static void .cctor(); // 0x0029B468 + internal bool IsPossibleToCAD(); // 0x0029B4E0 + public virtual void GetObjectData(SerializationInfo info, StreamingContext context); // 0x0029B5CC + public virtual object GetRealObject(StreamingContext context); // 0x0029B800 + public bool IsFromThisAppDomain(); // 0x0029B960 + public bool IsFromThisProcess(); // 0x0029BCC4 + internal void UpdateChannelInfo(); // 0x00299F48 +} + +// Namespace: System.Runtime.Remoting +public class ObjectHandle : MarshalByRefObject, IObjectHandle // TypeDefIndex: 1105 +{ + // Fields + private object _wrapped; // 0x0C + + // Methods + public void .ctor(object o); // 0x0029C0FC + public override object InitializeLifetimeService(); // 0x0029C11C + public object Unwrap(); // 0x0029C124 +} + +// Namespace: System.Runtime.Remoting +public static class RemotingConfiguration // TypeDefIndex: 1106 +{ + // Fields + private static string applicationID; // 0x00 + private static string applicationName; // 0x04 + private static string processGuid; // 0x08 + private static bool defaultConfigRead; // 0x0C + private static bool defaultDelayedConfigRead; // 0x0D + private static string _errorMode; // 0x10 + private static Hashtable wellKnownClientEntries; // 0x14 + private static Hashtable activatedClientEntries; // 0x18 + private static Hashtable wellKnownServiceEntries; // 0x1C + private static Hashtable activatedServiceEntries; // 0x20 + private static Hashtable channelTemplates; // 0x24 + private static Hashtable clientProviderTemplates; // 0x28 + private static Hashtable serverProviderTemplates; // 0x2C + + // Properties + public static string ApplicationId { get; } // 0x002A0FF0 + public static string ApplicationName { get; set; } // 0x002A10FC 0x002A1188 + public static CustomErrorsModes CustomErrorsMode { get; set; } // 0x002A1218 0x002A12A0 + public static string ProcessId { get; } // 0x0029BEA4 + + // Methods + private static void .cctor(); // 0x002A0E7C + public static void Configure(string filename, bool ensureSecurity); // 0x002A1328 + public static void Configure(string filename); // 0x002A186C + private static void ReadConfigFile(string filename); // 0x002A14F0 + internal static void LoadDefaultDelayedChannels(); // 0x002A18F8 + public static ActivatedClientTypeEntry[] GetRegisteredActivatedClientTypes(); // 0x002A1CD0 + public static ActivatedServiceTypeEntry[] GetRegisteredActivatedServiceTypes(); // 0x002A1F28 + public static WellKnownClientTypeEntry[] GetRegisteredWellKnownClientTypes(); // 0x002A2180 + public static WellKnownServiceTypeEntry[] GetRegisteredWellKnownServiceTypes(); // 0x002A23D8 + public static bool IsActivationAllowed(Type svrType); // 0x002A2630 + public static ActivatedClientTypeEntry IsRemotelyActivatedClientType(Type svrType); // 0x002A279C + public static ActivatedClientTypeEntry IsRemotelyActivatedClientType(string typeName, string assemblyName); // 0x002A294C + public static WellKnownClientTypeEntry IsWellKnownClientType(Type svrType); // 0x002A2A0C + public static WellKnownClientTypeEntry IsWellKnownClientType(string typeName, string assemblyName); // 0x002A2BBC + public static void RegisterActivatedClientType(ActivatedClientTypeEntry entry); // 0x002A2C7C + public static void RegisterActivatedClientType(Type type, string appUrl); // 0x002A2FE8 + public static void RegisterActivatedServiceType(ActivatedServiceTypeEntry entry); // 0x002A3140 + public static void RegisterActivatedServiceType(Type type); // 0x002A32BC + public static void RegisterWellKnownClientType(Type type, string objectUrl); // 0x002A3360 + public static void RegisterWellKnownClientType(WellKnownClientTypeEntry entry); // 0x002A3544 + public static void RegisterWellKnownServiceType(Type type, string objectUri, WellKnownObjectMode mode); // 0x002A38B0 + public static void RegisterWellKnownServiceType(WellKnownServiceTypeEntry entry); // 0x002A3A00 + internal static void RegisterChannelTemplate(ChannelData channel); // 0x002A3CF8 + internal static void RegisterClientProviderTemplate(ProviderData prov); // 0x002A3DC8 + internal static void RegisterServerProviderTemplate(ProviderData prov); // 0x002A3E98 + internal static void RegisterChannels(ArrayList channels, bool onlyDelayed); // 0x002A3F68 + internal static void RegisterTypes(ArrayList types); // 0x002A5050 + public static bool CustomErrorsEnabled(bool isLocalRequest); // 0x002A5678 + internal static void SetCustomErrorsMode(string mode); // 0x002A57F0 +} + +// Namespace: System.Runtime.Remoting +internal class ConfigHandler : IContentHandler // TypeDefIndex: 1107 +{ + // Fields + private ArrayList typeEntries; // 0x08 + private ArrayList channelInstances; // 0x0C + private ChannelData currentChannel; // 0x10 + private Stack currentProviderData; // 0x14 + private string currentClientUrl; // 0x18 + private string appName; // 0x1C + private string currentXmlPath; // 0x20 + private bool onlyDelayedChannels; // 0x24 + private static Dictionary`2 <>f__switch$map27; // 0x00 + private static Dictionary`2 <>f__switch$map28; // 0x04 + + // Methods + public void .ctor(bool onlyDelayedChannels); // 0x002F7A6C + private void ValidatePath(string element, string[] paths); // 0x002F7B50 + private bool CheckPath(string path); // 0x002F7C9C + public void OnStartParsing(SmallXmlParser parser); // 0x002F7E08 + public void OnProcessingInstruction(string name, string text); // 0x002F7E0C + public void OnIgnorableWhitespace(string s); // 0x002F7E10 + public void OnStartElement(string name, IAttrList attrs); // 0x002F7E14 + public void ParseElement(string name, IAttrList attrs); // 0x002F8070 + public void OnEndElement(string name); // 0x002FC25C + private void ReadCustomProviderData(string name, IAttrList attrs); // 0x002F9ACC + private void ReadLifetine(IAttrList attrs); // 0x002F9F7C + private TimeSpan ParseTime(string s); // 0x002FC308 + private void ReadChannel(IAttrList attrs, bool isTemplate); // 0x002FAAB0 + private ProviderData ReadProvider(string name, IAttrList attrs, bool isTemplate); // 0x002FB0F4 + private void ReadClientActivated(IAttrList attrs); // 0x002FBA5C + private void ReadServiceActivated(IAttrList attrs); // 0x002FBBFC + private void ReadClientWellKnown(IAttrList attrs); // 0x002FB6F8 + private void ReadServiceWellKnown(IAttrList attrs); // 0x002FB7F8 + private void ReadInteropXml(IAttrList attrs, bool isElement); // 0x002FBCD4 + private void ReadPreload(IAttrList attrs); // 0x002FBF40 + private string GetNotNull(IAttrList attrs, string name); // 0x002FCA2C + private string ExtractAssembly(string type); // 0x002FCC00 + public void OnChars(string ch); // 0x002FCD5C + public void OnEndParsing(SmallXmlParser parser); // 0x002FCD60 +} + +// Namespace: System.Runtime.Remoting +internal class ChannelData // TypeDefIndex: 1108 +{ + // Fields + internal string Ref; // 0x08 + internal string Type; // 0x0C + internal string Id; // 0x10 + internal string DelayLoadAsClientChannel; // 0x14 + private ArrayList _serverProviders; // 0x18 + private ArrayList _clientProviders; // 0x1C + private Hashtable _customProperties; // 0x20 + + // Properties + internal ArrayList ServerProviders { get; } // 0x002C80BC + public ArrayList ClientProviders { get; } // 0x002C813C + public Hashtable CustomProperties { get; } // 0x002C81BC + + // Methods + public void .ctor(); // 0x002C8004 + public void CopyFrom(ChannelData other); // 0x002C823C +} + +// Namespace: System.Runtime.Remoting +internal class ProviderData // TypeDefIndex: 1109 +{ + // Fields + internal string Ref; // 0x08 + internal string Type; // 0x0C + internal string Id; // 0x10 + internal Hashtable CustomProperties; // 0x14 + internal IList CustomData; // 0x18 + + // Methods + public void .ctor(); // 0x0029C12C + public void CopyFrom(ProviderData other); // 0x0029C1A8 +} + +// Namespace: System.Runtime.Remoting +internal class FormatterData : ProviderData // TypeDefIndex: 1110 +{ + // Methods + public void .ctor(); // 0x002FCA24 +} + +// Namespace: System.Runtime.Remoting +[Serializable] +public class RemotingException : SystemException // TypeDefIndex: 1111 +{ + // Methods + public void .ctor(); // 0x002A5A68 + public void .ctor(string message); // 0x00291538 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x002A5A70 + public void .ctor(string message, Exception InnerException); // 0x002A18F0 +} + +// Namespace: System.Runtime.Remoting +public sealed class RemotingServices // TypeDefIndex: 1112 +{ + // Fields + private static Hashtable uri_hash; // 0x00 + private static BinaryFormatter _serializationFormatter; // 0x04 + private static BinaryFormatter _deserializationFormatter; // 0x08 + internal static string app_id; // 0x0C + private static int next_id; // 0x10 + private static readonly BindingFlags methodBindings; // 0x14 + private static readonly MethodInfo FieldSetterMethod; // 0x18 + private static readonly MethodInfo FieldGetterMethod; // 0x1C + + // Methods + private void .ctor(); // 0x002A5A90 + private static void .cctor(); // 0x002A5A98 + internal static object InternalExecute(MethodBase method, object obj, object[] parameters, out object[] out_args); // 0x002A5ED0 + internal static MethodBase GetVirtualMethod(Type type, MethodBase method); // 0x002A5ED4 + public static bool IsTransparentProxy(object proxy); // 0x0028FA50 + internal static IMethodReturnMessage InternalExecuteMessage(MarshalByRefObject target, IMethodCallMessage reqMsg); // 0x00290374 + public static IMethodReturnMessage ExecuteMessage(MarshalByRefObject target, IMethodCallMessage reqMsg); // 0x002A5ED8 + public static object Connect(Type classToProxy, string url); // 0x002A6038 + public static object Connect(Type classToProxy, string url, object data); // 0x002A6190 + public static bool Disconnect(MarshalByRefObject obj); // 0x002A624C + public static Type GetServerTypeForUri(string URI); // 0x002A689C + public static string GetObjectUri(MarshalByRefObject obj); // 0x0029A938 + public static object Unmarshal(ObjRef objectRef); // 0x0029B8DC + public static object Unmarshal(ObjRef objectRef, bool fRefine); // 0x002A6A70 + public static ObjRef Marshal(MarshalByRefObject Obj); // 0x002A711C + public static ObjRef Marshal(MarshalByRefObject Obj, string URI); // 0x002A71A4 + public static ObjRef Marshal(MarshalByRefObject Obj, string ObjURI, Type RequestedType); // 0x0029D19C + private static string NewUri(); // 0x002A7230 + public static RealProxy GetRealProxy(object proxy); // 0x0028FA54 + public static MethodBase GetMethodBaseFromMethodMessage(IMethodMessage msg); // 0x002A7EEC + internal static MethodBase GetMethodBaseFromName(Type type, string methodName, Type[] signature); // 0x002A82C4 + private static MethodBase FindInterfaceMethod(Type type, string methodName, Type[] signature); // 0x002A86B0 + public static void GetObjectData(object obj, SerializationInfo info, StreamingContext context); // 0x0029D814 + public static ObjRef GetObjRefForProxy(MarshalByRefObject obj); // 0x002A88A8 + public static object GetLifetimeService(MarshalByRefObject obj); // 0x002A894C + public static IMessageSink GetEnvoyChainForProxy(MarshalByRefObject obj); // 0x002A8960 + public static void LogRemotingStage(int stage); // 0x002A8B30 + public static string GetSessionIdForMethodMessage(IMethodMessage msg); // 0x002A8BB8 + public static bool IsMethodOverloaded(IMethodMessage msg); // 0x002A8C8C + public static bool IsObjectOutOfAppDomain(object tp); // 0x002A8EC0 + public static bool IsObjectOutOfContext(object tp); // 0x002A8FD8 + public static bool IsOneWay(MethodBase method); // 0x002A914C + internal static bool IsAsyncMessage(IMessage msg); // 0x002A9210 + public static void SetObjectUriForMarshal(MarshalByRefObject obj, string uri); // 0x002A9384 + internal static object CreateClientProxy(ActivatedClientTypeEntry entry, object[] activationAttributes); // 0x002A955C + internal static object CreateClientProxy(Type objectType, string url, object[] activationAttributes); // 0x002A978C + internal static object CreateClientProxy(WellKnownClientTypeEntry entry); // 0x002A9B00 + internal static object CreateClientProxyForContextBound(Type type, object[] activationAttributes); // 0x002A9BB4 + internal static Identity GetIdentityForUri(string uri); // 0x0029B9FC + private static string RemoveAppNameFromUri(string uri); // 0x002A9E28 + internal static Identity GetObjectIdentity(MarshalByRefObject obj); // 0x002A6980 + internal static ClientIdentity GetOrCreateClientIdentity(ObjRef objRef, Type proxyType, out object clientProxy); // 0x002A9FD8 + private static IMessageSink GetClientChannelSinkChain(string url, object channelData, out string objectUri); // 0x002A995C + internal static ClientActivatedIdentity CreateContextBoundObjectIdentity(Type objectType); // 0x002AA578 + internal static ClientActivatedIdentity CreateClientActivatedServerIdentity(MarshalByRefObject realObject, Type objectType, string objectUri); // 0x002A7D5C + internal static ServerIdentity CreateWellKnownServerIdentity(Type objectType, string objectUri, WellKnownObjectMode mode); // 0x002A3BC8 + private static void RegisterServerIdentity(ServerIdentity identity); // 0x002A7568 + internal static object GetProxyForRemoteObject(ObjRef objref, Type classToProxy); // 0x0029CC48 + internal static object GetRemoteObject(ObjRef objRef, Type proxyType); // 0x002A60F0 + internal static object GetServerObject(string uri); // 0x002AA85C + internal static byte[] SerializeCallData(object obj); // 0x002AA9C0 + internal static object DeserializeCallData(byte[] array); // 0x002AAB38 + internal static byte[] SerializeExceptionData(Exception ex); // 0x002AACA8 + internal static object GetDomainProxy(AppDomain domain); // 0x002AB088 + private static void RegisterInternalChannels(); // 0x002A5E54 + internal static void DisposeIdentity(Identity ident); // 0x002A0C24 + internal static Identity GetMessageTargetIdentity(IMessage msg); // 0x0028F328 + internal static void SetMessageTargetIdentity(IMessage msg, Identity ident); // 0x002AB37C + internal static bool UpdateOutArgObject(ParameterInfo pi, object local, object remote); // 0x0029F77C + private static string GetNormalizedUri(string uri); // 0x002A9D84 +} + +// Namespace: +[Serializable] +private class CACD // TypeDefIndex: 1113 +{ + // Fields + public object d; // 0x08 + public object c; // 0x0C + + // Methods + public void .ctor(); // 0x002AAB30 +} + +// Namespace: System.Runtime.Remoting +[Serializable] +public class RemotingTimeoutException : RemotingException // TypeDefIndex: 1114 +{ + // Methods + public void .ctor(); // 0x002AB4F8 + public void .ctor(string message); // 0x002AB500 + public void .ctor(string message, Exception InnerException); // 0x002AB508 + internal void .ctor(SerializationInfo info, StreamingContext context); // 0x002AB510 +} + +// Namespace: System.Runtime.Remoting +[Serializable] +public class ServerException : SystemException // TypeDefIndex: 1115 +{ + // Methods + public void .ctor(); // 0x002AB530 + public void .ctor(string message); // 0x002AB538 + public void .ctor(string message, Exception InnerException); // 0x002AB540 + internal void .ctor(SerializationInfo info, StreamingContext context); // 0x002AB548 +} + +// Namespace: System.Runtime.Remoting +internal abstract class ServerIdentity : Identity // TypeDefIndex: 1116 +{ + // Fields + protected Type _objectType; // 0x24 + protected MarshalByRefObject _serverObject; // 0x28 + protected IMessageSink _serverSink; // 0x2C + protected Context _context; // 0x30 + protected Lease _lease; // 0x34 + + // Properties + public Type ObjectType { get; } // 0x002AB590 + public Lease Lease { get; } // 0x002AB7E0 + public Context Context { get; set; } // 0x002AB7E8 0x002AB7F0 + + // Methods + public void .ctor(string objectUri, Context context, Type objectType); // 0x002AB568 + public void StartTrackingLifetime(ILease lease); // 0x002A7818 + public virtual void OnLifetimeExpired(); // 0x002AB598 + public override ObjRef CreateObjRef(Type requestedType); // 0x002AB638 + public void AttachServerObject(MarshalByRefObject serverObject, Context context); // 0x002AA6AC + public abstract IMessage SyncObjectProcessMessage(IMessage msg); + public abstract IMessageCtrl AsyncObjectProcessMessage(IMessage msg, IMessageSink replySink); + protected void DisposeServerObject(); // 0x002AB59C +} + +// Namespace: System.Runtime.Remoting +internal class ClientActivatedIdentity : ServerIdentity // TypeDefIndex: 1117 +{ + // Fields + private MarshalByRefObject _targetThis; // 0x38 + + // Methods + public void .ctor(string objectUri, Type objectType); // 0x002D36CC + public MarshalByRefObject GetServerObject(); // 0x002D36F4 + public MarshalByRefObject GetClientProxy(); // 0x002D36FC + public void SetClientProxy(MarshalByRefObject obj); // 0x002D3704 + public override void OnLifetimeExpired(); // 0x002D370C + public override IMessage SyncObjectProcessMessage(IMessage msg); // 0x002D379C + public override IMessageCtrl AsyncObjectProcessMessage(IMessage msg, IMessageSink replySink); // 0x002D38DC +} + +// Namespace: System.Runtime.Remoting +internal class SingletonIdentity : ServerIdentity // TypeDefIndex: 1118 +{ + // Methods + public void .ctor(string objectUri, Context context, Type objectType); // 0x002AA834 + public MarshalByRefObject GetServerObject(); // 0x002AC6DC + public override IMessage SyncObjectProcessMessage(IMessage msg); // 0x002AC8CC + public override IMessageCtrl AsyncObjectProcessMessage(IMessage msg, IMessageSink replySink); // 0x002AC9FC +} + +// Namespace: System.Runtime.Remoting +internal class SingleCallIdentity : ServerIdentity // TypeDefIndex: 1119 +{ + // Methods + public void .ctor(string objectUri, Context context, Type objectType); // 0x002AA80C + public override IMessage SyncObjectProcessMessage(IMessage msg); // 0x002AC24C + public override IMessageCtrl AsyncObjectProcessMessage(IMessage msg, IMessageSink replySink); // 0x002AC4CC +} + +// Namespace: System.Runtime.Remoting +internal class DisposerReplySink : IMessageSink // TypeDefIndex: 1120 +{ + // Fields + private IMessageSink _next; // 0x08 + private IDisposable _disposable; // 0x0C + + // Properties + public IMessageSink NextSink { get; } // 0x003045B8 + + // Methods + public void .ctor(IMessageSink next, IDisposable disposable); // 0x0030439C + public IMessage SyncProcessMessage(IMessage msg); // 0x003043C4 + public IMessageCtrl AsyncProcessMessage(IMessage msg, IMessageSink replySink); // 0x00304530 +} + +// Namespace: System.Runtime.Remoting +public class SoapServices // TypeDefIndex: 1121 +{ + // Fields + private static Hashtable _xmlTypes; // 0x00 + private static Hashtable _xmlElements; // 0x04 + private static Hashtable _soapActions; // 0x08 + private static Hashtable _soapActionsMethods; // 0x0C + private static Hashtable _typeInfos; // 0x10 + + // Properties + public static string XmlNsForClrType { get; } // 0x002ACC44 + public static string XmlNsForClrTypeWithAssembly { get; } // 0x002ACCA0 + public static string XmlNsForClrTypeWithNs { get; } // 0x002ACCFC + public static string XmlNsForClrTypeWithNsAndAssembly { get; } // 0x002ACD58 + + // Methods + private void .ctor(); // 0x002ACB3C + private static void .cctor(); // 0x002ACB44 + public static string CodeXmlNamespaceForClrTypeNamespace(string typeNamespace, string assemblyName); // 0x00291EB0 + public static bool DecodeXmlNamespaceForClrTypeNamespace(string inNamespace, out string typeNamespace, out string assemblyName); // 0x002ACEBC + public static void GetInteropFieldTypeAndNameFromXmlAttribute(Type containingType, string xmlAttribute, string xmlNamespace, out Type type, out string name); // 0x002AD4BC + public static void GetInteropFieldTypeAndNameFromXmlElement(Type containingType, string xmlElement, string xmlNamespace, out Type type, out string name); // 0x002AD758 + private static void GetInteropFieldInfo(Hashtable fields, string xmlName, string xmlNamespace, out Type type, out string name); // 0x002AD620 + private static string GetNameKey(string name, string namspace); // 0x002AD8BC + public static Type GetInteropTypeFromXmlElement(string xmlElement, string xmlNamespace); // 0x002AD968 + public static Type GetInteropTypeFromXmlType(string xmlType, string xmlTypeNamespace); // 0x002ADBA0 + private static string GetAssemblyName(MethodBase mb); // 0x002ADDD8 + public static string GetSoapActionFromMethodBase(MethodBase mb); // 0x002ADFB0 + public static bool GetTypeAndMethodNameFromSoapAction(string soapAction, out string typeName, out string methodName); // 0x002AE334 + public static bool GetXmlElementForInteropType(Type type, out string xmlElement, out string xmlNamespace); // 0x002AE7BC + public static string GetXmlNamespaceForMethodCall(MethodBase mb); // 0x00291A60 + public static string GetXmlNamespaceForMethodResponse(MethodBase mb); // 0x00291984 + public static bool GetXmlTypeForInteropType(Type type, out string xmlType, out string xmlTypeNamespace); // 0x002AE8AC + public static bool IsClrTypeNamespace(string namespaceString); // 0x002AE9A4 + public static bool IsSoapActionValidForMethodBase(string soapAction, MethodBase mb); // 0x002AEA88 + public static void PreLoad(Assembly assembly); // 0x002AEC24 + public static void PreLoad(Type type); // 0x002AED14 + public static void RegisterInteropXmlElement(string xmlElement, string xmlNamespace, Type type); // 0x002AF56C + public static void RegisterInteropXmlType(string xmlType, string xmlTypeNamespace, Type type); // 0x002AF388 + public static void RegisterSoapActionForMethodBase(MethodBase mb); // 0x002AF758 + private static string InternalGetSoapAction(MethodBase mb); // 0x002AE030 + public static void RegisterSoapActionForMethodBase(MethodBase mb, string soapAction); // 0x002AF7D8 + private static string EncodeNs(string ns); // 0x002ACDB4 + private static string DecodeNs(string ns); // 0x002AD3B4 +} + +// Namespace: +private class TypeInfo // TypeDefIndex: 1122 +{ + // Fields + public Hashtable Attributes; // 0x08 + public Hashtable Elements; // 0x0C + + // Methods + public void .ctor(); // 0x002AF750 +} + +// Namespace: System.Runtime.Remoting +public class TypeEntry // TypeDefIndex: 1123 +{ + // Fields + private string assembly_name; // 0x08 + private string type_name; // 0x0C + + // Properties + public string AssemblyName { get; set; } // 0x002AF9B4 0x002AF9BC + public string TypeName { get; set; } // 0x002AF9C4 0x002AF9CC + + // Methods + protected void .ctor(); // 0x002AF9AC +} + +// Namespace: System.Runtime.Remoting +[Serializable] +internal class TypeInfo : IRemotingTypeInfo // TypeDefIndex: 1124 +{ + // Fields + private string serverType; // 0x08 + private string[] serverHierarchy; // 0x0C + private string[] interfacesImplemented; // 0x10 + + // Properties + public string TypeName { get; set; } // 0x002AF9D4 0x002AF9DC + + // Methods + public void .ctor(Type type); // 0x0029A0AC + public bool CanCastTo(Type fromType, object o); // 0x002AF9E4 +} + +// Namespace: System.Runtime.Remoting +public class WellKnownClientTypeEntry : TypeEntry // TypeDefIndex: 1125 +{ + // Fields + private Type obj_type; // 0x10 + private string obj_url; // 0x14 + private string app_url; // 0x18 + + // Properties + public string ApplicationUrl { get; set; } // 0x002AFF48 0x002AFF50 + public Type ObjectType { get; } // 0x002AFF58 + public string ObjectUrl { get; } // 0x002AFF60 + + // Methods + public void .ctor(Type type, string objectUrl); // 0x002A34B4 + public void .ctor(string typeName, string assemblyName, string objectUrl); // 0x002AFDE4 + public override string ToString(); // 0x002AFF68 +} + +// Namespace: System.Runtime.Remoting +[Serializable] +public enum WellKnownObjectMode // TypeDefIndex: 1126 +{ + Singleton = 1, + SingleCall = 2 +} + +// Namespace: System.Runtime.Remoting +public class WellKnownServiceTypeEntry : TypeEntry // TypeDefIndex: 1127 +{ + // Fields + private Type obj_type; // 0x10 + private string obj_uri; // 0x14 + private WellKnownObjectMode obj_mode; // 0x18 + + // Properties + public IContextAttribute[] ContextAttributes { get; set; } // 0x002B01BC 0x002B01C4 + public WellKnownObjectMode Mode { get; } // 0x002B01C8 + public Type ObjectType { get; } // 0x002B01D0 + public string ObjectUri { get; } // 0x002B01D8 + + // Methods + public void .ctor(Type type, string objectUri, WellKnownObjectMode mode); // 0x002A3968 + public void .ctor(string typeName, string assemblyName, string objectUri, WellKnownObjectMode mode); // 0x002B0054 + public override string ToString(); // 0x002B01E0 +} + +// Namespace: System.Runtime.Serialization.Formatters.Binary +internal class BinaryCommon // TypeDefIndex: 1128 +{ + // Fields + public static byte[] BinaryHeader; // 0x00 + private static Type[] _typeCodesToType; // 0x04 + private static byte[] _typeCodeMap; // 0x08 + public static bool UseReflectionSerialization; // 0x0C + + // Methods + public void .ctor(); // 0x002B378C + private static void .cctor(); // 0x002B3794 + public static bool IsPrimitive(Type type); // 0x002B4734 + public static byte GetTypeCode(Type type); // 0x002B48F4 + public static Type GetTypeFromCode(int code); // 0x002B4A4C + public static void CheckSerializable(Type type, ISurrogateSelector selector, StreamingContext context); // 0x002B4B10 + public static void SwapBytes(byte[] byteArray, int size, int dataSize); // 0x002B4D00 +} + +// Namespace: System.Runtime.Serialization.Formatters.Binary +internal enum BinaryElement : byte // TypeDefIndex: 1129 +{ + Header = 0, + RefTypeObject = 1, + UntypedRuntimeObject = 2, + UntypedExternalObject = 3, + RuntimeObject = 4, + ExternalObject = 5, + String = 6, + GenericArray = 7, + BoxedPrimitiveTypeValue = 8, + ObjectReference = 9, + NullValue = 10, + End = 11, + Assembly = 12, + ArrayFiller8b = 13, + ArrayFiller32b = 14, + ArrayOfPrimitiveType = 15, + ArrayOfObject = 16, + ArrayOfString = 17, + Method = 18, + _Unknown4 = 19, + _Unknown5 = 20, + MethodCall = 21, + MethodResponse = 22 +} + +// Namespace: System.Runtime.Serialization.Formatters.Binary +internal enum TypeTag : byte // TypeDefIndex: 1130 +{ + PrimitiveType = 0, + String = 1, + ObjectType = 2, + RuntimeType = 3, + GenericType = 4, + ArrayOfObject = 5, + ArrayOfString = 6, + ArrayOfPrimitiveType = 7 +} + +// Namespace: System.Runtime.Serialization.Formatters.Binary +internal enum ArrayStructure : byte // TypeDefIndex: 1131 +{ + SingleDimensional = 0, + Jagged = 1, + MultiDimensional = 2 +} + +// Namespace: System.Runtime.Serialization.Formatters.Binary +internal enum MethodFlags // TypeDefIndex: 1132 +{ + NoArguments = 1, + PrimitiveArguments = 2, + ArgumentsInSimpleArray = 4, + ArgumentsInMultiArray = 8, + FormatMask = 15, + ExcludeLogicalCallContext = 16, + IncludesLogicalCallContext = 64, + IncludesSignature = 128, + GenericArguments = 32768, + NeedsInfoArrayMask = 32972 +} + +// Namespace: System.Runtime.Serialization.Formatters.Binary +internal enum ReturnTypeTag : byte // TypeDefIndex: 1133 +{ + Null = 2, + PrimitiveType = 8, + ObjectType = 16, + Exception = 32 +} + +// Namespace: System.Runtime.Serialization.Formatters.Binary +internal enum BinaryTypeCode : byte // TypeDefIndex: 1134 +{ + Boolean = 1, + Byte = 2, + Char = 3, + Decimal = 5, + Double = 6, + Int16 = 7, + Int32 = 8, + Int64 = 9, + SByte = 10, + Single = 11, + TimeSpan = 12, + DateTime = 13, + UInt16 = 14, + UInt32 = 15, + UInt64 = 16, + Null = 17, + String = 18 +} + +// Namespace: System.Runtime.Serialization.Formatters.Binary +public sealed class BinaryFormatter : IRemotingFormatter, IFormatter // TypeDefIndex: 1135 +{ + // Fields + private FormatterAssemblyStyle assembly_format; // 0x08 + private SerializationBinder binder; // 0x0C + private StreamingContext context; // 0x10 + private ISurrogateSelector surrogate_selector; // 0x18 + private FormatterTypeStyle type_format; // 0x1C + private TypeFilterLevel filter_level; // 0x20 + private static ISurrogateSelector k__BackingField; // 0x00 + + // Properties + public static ISurrogateSelector DefaultSurrogateSelector { get; set; } // 0x001F0728 0x001F078C + public FormatterAssemblyStyle AssemblyFormat { get; set; } // 0x001F07F0 0x001F07F8 + public SerializationBinder Binder { get; set; } // 0x001F0800 0x001F0808 + public StreamingContext Context { get; set; } // 0x001F0810 0x001F0824 + public ISurrogateSelector SurrogateSelector { get; set; } // 0x001F0830 0x001F0838 + public FormatterTypeStyle TypeFormat { get; set; } // 0x001F0840 0x001F0848 + public TypeFilterLevel FilterLevel { get; set; } // 0x001F0850 0x001F0858 + + // Methods + public void .ctor(); // 0x001F064C + public void .ctor(ISurrogateSelector selector, StreamingContext context); // 0x001F06E4 + public object Deserialize(Stream serializationStream); // 0x001F0860 + public object Deserialize(Stream serializationStream, HeaderHandler handler); // 0x001F0AD0 + private object NoCheckDeserialize(Stream serializationStream, HeaderHandler handler); // 0x001F0868 + public object DeserializeMethodResponse(Stream serializationStream, HeaderHandler handler, IMethodCallMessage methodCallMessage); // 0x001F26C8 + private object NoCheckDeserializeMethodResponse(Stream serializationStream, HeaderHandler handler, IMethodCallMessage methodCallMessage); // 0x001F26E0 + public void Serialize(Stream serializationStream, object graph); // 0x001F28CC + public void Serialize(Stream serializationStream, object graph, Header[] headers); // 0x001F28E8 + public object UnsafeDeserialize(Stream serializationStream, HeaderHandler handler); // 0x001F542C + public object UnsafeDeserializeMethodResponse(Stream serializationStream, HeaderHandler handler, IMethodCallMessage methodCallMessage); // 0x001F5430 + private void WriteBinaryHeader(BinaryWriter writer, bool hasHeaders); // 0x001F2AFC + private void ReadBinaryHeader(BinaryReader reader, out bool hasHeaders); // 0x001F0ADC +} + +// Namespace: System.Runtime.Serialization.Formatters.Binary +internal class CodeGenerator // TypeDefIndex: 1136 +{ + // Fields + private static object monitor; // 0x00 + private static ModuleBuilder _module; // 0x04 + + // Methods + public void .ctor(); // 0x001F54F0 + private static void .cctor(); // 0x001F54F8 + public static Type GenerateMetadataType(Type type, StreamingContext context); // 0x001F5664 + public static Type GenerateMetadataTypeInternal(Type type, StreamingContext context); // 0x001F57A4 + public static void LoadFromPtr(ILGenerator ig, Type t); // 0x001F8A8C + private static void EmitWriteTypeSpec(ILGenerator gen, Type type, string member); // 0x001F8318 + private static void EmitLoadTypeAssembly(ILGenerator gen, Type type, string member); // 0x001F7B14 + private static void EmitWrite(ILGenerator gen, Type type); // 0x001F7D58 + public static void EmitWritePrimitiveValue(ILGenerator gen, Type type); // 0x001F9614 + public static Type EnumToUnderlying(Type t); // 0x001F9D38 +} + +// Namespace: System.Runtime.Serialization.Formatters.Binary +internal class MessageFormatter // TypeDefIndex: 1137 +{ + // Methods + public void .ctor(); // 0x001FAFB4 + public static void WriteMethodCall(BinaryWriter writer, object obj, Header[] headers, ISurrogateSelector surrogateSelector, StreamingContext context, FormatterAssemblyStyle assemblyFormat, FormatterTypeStyle typeFormat); // 0x001F2BD4 + public static void WriteMethodResponse(BinaryWriter writer, object obj, Header[] headers, ISurrogateSelector surrogateSelector, StreamingContext context, FormatterAssemblyStyle assemblyFormat, FormatterTypeStyle typeFormat); // 0x001F3DF8 + public static object ReadMethodCall(BinaryReader reader, bool hasHeaders, HeaderHandler headerHandler, BinaryFormatter formatter); // 0x001FBF18 + public static object ReadMethodCall(BinaryElement elem, BinaryReader reader, bool hasHeaders, HeaderHandler headerHandler, BinaryFormatter formatter); // 0x001F0BD4 + public static object ReadMethodResponse(BinaryReader reader, bool hasHeaders, HeaderHandler headerHandler, IMethodCallMessage methodCallMessage, BinaryFormatter formatter); // 0x001F286C + public static object ReadMethodResponse(BinaryElement elem, BinaryReader reader, bool hasHeaders, HeaderHandler headerHandler, IMethodCallMessage methodCallMessage, BinaryFormatter formatter); // 0x001F18D4 + private static bool AllTypesArePrimitive(object[] objects); // 0x001FB424 + public static bool IsMethodPrimitive(Type type); // 0x001FBDAC + private static object[] GetExtraProperties(IDictionary properties, string[] internalKeys); // 0x001FAFBC + private static bool IsInternalKey(string key, string[] internalKeys); // 0x001FC60C +} + +// Namespace: System.Runtime.Serialization.Formatters.Binary +internal class ObjectReader // TypeDefIndex: 1138 +{ + // Fields + private ISurrogateSelector _surrogateSelector; // 0x08 + private StreamingContext _context; // 0x0C + private SerializationBinder _binder; // 0x14 + private TypeFilterLevel _filterLevel; // 0x18 + private ObjectManager _manager; // 0x1C + private Hashtable _registeredAssemblies; // 0x20 + private Hashtable _typeMetadataCache; // 0x24 + private object _lastObject; // 0x28 + private long _lastObjectID; // 0x30 + private long _rootObjectID; // 0x38 + private byte[] arrayBuffer; // 0x40 + private int ArrayBufferLength; // 0x44 + + // Properties + public object CurrentObject { get; } // 0x001FCF1C + + // Methods + public void .ctor(BinaryFormatter formatter); // 0x001F23D0 + public void ReadObjectGraph(BinaryReader reader, bool readHeaders, out object result, out Header[] headers); // 0x001FC5A8 + public void ReadObjectGraph(BinaryElement elem, BinaryReader reader, bool readHeaders, out object result, out Header[] headers); // 0x001F2520 + private bool ReadNextObject(BinaryElement element, BinaryReader reader); // 0x001FC7C0 + public bool ReadNextObject(BinaryReader reader); // 0x001FC8B0 + private void ReadObject(BinaryElement element, BinaryReader reader, out long objectId, out object value, out SerializationInfo info); // 0x001FC9D0 + private void ReadAssembly(BinaryReader reader); // 0x001FD618 + private void ReadObjectInstance(BinaryReader reader, bool isRuntimeObject, bool hasTypeInfo, out long objectId, out object value, out SerializationInfo info); // 0x001FD114 + private void ReadRefTypeObjectInstance(BinaryReader reader, out long objectId, out object value, out SerializationInfo info); // 0x001FCF24 + private void ReadObjectContent(BinaryReader reader, TypeMetadata metadata, long objectId, out object objectInstance, out SerializationInfo info); // 0x001FF00C + private void RegisterObject(long objectId, object objectInstance, SerializationInfo info, long parentObjectId, MemberInfo parentObjectMemeber, int[] indices); // 0x001FCD7C + private void ReadStringIntance(BinaryReader reader, out long objectId, out object value); // 0x001FD1A0 + private void ReadGenericArray(BinaryReader reader, out long objectId, out object val); // 0x001FD20C + private object ReadBoxedPrimitiveTypeValue(BinaryReader reader); // 0x001FD5F4 + private void ReadArrayOfPrimitiveType(BinaryReader reader, out long objectId, out object val); // 0x001FD738 + private void BlockRead(BinaryReader reader, Array array, int dataSize); // 0x00200054 + private void ReadArrayOfObject(BinaryReader reader, out long objectId, out object array); // 0x001FE370 + private void ReadArrayOfString(BinaryReader reader, out long objectId, out object array); // 0x001FE430 + private void ReadSimpleArray(BinaryReader reader, Type elementType, out long objectId, out object val); // 0x002002A4 + private TypeMetadata ReadTypeMetadata(BinaryReader reader, bool isRuntimeObject, bool hasTypeInfo); // 0x001FE4F0 + private void ReadValue(BinaryReader reader, object parentObject, long parentObjectId, SerializationInfo info, Type valueType, string fieldName, MemberInfo memberInfo, int[] indices); // 0x001FF604 + private void SetObjectValue(object parentObject, string fieldName, MemberInfo memberInfo, SerializationInfo info, object value, Type valueType, int[] indices); // 0x00200628 + private void RecordFixup(long parentObjectId, long childObjectId, object parentObject, SerializationInfo info, string fieldName, MemberInfo memberInfo, int[] indices); // 0x002009F8 + private Type GetDeserializationType(long assemblyId, string className); // 0x00200434 + public Type ReadType(BinaryReader reader, TypeTag code); // 0x001FFAD0 + public static object ReadPrimitiveTypeValue(BinaryReader reader, Type type); // 0x001FBF74 +} + +// Namespace: +private class TypeMetadata // TypeDefIndex: 1139 +{ + // Fields + public Type Type; // 0x08 + public Type[] MemberTypes; // 0x0C + public string[] MemberNames; // 0x10 + public MemberInfo[] MemberInfos; // 0x14 + public int FieldCount; // 0x18 + public bool NeedsSerializationInfo; // 0x1C + + // Methods + public void .ctor(); // 0x0020042C +} + +// Namespace: +private class ArrayNullFiller // TypeDefIndex: 1140 +{ + // Fields + public int NullCount; // 0x08 + + // Methods + public void .ctor(int count); // 0x001FD718 +} + +// Namespace: System.Runtime.Serialization.Formatters.Binary +internal abstract class TypeMetadata // TypeDefIndex: 1141 +{ + // Fields + public string TypeAssemblyName; // 0x08 + public string InstanceTypeName; // 0x0C + + // Properties + public abstract bool RequiresTypes { get; } + + // Methods + protected void .ctor(); // 0x001F54E0 + public abstract void WriteAssemblies(ObjectWriter ow, BinaryWriter writer); + public abstract void WriteTypeData(ObjectWriter ow, BinaryWriter writer, bool writeTypes); + public abstract void WriteObjectData(ObjectWriter ow, BinaryWriter writer, object data); + public virtual bool IsCompatible(TypeMetadata other); // 0x002054A0 +} + +// Namespace: System.Runtime.Serialization.Formatters.Binary +internal abstract class ClrTypeMetadata : TypeMetadata // TypeDefIndex: 1142 +{ + // Fields + public Type InstanceType; // 0x10 + + // Properties + public override bool RequiresTypes { get; } // 0x001F54E8 + + // Methods + public void .ctor(Type instanceType); // 0x001F5448 +} + +// Namespace: System.Runtime.Serialization.Formatters.Binary +internal class SerializableTypeMetadata : TypeMetadata // TypeDefIndex: 1143 +{ + // Fields + private Type[] types; // 0x10 + private string[] names; // 0x14 + + // Properties + public override bool RequiresTypes { get; } // 0x00205498 + + // Methods + public void .ctor(Type itype, SerializationInfo info); // 0x0020250C + public override bool IsCompatible(TypeMetadata other); // 0x00204D90 + public override void WriteAssemblies(ObjectWriter ow, BinaryWriter writer); // 0x00205064 + public override void WriteTypeData(ObjectWriter ow, BinaryWriter writer, bool writeTypes); // 0x00205158 + public override void WriteObjectData(ObjectWriter ow, BinaryWriter writer, object data); // 0x00205348 +} + +// Namespace: System.Runtime.Serialization.Formatters.Binary +internal class MemberTypeMetadata : ClrTypeMetadata // TypeDefIndex: 1144 +{ + // Fields + private MemberInfo[] members; // 0x14 + + // Methods + public void .ctor(Type type, StreamingContext context); // 0x001FA1C0 + public override void WriteAssemblies(ObjectWriter ow, BinaryWriter writer); // 0x001FA1F8 + public override void WriteTypeData(ObjectWriter ow, BinaryWriter writer, bool writeTypes); // 0x001FA3DC + public override void WriteObjectData(ObjectWriter ow, BinaryWriter writer, object data); // 0x001FAAB4 +} + +// Namespace: System.Runtime.Serialization.Formatters.Binary +internal class ObjectWriter // TypeDefIndex: 1145 +{ + // Fields + private ObjectIDGenerator _idGenerator; // 0x08 + private Hashtable _cachedMetadata; // 0x0C + private Queue _pendingObjects; // 0x10 + private Hashtable _assemblyCache; // 0x14 + private static Hashtable _cachedTypes; // 0x00 + internal static Assembly CorlibAssembly; // 0x04 + internal static string CorlibAssemblyName; // 0x08 + private ISurrogateSelector _surrogateSelector; // 0x18 + private StreamingContext _context; // 0x1C + private FormatterAssemblyStyle _assemblyFormat; // 0x24 + private FormatterTypeStyle _typeFormat; // 0x28 + private byte[] arrayBuffer; // 0x2C + private int ArrayBufferLength; // 0x30 + private SerializationObjectManager _manager; // 0x34 + + // Methods + public void .ctor(ISurrogateSelector surrogateSelector, StreamingContext context, FormatterAssemblyStyle assemblyFormat, FormatterTypeStyle typeFormat); // 0x001F5198 + private static void .cctor(); // 0x00200F64 + public void WriteObjectGraph(BinaryWriter writer, object obj, Header[] headers); // 0x001F52D0 + public void QueueObject(object obj); // 0x002010EC + public void WriteQueuedObjects(BinaryWriter writer); // 0x00201128 + public void WriteObjectInstance(BinaryWriter writer, object obj, bool isValueObject); // 0x0020120C + public static void WriteSerializationEnd(BinaryWriter writer); // 0x002011B4 + private void WriteObject(BinaryWriter writer, long id, object obj); // 0x0020168C + private void GetObjectData(object obj, out TypeMetadata metadata, out object data); // 0x00201A70 + private TypeMetadata CreateMemberTypeMetadata(Type type); // 0x00202A64 + private void WriteArray(BinaryWriter writer, long id, Array array); // 0x0020141C + private void WriteGenericArray(BinaryWriter writer, long id, Array array); // 0x00203CF0 + private void WriteObjectArray(BinaryWriter writer, long id, Array array); // 0x00202BDC + private void WriteStringArray(BinaryWriter writer, long id, Array array); // 0x00202D1C + private void WritePrimitiveTypeArray(BinaryWriter writer, long id, Array array); // 0x00202E5C + private void BlockWrite(BinaryWriter writer, Array array, int dataSize); // 0x00204570 + private void WriteSingleDimensionArrayElements(BinaryWriter writer, Array array, Type elementType); // 0x0020424C + private void WriteNullFiller(BinaryWriter writer, int numNulls); // 0x002047A4 + private void WriteObjectReference(BinaryWriter writer, long id); // 0x00204888 + public void WriteValue(BinaryWriter writer, Type valueType, object val); // 0x001FAC98 + private void WriteString(BinaryWriter writer, long id, string str); // 0x00201378 + public int WriteAssembly(BinaryWriter writer, Assembly assembly); // 0x001FA390 + public int WriteAssemblyName(BinaryWriter writer, string assembly); // 0x00202324 + public int GetAssemblyId(Assembly assembly); // 0x00204AB4 + public int GetAssemblyNameId(string assembly); // 0x00204AF8 + private int RegisterAssembly(string assembly, out bool firstTime); // 0x002048EC + public static void WritePrimitiveValue(BinaryWriter writer, object value); // 0x001FB4A4 + public static void WriteTypeCode(BinaryWriter writer, Type type); // 0x001FA6EC + public static TypeTag GetTypeTag(Type type); // 0x001F7F30 + public void WriteTypeSpec(BinaryWriter writer, Type type); // 0x001FA79C +} + +// Namespace: +private class MetadataReference // TypeDefIndex: 1146 +{ + // Fields + public TypeMetadata Metadata; // 0x08 + public long ObjectID; // 0x10 + + // Methods + public void .ctor(TypeMetadata metadata, long id); // 0x002022F8 +} + +// Namespace: System.Runtime.Serialization.Formatters +[Serializable] +public enum FormatterAssemblyStyle // TypeDefIndex: 1147 +{ + Simple = 0, + Full = 1 +} + +// Namespace: System.Runtime.Serialization.Formatters +[Serializable] +public enum FormatterTypeStyle // TypeDefIndex: 1148 +{ + TypesWhenNeeded = 0, + TypesAlways = 1, + XsdString = 2 +} + +// Namespace: System.Runtime.Serialization.Formatters +public interface IFieldInfo // TypeDefIndex: 1149 +{ + // Properties + string[] FieldNames { get; set; } + Type[] FieldTypes { get; set; } + +} + +// Namespace: System.Runtime.Serialization.Formatters +public interface ISoapMessage // TypeDefIndex: 1150 +{ + // Properties + Header[] Headers { get; set; } + string MethodName { get; set; } + string[] ParamNames { get; set; } + Type[] ParamTypes { get; set; } + object[] ParamValues { get; set; } + string XmlNameSpace { get; set; } + +} + +// Namespace: System.Runtime.Serialization.Formatters +public sealed class InternalRM // TypeDefIndex: 1151 +{ + // Methods + public void .ctor(); // 0x002054A8 + public static void InfoSoap(object[] messages); // 0x002054B0 + public static bool SoapCheckEnabled(); // 0x00205538 +} + +// Namespace: System.Runtime.Serialization.Formatters +public sealed class InternalST // TypeDefIndex: 1152 +{ + // Methods + private void .ctor(); // 0x002055C0 + public static void InfoSoap(object[] messages); // 0x002055C8 + public static Assembly LoadAssemblyFromString(string assemblyString); // 0x00205650 + public static void SerializationSetValue(FieldInfo fi, object target, object value); // 0x002056D8 + public static void Soap(object[] messages); // 0x00205760 + public static void SoapAssert(bool condition, string message); // 0x002057E8 + public static bool SoapCheckEnabled(); // 0x00205870 +} + +// Namespace: System.Runtime.Serialization.Formatters +[Serializable] +public sealed class ServerFault // TypeDefIndex: 1153 +{ + // Fields + private string exceptionType; // 0x08 + private string message; // 0x0C + private string stackTrace; // 0x10 + private Exception exception; // 0x14 + + // Properties + public string ExceptionType { get; set; } // 0x00205928 0x00205930 + public string ExceptionMessage { get; set; } // 0x00205938 0x00205940 + public string StackTrace { get; set; } // 0x00205948 0x00205950 + + // Methods + public void .ctor(string exceptionType, string message, string stackTrace); // 0x002058F8 +} + +// Namespace: System.Runtime.Serialization.Formatters +[Serializable] +public sealed class SoapFault : ISerializable // TypeDefIndex: 1154 +{ + // Fields + private string code; // 0x08 + private string actor; // 0x0C + private string faultString; // 0x10 + private object detail; // 0x14 + + // Properties + public object Detail { get; set; } // 0x00205F40 0x00205F48 + public string FaultActor { get; set; } // 0x00205F50 0x00205F58 + public string FaultCode { get; set; } // 0x00205F60 0x00205F68 + public string FaultString { get; set; } // 0x00205F70 0x00205F78 + + // Methods + public void .ctor(); // 0x00205958 + private void .ctor(SerializationInfo info, StreamingContext context); // 0x00205960 + public void .ctor(string faultCode, string faultString, string faultActor, ServerFault serverFault); // 0x00205F08 + public void GetObjectData(SerializationInfo info, StreamingContext context); // 0x00205F80 +} + +// Namespace: System.Runtime.Serialization.Formatters +[Serializable] +public class SoapMessage : ISoapMessage // TypeDefIndex: 1155 +{ + // Fields + private Header[] headers; // 0x08 + private string methodName; // 0x0C + private string[] paramNames; // 0x10 + private Type[] paramTypes; // 0x14 + private object[] paramValues; // 0x18 + private string xmlNameSpace; // 0x1C + + // Properties + public Header[] Headers { get; set; } // 0x00206100 0x00206108 + public string MethodName { get; set; } // 0x00206110 0x00206118 + public string[] ParamNames { get; set; } // 0x00206120 0x00206128 + public Type[] ParamTypes { get; set; } // 0x00206130 0x00206138 + public object[] ParamValues { get; set; } // 0x00206140 0x00206148 + public string XmlNameSpace { get; set; } // 0x00206150 0x00206158 + + // Methods + public void .ctor(); // 0x002060F8 +} + +// Namespace: System.Runtime.Serialization.Formatters +public enum TypeFilterLevel // TypeDefIndex: 1156 +{ + Low = 2, + Full = 3 +} + +// Namespace: System.Runtime.Serialization +[Serializable] +public abstract class Formatter : IFormatter // TypeDefIndex: 1157 +{ + // Fields + protected ObjectIDGenerator m_idGenerator; // 0x08 + protected Queue m_objectQueue; // 0x0C + + // Properties + public abstract SerializationBinder Binder { get; set; } + public abstract StreamingContext Context { get; set; } + public abstract ISurrogateSelector SurrogateSelector { get; set; } + + // Methods + protected void .ctor(); // 0x002B09AC + public abstract object Deserialize(Stream serializationStream); + protected virtual object GetNext(out long objID); // 0x002B0A4C + protected virtual long Schedule(object obj); // 0x002B0B18 + public abstract void Serialize(Stream serializationStream, object graph); + protected abstract void WriteArray(object obj, string name, Type memberType); + protected abstract void WriteBoolean(bool val, string name); + protected abstract void WriteByte(byte val, string name); + protected abstract void WriteChar(char val, string name); + protected abstract void WriteDateTime(DateTime val, string name); + protected abstract void WriteDecimal(Decimal val, string name); + protected abstract void WriteDouble(double val, string name); + protected abstract void WriteInt16(short val, string name); + protected abstract void WriteInt32(int val, string name); + protected abstract void WriteInt64(long val, string name); + protected virtual void WriteMember(string memberName, object data); // 0x002B0BC8 + protected abstract void WriteObjectRef(object obj, string name, Type memberType); + protected abstract void WriteSByte(sbyte val, string name); + protected abstract void WriteSingle(float val, string name); + protected abstract void WriteTimeSpan(TimeSpan val, string name); + protected abstract void WriteUInt16(ushort val, string name); + protected abstract void WriteUInt32(uint val, string name); + protected abstract void WriteUInt64(ulong val, string name); + protected abstract void WriteValueType(object obj, string name, Type memberType); +} + +// Namespace: System.Runtime.Serialization +public class FormatterConverter : IFormatterConverter // TypeDefIndex: 1158 +{ + // Methods + public void .ctor(); // 0x002B1718 + public object Convert(object value, Type type); // 0x002B1720 + public object Convert(object value, TypeCode typeCode); // 0x002B17AC + public bool ToBoolean(object value); // 0x002B1838 + public byte ToByte(object value); // 0x002B191C + public char ToChar(object value); // 0x002B1A00 + public DateTime ToDateTime(object value); // 0x002B1AE4 + public Decimal ToDecimal(object value); // 0x002B1BD0 + public double ToDouble(object value); // 0x002B1CBC + public short ToInt16(object value); // 0x002B1DA0 + public int ToInt32(object value); // 0x002B1E84 + public long ToInt64(object value); // 0x002B1F68 + public float ToSingle(object value); // 0x002B204C + public string ToString(object value); // 0x002B2130 + public sbyte ToSByte(object value); // 0x002B2214 + public ushort ToUInt16(object value); // 0x002B22F8 + public uint ToUInt32(object value); // 0x002B23DC + public ulong ToUInt64(object value); // 0x002B24C0 +} + +// Namespace: System.Runtime.Serialization +public sealed class FormatterServices // TypeDefIndex: 1159 +{ + // Fields + private const BindingFlags fieldFlags = 54; // 0x00 + + // Methods + private void .ctor(); // 0x002B25A4 + public static object[] GetObjectData(object obj, MemberInfo[] members); // 0x002B25AC + public static MemberInfo[] GetSerializableMembers(Type type); // 0x002B2954 + public static MemberInfo[] GetSerializableMembers(Type type, StreamingContext context); // 0x002B2990 + private static void GetFields(Type reflectedType, Type type, ArrayList fields); // 0x002B2BDC + public static Type GetTypeFromAssembly(Assembly assem, string name); // 0x002B2E1C + public static object GetUninitializedObject(Type type); // 0x002B2F30 + public static object PopulateObjectMembers(object obj, MemberInfo[] members, object[] data); // 0x002B307C + public static void CheckTypeSecurity(Type t, TypeFilterLevel securityLevel); // 0x002B3480 + private static void CheckNotAssignable(Type basetype, Type type); // 0x002B3588 + public static object GetSafeUninitializedObject(Type type); // 0x002B3788 +} + +// Namespace: System.Runtime.Serialization +public interface IDeserializationCallback // TypeDefIndex: 1160 +{ + // Methods + void OnDeserialization(object sender); +} + +// Namespace: System.Runtime.Serialization +public interface IFormatter // TypeDefIndex: 1161 +{ + // Properties + SerializationBinder Binder { get; set; } + StreamingContext Context { get; set; } + ISurrogateSelector SurrogateSelector { get; set; } + + // Methods + object Deserialize(Stream serializationStream); + void Serialize(Stream serializationStream, object graph); +} + +// Namespace: System.Runtime.Serialization +public interface IFormatterConverter // TypeDefIndex: 1162 +{ + // Methods + object Convert(object value, Type type); + object Convert(object value, TypeCode typeCode); + bool ToBoolean(object value); + byte ToByte(object value); + char ToChar(object value); + DateTime ToDateTime(object value); + Decimal ToDecimal(object value); + double ToDouble(object value); + short ToInt16(object value); + int ToInt32(object value); + long ToInt64(object value); + sbyte ToSByte(object value); + float ToSingle(object value); + string ToString(object value); + ushort ToUInt16(object value); + uint ToUInt32(object value); + ulong ToUInt64(object value); +} + +// Namespace: System.Runtime.Serialization +public interface IObjectReference // TypeDefIndex: 1163 +{ + // Methods + object GetRealObject(StreamingContext context); +} + +// Namespace: System.Runtime.Serialization +public interface ISerializationSurrogate // TypeDefIndex: 1164 +{ + // Methods + void GetObjectData(object obj, SerializationInfo info, StreamingContext context); + object SetObjectData(object obj, SerializationInfo info, StreamingContext context, ISurrogateSelector selector); +} + +// Namespace: System.Runtime.Serialization +public interface ISurrogateSelector // TypeDefIndex: 1165 +{ + // Methods + void ChainSelector(ISurrogateSelector selector); + ISurrogateSelector GetNextSelector(); + ISerializationSurrogate GetSurrogate(Type type, StreamingContext context, out ISurrogateSelector selector); +} + +// Namespace: System.Runtime.Serialization +[Serializable] +public class ObjectIDGenerator // TypeDefIndex: 1166 +{ + // Fields + private Hashtable table; // 0x08 + private long current; // 0x10 + private static InstanceComparer comparer; // 0x00 + + // Properties + internal long NextId { get; } // 0x00201354 + + // Methods + public void .ctor(); // 0x00200E00 + private static void .cctor(); // 0x002062EC + public virtual long GetId(object obj, out bool firstTime); // 0x00206374 + public virtual long HasId(object obj, out bool firstTime); // 0x00206514 +} + +// Namespace: +private class InstanceComparer : IComparer, IHashCodeProvider // TypeDefIndex: 1167 +{ + // Methods + public void .ctor(); // 0x0020636C + private int System.Collections.IComparer.Compare(object o1, object o2); // 0x0020664C + private int System.Collections.IHashCodeProvider.GetHashCode(object o); // 0x002066E8 +} + +// Namespace: System.Runtime.Serialization +public class ObjectManager // TypeDefIndex: 1168 +{ + // Fields + private ObjectRecord _objectRecordChain; // 0x08 + private ObjectRecord _lastObjectRecord; // 0x0C + private ArrayList _deserializedRecords; // 0x10 + private ArrayList _onDeserializedCallbackRecords; // 0x14 + private Hashtable _objectRecords; // 0x18 + private bool _finalFixup; // 0x1C + private ISurrogateSelector _selector; // 0x20 + private StreamingContext _context; // 0x24 + private int _registeredObjectsCount; // 0x2C + + // Methods + public void .ctor(ISurrogateSelector selector, StreamingContext context); // 0x001FC6F0 + public virtual void DoFixups(); // 0x002066F4 + internal ObjectRecord GetObjectRecord(long objectID); // 0x00207A68 + public virtual object GetObject(long objectID); // 0x00207D9C + public virtual void RaiseDeserializationEvent(); // 0x00207F14 + public void RaiseOnDeserializingEvent(object obj); // 0x001FF358 + private void RaiseOnDeserializedEvent(object obj); // 0x00208184 + private void AddFixup(BaseFixupRecord record); // 0x002083A8 + public virtual void RecordArrayElementFixup(long arrayToBeFixed, int index, long objectRequired); // 0x00208460 + public virtual void RecordArrayElementFixup(long arrayToBeFixed, int[] indices, long objectRequired); // 0x00208600 + public virtual void RecordDelayedFixup(long objectToBeFixed, string memberName, long objectRequired); // 0x002087E4 + public virtual void RecordFixup(long objectToBeFixed, MemberInfo member, long objectRequired); // 0x002089D0 + private void RegisterObjectInternal(object obj, ObjectRecord record); // 0x00208BBC + public virtual void RegisterObject(object obj, long objectID); // 0x00208F88 + public void RegisterObject(object obj, long objectID, SerializationInfo info); // 0x002090D8 + public void RegisterObject(object obj, long objectID, SerializationInfo info, long idOfContainingObj, MemberInfo member); // 0x00209244 + public void RegisterObject(object obj, long objectID, SerializationInfo info, long idOfContainingObj, MemberInfo member, int[] arrayIndex); // 0x001FF8F4 +} + +// Namespace: System.Runtime.Serialization +internal abstract class BaseFixupRecord // TypeDefIndex: 1169 +{ + // Fields + protected internal ObjectRecord ObjectToBeFixed; // 0x08 + protected internal ObjectRecord ObjectRequired; // 0x0C + public BaseFixupRecord NextSameContainer; // 0x10 + public BaseFixupRecord NextSameRequired; // 0x14 + + // Methods + public void .ctor(ObjectRecord objectToBeFixed, ObjectRecord objectRequired); // 0x002B0494 + public bool DoFixup(ObjectManager manager, bool strict); // 0x002B05B0 + protected abstract void FixupImpl(ObjectManager manager); +} + +// Namespace: System.Runtime.Serialization +internal class ArrayFixupRecord : BaseFixupRecord // TypeDefIndex: 1170 +{ + // Fields + private int _index; // 0x18 + + // Methods + public void .ctor(ObjectRecord objectToBeFixed, int index, ObjectRecord objectRequired); // 0x002B0464 + protected override void FixupImpl(ObjectManager manager); // 0x002B04BC +} + +// Namespace: System.Runtime.Serialization +internal class MultiArrayFixupRecord : BaseFixupRecord // TypeDefIndex: 1171 +{ + // Fields + private int[] _indices; // 0x18 + + // Methods + public void .ctor(ObjectRecord objectToBeFixed, int[] indices, ObjectRecord objectRequired); // 0x00206160 + protected override void FixupImpl(ObjectManager manager); // 0x00206184 +} + +// Namespace: System.Runtime.Serialization +internal class FixupRecord : BaseFixupRecord // TypeDefIndex: 1172 +{ + // Fields + public MemberInfo _member; // 0x18 + + // Methods + public void .ctor(ObjectRecord objectToBeFixed, MemberInfo member, ObjectRecord objectRequired); // 0x002B0918 + protected override void FixupImpl(ObjectManager manager); // 0x002B0948 +} + +// Namespace: System.Runtime.Serialization +internal class DelayedFixupRecord : BaseFixupRecord // TypeDefIndex: 1173 +{ + // Fields + public string _memberName; // 0x18 + + // Methods + public void .ctor(ObjectRecord objectToBeFixed, string memberName, ObjectRecord objectRequired); // 0x002B0884 + protected override void FixupImpl(ObjectManager manager); // 0x002B08B4 +} + +// Namespace: System.Runtime.Serialization +internal enum ObjectRecordStatus : byte // TypeDefIndex: 1174 +{ + Unregistered = 0, + ReferenceUnsolved = 1, + ReferenceSolvingDelayed = 2, + ReferenceSolved = 3 +} + +// Namespace: System.Runtime.Serialization +internal class ObjectRecord // TypeDefIndex: 1175 +{ + // Fields + public ObjectRecordStatus Status; // 0x08 + public object OriginalObject; // 0x0C + public object ObjectInstance; // 0x10 + public long ObjectID; // 0x18 + public SerializationInfo Info; // 0x20 + public long IdOfContainingObj; // 0x28 + public ISerializationSurrogate Surrogate; // 0x30 + public ISurrogateSelector SurrogateSelector; // 0x34 + public MemberInfo Member; // 0x38 + public int[] ArrayIndex; // 0x3C + public BaseFixupRecord FixupChainAsContainer; // 0x40 + public BaseFixupRecord FixupChainAsRequired; // 0x44 + public ObjectRecord Next; // 0x48 + + // Properties + public bool IsInstanceReady { get; } // 0x002095AC + public bool IsUnsolvedObjectReference { get; } // 0x00206B80 + public bool IsRegistered { get; } // 0x00207D8C + public bool HasPendingFixups { get; } // 0x00209634 + + // Methods + public void .ctor(); // 0x00207D84 + public void SetMemberValue(ObjectManager manager, MemberInfo member, object value); // 0x00209280 + public void SetArrayValue(ObjectManager manager, object value, int[] indices); // 0x002061DC + public void SetMemberValue(ObjectManager manager, string memberName, object value); // 0x002094BC + public bool DoFixups(bool asContainer, ObjectManager manager, bool strict); // 0x00206B94 + public void RemoveFixup(BaseFixupRecord fixupToRemove, bool asContainer); // 0x002096AC + private void UnchainFixup(BaseFixupRecord fixup, BaseFixupRecord prevFixup, bool asContainer); // 0x00209644 + public void ChainFixup(BaseFixupRecord fixup, bool asContainer); // 0x00208408 + public bool LoadData(ObjectManager manager, ISurrogateSelector selector, StreamingContext context); // 0x00206C8C +} + +// Namespace: System.Runtime.Serialization +public sealed class OnDeserializedAttribute : Attribute // TypeDefIndex: 1176 +{ + // Methods + public void .ctor(); // 0x00209714 +} + +// Namespace: System.Runtime.Serialization +public sealed class OnDeserializingAttribute : Attribute // TypeDefIndex: 1177 +{ + // Methods + public void .ctor(); // 0x0020971C +} + +// Namespace: System.Runtime.Serialization +public sealed class OnSerializedAttribute : Attribute // TypeDefIndex: 1178 +{ + // Methods + public void .ctor(); // 0x00209724 +} + +// Namespace: System.Runtime.Serialization +public sealed class OnSerializingAttribute : Attribute // TypeDefIndex: 1179 +{ + // Methods + public void .ctor(); // 0x0020972C +} + +// Namespace: System.Runtime.Serialization +public sealed class OptionalFieldAttribute : Attribute // TypeDefIndex: 1180 +{ + // Fields + private int version_added; // 0x08 + + // Properties + public int VersionAdded { get; set; } // 0x0020973C 0x00209744 + + // Methods + public void .ctor(); // 0x00209734 +} + +// Namespace: System.Runtime.Serialization +[Serializable] +public abstract class SerializationBinder // TypeDefIndex: 1181 +{ + // Methods + protected void .ctor(); // 0x0020974C + public abstract Type BindToType(string assemblyName, string typeName); +} + +// Namespace: System.Runtime.Serialization +internal sealed class SerializationCallbacks // TypeDefIndex: 1182 +{ + // Fields + private const BindingFlags DefaultBindingFlags = 54; // 0x00 + private readonly ArrayList onSerializingList; // 0x08 + private readonly ArrayList onSerializedList; // 0x0C + private readonly ArrayList onDeserializingList; // 0x10 + private readonly ArrayList onDeserializedList; // 0x14 + private static Hashtable cache; // 0x00 + private static object cache_lock; // 0x04 + + // Properties + public bool HasSerializingCallbacks { get; } // 0x00209C68 + public bool HasSerializedCallbacks { get; } // 0x00209C78 + public bool HasDeserializingCallbacks { get; } // 0x00209C88 + public bool HasDeserializedCallbacks { get; } // 0x00207A58 + + // Methods + public void .ctor(Type type); // 0x00209754 + private static void .cctor(); // 0x00209BBC + private static ArrayList GetMethodsByAttribute(Type type, Type attr); // 0x002098B0 + private static void Invoke(ArrayList list, object target, StreamingContext context); // 0x00209C98 + public void RaiseOnSerializing(object target, StreamingContext contex); // 0x0020A2B0 + public void RaiseOnSerialized(object target, StreamingContext contex); // 0x0020A354 + public void RaiseOnDeserializing(object target, StreamingContext contex); // 0x00208260 + public void RaiseOnDeserialized(object target, StreamingContext contex); // 0x00208304 + public static SerializationCallbacks GetSerializationCallbacks(Type t); // 0x002076E4 +} + +// Namespace: +public delegate void CallbackHandler(StreamingContext context); // TypeDefIndex: 1183; 0x0020A084 + +// Namespace: System.Runtime.Serialization +public struct SerializationEntry // TypeDefIndex: 1184 +{ + // Fields + private string name; // 0x08 + private Type objectType; // 0x0C + private object value; // 0x10 + + // Properties + public string Name { get; } // 0x0008BC00 + public Type ObjectType { get; } // 0x0008BC08 + public object Value { get; } // 0x0008BC10 + + // Methods + internal void .ctor(string name, Type type, object value); // 0x0008BBF4 +} + +// Namespace: System.Runtime.Serialization +[Serializable] +public class SerializationException : SystemException // TypeDefIndex: 1185 +{ + // Methods + public void .ctor(); // 0x0020A4D8 + public void .ctor(string message); // 0x001F0AD4 + public void .ctor(string message, Exception innerException); // 0x0020A540 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x0020A548 +} + +// Namespace: System.Runtime.Serialization +public sealed class SerializationInfo // TypeDefIndex: 1186 +{ + // Fields + private Hashtable serialized; // 0x08 + private ArrayList values; // 0x0C + private string assemblyName; // 0x10 + private string fullTypeName; // 0x14 + private IFormatterConverter converter; // 0x18 + + // Properties + public string AssemblyName { get; set; } // 0x0020A938 0x0020A940 + public string FullTypeName { get; set; } // 0x0020A9F0 0x0020A9F8 + public int MemberCount { get; } // 0x00204BC8 + + // Methods + private void .ctor(Type type); // 0x0020A568 + private void .ctor(Type type, SerializationEntry[] data); // 0x0020A698 + public void .ctor(Type type, IFormatterConverter converter); // 0x001FF434 + public void AddValue(string name, object value, Type type); // 0x00200BD4 + public object GetValue(string name, Type type); // 0x00205BF4 + public void SetType(Type type); // 0x0020AAA8 + public SerializationInfoEnumerator GetEnumerator(); // 0x00204BFC + public void AddValue(string name, short value); // 0x0020ABF4 + public void AddValue(string name, ushort value); // 0x0020ACCC + public void AddValue(string name, int value); // 0x0020ADA4 + public void AddValue(string name, byte value); // 0x0020AE7C + public void AddValue(string name, bool value); // 0x0020AF54 + public void AddValue(string name, char value); // 0x0020B02C + public void AddValue(string name, sbyte value); // 0x0020B104 + public void AddValue(string name, double value); // 0x0020B1DC + public void AddValue(string name, Decimal value); // 0x0020B2BC + public void AddValue(string name, DateTime value); // 0x0020B3AC + public void AddValue(string name, float value); // 0x0020B49C + public void AddValue(string name, uint value); // 0x0020B57C + public void AddValue(string name, long value); // 0x0020B654 + public void AddValue(string name, ulong value); // 0x0020B734 + public void AddValue(string name, object value); // 0x0020B814 + public bool GetBoolean(string name); // 0x0020B8F4 + public byte GetByte(string name); // 0x0020BA30 + public char GetChar(string name); // 0x0020BB6C + public DateTime GetDateTime(string name); // 0x0020BCA8 + public Decimal GetDecimal(string name); // 0x0020BDEC + public double GetDouble(string name); // 0x0020BF30 + public short GetInt16(string name); // 0x0020C06C + public int GetInt32(string name); // 0x0020C1A8 + public long GetInt64(string name); // 0x0020C2E4 + public sbyte GetSByte(string name); // 0x0020C420 + public float GetSingle(string name); // 0x0020C55C + public string GetString(string name); // 0x00205AA8 + public ushort GetUInt16(string name); // 0x0020C698 + public uint GetUInt32(string name); // 0x0020C7D4 + public ulong GetUInt64(string name); // 0x0020C910 + private SerializationEntry[] get_entries(); // 0x0020CA4C +} + +// Namespace: System.Runtime.Serialization +public sealed class SerializationInfoEnumerator : IEnumerator // TypeDefIndex: 1187 +{ + // Fields + private IEnumerator enumerator; // 0x08 + + // Properties + private object System.Collections.IEnumerator.Current { get; } // 0x0020CCFC + public SerializationEntry Current { get; } // 0x0020CBBC + public string Name { get; } // 0x00204C94 + public Type ObjectType { get; } // 0x00204C70 + public object Value { get; } // 0x00205474 + + // Methods + internal void .ctor(ArrayList list); // 0x0020ABB0 + public bool MoveNext(); // 0x00204CB8 + public void Reset(); // 0x0020CDD4 +} + +// Namespace: System.Runtime.Serialization +public sealed class SerializationObjectManager // TypeDefIndex: 1188 +{ + // Fields + private readonly StreamingContext context; // 0x08 + private readonly Hashtable seen; // 0x10 + private CallbackHandler callbacks; // 0x14 + + // Events + private event CallbackHandler callbacks { + add; // 0x0020CEAC + remove; // 0x0020CF3C + } + + // Methods + public void .ctor(StreamingContext context); // 0x00200ED8 + public void RegisterObject(object obj); // 0x0020278C + public void RaiseOnSerializedEvent(); // 0x002011EC +} + +// Namespace: +private sealed class c__AnonStorey3 // TypeDefIndex: 1189 +{ + // Fields + internal SerializationCallbacks sc; // 0x08 + internal object obj; // 0x0C + + // Methods + public void .ctor(); // 0x0020CFCC + internal void <>m__2(StreamingContext ctx); // 0x0020CFD4 +} + +// Namespace: System.Runtime.Serialization +[Serializable] +public struct StreamingContext // TypeDefIndex: 1190 +{ + // Fields + private StreamingContextStates state; // 0x08 + private object additional; // 0x0C + + // Properties + public object Context { get; } // 0x0008BCE0 + public StreamingContextStates State { get; } // 0x0008BCE8 + + // Methods + public void .ctor(StreamingContextStates state); // 0x0008BCC4 + public void .ctor(StreamingContextStates state, object additional); // 0x0008BCD4 + public override bool Equals(object obj); // 0x0008BCF0 + public override int GetHashCode(); // 0x0008BCF8 +} + +// Namespace: System.Runtime.Serialization +[Serializable] +public enum StreamingContextStates // TypeDefIndex: 1191 +{ + CrossProcess = 1, + CrossMachine = 2, + File = 4, + Persistence = 8, + Remoting = 16, + Other = 32, + Clone = 64, + CrossAppDomain = 128, + All = 255 +} + +// Namespace: System.Runtime.Serialization +public class SurrogateSelector : ISurrogateSelector // TypeDefIndex: 1192 +{ + // Fields + private Hashtable Surrogates; // 0x08 + private ISurrogateSelector nextSelector; // 0x0C + + // Methods + public void .ctor(); // 0x0020D0E4 + public virtual void AddSurrogate(Type type, StreamingContext context, ISerializationSurrogate surrogate); // 0x0020D160 + public virtual void ChainSelector(ISurrogateSelector selector); // 0x0020D3F0 + public virtual ISurrogateSelector GetNextSelector(); // 0x0020D52C + public virtual ISerializationSurrogate GetSurrogate(Type type, StreamingContext context, out ISurrogateSelector selector); // 0x0020D534 + public virtual void RemoveSurrogate(Type type, StreamingContext context); // 0x0020D7C4 +} + +// Namespace: System.Runtime.Versioning +public sealed class ResourceConsumptionAttribute : Attribute // TypeDefIndex: 1193 +{ + // Fields + private ResourceScope resource; // 0x08 + private ResourceScope consumption; // 0x0C + + // Properties + public ResourceScope ConsumptionScope { get; } // 0x0020D9B0 + public ResourceScope ResourceScope { get; } // 0x0020D9B8 + + // Methods + public void .ctor(ResourceScope resourceScope); // 0x0020D964 + public void .ctor(ResourceScope resourceScope, ResourceScope consumptionScope); // 0x0020D988 +} + +// Namespace: System.Runtime.Versioning +public sealed class ResourceExposureAttribute : Attribute // TypeDefIndex: 1194 +{ + // Fields + private ResourceScope exposure; // 0x08 + + // Properties + public ResourceScope ResourceExposureLevel { get; } // 0x0020D9E0 + + // Methods + public void .ctor(ResourceScope exposureLevel); // 0x0020D9C0 +} + +// Namespace: System.Runtime.Versioning +public enum ResourceScope // TypeDefIndex: 1195 +{ + None = 0, + Machine = 1, + Process = 2, + AppDomain = 4, + Library = 8, + Private = 16, + Assembly = 32 +} + +// Namespace: System.Runtime.Versioning +public static class VersioningHelper // TypeDefIndex: 1196 +{ + // Methods + private static int GetDomainId(); // 0x0020D9E8 + private static int GetProcessId(); // 0x0020D9F0 + private static string SafeName(string name, bool process, bool appdomain); // 0x0020D9F8 + private static string ConvertFromMachine(string name, ResourceScope to, Type type); // 0x0020DDA4 + private static string ConvertFromProcess(string name, ResourceScope to, Type type); // 0x0020DECC + private static string ConvertFromAppDomain(string name, ResourceScope to, Type type); // 0x0020DF90 + public static string MakeVersionSafeName(string name, ResourceScope from, ResourceScope to); // 0x0020E084 + public static string MakeVersionSafeName(string name, ResourceScope from, ResourceScope to, Type type); // 0x0020E09C +} + +// Namespace: System.Runtime +[Serializable] +public enum GCLatencyMode // TypeDefIndex: 1197 +{ + Batch = 0, + Interactive = 1, + LowLatency = 2 +} + +// Namespace: System.Runtime +public static class GCSettings // TypeDefIndex: 1198 +{ + // Properties + public static bool IsServerGC { get; } // 0x0037E2AC + public static GCLatencyMode LatencyMode { get; set; } // 0x0037E2B4 0x0037E2BC + +} + +// Namespace: System.Runtime +public sealed class MemoryFailPoint : CriticalFinalizerObject, IDisposable // TypeDefIndex: 1199 +{ + // Methods + public void .ctor(int sizeInMegabytes); // 0x002C412C + protected override void Finalize(); // 0x002C41C4 + public void Dispose(); // 0x002C41CC +} + +// Namespace: System.Security.AccessControl +public enum AccessControlActions // TypeDefIndex: 1200 +{ + None = 0, + View = 1, + Change = 2 +} + +// Namespace: System.Security.AccessControl +public enum AccessControlModification // TypeDefIndex: 1201 +{ + Add = 0, + Set = 1, + Reset = 2, + Remove = 3, + RemoveAll = 4, + RemoveSpecific = 5 +} + +// Namespace: System.Security.AccessControl +public enum AccessControlSections // TypeDefIndex: 1202 +{ + None = 0, + Audit = 1, + Access = 2, + Owner = 4, + Group = 8, + All = 15 +} + +// Namespace: System.Security.AccessControl +public enum AccessControlType // TypeDefIndex: 1203 +{ + Allow = 0, + Deny = 1 +} + +// Namespace: System.Security.AccessControl +public abstract class AccessRule : AuthorizationRule // TypeDefIndex: 1204 +{ + // Fields + private AccessControlType type; // 0x1C + + // Properties + public AccessControlType AccessControlType { get; } // 0x00210984 + + // Methods + protected void .ctor(IdentityReference identity, int accessMask, bool isInherited, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AccessControlType type); // 0x002106CC +} + +// Namespace: System.Security.AccessControl +public sealed class AceEnumerator : IEnumerator // TypeDefIndex: 1205 +{ + // Fields + private GenericAcl owner; // 0x08 + private int current; // 0x0C + + // Properties + private object System.Collections.IEnumerator.Current { get; } // 0x002109B8 + public GenericAce Current { get; } // 0x002109BC + + // Methods + internal void .ctor(GenericAcl owner); // 0x0021098C + public bool MoveNext(); // 0x00210A08 + public void Reset(); // 0x00210A64 +} + +// Namespace: System.Security.AccessControl +public enum AceFlags : byte // TypeDefIndex: 1206 +{ + None = 0, + ObjectInherit = 1, + ContainerInherit = 2, + NoPropagateInherit = 4, + InheritOnly = 8, + InheritanceFlags = 15, + Inherited = 16, + SuccessfulAccess = 64, + FailedAccess = 128, + AuditFlags = 192 +} + +// Namespace: System.Security.AccessControl +public enum AceQualifier // TypeDefIndex: 1207 +{ + AccessAllowed = 0, + AccessDenied = 1, + SystemAudit = 2, + SystemAlarm = 3 +} + +// Namespace: System.Security.AccessControl +public enum AceType // TypeDefIndex: 1208 +{ + AccessAllowed = 0, + AccessDenied = 1, + SystemAudit = 2, + SystemAlarm = 3, + AccessAllowedCompound = 4, + AccessAllowedObject = 5, + AccessDeniedObject = 6, + SystemAuditObject = 7, + SystemAlarmObject = 8, + AccessAllowedCallback = 9, + AccessDeniedCallback = 10, + AccessAllowedCallbackObject = 11, + AccessDeniedCallbackObject = 12, + SystemAuditCallback = 13, + SystemAlarmCallback = 14, + SystemAuditCallbackObject = 15, + SystemAlarmCallbackObject = 16, + MaxDefinedAceType = 16 +} + +// Namespace: System.Security.AccessControl +public enum AuditFlags // TypeDefIndex: 1209 +{ + None = 0, + Success = 1, + Failure = 2 +} + +// Namespace: System.Security.AccessControl +public abstract class AuditRule : AuthorizationRule // TypeDefIndex: 1210 +{ + // Fields + private AuditFlags auditFlags; // 0x1C + + // Properties + public AuditFlags AuditFlags { get; } // 0x00210BAC + + // Methods + protected void .ctor(IdentityReference identity, int accessMask, bool isInherited, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AuditFlags auditFlags); // 0x00210A70 +} + +// Namespace: System.Security.AccessControl +public abstract class AuthorizationRule // TypeDefIndex: 1211 +{ + // Fields + private IdentityReference identity; // 0x08 + private int accessMask; // 0x0C + private bool isInherited; // 0x10 + private InheritanceFlags inheritanceFlags; // 0x14 + private PropagationFlags propagationFlags; // 0x18 + + // Properties + public IdentityReference IdentityReference { get; } // 0x00210BBC + public InheritanceFlags InheritanceFlags { get; } // 0x00210BC4 + public bool IsInherited { get; } // 0x00210BCC + public PropagationFlags PropagationFlags { get; } // 0x00210BD4 + protected internal int AccessMask { get; } // 0x00210BDC + + // Methods + internal void .ctor(); // 0x00210BB4 + protected internal void .ctor(IdentityReference identity, int accessMask, bool isInherited, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags); // 0x00210854 +} + +// Namespace: System.Security.AccessControl +public sealed class AuthorizationRuleCollection : ReadOnlyCollectionBase // TypeDefIndex: 1212 +{ + // Properties + public AuthorizationRule Item { get; } // 0x00210C2C + + // Methods + private void .ctor(AuthorizationRule[] rules); // 0x00210BE4 + public void CopyTo(AuthorizationRule[] rules, int index); // 0x00210CFC +} + +// Namespace: System.Security.AccessControl +public sealed class CommonAce : QualifiedAce // TypeDefIndex: 1213 +{ + // Properties + public override int BinaryLength { get; } // 0x00210D8C + + // Methods + public void .ctor(AceFlags flags, AceQualifier qualifier, int accessMask, SecurityIdentifier sid, bool isCallback, byte[] opaque); // 0x00210D40 + public override void GetBinaryForm(byte[] binaryForm, int offset); // 0x00210E14 + public static int MaxOpaqueLength(bool isCallback); // 0x00210E9C +} + +// Namespace: System.Security.AccessControl +public abstract class CommonAcl : GenericAcl // TypeDefIndex: 1214 +{ + // Fields + private const int default_capacity = 10; // 0x00 + private bool is_container; // 0x08 + private bool is_ds; // 0x09 + private byte revision; // 0x0A + private List`1 list; // 0x0C + + // Properties + public sealed override int BinaryLength { get; } // 0x0021101C + public sealed override int Count { get; } // 0x002110A4 + public bool IsCanonical { get; } // 0x00211108 + public bool IsContainer { get; } // 0x00211190 + public bool IsDS { get; } // 0x00211198 + public sealed override GenericAce Item { get; set; } // 0x002111A0 0x00211220 + public sealed override byte Revision { get; } // 0x002112A8 + + // Methods + internal void .ctor(bool isContainer, bool isDS, byte revision); // 0x00210F24 + internal void .ctor(bool isContainer, bool isDS, byte revision, int capacity); // 0x00210F44 + public sealed override void GetBinaryForm(byte[] binaryForm, int offset); // 0x002112B0 + public void Purge(SecurityIdentifier sid); // 0x00211338 + public void RemoveInheritedAces(); // 0x002113C0 +} + +// Namespace: System.Security.AccessControl +public abstract class CommonObjectSecurity : ObjectSecurity // TypeDefIndex: 1215 +{ + // Fields + private List`1 access_rules; // 0x10 + private List`1 audit_rules; // 0x14 + + // Methods + protected void .ctor(bool isContainer); // 0x00211448 + public AuthorizationRuleCollection GetAccessRules(bool includeExplicit, bool includeInherited, Type targetType); // 0x00211514 + public AuthorizationRuleCollection GetAuditRules(bool includeExplicit, bool includeInherited, Type targetType); // 0x0021159C + protected void AddAccessRule(AccessRule rule); // 0x00211624 + protected bool RemoveAccessRule(AccessRule rule); // 0x002116AC + protected void RemoveAccessRuleAll(AccessRule rule); // 0x00211734 + protected void RemoveAccessRuleSpecific(AccessRule rule); // 0x002117BC + protected void ResetAccessRule(AccessRule rule); // 0x00211844 + protected void SetAccessRule(AccessRule rule); // 0x002118CC + protected override bool ModifyAccess(AccessControlModification modification, AccessRule rule, out bool modified); // 0x00211954 + protected void AddAuditRule(AuditRule rule); // 0x00211BE8 + protected bool RemoveAuditRule(AuditRule rule); // 0x00211C70 + protected void RemoveAuditRuleAll(AuditRule rule); // 0x00211CF8 + protected void RemoveAuditRuleSpecific(AuditRule rule); // 0x00211D80 + protected void SetAuditRule(AuditRule rule); // 0x00211E08 + protected override bool ModifyAudit(AccessControlModification modification, AuditRule rule, out bool modified); // 0x00211E90 +} + +// Namespace: System.Security.AccessControl +public sealed class CommonSecurityDescriptor : GenericSecurityDescriptor // TypeDefIndex: 1216 +{ + // Fields + private bool isContainer; // 0x08 + private bool isDS; // 0x09 + private ControlFlags flags; // 0x0C + private SecurityIdentifier owner; // 0x10 + private SecurityIdentifier group; // 0x14 + private SystemAcl systemAcl; // 0x18 + private DiscretionaryAcl discretionaryAcl; // 0x1C + + // Properties + public override ControlFlags ControlFlags { get; } // 0x0042BD84 + public DiscretionaryAcl DiscretionaryAcl { get; set; } // 0x0042BD8C 0x0042BD94 + public override SecurityIdentifier Group { get; set; } // 0x0042BD9C 0x0042BDA4 + public bool IsContainer { get; } // 0x0042BDAC + public bool IsDiscretionaryAclCanonical { get; } // 0x0042BDB4 + public bool IsDS { get; } // 0x0042BE3C + public bool IsSystemAclCanonical { get; } // 0x0042BE44 + public override SecurityIdentifier Owner { get; set; } // 0x0042BECC 0x0042BED4 + public SystemAcl SystemAcl { get; set; } // 0x0042BEDC 0x0042BEE4 + + // Methods + public void .ctor(bool isContainer, bool isDS, RawSecurityDescriptor rawSecurityDescriptor); // 0x0042BAE4 + public void .ctor(bool isContainer, bool isDS, string sddlForm); // 0x0042BB84 + public void .ctor(bool isContainer, bool isDS, byte[] binaryForm, int offset); // 0x0042BC1C + public void .ctor(bool isContainer, bool isDS, ControlFlags flags, SecurityIdentifier owner, SecurityIdentifier group, SystemAcl systemAcl, DiscretionaryAcl discretionaryAcl); // 0x0042BCB4 + public void PurgeAccessControl(SecurityIdentifier sid); // 0x0042BEEC + public void PurgeAudit(SecurityIdentifier sid); // 0x0042BF74 + public void SetDiscretionaryAclProtection(bool isProtected, bool preserveInheritance); // 0x0042BFFC + public void SetSystemAclProtection(bool isProtected, bool preserveInheritance); // 0x0042C084 +} + +// Namespace: System.Security.AccessControl +public sealed class CompoundAce : KnownAce // TypeDefIndex: 1217 +{ + // Fields + private CompoundAceType compound_ace_type; // 0x20 + + // Properties + public override int BinaryLength { get; } // 0x0042C178 + public CompoundAceType CompoundAceType { get; set; } // 0x0042C200 0x0042C208 + + // Methods + public void .ctor(AceFlags flags, int accessMask, CompoundAceType compoundAceType, SecurityIdentifier sid); // 0x0042C10C + public override void GetBinaryForm(byte[] binaryForm, int offset); // 0x0042C210 +} + +// Namespace: System.Security.AccessControl +public enum CompoundAceType // TypeDefIndex: 1218 +{ + Impersonation = 1 +} + +// Namespace: System.Security.AccessControl +public enum ControlFlags // TypeDefIndex: 1219 +{ + None = 0, + OwnerDefaulted = 1, + GroupDefaulted = 2, + DiscretionaryAclPresent = 4, + DiscretionaryAclDefaulted = 8, + SystemAclPresent = 16, + SystemAclDefaulted = 32, + DiscretionaryAclUntrusted = 64, + ServerSecurity = 128, + DiscretionaryAclAutoInheritRequired = 256, + SystemAclAutoInheritRequired = 512, + DiscretionaryAclAutoInherited = 1024, + SystemAclAutoInherited = 2048, + DiscretionaryAclProtected = 4096, + SystemAclProtected = 8192, + RMControlValid = 16384, + SelfRelative = 32768 +} + +// Namespace: System.Security.AccessControl +public sealed class CryptoKeyAccessRule : AccessRule // TypeDefIndex: 1220 +{ + // Fields + private CryptoKeyRights rights; // 0x20 + + // Properties + public CryptoKeyRights CryptoKeyRights { get; } // 0x0042C388 + + // Methods + public void .ctor(IdentityReference identity, CryptoKeyRights cryptoKeyRights, AccessControlType type); // 0x0042C298 + public void .ctor(string identity, CryptoKeyRights cryptoKeyRights, AccessControlType type); // 0x0042C2DC +} + +// Namespace: System.Security.AccessControl +public sealed class CryptoKeyAuditRule : AuditRule // TypeDefIndex: 1221 +{ + // Fields + private CryptoKeyRights rights; // 0x20 + + // Properties + public CryptoKeyRights CryptoKeyRights { get; } // 0x0042C47C + + // Methods + public void .ctor(IdentityReference identity, CryptoKeyRights cryptoKeyRights, AuditFlags flags); // 0x0042C390 + public void .ctor(string identity, CryptoKeyRights cryptoKeyRights, AuditFlags flags); // 0x0042C3D0 +} + +// Namespace: System.Security.AccessControl +public enum CryptoKeyRights // TypeDefIndex: 1222 +{ + GenericRead = -2147483648, + ReadData = 1, + WriteData = 2, + ReadExtendedAttributes = 8, + WriteExtendedAttributes = 16, + ReadAttributes = 128, + WriteAttributes = 256, + Delete = 65536, + ReadPermissions = 131072, + ChangePermissions = 262144, + TakeOwnership = 524288, + Synchronize = 1048576, + FullControl = 2032027, + GenericAll = 268435456, + GenericExecute = 536870912, + GenericWrite = 1073741824 +} + +// Namespace: System.Security.AccessControl +public sealed class CryptoKeySecurity : NativeObjectSecurity // TypeDefIndex: 1223 +{ + // Properties + public override Type AccessRightType { get; } // 0x0042C4A8 + public override Type AccessRuleType { get; } // 0x0042C538 + public override Type AuditRuleType { get; } // 0x0042C5C8 + + // Methods + public void .ctor(); // 0x0042C484 + public void .ctor(CommonSecurityDescriptor securityDescriptor); // 0x0042C49C + public sealed override AccessRule AccessRuleFactory(IdentityReference identityReference, int accessMask, bool isInherited, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AccessControlType type); // 0x0042C658 + public void AddAccessRule(CryptoKeyAccessRule rule); // 0x0042C6F8 + public bool RemoveAccessRule(CryptoKeyAccessRule rule); // 0x0042C780 + public void RemoveAccessRuleAll(CryptoKeyAccessRule rule); // 0x0042C808 + public void RemoveAccessRuleSpecific(CryptoKeyAccessRule rule); // 0x0042C890 + public void ResetAccessRule(CryptoKeyAccessRule rule); // 0x0042C918 + public void SetAccessRule(CryptoKeyAccessRule rule); // 0x0042C9A0 + public sealed override AuditRule AuditRuleFactory(IdentityReference identityReference, int accessMask, bool isInherited, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AuditFlags flags); // 0x0042CA28 + public void AddAuditRule(CryptoKeyAuditRule rule); // 0x0042CAC8 + public bool RemoveAuditRule(CryptoKeyAuditRule rule); // 0x0042CB50 + public void RemoveAuditRuleAll(CryptoKeyAuditRule rule); // 0x0042CBD8 + public void RemoveAuditRuleSpecific(CryptoKeyAuditRule rule); // 0x0042CC60 + public void SetAuditRule(CryptoKeyAuditRule rule); // 0x0042CCE8 +} + +// Namespace: System.Security.AccessControl +public sealed class CustomAce : GenericAce // TypeDefIndex: 1224 +{ + // Fields + private byte[] opaque; // 0x18 + public static readonly int MaxOpaqueLength; // 0x00 + + // Properties + public override int BinaryLength { get; } // 0x0042CF60 + public int OpaqueLength { get; } // 0x0042CFE8 + + // Methods + public void .ctor(AceType type, AceFlags flags, byte[] opaque); // 0x0042CD70 + public override void GetBinaryForm(byte[] binaryForm, int offset); // 0x0042D00C + public byte[] GetOpaque(); // 0x0042D094 + public void SetOpaque(byte[] opaque); // 0x0042CE58 +} + +// Namespace: System.Security.AccessControl +public abstract class DirectoryObjectSecurity : ObjectSecurity // TypeDefIndex: 1225 +{ + // Methods + protected void .ctor(); // 0x0042D14C + protected void .ctor(CommonSecurityDescriptor securityDescriptor); // 0x0042D194 + public virtual AccessRule AccessRuleFactory(IdentityReference identityReference, int accessMask, bool isInherited, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AccessControlType type, Guid objectType, Guid inheritedObjectType); // 0x0042D274 + public virtual AuditRule AuditRuleFactory(IdentityReference identityReference, int accessMask, bool isInherited, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AuditFlags flags, Guid objectType, Guid inheritedObjectType); // 0x0042D2FC + public AuthorizationRuleCollection GetAccessRules(bool includeExplicit, bool includeInherited, Type targetType); // 0x0042D384 + public AuthorizationRuleCollection GetAuditRules(bool includeExplicit, bool includeInherited, Type targetType); // 0x0042D40C + protected void AddAccessRule(ObjectAccessRule rule); // 0x0042D494 + protected void AddAuditRule(ObjectAuditRule rule); // 0x0042D51C + protected override bool ModifyAccess(AccessControlModification modification, AccessRule rule, out bool modified); // 0x0042D5A4 + protected override bool ModifyAudit(AccessControlModification modification, AuditRule rule, out bool modified); // 0x0042D62C + protected bool RemoveAccessRule(ObjectAccessRule rule); // 0x0042D6B4 + protected void RemoveAccessRuleAll(ObjectAccessRule rule); // 0x0042D73C + protected void RemoveAccessRuleSpecific(ObjectAccessRule rule); // 0x0042D7C4 + protected bool RemoveAuditRule(ObjectAuditRule rule); // 0x0042D84C + protected void RemoveAuditRuleAll(ObjectAuditRule rule); // 0x0042D8D4 + protected void RemoveAuditRuleSpecific(ObjectAuditRule rule); // 0x0042D95C + protected void ResetAccessRule(ObjectAccessRule rule); // 0x0042D9E4 + protected void SetAccessRule(ObjectAccessRule rule); // 0x0042DA6C + protected void SetAuditRule(ObjectAuditRule rule); // 0x0042DAF4 +} + +// Namespace: System.Security.AccessControl +public sealed class DirectorySecurity : FileSystemSecurity // TypeDefIndex: 1226 +{ + // Methods + public void .ctor(); // 0x0042DB7C + public void .ctor(string name, AccessControlSections includeSections); // 0x0042DC20 +} + +// Namespace: System.Security.AccessControl +public sealed class DiscretionaryAcl : CommonAcl // TypeDefIndex: 1227 +{ + // Methods + public void .ctor(bool isContainer, bool isDS, int capacity); // 0x0042DCC4 + public void .ctor(bool isContainer, bool isDS, RawAcl rawAcl); // 0x0042DDA4 + public void .ctor(bool isContainer, bool isDS, byte revision, int capacity); // 0x0042DD80 + public void AddAccess(AccessControlType accessType, SecurityIdentifier sid, int accessMask, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags); // 0x0042DDC8 + public void AddAccess(AccessControlType accessType, SecurityIdentifier sid, int accessMask, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, ObjectAceFlags objectFlags, Guid objectType, Guid inheritedObjectType); // 0x0042DE50 + public bool RemoveAccess(AccessControlType accessType, SecurityIdentifier sid, int accessMask, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags); // 0x0042DED8 + public bool RemoveAccess(AccessControlType accessType, SecurityIdentifier sid, int accessMask, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, ObjectAceFlags objectFlags, Guid objectType, Guid inheritedObjectType); // 0x0042DF60 + public void RemoveAccessSpecific(AccessControlType accessType, SecurityIdentifier sid, int accessMask, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags); // 0x0042DFE8 + public void RemoveAccessSpecific(AccessControlType accessType, SecurityIdentifier sid, int accessMask, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, ObjectAceFlags objectFlags, Guid objectType, Guid inheritedObjectType); // 0x0042E070 + public void SetAccess(AccessControlType accessType, SecurityIdentifier sid, int accessMask, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags); // 0x0042E0F8 + public void SetAccess(AccessControlType accessType, SecurityIdentifier sid, int accessMask, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, ObjectAceFlags objectFlags, Guid objectType, Guid inheritedObjectType); // 0x0042E180 +} + +// Namespace: System.Security.AccessControl +public sealed class EventWaitHandleAccessRule : AccessRule // TypeDefIndex: 1228 +{ + // Fields + private EventWaitHandleRights rights; // 0x20 + + // Properties + public EventWaitHandleRights EventWaitHandleRights { get; } // 0x0042E2F8 + + // Methods + public void .ctor(IdentityReference identity, EventWaitHandleRights eventRights, AccessControlType type); // 0x0042E208 + public void .ctor(string identity, EventWaitHandleRights eventRights, AccessControlType type); // 0x0042E24C +} + +// Namespace: System.Security.AccessControl +public sealed class EventWaitHandleAuditRule : AuditRule // TypeDefIndex: 1229 +{ + // Fields + private EventWaitHandleRights rights; // 0x20 + + // Properties + public EventWaitHandleRights EventWaitHandleRights { get; } // 0x0042E54C + + // Methods + public void .ctor(IdentityReference identity, EventWaitHandleRights eventRights, AuditFlags flags); // 0x0042E300 +} + +// Namespace: System.Security.AccessControl +public enum EventWaitHandleRights // TypeDefIndex: 1230 +{ + Modify = 2, + Delete = 65536, + ReadPermissions = 131072, + ChangePermissions = 262144, + TakeOwnership = 524288, + Synchronize = 1048576, + FullControl = 2031619 +} + +// Namespace: System.Security.AccessControl +public sealed class EventWaitHandleSecurity : NativeObjectSecurity // TypeDefIndex: 1231 +{ + // Properties + public override Type AccessRightType { get; } // 0x0042E5E8 + public override Type AccessRuleType { get; } // 0x0042E678 + public override Type AuditRuleType { get; } // 0x0042E708 + + // Methods + public void .ctor(); // 0x0042E554 + public override AccessRule AccessRuleFactory(IdentityReference identityReference, int accessMask, bool isInherited, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AccessControlType type); // 0x0042E798 + public void AddAccessRule(EventWaitHandleAccessRule rule); // 0x0042E838 + public bool RemoveAccessRule(EventWaitHandleAccessRule rule); // 0x0042E8C0 + public void RemoveAccessRuleAll(EventWaitHandleAccessRule rule); // 0x0042E948 + public void RemoveAccessRuleSpecific(EventWaitHandleAccessRule rule); // 0x0042E9D0 + public void ResetAccessRule(EventWaitHandleAccessRule rule); // 0x0042EA58 + public void SetAccessRule(EventWaitHandleAccessRule rule); // 0x0042EAE0 + public override AuditRule AuditRuleFactory(IdentityReference identityReference, int accessMask, bool isInherited, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AuditFlags flags); // 0x0042EB68 + public void AddAuditRule(EventWaitHandleAuditRule rule); // 0x0042EBF0 + public bool RemoveAuditRule(EventWaitHandleAuditRule rule); // 0x0042EC78 + public void RemoveAuditRuleAll(EventWaitHandleAuditRule rule); // 0x0042ED00 + public void RemoveAuditRuleSpecific(EventWaitHandleAuditRule rule); // 0x0042ED88 + public void SetAuditRule(EventWaitHandleAuditRule rule); // 0x0042EE10 +} + +// Namespace: System.Security.AccessControl +public sealed class FileSecurity : FileSystemSecurity // TypeDefIndex: 1232 +{ + // Methods + public void .ctor(); // 0x0042EE98 + public void .ctor(string fileName, AccessControlSections includeSections); // 0x0042EF34 +} + +// Namespace: System.Security.AccessControl +public sealed class FileSystemAccessRule : AccessRule // TypeDefIndex: 1233 +{ + // Fields + private FileSystemRights rights; // 0x20 + + // Properties + public FileSystemRights FileSystemRights { get; } // 0x0042F1B4 + + // Methods + public void .ctor(IdentityReference identity, FileSystemRights fileSystemRights, AccessControlType type); // 0x0042EFD0 + public void .ctor(string identity, FileSystemRights fileSystemRights, AccessControlType type); // 0x0042F054 + public void .ctor(IdentityReference identity, FileSystemRights fileSystemRights, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AccessControlType type); // 0x0042F00C + public void .ctor(string identity, FileSystemRights fileSystemRights, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AccessControlType type); // 0x0042F100 +} + +// Namespace: System.Security.AccessControl +public sealed class FileSystemAuditRule : AuditRule // TypeDefIndex: 1234 +{ + // Fields + private FileSystemRights rights; // 0x20 + + // Properties + public FileSystemRights FileSystemRights { get; } // 0x0042F3A4 + + // Methods + public void .ctor(IdentityReference identity, FileSystemRights fileSystemRights, AuditFlags flags); // 0x0042F1BC + public void .ctor(string identity, FileSystemRights fileSystemRights, AuditFlags flags); // 0x0042F244 + public void .ctor(IdentityReference identity, FileSystemRights fileSystemRights, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AuditFlags flags); // 0x0042F1FC + public void .ctor(string identity, FileSystemRights fileSystemRights, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AuditFlags flags); // 0x0042F2F0 +} + +// Namespace: System.Security.AccessControl +public enum FileSystemRights // TypeDefIndex: 1235 +{ + ListDirectory = 1, + ReadData = 1, + CreateFiles = 2, + WriteData = 2, + AppendData = 4, + CreateDirectories = 4, + ReadExtendedAttributes = 8, + WriteExtendedAttributes = 16, + ExecuteFile = 32, + Traverse = 32, + DeleteSubdirectoriesAndFiles = 64, + ReadAttributes = 128, + WriteAttributes = 256, + Write = 278, + Delete = 65536, + ReadPermissions = 131072, + Read = 131209, + ReadAndExecute = 131241, + Modify = 197055, + ChangePermissions = 262144, + TakeOwnership = 524288, + Synchronize = 1048576, + FullControl = 2032127 +} + +// Namespace: System.Security.AccessControl +public abstract class FileSystemSecurity : NativeObjectSecurity // TypeDefIndex: 1236 +{ + // Properties + public override Type AccessRightType { get; } // 0x0042F3BC + public override Type AccessRuleType { get; } // 0x0042F44C + public override Type AuditRuleType { get; } // 0x0042F4DC + + // Methods + internal void .ctor(bool isContainer); // 0x0042DC18 + internal void .ctor(bool isContainer, string name, AccessControlSections includeSections); // 0x0042DCBC + public sealed override AccessRule AccessRuleFactory(IdentityReference identityReference, int accessMask, bool isInherited, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AccessControlType type); // 0x0042F56C + public void AddAccessRule(FileSystemAccessRule rule); // 0x0042F614 + public bool RemoveAccessRule(FileSystemAccessRule rule); // 0x0042F69C + public void RemoveAccessRuleAll(FileSystemAccessRule rule); // 0x0042F724 + public void RemoveAccessRuleSpecific(FileSystemAccessRule rule); // 0x0042F7AC + public void ResetAccessRule(FileSystemAccessRule rule); // 0x0042F834 + public void SetAccessRule(FileSystemAccessRule rule); // 0x0042F8BC + public sealed override AuditRule AuditRuleFactory(IdentityReference identityReference, int accessMask, bool isInherited, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AuditFlags flags); // 0x0042F944 + public void AddAuditRule(FileSystemAuditRule rule); // 0x0042F9EC + public bool RemoveAuditRule(FileSystemAuditRule rule); // 0x0042FA74 + public void RemoveAuditRuleAll(FileSystemAuditRule rule); // 0x0042FAFC + public void RemoveAuditRuleSpecific(FileSystemAuditRule rule); // 0x0042FB84 + public void SetAuditRule(FileSystemAuditRule rule); // 0x0042FC0C +} + +// Namespace: System.Security.AccessControl +public abstract class GenericAce // TypeDefIndex: 1237 +{ + // Fields + private InheritanceFlags inheritance; // 0x08 + private PropagationFlags propagation; // 0x0C + private AceFlags aceflags; // 0x10 + private AceType ace_type; // 0x14 + + // Properties + public AceFlags AceFlags { get; set; } // 0x0042FCBC 0x0042FCC4 + public AceType AceType { get; } // 0x0042FCCC + public AuditFlags AuditFlags { get; } // 0x0042FCD4 + public abstract int BinaryLength { get; } + public InheritanceFlags InheritanceFlags { get; } // 0x0042FCE8 + public bool IsInherited { get; } // 0x0042FCF0 + public PropagationFlags PropagationFlags { get; } // 0x0042FCF8 + + // Methods + internal void .ctor(InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags); // 0x0042FC94 + internal void .ctor(AceType type); // 0x0042CD9C + public GenericAce Copy(); // 0x0042FD00 + public static GenericAce CreateFromBinaryForm(byte[] binaryForm, int offset); // 0x0042FD88 + public sealed override bool Equals(object o); // 0x0042FE10 + public abstract void GetBinaryForm(byte[] binaryForm, int offset); + public sealed override int GetHashCode(); // 0x0042FE98 + public static bool op_Equality(GenericAce left, GenericAce right); // 0x0042FF20 + public static bool op_Inequality(GenericAce left, GenericAce right); // 0x0042FFA8 +} + +// Namespace: System.Security.AccessControl +public abstract class GenericAcl : IEnumerable, ICollection // TypeDefIndex: 1238 +{ + // Fields + public static readonly byte AclRevision; // 0x00 + public static readonly byte AclRevisionDS; // 0x01 + public static readonly int MaxBinaryLength; // 0x04 + + // Properties + public abstract int BinaryLength { get; } + public abstract int Count { get; } + public bool IsSynchronized { get; } // 0x004303C8 + public abstract GenericAce Item { get; set; } + public abstract byte Revision { get; } + public object SyncRoot { get; } // 0x004303D0 + + // Methods + protected void .ctor(); // 0x00430030 + private static void .cctor(); // 0x00430038 + private void System.Collections.ICollection.CopyTo(Array array, int index); // 0x004300C0 + private IEnumerator System.Collections.IEnumerable.GetEnumerator(); // 0x00430350 + public void CopyTo(GenericAce[] array, int index); // 0x00430164 + public abstract void GetBinaryForm(byte[] binaryForm, int offset); + public AceEnumerator GetEnumerator(); // 0x00430354 +} + +// Namespace: System.Security.AccessControl +public abstract class GenericSecurityDescriptor // TypeDefIndex: 1239 +{ + // Properties + public int BinaryLength { get; } // 0x004303D4 + public abstract ControlFlags ControlFlags { get; } + public abstract SecurityIdentifier Group { get; set; } + public abstract SecurityIdentifier Owner { get; set; } + public static byte Revision { get; } // 0x0043045C + + // Methods + protected void .ctor(); // 0x0042BB7C + public void GetBinaryForm(byte[] binaryForm, int offset); // 0x004304E4 + public string GetSddlForm(AccessControlSections includeSections); // 0x0043056C + public static bool IsSddlConversionSupported(); // 0x004305F4 +} + +// Namespace: System.Security.AccessControl +public enum InheritanceFlags // TypeDefIndex: 1240 +{ + None = 0, + ContainerInherit = 1, + ObjectInherit = 2 +} + +// Namespace: System.Security.AccessControl +public abstract class KnownAce : GenericAce // TypeDefIndex: 1241 +{ + // Fields + private int access_mask; // 0x18 + private SecurityIdentifier identifier; // 0x1C + + // Properties + public int AccessMask { get; set; } // 0x0043067C 0x00430684 + public SecurityIdentifier SecurityIdentifier { get; set; } // 0x0043068C 0x00430694 + + // Methods + internal void .ctor(InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags); // 0x0042C150 +} + +// Namespace: System.Security.AccessControl +public sealed class MutexAccessRule : AccessRule // TypeDefIndex: 1242 +{ + // Fields + private MutexRights rights; // 0x20 + + // Properties + public MutexRights MutexRights { get; } // 0x00430788 + + // Methods + public void .ctor(IdentityReference identity, MutexRights eventRights, AccessControlType type); // 0x0043069C + public void .ctor(string identity, MutexRights eventRights, AccessControlType type); // 0x004306DC +} + +// Namespace: System.Security.AccessControl +public sealed class MutexAuditRule : AuditRule // TypeDefIndex: 1243 +{ + // Fields + private MutexRights rights; // 0x20 + + // Properties + public MutexRights MutexRights { get; } // 0x004307D0 + + // Methods + public void .ctor(IdentityReference identity, MutexRights eventRights, AuditFlags flags); // 0x00430790 +} + +// Namespace: System.Security.AccessControl +public enum MutexRights // TypeDefIndex: 1244 +{ + Modify = 1, + Delete = 65536, + ReadPermissions = 131072, + ChangePermissions = 262144, + TakeOwnership = 524288, + Synchronize = 1048576, + FullControl = 2031617 +} + +// Namespace: System.Security.AccessControl +public sealed class MutexSecurity : NativeObjectSecurity // TypeDefIndex: 1245 +{ + // Properties + public override Type AccessRightType { get; } // 0x004307F0 + public override Type AccessRuleType { get; } // 0x00430880 + public override Type AuditRuleType { get; } // 0x00430910 + + // Methods + public void .ctor(); // 0x004307D8 + public void .ctor(string name, AccessControlSections includeSections); // 0x004307E4 + public override AccessRule AccessRuleFactory(IdentityReference identityReference, int accessMask, bool isInherited, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AccessControlType type); // 0x004309A0 + public void AddAccessRule(MutexAccessRule rule); // 0x00430A40 + public bool RemoveAccessRule(MutexAccessRule rule); // 0x00430AC8 + public void RemoveAccessRuleAll(MutexAccessRule rule); // 0x00430B50 + public void RemoveAccessRuleSpecific(MutexAccessRule rule); // 0x00430BD8 + public void ResetAccessRule(MutexAccessRule rule); // 0x00430C60 + public void SetAccessRule(MutexAccessRule rule); // 0x00430CE8 + public override AuditRule AuditRuleFactory(IdentityReference identityReference, int accessMask, bool isInherited, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AuditFlags flags); // 0x00430D70 + public void AddAuditRule(MutexAuditRule rule); // 0x00430E10 + public bool RemoveAuditRule(MutexAuditRule rule); // 0x00430E98 + public void RemoveAuditRuleAll(MutexAuditRule rule); // 0x00430F20 + public void RemoveAuditRuleSpecific(MutexAuditRule rule); // 0x00430FA8 + public void SetAuditRule(MutexAuditRule rule); // 0x00431030 +} + +// Namespace: System.Security.AccessControl +public abstract class NativeObjectSecurity : CommonObjectSecurity // TypeDefIndex: 1246 +{ + // Methods + internal void .ctor(); // 0x0042C490 + protected void .ctor(bool isContainer, ResourceType resourceType); // 0x0042F3AC + protected void .ctor(bool isContainer, ResourceType resourceType, ExceptionFromErrorCode exceptionFromErrorCode, object exceptionContext); // 0x004310B8 + protected void .ctor(bool isContainer, ResourceType resourceType, SafeHandle handle, AccessControlSections includeSections); // 0x004310C0 + protected void .ctor(bool isContainer, ResourceType resourceType, string name, AccessControlSections includeSections); // 0x0042F3B4 + protected void .ctor(bool isContainer, ResourceType resourceType, SafeHandle handle, AccessControlSections includeSections, ExceptionFromErrorCode exceptionFromErrorCode, object exceptionContext); // 0x004310C8 + protected void .ctor(bool isContainer, ResourceType resourceType, string name, AccessControlSections includeSections, ExceptionFromErrorCode exceptionFromErrorCode, object exceptionContext); // 0x004310D0 + protected sealed override void Persist(SafeHandle handle, AccessControlSections includeSections); // 0x004310D8 + protected sealed override void Persist(string name, AccessControlSections includeSections); // 0x00431160 + protected void Persist(SafeHandle handle, AccessControlSections includeSections, object exceptionContext); // 0x004311E8 + protected void Persist(string name, AccessControlSections includeSections, object exceptionContext); // 0x00431270 +} + +// Namespace: +protected internal delegate Exception ExceptionFromErrorCode(int errorCode, string name, SafeHandle handle, object context); // TypeDefIndex: 1247; 0x0043130C + +// Namespace: System.Security.AccessControl +public abstract class ObjectAccessRule : AccessRule // TypeDefIndex: 1248 +{ + // Fields + private Guid object_type; // 0x20 + private Guid inherited_object_type; // 0x30 + + // Properties + public Guid InheritedObjectType { get; } // 0x00431688 + public ObjectAceFlags ObjectFlags { get; } // 0x00431698 + public Guid ObjectType { get; } // 0x004317E0 + + // Methods + protected void .ctor(IdentityReference identity, int accessMask, bool isInherited, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, Guid objectType, Guid inheritedObjectType, AccessControlType type); // 0x0043161C +} + +// Namespace: System.Security.AccessControl +public sealed class ObjectAce : QualifiedAce // TypeDefIndex: 1249 +{ + // Fields + private Guid object_ace_type; // 0x2C + private Guid inherited_object_type; // 0x3C + private ObjectAceFlags object_ace_flags; // 0x4C + + // Properties + public override int BinaryLength { get; } // 0x004318BC + public Guid InheritedObjectAceType { get; set; } // 0x00431944 0x00431954 + public ObjectAceFlags ObjectAceFlags { get; set; } // 0x00431964 0x0043196C + public Guid ObjectAceType { get; set; } // 0x00431974 0x00431984 + + // Methods + public void .ctor(AceFlags aceFlags, AceQualifier qualifier, int accessMask, SecurityIdentifier sid, ObjectAceFlags flags, Guid type, Guid inheritedType, bool isCallback, byte[] opaque); // 0x004317F0 + public override void GetBinaryForm(byte[] binaryForm, int offset); // 0x00431994 + public static int MaxOpaqueLength(bool isCallback); // 0x00431A1C +} + +// Namespace: System.Security.AccessControl +public enum ObjectAceFlags // TypeDefIndex: 1250 +{ + None = 0, + ObjectAceTypePresent = 1, + InheritedObjectAceTypePresent = 2 +} + +// Namespace: System.Security.AccessControl +public abstract class ObjectAuditRule : AuditRule // TypeDefIndex: 1251 +{ + // Fields + private Guid inherited_object_type; // 0x20 + private Guid object_type; // 0x30 + + // Properties + public Guid InheritedObjectType { get; } // 0x00431B14 + public ObjectAceFlags ObjectFlags { get; } // 0x00431B24 + public Guid ObjectType { get; } // 0x00431C6C + + // Methods + protected void .ctor(IdentityReference identity, int accessMask, bool isInherited, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, Guid objectType, Guid inheritedObjectType, AuditFlags auditFlags); // 0x00431AA4 +} + +// Namespace: System.Security.AccessControl +public abstract class ObjectSecurity // TypeDefIndex: 1252 +{ + // Fields + private bool is_container; // 0x08 + private bool is_ds; // 0x09 + private bool access_rules_modified; // 0x0A + private bool audit_rules_modified; // 0x0B + private bool group_modified; // 0x0C + private bool owner_modified; // 0x0D + + // Properties + public abstract Type AccessRightType { get; } + public abstract Type AccessRuleType { get; } + public abstract Type AuditRuleType { get; } + public bool AreAccessRulesCanonical { get; } // 0x00431C84 + public bool AreAccessRulesProtected { get; } // 0x00431D0C + public bool AreAuditRulesCanonical { get; } // 0x00431D94 + public bool AreAuditRulesProtected { get; } // 0x00431E1C + protected bool AccessRulesModified { get; set; } // 0x00431EA4 0x00431EAC + protected bool AuditRulesModified { get; set; } // 0x00431EB4 0x00431EBC + protected bool GroupModified { get; set; } // 0x00431EC4 0x00431ECC + protected bool IsContainer { get; } // 0x00431ED4 + protected bool IsDS { get; } // 0x00431EDC + protected bool OwnerModified { get; set; } // 0x00431EE4 0x00431EEC + + // Methods + internal void .ctor(); // 0x00431C7C + protected void .ctor(bool isContainer, bool isDS); // 0x0042D16C + public abstract AccessRule AccessRuleFactory(IdentityReference identityReference, int accessMask, bool isInherited, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AccessControlType type); + public abstract AuditRule AuditRuleFactory(IdentityReference identityReference, int accessMask, bool isInherited, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AuditFlags flags); + public IdentityReference GetGroup(Type targetType); // 0x00431EF4 + public IdentityReference GetOwner(Type targetType); // 0x00431F7C + public byte[] GetSecurityDescriptorBinaryForm(); // 0x00432004 + public string GetSecurityDescriptorSddlForm(AccessControlSections includeSections); // 0x0043208C + public static bool IsSddlConversionSupported(); // 0x00432114 + public virtual bool ModifyAccessRule(AccessControlModification modification, AccessRule rule, out bool modified); // 0x0043219C + public virtual bool ModifyAuditRule(AccessControlModification modification, AuditRule rule, out bool modified); // 0x00432224 + public virtual void PurgeAccessRules(IdentityReference identity); // 0x004322AC + public virtual void PurgeAuditRules(IdentityReference identity); // 0x00432334 + public void SetAccessRuleProtection(bool isProtected, bool preserveInheritance); // 0x004323BC + public void SetAuditRuleProtection(bool isProtected, bool preserveInheritance); // 0x00432444 + public void SetGroup(IdentityReference identity); // 0x004324CC + public void SetOwner(IdentityReference identity); // 0x00432554 + public void SetSecurityDescriptorBinaryForm(byte[] binaryForm); // 0x004325DC + public void SetSecurityDescriptorBinaryForm(byte[] binaryForm, AccessControlSections includeSections); // 0x00432664 + public void SetSecurityDescriptorSddlForm(string sddlForm); // 0x004326EC + public void SetSecurityDescriptorSddlForm(string sddlForm, AccessControlSections includeSections); // 0x00432774 + protected abstract bool ModifyAccess(AccessControlModification modification, AccessRule rule, out bool modified); + protected abstract bool ModifyAudit(AccessControlModification modification, AuditRule rule, out bool modified); + protected virtual void Persist(SafeHandle handle, AccessControlSections includeSections); // 0x004327FC + protected virtual void Persist(string name, AccessControlSections includeSections); // 0x00432884 + protected virtual void Persist(bool enableOwnershipPrivilege, string name, AccessControlSections includeSections); // 0x0043290C + protected void ReadLock(); // 0x00432994 + protected void ReadUnlock(); // 0x00432A1C + protected void WriteLock(); // 0x00432AA4 + protected void WriteUnlock(); // 0x00432B2C +} + +// Namespace: System.Security.AccessControl +[Serializable] +public sealed class PrivilegeNotHeldException : UnauthorizedAccessException, ISerializable // TypeDefIndex: 1253 +{ + // Properties + public string PrivilegeName { get; } // 0x00432BCC + + // Methods + public void .ctor(); // 0x00432BB4 + public void .ctor(string privilege); // 0x00432BBC + public void .ctor(string privilege, Exception inner); // 0x00432BC4 + public override void GetObjectData(SerializationInfo info, StreamingContext context); // 0x00432C54 +} + +// Namespace: System.Security.AccessControl +public enum PropagationFlags // TypeDefIndex: 1254 +{ + None = 0, + NoPropagateInherit = 1, + InheritOnly = 2 +} + +// Namespace: System.Security.AccessControl +public abstract class QualifiedAce : KnownAce // TypeDefIndex: 1255 +{ + // Fields + private AceQualifier ace_qualifier; // 0x20 + private bool is_callback; // 0x24 + private byte[] opaque; // 0x28 + + // Properties + public AceQualifier AceQualifier { get; } // 0x00432DE4 + public bool IsCallback { get; } // 0x00432DEC + public int OpaqueLength { get; } // 0x00432DF4 + + // Methods + internal void .ctor(InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AceQualifier aceQualifier, bool isCallback, byte[] opaque); // 0x00431878 + public byte[] GetOpaque(); // 0x00432E18 + public void SetOpaque(byte[] opaque); // 0x00432CDC +} + +// Namespace: System.Security.AccessControl +public sealed class RawAcl : GenericAcl // TypeDefIndex: 1256 +{ + // Fields + private byte revision; // 0x08 + private List`1 list; // 0x0C + + // Properties + public override int BinaryLength { get; } // 0x00432FA4 + public override int Count { get; } // 0x0043302C + public override GenericAce Item { get; set; } // 0x00433090 0x00433110 + public override byte Revision { get; } // 0x00433198 + + // Methods + public void .ctor(byte revision, int capacity); // 0x00432ED0 + public void .ctor(byte[] binaryForm, int offset); // 0x00432F98 + public override void GetBinaryForm(byte[] binaryForm, int offset); // 0x004331A0 + public void InsertAce(int index, GenericAce ace); // 0x00433228 + public void RemoveAce(int index); // 0x00433274 +} + +// Namespace: System.Security.AccessControl +public sealed class RawSecurityDescriptor : GenericSecurityDescriptor // TypeDefIndex: 1257 +{ + // Properties + public override ControlFlags ControlFlags { get; } // 0x0043330C + public RawAcl DiscretionaryAcl { get; set; } // 0x00433394 0x0043341C + public override SecurityIdentifier Group { get; set; } // 0x004334A4 0x0043352C + public override SecurityIdentifier Owner { get; set; } // 0x004335B4 0x0043363C + public byte ResourceManagerControl { get; set; } // 0x004336C4 0x0043374C + public RawAcl SystemAcl { get; set; } // 0x004337D4 0x0043385C + + // Methods + public void .ctor(string sddlForm); // 0x004332F4 + public void .ctor(byte[] binaryForm, int offset); // 0x004332FC + public void .ctor(ControlFlags flags, SecurityIdentifier owner, SecurityIdentifier group, RawAcl systemAcl, RawAcl discretionaryAcl); // 0x00433304 + public void SetFlags(ControlFlags flags); // 0x004338E4 +} + +// Namespace: System.Security.AccessControl +public sealed class RegistryAccessRule : AccessRule // TypeDefIndex: 1258 +{ + // Fields + private RegistryRights rights; // 0x20 + + // Properties + public RegistryRights RegistryRights { get; } // 0x00433B54 + + // Methods + public void .ctor(IdentityReference identity, RegistryRights registryRights, AccessControlType type); // 0x0043396C + public void .ctor(string identity, RegistryRights registryRights, AccessControlType type); // 0x004339F4 + public void .ctor(IdentityReference identity, RegistryRights registryRights, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AccessControlType type); // 0x004339AC + public void .ctor(string identity, RegistryRights registryRights, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AccessControlType type); // 0x00433AA0 +} + +// Namespace: System.Security.AccessControl +public sealed class RegistryAuditRule : AuditRule // TypeDefIndex: 1259 +{ + // Fields + private RegistryRights rights; // 0x20 + + // Properties + public RegistryRights RegistryRights { get; } // 0x00433C58 + + // Methods + public void .ctor(IdentityReference identity, RegistryRights registryRights, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AuditFlags flags); // 0x00433B5C + public void .ctor(string identity, RegistryRights registryRights, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AuditFlags flags); // 0x00433BA4 +} + +// Namespace: System.Security.AccessControl +public enum RegistryRights // TypeDefIndex: 1260 +{ + QueryValues = 1, + SetValue = 2, + CreateSubKey = 4, + EnumerateSubKeys = 8, + Notify = 16, + CreateLink = 32, + Delete = 65536, + ReadPermissions = 131072, + WriteKey = 131078, + ReadKey = 131097, + ExecuteKey = 131097, + ChangePermissions = 262144, + TakeOwnership = 524288, + FullControl = 983103 +} + +// Namespace: System.Security.AccessControl +public sealed class RegistrySecurity : NativeObjectSecurity // TypeDefIndex: 1261 +{ + // Properties + public override Type AccessRightType { get; } // 0x00433C6C + public override Type AccessRuleType { get; } // 0x00433CFC + public override Type AuditRuleType { get; } // 0x00433D8C + + // Methods + public void .ctor(); // 0x00433C60 + public override AccessRule AccessRuleFactory(IdentityReference identityReference, int accessMask, bool isInherited, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AccessControlType type); // 0x00433E1C + public void AddAccessRule(RegistryAccessRule rule); // 0x00433EC4 + public void AddAuditRule(RegistryAuditRule rule); // 0x00433F4C + public override AuditRule AuditRuleFactory(IdentityReference identityReference, int accessMask, bool isInherited, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AuditFlags flags); // 0x00433FD4 + public bool RemoveAccessRule(RegistryAccessRule rule); // 0x0043407C + public void RemoveAccessRuleAll(RegistryAccessRule rule); // 0x00434104 + public void RemoveAccessRuleSpecific(RegistryAccessRule rule); // 0x0043418C + public bool RemoveAuditRule(RegistryAuditRule rule); // 0x00434214 + public void RemoveAuditRuleAll(RegistryAuditRule rule); // 0x0043429C + public void RemoveAuditRuleSpecific(RegistryAuditRule rule); // 0x00434324 + public void ResetAccessRule(RegistryAccessRule rule); // 0x004343AC + public void SetAccessRule(RegistryAccessRule rule); // 0x00434434 + public void SetAuditRule(RegistryAuditRule rule); // 0x004344BC +} + +// Namespace: System.Security.AccessControl +public enum ResourceType // TypeDefIndex: 1262 +{ + Unknown = 0, + FileObject = 1, + Service = 2, + Printer = 3, + RegistryKey = 4, + LMShare = 5, + KernelObject = 6, + WindowObject = 7, + DSObject = 8, + DSObjectAll = 9, + ProviderDefined = 10, + WmiGuidObject = 11, + RegistryWow6432Key = 12 +} + +// Namespace: System.Security.AccessControl +public enum SecurityInfos // TypeDefIndex: 1263 +{ + Owner = 1, + Group = 2, + DiscretionaryAcl = 4, + SystemAcl = 8 +} + +// Namespace: System.Security.AccessControl +public sealed class SystemAcl : CommonAcl // TypeDefIndex: 1264 +{ + // Methods + public void .ctor(bool isContainer, bool isDS, int capacity); // 0x00434544 + public void .ctor(bool isContainer, bool isDS, RawAcl rawAcl); // 0x0043458C + public void .ctor(bool isContainer, bool isDS, byte revision, int capacity); // 0x00434568 + public void AddAudit(AuditFlags auditFlags, SecurityIdentifier sid, int accessMask, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags); // 0x004345B4 + public void AddAudit(AuditFlags auditFlags, SecurityIdentifier sid, int accessMask, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, ObjectAceFlags objectFlags, Guid objectType, Guid inheritedObjectType); // 0x0043463C + public bool RemoveAudit(AuditFlags auditFlags, SecurityIdentifier sid, int accessMask, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags); // 0x004346C4 + public bool RemoveAudit(AuditFlags auditFlags, SecurityIdentifier sid, int accessMask, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, ObjectAceFlags objectFlags, Guid objectType, Guid inheritedObjectType); // 0x0043474C + public void RemoveAuditSpecific(AuditFlags auditFlags, SecurityIdentifier sid, int accessMask, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags); // 0x004347D4 + public void RemoveAuditSpecific(AuditFlags auditFlags, SecurityIdentifier sid, int accessMask, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, ObjectAceFlags objectFlags, Guid objectType, Guid inheritedObjectType); // 0x0043485C + public void SetAudit(AuditFlags auditFlags, SecurityIdentifier sid, int accessMask, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags); // 0x004348E4 + public void SetAudit(AuditFlags auditFlags, SecurityIdentifier sid, int accessMask, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, ObjectAceFlags objectFlags, Guid objectType, Guid inheritedObjectType); // 0x0043496C +} + +// Namespace: System.Security.Cryptography.X509Certificates +[Serializable] +public class X509Certificate : ISerializable, IDeserializationCallback // TypeDefIndex: 1265 +{ + // Fields + private X509Certificate x509; // 0x08 + private bool hideDates; // 0x0C + private byte[] cachedCertificateHash; // 0x10 + private string issuer_name; // 0x14 + private string subject_name; // 0x18 + + // Properties + public string Issuer { get; } // 0x003D7D5C + public string Subject { get; } // 0x003D7C30 + public IntPtr Handle { get; } // 0x003D7E88 + + // Methods + internal void .ctor(byte[] data, bool dates); // 0x003D5BD8 + public void .ctor(byte[] data); // 0x003D5C34 + public void .ctor(IntPtr handle); // 0x003D5C3C + public void .ctor(X509Certificate cert); // 0x003D5D34 + public void .ctor(); // 0x003D5E40 + public void .ctor(byte[] rawData, string password); // 0x003D5E48 + public void .ctor(byte[] rawData, SecureString password); // 0x003D5E94 + public void .ctor(byte[] rawData, string password, X509KeyStorageFlags keyStorageFlags); // 0x003D5EE0 + public void .ctor(byte[] rawData, SecureString password, X509KeyStorageFlags keyStorageFlags); // 0x003D5F30 + public void .ctor(string fileName); // 0x003D5F80 + public void .ctor(string fileName, string password); // 0x003D5FC8 + public void .ctor(string fileName, SecureString password); // 0x003D6014 + public void .ctor(string fileName, string password, X509KeyStorageFlags keyStorageFlags); // 0x003D6060 + public void .ctor(string fileName, SecureString password, X509KeyStorageFlags keyStorageFlags); // 0x003D60B0 + public void .ctor(SerializationInfo info, StreamingContext context); // 0x003D6100 + private void System.Runtime.Serialization.IDeserializationCallback.OnDeserialization(object sender); // 0x003D624C + private void System.Runtime.Serialization.ISerializable.GetObjectData(SerializationInfo info, StreamingContext context); // 0x003D6250 + private string tostr(byte[] data); // 0x003D62FC + public static X509Certificate CreateFromCertFile(string filename); // 0x003D6410 + public static X509Certificate CreateFromSignedFile(string filename); // 0x003D6690 + private void InitFromHandle(IntPtr handle); // 0x003D6978 + public virtual bool Equals(X509Certificate other); // 0x003D6B24 + public virtual byte[] GetCertHash(); // 0x003D6D7C + public virtual string GetCertHashString(); // 0x003D6E9C + public virtual string GetEffectiveDateString(); // 0x003D6EC0 + public virtual string GetExpirationDateString(); // 0x003D6FF0 + public virtual string GetFormat(); // 0x003D7120 + public override int GetHashCode(); // 0x003D717C + public virtual string GetIssuerName(); // 0x003D7274 + public virtual string GetKeyAlgorithm(); // 0x003D7340 + public virtual byte[] GetKeyAlgorithmParameters(); // 0x003D740C + public virtual string GetKeyAlgorithmParametersString(); // 0x003D752C + public virtual string GetName(); // 0x003D7550 + public virtual byte[] GetPublicKey(); // 0x003D761C + public virtual string GetPublicKeyString(); // 0x003D76E8 + public virtual byte[] GetRawCertData(); // 0x003D770C + public virtual string GetRawCertDataString(); // 0x003D77D8 + public virtual byte[] GetSerialNumber(); // 0x003D78AC + public virtual string GetSerialNumberString(); // 0x003D7978 + public override string ToString(); // 0x003D79A8 + public virtual string ToString(bool fVerbose); // 0x003D79B0 + private static byte[] Load(string fileName); // 0x003D6490 + public override bool Equals(object obj); // 0x003D7ED8 + public virtual byte[] Export(X509ContentType contentType); // 0x003D7F88 + public virtual byte[] Export(X509ContentType contentType, string password); // 0x003D82D4 + public virtual byte[] Export(X509ContentType contentType, SecureString password); // 0x003D83A8 + internal byte[] Export(X509ContentType contentType, byte[] password); // 0x003D7F90 + public virtual void Import(byte[] rawData); // 0x003D83E8 + public virtual void Import(byte[] rawData, string password, X509KeyStorageFlags keyStorageFlags); // 0x003D8418 + public virtual void Import(byte[] rawData, SecureString password, X509KeyStorageFlags keyStorageFlags); // 0x003D885C + public virtual void Import(string fileName); // 0x003D8888 + public virtual void Import(string fileName, string password, X509KeyStorageFlags keyStorageFlags); // 0x003D88CC + public virtual void Import(string fileName, SecureString password, X509KeyStorageFlags keyStorageFlags); // 0x003D8918 + public virtual void Reset(); // 0x003D8960 +} + +// Namespace: +internal struct CertificateContext // TypeDefIndex: 1266 +{ + // Fields + public uint dwCertEncodingType; // 0x08 + public IntPtr pbCertEncoded; // 0x0C + public uint cbCertEncoded; // 0x10 + public IntPtr pCertInfo; // 0x14 + public IntPtr hCertStore; // 0x18 + +} + +// Namespace: System.Security.Cryptography.X509Certificates +public enum X509ContentType // TypeDefIndex: 1267 +{ + Unknown = 0, + Cert = 1, + SerializedCert = 2, + Pfx = 3, + Pkcs12 = 3, + SerializedStore = 4, + Pkcs7 = 5, + Authenticode = 6 +} + +// Namespace: System.Security.Cryptography.X509Certificates +[Serializable] +public enum X509KeyStorageFlags // TypeDefIndex: 1268 +{ + DefaultKeySet = 0, + UserKeySet = 1, + MachineKeySet = 2, + Exportable = 4, + UserProtected = 8, + PersistKeySet = 16 +} + +// Namespace: System.Security.Cryptography +public abstract class AsymmetricAlgorithm : IDisposable // TypeDefIndex: 1269 +{ + // Fields + protected int KeySizeValue; // 0x08 + protected KeySizes[] LegalKeySizesValue; // 0x0C + + // Properties + public abstract string KeyExchangeAlgorithm { get; } + public virtual int KeySize { get; set; } // 0x00436450 0x00436458 + public virtual KeySizes[] LegalKeySizes { get; } // 0x004365F8 + public abstract string SignatureAlgorithm { get; } + + // Methods + protected void .ctor(); // 0x00436414 + private void System.IDisposable.Dispose(); // 0x0043641C + public void Clear(); // 0x00436600 + protected abstract void Dispose(bool disposing); + public abstract void FromXmlString(string xmlString); + public abstract string ToXmlString(bool includePrivateParameters); + public static AsymmetricAlgorithm Create(); // 0x00436614 + public static AsymmetricAlgorithm Create(string algName); // 0x00436670 + internal static byte[] GetNamedParam(string xml, string param); // 0x004367C8 +} + +// Namespace: System.Security.Cryptography +public abstract class AsymmetricKeyExchangeDeformatter // TypeDefIndex: 1270 +{ + // Properties + public abstract string Parameters { get; set; } + + // Methods + protected void .ctor(); // 0x004369B0 + public abstract byte[] DecryptKeyExchange(byte[] rgb); + public abstract void SetKey(AsymmetricAlgorithm key); +} + +// Namespace: System.Security.Cryptography +public abstract class AsymmetricKeyExchangeFormatter // TypeDefIndex: 1271 +{ + // Properties + public abstract string Parameters { get; } + + // Methods + protected void .ctor(); // 0x004369B8 + public abstract byte[] CreateKeyExchange(byte[] data); + public abstract byte[] CreateKeyExchange(byte[] data, Type symAlgType); + public abstract void SetKey(AsymmetricAlgorithm key); +} + +// Namespace: System.Security.Cryptography +public abstract class AsymmetricSignatureDeformatter // TypeDefIndex: 1272 +{ + // Methods + protected void .ctor(); // 0x004369C0 + public abstract void SetHashAlgorithm(string strName); + public abstract void SetKey(AsymmetricAlgorithm key); + public abstract bool VerifySignature(byte[] rgbHash, byte[] rgbSignature); + public virtual bool VerifySignature(HashAlgorithm hash, byte[] rgbSignature); // 0x004369C8 +} + +// Namespace: System.Security.Cryptography +public abstract class AsymmetricSignatureFormatter // TypeDefIndex: 1273 +{ + // Methods + protected void .ctor(); // 0x00436AD8 + public abstract void SetHashAlgorithm(string strName); + public abstract void SetKey(AsymmetricAlgorithm key); + public abstract byte[] CreateSignature(byte[] rgbHash); + public virtual byte[] CreateSignature(HashAlgorithm hash); // 0x00436AE0 +} + +// Namespace: System.Security.Cryptography +internal static class Base64Constants // TypeDefIndex: 1274 +{ + // Fields + public static readonly byte[] EncodeTable; // 0x00 + public static readonly byte[] DecodeTable; // 0x04 + + // Methods + private static void .cctor(); // 0x00436BE8 +} + +// Namespace: System.Security.Cryptography +[Serializable] +public enum CipherMode // TypeDefIndex: 1275 +{ + CBC = 1, + ECB = 2, + OFB = 3, + CFB = 4, + CTS = 5 +} + +// Namespace: System.Security.Cryptography +public sealed class CryptoAPITransform : IDisposable, ICryptoTransform // TypeDefIndex: 1276 +{ + // Fields + private bool m_disposed; // 0x08 + + // Properties + public bool CanReuseTransform { get; } // 0x00436D04 + public bool CanTransformMultipleBlocks { get; } // 0x00436D0C + public int InputBlockSize { get; } // 0x00436D14 + public IntPtr KeyHandle { get; } // 0x00436D1C + public int OutputBlockSize { get; } // 0x00436D6C + + // Methods + internal void .ctor(); // 0x00436CB8 + private void System.IDisposable.Dispose(); // 0x00436CD8 + public void Clear(); // 0x00436D74 + private void Dispose(bool disposing); // 0x00436CF0 + public int TransformBlock(byte[] inputBuffer, int inputOffset, int inputCount, byte[] outputBuffer, int outputOffset); // 0x00436D88 + public byte[] TransformFinalBlock(byte[] inputBuffer, int inputOffset, int inputCount); // 0x00436D90 + public void Reset(); // 0x00436D98 +} + +// Namespace: System.Security.Cryptography +public class CryptoConfig // TypeDefIndex: 1277 +{ + // Fields + private const string defaultNamespace = "System.Security.Cryptography."; // 0x00 + private const string defaultSHA1 = "System.Security.Cryptography.SHA1CryptoServiceProvider"; // 0x00 + private const string defaultMD5 = "System.Security.Cryptography.MD5CryptoServiceProvider"; // 0x00 + private const string defaultSHA256 = "System.Security.Cryptography.SHA256Managed"; // 0x00 + private const string defaultSHA384 = "System.Security.Cryptography.SHA384Managed"; // 0x00 + private const string defaultSHA512 = "System.Security.Cryptography.SHA512Managed"; // 0x00 + private const string defaultRSA = "System.Security.Cryptography.RSACryptoServiceProvider"; // 0x00 + private const string defaultDSA = "System.Security.Cryptography.DSACryptoServiceProvider"; // 0x00 + private const string defaultDES = "System.Security.Cryptography.DESCryptoServiceProvider"; // 0x00 + private const string default3DES = "System.Security.Cryptography.TripleDESCryptoServiceProvider"; // 0x00 + private const string defaultRC2 = "System.Security.Cryptography.RC2CryptoServiceProvider"; // 0x00 + private const string defaultAES = "System.Security.Cryptography.RijndaelManaged"; // 0x00 + private const string defaultRNG = "System.Security.Cryptography.RNGCryptoServiceProvider"; // 0x00 + private const string defaultHMAC = "System.Security.Cryptography.HMACSHA1"; // 0x00 + private const string defaultMAC3DES = "System.Security.Cryptography.MACTripleDES"; // 0x00 + private const string defaultDSASigDesc = "System.Security.Cryptography.DSASignatureDescription"; // 0x00 + private const string defaultRSASigDesc = "System.Security.Cryptography.RSAPKCS1SHA1SignatureDescription"; // 0x00 + private const string defaultRIPEMD160 = "System.Security.Cryptography.RIPEMD160Managed"; // 0x00 + private const string defaultHMACMD5 = "System.Security.Cryptography.HMACMD5"; // 0x00 + private const string defaultHMACRIPEMD160 = "System.Security.Cryptography.HMACRIPEMD160"; // 0x00 + private const string defaultHMACSHA256 = "System.Security.Cryptography.HMACSHA256"; // 0x00 + private const string defaultHMACSHA384 = "System.Security.Cryptography.HMACSHA384"; // 0x00 + private const string defaultHMACSHA512 = "System.Security.Cryptography.HMACSHA512"; // 0x00 + private const string defaultC14N = "System.Security.Cryptography.Xml.XmlDsigC14NTransform, System.Security, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + private const string defaultC14NWithComments = "System.Security.Cryptography.Xml.XmlDsigC14NWithCommentsTransform, System.Security, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + private const string defaultBase64 = "System.Security.Cryptography.Xml.XmlDsigBase64Transform, System.Security, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + private const string defaultXPath = "System.Security.Cryptography.Xml.XmlDsigXPathTransform, System.Security, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + private const string defaultXslt = "System.Security.Cryptography.Xml.XmlDsigXsltTransform, System.Security, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + private const string defaultEnveloped = "System.Security.Cryptography.Xml.XmlDsigEnvelopedSignatureTransform, System.Security, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + private const string defaultXmlDecryption = "System.Security.Cryptography.Xml.XmlDecryptionTransform, System.Security, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + private const string defaultExcC14N = "System.Security.Cryptography.Xml.XmlDsigExcC14NTransform, System.Security, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + private const string defaultExcC14NWithComments = "System.Security.Cryptography.Xml.XmlDsigExcC14NWithCommentsTransform, System.Security, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + private const string defaultX509Data = "System.Security.Cryptography.Xml.KeyInfoX509Data, System.Security, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + private const string defaultKeyName = "System.Security.Cryptography.Xml.KeyInfoName, System.Security, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + private const string defaultKeyValueDSA = "System.Security.Cryptography.Xml.DSAKeyValue, System.Security, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + private const string defaultKeyValueRSA = "System.Security.Cryptography.Xml.RSAKeyValue, System.Security, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + private const string defaultRetrievalMethod = "System.Security.Cryptography.Xml.KeyInfoRetrievalMethod, System.Security, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + private const string managedSHA1 = "System.Security.Cryptography.SHA1Managed"; // 0x00 + private const string oidSHA1 = "1.3.14.3.2.26"; // 0x00 + private const string oidMD5 = "1.2.840.113549.2.5"; // 0x00 + private const string oidSHA256 = "2.16.840.1.101.3.4.2.1"; // 0x00 + private const string oidSHA384 = "2.16.840.1.101.3.4.2.2"; // 0x00 + private const string oidSHA512 = "2.16.840.1.101.3.4.2.3"; // 0x00 + private const string oidDSA = "1.2.840.10040.4.1"; // 0x00 + private const string oidDES = "1.3.14.3.2.7"; // 0x00 + private const string oid3DES = "1.2.840.113549.3.7"; // 0x00 + private const string oidRC2 = "1.2.840.113549.3.2"; // 0x00 + private const string oid3DESKeyWrap = "1.2.840.113549.1.9.16.3.6"; // 0x00 + private const string nameSHA1a = "SHA"; // 0x00 + private const string nameSHA1b = "SHA1"; // 0x00 + private const string nameSHA1c = "System.Security.Cryptography.SHA1"; // 0x00 + private const string nameSHA1d = "System.Security.Cryptography.HashAlgorithm"; // 0x00 + private const string nameMD5a = "MD5"; // 0x00 + private const string nameMD5b = "System.Security.Cryptography.MD5"; // 0x00 + private const string nameSHA256a = "SHA256"; // 0x00 + private const string nameSHA256b = "SHA-256"; // 0x00 + private const string nameSHA256c = "System.Security.Cryptography.SHA256"; // 0x00 + private const string nameSHA384a = "SHA384"; // 0x00 + private const string nameSHA384b = "SHA-384"; // 0x00 + private const string nameSHA384c = "System.Security.Cryptography.SHA384"; // 0x00 + private const string nameSHA512a = "SHA512"; // 0x00 + private const string nameSHA512b = "SHA-512"; // 0x00 + private const string nameSHA512c = "System.Security.Cryptography.SHA512"; // 0x00 + private const string nameRSAa = "RSA"; // 0x00 + private const string nameRSAb = "System.Security.Cryptography.RSA"; // 0x00 + private const string nameRSAc = "System.Security.Cryptography.AsymmetricAlgorithm"; // 0x00 + private const string nameDSAa = "DSA"; // 0x00 + private const string nameDSAb = "System.Security.Cryptography.DSA"; // 0x00 + private const string nameDESa = "DES"; // 0x00 + private const string nameDESb = "System.Security.Cryptography.DES"; // 0x00 + private const string name3DESa = "3DES"; // 0x00 + private const string name3DESb = "TripleDES"; // 0x00 + private const string name3DESc = "Triple DES"; // 0x00 + private const string name3DESd = "System.Security.Cryptography.TripleDES"; // 0x00 + private const string nameRC2a = "RC2"; // 0x00 + private const string nameRC2b = "System.Security.Cryptography.RC2"; // 0x00 + private const string nameAESa = "Rijndael"; // 0x00 + private const string nameAESb = "System.Security.Cryptography.Rijndael"; // 0x00 + private const string nameAESc = "System.Security.Cryptography.SymmetricAlgorithm"; // 0x00 + private const string nameRNGa = "RandomNumberGenerator"; // 0x00 + private const string nameRNGb = "System.Security.Cryptography.RandomNumberGenerator"; // 0x00 + private const string nameKeyHasha = "System.Security.Cryptography.KeyedHashAlgorithm"; // 0x00 + private const string nameHMACSHA1a = "HMACSHA1"; // 0x00 + private const string nameHMACSHA1b = "System.Security.Cryptography.HMACSHA1"; // 0x00 + private const string nameMAC3DESa = "MACTripleDES"; // 0x00 + private const string nameMAC3DESb = "System.Security.Cryptography.MACTripleDES"; // 0x00 + private const string name3DESKeyWrap = "TripleDESKeyWrap"; // 0x00 + private const string nameRIPEMD160a = "RIPEMD160"; // 0x00 + private const string nameRIPEMD160b = "RIPEMD-160"; // 0x00 + private const string nameRIPEMD160c = "System.Security.Cryptography.RIPEMD160"; // 0x00 + private const string nameHMACa = "HMAC"; // 0x00 + private const string nameHMACb = "System.Security.Cryptography.HMAC"; // 0x00 + private const string nameHMACMD5a = "HMACMD5"; // 0x00 + private const string nameHMACMD5b = "System.Security.Cryptography.HMACMD5"; // 0x00 + private const string nameHMACRIPEMD160a = "HMACRIPEMD160"; // 0x00 + private const string nameHMACRIPEMD160b = "System.Security.Cryptography.HMACRIPEMD160"; // 0x00 + private const string nameHMACSHA256a = "HMACSHA256"; // 0x00 + private const string nameHMACSHA256b = "System.Security.Cryptography.HMACSHA256"; // 0x00 + private const string nameHMACSHA384a = "HMACSHA384"; // 0x00 + private const string nameHMACSHA384b = "System.Security.Cryptography.HMACSHA384"; // 0x00 + private const string nameHMACSHA512a = "HMACSHA512"; // 0x00 + private const string nameHMACSHA512b = "System.Security.Cryptography.HMACSHA512"; // 0x00 + private const string urlXmlDsig = "http://www.w3.org/2000/09/xmldsig#"; // 0x00 + private const string urlDSASHA1 = "http://www.w3.org/2000/09/xmldsig#dsa-sha1"; // 0x00 + private const string urlRSASHA1 = "http://www.w3.org/2000/09/xmldsig#rsa-sha1"; // 0x00 + private const string urlSHA1 = "http://www.w3.org/2000/09/xmldsig#sha1"; // 0x00 + private const string urlC14N = "http://www.w3.org/TR/2001/REC-xml-c14n-20010315"; // 0x00 + private const string urlC14NWithComments = "http://www.w3.org/TR/2001/REC-xml-c14n-20010315#WithComments"; // 0x00 + private const string urlBase64 = "http://www.w3.org/2000/09/xmldsig#base64"; // 0x00 + private const string urlXPath = "http://www.w3.org/TR/1999/REC-xpath-19991116"; // 0x00 + private const string urlXslt = "http://www.w3.org/TR/1999/REC-xslt-19991116"; // 0x00 + private const string urlEnveloped = "http://www.w3.org/2000/09/xmldsig#enveloped-signature"; // 0x00 + private const string urlXmlDecryption = "http://www.w3.org/2002/07/decrypt#XML"; // 0x00 + private const string urlExcC14NWithComments = "http://www.w3.org/2001/10/xml-exc-c14n#WithComments"; // 0x00 + private const string urlExcC14N = "http://www.w3.org/2001/10/xml-exc-c14n#"; // 0x00 + private const string urlSHA256 = "http://www.w3.org/2001/04/xmlenc#sha256"; // 0x00 + private const string urlSHA512 = "http://www.w3.org/2001/04/xmlenc#sha512"; // 0x00 + private const string urlHMACSHA256 = "http://www.w3.org/2001/04/xmldsig-more#hmac-sha256"; // 0x00 + private const string urlHMACSHA384 = "http://www.w3.org/2001/04/xmldsig-more#hmac-sha384"; // 0x00 + private const string urlHMACSHA512 = "http://www.w3.org/2001/04/xmldsig-more#hmac-sha512"; // 0x00 + private const string urlHMACRIPEMD160 = "http://www.w3.org/2001/04/xmldsig-more#hmac-ripemd160"; // 0x00 + private const string urlX509Data = "http://www.w3.org/2000/09/xmldsig# X509Data"; // 0x00 + private const string urlKeyName = "http://www.w3.org/2000/09/xmldsig# KeyName"; // 0x00 + private const string urlKeyValueDSA = "http://www.w3.org/2000/09/xmldsig# KeyValue/DSAKeyValue"; // 0x00 + private const string urlKeyValueRSA = "http://www.w3.org/2000/09/xmldsig# KeyValue/RSAKeyValue"; // 0x00 + private const string urlRetrievalMethod = "http://www.w3.org/2000/09/xmldsig# RetrievalMethod"; // 0x00 + private const string oidX509SubjectKeyIdentifier = "2.5.29.14"; // 0x00 + private const string oidX509KeyUsage = "2.5.29.15"; // 0x00 + private const string oidX509BasicConstraints = "2.5.29.19"; // 0x00 + private const string oidX509EnhancedKeyUsage = "2.5.29.37"; // 0x00 + private const string nameX509SubjectKeyIdentifier = "System.Security.Cryptography.X509Certificates.X509SubjectKeyIdentifierExtension, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"; // 0x00 + private const string nameX509KeyUsage = "System.Security.Cryptography.X509Certificates.X509KeyUsageExtension, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"; // 0x00 + private const string nameX509BasicConstraints = "System.Security.Cryptography.X509Certificates.X509BasicConstraintsExtension, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"; // 0x00 + private const string nameX509EnhancedKeyUsage = "System.Security.Cryptography.X509Certificates.X509EnhancedKeyUsageExtension, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"; // 0x00 + private const string nameX509Chain = "X509Chain"; // 0x00 + private const string defaultX509Chain = "System.Security.Cryptography.X509Certificates.X509Chain, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"; // 0x00 + private static object lockObject; // 0x00 + private static Hashtable algorithms; // 0x04 + private static Hashtable oid; // 0x08 + + // Methods + public void .ctor(); // 0x00436D9C + private static void .cctor(); // 0x00436DA4 + private static void Initialize(); // 0x00436E24 + private static void LoadConfig(string filename, Hashtable algorithms, Hashtable oid); // 0x00439270 + public static object CreateFromName(string name); // 0x00436744 + public static object CreateFromName(string name, object[] args); // 0x004395C0 + public static string MapNameToOID(string name); // 0x00439920 + public static byte[] EncodeOID(string str); // 0x00439B7C + private static byte[] EncodeLongNumber(long x); // 0x0043A1C4 +} + +// Namespace: +private class CryptoHandler : IContentHandler // TypeDefIndex: 1278 +{ + // Fields + private Hashtable algorithms; // 0x08 + private Hashtable oid; // 0x0C + private Hashtable names; // 0x10 + private Hashtable classnames; // 0x14 + private int level; // 0x18 + + // Methods + public void .ctor(Hashtable algorithms, Hashtable oid); // 0x0043951C + public void OnStartParsing(SmallXmlParser parser); // 0x0043A3EC + public void OnEndParsing(SmallXmlParser parser); // 0x0043A3F0 + private string Get(IAttrList attrs, string name); // 0x0043A880 + public void OnStartElement(string name, IAttrList attrs); // 0x0043ABA0 + public void OnEndElement(string name); // 0x0043B0F4 + public void OnProcessingInstruction(string name, string text); // 0x0043B314 + public void OnChars(string text); // 0x0043B318 + public void OnIgnorableWhitespace(string text); // 0x0043B31C +} + +// Namespace: System.Security.Cryptography +public class CryptoStream : Stream // TypeDefIndex: 1279 +{ + // Fields + private Stream _stream; // 0x08 + private ICryptoTransform _transform; // 0x0C + private CryptoStreamMode _mode; // 0x10 + private byte[] _currentBlock; // 0x14 + private bool _disposed; // 0x18 + private bool _flushedFinalBlock; // 0x19 + private int _partialCount; // 0x1C + private bool _endOfStream; // 0x20 + private byte[] _waitingBlock; // 0x24 + private int _waitingCount; // 0x28 + private byte[] _transformedBlock; // 0x2C + private int _transformedPos; // 0x30 + private int _transformedCount; // 0x34 + private byte[] _workingBlock; // 0x38 + private int _workingCount; // 0x3C + + // Properties + public override bool CanRead { get; } // 0x0043B818 + public override bool CanSeek { get; } // 0x0043B82C + public override bool CanWrite { get; } // 0x0043B834 + public override long Length { get; } // 0x0043B844 + public override long Position { get; set; } // 0x0043B8E0 0x0043B97C + + // Methods + public void .ctor(Stream stream, ICryptoTransform transform, CryptoStreamMode mode); // 0x0043B320 + protected override void Finalize(); // 0x0043B7A0 + public void Clear(); // 0x0043BA18 + public override void Close(); // 0x0043BA4C + public override int Read(out byte[] buffer, int offset, int count); // 0x0043BD50 + public override void Write(byte[] buffer, int offset, int count); // 0x0043CA20 + public override void Flush(); // 0x0043D508 + public void FlushFinalBlock(); // 0x0043BA94 + public override long Seek(long offset, SeekOrigin origin); // 0x0043D524 + public override void SetLength(long value); // 0x0043D5C0 + protected override void Dispose(bool disposing); // 0x0043D65C +} + +// Namespace: System.Security.Cryptography +[Serializable] +public enum CryptoStreamMode // TypeDefIndex: 1280 +{ + Read = 0, + Write = 1 +} + +// Namespace: System.Security.Cryptography +[Serializable] +public class CryptographicException : SystemException, _Exception // TypeDefIndex: 1281 +{ + // Methods + public void .ctor(); // 0x0043D6D0 + public void .ctor(int hr); // 0x0043D750 + public void .ctor(string message); // 0x004365D4 + public void .ctor(string message, Exception inner); // 0x0043D770 + public void .ctor(string format, string insert); // 0x0043D794 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x0043D840 +} + +// Namespace: System.Security.Cryptography +[Serializable] +public class CryptographicUnexpectedOperationException : CryptographicException // TypeDefIndex: 1282 +{ + // Methods + public void .ctor(); // 0x0043D860 + public void .ctor(string message); // 0x0043A1A0 + public void .ctor(string message, Exception inner); // 0x0043D8E0 + public void .ctor(string format, string insert); // 0x0043D904 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x0043D9B0 +} + +// Namespace: System.Security.Cryptography +public sealed class CspKeyContainerInfo // TypeDefIndex: 1283 +{ + // Fields + private CspParameters _params; // 0x08 + internal bool _random; // 0x0C + + // Properties + public bool Accessible { get; } // 0x0043D9F8 + public CryptoKeySecurity CryptoKeySecurity { get; } // 0x0043DA00 + public bool Exportable { get; } // 0x0043DA08 + public bool HardwareDevice { get; } // 0x0043DA10 + public string KeyContainerName { get; } // 0x0043DA18 + public KeyNumber KeyNumber { get; } // 0x0043DA3C + public bool MachineKeyStore { get; } // 0x0043DA60 + public bool Protected { get; } // 0x0043DA68 + public string ProviderName { get; } // 0x0043DA70 + public int ProviderType { get; } // 0x0043DA94 + public bool RandomlyGenerated { get; } // 0x0043DAB8 + public bool Removable { get; } // 0x0043DAC0 + public string UniqueKeyContainerName { get; } // 0x0043DAC8 + + // Methods + public void .ctor(CspParameters parameters); // 0x0043D9D0 +} + +// Namespace: System.Security.Cryptography +public sealed class CspParameters // TypeDefIndex: 1284 +{ + // Fields + private CspProviderFlags _Flags; // 0x08 + public string KeyContainerName; // 0x0C + public int KeyNumber; // 0x10 + public string ProviderName; // 0x14 + public int ProviderType; // 0x18 + private SecureString _password; // 0x1C + private IntPtr _windowHandle; // 0x20 + + // Properties + public CspProviderFlags Flags { get; set; } // 0x0043DD88 0x0043DD90 + public CryptoKeySecurity CryptoKeySecurity { get; set; } // 0x0043DD98 0x0043DCB4 + public SecureString KeyPassword { get; set; } // 0x0043DE20 0x0043DE28 + public IntPtr ParentWindowHandle { get; set; } // 0x0043DE30 0x0043DE38 + + // Methods + public void .ctor(); // 0x0043DB98 + public void .ctor(int dwTypeIn); // 0x0043DBCC + public void .ctor(int dwTypeIn, string strProviderNameIn); // 0x0043DC00 + public void .ctor(int dwTypeIn, string strProviderNameIn, string strContainerNameIn); // 0x0043DC34 + public void .ctor(int providerType, string providerName, string keyContainerName, CryptoKeySecurity cryptoKeySecurity, IntPtr parentWindowHandle); // 0x0043DC68 + public void .ctor(int providerType, string providerName, string keyContainerName, CryptoKeySecurity cryptoKeySecurity, SecureString keyPassword); // 0x0043DD3C +} + +// Namespace: System.Security.Cryptography +[Serializable] +public enum CspProviderFlags // TypeDefIndex: 1285 +{ + NoFlags = 0, + UseMachineKeyStore = 1, + UseDefaultKeyContainer = 2, + UseNonExportableKey = 4, + UseExistingKey = 8, + UseArchivableKey = 16, + UseUserProtectedKey = 32, + NoPrompt = 64 +} + +// Namespace: System.Security.Cryptography +public abstract class DES : SymmetricAlgorithm // TypeDefIndex: 1286 +{ + // Fields + private const int keySizeByte = 8; // 0x00 + internal static readonly byte[] weakKeys; // 0x00 + internal static readonly byte[] semiWeakKeys; // 0x04 + + // Properties + public override byte[] Key { get; set; } // 0x0043E8D0 0x0043E9A8 + + // Methods + protected void .ctor(); // 0x0043DE40 + private static void .cctor(); // 0x0043E040 + public static DES Create(); // 0x0043E134 + public static DES Create(string algName); // 0x0043E1BC + public static bool IsWeakKey(byte[] rgbKey); // 0x0043E290 + public static bool IsSemiWeakKey(byte[] rgbKey); // 0x0043E5B0 +} + +// Namespace: System.Security.Cryptography +internal class DESTransform : SymmetricTransform // TypeDefIndex: 1287 +{ + // Fields + internal static readonly int KEY_BIT_SIZE; // 0x00 + internal static readonly int KEY_BYTE_SIZE; // 0x04 + internal static readonly int BLOCK_BIT_SIZE; // 0x08 + internal static readonly int BLOCK_BYTE_SIZE; // 0x0C + private byte[] keySchedule; // 0x34 + private byte[] byteBuff; // 0x38 + private uint[] dwordBuff; // 0x3C + private static readonly uint[] spBoxes; // 0x10 + private static readonly byte[] PC1; // 0x14 + private static readonly byte[] leftRotTotal; // 0x18 + private static readonly byte[] PC2; // 0x1C + internal static readonly uint[] ipTab; // 0x20 + internal static readonly uint[] fpTab; // 0x24 + + // Methods + internal void .ctor(SymmetricAlgorithm symmAlgo, bool encryption, byte[] key, byte[] iv); // 0x0043ED30 + private static void .cctor(); // 0x0043F924 + private uint CipherFunct(uint r, int n); // 0x0043FB2C + internal static void Permutation(byte[] input, byte[] output, uint[] permTab, bool preSwap); // 0x00440028 + private static void BSwap(byte[] byteBuff); // 0x00440670 + internal void SetKey(byte[] key); // 0x0043F2C4 + public void ProcessBlock(byte[] input, byte[] output); // 0x004408E0 + protected override void ECB(byte[] input, byte[] output); // 0x00440D54 + internal static byte[] GetStrongKey(); // 0x0043F1A0 +} + +// Namespace: System.Security.Cryptography +public sealed class DESCryptoServiceProvider : DES // TypeDefIndex: 1288 +{ + // Methods + public void .ctor(); // 0x0043EC24 + public override ICryptoTransform CreateDecryptor(byte[] rgbKey, byte[] rgbIV); // 0x0043ECA4 + public override ICryptoTransform CreateEncryptor(byte[] rgbKey, byte[] rgbIV); // 0x0043EFF8 + public override void GenerateIV(); // 0x0043F084 + public override void GenerateKey(); // 0x0043F120 +} + +// Namespace: System.Security.Cryptography +public abstract class DSA : AsymmetricAlgorithm // TypeDefIndex: 1289 +{ + // Methods + protected void .ctor(); // 0x00440E3C + public static DSA Create(); // 0x00440E44 + public static DSA Create(string algName); // 0x00440EA0 + public abstract byte[] CreateSignature(byte[] rgbHash); + public abstract DSAParameters ExportParameters(bool includePrivateParameters); + internal void ZeroizePrivateKey(DSAParameters parameters); // 0x00440F74 + public override void FromXmlString(string xmlString); // 0x00440F90 + public abstract void ImportParameters(DSAParameters parameters); + public override string ToXmlString(bool includePrivateParameters); // 0x00441390 + public abstract bool VerifySignature(byte[] rgbHash, byte[] rgbSignature); +} + +// Namespace: System.Security.Cryptography +public sealed class DSACryptoServiceProvider : DSA, ICspAsymmetricAlgorithm // TypeDefIndex: 1290 +{ + // Fields + private const int PROV_DSS_DH = 13; // 0x00 + private KeyPairPersistence store; // 0x10 + private bool persistKey; // 0x14 + private bool persisted; // 0x15 + private bool privateKeyExportable; // 0x16 + private bool m_disposed; // 0x17 + private DSAManaged dsa; // 0x18 + private static bool useMachineKeyStore; // 0x00 + + // Properties + public override string KeyExchangeAlgorithm { get; } // 0x00442110 + public override int KeySize { get; } // 0x00442118 + public bool PersistKeyInCsp { get; set; } // 0x0044214C 0x00442154 + public bool PublicOnly { get; } // 0x0044215C + public override string SignatureAlgorithm { get; } // 0x00442188 + public static bool UseMachineKeyStore { get; set; } // 0x004421E4 0x00442270 + public CspKeyContainerInfo CspKeyContainerInfo { get; } // 0x00442F98 + + // Methods + public void .ctor(); // 0x00441CBC + public void .ctor(CspParameters parameters); // 0x00442014 + public void .ctor(int dwKeySize); // 0x00442020 + public void .ctor(int dwKeySize, CspParameters parameters); // 0x00441CC8 + private static void .cctor(); // 0x00442028 + protected override void Finalize(); // 0x0044202C + public override DSAParameters ExportParameters(bool includePrivateParameters); // 0x00442300 + public override void ImportParameters(DSAParameters parameters); // 0x004423F4 + public override byte[] CreateSignature(byte[] rgbHash); // 0x00442484 + public byte[] SignData(byte[] buffer); // 0x004424C0 + public byte[] SignData(byte[] buffer, int offset, int count); // 0x004425F8 + public byte[] SignData(Stream inputStream); // 0x00442914 + public byte[] SignHash(byte[] rgbHash, string str); // 0x00442B18 + public bool VerifyData(byte[] rgbData, byte[] rgbSignature); // 0x00442C94 + public bool VerifyHash(byte[] rgbHash, string str, byte[] rgbSignature); // 0x00442D08 + public override bool VerifySignature(byte[] rgbHash, byte[] rgbSignature); // 0x00442EA4 + protected override void Dispose(bool disposing); // 0x00442094 + private void OnKeyGenerated(object sender, EventArgs e); // 0x00442EE8 + public byte[] ExportCspBlob(bool includePrivateParameters); // 0x00442FA0 + public void ImportCspBlob(byte[] keyBlob); // 0x00442FB8 +} + +// Namespace: System.Security.Cryptography +[Serializable] +public struct DSAParameters // TypeDefIndex: 1291 +{ + // Fields + public int Counter; // 0x08 + public byte[] G; // 0x0C + public byte[] J; // 0x10 + public byte[] P; // 0x14 + public byte[] Q; // 0x18 + public byte[] Seed; // 0x1C + [NonSerialized] public byte[] X; // 0x20 + public byte[] Y; // 0x24 + +} + +// Namespace: System.Security.Cryptography +public class DSASignatureDeformatter : AsymmetricSignatureDeformatter // TypeDefIndex: 1292 +{ + // Fields + private DSA dsa; // 0x08 + + // Methods + public void .ctor(); // 0x0044330C + public void .ctor(AsymmetricAlgorithm key); // 0x00443314 + public override void SetHashAlgorithm(string strName); // 0x00443348 + public override void SetKey(AsymmetricAlgorithm key); // 0x004434D8 + public override bool VerifySignature(byte[] rgbHash, byte[] rgbSignature); // 0x004435D0 +} + +// Namespace: System.Security.Cryptography +public class DSASignatureFormatter : AsymmetricSignatureFormatter // TypeDefIndex: 1293 +{ + // Fields + private DSA dsa; // 0x08 + + // Methods + public void .ctor(); // 0x00443750 + public void .ctor(AsymmetricAlgorithm key); // 0x00443758 + public override byte[] CreateSignature(byte[] rgbHash); // 0x0044378C + public override void SetHashAlgorithm(string strName); // 0x0044385C + public override void SetKey(AsymmetricAlgorithm key); // 0x004439EC +} + +// Namespace: System.Security.Cryptography +public abstract class DeriveBytes // TypeDefIndex: 1294 +{ + // Methods + protected void .ctor(); // 0x00443AE4 + public abstract byte[] GetBytes(int cb); + public abstract void Reset(); +} + +// Namespace: System.Security.Cryptography +[Serializable] +public enum FromBase64TransformMode // TypeDefIndex: 1295 +{ + IgnoreWhiteSpaces = 0, + DoNotIgnoreWhiteSpaces = 1 +} + +// Namespace: System.Security.Cryptography +public class FromBase64Transform : IDisposable, ICryptoTransform // TypeDefIndex: 1296 +{ + // Fields + private const byte TerminatorByte = 61; // 0x00 + private FromBase64TransformMode mode; // 0x08 + private byte[] accumulator; // 0x0C + private int accPtr; // 0x10 + private bool m_disposed; // 0x14 + private byte[] lookupTable; // 0x18 + + // Properties + public bool CanTransformMultipleBlocks { get; } // 0x00443C28 + public virtual bool CanReuseTransform { get; } // 0x00443C30 + public int InputBlockSize { get; } // 0x00443C38 + public int OutputBlockSize { get; } // 0x00443C40 + + // Methods + public void .ctor(); // 0x00443AEC + public void .ctor(FromBase64TransformMode whitespaces); // 0x00443AF4 + private void System.IDisposable.Dispose(); // 0x00443B7C + protected override void Finalize(); // 0x00443BB0 + public void Clear(); // 0x00443C48 + protected virtual void Dispose(bool disposing); // 0x00443C5C + private byte lookup(byte input); // 0x00443CAC + private int ProcessBlock(byte[] output, int offset); // 0x00443E0C + private void CheckInputParameters(byte[] inputBuffer, int inputOffset, int inputCount); // 0x004442D8 + public int TransformBlock(byte[] inputBuffer, int inputOffset, int inputCount, byte[] outputBuffer, int outputOffset); // 0x00444550 + public byte[] TransformFinalBlock(byte[] inputBuffer, int inputOffset, int inputCount); // 0x00444814 +} + +// Namespace: System.Security.Cryptography +public abstract class HMAC : KeyedHashAlgorithm // TypeDefIndex: 1297 +{ + // Fields + private bool _disposed; // 0x1C + private string _hashName; // 0x20 + private HashAlgorithm _algo; // 0x24 + private BlockProcessor _block; // 0x28 + private int _blockSizeValue; // 0x2C + + // Properties + protected int BlockSizeValue { get; set; } // 0x00444C68 0x00444C70 + public string HashName { get; set; } // 0x00444C78 0x00444C80 + public override byte[] Key { get; set; } // 0x00444D74 0x00444EEC + internal BlockProcessor Block { get; } // 0x00445128 + + // Methods + protected void .ctor(); // 0x00444C1C + private byte[] KeySetup(byte[] key, byte padding); // 0x004451B8 + protected override void Dispose(bool disposing); // 0x00445328 + protected override void HashCore(byte[] rgb, int ib, int cb); // 0x0044539C + protected override byte[] HashFinal(); // 0x004454C0 + public override void Initialize(); // 0x00445C4C + public static HMAC Create(); // 0x00445DCC + public static HMAC Create(string algorithmName); // 0x00445E28 +} + +// Namespace: System.Security.Cryptography +public class HMACMD5 : HMAC // TypeDefIndex: 1298 +{ + // Methods + public void .ctor(); // 0x00445EFC + public void .ctor(byte[] key); // 0x00445F24 +} + +// Namespace: System.Security.Cryptography +public class HMACRIPEMD160 : HMAC // TypeDefIndex: 1299 +{ + // Methods + public void .ctor(); // 0x00445FD0 + public void .ctor(byte[] key); // 0x00445FF8 +} + +// Namespace: System.Security.Cryptography +public class HMACSHA1 : HMAC // TypeDefIndex: 1300 +{ + // Methods + public void .ctor(); // 0x004460A4 + public void .ctor(byte[] key); // 0x004460CC + public void .ctor(byte[] key, bool useManagedSha1); // 0x00446178 +} + +// Namespace: System.Security.Cryptography +public class HMACSHA256 : HMAC // TypeDefIndex: 1301 +{ + // Methods + public void .ctor(); // 0x00446284 + public void .ctor(byte[] key); // 0x004462AC +} + +// Namespace: System.Security.Cryptography +public class HMACSHA384 : HMAC // TypeDefIndex: 1302 +{ + // Fields + private static bool legacy_mode; // 0x00 + private bool legacy; // 0x30 + + // Properties + public bool ProduceLegacyHmacValues { get; set; } // 0x00446620 0x00446528 + + // Methods + public void .ctor(); // 0x00446358 + public void .ctor(byte[] key); // 0x00446424 + private static void .cctor(); // 0x0044655C +} + +// Namespace: System.Security.Cryptography +public class HMACSHA512 : HMAC // TypeDefIndex: 1303 +{ + // Fields + private static bool legacy_mode; // 0x00 + private bool legacy; // 0x30 + + // Properties + public bool ProduceLegacyHmacValues { get; set; } // 0x004468F0 0x004467F8 + + // Methods + public void .ctor(); // 0x00446628 + public void .ctor(byte[] key); // 0x004466F4 + private static void .cctor(); // 0x0044682C +} + +// Namespace: System.Security.Cryptography +public abstract class HashAlgorithm : IDisposable, ICryptoTransform // TypeDefIndex: 1304 +{ + // Fields + protected internal byte[] HashValue; // 0x08 + protected int HashSizeValue; // 0x0C + protected int State; // 0x10 + private bool disposed; // 0x14 + + // Properties + public virtual bool CanTransformMultipleBlocks { get; } // 0x0044694C + public virtual bool CanReuseTransform { get; } // 0x00446954 + public virtual byte[] Hash { get; } // 0x004469CC + public virtual int HashSize { get; } // 0x00446A80 + public virtual int InputBlockSize { get; } // 0x00446A94 + public virtual int OutputBlockSize { get; } // 0x00446A9C + + // Methods + protected void .ctor(); // 0x004468F8 + private void System.IDisposable.Dispose(); // 0x00446918 + public void Clear(); // 0x0044695C + public byte[] ComputeHash(byte[] buffer); // 0x0044252C + public byte[] ComputeHash(byte[] buffer, int offset, int count); // 0x0044267C + public byte[] ComputeHash(Stream inputStream); // 0x00442980 + public static HashAlgorithm Create(); // 0x00446970 + public static HashAlgorithm Create(string hashName); // 0x00444CA0 + protected abstract void HashCore(byte[] array, int ibStart, int cbSize); + protected abstract byte[] HashFinal(); + public abstract void Initialize(); + protected virtual void Dispose(bool disposing); // 0x00446A88 + public int TransformBlock(byte[] inputBuffer, int inputOffset, int inputCount, byte[] outputBuffer, int outputOffset); // 0x00445720 + public byte[] TransformFinalBlock(byte[] inputBuffer, int inputOffset, int inputCount); // 0x00445A34 +} + +// Namespace: System.Security.Cryptography +public interface ICryptoTransform : IDisposable // TypeDefIndex: 1305 +{ + // Properties + bool CanReuseTransform { get; } + bool CanTransformMultipleBlocks { get; } + int InputBlockSize { get; } + int OutputBlockSize { get; } + + // Methods + int TransformBlock(byte[] inputBuffer, int inputOffset, int inputCount, byte[] outputBuffer, int outputOffset); + byte[] TransformFinalBlock(byte[] inputBuffer, int inputOffset, int inputCount); +} + +// Namespace: System.Security.Cryptography +public interface ICspAsymmetricAlgorithm // TypeDefIndex: 1306 +{ + // Properties + CspKeyContainerInfo CspKeyContainerInfo { get; } + + // Methods + byte[] ExportCspBlob(bool includePrivateParameters); + void ImportCspBlob(byte[] rawData); +} + +// Namespace: System.Security.Cryptography +[Serializable] +public enum KeyNumber // TypeDefIndex: 1307 +{ + Exchange = 1, + Signature = 2 +} + +// Namespace: System.Security.Cryptography +public sealed class KeySizes // TypeDefIndex: 1308 +{ + // Fields + private int _maxSize; // 0x08 + private int _minSize; // 0x0C + private int _skipSize; // 0x10 + + // Properties + public int MaxSize { get; } // 0x00446AA4 + public int MinSize { get; } // 0x00446AAC + public int SkipSize { get; } // 0x00446AB4 + + // Methods + public void .ctor(int minSize, int maxSize, int skipSize); // 0x0043E010 + internal bool IsLegal(int keySize); // 0x00446ABC + internal static bool IsLegalKeySize(KeySizes[] legalKeys, int size); // 0x0043651C +} + +// Namespace: System.Security.Cryptography +public abstract class KeyedHashAlgorithm : HashAlgorithm // TypeDefIndex: 1309 +{ + // Fields + protected byte[] KeyValue; // 0x18 + + // Properties + public virtual byte[] Key { get; set; } // 0x00444E34 0x00444FE8 + + // Methods + protected void .ctor(); // 0x00444C48 + protected override void Finalize(); // 0x00446B2C + protected override void Dispose(bool disposing); // 0x00445368 + private void ZeroizeKey(); // 0x00446BA4 + public static KeyedHashAlgorithm Create(); // 0x00446BC0 + public static KeyedHashAlgorithm Create(string algName); // 0x00446C1C +} + +// Namespace: System.Security.Cryptography +public class MACTripleDES : KeyedHashAlgorithm // TypeDefIndex: 1310 +{ + // Fields + private TripleDES tdes; // 0x1C + private MACAlgorithm mac; // 0x20 + private bool m_disposed; // 0x24 + + // Properties + public PaddingMode Padding { get; set; } // 0x00447118 0x0044714C + + // Methods + public void .ctor(); // 0x00446CF0 + public void .ctor(byte[] rgbKey); // 0x00446ED0 + public void .ctor(string strTripleDES, byte[] rgbKey); // 0x00446FB0 + private void Setup(string strTripleDES, byte[] rgbKey); // 0x00446D6C + protected override void Finalize(); // 0x004470A8 + protected override void Dispose(bool disposing); // 0x00447188 + public override void Initialize(); // 0x00447218 + protected override void HashCore(byte[] rgbData, int ibStart, int cbSize); // 0x004472F8 + protected override byte[] HashFinal(); // 0x00447414 +} + +// Namespace: System.Security.Cryptography +public abstract class MD5 : HashAlgorithm // TypeDefIndex: 1311 +{ + // Methods + protected void .ctor(); // 0x004474EC + public static MD5 Create(); // 0x00447514 + public static MD5 Create(string algName); // 0x00447570 +} + +// Namespace: System.Security.Cryptography +public sealed class MD5CryptoServiceProvider : MD5 // TypeDefIndex: 1312 +{ + // Fields + private const int BLOCK_SIZE_BYTES = 64; // 0x00 + private const int HASH_SIZE_BYTES = 16; // 0x00 + private uint[] _H; // 0x18 + private uint[] buff; // 0x1C + private ulong count; // 0x20 + private byte[] _ProcessingBuffer; // 0x28 + private int _ProcessingBufferCount; // 0x2C + private static readonly uint[] K; // 0x00 + + // Methods + public void .ctor(); // 0x00447644 + private static void .cctor(); // 0x0044780C + protected override void Finalize(); // 0x004478A4 + protected override void Dispose(bool disposing); // 0x004478B4 + protected override void HashCore(byte[] rgb, int ibStart, int cbSize); // 0x00447940 + protected override byte[] HashFinal(); // 0x0044A668 + public override void Initialize(); // 0x004476FC + private void ProcessBlock(byte[] inputBuffer, int inputOffset); // 0x00447A44 + private void ProcessFinalBlock(byte[] inputBuffer, int inputOffset, int inputCount); // 0x0044A790 + internal void AddLength(ulong length, byte[] buffer, int position); // 0x0044A9B4 +} + +// Namespace: System.Security.Cryptography +public abstract class MaskGenerationMethod // TypeDefIndex: 1313 +{ + // Methods + protected void .ctor(); // 0x001681B8 + public abstract byte[] GenerateMask(byte[] rgbSeed, int cbReturn); +} + +// Namespace: System.Security.Cryptography +public class PKCS1MaskGenerationMethod : MaskGenerationMethod // TypeDefIndex: 1314 +{ + // Fields + private string hashName; // 0x08 + + // Properties + public string HashName { get; set; } // 0x0016822C 0x00168234 + + // Methods + public void .ctor(); // 0x001681C0 + public override byte[] GenerateMask(byte[] rgbSeed, int cbReturn); // 0x001682B0 +} + +// Namespace: System.Security.Cryptography +[Serializable] +public enum PaddingMode // TypeDefIndex: 1315 +{ + None = 1, + PKCS7 = 2, + Zeros = 3, + ANSIX923 = 4, + ISO10126 = 5 +} + +// Namespace: System.Security.Cryptography +public class PasswordDeriveBytes : DeriveBytes // TypeDefIndex: 1316 +{ + // Fields + private string HashNameValue; // 0x08 + private byte[] SaltValue; // 0x0C + private int IterationsValue; // 0x10 + private HashAlgorithm hash; // 0x14 + private int state; // 0x18 + private byte[] password; // 0x1C + private byte[] initial; // 0x20 + private byte[] output; // 0x24 + private int position; // 0x28 + private int hashnumber; // 0x2C + + // Properties + public string HashName { get; set; } // 0x00168F94 0x00168D5C + public int IterationCount { get; set; } // 0x00168F9C 0x00168E70 + public byte[] Salt { get; set; } // 0x00168FA4 0x00168C3C + + // Methods + public void .ctor(string strPassword, byte[] rgbSalt); // 0x00168354 + public void .ctor(string strPassword, byte[] rgbSalt, CspParameters cspParams); // 0x00168548 + public void .ctor(string strPassword, byte[] rgbSalt, string strHashName, int iterations); // 0x00168644 + public void .ctor(string strPassword, byte[] rgbSalt, string strHashName, int iterations, CspParameters cspParams); // 0x0016868C + public void .ctor(byte[] password, byte[] salt); // 0x00168780 + public void .ctor(byte[] password, byte[] salt, CspParameters cspParams); // 0x00168954 + public void .ctor(byte[] password, byte[] salt, string hashName, int iterations); // 0x00168A50 + public void .ctor(byte[] password, byte[] salt, string hashName, int iterations, CspParameters cspParams); // 0x00168A98 + protected override void Finalize(); // 0x00168B8C + private void Prepare(string strPassword, byte[] rgbSalt, string strHashName, int iterations); // 0x001683E4 + private void Prepare(byte[] password, byte[] rgbSalt, string strHashName, int iterations); // 0x00168810 + public byte[] CryptDeriveKey(string algname, string alghashname, int keySize, byte[] rgbIV); // 0x00169050 + public override byte[] GetBytes(int cb); // 0x00169154 + public override void Reset(); // 0x00169554 +} + +// Namespace: System.Security.Cryptography +public abstract class RC2 : SymmetricAlgorithm // TypeDefIndex: 1317 +{ + // Fields + protected int EffectiveKeySizeValue; // 0x30 + + // Properties + public virtual int EffectiveKeySize { get; set; } // 0x00169990 0x001699A4 + public override int KeySize { get; set; } // 0x001699AC 0x001699B4 + + // Methods + protected void .ctor(); // 0x00169680 + public static RC2 Create(); // 0x0016985C + public static RC2 Create(string AlgName); // 0x001698B8 +} + +// Namespace: System.Security.Cryptography +public sealed class RC2CryptoServiceProvider : RC2 // TypeDefIndex: 1318 +{ + // Fields + private bool _useSalt; // 0x34 + + // Properties + public override int EffectiveKeySize { get; set; } // 0x001699D8 0x001699EC + public bool UseSalt { get; set; } // 0x0016A400 0x0016A408 + + // Methods + public void .ctor(); // 0x001699D4 + public override ICryptoTransform CreateDecryptor(byte[] rgbKey, byte[] rgbIV); // 0x00169AAC + public override ICryptoTransform CreateEncryptor(byte[] rgbKey, byte[] rgbIV); // 0x0016A32C + public override void GenerateIV(); // 0x0016A3B8 + public override void GenerateKey(); // 0x0016A3DC +} + +// Namespace: System.Security.Cryptography +internal class RC2Transform : SymmetricTransform // TypeDefIndex: 1319 +{ + // Fields + private ushort R0; // 0x34 + private ushort R1; // 0x36 + private ushort R2; // 0x38 + private ushort R3; // 0x3A + private ushort[] K; // 0x3C + private int j; // 0x40 + private static readonly byte[] pitable; // 0x00 + + // Methods + public void .ctor(RC2 rc2Algo, bool encryption, byte[] key, byte[] iv); // 0x00169B38 + private static void .cctor(); // 0x0016A410 + protected override void ECB(byte[] input, byte[] output); // 0x0016A4A8 +} + +// Namespace: System.Security.Cryptography +public abstract class RIPEMD160 : HashAlgorithm // TypeDefIndex: 1320 +{ + // Methods + protected void .ctor(); // 0x0016B7FC + public static RIPEMD160 Create(); // 0x0016B81C + public static RIPEMD160 Create(string hashName); // 0x0016B878 +} + +// Namespace: System.Security.Cryptography +public class RIPEMD160Managed : RIPEMD160 // TypeDefIndex: 1321 +{ + // Fields + private const int BLOCK_SIZE_BYTES = 64; // 0x00 + private byte[] _ProcessingBuffer; // 0x18 + private uint[] _X; // 0x1C + private uint[] _HashValue; // 0x20 + private ulong _Length; // 0x28 + private int _ProcessingBufferCount; // 0x30 + + // Methods + public void .ctor(); // 0x0016B950 + public override void Initialize(); // 0x0016BA0C + protected override void HashCore(byte[] rgb, int ibStart, int cbSize); // 0x0016BBA8 + protected override byte[] HashFinal(); // 0x0016BEEC + protected override void Finalize(); // 0x0016C278 + private void ProcessBlock(byte[] buffer, int offset); // 0x0016BCBC + private void Compress(); // 0x0016C2F0 + private void CompressFinal(ulong length); // 0x0016C080 + private uint ROL(uint x, int n); // 0x00171448 + private uint F(uint x, uint y, uint z); // 0x00171458 + private uint G(uint x, uint y, uint z); // 0x00171464 + private uint H(uint x, uint y, uint z); // 0x00171474 + private uint I(uint x, uint y, uint z); // 0x00171484 + private uint J(uint x, uint y, uint z); // 0x00171494 + private void FF(uint a, uint b, uint c, uint d, uint e, uint x, int s); // 0x001710C0 + private void GG(uint a, uint b, uint c, uint d, uint e, uint x, int s); // 0x0017110C + private void HH(uint a, uint b, uint c, uint d, uint e, uint x, int s); // 0x00171168 + private void II(uint a, uint b, uint c, uint d, uint e, uint x, int s); // 0x001711C8 + private void JJ(uint a, uint b, uint c, uint d, uint e, uint x, int s); // 0x00171224 + private void FFF(uint a, uint b, uint c, uint d, uint e, uint x, int s); // 0x001713FC + private void GGG(uint a, uint b, uint c, uint d, uint e, uint x, int s); // 0x001713A0 + private void HHH(uint a, uint b, uint c, uint d, uint e, uint x, int s); // 0x00171340 + private void III(uint a, uint b, uint c, uint d, uint e, uint x, int s); // 0x001712E4 + private void JJJ(uint a, uint b, uint c, uint d, uint e, uint x, int s); // 0x00171284 +} + +// Namespace: System.Security.Cryptography +public sealed class RNGCryptoServiceProvider : RandomNumberGenerator // TypeDefIndex: 1322 +{ + // Fields + private static object _lock; // 0x00 + private IntPtr _handle; // 0x08 + + // Methods + public void .ctor(); // 0x001714A4 + private static void .cctor(); // 0x0017160C + private void Check(); // 0x00171548 + private static bool RngOpen(); // 0x00171698 + private static IntPtr RngInitialize(byte[] seed); // 0x00171544 + private static IntPtr RngGetBytes(IntPtr handle, byte[] data); // 0x0017169C + private static void RngClose(IntPtr handle); // 0x001716A0 + public override void GetBytes(byte[] data); // 0x001716A4 + public override void GetNonZeroBytes(byte[] data); // 0x001718AC + protected override void Finalize(); // 0x00171AA0 +} + +// Namespace: System.Security.Cryptography +public abstract class RSA : AsymmetricAlgorithm // TypeDefIndex: 1323 +{ + // Methods + protected void .ctor(); // 0x00171B98 + public static RSA Create(); // 0x00171BA0 + public static RSA Create(string algName); // 0x00171BFC + public abstract byte[] EncryptValue(byte[] rgb); + public abstract byte[] DecryptValue(byte[] rgb); + public abstract RSAParameters ExportParameters(bool includePrivateParameters); + public abstract void ImportParameters(RSAParameters parameters); + internal void ZeroizePrivateKey(RSAParameters parameters); // 0x00171CD4 + public override void FromXmlString(string xmlString); // 0x00171DA0 + public override string ToXmlString(bool includePrivateParameters); // 0x001722DC +} + +// Namespace: System.Security.Cryptography +public sealed class RSACryptoServiceProvider : RSA, ICspAsymmetricAlgorithm // TypeDefIndex: 1324 +{ + // Fields + private const int PROV_RSA_FULL = 1; // 0x00 + private KeyPairPersistence store; // 0x10 + private bool persistKey; // 0x14 + private bool persisted; // 0x15 + private bool privateKeyExportable; // 0x16 + private bool m_disposed; // 0x17 + private RSAManaged rsa; // 0x18 + private static bool useMachineKeyStore; // 0x00 + private static Dictionary`2 <>f__switch$map29; // 0x04 + + // Properties + public static bool UseMachineKeyStore { get; set; } // 0x00172F6C 0x00172FF8 + public override string KeyExchangeAlgorithm { get; } // 0x00173160 + public override int KeySize { get; } // 0x00172F48 + public bool PersistKeyInCsp { get; set; } // 0x001731BC 0x001731C4 + public bool PublicOnly { get; } // 0x00173284 + public override string SignatureAlgorithm { get; } // 0x001732B0 + public CspKeyContainerInfo CspKeyContainerInfo { get; } // 0x00174430 + + // Methods + public void .ctor(); // 0x00172B1C + public void .ctor(CspParameters parameters); // 0x00172E98 + public void .ctor(int dwKeySize); // 0x00172ED0 + public void .ctor(int dwKeySize, CspParameters parameters); // 0x00172F08 + private static void .cctor(); // 0x00172F44 + private void Common(int dwKeySize, CspParameters p); // 0x00172B50 + protected override void Finalize(); // 0x00173088 + public byte[] Decrypt(byte[] rgb, bool fOAEP); // 0x0017330C + public override byte[] DecryptValue(byte[] rgb); // 0x001734A8 + public byte[] Encrypt(byte[] rgb, bool fOAEP); // 0x001735A4 + public override byte[] EncryptValue(byte[] rgb); // 0x001736F0 + public override RSAParameters ExportParameters(bool includePrivateParameters); // 0x0017372C + public override void ImportParameters(RSAParameters parameters); // 0x00173818 + private HashAlgorithm GetHash(object halg); // 0x001738A8 + public byte[] SignData(byte[] buffer, object halg); // 0x00173A90 + public byte[] SignData(Stream inputStream, object halg); // 0x00173C44 + public byte[] SignData(byte[] buffer, int offset, int count, object halg); // 0x00173B64 + private string GetHashNameFromOID(string oid); // 0x00173D08 + public byte[] SignHash(byte[] rgbHash, string str); // 0x00174004 + public bool VerifyData(byte[] buffer, object halg, byte[] signature); // 0x00174128 + public bool VerifyHash(byte[] rgbHash, string str, byte[] rgbSignature); // 0x001742AC + protected override void Dispose(bool disposing); // 0x001730F0 + private void OnKeyGenerated(object sender, EventArgs e); // 0x001731D4 + public byte[] ExportCspBlob(bool includePrivateParameters); // 0x00174438 + public void ImportCspBlob(byte[] keyBlob); // 0x0017449C +} + +// Namespace: System.Security.Cryptography +public class RSAOAEPKeyExchangeDeformatter : AsymmetricKeyExchangeDeformatter // TypeDefIndex: 1325 +{ + // Fields + private RSA rsa; // 0x08 + + // Properties + public override string Parameters { get; set; } // 0x001747F8 0x00174800 + + // Methods + public void .ctor(); // 0x001747F0 + public void .ctor(AsymmetricAlgorithm key); // 0x00173440 + public override byte[] DecryptKeyExchange(byte[] rgbData); // 0x00174804 + public override void SetKey(AsymmetricAlgorithm key); // 0x00174968 +} + +// Namespace: System.Security.Cryptography +public class RSAOAEPKeyExchangeFormatter : AsymmetricKeyExchangeFormatter // TypeDefIndex: 1326 +{ + // Fields + private RSA rsa; // 0x08 + private RandomNumberGenerator random; // 0x0C + private byte[] param; // 0x10 + + // Properties + public byte[] Parameter { get; set; } // 0x00174A30 0x00174A38 + public override string Parameters { get; } // 0x00174A40 + public RandomNumberGenerator Rng { get; set; } // 0x00174A48 0x00174A50 + + // Methods + public void .ctor(); // 0x00174A10 + public void .ctor(AsymmetricAlgorithm key); // 0x00173694 + public override byte[] CreateKeyExchange(byte[] rgbData); // 0x00174A58 + public override byte[] CreateKeyExchange(byte[] rgbData, Type symAlgType); // 0x00174BEC + public override void SetKey(AsymmetricAlgorithm key); // 0x00174BFC +} + +// Namespace: System.Security.Cryptography +public class RSAPKCS1KeyExchangeDeformatter : AsymmetricKeyExchangeDeformatter // TypeDefIndex: 1327 +{ + // Fields + private RSA rsa; // 0x08 + private RandomNumberGenerator random; // 0x0C + + // Properties + public override string Parameters { get; set; } // 0x00174CAC 0x00174CB4 + public RandomNumberGenerator RNG { get; set; } // 0x00174CB8 0x00174CC0 + + // Methods + public void .ctor(); // 0x00174CA4 + public void .ctor(AsymmetricAlgorithm key); // 0x00173474 + public override byte[] DecryptKeyExchange(byte[] rgbIn); // 0x00174CC8 + public override void SetKey(AsymmetricAlgorithm key); // 0x00174E18 +} + +// Namespace: System.Security.Cryptography +public class RSAPKCS1KeyExchangeFormatter : AsymmetricKeyExchangeFormatter // TypeDefIndex: 1328 +{ + // Fields + private RSA rsa; // 0x08 + private RandomNumberGenerator random; // 0x0C + + // Properties + public RandomNumberGenerator Rng { get; set; } // 0x00174FC0 0x00174FC8 + public override string Parameters { get; } // 0x00174FD0 + + // Methods + public void .ctor(); // 0x00174EC0 + public void .ctor(AsymmetricAlgorithm key); // 0x001736C8 + public override byte[] CreateKeyExchange(byte[] rgbData); // 0x0017502C + public override byte[] CreateKeyExchange(byte[] rgbData, Type symAlgType); // 0x0017519C + private void SetRSAKey(AsymmetricAlgorithm key); // 0x00174EC8 + public override void SetKey(AsymmetricAlgorithm key); // 0x001751AC +} + +// Namespace: System.Security.Cryptography +public class RSAPKCS1SignatureDeformatter : AsymmetricSignatureDeformatter // TypeDefIndex: 1329 +{ + // Fields + private RSA rsa; // 0x08 + private string hashName; // 0x0C + + // Methods + public void .ctor(); // 0x00175260 + public void .ctor(AsymmetricAlgorithm key); // 0x00175268 + public override void SetHashAlgorithm(string strName); // 0x0017529C + public override void SetKey(AsymmetricAlgorithm key); // 0x0017534C + public override bool VerifySignature(byte[] rgbHash, byte[] rgbSignature); // 0x00175444 +} + +// Namespace: System.Security.Cryptography +public class RSAPKCS1SignatureFormatter : AsymmetricSignatureFormatter // TypeDefIndex: 1330 +{ + // Fields + private RSA rsa; // 0x08 + private HashAlgorithm hash; // 0x0C + + // Methods + public void .ctor(); // 0x00175660 + public void .ctor(AsymmetricAlgorithm key); // 0x00175668 + public override byte[] CreateSignature(byte[] rgbHash); // 0x0017569C + public override void SetHashAlgorithm(string strName); // 0x0017584C + public override void SetKey(AsymmetricAlgorithm key); // 0x0017586C +} + +// Namespace: System.Security.Cryptography +[Serializable] +public struct RSAParameters // TypeDefIndex: 1331 +{ + // Fields + [NonSerialized] public byte[] P; // 0x08 + [NonSerialized] public byte[] Q; // 0x0C + [NonSerialized] public byte[] D; // 0x10 + [NonSerialized] public byte[] DP; // 0x14 + [NonSerialized] public byte[] DQ; // 0x18 + [NonSerialized] public byte[] InverseQ; // 0x1C + public byte[] Modulus; // 0x20 + public byte[] Exponent; // 0x24 + +} + +// Namespace: System.Security.Cryptography +public abstract class RandomNumberGenerator // TypeDefIndex: 1332 +{ + // Methods + protected void .ctor(); // 0x0017153C + public static RandomNumberGenerator Create(); // 0x00174B90 + public static RandomNumberGenerator Create(string rngName); // 0x00175964 + public abstract void GetBytes(byte[] data); + public abstract void GetNonZeroBytes(byte[] data); +} + +// Namespace: System.Security.Cryptography +public class Rfc2898DeriveBytes : DeriveBytes // TypeDefIndex: 1333 +{ + // Fields + private const int defaultIterations = 1000; // 0x00 + private int _iteration; // 0x08 + private byte[] _salt; // 0x0C + private HMACSHA1 _hmac; // 0x10 + private byte[] _buffer; // 0x14 + private int _pos; // 0x18 + private int _f; // 0x1C + + // Properties + public int IterationCount { get; set; } // 0x001760A8 0x00175D18 + public byte[] Salt { get; set; } // 0x001760B0 0x00175BC0 + + // Methods + public void .ctor(string password, byte[] salt); // 0x00175A3C + public void .ctor(string password, byte[] salt, int iterations); // 0x00175A58 + public void .ctor(byte[] password, byte[] salt, int iterations); // 0x00175DC8 + public void .ctor(string password, int saltSize); // 0x00175ECC + public void .ctor(string password, int saltSize, int iterations); // 0x00175EE8 + private byte[] F(byte[] s, int c, int i); // 0x00176168 + public override byte[] GetBytes(int cb); // 0x00176364 + public override void Reset(); // 0x001765E4 +} + +// Namespace: System.Security.Cryptography +public abstract class Rijndael : SymmetricAlgorithm // TypeDefIndex: 1334 +{ + // Methods + protected void .ctor(); // 0x001765F8 + public static Rijndael Create(); // 0x001767D0 + public static Rijndael Create(string algName); // 0x0017682C +} + +// Namespace: System.Security.Cryptography +public sealed class RijndaelManaged : Rijndael // TypeDefIndex: 1335 +{ + // Methods + public void .ctor(); // 0x00176904 + public override void GenerateIV(); // 0x00176908 + public override void GenerateKey(); // 0x0017692C + public override ICryptoTransform CreateDecryptor(byte[] rgbKey, byte[] rgbIV); // 0x00176950 + public override ICryptoTransform CreateEncryptor(byte[] rgbKey, byte[] rgbIV); // 0x00176AA4 +} + +// Namespace: System.Security.Cryptography +internal class RijndaelTransform : SymmetricTransform // TypeDefIndex: 1336 +{ + // Fields + private uint[] expandedKey; // 0x34 + private int Nb; // 0x38 + private int Nk; // 0x3C + private int Nr; // 0x40 + private static readonly uint[] Rcon; // 0x00 + private static readonly byte[] SBox; // 0x04 + private static readonly byte[] iSBox; // 0x08 + private static readonly uint[] T0; // 0x0C + private static readonly uint[] T1; // 0x10 + private static readonly uint[] T2; // 0x14 + private static readonly uint[] T3; // 0x18 + private static readonly uint[] iT0; // 0x1C + private static readonly uint[] iT1; // 0x20 + private static readonly uint[] iT2; // 0x24 + private static readonly uint[] iT3; // 0x28 + + // Methods + public void .ctor(Rijndael algo, bool encryption, byte[] key, byte[] iv); // 0x00176B30 + private static void .cctor(); // 0x00177B54 + public void Clear(); // 0x001777A8 + protected override void ECB(byte[] input, byte[] output); // 0x00177E28 + private uint SubByte(uint a); // 0x00177990 + private void Encrypt128(byte[] indata, byte[] outdata, uint[] ekey); // 0x00177EC0 + private void Encrypt192(byte[] indata, byte[] outdata, uint[] ekey); // 0x0017E198 + private void Encrypt256(byte[] indata, byte[] outdata, uint[] ekey); // 0x001875A8 + private void Decrypt128(byte[] indata, byte[] outdata, uint[] ekey); // 0x00193BD8 + private void Decrypt192(byte[] indata, byte[] outdata, uint[] ekey); // 0x00199D14 + private void Decrypt256(byte[] indata, byte[] outdata, uint[] ekey); // 0x001A30A4 +} + +// Namespace: System.Security.Cryptography +public sealed class RijndaelManagedTransform : IDisposable, ICryptoTransform // TypeDefIndex: 1337 +{ + // Fields + private RijndaelTransform _st; // 0x08 + private int _bs; // 0x0C + + // Properties + public int BlockSizeValue { get; } // 0x001777BC + public bool CanTransformMultipleBlocks { get; } // 0x001777C4 + public bool CanReuseTransform { get; } // 0x001777F8 + public int InputBlockSize { get; } // 0x0017782C + public int OutputBlockSize { get; } // 0x00177860 + + // Methods + internal void .ctor(Rijndael algo, bool encryption, byte[] key, byte[] iv); // 0x001769DC + private void System.IDisposable.Dispose(); // 0x00177770 + public void Clear(); // 0x00177894 + public void Reset(); // 0x001778CC + public int TransformBlock(byte[] inputBuffer, int inputOffset, int inputCount, byte[] outputBuffer, int outputOffset); // 0x001778D0 + public byte[] TransformFinalBlock(byte[] inputBuffer, int inputOffset, int inputCount); // 0x00177938 +} + +// Namespace: System.Security.Cryptography +public abstract class SHA1 : HashAlgorithm // TypeDefIndex: 1338 +{ + // Methods + protected void .ctor(); // 0x003CC328 + public static SHA1 Create(); // 0x003CC348 + public static SHA1 Create(string hashName); // 0x003CC3A4 +} + +// Namespace: System.Security.Cryptography +internal class SHA1Internal // TypeDefIndex: 1339 +{ + // Fields + private const int BLOCK_SIZE_BYTES = 64; // 0x00 + private const int HASH_SIZE_BYTES = 20; // 0x00 + private uint[] _H; // 0x08 + private ulong count; // 0x10 + private byte[] _ProcessingBuffer; // 0x18 + private int _ProcessingBufferCount; // 0x1C + private uint[] buff; // 0x20 + + // Methods + public void .ctor(); // 0x003CC4FC + public void HashCore(byte[] rgb, int ibStart, int cbSize); // 0x003CC668 + public byte[] HashFinal(); // 0x003CC794 + public void Initialize(); // 0x003CC8E8 + private void ProcessBlock(byte[] inputBuffer, uint inputOffset); // 0x003CCA34 + private static void InitialiseBuff(uint[] buff, byte[] input, uint inputOffset); // 0x003CD710 + private static void FillBuff(uint[] buff); // 0x003CE44C + private void ProcessFinalBlock(byte[] inputBuffer, int inputOffset, int inputCount); // 0x003CD4DC + internal void AddLength(ulong length, byte[] buffer, int position); // 0x003CEAD8 +} + +// Namespace: System.Security.Cryptography +public sealed class SHA1CryptoServiceProvider : SHA1 // TypeDefIndex: 1340 +{ + // Fields + private SHA1Internal sha; // 0x18 + + // Methods + public void .ctor(); // 0x003CC47C + protected override void Finalize(); // 0x003CC5A4 + protected override void Dispose(bool disposing); // 0x003CC610 + protected override void HashCore(byte[] rgb, int ibStart, int cbSize); // 0x003CC618 + protected override byte[] HashFinal(); // 0x003CC764 + public override void Initialize(); // 0x003CC8C0 +} + +// Namespace: System.Security.Cryptography +public class SHA1Managed : SHA1 // TypeDefIndex: 1341 +{ + // Fields + private SHA1Internal sha; // 0x18 + + // Methods + public void .ctor(); // 0x003CEC6C + protected override void HashCore(byte[] rgb, int ibStart, int cbSize); // 0x003CECEC + protected override byte[] HashFinal(); // 0x003CED3C + public override void Initialize(); // 0x003CED6C +} + +// Namespace: System.Security.Cryptography +public abstract class SHA256 : HashAlgorithm // TypeDefIndex: 1342 +{ + // Methods + protected void .ctor(); // 0x003CED94 + public static SHA256 Create(); // 0x003CEDB4 + public static SHA256 Create(string hashName); // 0x003CEE10 +} + +// Namespace: System.Security.Cryptography +public class SHA256Managed : SHA256 // TypeDefIndex: 1343 +{ + // Fields + private const int BLOCK_SIZE_BYTES = 64; // 0x00 + private const int HASH_SIZE_BYTES = 32; // 0x00 + private uint[] _H; // 0x18 + private ulong count; // 0x20 + private byte[] _ProcessingBuffer; // 0x28 + private int _ProcessingBufferCount; // 0x2C + private uint[] buff; // 0x30 + + // Methods + public void .ctor(); // 0x003CEEE8 + protected override void HashCore(byte[] rgb, int ibStart, int cbSize); // 0x003CEFA4 + protected override byte[] HashFinal(); // 0x003CF95C + public override void Initialize(); // 0x003CFCB4 + private void ProcessBlock(byte[] inputBuffer, int inputOffset); // 0x003CF0A8 + private void ProcessFinalBlock(byte[] inputBuffer, int inputOffset, int inputCount); // 0x003CFA90 + internal void AddLength(ulong length, byte[] buffer, int position); // 0x003CFEB4 +} + +// Namespace: System.Security.Cryptography +public abstract class SHA384 : HashAlgorithm // TypeDefIndex: 1344 +{ + // Methods + protected void .ctor(); // 0x003D0048 + public static SHA384 Create(); // 0x003D0068 + public static SHA384 Create(string hashName); // 0x003D00C4 +} + +// Namespace: System.Security.Cryptography +public class SHA384Managed : SHA384 // TypeDefIndex: 1345 +{ + // Fields + private byte[] xBuf; // 0x18 + private int xBufOff; // 0x1C + private ulong byteCount1; // 0x20 + private ulong byteCount2; // 0x28 + private ulong H1; // 0x30 + private ulong H2; // 0x38 + private ulong H3; // 0x40 + private ulong H4; // 0x48 + private ulong H5; // 0x50 + private ulong H6; // 0x58 + private ulong H7; // 0x60 + private ulong H8; // 0x68 + private ulong[] W; // 0x70 + private int wOff; // 0x74 + + // Methods + public void .ctor(); // 0x003D01A0 + private void Initialize(bool reuse); // 0x003D02C0 + public override void Initialize(); // 0x003D0448 + protected override void HashCore(byte[] rgb, int ibStart, int cbSize); // 0x003D0450 + protected override byte[] HashFinal(); // 0x003D08A4 + private void update(byte input); // 0x003D05E8 + private void processWord(byte[] input, int inOff); // 0x003D0688 + private void unpackWord(ulong word, byte[] output, int outOff); // 0x003D1228 + private void adjustByteCounts(); // 0x003D0A68 + private void processLength(ulong lowW, ulong hiW); // 0x003D0AA4 + private void processBlock(); // 0x003D0B40 +} + +// Namespace: System.Security.Cryptography +public abstract class SHA512 : HashAlgorithm // TypeDefIndex: 1346 +{ + // Methods + protected void .ctor(); // 0x003D13B4 + public static SHA512 Create(); // 0x003D13D4 + public static SHA512 Create(string hashName); // 0x003D1430 +} + +// Namespace: System.Security.Cryptography +public class SHA512Managed : SHA512 // TypeDefIndex: 1347 +{ + // Fields + private byte[] xBuf; // 0x18 + private int xBufOff; // 0x1C + private ulong byteCount1; // 0x20 + private ulong byteCount2; // 0x28 + private ulong H1; // 0x30 + private ulong H2; // 0x38 + private ulong H3; // 0x40 + private ulong H4; // 0x48 + private ulong H5; // 0x50 + private ulong H6; // 0x58 + private ulong H7; // 0x60 + private ulong H8; // 0x68 + private ulong[] W; // 0x70 + private int wOff; // 0x74 + + // Methods + public void .ctor(); // 0x003D1508 + private void Initialize(bool reuse); // 0x003D1628 + public override void Initialize(); // 0x003D17B0 + protected override void HashCore(byte[] rgb, int ibStart, int cbSize); // 0x003D17B8 + protected override byte[] HashFinal(); // 0x003D1C0C + private void update(byte input); // 0x003D1950 + private void processWord(byte[] input, int inOff); // 0x003D19F0 + private void unpackWord(ulong word, byte[] output, int outOff); // 0x003D2670 + private void adjustByteCounts(); // 0x003D1E08 + private void processLength(ulong lowW, ulong hiW); // 0x003D1E44 + private void processBlock(); // 0x003D1EE0 + private ulong rotateRight(ulong x, int n); // 0x003D2968 + private ulong Ch(ulong x, ulong y, ulong z); // 0x003D28B4 + private ulong Maj(ulong x, ulong y, ulong z); // 0x003D292C + private ulong Sum0(ulong x); // 0x003D28E8 + private ulong Sum1(ulong x); // 0x003D2870 + private ulong Sigma0(ulong x); // 0x003D2838 + private ulong Sigma1(ulong x); // 0x003D27FC +} + +// Namespace: System.Security.Cryptography +internal static class SHAConstants // TypeDefIndex: 1348 +{ + // Fields + public static readonly uint[] K1; // 0x00 + public static readonly ulong[] K2; // 0x04 + + // Methods + private static void .cctor(); // 0x003D29D4 +} + +// Namespace: System.Security.Cryptography +public class SignatureDescription // TypeDefIndex: 1349 +{ + // Fields + private string _DeformatterAlgorithm; // 0x08 + private string _DigestAlgorithm; // 0x0C + private string _FormatterAlgorithm; // 0x10 + private string _KeyAlgorithm; // 0x14 + + // Properties + public string DeformatterAlgorithm { get; set; } // 0x003D2C34 0x003D2C3C + public string DigestAlgorithm { get; set; } // 0x003D2C44 0x003D2C4C + public string FormatterAlgorithm { get; set; } // 0x003D2C54 0x003D2C5C + public string KeyAlgorithm { get; set; } // 0x003D2C64 0x003D2C6C + + // Methods + public void .ctor(); // 0x003D2AB0 + public void .ctor(SecurityElement el); // 0x003D2AB8 + public virtual AsymmetricSignatureDeformatter CreateDeformatter(AsymmetricAlgorithm key); // 0x003D2C74 + public virtual HashAlgorithm CreateDigest(); // 0x003D2E2C + public virtual AsymmetricSignatureFormatter CreateFormatter(AsymmetricAlgorithm key); // 0x003D2F68 +} + +// Namespace: System.Security.Cryptography +internal class DSASignatureDescription : SignatureDescription // TypeDefIndex: 1350 +{ + // Methods + public void .ctor(); // 0x004436A8 +} + +// Namespace: System.Security.Cryptography +internal class RSAPKCS1SHA1SignatureDescription : SignatureDescription // TypeDefIndex: 1351 +{ + // Methods + public void .ctor(); // 0x001751B0 + public override AsymmetricSignatureDeformatter CreateDeformatter(AsymmetricAlgorithm key); // 0x00175258 +} + +// Namespace: System.Security.Cryptography +public abstract class SymmetricAlgorithm : IDisposable // TypeDefIndex: 1352 +{ + // Fields + protected int BlockSizeValue; // 0x08 + protected byte[] IVValue; // 0x0C + protected int KeySizeValue; // 0x10 + protected byte[] KeyValue; // 0x14 + protected KeySizes[] LegalBlockSizesValue; // 0x18 + protected KeySizes[] LegalKeySizesValue; // 0x1C + protected int FeedbackSizeValue; // 0x20 + protected CipherMode ModeValue; // 0x24 + protected PaddingMode PaddingValue; // 0x28 + private bool m_disposed; // 0x2C + + // Properties + public virtual int BlockSize { get; set; } // 0x003D3258 0x003D3260 + public virtual int FeedbackSize { get; set; } // 0x003D3340 0x003D3348 + public virtual byte[] IV { get; set; } // 0x003D3410 0x003D34E8 + public virtual byte[] Key { get; set; } // 0x003D3658 0x003D3730 + public virtual int KeySize { get; set; } // 0x003D38B4 0x003D38BC + public virtual KeySizes[] LegalBlockSizes { get; } // 0x003D3990 + public virtual KeySizes[] LegalKeySizes { get; } // 0x003D3998 + public virtual CipherMode Mode { get; set; } // 0x003D39A0 0x003D39A8 + public virtual PaddingMode Padding { get; set; } // 0x003D3B0C 0x003D3B14 + + // Methods + protected void .ctor(); // 0x003D3120 + private void System.IDisposable.Dispose(); // 0x003D3150 + protected override void Finalize(); // 0x003D3184 + public void Clear(); // 0x003D31FC + protected virtual void Dispose(bool disposing); // 0x003D3210 + public virtual ICryptoTransform CreateDecryptor(); // 0x003D3C78 + public abstract ICryptoTransform CreateDecryptor(byte[] rgbKey, byte[] rgbIV); + public virtual ICryptoTransform CreateEncryptor(); // 0x003D3CD0 + public abstract ICryptoTransform CreateEncryptor(byte[] rgbKey, byte[] rgbIV); + public abstract void GenerateIV(); + public abstract void GenerateKey(); + public bool ValidKeySize(int bitLength); // 0x003D3D28 + public static SymmetricAlgorithm Create(); // 0x003D3D34 + public static SymmetricAlgorithm Create(string algName); // 0x003D3D90 +} + +// Namespace: System.Security.Cryptography +public class ToBase64Transform : IDisposable, ICryptoTransform // TypeDefIndex: 1353 +{ + // Fields + private const int inputBlockSize = 3; // 0x00 + private const int outputBlockSize = 4; // 0x00 + private bool m_disposed; // 0x08 + + // Properties + public bool CanTransformMultipleBlocks { get; } // 0x003D3F1C + public virtual bool CanReuseTransform { get; } // 0x003D3F24 + public int InputBlockSize { get; } // 0x003D3F2C + public int OutputBlockSize { get; } // 0x003D3F34 + + // Methods + public void .ctor(); // 0x003D3E68 + private void System.IDisposable.Dispose(); // 0x003D3E70 + protected override void Finalize(); // 0x003D3EA4 + public void Clear(); // 0x003D3F3C + protected virtual void Dispose(bool disposing); // 0x003D3F50 + public int TransformBlock(byte[] inputBuffer, int inputOffset, int inputCount, byte[] outputBuffer, int outputOffset); // 0x003D3F64 + internal static void InternalTransformBlock(byte[] inputBuffer, int inputOffset, int inputCount, byte[] outputBuffer, int outputOffset); // 0x003D434C + public byte[] TransformFinalBlock(byte[] inputBuffer, int inputOffset, int inputCount); // 0x003D45EC + internal static byte[] InternalTransformFinalBlock(byte[] inputBuffer, int inputOffset, int inputCount); // 0x003D4834 +} + +// Namespace: System.Security.Cryptography +public abstract class TripleDES : SymmetricAlgorithm // TypeDefIndex: 1354 +{ + // Properties + public override byte[] Key { get; set; } // 0x003D4E60 0x003D51D8 + + // Methods + protected void .ctor(); // 0x003D4C70 + public static bool IsWeakKey(byte[] rgbKey); // 0x003D4F6C + public static TripleDES Create(); // 0x003D5348 + public static TripleDES Create(string str); // 0x003D53A4 +} + +// Namespace: System.Security.Cryptography +public sealed class TripleDESCryptoServiceProvider : TripleDES // TypeDefIndex: 1355 +{ + // Methods + public void .ctor(); // 0x003D547C + public override void GenerateIV(); // 0x003D5480 + public override void GenerateKey(); // 0x003D54A4 + public override ICryptoTransform CreateDecryptor(byte[] rgbKey, byte[] rgbIV); // 0x003D556C + public override ICryptoTransform CreateEncryptor(byte[] rgbKey, byte[] rgbIV); // 0x003D595C +} + +// Namespace: System.Security.Cryptography +internal class TripleDESTransform : SymmetricTransform // TypeDefIndex: 1356 +{ + // Fields + private DESTransform E1; // 0x34 + private DESTransform D2; // 0x38 + private DESTransform E3; // 0x3C + private DESTransform D1; // 0x40 + private DESTransform E2; // 0x44 + private DESTransform D3; // 0x48 + + // Methods + public void .ctor(TripleDES algo, bool encryption, byte[] key, byte[] iv); // 0x003D55F8 + protected override void ECB(byte[] input, byte[] output); // 0x003D59E8 + internal static byte[] GetStrongKey(); // 0x003D54BC +} + +// Namespace: System.Security.Permissions +[Serializable] +public abstract class CodeAccessSecurityAttribute : SecurityAttribute // TypeDefIndex: 1357 +{ + // Methods + protected void .ctor(SecurityAction action); // 0x003DA250 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class EnvironmentPermission : CodeAccessPermission, IBuiltInPermission, IUnrestrictedPermission // TypeDefIndex: 1358 +{ + // Fields + private const int version = 1; // 0x00 + private PermissionState _state; // 0x08 + private ArrayList readList; // 0x0C + private ArrayList writeList; // 0x10 + + // Methods + public void .ctor(PermissionState state); // 0x003DA258 + public void .ctor(EnvironmentPermissionAccess flag, string pathList); // 0x003DA304 + private int System.Security.Permissions.IBuiltInPermission.GetTokenIndex(); // 0x003DA7F8 + public void AddPathList(EnvironmentPermissionAccess flag, string pathList); // 0x003DA800 + public override IPermission Copy(); // 0x003DADB0 + public override void FromXml(SecurityElement esd); // 0x003DAEF4 + public string GetPathList(EnvironmentPermissionAccess flag); // 0x003DAE94 + public override IPermission Intersect(IPermission target); // 0x003DB4B0 + public override bool IsSubsetOf(IPermission target); // 0x003DB8C4 + public bool IsUnrestricted(); // 0x003DB8B4 + public void SetPathList(EnvironmentPermissionAccess flag, string pathList); // 0x003DA3B0 + public override SecurityElement ToXml(); // 0x003DBF60 + public override IPermission Union(IPermission other); // 0x003DC098 + private bool IsEmpty(); // 0x003DC214 + private EnvironmentPermission Cast(IPermission target); // 0x003DB7D4 + internal void ThrowInvalidFlag(EnvironmentPermissionAccess flag, bool context); // 0x003DAC78 + private string GetPathList(ArrayList list); // 0x003DB030 +} + +// Namespace: System.Security.Permissions +[Serializable] +public enum EnvironmentPermissionAccess // TypeDefIndex: 1359 +{ + NoAccess = 0, + Read = 1, + Write = 2, + AllAccess = 3 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class EnvironmentPermissionAttribute : CodeAccessSecurityAttribute // TypeDefIndex: 1360 +{ + // Fields + private string read; // 0x10 + private string write; // 0x14 + + // Properties + public string All { get; set; } // 0x003DC2A4 0x003DC340 + public string Read { get; set; } // 0x003DC34C 0x003DC354 + public string Write { get; set; } // 0x003DC35C 0x003DC364 + + // Methods + public void .ctor(SecurityAction action); // 0x003DC29C + public override IPermission CreatePermission(); // 0x003DC36C +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class FileDialogPermission : CodeAccessPermission, IBuiltInPermission, IUnrestrictedPermission // TypeDefIndex: 1361 +{ + // Fields + private const int version = 1; // 0x00 + private FileDialogPermissionAccess _access; // 0x08 + + // Properties + public FileDialogPermissionAccess Access { get; set; } // 0x003DC5C0 0x003DC3D8 + + // Methods + public void .ctor(PermissionState state); // 0x003DC374 + public void .ctor(FileDialogPermissionAccess access); // 0x003DC3B0 + private int System.Security.Permissions.IBuiltInPermission.GetTokenIndex(); // 0x003DC5B8 + public override IPermission Copy(); // 0x003DC5C8 + public override void FromXml(SecurityElement esd); // 0x003DC648 + public override IPermission Intersect(IPermission target); // 0x003DC7FC + public override bool IsSubsetOf(IPermission target); // 0x003DC980 + public bool IsUnrestricted(); // 0x003DC9BC + public override SecurityElement ToXml(); // 0x003DC9D0 + public override IPermission Union(IPermission target); // 0x003DCAE4 + private FileDialogPermission Cast(IPermission target); // 0x003DC8A0 +} + +// Namespace: System.Security.Permissions +[Serializable] +public enum FileDialogPermissionAccess // TypeDefIndex: 1362 +{ + None = 0, + Open = 1, + Save = 2, + OpenSave = 3 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class FileDialogPermissionAttribute : CodeAccessSecurityAttribute // TypeDefIndex: 1363 +{ + // Fields + private bool canOpen; // 0x0D + private bool canSave; // 0x0E + + // Properties + public bool Open { get; set; } // 0x003DCBE0 0x003DCBE8 + public bool Save { get; set; } // 0x003DCBF0 0x003DCBF8 + + // Methods + public void .ctor(SecurityAction action); // 0x003DCBD8 + public override IPermission CreatePermission(); // 0x003DCC00 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class FileIOPermission : CodeAccessPermission, IBuiltInPermission, IUnrestrictedPermission // TypeDefIndex: 1364 +{ + // Fields + private const int version = 1; // 0x00 + private static char[] BadPathNameCharacters; // 0x00 + private static char[] BadFileNameCharacters; // 0x04 + private bool m_Unrestricted; // 0x08 + private FileIOPermissionAccess m_AllFilesAccess; // 0x0C + private FileIOPermissionAccess m_AllLocalFilesAccess; // 0x10 + private ArrayList readList; // 0x14 + private ArrayList writeList; // 0x18 + private ArrayList appendList; // 0x1C + private ArrayList pathList; // 0x20 + + // Properties + public FileIOPermissionAccess AllFiles { get; set; } // 0x003DD354 0x003DD35C + public FileIOPermissionAccess AllLocalFiles { get; set; } // 0x003DD36C 0x003DD374 + + // Methods + public void .ctor(PermissionState state); // 0x003DCCDC + public void .ctor(FileIOPermissionAccess access, string path); // 0x003DCDE0 + public void .ctor(FileIOPermissionAccess access, string[] pathList); // 0x003DCF88 + public void .ctor(FileIOPermissionAccess access, AccessControlActions control, string path); // 0x003DD174 + public void .ctor(FileIOPermissionAccess access, AccessControlActions control, string[] pathList); // 0x003DD20C + private static void .cctor(); // 0x003DD2A4 + private int System.Security.Permissions.IBuiltInPermission.GetTokenIndex(); // 0x003DD34C + internal void CreateLists(); // 0x003DCD28 + public void AddPathList(FileIOPermissionAccess access, string path); // 0x003DCEB8 + public void AddPathList(FileIOPermissionAccess access, string[] pathList); // 0x003DD060 + internal void AddPathInternal(FileIOPermissionAccess access, string path); // 0x003DD83C + public override IPermission Copy(); // 0x003DDA64 + public override void FromXml(SecurityElement esd); // 0x003DDD04 + public string[] GetPathList(FileIOPermissionAccess access); // 0x003DE050 + public override IPermission Intersect(IPermission target); // 0x003DE2A0 + public override bool IsSubsetOf(IPermission target); // 0x003DEEF0 + public bool IsUnrestricted(); // 0x003DF880 + public void SetPathList(FileIOPermissionAccess access, string path); // 0x003DF888 + public void SetPathList(FileIOPermissionAccess access, string[] pathList); // 0x003DFA38 + public override SecurityElement ToXml(); // 0x003DFB58 + public override IPermission Union(IPermission other); // 0x003DFE80 + public override bool Equals(object obj); // 0x003E05F4 + public override int GetHashCode(); // 0x003E05FC + private bool IsEmpty(); // 0x003DEE08 + private static FileIOPermission Cast(IPermission target); // 0x003DE450 + internal static void ThrowInvalidFlag(FileIOPermissionAccess access, bool context); // 0x003DD384 + internal static void ThrowIfInvalidPath(string path); // 0x003DD4BC + internal static void ThrowIfInvalidPath(string[] paths); // 0x003DD99C + internal void Clear(FileIOPermissionAccess access); // 0x003DF964 + internal static bool KeyIsSubsetOf(IList local, IList target); // 0x003DF120 + internal static void UnionKeys(IList list, string[] paths); // 0x003E0164 + internal static void IntersectKeys(IList local, IList target, IList result); // 0x003DE530 +} + +// Namespace: System.Security.Permissions +[Serializable] +public enum FileIOPermissionAccess // TypeDefIndex: 1365 +{ + NoAccess = 0, + Read = 1, + Write = 2, + Append = 4, + PathDiscovery = 8, + AllAccess = 15 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class FileIOPermissionAttribute : CodeAccessSecurityAttribute // TypeDefIndex: 1366 +{ + // Fields + private string append; // 0x10 + private string path; // 0x14 + private string read; // 0x18 + private string write; // 0x1C + private FileIOPermissionAccess allFiles; // 0x20 + private FileIOPermissionAccess allLocalFiles; // 0x24 + private string changeAccessControl; // 0x28 + private string viewAccessControl; // 0x2C + + // Properties + public string All { get; set; } // 0x003E060C 0x003E06A8 + public string Append { get; set; } // 0x003E06B8 0x003E06C0 + public string PathDiscovery { get; set; } // 0x003E06C8 0x003E06D0 + public string Read { get; set; } // 0x003E06D8 0x003E06E0 + public string Write { get; set; } // 0x003E06E8 0x003E06F0 + public FileIOPermissionAccess AllFiles { get; set; } // 0x003E06F8 0x003E0700 + public FileIOPermissionAccess AllLocalFiles { get; set; } // 0x003E0708 0x003E0710 + public string ChangeAccessControl { get; set; } // 0x003E0718 0x003E0720 + public string ViewAccessControl { get; set; } // 0x003E0728 0x003E0730 + public string ViewAndModify { get; set; } // 0x003E0738 0x003E07C0 + + // Methods + public void .ctor(SecurityAction action); // 0x003E0604 + public override IPermission CreatePermission(); // 0x003E07D0 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class GacIdentityPermission : CodeAccessPermission, IBuiltInPermission // TypeDefIndex: 1367 +{ + // Fields + private const int version = 1; // 0x00 + + // Methods + public void .ctor(); // 0x003E07D8 + public void .ctor(PermissionState state); // 0x003E07E0 + private int System.Security.Permissions.IBuiltInPermission.GetTokenIndex(); // 0x003E0808 + public override IPermission Copy(); // 0x003E0810 + public override IPermission Intersect(IPermission target); // 0x003E087C + public override bool IsSubsetOf(IPermission target); // 0x003E097C + public override IPermission Union(IPermission target); // 0x003E0994 + public override void FromXml(SecurityElement securityElement); // 0x003E09A8 + public override SecurityElement ToXml(); // 0x003E0A24 + private GacIdentityPermission Cast(IPermission target); // 0x003E089C +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class GacIdentityPermissionAttribute : CodeAccessSecurityAttribute // TypeDefIndex: 1368 +{ + // Methods + public void .ctor(SecurityAction action); // 0x003E0A30 + public override IPermission CreatePermission(); // 0x003E0A38 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class HostProtectionAttribute : CodeAccessSecurityAttribute // TypeDefIndex: 1369 +{ + // Fields + private HostProtectionResource _resources; // 0x10 + + // Properties + public bool ExternalProcessMgmt { get; set; } // 0x003E0BF8 0x003E0C04 + public bool ExternalThreading { get; set; } // 0x003E0C1C 0x003E0C28 + public bool MayLeakOnAbort { get; set; } // 0x003E0C40 0x003E0C4C + public bool SecurityInfrastructure { get; set; } // 0x003E0C64 0x003E0C70 + public bool SelfAffectingProcessMgmt { get; set; } // 0x003E0C88 0x003E0C94 + public bool SelfAffectingThreading { get; set; } // 0x003E0CAC 0x003E0CB8 + public bool SharedState { get; set; } // 0x003E0CD0 0x003E0CDC + public bool Synchronization { get; set; } // 0x003E0CF4 0x003E0D00 + public bool UI { get; set; } // 0x003E0D18 0x003E0D24 + public HostProtectionResource Resources { get; set; } // 0x003E0D3C 0x003E0D44 + + // Methods + public void .ctor(); // 0x003E0AA4 + public void .ctor(SecurityAction action); // 0x003E0AB0 + public override IPermission CreatePermission(); // 0x003E0D4C +} + +// Namespace: System.Security.Permissions +[Serializable] +internal sealed class HostProtectionPermission : CodeAccessPermission, IBuiltInPermission, IUnrestrictedPermission // TypeDefIndex: 1370 +{ + // Fields + private const int version = 1; // 0x00 + private HostProtectionResource _resources; // 0x08 + + // Properties + public HostProtectionResource Resources { get; set; } // 0x003E0F9C 0x003E0DB4 + + // Methods + public void .ctor(PermissionState state); // 0x003E0D54 + public void .ctor(HostProtectionResource resources); // 0x003E0D90 + private int System.Security.Permissions.IBuiltInPermission.GetTokenIndex(); // 0x003E0F94 + public override IPermission Copy(); // 0x003E0FA4 + public override IPermission Intersect(IPermission target); // 0x003E101C + public override IPermission Union(IPermission target); // 0x003E1220 + public override bool IsSubsetOf(IPermission target); // 0x003E1318 + public override void FromXml(SecurityElement e); // 0x003E1378 + public override SecurityElement ToXml(); // 0x003E1508 + public bool IsUnrestricted(); // 0x003E1208 + private HostProtectionPermission Cast(IPermission target); // 0x003E1128 +} + +// Namespace: System.Security.Permissions +[Serializable] +public enum HostProtectionResource // TypeDefIndex: 1371 +{ + None = 0, + Synchronization = 1, + SharedState = 2, + ExternalProcessMgmt = 4, + SelfAffectingProcessMgmt = 8, + ExternalThreading = 16, + SelfAffectingThreading = 32, + SecurityInfrastructure = 64, + UI = 128, + MayLeakOnAbort = 256, + All = 511 +} + +// Namespace: System.Security.Permissions +internal interface IBuiltInPermission // TypeDefIndex: 1372 +{ + // Methods + int GetTokenIndex(); +} + +// Namespace: System.Security.Permissions +internal enum BuiltInToken // TypeDefIndex: 1373 +{ + Environment = 0, + FileDialog = 1, + FileIO = 2, + IsolatedStorageFile = 3, + Reflection = 4, + Registry = 5, + Security = 6, + UI = 7, + Principal = 8, + HostProtection = 9, + PublisherIdentity = 10, + SiteIdentity = 11, + StrongNameIdentity = 12, + UrlIdentity = 13, + ZoneIdentity = 14, + GacIdentity = 15, + KeyContainer = 16 +} + +// Namespace: System.Security.Permissions +public interface IUnrestrictedPermission // TypeDefIndex: 1374 +{ + // Methods + bool IsUnrestricted(); +} + +// Namespace: System.Security.Permissions +[Serializable] +public enum IsolatedStorageContainment // TypeDefIndex: 1375 +{ + None = 0, + DomainIsolationByUser = 16, + ApplicationIsolationByUser = 21, + AssemblyIsolationByUser = 32, + DomainIsolationByMachine = 48, + AssemblyIsolationByMachine = 64, + ApplicationIsolationByMachine = 69, + DomainIsolationByRoamingUser = 80, + AssemblyIsolationByRoamingUser = 96, + ApplicationIsolationByRoamingUser = 101, + AdministerIsolatedStorageByUser = 112, + UnrestrictedIsolatedStorage = 240 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class IsolatedStorageFilePermission : IsolatedStoragePermission, IBuiltInPermission // TypeDefIndex: 1376 +{ + // Fields + private const int version = 1; // 0x00 + + // Methods + public void .ctor(PermissionState state); // 0x003E15F0 + private int System.Security.Permissions.IBuiltInPermission.GetTokenIndex(); // 0x003E1634 + public override IPermission Copy(); // 0x003E163C + public override IPermission Intersect(IPermission target); // 0x003E1764 + public override bool IsSubsetOf(IPermission target); // 0x003E1C1C + public override IPermission Union(IPermission target); // 0x003E1CF4 + public override SecurityElement ToXml(); // 0x003E1E48 + private IsolatedStorageFilePermission Cast(IPermission target); // 0x003E18E8 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class IsolatedStorageFilePermissionAttribute : IsolatedStoragePermissionAttribute // TypeDefIndex: 1377 +{ + // Methods + public void .ctor(SecurityAction action); // 0x003E1FC8 + public override IPermission CreatePermission(); // 0x003E1FD8 +} + +// Namespace: System.Security.Permissions +[Serializable] +public abstract class IsolatedStoragePermission : CodeAccessPermission, IUnrestrictedPermission // TypeDefIndex: 1378 +{ + // Fields + private const int version = 1; // 0x00 + internal long m_userQuota; // 0x08 + internal long m_machineQuota; // 0x10 + internal long m_expirationDays; // 0x18 + internal bool m_permanentData; // 0x20 + internal IsolatedStorageContainment m_allowed; // 0x24 + + // Properties + public long UserQuota { get; set; } // 0x003E20A0 0x003E20A8 + public IsolatedStorageContainment UsageAllowed { get; set; } // 0x003E20B8 0x003E19F8 + + // Methods + protected void .ctor(PermissionState state); // 0x003E15F4 + public bool IsUnrestricted(); // 0x003E1CE0 + public override SecurityElement ToXml(); // 0x003E1E4C + public override void FromXml(SecurityElement esd); // 0x003E20C0 + internal bool IsEmpty(); // 0x003E19C8 +} + +// Namespace: System.Security.Permissions +[Serializable] +public abstract class IsolatedStoragePermissionAttribute : CodeAccessSecurityAttribute // TypeDefIndex: 1379 +{ + // Fields + private IsolatedStorageContainment usage_allowed; // 0x10 + private long user_quota; // 0x18 + + // Properties + public IsolatedStorageContainment UsageAllowed { get; set; } // 0x003E22E8 0x003E22F0 + public long UserQuota { get; set; } // 0x003E22F8 0x003E2300 + + // Methods + protected void .ctor(SecurityAction action); // 0x003E1FD0 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class KeyContainerPermission : CodeAccessPermission, IBuiltInPermission, IUnrestrictedPermission // TypeDefIndex: 1380 +{ + // Fields + private const int version = 1; // 0x00 + private KeyContainerPermissionAccessEntryCollection _accessEntries; // 0x08 + private KeyContainerPermissionFlags _flags; // 0x0C + + // Properties + public KeyContainerPermissionAccessEntryCollection AccessEntries { get; } // 0x003E25A4 + public KeyContainerPermissionFlags Flags { get; } // 0x003E25AC + + // Methods + public void .ctor(PermissionState state); // 0x003E2310 + public void .ctor(KeyContainerPermissionFlags flags); // 0x003E2348 + public void .ctor(KeyContainerPermissionFlags flags, KeyContainerPermissionAccessEntry[] accessList); // 0x003E24AC + private int System.Security.Permissions.IBuiltInPermission.GetTokenIndex(); // 0x003E259C + public override IPermission Copy(); // 0x003E25B4 + public override void FromXml(SecurityElement securityElement); // 0x003E27B8 + public override IPermission Intersect(IPermission target); // 0x003E2960 + public override bool IsSubsetOf(IPermission target); // 0x003E2968 + public bool IsUnrestricted(); // 0x003E2970 + public override SecurityElement ToXml(); // 0x003E2988 + public override IPermission Union(IPermission target); // 0x003E2A38 + private void SetFlags(KeyContainerPermissionFlags flags); // 0x003E2370 + private KeyContainerPermission Cast(IPermission target); // 0x003E2D40 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class KeyContainerPermissionAccessEntry // TypeDefIndex: 1381 +{ + // Fields + private KeyContainerPermissionFlags _flags; // 0x08 + private string _containerName; // 0x0C + private int _spec; // 0x10 + private string _store; // 0x14 + private string _providerName; // 0x18 + private int _type; // 0x1C + + // Properties + public KeyContainerPermissionFlags Flags { get; set; } // 0x003E34D0 0x003E3318 + public string KeyContainerName { get; set; } // 0x003E34D8 0x003E34E0 + public int KeySpec { get; set; } // 0x003E34E8 0x003E34F0 + public string KeyStore { get; set; } // 0x003E34F8 0x003E3500 + public string ProviderName { get; set; } // 0x003E3508 0x003E3510 + public int ProviderType { get; set; } // 0x003E3518 0x003E3520 + + // Methods + public void .ctor(CspParameters parameters, KeyContainerPermissionFlags flags); // 0x003E322C + public void .ctor(string keyContainerName, KeyContainerPermissionFlags flags); // 0x003E3454 + public void .ctor(string keyStore, string providerName, int providerType, string keyContainerName, int keySpec, KeyContainerPermissionFlags flags); // 0x003E3484 + public override bool Equals(object o); // 0x003E3528 + public override int GetHashCode(); // 0x003E36C4 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class KeyContainerPermissionAccessEntryCollection : IEnumerable, ICollection // TypeDefIndex: 1382 +{ + // Fields + private ArrayList _list; // 0x08 + + // Properties + public int Count { get; } // 0x003E2740 + public bool IsSynchronized { get; } // 0x003E38C0 + public KeyContainerPermissionAccessEntry Item { get; } // 0x003E38C8 + public object SyncRoot { get; } // 0x003E397C + + // Methods + internal void .ctor(); // 0x003E2E20 + internal void .ctor(KeyContainerPermissionAccessEntry[] entries); // 0x003E3734 + private void System.Collections.ICollection.CopyTo(Array array, int index); // 0x003E37C4 + private IEnumerator System.Collections.IEnumerable.GetEnumerator(); // 0x003E3808 + public int Add(KeyContainerPermissionAccessEntry accessEntry); // 0x003E2560 + public void Clear(); // 0x003E3980 + public void CopyTo(KeyContainerPermissionAccessEntry[] array, int index); // 0x003E2774 + public KeyContainerPermissionAccessEntryEnumerator GetEnumerator(); // 0x003E2E9C + public int IndexOf(KeyContainerPermissionAccessEntry accessEntry); // 0x003E30F8 + public void Remove(KeyContainerPermissionAccessEntry accessEntry); // 0x003E39B4 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class KeyContainerPermissionAccessEntryEnumerator : IEnumerator // TypeDefIndex: 1383 +{ + // Fields + private IEnumerator e; // 0x08 + + // Properties + private object System.Collections.IEnumerator.Current { get; } // 0x003E3B0C + public KeyContainerPermissionAccessEntry Current { get; } // 0x003E2F10 + + // Methods + internal void .ctor(ArrayList list); // 0x003E387C + public bool MoveNext(); // 0x003E3020 + public void Reset(); // 0x003E3BE4 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class KeyContainerPermissionAttribute : CodeAccessSecurityAttribute // TypeDefIndex: 1384 +{ + // Fields + private KeyContainerPermissionFlags _flags; // 0x10 + private string _containerName; // 0x14 + private int _spec; // 0x18 + private string _store; // 0x1C + private string _providerName; // 0x20 + private int _type; // 0x24 + + // Properties + public KeyContainerPermissionFlags Flags { get; set; } // 0x003E3CE0 0x003E3CE8 + public string KeyContainerName { get; set; } // 0x003E3CF0 0x003E3CF8 + public int KeySpec { get; set; } // 0x003E3D00 0x003E3D08 + public string KeyStore { get; set; } // 0x003E3D10 0x003E3D18 + public string ProviderName { get; set; } // 0x003E3D20 0x003E3D28 + public int ProviderType { get; set; } // 0x003E3D30 0x003E3D38 + + // Methods + public void .ctor(SecurityAction action); // 0x003E3CBC + public override IPermission CreatePermission(); // 0x003E3D40 + private bool EmptyEntry(); // 0x003E3F1C +} + +// Namespace: System.Security.Permissions +[Serializable] +public enum KeyContainerPermissionFlags // TypeDefIndex: 1385 +{ + NoFlags = 0, + Create = 1, + Open = 2, + Delete = 4, + Import = 16, + Export = 32, + Sign = 256, + Decrypt = 512, + ViewAcl = 4096, + ChangeAcl = 8192, + AllFlags = 13111 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class PermissionSetAttribute : CodeAccessSecurityAttribute // TypeDefIndex: 1386 +{ + // Fields + private string file; // 0x10 + private string name; // 0x14 + private bool isUnicodeEncoded; // 0x18 + private string xml; // 0x1C + private string hex; // 0x20 + + // Properties + public string File { get; set; } // 0x003E3F68 0x003E3F70 + public string Hex { get; set; } // 0x003E3F78 0x003E3F80 + public string Name { get; set; } // 0x003E3F88 0x003E3F90 + public bool UnicodeEncoded { get; set; } // 0x003E3F98 0x003E3FA0 + public string XML { get; set; } // 0x003E3FA8 0x003E3FB0 + + // Methods + public void .ctor(SecurityAction action); // 0x003E3F60 + public override IPermission CreatePermission(); // 0x003E3FB8 + private PermissionSet CreateFromXml(string xml); // 0x003E3FC0 + public PermissionSet CreatePermissionSet(); // 0x003E3FC8 +} + +// Namespace: System.Security.Permissions +[Serializable] +public enum PermissionState // TypeDefIndex: 1387 +{ + None = 0, + Unrestricted = 1 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class PrincipalPermission : IBuiltInPermission, IUnrestrictedPermission, IPermission, ISecurityEncodable // TypeDefIndex: 1388 +{ + // Fields + private const int version = 1; // 0x00 + private ArrayList principals; // 0x08 + + // Methods + public void .ctor(PermissionState state); // 0x003E3FD0 + public void .ctor(string name, string role); // 0x003E40F8 + public void .ctor(string name, string role, bool isAuthenticated); // 0x003E4114 + internal void .ctor(ArrayList principals); // 0x003E41F4 + private int System.Security.Permissions.IBuiltInPermission.GetTokenIndex(); // 0x003E42C8 + public IPermission Copy(); // 0x003E42D0 + public void Demand(); // 0x003E4344 + public void FromXml(SecurityElement elem); // 0x003E4B3C + public IPermission Intersect(IPermission target); // 0x003E5560 + public bool IsSubsetOf(IPermission target); // 0x003E62D0 + public bool IsUnrestricted(); // 0x003E5F5C + public override string ToString(); // 0x003E6B30 + public SecurityElement ToXml(); // 0x003E6B60 + public IPermission Union(IPermission other); // 0x003E7174 + public override bool Equals(object obj); // 0x003E7534 + public override int GetHashCode(); // 0x003E7D98 + private PrincipalPermission Cast(IPermission target); // 0x003E5E7C + private bool IsEmpty(); // 0x003E6AEC + internal int CheckSecurityElement(SecurityElement se, string parameterName, int minimumVersion, int maximumVersion); // 0x003E5160 +} + +// Namespace: +internal class PrincipalInfo // TypeDefIndex: 1389 +{ + // Fields + private string _name; // 0x08 + private string _role; // 0x0C + private bool _isAuthenticated; // 0x10 + + // Properties + public string Name { get; } // 0x003E7DA0 + public string Role { get; } // 0x003E7DA8 + public bool IsAuthenticated { get; } // 0x003E7DB0 + + // Methods + public void .ctor(string name, string role, bool isAuthenticated); // 0x003E40C8 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class PrincipalPermissionAttribute : CodeAccessSecurityAttribute // TypeDefIndex: 1390 +{ + // Fields + private bool authenticated; // 0x0D + private string name; // 0x10 + private string role; // 0x14 + + // Properties + public bool Authenticated { get; set; } // 0x003E7DD8 0x003E7DE0 + public string Name { get; set; } // 0x003E7DE8 0x003E7DF0 + public string Role { get; set; } // 0x003E7DF8 0x003E7E00 + + // Methods + public void .ctor(SecurityAction action); // 0x003E7DB8 + public override IPermission CreatePermission(); // 0x003E7E08 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class PublisherIdentityPermission : CodeAccessPermission, IBuiltInPermission // TypeDefIndex: 1391 +{ + // Fields + private const int version = 1; // 0x00 + private X509Certificate x509; // 0x08 + + // Properties + public X509Certificate Certificate { get; set; } // 0x003E7FCC 0x003E7F14 + + // Methods + public void .ctor(PermissionState state); // 0x003E7EC4 + public void .ctor(X509Certificate certificate); // 0x003E7EEC + private int System.Security.Permissions.IBuiltInPermission.GetTokenIndex(); // 0x003E7FC4 + public override IPermission Copy(); // 0x003E7FD4 + public override void FromXml(SecurityElement esd); // 0x003E807C + public override IPermission Intersect(IPermission target); // 0x003E81A8 + public override bool IsSubsetOf(IPermission target); // 0x003E83C0 + public override SecurityElement ToXml(); // 0x003E84C8 + public override IPermission Union(IPermission target); // 0x003E857C + private PublisherIdentityPermission Cast(IPermission target); // 0x003E82E0 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class PublisherIdentityPermissionAttribute : CodeAccessSecurityAttribute // TypeDefIndex: 1392 +{ + // Fields + private string certFile; // 0x10 + private string signedFile; // 0x14 + private string x509data; // 0x18 + + // Properties + public string CertFile { get; set; } // 0x003E8734 0x003E873C + public string SignedFile { get; set; } // 0x003E8744 0x003E874C + public string X509Certificate { get; set; } // 0x003E8754 0x003E875C + + // Methods + public void .ctor(SecurityAction action); // 0x003E872C + public override IPermission CreatePermission(); // 0x003E8764 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class ReflectionPermission : CodeAccessPermission, IBuiltInPermission, IUnrestrictedPermission // TypeDefIndex: 1393 +{ + // Fields + private const int version = 1; // 0x00 + private ReflectionPermissionFlag flags; // 0x08 + + // Properties + public ReflectionPermissionFlag Flags { get; set; } // 0x003E8A74 0x003E8930 + + // Methods + public void .ctor(PermissionState state); // 0x003E88CC + public void .ctor(ReflectionPermissionFlag flag); // 0x003E8908 + private int System.Security.Permissions.IBuiltInPermission.GetTokenIndex(); // 0x003E8A6C + public override IPermission Copy(); // 0x003E8A7C + public override void FromXml(SecurityElement esd); // 0x003E8AFC + public override IPermission Intersect(IPermission target); // 0x003E8CD8 + public override bool IsSubsetOf(IPermission target); // 0x003E8EFC + public bool IsUnrestricted(); // 0x003E8EE8 + public override SecurityElement ToXml(); // 0x003E8F64 + public override IPermission Union(IPermission other); // 0x003E927C + private ReflectionPermission Cast(IPermission target); // 0x003E8E08 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class ReflectionPermissionAttribute : CodeAccessSecurityAttribute // TypeDefIndex: 1394 +{ + // Fields + private ReflectionPermissionFlag flags; // 0x10 + private bool memberAccess; // 0x14 + private bool reflectionEmit; // 0x15 + private bool typeInfo; // 0x16 + + // Properties + public ReflectionPermissionFlag Flags { get; set; } // 0x003E93D4 0x003E93DC + public bool MemberAccess { get; set; } // 0x003E93FC 0x003E9404 + public bool ReflectionEmit { get; set; } // 0x003E9420 0x003E9428 + public bool RestrictedMemberAccess { get; set; } // 0x003E9444 0x003E9450 + public bool TypeInformation { get; set; } // 0x003E9468 0x003E9470 + + // Methods + public void .ctor(SecurityAction action); // 0x003E93CC + public override IPermission CreatePermission(); // 0x003E948C +} + +// Namespace: System.Security.Permissions +[Serializable] +public enum ReflectionPermissionFlag // TypeDefIndex: 1395 +{ + NoFlags = 0, + TypeInformation = 1, + MemberAccess = 2, + ReflectionEmit = 4, + AllFlags = 7, + RestrictedMemberAccess = 8 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class RegistryPermission : CodeAccessPermission, IBuiltInPermission, IUnrestrictedPermission // TypeDefIndex: 1396 +{ + // Fields + private const int version = 1; // 0x00 + private PermissionState _state; // 0x08 + private ArrayList createList; // 0x0C + private ArrayList readList; // 0x10 + private ArrayList writeList; // 0x14 + + // Methods + public void .ctor(PermissionState state); // 0x003E9494 + public void .ctor(RegistryPermissionAccess access, string pathList); // 0x003E9558 + public void .ctor(RegistryPermissionAccess access, AccessControlActions control, string pathList); // 0x003E9758 + private int System.Security.Permissions.IBuiltInPermission.GetTokenIndex(); // 0x003E99D4 + public void AddPathList(RegistryPermissionAccess access, string pathList); // 0x003E9624 + public void AddPathList(RegistryPermissionAccess access, AccessControlActions control, string pathList); // 0x003E994C + public string GetPathList(RegistryPermissionAccess access); // 0x003E9FCC + public void SetPathList(RegistryPermissionAccess access, string pathList); // 0x003EA4C4 + public override IPermission Copy(); // 0x003EAA74 + public override void FromXml(SecurityElement esd); // 0x003EAB90 + public override IPermission Intersect(IPermission target); // 0x003EAD30 + public override bool IsSubsetOf(IPermission target); // 0x003EB8C8 + public bool IsUnrestricted(); // 0x003EAF80 + public override SecurityElement ToXml(); // 0x003EC0B8 + public override IPermission Union(IPermission other); // 0x003EC238 + private bool IsEmpty(); // 0x003EB810 + private RegistryPermission Cast(IPermission target); // 0x003EAEA0 + internal void ThrowInvalidFlag(RegistryPermissionAccess flag, bool context); // 0x003E9E94 + private string GetPathList(ArrayList list); // 0x003EA044 + internal bool KeyIsSubsetOf(IList local, IList target); // 0x003EB97C + internal void AddWithUnionKey(IList list, string pathList); // 0x003E99DC + internal void IntersectKeys(IList local, IList target, IList result); // 0x003EAF90 +} + +// Namespace: System.Security.Permissions +[Serializable] +public enum RegistryPermissionAccess // TypeDefIndex: 1397 +{ + NoAccess = 0, + Read = 1, + Write = 2, + Create = 4, + AllAccess = 7 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class RegistryPermissionAttribute : CodeAccessSecurityAttribute // TypeDefIndex: 1398 +{ + // Fields + private string create; // 0x10 + private string read; // 0x14 + private string write; // 0x18 + private string changeAccessControl; // 0x1C + private string viewAccessControl; // 0x20 + + // Properties + public string All { get; set; } // 0x003AA300 0x003AA39C + public string Create { get; set; } // 0x003AA3AC 0x003AA3B4 + public string Read { get; set; } // 0x003AA3BC 0x003AA3C4 + public string Write { get; set; } // 0x003AA3CC 0x003AA3D4 + public string ChangeAccessControl { get; set; } // 0x003AA3DC 0x003AA3E4 + public string ViewAccessControl { get; set; } // 0x003AA3EC 0x003AA3F4 + public string ViewAndModify { get; set; } // 0x003AA3FC 0x003AA484 + + // Methods + public void .ctor(SecurityAction action); // 0x003AA2F8 + public override IPermission CreatePermission(); // 0x003AA494 +} + +// Namespace: System.Security.Permissions +[Serializable] +public enum SecurityAction // TypeDefIndex: 1399 +{ + Demand = 2, + Assert = 3, + Deny = 4, + PermitOnly = 5, + LinkDemand = 6, + InheritanceDemand = 7, + RequestMinimum = 8, + RequestOptional = 9, + RequestRefuse = 10 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class SecurityPermission : CodeAccessPermission, IBuiltInPermission, IUnrestrictedPermission // TypeDefIndex: 1400 +{ + // Fields + private const int version = 1; // 0x00 + private SecurityPermissionFlag flags; // 0x08 + + // Properties + public SecurityPermissionFlag Flags { get; set; } // 0x003AA7A0 0x003AA658 + + // Methods + public void .ctor(PermissionState state); // 0x003AA5F4 + public void .ctor(SecurityPermissionFlag flag); // 0x003AA630 + private int System.Security.Permissions.IBuiltInPermission.GetTokenIndex(); // 0x003AA798 + public bool IsUnrestricted(); // 0x003AA7A8 + public override IPermission Copy(); // 0x003AA7C0 + public override IPermission Intersect(IPermission target); // 0x003AA840 + public override IPermission Union(IPermission target); // 0x003AAA50 + public override bool IsSubsetOf(IPermission target); // 0x003AAB48 + public override void FromXml(SecurityElement esd); // 0x003AABA8 + public override SecurityElement ToXml(); // 0x003AAD5C + private bool IsEmpty(); // 0x003AAA3C + private SecurityPermission Cast(IPermission target); // 0x003AA95C +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class SecurityPermissionAttribute : CodeAccessSecurityAttribute // TypeDefIndex: 1401 +{ + // Fields + private SecurityPermissionFlag m_Flags; // 0x10 + + // Properties + public bool Assertion { get; set; } // 0x003AAEA8 0x003AAEB4 + public bool BindingRedirects { get; set; } // 0x003AAECC 0x003AAED8 + public bool ControlAppDomain { get; set; } // 0x003AAEF0 0x003AAEFC + public bool ControlDomainPolicy { get; set; } // 0x003AAF14 0x003AAF20 + public bool ControlEvidence { get; set; } // 0x003AAF38 0x003AAF44 + public bool ControlPolicy { get; set; } // 0x003AAF5C 0x003AAF68 + public bool ControlPrincipal { get; set; } // 0x003AAF80 0x003AAF8C + public bool ControlThread { get; set; } // 0x003AAFA4 0x003AAFB0 + public bool Execution { get; set; } // 0x003AAFC8 0x003AAFD4 + public bool Infrastructure { get; set; } // 0x003AAFEC 0x003AAFF8 + public bool RemotingConfiguration { get; set; } // 0x003AB010 0x003AB01C + public bool SerializationFormatter { get; set; } // 0x003AB034 0x003AB040 + public bool SkipVerification { get; set; } // 0x003AB058 0x003AB064 + public bool UnmanagedCode { get; set; } // 0x003AB07C 0x003AB088 + public SecurityPermissionFlag Flags { get; set; } // 0x003AB0A8 0x003AB0B0 + + // Methods + public void .ctor(SecurityAction action); // 0x003AAE88 + public override IPermission CreatePermission(); // 0x003AB0A0 +} + +// Namespace: System.Security.Permissions +[Serializable] +public enum SecurityPermissionFlag // TypeDefIndex: 1402 +{ + NoFlags = 0, + Assertion = 1, + UnmanagedCode = 2, + SkipVerification = 4, + Execution = 8, + ControlThread = 16, + ControlEvidence = 32, + ControlPolicy = 64, + SerializationFormatter = 128, + ControlDomainPolicy = 256, + ControlPrincipal = 512, + ControlAppDomain = 1024, + RemotingConfiguration = 2048, + Infrastructure = 4096, + BindingRedirects = 8192, + AllFlags = 16383 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class SiteIdentityPermission : CodeAccessPermission, IBuiltInPermission // TypeDefIndex: 1403 +{ + // Fields + private const int version = 1; // 0x00 + private string _site; // 0x08 + private static bool[] valid; // 0x00 + + // Properties + public string Site { get; set; } // 0x003AB260 0x003AB108 + + // Methods + public void .ctor(PermissionState state); // 0x003AB0B8 + public void .ctor(string site); // 0x003AB0E0 + private static void .cctor(); // 0x003AB1C0 + private int System.Security.Permissions.IBuiltInPermission.GetTokenIndex(); // 0x003AB258 + public override IPermission Copy(); // 0x003AB4AC + public override void FromXml(SecurityElement esd); // 0x003AB548 + public override IPermission Intersect(IPermission target); // 0x003AB60C + public override bool IsSubsetOf(IPermission target); // 0x003AB970 + public override SecurityElement ToXml(); // 0x003ABAB8 + public override IPermission Union(IPermission target); // 0x003ABB58 + private bool IsEmpty(); // 0x003AB30C + private SiteIdentityPermission Cast(IPermission target); // 0x003AB6FC + private bool IsValid(string s); // 0x003AB320 + private bool Match(string target); // 0x003AB7DC +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class SiteIdentityPermissionAttribute : CodeAccessSecurityAttribute // TypeDefIndex: 1404 +{ + // Fields + private string site; // 0x10 + + // Properties + public string Site { get; set; } // 0x003ABCE4 0x003ABCEC + + // Methods + public void .ctor(SecurityAction action); // 0x003ABCDC + public override IPermission CreatePermission(); // 0x003ABCF4 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class StrongNameIdentityPermission : CodeAccessPermission, IBuiltInPermission // TypeDefIndex: 1405 +{ + // Fields + private const int version = 1; // 0x00 + private static Version defaultVersion; // 0x00 + private PermissionState _state; // 0x08 + private ArrayList _list; // 0x0C + + // Properties + public string Name { get; set; } // 0x003AC620 0x003AC760 + public StrongNamePublicKeyBlob PublicKey { get; set; } // 0x003ACA0C 0x003ACB4C + public Version Version { get; set; } // 0x003ACD14 0x003ACE54 + + // Methods + public void .ctor(PermissionState state); // 0x003ABDC4 + public void .ctor(StrongNamePublicKeyBlob blob, string name, Version version); // 0x003AC000 + internal void .ctor(StrongNameIdentityPermission snip); // 0x003AC1A4 + private static void .cctor(); // 0x003AC590 + private int System.Security.Permissions.IBuiltInPermission.GetTokenIndex(); // 0x003AC618 + internal void ResetToDefault(); // 0x003AC930 + public override IPermission Copy(); // 0x003ACFBC + public override void FromXml(SecurityElement e); // 0x003AD1B8 + private SNIP FromSecurityElement(SecurityElement se); // 0x003AD5F0 + public override IPermission Intersect(IPermission target); // 0x003AD8A8 + public override bool IsSubsetOf(IPermission target); // 0x003ADE04 + public override SecurityElement ToXml(); // 0x003AE6D4 + private void ToSecurityElement(SecurityElement se, SNIP snip); // 0x003AEB74 + public override IPermission Union(IPermission target); // 0x003AEF08 + private bool IsUnrestricted(); // 0x003AE60C + private bool Contains(SNIP snip); // 0x003AF35C + private bool IsEmpty(SNIP snip); // 0x003AECB0 + private bool IsEmpty(); // 0x003AD04C + private StrongNameIdentityPermission Cast(IPermission target); // 0x003AE52C + private bool Match(string target); // 0x003ADAE0 +} + +// Namespace: +private struct SNIP // TypeDefIndex: 1406 +{ + // Fields + public StrongNamePublicKeyBlob PublicKey; // 0x08 + public string Name; // 0x0C + public Version AssemblyVersion; // 0x10 + + // Methods + internal void .ctor(StrongNamePublicKeyBlob pk, string name, Version version); // 0x000A76C8 + internal static SNIP CreateDefault(); // 0x003ABEBC + internal bool IsNameSubsetOf(string target); // 0x000A76D4 + internal bool IsSubsetOf(SNIP target); // 0x000A76DC +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class StrongNameIdentityPermissionAttribute : CodeAccessSecurityAttribute // TypeDefIndex: 1407 +{ + // Fields + private string name; // 0x10 + private string key; // 0x14 + private string version; // 0x18 + + // Properties + public string Name { get; set; } // 0x003AF91C 0x003AF924 + public string PublicKey { get; set; } // 0x003AF92C 0x003AF934 + public string Version { get; set; } // 0x003AF93C 0x003AF944 + + // Methods + public void .ctor(SecurityAction action); // 0x003AF914 + public override IPermission CreatePermission(); // 0x003AF94C +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class StrongNamePublicKeyBlob // TypeDefIndex: 1408 +{ + // Fields + internal byte[] pubkey; // 0x08 + + // Methods + public void .ctor(byte[] publicKey); // 0x003AF954 + internal static StrongNamePublicKeyBlob FromString(string s); // 0x003AD728 + private static byte CharToByte(char c); // 0x003AFA10 + public override bool Equals(object obj); // 0x003ADC94 + public override int GetHashCode(); // 0x003AFAB4 + public override string ToString(); // 0x003AEDE0 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class UIPermission : CodeAccessPermission, IBuiltInPermission, IUnrestrictedPermission // TypeDefIndex: 1409 +{ + // Fields + private const int version = 1; // 0x00 + private UIPermissionWindow _window; // 0x08 + private UIPermissionClipboard _clipboard; // 0x0C + + // Properties + public UIPermissionClipboard Clipboard { get; set; } // 0x003AFFE0 0x003AFBB8 + public UIPermissionWindow Window { get; set; } // 0x003AFFE8 0x003AFDC0 + + // Methods + public void .ctor(PermissionState state); // 0x003AFB50 + public void .ctor(UIPermissionClipboard clipboardFlag); // 0x003AFB90 + public void .ctor(UIPermissionWindow windowFlag); // 0x003AFD98 + public void .ctor(UIPermissionWindow windowFlag, UIPermissionClipboard clipboardFlag); // 0x003AFFA0 + private int System.Security.Permissions.IBuiltInPermission.GetTokenIndex(); // 0x003AFFD8 + public override IPermission Copy(); // 0x003AFFF0 + public override void FromXml(SecurityElement esd); // 0x003B006C + public override IPermission Intersect(IPermission target); // 0x003B0348 + public override bool IsSubsetOf(IPermission target); // 0x003B04F8 + public bool IsUnrestricted(); // 0x003B0570 + public override SecurityElement ToXml(); // 0x003B0598 + public override IPermission Union(IPermission target); // 0x003B0754 + private bool IsEmpty(UIPermissionWindow w, UIPermissionClipboard c); // 0x003B04E8 + private UIPermission Cast(IPermission target); // 0x003B0408 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class UIPermissionAttribute : CodeAccessSecurityAttribute // TypeDefIndex: 1410 +{ + // Fields + private UIPermissionClipboard clipboard; // 0x10 + private UIPermissionWindow window; // 0x14 + + // Properties + public UIPermissionClipboard Clipboard { get; set; } // 0x003B082C 0x003B0834 + public UIPermissionWindow Window { get; set; } // 0x003B083C 0x003B0844 + + // Methods + public void .ctor(SecurityAction action); // 0x003B0824 + public override IPermission CreatePermission(); // 0x003B084C +} + +// Namespace: System.Security.Permissions +[Serializable] +public enum UIPermissionClipboard // TypeDefIndex: 1411 +{ + NoClipboard = 0, + OwnClipboard = 1, + AllClipboard = 2 +} + +// Namespace: System.Security.Permissions +[Serializable] +public enum UIPermissionWindow // TypeDefIndex: 1412 +{ + NoWindows = 0, + SafeSubWindows = 1, + SafeTopLevelWindows = 2, + AllWindows = 3 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class UrlIdentityPermission : CodeAccessPermission, IBuiltInPermission // TypeDefIndex: 1413 +{ + // Fields + private const int version = 1; // 0x00 + private string url; // 0x08 + + // Properties + public string Url { get; set; } // 0x003B0A70 0x003B0A78 + + // Methods + public void .ctor(PermissionState state); // 0x003B08F8 + public void .ctor(string site); // 0x003B09AC + private int System.Security.Permissions.IBuiltInPermission.GetTokenIndex(); // 0x003B0A68 + public override IPermission Copy(); // 0x003B0B28 + public override void FromXml(SecurityElement esd); // 0x003B0BB0 + public override IPermission Intersect(IPermission target); // 0x003B0CC0 + public override bool IsSubsetOf(IPermission target); // 0x003B0FD4 + public override SecurityElement ToXml(); // 0x003B1158 + public override IPermission Union(IPermission target); // 0x003B1200 + private bool IsEmpty(); // 0x003B0E30 + private UrlIdentityPermission Cast(IPermission target); // 0x003B0D50 + private bool Match(string target); // 0x003B0E54 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class UrlIdentityPermissionAttribute : CodeAccessSecurityAttribute // TypeDefIndex: 1414 +{ + // Fields + private string url; // 0x10 + + // Properties + public string Url { get; set; } // 0x003B13A8 0x003B13B0 + + // Methods + public void .ctor(SecurityAction action); // 0x003B13A0 + public override IPermission CreatePermission(); // 0x003B13B8 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class ZoneIdentityPermission : CodeAccessPermission, IBuiltInPermission // TypeDefIndex: 1415 +{ + // Fields + private const int version = 1; // 0x00 + private SecurityZone zone; // 0x08 + + // Properties + public SecurityZone SecurityZone { get; set; } // 0x003B1C2C 0x003B14C8 + + // Methods + public void .ctor(PermissionState state); // 0x003B146C + public void .ctor(SecurityZone zone); // 0x003B14A0 + private int System.Security.Permissions.IBuiltInPermission.GetTokenIndex(); // 0x003B16A8 + public override IPermission Copy(); // 0x003B16B0 + public override bool IsSubsetOf(IPermission target); // 0x003B1730 + public override IPermission Union(IPermission target); // 0x003B1860 + public override IPermission Intersect(IPermission target); // 0x003B195C + public override void FromXml(SecurityElement esd); // 0x003B199C + public override SecurityElement ToXml(); // 0x003B1B3C + private ZoneIdentityPermission Cast(IPermission target); // 0x003B1780 +} + +// Namespace: System.Security.Permissions +[Serializable] +public sealed class ZoneIdentityPermissionAttribute : CodeAccessSecurityAttribute // TypeDefIndex: 1416 +{ + // Fields + private SecurityZone zone; // 0x10 + + // Properties + public SecurityZone Zone { get; set; } // 0x003B1C54 0x003B1C5C + + // Methods + public void .ctor(SecurityAction action); // 0x003B1C34 + public override IPermission CreatePermission(); // 0x003B1C64 +} + +// Namespace: System.Security.Policy +[Serializable] +public sealed class AllMembershipCondition : IConstantMembershipCondition, IMembershipCondition, ISecurityEncodable, ISecurityPolicyEncodable // TypeDefIndex: 1417 +{ + // Fields + private readonly int version; // 0x08 + + // Methods + public void .ctor(); // 0x003B1D2C + public bool Check(Evidence evidence); // 0x003B1D3C + public IMembershipCondition Copy(); // 0x003B1D44 + public override bool Equals(object o); // 0x003B1DBC + public void FromXml(SecurityElement e); // 0x003B1E38 + public void FromXml(SecurityElement e, PolicyLevel level); // 0x003B1E3C + public override int GetHashCode(); // 0x003B2264 + public override string ToString(); // 0x003B231C + public SecurityElement ToXml(); // 0x003B2378 + public SecurityElement ToXml(PolicyLevel level); // 0x003B237C +} + +// Namespace: System.Security.Policy +[Serializable] +public sealed class ApplicationDirectory : IBuiltInEvidence // TypeDefIndex: 1418 +{ + // Fields + private string directory; // 0x08 + + // Properties + public string Directory { get; } // 0x003B27D8 + + // Methods + public void .ctor(string name); // 0x003B2674 + private int System.Security.Policy.IBuiltInEvidence.GetRequiredSize(bool verbose); // 0x003B2794 + private int System.Security.Policy.IBuiltInEvidence.InitFromBuffer(char[] buffer, int position); // 0x003B27C8 + private int System.Security.Policy.IBuiltInEvidence.OutputToBuffer(char[] buffer, int position, bool verbose); // 0x003B27D0 + public object Copy(); // 0x003B27E0 + public override bool Equals(object o); // 0x003B2854 + public override int GetHashCode(); // 0x003B2AAC + public override string ToString(); // 0x003B2AD8 + private void ThrowOnInvalid(string appdir); // 0x003B2940 +} + +// Namespace: System.Security.Policy +[Serializable] +public sealed class ApplicationDirectoryMembershipCondition : IConstantMembershipCondition, IMembershipCondition, ISecurityEncodable, ISecurityPolicyEncodable // TypeDefIndex: 1419 +{ + // Fields + private readonly int version; // 0x08 + + // Methods + public void .ctor(); // 0x003B2C20 + public bool Check(Evidence evidence); // 0x003B2C30 + public IMembershipCondition Copy(); // 0x003B3024 + public override bool Equals(object o); // 0x003B309C + public void FromXml(SecurityElement e); // 0x003B3118 + public void FromXml(SecurityElement e, PolicyLevel level); // 0x003B311C + public override int GetHashCode(); // 0x003B31C0 + public override string ToString(); // 0x003B3278 + public SecurityElement ToXml(); // 0x003B32D4 + public SecurityElement ToXml(PolicyLevel level); // 0x003B32D8 +} + +// Namespace: System.Security.Policy +public sealed class ApplicationSecurityInfo // TypeDefIndex: 1420 +{ + // Fields + private ActivationContext _context; // 0x08 + private Evidence _evidence; // 0x0C + private ApplicationId _appid; // 0x10 + private PermissionSet _defaultSet; // 0x14 + private ApplicationId _deployid; // 0x18 + + // Properties + public Evidence ApplicationEvidence { get; set; } // 0x003B3468 0x003B3470 + public ApplicationId ApplicationId { get; set; } // 0x003B3520 0x003B3528 + public PermissionSet DefaultRequestSet { get; set; } // 0x003B35D8 0x003B3658 + public ApplicationId DeploymentId { get; set; } // 0x003B3708 0x003B3710 + + // Methods + public void .ctor(ActivationContext activationContext); // 0x003B33AC +} + +// Namespace: System.Security.Policy +public static class ApplicationSecurityManager // TypeDefIndex: 1421 +{ + // Fields + private const string config = "ApplicationTrust.config"; // 0x00 + private static IApplicationTrustManager _appTrustManager; // 0x00 + private static ApplicationTrustCollection _userAppTrusts; // 0x04 + + // Properties + public static IApplicationTrustManager ApplicationTrustManager { get; } // 0x003B37C0 + public static ApplicationTrustCollection UserApplicationTrusts { get; } // 0x003B3874 + + // Methods + public static bool DetermineApplicationTrust(ActivationContext activationContext, TrustManagerContext context); // 0x003B3994 +} + +// Namespace: System.Security.Policy +[Serializable] +public sealed class ApplicationTrust : ISecurityEncodable // TypeDefIndex: 1422 +{ + // Fields + private ApplicationIdentity _appid; // 0x08 + private PolicyStatement _defaultPolicy; // 0x0C + private object _xtranfo; // 0x10 + private bool _trustrun; // 0x14 + private bool _persist; // 0x15 + private IList`1 fullTrustAssemblies; // 0x18 + + // Properties + public ApplicationIdentity ApplicationIdentity { get; set; } // 0x003B418C 0x003B4194 + public PolicyStatement DefaultGrantSet { get; set; } // 0x003B4244 0x003B42FC + public object ExtraInfo { get; set; } // 0x003B4304 0x003B430C + public bool IsApplicationTrustedToRun { get; set; } // 0x003B4314 0x003B431C + public bool Persist { get; set; } // 0x003B4324 0x003B432C + + // Methods + public void .ctor(); // 0x003B3AF4 + public void .ctor(ApplicationIdentity applicationIdentity); // 0x003B3B84 + internal void .ctor(PermissionSet defaultGrantSet, IEnumerable`1 fullTrustAssemblies); // 0x003B3C3C + public void FromXml(SecurityElement element); // 0x003B4334 + public SecurityElement ToXml(); // 0x003B4B68 + private PolicyStatement GetDefaultGrantSet(); // 0x003B4268 +} + +// Namespace: System.Security.Policy +public sealed class ApplicationTrustCollection : IEnumerable, ICollection // TypeDefIndex: 1423 +{ + // Fields + private ArrayList _list; // 0x08 + + // Properties + public int Count { get; } // 0x003B50BC + public bool IsSynchronized { get; } // 0x003B50F0 + public object SyncRoot { get; } // 0x003B50F8 + public ApplicationTrust Item { get; } // 0x003B50FC + public ApplicationTrust Item { get; } // 0x003B51B0 + + // Methods + internal void .ctor(); // 0x003B3918 + private void System.Collections.ICollection.CopyTo(Array array, int index); // 0x003B4FD0 + private IEnumerator System.Collections.IEnumerable.GetEnumerator(); // 0x003B5014 + public int Add(ApplicationTrust trust); // 0x003B5308 + public void AddRange(ApplicationTrust[] trusts); // 0x003B545C + public void AddRange(ApplicationTrustCollection trusts); // 0x003B5600 + public void Clear(); // 0x003B5A08 + public void CopyTo(ApplicationTrust[] array, int index); // 0x003B5A3C + public ApplicationTrustCollection Find(ApplicationIdentity applicationIdentity, ApplicationVersionMatch versionMatch); // 0x003B5A80 + public ApplicationTrustEnumerator GetEnumerator(); // 0x003B57B0 + public void Remove(ApplicationTrust trust); // 0x003B5F00 + public void Remove(ApplicationIdentity applicationIdentity, ApplicationVersionMatch versionMatch); // 0x003B6110 + public void RemoveRange(ApplicationTrust[] trusts); // 0x003B6188 + public void RemoveRange(ApplicationTrustCollection trusts); // 0x003B6280 + internal void RemoveAllInstances(ApplicationTrust trust); // 0x003B6034 +} + +// Namespace: System.Security.Policy +public sealed class ApplicationTrustEnumerator : IEnumerator // TypeDefIndex: 1424 +{ + // Fields + private IEnumerator e; // 0x08 + + // Properties + private object System.Collections.IEnumerator.Current { get; } // 0x003B6380 + public ApplicationTrust Current { get; } // 0x003B5820 + + // Methods + internal void .ctor(ApplicationTrustCollection collection); // 0x003B5084 + public bool MoveNext(); // 0x003B5930 + public void Reset(); // 0x003B6458 +} + +// Namespace: System.Security.Policy +public enum ApplicationVersionMatch // TypeDefIndex: 1425 +{ + MatchExactVersion = 0, + MatchAllVersions = 1 +} + +// Namespace: System.Security.Policy +[Serializable] +public class CodeConnectAccess // TypeDefIndex: 1426 +{ + // Fields + public static readonly string AnyScheme; // 0x00 + public static readonly int DefaultPort; // 0x04 + public static readonly int OriginPort; // 0x08 + public static readonly string OriginScheme; // 0x0C + private string _scheme; // 0x08 + private int _port; // 0x0C + + // Properties + public int Port { get; } // 0x003B66F0 + public string Scheme { get; } // 0x003B66F8 + + // Methods + public void .ctor(string allowScheme, int allowPort); // 0x003B6530 + private static void .cctor(); // 0x003B6648 + public override bool Equals(object o); // 0x003B6700 + public override int GetHashCode(); // 0x003B6814 + public static CodeConnectAccess CreateAnySchemeAccess(int allowPort); // 0x003B684C + public static CodeConnectAccess CreateOriginSchemeAccess(int allowPort); // 0x003B68F4 +} + +// Namespace: System.Security.Policy +[Serializable] +public abstract class CodeGroup // TypeDefIndex: 1427 +{ + // Fields + private PolicyStatement m_policy; // 0x08 + private IMembershipCondition m_membershipCondition; // 0x0C + private string m_description; // 0x10 + private string m_name; // 0x14 + private ArrayList m_children; // 0x18 + private static Dictionary`2 <>f__switch$map2A; // 0x00 + + // Properties + public abstract string MergeLogic { get; } + public PolicyStatement PolicyStatement { get; set; } // 0x003B748C 0x003B7494 + public string Description { get; set; } // 0x003B749C 0x003B74A4 + public IMembershipCondition MembershipCondition { get; set; } // 0x003B74AC 0x003B74B4 + public string Name { get; set; } // 0x003B7564 0x003B756C + public IList Children { get; set; } // 0x003B7574 0x003B757C + public virtual string AttributeString { get; } // 0x003B7654 + public virtual string PermissionSetName { get; } // 0x003B771C + + // Methods + protected void .ctor(IMembershipCondition membershipCondition, PolicyStatement policy); // 0x003B699C + internal void .ctor(SecurityElement e, PolicyLevel level); // 0x003B6B8C + public abstract CodeGroup Copy(); + public abstract PolicyStatement Resolve(Evidence evidence); + public abstract CodeGroup ResolveMatchingCodeGroups(Evidence evidence); + public void AddChild(CodeGroup group); // 0x003B78C8 + public override bool Equals(object o); // 0x003B79BC + public bool Equals(CodeGroup cg, bool compareChildren); // 0x003B7A64 + public void RemoveChild(CodeGroup group); // 0x003B801C + public override int GetHashCode(); // 0x003B8060 + public void FromXml(SecurityElement e); // 0x003B80F8 + public void FromXml(SecurityElement e, PolicyLevel level); // 0x003B6C20 + protected virtual void ParseXml(SecurityElement e, PolicyLevel level); // 0x003B8A08 + public SecurityElement ToXml(); // 0x003B8A0C + public SecurityElement ToXml(PolicyLevel level); // 0x003B8A14 + protected virtual void CreateXml(SecurityElement element, PolicyLevel level); // 0x003B9058 + internal static CodeGroup CreateFromXml(SecurityElement se, PolicyLevel level); // 0x003B8538 +} + +// Namespace: System.Security.Policy +internal static class DefaultPolicies // TypeDefIndex: 1428 +{ + // Fields + private const string DnsPermissionClass = "System.Net.DnsPermission, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"; // 0x00 + private const string EventLogPermissionClass = "System.Diagnostics.EventLogPermission, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"; // 0x00 + private const string PrintingPermissionClass = "System.Drawing.Printing.PrintingPermission, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + private const string SocketPermissionClass = "System.Net.SocketPermission, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"; // 0x00 + private const string WebPermissionClass = "System.Net.WebPermission, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"; // 0x00 + private const string PerformanceCounterPermissionClass = "System.Diagnostics.PerformanceCounterPermission, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"; // 0x00 + private const string DirectoryServicesPermissionClass = "System.DirectoryServices.DirectoryServicesPermission, System.DirectoryServices, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + private const string MessageQueuePermissionClass = "System.Messaging.MessageQueuePermission, System.Messaging, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + private const string ServiceControllerPermissionClass = "System.ServiceProcess.ServiceControllerPermission, System.ServiceProcess, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + private const string OleDbPermissionClass = "System.Data.OleDb.OleDbPermission, System.Data, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"; // 0x00 + private const string SqlClientPermissionClass = "System.Data.SqlClient.SqlClientPermission, System.Data, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"; // 0x00 + private const string DataProtectionPermissionClass = "System.Security.Permissions.DataProtectionPermission, System.Security, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + private const string StorePermissionClass = "System.Security.Permissions.StorePermission, System.Security, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; // 0x00 + private static Version _fxVersion; // 0x00 + private static byte[] _ecmaKey; // 0x04 + private static StrongNamePublicKeyBlob _ecma; // 0x08 + private static byte[] _msFinalKey; // 0x0C + private static StrongNamePublicKeyBlob _msFinal; // 0x10 + private static NamedPermissionSet _fullTrust; // 0x14 + private static NamedPermissionSet _localIntranet; // 0x18 + private static NamedPermissionSet _internet; // 0x1C + private static NamedPermissionSet _skipVerification; // 0x20 + private static NamedPermissionSet _execution; // 0x24 + private static NamedPermissionSet _nothing; // 0x28 + private static NamedPermissionSet _everything; // 0x2C + private static Dictionary`2 <>f__switch$map2B; // 0x30 + + // Properties + public static PermissionSet FullTrust { get; } // 0x003B9790 + public static PermissionSet LocalIntranet { get; } // 0x003B9894 + public static PermissionSet Internet { get; } // 0x003B9998 + public static PermissionSet SkipVerification { get; } // 0x003B9A9C + public static PermissionSet Execution { get; } // 0x003B9BA0 + public static PermissionSet Nothing { get; } // 0x003B9CA4 + public static PermissionSet Everything { get; } // 0x003B9DA8 + + // Methods + private static void .cctor(); // 0x003B90EC + public static PermissionSet GetSpecialPermissionSet(string name); // 0x003B91E0 + public static StrongNameMembershipCondition FullTrustMembership(string name, Key key); // 0x003BAE1C + private static NamedPermissionSet BuildFullTrust(); // 0x003B9EAC + private static NamedPermissionSet BuildLocalIntranet(); // 0x003B9F30 + private static NamedPermissionSet BuildInternet(); // 0x003BA2BC + private static NamedPermissionSet BuildSkipVerification(); // 0x003BA578 + private static NamedPermissionSet BuildExecution(); // 0x003BA680 + private static NamedPermissionSet BuildNothing(); // 0x003BA788 + private static NamedPermissionSet BuildEverything(); // 0x003BA80C + private static SecurityElement PrintingPermission(string level); // 0x003BB1B8 +} + +// Namespace: +public static class ReservedNames // TypeDefIndex: 1429 +{ + // Fields + public const string FullTrust = "FullTrust"; // 0x00 + public const string LocalIntranet = "LocalIntranet"; // 0x00 + public const string Internet = "Internet"; // 0x00 + public const string SkipVerification = "SkipVerification"; // 0x00 + public const string Execution = "Execution"; // 0x00 + public const string Nothing = "Nothing"; // 0x00 + public const string Everything = "Everything"; // 0x00 + private static Dictionary`2 <>f__switch$map2C; // 0x00 + + // Methods + public static bool IsReserved(string name); // 0x003BB330 +} + +// Namespace: +public enum Key // TypeDefIndex: 1430 +{ + Ecma = 0, + MsFinal = 1 +} + +// Namespace: System.Security.Policy +[Serializable] +public sealed class Evidence : IEnumerable, ICollection // TypeDefIndex: 1431 +{ + // Fields + private bool _locked; // 0x08 + private ArrayList hostEvidenceList; // 0x0C + private ArrayList assemblyEvidenceList; // 0x10 + private int _hashCode; // 0x14 + + // Properties + public int Count { get; } // 0x003BBDFC + public bool IsReadOnly { get; } // 0x003BBE58 + public bool IsSynchronized { get; } // 0x003BBE60 + public bool Locked { get; set; } // 0x003BBE68 0x003BBE70 + public object SyncRoot { get; } // 0x003BBE78 + internal ArrayList HostEvidenceList { get; } // 0x003BBCAC + internal ArrayList AssemblyEvidenceList { get; } // 0x003BBD54 + + // Methods + public void .ctor(); // 0x003BB670 + public void .ctor(Evidence evidence); // 0x003BB678 + public void .ctor(object[] hostEvidence, object[] assemblyEvidence); // 0x003BBC14 + public void AddAssembly(object id); // 0x003BBE7C + public void AddHost(object id); // 0x003BBEC8 + public void Clear(); // 0x003BC01C + public void CopyTo(Array array, int index); // 0x003BC06C + public override bool Equals(object obj); // 0x003BC13C + public IEnumerator GetEnumerator(); // 0x003BC4D8 + public IEnumerator GetAssemblyEnumerator(); // 0x003BC5C8 + public override int GetHashCode(); // 0x003BC600 + public IEnumerator GetHostEnumerator(); // 0x003B2FEC + public void Merge(Evidence evidence); // 0x003BB6A8 + public void RemoveType(Type t); // 0x003BC770 + private static bool IsAuthenticodePresent(Assembly a); // 0x003BC8C4 + internal static Evidence GetDefaultHostEvidence(Assembly a); // 0x003BC8C8 +} + +// Namespace: +private class EvidenceEnumerator : IEnumerator // TypeDefIndex: 1432 +{ + // Fields + private IEnumerator currentEnum; // 0x08 + private IEnumerator hostEnum; // 0x0C + private IEnumerator assemblyEnum; // 0x10 + + // Properties + public object Current { get; } // 0x003BCC24 + + // Methods + public void .ctor(IEnumerator hostenum, IEnumerator assemblyenum); // 0x003BC59C + public bool MoveNext(); // 0x003BC934 + public void Reset(); // 0x003BCAB8 +} + +// Namespace: System.Security.Policy +[Serializable] +public sealed class FileCodeGroup : CodeGroup // TypeDefIndex: 1433 +{ + // Fields + private FileIOPermissionAccess m_access; // 0x1C + + // Properties + public override string MergeLogic { get; } // 0x003BD114 + public override string AttributeString { get; } // 0x003BDCD4 + public override string PermissionSetName { get; } // 0x003BDCDC + + // Methods + public void .ctor(IMembershipCondition membershipCondition, FileIOPermissionAccess access); // 0x003BCCFC + internal void .ctor(SecurityElement e, PolicyLevel level); // 0x003B905C + public override CodeGroup Copy(); // 0x003BCD1C + public override PolicyStatement Resolve(Evidence evidence); // 0x003BD170 + public override CodeGroup ResolveMatchingCodeGroups(Evidence evidence); // 0x003BD800 + public override bool Equals(object o); // 0x003BDDC4 + public override int GetHashCode(); // 0x003BDEA0 + protected override void ParseXml(SecurityElement e, PolicyLevel level); // 0x003BDF64 + protected override void CreateXml(SecurityElement element, PolicyLevel level); // 0x003BE0D4 +} + +// Namespace: System.Security.Policy +[Serializable] +public sealed class FirstMatchCodeGroup : CodeGroup // TypeDefIndex: 1434 +{ + // Properties + public override string MergeLogic { get; } // 0x003BE1AC + + // Methods + public void .ctor(IMembershipCondition membershipCondition, PolicyStatement policy); // 0x003BE1A8 + internal void .ctor(SecurityElement e, PolicyLevel level); // 0x003B9060 + public override CodeGroup Copy(); // 0x003BE208 + public override PolicyStatement Resolve(Evidence evidence); // 0x003BE658 + public override CodeGroup ResolveMatchingCodeGroups(Evidence evidence); // 0x003BEB3C + private FirstMatchCodeGroup CopyNoChildren(); // 0x003BE5A4 +} + +// Namespace: System.Security.Policy +[Serializable] +public sealed class GacInstalled : IBuiltInEvidence, IIdentityPermissionFactory // TypeDefIndex: 1435 +{ + // Methods + public void .ctor(); // 0x003BF040 + private int System.Security.Policy.IBuiltInEvidence.GetRequiredSize(bool verbose); // 0x003BF048 + private int System.Security.Policy.IBuiltInEvidence.InitFromBuffer(char[] buffer, int position); // 0x003BF050 + private int System.Security.Policy.IBuiltInEvidence.OutputToBuffer(char[] buffer, int position, bool verbose); // 0x003BF058 + public object Copy(); // 0x003BF0A8 + public IPermission CreateIdentityPermission(Evidence evidence); // 0x003BF114 + public override bool Equals(object o); // 0x003BF180 + public override int GetHashCode(); // 0x003BF1FC + public override string ToString(); // 0x003BF204 +} + +// Namespace: System.Security.Policy +[Serializable] +public sealed class GacMembershipCondition : IConstantMembershipCondition, IMembershipCondition, ISecurityEncodable, ISecurityPolicyEncodable // TypeDefIndex: 1436 +{ + // Fields + private readonly int version; // 0x08 + + // Methods + public void .ctor(); // 0x003BF32C + public bool Check(Evidence evidence); // 0x003BF33C + public IMembershipCondition Copy(); // 0x003BF4EC + public override bool Equals(object o); // 0x003BF564 + public void FromXml(SecurityElement e); // 0x003BF5E0 + public void FromXml(SecurityElement e, PolicyLevel level); // 0x003BF5E4 + public override int GetHashCode(); // 0x003BF688 + public override string ToString(); // 0x003BF690 + public SecurityElement ToXml(); // 0x003BF6EC + public SecurityElement ToXml(PolicyLevel level); // 0x003BF6F0 +} + +// Namespace: System.Security.Policy +[Serializable] +public sealed class Hash : ISerializable, IBuiltInEvidence // TypeDefIndex: 1437 +{ + // Fields + private Assembly assembly; // 0x08 + private byte[] data; // 0x0C + internal byte[] _md5; // 0x10 + internal byte[] _sha1; // 0x14 + + // Properties + public byte[] MD5 { get; } // 0x003BF9CC + public byte[] SHA1 { get; } // 0x003BFB80 + + // Methods + public void .ctor(Assembly assembly); // 0x003BF7C4 + internal void .ctor(); // 0x003BF880 + internal void .ctor(SerializationInfo info, StreamingContext context); // 0x003BF888 + private int System.Security.Policy.IBuiltInEvidence.GetRequiredSize(bool verbose); // 0x003BF9AC + private int System.Security.Policy.IBuiltInEvidence.InitFromBuffer(char[] buffer, int position); // 0x003BF9BC + private int System.Security.Policy.IBuiltInEvidence.OutputToBuffer(char[] buffer, int position, bool verbose); // 0x003BF9C4 + public byte[] GenerateHash(HashAlgorithm hashAlg); // 0x003BFAB8 + public void GetObjectData(SerializationInfo info, StreamingContext context); // 0x003BFE3C + public override string ToString(); // 0x003BFF14 + private byte[] GetData(); // 0x003BFC6C + public static Hash CreateMD5(byte[] md5); // 0x003C0150 + public static Hash CreateSHA1(byte[] sha1); // 0x003C0234 +} + +// Namespace: System.Security.Policy +[Serializable] +public sealed class HashMembershipCondition : ISerializable, IDeserializationCallback, IMembershipCondition, ISecurityEncodable, ISecurityPolicyEncodable // TypeDefIndex: 1438 +{ + // Fields + private readonly int version; // 0x08 + private HashAlgorithm hash_algorithm; // 0x0C + private byte[] hash_value; // 0x10 + + // Properties + public HashAlgorithm HashAlgorithm { get; set; } // 0x003C04A0 0x003C0520 + public byte[] HashValue { get; set; } // 0x003C05D0 0x003C06E0 + + // Methods + internal void .ctor(); // 0x003C0318 + public void .ctor(HashAlgorithm hashAlg, byte[] value); // 0x003C0328 + private void System.Runtime.Serialization.IDeserializationCallback.OnDeserialization(object sender); // 0x003C0498 + private void System.Runtime.Serialization.ISerializable.GetObjectData(SerializationInfo info, StreamingContext context); // 0x003C049C + public bool Check(Evidence evidence); // 0x003C07E8 + public IMembershipCondition Copy(); // 0x003C0A98 + public override bool Equals(object o); // 0x003C0B14 + public SecurityElement ToXml(); // 0x003C0BD8 + public SecurityElement ToXml(PolicyLevel level); // 0x003C0BDC + public void FromXml(SecurityElement e); // 0x003C0D78 + public void FromXml(SecurityElement e, PolicyLevel level); // 0x003C0D7C + public override int GetHashCode(); // 0x003C0EC4 + public override string ToString(); // 0x003C0F74 + private bool Compare(byte[] expected, byte[] actual); // 0x003C09C8 +} + +// Namespace: System.Security.Policy +public interface IApplicationTrustManager : ISecurityEncodable // TypeDefIndex: 1439 +{ + // Methods + ApplicationTrust DetermineApplicationTrust(ActivationContext activationContext, TrustManagerContext context); +} + +// Namespace: System.Security.Policy +internal interface IBuiltInEvidence // TypeDefIndex: 1440 +{ + // Methods + int GetRequiredSize(bool verbose); + int InitFromBuffer(char[] buffer, int position); + int OutputToBuffer(char[] buffer, int position, bool verbose); +} + +// Namespace: System.Security.Policy +internal interface IConstantMembershipCondition // TypeDefIndex: 1441 +{ +} + +// Namespace: System.Security.Policy +public interface IIdentityPermissionFactory // TypeDefIndex: 1442 +{ + // Methods + IPermission CreateIdentityPermission(Evidence evidence); +} + +// Namespace: System.Security.Policy +public interface IMembershipCondition : ISecurityEncodable, ISecurityPolicyEncodable // TypeDefIndex: 1443 +{ + // Methods + bool Check(Evidence evidence); + IMembershipCondition Copy(); + bool Equals(object obj); + string ToString(); +} + +// Namespace: System.Security.Policy +internal sealed class MembershipConditionHelper // TypeDefIndex: 1444 +{ + // Fields + private static readonly string XmlTag; // 0x00 + + // Methods + public void .ctor(); // 0x003C10AC + private static void .cctor(); // 0x003C10B4 + internal static int CheckSecurityElement(SecurityElement se, string parameterName, int minimumVersion, int maximumVersion); // 0x003B1EE0 + internal static SecurityElement Element(Type type, int version); // 0x003B2450 +} + +// Namespace: System.Security.Policy +internal class MonoTrustManager : IApplicationTrustManager, ISecurityEncodable // TypeDefIndex: 1445 +{ + // Fields + private const string tag = "IApplicationTrustManager"; // 0x00 + + // Methods + public void .ctor(); // 0x003B386C + public ApplicationTrust DetermineApplicationTrust(ActivationContext activationContext, TrustManagerContext context); // 0x003C1128 + public void FromXml(SecurityElement e); // 0x003C11D4 + public SecurityElement ToXml(); // 0x003C133C +} + +// Namespace: System.Security.Policy +[Serializable] +public sealed class NetCodeGroup : CodeGroup // TypeDefIndex: 1446 +{ + // Fields + public static readonly string AbsentOriginScheme; // 0x00 + public static readonly string AnyOtherOriginScheme; // 0x04 + private Hashtable _rules; // 0x1C + private int _hashcode; // 0x20 + + // Properties + public override string AttributeString { get; } // 0x003C15FC + public override string MergeLogic { get; } // 0x003C1604 + public override string PermissionSetName { get; } // 0x003C1660 + + // Methods + public void .ctor(IMembershipCondition membershipCondition); // 0x003C14B8 + internal void .ctor(SecurityElement e, PolicyLevel level); // 0x003B9064 + private static void .cctor(); // 0x003C153C + public void AddConnectAccess(string originScheme, CodeConnectAccess connectAccess); // 0x003C16BC + public override CodeGroup Copy(); // 0x003C1B88 + private bool Equals(CodeConnectAccess[] rules1, CodeConnectAccess[] rules2); // 0x003C1F90 + public override bool Equals(object o); // 0x003C2088 + public DictionaryEntry[] GetConnectAccessRules(); // 0x003C2510 + public override int GetHashCode(); // 0x003C25D4 + public override PolicyStatement Resolve(Evidence evidence); // 0x003C29B4 + public void ResetConnectAccess(); // 0x003C2FB4 + public override CodeGroup ResolveMatchingCodeGroups(Evidence evidence); // 0x003C2FE8 + protected override void CreateXml(SecurityElement element, PolicyLevel level); // 0x003C349C + protected override void ParseXml(SecurityElement e, PolicyLevel level); // 0x003C34A0 +} + +// Namespace: System.Security.Policy +[Serializable] +public sealed class PermissionRequestEvidence : IBuiltInEvidence // TypeDefIndex: 1447 +{ + // Fields + private PermissionSet requested; // 0x08 + private PermissionSet optional; // 0x0C + private PermissionSet denied; // 0x10 + + // Properties + public PermissionSet DeniedPermissions { get; } // 0x003C36F0 + public PermissionSet OptionalPermissions { get; } // 0x003C36F8 + public PermissionSet RequestedPermissions { get; } // 0x003C3700 + + // Methods + public void .ctor(PermissionSet request, PermissionSet optional, PermissionSet denied); // 0x003C34A4 + private int System.Security.Policy.IBuiltInEvidence.GetRequiredSize(bool verbose); // 0x003C3598 + private int System.Security.Policy.IBuiltInEvidence.InitFromBuffer(char[] buffer, int position); // 0x003C36E0 + private int System.Security.Policy.IBuiltInEvidence.OutputToBuffer(char[] buffer, int position, bool verbose); // 0x003C36E8 + public PermissionRequestEvidence Copy(); // 0x003C3708 + public override string ToString(); // 0x003C3794 +} + +// Namespace: System.Security.Policy +[Serializable] +public class PolicyException : SystemException, _Exception // TypeDefIndex: 1448 +{ + // Methods + public void .ctor(); // 0x003C3A70 + public void .ctor(string message); // 0x003C3AE4 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x003C3AEC + public void .ctor(string message, Exception exception); // 0x003C3B0C +} + +// Namespace: System.Security.Policy +[Serializable] +public sealed class PolicyLevel // TypeDefIndex: 1449 +{ + // Fields + private string label; // 0x08 + private CodeGroup root_code_group; // 0x0C + private ArrayList full_trust_assemblies; // 0x10 + private ArrayList named_permission_sets; // 0x14 + private string _location; // 0x18 + private PolicyLevelType _type; // 0x1C + private Hashtable fullNames; // 0x20 + private SecurityElement xml; // 0x24 + + // Properties + public IList FullTrustAssemblies { get; } // 0x003C65A0 + public string Label { get; } // 0x003C65A8 + public IList NamedPermissionSets { get; } // 0x003C65B0 + public CodeGroup RootCodeGroup { get; set; } // 0x003C65B8 0x003C65C0 + public string StoreLocation { get; } // 0x003C6670 + public PolicyLevelType Type { get; } // 0x003C6678 + + // Methods + internal void .ctor(string label, PolicyLevelType type); // 0x003C3B14 + internal void LoadFromFile(string filename); // 0x003C3BB8 + internal void LoadFromString(string xml); // 0x003C6580 + private SecurityElement FromString(string xml); // 0x003C41E0 + public void AddFullTrustAssembly(StrongName sn); // 0x003C6680 + public void AddFullTrustAssembly(StrongNameMembershipCondition snMC); // 0x003C6784 + public void AddNamedPermissionSet(NamedPermissionSet permSet); // 0x003C6B74 + public NamedPermissionSet ChangeNamedPermissionSet(string name, PermissionSet pSet); // 0x003C6FC4 + public static PolicyLevel CreateAppDomainLevel(); // 0x003C7528 + public void FromXml(SecurityElement e); // 0x003C46DC + public NamedPermissionSet GetNamedPermissionSet(string name); // 0x003B8100 + public void Recover(); // 0x003C7848 + public void RemoveFullTrustAssembly(StrongName sn); // 0x003C7AA4 + public void RemoveFullTrustAssembly(StrongNameMembershipCondition snMC); // 0x003C7BA8 + public NamedPermissionSet RemoveNamedPermissionSet(NamedPermissionSet permSet); // 0x003C7DD8 + public NamedPermissionSet RemoveNamedPermissionSet(string name); // 0x003C7E94 + public void Reset(); // 0x003C76B4 + public PolicyStatement Resolve(Evidence evidence); // 0x003C83B8 + public CodeGroup ResolveMatchingCodeGroups(Evidence evidence); // 0x003C84A0 + public SecurityElement ToXml(); // 0x003C857C + internal void Save(); // 0x003C61A4 + internal void CreateDefaultLevel(PolicyLevelType type); // 0x003C5C64 + internal void CreateDefaultFullTrustAssemblies(); // 0x003C55E4 + internal void CreateDefaultNamedPermissionSets(); // 0x003C587C + internal string ResolveClassName(string className); // 0x003C94B8 + internal bool IsFullTrustAssembly(Assembly a); // 0x003C9560 +} + +// Namespace: System.Security.Policy +[Serializable] +public sealed class PolicyStatement : ISecurityEncodable, ISecurityPolicyEncodable // TypeDefIndex: 1450 +{ + // Fields + private PermissionSet perms; // 0x08 + private PolicyStatementAttribute attrs; // 0x0C + + // Properties + public PermissionSet PermissionSet { get; set; } // 0x003B7824 0x003C99E8 + public PolicyStatementAttribute Attributes { get; set; } // 0x003C99F0 0x003C99F8 + public string AttributeString { get; } // 0x003B7668 + + // Methods + public void .ctor(PermissionSet permSet); // 0x003B4184 + public void .ctor(PermissionSet permSet, PolicyStatementAttribute attributes); // 0x003C9980 + public PolicyStatement Copy(); // 0x003B6B10 + public void FromXml(SecurityElement et); // 0x003C9B00 + public void FromXml(SecurityElement et, PolicyLevel level); // 0x003B48B0 + public SecurityElement ToXml(); // 0x003B4FCC + public SecurityElement ToXml(PolicyLevel level); // 0x003C9B04 + public override bool Equals(object obj); // 0x003C9CA4 + public override int GetHashCode(); // 0x003B80B4 + internal static PolicyStatement Empty(); // 0x003BD76C +} + +// Namespace: System.Security.Policy +[Serializable] +public enum PolicyStatementAttribute // TypeDefIndex: 1451 +{ + Nothing = 0, + Exclusive = 1, + LevelFinal = 2, + All = 3 +} + +// Namespace: System.Security.Policy +[Serializable] +public sealed class Publisher : IBuiltInEvidence, IIdentityPermissionFactory // TypeDefIndex: 1452 +{ + // Fields + private X509Certificate m_cert; // 0x08 + + // Properties + public X509Certificate Certificate { get; } // 0x003C9F18 + + // Methods + public void .ctor(X509Certificate cert); // 0x003C9D90 + private int System.Security.Policy.IBuiltInEvidence.GetRequiredSize(bool verbose); // 0x003C9EAC + private int System.Security.Policy.IBuiltInEvidence.InitFromBuffer(char[] buffer, int position); // 0x003C9F08 + private int System.Security.Policy.IBuiltInEvidence.OutputToBuffer(char[] buffer, int position, bool verbose); // 0x003C9F10 + public object Copy(); // 0x003C9FEC + public IPermission CreateIdentityPermission(Evidence evidence); // 0x003CA060 + public override bool Equals(object o); // 0x003CA0D8 + public override int GetHashCode(); // 0x003CA1FC + public override string ToString(); // 0x003CA230 +} + +// Namespace: System.Security.Policy +[Serializable] +public sealed class PublisherMembershipCondition : IConstantMembershipCondition, IMembershipCondition, ISecurityEncodable, ISecurityPolicyEncodable // TypeDefIndex: 1453 +{ + // Fields + private readonly int version; // 0x08 + private X509Certificate x509; // 0x0C + + // Properties + public X509Certificate Certificate { get; set; } // 0x003CA4F0 0x003CA4F8 + + // Methods + internal void .ctor(); // 0x003CA3BC + public void .ctor(X509Certificate certificate); // 0x003CA3CC + public bool Check(Evidence evidence); // 0x003CA5A8 + public IMembershipCondition Copy(); // 0x003CA8A8 + public override bool Equals(object o); // 0x003CA91C + public void FromXml(SecurityElement e); // 0x003CA9DC + public void FromXml(SecurityElement e, PolicyLevel level); // 0x003CA9E0 + public override int GetHashCode(); // 0x003CAAEC + public override string ToString(); // 0x003CAB20 + public SecurityElement ToXml(); // 0x003CABE0 + public SecurityElement ToXml(PolicyLevel level); // 0x003CABE4 +} + +// Namespace: System.Security.Policy +[Serializable] +public sealed class Site : IBuiltInEvidence, IIdentityPermissionFactory // TypeDefIndex: 1454 +{ + // Fields + internal string origin_site; // 0x08 + + // Properties + public string Name { get; } // 0x003CB82C + + // Methods + public void .ctor(string name); // 0x003CAD1C + private int System.Security.Policy.IBuiltInEvidence.GetRequiredSize(bool verbose); // 0x003CB13C + private int System.Security.Policy.IBuiltInEvidence.InitFromBuffer(char[] buffer, int position); // 0x003CB170 + private int System.Security.Policy.IBuiltInEvidence.OutputToBuffer(char[] buffer, int position, bool verbose); // 0x003CB178 + public static Site CreateFromUrl(string url); // 0x003CB180 + public object Copy(); // 0x003CB49C + public IPermission CreateIdentityPermission(Evidence evidence); // 0x003CB510 + public override bool Equals(object o); // 0x003CB590 + public override int GetHashCode(); // 0x003CB6C0 + public override string ToString(); // 0x003CB6EC + internal static bool IsValid(string name); // 0x003CAE40 + internal static string UrlToSite(string url); // 0x003CB36C +} + +// Namespace: System.Security.Policy +[Serializable] +public sealed class SiteMembershipCondition : IConstantMembershipCondition, IMembershipCondition, ISecurityEncodable, ISecurityPolicyEncodable // TypeDefIndex: 1455 +{ + // Fields + private readonly int version; // 0x08 + private string _site; // 0x0C + + // Properties + public string Site { get; set; } // 0x003CB97C 0x003CB878 + + // Methods + internal void .ctor(); // 0x003CB834 + public void .ctor(string site); // 0x003CB844 + public bool Check(Evidence evidence); // 0x003CB984 + public IMembershipCondition Copy(); // 0x003CBF14 + public override bool Equals(object o); // 0x003CBFA0 + public void FromXml(SecurityElement e); // 0x003CC074 + public void FromXml(SecurityElement e, PolicyLevel level); // 0x003CC078 + public override int GetHashCode(); // 0x003CC14C + public override string ToString(); // 0x003CC178 + public SecurityElement ToXml(); // 0x003CC210 + public SecurityElement ToXml(PolicyLevel level); // 0x003CC214 +} + +// Namespace: System.Security.Policy +[Serializable] +public sealed class StrongName : IBuiltInEvidence, IIdentityPermissionFactory // TypeDefIndex: 1456 +{ + // Fields + private StrongNamePublicKeyBlob publickey; // 0x08 + private string name; // 0x0C + private Version version; // 0x10 + + // Properties + public string Name { get; } // 0x00230C80 + public StrongNamePublicKeyBlob PublicKey { get; } // 0x00230C88 + public Version Version { get; } // 0x00230C90 + + // Methods + public void .ctor(StrongNamePublicKeyBlob blob, string name, Version version); // 0x00230A50 + private int System.Security.Policy.IBuiltInEvidence.GetRequiredSize(bool verbose); // 0x00230C3C + private int System.Security.Policy.IBuiltInEvidence.InitFromBuffer(char[] buffer, int position); // 0x00230C70 + private int System.Security.Policy.IBuiltInEvidence.OutputToBuffer(char[] buffer, int position, bool verbose); // 0x00230C78 + public object Copy(); // 0x00230C98 + public IPermission CreateIdentityPermission(Evidence evidence); // 0x00230D24 + public override bool Equals(object o); // 0x00230DBC + public override int GetHashCode(); // 0x00230F78 + public override string ToString(); // 0x00230FA4 +} + +// Namespace: System.Security.Policy +[Serializable] +public sealed class StrongNameMembershipCondition : IConstantMembershipCondition, IMembershipCondition, ISecurityEncodable, ISecurityPolicyEncodable // TypeDefIndex: 1457 +{ + // Fields + private readonly int version; // 0x08 + private StrongNamePublicKeyBlob blob; // 0x0C + private string name; // 0x10 + private Version assemblyVersion; // 0x14 + + // Properties + public string Name { get; set; } // 0x00231610 0x00231618 + public Version Version { get; set; } // 0x00231620 0x00231628 + public StrongNamePublicKeyBlob PublicKey { get; set; } // 0x00231630 0x00231638 + + // Methods + public void .ctor(StrongNamePublicKeyBlob blob, string name, Version version); // 0x00231488 + internal void .ctor(SecurityElement e); // 0x002315C8 + internal void .ctor(); // 0x00231600 + public bool Check(Evidence evidence); // 0x002316E8 + public IMembershipCondition Copy(); // 0x00231984 + public override bool Equals(object o); // 0x00231A10 + public override int GetHashCode(); // 0x00231B6C + public void FromXml(SecurityElement e); // 0x002315FC + public void FromXml(SecurityElement e, PolicyLevel level); // 0x00231B98 + public override string ToString(); // 0x00231DF4 + public SecurityElement ToXml(); // 0x00231F3C + public SecurityElement ToXml(PolicyLevel level); // 0x00231F40 +} + +// Namespace: System.Security.Policy +public class TrustManagerContext // TypeDefIndex: 1458 +{ + // Fields + private bool _ignorePersistedDecision; // 0x08 + private bool _noPrompt; // 0x09 + private bool _keepAlive; // 0x0A + private bool _persist; // 0x0B + private ApplicationIdentity _previousId; // 0x0C + private TrustManagerUIContext _ui; // 0x10 + + // Properties + public virtual bool IgnorePersistedDecision { get; set; } // 0x002321A0 0x002321A8 + public virtual bool KeepAlive { get; set; } // 0x002321B0 0x002321B8 + public virtual bool NoPrompt { get; set; } // 0x002321C0 0x002321C8 + public virtual bool Persist { get; set; } // 0x002321D0 0x002321D8 + public virtual ApplicationIdentity PreviousApplicationIdentity { get; set; } // 0x002321E0 0x002321E8 + public virtual TrustManagerUIContext UIContext { get; set; } // 0x002321F0 0x002321F8 + + // Methods + public void .ctor(); // 0x00232150 + public void .ctor(TrustManagerUIContext uiContext); // 0x00232178 +} + +// Namespace: System.Security.Policy +public enum TrustManagerUIContext // TypeDefIndex: 1459 +{ + Install = 0, + Upgrade = 1, + Run = 2 +} + +// Namespace: System.Security.Policy +[Serializable] +public sealed class UnionCodeGroup : CodeGroup // TypeDefIndex: 1460 +{ + // Properties + public override string MergeLogic { get; } // 0x0023315C + + // Methods + public void .ctor(IMembershipCondition membershipCondition, PolicyStatement policy); // 0x00232200 + internal void .ctor(SecurityElement e, PolicyLevel level); // 0x00232208 + public override CodeGroup Copy(); // 0x00232210 + internal CodeGroup Copy(bool childs); // 0x00232218 + public override PolicyStatement Resolve(Evidence evidence); // 0x00232620 + public override CodeGroup ResolveMatchingCodeGroups(Evidence evidence); // 0x00232C10 +} + +// Namespace: System.Security.Policy +[Serializable] +public sealed class Url : IBuiltInEvidence, IIdentityPermissionFactory // TypeDefIndex: 1461 +{ + // Fields + private string origin_url; // 0x08 + + // Properties + public string Value { get; } // 0x00234250 + + // Methods + public void .ctor(string name); // 0x002331B8 + internal void .ctor(string name, bool validated); // 0x002331C0 + private int System.Security.Policy.IBuiltInEvidence.GetRequiredSize(bool verbose); // 0x00233508 + private int System.Security.Policy.IBuiltInEvidence.InitFromBuffer(char[] buffer, int position); // 0x0023353C + private int System.Security.Policy.IBuiltInEvidence.OutputToBuffer(char[] buffer, int position, bool verbose); // 0x00233544 + public object Copy(); // 0x0023354C + public IPermission CreateIdentityPermission(Evidence evidence); // 0x002335D4 + public override bool Equals(object o); // 0x0023364C + public override int GetHashCode(); // 0x00233CCC + public override string ToString(); // 0x00233E68 + private string Prepare(string url); // 0x00233208 +} + +// Namespace: System.Security.Policy +[Serializable] +public sealed class UrlMembershipCondition : IConstantMembershipCondition, IMembershipCondition, ISecurityEncodable, ISecurityPolicyEncodable // TypeDefIndex: 1462 +{ + // Fields + private readonly int version; // 0x08 + private Url url; // 0x0C + private string userUrl; // 0x10 + + // Properties + public string Url { get; set; } // 0x00234B5C 0x00234B94 + + // Methods + public void .ctor(string url); // 0x002347B0 + internal void .ctor(Url url, string userUrl); // 0x00234AA0 + public bool Check(Evidence evidence); // 0x00234C0C + public IMembershipCondition Copy(); // 0x002351B0 + public override bool Equals(object o); // 0x0023522C + public void FromXml(SecurityElement e); // 0x00235404 + public void FromXml(SecurityElement e, PolicyLevel level); // 0x00235408 + public override int GetHashCode(); // 0x00235520 + public override string ToString(); // 0x00235548 + public SecurityElement ToXml(); // 0x00235600 + public SecurityElement ToXml(PolicyLevel level); // 0x00235604 + internal void CheckUrl(string url); // 0x002348A8 +} + +// Namespace: System.Security.Policy +[Serializable] +public sealed class Zone : IBuiltInEvidence, IIdentityPermissionFactory // TypeDefIndex: 1463 +{ + // Fields + private SecurityZone zone; // 0x08 + + // Properties + public SecurityZone SecurityZone { get; } // 0x00235B50 + + // Methods + public void .ctor(SecurityZone zone); // 0x00235740 + private int System.Security.Policy.IBuiltInEvidence.GetRequiredSize(bool verbose); // 0x00235A30 + private int System.Security.Policy.IBuiltInEvidence.InitFromBuffer(char[] buffer, int position); // 0x00235A38 + private int System.Security.Policy.IBuiltInEvidence.OutputToBuffer(char[] buffer, int position, bool verbose); // 0x00235AA0 + public object Copy(); // 0x00235B58 + public IPermission CreateIdentityPermission(Evidence evidence); // 0x00235BCC + public static Zone CreateFromUrl(string url); // 0x00235C44 + public override bool Equals(object o); // 0x00235E8C + public override int GetHashCode(); // 0x00235F34 + public override string ToString(); // 0x00235F3C +} + +// Namespace: System.Security.Policy +[Serializable] +public sealed class ZoneMembershipCondition : IConstantMembershipCondition, IMembershipCondition, ISecurityEncodable, ISecurityPolicyEncodable // TypeDefIndex: 1464 +{ + // Fields + private readonly int version; // 0x08 + private SecurityZone zone; // 0x0C + + // Properties + public SecurityZone SecurityZone { get; set; } // 0x002362C0 0x002360FC + + // Methods + internal void .ctor(); // 0x002360B8 + public void .ctor(SecurityZone zone); // 0x002360C8 + public bool Check(Evidence evidence); // 0x002362C8 + public IMembershipCondition Copy(); // 0x00236494 + public override bool Equals(object o); // 0x00236520 + public void FromXml(SecurityElement e); // 0x002365C8 + public void FromXml(SecurityElement e, PolicyLevel level); // 0x002365CC + public override int GetHashCode(); // 0x00236790 + public override string ToString(); // 0x00236854 + public SecurityElement ToXml(); // 0x002369E0 + public SecurityElement ToXml(PolicyLevel level); // 0x002369E4 +} + +// Namespace: System.Security.Principal +[Serializable] +public class GenericIdentity : IIdentity // TypeDefIndex: 1465 +{ + // Fields + private string m_name; // 0x08 + private string m_type; // 0x0C + + // Properties + public virtual string AuthenticationType { get; } // 0x00236CF4 + public virtual string Name { get; } // 0x00236CFC + public virtual bool IsAuthenticated { get; } // 0x00236D04 + + // Methods + public void .ctor(string name, string type); // 0x00236B44 + public void .ctor(string name); // 0x00236C54 +} + +// Namespace: System.Security.Principal +[Serializable] +public class GenericPrincipal : IPrincipal // TypeDefIndex: 1466 +{ + // Fields + private IIdentity m_identity; // 0x08 + private string[] m_roles; // 0x0C + + // Properties + public virtual IIdentity Identity { get; } // 0x00236ECC + + // Methods + public void .ctor(IIdentity identity, string[] roles); // 0x00236D34 + public virtual bool IsInRole(string role); // 0x00236ED4 +} + +// Namespace: System.Security.Principal +public interface IIdentity // TypeDefIndex: 1467 +{ + // Properties + string AuthenticationType { get; } + bool IsAuthenticated { get; } + string Name { get; } + +} + +// Namespace: System.Security.Principal +public interface IPrincipal // TypeDefIndex: 1468 +{ + // Properties + IIdentity Identity { get; } + + // Methods + bool IsInRole(string role); +} + +// Namespace: System.Security.Principal +[Serializable] +public sealed class IdentityNotMappedException : SystemException // TypeDefIndex: 1469 +{ + // Fields + private IdentityReferenceCollection _coll; // 0x34 + + // Properties + public IdentityReferenceCollection UnmappedIdentities { get; } // 0x0023717C + + // Methods + public void .ctor(); // 0x002370F8 + public void .ctor(string message); // 0x0023716C + public void .ctor(string message, Exception inner); // 0x00237174 + public override void GetObjectData(SerializationInfo serializationInfo, StreamingContext streamingContext); // 0x00237274 +} + +// Namespace: System.Security.Principal +public abstract class IdentityReference // TypeDefIndex: 1470 +{ + // Properties + public abstract string Value { get; } + + // Methods + internal void .ctor(); // 0x00237278 + public abstract bool Equals(object o); + public abstract int GetHashCode(); + public abstract bool IsValidTargetType(Type targetType); + public abstract string ToString(); + public abstract IdentityReference Translate(Type targetType); + public static bool op_Equality(IdentityReference left, IdentityReference right); // 0x00237280 + public static bool op_Inequality(IdentityReference left, IdentityReference right); // 0x00237354 +} + +// Namespace: System.Security.Principal +public class IdentityReferenceCollection : IEnumerable, ICollection`1, IEnumerable`1 // TypeDefIndex: 1471 +{ + // Fields + private ArrayList _list; // 0x08 + + // Properties + public int Count { get; } // 0x00237540 + public bool IsReadOnly { get; } // 0x00237574 + public IdentityReference Item { get; set; } // 0x0023757C 0x00237680 + + // Methods + public void .ctor(); // 0x002371F8 + public void .ctor(int capacity); // 0x00237434 + private IEnumerator System.Collections.IEnumerable.GetEnumerator(); // 0x002374B8 + public void Add(IdentityReference identity); // 0x002376C4 + public void Clear(); // 0x00237700 + public bool Contains(IdentityReference identity); // 0x00237734 + public void CopyTo(IdentityReference[] array, int offset); // 0x00237AB4 + public IEnumerator`1 GetEnumerator(); // 0x00237B3C + public bool Remove(IdentityReference identity); // 0x00237BC4 + public IdentityReferenceCollection Translate(Type targetType); // 0x00237F7C + public IdentityReferenceCollection Translate(Type targetType, bool forceSuccess); // 0x00238004 +} + +// Namespace: System.Security.Principal +public sealed class NTAccount : IdentityReference // TypeDefIndex: 1472 +{ + // Fields + private string _value; // 0x08 + + // Properties + public override string Value { get; } // 0x0023884C + + // Methods + public void .ctor(string name); // 0x0023808C + public void .ctor(string domainName, string accountName); // 0x00238258 + public override bool Equals(object o); // 0x00238854 + public override int GetHashCode(); // 0x002389E4 + public override bool IsValidTargetType(Type targetType); // 0x00238A0C + public override string ToString(); // 0x00238B08 + public override IdentityReference Translate(Type targetType); // 0x00238B10 + public static bool op_Equality(NTAccount left, NTAccount right); // 0x00238938 + public static bool op_Inequality(NTAccount left, NTAccount right); // 0x00238BB8 +} + +// Namespace: System.Security.Principal +[Serializable] +public enum PrincipalPolicy // TypeDefIndex: 1473 +{ + UnauthenticatedPrincipal = 0, + NoPrincipal = 1, + WindowsPrincipal = 2 +} + +// Namespace: System.Security.Principal +public sealed class SecurityIdentifier : IdentityReference, IComparable`1 // TypeDefIndex: 1474 +{ + // Fields + private string _value; // 0x08 + public static readonly int MaxBinaryLength; // 0x00 + public static readonly int MinBinaryLength; // 0x04 + + // Properties + public SecurityIdentifier AccountDomainSid { get; } // 0x00239260 + public int BinaryLength { get; } // 0x002392FC + public override string Value { get; } // 0x00239304 + + // Methods + public void .ctor(string sddlForm); // 0x00238C70 + public void .ctor(byte[] binaryForm, int offset); // 0x00238E80 + public void .ctor(IntPtr binaryForm); // 0x00238FC8 + public void .ctor(WellKnownSidType sidType, SecurityIdentifier domainSid); // 0x00239060 + private static void .cctor(); // 0x0023925C + public int CompareTo(SecurityIdentifier sid); // 0x0023930C + public override bool Equals(object o); // 0x002393E8 + public bool Equals(SecurityIdentifier sid); // 0x00239470 + public void GetBinaryForm(byte[] binaryForm, int offset); // 0x00239554 + public override int GetHashCode(); // 0x00239654 + public bool IsAccountSid(); // 0x0023967C + public bool IsEqualDomainSid(SecurityIdentifier sid); // 0x00239704 + public override bool IsValidTargetType(Type targetType); // 0x0023978C + public bool IsWellKnown(WellKnownSidType type); // 0x00239888 + public override string ToString(); // 0x00239910 + public override IdentityReference Translate(Type targetType); // 0x00239918 + public static bool op_Equality(SecurityIdentifier left, SecurityIdentifier right); // 0x002391B0 + public static bool op_Inequality(SecurityIdentifier left, SecurityIdentifier right); // 0x002399C0 +} + +// Namespace: System.Security.Principal +[Serializable] +public enum TokenAccessLevels // TypeDefIndex: 1475 +{ + AssignPrimary = 1, + Duplicate = 2, + Impersonate = 4, + Query = 8, + QuerySource = 16, + AdjustPrivileges = 32, + AdjustGroups = 64, + AdjustDefault = 128, + AdjustSessionId = 256, + Read = 131080, + Write = 131296, + AllAccess = 983551, + MaximumAllowed = 33554432 +} + +// Namespace: System.Security.Principal +[Serializable] +public enum TokenImpersonationLevel // TypeDefIndex: 1476 +{ + None = 0, + Anonymous = 1, + Identification = 2, + Impersonation = 3, + Delegation = 4 +} + +// Namespace: System.Security.Principal +public enum WellKnownSidType // TypeDefIndex: 1477 +{ + NullSid = 0, + WorldSid = 1, + LocalSid = 2, + CreatorOwnerSid = 3, + CreatorGroupSid = 4, + CreatorOwnerServerSid = 5, + CreatorGroupServerSid = 6, + NTAuthoritySid = 7, + DialupSid = 8, + NetworkSid = 9, + BatchSid = 10, + InteractiveSid = 11, + ServiceSid = 12, + AnonymousSid = 13, + ProxySid = 14, + EnterpriseControllersSid = 15, + SelfSid = 16, + AuthenticatedUserSid = 17, + RestrictedCodeSid = 18, + TerminalServerSid = 19, + RemoteLogonIdSid = 20, + LogonIdsSid = 21, + LocalSystemSid = 22, + LocalServiceSid = 23, + NetworkServiceSid = 24, + BuiltinDomainSid = 25, + BuiltinAdministratorsSid = 26, + BuiltinUsersSid = 27, + BuiltinGuestsSid = 28, + BuiltinPowerUsersSid = 29, + BuiltinAccountOperatorsSid = 30, + BuiltinSystemOperatorsSid = 31, + BuiltinPrintOperatorsSid = 32, + BuiltinBackupOperatorsSid = 33, + BuiltinReplicatorSid = 34, + BuiltinPreWindows2000CompatibleAccessSid = 35, + BuiltinRemoteDesktopUsersSid = 36, + BuiltinNetworkConfigurationOperatorsSid = 37, + AccountAdministratorSid = 38, + AccountGuestSid = 39, + AccountKrbtgtSid = 40, + AccountDomainAdminsSid = 41, + AccountDomainUsersSid = 42, + AccountDomainGuestsSid = 43, + AccountComputersSid = 44, + AccountControllersSid = 45, + AccountCertAdminsSid = 46, + AccountSchemaAdminsSid = 47, + AccountEnterpriseAdminsSid = 48, + AccountPolicyAdminsSid = 49, + AccountRasAndIasServersSid = 50, + NtlmAuthenticationSid = 51, + DigestAuthenticationSid = 52, + SChannelAuthenticationSid = 53, + ThisOrganizationSid = 54, + OtherOrganizationSid = 55, + BuiltinIncomingForestTrustBuildersSid = 56, + BuiltinPerformanceMonitoringUsersSid = 57, + BuiltinPerformanceLoggingUsersSid = 58, + BuiltinAuthorizationAccessSid = 59, + WinBuiltinTerminalServerLicenseServersSid = 60, + MaxDefined = 60 +} + +// Namespace: System.Security.Principal +[Serializable] +public enum WindowsAccountType // TypeDefIndex: 1478 +{ + Normal = 0, + Guest = 1, + System = 2, + Anonymous = 3 +} + +// Namespace: System.Security.Principal +[Serializable] +public enum WindowsBuiltInRole // TypeDefIndex: 1479 +{ + Administrator = 544, + User = 545, + Guest = 546, + PowerUser = 547, + AccountOperator = 548, + SystemOperator = 549, + PrintOperator = 550, + BackupOperator = 551, + Replicator = 552 +} + +// Namespace: System.Security.Principal +[Serializable] +public class WindowsIdentity : IDisposable, ISerializable, IDeserializationCallback, IIdentity // TypeDefIndex: 1480 +{ + // Fields + private IntPtr _token; // 0x08 + private string _type; // 0x0C + private WindowsAccountType _account; // 0x10 + private bool _authenticated; // 0x14 + private string _name; // 0x18 + private SerializationInfo _info; // 0x1C + private static IntPtr invalidWindows; // 0x00 + + // Properties + public string AuthenticationType { get; } // 0x0023ABAC + public virtual bool IsAnonymous { get; } // 0x0023ABB4 + public virtual bool IsAuthenticated { get; } // 0x0023ABC8 + public virtual bool IsGuest { get; } // 0x0023ABD0 + public virtual bool IsSystem { get; } // 0x0023ABE0 + public virtual string Name { get; } // 0x0023ABF4 + public virtual IntPtr Token { get; } // 0x0023AC88 + public IdentityReferenceCollection Groups { get; } // 0x0023AC90 + public TokenImpersonationLevel ImpersonationLevel { get; } // 0x0023AD18 + public SecurityIdentifier Owner { get; } // 0x0023ADA0 + public SecurityIdentifier User { get; } // 0x0023AE28 + private static bool IsPosix { get; } // 0x00239EDC + + // Methods + public void .ctor(IntPtr userToken); // 0x00239A78 + public void .ctor(IntPtr userToken, string type); // 0x00239AFC + public void .ctor(IntPtr userToken, string type, WindowsAccountType acctType); // 0x00239B3C + public void .ctor(IntPtr userToken, string type, WindowsAccountType acctType, bool isAuthenticated); // 0x00239AB4 + public void .ctor(string sUserPrincipalName); // 0x00239D40 + public void .ctor(string sUserPrincipalName, string type); // 0x00239D48 + public void .ctor(SerializationInfo info, StreamingContext context); // 0x00239F0C + private static void .cctor(); // 0x00239F2C + private void System.Runtime.Serialization.IDeserializationCallback.OnDeserialization(object sender); // 0x00239F94 + private void System.Runtime.Serialization.ISerializable.GetObjectData(SerializationInfo info, StreamingContext context); // 0x0023A3D4 + public void Dispose(); // 0x0023A578 + protected virtual void Dispose(bool disposing); // 0x0023A5CC + public static WindowsIdentity GetAnonymous(); // 0x0023A620 + public static WindowsIdentity GetCurrent(); // 0x0023A820 + public static WindowsIdentity GetCurrent(bool ifImpersonating); // 0x0023A8E8 + public static WindowsIdentity GetCurrent(TokenAccessLevels desiredAccess); // 0x0023A970 + public virtual WindowsImpersonationContext Impersonate(); // 0x0023A9F8 + public static WindowsImpersonationContext Impersonate(IntPtr userToken); // 0x0023AB3C + private void SetToken(IntPtr token); // 0x00239B80 + internal static string[] _GetRoles(IntPtr token); // 0x0023AEB0 + internal static IntPtr GetCurrentToken(); // 0x0023A8E4 + private static string GetTokenName(IntPtr token); // 0x0023A3D0 + private static IntPtr GetUserToken(string username); // 0x00239ED8 +} + +// Namespace: System.Security.Principal +public class WindowsImpersonationContext : IDisposable // TypeDefIndex: 1481 +{ + // Fields + private IntPtr _token; // 0x08 + private bool undo; // 0x0C + + // Methods + internal void .ctor(IntPtr token); // 0x0023AA6C + public void Dispose(); // 0x0023AEE0 + protected virtual void Dispose(bool disposing); // 0x0023AFBC + public void Undo(); // 0x0023AEF0 + private static bool CloseToken(IntPtr token); // 0x0023AFF8 + private static IntPtr DuplicateToken(IntPtr token); // 0x0023AEB4 + private static bool SetCurrentToken(IntPtr token); // 0x0023AEB8 + private static bool RevertToSelf(); // 0x0023AFF4 +} + +// Namespace: System.Security.Principal +[Serializable] +public class WindowsPrincipal : IPrincipal // TypeDefIndex: 1482 +{ + // Fields + private WindowsIdentity _identity; // 0x08 + private string[] m_roles; // 0x0C + + // Properties + public virtual IIdentity Identity { get; } // 0x0023B0B8 + private static bool IsPosix { get; } // 0x0023B1AC + private IntPtr Token { get; } // 0x0023B1DC + + // Methods + public void .ctor(WindowsIdentity ntIdentity); // 0x0023AFFC + public virtual bool IsInRole(int rid); // 0x0023B0C0 + public virtual bool IsInRole(string role); // 0x0023B214 + public virtual bool IsInRole(WindowsBuiltInRole role); // 0x0023B3E4 + public virtual bool IsInRole(SecurityIdentifier sid); // 0x0023B49C + private static bool IsMemberOfGroupId(IntPtr user, IntPtr group); // 0x0023B210 + private static bool IsMemberOfGroupName(IntPtr user, string group); // 0x0023B3E0 +} + +// Namespace: System.Security +public sealed class AllowPartiallyTrustedCallersAttribute : Attribute // TypeDefIndex: 1483 +{ + // Methods + public void .ctor(); // 0x004349F4 +} + +// Namespace: System.Security +[Serializable] +public abstract class CodeAccessPermission : IPermission, ISecurityEncodable, IStackWalk // TypeDefIndex: 1484 +{ + // Methods + protected void .ctor(); // 0x004349FC + public void Assert(); // 0x00434A04 + internal bool CheckAssert(CodeAccessPermission asserted); // 0x00434A08 + internal bool CheckDemand(CodeAccessPermission target); // 0x00434A68 + internal bool CheckDeny(CodeAccessPermission denied); // 0x00434AC8 + internal bool CheckPermitOnly(CodeAccessPermission target); // 0x00434BBC + public abstract IPermission Copy(); + public void Demand(); // 0x00434C1C + public void Deny(); // 0x00434C20 + public override bool Equals(object obj); // 0x00434C24 + public abstract void FromXml(SecurityElement elem); + public override int GetHashCode(); // 0x00434D30 + public abstract IPermission Intersect(IPermission target); + public abstract bool IsSubsetOf(IPermission target); + public override string ToString(); // 0x00434D38 + public abstract SecurityElement ToXml(); + public virtual IPermission Union(IPermission other); // 0x00434D74 + public void PermitOnly(); // 0x00434E0C + public static void RevertAll(); // 0x00434E10 + public static void RevertAssert(); // 0x00434E14 + public static void RevertDeny(); // 0x00434E18 + public static void RevertPermitOnly(); // 0x00434E1C + internal SecurityElement Element(int version); // 0x00434E20 + internal static PermissionState CheckPermissionState(PermissionState state, bool allowUnrestricted); // 0x00435020 + internal static int CheckSecurityElement(SecurityElement se, string parameterName, int minimumVersion, int maximumVersion); // 0x00435154 + internal static bool IsUnrestricted(SecurityElement se); // 0x00435554 + internal bool ProcessFrame(SecurityFrame frame); // 0x004356B4 + internal static void ThrowInvalidPermission(IPermission target, Type expected); // 0x004361B0 + internal static void ThrowExecutionEngineException(SecurityAction stackmod); // 0x004362D8 + internal static void ThrowSecurityException(object demanded, string message, SecurityFrame frame, SecurityAction action, IPermission failed); // 0x00436120 +} + +// Namespace: System.Security +[Serializable] +public class HostProtectionException : SystemException // TypeDefIndex: 1485 +{ + // Fields + private HostProtectionResource _protected; // 0x34 + private HostProtectionResource _demanded; // 0x38 + + // Properties + public HostProtectionResource DemandedResources { get; } // 0x003D8A0C + public HostProtectionResource ProtectedResources { get; } // 0x003D8A14 + + // Methods + public void .ctor(); // 0x003D897C + public void .ctor(string message); // 0x003D8984 + public void .ctor(string message, Exception e); // 0x003D898C + public void .ctor(string message, HostProtectionResource protectedResources, HostProtectionResource demandedResources); // 0x003D8994 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x003D89BC + public override void GetObjectData(SerializationInfo info, StreamingContext context); // 0x003D8A1C + public override string ToString(); // 0x003D8AC4 +} + +// Namespace: System.Security +[Serializable] +public class HostSecurityManager // TypeDefIndex: 1486 +{ + // Properties + public virtual PolicyLevel DomainPolicy { get; } // 0x003D8AD4 + public virtual HostSecurityManagerOptions Flags { get; } // 0x003D8ADC + + // Methods + public void .ctor(); // 0x003D8ACC + public virtual ApplicationTrust DetermineApplicationTrust(Evidence applicationEvidence, Evidence activatorEvidence, TrustManagerContext context); // 0x003D8AE4 + public virtual Evidence ProvideAppDomainEvidence(Evidence inputEvidence); // 0x003D8FDC + public virtual Evidence ProvideAssemblyEvidence(Assembly loadedAssembly, Evidence inputEvidence); // 0x003D8FE4 + public virtual PermissionSet ResolvePolicy(Evidence evidence); // 0x003D8FEC +} + +// Namespace: System.Security +[Serializable] +public enum HostSecurityManagerOptions // TypeDefIndex: 1487 +{ + None = 0, + HostAppDomainEvidence = 1, + HostPolicyLevel = 2, + HostAssemblyEvidence = 4, + HostDetermineApplicationTrust = 8, + HostResolvePolicy = 16, + AllFlags = 31 +} + +// Namespace: System.Security +public interface IEvidenceFactory // TypeDefIndex: 1488 +{ + // Properties + Evidence Evidence { get; } + +} + +// Namespace: System.Security +public interface IPermission : ISecurityEncodable // TypeDefIndex: 1489 +{ + // Methods + IPermission Copy(); + void Demand(); + IPermission Intersect(IPermission target); + bool IsSubsetOf(IPermission target); + IPermission Union(IPermission target); +} + +// Namespace: System.Security +public interface ISecurityEncodable // TypeDefIndex: 1490 +{ + // Methods + void FromXml(SecurityElement e); + SecurityElement ToXml(); +} + +// Namespace: System.Security +public interface ISecurityPolicyEncodable // TypeDefIndex: 1491 +{ + // Methods + void FromXml(SecurityElement e, PolicyLevel level); + SecurityElement ToXml(PolicyLevel level); +} + +// Namespace: System.Security +public interface IStackWalk // TypeDefIndex: 1492 +{ + // Methods + void Assert(); + void Demand(); + void Deny(); + void PermitOnly(); +} + +// Namespace: System.Security +[Serializable] +public sealed class NamedPermissionSet : PermissionSet // TypeDefIndex: 1493 +{ + // Fields + private string name; // 0x10 + private string description; // 0x14 + + // Properties + public string Description { get; set; } // 0x003D92D0 0x003D92D8 + public string Name { get; set; } // 0x003D92E0 0x003D9110 + + // Methods + internal void .ctor(); // 0x003D90D0 + public void .ctor(string name, PermissionSet permSet); // 0x003D90E0 + public void .ctor(string name, PermissionState state); // 0x003D9224 + public void .ctor(NamedPermissionSet permSet); // 0x003D9254 + public void .ctor(string name); // 0x003D92A8 + public override PermissionSet Copy(); // 0x003D92E8 + public NamedPermissionSet Copy(string name); // 0x003D9358 + public override void FromXml(SecurityElement et); // 0x003D93E8 + public override SecurityElement ToXml(); // 0x003D9508 + public override bool Equals(object obj); // 0x003D95C8 + public override int GetHashCode(); // 0x003D96B8 +} + +// Namespace: System.Security +internal static class PermissionBuilder // TypeDefIndex: 1494 +{ + // Fields + private static object[] psNone; // 0x00 + + // Methods + private static void .cctor(); // 0x003D96F0 + public static IPermission Create(string fullname, PermissionState state); // 0x003D97F8 + public static IPermission Create(SecurityElement se); // 0x003D9C00 + public static IPermission Create(string fullname, SecurityElement se); // 0x003D9D58 + public static IPermission Create(Type type); // 0x003D9E8C + internal static IPermission CreatePermission(string fullname, SecurityElement se); // 0x003D99E0 +} + +// Namespace: System.Security +[Serializable] +public class PermissionSet // TypeDefIndex: 1495 +{ + // Fields + private PolicyLevel k__BackingField; // 0x08 + private bool k__BackingField; // 0x0C + + // Properties + internal PolicyLevel Resolver { get; set; } // 0x003DA108 0x003DA110 + internal bool DeclarativeSecurity { get; set; } // 0x003DA118 0x003DA120 + + // Methods + public void .ctor(); // 0x003D90D8 + internal void .ctor(string xml); // 0x003D9F74 + public void .ctor(PermissionState state); // 0x003D924C + public void .ctor(PermissionSet permSet); // 0x003D9108 + public IPermission AddPermission(IPermission perm); // 0x003D9F7C + public virtual void Assert(); // 0x003D9F84 + public virtual PermissionSet Copy(); // 0x003D9F88 + public virtual void Demand(); // 0x003D9FF4 + public virtual void PermitOnly(); // 0x003D9FF8 + public virtual IPermission GetPermission(Type permClass); // 0x003D9FFC + public virtual PermissionSet Intersect(PermissionSet other); // 0x003DA004 + public virtual void Deny(); // 0x003DA00C + public virtual void FromXml(SecurityElement et); // 0x003D9504 + public virtual void CopyTo(Array array, int index); // 0x003DA010 + public virtual SecurityElement ToXml(); // 0x003D95C0 + public virtual bool IsSubsetOf(PermissionSet target); // 0x003DA014 + internal void SetReadOnly(bool value); // 0x003DA01C + public bool IsUnrestricted(); // 0x003DA020 + public PermissionSet Union(PermissionSet other); // 0x003DA028 + public virtual IEnumerator GetEnumerator(); // 0x003DA094 + public virtual bool IsEmpty(); // 0x003DA128 + internal static PermissionSet CreateFromBinaryFormat(byte[] data); // 0x003DA130 +} + +// Namespace: +private sealed class c__Iterator1 : IEnumerator, IDisposable, IEnumerator`1 // TypeDefIndex: 1496 +{ + // Fields + internal int $PC; // 0x08 + internal object $current; // 0x0C + + // Properties + private object System.Collections.Generic.IEnumerator.Current { get; } // 0x003DA19C + private object System.Collections.IEnumerator.Current { get; } // 0x003DA1A4 + + // Methods + public void .ctor(); // 0x003DA100 + public bool MoveNext(); // 0x003DA1AC + public void Dispose(); // 0x003DA1BC + public void Reset(); // 0x003DA1C8 +} + +// Namespace: System.Security +[Serializable] +public enum PolicyLevelType // TypeDefIndex: 1497 +{ + User = 0, + Machine = 1, + Enterprise = 2, + AppDomain = 3 +} + +// Namespace: System.Security +public sealed class SecureString : CriticalFinalizerObject, IDisposable // TypeDefIndex: 1498 +{ + // Fields + private const int BlockSize = 16; // 0x00 + private const int MaxSize = 65536; // 0x00 + private int length; // 0x08 + private bool disposed; // 0x0C + private bool read_only; // 0x0D + private byte[] data; // 0x10 + + // Properties + public int Length { get; } // 0x0023B8EC + + // Methods + public void .ctor(); // 0x0023B52C + public void .ctor(void * value, int length); // 0x0023B708 + private static void .cctor(); // 0x0023B8E8 + public void AppendChar(char c); // 0x0023B99C + public void Clear(); // 0x0023BBE8 + public SecureString Copy(); // 0x0023BD2C + public void Dispose(); // 0x0023BE40 + public void InsertAt(int index, char c); // 0x0023BE84 + public bool IsReadOnly(); // 0x0023C200 + public void MakeReadOnly(); // 0x0023C2B0 + public void RemoveAt(int index); // 0x0023C2BC + public void SetAt(int index, char c); // 0x0023C4D8 + private void Encrypt(); // 0x0023B8E4 + private void Decrypt(); // 0x0023BBE4 + private void Alloc(int length, bool realloc); // 0x0023B554 + internal byte[] GetBuffer(); // 0x0023C718 +} + +// Namespace: System.Security +public sealed class SecurityContext // TypeDefIndex: 1499 +{ + // Fields + private bool _capture; // 0x08 + private IntPtr _winid; // 0x0C + private CompressedStack _stack; // 0x10 + private bool _suppressFlowWindowsIdentity; // 0x14 + private bool _suppressFlow; // 0x15 + + // Properties + internal bool FlowSuppressed { get; set; } // 0x0023CA8C 0x0023CA94 + internal bool WindowsIdentityFlowSuppressed { get; set; } // 0x0023CA9C 0x0023CAA4 + internal CompressedStack CompressedStack { get; set; } // 0x0023CAAC 0x0023CAB4 + internal IntPtr IdentityToken { get; set; } // 0x0023CABC 0x0023CAC4 + + // Methods + internal void .ctor(); // 0x0023C7FC + internal void .ctor(SecurityContext sc); // 0x0023C804 + public SecurityContext CreateCopy(); // 0x0023C870 + public static SecurityContext Capture(); // 0x0023C930 + public static bool IsFlowSuppressed(); // 0x0023CACC + public static bool IsWindowsIdentityFlowSuppressed(); // 0x0023CBA0 + public static void RestoreFlow(); // 0x0023CC74 + public static void Run(SecurityContext securityContext, ContextCallback callback, object state); // 0x0023CDA4 + public static AsyncFlowControl SuppressFlow(); // 0x0023D0F8 + public static AsyncFlowControl SuppressFlowWindowsIdentity(); // 0x0023D24C +} + +// Namespace: System.Security +public sealed class SecurityCriticalAttribute : Attribute // TypeDefIndex: 1500 +{ + // Fields + private SecurityCriticalScope _scope; // 0x08 + + // Properties + public SecurityCriticalScope Scope { get; } // 0x0023D390 + + // Methods + public void .ctor(); // 0x0023D348 + public void .ctor(SecurityCriticalScope scope); // 0x0023D368 +} + +// Namespace: System.Security +public enum SecurityCriticalScope // TypeDefIndex: 1501 +{ + Explicit = 0, + Everything = 1 +} + +// Namespace: System.Security +[Serializable] +public sealed class SecurityElement // TypeDefIndex: 1502 +{ + // Fields + private string text; // 0x08 + private string tag; // 0x0C + private ArrayList attributes; // 0x10 + private ArrayList children; // 0x14 + private static readonly char[] invalid_tag_chars; // 0x00 + private static readonly char[] invalid_text_chars; // 0x04 + private static readonly char[] invalid_attr_name_chars; // 0x08 + private static readonly char[] invalid_attr_value_chars; // 0x0C + private static readonly char[] invalid_chars; // 0x10 + + // Properties + public Hashtable Attributes { get; set; } // 0x0023E114 0x0023E4A8 + public ArrayList Children { get; set; } // 0x0023EAB0 0x0023EAB8 + public string Tag { get; set; } // 0x0023ED98 0x0023DC5C + public string Text { get; set; } // 0x0023EDA0 0x0023D450 + + // Methods + public void .ctor(string tag); // 0x002311C0 + public void .ctor(string tag, string text); // 0x00233F94 + internal void .ctor(SecurityElement se); // 0x0023D5CC + private static void .cctor(); // 0x0023DDEC + public void AddAttribute(string name, string value); // 0x002311C8 + public void AddChild(SecurityElement child); // 0x00234144 + public string Attribute(string name); // 0x00231D2C + public SecurityElement Copy(); // 0x0023F478 + public bool Equal(SecurityElement other); // 0x0023F4E8 + public static string Escape(string str); // 0x0023FC50 + private static string Unescape(string str); // 0x0023EE60 + public static SecurityElement FromString(string xml); // 0x0023FF68 + public static bool IsValidAttributeName(string name); // 0x002401CC + public static bool IsValidAttributeValue(string value); // 0x00240284 + public static bool IsValidTag(string tag); // 0x0023D398 + public static bool IsValidText(string text); // 0x0023EDA8 + public SecurityElement SearchForChildByTag(string tag); // 0x0024033C + public string SearchForTextOfTag(string tag); // 0x002404F0 + public override string ToString(); // 0x002313E4 + private void ToXml(StringBuilder s, int level); // 0x002406E8 + internal SecurityAttribute GetAttribute(string name); // 0x0023F0E0 +} + +// Namespace: +internal class SecurityAttribute // TypeDefIndex: 1503 +{ + // Fields + private string _name; // 0x08 + private string _value; // 0x0C + + // Properties + public string Name { get; } // 0x00240EF4 + public string Value { get; } // 0x00240EFC + + // Methods + public void .ctor(string name, string value); // 0x0023E850 +} + +// Namespace: System.Security +[Serializable] +public class SecurityException : SystemException // TypeDefIndex: 1504 +{ + // Fields + private string permissionState; // 0x34 + private Type permissionType; // 0x38 + private string _granted; // 0x3C + private string _refused; // 0x40 + private object _demanded; // 0x44 + private IPermission _firstperm; // 0x48 + private MethodInfo _method; // 0x4C + private Evidence _evidence; // 0x50 + private SecurityAction _action; // 0x54 + private object _denyset; // 0x58 + private object _permitset; // 0x5C + private AssemblyName _assembly; // 0x60 + private string _url; // 0x64 + private SecurityZone _zone; // 0x68 + + // Properties + public SecurityAction Action { get; set; } // 0x002413EC 0x002413F4 + public object DenySetInstance { get; set; } // 0x002413FC 0x00241404 + public AssemblyName FailedAssemblyInfo { get; set; } // 0x0024140C 0x00241414 + public MethodInfo Method { get; set; } // 0x0024141C 0x00241424 + public object PermitOnlySetInstance { get; set; } // 0x0024142C 0x00241434 + public string Url { get; set; } // 0x0024143C 0x00241444 + public SecurityZone Zone { get; set; } // 0x0024144C 0x00241454 + public object Demanded { get; set; } // 0x0024145C 0x00241464 + public IPermission FirstPermissionThatFailed { get; set; } // 0x0024146C 0x00241474 + public string PermissionState { get; set; } // 0x0024147C 0x00241484 + public Type PermissionType { get; set; } // 0x0024148C 0x00241494 + public string GrantedSet { get; set; } // 0x0024149C 0x002414A4 + public string RefusedSet { get; set; } // 0x002414AC 0x002414B4 + + // Methods + public void .ctor(); // 0x00240F04 + public void .ctor(string message); // 0x0023AEBC + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x00240F84 + public void .ctor(string message, Exception inner); // 0x00241110 + public void .ctor(string message, Type type); // 0x00241134 + public void .ctor(string message, Type type, string state); // 0x00241160 + internal void .ctor(string message, PermissionSet granted, PermissionSet refused); // 0x00241194 + public void .ctor(string message, object deny, object permitOnly, MethodInfo method, object demanded, IPermission permThatFailed); // 0x00241210 + public void .ctor(string message, AssemblyName assemblyName, PermissionSet grant, PermissionSet refused, MethodInfo method, SecurityAction action, object demanded, IPermission permThatFailed, Evidence evidence); // 0x00241258 + public override void GetObjectData(SerializationInfo info, StreamingContext context); // 0x002414BC + public override string ToString(); // 0x002415F8 +} + +// Namespace: System.Security +internal struct RuntimeDeclSecurityEntry // TypeDefIndex: 1505 +{ + // Fields + public IntPtr blob; // 0x08 + public int size; // 0x0C + public int index; // 0x10 + +} + +// Namespace: System.Security +internal class RuntimeSecurityFrame // TypeDefIndex: 1506 +{ + // Fields + public AppDomain domain; // 0x08 + public MethodInfo method; // 0x0C + public RuntimeDeclSecurityEntry assert; // 0x10 + public RuntimeDeclSecurityEntry deny; // 0x1C + public RuntimeDeclSecurityEntry permitonly; // 0x28 + + // Methods + public void .ctor(); // 0x0023B524 +} + +// Namespace: System.Security +internal struct SecurityFrame // TypeDefIndex: 1507 +{ + // Fields + private AppDomain _domain; // 0x08 + private MethodInfo _method; // 0x0C + private PermissionSet _assert; // 0x10 + private PermissionSet _deny; // 0x14 + private PermissionSet _permitonly; // 0x18 + + // Properties + public Assembly Assembly { get; } // 0x0008C4C4 + public AppDomain Domain { get; } // 0x0008C4CC + public MethodInfo Method { get; } // 0x0008C4D4 + public PermissionSet Assert { get; } // 0x0008C4DC + public PermissionSet Deny { get; } // 0x0008C4E4 + public PermissionSet PermitOnly { get; } // 0x0008C4EC + public bool HasStackModifiers { get; } // 0x0008C4F4 + + // Methods + internal void .ctor(RuntimeSecurityFrame frame); // 0x0008C470 + internal void .ctor(int skip); // 0x0008C488 + private static RuntimeSecurityFrame _GetSecurityFrame(int skip); // 0x0024218C + private static Array _GetSecurityStack(int skip); // 0x00242190 + internal void InitFromRuntimeFrame(RuntimeSecurityFrame frame); // 0x0008C4BC + public bool Equals(SecurityFrame sf); // 0x0008C524 + public override string ToString(); // 0x0008C54C + public static ArrayList GetStack(int skipFrames); // 0x00242AD0 +} + +// Namespace: System.Security +internal struct RuntimeDeclSecurityActions // TypeDefIndex: 1508 +{ + // Fields + public RuntimeDeclSecurityEntry cas; // 0x08 + public RuntimeDeclSecurityEntry noncas; // 0x14 + public RuntimeDeclSecurityEntry choice; // 0x20 + +} + +// Namespace: System.Security +public static class SecurityManager // TypeDefIndex: 1509 +{ + // Fields + private static object _lockObject; // 0x00 + private static ArrayList _hierarchy; // 0x04 + private static IPermission _unmanagedCode; // 0x08 + private static Hashtable _declsecCache; // 0x0C + private static PolicyLevel _level; // 0x10 + private static SecurityPermission _execution; // 0x14 + + // Properties + public static bool CheckExecutionRights { get; set; } // 0x00242D4C 0x00242D50 + public static bool SecurityEnabled { get; set; } // 0x00242D54 0x00242D58 + private static IEnumerator Hierarchy { get; } // 0x00244398 + internal static PolicyLevel ResolvingPolicyLevel { get; set; } // 0x00245B04 0x00245B90 + private static IPermission UnmanagedCode { get; } // 0x00245DD8 + + // Methods + private static void .cctor(); // 0x00242C9C + public static void GetZoneAndOrigin(out ArrayList zone, out ArrayList origin); // 0x00242D5C + public static bool IsGranted(IPermission perm); // 0x00242DE8 + internal static bool IsGranted(Assembly a, IPermission perm); // 0x00242EC0 + internal static IPermission CheckPermissionSet(Assembly a, PermissionSet ps, bool noncas); // 0x0024321C + internal static IPermission CheckPermissionSet(AppDomain ad, PermissionSet ps); // 0x00243784 + public static PolicyLevel LoadPolicyLevelFromFile(string path, PolicyLevelType type); // 0x00243EA0 + public static PolicyLevel LoadPolicyLevelFromString(string str, PolicyLevelType type); // 0x002440E0 + public static IEnumerator PolicyHierarchy(); // 0x00244320 + public static PermissionSet ResolvePolicy(Evidence evidence); // 0x00244554 + public static PermissionSet ResolvePolicy(Evidence[] evidences); // 0x00244B88 + public static PermissionSet ResolveSystemPolicy(Evidence evidence); // 0x00244D44 + public static PermissionSet ResolvePolicy(Evidence evidence, PermissionSet reqdPset, PermissionSet optPset, PermissionSet denyPset, out PermissionSet denied); // 0x00244FF8 + public static IEnumerator ResolvePolicyGroups(Evidence evidence); // 0x00245290 + public static void SavePolicy(); // 0x0024555C + public static void SavePolicyLevel(PolicyLevel level); // 0x0024573C + private static void InitializePolicyHierarchy(); // 0x00245768 + internal static bool ResolvePolicyLevel(PermissionSet ps, PolicyLevel pl, Evidence evidence); // 0x002447F4 + internal static void ResolveIdentityPermissions(PermissionSet ps, Evidence evidence); // 0x002448F8 + internal static PermissionSet Decode(IntPtr permissions, int length); // 0x00242194 + internal static PermissionSet Decode(byte[] encodedPermissions); // 0x00245C20 + private static bool GetLinkDemandSecurity(MethodBase method, void * cdecl, void * mdecl); // 0x00245FC0 + internal static void ReflectedLinkDemandInvoke(MethodBase mb); // 0x00245FC4 + internal static bool ReflectedLinkDemandQuery(MethodBase mb); // 0x00246238 + private static bool LinkDemand(Assembly a, void * klass, void * method); // 0x0024638C + private static bool LinkDemandFullTrust(Assembly a); // 0x0024664C + private static bool LinkDemandUnmanaged(Assembly a); // 0x002466E0 + private static void LinkDemandSecurityException(int securityViolation, IntPtr methodHandle); // 0x00246768 + private static void InheritanceDemandSecurityException(int securityViolation, Assembly a, Type t, MethodInfo method); // 0x00246A58 + private static void ThrowException(Exception ex); // 0x00246BFC + private static bool InheritanceDemand(AppDomain ad, Assembly a, void * actions); // 0x00246C68 + private static void DemandUnmanaged(); // 0x00246ED4 + private static void InternalDemand(IntPtr permissions, int length); // 0x00246FD8 + private static void InternalDemandChoice(IntPtr permissions, int length); // 0x00247088 +} + +// Namespace: System.Security +public sealed class SecuritySafeCriticalAttribute : Attribute // TypeDefIndex: 1510 +{ + // Methods + public void .ctor(); // 0x00247120 +} + +// Namespace: System.Security +public abstract class SecurityState // TypeDefIndex: 1511 +{ + // Methods + protected void .ctor(); // 0x00247128 + public abstract void EnsureState(); + public bool IsStateAvailable(); // 0x00247130 +} + +// Namespace: System.Security +public sealed class SecurityTransparentAttribute : Attribute // TypeDefIndex: 1512 +{ + // Methods + public void .ctor(); // 0x00247184 +} + +// Namespace: System.Security +public sealed class SecurityTreatAsSafeAttribute : Attribute // TypeDefIndex: 1513 +{ + // Methods + public void .ctor(); // 0x0024718C +} + +// Namespace: System.Security +[Serializable] +public enum SecurityZone // TypeDefIndex: 1514 +{ + NoZone = -1, + MyComputer = 0, + Intranet = 1, + Trusted = 2, + Internet = 3, + Untrusted = 4 +} + +// Namespace: System.Security +public sealed class SuppressUnmanagedCodeSecurityAttribute : Attribute // TypeDefIndex: 1515 +{ + // Methods + public void .ctor(); // 0x00247194 +} + +// Namespace: System.Security +public sealed class UnverifiableCodeAttribute : Attribute // TypeDefIndex: 1516 +{ + // Methods + public void .ctor(); // 0x0024719C +} + +// Namespace: System.Security +[Serializable] +public class VerificationException : SystemException // TypeDefIndex: 1517 +{ + // Methods + public void .ctor(); // 0x002471A4 + public void .ctor(string message); // 0x002471AC + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x002471B4 + public void .ctor(string message, Exception innerException); // 0x002471D4 +} + +// Namespace: System.Security +[Serializable] +public sealed class XmlSyntaxException : SystemException // TypeDefIndex: 1518 +{ + // Methods + public void .ctor(); // 0x002471DC + public void .ctor(int lineNumber); // 0x002471E4 + public void .ctor(int lineNumber, string message); // 0x002472C0 + public void .ctor(string message); // 0x002401BC + public void .ctor(string message, Exception inner); // 0x002401C4 + internal void .ctor(SerializationInfo info, StreamingContext context); // 0x00247500 +} + +// Namespace: System.Text +[Serializable] +public class ASCIIEncoding : Encoding // TypeDefIndex: 1519 +{ + // Fields + internal const int ASCII_CODE_PAGE = 20127; // 0x00 + + // Properties + public override bool IsSingleByte { get; } // 0x005101B8 + + // Methods + public void .ctor(); // 0x0050FC40 + public override int GetByteCount(char[] chars, int index, int count); // 0x005101C0 + public override int GetByteCount(string chars); // 0x005103A8 + public override int GetBytes(char[] chars, int charIndex, int charCount, byte[] bytes, int byteIndex); // 0x00510454 + private int GetBytes(char[] chars, int charIndex, int charCount, byte[] bytes, int byteIndex, EncoderFallbackBuffer buffer, char[] fallback_chars); // 0x00510494 + public override int GetBytes(string chars, int charIndex, int charCount, byte[] bytes, int byteIndex); // 0x00510BB0 + private int GetBytes(string chars, int charIndex, int charCount, byte[] bytes, int byteIndex, EncoderFallbackBuffer buffer, char[] fallback_chars); // 0x00510BF0 + public override int GetCharCount(byte[] bytes, int index, int count); // 0x005112D0 + public override int GetChars(byte[] bytes, int byteIndex, int byteCount, char[] chars, int charIndex); // 0x005114B4 + private int GetChars(byte[] bytes, int byteIndex, int byteCount, char[] chars, int charIndex, DecoderFallbackBuffer buffer); // 0x005114E8 + public override int GetMaxByteCount(int charCount); // 0x005119DC + public override int GetMaxCharCount(int byteCount); // 0x00511AC8 + public override string GetString(byte[] bytes, int byteIndex, int byteCount); // 0x00511BB4 + public override int GetBytes(void * chars, int charCount, void * bytes, int byteCount); // 0x00511E68 + public override int GetChars(void * bytes, int byteCount, void * chars, int charCount); // 0x00512088 + public override int GetCharCount(void * bytes, int count); // 0x005122AC + public override int GetByteCount(void * chars, int count); // 0x005122B4 + public override Decoder GetDecoder(); // 0x005122BC + public override Encoder GetEncoder(); // 0x00512330 +} + +// Namespace: System.Text +[Serializable] +internal sealed class CodePageEncoding : ISerializable, IObjectReference // TypeDefIndex: 1520 +{ + // Fields + private int codePage; // 0x08 + private bool isReadOnly; // 0x0C + private EncoderFallback encoderFallback; // 0x10 + private DecoderFallback decoderFallback; // 0x14 + private Encoding realObject; // 0x18 + + // Methods + private void .ctor(SerializationInfo info, StreamingContext context); // 0x005123A4 + public void GetObjectData(SerializationInfo info, StreamingContext context); // 0x005127B0 + public object GetRealObject(StreamingContext context); // 0x0051284C +} + +// Namespace: +[Serializable] +private sealed class Decoder : ISerializable, IObjectReference // TypeDefIndex: 1521 +{ + // Fields + private Encoding encoding; // 0x08 + private Decoder realObject; // 0x0C + + // Methods + private void .ctor(SerializationInfo info, StreamingContext context); // 0x00513204 + public void GetObjectData(SerializationInfo info, StreamingContext context); // 0x0051337C + public object GetRealObject(StreamingContext context); // 0x00513418 +} + +// Namespace: System.Text +[Serializable] +public abstract class Decoder // TypeDefIndex: 1522 +{ + // Fields + private DecoderFallback fallback; // 0x08 + private DecoderFallbackBuffer fallback_buffer; // 0x0C + + // Properties + public DecoderFallback Fallback { get; set; } // 0x0051353C 0x00513544 + public DecoderFallbackBuffer FallbackBuffer { get; } // 0x005135E8 + + // Methods + protected void .ctor(); // 0x00513460 + public abstract int GetCharCount(byte[] bytes, int index, int count); + public abstract int GetChars(byte[] bytes, int byteIndex, int byteCount, char[] chars, int charIndex); + public virtual int GetCharCount(byte[] bytes, int index, int count, bool flush); // 0x00513630 + public virtual int GetCharCount(void * bytes, int count, bool flush); // 0x00513698 + public virtual int GetChars(byte[] bytes, int byteIndex, int byteCount, char[] chars, int charIndex, bool flush); // 0x00513840 + public virtual int GetChars(void * bytes, int byteCount, void * chars, int charCount, bool flush); // 0x00513B1C + public virtual void Reset(); // 0x00513E0C + public virtual void Convert(void * bytes, int byteCount, void * chars, int charCount, bool flush, out int bytesUsed, out int charsUsed, out bool completed); // 0x00513E28 + public virtual void Convert(byte[] bytes, int byteIndex, int byteCount, char[] chars, int charIndex, int charCount, bool flush, out int bytesUsed, out int charsUsed, out bool completed); // 0x00513EFC + private void CheckArguments(char[] chars, int charIndex); // 0x00513A1C + private void CheckArguments(byte[] bytes, int byteIndex, int byteCount); // 0x005138C4 + private void CheckArguments(void * chars, int charCount, void * bytes, int byteCount); // 0x00513C74 +} + +// Namespace: System.Text +[Serializable] +public sealed class DecoderExceptionFallback : DecoderFallback // TypeDefIndex: 1523 +{ + // Properties + public override int MaxCharCount { get; } // 0x00514140 + + // Methods + public void .ctor(); // 0x005140B4 + public override DecoderFallbackBuffer CreateFallbackBuffer(); // 0x00514148 + public override bool Equals(object value); // 0x005141BC + public override int GetHashCode(); // 0x00514238 +} + +// Namespace: System.Text +public sealed class DecoderExceptionFallbackBuffer : DecoderFallbackBuffer // TypeDefIndex: 1524 +{ + // Properties + public override int Remaining { get; } // 0x00514248 + + // Methods + public void .ctor(); // 0x005141B4 + public override bool Fallback(byte[] bytesUnknown, int index); // 0x00514250 + public override char GetNextChar(); // 0x00514320 + public override bool MovePrevious(); // 0x00514328 +} + +// Namespace: System.Text +[Serializable] +public abstract class DecoderFallback // TypeDefIndex: 1525 +{ + // Fields + private static DecoderFallback exception_fallback; // 0x00 + private static DecoderFallback replacement_fallback; // 0x04 + private static DecoderFallback standard_safe_fallback; // 0x08 + + // Properties + public static DecoderFallback ExceptionFallback { get; } // 0x005144D8 + public abstract int MaxCharCount { get; } + public static DecoderFallback ReplacementFallback { get; } // 0x00514564 + internal static DecoderFallback StandardSafeFallback { get; } // 0x005145F0 + + // Methods + protected void .ctor(); // 0x00514138 + private static void .cctor(); // 0x00514330 + public abstract DecoderFallbackBuffer CreateFallbackBuffer(); +} + +// Namespace: System.Text +public abstract class DecoderFallbackBuffer // TypeDefIndex: 1526 +{ + // Properties + public abstract int Remaining { get; } + + // Methods + protected void .ctor(); // 0x00514240 + public abstract bool Fallback(byte[] bytesUnknown, int index); + public abstract char GetNextChar(); + public abstract bool MovePrevious(); + public virtual void Reset(); // 0x0051467C +} + +// Namespace: System.Text +[Serializable] +public sealed class DecoderFallbackException : ArgumentException // TypeDefIndex: 1527 +{ + // Fields + private const string defaultMessage = "Failed to decode the input byte sequence to Unicode characters."; // 0x00 + private byte[] bytes_unknown; // 0x38 + private int index; // 0x3C + + // Properties + public byte[] BytesUnknown { get; } // 0x005146B4 + public int Index { get; } // 0x005146BC + + // Methods + public void .ctor(); // 0x00514680 + public void .ctor(string message); // 0x00514694 + public void .ctor(string message, Exception innerException); // 0x005146A4 + public void .ctor(string message, byte[] bytesUnknown, int index); // 0x005142EC +} + +// Namespace: System.Text +[Serializable] +public sealed class DecoderReplacementFallback : DecoderFallback // TypeDefIndex: 1528 +{ + // Fields + private string replacement; // 0x08 + + // Properties + public string DefaultString { get; } // 0x005146C4 + public override int MaxCharCount { get; } // 0x005146CC + + // Methods + public void .ctor(); // 0x005134D8 + public void .ctor(string replacement); // 0x00514404 + public override DecoderFallbackBuffer CreateFallbackBuffer(); // 0x005146F0 + public override bool Equals(object value); // 0x00514828 + public override int GetHashCode(); // 0x005148E8 +} + +// Namespace: System.Text +public sealed class DecoderReplacementFallbackBuffer : DecoderFallbackBuffer // TypeDefIndex: 1529 +{ + // Fields + private bool fallback_assigned; // 0x08 + private int current; // 0x0C + private string replacement; // 0x10 + + // Properties + public override int Remaining { get; } // 0x00514914 + + // Methods + public void .ctor(DecoderReplacementFallback fallback); // 0x00514760 + public override bool Fallback(byte[] bytesUnknown, int index); // 0x00514958 + public override char GetNextChar(); // 0x00514B08 + public override bool MovePrevious(); // 0x00514B80 + public override void Reset(); // 0x00514B9C +} + +// Namespace: System.Text +[Serializable] +public abstract class Encoder // TypeDefIndex: 1530 +{ + // Fields + private EncoderFallback fallback; // 0x08 + private EncoderFallbackBuffer fallback_buffer; // 0x0C + + // Properties + public EncoderFallback Fallback { get; set; } // 0x00514C88 0x00514C90 + public EncoderFallbackBuffer FallbackBuffer { get; } // 0x00514D34 + + // Methods + protected void .ctor(); // 0x00514BAC + public abstract int GetByteCount(char[] chars, int index, int count, bool flush); + public abstract int GetBytes(char[] chars, int charIndex, int charCount, byte[] bytes, int byteIndex, bool flush); + public virtual int GetByteCount(void * chars, int count, bool flush); // 0x00514D7C + public virtual int GetBytes(void * chars, int charCount, void * bytes, int byteCount, bool flush); // 0x00514F24 + public virtual void Reset(); // 0x00515214 + public virtual void Convert(void * chars, int charCount, void * bytes, int byteCount, bool flush, out int charsUsed, out int bytesUsed, out bool completed); // 0x00515230 + public virtual void Convert(char[] chars, int charIndex, int charCount, byte[] bytes, int byteIndex, int byteCount, bool flush, out int charsUsed, out int bytesUsed, out bool completed); // 0x005152F8 + private void CheckArguments(void * chars, int charCount, void * bytes, int byteCount); // 0x0051507C +} + +// Namespace: System.Text +[Serializable] +public sealed class EncoderExceptionFallback : EncoderFallback // TypeDefIndex: 1531 +{ + // Properties + public override int MaxCharCount { get; } // 0x00515698 + + // Methods + public void .ctor(); // 0x0051560C + public override EncoderFallbackBuffer CreateFallbackBuffer(); // 0x005156A0 + public override bool Equals(object value); // 0x00515714 + public override int GetHashCode(); // 0x00515790 +} + +// Namespace: System.Text +public sealed class EncoderExceptionFallbackBuffer : EncoderFallbackBuffer // TypeDefIndex: 1532 +{ + // Properties + public override int Remaining { get; } // 0x005157A0 + + // Methods + public void .ctor(); // 0x0051570C + public override bool Fallback(char charUnknown, int index); // 0x005157A8 + public override bool Fallback(char charUnknownHigh, char charUnknownLow, int index); // 0x00515874 + public override char GetNextChar(); // 0x00515954 + public override bool MovePrevious(); // 0x0051595C +} + +// Namespace: System.Text +[Serializable] +public abstract class EncoderFallback // TypeDefIndex: 1533 +{ + // Fields + private static EncoderFallback exception_fallback; // 0x00 + private static EncoderFallback replacement_fallback; // 0x04 + private static EncoderFallback standard_safe_fallback; // 0x08 + + // Properties + public static EncoderFallback ExceptionFallback { get; } // 0x00515B0C + public abstract int MaxCharCount { get; } + public static EncoderFallback ReplacementFallback { get; } // 0x00515B98 + internal static EncoderFallback StandardSafeFallback { get; } // 0x00515C24 + + // Methods + protected void .ctor(); // 0x00515690 + private static void .cctor(); // 0x00515964 + public abstract EncoderFallbackBuffer CreateFallbackBuffer(); +} + +// Namespace: System.Text +public abstract class EncoderFallbackBuffer // TypeDefIndex: 1534 +{ + // Properties + public abstract int Remaining { get; } + + // Methods + protected void .ctor(); // 0x00515798 + public abstract bool Fallback(char charUnknown, int index); + public abstract bool Fallback(char charUnknownHigh, char charUnknownLow, int index); + public abstract char GetNextChar(); + public abstract bool MovePrevious(); + public virtual void Reset(); // 0x00515CB0 +} + +// Namespace: System.Text +[Serializable] +public sealed class EncoderFallbackException : ArgumentException // TypeDefIndex: 1535 +{ + // Fields + private const string defaultMessage = "Failed to decode the input byte sequence to Unicode characters."; // 0x00 + private char char_unknown; // 0x38 + private char char_unknown_high; // 0x3A + private char char_unknown_low; // 0x3C + private int index; // 0x40 + + // Properties + public char CharUnknown { get; } // 0x00515D10 + public char CharUnknownHigh { get; } // 0x00515D18 + public char CharUnknownLow { get; } // 0x00515D20 + public int Index { get; } // 0x00515D28 + + // Methods + public void .ctor(); // 0x00515CDC + public void .ctor(string message); // 0x00515CF0 + public void .ctor(string message, Exception innerException); // 0x00515D00 + internal void .ctor(char charUnknown, int index); // 0x0051583C + internal void .ctor(char charUnknownHigh, char charUnknownLow, int index); // 0x00515914 + public bool IsUnknownSurrogate(); // 0x00515D30 +} + +// Namespace: System.Text +[Serializable] +public sealed class EncoderReplacementFallback : EncoderFallback // TypeDefIndex: 1536 +{ + // Fields + private string replacement; // 0x08 + + // Properties + public string DefaultString { get; } // 0x00515DB8 + public override int MaxCharCount { get; } // 0x00515DC0 + + // Methods + public void .ctor(); // 0x00514C24 + public void .ctor(string replacement); // 0x00515A38 + public override EncoderFallbackBuffer CreateFallbackBuffer(); // 0x00515DE4 + public override bool Equals(object value); // 0x00515F1C + public override int GetHashCode(); // 0x00515FDC +} + +// Namespace: System.Text +public sealed class EncoderReplacementFallbackBuffer : EncoderFallbackBuffer // TypeDefIndex: 1537 +{ + // Fields + private string replacement; // 0x08 + private int current; // 0x0C + private bool fallback_assigned; // 0x10 + + // Properties + public override int Remaining { get; } // 0x00516008 + + // Methods + public void .ctor(EncoderReplacementFallback fallback); // 0x00515E54 + public override bool Fallback(char charUnknown, int index); // 0x00516038 + public override bool Fallback(char charUnknownHigh, char charUnknownLow, int index); // 0x00516198 + private bool Fallback(int index); // 0x00516040 + public override char GetNextChar(); // 0x005161A0 + public override bool MovePrevious(); // 0x0051620C + public override void Reset(); // 0x00516228 +} + +// Namespace: System.Text +[Serializable] +public abstract class Encoding : ICloneable // TypeDefIndex: 1538 +{ + // Fields + internal int codePage; // 0x08 + internal int windows_code_page; // 0x0C + private bool is_readonly; // 0x10 + private DecoderFallback decoder_fallback; // 0x14 + private EncoderFallback encoder_fallback; // 0x18 + private static Assembly i18nAssembly; // 0x00 + private static bool i18nDisabled; // 0x04 + private static EncodingInfo[] encoding_infos; // 0x08 + private static readonly object[] encodings; // 0x0C + internal string body_name; // 0x1C + internal string encoding_name; // 0x20 + internal string header_name; // 0x24 + internal bool is_mail_news_display; // 0x28 + internal bool is_mail_news_save; // 0x29 + internal bool is_browser_save; // 0x2A + internal bool is_browser_display; // 0x2B + internal string web_name; // 0x2C + private static Encoding asciiEncoding; // 0x10 + private static Encoding bigEndianEncoding; // 0x14 + private static Encoding defaultEncoding; // 0x18 + private static Encoding utf7Encoding; // 0x1C + private static Encoding utf8EncodingWithMarkers; // 0x20 + private static Encoding utf8EncodingWithoutMarkers; // 0x24 + private static Encoding unicodeEncoding; // 0x28 + private static Encoding isoLatin1Encoding; // 0x2C + private static Encoding utf8EncodingUnsafe; // 0x30 + private static Encoding utf32Encoding; // 0x34 + private static Encoding bigEndianUTF32Encoding; // 0x38 + private static readonly object lockobj; // 0x3C + + // Properties + public bool IsReadOnly { get; } // 0x0051756C + public virtual bool IsSingleByte { get; } // 0x00517574 + public DecoderFallback DecoderFallback { get; set; } // 0x0051757C 0x00513118 + public EncoderFallback EncoderFallback { get; set; } // 0x00517584 0x0051302C + public virtual string BodyName { get; } // 0x0051B568 + public virtual int CodePage { get; } // 0x0051B570 + public virtual string EncodingName { get; } // 0x0051B578 + public virtual string HeaderName { get; } // 0x0051B580 + public virtual bool IsBrowserDisplay { get; } // 0x0051B588 + public virtual bool IsBrowserSave { get; } // 0x0051B590 + public virtual bool IsMailNewsDisplay { get; } // 0x0051B598 + public virtual bool IsMailNewsSave { get; } // 0x0051B5A0 + public virtual string WebName { get; } // 0x0051B5A8 + public virtual int WindowsCodePage { get; } // 0x0051B5B0 + public static Encoding ASCII { get; } // 0x005192B0 + public static Encoding BigEndianUnicode { get; } // 0x0051A090 + public static Encoding Default { get; } // 0x00518DE8 + private static Encoding ISOLatin1 { get; } // 0x0051A2E8 + public static Encoding UTF7 { get; } // 0x005194F4 + public static Encoding UTF8 { get; } // 0x0051973C + internal static Encoding UTF8Unmarked { get; } // 0x0051B5D8 + internal static Encoding UTF8UnmarkedUnsafe { get; } // 0x0051BB18 + public static Encoding Unicode { get; } // 0x00519E38 + public static Encoding UTF32 { get; } // 0x00519988 + internal static Encoding BigEndianUTF32 { get; } // 0x00519BE0 + + // Methods + protected void .ctor(); // 0x00516234 + protected void .ctor(int codePage); // 0x0050FCFC + private static void .cctor(); // 0x00516244 + internal static string _(string arg); // 0x005103A4 + internal void SetFallbackInternal(EncoderFallback e, DecoderFallback d); // 0x0051758C + public static byte[] Convert(Encoding srcEncoding, Encoding dstEncoding, byte[] bytes); // 0x005175A0 + public static byte[] Convert(Encoding srcEncoding, Encoding dstEncoding, byte[] bytes, int index, int count); // 0x00517730 + public override bool Equals(object value); // 0x005179F8 + public abstract int GetByteCount(char[] chars, int index, int count); + public virtual int GetByteCount(string s); // 0x00517B1C + public virtual int GetByteCount(char[] chars); // 0x00517C04 + public abstract int GetBytes(char[] chars, int charIndex, int charCount, byte[] bytes, int byteIndex); + public virtual int GetBytes(string s, int charIndex, int charCount, byte[] bytes, int byteIndex); // 0x00517CE0 + public virtual byte[] GetBytes(string s); // 0x00517FE0 + public virtual byte[] GetBytes(char[] chars, int index, int count); // 0x00518168 + public virtual byte[] GetBytes(char[] chars); // 0x0051823C + public abstract int GetCharCount(byte[] bytes, int index, int count); + public virtual int GetCharCount(byte[] bytes); // 0x00518324 + public abstract int GetChars(byte[] bytes, int byteIndex, int byteCount, char[] chars, int charIndex); + public virtual char[] GetChars(byte[] bytes, int index, int count); // 0x00518400 + public virtual char[] GetChars(byte[] bytes); // 0x005184D4 + public virtual Decoder GetDecoder(); // 0x005122C0 + public virtual Encoder GetEncoder(); // 0x00512334 + private static object InvokeI18N(string name, object[] args); // 0x0051867C + public static Encoding GetEncoding(int codepage); // 0x005129AC + public virtual object Clone(); // 0x0051A52C + public static Encoding GetEncoding(int codepage, EncoderFallback encoderFallback, DecoderFallback decoderFallback); // 0x0051A5D8 + public static Encoding GetEncoding(string name, EncoderFallback encoderFallback, DecoderFallback decoderFallback); // 0x0051A7B0 + public static EncodingInfo[] GetEncodings(); // 0x0051B004 + public bool IsAlwaysNormalized(); // 0x0051B2C0 + public virtual bool IsAlwaysNormalized(NormalizationForm form); // 0x0051B2D4 + public static Encoding GetEncoding(string name); // 0x0051A988 + public override int GetHashCode(); // 0x0051B374 + public abstract int GetMaxByteCount(int charCount); + public abstract int GetMaxCharCount(int byteCount); + public virtual byte[] GetPreamble(); // 0x0051B3F4 + public virtual string GetString(byte[] bytes, int index, int count); // 0x0051B454 + public virtual string GetString(byte[] bytes); // 0x0051B48C + internal static string InternalCodePage(int code_page); // 0x0051B5D4 + public virtual int GetByteCount(void * chars, int count); // 0x0051BE8C + public virtual int GetCharCount(void * bytes, int count); // 0x0051C01C + public virtual int GetChars(void * bytes, int byteCount, void * chars, int charCount); // 0x0051C1B4 + public virtual int GetBytes(void * chars, int charCount, void * bytes, int byteCount); // 0x0051C4C0 +} + +// Namespace: +private sealed class ForwardingDecoder : Decoder // TypeDefIndex: 1539 +{ + // Fields + private Encoding encoding; // 0x10 + + // Methods + public void .ctor(Encoding enc); // 0x005185FC + public override int GetCharCount(byte[] bytes, int index, int count); // 0x0051C7C4 + public override int GetChars(byte[] bytes, int byteIndex, int byteCount, char[] chars, int charIndex); // 0x0051C81C +} + +// Namespace: +private sealed class ForwardingEncoder : Encoder // TypeDefIndex: 1540 +{ + // Fields + private Encoding encoding; // 0x10 + + // Methods + public void .ctor(Encoding enc); // 0x0051863C + public override int GetByteCount(char[] chars, int index, int count, bool flush); // 0x0051C884 + public override int GetBytes(char[] chars, int charIndex, int charCount, byte[] bytes, int byteCount, bool flush); // 0x0051C8DC +} + +// Namespace: System.Text +[Serializable] +public sealed class EncodingInfo // TypeDefIndex: 1541 +{ + // Fields + private readonly int codepage; // 0x08 + private Encoding encoding; // 0x0C + + // Properties + public int CodePage { get; } // 0x0051C944 + public string DisplayName { get; } // 0x0051C94C + public string Name { get; } // 0x0051C950 + + // Methods + internal void .ctor(int cp); // 0x0051B2A0 + public override bool Equals(object value); // 0x0051CA20 + public override int GetHashCode(); // 0x0051CAAC + public Encoding GetEncoding(); // 0x0051C99C +} + +// Namespace: System.Text +[Serializable] +internal class Latin1Encoding : Encoding // TypeDefIndex: 1542 +{ + // Fields + internal const int ISOLATIN_CODE_PAGE = 28591; // 0x00 + + // Properties + public override bool IsSingleByte { get; } // 0x0051CAB4 + public override string BodyName { get; } // 0x0051E71C + public override string EncodingName { get; } // 0x0051E778 + public override string HeaderName { get; } // 0x0051E7D4 + public override bool IsBrowserDisplay { get; } // 0x0051E830 + public override bool IsBrowserSave { get; } // 0x0051E838 + public override bool IsMailNewsDisplay { get; } // 0x0051E840 + public override bool IsMailNewsSave { get; } // 0x0051E848 + public override string WebName { get; } // 0x0051E850 + + // Methods + public void .ctor(); // 0x0051B824 + public override bool IsAlwaysNormalized(NormalizationForm form); // 0x0051CABC + public override int GetByteCount(char[] chars, int index, int count); // 0x0051CACC + public override int GetByteCount(string s); // 0x0051CCB0 + public override int GetBytes(char[] chars, int charIndex, int charCount, byte[] bytes, int byteIndex); // 0x0051CD5C + private int GetBytes(char[] chars, int charIndex, int charCount, byte[] bytes, int byteIndex, EncoderFallbackBuffer buffer, char[] fallback_chars); // 0x0051CD9C + public override int GetBytes(string s, int charIndex, int charCount, byte[] bytes, int byteIndex); // 0x0051D4B4 + private int GetBytes(string s, int charIndex, int charCount, byte[] bytes, int byteIndex, EncoderFallbackBuffer buffer, char[] fallback_chars); // 0x0051D4F4 + public override int GetCharCount(byte[] bytes, int index, int count); // 0x0051DC10 + public override int GetChars(byte[] bytes, int byteIndex, int byteCount, char[] chars, int charIndex); // 0x0051DDF4 + public override int GetMaxByteCount(int charCount); // 0x0051E1C0 + public override int GetMaxCharCount(int byteCount); // 0x0051E2AC + public override string GetString(byte[] bytes, int index, int count); // 0x0051E398 + public override string GetString(byte[] bytes); // 0x0051E640 +} + +// Namespace: System.Text +[Serializable] +internal sealed class MLangCodePageEncoding : ISerializable, IObjectReference // TypeDefIndex: 1543 +{ + // Fields + private int codePage; // 0x08 + private bool isReadOnly; // 0x0C + private EncoderFallback encoderFallback; // 0x10 + private DecoderFallback decoderFallback; // 0x14 + private Encoding realObject; // 0x18 + + // Methods + private void .ctor(SerializationInfo info, StreamingContext context); // 0x0051E8AC + public void GetObjectData(SerializationInfo info, StreamingContext context); // 0x0051ECB8 + public object GetRealObject(StreamingContext context); // 0x0051ED54 +} + +// Namespace: +[Serializable] +private sealed class MLangEncoder : ISerializable, IObjectReference // TypeDefIndex: 1544 +{ + // Fields + private Encoding encoding; // 0x08 + private Encoder realObject; // 0x0C + + // Methods + private void .ctor(SerializationInfo info, StreamingContext context); // 0x0051F110 + public void GetObjectData(SerializationInfo info, StreamingContext context); // 0x0051F288 + public object GetRealObject(StreamingContext context); // 0x0051F324 +} + +// Namespace: +[Serializable] +private sealed class MLangDecoder : ISerializable, IObjectReference // TypeDefIndex: 1545 +{ + // Fields + private Encoding encoding; // 0x08 + private Decoder realObject; // 0x0C + + // Methods + private void .ctor(SerializationInfo info, StreamingContext context); // 0x0051EEB4 + public void GetObjectData(SerializationInfo info, StreamingContext context); // 0x0051F02C + public object GetRealObject(StreamingContext context); // 0x0051F0C8 +} + +// Namespace: System.Text +public enum NormalizationForm // TypeDefIndex: 1546 +{ + FormC = 1, + FormD = 2, + FormKC = 5, + FormKD = 6 +} + +// Namespace: System.Text +[Serializable] +public sealed class StringBuilder : ISerializable // TypeDefIndex: 1547 +{ + // Fields + private const int constDefaultCapacity = 16; // 0x00 + private int _length; // 0x08 + private string _str; // 0x0C + private string _cached_str; // 0x10 + private int _maxCapacity; // 0x14 + + // Properties + public int MaxCapacity { get; } // 0x00520114 + public int Capacity { get; set; } // 0x0051FF88 0x0051FD20 + public int Length { get; set; } // 0x00520330 0x00520338 + public char Chars { get; set; } // 0x00520510 0x005205D8 + + // Methods + public void .ctor(string value, int startIndex, int length, int capacity); // 0x0051F36C + private void .ctor(string value, int startIndex, int length, int capacity, int maxCapacity); // 0x0051F390 + public void .ctor(); // 0x0051F860 + public void .ctor(int capacity); // 0x0051F93C + public void .ctor(int capacity, int maxCapacity); // 0x0051F9F4 + public void .ctor(string value); // 0x0051F868 + public void .ctor(string value, int capacity); // 0x0051FAAC + private void .ctor(SerializationInfo info, StreamingContext context); // 0x0051FB90 + private void System.Runtime.Serialization.ISerializable.GetObjectData(SerializationInfo info, StreamingContext context); // 0x0051FE40 + public override string ToString(); // 0x0051FFE4 + public string ToString(int startIndex, int length); // 0x005206B8 + public int EnsureCapacity(int capacity); // 0x005207A8 + public bool Equals(StringBuilder sb); // 0x0052089C + public StringBuilder Remove(int startIndex, int length); // 0x00520964 + public StringBuilder Replace(char oldChar, char newChar); // 0x00520AA4 + public StringBuilder Replace(char oldChar, char newChar, int startIndex, int count); // 0x00520AC8 + public StringBuilder Replace(string oldValue, string newValue); // 0x00520C1C + public StringBuilder Replace(string oldValue, string newValue, int startIndex, int count); // 0x00520C40 + public StringBuilder Append(char[] value); // 0x00520F60 + public StringBuilder Append(string value); // 0x00521060 + public StringBuilder Append(bool value); // 0x005211B8 + public StringBuilder Append(byte value); // 0x005211EC + public StringBuilder Append(Decimal value); // 0x00521220 + public StringBuilder Append(double value); // 0x0052125C + public StringBuilder Append(short value); // 0x00521290 + public StringBuilder Append(int value); // 0x005212C4 + public StringBuilder Append(long value); // 0x005212F8 + public StringBuilder Append(object value); // 0x0052132C + public StringBuilder Append(sbyte value); // 0x00521370 + public StringBuilder Append(float value); // 0x005213A4 + public StringBuilder Append(ushort value); // 0x005213D8 + public StringBuilder Append(uint value); // 0x0052140C + public StringBuilder Append(ulong value); // 0x00521440 + public StringBuilder Append(char value); // 0x00521474 + public StringBuilder Append(char value, int repeatCount); // 0x00520410 + public StringBuilder Append(char[] value, int startIndex, int charCount); // 0x005214FC + public StringBuilder Append(string value, int startIndex, int count); // 0x00521680 + public StringBuilder AppendLine(); // 0x00521834 + public StringBuilder AppendLine(string value); // 0x00521858 + public StringBuilder AppendFormat(string format, object[] args); // 0x00521894 + public StringBuilder AppendFormat(IFormatProvider provider, string format, object[] args); // 0x005218B8 + public StringBuilder AppendFormat(string format, object arg0); // 0x00521964 + public StringBuilder AppendFormat(string format, object arg0, object arg1); // 0x00521A50 + public StringBuilder AppendFormat(string format, object arg0, object arg1, object arg2); // 0x00521B90 + public StringBuilder Insert(int index, char[] value); // 0x00521D24 + public StringBuilder Insert(int index, string value); // 0x00521D58 + public StringBuilder Insert(int index, bool value); // 0x00521EAC + public StringBuilder Insert(int index, byte value); // 0x00521EE8 + public StringBuilder Insert(int index, char value); // 0x00521F24 + public StringBuilder Insert(int index, Decimal value); // 0x00522084 + public StringBuilder Insert(int index, double value); // 0x005220D0 + public StringBuilder Insert(int index, short value); // 0x0052210C + public StringBuilder Insert(int index, int value); // 0x00522148 + public StringBuilder Insert(int index, long value); // 0x00522184 + public StringBuilder Insert(int index, object value); // 0x005221C0 + public StringBuilder Insert(int index, sbyte value); // 0x0052220C + public StringBuilder Insert(int index, float value); // 0x00522248 + public StringBuilder Insert(int index, ushort value); // 0x00522284 + public StringBuilder Insert(int index, uint value); // 0x005222C0 + public StringBuilder Insert(int index, ulong value); // 0x005222FC + public StringBuilder Insert(int index, string value, int count); // 0x00522338 + public StringBuilder Insert(int index, char[] value, int startIndex, int charCount); // 0x00522460 + private void InternalEnsureCapacity(int size); // 0x0052011C + public void CopyTo(int sourceIndex, char[] destination, int destinationIndex, int count); // 0x005225A8 +} + +// Namespace: System.Text +[Serializable] +internal sealed class SurrogateEncoder : ISerializable, IObjectReference // TypeDefIndex: 1548 +{ + // Fields + private Encoding encoding; // 0x08 + private Encoder realObject; // 0x0C + + // Methods + private void .ctor(SerializationInfo info, StreamingContext context); // 0x00522730 + public void GetObjectData(SerializationInfo info, StreamingContext context); // 0x005228A8 + public object GetRealObject(StreamingContext context); // 0x00522944 +} + +// Namespace: System.Text +[Serializable] +public sealed class UTF32Encoding : Encoding // TypeDefIndex: 1549 +{ + // Fields + internal const int UTF32_CODE_PAGE = 12000; // 0x00 + internal const int BIG_UTF32_CODE_PAGE = 12001; // 0x00 + private bool bigEndian; // 0x30 + private bool byteOrderMark; // 0x31 + + // Methods + public void .ctor(); // 0x0052298C + public void .ctor(bool bigEndian, bool byteOrderMark); // 0x0051BE70 + public void .ctor(bool bigEndian, bool byteOrderMark, bool throwOnInvalidCharacters); // 0x005229B0 + public override int GetByteCount(char[] chars, int index, int count); // 0x00522CDC + public override int GetBytes(char[] chars, int charIndex, int charCount, byte[] bytes, int byteIndex); // 0x00522FC8 + public override int GetCharCount(byte[] bytes, int index, int count); // 0x005237F4 + public override int GetChars(byte[] bytes, int byteIndex, int byteCount, char[] chars, int charIndex); // 0x005239D8 + public override int GetMaxByteCount(int charCount); // 0x00523F50 + public override int GetMaxCharCount(int byteCount); // 0x0052403C + public override Decoder GetDecoder(); // 0x00524128 + public override byte[] GetPreamble(); // 0x005241C8 + public override bool Equals(object value); // 0x005242FC + public override int GetHashCode(); // 0x005243EC + public override int GetByteCount(void * chars, int count); // 0x00524418 + public override int GetByteCount(string s); // 0x005244C8 + public override int GetBytes(void * chars, int charCount, void * bytes, int byteCount); // 0x005244CC + public override int GetBytes(string s, int charIndex, int charCount, byte[] bytes, int byteIndex); // 0x005244EC + public override int GetCharCount(void * bytes, int count); // 0x00524510 + public override int GetChars(void * bytes, int byteCount, void * chars, int charCount); // 0x00524514 + public override string GetString(byte[] bytes, int index, int count); // 0x00524534 + public override Encoder GetEncoder(); // 0x0052456C +} + +// Namespace: +private sealed class UTF32Decoder : Decoder // TypeDefIndex: 1550 +{ + // Fields + private bool bigEndian; // 0x10 + private int leftOverByte; // 0x14 + private int leftOverLength; // 0x18 + + // Methods + public void .ctor(bool bigEndian); // 0x005241A4 + public override int GetCharCount(byte[] bytes, int index, int count); // 0x00524570 + public override int GetChars(byte[] bytes, int byteIndex, int byteCount, char[] chars, int charIndex); // 0x00524770 +} + +// Namespace: System.Text +[Serializable] +public class UTF7Encoding : Encoding // TypeDefIndex: 1551 +{ + // Fields + internal const int UTF7_CODE_PAGE = 65000; // 0x00 + private const string base64Chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"; // 0x00 + private bool allowOptionals; // 0x30 + private static readonly byte[] encodingRules; // 0x00 + private static readonly sbyte[] base64Values; // 0x04 + + // Methods + public void .ctor(); // 0x0051B8A8 + public void .ctor(bool allowOptionals); // 0x00524FA4 + private static void .cctor(); // 0x00525070 + public override int GetHashCode(); // 0x0052514C + public override bool Equals(object value); // 0x0052516C + private static int InternalGetByteCount(char[] chars, int index, int count, bool flush, int leftOver, bool isInShifted, bool allowOptionals); // 0x005252A0 + public override int GetByteCount(char[] chars, int index, int count); // 0x005256A8 + private static int InternalGetBytes(char[] chars, int charIndex, int charCount, byte[] bytes, int byteIndex, bool flush, int leftOver, bool isInShifted, bool allowOptionals); // 0x00525760 + public override int GetBytes(char[] chars, int charIndex, int charCount, byte[] bytes, int byteIndex); // 0x00526540 + private static int InternalGetCharCount(byte[] bytes, int index, int count, int leftOver); // 0x00526620 + public override int GetCharCount(byte[] bytes, int index, int count); // 0x00526980 + private static int InternalGetChars(byte[] bytes, int byteIndex, int byteCount, char[] chars, int charIndex, int leftOver); // 0x00526A1C + public override int GetChars(byte[] bytes, int byteIndex, int byteCount, char[] chars, int charIndex); // 0x00527494 + public override int GetMaxByteCount(int charCount); // 0x005275EC + public override int GetMaxCharCount(int byteCount); // 0x00527710 + public override Decoder GetDecoder(); // 0x005277FC + public override Encoder GetEncoder(); // 0x00527888 + public override int GetByteCount(void * chars, int count); // 0x00527918 + public override int GetByteCount(string s); // 0x0052791C + public override int GetBytes(void * chars, int charCount, void * bytes, int byteCount); // 0x00527920 + public override int GetBytes(string s, int charIndex, int charCount, byte[] bytes, int byteIndex); // 0x00527940 + public override int GetCharCount(void * bytes, int count); // 0x00527964 + public override int GetChars(void * bytes, int byteCount, void * chars, int charCount); // 0x00527968 + public override string GetString(byte[] bytes, int index, int count); // 0x00527988 +} + +// Namespace: +private sealed class UTF7Decoder : Decoder // TypeDefIndex: 1552 +{ + // Fields + private int leftOver; // 0x10 + + // Methods + public void .ctor(); // 0x0052786C + public override int GetCharCount(byte[] bytes, int index, int count); // 0x005279C0 + public override int GetChars(byte[] bytes, int byteIndex, int byteCount, char[] chars, int charIndex); // 0x00527A64 +} + +// Namespace: +private sealed class UTF7Encoder : Encoder // TypeDefIndex: 1553 +{ + // Fields + private bool allowOptionals; // 0x10 + private int leftOver; // 0x14 + private bool isInShifted; // 0x18 + + // Methods + public void .ctor(bool allowOptionals); // 0x005278FC + public override int GetByteCount(char[] chars, int index, int count, bool flush); // 0x00527B18 + public override int GetBytes(char[] chars, int charIndex, int charCount, byte[] bytes, int byteIndex, bool flush); // 0x00527BE4 +} + +// Namespace: System.Text +[Serializable] +public class UTF8Encoding : Encoding // TypeDefIndex: 1554 +{ + // Fields + internal const int UTF8_CODE_PAGE = 65001; // 0x00 + private bool emitIdentifier; // 0x30 + + // Methods + public void .ctor(); // 0x00527CB4 + public void .ctor(bool encoderShouldEmitUTF8Identifier); // 0x0051B8B0 + public void .ctor(bool encoderShouldEmitUTF8Identifier, bool throwOnInvalidBytes); // 0x0051B8B8 + private static int InternalGetByteCount(char[] chars, int index, int count, char leftOver, bool flush); // 0x00527CC0 + private static int InternalGetByteCount(void * chars, int count, char leftOver, bool flush); // 0x00527EFC + public override int GetByteCount(char[] chars, int index, int count); // 0x00528004 + public override int GetByteCount(void * chars, int count); // 0x00528040 + private static int InternalGetBytes(char[] chars, int charIndex, int charCount, byte[] bytes, int byteIndex, char leftOver, bool flush); // 0x00528124 + private static int InternalGetBytes(void * chars, int count, void * bytes, int bcount, char leftOver, bool flush); // 0x0052847C + public override int GetBytes(char[] chars, int charIndex, int charCount, byte[] bytes, int byteIndex); // 0x0052875C + public override int GetBytes(string s, int charIndex, int charCount, byte[] bytes, int byteIndex); // 0x005287A8 + public override int GetBytes(void * chars, int charCount, void * bytes, int byteCount); // 0x00528B04 + private static int InternalGetCharCount(byte[] bytes, int index, int count, uint leftOverBits, uint leftOverCount, object provider, DecoderFallbackBuffer fallbackBuffer, byte[] bufferArg, bool flush); // 0x00528CEC + private static int InternalGetCharCount(void * bytes, int count, uint leftOverBits, uint leftOverCount, object provider, DecoderFallbackBuffer fallbackBuffer, byte[] bufferArg, bool flush); // 0x00528F24 + private static int Fallback(object provider, DecoderFallbackBuffer buffer, byte[] bufferArg, void * bytes, long index, uint size); // 0x005291E8 + private static void Fallback(object provider, DecoderFallbackBuffer buffer, byte[] bufferArg, void * bytes, long byteIndex, uint size, void * chars, int charIndex); // 0x00529490 + public override int GetCharCount(byte[] bytes, int index, int count); // 0x00529770 + public override int GetCharCount(void * bytes, int count); // 0x005297C4 + private static int InternalGetChars(byte[] bytes, int byteIndex, int byteCount, char[] chars, int charIndex, uint leftOverBits, uint leftOverCount, object provider, DecoderFallbackBuffer fallbackBuffer, byte[] bufferArg, bool flush); // 0x00529810 + private static int InternalGetChars(void * bytes, int byteCount, void * chars, int charCount, uint leftOverBits, uint leftOverCount, object provider, DecoderFallbackBuffer fallbackBuffer, byte[] bufferArg, bool flush); // 0x00529B8C + public override int GetChars(byte[] bytes, int byteIndex, int byteCount, char[] chars, int charIndex); // 0x0052A0F0 + public override int GetChars(void * bytes, int byteCount, void * chars, int charCount); // 0x0052A164 + public override int GetMaxByteCount(int charCount); // 0x0052A1D4 + public override int GetMaxCharCount(int byteCount); // 0x0052A2C0 + public override Decoder GetDecoder(); // 0x0052A3AC + public override Encoder GetEncoder(); // 0x0052A464 + public override byte[] GetPreamble(); // 0x0052A4F0 + public override bool Equals(object value); // 0x0052A5F4 + public override int GetHashCode(); // 0x0052A738 + public override int GetByteCount(string chars); // 0x0052A73C + public override string GetString(byte[] bytes, int index, int count); // 0x0052A740 +} + +// Namespace: +[Serializable] +private class UTF8Decoder : Decoder // TypeDefIndex: 1555 +{ + // Fields + private uint leftOverBits; // 0x10 + private uint leftOverCount; // 0x14 + + // Methods + public void .ctor(DecoderFallback fallback); // 0x0052A434 + public override int GetCharCount(byte[] bytes, int index, int count); // 0x0052A778 + public override int GetChars(byte[] bytes, int byteIndex, int byteCount, char[] chars, int charIndex); // 0x0052A7CC +} + +// Namespace: +[Serializable] +private class UTF8Encoder : Encoder // TypeDefIndex: 1556 +{ + // Fields + private char leftOverForCount; // 0x10 + private char leftOverForConv; // 0x12 + + // Methods + public void .ctor(bool emitIdentifier); // 0x0052A4D4 + public override int GetByteCount(char[] chars, int index, int count, bool flush); // 0x0052A82C + public override int GetBytes(char[] chars, int charIndex, int charCount, byte[] bytes, int byteIndex, bool flush); // 0x0052A860 + public override int GetByteCount(void * chars, int count, bool flush); // 0x0052A8A0 + public override int GetBytes(void * chars, int charCount, void * bytes, int byteCount, bool flush); // 0x0052A8C8 +} + +// Namespace: System.Text +[Serializable] +public class UnicodeEncoding : Encoding // TypeDefIndex: 1557 +{ + // Fields + internal const int UNICODE_CODE_PAGE = 1200; // 0x00 + internal const int BIG_UNICODE_CODE_PAGE = 1201; // 0x00 + public const int CharSize = 2; // 0x00 + private bool bigEndian; // 0x30 + private bool byteOrderMark; // 0x31 + + // Methods + public void .ctor(); // 0x0052A900 + public void .ctor(bool bigEndian, bool byteOrderMark); // 0x0051B5B8 + public void .ctor(bool bigEndian, bool byteOrderMark, bool throwOnInvalidBytes); // 0x0052A930 + public override int GetByteCount(char[] chars, int index, int count); // 0x0052AAD8 + public override int GetByteCount(string s); // 0x0052ACBC + public override int GetByteCount(void * chars, int count); // 0x0052AD6C + public override int GetBytes(char[] chars, int charIndex, int charCount, byte[] bytes, int byteIndex); // 0x0052AE68 + public override int GetBytes(string s, int charIndex, int charCount, byte[] bytes, int byteIndex); // 0x0052B2C0 + public override int GetBytes(void * chars, int charCount, void * bytes, int byteCount); // 0x0052B624 + private int GetBytesInternal(void * chars, int charCount, void * bytes, int byteCount); // 0x0052B1B4 + public override int GetCharCount(byte[] bytes, int index, int count); // 0x0052BAC0 + public override int GetCharCount(void * bytes, int count); // 0x0052BCA4 + public override int GetChars(byte[] bytes, int byteIndex, int byteCount, char[] chars, int charIndex); // 0x0052BDA0 + public override int GetChars(void * bytes, int byteCount, void * chars, int charCount); // 0x0052C1FC + public override string GetString(byte[] bytes, int index, int count); // 0x0052C3BC + private int GetCharsInternal(void * bytes, int byteCount, void * chars, int charCount); // 0x0052C0EC + public override Encoder GetEncoder(); // 0x0052C670 + public override int GetMaxByteCount(int charCount); // 0x0052C674 + public override int GetMaxCharCount(int byteCount); // 0x0052C760 + public override Decoder GetDecoder(); // 0x0052C84C + public override byte[] GetPreamble(); // 0x0052C8EC + public override bool Equals(object value); // 0x0052CA1C + public override int GetHashCode(); // 0x0052CB1C + private static void CopyChars(void * src, void * dest, int count, bool bigEndian); // 0x0052B7E4 +} + +// Namespace: +private sealed class UnicodeDecoder : Decoder // TypeDefIndex: 1558 +{ + // Fields + private bool bigEndian; // 0x10 + private int leftOverByte; // 0x14 + + // Methods + public void .ctor(bool bigEndian); // 0x0052C8C8 + public override int GetCharCount(byte[] bytes, int index, int count); // 0x0052CB20 + public override int GetChars(byte[] bytes, int byteIndex, int byteCount, char[] chars, int charIndex); // 0x0052CD1C +} + +// Namespace: System.Threading +[Serializable] +public class AbandonedMutexException : SystemException // TypeDefIndex: 1559 +{ + // Fields + private Mutex mutex; // 0x34 + private int mutex_index; // 0x38 + + // Properties + public Mutex Mutex { get; } // 0x0052D4C4 + public int MutexIndex { get; } // 0x0052D4CC + + // Methods + public void .ctor(); // 0x0052D1A0 + public void .ctor(string message); // 0x0052D21C + public void .ctor(int location, WaitHandle handle); // 0x0052D24C + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x0052D304 + public void .ctor(string message, Exception inner); // 0x0052D32C + public void .ctor(string message, int location, WaitHandle handle); // 0x0052D35C + public void .ctor(string message, Exception inner, int location, WaitHandle handle); // 0x0052D40C +} + +// Namespace: System.Threading +[Serializable] +public enum ApartmentState // TypeDefIndex: 1560 +{ + STA = 0, + MTA = 1, + Unknown = 2 +} + +// Namespace: System.Threading +internal enum AsyncFlowControlType // TypeDefIndex: 1561 +{ + None = 0, + Execution = 1, + Security = 2 +} + +// Namespace: System.Threading +public struct AsyncFlowControl : IDisposable // TypeDefIndex: 1562 +{ + // Fields + private Thread _t; // 0x08 + private AsyncFlowControlType _type; // 0x0C + + // Methods + internal void .ctor(Thread t, AsyncFlowControlType type); // 0x000A777C + private void System.IDisposable.Dispose(); // 0x000A7788 + public void Undo(); // 0x000A77B4 + public override int GetHashCode(); // 0x000A77BC + public override bool Equals(object obj); // 0x000A77C4 + public bool Equals(AsyncFlowControl obj); // 0x000A77CC + public static bool op_Equality(AsyncFlowControl a, AsyncFlowControl b); // 0x0040F92C + public static bool op_Inequality(AsyncFlowControl a, AsyncFlowControl b); // 0x0040F944 +} + +// Namespace: System.Threading +public sealed class AutoResetEvent : EventWaitHandle // TypeDefIndex: 1563 +{ + // Methods + public void .ctor(bool initialState); // 0x0040F958 +} + +// Namespace: System.Threading +[Serializable] +public sealed class CompressedStack : ISerializable // TypeDefIndex: 1564 +{ + // Fields + private ArrayList _list; // 0x08 + + // Properties + internal IList List { get; } // 0x004108F8 + + // Methods + internal void .ctor(int length); // 0x0040FA2C + internal void .ctor(CompressedStack cs); // 0x0040FAB8 + public CompressedStack CreateCopy(); // 0x0040FB88 + public static CompressedStack Capture(); // 0x0040FBF8 + public static CompressedStack GetCompressedStack(); // 0x0040FE6C + public void GetObjectData(SerializationInfo info, StreamingContext context); // 0x0040FFC4 + public static void Run(CompressedStack compressedStack, ContextCallback callback, object state); // 0x0041006C + internal bool Equals(CompressedStack cs); // 0x00410604 + internal bool IsEmpty(); // 0x004108BC +} + +// Namespace: System.Threading +public enum EventResetMode // TypeDefIndex: 1565 +{ + AutoReset = 0, + ManualReset = 1 +} + +// Namespace: System.Threading +public class EventWaitHandle : WaitHandle // TypeDefIndex: 1566 +{ + // Methods + private void .ctor(IntPtr handle); // 0x0041094C + public void .ctor(bool initialState, EventResetMode mode); // 0x0040F960 + public void .ctor(bool initialState, EventResetMode mode, string name); // 0x00410AB0 + public void .ctor(bool initialState, EventResetMode mode, string name, out bool createdNew); // 0x00410B80 + private bool IsManualReset(EventResetMode mode); // 0x004109F4 + public bool Reset(); // 0x00410C44 + public bool Set(); // 0x00410D4C +} + +// Namespace: System.Threading +[Serializable] +public sealed class ExecutionContext : ISerializable // TypeDefIndex: 1567 +{ + // Fields + private SecurityContext _sc; // 0x08 + private bool _suppressFlow; // 0x0C + private bool _capture; // 0x0D + + // Properties + internal SecurityContext SecurityContext { get; set; } // 0x004112D0 0x00411350 + internal bool FlowSuppressed { get; set; } // 0x00411358 0x00411360 + + // Methods + internal void .ctor(); // 0x00410D7C + internal void .ctor(ExecutionContext ec); // 0x00410D84 + internal void .ctor(SerializationInfo info, StreamingContext context); // 0x00410E34 + public static ExecutionContext Capture(); // 0x00410ECC + public ExecutionContext CreateCopy(); // 0x00411138 + public void GetObjectData(SerializationInfo info, StreamingContext context); // 0x004111F8 + public static bool IsFlowSuppressed(); // 0x00411368 + public static void RestoreFlow(); // 0x0040F6D0 + public static void Run(ExecutionContext executionContext, ContextCallback callback, object state); // 0x0041140C + public static AsyncFlowControl SuppressFlow(); // 0x004114E4 +} + +// Namespace: System.Threading +public class HostExecutionContext // TypeDefIndex: 1568 +{ + // Fields + private object _state; // 0x08 + + // Properties + protected internal object State { get; set; } // 0x00411654 0x0041165C + + // Methods + public void .ctor(); // 0x0041159C + public void .ctor(object state); // 0x004115BC + public virtual HostExecutionContext CreateCopy(); // 0x004115DC +} + +// Namespace: System.Threading +public class HostExecutionContextManager // TypeDefIndex: 1569 +{ + // Methods + public void .ctor(); // 0x00411664 + public virtual HostExecutionContext Capture(); // 0x0041166C + public virtual void Revert(object previousState); // 0x004116F4 + public virtual object SetHostExecutionContext(HostExecutionContext hostExecutionContext); // 0x0041177C +} + +// Namespace: System.Threading +public static class Interlocked // TypeDefIndex: 1570 +{ + // Methods + public static int CompareExchange(int location1, int value, int comparand); // 0x00411B2C + public static object CompareExchange(object location1, object value, object comparand); // 0x00411B30 + public static float CompareExchange(float location1, float value, float comparand); // 0x00411B34 + public static int Decrement(int location); // 0x00411B38 + public static long Decrement(long location); // 0x00411B3C + public static int Increment(int location); // 0x00411B40 + public static long Increment(long location); // 0x00411B44 + public static int Exchange(int location1, int value); // 0x00411B48 + public static object Exchange(object location1, object value); // 0x00411B4C + public static float Exchange(float location1, float value); // 0x00411B50 + public static long CompareExchange(long location1, long value, long comparand); // 0x00411B54 + public static IntPtr CompareExchange(IntPtr location1, IntPtr value, IntPtr comparand); // 0x00411B58 + public static double CompareExchange(double location1, double value, double comparand); // 0x00411B5C + public static T CompareExchange(T location1, T value, T comparand); + public static long Exchange(long location1, long value); // 0x00411B60 + public static IntPtr Exchange(IntPtr location1, IntPtr value); // 0x00411B64 + public static double Exchange(double location1, double value); // 0x00411B68 + public static T Exchange(T location1, T value); + public static long Read(long location); // 0x00411B6C + public static int Add(int location1, int value); // 0x00411B70 + public static long Add(long location1, long value); // 0x00411B74 +} + +// Namespace: System.Threading +public struct LockCookie // TypeDefIndex: 1571 +{ + // Fields + internal int ThreadId; // 0x08 + internal int ReaderLocks; // 0x0C + internal int WriterLocks; // 0x10 + + // Methods + internal void .ctor(int thread_id); // 0x000A780C + internal void .ctor(int thread_id, int reader_locks, int writer_locks); // 0x000A7820 + public override int GetHashCode(); // 0x000A782C + public bool Equals(LockCookie obj); // 0x000A7834 + public override bool Equals(object obj); // 0x000A7864 + public static bool op_Equality(LockCookie a, LockCookie b); // 0x00411D10 + public static bool op_Inequality(LockCookie a, LockCookie b); // 0x00411D40 +} + +// Namespace: System.Threading +internal class LockQueue // TypeDefIndex: 1572 +{ + // Fields + private ReaderWriterLock rwlock; // 0x08 + private int lockCount; // 0x0C + + // Properties + public bool IsEmpty { get; } // 0x004120CC + + // Methods + public void .ctor(ReaderWriterLock rwlock); // 0x00411D6C + public bool Wait(int timeout); // 0x00411D8C + public void Pulse(); // 0x004120F8 + public void PulseAll(); // 0x00412264 +} + +// Namespace: System.Threading +public sealed class ManualResetEvent : EventWaitHandle // TypeDefIndex: 1573 +{ + // Methods + public void .ctor(bool initialState); // 0x004123D0 +} + +// Namespace: System.Threading +public static class Monitor // TypeDefIndex: 1574 +{ + // Methods + private static bool Monitor_try_enter(object obj, int ms); // 0x004123D8 + public static void Enter(object obj); // 0x00411F58 + public static void Exit(object obj); // 0x00411F5C + private static void Monitor_pulse(object obj); // 0x004123DC + private static bool Monitor_test_synchronised(object obj); // 0x004123E0 + public static void Pulse(object obj); // 0x0041215C + private static void Monitor_pulse_all(object obj); // 0x004123EC + public static void PulseAll(object obj); // 0x004122C8 + public static bool TryEnter(object obj); // 0x004123F0 + public static bool TryEnter(object obj, int millisecondsTimeout); // 0x004123F8 + public static bool TryEnter(object obj, TimeSpan timeout); // 0x00412528 + private static bool Monitor_wait(object obj, int ms); // 0x00412668 + public static bool Wait(object obj); // 0x0041266C + public static bool Wait(object obj, int millisecondsTimeout); // 0x00411F60 + public static bool Wait(object obj, TimeSpan timeout); // 0x00412678 + public static bool Wait(object obj, int millisecondsTimeout, bool exitContext); // 0x00412784 + public static bool Wait(object obj, TimeSpan timeout, bool exitContext); // 0x00412850 +} + +// Namespace: System.Threading +public sealed class Mutex : WaitHandle // TypeDefIndex: 1575 +{ + // Methods + public void .ctor(); // 0x00412924 + public void .ctor(bool initiallyOwned); // 0x004129E4 + public void .ctor(bool initiallyOwned, string name); // 0x00412AA4 + public void .ctor(bool initiallyOwned, string name, out bool createdNew); // 0x00412B68 + private static IntPtr CreateMutex_internal(bool initiallyOwned, string name, out bool created); // 0x004129E0 + private static bool ReleaseMutex_internal(IntPtr handle); // 0x00412C20 + public void ReleaseMutex(); // 0x00412C24 +} + +// Namespace: System.Threading +internal sealed class NativeEventCalls // TypeDefIndex: 1576 +{ + // Methods + public void .ctor(); // 0x00412CE4 + public static IntPtr CreateEvent_internal(bool manual, bool initial, string name, out bool created); // 0x00410AAC + public static bool SetEvent_internal(IntPtr handle); // 0x00410D78 + public static bool ResetEvent_internal(IntPtr handle); // 0x00410D48 + public static void CloseEvent_internal(IntPtr handle); // 0x00412CEC +} + +// Namespace: System.Threading +public struct NativeOverlapped // TypeDefIndex: 1577 +{ + // Fields + public IntPtr EventHandle; // 0x08 + public IntPtr InternalHigh; // 0x0C + public IntPtr InternalLow; // 0x10 + public int OffsetHigh; // 0x14 + public int OffsetLow; // 0x18 + internal int Handle1; // 0x1C + internal int Handle2; // 0x20 + +} + +// Namespace: System.Threading +public class Overlapped // TypeDefIndex: 1578 +{ + // Fields + private IAsyncResult ares; // 0x08 + private int offsetL; // 0x0C + private int offsetH; // 0x10 + private int evt; // 0x14 + private IntPtr evt_ptr; // 0x18 + + // Properties + public IAsyncResult AsyncResult { get; set; } // 0x004132EC 0x004132F4 + public int EventHandle { get; set; } // 0x004132FC 0x00413304 + public IntPtr EventHandleIntPtr { get; set; } // 0x0041330C 0x00413314 + public int OffsetHigh { get; set; } // 0x0041331C 0x00413324 + public int OffsetLow { get; set; } // 0x0041332C 0x00413334 + + // Methods + public void .ctor(); // 0x00412CF0 + public void .ctor(int offsetLo, int offsetHi, int hEvent, IAsyncResult ar); // 0x00412CF8 + public void .ctor(int offsetLo, int offsetHi, IntPtr hEvent, IAsyncResult ar); // 0x00412D30 + public static void Free(void * nativeOverlappedPtr); // 0x00412D68 + public static Overlapped Unpack(void * nativeOverlappedPtr); // 0x00412E74 + public void * Pack(IOCompletionCallback iocb); // 0x00412FC8 + public void * Pack(IOCompletionCallback iocb, object userData); // 0x004131AC + public void * UnsafePack(IOCompletionCallback iocb); // 0x004132E4 + public void * UnsafePack(IOCompletionCallback iocb, object userData); // 0x004132E8 +} + +// Namespace: System.Threading +public sealed class ReaderWriterLock : CriticalFinalizerObject // TypeDefIndex: 1579 +{ + // Fields + private int seq_num; // 0x08 + private int state; // 0x0C + private int readers; // 0x10 + private LockQueue writer_queue; // 0x14 + private Hashtable reader_locks; // 0x18 + private int writer_lock_owner; // 0x1C + + // Properties + public bool IsReaderLockHeld { get; } // 0x004137D8 + public bool IsWriterLockHeld { get; } // 0x004139A0 + public int WriterSeqNum { get; } // 0x00413A94 + + // Methods + public void .ctor(); // 0x00413718 + protected override void Finalize(); // 0x004137D0 + public void AcquireReaderLock(int millisecondsTimeout); // 0x00413AB8 + private void AcquireReaderLock(int millisecondsTimeout, int initialLockCount); // 0x00413AC0 + public void AcquireReaderLock(TimeSpan timeout); // 0x004141B0 + public void AcquireWriterLock(int millisecondsTimeout); // 0x004142C4 + private void AcquireWriterLock(int millisecondsTimeout, int initialLockCount); // 0x00413FC8 + public void AcquireWriterLock(TimeSpan timeout); // 0x004142CC + public bool AnyWritersSince(int seqNum); // 0x004142F8 + public void DowngradeFromWriterLock(LockCookie lockCookie); // 0x00414328 + public LockCookie ReleaseLock(); // 0x00414510 + public void ReleaseReaderLock(); // 0x004149A8 + private void ReleaseReaderLock(int currentCount, int releaseCount); // 0x004147E0 + public void ReleaseWriterLock(); // 0x00414BB0 + private void ReleaseWriterLock(int releaseCount); // 0x00414758 + public void RestoreLock(LockCookie lockCookie); // 0x00414CC4 + public LockCookie UpgradeToWriterLock(int millisecondsTimeout); // 0x00414D5C + public LockCookie UpgradeToWriterLock(TimeSpan timeout); // 0x00414E40 + private LockCookie GetLockCookie(); // 0x004145E0 + private bool HasWriterLock(); // 0x00413F28 + private int CheckTimeout(TimeSpan timeout); // 0x004141E0 +} + +// Namespace: System.Threading +public sealed class RegisteredWaitHandle : MarshalByRefObject // TypeDefIndex: 1580 +{ + // Fields + private WaitHandle _waitObject; // 0x0C + private WaitOrTimerCallback _callback; // 0x10 + private TimeSpan _timeout; // 0x18 + private object _state; // 0x20 + private bool _executeOnlyOnce; // 0x24 + private WaitHandle _finalEvent; // 0x28 + private ManualResetEvent _cancelEvent; // 0x2C + private int _callsInProcess; // 0x30 + private bool _unregistered; // 0x34 + + // Methods + internal void .ctor(WaitHandle waitObject, WaitOrTimerCallback callback, object state, TimeSpan timeout, bool executeOnlyOnce); // 0x00414E70 + internal void Wait(object state); // 0x00414F38 + private void DoCallBack(object timedOut); // 0x00415640 + public bool Unregister(WaitHandle waitObject); // 0x00415B3C +} + +// Namespace: System.Threading +public class SynchronizationContext // TypeDefIndex: 1581 +{ + // Fields + private bool notification_required; // 0x08 + private static SynchronizationContext currentContext; // 0x80000000 + + // Properties + public static SynchronizationContext Current { get; } // 0x00416050 + + // Methods + public void .ctor(); // 0x00415FD4 + internal void .ctor(SynchronizationContext context); // 0x00415FDC + public virtual SynchronizationContext CreateCopy(); // 0x004160B0 + public bool IsWaitNotificationRequired(); // 0x00416120 + public virtual void OperationCompleted(); // 0x00416128 + public virtual void OperationStarted(); // 0x0041612C + public virtual void Post(SendOrPostCallback d, object state); // 0x00416130 + public virtual void Send(SendOrPostCallback d, object state); // 0x004161BC + public static void SetSynchronizationContext(SynchronizationContext syncContext); // 0x004161F0 + public static void SetThreadStaticContext(SynchronizationContext syncContext); // 0x00416254 + protected void SetWaitNotificationRequired(); // 0x004162B8 + public virtual int Wait(IntPtr[] waitHandles, bool waitAll, int millisecondsTimeout); // 0x0041634C + protected static int WaitHelper(IntPtr[] waitHandles, bool waitAll, int millisecondsTimeout); // 0x00416360 +} + +// Namespace: System.Threading +[Serializable] +public class SynchronizationLockException : SystemException // TypeDefIndex: 1582 +{ + // Methods + public void .ctor(); // 0x004163E8 + public void .ctor(string message); // 0x004123E4 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x00416450 + public void .ctor(string message, Exception innerException); // 0x00416470 +} + +// Namespace: System.Threading +public sealed class Thread : CriticalFinalizerObject, _Thread // TypeDefIndex: 1583 +{ + // Fields + private int lock_thread_id; // 0x08 + private IntPtr system_thread_handle; // 0x0C + private object cached_culture_info; // 0x10 + private IntPtr unused0; // 0x14 + private bool threadpool_thread; // 0x18 + private IntPtr name; // 0x1C + private int name_len; // 0x20 + private ThreadState state; // 0x24 + private object abort_exc; // 0x28 + private int abort_state_handle; // 0x2C + private long thread_id; // 0x30 + private IntPtr start_notify; // 0x38 + private IntPtr stack_ptr; // 0x3C + private UIntPtr static_data; // 0x40 + private IntPtr jit_data; // 0x44 + private IntPtr lock_data; // 0x48 + private object current_appcontext; // 0x4C + private int stack_size; // 0x50 + private object start_obj; // 0x54 + private IntPtr appdomain_refs; // 0x58 + private int interruption_requested; // 0x5C + private IntPtr suspend_event; // 0x60 + private IntPtr suspended_event; // 0x64 + private IntPtr resume_event; // 0x68 + private IntPtr synch_cs; // 0x6C + private IntPtr serialized_culture_info; // 0x70 + private int serialized_culture_info_len; // 0x74 + private IntPtr serialized_ui_culture_info; // 0x78 + private int serialized_ui_culture_info_len; // 0x7C + private bool thread_dump_requested; // 0x80 + private IntPtr end_stack; // 0x84 + private bool thread_interrupt_requested; // 0x88 + private byte apartment_state; // 0x89 + private int critical_region_level; // 0x8C + private int small_id; // 0x90 + private IntPtr manage_callback; // 0x94 + private object pending_exception; // 0x98 + private ExecutionContext ec_to_set; // 0x9C + private IntPtr interrupt_on_stop; // 0xA0 + private IntPtr unused3; // 0xA4 + private IntPtr unused4; // 0xA8 + private IntPtr unused5; // 0xAC + private IntPtr unused6; // 0xB0 + private static object[] local_slots; // 0x80000000 + private static ExecutionContext _ec; // 0x80000004 + private MulticastDelegate threadstart; // 0xB4 + private int managed_id; // 0xB8 + private IPrincipal _principal; // 0xBC + private static Hashtable datastorehash; // 0x00 + private static object datastore_lock; // 0x04 + private bool in_currentculture; // 0xC0 + private static object culture_lock; // 0x08 + + // Properties + public static Context CurrentContext { get; } // 0x00416B44 + public static IPrincipal CurrentPrincipal { get; set; } // 0x00416B4C 0x00416CA0 + public static Thread CurrentThread { get; } // 0x0040FD78 + internal static int CurrentThreadId { get; } // 0x00413910 + public ApartmentState ApartmentState { get; set; } // 0x00417C4C 0x00417D0C + public CultureInfo CurrentCulture { get; set; } // 0x00417E34 0x0041818C + public CultureInfo CurrentUICulture { get; set; } // 0x004183C0 0x004186A4 + public bool IsThreadPoolThread { get; } // 0x00418898 + internal bool IsThreadPoolThreadInternal { get; set; } // 0x004188A0 0x004188A8 + public bool IsAlive { get; } // 0x004188B0 + public bool IsBackground { get; set; } // 0x004188E0 0x00418994 + public string Name { get; set; } // 0x004189BC 0x004189C0 + public ThreadPriority Priority { get; set; } // 0x004189C4 0x004189CC + public ThreadState ThreadState { get; } // 0x00417D00 + public ExecutionContext ExecutionContext { get; } // 0x00410FFC + public int ManagedThreadId { get; } // 0x00418F64 + + // Methods + public void .ctor(ThreadStart start); // 0x00416478 + public void .ctor(ThreadStart start, int maxStackSize); // 0x0041654C + public void .ctor(ParameterizedThreadStart start); // 0x00416680 + public void .ctor(ParameterizedThreadStart start, int maxStackSize); // 0x00416750 + private static void .cctor(); // 0x00416884 + private void System.Runtime.InteropServices._Thread.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x00416924 + private void System.Runtime.InteropServices._Thread.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x004169AC + private void System.Runtime.InteropServices._Thread.GetTypeInfoCount(out uint pcTInfo); // 0x00416A34 + private void System.Runtime.InteropServices._Thread.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x00416ABC + private static Thread CurrentThread_internal(); // 0x00416D80 + private static void InitDataStoreHash(); // 0x00416D84 + public static LocalDataStoreSlot AllocateNamedDataSlot(string name); // 0x00416F58 + public static void FreeNamedDataSlot(string name); // 0x00417290 + public static LocalDataStoreSlot AllocateDataSlot(); // 0x00417220 + public static object GetData(LocalDataStoreSlot slot); // 0x00417420 + public static void SetData(LocalDataStoreSlot slot, object data); // 0x0041754C + internal static void FreeLocalSlotValues(int slot, bool thread_local); // 0x0041776C + public static LocalDataStoreSlot GetNamedDataSlot(string name); // 0x00417770 + public static AppDomain GetDomain(); // 0x00416C98 + public static int GetDomainID(); // 0x004179A4 + private static void ResetAbort_internal(); // 0x004179A8 + public static void ResetAbort(); // 0x004179AC + private static void Sleep_internal(int ms); // 0x00417A24 + public static void Sleep(int millisecondsTimeout); // 0x00417A28 + public static void Sleep(TimeSpan timeout); // 0x00417B18 + private IntPtr Thread_internal(MulticastDelegate start); // 0x00417C48 + private void Thread_init(); // 0x00416548 + private CultureInfo GetCachedCurrentCulture(); // 0x00417E14 + private byte[] GetSerializedCurrentCulture(); // 0x00417E18 + private void SetCachedCurrentCulture(CultureInfo culture); // 0x00417E1C + private void SetSerializedCurrentCulture(byte[] culture); // 0x00417E20 + private CultureInfo GetCachedCurrentUICulture(); // 0x00417E24 + private byte[] GetSerializedCurrentUICulture(); // 0x00417E28 + private void SetCachedCurrentUICulture(CultureInfo culture); // 0x00417E2C + private void SetSerializedCurrentUICulture(byte[] culture); // 0x00417E30 + private string GetName_internal(); // 0x004189B4 + private void SetName_internal(string name); // 0x004189B8 + private void Abort_internal(object stateInfo); // 0x004189D0 + public void Abort(); // 0x004189D4 + public void Abort(object stateInfo); // 0x004189DC + internal object GetAbortExceptionState(); // 0x004189E0 + private void Interrupt_internal(); // 0x004189E4 + public void Interrupt(); // 0x004189E8 + private bool Join_internal(int ms, IntPtr handle); // 0x004189EC + public void Join(); // 0x004189F0 + public bool Join(int millisecondsTimeout); // 0x004189FC + public bool Join(TimeSpan timeout); // 0x00418AD0 + public static void MemoryBarrier(); // 0x00418BDC + private void Resume_internal(); // 0x00418BE0 + public void Resume(); // 0x00418BE4 + private static void SpinWait_nop(); // 0x00418BE8 + public static void SpinWait(int iterations); // 0x00418BEC + public void Start(); // 0x00418C80 + private void Suspend_internal(); // 0x00418E04 + public void Suspend(); // 0x00418E08 + private void Thread_free_internal(IntPtr handle); // 0x00418E0C + protected override void Finalize(); // 0x00418E10 + private void SetState(ThreadState set); // 0x004189AC + private void ClrState(ThreadState clr); // 0x004189B0 + private ThreadState GetState(); // 0x004188DC + public static byte VolatileRead(byte address); // 0x00418E78 + public static double VolatileRead(double address); // 0x00418E7C + public static short VolatileRead(short address); // 0x00418E80 + public static int VolatileRead(int address); // 0x00418E84 + public static long VolatileRead(long address); // 0x00418E88 + public static IntPtr VolatileRead(IntPtr address); // 0x00418E8C + public static object VolatileRead(object address); // 0x00418E90 + public static sbyte VolatileRead(sbyte address); // 0x00418E94 + public static float VolatileRead(float address); // 0x00418E98 + public static ushort VolatileRead(ushort address); // 0x00418E9C + public static uint VolatileRead(uint address); // 0x00418EA0 + public static ulong VolatileRead(ulong address); // 0x00418EA4 + public static UIntPtr VolatileRead(UIntPtr address); // 0x00418EA8 + public static void VolatileWrite(byte address, byte value); // 0x00418EAC + public static void VolatileWrite(double address, double value); // 0x00418EB4 + public static void VolatileWrite(short address, short value); // 0x00418EB8 + public static void VolatileWrite(int address, int value); // 0x00418EBC + public static void VolatileWrite(long address, long value); // 0x00418EC0 + public static void VolatileWrite(IntPtr address, IntPtr value); // 0x00418EC4 + public static void VolatileWrite(object address, object value); // 0x00418EC8 + public static void VolatileWrite(sbyte address, sbyte value); // 0x00418ECC + public static void VolatileWrite(float address, float value); // 0x00418ED0 + public static void VolatileWrite(ushort address, ushort value); // 0x00418ED4 + public static void VolatileWrite(uint address, uint value); // 0x00418EDC + public static void VolatileWrite(ulong address, ulong value); // 0x00418EE0 + public static void VolatileWrite(UIntPtr address, UIntPtr value); // 0x00418EE4 + private static int GetNewManagedId(); // 0x00418EE8 + private static int GetNewManagedId_internal(); // 0x00418F60 + public static void BeginCriticalRegion(); // 0x00419000 + public static void EndCriticalRegion(); // 0x004190B8 + public static void BeginThreadAffinity(); // 0x00419170 + public static void EndThreadAffinity(); // 0x00419174 + public ApartmentState GetApartmentState(); // 0x00419178 + public void SetApartmentState(ApartmentState state); // 0x00419180 + public bool TrySetApartmentState(ApartmentState state); // 0x00417D10 + public override int GetHashCode(); // 0x00419238 + public void Start(object parameter); // 0x0041923C + public CompressedStack GetCompressedStack(); // 0x0040FDF0 + public void SetCompressedStack(CompressedStack stack); // 0x0041022C +} + +// Namespace: System.Threading +[Serializable] +public sealed class ThreadAbortException : SystemException // TypeDefIndex: 1584 +{ + // Methods + private void .ctor(); // 0x00419244 + private void .ctor(SerializationInfo info, StreamingContext sc); // 0x004192B8 +} + +// Namespace: System.Threading +[Serializable] +public class ThreadInterruptedException : SystemException // TypeDefIndex: 1585 +{ + // Methods + public void .ctor(); // 0x004192D8 + public void .ctor(string message); // 0x00419340 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x00419348 + public void .ctor(string message, Exception innerException); // 0x00419368 +} + +// Namespace: System.Threading +public static class ThreadPool // TypeDefIndex: 1586 +{ + // Methods + public static bool BindHandle(IntPtr osHandle); // 0x00419370 + public static bool BindHandle(SafeHandle osHandle); // 0x00419378 + public static void GetMaxThreads(out int workerThreads, out int completionPortThreads); // 0x00419424 + public static void GetMinThreads(out int workerThreads, out int completionPortThreads); // 0x00419428 + public static bool SetMinThreads(int workerThreads, int completionPortThreads); // 0x0041942C + public static bool SetMaxThreads(int workerThreads, int completionPortThreads); // 0x00419430 + public static bool QueueUserWorkItem(WaitCallback callBack); // 0x00419434 + public static bool QueueUserWorkItem(WaitCallback callBack, object state); // 0x0041555C + public static RegisteredWaitHandle RegisterWaitForSingleObject(WaitHandle waitObject, WaitOrTimerCallback callBack, object state, int millisecondsTimeOutInterval, bool executeOnlyOnce); // 0x00419468 + public static RegisteredWaitHandle RegisterWaitForSingleObject(WaitHandle waitObject, WaitOrTimerCallback callBack, object state, long millisecondsTimeOutInterval, bool executeOnlyOnce); // 0x00419490 + public static RegisteredWaitHandle RegisterWaitForSingleObject(WaitHandle waitObject, WaitOrTimerCallback callBack, object state, TimeSpan timeout, bool executeOnlyOnce); // 0x00419710 + public static RegisteredWaitHandle RegisterWaitForSingleObject(WaitHandle waitObject, WaitOrTimerCallback callBack, object state, uint millisecondsTimeOutInterval, bool executeOnlyOnce); // 0x00419770 +} + +// Namespace: System.Threading +[Serializable] +public enum ThreadPriority // TypeDefIndex: 1587 +{ + Lowest = 0, + BelowNormal = 1, + Normal = 2, + AboveNormal = 3, + Highest = 4 +} + +// Namespace: System.Threading +[Serializable] +public sealed class ThreadStartException : SystemException // TypeDefIndex: 1588 +{ + // Methods + internal void .ctor(); // 0x004199D8 + internal void .ctor(string message); // 0x00419A40 + internal void .ctor(SerializationInfo info, StreamingContext context); // 0x00419A48 + internal void .ctor(string message, Exception innerException); // 0x00419A68 +} + +// Namespace: System.Threading +[Serializable] +public enum ThreadState // TypeDefIndex: 1589 +{ + Running = 0, + StopRequested = 1, + SuspendRequested = 2, + Background = 4, + Unstarted = 8, + Stopped = 16, + WaitSleepJoin = 32, + Suspended = 64, + AbortRequested = 128, + Aborted = 256 +} + +// Namespace: System.Threading +[Serializable] +public class ThreadStateException : SystemException // TypeDefIndex: 1590 +{ + // Methods + public void .ctor(); // 0x00419A70 + public void .ctor(string message); // 0x00417D04 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x00419AD8 + public void .ctor(string message, Exception innerException); // 0x00419AF8 +} + +// Namespace: System.Threading +public static class Timeout // TypeDefIndex: 1591 +{ + // Fields + public const int Infinite = -1; // 0x00 + +} + +// Namespace: System.Threading +public sealed class Timer : MarshalByRefObject, IDisposable // TypeDefIndex: 1592 +{ + // Fields + private const long MaxValue = 4294967294; // 0x00 + private static Scheduler scheduler; // 0x00 + private TimerCallback callback; // 0x0C + private object state; // 0x10 + private long due_time_ms; // 0x18 + private long period_ms; // 0x20 + private long next_run; // 0x28 + private bool disposed; // 0x30 + + // Methods + public void .ctor(TimerCallback callback, object state, int dueTime, int period); // 0x00419B00 + public void .ctor(TimerCallback callback, object state, long dueTime, long period); // 0x00419C40 + public void .ctor(TimerCallback callback, object state, TimeSpan dueTime, TimeSpan period); // 0x00419C90 + public void .ctor(TimerCallback callback, object state, uint dueTime, uint period); // 0x00419D38 + public void .ctor(TimerCallback callback); // 0x00419DA4 + private static void .cctor(); // 0x00419DEC + private void Init(TimerCallback callback, object state, long dueTime, long period); // 0x00419B58 + public bool Change(int dueTime, int period); // 0x0041A1DC + public bool Change(TimeSpan dueTime, TimeSpan period); // 0x0041A208 + public bool Change(uint dueTime, uint period); // 0x0041A298 + public void Dispose(); // 0x0041A2DC + public bool Change(long dueTime, long period); // 0x0041A43C + private bool Change(long dueTime, long period, bool first); // 0x00419EF4 + public bool Dispose(WaitHandle notifyObject); // 0x0041A590 +} + +// Namespace: +private sealed class TimerComparer : IComparer // TypeDefIndex: 1593 +{ + // Methods + public void .ctor(); // 0x0041A79C + public int Compare(object x, object y); // 0x0041B2A0 +} + +// Namespace: +private sealed class Scheduler // TypeDefIndex: 1594 +{ + // Fields + private static Scheduler instance; // 0x00 + private SortedList list; // 0x08 + + // Properties + public static Scheduler Instance { get; } // 0x0041A814 + + // Methods + private void .ctor(); // 0x0041A664 + private static void .cctor(); // 0x0041A7A4 + public void Remove(Timer timer); // 0x0041A39C + public void Change(Timer timer, long new_next_run); // 0x0041A46C + private void Add(Timer timer); // 0x0041A91C + private int InternalRemove(Timer timer); // 0x0041A8A0 + private void SchedulerThread(); // 0x0041AAEC + private void ShrinkIfNeeded(ArrayList list, int initial); // 0x0041B1FC +} + +// Namespace: System.Threading +public abstract class WaitHandle : MarshalByRefObject, IDisposable // TypeDefIndex: 1595 +{ + // Fields + public const int WaitTimeout = 258; // 0x00 + private SafeWaitHandle safe_wait_handle; // 0x0C + protected static readonly IntPtr InvalidHandle; // 0x00 + private bool disposed; // 0x10 + + // Properties + public virtual IntPtr Handle { get; set; } // 0x0041C5E0 0x0041C60C + public SafeWaitHandle SafeWaitHandle { get; set; } // 0x0041C7E4 0x0041C7EC + + // Methods + protected void .ctor(); // 0x004109EC + private static void .cctor(); // 0x0041BB0C + private void System.IDisposable.Dispose(); // 0x0041BB78 + private static bool WaitAll_internal(WaitHandle[] handles, int ms, bool exitContext); // 0x0041BBAC + private static void CheckArray(WaitHandle[] handles, bool waitAll); // 0x0041BBB0 + public static bool WaitAll(WaitHandle[] waitHandles); // 0x0041BDA4 + public static bool WaitAll(WaitHandle[] waitHandles, int millisecondsTimeout, bool exitContext); // 0x0041BE38 + public static bool WaitAll(WaitHandle[] waitHandles, TimeSpan timeout, bool exitContext); // 0x0041C008 + private static int WaitAny_internal(WaitHandle[] handles, int ms, bool exitContext); // 0x0041C218 + public static int WaitAny(WaitHandle[] waitHandles); // 0x0041C21C + public static int WaitAny(WaitHandle[] waitHandles, int millisecondsTimeout, bool exitContext); // 0x0041C2B0 + public static int WaitAny(WaitHandle[] waitHandles, TimeSpan timeout); // 0x0041C480 + public static int WaitAny(WaitHandle[] waitHandles, int millisecondsTimeout); // 0x0041C520 + public static int WaitAny(WaitHandle[] waitHandles, TimeSpan timeout, bool exitContext); // 0x00415338 + public virtual void Close(); // 0x0041C5AC + private bool WaitOne_internal(IntPtr handle, int ms, bool exitContext); // 0x0041C748 + protected virtual void Dispose(bool explicitDisposing); // 0x0041C74C + public static bool SignalAndWait(WaitHandle toSignal, WaitHandle toWaitOn); // 0x0041C8B4 + public static bool SignalAndWait(WaitHandle toSignal, WaitHandle toWaitOn, int millisecondsTimeout, bool exitContext); // 0x0041C94C + public static bool SignalAndWait(WaitHandle toSignal, WaitHandle toWaitOn, TimeSpan timeout, bool exitContext); // 0x0041CB10 + private static bool SignalAndWait_Internal(IntPtr toSignal, IntPtr toWaitOn, int ms, bool exitContext); // 0x0041CB0C + public virtual bool WaitOne(); // 0x0041CC88 + public virtual bool WaitOne(int millisecondsTimeout, bool exitContext); // 0x0041CDB4 + public virtual bool WaitOne(int millisecondsTimeout); // 0x0041CFB4 + public virtual bool WaitOne(TimeSpan timeout); // 0x0041CFC8 + public virtual bool WaitOne(TimeSpan timeout, bool exitContext); // 0x0041CFF8 + internal void CheckDisposed(); // 0x00410C70 + public static bool WaitAll(WaitHandle[] waitHandles, int millisecondsTimeout); // 0x0041D238 + public static bool WaitAll(WaitHandle[] waitHandles, TimeSpan timeout); // 0x0041D2C4 + protected override void Finalize(); // 0x0041D364 +} + +// Namespace: System.Threading +[Serializable] +public class WaitHandleCannotBeOpenedException : ApplicationException // TypeDefIndex: 1596 +{ + // Methods + public void .ctor(); // 0x0041D3DC + public void .ctor(string message); // 0x0041D450 + public void .ctor(string message, Exception innerException); // 0x0041D458 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x0041D460 +} + +// Namespace: System +[Serializable] +public class AccessViolationException : SystemException // TypeDefIndex: 1597 +{ + // Fields + private const int Result = -2147467261; // 0x00 + + // Methods + public void .ctor(); // 0x00269250 + public void .ctor(string message); // 0x002692D0 + public void .ctor(string message, Exception innerException); // 0x002692F4 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x00269318 +} + +// Namespace: System +[Serializable] +public sealed class ActivationContext : IDisposable, ISerializable // TypeDefIndex: 1598 +{ + // Fields + private ContextForm _form; // 0x08 + private ApplicationIdentity _appid; // 0x0C + private bool _disposed; // 0x10 + + // Properties + public ContextForm Form { get; } // 0x00269428 + public ApplicationIdentity Identity { get; } // 0x00269430 + + // Methods + private void .ctor(ApplicationIdentity identity); // 0x00269338 + private void System.Runtime.Serialization.ISerializable.GetObjectData(SerializationInfo info, StreamingContext context); // 0x00269358 + protected override void Finalize(); // 0x002693FC + public static ActivationContext CreatePartialActivationContext(ApplicationIdentity identity); // 0x00269438 + public static ActivationContext CreatePartialActivationContext(ApplicationIdentity identity, string[] manifestPaths); // 0x00269508 + public void Dispose(); // 0x00269624 + private void Dispose(bool disposing); // 0x00269414 +} + +// Namespace: +public enum ContextForm // TypeDefIndex: 1599 +{ + Loose = 0, + StoreBounded = 1 +} + +// Namespace: System +public sealed class Activator : _Activator // TypeDefIndex: 1600 +{ + // Fields + private const BindingFlags _flags = 532; // 0x00 + private const BindingFlags _accessFlags = 127; // 0x00 + + // Methods + private void .ctor(); // 0x0026963C + private void System.Runtime.InteropServices._Activator.GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); // 0x00269644 + private void System.Runtime.InteropServices._Activator.GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); // 0x002696CC + private void System.Runtime.InteropServices._Activator.GetTypeInfoCount(out uint pcTInfo); // 0x00269754 + private void System.Runtime.InteropServices._Activator.Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); // 0x002697DC + public static ObjectHandle CreateComInstanceFrom(string assemblyName, string typeName); // 0x00269864 + public static ObjectHandle CreateComInstanceFrom(string assemblyName, string typeName, byte[] hashValue, AssemblyHashAlgorithm hashAlgorithm); // 0x002699D0 + public static ObjectHandle CreateInstanceFrom(string assemblyFile, string typeName); // 0x00269B3C + public static ObjectHandle CreateInstanceFrom(string assemblyFile, string typeName, object[] activationAttributes); // 0x00269B74 + public static ObjectHandle CreateInstanceFrom(string assemblyFile, string typeName, bool ignoreCase, BindingFlags bindingAttr, Binder binder, object[] args, CultureInfo culture, object[] activationAttributes, Evidence securityInfo); // 0x00269BAC + public static ObjectHandle CreateInstance(string assemblyName, string typeName); // 0x0026A4B4 + public static ObjectHandle CreateInstance(string assemblyName, string typeName, object[] activationAttributes); // 0x0026A520 + public static ObjectHandle CreateInstance(string assemblyName, string typeName, bool ignoreCase, BindingFlags bindingAttr, Binder binder, object[] args, CultureInfo culture, object[] activationAttributes, Evidence securityInfo); // 0x0026A5B4 + public static ObjectHandle CreateInstance(ActivationContext activationContext); // 0x0026A6C0 + public static ObjectHandle CreateInstance(ActivationContext activationContext, string[] activationCustomData); // 0x0026A748 + public static ObjectHandle CreateInstanceFrom(AppDomain domain, string assemblyFile, string typeName); // 0x0026A7D0 + public static ObjectHandle CreateInstanceFrom(AppDomain domain, string assemblyFile, string typeName, bool ignoreCase, BindingFlags bindingAttr, Binder binder, object[] args, CultureInfo culture, object[] activationAttributes, Evidence securityAttributes); // 0x0026A96C + public static ObjectHandle CreateInstance(AppDomain domain, string assemblyName, string typeName); // 0x0026AB4C + public static ObjectHandle CreateInstance(AppDomain domain, string assemblyName, string typeName, bool ignoreCase, BindingFlags bindingAttr, Binder binder, object[] args, CultureInfo culture, object[] activationAttributes, Evidence securityAttributes); // 0x0026ACC0 + public static T CreateInstance(); + public static object CreateInstance(Type type); // 0x0026AEA0 + public static object CreateInstance(Type type, object[] args); // 0x0026B1BC + public static object CreateInstance(Type type, object[] args, object[] activationAttributes); // 0x0026B234 + public static object CreateInstance(Type type, BindingFlags bindingAttr, Binder binder, object[] args, CultureInfo culture); // 0x0026B350 + public static object CreateInstance(Type type, BindingFlags bindingAttr, Binder binder, object[] args, CultureInfo culture, object[] activationAttributes); // 0x00269C9C + public static object CreateInstance(Type type, bool nonPublic); // 0x0026AEA8 + private static void CheckType(Type type); // 0x0026B3E8 + private static void CheckAbstractType(Type type); // 0x0026B6C0 + public static object GetObject(Type type, string url); // 0x0026B7FC + public static object GetObject(Type type, string url, object state); // 0x0026B8E4 + internal static object CreateInstanceInternal(Type type); // 0x0026B6BC +} + +// Namespace: System +public sealed class AppDomain : MarshalByRefObject // TypeDefIndex: 1601 +{ + // Fields + private IntPtr _mono_app_domain; // 0x0C + private static string _process_guid; // 0x00 + private static Hashtable type_resolve_in_progress; // 0x80000000 + private static Hashtable assembly_resolve_in_progress; // 0x80000004 + private static Hashtable assembly_resolve_in_progress_refonly; // 0x80000008 + private Evidence _evidence; // 0x10 + private PermissionSet _granted; // 0x14 + private PrincipalPolicy _principalPolicy; // 0x18 + private static IPrincipal _principal; // 0x8000000C + private static AppDomain default_domain; // 0x04 + private AppDomainManager _domain_manager; // 0x1C + private ActivationContext _activation; // 0x20 + private ApplicationIdentity _applicationIdentity; // 0x24 + private AssemblyLoadEventHandler AssemblyLoad; // 0x28 + private ResolveEventHandler AssemblyResolve; // 0x2C + private EventHandler DomainUnload; // 0x30 + private EventHandler ProcessExit; // 0x34 + private ResolveEventHandler ResourceResolve; // 0x38 + private ResolveEventHandler TypeResolve; // 0x3C + private UnhandledExceptionEventHandler UnhandledException; // 0x40 + private ResolveEventHandler ReflectionOnlyAssemblyResolve; // 0x44 + + // Properties + internal AppDomainSetup SetupInformationNoCopy { get; } // 0x0026C2E0 + public AppDomainSetup SetupInformation { get; } // 0x0026C2E4 + public string BaseDirectory { get; } // 0x0026C5C8 + public string RelativeSearchPath { get; } // 0x0026C6D8 + public string DynamicDirectory { get; } // 0x0026C7D8 + public bool ShadowCopyFiles { get; } // 0x0026CABC + public string FriendlyName { get; } // 0x0026CB74 + public Evidence Evidence { get; } // 0x0026CB78 + internal IPrincipal DefaultPrincipal { get; } // 0x0026CE04 + internal PermissionSet GrantedPermissionSet { get; } // 0x0026CFC4 + public static AppDomain CurrentDomain { get; } // 0x0026CFD0 + internal static AppDomain DefaultDomain { get; } // 0x0026CCE4 + public AppDomainManager DomainManager { get; } // 0x0027064C + public ActivationContext ActivationContext { get; } // 0x00270654 + public ApplicationIdentity ApplicationIdentity { get; } // 0x0027065C + public int Id { get; } // 0x00270664 + + // Events + public event AssemblyLoadEventHandler AssemblyLoad { + add; // 0x0026B9DC + remove; // 0x0026BA6C + } + public event ResolveEventHandler AssemblyResolve { + add; // 0x0026BAFC + remove; // 0x0026BB8C + } + public event EventHandler DomainUnload { + add; // 0x0026BC1C + remove; // 0x0026BCAC + } + public event EventHandler ProcessExit { + add; // 0x0026BD3C + remove; // 0x0026BDCC + } + public event ResolveEventHandler ResourceResolve { + add; // 0x0026BE5C + remove; // 0x0026BEEC + } + public event ResolveEventHandler TypeResolve { + add; // 0x0026BF7C + remove; // 0x0026C00C + } + public event UnhandledExceptionEventHandler UnhandledException { + add; // 0x0026C09C + remove; // 0x0026C12C + } + public event ResolveEventHandler ReflectionOnlyAssemblyResolve { + add; // 0x0026C1BC + remove; // 0x0026C24C + } + + // Methods + private void .ctor(); // 0x0026B9D4 + private AppDomainSetup getSetup(); // 0x0026C2DC + private string getFriendlyName(); // 0x0026CB70 + private static AppDomain getCurDomain(); // 0x0026CFCC + private static AppDomain getRootDomain(); // 0x0026CFD4 + public void AppendPrivatePath(string path); // 0x0026CFD8 + public void ClearPrivatePath(); // 0x0026D200 + public void ClearShadowCopyPath(); // 0x0026D2B8 + public ObjectHandle CreateInstance(string assemblyName, string typeName); // 0x0026AC08 + public ObjectHandle CreateInstance(string assemblyName, string typeName, object[] activationAttributes); // 0x0026D368 + public ObjectHandle CreateInstance(string assemblyName, string typeName, bool ignoreCase, BindingFlags bindingAttr, Binder binder, object[] args, CultureInfo culture, object[] activationAttributes, Evidence securityAttributes); // 0x0026ADB8 + public object CreateInstanceAndUnwrap(string assemblyName, string typeName); // 0x0026D428 + public object CreateInstanceAndUnwrap(string assemblyName, string typeName, object[] activationAttributes); // 0x0026D444 + public object CreateInstanceAndUnwrap(string assemblyName, string typeName, bool ignoreCase, BindingFlags bindingAttr, Binder binder, object[] args, CultureInfo culture, object[] activationAttributes, Evidence securityAttributes); // 0x0026D468 + public ObjectHandle CreateInstanceFrom(string assemblyFile, string typeName); // 0x0026A88C + public ObjectHandle CreateInstanceFrom(string assemblyFile, string typeName, object[] activationAttributes); // 0x0026D4B8 + public ObjectHandle CreateInstanceFrom(string assemblyFile, string typeName, bool ignoreCase, BindingFlags bindingAttr, Binder binder, object[] args, CultureInfo culture, object[] activationAttributes, Evidence securityAttributes); // 0x0026AA64 + public object CreateInstanceFromAndUnwrap(string assemblyName, string typeName); // 0x0026D59C + public object CreateInstanceFromAndUnwrap(string assemblyName, string typeName, object[] activationAttributes); // 0x0026D5B8 + public object CreateInstanceFromAndUnwrap(string assemblyName, string typeName, bool ignoreCase, BindingFlags bindingAttr, Binder binder, object[] args, CultureInfo culture, object[] activationAttributes, Evidence securityAttributes); // 0x0026D5DC + public AssemblyBuilder DefineDynamicAssembly(AssemblyName name, AssemblyBuilderAccess access); // 0x0026D62C + public AssemblyBuilder DefineDynamicAssembly(AssemblyName name, AssemblyBuilderAccess access, Evidence evidence); // 0x0026D784 + public AssemblyBuilder DefineDynamicAssembly(AssemblyName name, AssemblyBuilderAccess access, string dir); // 0x0026D7B4 + public AssemblyBuilder DefineDynamicAssembly(AssemblyName name, AssemblyBuilderAccess access, string dir, Evidence evidence); // 0x0026D7E0 + public AssemblyBuilder DefineDynamicAssembly(AssemblyName name, AssemblyBuilderAccess access, PermissionSet requiredPermissions, PermissionSet optionalPermissions, PermissionSet refusedPermissions); // 0x0026D80C + public AssemblyBuilder DefineDynamicAssembly(AssemblyName name, AssemblyBuilderAccess access, Evidence evidence, PermissionSet requiredPermissions, PermissionSet optionalPermissions, PermissionSet refusedPermissions); // 0x0026D840 + public AssemblyBuilder DefineDynamicAssembly(AssemblyName name, AssemblyBuilderAccess access, string dir, PermissionSet requiredPermissions, PermissionSet optionalPermissions, PermissionSet refusedPermissions); // 0x0026D87C + public AssemblyBuilder DefineDynamicAssembly(AssemblyName name, AssemblyBuilderAccess access, string dir, Evidence evidence, PermissionSet requiredPermissions, PermissionSet optionalPermissions, PermissionSet refusedPermissions); // 0x0026D8A8 + public AssemblyBuilder DefineDynamicAssembly(AssemblyName name, AssemblyBuilderAccess access, string dir, Evidence evidence, PermissionSet requiredPermissions, PermissionSet optionalPermissions, PermissionSet refusedPermissions, bool isSynchronized); // 0x0026D65C + public AssemblyBuilder DefineDynamicAssembly(AssemblyName name, AssemblyBuilderAccess access, string dir, Evidence evidence, PermissionSet requiredPermissions, PermissionSet optionalPermissions, PermissionSet refusedPermissions, bool isSynchronized, IEnumerable`1 assemblyAttributes); // 0x0026DA4C + public AssemblyBuilder DefineDynamicAssembly(AssemblyName name, AssemblyBuilderAccess access, IEnumerable`1 assemblyAttributes); // 0x0026DD78 + internal AssemblyBuilder DefineInternalDynamicAssembly(AssemblyName name, AssemblyBuilderAccess access); // 0x0026DDAC + public void DoCallBack(CrossAppDomainDelegate callBackDelegate); // 0x0026DE44 + public int ExecuteAssembly(string assemblyFile); // 0x0026DE58 + public int ExecuteAssembly(string assemblyFile, Evidence assemblySecurity); // 0x0026DEBC + public int ExecuteAssembly(string assemblyFile, Evidence assemblySecurity, string[] args); // 0x0026DE88 + public int ExecuteAssembly(string assemblyFile, Evidence assemblySecurity, string[] args, byte[] hashValue, AssemblyHashAlgorithm hashAlgorithm); // 0x0026E038 + private int ExecuteAssemblyInternal(Assembly a, string[] args); // 0x0026DEEC + private int ExecuteAssembly(Assembly a, string[] args); // 0x0026E084 + private Assembly[] GetAssemblies(bool refOnly); // 0x0026E088 + public Assembly[] GetAssemblies(); // 0x0026E08C + public object GetData(string name); // 0x0026E094 + public Type GetType(); // 0x0026E098 + public override object InitializeLifetimeService(); // 0x0026E0A0 + internal Assembly LoadAssembly(string assemblyRef, Evidence securityEvidence, bool refOnly); // 0x0026E0A8 + public Assembly Load(AssemblyName assemblyRef); // 0x0026E0AC + internal Assembly LoadSatellite(AssemblyName assemblyRef, bool throwOnError); // 0x0026E718 + public Assembly Load(AssemblyName assemblyRef, Evidence assemblySecurity); // 0x0026E0B4 + public Assembly Load(string assemblyString); // 0x0026E844 + public Assembly Load(string assemblyString, Evidence assemblySecurity); // 0x0026E9BC + internal Assembly Load(string assemblyString, Evidence assemblySecurity, bool refonly); // 0x0026E864 + public Assembly Load(byte[] rawAssembly); // 0x0026E9D8 + public Assembly Load(byte[] rawAssembly, byte[] rawSymbolStore); // 0x0026EA20 + internal Assembly LoadAssemblyRaw(byte[] rawAssembly, byte[] rawSymbolStore, Evidence securityEvidence, bool refonly); // 0x0026EA44 + public Assembly Load(byte[] rawAssembly, byte[] rawSymbolStore, Evidence securityEvidence); // 0x0026EA00 + internal Assembly Load(byte[] rawAssembly, byte[] rawSymbolStore, Evidence securityEvidence, bool refonly); // 0x0026EA64 + public void SetAppDomainPolicy(PolicyLevel domainPolicy); // 0x0026EB5C + public void SetCachePath(string path); // 0x0026ED70 + public void SetPrincipalPolicy(PrincipalPolicy policy); // 0x0026ED9C + public void SetShadowCopyFiles(); // 0x0026EE5C + public void SetShadowCopyPath(string path); // 0x0026EED8 + public void SetThreadPrincipal(IPrincipal principal); // 0x0026EF04 + private static AppDomain InternalSetDomainByID(int domain_id); // 0x0026F078 + private static AppDomain InternalSetDomain(AppDomain context); // 0x0026F07C + internal static void InternalPushDomainRef(AppDomain domain); // 0x0026F080 + internal static void InternalPushDomainRefByID(int domain_id); // 0x0026F084 + internal static void InternalPopDomainRef(); // 0x0026F088 + internal static Context InternalSetContext(Context context); // 0x0026F08C + internal static Context InternalGetContext(); // 0x0026F090 + internal static Context InternalGetDefaultContext(); // 0x0026F094 + internal static string InternalGetProcessGuid(string newguid); // 0x0026F098 + internal static object InvokeInDomain(AppDomain domain, MethodInfo method, object obj, object[] args); // 0x0026F09C + internal static object InvokeInDomainByID(int domain_id, MethodInfo method, object obj, object[] args); // 0x0026F280 + internal static string GetProcessGuid(); // 0x0026F464 + public static AppDomain CreateDomain(string friendlyName); // 0x0026F558 + public static AppDomain CreateDomain(string friendlyName, Evidence securityInfo); // 0x0026F8B8 + private static AppDomain createDomain(string friendlyName, AppDomainSetup info); // 0x0026F8C0 + public static AppDomain CreateDomain(string friendlyName, Evidence securityInfo, AppDomainSetup info); // 0x0026F564 + public static AppDomain CreateDomain(string friendlyName, Evidence securityInfo, string appBasePath, string appRelativeSearchPath, bool shadowCopyFiles); // 0x0026FA24 + private static AppDomainSetup CreateDomainSetup(string appBasePath, string appRelativeSearchPath, bool shadowCopyFiles); // 0x0026FA5C + private static bool InternalIsFinalizingForUnload(int domain_id); // 0x0026FB44 + public bool IsFinalizingForUnload(); // 0x0026ECDC + private static void InternalUnload(int domain_id); // 0x0026FBC4 + private int getDomainID(); // 0x0026FB48 + public static void Unload(AppDomain domain); // 0x0026FBC8 + public void SetData(string name, object data); // 0x0026FC78 + public void SetData(string name, object data, IPermission permission); // 0x0026FC7C + public static int GetCurrentThreadId(); // 0x0026FD04 + public override string ToString(); // 0x0026FD80 + private static void ValidateAssemblyName(string name); // 0x0026D8D4 + private void DoAssemblyLoad(Assembly assembly); // 0x0026FD84 + private Assembly DoAssemblyResolve(string name, bool refonly); // 0x0026FE18 + internal Assembly DoTypeResolve(object name_or_tb); // 0x00270178 + private void DoDomainUnload(); // 0x002704E0 + internal void ProcessMessageInDomain(byte[] arrRequest, CADMethodCallMessage cadMsg, out byte[] arrResponse, out CADMethodReturnMessage cadMrm); // 0x002704FC + public string ApplyPolicy(string assemblyName); // 0x00270668 + public static AppDomain CreateDomain(string friendlyName, Evidence securityInfo, string appBasePath, string appRelativeSearchPath, bool shadowCopyFiles, AppDomainInitializer adInit, string[] adInitArgs); // 0x0027075C + public int ExecuteAssemblyByName(string assemblyName); // 0x002707CC + public int ExecuteAssemblyByName(string assemblyName, Evidence assemblySecurity); // 0x00270830 + public int ExecuteAssemblyByName(string assemblyName, Evidence assemblySecurity, string[] args); // 0x002707FC + public int ExecuteAssemblyByName(AssemblyName assemblyName, Evidence assemblySecurity, string[] args); // 0x00270860 + public bool IsDefaultAppDomain(); // 0x00270894 + public Assembly[] ReflectionOnlyGetAssemblies(); // 0x002708B8 +} + +// Namespace: System +public class AppDomainManager : MarshalByRefObject // TypeDefIndex: 1602 +{ + // Fields + private ApplicationActivator _activator; // 0x0C + private AppDomainManagerInitializationOptions _flags; // 0x10 + + // Properties + public virtual ApplicationActivator ApplicationActivator { get; } // 0x00270CBC + public virtual Assembly EntryAssembly { get; } // 0x00270D3C + public virtual HostExecutionContextManager HostExecutionContextManager { get; } // 0x00270D44 + public virtual HostSecurityManager HostSecurityManager { get; } // 0x00270DCC + public AppDomainManagerInitializationOptions InitializationFlags { get; set; } // 0x00270DD4 0x00270DDC + + // Methods + public void .ctor(); // 0x00270C9C + public virtual AppDomain CreateDomain(string friendlyName, Evidence securityInfo, AppDomainSetup appDomainInfo); // 0x00270DE4 + public virtual void InitializeNewDomain(AppDomainSetup appDomainInfo); // 0x00270EDC + public virtual bool CheckSecuritySettings(SecurityState state); // 0x00270EE0 + protected static AppDomain CreateDomainHelper(string friendlyName, Evidence securityInfo, AppDomainSetup appDomainInfo); // 0x00270ED8 +} + +// Namespace: System +[Serializable] +public sealed class AppDomainSetup // TypeDefIndex: 1603 +{ + // Fields + private string application_base; // 0x08 + private string application_name; // 0x0C + private string cache_path; // 0x10 + private string configuration_file; // 0x14 + private string dynamic_base; // 0x18 + private string license_file; // 0x1C + private string private_bin_path; // 0x20 + private string private_bin_path_probe; // 0x24 + private string shadow_copy_directories; // 0x28 + private string shadow_copy_files; // 0x2C + private bool publisher_policy; // 0x30 + private bool path_changed; // 0x31 + private LoaderOptimization loader_optimization; // 0x34 + private bool disallow_binding_redirects; // 0x38 + private bool disallow_code_downloads; // 0x39 + private ActivationArguments _activationArguments; // 0x3C + private AppDomainInitializer domain_initializer; // 0x40 + [NonSerialized] private ApplicationTrust application_trust; // 0x44 + private string[] domain_initializer_args; // 0x48 + private SecurityElement application_trust_xml; // 0x4C + private bool disallow_appbase_probe; // 0x50 + private byte[] configuration_bytes; // 0x54 + + // Properties + public string ApplicationBase { get; set; } // 0x0026C6D0 0x0027118C + public string ApplicationName { get; set; } // 0x00271194 0x0027119C + public string CachePath { get; set; } // 0x002711A4 0x002711AC + public string ConfigurationFile { get; set; } // 0x0026F8CC 0x002711B4 + public bool DisallowPublisherPolicy { get; set; } // 0x002711BC 0x002711C4 + public string DynamicBase { get; set; } // 0x0026C964 0x002711CC + public string LicenseFile { get; set; } // 0x002712FC 0x00271304 + public LoaderOptimization LoaderOptimization { get; set; } // 0x0027130C 0x00271314 + public string PrivateBinPath { get; set; } // 0x0027131C 0x0026D1F0 + public string PrivateBinPathProbe { get; set; } // 0x00271324 0x0027132C + public string ShadowCopyDirectories { get; set; } // 0x0027133C 0x00271344 + public string ShadowCopyFiles { get; set; } // 0x0027134C 0x00271354 + public bool DisallowBindingRedirects { get; set; } // 0x0027135C 0x00271364 + public bool DisallowCodeDownload { get; set; } // 0x0027136C 0x00271374 + public ActivationArguments ActivationArguments { get; set; } // 0x0027137C 0x00271384 + public AppDomainInitializer AppDomainInitializer { get; set; } // 0x0027138C 0x00271394 + public string[] AppDomainInitializerArguments { get; set; } // 0x0027139C 0x002713A4 + public ApplicationTrust ApplicationTrust { get; set; } // 0x002713AC 0x00271440 + public bool DisallowApplicationBaseProbing { get; set; } // 0x002714A0 0x002714A8 + + // Methods + public void .ctor(); // 0x0026F8C4 + internal void .ctor(AppDomainSetup setup); // 0x0026C360 + public void .ctor(ActivationArguments activationArguments); // 0x00270EE8 + public void .ctor(ActivationContext activationContext); // 0x00270F08 + private static string GetAppBase(string appBase); // 0x00270F8C + public byte[] GetConfigurationBytes(); // 0x002714B0 + public void SetConfigurationBytes(byte[] value); // 0x0027152C +} + +// Namespace: System +[Serializable] +public class AppDomainUnloadedException : SystemException // TypeDefIndex: 1604 +{ + // Fields + private const int Result = -2146234348; // 0x00 + + // Methods + public void .ctor(); // 0x0026ECF0 + public void .ctor(string message); // 0x00271534 + public void .ctor(string message, Exception innerException); // 0x00271558 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x0027157C +} + +// Namespace: System +[Serializable] +public class ApplicationException : Exception // TypeDefIndex: 1605 +{ + // Fields + private const int Result = -2146232832; // 0x00 + + // Methods + public void .ctor(); // 0x0027159C + public void .ctor(string message); // 0x0027161C + public void .ctor(string message, Exception innerException); // 0x00271640 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x00271664 +} + +// Namespace: System +[Serializable] +public sealed class ApplicationId // TypeDefIndex: 1606 +{ + // Fields + private byte[] _token; // 0x08 + private string _name; // 0x0C + private Version _version; // 0x10 + private string _proc; // 0x14 + private string _culture; // 0x18 + + // Properties + public string Culture { get; } // 0x0027185C + public string Name { get; } // 0x00271864 + public string ProcessorArchitecture { get; } // 0x0027186C + public byte[] PublicKeyToken { get; } // 0x00271874 + public Version Version { get; } // 0x0027192C + + // Methods + public void .ctor(byte[] publicKeyToken, string name, Version version, string processorArchitecture, string culture); // 0x00271684 + public ApplicationId Copy(); // 0x00271934 + public override bool Equals(object o); // 0x002719CC + public override int GetHashCode(); // 0x00271C68 + public override string ToString(); // 0x00271D2C +} + +// Namespace: System +[Serializable] +public sealed class ApplicationIdentity : ISerializable // TypeDefIndex: 1607 +{ + // Fields + private string _fullName; // 0x08 + private string _codeBase; // 0x0C + + // Properties + public string CodeBase { get; } // 0x00272124 + public string FullName { get; } // 0x0027212C + + // Methods + public void .ctor(string applicationIdentityFullName); // 0x00271F54 + private void System.Runtime.Serialization.ISerializable.GetObjectData(SerializationInfo info, StreamingContext context); // 0x00272080 + public override string ToString(); // 0x00272134 +} + +// Namespace: System +[Serializable] +public class ArgumentException : SystemException // TypeDefIndex: 1608 +{ + // Fields + private const int Result = -2147024809; // 0x00 + private string param_name; // 0x34 + + // Properties + public virtual string ParamName { get; } // 0x00272700 + public override string Message { get; } // 0x00272708 + + // Methods + public void .ctor(); // 0x00272580 + public void .ctor(string message); // 0x00262260 + public void .ctor(string message, Exception innerException); // 0x00272600 + public void .ctor(string message, string paramName); // 0x0026B690 + public void .ctor(string message, string paramName, Exception innerException); // 0x00272624 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x00272654 + public override void GetObjectData(SerializationInfo info, StreamingContext context); // 0x00272858 +} + +// Namespace: System +[Serializable] +public class ArgumentNullException : ArgumentException // TypeDefIndex: 1609 +{ + // Fields + private const int Result = -2147467261; // 0x00 + + // Methods + public void .ctor(); // 0x0027291C + public void .ctor(string paramName); // 0x00259C90 + public void .ctor(string paramName, string message); // 0x0027299C + public void .ctor(string message, Exception innerException); // 0x002729CC + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x002729F0 +} + +// Namespace: System +[Serializable] +public class ArgumentOutOfRangeException : ArgumentException // TypeDefIndex: 1610 +{ + // Fields + private const int Result = -2146233086; // 0x00 + private object actual_value; // 0x38 + + // Properties + public virtual object ActualValue { get; } // 0x00272C40 + public override string Message { get; } // 0x00272C48 + + // Methods + public void .ctor(); // 0x00272A08 + public void .ctor(string paramName); // 0x00272A88 + public void .ctor(string paramName, string message); // 0x00272B10 + public void .ctor(string paramName, object actualValue, string message); // 0x00272B40 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x00272B78 + public void .ctor(string message, Exception innerException); // 0x00272C1C + public override void GetObjectData(SerializationInfo info, StreamingContext context); // 0x00272D04 +} + +// Namespace: System +[Serializable] +public class ArithmeticException : SystemException // TypeDefIndex: 1611 +{ + // Fields + private const int Result = -2147024362; // 0x00 + + // Methods + public void .ctor(); // 0x004EC764 + public void .ctor(string message); // 0x004EC7E4 + public void .ctor(string message, Exception innerException); // 0x004EC808 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x004EC82C +} + +// Namespace: System +[Serializable] +public struct ArraySegment`1 // TypeDefIndex: 1612 +{ + // Fields + private T[] array; // 0x00 + private int offset; // 0x00 + private int count; // 0x00 + + // Properties + public T[] Array { get; } + public int Offset { get; } + public int Count { get; } + + // Methods + public void .ctor(T[] array, int offset, int count); + public void .ctor(T[] array); + public override bool Equals(object obj); + public bool Equals(ArraySegment`1 obj); + public override int GetHashCode(); + public static bool op_Equality(ArraySegment`1 a, ArraySegment`1 b); + public static bool op_Inequality(ArraySegment`1 a, ArraySegment`1 b); +} + +// Namespace: System +[Serializable] +public class ArrayTypeMismatchException : SystemException // TypeDefIndex: 1613 +{ + // Fields + private const int Result = -2146233085; // 0x00 + + // Methods + public void .ctor(); // 0x004F3C40 + public void .ctor(string message); // 0x004F09B0 + public void .ctor(string message, Exception innerException); // 0x004F3CC0 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x004F3CE4 +} + +// Namespace: System +public class AssemblyLoadEventArgs : EventArgs // TypeDefIndex: 1614 +{ + // Fields + private Assembly m_loadedAssembly; // 0x08 + + // Properties + public Assembly LoadedAssembly { get; } // 0x004F3D90 + + // Methods + public void .ctor(Assembly loadedAssembly); // 0x004F3D04 +} + +// Namespace: System +[Serializable] +public enum AttributeTargets // TypeDefIndex: 1615 +{ + Assembly = 1, + Module = 2, + Class = 4, + Struct = 8, + Enum = 16, + Constructor = 32, + Method = 64, + Property = 128, + Field = 256, + Event = 512, + Interface = 1024, + Parameter = 2048, + Delegate = 4096, + ReturnValue = 8192, + GenericParameter = 16384, + All = 32767 +} + +// Namespace: System +[Serializable] +public class BadImageFormatException : SystemException // TypeDefIndex: 1616 +{ + // Fields + private const int Result = -2147024885; // 0x00 + private string fileName; // 0x34 + private string fusionLog; // 0x38 + + // Properties + public override string Message { get; } // 0x004F5B14 + public string FileName { get; } // 0x004F5C80 + public string FusionLog { get; } // 0x004F5C88 + + // Methods + public void .ctor(); // 0x004F58F8 + public void .ctor(string message); // 0x004F5978 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x004F599C + public void .ctor(string message, Exception inner); // 0x004F5A94 + public void .ctor(string message, string fileName); // 0x004F5AB8 + public void .ctor(string message, string fileName, Exception inner); // 0x004F5AE4 + public override void GetObjectData(SerializationInfo info, StreamingContext context); // 0x004F5C90 + public override string ToString(); // 0x004F5D74 +} + +// Namespace: System +public enum Base64FormattingOptions // TypeDefIndex: 1617 +{ + None = 0, + InsertLineBreaks = 1 +} + +// Namespace: System +public static class BitConverter // TypeDefIndex: 1618 +{ + // Fields + private static readonly bool SwappedWordsInDouble; // 0x00 + public static readonly bool IsLittleEndian; // 0x01 + + // Methods + private static void .cctor(); // 0x004F5FC4 + private static bool AmILittleEndian(); // 0x004F6088 + private static bool DoubleWordsAreSwapped(); // 0x004F605C + public static long DoubleToInt64Bits(double value); // 0x004F6090 + public static double Int64BitsToDouble(long value); // 0x004F63F0 + internal static double InternalInt64BitsToDouble(long value); // 0x004F686C + private static byte[] GetBytes(void * ptr, int count); // 0x004F6EC4 + public static byte[] GetBytes(bool value); // 0x004F6F84 + public static byte[] GetBytes(char value); // 0x004F7010 + public static byte[] GetBytes(short value); // 0x004F709C + public static byte[] GetBytes(int value); // 0x004F7128 + public static byte[] GetBytes(long value); // 0x004F6480 + public static byte[] GetBytes(ushort value); // 0x004F71B4 + public static byte[] GetBytes(uint value); // 0x004F7240 + public static byte[] GetBytes(ulong value); // 0x004F72CC + public static byte[] GetBytes(float value); // 0x004F735C + public static byte[] GetBytes(double value); // 0x004F6120 + private static void PutBytes(void * dst, byte[] src, int start_index, int count); // 0x004F73E8 + public static bool ToBoolean(byte[] value, int startIndex); // 0x004F75A0 + public static char ToChar(byte[] value, int startIndex); // 0x004F76E0 + public static short ToInt16(byte[] value, int startIndex); // 0x004F7784 + public static int ToInt32(byte[] value, int startIndex); // 0x004F7828 + public static long ToInt64(byte[] value, int startIndex); // 0x004F6344 + public static ushort ToUInt16(byte[] value, int startIndex); // 0x004F78CC + public static uint ToUInt32(byte[] value, int startIndex); // 0x004F7970 + public static ulong ToUInt64(byte[] value, int startIndex); // 0x004F7A14 + public static float ToSingle(byte[] value, int startIndex); // 0x004F7AC0 + public static double ToDouble(byte[] value, int startIndex); // 0x004F6510 + internal static double SwappableToDouble(byte[] value, int startIndex); // 0x004F68FC + public static string ToString(byte[] value); // 0x004F7B64 + public static string ToString(byte[] value, int startIndex); // 0x004F803C + public static string ToString(byte[] value, int startIndex, int length); // 0x004F7C4C +} + +// Namespace: System +public static class Buffer // TypeDefIndex: 1619 +{ + // Methods + public static int ByteLength(Array array); // 0x004F9200 + public static byte GetByte(Array array, int index); // 0x004F9314 + public static void SetByte(Array array, int index, byte value); // 0x004F9404 + public static void BlockCopy(Array src, int srcOffset, Array dst, int dstOffset, int count); // 0x004F94FC + private static int ByteLengthInternal(Array array); // 0x004F9310 + private static byte GetByteInternal(Array array, int index); // 0x004F9400 + private static void SetByteInternal(Array array, int index, int value); // 0x004F94F8 + internal static bool BlockCopyInternal(Array src, int src_offset, Array dest, int dest_offset, int count); // 0x004F97F0 +} + +// Namespace: System +[Serializable] +public class CannotUnloadAppDomainException : SystemException // TypeDefIndex: 1620 +{ + // Fields + private const int Result = -2146234347; // 0x00 + + // Methods + public void .ctor(); // 0x004FA564 + public void .ctor(string message); // 0x004FA5E4 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x004FA608 + public void .ctor(string message, Exception innerException); // 0x004FA628 +} + +// Namespace: System +[Serializable] +public sealed class CharEnumerator : IEnumerator, IDisposable, ICloneable, IEnumerator`1 // TypeDefIndex: 1621 +{ + // Fields + private string str; // 0x08 + private int index; // 0x0C + private int length; // 0x10 + + // Properties + private object System.Collections.IEnumerator.Current { get; } // 0x004FD53C + public char Current { get; } // 0x004FD5B8 + + // Methods + internal void .ctor(string s); // 0x004FD4FC + private void System.IDisposable.Dispose(); // 0x004FD6A4 + public object Clone(); // 0x004FD6A8 + public bool MoveNext(); // 0x004FD734 + public void Reset(); // 0x004FD758 +} + +// Namespace: System +public static class Console // TypeDefIndex: 1622 +{ + // Fields + internal static TextWriter stdout; // 0x00 + private static TextWriter stderr; // 0x04 + private static TextReader stdin; // 0x08 + private static Encoding inputEncoding; // 0x0C + private static Encoding outputEncoding; // 0x10 + + // Properties + public static TextWriter Error { get; } // 0x00397EEC + public static TextWriter Out { get; } // 0x00397F78 + public static TextReader In { get; } // 0x00398004 + public static Encoding InputEncoding { get; set; } // 0x0039A8C0 0x0039A94C + public static Encoding OutputEncoding { get; set; } // 0x0039A9EC 0x0039AA78 + + // Methods + private static void .cctor(); // 0x00397748 + private static void SetEncodings(Encoding inputEncoding, Encoding outputEncoding); // 0x003978B8 + public static Stream OpenStandardError(); // 0x00398090 + private static Stream Open(IntPtr handle, FileAccess access, int bufferSize); // 0x0039810C + public static Stream OpenStandardError(int bufferSize); // 0x00397CAC + public static Stream OpenStandardInput(); // 0x00398260 + public static Stream OpenStandardInput(int bufferSize); // 0x00397E2C + public static Stream OpenStandardOutput(); // 0x003982DC + public static Stream OpenStandardOutput(int bufferSize); // 0x00397D6C + public static void SetError(TextWriter newError); // 0x00398358 + public static void SetIn(TextReader newIn); // 0x00398448 + public static void SetOut(TextWriter newOut); // 0x00398538 + public static void Write(bool value); // 0x00398628 + public static void Write(char value); // 0x003986E0 + public static void Write(char[] buffer); // 0x00398798 + public static void Write(Decimal value); // 0x00398850 + public static void Write(double value); // 0x0039892C + public static void Write(int value); // 0x003989F8 + public static void Write(long value); // 0x00398AB0 + public static void Write(object value); // 0x00398B7C + public static void Write(float value); // 0x00398C34 + public static void Write(string value); // 0x00398CEC + public static void Write(uint value); // 0x00398DA4 + public static void Write(ulong value); // 0x00398E5C + public static void Write(string format, object arg0); // 0x00398F28 + public static void Write(string format, object[] arg); // 0x00398FE8 + public static void Write(char[] buffer, int index, int count); // 0x003990A8 + public static void Write(string format, object arg0, object arg1); // 0x0039917C + public static void Write(string format, object arg0, object arg1, object arg2); // 0x00399250 + public static void Write(string format, object arg0, object arg1, object arg2, object arg3); // 0x0039932C + public static void WriteLine(); // 0x0039966C + public static void WriteLine(bool value); // 0x0039971C + public static void WriteLine(char value); // 0x003997D4 + public static void WriteLine(char[] buffer); // 0x0039988C + public static void WriteLine(Decimal value); // 0x00399944 + public static void WriteLine(double value); // 0x00399A20 + public static void WriteLine(int value); // 0x00399AEC + public static void WriteLine(long value); // 0x00399BA4 + public static void WriteLine(object value); // 0x00399C70 + public static void WriteLine(float value); // 0x00399D28 + public static void WriteLine(string value); // 0x00399DE0 + public static void WriteLine(uint value); // 0x00399E98 + public static void WriteLine(ulong value); // 0x00399F50 + public static void WriteLine(string format, object arg0); // 0x0039A01C + public static void WriteLine(string format, object[] arg); // 0x0039A0DC + public static void WriteLine(char[] buffer, int index, int count); // 0x0039A19C + public static void WriteLine(string format, object arg0, object arg1); // 0x0039A270 + public static void WriteLine(string format, object arg0, object arg1, object arg2); // 0x0039A344 + public static void WriteLine(string format, object arg0, object arg1, object arg2, object arg3); // 0x0039A420 + public static int Read(); // 0x0039A760 + public static string ReadLine(); // 0x0039A810 +} + +// Namespace: System +[Serializable] +public sealed class ConsoleCancelEventArgs : EventArgs // TypeDefIndex: 1623 +{ + // Fields + private bool cancel; // 0x08 + private ConsoleSpecialKey specialKey; // 0x0C + + // Properties + public bool Cancel { get; set; } // 0x0039ABA4 0x0039ABAC + public ConsoleSpecialKey SpecialKey { get; } // 0x0039ABB4 + + // Methods + internal void .ctor(ConsoleSpecialKey key); // 0x0039AB18 +} + +// Namespace: System +[Serializable] +public enum ConsoleColor // TypeDefIndex: 1624 +{ + Black = 0, + DarkBlue = 1, + DarkGreen = 2, + DarkCyan = 3, + DarkRed = 4, + DarkMagenta = 5, + DarkYellow = 6, + Gray = 7, + DarkGray = 8, + Blue = 9, + Green = 10, + Cyan = 11, + Red = 12, + Magenta = 13, + Yellow = 14, + White = 15 +} + +// Namespace: System +[Serializable] +public enum ConsoleKey // TypeDefIndex: 1625 +{ + Backspace = 8, + Tab = 9, + Clear = 12, + Enter = 13, + Pause = 19, + Escape = 27, + Spacebar = 32, + PageUp = 33, + PageDown = 34, + End = 35, + Home = 36, + LeftArrow = 37, + UpArrow = 38, + RightArrow = 39, + DownArrow = 40, + Select = 41, + Print = 42, + Execute = 43, + PrintScreen = 44, + Insert = 45, + Delete = 46, + Help = 47, + D0 = 48, + D1 = 49, + D2 = 50, + D3 = 51, + D4 = 52, + D5 = 53, + D6 = 54, + D7 = 55, + D8 = 56, + D9 = 57, + A = 65, + B = 66, + C = 67, + D = 68, + E = 69, + F = 70, + G = 71, + H = 72, + I = 73, + J = 74, + K = 75, + L = 76, + M = 77, + N = 78, + O = 79, + P = 80, + Q = 81, + R = 82, + S = 83, + T = 84, + U = 85, + V = 86, + W = 87, + X = 88, + Y = 89, + Z = 90, + LeftWindows = 91, + RightWindows = 92, + Applications = 93, + Sleep = 95, + NumPad0 = 96, + NumPad1 = 97, + NumPad2 = 98, + NumPad3 = 99, + NumPad4 = 100, + NumPad5 = 101, + NumPad6 = 102, + NumPad7 = 103, + NumPad8 = 104, + NumPad9 = 105, + Multiply = 106, + Add = 107, + Separator = 108, + Subtract = 109, + Decimal = 110, + Divide = 111, + F1 = 112, + F2 = 113, + F3 = 114, + F4 = 115, + F5 = 116, + F6 = 117, + F7 = 118, + F8 = 119, + F9 = 120, + F10 = 121, + F11 = 122, + F12 = 123, + F13 = 124, + F14 = 125, + F15 = 126, + F16 = 127, + F17 = 128, + F18 = 129, + F19 = 130, + F20 = 131, + F21 = 132, + F22 = 133, + F23 = 134, + F24 = 135, + BrowserBack = 166, + BrowserForward = 167, + BrowserRefresh = 168, + BrowserStop = 169, + BrowserSearch = 170, + BrowserFavorites = 171, + BrowserHome = 172, + VolumeMute = 173, + VolumeDown = 174, + VolumeUp = 175, + MediaNext = 176, + MediaPrevious = 177, + MediaStop = 178, + MediaPlay = 179, + LaunchMail = 180, + LaunchMediaSelect = 181, + LaunchApp1 = 182, + LaunchApp2 = 183, + Oem1 = 186, + OemPlus = 187, + OemComma = 188, + OemMinus = 189, + OemPeriod = 190, + Oem2 = 191, + Oem3 = 192, + Oem4 = 219, + Oem5 = 220, + Oem6 = 221, + Oem7 = 222, + Oem8 = 223, + Oem102 = 226, + Process = 229, + Packet = 231, + Attention = 246, + CrSel = 247, + ExSel = 248, + EraseEndOfFile = 249, + Play = 250, + Zoom = 251, + NoName = 252, + Pa1 = 253, + OemClear = 254 +} + +// Namespace: System +[Serializable] +public struct ConsoleKeyInfo // TypeDefIndex: 1626 +{ + // Fields + internal static ConsoleKeyInfo Empty; // 0x00 + private ConsoleKey key; // 0x08 + private char keychar; // 0x0C + private ConsoleModifiers modifiers; // 0x10 + + // Properties + public ConsoleKey Key { get; } // 0x000A7604 + public char KeyChar { get; } // 0x000A760C + public ConsoleModifiers Modifiers { get; } // 0x000A7614 + + // Methods + public void .ctor(char keyChar, ConsoleKey key, bool shift, bool alt, bool control); // 0x000A75AC + internal void .ctor(ConsoleKeyInfo other); // 0x000A75D4 + private static void .cctor(); // 0x0039B008 + internal void SetKey(ConsoleKey key); // 0x000A75E4 + internal void SetKeyChar(char keyChar); // 0x000A75EC + internal void SetModifiers(bool shift, bool alt, bool control); // 0x000A75F4 + public override bool Equals(object value); // 0x000A761C + public bool Equals(ConsoleKeyInfo obj); // 0x000A7624 + public override int GetHashCode(); // 0x000A7664 + public static bool op_Equality(ConsoleKeyInfo a, ConsoleKeyInfo b); // 0x0039B2E8 + public static bool op_Inequality(ConsoleKeyInfo a, ConsoleKeyInfo b); // 0x0039B318 +} + +// Namespace: System +[Serializable] +public enum ConsoleModifiers // TypeDefIndex: 1627 +{ + Alt = 1, + Shift = 2, + Control = 4 +} + +// Namespace: System +[Serializable] +public enum ConsoleSpecialKey // TypeDefIndex: 1628 +{ + ControlC = 0, + ControlBreak = 1 +} + +// Namespace: System +[Serializable] +public abstract class ContextBoundObject : MarshalByRefObject // TypeDefIndex: 1629 +{ + // Methods + protected void .ctor(); // 0x0039B348 +} + +// Namespace: System +[Serializable] +public class ContextMarshalException : SystemException // TypeDefIndex: 1630 +{ + // Fields + private const int Result = -2146233084; // 0x00 + + // Methods + public void .ctor(); // 0x0039B350 + public void .ctor(string message); // 0x0039B3D0 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x0039B3F4 + public void .ctor(string message, Exception inner); // 0x0039B414 +} + +// Namespace: System +[Serializable] +public class ContextStaticAttribute : Attribute // TypeDefIndex: 1631 +{ + // Methods + public void .ctor(); // 0x0039B438 +} + +// Namespace: System +internal class ControlCharacters // TypeDefIndex: 1632 +{ + // Fields + public const int Intr = 0; // 0x00 + public const int Quit = 1; // 0x00 + public const int Erase = 2; // 0x00 + public const int Kill = 3; // 0x00 + public const int EOF = 4; // 0x00 + public const int Time = 5; // 0x00 + public const int Min = 6; // 0x00 + public const int SWTC = 7; // 0x00 + public const int Start = 8; // 0x00 + public const int Stop = 9; // 0x00 + public const int Susp = 10; // 0x00 + public const int EOL = 11; // 0x00 + public const int Reprint = 12; // 0x00 + public const int Discard = 13; // 0x00 + public const int WErase = 14; // 0x00 + public const int LNext = 15; // 0x00 + public const int EOL2 = 16; // 0x00 + + // Methods + public void .ctor(); // 0x0039B440 +} + +// Namespace: System +public static class Convert // TypeDefIndex: 1633 +{ + // Fields + private const int MaxBytesPerLine = 57; // 0x00 + public static readonly object DBNull; // 0x00 + private static readonly Type[] conversionTable; // 0x04 + + // Methods + private static void .cctor(); // 0x0039B448 + private static byte[] InternalFromBase64String(string str, bool allowWhitespaceOnly); // 0x0039BC8C + private static byte[] InternalFromBase64CharArray(char[] arr, int offset, int length); // 0x0039BC90 + public static byte[] FromBase64CharArray(char[] inArray, int offset, int length); // 0x0039BC94 + public static byte[] FromBase64String(string s); // 0x0039BE70 + public static TypeCode GetTypeCode(object value); // 0x0039BF7C + public static bool IsDBNull(object value); // 0x0039C020 + public static int ToBase64CharArray(byte[] inArray, int offsetIn, int length, char[] outArray, int offsetOut); // 0x0039C09C + public static string ToBase64String(byte[] inArray); // 0x0039C340 + public static string ToBase64String(byte[] inArray, int offset, int length); // 0x0039C428 + public static string ToBase64String(byte[] inArray, Base64FormattingOptions options); // 0x0039C5E0 + public static string ToBase64String(byte[] inArray, int offset, int length, Base64FormattingOptions options); // 0x0039C6D8 + public static int ToBase64CharArray(byte[] inArray, int offsetIn, int length, char[] outArray, int offsetOut, Base64FormattingOptions options); // 0x0039CBD4 + private static StringBuilder ToBase64StringBuilderWithLine(byte[] inArray, int offset, int length); // 0x0039C964 + public static bool ToBoolean(bool value); // 0x0039CF5C + public static bool ToBoolean(byte value); // 0x0039CF60 + public static bool ToBoolean(char value); // 0x0039CF6C + public static bool ToBoolean(DateTime value); // 0x0039D014 + public static bool ToBoolean(Decimal value); // 0x0039D0BC + public static bool ToBoolean(double value); // 0x0039D184 + public static bool ToBoolean(float value); // 0x0039D19C + public static bool ToBoolean(int value); // 0x0039D1B4 + public static bool ToBoolean(long value); // 0x0039D1C0 + public static bool ToBoolean(sbyte value); // 0x0039D1CC + public static bool ToBoolean(short value); // 0x0039D1D8 + public static bool ToBoolean(string value); // 0x0039D1E4 + public static bool ToBoolean(string value, IFormatProvider provider); // 0x0039D278 + public static bool ToBoolean(uint value); // 0x0039D30C + public static bool ToBoolean(ulong value); // 0x0039D318 + public static bool ToBoolean(ushort value); // 0x0039D324 + public static bool ToBoolean(object value); // 0x0039D330 + public static bool ToBoolean(object value, IFormatProvider provider); // 0x0039D3C4 + public static byte ToByte(bool value); // 0x0039D504 + public static byte ToByte(byte value); // 0x0039D508 + public static byte ToByte(char value); // 0x0039D50C + public static byte ToByte(DateTime value); // 0x0039D5C4 + public static byte ToByte(Decimal value); // 0x0039D660 + public static byte ToByte(double value); // 0x0039D868 + public static byte ToByte(float value); // 0x0039DA6C + public static byte ToByte(int value); // 0x0039DC60 + public static byte ToByte(long value); // 0x0039DD18 + public static byte ToByte(sbyte value); // 0x0039DDD8 + public static byte ToByte(short value); // 0x0039DE90 + public static byte ToByte(string value); // 0x0039DF4C + public static byte ToByte(string value, IFormatProvider provider); // 0x0039DF60 + public static byte ToByte(string value, int fromBase); // 0x0039DF74 + public static byte ToByte(uint value); // 0x0039E6F4 + public static byte ToByte(ulong value); // 0x0039E7AC + public static byte ToByte(ushort value); // 0x0039E86C + public static byte ToByte(object value); // 0x0039E924 + public static byte ToByte(object value, IFormatProvider provider); // 0x0039E9B8 + public static char ToChar(bool value); // 0x0039EAF8 + public static char ToChar(byte value); // 0x0039EB94 + public static char ToChar(char value); // 0x0039EB98 + public static char ToChar(DateTime value); // 0x0039EB9C + public static char ToChar(Decimal value); // 0x0039EC38 + public static char ToChar(double value); // 0x0039ECD4 + public static char ToChar(int value); // 0x0039ED70 + public static char ToChar(long value); // 0x0039EE28 + public static char ToChar(float value); // 0x0039EEE8 + public static char ToChar(sbyte value); // 0x0039EF84 + public static char ToChar(short value); // 0x0039F03C + public static char ToChar(string value); // 0x0039F0F4 + public static char ToChar(string value, IFormatProvider provider); // 0x0039F178 + public static char ToChar(uint value); // 0x0039F1FC + public static char ToChar(ulong value); // 0x0039F2B4 + public static char ToChar(ushort value); // 0x0039F374 + public static char ToChar(object value); // 0x0039F378 + public static char ToChar(object value, IFormatProvider provider); // 0x0039F40C + public static DateTime ToDateTime(string value); // 0x0039F54C + public static DateTime ToDateTime(string value, IFormatProvider provider); // 0x0039F620 + public static DateTime ToDateTime(bool value); // 0x0039F6FC + public static DateTime ToDateTime(byte value); // 0x0039F798 + public static DateTime ToDateTime(char value); // 0x0039F834 + public static DateTime ToDateTime(DateTime value); // 0x0039F8D0 + public static DateTime ToDateTime(Decimal value); // 0x0039F8E4 + public static DateTime ToDateTime(double value); // 0x0039F980 + public static DateTime ToDateTime(short value); // 0x0039FA1C + public static DateTime ToDateTime(int value); // 0x0039FAB8 + public static DateTime ToDateTime(long value); // 0x0039FB54 + public static DateTime ToDateTime(float value); // 0x0039FBF0 + public static DateTime ToDateTime(object value); // 0x0039FC8C + public static DateTime ToDateTime(object value, IFormatProvider provider); // 0x0039FD70 + public static DateTime ToDateTime(sbyte value); // 0x0039FF00 + public static DateTime ToDateTime(ushort value); // 0x0039FF9C + public static DateTime ToDateTime(uint value); // 0x003A0038 + public static DateTime ToDateTime(ulong value); // 0x003A00D4 + public static Decimal ToDecimal(bool value); // 0x003A0170 + public static Decimal ToDecimal(byte value); // 0x003A01FC + public static Decimal ToDecimal(char value); // 0x003A0288 + public static Decimal ToDecimal(DateTime value); // 0x003A0324 + public static Decimal ToDecimal(Decimal value); // 0x003A03C0 + public static Decimal ToDecimal(double value); // 0x003A03CC + public static Decimal ToDecimal(float value); // 0x003A046C + public static Decimal ToDecimal(int value); // 0x003A04F8 + public static Decimal ToDecimal(long value); // 0x003A0584 + public static Decimal ToDecimal(sbyte value); // 0x003A0624 + public static Decimal ToDecimal(short value); // 0x003A06B0 + public static Decimal ToDecimal(string value); // 0x003A073C + public static Decimal ToDecimal(string value, IFormatProvider provider); // 0x003A07EC + public static Decimal ToDecimal(uint value); // 0x003A08A4 + public static Decimal ToDecimal(ulong value); // 0x003A0930 + public static Decimal ToDecimal(ushort value); // 0x003A09D0 + public static Decimal ToDecimal(object value); // 0x003A0A5C + public static Decimal ToDecimal(object value, IFormatProvider provider); // 0x003A0B0C + public static double ToDouble(bool value); // 0x003A0C68 + public static double ToDouble(byte value); // 0x003A0C80 + public static double ToDouble(char value); // 0x003A0C90 + public static double ToDouble(DateTime value); // 0x003A0D2C + public static double ToDouble(Decimal value); // 0x003A0DC8 + public static double ToDouble(double value); // 0x003A0E70 + public static double ToDouble(float value); // 0x003A0E74 + public static double ToDouble(int value); // 0x003A0E84 + public static double ToDouble(long value); // 0x003A0E94 + public static double ToDouble(sbyte value); // 0x003A0EA4 + public static double ToDouble(short value); // 0x003A0EB4 + public static double ToDouble(string value); // 0x003A0EC4 + public static double ToDouble(string value, IFormatProvider provider); // 0x003A0EE0 + public static double ToDouble(uint value); // 0x003A0EFC + public static double ToDouble(ulong value); // 0x003A0F0C + public static double ToDouble(ushort value); // 0x003A0F1C + public static double ToDouble(object value); // 0x003A0F2C + public static double ToDouble(object value, IFormatProvider provider); // 0x003A0FC4 + public static short ToInt16(bool value); // 0x003A1108 + public static short ToInt16(byte value); // 0x003A110C + public static short ToInt16(char value); // 0x003A1110 + public static short ToInt16(DateTime value); // 0x003A11C8 + public static short ToInt16(Decimal value); // 0x003A1264 + public static short ToInt16(double value); // 0x003A1470 + public static short ToInt16(float value); // 0x003A1600 + public static short ToInt16(int value); // 0x003A177C + public static short ToInt16(long value); // 0x003A1838 + public static short ToInt16(sbyte value); // 0x003A1900 + public static short ToInt16(short value); // 0x003A1904 + public static short ToInt16(string value); // 0x003A1908 + public static short ToInt16(string value, IFormatProvider provider); // 0x003A191C + public static short ToInt16(string value, int fromBase); // 0x003A1930 + public static short ToInt16(uint value); // 0x003A1A98 + public static short ToInt16(ulong value); // 0x003A1B50 + public static short ToInt16(ushort value); // 0x003A1C10 + public static short ToInt16(object value); // 0x003A1CC8 + public static short ToInt16(object value, IFormatProvider provider); // 0x003A1D5C + public static int ToInt32(bool value); // 0x003A1E9C + public static int ToInt32(byte value); // 0x003A1EA0 + public static int ToInt32(char value); // 0x003A1EA4 + public static int ToInt32(DateTime value); // 0x003A1EA8 + public static int ToInt32(Decimal value); // 0x003A1F44 + public static int ToInt32(double value); // 0x003A2148 + public static int ToInt32(float value); // 0x003A22F8 + public static int ToInt32(int value); // 0x003A24A0 + public static int ToInt32(long value); // 0x003A24A4 + public static int ToInt32(sbyte value); // 0x003A2564 + public static int ToInt32(short value); // 0x003A2568 + public static int ToInt32(string value); // 0x003A256C + public static int ToInt32(string value, IFormatProvider provider); // 0x003A2580 + public static int ToInt32(string value, int fromBase); // 0x003A2594 + public static int ToInt32(uint value); // 0x003A2620 + public static int ToInt32(ulong value); // 0x003A26D8 + public static int ToInt32(ushort value); // 0x003A2798 + public static int ToInt32(object value); // 0x003A279C + public static int ToInt32(object value, IFormatProvider provider); // 0x003A2830 + public static long ToInt64(bool value); // 0x003A2970 + public static long ToInt64(byte value); // 0x003A2978 + public static long ToInt64(char value); // 0x003A2980 + public static long ToInt64(DateTime value); // 0x003A2988 + public static long ToInt64(Decimal value); // 0x003A2A24 + public static long ToInt64(double value); // 0x003A2C48 + public static long ToInt64(float value); // 0x003A2DD8 + public static long ToInt64(int value); // 0x003A2F54 + public static long ToInt64(long value); // 0x003A2F5C + public static long ToInt64(sbyte value); // 0x003A2F60 + public static long ToInt64(short value); // 0x003A2F68 + public static long ToInt64(string value); // 0x003A2F70 + public static long ToInt64(string value, IFormatProvider provider); // 0x003A2F88 + public static long ToInt64(string value, int fromBase); // 0x003A2FA0 + public static long ToInt64(uint value); // 0x003A36F0 + public static long ToInt64(ulong value); // 0x003A36F8 + public static long ToInt64(ushort value); // 0x003A37B8 + public static long ToInt64(object value); // 0x003A37C0 + public static long ToInt64(object value, IFormatProvider provider); // 0x003A3858 + public static sbyte ToSByte(bool value); // 0x003A399C + public static sbyte ToSByte(byte value); // 0x003A39A0 + public static sbyte ToSByte(char value); // 0x003A3A58 + public static sbyte ToSByte(DateTime value); // 0x003A3B10 + public static sbyte ToSByte(Decimal value); // 0x003A3BAC + public static sbyte ToSByte(double value); // 0x003A3DB0 + public static sbyte ToSByte(float value); // 0x003A3F40 + public static sbyte ToSByte(int value); // 0x003A40BC + public static sbyte ToSByte(long value); // 0x003A4178 + public static sbyte ToSByte(sbyte value); // 0x003A4240 + public static sbyte ToSByte(short value); // 0x003A4244 + public static sbyte ToSByte(string value); // 0x003A4304 + public static sbyte ToSByte(string value, IFormatProvider provider); // 0x003A4318 + public static sbyte ToSByte(string value, int fromBase); // 0x003A43D8 + public static sbyte ToSByte(uint value); // 0x003A44D0 + public static sbyte ToSByte(ulong value); // 0x003A4588 + public static sbyte ToSByte(ushort value); // 0x003A4648 + public static sbyte ToSByte(object value); // 0x003A4700 + public static sbyte ToSByte(object value, IFormatProvider provider); // 0x003A4794 + public static float ToSingle(bool value); // 0x003A48D4 + public static float ToSingle(byte value); // 0x003A48F0 + public static float ToSingle(char value); // 0x003A4900 + public static float ToSingle(DateTime value); // 0x003A499C + public static float ToSingle(Decimal value); // 0x003A4A38 + public static float ToSingle(double value); // 0x003A4AE0 + public static float ToSingle(float value); // 0x003A4AF0 + public static float ToSingle(int value); // 0x003A4AF4 + public static float ToSingle(long value); // 0x003A4B04 + public static float ToSingle(sbyte value); // 0x003A4B14 + public static float ToSingle(short value); // 0x003A4B24 + public static float ToSingle(string value); // 0x003A4B34 + public static float ToSingle(string value, IFormatProvider provider); // 0x003A4B48 + public static float ToSingle(uint value); // 0x003A4B5C + public static float ToSingle(ulong value); // 0x003A4B70 + public static float ToSingle(ushort value); // 0x003A4B8C + public static float ToSingle(object value); // 0x003A4B9C + public static float ToSingle(object value, IFormatProvider provider); // 0x003A4C30 + public static string ToString(bool value); // 0x003A4D70 + public static string ToString(bool value, IFormatProvider provider); // 0x003A4D94 + public static string ToString(byte value); // 0x003A4DB8 + public static string ToString(byte value, IFormatProvider provider); // 0x003A4DDC + public static string ToString(byte value, int toBase); // 0x003A4E00 + public static string ToString(char value); // 0x003A56B0 + public static string ToString(char value, IFormatProvider provider); // 0x003A56D4 + public static string ToString(DateTime value); // 0x003A56F8 + public static string ToString(DateTime value, IFormatProvider provider); // 0x003A5718 + public static string ToString(Decimal value); // 0x003A5748 + public static string ToString(Decimal value, IFormatProvider provider); // 0x003A5768 + public static string ToString(double value); // 0x003A5798 + public static string ToString(double value, IFormatProvider provider); // 0x003A57B8 + public static string ToString(float value); // 0x003A57DC + public static string ToString(float value, IFormatProvider provider); // 0x003A5800 + public static string ToString(int value); // 0x003A5824 + public static string ToString(int value, int toBase); // 0x003A5848 + public static string ToString(int value, IFormatProvider provider); // 0x003A5A40 + public static string ToString(long value); // 0x003A5A64 + public static string ToString(long value, int toBase); // 0x003A5A84 + public static string ToString(long value, IFormatProvider provider); // 0x003A5C88 + public static string ToString(object value); // 0x003A5CAC + public static string ToString(object value, IFormatProvider provider); // 0x003A5D30 + public static string ToString(sbyte value); // 0x003A5F10 + public static string ToString(sbyte value, IFormatProvider provider); // 0x003A5F34 + public static string ToString(short value); // 0x003A5F58 + public static string ToString(short value, int toBase); // 0x003A5F7C + public static string ToString(short value, IFormatProvider provider); // 0x003A6174 + public static string ToString(string value); // 0x003A6198 + public static string ToString(string value, IFormatProvider provider); // 0x003A619C + public static string ToString(uint value); // 0x003A61A0 + public static string ToString(uint value, IFormatProvider provider); // 0x003A61C4 + public static string ToString(ulong value); // 0x003A61E8 + public static string ToString(ulong value, IFormatProvider provider); // 0x003A6208 + public static string ToString(ushort value); // 0x003A622C + public static string ToString(ushort value, IFormatProvider provider); // 0x003A6250 + public static ushort ToUInt16(bool value); // 0x003A6274 + public static ushort ToUInt16(byte value); // 0x003A6278 + public static ushort ToUInt16(char value); // 0x003A627C + public static ushort ToUInt16(DateTime value); // 0x003A6280 + public static ushort ToUInt16(Decimal value); // 0x003A631C + public static ushort ToUInt16(double value); // 0x003A6520 + public static ushort ToUInt16(float value); // 0x003A66A8 + public static ushort ToUInt16(int value); // 0x003A6820 + public static ushort ToUInt16(long value); // 0x003A68D8 + public static ushort ToUInt16(sbyte value); // 0x003A6998 + public static ushort ToUInt16(short value); // 0x003A6A50 + public static ushort ToUInt16(string value); // 0x003A6B08 + public static ushort ToUInt16(string value, IFormatProvider provider); // 0x003A6B1C + public static ushort ToUInt16(string value, int fromBase); // 0x003A6B30 + public static ushort ToUInt16(uint value); // 0x003A6BC0 + public static ushort ToUInt16(ulong value); // 0x003A6C78 + public static ushort ToUInt16(ushort value); // 0x003A6D38 + public static ushort ToUInt16(object value); // 0x003A6D3C + public static ushort ToUInt16(object value, IFormatProvider provider); // 0x003A6DD0 + public static uint ToUInt32(bool value); // 0x003A6F10 + public static uint ToUInt32(byte value); // 0x003A6F14 + public static uint ToUInt32(char value); // 0x003A6F18 + public static uint ToUInt32(DateTime value); // 0x003A6F1C + public static uint ToUInt32(Decimal value); // 0x003A6FB8 + public static uint ToUInt32(double value); // 0x003A71D0 + public static uint ToUInt32(float value); // 0x003A7350 + public static uint ToUInt32(int value); // 0x003A74C4 + public static uint ToUInt32(long value); // 0x003A757C + public static uint ToUInt32(sbyte value); // 0x003A7638 + public static uint ToUInt32(short value); // 0x003A76F0 + public static uint ToUInt32(string value); // 0x003A77A8 + public static uint ToUInt32(string value, IFormatProvider provider); // 0x003A77BC + public static uint ToUInt32(string value, int fromBase); // 0x003A77D0 + public static uint ToUInt32(uint value); // 0x003A785C + public static uint ToUInt32(ulong value); // 0x003A7860 + public static uint ToUInt32(ushort value); // 0x003A791C + public static uint ToUInt32(object value); // 0x003A7920 + public static uint ToUInt32(object value, IFormatProvider provider); // 0x003A79B4 + public static ulong ToUInt64(bool value); // 0x003A7AF4 + public static ulong ToUInt64(byte value); // 0x003A7AFC + public static ulong ToUInt64(char value); // 0x003A7B04 + public static ulong ToUInt64(DateTime value); // 0x003A7B0C + public static ulong ToUInt64(Decimal value); // 0x003A7BA8 + public static ulong ToUInt64(double value); // 0x003A7DC0 + public static ulong ToUInt64(float value); // 0x003A7F40 + public static ulong ToUInt64(int value); // 0x003A80B4 + public static ulong ToUInt64(long value); // 0x003A8170 + public static ulong ToUInt64(sbyte value); // 0x003A8230 + public static ulong ToUInt64(short value); // 0x003A82E0 + public static ulong ToUInt64(string value); // 0x003A839C + public static ulong ToUInt64(string value, IFormatProvider provider); // 0x003A83B4 + public static ulong ToUInt64(string value, int fromBase); // 0x003A83CC + public static ulong ToUInt64(uint value); // 0x003A8458 + public static ulong ToUInt64(ulong value); // 0x003A8460 + public static ulong ToUInt64(ushort value); // 0x003A8464 + public static ulong ToUInt64(object value); // 0x003A846C + public static ulong ToUInt64(object value, IFormatProvider provider); // 0x003A8504 + public static object ChangeType(object value, Type conversionType); // 0x003A8648 + public static object ChangeType(object value, TypeCode typeCode); // 0x003A9DCC + public static object ChangeType(object value, Type conversionType, IFormatProvider provider); // 0x003A9F9C + public static object ChangeType(object value, TypeCode typeCode, IFormatProvider provider); // 0x003AA0A0 + private static bool NotValidBase(int value); // 0x003AA184 + private static int ConvertFromBase(string value, int fromBase, bool unsigned); // 0x0039E04C + private static long ConvertFromBase64(string value, int fromBase, bool unsigned); // 0x003A302C + private static void EndianSwap(byte[] value); // 0x003AA1B4 + private static string ConvertToBase2(byte[] value); // 0x003A4FF8 + private static string ConvertToBase8(byte[] value); // 0x003A51C4 + private static string ConvertToBase16(byte[] value); // 0x003A5448 + internal static object ToType(object value, Type conversionType, IFormatProvider provider, bool try_target_to_type); // 0x003A8808 +} + +// Namespace: System +[Serializable] +public sealed class DBNull : IConvertible, ISerializable // TypeDefIndex: 1634 +{ + // Fields + public static readonly DBNull Value; // 0x00 + + // Methods + private void .ctor(); // 0x004AC538 + private void .ctor(SerializationInfo info, StreamingContext context); // 0x004AC540 + private static void .cctor(); // 0x004AC5D8 + private bool System.IConvertible.ToBoolean(IFormatProvider provider); // 0x004AC64C + private byte System.IConvertible.ToByte(IFormatProvider provider); // 0x004AC6D4 + private char System.IConvertible.ToChar(IFormatProvider provider); // 0x004AC75C + private DateTime System.IConvertible.ToDateTime(IFormatProvider provider); // 0x004AC7E4 + private Decimal System.IConvertible.ToDecimal(IFormatProvider provider); // 0x004AC86C + private double System.IConvertible.ToDouble(IFormatProvider provider); // 0x004AC8F4 + private short System.IConvertible.ToInt16(IFormatProvider provider); // 0x004AC97C + private int System.IConvertible.ToInt32(IFormatProvider provider); // 0x004ACA04 + private long System.IConvertible.ToInt64(IFormatProvider provider); // 0x004ACA8C + private sbyte System.IConvertible.ToSByte(IFormatProvider provider); // 0x004ACB14 + private float System.IConvertible.ToSingle(IFormatProvider provider); // 0x004ACB9C + private object System.IConvertible.ToType(Type targetType, IFormatProvider provider); // 0x004ACC24 + private ushort System.IConvertible.ToUInt16(IFormatProvider provider); // 0x004ACDA0 + private uint System.IConvertible.ToUInt32(IFormatProvider provider); // 0x004ACE28 + private ulong System.IConvertible.ToUInt64(IFormatProvider provider); // 0x004ACEB0 + public void GetObjectData(SerializationInfo info, StreamingContext context); // 0x004ACF38 + public TypeCode GetTypeCode(); // 0x004ACF58 + public override string ToString(); // 0x004ACF60 + public string ToString(IFormatProvider provider); // 0x004ACFEC +} + +// Namespace: System +[Serializable] +public sealed class DataMisalignedException : SystemException // TypeDefIndex: 1635 +{ + // Fields + private const int Result = -2146233023; // 0x00 + + // Methods + public void .ctor(); // 0x004AD078 + public void .ctor(string message); // 0x004AD0F8 + public void .ctor(string message, Exception innerException); // 0x004AD11C +} + +// Namespace: System +[Serializable] +public struct DateTime : IFormattable, IConvertible, IComparable, IComparable`1, IEquatable`1 // TypeDefIndex: 1636 +{ + // Fields + private const int dp400 = 146097; // 0x00 + private const int dp100 = 36524; // 0x00 + private const int dp4 = 1461; // 0x00 + private const long w32file_epoch = 504911232000000000; // 0x00 + private const long MAX_VALUE_TICKS = 3155378975999999999; // 0x00 + internal const long UnixEpoch = 621355968000000000; // 0x00 + private const long ticks18991230 = 599264352000000000; // 0x00 + private const double OAMinValue = -657435; // 0x00 + private const double OAMaxValue = 2958466; // 0x00 + private const string formatExceptionMessage = "String was not recognized as a valid DateTime."; // 0x00 + private TimeSpan ticks; // 0x08 + private DateTimeKind kind; // 0x10 + public static readonly DateTime MaxValue; // 0x00 + public static readonly DateTime MinValue; // 0x10 + private static readonly string[] ParseTimeFormats; // 0x20 + private static readonly string[] ParseYearDayMonthFormats; // 0x24 + private static readonly string[] ParseYearMonthDayFormats; // 0x28 + private static readonly string[] ParseDayMonthYearFormats; // 0x2C + private static readonly string[] ParseMonthDayYearFormats; // 0x30 + private static readonly string[] MonthDayShortFormats; // 0x34 + private static readonly string[] DayMonthShortFormats; // 0x38 + private static readonly int[] daysmonth; // 0x3C + private static readonly int[] daysmonthleap; // 0x40 + private static object to_local_time_span_object; // 0x44 + private static long last_now; // 0x48 + + // Properties + public DateTime Date { get; } // 0x000A8C18 + public int Month { get; } // 0x000A8C2C + public int Day { get; } // 0x000A8C38 + public DayOfWeek DayOfWeek { get; } // 0x000A8C44 + public int DayOfYear { get; } // 0x000A8C7C + public TimeSpan TimeOfDay { get; } // 0x000A8C88 + public int Hour { get; } // 0x000A8CB8 + public int Minute { get; } // 0x000A8CC4 + public int Second { get; } // 0x000A8CD0 + public int Millisecond { get; } // 0x000A8CDC + public static DateTime Now { get; } // 0x004AC26C + public long Ticks { get; } // 0x000A8CE8 + public static DateTime Today { get; } // 0x004B0A18 + public static DateTime UtcNow { get; } // 0x004B0B1C + public int Year { get; } // 0x000A8CF0 + public DateTimeKind Kind { get; } // 0x000A8CFC + + // Methods + public void .ctor(long ticks); // 0x000A8884 + public void .ctor(int year, int month, int day); // 0x000A88A0 + public void .ctor(int year, int month, int day, int hour, int minute, int second); // 0x000A88D0 + public void .ctor(int year, int month, int day, int hour, int minute, int second, int millisecond); // 0x000A8908 + public void .ctor(int year, int month, int day, Calendar calendar); // 0x000A8944 + public void .ctor(int year, int month, int day, int hour, int minute, int second, Calendar calendar); // 0x000A897C + public void .ctor(int year, int month, int day, int hour, int minute, int second, int millisecond, Calendar calendar); // 0x000A89C0 + internal void .ctor(bool check, TimeSpan value); // 0x000A8A00 + public void .ctor(long ticks, DateTimeKind kind); // 0x000A8A1C + public void .ctor(int year, int month, int day, int hour, int minute, int second, DateTimeKind kind); // 0x000A8A4C + public void .ctor(int year, int month, int day, int hour, int minute, int second, int millisecond, DateTimeKind kind); // 0x000A8A98 + public void .ctor(int year, int month, int day, int hour, int minute, int second, int millisecond, Calendar calendar, DateTimeKind kind); // 0x000A8AE4 + private static void .cctor(); // 0x004ADBA8 + private bool System.IConvertible.ToBoolean(IFormatProvider provider); // 0x000A8B28 + private byte System.IConvertible.ToByte(IFormatProvider provider); // 0x000A8B38 + private char System.IConvertible.ToChar(IFormatProvider provider); // 0x000A8B48 + private DateTime System.IConvertible.ToDateTime(IFormatProvider provider); // 0x000A8B58 + private Decimal System.IConvertible.ToDecimal(IFormatProvider provider); // 0x000A8B68 + private double System.IConvertible.ToDouble(IFormatProvider provider); // 0x000A8B78 + private short System.IConvertible.ToInt16(IFormatProvider provider); // 0x000A8B88 + private int System.IConvertible.ToInt32(IFormatProvider provider); // 0x000A8B98 + private long System.IConvertible.ToInt64(IFormatProvider provider); // 0x000A8BA8 + private sbyte System.IConvertible.ToSByte(IFormatProvider provider); // 0x000A8BB8 + private float System.IConvertible.ToSingle(IFormatProvider provider); // 0x000A8BC8 + private object System.IConvertible.ToType(Type targetType, IFormatProvider provider); // 0x000A8BD8 + private ushort System.IConvertible.ToUInt16(IFormatProvider provider); // 0x000A8BE0 + private uint System.IConvertible.ToUInt32(IFormatProvider provider); // 0x000A8BF0 + private ulong System.IConvertible.ToUInt64(IFormatProvider provider); // 0x000A8C00 + private static int AbsoluteDays(int year, int month, int day); // 0x004AD53C + private int FromTicks(Which what); // 0x000A8C10 + internal static long GetTimeMonotonic(); // 0x004B0930 + internal static long GetNow(); // 0x004B0934 + public DateTime Add(TimeSpan value); // 0x000A8D04 + public DateTime AddDays(double value); // 0x000A8D44 + public DateTime AddTicks(long value); // 0x000A8D60 + public DateTime AddHours(double value); // 0x000A8D80 + public DateTime AddMilliseconds(double value); // 0x000A8DB8 + private DateTime AddRoundedMilliseconds(double ms); // 0x000A8DD4 + public DateTime AddMinutes(double value); // 0x000A8DF0 + public DateTime AddMonths(int months); // 0x000A8E28 + public DateTime AddSeconds(double value); // 0x000A8E40 + public DateTime AddYears(int value); // 0x000A8E78 + public static int Compare(DateTime t1, DateTime t2); // 0x004B12E0 + public int CompareTo(object value); // 0x000A8E94 + public bool IsDaylightSavingTime(); // 0x000A8E9C + public int CompareTo(DateTime value); // 0x000A8EA4 + public bool Equals(DateTime value); // 0x000A8ECC + public long ToBinary(); // 0x000A8EF4 + public static DateTime FromBinary(long dateData); // 0x004B18C4 + public static DateTime SpecifyKind(DateTime value, DateTimeKind kind); // 0x004B1AE4 + public static int DaysInMonth(int year, int month); // 0x004AD368 + public override bool Equals(object value); // 0x000A8EFC + public static bool Equals(DateTime t1, DateTime t2); // 0x004B1BFC + public static DateTime FromFileTime(long fileTime); // 0x004B1CA4 + public static DateTime FromFileTimeUtc(long fileTime); // 0x004B1DAC + public static DateTime FromOADate(double d); // 0x004B1EA0 + public string[] GetDateTimeFormats(); // 0x000A8F04 + public string[] GetDateTimeFormats(char format); // 0x000A8F0C + public string[] GetDateTimeFormats(IFormatProvider provider); // 0x000A8F14 + public string[] GetDateTimeFormats(char format, IFormatProvider provider); // 0x000A8F1C + private string[] GetDateTimeFormats(bool adjustutc, string[] patterns, DateTimeFormatInfo dfi); // 0x000A8F24 + private void CheckDateTimeKind(DateTimeKind kind); // 0x000A8F40 + public override int GetHashCode(); // 0x000A8F44 + public TypeCode GetTypeCode(); // 0x000A8F4C + public static bool IsLeapYear(int year); // 0x004B04D0 + public static DateTime Parse(string s); // 0x004B295C + public static DateTime Parse(string s, IFormatProvider provider); // 0x004B29E8 + public static DateTime Parse(string s, IFormatProvider provider, DateTimeStyles styles); // 0x004B2A84 + internal static bool CoreParse(string s, IFormatProvider provider, DateTimeStyles styles, out DateTime result, out DateTimeOffset dto, bool setExceptionOnError, Exception exception); // 0x004B2BF0 + public static DateTime ParseExact(string s, string format, IFormatProvider provider); // 0x004B7038 + private static string[] YearMonthDayFormats(DateTimeFormatInfo dfi, bool setExceptionOnError, Exception exc); // 0x004B393C + private static int _ParseNumber(string s, int valuePos, int min_digits, int digits, bool leadingzero, bool sloppy_parsing, out int num_parsed); // 0x004B725C + private static int _ParseEnum(string s, int sPos, string[] values, string[] invValues, bool exact, out int num_parsed); // 0x004B744C + private static bool _ParseString(string s, int sPos, int maxlength, string value, out int num_parsed); // 0x004B7870 + private static bool _ParseAmPm(string s, int valuePos, int num, DateTimeFormatInfo dfi, bool exact, out int num_parsed, int ampm); // 0x004B79B4 + private static bool _ParseTimeSeparator(string s, int sPos, DateTimeFormatInfo dfi, bool exact, out int num_parsed); // 0x004B7E1C + private static bool _ParseDateSeparator(string s, int sPos, DateTimeFormatInfo dfi, bool exact, out int num_parsed); // 0x004B7F34 + private static bool IsLetter(string s, int pos); // 0x004B7D60 + private static bool _DoParse(string s, string firstPart, string secondPart, bool exact, out DateTime result, out DateTimeOffset dto, DateTimeFormatInfo dfi, DateTimeStyles style, bool firstPartIsDate, bool incompleteFormat, bool longYear); // 0x004B3DD8 + public static DateTime ParseExact(string s, string format, IFormatProvider provider, DateTimeStyles style); // 0x004B70E0 + public static DateTime ParseExact(string s, string[] formats, IFormatProvider provider, DateTimeStyles style); // 0x004B897C + private static void CheckStyle(DateTimeStyles style); // 0x004B8BF4 + public static bool TryParse(string s, out DateTime result); // 0x004B8D10 + public static bool TryParse(string s, IFormatProvider provider, DateTimeStyles styles, out DateTime result); // 0x004B8EC0 + public static bool TryParseExact(string s, string format, IFormatProvider provider, DateTimeStyles style, out DateTime result); // 0x004B9078 + public static bool TryParseExact(string s, string[] formats, IFormatProvider provider, DateTimeStyles style, out DateTime result); // 0x004B919C + private static bool ParseExact(string s, string[] formats, DateTimeFormatInfo dfi, DateTimeStyles style, out DateTime ret, bool exact, bool longYear, bool setExceptionOnError, Exception exception); // 0x004B6DB4 + public TimeSpan Subtract(DateTime value); // 0x000A8F54 + public DateTime Subtract(TimeSpan value); // 0x000A8F7C + public long ToFileTime(); // 0x000A8F98 + public long ToFileTimeUtc(); // 0x000A8FA0 + public string ToLongDateString(); // 0x000A8FA8 + public string ToLongTimeString(); // 0x000A8FB0 + public double ToOADate(); // 0x000A8FB8 + public string ToShortDateString(); // 0x000A8FC0 + public string ToShortTimeString(); // 0x000A8FC8 + public override string ToString(); // 0x000A8FD0 + public string ToString(IFormatProvider provider); // 0x000A8FD8 + public string ToString(string format); // 0x000A8FE8 + public string ToString(string format, IFormatProvider provider); // 0x000A8FF4 + public DateTime ToLocalTime(); // 0x000A8FFC + public DateTime ToUniversalTime(); // 0x000A9010 + public static DateTime op_Addition(DateTime d, TimeSpan t); // 0x004B0938 + public static bool op_Equality(DateTime d1, DateTime d2); // 0x004B9C20 + public static bool op_GreaterThan(DateTime t1, DateTime t2); // 0x004B9CC8 + public static bool op_GreaterThanOrEqual(DateTime t1, DateTime t2); // 0x004B9D70 + public static bool op_Inequality(DateTime d1, DateTime d2); // 0x004B811C + public static bool op_LessThan(DateTime t1, DateTime t2); // 0x004B9E18 + public static bool op_LessThanOrEqual(DateTime t1, DateTime t2); // 0x004B9EC0 + public static TimeSpan op_Subtraction(DateTime d1, DateTime d2); // 0x004B9F68 + public static DateTime op_Subtraction(DateTime d, TimeSpan t); // 0x004BA020 +} + +// Namespace: +private enum Which // TypeDefIndex: 1637 +{ + Day = 0, + DayYear = 1, + Month = 2, + Year = 3 +} + +// Namespace: System +[Serializable] +public enum DateTimeKind // TypeDefIndex: 1638 +{ + Unspecified = 0, + Utc = 1, + Local = 2 +} + +// Namespace: System +[Serializable] +public struct DateTimeOffset : IFormattable, IComparable, ISerializable, IComparable`1, IEquatable`1, IDeserializationCallback // TypeDefIndex: 1639 +{ + // Fields + public static readonly DateTimeOffset MaxValue; // 0x00 + public static readonly DateTimeOffset MinValue; // 0x18 + private DateTime dt; // 0x08 + private TimeSpan utc_offset; // 0x18 + + // Properties + public DateTime Date { get; } // 0x000A9460 + public DateTime DateTime { get; } // 0x000A9474 + public int Day { get; } // 0x000A9488 + public DayOfWeek DayOfWeek { get; } // 0x000A9494 + public int DayOfYear { get; } // 0x000A94CC + public int Hour { get; } // 0x000A94D8 + public DateTime LocalDateTime { get; } // 0x000A94E4 + public int Millisecond { get; } // 0x000A9520 + public int Minute { get; } // 0x000A952C + public int Month { get; } // 0x000A9538 + public static DateTimeOffset Now { get; } // 0x004C054C + public TimeSpan Offset { get; } // 0x000A9544 + public int Second { get; } // 0x000A9550 + public long Ticks { get; } // 0x000A955C + public TimeSpan TimeOfDay { get; } // 0x000A9564 + public DateTime UtcDateTime { get; } // 0x000A9594 + public static DateTimeOffset UtcNow { get; } // 0x004C064C + public long UtcTicks { get; } // 0x000A95A8 + public int Year { get; } // 0x000A95CC + + // Methods + public void .ctor(DateTime dateTime); // 0x000A9024 + public void .ctor(DateTime dateTime, TimeSpan offset); // 0x000A904C + public void .ctor(long ticks, TimeSpan offset); // 0x000A907C + public void .ctor(int year, int month, int day, int hour, int minute, int second, TimeSpan offset); // 0x000A90A4 + public void .ctor(int year, int month, int day, int hour, int minute, int second, int millisecond, TimeSpan offset); // 0x000A90E4 + public void .ctor(int year, int month, int day, int hour, int minute, int second, int millisecond, Calendar calendar, TimeSpan offset); // 0x000A912C + private void .ctor(SerializationInfo info, StreamingContext context); // 0x000A9174 + private static void .cctor(); // 0x004BA538 + private int System.IComparable.CompareTo(object obj); // 0x000A9190 + private void System.Runtime.Serialization.ISerializable.GetObjectData(SerializationInfo info, StreamingContext context); // 0x000A9198 + private void System.Runtime.Serialization.IDeserializationCallback.OnDeserialization(object sender); // 0x000A91B4 + public DateTimeOffset Add(TimeSpan timeSpan); // 0x000A91B8 + public DateTimeOffset AddDays(double days); // 0x000A91D4 + public DateTimeOffset AddHours(double hours); // 0x000A91F0 + public DateTimeOffset AddMilliseconds(double milliseconds); // 0x000A920C + public DateTimeOffset AddMinutes(double minutes); // 0x000A9228 + public DateTimeOffset AddMonths(int months); // 0x000A9244 + public DateTimeOffset AddSeconds(double seconds); // 0x000A9258 + public DateTimeOffset AddTicks(long ticks); // 0x000A9274 + public DateTimeOffset AddYears(int years); // 0x000A9290 + public static int Compare(DateTimeOffset first, DateTimeOffset second); // 0x004BADF8 + public int CompareTo(DateTimeOffset other); // 0x000A92A4 + public bool Equals(DateTimeOffset other); // 0x000A92D4 + public override bool Equals(object obj); // 0x000A9304 + public static bool Equals(DateTimeOffset first, DateTimeOffset second); // 0x004BB090 + public bool EqualsExact(DateTimeOffset other); // 0x000A930C + public static DateTimeOffset FromFileTime(long fileTime); // 0x004BB220 + public override int GetHashCode(); // 0x000A933C + public static DateTimeOffset Parse(string input); // 0x004BB454 + public static DateTimeOffset Parse(string input, IFormatProvider formatProvider); // 0x004BB4E0 + public static DateTimeOffset Parse(string input, IFormatProvider formatProvider, DateTimeStyles styles); // 0x004BB57C + public static DateTimeOffset ParseExact(string input, string format, IFormatProvider formatProvider); // 0x004BB750 + public static DateTimeOffset ParseExact(string input, string format, IFormatProvider formatProvider, DateTimeStyles styles); // 0x004BB7F8 + public static DateTimeOffset ParseExact(string input, string[] formats, IFormatProvider formatProvider, DateTimeStyles styles); // 0x004BBA10 + private static bool ParseExact(string input, string[] formats, DateTimeFormatInfo dfi, DateTimeStyles styles, out DateTimeOffset ret); // 0x004BBD54 + private static bool DoParse(string input, string format, bool exact, out DateTimeOffset result, DateTimeFormatInfo dfi, DateTimeStyles styles); // 0x004BBFA0 + private static int ParseNumber(string input, int pos, int digits, bool leading_zero, bool allow_leading_white, out int result); // 0x004BDD18 + private static int ParseNumber(string input, int pos, int digits, bool leading_zero, bool allow_leading_white, out int result, out int digit_parsed); // 0x004BDF5C + private static int ParseEnum(string input, int pos, string[] enums, bool allow_leading_white, out int result); // 0x004BDDD8 + private static int ParseChar(string input, int pos, char c, bool allow_leading_white, out int result); // 0x004BE138 + public TimeSpan Subtract(DateTimeOffset value); // 0x000A935C + public DateTimeOffset Subtract(TimeSpan value); // 0x000A9398 + public long ToFileTime(); // 0x000A93B4 + public DateTimeOffset ToLocalTime(); // 0x000A93E8 + public DateTimeOffset ToOffset(TimeSpan offset); // 0x000A93FC + public override string ToString(); // 0x000A9418 + public string ToString(IFormatProvider formatProvider); // 0x000A9428 + public string ToString(string format); // 0x000A9438 + public string ToString(string format, IFormatProvider formatProvider); // 0x000A9444 + public DateTimeOffset ToUniversalTime(); // 0x000A944C + public static bool TryParse(string input, out DateTimeOffset result); // 0x004BFD84 + public static bool TryParse(string input, IFormatProvider formatProvider, DateTimeStyles styles, out DateTimeOffset result); // 0x004BFF04 + public static bool TryParseExact(string input, string format, IFormatProvider formatProvider, DateTimeStyles styles, out DateTimeOffset result); // 0x004C0094 + public static bool TryParseExact(string input, string[] formats, IFormatProvider formatProvider, DateTimeStyles styles, out DateTimeOffset result); // 0x004C022C + public static DateTimeOffset op_Addition(DateTimeOffset dateTimeTz, TimeSpan timeSpan); // 0x004C0734 + public static bool op_Equality(DateTimeOffset left, DateTimeOffset right); // 0x004C0780 + public static bool op_GreaterThan(DateTimeOffset left, DateTimeOffset right); // 0x004C07E0 + public static bool op_GreaterThanOrEqual(DateTimeOffset left, DateTimeOffset right); // 0x004C08F0 + public static DateTimeOffset op_Implicit(DateTime dateTime); // 0x004C0A00 + public static bool op_Inequality(DateTimeOffset left, DateTimeOffset right); // 0x004C0A3C + public static bool op_LessThan(DateTimeOffset left, DateTimeOffset right); // 0x004C0B4C + public static bool op_LessThanOrEqual(DateTimeOffset left, DateTimeOffset right); // 0x004C0C5C + public static TimeSpan op_Subtraction(DateTimeOffset left, DateTimeOffset right); // 0x004C0D6C + public static DateTimeOffset op_Subtraction(DateTimeOffset dateTimeTz, TimeSpan timeSpan); // 0x004C0DD4 +} + +// Namespace: System +internal static class DateTimeUtils // TypeDefIndex: 1640 +{ + // Methods + public static int CountRepeat(string fmt, int p, char c); // 0x004BDCA8 + public static void ZeroPad(StringBuilder output, int digits, int len); // 0x004C0E20 + public static int ParseQuotedString(string fmt, int pos, StringBuilder output); // 0x004C0F40 + public static string GetStandardPattern(char format, DateTimeFormatInfo dfi, out bool useutc, out bool use_invariant); // 0x004B80FC + public static string GetStandardPattern(char format, DateTimeFormatInfo dfi, out bool useutc, out bool use_invariant, bool date_time_offset); // 0x004BD8AC + public static string ToString(DateTime dt, string format, DateTimeFormatInfo dfi); // 0x004B2914 + public static string ToString(DateTime dt, Nullable`1 utc_offset, string format, DateTimeFormatInfo dfi); // 0x004BEB3C +} + +// Namespace: System +[Serializable] +public enum DayOfWeek // TypeDefIndex: 1641 +{ + Sunday = 0, + Monday = 1, + Tuesday = 2, + Wednesday = 3, + Thursday = 4, + Friday = 5, + Saturday = 6 +} + +// Namespace: System +internal class DelegateData // TypeDefIndex: 1642 +{ + // Fields + public Type target_type; // 0x08 + public string method_name; // 0x0C + + // Methods + public void .ctor(); // 0x004C8470 +} + +// Namespace: System +[Serializable] +internal class DelegateSerializationHolder : ISerializable, IObjectReference // TypeDefIndex: 1643 +{ + // Fields + private Delegate _delegate; // 0x08 + + // Methods + private void .ctor(SerializationInfo info, StreamingContext ctx); // 0x004CA4F8 + public static void GetDelegateData(Delegate instance, SerializationInfo info, StreamingContext ctx); // 0x004C9E0C + public void GetObjectData(SerializationInfo info, StreamingContext context); // 0x004CAC3C + public object GetRealObject(StreamingContext context); // 0x004CACC4 +} + +// Namespace: +[Serializable] +private class DelegateEntry // TypeDefIndex: 1644 +{ + // Fields + private string type; // 0x08 + private string assembly; // 0x0C + public object target; // 0x10 + private string targetTypeAssembly; // 0x14 + private string targetTypeName; // 0x18 + private string methodName; // 0x1C + public DelegateEntry delegateEntry; // 0x20 + + // Methods + public void .ctor(Delegate del, string targetLabel); // 0x004CAA1C + public Delegate DeserializeDelegate(SerializationInfo info); // 0x004CA75C +} + +// Namespace: System +[Serializable] +public class DivideByZeroException : ArithmeticException // TypeDefIndex: 1645 +{ + // Fields + private const int Result = -2147352558; // 0x00 + + // Methods + public void .ctor(); // 0x002D5BB8 + public void .ctor(string message); // 0x002D5C38 + public void .ctor(string message, Exception innerException); // 0x002D5C5C + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x002D5C80 +} + +// Namespace: System +[Serializable] +public class DllNotFoundException : TypeLoadException // TypeDefIndex: 1646 +{ + // Fields + private const int Result = -2146233052; // 0x00 + + // Methods + public void .ctor(); // 0x002D5CA0 + public void .ctor(string message); // 0x002D5D20 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x002D5D44 + public void .ctor(string message, Exception inner); // 0x002D5D64 +} + +// Namespace: System +public enum AppDomainManagerInitializationOptions // TypeDefIndex: 1647 +{ + None = 0, + RegisterWithHost = 1 +} + +// Namespace: System +[Serializable] +public class DuplicateWaitObjectException : ArgumentException // TypeDefIndex: 1648 +{ + // Fields + private const int Result = -2146233047; // 0x00 + + // Methods + public void .ctor(); // 0x002D84A8 + public void .ctor(string parameterName); // 0x002D8528 + public void .ctor(string parameterName, string message); // 0x002D85B0 + public void .ctor(string message, Exception innerException); // 0x002D85E0 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x002D8604 +} + +// Namespace: System +[Serializable] +public class EntryPointNotFoundException : TypeLoadException // TypeDefIndex: 1649 +{ + // Fields + private const int Result = -2146233053; // 0x00 + + // Methods + public void .ctor(); // 0x002D8624 + public void .ctor(string message); // 0x002D86A4 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x002D86C8 + public void .ctor(string message, Exception inner); // 0x002D86E8 +} + +// Namespace: System +internal struct MonoEnumInfo // TypeDefIndex: 1650 +{ + // Fields + internal Type utype; // 0x08 + internal Array values; // 0x0C + internal string[] names; // 0x10 + internal Hashtable name_hash; // 0x14 + private static Hashtable cache; // 0x80000000 + private static Hashtable global_cache; // 0x00 + private static object global_cache_monitor; // 0x04 + internal static SByteComparer sbyte_comparer; // 0x08 + internal static ShortComparer short_comparer; // 0x0C + internal static IntComparer int_comparer; // 0x10 + internal static LongComparer long_comparer; // 0x14 + + // Properties + private static Hashtable Cache { get; } // 0x001E4824 + + // Methods + private void .ctor(MonoEnumInfo other); // 0x0008BA80 + private static void .cctor(); // 0x001E46A4 + private static void get_enum_info(Type enumType, out MonoEnumInfo info); // 0x001E4820 + internal static void GetInfo(Type enumType, out MonoEnumInfo info); // 0x001E4960 +} + +// Namespace: +internal class SByteComparer : IComparer`1, IComparer // TypeDefIndex: 1651 +{ + // Methods + public void .ctor(); // 0x001E4800 + public int Compare(object x, object y); // 0x001E54CC + public int Compare(sbyte ix, sbyte iy); // 0x001E55C0 +} + +// Namespace: +internal class ShortComparer : IComparer`1, IComparer // TypeDefIndex: 1652 +{ + // Methods + public void .ctor(); // 0x001E4808 + public int Compare(object x, object y); // 0x001E55D0 + public int Compare(short ix, short iy); // 0x001E56C4 +} + +// Namespace: +internal class IntComparer : IComparer`1, IComparer // TypeDefIndex: 1653 +{ + // Methods + public void .ctor(); // 0x001E4810 + public int Compare(object x, object y); // 0x001E5258 + public int Compare(int ix, int iy); // 0x001E5360 +} + +// Namespace: +internal class LongComparer : IComparer`1, IComparer // TypeDefIndex: 1654 +{ + // Methods + public void .ctor(); // 0x001E4818 + public int Compare(object x, object y); // 0x001E5378 + public int Compare(long ix, long iy); // 0x001E5494 +} + +// Namespace: System +public static class Environment // TypeDefIndex: 1655 +{ + // Fields + private const int mono_corlib_version = 82; // 0x00 + private static OperatingSystem os; // 0x00 + + // Properties + public static string CommandLine { get; } // 0x002DDCD8 + public static string CurrentDirectory { get; set; } // 0x002DDD74 0x002DDD7C + public static int ExitCode { get; set; } // 0x002DDD84 0x002DDD88 + public static bool HasShutdownStarted { get; } // 0x002DDD8C + public static string EmbeddingHostName { get; } // 0x002DDD90 + public static bool SocketSecurityEnabled { get; } // 0x002DDD94 + public static bool UnityWebSecurityEnabled { get; } // 0x002DDD98 + public static string MachineName { get; } // 0x002DDD9C + public static string NewLine { get; } // 0x002D5AB4 + internal static PlatformID Platform { get; } // 0x002DDDA0 + public static OperatingSystem OSVersion { get; } // 0x002DDDA8 + public static string StackTrace { get; } // 0x002DDE74 + public static int TickCount { get; } // 0x002DDF10 + public static string UserDomainName { get; } // 0x002DDF14 + public static bool UserInteractive { get; } // 0x002DDF18 + public static string UserName { get; } // 0x002DDF20 + public static Version Version { get; } // 0x002DDF24 + public static long WorkingSet { get; } // 0x002DDFA4 + public static int ProcessorCount { get; } // 0x002E03CC + internal static bool IsRunningOnWindows { get; } // 0x002DE320 + + // Methods + internal static string GetOSVersionString(); // 0x002DDDA4 + public static void Exit(int exitCode); // 0x002DDFB0 + public static string ExpandEnvironmentVariables(string name); // 0x002DDFB4 + public static string[] GetCommandLineArgs(); // 0x002DDD70 + internal static string internalGetEnvironmentVariable(string variable); // 0x002DE524 + public static string GetEnvironmentVariable(string variable); // 0x002DE31C + private static Hashtable GetEnvironmentVariablesNoCase(); // 0x002DE340 + public static IDictionary GetEnvironmentVariables(); // 0x002DE52C + private static string GetWindowsFolderPath(int folder); // 0x002DE628 + public static string GetFolderPath(SpecialFolder folder); // 0x002DE62C + private static string ReadXdgUserDir(string config_dir, string home_dir, string key, string fallback); // 0x002DEA88 + internal static string InternalGetFolderPath(SpecialFolder folder); // 0x002DE65C + public static string[] GetLogicalDrives(); // 0x002DF08C + private static void internalBroadcastSettingChange(); // 0x002DF094 + public static string GetEnvironmentVariable(string variable, EnvironmentVariableTarget target); // 0x002DF098 + public static IDictionary GetEnvironmentVariables(EnvironmentVariableTarget target); // 0x002DF584 + public static void SetEnvironmentVariable(string variable, string value); // 0x002DFC84 + public static void SetEnvironmentVariable(string variable, string value, EnvironmentVariableTarget target); // 0x002DFC8C + internal static void InternalSetEnvironmentVariable(string variable, string value); // 0x002E0340 + public static void FailFast(string message); // 0x002E0344 + private static string[] GetLogicalDrivesInternal(); // 0x002DF090 + private static string[] GetEnvironmentVariableNames(); // 0x002DE528 + internal static string GetMachineConfigPath(); // 0x002E03D0 + internal static string internalGetHome(); // 0x002DF088 +} + +// Namespace: +public enum SpecialFolder // TypeDefIndex: 1656 +{ + Desktop = 0, + Programs = 2, + MyDocuments = 5, + Personal = 5, + Favorites = 6, + Startup = 7, + Recent = 8, + SendTo = 9, + StartMenu = 11, + MyMusic = 13, + DesktopDirectory = 16, + MyComputer = 17, + Templates = 21, + ApplicationData = 26, + LocalApplicationData = 28, + InternetCache = 32, + Cookies = 33, + History = 34, + CommonApplicationData = 35, + System = 37, + ProgramFiles = 38, + MyPictures = 39, + CommonProgramFiles = 43 +} + +// Namespace: System +public enum EnvironmentVariableTarget // TypeDefIndex: 1657 +{ + Process = 0, + User = 1, + Machine = 2 +} + +// Namespace: System +[Serializable] +public class EventArgs // TypeDefIndex: 1658 +{ + // Fields + public static readonly EventArgs Empty; // 0x00 + + // Methods + public void .ctor(); // 0x002E03D4 + private static void .cctor(); // 0x002E03DC +} + +// Namespace: System +[Serializable] +public sealed class ExecutionEngineException : SystemException // TypeDefIndex: 1659 +{ + // Methods + public void .ctor(); // 0x002E2274 + public void .ctor(string message); // 0x002E22E8 + public void .ctor(string message, Exception innerException); // 0x002E22F0 + internal void .ctor(SerializationInfo info, StreamingContext context); // 0x002E22F8 +} + +// Namespace: System +[Serializable] +public class FieldAccessException : MemberAccessException // TypeDefIndex: 1660 +{ + // Fields + private const int Result = -2146233081; // 0x00 + + // Methods + public void .ctor(); // 0x002E2318 + public void .ctor(string message); // 0x002E2398 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x002E23BC + public void .ctor(string message, Exception inner); // 0x002E23DC +} + +// Namespace: System +[Serializable] +public class FlagsAttribute : Attribute // TypeDefIndex: 1661 +{ + // Methods + public void .ctor(); // 0x002E2400 +} + +// Namespace: System +[Serializable] +public class FormatException : SystemException // TypeDefIndex: 1662 +{ + // Fields + private const int Result = -2146233033; // 0x00 + + // Methods + public void .ctor(); // 0x002D806C + public void .ctor(string message); // 0x002D81F8 + public void .ctor(string message, Exception innerException); // 0x002E2408 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x002E242C +} + +// Namespace: System +public static class GC // TypeDefIndex: 1663 +{ + // Properties + public static int MaxGeneration { get; } // 0x002E244C + + // Methods + private static void InternalCollect(int generation); // 0x002E2450 + public static void Collect(); // 0x002E2454 + public static void Collect(int generation); // 0x002E2468 + public static void Collect(int generation, GCCollectionMode mode); // 0x002E251C + public static int GetGeneration(object obj); // 0x002E2520 + public static int GetGeneration(WeakReference wo); // 0x002E2524 + public static long GetTotalMemory(bool forceFullCollection); // 0x002E25E4 + public static void KeepAlive(object obj); // 0x002E25E8 + public static void ReRegisterForFinalize(object obj); // 0x002E25EC + public static void SuppressFinalize(object obj); // 0x002E25F0 + public static void WaitForPendingFinalizers(); // 0x002E25F4 + public static int CollectionCount(int generation); // 0x002E25F8 + private static void RecordPressure(long bytesAllocated); // 0x002E25FC + public static void AddMemoryPressure(long bytesAllocated); // 0x002E2600 + public static void RemoveMemoryPressure(long bytesAllocated); // 0x002E2604 +} + +// Namespace: System +[Serializable] +public enum GCCollectionMode // TypeDefIndex: 1664 +{ + Default = 0, + Forced = 1, + Optimized = 2 +} + +// Namespace: System +public enum GCNotificationStatus // TypeDefIndex: 1665 +{ + Succeeded = 0, + Failed = 1, + Canceled = 2, + Timeout = 3, + NotApplicable = 4 +} + +// Namespace: System +[Serializable] +public struct Guid : IFormattable, IComparable, IComparable`1, IEquatable`1 // TypeDefIndex: 1666 +{ + // Fields + private int _a; // 0x08 + private short _b; // 0x0C + private short _c; // 0x0E + private byte _d; // 0x10 + private byte _e; // 0x11 + private byte _f; // 0x12 + private byte _g; // 0x13 + private byte _h; // 0x14 + private byte _i; // 0x15 + private byte _j; // 0x16 + private byte _k; // 0x17 + public static readonly Guid Empty; // 0x00 + private static object _rngAccess; // 0x10 + private static RandomNumberGenerator _rng; // 0x14 + private static RandomNumberGenerator _fastRng; // 0x18 + + // Methods + public void .ctor(byte[] b); // 0x000A82B0 + public void .ctor(string g); // 0x000A82B8 + public void .ctor(int a, short b, short c, byte[] d); // 0x000A82C0 + public void .ctor(int a, short b, short c, byte d, byte e, byte f, byte g, byte h, byte i, byte j, byte k); // 0x000A82E4 + public void .ctor(uint a, ushort b, ushort c, byte d, byte e, byte f, byte g, byte h, byte i, byte j, byte k); // 0x000A833C + private static void .cctor(); // 0x0048080C + private static void CheckNull(object o); // 0x00480344 + private static void CheckLength(byte[] o, int l); // 0x00480938 + private static void CheckArray(byte[] o, int l); // 0x004801B8 + private static int Compare(int x, int y); // 0x00480A6C + public int CompareTo(object value); // 0x000A8394 + public override bool Equals(object o); // 0x000A839C + public int CompareTo(Guid value); // 0x000A83A4 + public bool Equals(Guid g); // 0x000A83C8 + public override int GetHashCode(); // 0x000A83FC + private static char ToHex(int b); // 0x00480FCC + public static Guid NewGuid(); // 0x00480FE4 + internal static byte[] FastNewGuidArray(); // 0x00481234 + public byte[] ToByteArray(); // 0x000A8404 + private static void AppendInt(StringBuilder builder, int value); // 0x004818C4 + private static void AppendShort(StringBuilder builder, short value); // 0x00481ADC + private static void AppendByte(StringBuilder builder, byte value); // 0x00481C28 + private string BaseToString(bool h, bool p, bool b); // 0x000A840C + public override string ToString(); // 0x000A8428 + public string ToString(string format); // 0x000A8450 + public string ToString(string format, IFormatProvider provider); // 0x000A8458 + public static bool op_Equality(Guid a, Guid b); // 0x00482340 + public static bool op_Inequality(Guid a, Guid b); // 0x0048239C +} + +// Namespace: +internal class GuidParser // TypeDefIndex: 1667 +{ + // Fields + private string _src; // 0x08 + private int _length; // 0x0C + private int _cur; // 0x10 + + // Methods + public void .ctor(string src); // 0x004803F8 + private void Reset(); // 0x004823F0 + private bool AtEnd(); // 0x00482424 + private void ThrowFormatException(); // 0x0048243C + private ulong ParseHex(int length, bool strictLength); // 0x004824E4 + private bool ParseOptChar(char c); // 0x00482660 + private void ParseChar(char c); // 0x004826C8 + private Guid ParseGuid1(); // 0x004826E4 + private void ParseHexPrefix(); // 0x00482970 + private Guid ParseGuid2(); // 0x004829A8 + public Guid Parse(); // 0x00480438 +} + +// Namespace: System +public interface IAppDomainSetup // TypeDefIndex: 1668 +{ + // Properties + string ApplicationBase { get; set; } + string ApplicationName { get; set; } + string CachePath { get; set; } + string ConfigurationFile { get; set; } + string DynamicBase { get; set; } + string LicenseFile { get; set; } + string PrivateBinPath { get; set; } + string PrivateBinPathProbe { get; set; } + string ShadowCopyDirectories { get; set; } + string ShadowCopyFiles { get; set; } + +} + +// Namespace: System +internal interface IConsoleDriver // TypeDefIndex: 1669 +{ + // Properties + ConsoleColor BackgroundColor { get; set; } + int BufferHeight { get; set; } + int BufferWidth { get; set; } + bool CapsLock { get; } + int CursorLeft { get; set; } + int CursorSize { get; set; } + int CursorTop { get; set; } + bool CursorVisible { get; set; } + ConsoleColor ForegroundColor { get; set; } + bool KeyAvailable { get; } + bool Initialized { get; } + int LargestWindowHeight { get; } + int LargestWindowWidth { get; } + bool NumberLock { get; } + string Title { get; set; } + bool TreatControlCAsInput { get; set; } + int WindowHeight { get; set; } + int WindowLeft { get; set; } + int WindowTop { get; set; } + int WindowWidth { get; set; } + + // Methods + void Init(); + void Beep(int frequency, int duration); + void Clear(); + void MoveBufferArea(int sourceLeft, int sourceTop, int sourceWidth, int sourceHeight, int targetLeft, int targetTop, char sourceChar, ConsoleColor sourceForeColor, ConsoleColor sourceBackColor); + ConsoleKeyInfo ReadKey(bool intercept); + void ResetColor(); + void SetBufferSize(int width, int height); + void SetCursorPosition(int left, int top); + void SetWindowPosition(int left, int top); + void SetWindowSize(int width, int height); + string ReadLine(); +} + +// Namespace: System +public interface ICustomFormatter // TypeDefIndex: 1670 +{ + // Methods + string Format(string format, object arg, IFormatProvider formatProvider); +} + +// Namespace: System +public interface IFormatProvider // TypeDefIndex: 1671 +{ + // Methods + object GetFormat(Type formatType); +} + +// Namespace: System +public interface IServiceProvider // TypeDefIndex: 1672 +{ + // Methods + object GetService(Type serviceType); +} + +// Namespace: System +[Serializable] +public sealed class IndexOutOfRangeException : SystemException // TypeDefIndex: 1673 +{ + // Methods + public void .ctor(); // 0x001D6C94 + public void .ctor(string message); // 0x001D5CCC + public void .ctor(string message, Exception innerException); // 0x001D6D08 + internal void .ctor(SerializationInfo info, StreamingContext context); // 0x001D6D10 +} + +// Namespace: System +[Serializable] +public sealed class InsufficientMemoryException : OutOfMemoryException // TypeDefIndex: 1674 +{ + // Methods + public void .ctor(); // 0x001D6D30 + public void .ctor(string message); // 0x001D6D98 + public void .ctor(string message, Exception innerException); // 0x001D6DA0 +} + +// Namespace: System +[Serializable] +public class InvalidCastException : SystemException // TypeDefIndex: 1675 +{ + // Fields + private const int Result = -2147467262; // 0x00 + + // Methods + public void .ctor(); // 0x001DDAA4 + public void .ctor(string message); // 0x001DDB24 + public void .ctor(string message, Exception innerException); // 0x001DDB48 + public void .ctor(string message, int errorCode); // 0x001DDB6C + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x001DDB8C +} + +// Namespace: System +[Serializable] +public class InvalidOperationException : SystemException // TypeDefIndex: 1676 +{ + // Fields + private const int Result = -2146233079; // 0x00 + + // Methods + public void .ctor(); // 0x001DDBAC + public void .ctor(string message); // 0x001DDC2C + public void .ctor(string message, Exception innerException); // 0x001DDC50 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x001DDC74 +} + +// Namespace: System +[Serializable] +public sealed class InvalidProgramException : SystemException // TypeDefIndex: 1677 +{ + // Methods + public void .ctor(); // 0x001DDC94 + public void .ctor(string message); // 0x001DDD08 + public void .ctor(string message, Exception inner); // 0x001DDD10 + internal void .ctor(SerializationInfo info, StreamingContext context); // 0x001DDD18 +} + +// Namespace: System +internal static class KnownTerminals // TypeDefIndex: 1678 +{ + // Properties + public static byte[] linux { get; } // 0x001DDD38 + public static byte[] xterm { get; } // 0x001DDDBC + public static byte[] ansi { get; } // 0x001DDE40 + +} + +// Namespace: System +[Serializable] +public enum LoaderOptimization // TypeDefIndex: 1679 +{ + NotSpecified = 0, + SingleDomain = 1, + MultiDomain = 2, + MultiDomainHost = 3, + DomainMask = 3, + DisallowBindings = 4 +} + +// Namespace: System +public sealed class LoaderOptimizationAttribute : Attribute // TypeDefIndex: 1680 +{ + // Fields + private LoaderOptimization lo; // 0x08 + + // Properties + public LoaderOptimization Value { get; } // 0x001DDF04 + + // Methods + public void .ctor(byte value); // 0x001DDEC4 + public void .ctor(LoaderOptimization value); // 0x001DDEE4 +} + +// Namespace: System +public sealed class LocalDataStoreSlot // TypeDefIndex: 1681 +{ + // Fields + internal int slot; // 0x08 + internal bool thread_local; // 0x0C + private static object lock_obj; // 0x00 + private static bool[] slot_bitmap_thread; // 0x04 + private static bool[] slot_bitmap_context; // 0x08 + + // Methods + internal void .ctor(bool in_thread); // 0x001DDF0C + private static void .cctor(); // 0x001DE250 + protected override void Finalize(); // 0x001DE2D0 +} + +// Namespace: System +public sealed class MTAThreadAttribute : Attribute // TypeDefIndex: 1682 +{ + // Methods + public void .ctor(); // 0x001DE5C4 +} + +// Namespace: System +public static class Math // TypeDefIndex: 1683 +{ + // Fields + public const double E = 2.718281828459045; // 0x00 + public const double PI = 3.141592653589793; // 0x00 + + // Methods + public static Decimal Abs(Decimal value); // 0x001DE928 + public static double Abs(double value); // 0x001DEA6C + public static float Abs(float value); // 0x001DEA8C + public static int Abs(int value); // 0x001DEAA8 + public static long Abs(long value); // 0x001DEB6C + public static sbyte Abs(sbyte value); // 0x001DEC3C + public static short Abs(short value); // 0x001DED00 + public static Decimal Ceiling(Decimal d); // 0x001DEDC4 + public static double Ceiling(double a); // 0x001DEFC0 + public static long BigMul(int a, int b); // 0x001DEFF8 + public static int DivRem(int a, int b, out int result); // 0x001DF000 + public static long DivRem(long a, long b, out long result); // 0x001DF018 + public static double Floor(double d); // 0x001DF038 + public static double IEEERemainder(double x, double y); // 0x001DF040 + public static double Log(double a, double newBase); // 0x001DF1C0 + public static byte Max(byte val1, byte val2); // 0x001DF20C + public static Decimal Max(Decimal val1, Decimal val2); // 0x001DF218 + public static double Max(double val1, double val2); // 0x001DF328 + public static float Max(float val1, float val2); // 0x001DF3A8 + public static int Max(int val1, int val2); // 0x001CE9A8 + public static long Max(long val1, long val2); // 0x001DF410 + public static sbyte Max(sbyte val1, sbyte val2); // 0x001DF438 + public static short Max(short val1, short val2); // 0x001DF444 + public static uint Max(uint val1, uint val2); // 0x001DF450 + public static ulong Max(ulong val1, ulong val2); // 0x001DF45C + public static ushort Max(ushort val1, ushort val2); // 0x001DF484 + public static byte Min(byte val1, byte val2); // 0x001DF490 + public static Decimal Min(Decimal val1, Decimal val2); // 0x001DF49C + public static double Min(double val1, double val2); // 0x001DF5B0 + public static float Min(float val1, float val2); // 0x001DF630 + public static int Min(int val1, int val2); // 0x001DF698 + public static long Min(long val1, long val2); // 0x001DF6A4 + public static sbyte Min(sbyte val1, sbyte val2); // 0x001DF6CC + public static short Min(short val1, short val2); // 0x001DF6D8 + public static uint Min(uint val1, uint val2); // 0x001DF6E4 + public static ulong Min(ulong val1, ulong val2); // 0x001DF6F0 + public static ushort Min(ushort val1, ushort val2); // 0x001DF718 + public static Decimal Round(Decimal d); // 0x001DF724 + public static Decimal Round(Decimal d, int decimals); // 0x001DFB50 + public static Decimal Round(Decimal d, MidpointRounding mode); // 0x001DFC04 + private static Decimal RoundAwayFromZero(Decimal d); // 0x001DFD90 + public static Decimal Round(Decimal d, int decimals, MidpointRounding mode); // 0x001E0178 + public static double Round(double a); // 0x001E0234 + public static double Round(double value, int digits); // 0x001E02E4 + private static double Round2(double value, int digits, bool away_from_zero); // 0x001E0470 + public static double Round(double value, MidpointRounding mode); // 0x001E0474 + public static double Round(double value, int digits, MidpointRounding mode); // 0x001E069C + public static double Truncate(double d); // 0x001E0820 + public static Decimal Truncate(Decimal d); // 0x001E0868 + public static Decimal Floor(Decimal d); // 0x001DEF10 + public static int Sign(Decimal value); // 0x001E0918 + public static int Sign(double value); // 0x001E0A68 + public static int Sign(float value); // 0x001E0B5C + public static int Sign(int value); // 0x001E0C48 + public static int Sign(long value); // 0x001E0C5C + public static int Sign(sbyte value); // 0x001E0C78 + public static int Sign(short value); // 0x001E0C8C + public static double Sin(double a); // 0x001E0CA0 + public static double Cos(double d); // 0x001E0CA4 + public static double Tan(double a); // 0x001E0CA8 + public static double Sinh(double value); // 0x001E0CAC + public static double Cosh(double value); // 0x001E0CB0 + public static double Tanh(double value); // 0x001E0CB4 + public static double Acos(double d); // 0x001E0CB8 + public static double Asin(double d); // 0x001E0CBC + public static double Atan(double d); // 0x001E0CC0 + public static double Atan2(double y, double x); // 0x001E0CC4 + public static double Exp(double d); // 0x001E0CC8 + public static double Log(double d); // 0x001E0CCC + public static double Log10(double d); // 0x001E0CD0 + public static double Pow(double x, double y); // 0x001E0CD4 + public static double Sqrt(double d); // 0x001E0CD8 +} + +// Namespace: System +[Serializable] +public class MemberAccessException : SystemException // TypeDefIndex: 1684 +{ + // Fields + private const int Result = -2146233062; // 0x00 + + // Methods + public void .ctor(); // 0x001E0CF4 + public void .ctor(string message); // 0x001E0D74 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x001E0D98 + public void .ctor(string message, Exception inner); // 0x001E0DB8 +} + +// Namespace: System +[Serializable] +public class MethodAccessException : MemberAccessException // TypeDefIndex: 1685 +{ + // Fields + private const int Result = -2146233072; // 0x00 + + // Methods + public void .ctor(); // 0x001E0DDC + public void .ctor(string message); // 0x001E0E5C + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x001E0E80 + public void .ctor(string message, Exception inner); // 0x001E0EA0 +} + +// Namespace: System +public enum MidpointRounding // TypeDefIndex: 1686 +{ + ToEven = 0, + AwayFromZero = 1 +} + +// Namespace: System +[Serializable] +public class MissingFieldException : MissingMemberException // TypeDefIndex: 1687 +{ + // Fields + private const int Result = -2146233071; // 0x00 + + // Properties + public override string Message { get; } // 0x001E120C + + // Methods + public void .ctor(); // 0x001E0EC4 + public void .ctor(string message); // 0x001E0F68 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x001E0F8C + public void .ctor(string message, Exception inner); // 0x001E1164 + public void .ctor(string className, string fieldName); // 0x001E11AC +} + +// Namespace: System +[Serializable] +public class MissingMemberException : MemberAccessException // TypeDefIndex: 1688 +{ + // Fields + private const int Result = -2146233070; // 0x00 + protected string ClassName; // 0x34 + protected string MemberName; // 0x38 + protected byte[] Signature; // 0x3C + + // Properties + public override string Message { get; } // 0x001E12D4 + + // Methods + public void .ctor(); // 0x001E13A0 + public void .ctor(string message); // 0x001E0F44 + public void .ctor(string message, Exception inner); // 0x001E1188 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x001E0FA4 + public void .ctor(string className, string memberName); // 0x001E11DC + public override void GetObjectData(SerializationInfo info, StreamingContext context); // 0x001E1420 +} + +// Namespace: System +[Serializable] +public class MissingMethodException : MissingMemberException // TypeDefIndex: 1689 +{ + // Fields + private const int Result = -2146233069; // 0x00 + + // Properties + public override string Message { get; } // 0x001E1648 + + // Methods + public void .ctor(); // 0x001E1538 + public void .ctor(string message); // 0x001E15B8 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x001E15DC + public void .ctor(string message, Exception inner); // 0x001E15F4 + public void .ctor(string className, string methodName); // 0x001E1618 +} + +// Namespace: System +public struct ModuleHandle // TypeDefIndex: 1690 +{ + // Fields + private IntPtr value; // 0x08 + public static readonly ModuleHandle EmptyHandle; // 0x00 + + // Properties + internal IntPtr Value { get; } // 0x0008B8B8 + public int MDStreamVersion { get; } // 0x0008B8C0 + + // Methods + internal void .ctor(IntPtr v); // 0x0008B8B0 + private static void .cctor(); // 0x001E1718 + internal void GetPEKind(out PortableExecutableKinds peKind, out ImageFileMachine machine); // 0x0008B8C8 + public RuntimeFieldHandle ResolveFieldHandle(int fieldToken); // 0x0008B8D0 + public RuntimeMethodHandle ResolveMethodHandle(int methodToken); // 0x0008B8F4 + public RuntimeTypeHandle ResolveTypeHandle(int typeToken); // 0x0008B918 + private IntPtr[] ptrs_from_handles(RuntimeTypeHandle[] handles); // 0x0008B93C + public RuntimeTypeHandle ResolveTypeHandle(int typeToken, RuntimeTypeHandle[] typeInstantiationContext, RuntimeTypeHandle[] methodInstantiationContext); // 0x0008B940 + public RuntimeMethodHandle ResolveMethodHandle(int methodToken, RuntimeTypeHandle[] typeInstantiationContext, RuntimeTypeHandle[] methodInstantiationContext); // 0x0008B95C + public RuntimeFieldHandle ResolveFieldHandle(int fieldToken, RuntimeTypeHandle[] typeInstantiationContext, RuntimeTypeHandle[] methodInstantiationContext); // 0x0008B978 + public RuntimeFieldHandle GetRuntimeFieldHandleFromMetadataToken(int fieldToken); // 0x0008B994 + public RuntimeMethodHandle GetRuntimeMethodHandleFromMetadataToken(int methodToken); // 0x0008B9B8 + public RuntimeTypeHandle GetRuntimeTypeHandleFromMetadataToken(int typeToken); // 0x0008B9DC + public override bool Equals(object obj); // 0x0008BA00 + public bool Equals(ModuleHandle handle); // 0x0008BA08 + public override int GetHashCode(); // 0x0008BA1C + public static bool op_Equality(ModuleHandle left, ModuleHandle right); // 0x001E23CC + public static bool op_Inequality(ModuleHandle left, ModuleHandle right); // 0x001E2464 +} + +// Namespace: System +internal class MonoAsyncCall // TypeDefIndex: 1691 +{ + // Fields + private object msg; // 0x08 + private IntPtr cb_method; // 0x0C + private object cb_target; // 0x10 + private object state; // 0x14 + private object res; // 0x18 + private object out_args; // 0x1C + private long wait_event; // 0x20 + + // Methods + public void .ctor(); // 0x001E2500 +} + +// Namespace: System +internal class MonoCustomAttrs // TypeDefIndex: 1692 +{ + // Fields + private static Assembly corlib; // 0x00 + private static readonly Type AttributeUsageType; // 0x04 + private static readonly AttributeUsageAttribute DefaultAttributeUsage; // 0x08 + + // Methods + public void .ctor(); // 0x001E2508 + private static void .cctor(); // 0x001E2510 + private static bool IsUserCattrProvider(object obj); // 0x001E25E8 + internal static object[] GetCustomAttributesInternal(ICustomAttributeProvider obj, Type attributeType, bool pseudoAttrs); // 0x001E2894 + internal static object[] GetPseudoCustomAttributes(ICustomAttributeProvider obj, Type attributeType); // 0x001E2898 + internal static object[] GetCustomAttributesBase(ICustomAttributeProvider obj, Type attributeType); // 0x001E2B58 + internal static Attribute GetCustomAttribute(ICustomAttributeProvider obj, Type attributeType, bool inherit); // 0x001E2DA8 + internal static object[] GetCustomAttributes(ICustomAttributeProvider obj, Type attributeType, bool inherit); // 0x001E2F54 + internal static object[] GetCustomAttributes(ICustomAttributeProvider obj, bool inherit); // 0x001E3CF8 + private static CustomAttributeData[] GetCustomAttributesDataInternal(ICustomAttributeProvider obj); // 0x001E3EE0 + internal static IList`1 GetCustomAttributesData(ICustomAttributeProvider obj); // 0x001E3EE4 + internal static bool IsDefined(ICustomAttributeProvider obj, Type attributeType, bool inherit); // 0x001E3FD8 + internal static bool IsDefinedInternal(ICustomAttributeProvider obj, Type AttributeType); // 0x001E4328 + private static PropertyInfo GetBasePropertyDefinition(PropertyInfo property); // 0x001E432C + private static ICustomAttributeProvider GetBase(ICustomAttributeProvider obj); // 0x001E3B04 + private static AttributeUsageAttribute RetrieveAttributeUsage(Type attributeType); // 0x001E3844 +} + +// Namespace: +private class AttributeInfo // TypeDefIndex: 1693 +{ + // Fields + private AttributeUsageAttribute _usage; // 0x08 + private int _inheritanceLevel; // 0x0C + + // Properties + public AttributeUsageAttribute Usage { get; } // 0x001E4648 + public int InheritanceLevel { get; } // 0x001E4650 + + // Methods + public void .ctor(AttributeUsageAttribute usage, int inheritanceLevel); // 0x001E3ADC +} + +// Namespace: System +internal sealed class MonoListItem // TypeDefIndex: 1694 +{ + // Fields + private MonoListItem next; // 0x08 + private object data; // 0x0C + + // Methods + public void .ctor(); // 0x001E5734 +} + +// Namespace: System +internal class MonoTouchAOTHelper // TypeDefIndex: 1695 +{ + // Fields + internal static bool FalseFlag; // 0x00 + + // Methods + public void .ctor(); // 0x001E576C + private static void .cctor(); // 0x001E5774 +} + +// Namespace: System +internal class MonoTypeInfo // TypeDefIndex: 1696 +{ + // Fields + public string full_name; // 0x08 + public ConstructorInfo default_ctor; // 0x0C + + // Methods + public void .ctor(); // 0x001E59F8 +} + +// Namespace: System +[Serializable] +internal class MonoType : Type, ISerializable // TypeDefIndex: 1697 +{ + // Fields + [NonSerialized] private MonoTypeInfo type_info; // 0x0C + + // Properties + public override Type UnderlyingSystemType { get; } // 0x001E84F0 + public override Assembly Assembly { get; } // 0x001E84F4 + public override string AssemblyQualifiedName { get; } // 0x001E84F8 + public override Type BaseType { get; } // 0x001E8508 + public override string FullName { get; } // 0x001E850C + public override Guid GUID { get; } // 0x001E85D8 + public override MemberTypes MemberType { get; } // 0x001E8978 + public override string Name { get; } // 0x001E89D0 + public override string Namespace { get; } // 0x001E89D4 + public override Module Module { get; } // 0x001E89D8 + public override Type DeclaringType { get; } // 0x001E89DC + public override Type ReflectedType { get; } // 0x001E89E0 + public override RuntimeTypeHandle TypeHandle { get; } // 0x001E89F0 + public override bool ContainsGenericParameters { get; } // 0x001E8A2C + public override bool IsGenericParameter { get; } // 0x001E8B60 + public override MethodBase DeclaringMethod { get; } // 0x001E8B64 + + // Methods + internal void .ctor(object obj); // 0x001E5778 + private static void type_from_obj(MonoType type, object obj); // 0x001E5848 + private static TypeAttributes get_attributes(Type type); // 0x001E58CC + internal ConstructorInfo GetDefaultConstructor(); // 0x001E58D0 + protected override TypeAttributes GetAttributeFlagsImpl(); // 0x001E5A00 + protected override ConstructorInfo GetConstructorImpl(BindingFlags bindingAttr, Binder binder, CallingConventions callConvention, Type[] types, ParameterModifier[] modifiers); // 0x001E5A04 + internal ConstructorInfo[] GetConstructors_internal(BindingFlags bindingAttr, Type reflected_type); // 0x001E5E88 + public override ConstructorInfo[] GetConstructors(BindingFlags bindingAttr); // 0x001E5E8C + private EventInfo InternalGetEvent(string name, BindingFlags bindingAttr); // 0x001E5E94 + public override EventInfo GetEvent(string name, BindingFlags bindingAttr); // 0x001E5E98 + internal EventInfo[] GetEvents_internal(BindingFlags bindingAttr, Type reflected_type); // 0x001E5F5C + public override EventInfo[] GetEvents(BindingFlags bindingAttr); // 0x001E5F60 + public override FieldInfo GetField(string name, BindingFlags bindingAttr); // 0x001E5F68 + internal FieldInfo[] GetFields_internal(BindingFlags bindingAttr, Type reflected_type); // 0x001E5F6C + public override FieldInfo[] GetFields(BindingFlags bindingAttr); // 0x001E5F70 + public override Type GetInterface(string name, bool ignoreCase); // 0x001E5F78 + public override Type[] GetInterfaces(); // 0x001E624C + public override MemberInfo[] GetMembers(BindingFlags bindingAttr); // 0x001E6250 + internal MethodInfo[] GetMethodsByName(string name, BindingFlags bindingAttr, bool ignoreCase, Type reflected_type); // 0x001E628C + public override MethodInfo[] GetMethods(BindingFlags bindingAttr); // 0x001E6290 + protected override MethodInfo GetMethodImpl(string name, BindingFlags bindingAttr, Binder binder, CallingConventions callConvention, Type[] types, ParameterModifier[] modifiers); // 0x001E62B8 + private MethodInfo GetCorrespondingInflatedMethod(MethodInfo generic); // 0x001E66F0 + private ConstructorInfo GetCorrespondingInflatedConstructor(ConstructorInfo generic); // 0x001E6744 + internal override MethodInfo GetMethod(MethodInfo fromNoninstanciated); // 0x001E6798 + internal override ConstructorInfo GetConstructor(ConstructorInfo fromNoninstanciated); // 0x001E6888 + internal override FieldInfo GetField(FieldInfo fromNoninstanciated); // 0x001E6978 + public override Type GetNestedType(string name, BindingFlags bindingAttr); // 0x001E6A50 + public override Type[] GetNestedTypes(BindingFlags bindingAttr); // 0x001E6A54 + internal PropertyInfo[] GetPropertiesByName(string name, BindingFlags bindingAttr, bool icase, Type reflected_type); // 0x001E6A58 + public override PropertyInfo[] GetProperties(BindingFlags bindingAttr); // 0x001E6A5C + protected override PropertyInfo GetPropertyImpl(string name, BindingFlags bindingAttr, Binder binder, Type returnType, Type[] types, ParameterModifier[] modifiers); // 0x001E6A84 + protected override bool HasElementTypeImpl(); // 0x001E6C90 + protected override bool IsArrayImpl(); // 0x001E6CF4 + protected override bool IsByRefImpl(); // 0x001E6D78 + protected override bool IsCOMObjectImpl(); // 0x001E6D7C + protected override bool IsPointerImpl(); // 0x001E6D80 + protected override bool IsPrimitiveImpl(); // 0x001E6D84 + public override bool IsSubclassOf(Type type); // 0x001E6D88 + public override object InvokeMember(string name, BindingFlags invokeAttr, Binder binder, object target, object[] args, ParameterModifier[] modifiers, CultureInfo culture, string[] namedParameters); // 0x001E6E48 + public override Type GetElementType(); // 0x001E84EC + private string getFullName(bool full_name, bool assembly_qualified); // 0x001E8504 + public override bool IsDefined(Type attributeType, bool inherit); // 0x001E8770 + public override object[] GetCustomAttributes(bool inherit); // 0x001E8800 + public override object[] GetCustomAttributes(Type attributeType, bool inherit); // 0x001E8888 + public override int GetArrayRank(); // 0x001E89F8 + public void GetObjectData(SerializationInfo info, StreamingContext context); // 0x001E89FC + public override string ToString(); // 0x001E8A1C + public override Type[] GetGenericArguments(); // 0x001E8A28 + public override Type GetGenericTypeDefinition(); // 0x001E8B68 + private MethodBase CheckMethodSecurity(MethodBase mb); // 0x001E5E80 + private void ReorderParamArrayArguments(object[] args, MethodBase method); // 0x001E81D8 +} + +// Namespace: System +[Serializable] +public sealed class MulticastNotSupportedException : SystemException // TypeDefIndex: 1698 +{ + // Methods + public void .ctor(); // 0x001E996C + public void .ctor(string message); // 0x001E99E0 + public void .ctor(string message, Exception inner); // 0x001E99E8 + internal void .ctor(SerializationInfo info, StreamingContext context); // 0x001E99F0 +} + +// Namespace: System +public sealed class NonSerializedAttribute : Attribute // TypeDefIndex: 1699 +{ + // Methods + public void .ctor(); // 0x001E9A10 +} + +// Namespace: System +[Serializable] +public class NotFiniteNumberException : ArithmeticException // TypeDefIndex: 1700 +{ + // Fields + private const int Result = -2146233048; // 0x00 + private double offending_number; // 0x38 + + // Properties + public double OffendingNumber { get; } // 0x001E9C2C + + // Methods + public void .ctor(); // 0x001E9A18 + public void .ctor(double offendingNumber); // 0x001E9A98 + public void .ctor(string message); // 0x001E9ACC + public void .ctor(string message, double offendingNumber); // 0x001E9AF0 + public void .ctor(string message, double offendingNumber, Exception innerException); // 0x001E9B24 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x001E9B5C + public void .ctor(string message, Exception innerException); // 0x001E9C08 + public override void GetObjectData(SerializationInfo info, StreamingContext context); // 0x001E9C38 +} + +// Namespace: System +[Serializable] +public class NotImplementedException : SystemException // TypeDefIndex: 1701 +{ + // Fields + private const int Result = -2147467263; // 0x00 + + // Methods + public void .ctor(); // 0x001E584C + public void .ctor(string message); // 0x001E9CF0 + public void .ctor(string message, Exception inner); // 0x001E9D14 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x001E9D38 +} + +// Namespace: System +[Serializable] +public class NotSupportedException : SystemException // TypeDefIndex: 1702 +{ + // Fields + private const int Result = -2146233067; // 0x00 + + // Methods + public void .ctor(); // 0x001E9D58 + public void .ctor(string message); // 0x001D6108 + public void .ctor(string message, Exception innerException); // 0x001E9DD8 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x001E9DFC +} + +// Namespace: System +[Serializable] +public class NullReferenceException : SystemException // TypeDefIndex: 1703 +{ + // Fields + private const int Result = -2147467261; // 0x00 + + // Methods + public void .ctor(); // 0x001E9E1C + public void .ctor(string message); // 0x001E9E9C + public void .ctor(string message, Exception innerException); // 0x001E9EC0 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x001E9EE4 +} + +// Namespace: System +public static class Nullable // TypeDefIndex: 1704 +{ + // Methods + public static int Compare(Nullable`1 value1, Nullable`1 value2); + public static bool Equals(Nullable`1 value1, Nullable`1 value2); + public static Type GetUnderlyingType(Type nullableType); // 0x001E9F04 +} + +// Namespace: System +internal sealed class NumberFormatter // TypeDefIndex: 1705 +{ + // Fields + private const int DefaultExpPrecision = 6; // 0x00 + private const int HundredMillion = 100000000; // 0x00 + private const long SeventeenDigitsThreshold = 10000000000000000; // 0x00 + private const ulong ULongDivHundredMillion = 184467440737; // 0x00 + private const ulong ULongModHundredMillion = 9551616; // 0x00 + private const int DoubleBitsExponentShift = 52; // 0x00 + private const int DoubleBitsExponentMask = 2047; // 0x00 + private const long DoubleBitsMantissaMask = 4503599627370495; // 0x00 + private const int DecimalBitsScaleMask = 2031616; // 0x00 + private const int SingleDefPrecision = 7; // 0x00 + private const int DoubleDefPrecision = 15; // 0x00 + private const int Int8DefPrecision = 3; // 0x00 + private const int UInt8DefPrecision = 3; // 0x00 + private const int Int16DefPrecision = 5; // 0x00 + private const int UInt16DefPrecision = 5; // 0x00 + private const int Int32DefPrecision = 10; // 0x00 + private const int UInt32DefPrecision = 10; // 0x00 + private const int Int64DefPrecision = 19; // 0x00 + private const int UInt64DefPrecision = 20; // 0x00 + private const int DecimalDefPrecision = 100; // 0x00 + private const int TenPowersListLength = 19; // 0x00 + private const double MinRoundtripVal = -1.79769313486231E+308; // 0x00 + private const double MaxRoundtripVal = 1.79769313486231E+308; // 0x00 + private static readonly void * MantissaBitsTable; // 0x00 + private static readonly void * TensExponentTable; // 0x04 + private static readonly void * DigitLowerTable; // 0x08 + private static readonly void * DigitUpperTable; // 0x0C + private static readonly void * TenPowersList; // 0x10 + private static readonly void * DecHexDigits; // 0x14 + private Thread _thread; // 0x08 + private NumberFormatInfo _nfi; // 0x0C + private bool _NaN; // 0x10 + private bool _infinity; // 0x11 + private bool _isCustomFormat; // 0x12 + private bool _specifierIsUpper; // 0x13 + private bool _positive; // 0x14 + private char _specifier; // 0x16 + private int _precision; // 0x18 + private int _defPrecision; // 0x1C + private int _digitsLen; // 0x20 + private int _offset; // 0x24 + private int _decPointPos; // 0x28 + private uint _val1; // 0x2C + private uint _val2; // 0x30 + private uint _val3; // 0x34 + private uint _val4; // 0x38 + private char[] _cbuf; // 0x3C + private int _ind; // 0x40 + private static NumberFormatter threadNumberFormatter; // 0x80000000 + + // Properties + public CultureInfo CurrentCulture { set; } // 0x001EA144 + private int IntegerDigits { get; } // 0x001EBDA0 + private int DecimalDigits { get; } // 0x001EBDB0 + private bool IsFloatingSource { get; } // 0x001EBDC4 + private bool IsZero { get; } // 0x001EBDDC + private bool IsZeroInteger { get; } // 0x001EBDF0 + + // Methods + public void .ctor(Thread current); // 0x001EA088 + private static void .cctor(); // 0x001EA184 + private static void GetFormatterTables(out void * MantissaBitsTable, out void * TensExponentTable, out void * DigitLowerTable, out void * DigitUpperTable, out void * TenPowersList, out void * DecHexDigits); // 0x001EA208 + private static long GetTenPowerOf(int i); // 0x001EA20C + private void InitDecHexDigits(uint value); // 0x001EA2A4 + private void InitDecHexDigits(ulong value); // 0x001EA57C + private void InitDecHexDigits(uint hi, ulong lo); // 0x001EA754 + private static uint FastToDecHex(int val); // 0x001EA390 + private static uint ToDecHex(int val); // 0x001EA494 + private static int FastDecHexLen(int val); // 0x001EAA4C + private static int DecHexLen(uint val); // 0x001EAA7C + private int DecHexLen(); // 0x001EAB68 + private static int ScaleOrder(long hi); // 0x001EACD4 + private int InitialFloatingPrecision(); // 0x001EAD80 + private static int ParsePrecision(string format); // 0x001EADD0 + private void Init(string format); // 0x001EAE4C + private void InitHex(ulong value); // 0x001EAF9C + private void Init(string format, int value, int defPrecision); // 0x001EB004 + private void Init(string format, uint value, int defPrecision); // 0x001EB084 + private void Init(string format, long value); // 0x001EB0F8 + private void Init(string format, ulong value); // 0x001EB180 + private void Init(string format, double value, int defPrecision); // 0x001EB1FC + private void Init(string format, Decimal value); // 0x001EB73C + private void ResetCharBuf(int size); // 0x001EB9C4 + private void Resize(int len); // 0x001EBA58 + private void Append(char c); // 0x001EBADC + private void Append(char c, int cnt); // 0x001EBB68 + private void Append(string s); // 0x001EBC18 + private NumberFormatInfo GetNumberFormatInstance(IFormatProvider fp); // 0x001EBD04 + private void RoundPos(int pos); // 0x001EBE14 + private bool RoundDecimal(int decimals); // 0x001EBF98 + private bool RoundBits(int shift); // 0x001EBE20 + private void RemoveTrailingZeros(); // 0x001EC0D4 + private void AddOneToDecHex(); // 0x001EBFAC + private static uint AddOneToDecHex(uint val); // 0x001EC110 + private int CountTrailingZeros(); // 0x001EB5D0 + private static int CountTrailingZeros(uint val); // 0x001EC1BC + private static NumberFormatter GetInstance(); // 0x001EC230 + private void Release(); // 0x001EC33C + internal static void SetThreadCurrentCulture(CultureInfo culture); // 0x001EC3CC + public static string NumberToString(string format, sbyte value, IFormatProvider fp); // 0x001EC4E4 + public static string NumberToString(string format, byte value, IFormatProvider fp); // 0x001EC87C + public static string NumberToString(string format, ushort value, IFormatProvider fp); // 0x001ECA00 + public static string NumberToString(string format, short value, IFormatProvider fp); // 0x001D8344 + public static string NumberToString(string format, uint value, IFormatProvider fp); // 0x001ECB84 + public static string NumberToString(string format, int value, IFormatProvider fp); // 0x001DADC4 + public static string NumberToString(string format, ulong value, IFormatProvider fp); // 0x001ECD08 + public static string NumberToString(string format, long value, IFormatProvider fp); // 0x001DD65C + public static string NumberToString(string format, float value, IFormatProvider fp); // 0x001ECE90 + public static string NumberToString(string format, double value, IFormatProvider fp); // 0x001ED314 + public static string NumberToString(string format, Decimal value, IFormatProvider fp); // 0x001ED5E8 + public static string NumberToString(uint value, IFormatProvider fp); // 0x001ED7A4 + public static string NumberToString(int value, IFormatProvider fp); // 0x001D8088 + public static string NumberToString(ulong value, IFormatProvider fp); // 0x001EDA1C + public static string NumberToString(long value, IFormatProvider fp); // 0x001DD404 + public static string NumberToString(float value, IFormatProvider fp); // 0x001EDBBC + public static string NumberToString(double value, IFormatProvider fp); // 0x001EDF28 + private string FastIntegerToString(int value, IFormatProvider fp); // 0x001ED92C + private string IntegerToString(string format, IFormatProvider fp); // 0x001EC668 + private string NumberToString(string format, NumberFormatInfo nfi); // 0x001ED130 + public string FormatCurrency(int precision, NumberFormatInfo nfi); // 0x001EE3C4 + private string FormatDecimal(int precision, NumberFormatInfo nfi); // 0x001EE6BC + private string FormatHexadecimal(int precision); // 0x001EEC2C + public string FormatFixedPoint(int precision, NumberFormatInfo nfi); // 0x001EE7F4 + private string FormatRoundtrip(double origval, NumberFormatInfo nfi); // 0x001ED530 + private string FormatRoundtrip(float origval, NumberFormatInfo nfi); // 0x001ED0B0 + private string FormatGeneral(int precision, NumberFormatInfo nfi); // 0x001EDDB8 + public string FormatNumber(int precision, NumberFormatInfo nfi); // 0x001EE904 + public string FormatPercent(int precision, NumberFormatInfo nfi); // 0x001EEAB8 + public string FormatExponential(int precision, NumberFormatInfo nfi); // 0x001EE7A4 + private string FormatExponential(int precision, NumberFormatInfo nfi, int expDigits); // 0x001EFBAC + public string FormatCustom(string format, NumberFormatInfo nfi); // 0x001EEDF8 + private static void ZeroTrimEnd(StringBuilder sb, bool canEmpty); // 0x001F0258 + private static bool IsZeroOnly(StringBuilder sb); // 0x001F016C + private static void AppendNonNegativeNumber(StringBuilder sb, int v); // 0x001EFF44 + private void AppendIntegerString(int minLength, StringBuilder sb); // 0x001F009C + private void AppendIntegerString(int minLength); // 0x001EFAC0 + private void AppendDecimalString(int precision, StringBuilder sb); // 0x001F0138 + private void AppendDecimalString(int precision); // 0x001EF6D4 + private void AppendIntegerStringWithGroupSeparator(int[] groups, string groupSeparator); // 0x001EF47C + private void AppendExponent(NumberFormatInfo nfi, int exponent, int minDigits); // 0x001EFD9C + private void AppendOneDigit(int start); // 0x001EFCB0 + private void FastAppendDigits(int val, bool force); // 0x001EE11C + private void AppendDigits(int start, int end); // 0x001EF6EC + private void AppendDigits(int start, int end, StringBuilder sb); // 0x001F0340 + private void Multiply10(int count); // 0x001EFC90 + private void Divide10(int count); // 0x001EFF24 + private NumberFormatter GetClone(); // 0x001EFB1C +} + +// Namespace: +private class CustomInfo // TypeDefIndex: 1706 +{ + // Fields + public bool UseGroup; // 0x08 + public int DecimalDigits; // 0x0C + public int DecimalPointPos; // 0x10 + public int DecimalTailSharpDigits; // 0x14 + public int IntegerDigits; // 0x18 + public int IntegerHeadSharpDigits; // 0x1C + public int IntegerHeadPos; // 0x20 + public bool UseExponent; // 0x24 + public int ExponentDigits; // 0x28 + public int ExponentTailSharpDigits; // 0x2C + public bool ExponentNegativeSignOnly; // 0x30 + public int DividePlaces; // 0x34 + public int Percents; // 0x38 + public int Permilles; // 0x3C + + // Methods + public void .ctor(); // 0x001AF618 + public static void GetActiveSection(string format, bool positive, bool zero, int offset, int length); // 0x001AF630 + public static CustomInfo Parse(string format, int offset, int length, NumberFormatInfo nfi); // 0x001AFB78 + public string Format(string format, int offset, int length, NumberFormatInfo nfi, bool positive, StringBuilder sb_int, StringBuilder sb_dec, StringBuilder sb_exp); // 0x001B0238 +} + +// Namespace: System +[Serializable] +public class ObjectDisposedException : InvalidOperationException // TypeDefIndex: 1707 +{ + // Fields + private string obj_name; // 0x34 + private string msg; // 0x38 + + // Properties + public override string Message { get; } // 0x001B0ED0 + public string ObjectName { get; } // 0x001B0ED8 + + // Methods + public void .ctor(string objectName); // 0x001B0D64 + public void .ctor(string objectName, string message); // 0x001B0DF0 + public void .ctor(string message, Exception innerException); // 0x001B0E1C + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x001B0E24 + public override void GetObjectData(SerializationInfo info, StreamingContext context); // 0x001B0EE0 +} + +// Namespace: System +[Serializable] +public sealed class OperatingSystem : ICloneable, ISerializable // TypeDefIndex: 1708 +{ + // Fields + private PlatformID _platform; // 0x08 + private Version _version; // 0x0C + private string _servicePack; // 0x10 + + // Properties + public PlatformID Platform { get; } // 0x001B1100 + public Version Version { get; } // 0x001B1108 + public string ServicePack { get; } // 0x001B1110 + public string VersionString { get; } // 0x001B1118 + + // Methods + public void .ctor(PlatformID platform, Version version); // 0x001B0FF0 + public object Clone(); // 0x001B12C0 + public void GetObjectData(SerializationInfo info, StreamingContext context); // 0x001B133C + public override string ToString(); // 0x001B111C +} + +// Namespace: System +[Serializable] +public class OperationCanceledException : SystemException // TypeDefIndex: 1709 +{ + // Fields + private const int Result = -2146233029; // 0x00 + + // Methods + public void .ctor(); // 0x001B1450 + public void .ctor(string message); // 0x001B14D0 + public void .ctor(string message, Exception innerException); // 0x001B14F4 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x001B1518 +} + +// Namespace: System +[Serializable] +public class OutOfMemoryException : SystemException // TypeDefIndex: 1710 +{ + // Fields + private const int Result = -2147024882; // 0x00 + + // Methods + public void .ctor(); // 0x001B185C + public void .ctor(string message); // 0x001B18DC + public void .ctor(string message, Exception innerException); // 0x001B1900 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x001B1924 +} + +// Namespace: System +[Serializable] +public class OverflowException : ArithmeticException // TypeDefIndex: 1711 +{ + // Fields + private const int Result = -2146233066; // 0x00 + + // Methods + public void .ctor(); // 0x001B1944 + public void .ctor(string message); // 0x001B19C4 + public void .ctor(string message, Exception innerException); // 0x001B19E8 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x001B1A0C +} + +// Namespace: System +[Serializable] +public enum PlatformID // TypeDefIndex: 1712 +{ + Win32S = 0, + Win32Windows = 1, + Win32NT = 2, + WinCE = 3, + Unix = 4, + Xbox = 5, + MacOSX = 6 +} + +// Namespace: System +[Serializable] +public class PlatformNotSupportedException : NotSupportedException // TypeDefIndex: 1713 +{ + // Fields + private const int Result = -2146233031; // 0x00 + + // Methods + public void .ctor(); // 0x001B1A34 + public void .ctor(string message); // 0x001B1AB4 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x001B1AD8 + public void .ctor(string message, Exception inner); // 0x001B1AF8 +} + +// Namespace: System +[Serializable] +public class Random // TypeDefIndex: 1714 +{ + // Fields + private const int MBIG = 2147483647; // 0x00 + private const int MSEED = 161803398; // 0x00 + private const int MZ = 0; // 0x00 + private int inext; // 0x08 + private int inextp; // 0x0C + private int[] SeedArray; // 0x10 + + // Methods + public void .ctor(); // 0x001B1B1C + public void .ctor(int Seed); // 0x001B1B40 + protected virtual double Sample(); // 0x001B1E08 + public virtual int Next(); // 0x001B1F18 + public virtual int Next(int maxValue); // 0x001B1F50 + public virtual int Next(int minValue, int maxValue); // 0x001B2038 + public virtual void NextBytes(byte[] buffer); // 0x001B2138 + public virtual double NextDouble(); // 0x001B2268 +} + +// Namespace: System +[Serializable] +public class RankException : SystemException // TypeDefIndex: 1715 +{ + // Fields + private const int Result = -2146233065; // 0x00 + + // Methods + public void .ctor(); // 0x001B2278 + public void .ctor(string message); // 0x001B22F8 + public void .ctor(string message, Exception innerException); // 0x001B231C + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x001B2340 +} + +// Namespace: System +public class ResolveEventArgs : EventArgs // TypeDefIndex: 1716 +{ + // Fields + private string m_Name; // 0x08 + + // Properties + public string Name { get; } // 0x0036B0C0 + + // Methods + public void .ctor(string name); // 0x0036B034 +} + +// Namespace: System +[Serializable] +public struct RuntimeMethodHandle : ISerializable // TypeDefIndex: 1717 +{ + // Fields + private IntPtr value; // 0x08 + + // Properties + public IntPtr Value { get; } // 0x0008BD8C + + // Methods + internal void .ctor(IntPtr v); // 0x0008BD68 + private void .ctor(SerializationInfo info, StreamingContext context); // 0x0008BD70 + public void GetObjectData(SerializationInfo info, StreamingContext context); // 0x0008BD94 + private static IntPtr GetFunctionPointer(IntPtr m); // 0x0020EB38 + public IntPtr GetFunctionPointer(); // 0x0008BDB0 + public override bool Equals(object obj); // 0x0008BDB8 + public bool Equals(RuntimeMethodHandle handle); // 0x0008BDC0 + public override int GetHashCode(); // 0x0008BDCC + public static bool op_Equality(RuntimeMethodHandle left, RuntimeMethodHandle right); // 0x0020EC70 + public static bool op_Inequality(RuntimeMethodHandle left, RuntimeMethodHandle right); // 0x0020EC78 +} + +// Namespace: System +public sealed class STAThreadAttribute : Attribute // TypeDefIndex: 1718 +{ + // Methods + public void .ctor(); // 0x002106C4 +} + +// Namespace: System +[Serializable] +public sealed class StackOverflowException : SystemException // TypeDefIndex: 1719 +{ + // Methods + public void .ctor(); // 0x002489FC + public void .ctor(string message); // 0x00248A70 + public void .ctor(string message, Exception innerException); // 0x00248A78 + internal void .ctor(SerializationInfo info, StreamingContext context); // 0x00248A80 +} + +// Namespace: System +[Serializable] +public abstract class StringComparer : IComparer`1, IEqualityComparer`1, IComparer, IEqualityComparer // TypeDefIndex: 1720 +{ + // Fields + private static StringComparer invariantCultureIgnoreCase; // 0x00 + private static StringComparer invariantCulture; // 0x04 + private static StringComparer ordinalIgnoreCase; // 0x08 + private static StringComparer ordinal; // 0x0C + + // Properties + public static StringComparer CurrentCulture { get; } // 0x0050F37C + public static StringComparer CurrentCultureIgnoreCase { get; } // 0x0050F428 + public static StringComparer InvariantCulture { get; } // 0x0050F4D4 + public static StringComparer InvariantCultureIgnoreCase { get; } // 0x0050F560 + public static StringComparer Ordinal { get; } // 0x0050F5EC + public static StringComparer OrdinalIgnoreCase { get; } // 0x0050F678 + + // Methods + protected void .ctor(); // 0x0050F22C + private static void .cctor(); // 0x0050F234 + public static StringComparer Create(CultureInfo culture, bool ignoreCase); // 0x0050F704 + public int Compare(object x, object y); // 0x0050F7E0 + public bool Equals(object x, object y); // 0x0050F98C + public int GetHashCode(object obj); // 0x0050FA60 + public abstract int Compare(string x, string y); + public abstract bool Equals(string x, string y); + public abstract int GetHashCode(string obj); +} + +// Namespace: System +[Serializable] +internal sealed class CultureAwareComparer : StringComparer // TypeDefIndex: 1721 +{ + // Fields + private readonly bool _ignoreCase; // 0x08 + private readonly CompareInfo _compareInfo; // 0x0C + + // Methods + public void .ctor(CultureInfo ci, bool ignore_case); // 0x004AB208 + public override int Compare(string x, string y); // 0x004AB2C0 + public override bool Equals(string x, string y); // 0x004AB318 + public override int GetHashCode(string s); // 0x004AB338 +} + +// Namespace: System +[Serializable] +internal sealed class OrdinalComparer : StringComparer // TypeDefIndex: 1722 +{ + // Fields + private readonly bool _ignoreCase; // 0x08 + + // Methods + public void .ctor(bool ignoreCase); // 0x001B1538 + public override int Compare(string x, string y); // 0x001B15C4 + public override bool Equals(string x, string y); // 0x001B16C4 + public override int GetHashCode(string s); // 0x001B1784 +} + +// Namespace: System +[Serializable] +public enum StringComparison // TypeDefIndex: 1723 +{ + CurrentCulture = 0, + CurrentCultureIgnoreCase = 1, + InvariantCulture = 2, + InvariantCultureIgnoreCase = 3, + Ordinal = 4, + OrdinalIgnoreCase = 5 +} + +// Namespace: System +public enum StringSplitOptions // TypeDefIndex: 1724 +{ + None = 0, + RemoveEmptyEntries = 1 +} + +// Namespace: System +[Serializable] +public class SystemException : Exception // TypeDefIndex: 1725 +{ + // Fields + private const int Result = -2146233087; // 0x00 + + // Methods + public void .ctor(); // 0x0050FB58 + public void .ctor(string message); // 0x0050FBD8 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x0050FBFC + public void .ctor(string message, Exception innerException); // 0x0050FC1C +} + +// Namespace: System +internal enum TermInfoBooleans // TypeDefIndex: 1726 +{ + AutoLeftMargin = 0, + AutoRightMargin = 1, + NoEscCtlc = 2, + CeolStandoutGlitch = 3, + EatNewlineGlitch = 4, + EraseOverstrike = 5, + GenericType = 6, + HardCopy = 7, + HasMetaKey = 8, + HasStatusLine = 9, + InsertNullGlitch = 10, + MemoryAbove = 11, + MemoryBelow = 12, + MoveInsertMode = 13, + MoveStandoutMode = 14, + OverStrike = 15, + StatusLineEscOk = 16, + DestTabsMagicSmso = 17, + TildeGlitch = 18, + TransparentUnderline = 19, + XonXoff = 20, + NeedsXonXoff = 21, + PrtrSilent = 22, + HardCursor = 23, + NonRevRmcup = 24, + NoPadChar = 25, + NonDestScrollRegion = 26, + CanChange = 27, + BackColorErase = 28, + HueLightnessSaturation = 29, + ColAddrGlitch = 30, + CrCancelsMicroMode = 31, + HasPrintWheel = 32, + RowAddrGlitch = 33, + SemiAutoRightMargin = 34, + CpiChangesRes = 35, + LpiChangesRes = 36, + Last = 37 +} + +// Namespace: System +[Serializable] +public class ThreadStaticAttribute : Attribute // TypeDefIndex: 1727 +{ + // Methods + public void .ctor(); // 0x0052D198 +} + +// Namespace: System +[Serializable] +public struct TimeSpan : IComparable, IComparable`1, IEquatable`1 // TypeDefIndex: 1728 +{ + // Fields + public const long TicksPerDay = 864000000000; // 0x00 + public const long TicksPerHour = 36000000000; // 0x00 + public const long TicksPerMillisecond = 10000; // 0x00 + public const long TicksPerMinute = 600000000; // 0x00 + public const long TicksPerSecond = 10000000; // 0x00 + public static readonly TimeSpan MaxValue; // 0x00 + public static readonly TimeSpan MinValue; // 0x08 + public static readonly TimeSpan Zero; // 0x10 + private long _ticks; // 0x08 + + // Properties + public int Days { get; } // 0x000A78F0 + public int Hours { get; } // 0x000A7910 + public int Milliseconds { get; } // 0x000A794C + public int Minutes { get; } // 0x000A7980 + public int Seconds { get; } // 0x000A79BC + public long Ticks { get; } // 0x000A79F8 + public double TotalDays { get; } // 0x000A7A00 + public double TotalHours { get; } // 0x000A7A30 + public double TotalMilliseconds { get; } // 0x000A7A60 + public double TotalMinutes { get; } // 0x000A7A90 + public double TotalSeconds { get; } // 0x000A7AC0 + + // Methods + public void .ctor(long ticks); // 0x000A7878 + public void .ctor(int hours, int minutes, int seconds); // 0x000A7888 + public void .ctor(int days, int hours, int minutes, int seconds); // 0x000A78A4 + public void .ctor(int days, int hours, int minutes, int seconds, int milliseconds); // 0x000A78C8 + private static void .cctor(); // 0x0041D870 + internal static long CalculateTicks(int days, int hours, int minutes, int seconds, int milliseconds); // 0x0041D634 + public TimeSpan Add(TimeSpan ts); // 0x000A7AF0 + public static int Compare(TimeSpan t1, TimeSpan t2); // 0x0041DD18 + public int CompareTo(object value); // 0x000A7B0C + public int CompareTo(TimeSpan value); // 0x000A7B14 + public bool Equals(TimeSpan obj); // 0x000A7B30 + public TimeSpan Duration(); // 0x000A7B4C + public override bool Equals(object value); // 0x000A7BB4 + public static bool Equals(TimeSpan t1, TimeSpan t2); // 0x0041E080 + public static TimeSpan FromDays(double value); // 0x0041E098 + public static TimeSpan FromHours(double value); // 0x0041E5AC + public static TimeSpan FromMinutes(double value); // 0x0041E658 + public static TimeSpan FromSeconds(double value); // 0x0041E704 + public static TimeSpan FromMilliseconds(double value); // 0x0041E7B0 + private static TimeSpan From(double value, long tickMultiplicator); // 0x0041E148 + public static TimeSpan FromTicks(long value); // 0x0041E858 + public override int GetHashCode(); // 0x000A7BBC + public TimeSpan Negate(); // 0x000A7BC8 + public static TimeSpan Parse(string s); // 0x0041E98C + public static bool TryParse(string s, out TimeSpan result); // 0x0041EDFC + public TimeSpan Subtract(TimeSpan ts); // 0x000A7BDC + public override string ToString(); // 0x000A7BF8 + public static TimeSpan op_Addition(TimeSpan t1, TimeSpan t2); // 0x0041F500 + public static bool op_Equality(TimeSpan t1, TimeSpan t2); // 0x0041F534 + public static bool op_GreaterThan(TimeSpan t1, TimeSpan t2); // 0x0041F54C + public static bool op_GreaterThanOrEqual(TimeSpan t1, TimeSpan t2); // 0x0041F564 + public static bool op_Inequality(TimeSpan t1, TimeSpan t2); // 0x0041F57C + public static bool op_LessThan(TimeSpan t1, TimeSpan t2); // 0x0041F590 + public static bool op_LessThanOrEqual(TimeSpan t1, TimeSpan t2); // 0x0041F5A8 + public static TimeSpan op_Subtraction(TimeSpan t1, TimeSpan t2); // 0x0041F5C0 + public static TimeSpan op_UnaryNegation(TimeSpan t); // 0x0041F5F4 + public static TimeSpan op_UnaryPlus(TimeSpan t); // 0x0041F610 +} + +// Namespace: +private class Parser // TypeDefIndex: 1729 +{ + // Fields + private string _src; // 0x08 + private int _cur; // 0x0C + private int _length; // 0x10 + private bool formatError; // 0x14 + + // Properties + public bool AtEnd { get; } // 0x0041F620 + + // Methods + public void .ctor(string src); // 0x0041EA78 + private void ParseWhiteSpace(); // 0x0041F638 + private bool ParseSign(); // 0x0041F6F4 + private int ParseInt(bool optional); // 0x0041F758 + private bool ParseOptDot(); // 0x0041F91C + private void ParseOptColon(); // 0x0041F980 + private long ParseTicks(); // 0x0041F9E4 + public TimeSpan Execute(); // 0x0041EAB0 +} + +// Namespace: System +[Serializable] +public abstract class TimeZone // TypeDefIndex: 1730 +{ + // Fields + private static TimeZone currentTimeZone; // 0x00 + [NonSerialized] private static object tz_lock; // 0x04 + [NonSerialized] private static long timezone_check; // 0x08 + + // Properties + public static TimeZone CurrentTimeZone { get; } // 0x0041FBD4 + public abstract string DaylightName { get; } + public abstract string StandardName { get; } + + // Methods + protected void .ctor(); // 0x0041FB4C + private static void .cctor(); // 0x0041FB54 + public abstract DaylightTime GetDaylightChanges(int year); + public abstract TimeSpan GetUtcOffset(DateTime time); + public virtual bool IsDaylightSavingTime(DateTime time); // 0x0041FE64 + public static bool IsDaylightSavingTime(DateTime time, DaylightTime daylightTimes); // 0x0041FF40 + public virtual DateTime ToLocalTime(DateTime time); // 0x00420214 + public virtual DateTime ToUniversalTime(DateTime time); // 0x00420784 + internal TimeSpan GetLocalTimeDiff(DateTime time); // 0x00420AE4 + internal TimeSpan GetLocalTimeDiff(DateTime time, TimeSpan utc_offset); // 0x00420B54 +} + +// Namespace: System +[Serializable] +internal class CurrentSystemTimeZone : TimeZone, IDeserializationCallback // TypeDefIndex: 1731 +{ + // Fields + private string m_standardName; // 0x08 + private string m_daylightName; // 0x0C + private Hashtable m_CachedDaylightChanges; // 0x10 + private long m_ticksOffset; // 0x18 + [NonSerialized] private TimeSpan utcOffsetWithOutDLS; // 0x20 + [NonSerialized] private TimeSpan utcOffsetWithDLS; // 0x28 + private static int this_year; // 0x00 + private static DaylightTime this_year_dlt; // 0x04 + + // Properties + public override string DaylightName { get; } // 0x004ABE30 + public override string StandardName { get; } // 0x004ABE38 + + // Methods + internal void .ctor(); // 0x004AB444 + internal void .ctor(long lnow); // 0x004AB4F0 + private void System.Runtime.Serialization.IDeserializationCallback.OnDeserialization(object sender); // 0x004ABE28 + private static bool GetTimeZoneData(int year, out long[] data, out string[] names); // 0x004ABA88 + public override DaylightTime GetDaylightChanges(int year); // 0x004ABE40 + public override TimeSpan GetUtcOffset(DateTime time); // 0x004AC218 + private void OnDeserialization(DaylightTime dlt); // 0x004ABBD0 + private DaylightTime GetDaylightTimeFromData(long[] data); // 0x004ABA8C +} + +// Namespace: +internal enum TimeZoneData // TypeDefIndex: 1732 +{ + DaylightSavingStartIdx = 0, + DaylightSavingEndIdx = 1, + UtcOffsetIdx = 2, + AdditionalDaylightOffsetIdx = 3 +} + +// Namespace: +internal enum TimeZoneNames // TypeDefIndex: 1733 +{ + StandardNameIdx = 0, + DaylightNameIdx = 1 +} + +// Namespace: System +[Serializable] +public class TimeoutException : SystemException // TypeDefIndex: 1734 +{ + // Fields + private const int Result = -2146233083; // 0x00 + + // Methods + public void .ctor(); // 0x00420EF0 + public void .ctor(string message); // 0x00420F70 + public void .ctor(string message, Exception innerException); // 0x00420F94 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x00420FB8 +} + +// Namespace: System +[Serializable] +public enum TypeCode // TypeDefIndex: 1735 +{ + Empty = 0, + Object = 1, + DBNull = 2, + Boolean = 3, + Char = 4, + SByte = 5, + Byte = 6, + Int16 = 7, + UInt16 = 8, + Int32 = 9, + UInt32 = 10, + Int64 = 11, + UInt64 = 12, + Single = 13, + Double = 14, + Decimal = 15, + DateTime = 16, + String = 18 +} + +// Namespace: System +[Serializable] +public sealed class TypeInitializationException : SystemException // TypeDefIndex: 1736 +{ + // Fields + private string type_name; // 0x34 + + // Properties + public string TypeName { get; } // 0x00426730 + + // Methods + public void .ctor(string fullTypeName, Exception innerException); // 0x004265C0 + internal void .ctor(SerializationInfo info, StreamingContext context); // 0x00426684 + public override void GetObjectData(SerializationInfo info, StreamingContext context); // 0x00426738 +} + +// Namespace: System +[Serializable] +public class TypeLoadException : SystemException // TypeDefIndex: 1737 +{ + // Fields + private const int Result = -2146233054; // 0x00 + private string className; // 0x34 + private string assemblyName; // 0x38 + + // Properties + public override string Message { get; } // 0x0042694C + public string TypeName { get; } // 0x00426AB8 + + // Methods + public void .ctor(); // 0x00425AB8 + public void .ctor(string message); // 0x00422618 + public void .ctor(string message, Exception inner); // 0x004267E8 + internal void .ctor(string className, string assemblyName); // 0x0042680C + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x00426830 + public override void GetObjectData(SerializationInfo info, StreamingContext context); // 0x00426B54 +} + +// Namespace: System +[Serializable] +public class TypeUnloadedException : SystemException // TypeDefIndex: 1738 +{ + // Methods + public void .ctor(); // 0x00426DB0 + public void .ctor(string message); // 0x00426E24 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x00426E2C + public void .ctor(string message, Exception innerException); // 0x00426E4C +} + +// Namespace: System +[Serializable] +public class UnauthorizedAccessException : SystemException // TypeDefIndex: 1739 +{ + // Fields + private const int Result = -2146233088; // 0x00 + + // Methods + public void .ctor(); // 0x0055AA70 + public void .ctor(string message); // 0x0055AAF0 + public void .ctor(string message, Exception inner); // 0x0055AB14 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x0055AB38 +} + +// Namespace: System +[Serializable] +public class UnhandledExceptionEventArgs : EventArgs // TypeDefIndex: 1740 +{ + // Fields + private object exception; // 0x08 + private bool m_isTerminating; // 0x0C + + // Properties + public object ExceptionObject { get; } // 0x0055ABEC + public bool IsTerminating { get; } // 0x0055ABF4 + + // Methods + public void .ctor(object exception, bool isTerminating); // 0x0055AB58 +} + +// Namespace: System +[Serializable] +internal class UnitySerializationHolder : ISerializable, IObjectReference // TypeDefIndex: 1741 +{ + // Fields + private string _data; // 0x08 + private UnityType _unityType; // 0x0C + private string _assemblyName; // 0x10 + + // Methods + private void .ctor(SerializationInfo info, StreamingContext ctx); // 0x0055B000 + public static void GetTypeData(Type instance, SerializationInfo info, StreamingContext ctx); // 0x0055B108 + public static void GetDBNullData(DBNull instance, SerializationInfo info, StreamingContext ctx); // 0x0055B2D8 + public static void GetAssemblyData(Assembly instance, SerializationInfo info, StreamingContext ctx); // 0x0055B4B0 + public static void GetModuleData(Module instance, SerializationInfo info, StreamingContext ctx); // 0x0055B658 + public virtual void GetObjectData(SerializationInfo info, StreamingContext context); // 0x0055B800 + public virtual object GetRealObject(StreamingContext context); // 0x0055B888 +} + +// Namespace: +private enum UnityType : byte // TypeDefIndex: 1742 +{ + DBNull = 2, + Type = 4, + Module = 5, + Assembly = 6 +} + +// Namespace: System +internal struct Variant // TypeDefIndex: 1743 +{ + // Fields + public short vt; // 0x08 + public ushort wReserved1; // 0x0A + public ushort wReserved2; // 0x0C + public ushort wReserved3; // 0x0E + public long llVal; // 0x10 + public int lVal; // 0x10 + public byte bVal; // 0x10 + public short iVal; // 0x10 + public float fltVal; // 0x10 + public double dblVal; // 0x10 + public short boolVal; // 0x10 + public IntPtr bstrVal; // 0x10 + public sbyte cVal; // 0x10 + public ushort uiVal; // 0x10 + public uint ulVal; // 0x10 + public ulong ullVal; // 0x10 + public int intVal; // 0x10 + public uint uintVal; // 0x10 + public IntPtr pdispVal; // 0x10 + public BRECORD bRecord; // 0x10 + + // Methods + public void SetValue(object obj); // 0x000C7B90 + public object GetValue(); // 0x000C7B98 + public void Clear(); // 0x000C7BA0 +} + +// Namespace: System +internal struct BRECORD // TypeDefIndex: 1744 +{ + // Fields + private IntPtr pvRecord; // 0x08 + private IntPtr pRecInfo; // 0x0C + +} + +// Namespace: System +[Serializable] +public sealed class Version : IComparable, ICloneable, IComparable`1, IEquatable`1 // TypeDefIndex: 1745 +{ + // Fields + private const int UNDEFINED = -1; // 0x00 + private int _Major; // 0x08 + private int _Minor; // 0x0C + private int _Build; // 0x10 + private int _Revision; // 0x14 + + // Properties + public int Build { get; } // 0x0055D15C + public int Major { get; } // 0x0055D164 + public int Minor { get; } // 0x0055D16C + public int Revision { get; } // 0x0055D174 + public short MajorRevision { get; } // 0x0055D17C + public short MinorRevision { get; } // 0x0055D184 + + // Methods + public void .ctor(); // 0x0055CBD0 + public void .ctor(string version); // 0x0055CE18 + public void .ctor(int major, int minor); // 0x0055D080 + public void .ctor(int major, int minor, int build); // 0x0055D0C8 + public void .ctor(int major, int minor, int build, int revision); // 0x0055D110 + private void CheckedSet(int defined, int major, int minor, int build, int revision); // 0x0055CC44 + public object Clone(); // 0x0055D18C + public int CompareTo(object version); // 0x0055D29C + public override bool Equals(object obj); // 0x0055D430 + public int CompareTo(Version value); // 0x0055D388 + public bool Equals(Version obj); // 0x0055D4B8 + public override int GetHashCode(); // 0x0055D560 + public override string ToString(); // 0x0055D580 + public string ToString(int fieldCount); // 0x0055D718 + internal static Version CreateFromString(string info); // 0x0055DF50 + public static bool op_Equality(Version v1, Version v2); // 0x0055D540 + public static bool op_Inequality(Version v1, Version v2); // 0x0055D548 + public static bool op_GreaterThan(Version v1, Version v2); // 0x0055E1FC + public static bool op_GreaterThanOrEqual(Version v1, Version v2); // 0x0055E23C + public static bool op_LessThan(Version v1, Version v2); // 0x0055E27C + public static bool op_LessThanOrEqual(Version v1, Version v2); // 0x0055E2B0 +} + +// Namespace: System +[Serializable] +public class WeakReference : ISerializable // TypeDefIndex: 1746 +{ + // Fields + private bool isLongReference; // 0x08 + private GCHandle gcHandle; // 0x0C + + // Properties + public virtual bool IsAlive { get; } // 0x0055E4E4 + public virtual object Target { get; set; } // 0x0055E508 0x0055E514 + public virtual bool TrackResurrection { get; } // 0x0055E520 + + // Methods + protected void .ctor(); // 0x0055E2F0 + public void .ctor(object target); // 0x0055E2F8 + public void .ctor(object target, bool trackResurrection); // 0x0055E330 + protected void .ctor(SerializationInfo info, StreamingContext context); // 0x0055E390 + private void AllocateHandle(object target); // 0x0055E368 + protected override void Finalize(); // 0x0055E528 + public virtual void GetObjectData(SerializationInfo info, StreamingContext context); // 0x0055E594 +} + +// Namespace: System +public interface _AppDomain // TypeDefIndex: 1747 +{ + // Properties + string BaseDirectory { get; } + string DynamicDirectory { get; } + Evidence Evidence { get; } + string FriendlyName { get; } + string RelativeSearchPath { get; } + bool ShadowCopyFiles { get; } + + // Events + event AssemblyLoadEventHandler AssemblyLoad { + add; // 0x00000000 + remove; // 0x00000000 + } + event ResolveEventHandler AssemblyResolve { + add; // 0x00000000 + remove; // 0x00000000 + } + event EventHandler DomainUnload { + add; // 0x00000000 + remove; // 0x00000000 + } + event EventHandler ProcessExit { + add; // 0x00000000 + remove; // 0x00000000 + } + event ResolveEventHandler ResourceResolve { + add; // 0x00000000 + remove; // 0x00000000 + } + event ResolveEventHandler TypeResolve { + add; // 0x00000000 + remove; // 0x00000000 + } + event UnhandledExceptionEventHandler UnhandledException { + add; // 0x00000000 + remove; // 0x00000000 + } + + // Methods + void AppendPrivatePath(string path); + void ClearPrivatePath(); + void ClearShadowCopyPath(); + ObjectHandle CreateInstance(string assemblyName, string typeName); + ObjectHandle CreateInstance(string assemblyName, string typeName, object[] activationAttributes); + ObjectHandle CreateInstance(string assemblyName, string typeName, bool ignoreCase, BindingFlags bindingAttr, Binder binder, object[] args, CultureInfo culture, object[] activationAttributes, Evidence securityAttributes); + ObjectHandle CreateInstanceFrom(string assemblyFile, string typeName); + ObjectHandle CreateInstanceFrom(string assemblyFile, string typeName, object[] activationAttributes); + ObjectHandle CreateInstanceFrom(string assemblyFile, string typeName, bool ignoreCase, BindingFlags bindingAttr, Binder binder, object[] args, CultureInfo culture, object[] activationAttributes, Evidence securityAttributes); + AssemblyBuilder DefineDynamicAssembly(AssemblyName name, AssemblyBuilderAccess access); + AssemblyBuilder DefineDynamicAssembly(AssemblyName name, AssemblyBuilderAccess access, Evidence evidence); + AssemblyBuilder DefineDynamicAssembly(AssemblyName name, AssemblyBuilderAccess access, string dir); + AssemblyBuilder DefineDynamicAssembly(AssemblyName name, AssemblyBuilderAccess access, string dir, Evidence evidence); + AssemblyBuilder DefineDynamicAssembly(AssemblyName name, AssemblyBuilderAccess access, PermissionSet requiredPermissions, PermissionSet optionalPermissions, PermissionSet refusedPermissions); + AssemblyBuilder DefineDynamicAssembly(AssemblyName name, AssemblyBuilderAccess access, Evidence evidence, PermissionSet requiredPermissions, PermissionSet optionalPermissions, PermissionSet refusedPermissions); + AssemblyBuilder DefineDynamicAssembly(AssemblyName name, AssemblyBuilderAccess access, string dir, PermissionSet requiredPermissions, PermissionSet optionalPermissions, PermissionSet refusedPermissions); + AssemblyBuilder DefineDynamicAssembly(AssemblyName name, AssemblyBuilderAccess access, string dir, Evidence evidence, PermissionSet requiredPermissions, PermissionSet optionalPermissions, PermissionSet refusedPermissions); + AssemblyBuilder DefineDynamicAssembly(AssemblyName name, AssemblyBuilderAccess access, string dir, Evidence evidence, PermissionSet requiredPermissions, PermissionSet optionalPermissions, PermissionSet refusedPermissions, bool isSynchronized); + void DoCallBack(CrossAppDomainDelegate theDelegate); + bool Equals(object other); + int ExecuteAssembly(string assemblyFile); + int ExecuteAssembly(string assemblyFile, Evidence assemblySecurity); + int ExecuteAssembly(string assemblyFile, Evidence assemblySecurity, string[] args); + Assembly[] GetAssemblies(); + object GetData(string name); + int GetHashCode(); + object GetLifetimeService(); + Type GetType(); + object InitializeLifetimeService(); + Assembly Load(AssemblyName assemblyRef); + Assembly Load(byte[] rawAssembly); + Assembly Load(string assemblyString); + Assembly Load(AssemblyName assemblyRef, Evidence assemblySecurity); + Assembly Load(byte[] rawAssembly, byte[] rawSymbolStore); + Assembly Load(string assemblyString, Evidence assemblySecurity); + Assembly Load(byte[] rawAssembly, byte[] rawSymbolStore, Evidence securityEvidence); + void SetAppDomainPolicy(PolicyLevel domainPolicy); + void SetCachePath(string s); + void SetData(string name, object data); + void SetPrincipalPolicy(PrincipalPolicy policy); + void SetShadowCopyPath(string s); + void SetThreadPrincipal(IPrincipal principal); + string ToString(); + void GetIDsOfNames(Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId); + void GetTypeInfo(uint iTInfo, uint lcid, IntPtr ppTInfo); + void GetTypeInfoCount(out uint pcTInfo); + void Invoke(uint dispIdMember, Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr); +} + +// Namespace: System +internal class __ComObject : MarshalByRefObject // TypeDefIndex: 1748 +{ + // Fields + private IntPtr iunknown; // 0x0C + private IntPtr hash_table; // 0x10 + + // Properties + internal IntPtr IUnknown { get; } // 0x0055EFC0 + internal IntPtr IDispatch { get; } // 0x0055F07C + internal static Guid IID_IUnknown { get; } // 0x0055EA64 + internal static Guid IID_IDispatch { get; } // 0x0055F19C + + // Methods + public void .ctor(); // 0x0055E758 + internal void .ctor(Type t); // 0x0055E96C + internal void .ctor(IntPtr pItf); // 0x0055E994 + internal static __ComObject CreateRCW(Type t); // 0x0055EAD4 + private void ReleaseInterfaces(); // 0x0055EAD8 + protected override void Finalize(); // 0x0055EADC + internal void Initialize(Type t); // 0x0055E788 + private static Guid GetCLSID(Type t); // 0x0055EB40 + internal IntPtr GetInterfaceInternal(Type t, bool throwException); // 0x0055EEB0 + internal IntPtr GetInterface(Type t, bool throwException); // 0x0055EEB4 + internal IntPtr GetInterface(Type t); // 0x0055EF98 + private void CheckIUnknown(); // 0x0055EEE0 + public override bool Equals(object obj); // 0x0055F20C + public override int GetHashCode(); // 0x0055F2DC + private static extern int CoCreateInstance(Guid rclsid, IntPtr pUnkOuter, uint dwClsContext, Guid riid, out IntPtr pUnk); // 0x0055ED70 +} + +// Namespace: Mono.Math.Prime +internal delegate bool PrimalityTest(BigInteger bi, ConfidenceFactor confidence); // TypeDefIndex: 1749; 0x00454270 + +// Namespace: System.Reflection +[Serializable] +public delegate bool MemberFilter(MemberInfo m, object filterCriteria); // TypeDefIndex: 1750; 0x002812C8 + +// Namespace: System.Reflection +[Serializable] +public delegate Module ModuleResolveEventHandler(object sender, ResolveEventArgs e); // TypeDefIndex: 1751; 0x00285674 + +// Namespace: System.Reflection +internal delegate object GetterAdapter(object _this); // TypeDefIndex: 1752; 0x00280CA8 + +// Namespace: System.Reflection +internal delegate T Getter`2(T _this); // TypeDefIndex: 1753; 0x00000000 + +// Namespace: System.Reflection +[Serializable] +public delegate bool TypeFilter(Type m, object filterCriteria); // TypeDefIndex: 1754; 0x0036AC18 + +// Namespace: System.Runtime.InteropServices +public delegate IntPtr ObjectCreationDelegate(IntPtr aggregator); // TypeDefIndex: 1755; 0x002BD140 + +// Namespace: System.Runtime.Remoting.Contexts +public delegate void CrossContextDelegate(); // TypeDefIndex: 1756; 0x00302A28 + +// Namespace: System.Runtime.Remoting.Messaging +public delegate object HeaderHandler(Header[] headers); // TypeDefIndex: 1757; 0x00312994 + +// Namespace: System.Runtime.Remoting.Messaging +public delegate bool MessageSurrogateFilter(string key, object value); // TypeDefIndex: 1758; 0x00313744 + +// Namespace: System.Threading +public delegate void ContextCallback(object state); // TypeDefIndex: 1759; 0x00410274 + +// Namespace: System.Threading +public delegate void IOCompletionCallback(uint errorCode, uint numBytes, void * pOVERLAP); // TypeDefIndex: 1760; 0x00411818 + +// Namespace: System.Threading +public delegate void ParameterizedThreadStart(object obj); // TypeDefIndex: 1761; 0x00413350 + +// Namespace: System.Threading +public delegate void SendOrPostCallback(object state); // TypeDefIndex: 1762; 0x00415C0C + +// Namespace: System.Threading +public delegate void ThreadStart(); // TypeDefIndex: 1763; 0x004197AC + +// Namespace: System.Threading +public delegate void TimerCallback(object state); // TypeDefIndex: 1764; 0x0041B3A8 + +// Namespace: System.Threading +public delegate void WaitCallback(object state); // TypeDefIndex: 1765; 0x0041B770 + +// Namespace: System.Threading +public delegate void WaitOrTimerCallback(object state, bool timedOut); // TypeDefIndex: 1766; 0x00415790 + +// Namespace: System +public delegate void Action`1(T obj); // TypeDefIndex: 1767; 0x00000000 + +// Namespace: System +[Serializable] +public delegate void AppDomainInitializer(string[] args); // TypeDefIndex: 1768; 0x002708D4 + +// Namespace: System +[Serializable] +public delegate void AssemblyLoadEventHandler(object sender, AssemblyLoadEventArgs args); // TypeDefIndex: 1769; 0x004F3DAC + +// Namespace: System +public delegate int Comparison`1(T x, T y); // TypeDefIndex: 1770; 0x00000000 + +// Namespace: System +public delegate void ConsoleCancelEventHandler(object sender, ConsoleCancelEventArgs e); // TypeDefIndex: 1771; 0x0039ABD0 + +// Namespace: System +public delegate T Converter`2(T input); // TypeDefIndex: 1772; 0x00000000 + +// Namespace: System +public delegate void CrossAppDomainDelegate(); // TypeDefIndex: 1773; 0x004AAFDC + +// Namespace: System +[Serializable] +public delegate void EventHandler`1(object sender, T e); // TypeDefIndex: 1774; 0x00000000 + +// Namespace: System +[Serializable] +public delegate void EventHandler(object sender, EventArgs e); // TypeDefIndex: 1775; 0x002E0464 + +// Namespace: System +public delegate bool Predicate`1(T obj); // TypeDefIndex: 1776; 0x00000000 + +// Namespace: System +[Serializable] +public delegate Assembly ResolveEventHandler(object sender, ResolveEventArgs args); // TypeDefIndex: 1777; 0x0036B0DC + +// Namespace: System +[Serializable] +public delegate void UnhandledExceptionEventHandler(object sender, UnhandledExceptionEventArgs e); // TypeDefIndex: 1778; 0x0055AC10 + +// Namespace: +internal class // TypeDefIndex: 1779 +{ + // Fields + internal static $ArrayType$56 $$field-0 = null; // 0x00 + internal static $ArrayType$24 $$field-1 = null; // 0x38 + internal static $ArrayType$24 $$field-2 = null; // 0x50 + internal static $ArrayType$24 $$field-3 = null; // 0x68 + internal static $ArrayType$24 $$field-4 = null; // 0x80 + internal static $ArrayType$16 $$field-5 = null; // 0x98 + internal static $ArrayType$16 $$field-6 = null; // 0xA8 + internal static $ArrayType$40 $$field-7 = null; // 0xB8 + internal static $ArrayType$40 $$field-8 = null; // 0xE0 + internal static $ArrayType$36 $$field-9 = null; // 0x108 + internal static $ArrayType$36 $$field-10 = null; // 0x12C + internal static $ArrayType$120 $$field-11 = null; // 0x150 + internal static $ArrayType$120 $$field-12 = null; // 0x1C8 + internal static $ArrayType$36 $$field-13 = null; // 0x240 + internal static $ArrayType$36 $$field-14 = null; // 0x264 + internal static $ArrayType$3132 $$field-15 = null; // 0x288 + internal static $ArrayType$20 $$field-16 = null; // 0xEC4 + internal static $ArrayType$32 $$field-17 = null; // 0xED8 + internal static $ArrayType$48 $$field-18 = null; // 0xEF8 + internal static $ArrayType$64 $$field-19 = null; // 0xF28 + internal static $ArrayType$64 $$field-20 = null; // 0xF68 + internal static $ArrayType$64 $$field-21 = null; // 0xFA8 + internal static $ArrayType$64 $$field-22 = null; // 0xFE8 + internal static $ArrayType$12 $$field-23 = null; // 0x1028 + internal static $ArrayType$12 $$field-24 = null; // 0x1034 + internal static $ArrayType$12 $$field-25 = null; // 0x1040 + internal static $ArrayType$16 $$field-26 = null; // 0x104C + internal static $ArrayType$136 $$field-27 = null; // 0x105C + internal static $ArrayType$8 $$field-28 = null; // 0x10E4 + internal static $ArrayType$84 $$field-29 = null; // 0x10EC + internal static $ArrayType$72 $$field-30 = null; // 0x1140 + internal static $ArrayType$8 $$field-31 = null; // 0x1188 + internal static $ArrayType$20 $$field-32 = null; // 0x1190 + internal static $ArrayType$64 $$field-33 = null; // 0x11A4 + internal static $ArrayType$124 $$field-34 = null; // 0x11E4 + internal static $ArrayType$32 $$field-35 = null; // 0x1260 + internal static $ArrayType$96 $$field-36 = null; // 0x1280 + internal static $ArrayType$2048 $$field-37 = null; // 0x12E0 + internal static $ArrayType$56 $$field-38 = null; // 0x1AE0 + internal static $ArrayType$16 $$field-39 = null; // 0x1B18 + internal static $ArrayType$48 $$field-40 = null; // 0x1B28 + internal static $ArrayType$2048 $$field-41 = null; // 0x1B58 + internal static $ArrayType$2048 $$field-42 = null; // 0x2358 + internal static $ArrayType$256 $$field-43 = null; // 0x2B58 + internal static $ArrayType$256 $$field-44 = null; // 0x2C58 + internal static $ArrayType$120 $$field-45 = null; // 0x2D58 + internal static $ArrayType$256 $$field-46 = null; // 0x2DD0 + internal static $ArrayType$256 $$field-47 = null; // 0x2ED0 + internal static $ArrayType$1024 $$field-48 = null; // 0x2FD0 + internal static $ArrayType$1024 $$field-49 = null; // 0x33D0 + internal static $ArrayType$1024 $$field-50 = null; // 0x37D0 + internal static $ArrayType$1024 $$field-51 = null; // 0x3BD0 + internal static $ArrayType$1024 $$field-52 = null; // 0x3FD0 + internal static $ArrayType$1024 $$field-53 = null; // 0x43D0 + internal static $ArrayType$1024 $$field-54 = null; // 0x47D0 + internal static $ArrayType$1024 $$field-55 = null; // 0x4BD0 + internal static $ArrayType$256 $$field-56 = null; // 0x4FD0 + internal static $ArrayType$640 $$field-57 = null; // 0x50D0 + internal static $ArrayType$96 $$field-58 = null; // 0x5350 + internal static $ArrayType$160 $$field-59 = null; // 0x53B0 + internal static $ArrayType$12 $$field-60 = null; // 0x5450 + internal static $ArrayType$380 $$field-61 = null; // 0x545C + internal static $ArrayType$128 $$field-62 = null; // 0x55D8 + internal static $ArrayType$256 $$field-63 = null; // 0x5658 + internal static $ArrayType$52 $$field-64 = null; // 0x5758 + internal static $ArrayType$52 $$field-65 = null; // 0x578C + internal static $ArrayType$1668 $$field-66 = null; // 0x57C0 + internal static $ArrayType$2100 $$field-67 = null; // 0x5E44 + internal static $ArrayType$1452 $$field-68 = null; // 0x6678 + + // Methods + public void .ctor(); // 0x003EC3F0 +} + +// Namespace: +private struct $ArrayType$56 // TypeDefIndex: 1780 +{ +} + +// Namespace: +private struct $ArrayType$24 // TypeDefIndex: 1781 +{ +} + +// Namespace: +private struct $ArrayType$16 // TypeDefIndex: 1782 +{ +} + +// Namespace: +private struct $ArrayType$40 // TypeDefIndex: 1783 +{ +} + +// Namespace: +private struct $ArrayType$36 // TypeDefIndex: 1784 +{ +} + +// Namespace: +private struct $ArrayType$120 // TypeDefIndex: 1785 +{ +} + +// Namespace: +private struct $ArrayType$3132 // TypeDefIndex: 1786 +{ +} + +// Namespace: +private struct $ArrayType$20 // TypeDefIndex: 1787 +{ +} + +// Namespace: +private struct $ArrayType$32 // TypeDefIndex: 1788 +{ +} + +// Namespace: +private struct $ArrayType$48 // TypeDefIndex: 1789 +{ +} + +// Namespace: +private struct $ArrayType$64 // TypeDefIndex: 1790 +{ +} + +// Namespace: +private struct $ArrayType$12 // TypeDefIndex: 1791 +{ +} + +// Namespace: +private struct $ArrayType$136 // TypeDefIndex: 1792 +{ +} + +// Namespace: +private struct $ArrayType$8 // TypeDefIndex: 1793 +{ +} + +// Namespace: +private struct $ArrayType$84 // TypeDefIndex: 1794 +{ +} + +// Namespace: +private struct $ArrayType$72 // TypeDefIndex: 1795 +{ +} + +// Namespace: +private struct $ArrayType$124 // TypeDefIndex: 1796 +{ +} + +// Namespace: +private struct $ArrayType$96 // TypeDefIndex: 1797 +{ +} + +// Namespace: +private struct $ArrayType$2048 // TypeDefIndex: 1798 +{ +} + +// Namespace: +private struct $ArrayType$256 // TypeDefIndex: 1799 +{ +} + +// Namespace: +private struct $ArrayType$1024 // TypeDefIndex: 1800 +{ +} + +// Namespace: +private struct $ArrayType$640 // TypeDefIndex: 1801 +{ +} + +// Namespace: +private struct $ArrayType$160 // TypeDefIndex: 1802 +{ +} + +// Namespace: +private struct $ArrayType$380 // TypeDefIndex: 1803 +{ +} + +// Namespace: +private struct $ArrayType$128 // TypeDefIndex: 1804 +{ +} + +// Namespace: +private struct $ArrayType$52 // TypeDefIndex: 1805 +{ +} + +// Namespace: +private struct $ArrayType$1668 // TypeDefIndex: 1806 +{ +} + +// Namespace: +private struct $ArrayType$2100 // TypeDefIndex: 1807 +{ +} + +// Namespace: +private struct $ArrayType$1452 // TypeDefIndex: 1808 +{ +} + +// Namespace: System +internal class __Il2CppComObject // TypeDefIndex: 1809 +{ + // Methods + protected override void Finalize(); // 0x0055F2FC +} + +// Namespace: +internal class // TypeDefIndex: 1810 +{ +} + +// Namespace: Il2CppTests.TestSources +internal class Test // TypeDefIndex: 1811 +{ + // Methods + public void ParameterlessMethod(); // 0x00560F80 + public int ValueTypeReturnMethod(); // 0x00560F84 + public StringBuilder ReferenceTypeReturnMethod(); // 0x00560F8C + public void .ctor(); // 0x00560FF8 +} diff --git a/Il2CppTests/TestRunner.cs b/Il2CppTests/TestRunner.cs new file mode 100644 index 0000000..2abe31c --- /dev/null +++ b/Il2CppTests/TestRunner.cs @@ -0,0 +1,53 @@ +using System; +using System.IO; +using System.Linq; +using System.Net.Sockets; +using System.Text.RegularExpressions; +using NUnit.Framework; + +namespace Il2CppInspector +{ + [TestFixture] + public partial class TestRunner + { + private void runTest(string testPath) { + // Android + var testFile = testPath + @"\" + Path.GetFileName(testPath) + ".so"; + // Windows + if (!File.Exists(testFile)) + testFile = testPath + @"\" + Path.GetFileName(testPath) + ".dll"; + // iOS + if (!File.Exists(testFile)) + testFile = testPath + @"\" + Path.GetFileName(testPath); + // Android + if (!File.Exists(testFile)) + testFile = testPath + @"\libil2cpp.so"; + + var inspectors = Il2CppInspector.LoadFromFile(testFile, testPath + @"\global-metadata.dat"); + + // If null here, there was a problem parsing the files + if (inspectors == null) + throw new Exception("Could not understand IL2CPP binary or metadata"); + + if (inspectors.Count == 0) + throw new Exception("Could not find any images in the IL2CPP binary"); + + // Dump each image in the binary separately + int i = 0; + foreach (var il2cpp in inspectors) + new Il2CppDumper(il2cpp).WriteFile(testPath + @"\test-result" + (i++ > 0 ? "-" + (i - 1) : "") + ".cs"); + + // Compare test result with expected result + for (i = 0; i < inspectors.Count; i++) { + var expected = File.ReadAllLines(testPath + @"\..\..\TestExpectedResults\" + Path.GetFileName(testPath) + (i > 0 ? "-" + (i - 1) : "") + ".cs"); + var actual = File.ReadAllLines(testPath + @"\test-result" + (i > 0 ? "-" + (i - 1) : "") + ".cs"); + + // Get rid of blank lines and trim the remaining lines + expected = (from l in expected where !string.IsNullOrWhiteSpace(l) select l.Trim()).ToArray(); + actual = (from l in actual where !string.IsNullOrWhiteSpace(l) select l.Trim()).ToArray(); + + Assert.IsTrue(expected.SequenceEqual(actual)); + } + } + } +} diff --git a/Il2CppTests/TestSources/Generics.cs b/Il2CppTests/TestSources/Generics.cs new file mode 100644 index 0000000..4d6b8eb --- /dev/null +++ b/Il2CppTests/TestSources/Generics.cs @@ -0,0 +1,15 @@ +/* + Copyright 2017-2019 Katy Coe - http://www.hearthcode.org - http://www.djkaty.com + + All rights reserved. +*/ + +namespace Il2CppTests.TestSources +{ + // Generic class + internal class GenericClass + { + // Generic method using generic type parameter of class + public void GenericMethodWithClassGenericTypeParameter(T v) { } + } +} diff --git a/Il2CppTests/TestSources/Methods.cs b/Il2CppTests/TestSources/Methods.cs new file mode 100644 index 0000000..c5c7f2e --- /dev/null +++ b/Il2CppTests/TestSources/Methods.cs @@ -0,0 +1,22 @@ +/* + Copyright 2017-2019 Katy Coe - http://www.hearthcode.org - http://www.djkaty.com + + All rights reserved. +*/ + +using System.Text; + +namespace Il2CppTests.TestSources +{ + internal class Test + { + // A parameter-less method + public void ParameterlessMethod() { } + + // Method with value type return type + public int ValueTypeReturnMethod() => 0; + + // Method with reference type return type + public StringBuilder ReferenceTypeReturnMethod() => new StringBuilder(); + } +} diff --git a/Il2CppTests/generate-binaries.ps1 b/Il2CppTests/generate-binaries.ps1 new file mode 100644 index 0000000..34807cf --- /dev/null +++ b/Il2CppTests/generate-binaries.ps1 @@ -0,0 +1,100 @@ +# Copyright 2019 Katy Coe - http://www.hearthcode.org - http://www.djkaty.com +# All rights reserved. + +# Compile all of the test items in TestSources via IL2CPP to produce the binaries necessary to run the tests +# Requires Unity 2019.2.8f1 or later and Visual Studio 2017 (or MSBuild with C# 7+ support) or later to be installed +# Requires Android NDK r13b or newer for Android test builds (https://developer.android.com/ndk/downloads) + +# Path to C¤ compiler (14.0 = Visual Studio 2017, 15.0 = Visual Studio 2019 etc.) +$CSC = (gci 'C:\Program Files (x86)\MSBuild\*\Bin\csc.exe' | sort name)[-1].FullName + +# Path to latest installed version of Unity +# The introduction of Unity Hub changed the base path of the Unity editor +$UnityPath = (gci 'C:\Program Files\Unity\Hub\Editor\*\Editor\Data' | sort name)[-1].FullName + +# Calculate Unity paths +$il2cpp = $UnityPath + '\il2cpp\build\il2cpp.exe' +$mscorlib = $UnityPath + '\Mono\lib\mono\unity\mscorlib.dll' +$AndroidPlayer = $UnityPath + '\PlaybackEngines\AndroidPlayer' + +# Path to the Android NDK +# Different Unity versions require specific NDKs, see the section Change the NDK at: +# The NDK can also be installed standalone without AndroidPlayer +# https://docs.unity3d.com/2019.1/Documentation/Manual/android-sdksetup.html +$AndroidNDK = $AndroidPlayer + '\NDK' + +# Check that everything is installed +if (!(Test-Path -Path $CSC -PathType leaf)) { + echo "Could not find C¤ compiler csc.exe at '$CSC' - aborting" + Exit +} else { + echo "Using C# compiler at '$CSC'" +} + +if (!(Test-Path -Path $UnityPath -PathType container)) { + echo "Could not find Unity editor at '$UnityPath' - aborting" + Exit +} else { + echo "Using Unity installation at '$UnityPath'" +} + +if (!(Test-Path -Path $AndroidNDK -PathType container)) { + echo "Could not find Android NDK at '$AndroidNDK' - aborting" + Exit +} +if (!(Test-Path -Path $il2cpp -PathType leaf)) { + echo "Could not find Unity IL2CPP build support - aborting" + Exit +} +if (!(Test-Path -Path $AndroidPlayer -PathType container)) { + echo "Could not find Unity Android build support - aborting" + Exit +} + +# Workspace paths +$src = "$PSScriptRoot/TestSources" +$asm = "$PSScriptRoot/TestAssemblies" +$bin = "$PSScriptRoot/TestBinaries" + +# We try to make the arguments as close as possible to a real Unity build +# "--lump-runtime-library" was added to reduce the number of C++ files generated by UnityEngine (Unity 2019) +$arg = '--convert-to-cpp', '--compile-cpp', '--libil2cpp-static', '--configuration=Release', ` + '--emit-null-checks', '--enable-array-bounds-check', ` + '--map-file-parser=$UnityPath\il2cpp\MapFileParser\MapFileParser.exe' + +# Prepare output folders +md $asm, $bin 2>&1 >$null + +# Compile all .cs files in TestSources +echo "Compiling source code..." +gci $src | % { & $csc "/t:library" "/nologo" "/out:$asm/$($_.BaseName).dll" "$src/$_" } + +# Run IL2CPP on all generated assemblies for both x86 and ARM +# Earlier builds of Unity included mscorlib.dll automatically; in current versions we must specify its location +gci $asm | % { + # x86 + $name = "GameAssembly-$($_.BaseName)" + echo "Running il2cpp for test assembly $name (Windows/x86)..." + md $bin/$name 2>&1 >$null + & $il2cpp $arg '--platform=WindowsDesktop', '--architecture=x86', ` + "--assembly=$asm/$_,$mscorlib", ` + "--outputpath=$bin/$name/$name.dll" + mv -Force $bin/$name/Data/metadata/global-metadata.dat $bin/$name + rm -Force -Recurse $bin/$name/Data + + # ARM + $name = "$($_.BaseName)" + echo "Running il2cpp for test assembly $name (Android/ARMv7)..." + md $bin/$name 2>&1 >$null + & $il2cpp $arg '--platform=Android', '--architecture=ARMv7', ` + "--assembly=$asm/$_,$mscorlib", ` + "--outputpath=$bin/$name/$name.so", ` + "--additional-include-directories=$AndroidPlayer/Tools/bdwgc/include" ` + "--additional-include-directories=$AndroidPlayer/Tools/libil2cpp/include" ` + "--tool-chain-path=$AndroidNDK" + mv -Force $bin/$name/Data/metadata/global-metadata.dat $bin/$name + rm -Force -Recurse $bin/$name/Data +} + +# Generate test stubs +& "$PSScriptRoot/generate-tests.ps1" \ No newline at end of file diff --git a/Il2CppTests/generate-tests.ps1 b/Il2CppTests/generate-tests.ps1 new file mode 100644 index 0000000..31bb5c5 --- /dev/null +++ b/Il2CppTests/generate-tests.ps1 @@ -0,0 +1,33 @@ +# Copyright 2019 Katy Coe - http://www.hearthcode.org - http://www.djkaty.com +# All rights reserved. + +# Generate Tests.cs +$testGen = "$PSScriptRoot/Tests.cs" +$bin = "$PSScriptRoot/TestBinaries" + +echo @" +// THIS FILE IS AUTO-GENERATED BY GENERATE-TESTS.PS1 +// DO NOT EDIT + +using NUnit.Framework; + +namespace Il2CppInspector +{ + public partial class TestRunner + { +"@ > $testGen + +gci $bin | % { + echo @" + [Test] + public void $($_.Name.Replace("-","_").Replace(" ","_").Replace(".","_"))() { + runTest(@"$($_.FullName)"); + } + +"@ >> $testGen +} + +echo @" + } +} +"@ >> $testGen \ No newline at end of file