using System; using System.Collections; using System.IO; using BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1; using BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.X509; using BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities; using BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities.Collections; using Cpp2IlInjected; namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Pkix { // Token: 0x02001981 RID: 6529 [Token(Token = "0x2001981")] public class PkixNameConstraintValidator { // Token: 0x06009B56 RID: 39766 RVA: 0x0020379C File Offset: 0x0020199C [Token(Token = "0x6009B56")] [Address(RVA = "0x1CD8040", Offset = "0x1CD6E40", VA = "0x181CD8040")] public PkixNameConstraintValidator() { HashSet hashSet = new HashSet(); this.excludedSubtreesDN = hashSet; HashSet hashSet2 = new HashSet(); this.excludedSubtreesDNS = hashSet2; HashSet hashSet3 = new HashSet(); this.excludedSubtreesEmail = hashSet3; HashSet hashSet4 = new HashSet(); this.excludedSubtreesURI = hashSet4; HashSet hashSet5 = new HashSet(); this.excludedSubtreesIP = hashSet5; base..ctor(); } // Token: 0x06009B57 RID: 39767 RVA: 0x002037F4 File Offset: 0x002019F4 [Token(Token = "0x6009B57")] [Address(RVA = "0x1CD7CD0", Offset = "0x1CD6AD0", VA = "0x181CD7CD0")] private static bool WithinDNSubtree(Asn1Sequence dns, Asn1Sequence subtree) { Asn1SequenceParser parser = subtree.Parser; if (dns.Parser != 0) { } throw new NullReferenceException(); } // Token: 0x06009B58 RID: 39768 RVA: 0x00203818 File Offset: 0x00201A18 [Token(Token = "0x6009B58")] [Address(RVA = "0x1CD3E60", Offset = "0x1CD2C60", VA = "0x181CD3E60")] public void CheckPermittedDN(Asn1Sequence dns) { Asn1Encodable asn1Encodable; if (this.permittedSubtreesDN != 0 && asn1Encodable != 0) { bool flag; while (!flag) { } } } // Token: 0x06009B59 RID: 39769 RVA: 0x00203848 File Offset: 0x00201A48 [Token(Token = "0x6009B59")] [Address(RVA = "0x1CD37D0", Offset = "0x1CD25D0", VA = "0x181CD37D0")] public void CheckExcludedDN(Asn1Sequence dns) { /* An exception occurred when decompiling this method (06009B59) ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.SecureProtocol.Org.BouncyCastle.Pkix.PkixNameConstraintValidator::CheckExcludedDN(BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.Asn1Sequence) ---> System.Exception: Basic block has to end with unconditional control flow. { IL_12: stloc:PkixNameConstraintValidatorException(var_3_1C, newobj:PkixNameConstraintValidatorException(PkixNameConstraintValidatorException::.ctor, ldstr:string("Subject distinguished name is from an excluded subtree"))) } at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1852 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1846 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.Optimize(DecompilerContext context, ILBlock method, AutoPropertyProvider autoPropertyProvider, StateMachineKind& stateMachineKind, MethodDef& inlinedMethod, AsyncMethodDebugInfo& asyncInfo, ILAstOptimizationStep abortBeforeStep) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 355 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(IEnumerable`1 parameters, MethodDebugInfoBuilder& builder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 123 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 88 --- End of inner exception stack trace --- at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 92 at ICSharpCode.Decompiler.Ast.AstBuilder.AddMethodBody(EntityDeclaration methodNode, EntityDeclaration& updatedNode, MethodDef method, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, MethodKind methodKind) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstBuilder.cs:line 1660 */; } // Token: 0x06009B5A RID: 39770 RVA: 0x00203874 File Offset: 0x00201A74 [Token(Token = "0x6009B5A")] [Address(RVA = "0x1CD3D40", Offset = "0x1CD2B40", VA = "0x181CD3D40")] private void CheckPermittedDN(ISet permitted, Asn1Sequence dns) { Asn1Encodable asn1Encodable; if (permitted != 0 && asn1Encodable != 0) { bool flag; while (!flag) { } } } // Token: 0x06009B5B RID: 39771 RVA: 0x002038A0 File Offset: 0x00201AA0 [Token(Token = "0x6009B5B")] [Address(RVA = "0x1CD3920", Offset = "0x1CD2720", VA = "0x181CD3920")] private void CheckExcludedDN(ISet excluded, Asn1Sequence dns) { /* An exception occurred when decompiling this method (06009B5B) ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.SecureProtocol.Org.BouncyCastle.Pkix.PkixNameConstraintValidator::CheckExcludedDN(BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities.Collections.ISet,BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.Asn1Sequence) ---> System.Exception: Basic block has to end with unconditional control flow. { IL_0B: stloc:PkixNameConstraintValidatorException(var_2_15, newobj:PkixNameConstraintValidatorException(PkixNameConstraintValidatorException::.ctor, ldstr:string("Subject distinguished name is from an excluded subtree"))) } at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1852 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1846 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.Optimize(DecompilerContext context, ILBlock method, AutoPropertyProvider autoPropertyProvider, StateMachineKind& stateMachineKind, MethodDef& inlinedMethod, AsyncMethodDebugInfo& asyncInfo, ILAstOptimizationStep abortBeforeStep) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 355 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(IEnumerable`1 parameters, MethodDebugInfoBuilder& builder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 123 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 88 --- End of inner exception stack trace --- at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 92 at ICSharpCode.Decompiler.Ast.AstBuilder.AddMethodBody(EntityDeclaration methodNode, EntityDeclaration& updatedNode, MethodDef method, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, MethodKind methodKind) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstBuilder.cs:line 1660 */; } // Token: 0x06009B5C RID: 39772 RVA: 0x002038C4 File Offset: 0x00201AC4 [Token(Token = "0x6009B5C")] [Address(RVA = "0x1CD4F40", Offset = "0x1CD3D40", VA = "0x181CD4F40")] private ISet IntersectDN(ISet permitted, ISet dns) { Asn1Sequence asn1Sequence; for (;;) { HashSet hashSet = new HashSet(); if (hashSet == 0) { goto IL_43; } if (hashSet != 0 && hashSet != 0) { IDictionary impl = hashSet.impl; if (permitted == 0) { break; } while (asn1Sequence == 0) { } if (PkixNameConstraintValidator.WithinDNSubtree(asn1Sequence, asn1Sequence) || PkixNameConstraintValidator.WithinDNSubtree(asn1Sequence, asn1Sequence)) { break; } } } while (asn1Sequence == 0) { } IL_43: throw new NullReferenceException(); } // Token: 0x06009B5D RID: 39773 RVA: 0x0020391C File Offset: 0x00201B1C [Token(Token = "0x6009B5D")] [Address(RVA = "0x1CD7450", Offset = "0x1CD6250", VA = "0x181CD7450")] private ISet UnionDN(ISet excluded, Asn1Sequence dn) { int num; do { HashSet hashSet = new HashSet(); num = 0; if (num < excluded) { num += num; num++; } int num2 = 0; if (hashSet == 0) { goto IL_52; } if (num < num2) { num += num; num++; } if (num == 0) { num += 19; num++; num += 19; } } while (num == 0); if (PkixNameConstraintValidator.WithinDNSubtree(dn, num) || !PkixNameConstraintValidator.WithinDNSubtree(num, dn)) { } IL_52: if (dn != 0) { } throw new NullReferenceException(); } // Token: 0x06009B5E RID: 39774 RVA: 0x00203984 File Offset: 0x00201B84 [Token(Token = "0x6009B5E")] [Address(RVA = "0x1CD51B0", Offset = "0x1CD3FB0", VA = "0x181CD51B0")] private ISet IntersectEmail(ISet permitted, ISet emails) { HashSet hashSet; string @string; for (;;) { hashSet = new HashSet(); if (hashSet == 0) { goto IL_4C; } if (hashSet != 0 && hashSet != 0) { IDictionary impl = hashSet.impl; DerIA5String derIA5String; @string = derIA5String.GetString(); if (permitted == 0) { break; } while (@string == 0) { } if (@string == 0 || @string != 0) { goto IL_3C; } } } IL_47: while (@string == 0) { } goto IL_4C; IL_3C: this.intersectEmail(@string, @string, hashSet); goto IL_47; IL_4C: throw new NullReferenceException(); } // Token: 0x06009B5F RID: 39775 RVA: 0x002039E4 File Offset: 0x00201BE4 [Token(Token = "0x6009B5F")] [Address(RVA = "0x1CD76D0", Offset = "0x1CD64D0", VA = "0x181CD76D0")] private ISet UnionEmail(ISet excluded, string email) { HashSet hashSet; int num; do { hashSet = new HashSet(); num = 0; if (num < excluded) { num += num; num++; } int num2 = 0; if (hashSet == 0) { goto IL_4D; } if (num < num2) { num += num; num++; } } while (num != 0 && num == 0); this.unionEmail(num, email, hashSet); num += num; num += 19; num += num; num++; num += 19; IL_4D: if (email != 0) { } throw new NullReferenceException(); } // Token: 0x06009B60 RID: 39776 RVA: 0x00203A48 File Offset: 0x00201C48 [Token(Token = "0x6009B60")] [Address(RVA = "0x1CD5900", Offset = "0x1CD4700", VA = "0x181CD5900")] private ISet IntersectIP(ISet permitted, ISet ips) { HashSet hashSet; do { hashSet = new HashSet(); if (hashSet == 0) { goto IL_34; } } while (hashSet == 0 || hashSet == 0); IDictionary impl = hashSet.impl; Asn1OctetString asn1OctetString; Stream octetStream = asn1OctetString.GetOctetStream(); if (permitted != 0) { while (octetStream == 0) { } } while (octetStream == 0) { } IL_34: throw new NullReferenceException(); } // Token: 0x06009B61 RID: 39777 RVA: 0x00203A90 File Offset: 0x00201C90 [Token(Token = "0x6009B61")] [Address(RVA = "0x1CD79A0", Offset = "0x1CD67A0", VA = "0x181CD79A0")] private ISet UnionIP(ISet excluded, byte[] ip) { int num; do { HashSet hashSet = new HashSet(); num = 0; if (num < excluded) { num += num; num++; } int num2 = 0; if (hashSet == 0) { goto IL_57; } if (num < num2) { num += num; num++; } if (num == 0) { num += 19; num++; num += 19; } } while (num == 0); HashSet hashSet2 = new HashSet(); bool flag; if (!flag) { } if (num < hashSet2) { num += num; num++; } hashSet2 += hashSet2; IL_57: if (ip != 0) { } throw new NullReferenceException(); } // Token: 0x06009B62 RID: 39778 RVA: 0x00203B00 File Offset: 0x00201D00 [Token(Token = "0x6009B62")] [Address(RVA = "0x1CD78E0", Offset = "0x1CD66E0", VA = "0x181CD78E0")] private ISet UnionIPRange(byte[] ipWithSubmask1, byte[] ipWithSubmask2) { HashSet hashSet = new HashSet(); if (!Arrays.AreEqual(ipWithSubmask1, ipWithSubmask2)) { } throw new NullReferenceException(); } // Token: 0x06009B63 RID: 39779 RVA: 0x00203B24 File Offset: 0x00201D24 [Token(Token = "0x6009B63")] [Address(RVA = "0x1CD5530", Offset = "0x1CD4330", VA = "0x181CD5530")] private ISet IntersectIPRange(byte[] ipWithSubmask1, byte[] ipWithSubmask2) { int length = ipWithSubmask2.Length; if (ipWithSubmask1.Length == length) { byte[][] array = this.ExtractIPsAndSubnetMasks(ipWithSubmask1, ipWithSubmask2); int length2 = array.Length; byte[] array2 = array[1]; byte[] array3 = array[3]; byte[] array4 = array[2]; byte[] array5 = array[0]; byte[][] array6 = this.MinMaxIPs(array5, array2, array4, array3); int length3 = array6.Length; byte[] array7 = array6[1]; byte[] array8 = array6[3]; int num = 0; int num2 = 0; int length4 = array7.Length; if (num2 < length4) { num++; } byte[] array9 = array6[2]; byte[] array10 = PkixNameConstraintValidator.Max(array6[0], array9); if (Arrays.AreEqual(array10, array8) || !Arrays.AreEqual(PkixNameConstraintValidator.Max(array10, array8), array10)) { int length5 = array6.Length; byte[] array11 = array6[2]; byte[] array12 = PkixNameConstraintValidator.Or(array6[0], array11); byte[] array13 = PkixNameConstraintValidator.Or(array2, array3); HashSet hashSet = new HashSet(); int num3 = 0; int length6 = array12.Length; byte[] array14 = new byte[num3]; int num4 = 0; int num5 = 0; Array.Copy(array12, num5, array14, num4, length6); int num6 = 0; Array.Copy(array13, num6, array14, length6, length6); } } HashSet hashSet2 = new HashSet(); throw new NullReferenceException(); } // Token: 0x06009B64 RID: 39780 RVA: 0x00203C7C File Offset: 0x00201E7C [Token(Token = "0x6009B64")] [Address(RVA = "0x1CD6150", Offset = "0x1CD4F50", VA = "0x181CD6150")] private byte[] IpWithSubnetMask(byte[] ip, byte[] subnetMask) { int length = ip.Length; byte[] array = new byte[ip]; int num = 0; int num2 = 0; Array.Copy(ip, num2, array, num, length); int num3 = 0; Array.Copy(subnetMask, num3, array, length, length); return array; } // Token: 0x06009B65 RID: 39781 RVA: 0x00203CBC File Offset: 0x00201EBC [Token(Token = "0x6009B65")] [Address(RVA = "0x1CD4A40", Offset = "0x1CD3840", VA = "0x181CD4A40")] private byte[][] ExtractIPsAndSubnetMasks(byte[] ipWithSubmask1, byte[] ipWithSubmask2) { int num = ipWithSubmask1.Length; num -= ipWithSubmask1; byte[] array = new byte[num]; byte[] array2 = new byte[num]; int num2 = 0; int num3 = 0; Array.Copy(ipWithSubmask1, num3, array, num2, num); int num4 = 0; Array.Copy(ipWithSubmask1, num, array2, num4, num); byte[] array3 = new byte[num]; byte[] array4 = new byte[num]; int num5 = 0; int num6 = 0; Array.Copy(ipWithSubmask2, num6, array3, num5, num); int num7 = 0; Array.Copy(ipWithSubmask2, num, array4, num7, num); byte[][] array5 = new byte[0][]; if (array != 0) { } array5[0] = array; if (array2 != 0) { } array5[1] = array2; if (array3 != 0) { } array5[2] = array3; if (array4 != 0) { } array5[3] = array4; return array5; } // Token: 0x06009B66 RID: 39782 RVA: 0x00203D80 File Offset: 0x00201F80 [Token(Token = "0x6009B66")] [Address(RVA = "0x1CD6550", Offset = "0x1CD5350", VA = "0x181CD6550")] private byte[][] MinMaxIPs(byte[] ip1, byte[] subnetmask1, byte[] ip2, byte[] subnetmask2) { int length = ip1.Length; byte[] array = new byte[length]; byte[] array2 = new byte[length]; byte[] array3 = new byte[length]; byte[] array4 = new byte[length]; int num = 0; if (length > 0) { num++; } byte[][] array5 = new byte[4][]; if (array != 0) { } array5[0] = array; if (array2 != 0) { } array5[1] = array2; if (array3 != 0) { } array5[2] = array3; if (array4 != 0) { } array5[3] = array4; return array5; } // Token: 0x06009B67 RID: 39783 RVA: 0x00203E04 File Offset: 0x00202004 [Token(Token = "0x6009B67")] [Address(RVA = "0x1CD3F80", Offset = "0x1CD2D80", VA = "0x181CD3F80")] private void CheckPermittedEmail(ISet permitted, string email) { /* An exception occurred when decompiling this method (06009B67) ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.SecureProtocol.Org.BouncyCastle.Pkix.PkixNameConstraintValidator::CheckPermittedEmail(BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities.Collections.ISet,System.String) ---> System.Exception: Basic block has to end with unconditional control flow. { IL_25: stloc:PkixNameConstraintValidatorException(var_1_2F, newobj:PkixNameConstraintValidatorException(PkixNameConstraintValidatorException::.ctor, ldstr:string("Subject email address is not from a permitted subtree."))) } at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1852 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1846 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1846 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.Optimize(DecompilerContext context, ILBlock method, AutoPropertyProvider autoPropertyProvider, StateMachineKind& stateMachineKind, MethodDef& inlinedMethod, AsyncMethodDebugInfo& asyncInfo, ILAstOptimizationStep abortBeforeStep) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 355 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(IEnumerable`1 parameters, MethodDebugInfoBuilder& builder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 123 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 88 --- End of inner exception stack trace --- at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 92 at ICSharpCode.Decompiler.Ast.AstBuilder.AddMethodBody(EntityDeclaration methodNode, EntityDeclaration& updatedNode, MethodDef method, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, MethodKind methodKind) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstBuilder.cs:line 1660 */; } // Token: 0x06009B68 RID: 39784 RVA: 0x00203E40 File Offset: 0x00202040 [Token(Token = "0x6009B68")] [Address(RVA = "0x1CD3A70", Offset = "0x1CD2870", VA = "0x181CD3A70")] private void CheckExcludedEmail(ISet excluded, string email) { /* An exception occurred when decompiling this method (06009B68) ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.SecureProtocol.Org.BouncyCastle.Pkix.PkixNameConstraintValidator::CheckExcludedEmail(BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities.Collections.ISet,System.String) ---> System.Exception: Basic block has to end with unconditional control flow. { IL_12: stloc:PkixNameConstraintValidatorException(var_1_1C, newobj:PkixNameConstraintValidatorException(PkixNameConstraintValidatorException::.ctor, ldstr:string("Email address is from an excluded subtree."))) } at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1852 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1846 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.Optimize(DecompilerContext context, ILBlock method, AutoPropertyProvider autoPropertyProvider, StateMachineKind& stateMachineKind, MethodDef& inlinedMethod, AsyncMethodDebugInfo& asyncInfo, ILAstOptimizationStep abortBeforeStep) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 355 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(IEnumerable`1 parameters, MethodDebugInfoBuilder& builder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 123 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 88 --- End of inner exception stack trace --- at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 92 at ICSharpCode.Decompiler.Ast.AstBuilder.AddMethodBody(EntityDeclaration methodNode, EntityDeclaration& updatedNode, MethodDef method, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, MethodKind methodKind) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstBuilder.cs:line 1660 */; } // Token: 0x06009B69 RID: 39785 RVA: 0x00203E6C File Offset: 0x0020206C [Token(Token = "0x6009B69")] [Address(RVA = "0x1CD40B0", Offset = "0x1CD2EB0", VA = "0x181CD40B0")] private void CheckPermittedIP(ISet permitted, byte[] ip) { if (permitted != 0) { bool flag; while (!flag) { } } } // Token: 0x06009B6A RID: 39786 RVA: 0x00203E9C File Offset: 0x0020209C [Token(Token = "0x6009B6A")] [Address(RVA = "0x1CD8270", Offset = "0x1CD7070", VA = "0x181CD8270")] private void checkExcludedIP(ISet excluded, byte[] ip) { /* An exception occurred when decompiling this method (06009B6A) ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.SecureProtocol.Org.BouncyCastle.Pkix.PkixNameConstraintValidator::checkExcludedIP(BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities.Collections.ISet,System.Byte[]) ---> System.Exception: Basic block has to end with unconditional control flow. { IL_05: stloc:PkixNameConstraintValidatorException(var_1_0F, newobj:PkixNameConstraintValidatorException(PkixNameConstraintValidatorException::.ctor, ldstr:string("IP is from an excluded subtree."))) } at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1852 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1846 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.Optimize(DecompilerContext context, ILBlock method, AutoPropertyProvider autoPropertyProvider, StateMachineKind& stateMachineKind, MethodDef& inlinedMethod, AsyncMethodDebugInfo& asyncInfo, ILAstOptimizationStep abortBeforeStep) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 355 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(IEnumerable`1 parameters, MethodDebugInfoBuilder& builder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 123 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 88 --- End of inner exception stack trace --- at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 92 at ICSharpCode.Decompiler.Ast.AstBuilder.AddMethodBody(EntityDeclaration methodNode, EntityDeclaration& updatedNode, MethodDef method, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, MethodKind methodKind) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstBuilder.cs:line 1660 */; } // Token: 0x06009B6B RID: 39787 RVA: 0x00203EB8 File Offset: 0x002020B8 [Token(Token = "0x6009B6B")] [Address(RVA = "0x1CD6200", Offset = "0x1CD5000", VA = "0x181CD6200")] private bool IsIPConstrained(byte[] ip, byte[] constraint) { int num = constraint.Length; int length = ip.Length; num -= ip; if (length == num) { byte[] array = new byte[length]; int num2 = 0; int num3 = 0; Array.Copy(constraint, length, array, num3, length); byte[] array2 = new byte[length]; byte[] array3 = new byte[length]; if (length > 0) { num2++; } return Arrays.AreEqual(array2, array3); } throw new NullReferenceException(); } // Token: 0x06009B6C RID: 39788 RVA: 0x00203F1C File Offset: 0x0020211C [Token(Token = "0x6009B6C")] [Address(RVA = "0x1CD4560", Offset = "0x1CD3360", VA = "0x181CD4560")] private bool EmailIsConstrained(string email, string constraint) { string text; for (;;) { int num2; int num = num2 + 1; text = email.Substring(num); int num3; if (num3 == -1) { break; } string text3; string text2 = Platform.ToUpperInvariant(text3); string text4 = Platform.ToUpperInvariant(constraint); if (!text2.Equals(text4)) { goto IL_65; } } int num4 = 0; char c = constraint[num4]; if (this.WithinDomain(text, constraint)) { return true; } IL_65: throw new NullReferenceException(); } // Token: 0x06009B6D RID: 39789 RVA: 0x00203F94 File Offset: 0x00202194 [Token(Token = "0x6009B6D")] [Address(RVA = "0x1CD7DF0", Offset = "0x1CD6BF0", VA = "0x181CD7DF0")] private bool WithinDomain(string testDomain, string domain) { uint num3; for (;;) { if (Platform.StartsWith(domain, ".")) { string text = domain.Substring(1); } uint num; char[] array = new char[] { (char)num }; string[] array2 = domain.Split(array); char[] array3 = new char[array]; array3[0] = (char)num; string[] array4 = testDomain.Split(array3); int num2 = array4.Length; int length = array2.Length; string text2; if (num2 > length) { num2 -= length; int length2 = array2.Length; if (num3 >= (uint)length2) { goto IL_CE; } int length3 = array4.Length; if (num3 != (uint)(-1)) { text2 = array4[(int)num3]; string text3 = array2[(int)num3]; if (Platform.EqualsIgnoreCase(text2, text3)) { break; } } } IL_AB: int num4 = num2 - 1; if (!text2.Equals("")) { break; } continue; goto IL_AB; } num3 += (uint)1; IL_CE: throw new NullReferenceException(); } // Token: 0x06009B6E RID: 39790 RVA: 0x00204074 File Offset: 0x00202274 [Token(Token = "0x6009B6E")] [Address(RVA = "0x1CD3BA0", Offset = "0x1CD29A0", VA = "0x181CD3BA0")] private void CheckPermittedDNS(ISet permitted, string dns) { /* An exception occurred when decompiling this method (06009B6E) ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.SecureProtocol.Org.BouncyCastle.Pkix.PkixNameConstraintValidator::CheckPermittedDNS(BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities.Collections.ISet,System.String) ---> System.Exception: Basic block has to end with unconditional control flow. { IL_3D: stloc:PkixNameConstraintValidatorException(var_3_47, newobj:PkixNameConstraintValidatorException(PkixNameConstraintValidatorException::.ctor, ldstr:string("DNS is not from a permitted subtree."))) } at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1852 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1846 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1846 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.Optimize(DecompilerContext context, ILBlock method, AutoPropertyProvider autoPropertyProvider, StateMachineKind& stateMachineKind, MethodDef& inlinedMethod, AsyncMethodDebugInfo& asyncInfo, ILAstOptimizationStep abortBeforeStep) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 355 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(IEnumerable`1 parameters, MethodDebugInfoBuilder& builder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 123 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 88 --- End of inner exception stack trace --- at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 92 at ICSharpCode.Decompiler.Ast.AstBuilder.AddMethodBody(EntityDeclaration methodNode, EntityDeclaration& updatedNode, MethodDef method, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, MethodKind methodKind) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstBuilder.cs:line 1660 */; } // Token: 0x06009B6F RID: 39791 RVA: 0x002040C8 File Offset: 0x002022C8 [Token(Token = "0x6009B6F")] [Address(RVA = "0x1CD8110", Offset = "0x1CD6F10", VA = "0x181CD8110")] private void checkExcludedDNS(ISet excluded, string dns) { /* An exception occurred when decompiling this method (06009B6F) ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.SecureProtocol.Org.BouncyCastle.Pkix.PkixNameConstraintValidator::checkExcludedDNS(BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities.Collections.ISet,System.String) ---> System.Exception: Basic block has to end with unconditional control flow. { IL_1C: stloc:PkixNameConstraintValidatorException(var_1_26, newobj:PkixNameConstraintValidatorException(PkixNameConstraintValidatorException::.ctor, ldstr:string("DNS is from an excluded subtree."))) } at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1852 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1846 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.Optimize(DecompilerContext context, ILBlock method, AutoPropertyProvider autoPropertyProvider, StateMachineKind& stateMachineKind, MethodDef& inlinedMethod, AsyncMethodDebugInfo& asyncInfo, ILAstOptimizationStep abortBeforeStep) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 355 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(IEnumerable`1 parameters, MethodDebugInfoBuilder& builder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 123 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 88 --- End of inner exception stack trace --- at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 92 at ICSharpCode.Decompiler.Ast.AstBuilder.AddMethodBody(EntityDeclaration methodNode, EntityDeclaration& updatedNode, MethodDef method, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, MethodKind methodKind) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstBuilder.cs:line 1660 */; } // Token: 0x06009B70 RID: 39792 RVA: 0x002040FC File Offset: 0x002022FC [Token(Token = "0x6009B70")] [Address(RVA = "0x1CDA0B0", Offset = "0x1CD8EB0", VA = "0x181CDA0B0")] private void unionEmail(string email1, string email2, ISet union) { int num; if (num == -1) { if (!Platform.StartsWith(email1, ".")) { int num2; if (num2 != -1 || (!Platform.StartsWith(email2, ".") && Platform.EqualsIgnoreCase(email1, email2)) || !this.WithinDomain(email1, email2)) { } int num4; int num3 = num4 + 1; string text = email2.Substring(num3); } int num5; if (num5 == -1) { if (!Platform.StartsWith(email2, ".")) { bool flag = this.WithinDomain(email2, email1); } if (!this.WithinDomain(email1, email2) && !Platform.EqualsIgnoreCase(email1, email2)) { bool flag2 = this.WithinDomain(email2, email1); } } int num7; int num6 = num7 + 1; string text2 = email2.Substring(num6); bool flag3 = this.WithinDomain(text2, email1); } int num9; int num8 = num9 + 1; string text3 = email1.Substring(num8); int num10; while (num10 != -1) { } if (!Platform.StartsWith(email2, ".")) { bool flag4 = Platform.EqualsIgnoreCase(text3, email2); } throw new NullReferenceException(); } // Token: 0x06009B71 RID: 39793 RVA: 0x002041DC File Offset: 0x002023DC [Token(Token = "0x6009B71")] [Address(RVA = "0x1CDA650", Offset = "0x1CD9450", VA = "0x181CDA650")] private void unionURI(string email1, string email2, ISet union) { int num; if (num == -1) { if (!Platform.StartsWith(email1, ".")) { int num2; if (num2 != -1 || (!Platform.StartsWith(email2, ".") && Platform.EqualsIgnoreCase(email1, email2)) || !this.WithinDomain(email1, email2)) { } int num4; int num3 = num4 + 1; string text = email2.Substring(num3); } int num5; if (num5 == -1) { if (!Platform.StartsWith(email2, ".")) { bool flag = this.WithinDomain(email2, email1); } if (!this.WithinDomain(email1, email2) && !Platform.EqualsIgnoreCase(email1, email2)) { bool flag2 = this.WithinDomain(email2, email1); } } int num7; int num6 = num7 + 1; string text2 = email2.Substring(num6); bool flag3 = this.WithinDomain(text2, email1); } int num9; int num8 = num9 + 1; string text3 = email1.Substring(num8); int num10; while (num10 != -1) { } if (!Platform.StartsWith(email2, ".")) { bool flag4 = Platform.EqualsIgnoreCase(text3, email2); } throw new NullReferenceException(); } // Token: 0x06009B72 RID: 39794 RVA: 0x002042BC File Offset: 0x002024BC [Token(Token = "0x6009B72")] [Address(RVA = "0x1CD9290", Offset = "0x1CD8090", VA = "0x181CD9290")] private ISet intersectDNS(ISet permitted, ISet dnss) { string @string; for (;;) { HashSet hashSet = new HashSet(); if (hashSet == 0) { goto IL_58; } if (hashSet != 0 && hashSet != 0) { IDictionary impl = hashSet.impl; DerIA5String derIA5String; @string = derIA5String.GetString(); if (permitted == 0) { break; } while (@string == 0) { } if ((@string == 0 || @string != 0) && (this.WithinDomain(@string, @string) || this.WithinDomain(@string, @string))) { break; } } } while (@string == 0) { } IL_58: throw new NullReferenceException(); } // Token: 0x06009B73 RID: 39795 RVA: 0x00204328 File Offset: 0x00202528 [Token(Token = "0x6009B73")] [Address(RVA = "0x1CD9E40", Offset = "0x1CD8C40", VA = "0x181CD9E40")] protected ISet unionDNS(ISet excluded, string dns) { int num; do { HashSet hashSet = new HashSet(); num = 0; if (num < excluded) { num += num; num++; } int num2 = 0; if (hashSet == 0) { goto IL_44; } if (num < num2) { num += num; num++; } } while (num != 0 && num == 0); if (this.WithinDomain(num, dns) || !this.WithinDomain(dns, num)) { } IL_44: if (dns != 0) { } throw new NullReferenceException(); } // Token: 0x06009B74 RID: 39796 RVA: 0x00204384 File Offset: 0x00202584 [Token(Token = "0x6009B74")] [Address(RVA = "0x1CD9520", Offset = "0x1CD8320", VA = "0x181CD9520")] private void intersectEmail(string email1, string email2, ISet intersect) { int num; while (num == -1) { if (!Platform.StartsWith(email1, ".")) { int num2; if (num2 == -1) { if (!Platform.StartsWith(email2, ".")) { if (Platform.EqualsIgnoreCase(email1, email2)) { } return; } bool flag = this.WithinDomain(email1, email2); } int num4; int num3 = num4 + 1; bool flag2 = Platform.EqualsIgnoreCase(email2.Substring(num3), email1); } int num5; if (num5 == -1) { if (!Platform.StartsWith(email2, ".")) { } if (this.WithinDomain(email1, email2) || Platform.EqualsIgnoreCase(email1, email2)) { continue; } } int num7; int num6 = num7 + 1; string text = email2.Substring(num6); if (this.WithinDomain(text, email1)) { break; } } int num9; int num8 = num9 + 1; string text2 = email1.Substring(num8); int num10; while (num10 != -1) { } if (!Platform.StartsWith(email2, ".")) { } bool flag3 = this.WithinDomain(text2, email2); throw new NullReferenceException(); } // Token: 0x06009B75 RID: 39797 RVA: 0x0020445C File Offset: 0x0020265C [Token(Token = "0x6009B75")] [Address(RVA = "0x1CD83B0", Offset = "0x1CD71B0", VA = "0x181CD83B0")] private void checkExcludedURI(ISet excluded, string uri) { /* An exception occurred when decompiling this method (06009B75) ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.SecureProtocol.Org.BouncyCastle.Pkix.PkixNameConstraintValidator::checkExcludedURI(BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities.Collections.ISet,System.String) ---> System.Exception: Basic block has to end with unconditional control flow. { IL_12: stloc:PkixNameConstraintValidatorException(var_1_1C, newobj:PkixNameConstraintValidatorException(PkixNameConstraintValidatorException::.ctor, ldstr:string("URI is from an excluded subtree."))) } at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1852 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1846 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.Optimize(DecompilerContext context, ILBlock method, AutoPropertyProvider autoPropertyProvider, StateMachineKind& stateMachineKind, MethodDef& inlinedMethod, AsyncMethodDebugInfo& asyncInfo, ILAstOptimizationStep abortBeforeStep) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 355 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(IEnumerable`1 parameters, MethodDebugInfoBuilder& builder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 123 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 88 --- End of inner exception stack trace --- at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 92 at ICSharpCode.Decompiler.Ast.AstBuilder.AddMethodBody(EntityDeclaration methodNode, EntityDeclaration& updatedNode, MethodDef method, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, MethodKind methodKind) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstBuilder.cs:line 1660 */; } // Token: 0x06009B76 RID: 39798 RVA: 0x00204488 File Offset: 0x00202688 [Token(Token = "0x6009B76")] [Address(RVA = "0x1CD9880", Offset = "0x1CD8680", VA = "0x181CD9880")] private ISet intersectURI(ISet permitted, ISet uris) { HashSet hashSet; string @string; for (;;) { hashSet = new HashSet(); if (hashSet == 0) { goto IL_4C; } if (hashSet != 0 && hashSet != 0) { IDictionary impl = hashSet.impl; DerIA5String derIA5String; @string = derIA5String.GetString(); if (permitted == 0) { break; } while (@string == 0) { } if (@string == 0 || @string != 0) { goto IL_3C; } } } IL_47: while (@string == 0) { } goto IL_4C; IL_3C: this.intersectURI(@string, @string, hashSet); goto IL_47; IL_4C: throw new NullReferenceException(); } // Token: 0x06009B77 RID: 39799 RVA: 0x002044E8 File Offset: 0x002026E8 [Token(Token = "0x6009B77")] [Address(RVA = "0x1CDA440", Offset = "0x1CD9240", VA = "0x181CDA440")] private ISet unionURI(ISet excluded, string uri) { HashSet hashSet; int num; do { hashSet = new HashSet(); num = 0; if (num < excluded) { num += num; num++; } int num2 = 0; if (hashSet == 0) { goto IL_4D; } if (num < num2) { num += num; num++; } } while (num != 0 && num == 0); this.unionURI(num, uri, hashSet); num += num; num += 19; num += num; num++; num += 19; IL_4D: if (uri != 0) { } throw new NullReferenceException(); } // Token: 0x06009B78 RID: 39800 RVA: 0x0020454C File Offset: 0x0020274C [Token(Token = "0x6009B78")] [Address(RVA = "0x1CD9AE0", Offset = "0x1CD88E0", VA = "0x181CD9AE0")] private void intersectURI(string email1, string email2, ISet intersect) { int num; while (num == -1) { if (!Platform.StartsWith(email1, ".")) { int num2; if (num2 == -1) { if (!Platform.StartsWith(email2, ".")) { if (Platform.EqualsIgnoreCase(email1, email2)) { } return; } bool flag = this.WithinDomain(email1, email2); } int num4; int num3 = num4 + 1; bool flag2 = Platform.EqualsIgnoreCase(email2.Substring(num3), email1); } int num5; if (num5 == -1) { if (!Platform.StartsWith(email2, ".")) { } if (this.WithinDomain(email1, email2) || Platform.EqualsIgnoreCase(email1, email2)) { continue; } } int num7; int num6 = num7 + 1; string text = email2.Substring(num6); if (this.WithinDomain(text, email1)) { break; } } int num9; int num8 = num9 + 1; string text2 = email1.Substring(num8); int num10; while (num10 != -1) { } if (!Platform.StartsWith(email2, ".")) { } bool flag3 = this.WithinDomain(text2, email2); throw new NullReferenceException(); } // Token: 0x06009B79 RID: 39801 RVA: 0x00204624 File Offset: 0x00202824 [Token(Token = "0x6009B79")] [Address(RVA = "0x1CD4200", Offset = "0x1CD3000", VA = "0x181CD4200")] private void CheckPermittedURI(ISet permitted, string uri) { /* An exception occurred when decompiling this method (06009B79) ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.SecureProtocol.Org.BouncyCastle.Pkix.PkixNameConstraintValidator::CheckPermittedURI(BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities.Collections.ISet,System.String) ---> System.Exception: Basic block has to end with unconditional control flow. { IL_25: stloc:PkixNameConstraintValidatorException(var_1_2F, newobj:PkixNameConstraintValidatorException(PkixNameConstraintValidatorException::.ctor, ldstr:string("URI is not from a permitted subtree."))) } at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1852 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1846 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1846 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.Optimize(DecompilerContext context, ILBlock method, AutoPropertyProvider autoPropertyProvider, StateMachineKind& stateMachineKind, MethodDef& inlinedMethod, AsyncMethodDebugInfo& asyncInfo, ILAstOptimizationStep abortBeforeStep) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 355 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(IEnumerable`1 parameters, MethodDebugInfoBuilder& builder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 123 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 88 --- End of inner exception stack trace --- at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 92 at ICSharpCode.Decompiler.Ast.AstBuilder.AddMethodBody(EntityDeclaration methodNode, EntityDeclaration& updatedNode, MethodDef method, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, MethodKind methodKind) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstBuilder.cs:line 1660 */; } // Token: 0x06009B7A RID: 39802 RVA: 0x00204660 File Offset: 0x00202860 [Token(Token = "0x6009B7A")] [Address(RVA = "0x1CD63F0", Offset = "0x1CD51F0", VA = "0x181CD63F0")] private bool IsUriConstrained(string uri, string constraint) { string text; for (;;) { text = PkixNameConstraintValidator.ExtractHostFromURL(uri); if (Platform.StartsWith(constraint, ".")) { break; } if (!Platform.EqualsIgnoreCase(text, constraint)) { return; } } if (this.WithinDomain(text, constraint)) { return true; } } // Token: 0x06009B7B RID: 39803 RVA: 0x0020469C File Offset: 0x0020289C [Token(Token = "0x6009B7B")] [Address(RVA = "0x1CD48C0", Offset = "0x1CD36C0", VA = "0x181CD48C0")] private static string ExtractHostFromURL(string url) { string text4; int num10; do { int num2; int num = num2 + 1; string text = url.Substring(num); if (Platform.IndexOf(text, "//") != -1) { } int num3; string text2; if (num3 != -1) { int num4 = 0; int num5; text2 = text.Substring(num4, num5); } int num7; int num6 = num7 + 1; string text3 = text2.Substring(num6); int num9; int num8 = num9 + 1; text4 = text3.Substring(num8); } while (num10 == -1); int num11 = 0; int num12; return text4.Substring(num11, num12); } // Token: 0x06009B7C RID: 39804 RVA: 0x00204714 File Offset: 0x00202914 [Token(Token = "0x6009B7C")] [Address(RVA = "0x1CD8BA0", Offset = "0x1CD79A0", VA = "0x181CD8BA0")] public void checkPermitted(GeneralName name) { /* An exception occurred when decompiling this method (06009B7C) ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.SecureProtocol.Org.BouncyCastle.Pkix.PkixNameConstraintValidator::checkPermitted(BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.X509.GeneralName) ---> System.Exception: Basic block has to end with unconditional control flow. { IL_182: stloc:PkixNameConstraintValidatorException(var_29_18C, newobj:PkixNameConstraintValidatorException(PkixNameConstraintValidatorException::.ctor, ldstr:string("IP is not from a permitted subtree."))) } at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1852 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1846 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1846 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.Optimize(DecompilerContext context, ILBlock method, AutoPropertyProvider autoPropertyProvider, StateMachineKind& stateMachineKind, MethodDef& inlinedMethod, AsyncMethodDebugInfo& asyncInfo, ILAstOptimizationStep abortBeforeStep) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 355 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(IEnumerable`1 parameters, MethodDebugInfoBuilder& builder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 123 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 88 --- End of inner exception stack trace --- at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 92 at ICSharpCode.Decompiler.Ast.AstBuilder.AddMethodBody(EntityDeclaration methodNode, EntityDeclaration& updatedNode, MethodDef method, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, MethodKind methodKind) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstBuilder.cs:line 1660 */; } // Token: 0x06009B7D RID: 39805 RVA: 0x002048B0 File Offset: 0x00202AB0 [Token(Token = "0x6009B7D")] [Address(RVA = "0x1CD84E0", Offset = "0x1CD72E0", VA = "0x181CD84E0")] public void checkExcluded(GeneralName name) { /* An exception occurred when decompiling this method (06009B7D) ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.SecureProtocol.Org.BouncyCastle.Pkix.PkixNameConstraintValidator::checkExcluded(BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.X509.GeneralName) ---> System.Exception: Basic block has to end with unconditional control flow. { IL_14C: stloc:PkixNameConstraintValidatorException(var_19_156, newobj:PkixNameConstraintValidatorException(PkixNameConstraintValidatorException::.ctor, ldstr:string("Email address is from an excluded subtree."))) } at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1852 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1846 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1846 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1846 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1846 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.Optimize(DecompilerContext context, ILBlock method, AutoPropertyProvider autoPropertyProvider, StateMachineKind& stateMachineKind, MethodDef& inlinedMethod, AsyncMethodDebugInfo& asyncInfo, ILAstOptimizationStep abortBeforeStep) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 355 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(IEnumerable`1 parameters, MethodDebugInfoBuilder& builder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 123 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 88 --- End of inner exception stack trace --- at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 92 at ICSharpCode.Decompiler.Ast.AstBuilder.AddMethodBody(EntityDeclaration methodNode, EntityDeclaration& updatedNode, MethodDef method, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, MethodKind methodKind) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstBuilder.cs:line 1660 */; } // Token: 0x06009B7E RID: 39806 RVA: 0x00204A14 File Offset: 0x00202C14 [Token(Token = "0x6009B7E")] [Address(RVA = "0x1CD5B50", Offset = "0x1CD4950", VA = "0x181CD5B50")] public void IntersectPermittedSubtree(Asn1Sequence permitted) { IDictionary dictionary = Platform.CreateHashtable(); int num = 0; num += num; num++; int num2 = 0; if (dictionary != 0) { if (num < num2) { num += num; num++; } int tag = GeneralSubtree.GetInstance(num).baseName.tag; uint num3; if (num < (int)num3) { num += num; num++; } if (num == 0) { HashSet hashSet = new HashSet(); } } if (num < dictionary) { num += num; num++; } int num4 = 0; if (num != 0) { if (num < num4) { num += num; num++; } int i = num; while (i > 6) { } i += 19; i++; i += 19; ISet set; this.permittedSubtreesEmail = set; ISet set2 = this.permittedSubtreesDNS; ISet set3 = this.intersectDNS(set2, set); this.permittedSubtreesDNS = set3; ISet set4 = this.permittedSubtreesDN; ISet set5 = this.IntersectDN(set4, set3); this.permittedSubtreesDN = set5; ISet set6 = this.permittedSubtreesURI; ISet set7 = this.intersectURI(set6, set5); this.permittedSubtreesURI = set7; ISet set8 = this.permittedSubtreesIP; ISet set9 = this.IntersectIP(set8, set7); this.permittedSubtreesIP = set9; } } // Token: 0x06009B7F RID: 39807 RVA: 0x00204B30 File Offset: 0x00202D30 [Token(Token = "0x6009B7F")] [Address(RVA = "0x1CD4CC0", Offset = "0x1CD3AC0", VA = "0x181CD4CC0")] private string ExtractNameAsString(GeneralName name) { Asn1Object asn1Object = DerIA5String.GetInstance(name.obj).ToAsn1Object(); throw new NullReferenceException(); } // Token: 0x06009B80 RID: 39808 RVA: 0x00204B54 File Offset: 0x00202D54 [Token(Token = "0x6009B80")] [Address(RVA = "0x1CD5400", Offset = "0x1CD4200", VA = "0x181CD5400")] public void IntersectEmptyPermittedSubtree(int nameType) { int num = nameType - 1; if (num <= 6) { HashSet hashSet = new HashSet(); this.permittedSubtreesEmail = hashSet; return; } } // Token: 0x06009B81 RID: 39809 RVA: 0x00204BB8 File Offset: 0x00202DB8 [Token(Token = "0x6009B81")] [Address(RVA = "0x1CD3610", Offset = "0x1CD2410", VA = "0x181CD3610")] public void AddExcludedSubtree(GeneralSubtree subtree) { GeneralName baseName = subtree.baseName; if (baseName.tag <= 6) { ISet set = this.excludedSubtreesEmail; string text = this.ExtractNameAsString(baseName); ISet set2 = this.UnionEmail(set, text); this.excludedSubtreesEmail = set2; } } // Token: 0x06009B82 RID: 39810 RVA: 0x00204C70 File Offset: 0x00202E70 [Token(Token = "0x6009B82")] [Address(RVA = "0x1CD64D0", Offset = "0x1CD52D0", VA = "0x181CD64D0")] private static byte[] Max(byte[] ip1, byte[] ip2) { int num = 0; int length = ip1.Length; if (num < length) { num++; return ip1; } return ip2; } // Token: 0x06009B83 RID: 39811 RVA: 0x00204C98 File Offset: 0x00202E98 [Token(Token = "0x6009B83")] [Address(RVA = "0x1CD6950", Offset = "0x1CD5750", VA = "0x181CD6950")] private static byte[] Min(byte[] ip1, byte[] ip2) { int num = 0; int length = ip1.Length; if (num < length) { num++; return ip1; } return ip2; } // Token: 0x06009B84 RID: 39812 RVA: 0x00204CC0 File Offset: 0x00202EC0 [Token(Token = "0x6009B84")] [Address(RVA = "0x1CD4490", Offset = "0x1CD3290", VA = "0x181CD4490")] private static int CompareTo(byte[] ip1, byte[] ip2) { if (!Arrays.AreEqual(ip1, ip2)) { bool flag = Arrays.AreEqual(PkixNameConstraintValidator.Max(ip1, ip2), ip1); return -1; } return 0; } // Token: 0x06009B85 RID: 39813 RVA: 0x00204CE8 File Offset: 0x00202EE8 [Token(Token = "0x6009B85")] [Address(RVA = "0x1CD69D0", Offset = "0x1CD57D0", VA = "0x181CD69D0")] private static byte[] Or(byte[] ip1, byte[] ip2) { byte[] array = new byte[ip1.Length]; int num = 0; int length = ip1.Length; if (num < length) { num++; } return array; } // Token: 0x06009B86 RID: 39814 RVA: 0x0000220F File Offset: 0x0000040F [Token(Token = "0x6009B86")] [Address(RVA = "0x1CD4E00", Offset = "0x1CD3C00", VA = "0x181CD4E00")] [Obsolete] public int HashCode() { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } // Token: 0x06009B87 RID: 39815 RVA: 0x00204D1C File Offset: 0x00202F1C [Token(Token = "0x6009B87")] [Address(RVA = "0x1CD4D00", Offset = "0x1CD3B00", VA = "0x181CD4D00", Slot = "2")] public override int GetHashCode() { ISet set = this.excludedSubtreesDN; int num = this.HashCollection(set); ISet set2 = this.excludedSubtreesDNS; int num2 = this.HashCollection(set2); ISet set3 = this.excludedSubtreesEmail; int num3 = this.HashCollection(set3); ISet set4 = this.excludedSubtreesIP; int num4 = this.HashCollection(set4); ISet set5 = this.excludedSubtreesURI; int num5 = this.HashCollection(set5); ISet set6 = this.permittedSubtreesDN; int num6 = this.HashCollection(set6); ISet set7 = this.permittedSubtreesDNS; int num7 = this.HashCollection(set7); ISet set8 = this.permittedSubtreesEmail; int num8 = this.HashCollection(set8); ISet set9 = this.permittedSubtreesIP; int num9 = this.HashCollection(set9); ISet set10 = this.permittedSubtreesURI; int num10 = this.HashCollection(set10); num10 += num9; num10 += num8; num10 += num7; num10 += num6; num10 += num5; num10 += num4; return num10 + num3; } // Token: 0x06009B88 RID: 39816 RVA: 0x00204E0C File Offset: 0x0020300C [Token(Token = "0x6009B88")] [Address(RVA = "0x1CD4E20", Offset = "0x1CD3C20", VA = "0x181CD4E20")] private int HashCollection(ICollection coll) { if (coll != 0) { int num = 0; int num2; return num + num2; } return 0; } // Token: 0x06009B89 RID: 39817 RVA: 0x00204E2C File Offset: 0x0020302C [Token(Token = "0x6009B89")] [Address(RVA = "0x1CD46F0", Offset = "0x1CD34F0", VA = "0x181CD46F0", Slot = "0")] public override bool Equals(object o) { while (o != 0 && o != 0) { if (o != 0) { bool flag; bool flag2; bool flag3; bool flag4; bool flag5; bool flag6; bool flag7; bool flag8; bool flag9; if (flag && flag2 && flag3 && flag4 && flag5 && flag6 && flag7 && flag8 && flag9) { bool flag10; return flag10; } return; } } } // Token: 0x06009B8A RID: 39818 RVA: 0x00204E7C File Offset: 0x0020307C [Token(Token = "0x6009B8A")] [Address(RVA = "0x1CD4330", Offset = "0x1CD3130", VA = "0x181CD4330")] private bool CollectionsAreEqual(ICollection coll1, ICollection coll2) { if (coll1 != coll2 && coll1 != 0 && coll2 != 0) { bool flag; while (!flag) { } } return true; } // Token: 0x06009B8B RID: 39819 RVA: 0x00204EA0 File Offset: 0x002030A0 [Token(Token = "0x6009B8B")] [Address(RVA = "0x1CD6AA0", Offset = "0x1CD58A0", VA = "0x181CD6AA0")] private bool SpecialEquals(object o1, object o2) { if (o1 != o2) { if (o1 != 0 && o2 != 0) { bool flag; return flag; } } return true; } // Token: 0x06009B8C RID: 39820 RVA: 0x00204EC0 File Offset: 0x002030C0 [Token(Token = "0x6009B8C")] [Address(RVA = "0x1CD6EF0", Offset = "0x1CD5CF0", VA = "0x181CD6EF0")] private string StringifyIP(byte[] ip) { int num = 0; int num2 = ip.Length; num2 -= ip; if (num < num2) { string text = "" + num + "."; num++; } string text3; string text2 = text3 + "/"; int num3 = ip.Length; num3 -= "/"; string text4; if (num3 < ip.Length) { text4 = text2 + num3 + "."; num3++; } int stringLength = text4.m_stringLength; int num4 = 0; return text4.Substring(num4, stringLength); } // Token: 0x06009B8D RID: 39821 RVA: 0x00204F54 File Offset: 0x00203154 [Token(Token = "0x6009B8D")] [Address(RVA = "0x1CD6BA0", Offset = "0x1CD59A0", VA = "0x181CD6BA0")] private string StringifyIPCollection(ISet ips) { string text6; int stringLength3; do { string text = "" + "["; int num = 0; if (num < ips) { num += num; num++; } int num2 = 0; if (text != 0) { if (num < num2) { num += num; num++; } if (num == 0) { num += 19; num++; num += 19; } if (num == 0) { continue; } uint num3; num3 -= typeof(byte[]).TypeHandle; string text2; if (num < (int)num3) { text2 = "" + num + "."; num++; } int stringLength = text2.m_stringLength; int num4 = 0; string text3 = text2.Substring(num4, stringLength) + "/"; text3 -= "/"; string text4 = text3 + text3 + "."; int stringLength2 = text4.m_stringLength; int num5 = 0; string text5 = text4.Substring(num5, stringLength2); text6 = text + text5 + ","; } stringLength3 = text6.m_stringLength; } while (stringLength3 <= 1); int num6 = 0; return text6.Substring(num6, stringLength3) + "]"; } // Token: 0x06009B8E RID: 39822 RVA: 0x00205060 File Offset: 0x00203260 [Token(Token = "0x6009B8E")] [Address(RVA = "0x1CD7050", Offset = "0x1CD5E50", VA = "0x181CD7050", Slot = "3")] public override string ToString() { string text20; for (;;) { string text = "" + "permitted:\n"; if (this.permittedSubtreesDN != (ulong)0L) { string text2 = text + "DN:\n"; ISet set = this.permittedSubtreesDN; string text3 = text2 + text2 + "\n"; } string text5; if (this.permittedSubtreesDNS != (ulong)0L) { string text4 = text + "DNS:\n"; ISet set2 = this.permittedSubtreesDNS; text5 = text4 + text4 + "\n"; } string text7; if (this.permittedSubtreesEmail != (ulong)0L) { string text6 = text5 + "Email:\n"; ISet set3 = this.permittedSubtreesEmail; text7 = text6 + text6 + "\n"; } string text9; if (this.permittedSubtreesURI != (ulong)0L) { string text8 = text7 + "URI:\n"; ISet set4 = this.permittedSubtreesURI; text9 = text8 + text8 + "\n"; } if (this.permittedSubtreesIP != (ulong)0L) { string text10 = text9 + "IP:\n"; ISet set5 = this.permittedSubtreesIP; string text11 = this.StringifyIPCollection(set5); string text12 = text10 + text11 + "\n" + "excluded:\n"; ISet set6 = this.excludedSubtreesDN; string text14; if (text12 == 0) { string text13 = text12 + "DN:\n"; ISet set7 = this.excludedSubtreesDN; text14 = text13 + text13 + "\n"; } ISet set8 = this.excludedSubtreesDNS; string text16; if (text14 == 0) { string text15 = text14 + "DNS:\n"; ISet set9 = this.excludedSubtreesDNS; text16 = text15 + text15 + "\n"; } ISet set10 = this.excludedSubtreesEmail; string text18; if (text16 == 0) { string text17 = text16 + "Email:\n"; ISet set11 = this.excludedSubtreesEmail; text18 = text17 + text17 + "\n"; } ISet set12 = this.excludedSubtreesURI; if (text18 == 0) { string text19 = text18 + "URI:\n"; ISet set13 = this.excludedSubtreesURI; text20 = text19 + text19 + "\n"; } ISet set14 = this.excludedSubtreesIP; if (text20 == 0) { break; } } } string text21 = text20 + "IP:\n"; ISet set15 = this.excludedSubtreesIP; string text22 = this.StringifyIPCollection(set15); return text21 + text22 + "\n"; } // Token: 0x040068EA RID: 26858 [FieldOffset(Offset = "0x10")] [Token(Token = "0x40068EA")] private ISet excludedSubtreesDN; // Token: 0x040068EB RID: 26859 [FieldOffset(Offset = "0x18")] [Token(Token = "0x40068EB")] private ISet excludedSubtreesDNS; // Token: 0x040068EC RID: 26860 [FieldOffset(Offset = "0x20")] [Token(Token = "0x40068EC")] private ISet excludedSubtreesEmail; // Token: 0x040068ED RID: 26861 [FieldOffset(Offset = "0x28")] [Token(Token = "0x40068ED")] private ISet excludedSubtreesURI; // Token: 0x040068EE RID: 26862 [FieldOffset(Offset = "0x30")] [Token(Token = "0x40068EE")] private ISet excludedSubtreesIP; // Token: 0x040068EF RID: 26863 [FieldOffset(Offset = "0x38")] [Token(Token = "0x40068EF")] private ISet permittedSubtreesDN; // Token: 0x040068F0 RID: 26864 [FieldOffset(Offset = "0x40")] [Token(Token = "0x40068F0")] private ISet permittedSubtreesDNS; // Token: 0x040068F1 RID: 26865 [FieldOffset(Offset = "0x48")] [Token(Token = "0x40068F1")] private ISet permittedSubtreesEmail; // Token: 0x040068F2 RID: 26866 [FieldOffset(Offset = "0x50")] [Token(Token = "0x40068F2")] private ISet permittedSubtreesURI; // Token: 0x040068F3 RID: 26867 [FieldOffset(Offset = "0x58")] [Token(Token = "0x40068F3")] private ISet permittedSubtreesIP; } }