using System; using System.Collections; using System.Runtime.InteropServices; using BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities; using Cpp2IlInjected; namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.X509 { // Token: 0x02001853 RID: 6227 [Token(Token = "0x2001853")] [StructLayout(3)] public class X509ExtensionsGenerator { // Token: 0x0600A7FE RID: 43006 RVA: 0x00271A20 File Offset: 0x0026FC20 [Token(Token = "0x600A7FE")] [Address(RVA = "0x277B920", Offset = "0x277A320", VA = "0x18277B920")] public void Reset() { IDictionary dictionary = Platform.CreateHashtable(); this.extensions = dictionary; IList list = Platform.CreateArrayList(); this.extOrdering = list; } // Token: 0x0600A7FF RID: 43007 RVA: 0x00271A4C File Offset: 0x0026FC4C [Token(Token = "0x600A7FF")] [Address(RVA = "0x277B560", Offset = "0x2779F60", VA = "0x18277B560")] public void AddExtension(DerObjectIdentifier oid, bool critical, Asn1Encodable extValue) { /* An exception occurred when decompiling this method (0600A7FF) ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.X509.X509ExtensionsGenerator::AddExtension(BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.DerObjectIdentifier,System.Boolean,BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.Asn1Encodable) ---> System.Exception: Basic block has to end with unconditional control flow. { IL_55: stloc:ArgumentException(var_10_6A, newobj:ArgumentException(ArgumentException::.ctor, call:string(string::Concat, ldstr:string[exp:object]("extension "), ldloc:DerObjectIdentifier[exp:object](oid), ldstr:string[exp:object](" already added")))) } 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 1663 */; } // Token: 0x0600A800 RID: 43008 RVA: 0x00271AC4 File Offset: 0x0026FCC4 [Token(Token = "0x600A800")] [Address(RVA = "0x277B750", Offset = "0x277A150", VA = "0x18277B750")] public void AddExtension(DerObjectIdentifier oid, bool critical, byte[] extValue) { IDictionary dictionary = this.extensions; IList list = this.extOrdering; IDictionary dictionary2 = this.extensions; DerOctetString derOctetString = new DerOctetString(extValue); int num = 0; int num2 = 0; X509Extension x509Extension; x509Extension.FieldGetter(num2, num, oid); x509Extension.critical = critical; x509Extension.value = derOctetString; throw new NullReferenceException(); } // Token: 0x17001A5C RID: 6748 // (get) Token: 0x0600A801 RID: 43009 RVA: 0x00271B2C File Offset: 0x0026FD2C [Token(Token = "0x17001A5C")] public bool IsEmpty { [Token(Token = "0x600A801")] [Address(RVA = "0x277B9F0", Offset = "0x277A3F0", VA = "0x18277B9F0")] get { IList list = this.extOrdering; bool flag; return flag; } } // Token: 0x0600A802 RID: 43010 RVA: 0x00271B48 File Offset: 0x0026FD48 [Token(Token = "0x600A802")] [Address(RVA = "0x277B8B0", Offset = "0x277A2B0", VA = "0x18277B8B0")] public X509Extensions Generate() { IList list = this.extOrdering; IDictionary dictionary = this.extensions; return new X509Extensions(list, dictionary); } // Token: 0x0600A803 RID: 43011 RVA: 0x00271B6C File Offset: 0x0026FD6C [Token(Token = "0x600A803")] [Address(RVA = "0x277B980", Offset = "0x277A380", VA = "0x18277B980")] public X509ExtensionsGenerator() { IDictionary dictionary = Platform.CreateHashtable(); this.extensions = dictionary; IList list = Platform.CreateArrayList(); this.extOrdering = list; base..ctor(); } // Token: 0x04006D27 RID: 27943 [global::Cpp2IlInjected.FieldOffset(Offset = "0x10")] [Token(Token = "0x4006D27")] private IDictionary extensions; // Token: 0x04006D28 RID: 27944 [global::Cpp2IlInjected.FieldOffset(Offset = "0x18")] [Token(Token = "0x4006D28")] private IList extOrdering; } }