using System; using System.Collections; using System.Threading; using Cpp2IlInjected; namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1 { // Token: 0x02001EA1 RID: 7841 [Token(Token = "0x2001EA1")] internal class LazyDerSequence : DerSequence { // Token: 0x0600C4BF RID: 50367 RVA: 0x002C6FF4 File Offset: 0x002C51F4 [Token(Token = "0x600C4BF")] [Address(RVA = "0x2F82220", Offset = "0x2F81220", VA = "0x182F82220")] internal LazyDerSequence(byte[] encoded) { this.encoded = encoded; } // Token: 0x0600C4C0 RID: 50368 RVA: 0x002C7010 File Offset: 0x002C5210 [Token(Token = "0x600C4C0")] [Address(RVA = "0x2F82120", Offset = "0x2F81120", VA = "0x182F82120")] 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: 0x17001E55 RID: 7765 [Token(Token = "0x17001E55")] public override Asn1Encodable this[int index] { [Token(Token = "0x600C4C1")] [Address(RVA = "0x2F822B0", Offset = "0x2F812B0", VA = "0x182F822B0", Slot = "12")] get { this.Parse(); return base[index]; } } // Token: 0x0600C4C2 RID: 50370 RVA: 0x002C7074 File Offset: 0x002C5274 [Token(Token = "0x600C4C2")] [Address(RVA = "0x2F82100", Offset = "0x2F81100", VA = "0x182F82100", Slot = "10")] public override IEnumerator GetEnumerator() { this.Parse(); return base.GetEnumerator(); } // Token: 0x17001E56 RID: 7766 // (get) Token: 0x0600C4C3 RID: 50371 RVA: 0x002C7090 File Offset: 0x002C5290 [Token(Token = "0x17001E56")] public override int Count { [Token(Token = "0x600C4C3")] [Address(RVA = "0x2F82290", Offset = "0x2F81290", VA = "0x182F82290", Slot = "13")] get { this.Parse(); return base.Count; } } // Token: 0x0600C4C4 RID: 50372 RVA: 0x002C70AC File Offset: 0x002C52AC [Token(Token = "0x600C4C4")] [Address(RVA = "0x2F82030", Offset = "0x2F81030", VA = "0x182F82030", 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: 0x04007B8A RID: 31626 [FieldOffset(Offset = "0x18")] [Token(Token = "0x4007B8A")] private byte[] encoded; } }