Files
niko c12fbe3fc6 m
2026-04-12 16:51:38 +02:00

1877 lines
79 KiB
C#

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: 0x02001A61 RID: 6753
[Token(Token = "0x2001A61")]
public class PkixNameConstraintValidator
{
// Token: 0x06009F24 RID: 40740 RVA: 0x0020C834 File Offset: 0x0020AA34
[Token(Token = "0x6009F24")]
[Address(RVA = "0x65A570", Offset = "0x659570", VA = "0x18065A570")]
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: 0x06009F25 RID: 40741 RVA: 0x0020C88C File Offset: 0x0020AA8C
[Token(Token = "0x6009F25")]
[Address(RVA = "0x65A200", Offset = "0x659200", VA = "0x18065A200")]
private static bool WithinDNSubtree(Asn1Sequence dns, Asn1Sequence subtree)
{
Asn1SequenceParser parser = subtree.Parser;
if (dns.Parser != 0)
{
}
throw new NullReferenceException();
}
// Token: 0x06009F26 RID: 40742 RVA: 0x0020C8B0 File Offset: 0x0020AAB0
[Token(Token = "0x6009F26")]
[Address(RVA = "0x656390", Offset = "0x655390", VA = "0x180656390")]
public void CheckPermittedDN(Asn1Sequence dns)
{
Asn1Encodable asn1Encodable;
if (this.permittedSubtreesDN != 0 && asn1Encodable != 0)
{
bool flag;
while (!flag)
{
}
}
}
// Token: 0x06009F27 RID: 40743 RVA: 0x0020C8E0 File Offset: 0x0020AAE0
[Token(Token = "0x6009F27")]
[Address(RVA = "0x655D00", Offset = "0x654D00", VA = "0x180655D00")]
public void CheckExcludedDN(Asn1Sequence dns)
{
/*
An exception occurred when decompiling this method (06009F27)
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 1663
*/;
}
// Token: 0x06009F28 RID: 40744 RVA: 0x0020C90C File Offset: 0x0020AB0C
[Token(Token = "0x6009F28")]
[Address(RVA = "0x656270", Offset = "0x655270", VA = "0x180656270")]
private void CheckPermittedDN(ISet permitted, Asn1Sequence dns)
{
Asn1Encodable asn1Encodable;
if (permitted != 0 && asn1Encodable != 0)
{
bool flag;
while (!flag)
{
}
}
}
// Token: 0x06009F29 RID: 40745 RVA: 0x0020C938 File Offset: 0x0020AB38
[Token(Token = "0x6009F29")]
[Address(RVA = "0x655E50", Offset = "0x654E50", VA = "0x180655E50")]
private void CheckExcludedDN(ISet excluded, Asn1Sequence dns)
{
/*
An exception occurred when decompiling this method (06009F29)
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 1663
*/;
}
// Token: 0x06009F2A RID: 40746 RVA: 0x0020C95C File Offset: 0x0020AB5C
[Token(Token = "0x6009F2A")]
[Address(RVA = "0x657470", Offset = "0x656470", VA = "0x180657470")]
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: 0x06009F2B RID: 40747 RVA: 0x0020C9B4 File Offset: 0x0020ABB4
[Token(Token = "0x6009F2B")]
[Address(RVA = "0x659980", Offset = "0x658980", VA = "0x180659980")]
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: 0x06009F2C RID: 40748 RVA: 0x0020CA1C File Offset: 0x0020AC1C
[Token(Token = "0x6009F2C")]
[Address(RVA = "0x6576E0", Offset = "0x6566E0", VA = "0x1806576E0")]
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: 0x06009F2D RID: 40749 RVA: 0x0020CA7C File Offset: 0x0020AC7C
[Token(Token = "0x6009F2D")]
[Address(RVA = "0x659C00", Offset = "0x658C00", VA = "0x180659C00")]
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: 0x06009F2E RID: 40750 RVA: 0x0020CAE0 File Offset: 0x0020ACE0
[Token(Token = "0x6009F2E")]
[Address(RVA = "0x657E30", Offset = "0x656E30", VA = "0x180657E30")]
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: 0x06009F2F RID: 40751 RVA: 0x0020CB28 File Offset: 0x0020AD28
[Token(Token = "0x6009F2F")]
[Address(RVA = "0x659ED0", Offset = "0x658ED0", VA = "0x180659ED0")]
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: 0x06009F30 RID: 40752 RVA: 0x0020CB98 File Offset: 0x0020AD98
[Token(Token = "0x6009F30")]
[Address(RVA = "0x659E10", Offset = "0x658E10", VA = "0x180659E10")]
private ISet UnionIPRange(byte[] ipWithSubmask1, byte[] ipWithSubmask2)
{
HashSet hashSet = new HashSet();
if (!Arrays.AreEqual(ipWithSubmask1, ipWithSubmask2))
{
}
throw new NullReferenceException();
}
// Token: 0x06009F31 RID: 40753 RVA: 0x0020CBBC File Offset: 0x0020ADBC
[Token(Token = "0x6009F31")]
[Address(RVA = "0x657A60", Offset = "0x656A60", VA = "0x180657A60")]
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: 0x06009F32 RID: 40754 RVA: 0x0020CD14 File Offset: 0x0020AF14
[Token(Token = "0x6009F32")]
[Address(RVA = "0x658680", Offset = "0x657680", VA = "0x180658680")]
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: 0x06009F33 RID: 40755 RVA: 0x0020CD54 File Offset: 0x0020AF54
[Token(Token = "0x6009F33")]
[Address(RVA = "0x656F70", Offset = "0x655F70", VA = "0x180656F70")]
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: 0x06009F34 RID: 40756 RVA: 0x0020CE18 File Offset: 0x0020B018
[Token(Token = "0x6009F34")]
[Address(RVA = "0x658A80", Offset = "0x657A80", VA = "0x180658A80")]
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: 0x06009F35 RID: 40757 RVA: 0x0020CE9C File Offset: 0x0020B09C
[Token(Token = "0x6009F35")]
[Address(RVA = "0x6564B0", Offset = "0x6554B0", VA = "0x1806564B0")]
private void CheckPermittedEmail(ISet permitted, string email)
{
/*
An exception occurred when decompiling this method (06009F35)
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 1663
*/;
}
// Token: 0x06009F36 RID: 40758 RVA: 0x0020CED8 File Offset: 0x0020B0D8
[Token(Token = "0x6009F36")]
[Address(RVA = "0x655FA0", Offset = "0x654FA0", VA = "0x180655FA0")]
private void CheckExcludedEmail(ISet excluded, string email)
{
/*
An exception occurred when decompiling this method (06009F36)
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 1663
*/;
}
// Token: 0x06009F37 RID: 40759 RVA: 0x0020CF04 File Offset: 0x0020B104
[Token(Token = "0x6009F37")]
[Address(RVA = "0x6565E0", Offset = "0x6555E0", VA = "0x1806565E0")]
private void CheckPermittedIP(ISet permitted, byte[] ip)
{
if (permitted != 0)
{
bool flag;
while (!flag)
{
}
}
}
// Token: 0x06009F38 RID: 40760 RVA: 0x0020CF34 File Offset: 0x0020B134
[Token(Token = "0x6009F38")]
[Address(RVA = "0x65A7A0", Offset = "0x6597A0", VA = "0x18065A7A0")]
private void checkExcludedIP(ISet excluded, byte[] ip)
{
/*
An exception occurred when decompiling this method (06009F38)
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 1663
*/;
}
// Token: 0x06009F39 RID: 40761 RVA: 0x0020CF50 File Offset: 0x0020B150
[Token(Token = "0x6009F39")]
[Address(RVA = "0x658730", Offset = "0x657730", VA = "0x180658730")]
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: 0x06009F3A RID: 40762 RVA: 0x0020CFB4 File Offset: 0x0020B1B4
[Token(Token = "0x6009F3A")]
[Address(RVA = "0x656A90", Offset = "0x655A90", VA = "0x180656A90")]
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: 0x06009F3B RID: 40763 RVA: 0x0020D02C File Offset: 0x0020B22C
[Token(Token = "0x6009F3B")]
[Address(RVA = "0x65A320", Offset = "0x659320", VA = "0x18065A320")]
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: 0x06009F3C RID: 40764 RVA: 0x0020D10C File Offset: 0x0020B30C
[Token(Token = "0x6009F3C")]
[Address(RVA = "0x6560D0", Offset = "0x6550D0", VA = "0x1806560D0")]
private void CheckPermittedDNS(ISet permitted, string dns)
{
/*
An exception occurred when decompiling this method (06009F3C)
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 1663
*/;
}
// Token: 0x06009F3D RID: 40765 RVA: 0x0020D160 File Offset: 0x0020B360
[Token(Token = "0x6009F3D")]
[Address(RVA = "0x65A640", Offset = "0x659640", VA = "0x18065A640")]
private void checkExcludedDNS(ISet excluded, string dns)
{
/*
An exception occurred when decompiling this method (06009F3D)
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 1663
*/;
}
// Token: 0x06009F3E RID: 40766 RVA: 0x0020D194 File Offset: 0x0020B394
[Token(Token = "0x6009F3E")]
[Address(RVA = "0x65C5E0", Offset = "0x65B5E0", VA = "0x18065C5E0")]
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: 0x06009F3F RID: 40767 RVA: 0x0020D274 File Offset: 0x0020B474
[Token(Token = "0x6009F3F")]
[Address(RVA = "0x65CB80", Offset = "0x65BB80", VA = "0x18065CB80")]
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: 0x06009F40 RID: 40768 RVA: 0x0020D354 File Offset: 0x0020B554
[Token(Token = "0x6009F40")]
[Address(RVA = "0x65B7C0", Offset = "0x65A7C0", VA = "0x18065B7C0")]
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: 0x06009F41 RID: 40769 RVA: 0x0020D3C0 File Offset: 0x0020B5C0
[Token(Token = "0x6009F41")]
[Address(RVA = "0x65C370", Offset = "0x65B370", VA = "0x18065C370")]
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: 0x06009F42 RID: 40770 RVA: 0x0020D41C File Offset: 0x0020B61C
[Token(Token = "0x6009F42")]
[Address(RVA = "0x65BA50", Offset = "0x65AA50", VA = "0x18065BA50")]
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: 0x06009F43 RID: 40771 RVA: 0x0020D4F4 File Offset: 0x0020B6F4
[Token(Token = "0x6009F43")]
[Address(RVA = "0x65A8E0", Offset = "0x6598E0", VA = "0x18065A8E0")]
private void checkExcludedURI(ISet excluded, string uri)
{
/*
An exception occurred when decompiling this method (06009F43)
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 1663
*/;
}
// Token: 0x06009F44 RID: 40772 RVA: 0x0020D520 File Offset: 0x0020B720
[Token(Token = "0x6009F44")]
[Address(RVA = "0x65BDB0", Offset = "0x65ADB0", VA = "0x18065BDB0")]
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: 0x06009F45 RID: 40773 RVA: 0x0020D580 File Offset: 0x0020B780
[Token(Token = "0x6009F45")]
[Address(RVA = "0x65C970", Offset = "0x65B970", VA = "0x18065C970")]
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: 0x06009F46 RID: 40774 RVA: 0x0020D5E4 File Offset: 0x0020B7E4
[Token(Token = "0x6009F46")]
[Address(RVA = "0x65C010", Offset = "0x65B010", VA = "0x18065C010")]
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: 0x06009F47 RID: 40775 RVA: 0x0020D6BC File Offset: 0x0020B8BC
[Token(Token = "0x6009F47")]
[Address(RVA = "0x656730", Offset = "0x655730", VA = "0x180656730")]
private void CheckPermittedURI(ISet permitted, string uri)
{
/*
An exception occurred when decompiling this method (06009F47)
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 1663
*/;
}
// Token: 0x06009F48 RID: 40776 RVA: 0x0020D6F8 File Offset: 0x0020B8F8
[Token(Token = "0x6009F48")]
[Address(RVA = "0x658920", Offset = "0x657920", VA = "0x180658920")]
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: 0x06009F49 RID: 40777 RVA: 0x0020D734 File Offset: 0x0020B934
[Token(Token = "0x6009F49")]
[Address(RVA = "0x656DF0", Offset = "0x655DF0", VA = "0x180656DF0")]
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: 0x06009F4A RID: 40778 RVA: 0x0020D7AC File Offset: 0x0020B9AC
[Token(Token = "0x6009F4A")]
[Address(RVA = "0x65B0D0", Offset = "0x65A0D0", VA = "0x18065B0D0")]
public void checkPermitted(GeneralName name)
{
/*
An exception occurred when decompiling this method (06009F4A)
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 1663
*/;
}
// Token: 0x06009F4B RID: 40779 RVA: 0x0020D948 File Offset: 0x0020BB48
[Token(Token = "0x6009F4B")]
[Address(RVA = "0x65AA10", Offset = "0x659A10", VA = "0x18065AA10")]
public void checkExcluded(GeneralName name)
{
/*
An exception occurred when decompiling this method (06009F4B)
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 1663
*/;
}
// Token: 0x06009F4C RID: 40780 RVA: 0x0020DAAC File Offset: 0x0020BCAC
[Token(Token = "0x6009F4C")]
[Address(RVA = "0x658080", Offset = "0x657080", VA = "0x180658080")]
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: 0x06009F4D RID: 40781 RVA: 0x0020DBC8 File Offset: 0x0020BDC8
[Token(Token = "0x6009F4D")]
[Address(RVA = "0x6571F0", Offset = "0x6561F0", VA = "0x1806571F0")]
private string ExtractNameAsString(GeneralName name)
{
Asn1Object asn1Object = DerIA5String.GetInstance(name.obj).ToAsn1Object();
throw new NullReferenceException();
}
// Token: 0x06009F4E RID: 40782 RVA: 0x0020DBEC File Offset: 0x0020BDEC
[Token(Token = "0x6009F4E")]
[Address(RVA = "0x657930", Offset = "0x656930", VA = "0x180657930")]
public void IntersectEmptyPermittedSubtree(int nameType)
{
if (nameType - 1 <= 6)
{
HashSet hashSet = new HashSet();
this.permittedSubtreesEmail = hashSet;
return;
}
}
// Token: 0x06009F4F RID: 40783 RVA: 0x0020DC48 File Offset: 0x0020BE48
[Token(Token = "0x6009F4F")]
[Address(RVA = "0x655B40", Offset = "0x654B40", VA = "0x180655B40")]
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: 0x06009F50 RID: 40784 RVA: 0x0020DD00 File Offset: 0x0020BF00
[Token(Token = "0x6009F50")]
[Address(RVA = "0x658A00", Offset = "0x657A00", VA = "0x180658A00")]
private static byte[] Max(byte[] ip1, byte[] ip2)
{
int num = 0;
int length = ip1.Length;
if (num < length)
{
num++;
return ip1;
}
return ip2;
}
// Token: 0x06009F51 RID: 40785 RVA: 0x0020DD28 File Offset: 0x0020BF28
[Token(Token = "0x6009F51")]
[Address(RVA = "0x658E80", Offset = "0x657E80", VA = "0x180658E80")]
private static byte[] Min(byte[] ip1, byte[] ip2)
{
int num = 0;
int length = ip1.Length;
if (num < length)
{
num++;
return ip1;
}
return ip2;
}
// Token: 0x06009F52 RID: 40786 RVA: 0x0020DD50 File Offset: 0x0020BF50
[Token(Token = "0x6009F52")]
[Address(RVA = "0x6569C0", Offset = "0x6559C0", VA = "0x1806569C0")]
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: 0x06009F53 RID: 40787 RVA: 0x0020DD78 File Offset: 0x0020BF78
[Token(Token = "0x6009F53")]
[Address(RVA = "0x658F00", Offset = "0x657F00", VA = "0x180658F00")]
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: 0x06009F54 RID: 40788 RVA: 0x0000220F File Offset: 0x0000040F
[Token(Token = "0x6009F54")]
[Address(RVA = "0x657330", Offset = "0x656330", VA = "0x180657330")]
[Obsolete]
public int HashCode()
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x06009F55 RID: 40789 RVA: 0x0020DDAC File Offset: 0x0020BFAC
[Token(Token = "0x6009F55")]
[Address(RVA = "0x657230", Offset = "0x656230", VA = "0x180657230", 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: 0x06009F56 RID: 40790 RVA: 0x0020DE9C File Offset: 0x0020C09C
[Token(Token = "0x6009F56")]
[Address(RVA = "0x657350", Offset = "0x656350", VA = "0x180657350")]
private int HashCollection(ICollection coll)
{
if (coll != 0)
{
int num = 0;
int num2;
return num + num2;
}
return 0;
}
// Token: 0x06009F57 RID: 40791 RVA: 0x0020DEBC File Offset: 0x0020C0BC
[Token(Token = "0x6009F57")]
[Address(RVA = "0x656C20", Offset = "0x655C20", VA = "0x180656C20", 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: 0x06009F58 RID: 40792 RVA: 0x0020DF0C File Offset: 0x0020C10C
[Token(Token = "0x6009F58")]
[Address(RVA = "0x656860", Offset = "0x655860", VA = "0x180656860")]
private bool CollectionsAreEqual(ICollection coll1, ICollection coll2)
{
if (coll1 != coll2 && coll1 != 0 && coll2 != 0)
{
bool flag;
while (!flag)
{
}
}
return true;
}
// Token: 0x06009F59 RID: 40793 RVA: 0x0020DF30 File Offset: 0x0020C130
[Token(Token = "0x6009F59")]
[Address(RVA = "0x658FD0", Offset = "0x657FD0", VA = "0x180658FD0")]
private bool SpecialEquals(object o1, object o2)
{
if (o1 != o2)
{
if (o1 != 0 && o2 != 0)
{
bool flag;
return flag;
}
}
return true;
}
// Token: 0x06009F5A RID: 40794 RVA: 0x0020DF50 File Offset: 0x0020C150
[Token(Token = "0x6009F5A")]
[Address(RVA = "0x659420", Offset = "0x658420", VA = "0x180659420")]
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: 0x06009F5B RID: 40795 RVA: 0x0020DFE4 File Offset: 0x0020C1E4
[Token(Token = "0x6009F5B")]
[Address(RVA = "0x6590D0", Offset = "0x6580D0", VA = "0x1806590D0")]
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: 0x06009F5C RID: 40796 RVA: 0x0020E0F0 File Offset: 0x0020C2F0
[Token(Token = "0x6009F5C")]
[Address(RVA = "0x659580", Offset = "0x658580", VA = "0x180659580", 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: 0x04006AA3 RID: 27299
[FieldOffset(Offset = "0x10")]
[Token(Token = "0x4006AA3")]
private ISet excludedSubtreesDN;
// Token: 0x04006AA4 RID: 27300
[FieldOffset(Offset = "0x18")]
[Token(Token = "0x4006AA4")]
private ISet excludedSubtreesDNS;
// Token: 0x04006AA5 RID: 27301
[FieldOffset(Offset = "0x20")]
[Token(Token = "0x4006AA5")]
private ISet excludedSubtreesEmail;
// Token: 0x04006AA6 RID: 27302
[FieldOffset(Offset = "0x28")]
[Token(Token = "0x4006AA6")]
private ISet excludedSubtreesURI;
// Token: 0x04006AA7 RID: 27303
[FieldOffset(Offset = "0x30")]
[Token(Token = "0x4006AA7")]
private ISet excludedSubtreesIP;
// Token: 0x04006AA8 RID: 27304
[FieldOffset(Offset = "0x38")]
[Token(Token = "0x4006AA8")]
private ISet permittedSubtreesDN;
// Token: 0x04006AA9 RID: 27305
[FieldOffset(Offset = "0x40")]
[Token(Token = "0x4006AA9")]
private ISet permittedSubtreesDNS;
// Token: 0x04006AAA RID: 27306
[FieldOffset(Offset = "0x48")]
[Token(Token = "0x4006AAA")]
private ISet permittedSubtreesEmail;
// Token: 0x04006AAB RID: 27307
[FieldOffset(Offset = "0x50")]
[Token(Token = "0x4006AAB")]
private ISet permittedSubtreesURI;
// Token: 0x04006AAC RID: 27308
[FieldOffset(Offset = "0x58")]
[Token(Token = "0x4006AAC")]
private ISet permittedSubtreesIP;
}
}