using System; using System.Runtime.InteropServices; using BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.X509; using Cpp2IlInjected; namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.Cms { // Token: 0x02001952 RID: 6482 [Token(Token = "0x2001952")] [StructLayout(3)] public class KeyAgreeRecipientInfo : Asn1Encodable { // Token: 0x0600ADF0 RID: 44528 RVA: 0x0028B338 File Offset: 0x00289538 [Token(Token = "0x600ADF0")] [Address(RVA = "0x28F1340", Offset = "0x28EFD40", VA = "0x1828F1340")] public KeyAgreeRecipientInfo(OriginatorIdentifierOrKey originator, Asn1OctetString ukm, AlgorithmIdentifier keyEncryptionAlgorithm, Asn1Sequence recipientEncryptedKeys) { DerInteger derInteger = new DerInteger(3); this.version = derInteger; this.ukm = ukm; this.keyEncryptionAlgorithm = keyEncryptionAlgorithm; this.recipientEncryptedKeys = 0; this.originator = originator; } // Token: 0x0600ADF1 RID: 44529 RVA: 0x0028B378 File Offset: 0x00289578 [Token(Token = "0x600ADF1")] [Address(RVA = "0x28F13E0", Offset = "0x28EFDE0", VA = "0x1828F13E0")] public KeyAgreeRecipientInfo(Asn1Sequence seq) { Asn1SequenceParser parser6; for (;;) { base..ctor(); Asn1SequenceParser parser = seq.Parser; if (parser == 0) { } if (parser != 0) { this.version = parser; Asn1SequenceParser parser2 = seq.Parser; if (parser2 == 0) { } if (parser2 != 0) { Asn1Object asn1Object; OriginatorIdentifierOrKey instance = OriginatorIdentifierOrKey.GetInstance(asn1Object); this.originator = instance; Asn1SequenceParser parser3 = seq.Parser; if (parser3 != 0 && parser3 != 0) { Asn1SequenceParser parser4 = seq.Parser; if (parser4 == 0) { } if (parser4 == 0) { continue; } Asn1OctetString asn1OctetString; this.ukm = asn1OctetString; } Asn1SequenceParser parser5 = seq.Parser; AlgorithmIdentifier algorithmIdentifier; this.keyEncryptionAlgorithm = algorithmIdentifier; parser6 = seq.Parser; if (parser6 == 0 || parser6 != 0) { break; } } } } this.recipientEncryptedKeys = parser6; } // Token: 0x0600ADF2 RID: 44530 RVA: 0x0028B430 File Offset: 0x00289630 [Token(Token = "0x600ADF2")] [Address(RVA = "0x28F0E30", Offset = "0x28EF830", VA = "0x1828F0E30")] public static KeyAgreeRecipientInfo GetInstance(Asn1TaggedObject obj, bool explicitly) { return KeyAgreeRecipientInfo.GetInstance(Asn1Sequence.GetInstance(obj, explicitly)); } // Token: 0x0600ADF3 RID: 44531 RVA: 0x0028B44C File Offset: 0x0028964C [Token(Token = "0x600ADF3")] [Address(RVA = "0x28F0E50", Offset = "0x28EF850", VA = "0x1828F0E50")] public static KeyAgreeRecipientInfo GetInstance(object obj) { /* An exception occurred when decompiling this method (0600ADF3) ICSharpCode.Decompiler.DecompilerException: Error decompiling BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.Cms.KeyAgreeRecipientInfo BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.Cms.KeyAgreeRecipientInfo::GetInstance(System.Object) ---> System.Exception: Basic block has to end with unconditional control flow. { IL_26: stloc:string(var_6_2C, call:string(Platform::GetTypeName, ldloc:object(obj))) stloc:ArgumentException(var_7_3F, newobj:ArgumentException(ArgumentException::.ctor, call:string(string::Concat, ldstr:string("Illegal object in KeyAgreeRecipientInfo: "), ldloc:string(var_6_2C)))) } 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: 0x17001BCE RID: 7118 // (get) Token: 0x0600ADF4 RID: 44532 RVA: 0x0028B49C File Offset: 0x0028969C [Token(Token = "0x17001BCE")] public DerInteger Version { [Token(Token = "0x600ADF4")] [Address(RVA = "0x3C39A0", Offset = "0x3C23A0", VA = "0x1803C39A0")] get { return this.version; } } // Token: 0x17001BCF RID: 7119 // (get) Token: 0x0600ADF5 RID: 44533 RVA: 0x0028B4B0 File Offset: 0x002896B0 [Token(Token = "0x17001BCF")] public OriginatorIdentifierOrKey Originator { [Token(Token = "0x600ADF5")] [Address(RVA = "0x3C1240", Offset = "0x3BFC40", VA = "0x1803C1240")] get { return this.originator; } } // Token: 0x17001BD0 RID: 7120 // (get) Token: 0x0600ADF6 RID: 44534 RVA: 0x0028B4C4 File Offset: 0x002896C4 [Token(Token = "0x17001BD0")] public Asn1OctetString UserKeyingMaterial { [Token(Token = "0x600ADF6")] [Address(RVA = "0x3C1220", Offset = "0x3BFC20", VA = "0x1803C1220")] get { return this.ukm; } } // Token: 0x17001BD1 RID: 7121 // (get) Token: 0x0600ADF7 RID: 44535 RVA: 0x0028B4D8 File Offset: 0x002896D8 [Token(Token = "0x17001BD1")] public AlgorithmIdentifier KeyEncryptionAlgorithm { [Token(Token = "0x600ADF7")] [Address(RVA = "0x3C1230", Offset = "0x3BFC30", VA = "0x1803C1230")] get { return this.keyEncryptionAlgorithm; } } // Token: 0x17001BD2 RID: 7122 // (get) Token: 0x0600ADF8 RID: 44536 RVA: 0x0028B4EC File Offset: 0x002896EC [Token(Token = "0x17001BD2")] public Asn1Sequence RecipientEncryptedKeys { [Token(Token = "0x600ADF8")] [Address(RVA = "0x3C1250", Offset = "0x3BFC50", VA = "0x1803C1250")] get { return this.recipientEncryptedKeys; } } // Token: 0x0600ADF9 RID: 44537 RVA: 0x0028B500 File Offset: 0x00289700 [Token(Token = "0x600ADF9")] [Address(RVA = "0x28F1040", Offset = "0x28EFA40", VA = "0x1828F1040", Slot = "5")] public override Asn1Object ToAsn1Object() { Asn1Encodable[] array = new Asn1Encodable[2]; DerInteger derInteger = this.version; if (derInteger != 0) { } array[0] = derInteger; OriginatorIdentifierOrKey originatorIdentifierOrKey = this.originator; int num; DerTaggedObject derTaggedObject = new DerTaggedObject(true, num, originatorIdentifierOrKey); num = 0; if (derTaggedObject != 0) { } array[1] = derTaggedObject; Asn1EncodableVector asn1EncodableVector = new Asn1EncodableVector(array); if (this.ukm != (ulong)0L) { Asn1Encodable[] array2 = new Asn1Encodable[1]; Asn1OctetString asn1OctetString = this.ukm; DerTaggedObject derTaggedObject2 = new DerTaggedObject(16777216 != 0, 16777216, asn1OctetString); if (derTaggedObject2 != 0) { } array2[0] = derTaggedObject2; asn1EncodableVector.Add(array2); } Asn1Encodable[] array3 = new Asn1Encodable[2]; AlgorithmIdentifier algorithmIdentifier = this.keyEncryptionAlgorithm; if (algorithmIdentifier != 0) { } array3[0] = algorithmIdentifier; Asn1Sequence asn1Sequence = this.recipientEncryptedKeys; if (asn1Sequence != 0) { } array3[1] = asn1Sequence; asn1EncodableVector.Add(array3); DerSequence derSequence = new DerSequence(asn1EncodableVector); throw new NullReferenceException(); } // Token: 0x04007261 RID: 29281 [global::Cpp2IlInjected.FieldOffset(Offset = "0x10")] [Token(Token = "0x4007261")] private DerInteger version; // Token: 0x04007262 RID: 29282 [global::Cpp2IlInjected.FieldOffset(Offset = "0x18")] [Token(Token = "0x4007262")] private OriginatorIdentifierOrKey originator; // Token: 0x04007263 RID: 29283 [global::Cpp2IlInjected.FieldOffset(Offset = "0x20")] [Token(Token = "0x4007263")] private Asn1OctetString ukm; // Token: 0x04007264 RID: 29284 [global::Cpp2IlInjected.FieldOffset(Offset = "0x28")] [Token(Token = "0x4007264")] private AlgorithmIdentifier keyEncryptionAlgorithm; // Token: 0x04007265 RID: 29285 [global::Cpp2IlInjected.FieldOffset(Offset = "0x30")] [Token(Token = "0x4007265")] private Asn1Sequence recipientEncryptedKeys; } }