using System; using System.Collections; using System.IO; using BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Digests; using BestHTTP.SecureProtocol.Org.BouncyCastle.Math; using Cpp2IlInjected; namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.X509 { // Token: 0x02001DF5 RID: 7669 [Token(Token = "0x2001DF5")] public class AuthorityKeyIdentifier : Asn1Encodable { // Token: 0x0600C1FF RID: 49663 RVA: 0x002C23BC File Offset: 0x002C05BC [Token(Token = "0x600C1FF")] [Address(RVA = "0x2720AB0", Offset = "0x271F8B0", VA = "0x182720AB0")] public static AuthorityKeyIdentifier GetInstance(Asn1TaggedObject obj, bool explicitly) { return AuthorityKeyIdentifier.GetInstance(Asn1Sequence.GetInstance(obj, explicitly)); } // Token: 0x0600C200 RID: 49664 RVA: 0x002C23D8 File Offset: 0x002C05D8 [Token(Token = "0x600C200")] [Address(RVA = "0x2720820", Offset = "0x271F620", VA = "0x182720820")] public static AuthorityKeyIdentifier GetInstance(object obj) { /* An exception occurred when decompiling this method (0600C200) ICSharpCode.Decompiler.DecompilerException: Error decompiling BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.X509.AuthorityKeyIdentifier BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.X509.AuthorityKeyIdentifier::GetInstance(System.Object) ---> System.Exception: Basic block has to end with unconditional control flow. { IL_3C: stloc:string(var_9_42, call:string(Platform::GetTypeName, ldloc:object(obj))) stloc:ArgumentException(var_10_5A, newobj:ArgumentException(ArgumentException::.ctor, call:string(string::Concat, ldstr:string("unknown object in factory: "), ldloc:string(var_9_42)), ldstr:string("obj"))) } 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: 0x0600C201 RID: 49665 RVA: 0x002C2440 File Offset: 0x002C0640 [Token(Token = "0x600C201")] [Address(RVA = "0x2721240", Offset = "0x2720040", VA = "0x182721240")] protected internal AuthorityKeyIdentifier(Asn1Sequence seq) { int num; do { num = 0; base..ctor(); IEnumerator enumerator = seq.GetEnumerator(); Asn1OctetString asn1OctetString; if (enumerator != 0) { if (enumerator == 0) { goto IL_5F; } uint num2; if (num2 != (uint)0) { if (num2 != (uint)0) { if (num2 != (uint)1) { goto IL_53; } DerInteger derInteger; this.certserno = derInteger; } Asn1Sequence asn1Sequence; GeneralNames instance = GeneralNames.GetInstance(asn1Sequence); this.certissuer = instance; } this.keyidentifier = asn1OctetString; } if (asn1OctetString != 0) { } } while (num != 0); return; IL_53: ArgumentException ex = new ArgumentException("illegal tag"); IL_5F: throw new NullReferenceException(); } // Token: 0x0600C202 RID: 49666 RVA: 0x002C24B8 File Offset: 0x002C06B8 [Token(Token = "0x600C202")] [Address(RVA = "0x2721110", Offset = "0x271FF10", VA = "0x182721110")] public AuthorityKeyIdentifier(SubjectPublicKeyInfo spki) { byte[] array = new byte[new Sha1Digest()]; int length = spki.keyData.GetOctets().Length; DerOctetString derOctetString = new DerOctetString(array); this.keyidentifier = derOctetString; } // Token: 0x0600C203 RID: 49667 RVA: 0x002C2500 File Offset: 0x002C0700 [Token(Token = "0x600C203")] [Address(RVA = "0x2720F00", Offset = "0x271FD00", VA = "0x182720F00")] public AuthorityKeyIdentifier(SubjectPublicKeyInfo spki, GeneralNames name, BigInteger serialNumber) { byte[] array = new byte[new Sha1Digest()]; int length = spki.keyData.GetOctets().Length; DerOctetString derOctetString = new DerOctetString(array); this.keyidentifier = derOctetString; this.certissuer = name; DerInteger derInteger = new DerInteger(serialNumber); this.certserno = derInteger; } // Token: 0x0600C204 RID: 49668 RVA: 0x002C255C File Offset: 0x002C075C [Token(Token = "0x600C204")] [Address(RVA = "0x2721060", Offset = "0x271FE60", VA = "0x182721060")] public AuthorityKeyIdentifier(GeneralNames name, BigInteger serialNumber) { this.keyidentifier = (ulong)0L; GeneralNames instance = GeneralNames.GetInstance(name.ToAsn1Object()); this.certissuer = instance; DerInteger derInteger = new DerInteger(serialNumber); this.certserno = derInteger; } // Token: 0x0600C205 RID: 49669 RVA: 0x002C25A0 File Offset: 0x002C07A0 [Token(Token = "0x600C205")] [Address(RVA = "0x2721450", Offset = "0x2720250", VA = "0x182721450")] public AuthorityKeyIdentifier(byte[] keyIdentifier) { DerOctetString derOctetString = new DerOctetString(keyIdentifier); int num = 0; this.keyidentifier = derOctetString; this.certissuer = num; this.certserno = num; } // Token: 0x0600C206 RID: 49670 RVA: 0x002C25D4 File Offset: 0x002C07D4 [Token(Token = "0x600C206")] [Address(RVA = "0x2720E20", Offset = "0x271FC20", VA = "0x182720E20")] public AuthorityKeyIdentifier(byte[] keyIdentifier, GeneralNames name, BigInteger serialNumber) { DerOctetString derOctetString = new DerOctetString(keyIdentifier); this.keyidentifier = derOctetString; GeneralNames instance = GeneralNames.GetInstance(name.ToAsn1Object()); this.certissuer = instance; DerInteger derInteger = new DerInteger(serialNumber); this.certserno = derInteger; } // Token: 0x0600C207 RID: 49671 RVA: 0x002C261C File Offset: 0x002C081C [Token(Token = "0x600C207")] [Address(RVA = "0x2720AD0", Offset = "0x271F8D0", VA = "0x182720AD0")] public byte[] GetKeyIdentifier() { /* An exception occurred when decompiling this method (0600C207) ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Byte[] BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.X509.AuthorityKeyIdentifier::GetKeyIdentifier() ---> System.Exception: Basic block has to end with unconditional control flow. { IL_0D: stloc:Stream(var_2_13, call:Stream(Asn1OctetStringParser::GetOctetStream, ldloc:Asn1OctetString[exp:Asn1OctetStringParser](var_0_06))) } 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: 0x17001DF3 RID: 7667 // (get) Token: 0x0600C208 RID: 49672 RVA: 0x002C263C File Offset: 0x002C083C [Token(Token = "0x17001DF3")] public GeneralNames AuthorityCertIssuer { [Token(Token = "0x600C208")] [Address(RVA = "0x3F5F40", Offset = "0x3F4D40", VA = "0x1803F5F40")] get { return this.certissuer; } } // Token: 0x17001DF4 RID: 7668 // (get) Token: 0x0600C209 RID: 49673 RVA: 0x002C2650 File Offset: 0x002C0850 [Token(Token = "0x17001DF4")] public BigInteger AuthorityCertSerialNumber { [Token(Token = "0x600C209")] [Address(RVA = "0x27214D0", Offset = "0x27202D0", VA = "0x1827214D0")] get { DerInteger derInteger = this.certserno; if (derInteger == 0) { } return derInteger.Value; } } // Token: 0x0600C20A RID: 49674 RVA: 0x002C2670 File Offset: 0x002C0870 [Token(Token = "0x600C20A")] [Address(RVA = "0x2720AF0", Offset = "0x271F8F0", VA = "0x182720AF0", Slot = "5")] public override Asn1Object ToAsn1Object() { Asn1EncodableVector asn1EncodableVector; if (this.keyidentifier != (ulong)0L) { Asn1Encodable[] array = new Asn1Encodable[1]; Asn1OctetString asn1OctetString = this.keyidentifier; int num; int num2; DerTaggedObject derTaggedObject = new DerTaggedObject(num != 0, num2, asn1OctetString); num2 = 0; num = 0; if (derTaggedObject != 0) { } array[0] = derTaggedObject; asn1EncodableVector.Add(array); } if (this.certissuer != (ulong)0L) { Asn1Encodable[] array2 = new Asn1Encodable[1]; GeneralNames generalNames = this.certissuer; int num3; DerTaggedObject derTaggedObject2 = new DerTaggedObject(num3 != 0, 1, generalNames); num3 = 0; if (derTaggedObject2 != 0) { } array2[0] = derTaggedObject2; asn1EncodableVector.Add(array2); } if (this.certserno != (ulong)0L) { Asn1Encodable[] array3 = new Asn1Encodable[1]; DerInteger derInteger = this.certserno; int num4; DerTaggedObject derTaggedObject3 = new DerTaggedObject(num4 != 0, 2, derInteger); num4 = 0; if (derTaggedObject3 != 0) { } array3[0] = derTaggedObject3; asn1EncodableVector.Add(array3); } DerSequence derSequence = new DerSequence(asn1EncodableVector); throw new NullReferenceException(); } // Token: 0x0600C20B RID: 49675 RVA: 0x002C274C File Offset: 0x002C094C [Token(Token = "0x600C20B")] [Address(RVA = "0x2720DB0", Offset = "0x271FBB0", VA = "0x182720DB0", Slot = "3")] public override string ToString() { Stream octetStream = this.keyidentifier.GetOctetStream(); return "AuthorityKeyIdentifier: KeyID(" + octetStream + ")"; } // Token: 0x04007A6B RID: 31339 [FieldOffset(Offset = "0x10")] [Token(Token = "0x4007A6B")] internal readonly Asn1OctetString keyidentifier; // Token: 0x04007A6C RID: 31340 [FieldOffset(Offset = "0x18")] [Token(Token = "0x4007A6C")] internal readonly GeneralNames certissuer; // Token: 0x04007A6D RID: 31341 [FieldOffset(Offset = "0x20")] [Token(Token = "0x4007A6D")] internal readonly DerInteger certserno; } }