using System; using System.Collections; using BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities; using Cpp2IlInjected; namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.X509 { // Token: 0x02001E30 RID: 7728 [Token(Token = "0x2001E30")] public class X509ExtensionsGenerator { // Token: 0x0600C3D8 RID: 50136 RVA: 0x002C9F40 File Offset: 0x002C8140 [Token(Token = "0x600C3D8")] [Address(RVA = "0x2B47720", Offset = "0x2B46520", VA = "0x182B47720")] public void Reset() { IDictionary dictionary = Platform.CreateHashtable(); this.extensions = dictionary; IList list = Platform.CreateArrayList(); this.extOrdering = list; } // Token: 0x0600C3D9 RID: 50137 RVA: 0x002C9F6C File Offset: 0x002C816C [Token(Token = "0x600C3D9")] [Address(RVA = "0x2B47360", Offset = "0x2B46160", VA = "0x182B47360")] public void AddExtension(DerObjectIdentifier oid, bool critical, Asn1Encodable extValue) { /* An exception occurred when decompiling this method (0600C3D9) 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 1660 */; } // Token: 0x0600C3DA RID: 50138 RVA: 0x002C9FE4 File Offset: 0x002C81E4 [Token(Token = "0x600C3DA")] [Address(RVA = "0x2B47550", Offset = "0x2B46350", VA = "0x182B47550")] 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: 0x17001E5D RID: 7773 // (get) Token: 0x0600C3DB RID: 50139 RVA: 0x002CA04C File Offset: 0x002C824C [Token(Token = "0x17001E5D")] public bool IsEmpty { [Token(Token = "0x600C3DB")] [Address(RVA = "0x2B477F0", Offset = "0x2B465F0", VA = "0x182B477F0")] get { IList list = this.extOrdering; bool flag; return flag; } } // Token: 0x0600C3DC RID: 50140 RVA: 0x002CA068 File Offset: 0x002C8268 [Token(Token = "0x600C3DC")] [Address(RVA = "0x2B476B0", Offset = "0x2B464B0", VA = "0x182B476B0")] public X509Extensions Generate() { IList list = this.extOrdering; IDictionary dictionary = this.extensions; return new X509Extensions(list, dictionary); } // Token: 0x0600C3DD RID: 50141 RVA: 0x002CA08C File Offset: 0x002C828C [Token(Token = "0x600C3DD")] [Address(RVA = "0x2B47780", Offset = "0x2B46580", VA = "0x182B47780")] public X509ExtensionsGenerator() { IDictionary dictionary = Platform.CreateHashtable(); this.extensions = dictionary; IList list = Platform.CreateArrayList(); this.extOrdering = list; base..ctor(); } // Token: 0x04007B6A RID: 31594 [FieldOffset(Offset = "0x10")] [Token(Token = "0x4007B6A")] private IDictionary extensions; // Token: 0x04007B6B RID: 31595 [FieldOffset(Offset = "0x18")] [Token(Token = "0x4007B6B")] private IList extOrdering; } }