using System; using System.IO; using System.Runtime.InteropServices; using BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.X509; using Cpp2IlInjected; namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.IsisMtt.Ocsp { // Token: 0x020018EC RID: 6380 [Token(Token = "0x20018EC")] [StructLayout(3)] public class CertHash : Asn1Encodable { // Token: 0x0600AB4E RID: 43854 RVA: 0x0028068C File Offset: 0x0027E88C [Token(Token = "0x600AB4E")] [Address(RVA = "0x1DE34A0", Offset = "0x1DE1EA0", VA = "0x181DE34A0")] public static CertHash GetInstance(object obj) { /* An exception occurred when decompiling this method (0600AB4E) ICSharpCode.Decompiler.DecompilerException: Error decompiling BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.IsisMtt.Ocsp.CertHash BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.IsisMtt.Ocsp.CertHash::GetInstance(System.Object) ---> System.Exception: Basic block has to end with unconditional control flow. { IL_3F: stloc:string(var_9_45, call:string(Platform::GetTypeName, ldloc:object(obj))) stloc:ArgumentException(var_10_5D, newobj:ArgumentException(ArgumentException::.ctor, call:string(string::Concat, ldstr:string("unknown object in factory: "), ldloc:string(var_9_45)), 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: 0x0600AB4F RID: 43855 RVA: 0x002806F8 File Offset: 0x0027E8F8 [Token(Token = "0x600AB4F")] [Address(RVA = "0x1DE39E0", Offset = "0x1DE23E0", VA = "0x181DE39E0")] private CertHash(Asn1Sequence seq) { Asn1SequenceParser parser = seq.Parser; AlgorithmIdentifier algorithmIdentifier; this.hashAlgorithm = algorithmIdentifier; Asn1SequenceParser parser2 = seq.Parser; Asn1OctetString asn1OctetString; Stream octetStream = asn1OctetString.GetOctetStream(); this.certificateHash = octetStream; } // Token: 0x0600AB50 RID: 43856 RVA: 0x00280738 File Offset: 0x0027E938 [Token(Token = "0x600AB50")] [Address(RVA = "0x1DE38E0", Offset = "0x1DE22E0", VA = "0x181DE38E0")] public CertHash(AlgorithmIdentifier hashAlgorithm, byte[] certificateHash) { /* An exception occurred when decompiling this method (0600AB50) ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.IsisMtt.Ocsp.CertHash::.ctor(BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.X509.AlgorithmIdentifier,System.Byte[]) ---> System.Exception: Basic block has to end with unconditional control flow. { IL_21: stloc:ArgumentNullException(var_1_2B, newobj:ArgumentNullException(ArgumentNullException::.ctor, ldstr:string("certificateHash"))) } 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: 0x17001B22 RID: 6946 // (get) Token: 0x0600AB51 RID: 43857 RVA: 0x00280770 File Offset: 0x0027E970 [Token(Token = "0x17001B22")] public AlgorithmIdentifier HashAlgorithm { [Token(Token = "0x600AB51")] [Address(RVA = "0x3C39A0", Offset = "0x3C23A0", VA = "0x1803C39A0")] get { return this.hashAlgorithm; } } // Token: 0x17001B23 RID: 6947 // (get) Token: 0x0600AB52 RID: 43858 RVA: 0x00280784 File Offset: 0x0027E984 [Token(Token = "0x17001B23")] public byte[] CertificateHash { [Token(Token = "0x600AB52")] [Address(RVA = "0x1DE3B20", Offset = "0x1DE2520", VA = "0x181DE3B20")] get { byte[] array = this.certificateHash; throw new NullReferenceException(); } } // Token: 0x0600AB53 RID: 43859 RVA: 0x002807A0 File Offset: 0x0027E9A0 [Token(Token = "0x600AB53")] [Address(RVA = "0x1DE37A0", Offset = "0x1DE21A0", VA = "0x181DE37A0", Slot = "5")] public override Asn1Object ToAsn1Object() { Asn1Encodable[] array = new Asn1Encodable[2]; AlgorithmIdentifier algorithmIdentifier = this.hashAlgorithm; if (algorithmIdentifier != 0) { } array[0] = algorithmIdentifier; DerOctetString derOctetString = new DerOctetString(this.certificateHash); if (derOctetString != 0) { } array[1] = derOctetString; DerSequence derSequence = new DerSequence(array); throw new NullReferenceException(); } // Token: 0x04007098 RID: 28824 [global::Cpp2IlInjected.FieldOffset(Offset = "0x10")] [Token(Token = "0x4007098")] private readonly AlgorithmIdentifier hashAlgorithm; // Token: 0x04007099 RID: 28825 [global::Cpp2IlInjected.FieldOffset(Offset = "0x18")] [Token(Token = "0x4007099")] private readonly byte[] certificateHash; } }