using System; using System.Runtime.InteropServices; using BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.Crmf; using BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.X509; using Cpp2IlInjected; namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.Cmp { // Token: 0x0200197B RID: 6523 [Token(Token = "0x200197B")] [StructLayout(3)] public class OobCertHash : Asn1Encodable { // Token: 0x0600AF21 RID: 44833 RVA: 0x0028FD08 File Offset: 0x0028DF08 [Token(Token = "0x600AF21")] [Address(RVA = "0x28F3680", Offset = "0x28F2080", VA = "0x1828F3680")] private OobCertHash(Asn1Sequence seq) { Asn1SequenceParser parser2; do { base..ctor(); Asn1SequenceParser parser = seq.Parser; DerBitString derBitString; this.hashVal = derBitString; parser2 = seq.Parser; } while (parser2 == 0); CertId certId; this.certId = certId; AlgorithmIdentifier algorithmIdentifier; this.hashAlg = algorithmIdentifier; } // Token: 0x0600AF22 RID: 44834 RVA: 0x0028FD54 File Offset: 0x0028DF54 [Token(Token = "0x600AF22")] [Address(RVA = "0x28F3210", Offset = "0x28F1C10", VA = "0x1828F3210")] public static OobCertHash GetInstance(object obj) { /* An exception occurred when decompiling this method (0600AF22) ICSharpCode.Decompiler.DecompilerException: Error decompiling BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.Cmp.OobCertHash BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.Cmp.OobCertHash::GetInstance(System.Object) ---> System.Exception: Basic block has to end with unconditional control flow. { IL_42: stloc:string(var_11_48, call:string(Platform::GetTypeName, ldloc:object(obj))) stloc:ArgumentException(var_12_60, newobj:ArgumentException(ArgumentException::.ctor, call:string(string::Concat, ldstr:string("Invalid object: "), ldloc:string(var_11_48)), 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 1663 */; } // Token: 0x17001C30 RID: 7216 // (get) Token: 0x0600AF23 RID: 44835 RVA: 0x0028FDC4 File Offset: 0x0028DFC4 [Token(Token = "0x17001C30")] public virtual AlgorithmIdentifier HashAlg { [Token(Token = "0x600AF23")] [Address(RVA = "0x3C39A0", Offset = "0x3C23A0", VA = "0x1803C39A0", Slot = "6")] get { return this.hashAlg; } } // Token: 0x17001C31 RID: 7217 // (get) Token: 0x0600AF24 RID: 44836 RVA: 0x0028FDD8 File Offset: 0x0028DFD8 [Token(Token = "0x17001C31")] public virtual CertId CertID { [Token(Token = "0x600AF24")] [Address(RVA = "0x3C1240", Offset = "0x3BFC40", VA = "0x1803C1240", Slot = "7")] get { return this.certId; } } // Token: 0x0600AF25 RID: 44837 RVA: 0x0028FDEC File Offset: 0x0028DFEC [Token(Token = "0x600AF25")] [Address(RVA = "0x28F3540", Offset = "0x28F1F40", VA = "0x1828F3540", Slot = "5")] public override Asn1Object ToAsn1Object() { AlgorithmIdentifier algorithmIdentifier = this.hashAlg; int num = 0; Asn1EncodableVector asn1EncodableVector; this.AddOptional(asn1EncodableVector, num, algorithmIdentifier); CertId certId = this.certId; this.AddOptional(asn1EncodableVector, 1, certId); Asn1Encodable[] array = new Asn1Encodable[0]; DerBitString derBitString = this.hashVal; if (derBitString != 0) { } array[0] = derBitString; asn1EncodableVector.Add(array); DerSequence derSequence = new DerSequence(asn1EncodableVector); throw new NullReferenceException(); } // Token: 0x0600AF26 RID: 44838 RVA: 0x0028FE54 File Offset: 0x0028E054 [Token(Token = "0x600AF26")] [Address(RVA = "0x28F3110", Offset = "0x28F1B10", VA = "0x1828F3110")] private void AddOptional(Asn1EncodableVector v, int tagNo, Asn1Encodable obj) { if (obj != 0) { Asn1Encodable[] array = new Asn1Encodable[1]; DerTaggedObject derTaggedObject = new DerTaggedObject(true, tagNo, obj); if (derTaggedObject != 0) { } array[0] = derTaggedObject; v.Add(array); } } // Token: 0x040072ED RID: 29421 [global::Cpp2IlInjected.FieldOffset(Offset = "0x10")] [Token(Token = "0x40072ED")] private readonly AlgorithmIdentifier hashAlg; // Token: 0x040072EE RID: 29422 [global::Cpp2IlInjected.FieldOffset(Offset = "0x18")] [Token(Token = "0x40072EE")] private readonly CertId certId; // Token: 0x040072EF RID: 29423 [global::Cpp2IlInjected.FieldOffset(Offset = "0x20")] [Token(Token = "0x40072EF")] private readonly DerBitString hashVal; } }