using System; using System.Collections; using System.Runtime.InteropServices; using BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities; using Cpp2IlInjected; namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.Cms { // Token: 0x0200193C RID: 6460 [Token(Token = "0x200193C")] [StructLayout(3)] public class AttributeTable { // Token: 0x0600AD4B RID: 44363 RVA: 0x00288C3C File Offset: 0x00286E3C [Token(Token = "0x600AD4B")] [Address(RVA = "0x28E8D10", Offset = "0x28E7710", VA = "0x1828E8D10")] [Obsolete] public AttributeTable(Hashtable attrs) { IDictionary dictionary = Platform.CreateHashtable(attrs); this.attributes = dictionary; } // Token: 0x0600AD4C RID: 44364 RVA: 0x00288C60 File Offset: 0x00286E60 [Token(Token = "0x600AD4C")] [Address(RVA = "0x28E8CA0", Offset = "0x28E76A0", VA = "0x1828E8CA0")] public AttributeTable(IDictionary attrs) { IDictionary dictionary = Platform.CreateHashtable(attrs); this.attributes = dictionary; } // Token: 0x0600AD4D RID: 44365 RVA: 0x00288C84 File Offset: 0x00286E84 [Token(Token = "0x600AD4D")] [Address(RVA = "0x28E8A60", Offset = "0x28E7460", VA = "0x1828E8A60")] public AttributeTable(Asn1EncodableVector v) { int num; do { num = 0; base..ctor(); IDictionary dictionary = Platform.CreateHashtable(v.Count); this.attributes = dictionary; IEnumerator enumerator = v.GetEnumerator(); Attribute instance; if (enumerator != 0) { if (num < enumerator) { num += num; num++; } if (num == 0) { num++; num += 19; } if (num == 0) { goto IL_63; } instance = Attribute.GetInstance(num); this.AddAttribute(instance); } if (instance != 0) { } if (num != -1) { } } while (num != 0); return; IL_63: throw new NullReferenceException(); } // Token: 0x0600AD4E RID: 44366 RVA: 0x00288CFC File Offset: 0x00286EFC [Token(Token = "0x600AD4E")] [Address(RVA = "0x28E8D80", Offset = "0x28E7780", VA = "0x1828E8D80")] public AttributeTable(Asn1Set s) { IDictionary dictionary; this.attributes = dictionary; int num = 0; Asn1Encodable asn1Encodable; if (num != asn1Encodable) { IEnumerator enumerator = s.GetEnumerator(); Attribute attribute; this.AddAttribute(attribute); num++; } } // Token: 0x0600AD4F RID: 44367 RVA: 0x00288D38 File Offset: 0x00286F38 [Token(Token = "0x600AD4F")] [Address(RVA = "0x28E8930", Offset = "0x28E7330", VA = "0x1828E8930")] public AttributeTable(Attributes attrs) { Asn1Set instance = Asn1Set.GetInstance(attrs.ToAsn1Object()); base..ctor(); IDictionary dictionary; this.attributes = dictionary; int num = 0; Asn1Encodable asn1Encodable; if (num != asn1Encodable) { IEnumerator enumerator = instance.GetEnumerator(); Attribute attribute; this.AddAttribute(attribute); num++; } } // Token: 0x0600AD50 RID: 44368 RVA: 0x00288D80 File Offset: 0x00286F80 [Token(Token = "0x600AD50")] [Address(RVA = "0x28E7B40", Offset = "0x28E6540", VA = "0x1828E7B40")] private void AddAttribute(Attribute a) { int num; do { IDictionary dictionary = this.attributes; num = 0; } while (num == 0 && num == 0); IList list = Platform.CreateArrayList(); IDictionary dictionary2 = this.attributes; } // Token: 0x17001B98 RID: 7064 [Token(Token = "0x17001B98")] public Attribute this[DerObjectIdentifier oid] { [Token(Token = "0x600AD51")] [Address(RVA = "0x28E90B0", Offset = "0x28E7AB0", VA = "0x1828E90B0")] get { for (;;) { IDictionary dictionary = this.attributes; if (oid == 0) { } if (oid != 0) { int num = 0; if (num < dictionary) { num += num; num++; } if (num == 0 || num != 0) { break; } } } throw new NullReferenceException(); } } // Token: 0x0600AD52 RID: 44370 RVA: 0x00288E10 File Offset: 0x00287010 [Token(Token = "0x600AD52")] [Address(RVA = "0x28E8270", Offset = "0x28E6C70", VA = "0x1828E8270")] [Obsolete] public Attribute Get(DerObjectIdentifier oid) { return this[oid]; } // Token: 0x0600AD53 RID: 44371 RVA: 0x00288E24 File Offset: 0x00287024 [Token(Token = "0x600AD53")] [Address(RVA = "0x28E7DE0", Offset = "0x28E67E0", VA = "0x1828E7DE0")] public Asn1EncodableVector GetAll(DerObjectIdentifier oid) { Asn1EncodableVector asn1EncodableVector; Asn1Encodable[] array2; do { int num = 0; IDictionary dictionary = this.attributes; if (asn1EncodableVector != 0) { if (asn1EncodableVector == 0 || asn1EncodableVector == 0) { continue; } Asn1Encodable[] array; if (asn1EncodableVector != 0) { if (num < asn1EncodableVector) { num += num; num++; } if (asn1EncodableVector == 0) { } if (asn1EncodableVector == 0) { goto IL_A7; } array = new Asn1Encodable[1]; if (asn1EncodableVector != 0) { } array[0] = asn1EncodableVector; asn1EncodableVector.Add(array); } if (array != 0) { } if (num != -1) { } if (num != 0) { continue; } } if (asn1EncodableVector == 0) { return asn1EncodableVector; } array2 = new Asn1Encodable[1]; } while (asn1EncodableVector == 0 || asn1EncodableVector == 0); array2[0] = asn1EncodableVector; asn1EncodableVector.Add(array2); return asn1EncodableVector; IL_A7: throw new NullReferenceException(); } // Token: 0x17001B99 RID: 7065 // (get) Token: 0x0600AD54 RID: 44372 RVA: 0x00288EE0 File Offset: 0x002870E0 [Token(Token = "0x17001B99")] public int Count { [Token(Token = "0x600AD54")] [Address(RVA = "0x28E8E80", Offset = "0x28E7880", VA = "0x1828E8E80")] get { int num; do { num = 0; IDictionary dictionary = this.attributes; num += num; num++; if (num == 0) { num++; num++; num += 19; } num += num; if (num != 0) { } if (num != -1) { } } while (num != 0); return num; } } // Token: 0x0600AD55 RID: 44373 RVA: 0x00288F34 File Offset: 0x00287134 [Token(Token = "0x600AD55")] [Address(RVA = "0x28E8870", Offset = "0x28E7270", VA = "0x1828E8870")] public IDictionary ToDictionary() { return Platform.CreateHashtable(this.attributes); } // Token: 0x0600AD56 RID: 44374 RVA: 0x00288F4C File Offset: 0x0028714C [Token(Token = "0x600AD56")] [Address(RVA = "0x28E88D0", Offset = "0x28E72D0", VA = "0x1828E88D0")] [Obsolete] public Hashtable ToHashtable() { return new Hashtable(this.attributes); } // Token: 0x0600AD57 RID: 44375 RVA: 0x00288F64 File Offset: 0x00287164 [Token(Token = "0x600AD57")] [Address(RVA = "0x28E83B0", Offset = "0x28E6DB0", VA = "0x1828E83B0")] public Asn1EncodableVector ToAsn1EncodableVector() { Asn1EncodableVector asn1EncodableVector; Asn1Encodable[] array; for (;;) { IDictionary dictionary = this.attributes; if (asn1EncodableVector != 0) { break; } if ((uint)(-1) != 0U) { } if ((ulong)((uint)(-1)) != (ulong)(-1L)) { } if (array == 0) { return asn1EncodableVector; } } if (asn1EncodableVector != 0) { Attribute instance; if (asn1EncodableVector != 0) { Asn1Encodable[] array2 = new Asn1Encodable[1]; instance = Attribute.GetInstance(asn1EncodableVector); throw new ArrayTypeMismatchException(); } if ((uint)(-1) != 0U) { } if ((ulong)((uint)(-1)) != (ulong)(-1L)) { } if (instance != 0) { throw new NullReferenceException(); } } array = new Asn1Encodable[1]; Attribute instance2 = Attribute.GetInstance(asn1EncodableVector); throw new ArrayTypeMismatchException(); } // Token: 0x0600AD58 RID: 44376 RVA: 0x00289030 File Offset: 0x00287230 [Token(Token = "0x600AD58")] [Address(RVA = "0x28E87C0", Offset = "0x28E71C0", VA = "0x1828E87C0")] public Attributes ToAttributes() { BerSet berSet = new BerSet(this.ToAsn1EncodableVector()); Attributes attributes; attributes.attributes = berSet; return attributes; } // Token: 0x0600AD59 RID: 44377 RVA: 0x00289054 File Offset: 0x00287254 [Token(Token = "0x600AD59")] [Address(RVA = "0x28E7CD0", Offset = "0x28E66D0", VA = "0x1828E7CD0")] public AttributeTable Add(DerObjectIdentifier attrType, Asn1Encodable attrValue) { IDictionary dictionary = Platform.CreateHashtable(this.attributes); AttributeTable attributeTable; attributeTable.attributes = dictionary; DerSet derSet = new DerSet(attrValue); Attribute attribute; attribute.attrType = attrType; attribute.attrValues = derSet; attributeTable.AddAttribute(attribute); return attributeTable; } // Token: 0x0600AD5A RID: 44378 RVA: 0x00289094 File Offset: 0x00287294 [Token(Token = "0x600AD5A")] [Address(RVA = "0x28E8280", Offset = "0x28E6C80", VA = "0x1828E8280")] public AttributeTable Remove(DerObjectIdentifier attrType) { IDictionary dictionary = Platform.CreateHashtable(this.attributes); AttributeTable attributeTable; attributeTable.attributes = dictionary; int num = 0; num += num; num++; return attributeTable; } // Token: 0x0400720D RID: 29197 [global::Cpp2IlInjected.FieldOffset(Offset = "0x10")] [Token(Token = "0x400720D")] private readonly IDictionary attributes; } }