using System; using System.Collections; using System.Threading; using Cpp2IlInjected; namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1 { // Token: 0x02001DC1 RID: 7617 [Token(Token = "0x2001DC1")] internal class LazyDerSequence : DerSequence { // Token: 0x0600C0F1 RID: 49393 RVA: 0x002BE78C File Offset: 0x002BC98C [Token(Token = "0x600C0F1")] [Address(RVA = "0x283BDF0", Offset = "0x283ABF0", VA = "0x18283BDF0")] internal LazyDerSequence(byte[] encoded) { this.encoded = encoded; } // Token: 0x0600C0F2 RID: 49394 RVA: 0x002BE7A8 File Offset: 0x002BC9A8 [Token(Token = "0x600C0F2")] [Address(RVA = "0x283BCF0", Offset = "0x283AAF0", VA = "0x18283BCF0")] 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 == 0) { return; } throw new NullReferenceException(); } // Token: 0x17001DB8 RID: 7608 [Token(Token = "0x17001DB8")] public override Asn1Encodable this[int index] { [Token(Token = "0x600C0F3")] [Address(RVA = "0x283BE80", Offset = "0x283AC80", VA = "0x18283BE80", Slot = "12")] get { this.Parse(); return base[index]; } } // Token: 0x0600C0F4 RID: 49396 RVA: 0x002BE80C File Offset: 0x002BCA0C [Token(Token = "0x600C0F4")] [Address(RVA = "0x283BCD0", Offset = "0x283AAD0", VA = "0x18283BCD0", Slot = "10")] public override IEnumerator GetEnumerator() { this.Parse(); return base.GetEnumerator(); } // Token: 0x17001DB9 RID: 7609 // (get) Token: 0x0600C0F5 RID: 49397 RVA: 0x002BE828 File Offset: 0x002BCA28 [Token(Token = "0x17001DB9")] public override int Count { [Token(Token = "0x600C0F5")] [Address(RVA = "0x283BE60", Offset = "0x283AC60", VA = "0x18283BE60", Slot = "13")] get { this.Parse(); return base.Count; } } // Token: 0x0600C0F6 RID: 49398 RVA: 0x002BE844 File Offset: 0x002BCA44 [Token(Token = "0x600C0F6")] [Address(RVA = "0x283BC00", Offset = "0x283AA00", VA = "0x18283BC00", Slot = "6")] internal override void Encode(DerOutputStream derOut) { int num; do { num = 0; byte[] array = this.encoded; if (array != 0) { derOut.WriteEncoded(48, array); } base.Encode(derOut); Monitor.Exit(this); } while (num != 0); } // Token: 0x040079D1 RID: 31185 [FieldOffset(Offset = "0x18")] [Token(Token = "0x40079D1")] private byte[] encoded; } }