using System; using System.Collections; using System.Runtime.InteropServices; using System.Threading; using Cpp2IlInjected; namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1 { // Token: 0x020017E5 RID: 6117 [Token(Token = "0x20017E5")] [StructLayout(3)] internal class LazyDerSet : DerSet { // Token: 0x0600A51D RID: 42269 RVA: 0x0026629C File Offset: 0x0026449C [Token(Token = "0x600A51D")] [Address(RVA = "0x27CFAB0", Offset = "0x27CE4B0", VA = "0x1827CFAB0")] internal LazyDerSet(byte[] encoded) { this.encoded = encoded; } // Token: 0x0600A51E RID: 42270 RVA: 0x002662B8 File Offset: 0x002644B8 [Token(Token = "0x600A51E")] [Address(RVA = "0x27CF990", Offset = "0x27CE390", VA = "0x1827CF990")] private void Parse() { int num = 0; byte[] array = this.encoded; if (array != 0) { Asn1Object asn1Object = new LazyAsn1InputStream(array).ReadObject(); if (asn1Object != 0) { base.AddObject(asn1Object); } this.encoded = num; } Monitor.Exit(this); if (num != -1) { } if (num == 0) { return; } throw new NullReferenceException(); } // Token: 0x170019B9 RID: 6585 [Token(Token = "0x170019B9")] public override Asn1Encodable this[int index] { [Token(Token = "0x600A51F")] [Address(RVA = "0x27CFB40", Offset = "0x27CE540", VA = "0x1827CFB40", Slot = "11")] get { this.Parse(); return base[index]; } } // Token: 0x0600A520 RID: 42272 RVA: 0x00266320 File Offset: 0x00264520 [Token(Token = "0x600A520")] [Address(RVA = "0x27CF970", Offset = "0x27CE370", VA = "0x1827CF970", Slot = "10")] public override IEnumerator GetEnumerator() { this.Parse(); return base.GetEnumerator(); } // Token: 0x170019BA RID: 6586 // (get) Token: 0x0600A521 RID: 42273 RVA: 0x0026633C File Offset: 0x0026453C [Token(Token = "0x170019BA")] public override int Count { [Token(Token = "0x600A521")] [Address(RVA = "0x27CFB20", Offset = "0x27CE520", VA = "0x1827CFB20", Slot = "12")] get { this.Parse(); return base.Count; } } // Token: 0x0600A522 RID: 42274 RVA: 0x00266358 File Offset: 0x00264558 [Token(Token = "0x600A522")] [Address(RVA = "0x27CF880", Offset = "0x27CE280", VA = "0x1827CF880", Slot = "6")] internal override void Encode(DerOutputStream derOut) { int num; do { num = 0; byte[] array = this.encoded; if (array != 0) { derOut.WriteEncoded(49, array); } base.Encode(derOut); Monitor.Exit(this); if (num != -1) { } } while (num != 0); } // Token: 0x04006B8F RID: 27535 [global::Cpp2IlInjected.FieldOffset(Offset = "0x18")] [Token(Token = "0x4006B8F")] private byte[] encoded; } }