using System; using System.Collections; using System.Runtime.InteropServices; using BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.X509; using BestHTTP.SecureProtocol.Org.BouncyCastle.Math; using Cpp2IlInjected; namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.Crmf { // Token: 0x0200192A RID: 6442 [Token(Token = "0x200192A")] [StructLayout(3)] public class CertTemplate : Asn1Encodable { // Token: 0x0600ACCA RID: 44234 RVA: 0x002870C8 File Offset: 0x002852C8 [Token(Token = "0x600ACCA")] [Address(RVA = "0x1ECC720", Offset = "0x1ECB120", VA = "0x181ECC720")] private CertTemplate(Asn1Sequence seq) { int num; do { num = 0; base..ctor(); this.seq = seq; IEnumerator enumerator = seq.GetEnumerator(); X509Extensions x509Extensions; if (enumerator != 0) { int num2 = 0; if (enumerator == 0) { goto IL_B8; } if (num2 > 9) { goto IL_92; } DerInteger derInteger; this.version = derInteger; DerInteger derInteger2; this.serialNumber = derInteger2; AlgorithmIdentifier algorithmIdentifier; this.signingAlg = algorithmIdentifier; X509Name x509Name; this.issuer = x509Name; Asn1Sequence asn1Sequence; OptionalValidity instance = OptionalValidity.GetInstance(asn1Sequence); this.validity = instance; X509Name x509Name2; this.subject = x509Name2; SubjectPublicKeyInfo subjectPublicKeyInfo; this.publicKey = subjectPublicKeyInfo; DerBitString derBitString; this.issuerUID = derBitString; DerBitString derBitString2; this.subjectUID = derBitString2; this.extensions = x509Extensions; } if (x509Extensions != 0) { } if (num != -1) { } } while (num != 0); return; IL_92: throw new NullReferenceException(); IL_B8: throw new NullReferenceException(); } // Token: 0x0600ACCB RID: 44235 RVA: 0x00287198 File Offset: 0x00285398 [Token(Token = "0x600ACCB")] [Address(RVA = "0x1ECC620", Offset = "0x1ECB020", VA = "0x181ECC620")] public static CertTemplate GetInstance(object obj) { while (obj != 0) { Asn1Sequence instance; if (obj == 0) { instance = Asn1Sequence.GetInstance(obj); return new CertTemplate(instance); } if (instance != 0) { return; } } } // Token: 0x17001B6E RID: 7022 // (get) Token: 0x0600ACCC RID: 44236 RVA: 0x002871CC File Offset: 0x002853CC [Token(Token = "0x17001B6E")] public virtual int Version { [Token(Token = "0x600ACCC")] [Address(RVA = "0x1ECCB00", Offset = "0x1ECB500", VA = "0x181ECCB00", Slot = "6")] get { return new BigInteger(this.version.bytes).IntValue; } } // Token: 0x17001B6F RID: 7023 // (get) Token: 0x0600ACCD RID: 44237 RVA: 0x002871F4 File Offset: 0x002853F4 [Token(Token = "0x17001B6F")] public virtual DerInteger SerialNumber { [Token(Token = "0x600ACCD")] [Address(RVA = "0x3C1220", Offset = "0x3BFC20", VA = "0x1803C1220", Slot = "7")] get { return this.serialNumber; } } // Token: 0x17001B70 RID: 7024 // (get) Token: 0x0600ACCE RID: 44238 RVA: 0x00287208 File Offset: 0x00285408 [Token(Token = "0x17001B70")] public virtual AlgorithmIdentifier SigningAlg { [Token(Token = "0x600ACCE")] [Address(RVA = "0x3C1230", Offset = "0x3BFC30", VA = "0x1803C1230", Slot = "8")] get { return this.signingAlg; } } // Token: 0x17001B71 RID: 7025 // (get) Token: 0x0600ACCF RID: 44239 RVA: 0x0028721C File Offset: 0x0028541C [Token(Token = "0x17001B71")] public virtual X509Name Issuer { [Token(Token = "0x600ACCF")] [Address(RVA = "0x3C1250", Offset = "0x3BFC50", VA = "0x1803C1250", Slot = "9")] get { return this.issuer; } } // Token: 0x17001B72 RID: 7026 // (get) Token: 0x0600ACD0 RID: 44240 RVA: 0x00287230 File Offset: 0x00285430 [Token(Token = "0x17001B72")] public virtual OptionalValidity Validity { [Token(Token = "0x600ACD0")] [Address(RVA = "0x3EE8E0", Offset = "0x3ED2E0", VA = "0x1803EE8E0", Slot = "10")] get { return this.validity; } } // Token: 0x17001B73 RID: 7027 // (get) Token: 0x0600ACD1 RID: 44241 RVA: 0x00287244 File Offset: 0x00285444 [Token(Token = "0x17001B73")] public virtual X509Name Subject { [Token(Token = "0x600ACD1")] [Address(RVA = "0x3D32F0", Offset = "0x3D1CF0", VA = "0x1803D32F0", Slot = "11")] get { return this.subject; } } // Token: 0x17001B74 RID: 7028 // (get) Token: 0x0600ACD2 RID: 44242 RVA: 0x00287258 File Offset: 0x00285458 [Token(Token = "0x17001B74")] public virtual SubjectPublicKeyInfo PublicKey { [Token(Token = "0x600ACD2")] [Address(RVA = "0x3EDEA0", Offset = "0x3EC8A0", VA = "0x1803EDEA0", Slot = "12")] get { return this.publicKey; } } // Token: 0x17001B75 RID: 7029 // (get) Token: 0x0600ACD3 RID: 44243 RVA: 0x0028726C File Offset: 0x0028546C [Token(Token = "0x17001B75")] public virtual DerBitString IssuerUID { [Token(Token = "0x600ACD3")] [Address(RVA = "0x462740", Offset = "0x461140", VA = "0x180462740", Slot = "13")] get { return this.issuerUID; } } // Token: 0x17001B76 RID: 7030 // (get) Token: 0x0600ACD4 RID: 44244 RVA: 0x00287280 File Offset: 0x00285480 [Token(Token = "0x17001B76")] public virtual DerBitString SubjectUID { [Token(Token = "0x600ACD4")] [Address(RVA = "0x4B81A0", Offset = "0x4B6BA0", VA = "0x1804B81A0", Slot = "14")] get { return this.subjectUID; } } // Token: 0x17001B77 RID: 7031 // (get) Token: 0x0600ACD5 RID: 44245 RVA: 0x00287294 File Offset: 0x00285494 [Token(Token = "0x17001B77")] public virtual X509Extensions Extensions { [Token(Token = "0x600ACD5")] [Address(RVA = "0x3EDE90", Offset = "0x3EC890", VA = "0x1803EDE90", Slot = "15")] get { return this.extensions; } } // Token: 0x0600ACD6 RID: 44246 RVA: 0x002872A8 File Offset: 0x002854A8 [Token(Token = "0x600ACD6")] [Address(RVA = "0x3C39A0", Offset = "0x3C23A0", VA = "0x1803C39A0", Slot = "5")] public override Asn1Object ToAsn1Object() { /* An exception occurred when decompiling this method (0600ACD6) ICSharpCode.Decompiler.DecompilerException: Error decompiling BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.Asn1Object BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.Crmf.CertTemplate::ToAsn1Object() ---> System.Exception: Basic block has to end with unconditional control flow. { Block_0: stloc:Asn1Sequence(var_0_06, ldfld:Asn1Sequence(CertTemplate::seq, ldloc:CertTemplate(this))) } 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: 0x040071C2 RID: 29122 [global::Cpp2IlInjected.FieldOffset(Offset = "0x10")] [Token(Token = "0x40071C2")] private readonly Asn1Sequence seq; // Token: 0x040071C3 RID: 29123 [global::Cpp2IlInjected.FieldOffset(Offset = "0x18")] [Token(Token = "0x40071C3")] private readonly DerInteger version; // Token: 0x040071C4 RID: 29124 [global::Cpp2IlInjected.FieldOffset(Offset = "0x20")] [Token(Token = "0x40071C4")] private readonly DerInteger serialNumber; // Token: 0x040071C5 RID: 29125 [global::Cpp2IlInjected.FieldOffset(Offset = "0x28")] [Token(Token = "0x40071C5")] private readonly AlgorithmIdentifier signingAlg; // Token: 0x040071C6 RID: 29126 [global::Cpp2IlInjected.FieldOffset(Offset = "0x30")] [Token(Token = "0x40071C6")] private readonly X509Name issuer; // Token: 0x040071C7 RID: 29127 [global::Cpp2IlInjected.FieldOffset(Offset = "0x38")] [Token(Token = "0x40071C7")] private readonly OptionalValidity validity; // Token: 0x040071C8 RID: 29128 [global::Cpp2IlInjected.FieldOffset(Offset = "0x40")] [Token(Token = "0x40071C8")] private readonly X509Name subject; // Token: 0x040071C9 RID: 29129 [global::Cpp2IlInjected.FieldOffset(Offset = "0x48")] [Token(Token = "0x40071C9")] private readonly SubjectPublicKeyInfo publicKey; // Token: 0x040071CA RID: 29130 [global::Cpp2IlInjected.FieldOffset(Offset = "0x50")] [Token(Token = "0x40071CA")] private readonly DerBitString issuerUID; // Token: 0x040071CB RID: 29131 [global::Cpp2IlInjected.FieldOffset(Offset = "0x58")] [Token(Token = "0x40071CB")] private readonly DerBitString subjectUID; // Token: 0x040071CC RID: 29132 [global::Cpp2IlInjected.FieldOffset(Offset = "0x60")] [Token(Token = "0x40071CC")] private readonly X509Extensions extensions; } }