using System; using System.Collections; using BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1; using BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.X509; using BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto; using BestHTTP.SecureProtocol.Org.BouncyCastle.Math; using BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities; using BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities.Collections; using BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities.Date; using BestHTTP.SecureProtocol.Org.BouncyCastle.X509; using BestHTTP.SecureProtocol.Org.BouncyCastle.X509.Store; using Cpp2IlInjected; namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Pkix { // Token: 0x02001986 RID: 6534 [Token(Token = "0x2001986")] public class Rfc3280CertPathUtilities { // Token: 0x06009BD7 RID: 39895 RVA: 0x00205F84 File Offset: 0x00204184 [Token(Token = "0x6009BD7")] [Address(RVA = "0x19BC7C0", Offset = "0x19BB5C0", VA = "0x1819BC7C0")] internal static void ProcessCrlB2(DistributionPoint dp, object cert, X509Crl crl) { for (;;) { DerObjectIdentifier issuingDistributionPoint = X509Extensions.IssuingDistributionPoint; IssuingDistributionPoint instance = IssuingDistributionPoint.GetInstance(PkixCertPathValidatorUtilities.GetExtensionValue(crl, issuingDistributionPoint)); if (instance == 0) { return; } if (instance._distributionPoint != (ulong)0L) { DistributionPointName distributionPoint = IssuingDistributionPoint.GetInstance(instance)._distributionPoint; IList list = Platform.CreateArrayList(); if (distributionPoint.type != 0) { goto IL_70; } GeneralName[] names = GeneralNames.GetInstance(distributionPoint.name).GetNames(); int num = 0; int length = names.Length; if (num < length) { num++; goto IL_70; } IL_73: Asn1EncodableVector asn1EncodableVector; int num2; if (distributionPoint.type == 1) { asn1EncodableVector = new Asn1EncodableVector(Array.Empty()); int version = crl.Version; byte[] array; IEnumerator enumerator = Asn1Sequence.GetInstance(Asn1Object.FromByteArray(array)).GetEnumerator(); if (enumerator != 0) { Asn1Encodable[] array2 = new Asn1Encodable[1]; if (num2 < enumerator) { num2 += num2; num2++; } if (array2 != 0) { ulong num3; num3 += (ulong)1L; if (array2 == 0 || array2 == 0) { goto IL_2B3; } } array2[0] = num2; asn1EncodableVector.Add(array2); } Asn1Encodable[] array3 = new Asn1Encodable[1]; Asn1Encodable name = distributionPoint.name; if (name != 0) { } array3[0] = name; asn1EncodableVector.Add(array3); GeneralName generalName = new GeneralName(X509Name.GetInstance(new DerSequence(asn1EncodableVector))); } if (asn1EncodableVector == 0) { uint num4; if (num4 == (uint)0) { continue; } GeneralName[] array4; int length2 = array4.Length; if (num2 >= length2) { continue; } if (num2 != 0) { goto IL_25A; } num2++; } GeneralNames generalNames; GeneralName[] names2; if (num2 == 0) { IList v = asn1EncodableVector.v; names2 = generalNames.GetNames(); } GeneralName[] array6; int num5; if (names2 == (ulong)1L) { if (generalNames == 0) { GeneralName[] array5 = new GeneralName[names2]; X509Name x509Name; GeneralName generalName2 = new GeneralName(x509Name); if (generalName2 != 0) { } array5[0] = generalName2; } int length3 = array6.Length; if (num2 < length3) { break; } num5 = 0; } if (array6 == 0) { continue; } int length4 = array6.Length; if (num5 >= length4) { continue; } if (length4 == 0) { num5++; } goto IL_25A; IL_70: num2 = 0; goto IL_73; } IL_25A: if (cert != 0) { } Asn1Object asn1Object; BasicConstraints instance2 = BasicConstraints.GetInstance(asn1Object); if ((!instance._onlyContainsUserCerts || instance2 == 0 || !instance2.IsCA()) && (!instance._onlyContainsCACerts || (instance2 != 0 && instance2.IsCA())) && !instance._onlyContainsAttributeCerts) { return; } } int num6; IEnumerator enumerator2 = Asn1Sequence.GetInstance(num6).GetEnumerator(); Asn1EncodableVector asn1EncodableVector2 = new Asn1EncodableVector(Array.Empty()); if (asn1EncodableVector2 != 0) { Asn1Encodable[] array7 = new Asn1Encodable[1]; throw new ArrayTypeMismatchException(); } ArrayTypeMismatchException ex; string className = ex._className; throw new ArrayTypeMismatchException(); IL_2B3: throw new IndexOutOfRangeException(); } // Token: 0x06009BD8 RID: 39896 RVA: 0x0020625C File Offset: 0x0020445C [Token(Token = "0x6009BD8")] [Address(RVA = "0x19BA460", Offset = "0x19B9260", VA = "0x1819BA460")] internal static void ProcessCertBC(PkixCertPath certPath, int index, PkixNameConstraintValidator nameConstraintValidator) { GeneralNames instance2; int num3; for (;;) { int num = 0; byte[] array; if (array == 0) { } int num2 = 0; if (array != 0) { num2 -= index; bool flag; if (flag) { } byte[] array2; Asn1Sequence instance = Asn1Sequence.GetInstance(new Asn1InputStream(array2).ReadObject()); nameConstraintValidator.CheckPermittedDN(instance); nameConstraintValidator.CheckExcludedDN(instance); Asn1Object asn1Object; instance2 = GeneralNames.GetInstance(asn1Object); X509Name instance3 = X509Name.GetInstance(instance); DerObjectIdentifier emailAddress = X509Name.EmailAddress; IList valueList = instance3.GetValueList(emailAddress); GeneralName generalName; if (valueList != 0) { if (valueList != 0 && valueList == 0) { goto IL_D3; } generalName = new GeneralName(1, num); nameConstraintValidator.checkPermitted(generalName); nameConstraintValidator.checkExcluded(generalName); } num3 = 0; if (generalName != 0) { } if (num == 0) { break; } } } if (instance2 != 0) { GeneralName[] names = instance2.GetNames(); if (num3 < names.Length) { GeneralName generalName2 = names[num3]; nameConstraintValidator.checkPermitted(generalName2); nameConstraintValidator.checkExcluded(generalName2); num3++; } } return; IL_D3: throw new NullReferenceException(); } // Token: 0x06009BD9 RID: 39897 RVA: 0x00206344 File Offset: 0x00204544 [Token(Token = "0x6009BD9")] [Address(RVA = "0x19B82D0", Offset = "0x19B70D0", VA = "0x1819B82D0")] internal static void PrepareNextCertA(PkixCertPath certPath, int index) { /* An exception occurred when decompiling this method (06009BD9) ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.SecureProtocol.Org.BouncyCastle.Pkix.Rfc3280CertPathUtilities::PrepareNextCertA(BestHTTP.SecureProtocol.Org.BouncyCastle.Pkix.PkixCertPath,System.Int32) ---> System.Exception: Basic block has to end with unconditional control flow. { IL_8F: stloc:PkixCertPathValidatorException(var_20_9D, newobj:PkixCertPathValidatorException(PkixCertPathValidatorException::.ctor, ldstr:string("IssuerDomainPolicy is anyPolicy"), ldloc:int32[exp:Exception](var_22), ldloc:PkixCertPath(certPath), ldloc:int32(index))) stloc:int32(var_22, ldc.i4:int32(0)) } 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: 0x06009BDA RID: 39898 RVA: 0x002063F4 File Offset: 0x002045F4 [Token(Token = "0x6009BDA")] [Address(RVA = "0x19BAAB0", Offset = "0x19B98B0", VA = "0x1819BAAB0")] internal static PkixPolicyNode ProcessCertD(PkixCertPath certPath, int index, ISet acceptablePolicies, PkixPolicyNode validPolicyTree, IList[] policyNodes, int inhibitAnyPolicy) { byte[] array; ISet qualifierSet2; for (;;) { if (array == 0) { } if (array != 0) { array -= index; Asn1Object asn1Object; Asn1Sequence instance = Asn1Sequence.GetInstance(asn1Object); if (instance == 0) { goto IL_1C5; } HashSet hashSet = new HashSet(); IEnumerator enumerator = instance.GetEnumerator(); DerObjectIdentifier policyIdentifier; bool flag; if (enumerator != 0) { PolicyInformation policyInformation; policyIdentifier = policyInformation.policyIdentifier; string any_POLICY = Rfc3280CertPathUtilities.ANY_POLICY; string identifier = policyIdentifier.identifier; if (any_POLICY.Equals(identifier)) { continue; } ISet qualifierSet = PkixCertPathValidatorUtilities.GetQualifierSet(policyInformation.policyQualifiers); while (flag) { } } if (flag) { } if (policyIdentifier != 0) { goto IL_1EF; } if (enumerator != (ulong)(-1L)) { } HashSet hashSet2; if (!flag) { hashSet2 = new HashSet(); if (hashSet2 != 0) { while (hashSet2 == 0) { } } if (hashSet2 != 0) { } if (hashSet2 != 0) { goto IL_201; } if (hashSet2 != (ulong)(-1L)) { } } bool flag2; if (hashSet2 >= array || !flag2) { break; } IEnumerator enumerator2 = instance.GetEnumerator(); IList list; if (enumerator2 != 0) { string any_POLICY2 = Rfc3280CertPathUtilities.ANY_POLICY; PolicyInformation policyInformation2; string identifier2 = policyInformation2.policyIdentifier.identifier; if (!any_POLICY2.Equals(identifier2)) { continue; } Asn1Sequence policyQualifiers = policyInformation2.policyQualifiers; qualifierSet2 = PkixCertPathValidatorUtilities.GetQualifierSet(policyQualifiers); byte b = array[policyQualifiers]; if (0 < qualifierSet2 && qualifierSet2 != 0) { if (qualifierSet2 != 0 && qualifierSet2 != 0 && qualifierSet2 == 0) { goto IL_201; } while (qualifierSet2 == 0) { } bool flag3; while (!flag3) { } if (hashSet2 != 0) { } if (hashSet2 != 0) { goto IL_213; } if (hashSet2 != (ulong)(-1L)) { } ulong num; while (num != (ulong)0L) { } HashSet hashSet3 = new HashSet(); list = Platform.CreateArrayList(); int length = array.Length; byte b2 = array[hashSet3]; } } if (list != 0) { } if (enumerator2 == 0) { break; } } } int num2 = 0; byte b3 = array[qualifierSet2]; PkixPolicyNode pkixPolicyNode; if (num2 < qualifierSet2 && (qualifierSet2 != 0 || pkixPolicyNode != 0)) { num2++; } DerObjectIdentifier certificatePolicies = X509Extensions.CertificatePolicies; int length2 = array.Length; byte b4 = array[qualifierSet2]; if (num2 < qualifierSet2) { num2++; } IL_1C5: throw new NullReferenceException(); IL_1EF: throw new NullReferenceException(); IL_201: throw new NullReferenceException(); IL_213: throw new IndexOutOfRangeException(); } // Token: 0x06009BDB RID: 39899 RVA: 0x00206680 File Offset: 0x00204880 [Token(Token = "0x6009BDB")] [Address(RVA = "0x19BC410", Offset = "0x19BB210", VA = "0x1819BC410")] internal static void ProcessCrlB1(DistributionPoint dp, object cert, X509Crl crl) { /* An exception occurred when decompiling this method (06009BDB) ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.SecureProtocol.Org.BouncyCastle.Pkix.Rfc3280CertPathUtilities::ProcessCrlB1(BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.X509.DistributionPoint,System.Object,BestHTTP.SecureProtocol.Org.BouncyCastle.X509.X509Crl) ---> System.Exception: Basic block has to end with unconditional control flow. { IL_99: stloc:Exception(var_14_A3, newobj:Exception(Exception::.ctor, ldstr:string("Cannot find matching CRL issuer for certificate."))) } 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.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: 0x06009BDC RID: 39900 RVA: 0x00206734 File Offset: 0x00204934 [Token(Token = "0x6009BDC")] [Address(RVA = "0x19BD9D0", Offset = "0x19BC7D0", VA = "0x1819BD9D0")] internal static ReasonsMask ProcessCrlD(X509Crl crl, DistributionPoint dp) { DerObjectIdentifier issuingDistributionPoint = X509Extensions.IssuingDistributionPoint; IssuingDistributionPoint instance = IssuingDistributionPoint.GetInstance(PkixCertPathValidatorUtilities.GetExtensionValue(crl, issuingDistributionPoint)); if (instance != 0) { ReasonFlags onlySomeReasons = instance._onlySomeReasons; if (onlySomeReasons != 0) { ReasonFlags reasons = dp.reasons; if (reasons != 0) { int padBits = reasons.PadBits; ReasonsMask reasonsMask = new ReasonsMask(); reasonsMask._reasons = padBits; int padBits2 = instance._onlySomeReasons.PadBits; return reasonsMask.Intersect(new ReasonsMask { _reasons = padBits2 }); } if (onlySomeReasons != 0) { goto IL_7B; } } } if (dp.reasons == (ulong)0L) { goto IL_C4; } IL_7B: ReasonFlags reasons2 = dp.reasons; if (reasons2 != 0) { int num = reasons2.PadBits; new ReasonsMask()._reasons = num; } ReasonsMask allReasons = ReasonsMask.AllReasons; if (instance != 0) { int num = instance._onlySomeReasons.PadBits; new ReasonsMask()._reasons = num; } IL_C4: return ReasonsMask.AllReasons; } // Token: 0x06009BDD RID: 39901 RVA: 0x00206818 File Offset: 0x00204A18 [Token(Token = "0x6009BDD")] [Address(RVA = "0x19BDCF0", Offset = "0x19BCAF0", VA = "0x1819BDCF0")] internal static ISet ProcessCrlF(X509Crl crl, object cert, X509Certificate defaultCRLSignCert, AsymmetricKeyParameter defaultCRLSignKey, PkixParameters paramsPKIX, IList certPathCerts) { Exception ex; do { X509CertStoreSelector x509CertStoreSelector = new X509CertStoreSelector(); int version = crl.Version; x509CertStoreSelector.subject = version; IList list = Platform.CreateArrayList(); ICollection collection = PkixCertPathValidatorUtilities.FindCertificates(x509CertStoreSelector, list); CollectionUtilities.AddRange(list, collection); ICollection collection2; CollectionUtilities.AddRange(list, collection2); IList list2 = Platform.CreateArrayList(); IList list3 = Platform.CreateArrayList(); if (list3 != 0) { if (list3 == 0) { continue; } PkixCertPathBuilder pkixCertPathBuilder = new PkixCertPathBuilder(); new X509CertStoreSelector().certificate = list3; PkixBuilderParameters pkixBuilderParameters; if (pkixBuilderParameters == 0) { bool isRevocationEnabled = pkixBuilderParameters.IsRevocationEnabled; } bool isRevocationEnabled2 = pkixBuilderParameters.IsRevocationEnabled; string text = pkixCertPathBuilder.ToString(); } HashSet hashSet = new HashSet(); int num = 0; if (0 < hashSet) { if (hashSet == 0 || hashSet == 0) { continue; } int crl_SIGN = Rfc3280CertPathUtilities.CRL_SIGN; ex = new Exception("Issuer certificate key usage extension does not permit CRL signing."); num++; num++; } } while ((ex == 0 && ex == 0) || (ex == 0 && ex != 0)); throw new NullReferenceException(); } // Token: 0x06009BDE RID: 39902 RVA: 0x00206950 File Offset: 0x00204B50 [Token(Token = "0x6009BDE")] [Address(RVA = "0x19BE560", Offset = "0x19BD360", VA = "0x1819BE560")] internal static AsymmetricKeyParameter ProcessCrlG(X509Crl crl, ISet keys) { /* An exception occurred when decompiling this method (06009BDE) ICSharpCode.Decompiler.DecompilerException: Error decompiling BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.AsymmetricKeyParameter BestHTTP.SecureProtocol.Org.BouncyCastle.Pkix.Rfc3280CertPathUtilities::ProcessCrlG(BestHTTP.SecureProtocol.Org.BouncyCastle.X509.X509Crl,BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities.Collections.ISet) ---> System.Exception: Basic block has to end with unconditional control flow. { IL_30: stloc:Exception(var_3_3B, newobj:Exception(Exception::.ctor, ldstr:string("Cannot verify CRL."), ldloc:int32[exp:Exception](var_0_01))) } 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: 0x06009BDF RID: 39903 RVA: 0x00206998 File Offset: 0x00204B98 [Token(Token = "0x6009BDF")] [Address(RVA = "0x19BE7A0", Offset = "0x19BD5A0", VA = "0x1819BE7A0")] internal static X509Crl ProcessCrlH(ISet deltaCrls, AsymmetricKeyParameter key) { /* An exception occurred when decompiling this method (06009BDF) ICSharpCode.Decompiler.DecompilerException: Error decompiling BestHTTP.SecureProtocol.Org.BouncyCastle.X509.X509Crl BestHTTP.SecureProtocol.Org.BouncyCastle.Pkix.Rfc3280CertPathUtilities::ProcessCrlH(BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities.Collections.ISet,BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.AsymmetricKeyParameter) ---> System.Exception: Basic block has to end with unconditional control flow. { IL_2F: stloc:Exception(var_4_3A, newobj:Exception(Exception::.ctor, ldstr:string("Cannot verify delta CRL."), ldloc:int32[exp:Exception](var_0_01))) } 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.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: 0x06009BE0 RID: 39904 RVA: 0x002069E0 File Offset: 0x00204BE0 [Token(Token = "0x6009BE0")] [Address(RVA = "0x19B6090", Offset = "0x19B4E90", VA = "0x1819B6090")] private static void CheckCrl(DistributionPoint dp, PkixParameters paramsPKIX, X509Certificate cert, DateTime validDate, X509Certificate defaultCRLSignCert, AsymmetricKeyParameter defaultCRLSignKey, CertStatus certStatus, ReasonsMask reasonMask, IList certPathCerts) { DateTime utcNow = DateTime.UtcNow; bool flag; bool flag2; if (PkixCertPathValidatorUtilities.GetCompleteCrls(dp, cert, utcNow, paramsPKIX) != 0 && !flag && flag2) { int num = 0; ISet set; AsymmetricKeyParameter asymmetricKeyParameter; X509Crl x509Crl = Rfc3280CertPathUtilities.ProcessCrlH(set, asymmetricKeyParameter); DateTime notBefore = cert.NotBefore; if (asymmetricKeyParameter.privateKey) { asymmetricKeyParameter.privateKey = true; } DerObjectIdentifier issuingDistributionPoint = X509Extensions.IssuingDistributionPoint; DerObjectIdentifier deltaCrlIndicator = X509Extensions.DeltaCrlIndicator; if (typeof(X509Extensions).TypeHandle == 0) { Exception ex = new Exception("CRL contains unsupported critical extensions."); throw new NullReferenceException(); } if (num != 0) { DerObjectIdentifier issuingDistributionPoint2 = X509Extensions.IssuingDistributionPoint; DerObjectIdentifier deltaCrlIndicator2 = X509Extensions.DeltaCrlIndicator; if (typeof(X509Extensions).TypeHandle == 0) { Exception ex2 = new Exception("Delta CRL contains unsupported critical extension."); throw new NullReferenceException(); } } } } // Token: 0x06009BE1 RID: 39905 RVA: 0x00206AD4 File Offset: 0x00204CD4 [Token(Token = "0x6009BE1")] [Address(RVA = "0x19B6820", Offset = "0x19B5620", VA = "0x1819B6820")] protected static void CheckCrls(PkixParameters paramsPKIX, X509Certificate cert, DateTime validDate, X509Certificate sign, AsymmetricKeyParameter workingPublicKey, IList certPathCerts) { CertStatus certStatus; do { DerObjectIdentifier crlDistributionPoints = X509Extensions.CrlDistributionPoints; CrlDistPoint instance = CrlDistPoint.GetInstance(PkixCertPathValidatorUtilities.GetExtensionValue(cert, crlDistributionPoints)); int num = 0; PkixCertPathValidatorUtilities.AddAdditionalStoresFromCrlDistributionPoint(instance, paramsPKIX); certStatus = new CertStatus(); int num2 = 0; ReasonsMask reasonsMask; reasonsMask.FieldGetter(num2, num, sign); reasonsMask._reasons = (int)((ulong)0L); if (instance != 0) { DistributionPoint[] distributionPoints = instance.GetDistributionPoints(); if (distributionPoints != 0) { int num3 = 0; if (num3 < distributionPoints.Length && certStatus.status == 11 && !reasonsMask.IsAllReasons) { DistributionPoint distributionPoint = distributionPoints[num3]; num3++; } } } if (certStatus.status == 11 && !reasonsMask.IsAllReasons) { BigInteger serialNumber = cert.SerialNumber; byte[] array; Asn1Object asn1Object = new Asn1InputStream(array).ReadObject(); GeneralNames generalNames = new GeneralNames(new GeneralName(4, asn1Object)); int num4; DistributionPointName distributionPointName = new DistributionPointName(num4, generalNames); num4 = 0; int num5; int num6; DistributionPoint distributionPoint2 = new DistributionPoint(distributionPointName, num5, num6); num6 = 0; num5 = 0; } if (certStatus.status != 11) { break; } if (!reasonsMask.IsAllReasons && certStatus.status == 11) { certStatus.status = (int)((ulong)12L); } } while (certStatus.status == 12); DateTimeObject revocationDate = certStatus.revocationDate; } // Token: 0x06009BE2 RID: 39906 RVA: 0x0000220F File Offset: 0x0000040F [Token(Token = "0x6009BE2")] [Address(RVA = "0x19B6F30", Offset = "0x19B5D30", VA = "0x1819B6F30")] internal static PkixPolicyNode PrepareCertB(PkixCertPath certPath, int index, IList[] policyNodes, PkixPolicyNode validPolicyTree, int policyMapping) { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } // Token: 0x06009BE3 RID: 39907 RVA: 0x00206C04 File Offset: 0x00204E04 [Token(Token = "0x6009BE3")] [Address(RVA = "0x19BC0C0", Offset = "0x19BAEC0", VA = "0x1819BC0C0")] internal static ISet[] ProcessCrlA1ii(DateTime currentDate, PkixParameters paramsPKIX, X509Certificate cert, X509Crl crl) { HashSet hashSet = new HashSet(); X509CrlStoreSelector x509CrlStoreSelector = new X509CrlStoreSelector(); x509CrlStoreSelector.certificateChecking = cert; IList list = Platform.CreateArrayList(); int version = crl.Version; x509CrlStoreSelector.Issuers = list; x509CrlStoreSelector.completeCrlEnabled = true; string text = Rfc3280CertPathUtilities.CrlUtilities.ToString(); if (text != 0) { ISet deltaCrls = PkixCertPathValidatorUtilities.GetDeltaCrls(currentDate, paramsPKIX, crl); } ISet[] array = new ISet[2]; if (text != 0) { } array[0] = text; if (hashSet != 0) { } array[1] = hashSet; return array; } // Token: 0x06009BE4 RID: 39908 RVA: 0x00206C90 File Offset: 0x00204E90 [Token(Token = "0x6009BE4")] [Address(RVA = "0x19BBDB0", Offset = "0x19BABB0", VA = "0x1819BBDB0")] internal static ISet ProcessCrlA1i(DateTime currentDate, PkixParameters paramsPKIX, X509Certificate cert, X509Crl crl) { if (new HashSet() != 0) { DerObjectIdentifier freshestCrl = X509Extensions.FreshestCrl; CrlDistPoint instance = CrlDistPoint.GetInstance(PkixCertPathValidatorUtilities.GetExtensionValue(cert, freshestCrl)); if (instance == 0) { DerObjectIdentifier freshestCrl2 = X509Extensions.FreshestCrl; if (CrlDistPoint.GetInstance(PkixCertPathValidatorUtilities.GetExtensionValue(crl, freshestCrl2)) == 0) { goto IL_44; } } PkixCertPathValidatorUtilities.AddAdditionalStoresFromCrlDistributionPoint(instance, paramsPKIX); ISet deltaCrls = PkixCertPathValidatorUtilities.GetDeltaCrls(currentDate, paramsPKIX, crl); } IL_44: throw new NullReferenceException(); } // Token: 0x06009BE5 RID: 39909 RVA: 0x00206CEC File Offset: 0x00204EEC [Token(Token = "0x6009BE5")] [Address(RVA = "0x19BBD10", Offset = "0x19BAB10", VA = "0x1819BBD10")] internal static void ProcessCertF(PkixCertPath certPath, int index, PkixPolicyNode validPolicyTree, int explicitPolicy) { /* An exception occurred when decompiling this method (06009BE5) ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.SecureProtocol.Org.BouncyCastle.Pkix.Rfc3280CertPathUtilities::ProcessCertF(BestHTTP.SecureProtocol.Org.BouncyCastle.Pkix.PkixCertPath,System.Int32,BestHTTP.SecureProtocol.Org.BouncyCastle.Pkix.PkixPolicyNode,System.Int32) ---> System.Exception: Basic block has to end with unconditional control flow. { IL_05: stloc:PkixCertPathValidatorException(var_0_12, newobj:PkixCertPathValidatorException(PkixCertPathValidatorException::.ctor, ldstr:string("No valid policy tree found when one expected."), ldloc:int32[exp:Exception](var_1), ldloc:PkixCertPath(certPath), ldloc:int32(index))) stloc:int32(var_1, ldc.i4:int32(0)) } 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: 0x06009BE6 RID: 39910 RVA: 0x00206D10 File Offset: 0x00204F10 [Token(Token = "0x6009BE6")] [Address(RVA = "0x19B9EB0", Offset = "0x19B8CB0", VA = "0x1819B9EB0")] internal static void ProcessCertA(PkixCertPath certPath, PkixParameters paramsPKIX, int index, AsymmetricKeyParameter workingPublicKey, X509Name workingIssuerName, X509Certificate sign) { byte[] array; do { if (array == 0) { } } while (array == 0); DateTime validCertDateFromValidityModel = PkixCertPathValidatorUtilities.GetValidCertDateFromValidityModel(paramsPKIX, certPath, index); if (paramsPKIX.ToString() != 0) { DateTime validCertDateFromValidityModel2 = PkixCertPathValidatorUtilities.GetValidCertDateFromValidityModel(paramsPKIX, certPath, index); } X509Name issuerPrincipal = PkixCertPathValidatorUtilities.GetIssuerPrincipal(array); bool flag; if (flag) { return; } object[] array2 = new object[5]; throw new NullReferenceException(); } // Token: 0x06009BE7 RID: 39911 RVA: 0x00206DD0 File Offset: 0x00204FD0 [Token(Token = "0x6009BE7")] [Address(RVA = "0x19B8DE0", Offset = "0x19B7BE0", VA = "0x1819B8DE0")] internal static int PrepareNextCertI1(PkixCertPath certPath, int index, int explicitPolicy) { byte[] array; do { if (array == 0) { } } while (array == 0); Asn1Object asn1Object; Asn1Sequence instance = Asn1Sequence.GetInstance(asn1Object); if (instance != 0 && instance.GetEnumerator() != 0) { Asn1TaggedObject asn1TaggedObject; if (asn1TaggedObject.tagNo != 0) { } int num = 0; return DerInteger.GetInstance(asn1TaggedObject, num != 0).Value.IntValue; } return explicitPolicy; } // Token: 0x06009BE8 RID: 39912 RVA: 0x00206E48 File Offset: 0x00205048 [Token(Token = "0x6009BE8")] [Address(RVA = "0x19B9090", Offset = "0x19B7E90", VA = "0x1819B9090")] internal static int PrepareNextCertI2(PkixCertPath certPath, int index, int policyMapping) { byte[] array; do { if (array == 0) { } } while (array == 0); Asn1Object asn1Object; Asn1Sequence instance = Asn1Sequence.GetInstance(asn1Object); if (instance != 0 && instance.GetEnumerator() != 0) { Asn1TaggedObject asn1TaggedObject; if (asn1TaggedObject.tagNo != 1) { } int num = 0; return DerInteger.GetInstance(asn1TaggedObject, num != 0).Value.IntValue; } return policyMapping; } // Token: 0x06009BE9 RID: 39913 RVA: 0x00206EC0 File Offset: 0x002050C0 [Token(Token = "0x6009BE9")] [Address(RVA = "0x19B86F0", Offset = "0x19B74F0", VA = "0x1819B86F0")] internal static void PrepareNextCertG(PkixCertPath certPath, int index, PkixNameConstraintValidator nameConstraintValidator) { byte[] array; int num; do { if (array == 0) { } num = 0; } while (array == 0); Asn1Object asn1Object; Asn1Sequence instance = Asn1Sequence.GetInstance(asn1Object); NameConstraints nameConstraints; if (instance != 0) { nameConstraints = new NameConstraints(instance); } if (nameConstraints != 0) { Asn1Sequence permitted = nameConstraints.permitted; if (permitted != 0) { nameConstraintValidator.IntersectPermittedSubtree(permitted); } Asn1Sequence excluded = nameConstraints.excluded; if (excluded != 0) { IEnumerator enumerator = excluded.GetEnumerator(); if (enumerator != 0) { if (num < enumerator) { num += num; num++; } GeneralSubtree generalSubtree; nameConstraintValidator.AddExcludedSubtree(generalSubtree); generalSubtree += generalSubtree; } } } } // Token: 0x06009BEA RID: 39914 RVA: 0x00206F60 File Offset: 0x00205160 [Token(Token = "0x6009BEA")] [Address(RVA = "0x19B9340", Offset = "0x19B8140", VA = "0x1819B9340")] internal static int PrepareNextCertJ(PkixCertPath certPath, int index, int inhibitAnyPolicy) { byte[] array; do { if (array == 0) { } } while (array == 0); Asn1Object asn1Object; DerInteger instance = DerInteger.GetInstance(asn1Object); if (instance != 0) { int intValue = instance.Value.IntValue; if (intValue < inhibitAnyPolicy) { return intValue; } } return inhibitAnyPolicy; } // Token: 0x06009BEB RID: 39915 RVA: 0x00206FA8 File Offset: 0x002051A8 [Token(Token = "0x6009BEB")] [Address(RVA = "0x19B9520", Offset = "0x19B8320", VA = "0x1819B9520")] internal static void PrepareNextCertK(PkixCertPath certPath, int index) { /* An exception occurred when decompiling this method (06009BEB) ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.SecureProtocol.Org.BouncyCastle.Pkix.Rfc3280CertPathUtilities::PrepareNextCertK(BestHTTP.SecureProtocol.Org.BouncyCastle.Pkix.PkixCertPath,System.Int32) ---> System.Exception: Basic block has to end with unconditional control flow. { IL_30: stloc:PkixCertPathValidatorException(var_6_3A, newobj:PkixCertPathValidatorException(PkixCertPathValidatorException::.ctor, ldstr:string("Not a CA certificate"))) } 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.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: 0x06009BEC RID: 39916 RVA: 0x00206FF0 File Offset: 0x002051F0 [Token(Token = "0x6009BEC")] [Address(RVA = "0x19B9730", Offset = "0x19B8530", VA = "0x1819B9730")] internal static int PrepareNextCertL(PkixCertPath certPath, int index, int maxPathLength) { for (;;) { byte[] array; if (array == 0) { } if (array != 0) { bool flag; if (flag) { break; } if (maxPathLength > 0) { goto Block_2; } } } return maxPathLength; Block_2: throw new NullReferenceException(); } // Token: 0x06009BED RID: 39917 RVA: 0x00207018 File Offset: 0x00205218 [Token(Token = "0x6009BED")] [Address(RVA = "0x19B9890", Offset = "0x19B8690", VA = "0x1819B9890")] internal static int PrepareNextCertM(PkixCertPath certPath, int index, int maxPathLength) { byte[] array; do { if (array == 0) { } } while (array == 0); Asn1Object asn1Object; BasicConstraints instance = BasicConstraints.GetInstance(asn1Object); if (instance != 0) { BigInteger pathLenConstraint = instance.PathLenConstraint; if (pathLenConstraint != 0) { int intValue = pathLenConstraint.IntValue; } } return maxPathLength; } // Token: 0x06009BEE RID: 39918 RVA: 0x00207060 File Offset: 0x00205260 [Token(Token = "0x6009BEE")] [Address(RVA = "0x19B9A60", Offset = "0x19B8860", VA = "0x1819B9A60")] internal static void PrepareNextCertN(PkixCertPath certPath, int index) { for (;;) { if ("{il2cpp array field local2->}" == typeof(X509Certificate).TypeHandle) { } byte[] array; if (array != 0) { if ("{il2cpp array field local2->}" == typeof(X509Certificate).TypeHandle) { } if (array != 0) { break; } } } int key_CERT_SIGN = Rfc3280CertPathUtilities.KEY_CERT_SIGN; } // Token: 0x06009BEF RID: 39919 RVA: 0x002070A0 File Offset: 0x002052A0 [Token(Token = "0x6009BEF")] [Address(RVA = "0x19B9C20", Offset = "0x19B8A20", VA = "0x1819B9C20")] internal static void PrepareNextCertO(PkixCertPath certPath, int index, ISet criticalExtensions, IList pathCheckers) { /* An exception occurred when decompiling this method (06009BEF) ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.SecureProtocol.Org.BouncyCastle.Pkix.Rfc3280CertPathUtilities::PrepareNextCertO(BestHTTP.SecureProtocol.Org.BouncyCastle.Pkix.PkixCertPath,System.Int32,BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities.Collections.ISet,System.Collections.IList) ---> System.Exception: Basic block has to end with unconditional control flow. { IL_33: stloc:PkixCertPathValidatorException(var_6_41, newobj:PkixCertPathValidatorException(PkixCertPathValidatorException::.ctor, ldstr:string("Certificate has unsupported critical extension."), ldloc:int32[exp:Exception](var_8), ldloc:PkixCertPath(certPath), ldloc:int32(index))) stloc:int32(var_8, ldc.i4:int32(0)) } 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: 0x06009BF0 RID: 39920 RVA: 0x002070F4 File Offset: 0x002052F4 [Token(Token = "0x6009BF0")] [Address(RVA = "0x19B8A80", Offset = "0x19B7880", VA = "0x1819B8A80")] internal static int PrepareNextCertH1(PkixCertPath certPath, int index, int explicitPolicy) { byte[] array; do { if (array == 0) { } } while (array == 0); bool flag; if (!flag && explicitPolicy != 0) { return explicitPolicy - 1; } return explicitPolicy; } // Token: 0x06009BF1 RID: 39921 RVA: 0x00207124 File Offset: 0x00205324 [Token(Token = "0x6009BF1")] [Address(RVA = "0x19B8BA0", Offset = "0x19B79A0", VA = "0x1819B8BA0")] internal static int PrepareNextCertH2(PkixCertPath certPath, int index, int policyMapping) { byte[] array; do { if (array == 0) { } } while (array == 0); bool flag; if (!flag && policyMapping != 0) { return policyMapping - 1; } return policyMapping; } // Token: 0x06009BF2 RID: 39922 RVA: 0x00207154 File Offset: 0x00205354 [Token(Token = "0x6009BF2")] [Address(RVA = "0x19B8CC0", Offset = "0x19B7AC0", VA = "0x1819B8CC0")] internal static int PrepareNextCertH3(PkixCertPath certPath, int index, int inhibitAnyPolicy) { byte[] array; do { if (array == 0) { } } while (array == 0); bool flag; if (!flag && inhibitAnyPolicy != 0) { return inhibitAnyPolicy - 1; } return inhibitAnyPolicy; } // Token: 0x06009BF3 RID: 39923 RVA: 0x00207184 File Offset: 0x00205384 [Token(Token = "0x6009BF3")] [Address(RVA = "0x19BEB60", Offset = "0x19BD960", VA = "0x1819BEB60")] internal static int WrapupCertA(int explicitPolicy, X509Certificate cert) { if (PkixCertPathValidatorUtilities.IsSelfIssued(cert) || explicitPolicy == 0) { } return explicitPolicy; } // Token: 0x06009BF4 RID: 39924 RVA: 0x002071A0 File Offset: 0x002053A0 [Token(Token = "0x6009BF4")] [Address(RVA = "0x19BEBD0", Offset = "0x19BD9D0", VA = "0x1819BEBD0")] internal static int WrapupCertB(PkixCertPath certPath, int index, int explicitPolicy) { for (;;) { byte[] array; if (array == 0) { } if (array != 0) { Asn1Object asn1Object; Asn1Sequence instance = Asn1Sequence.GetInstance(asn1Object); if (instance == 0) { return explicitPolicy; } IEnumerator enumerator = instance.GetEnumerator(); if (enumerator == 0) { return explicitPolicy; } if (enumerator != 0) { break; } } } DerInteger derInteger; int intValue = derInteger.Value.IntValue; while (intValue != 0) { } return intValue; } // Token: 0x06009BF5 RID: 39925 RVA: 0x0020720C File Offset: 0x0020540C [Token(Token = "0x6009BF5")] [Address(RVA = "0x19BEED0", Offset = "0x19BDCD0", VA = "0x1819BEED0")] internal static void WrapupCertF(PkixCertPath certPath, int index, IList pathCheckers, ISet criticalExtensions) { /* An exception occurred when decompiling this method (06009BF5) ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.SecureProtocol.Org.BouncyCastle.Pkix.Rfc3280CertPathUtilities::WrapupCertF(BestHTTP.SecureProtocol.Org.BouncyCastle.Pkix.PkixCertPath,System.Int32,System.Collections.IList,BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities.Collections.ISet) ---> System.Exception: Basic block has to end with unconditional control flow. { IL_20: stloc:PkixCertPathValidatorException(var_5_2E, newobj:PkixCertPathValidatorException(PkixCertPathValidatorException::.ctor, ldstr:string("Certificate has unsupported critical extension"), ldloc:int32[exp:Exception](var_7), ldloc:PkixCertPath(certPath), ldloc:int32(index))) stloc:int32(var_7, ldc.i4:int32(0)) } 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: 0x06009BF6 RID: 39926 RVA: 0x0020724C File Offset: 0x0020544C [Token(Token = "0x6009BF6")] [Address(RVA = "0x19BF130", Offset = "0x19BDF30", VA = "0x1819BF130")] internal static PkixPolicyNode WrapupCertG(PkixCertPath certPath, PkixParameters paramsPKIX, ISet userInitialPolicySet, int index, IList[] policyNodes, PkixPolicyNode validPolicyTree, ISet acceptablePolicies) { for (;;) { uint num3; if (!PkixCertPathValidatorUtilities.IsAnyPolicy(userInitialPolicySet)) { HashSet hashSet = new HashSet(); int num = 0; int num2 = 0; if (num2 < hashSet) { string any_POLICY = Rfc3280CertPathUtilities.ANY_POLICY; bool isEmpty = hashSet.IsEmpty; bool flag; if (flag) { string any_POLICY2 = Rfc3280CertPathUtilities.ANY_POLICY; bool flag2; while (flag2) { } num3 += (uint)1; if (num3 != (uint)0) { } if (any_POLICY2 != 0) { continue; } if (num3 != (uint)(-1)) { } } num2++; } num++; if (hashSet != 0 && hashSet.IsEmpty) { continue; } PkixPolicyNode pkixPolicyNode; if (pkixPolicyNode == 0) { break; } int i = 0; while (i >= (int)num3) { } i++; } string text; if (text == 0) { break; } if (text == 0) { HashSet hashSet2 = new HashSet(); int num4 = 0; if (num4 < hashSet2) { string any_POLICY3 = Rfc3280CertPathUtilities.ANY_POLICY; bool isEmpty2 = hashSet2.IsEmpty; bool flag3; if (flag3) { num3 += (uint)1; if (num3 != (uint)0) { } if (any_POLICY3 != 0) { continue; } if (num3 != (uint)(-1)) { } } num4++; } if (num3 != (uint)0) { } if (num3 != (uint)0) { } if (num3 == (uint)0) { if (num4 == 0) { break; } int j = 0; while (j >= (int)num3) { } j++; string text2; if (text2 == 0) { break; } } } } throw new NullReferenceException(); } // Token: 0x06009BF7 RID: 39927 RVA: 0x00207360 File Offset: 0x00205560 [Token(Token = "0x6009BF7")] [Address(RVA = "0x19BD530", Offset = "0x19BC330", VA = "0x1819BD530")] internal static void ProcessCrlC(X509Crl deltaCRL, X509Crl completeCRL, PkixParameters pkixParams) { /* An exception occurred when decompiling this method (06009BF7) ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.SecureProtocol.Org.BouncyCastle.Pkix.Rfc3280CertPathUtilities::ProcessCrlC(BestHTTP.SecureProtocol.Org.BouncyCastle.X509.X509Crl,BestHTTP.SecureProtocol.Org.BouncyCastle.X509.X509Crl,BestHTTP.SecureProtocol.Org.BouncyCastle.Pkix.PkixParameters) ---> System.Exception: Basic block has to end with unconditional control flow. { IL_84: stloc:Exception(var_12_8E, newobj:Exception(Exception::.ctor, ldstr:string("CRL authority key identifier is null."))) } 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: 0x06009BF8 RID: 39928 RVA: 0x002073FC File Offset: 0x002055FC [Token(Token = "0x6009BF8")] [Address(RVA = "0x19BEA00", Offset = "0x19BD800", VA = "0x1819BEA00")] internal static void ProcessCrlI(DateTime validDate, X509Crl deltacrl, object cert, CertStatus certStatus, PkixParameters pkixParams) { if (deltacrl != 0) { PkixCertPathValidatorUtilities.GetCertStatus(validDate, deltacrl, cert, certStatus); } } // Token: 0x06009BF9 RID: 39929 RVA: 0x0020741C File Offset: 0x0020561C [Token(Token = "0x6009BF9")] [Address(RVA = "0x19BEAC0", Offset = "0x19BD8C0", VA = "0x1819BEAC0")] internal static void ProcessCrlJ(DateTime validDate, X509Crl completecrl, object cert, CertStatus certStatus) { if (certStatus.status == 11) { PkixCertPathValidatorUtilities.GetCertStatus(validDate, completecrl, cert, certStatus); } } // Token: 0x06009BFA RID: 39930 RVA: 0x00207444 File Offset: 0x00205644 [Token(Token = "0x6009BFA")] [Address(RVA = "0x19BBB50", Offset = "0x19BA950", VA = "0x1819BBB50")] internal static PkixPolicyNode ProcessCertE(PkixCertPath certPath, int index, PkixPolicyNode validPolicyTree) { byte[] array; do { if (array == 0) { } } while (array == 0); Asn1Object asn1Object; Asn1Sequence instance = Asn1Sequence.GetInstance(asn1Object); throw new NullReferenceException(); } // Token: 0x06009BFB RID: 39931 RVA: 0x00207470 File Offset: 0x00205670 [Token(Token = "0x6009BFB")] [Address(RVA = "0x3F5100", Offset = "0x3F3F00", VA = "0x1803F5100")] public Rfc3280CertPathUtilities() { } // Token: 0x06009BFC RID: 39932 RVA: 0x00207484 File Offset: 0x00205684 // Note: this type is marked as 'beforefieldinit'. [Token(Token = "0x6009BFC")] [Address(RVA = "0x19BFD30", Offset = "0x19BEB30", VA = "0x1819BFD30")] static Rfc3280CertPathUtilities() { string[] array = new string[11]; if ("unspecified" != 0) { } array[0] = "unspecified"; if ("keyCompromise" != 0) { } array[1] = "keyCompromise"; if ("cACompromise" != 0) { } array[2] = "cACompromise"; if ("affiliationChanged" != 0) { } array[3] = "affiliationChanged"; if ("superseded" != 0) { } array[4] = "superseded"; if ("cessationOfOperation" != 0) { } array[5] = "cessationOfOperation"; if ("certificateHold" != 0) { } array[6] = "certificateHold"; if ("unknown" != 0) { } array[7] = "unknown"; if ("removeFromCRL" != 0) { } array[8] = "removeFromCRL"; if ("privilegeWithdrawn" != 0) { } array[9] = "privilegeWithdrawn"; if ("aACompromise" != 0) { } array[10] = "aACompromise"; Rfc3280CertPathUtilities.CrlReasons = array; } // Token: 0x04006913 RID: 26899 [Token(Token = "0x4006913")] private static readonly PkixCrlUtilities CrlUtilities = new PkixCrlUtilities(); // Token: 0x04006914 RID: 26900 [Token(Token = "0x4006914")] internal static readonly string ANY_POLICY = "2.5.29.32.0"; // Token: 0x04006915 RID: 26901 [Token(Token = "0x4006915")] internal static readonly int KEY_CERT_SIGN; // Token: 0x04006916 RID: 26902 [Token(Token = "0x4006916")] internal static readonly int CRL_SIGN; // Token: 0x04006917 RID: 26903 [Token(Token = "0x4006917")] internal static readonly string[] CrlReasons; } }