using System; using System.Runtime.InteropServices; using BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.Oiw; using BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.X509; using Cpp2IlInjected; namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.Ess { // Token: 0x020018FE RID: 6398 [Token(Token = "0x20018FE")] [Obsolete] [StructLayout(3)] public class OtherCertID : Asn1Encodable { // Token: 0x0600ABAF RID: 43951 RVA: 0x002820B4 File Offset: 0x002802B4 [Token(Token = "0x600ABAF")] [Address(RVA = "0x1DF3830", Offset = "0x1DF2230", VA = "0x181DF3830")] public static OtherCertID GetInstance(object o) { /* An exception occurred when decompiling this method (0600ABAF) ICSharpCode.Decompiler.DecompilerException: Error decompiling BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.Ess.OtherCertID BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.Ess.OtherCertID::GetInstance(System.Object) ---> System.Exception: Basic block has to end with unconditional control flow. { IL_26: stloc:string(var_6_2C, call:string(Platform::GetTypeName, ldloc:object(o))) stloc:ArgumentException(var_7_44, newobj:ArgumentException(ArgumentException::.ctor, call:string(string::Concat, ldstr:string("unknown object in 'OtherCertID' factory : "), ldloc:string(var_6_2C), ldstr:string(".")))) } 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 1663 */; } // Token: 0x0600ABB0 RID: 43952 RVA: 0x00282108 File Offset: 0x00280308 [Token(Token = "0x600ABB0")] [Address(RVA = "0x1DF40B0", Offset = "0x1DF2AB0", VA = "0x181DF40B0")] public OtherCertID(Asn1Sequence seq) { Asn1SequenceParser parser = seq.Parser; if (parser != 0 && parser != 0) { Asn1SequenceParser parser2 = seq.Parser; } Asn1SequenceParser parser3 = seq.Parser; DigestInfo digestInfo; this.otherCertHash = digestInfo; Asn1Encodable asn1Encodable; if (asn1Encodable > (ulong)1L) { Asn1SequenceParser parser4 = seq.Parser; Asn1Sequence asn1Sequence; IssuerSerial instance = IssuerSerial.GetInstance(asn1Sequence); this.issuerSerial = instance; } } // Token: 0x0600ABB1 RID: 43953 RVA: 0x00282170 File Offset: 0x00280370 [Token(Token = "0x600ABB1")] [Address(RVA = "0x1DF4030", Offset = "0x1DF2A30", VA = "0x181DF4030")] public OtherCertID(AlgorithmIdentifier algId, byte[] digest) { DigestInfo digestInfo = new DigestInfo(algId, digest); this.otherCertHash = digestInfo; } // Token: 0x0600ABB2 RID: 43954 RVA: 0x00282194 File Offset: 0x00280394 [Token(Token = "0x600ABB2")] [Address(RVA = "0x1DF3D40", Offset = "0x1DF2740", VA = "0x181DF3D40")] public OtherCertID(AlgorithmIdentifier algId, byte[] digest, IssuerSerial issuerSerial) { DigestInfo digestInfo = new DigestInfo(algId, digest); this.otherCertHash = digestInfo; this.issuerSerial = issuerSerial; } // Token: 0x17001B32 RID: 6962 // (get) Token: 0x0600ABB3 RID: 43955 RVA: 0x002821C0 File Offset: 0x002803C0 [Token(Token = "0x17001B32")] public AlgorithmIdentifier AlgorithmHash { [Token(Token = "0x600ABB3")] [Address(RVA = "0x1DF4340", Offset = "0x1DF2D40", VA = "0x181DF4340")] get { Asn1Object asn1Object = this.otherCertHash.ToAsn1Object(); if (asn1Object != 0 && asn1Object != 0) { return new AlgorithmIdentifier(OiwObjectIdentifiers.IdSha1); } return DigestInfo.GetInstance(this.otherCertHash).algID; } } // Token: 0x0600ABB4 RID: 43956 RVA: 0x0000220F File Offset: 0x0000040F [Token(Token = "0x600ABB4")] [Address(RVA = "0x1DF34B0", Offset = "0x1DF1EB0", VA = "0x181DF34B0")] public byte[] GetCertHash() { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } // Token: 0x17001B33 RID: 6963 // (get) Token: 0x0600ABB5 RID: 43957 RVA: 0x00282204 File Offset: 0x00280404 [Token(Token = "0x17001B33")] public IssuerSerial IssuerSerial { [Token(Token = "0x600ABB5")] [Address(RVA = "0x3C1240", Offset = "0x3BFC40", VA = "0x1803C1240")] get { return this.issuerSerial; } } // Token: 0x0600ABB6 RID: 43958 RVA: 0x00282218 File Offset: 0x00280418 [Token(Token = "0x600ABB6")] [Address(RVA = "0x1DF3BD0", Offset = "0x1DF25D0", VA = "0x181DF3BD0", Slot = "5")] public override Asn1Object ToAsn1Object() { Asn1Encodable[] array = new Asn1Encodable[1]; Asn1Encodable asn1Encodable = this.otherCertHash; if (asn1Encodable != 0) { } array[0] = asn1Encodable; Asn1EncodableVector asn1EncodableVector = new Asn1EncodableVector(array); if (this.issuerSerial != (ulong)0L) { Asn1Encodable[] array2 = new Asn1Encodable[1]; IssuerSerial issuerSerial = this.issuerSerial; if (issuerSerial != 0) { } array2[0] = issuerSerial; asn1EncodableVector.Add(array2); } DerSequence derSequence = new DerSequence(asn1EncodableVector); throw new NullReferenceException(); } // Token: 0x04007123 RID: 28963 [global::Cpp2IlInjected.FieldOffset(Offset = "0x10")] [Token(Token = "0x4007123")] private Asn1Encodable otherCertHash; // Token: 0x04007124 RID: 28964 [global::Cpp2IlInjected.FieldOffset(Offset = "0x18")] [Token(Token = "0x4007124")] private IssuerSerial issuerSerial; } }