Files
Apr2020-Cpp2Il-Dump/Assembly-CSharp/BestHTTP/SecureProtocol/Org/BouncyCastle/Pkix/Rfc3280CertPathUtilities.cs
T
niko 8fc35183db a
2026-04-11 22:19:20 +02:00

1514 lines
67 KiB
C#

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<Asn1Encodable>());
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<Asn1Encodable>());
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;
}
}