using System; using System.Runtime.InteropServices; using BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1; using BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.X509; using BestHTTP.SecureProtocol.Org.BouncyCastle.Math; using BestHTTP.SecureProtocol.Org.BouncyCastle.X509.Store; using Cpp2IlInjected; namespace BestHTTP.SecureProtocol.Org.BouncyCastle.X509 { // Token: 0x0200131C RID: 4892 [Token(Token = "0x200131C")] [StructLayout(3)] public class AttributeCertificateIssuer : IX509Selector, ICloneable { // Token: 0x06007A95 RID: 31381 RVA: 0x00197A7C File Offset: 0x00195C7C [Token(Token = "0x6007A95")] [Address(RVA = "0x5294A0", Offset = "0x527EA0", VA = "0x1805294A0")] public AttributeCertificateIssuer(AttCertIssuer issuer) { Asn1Encodable obj = issuer.obj; this.form = obj; } // Token: 0x06007A96 RID: 31382 RVA: 0x00197AA4 File Offset: 0x00195CA4 [Token(Token = "0x6007A96")] [Address(RVA = "0x5293F0", Offset = "0x527DF0", VA = "0x1805293F0")] public AttributeCertificateIssuer(X509Name principal) { V2Form v2Form = new V2Form(new GeneralNames(new GeneralName(principal))); this.form = v2Form; } // Token: 0x06007A97 RID: 31383 RVA: 0x00197AD0 File Offset: 0x00195CD0 [Token(Token = "0x6007A97")] [Address(RVA = "0x528AF0", Offset = "0x5274F0", VA = "0x180528AF0")] private object[] GetNames() { Asn1Encodable asn1Encodable; int num; do { asn1Encodable = this.form; num = 0; } while ((asn1Encodable != 0 && asn1Encodable != 0 && (asn1Encodable == 0 || asn1Encodable == 0)) || asn1Encodable == 0); GeneralName[] array; int length = array.Length; if (num != length) { GeneralName generalName = array[num]; num++; } object[] array2 = new object[num]; int length2 = array.Length; if (num != length2) { GeneralName generalName2 = array[num]; if (generalName2.tag == 4) { num++; X509Name instance = X509Name.GetInstance(generalName2.obj); throw new ArrayTypeMismatchException(); } num++; } return array2; } // Token: 0x06007A98 RID: 31384 RVA: 0x00197B78 File Offset: 0x00195D78 [Token(Token = "0x6007A98")] [Address(RVA = "0x528DB0", Offset = "0x5277B0", VA = "0x180528DB0")] public X509Name[] GetPrincipals() { object[] names = this.GetNames(); int num = 0; int num2 = 0; int num3 = 0; int length = names.Length; if (num3 != length) { if (names[num2] == 0) { } num2++; } X509Name[] array = new X509Name[num]; int num4 = 0; int num5 = 0; int num6 = 0; int length2 = names.Length; if (num6 != length2) { object obj = names[num5]; if (obj != 0 && obj != 0) { num4++; throw new ArrayTypeMismatchException(); } num5++; } return array; } // Token: 0x06007A99 RID: 31385 RVA: 0x00197C0C File Offset: 0x00195E0C [Token(Token = "0x6007A99")] [Address(RVA = "0x5292A0", Offset = "0x527CA0", VA = "0x1805292A0")] private bool MatchesDN(X509Name subject, GeneralNames targets) { GeneralName[] names = targets.GetNames(); int num = 0; int length = names.Length; if (num != length) { GeneralName generalName = names[num]; if (generalName.tag == 4) { if (!X509Name.GetInstance(generalName.obj).Equivalent(subject)) { } return true; } num++; } throw new NullReferenceException(); } // Token: 0x06007A9A RID: 31386 RVA: 0x00197C60 File Offset: 0x00195E60 [Token(Token = "0x6007A9A")] [Address(RVA = "0x528940", Offset = "0x527340", VA = "0x180528940", Slot = "5")] public object Clone() { Asn1Encodable obj = AttCertIssuer.GetInstance(this.form).obj; AttributeCertificateIssuer attributeCertificateIssuer; attributeCertificateIssuer.form = obj; throw new NullReferenceException(); } // Token: 0x06007A9B RID: 31387 RVA: 0x00197C8C File Offset: 0x00195E8C [Token(Token = "0x6007A9B")] [Address(RVA = "0x528FA0", Offset = "0x5279A0", VA = "0x180528FA0")] public bool Match(X509Certificate x509Cert) { for (;;) { Asn1Encodable asn1Encodable = this.form; if (asn1Encodable != 0 && asn1Encodable != 0) { int num = 0; if (asn1Encodable == 0) { continue; } if (num == 0) { break; } if (x509Cert.Version == 0) { } BigInteger serialNumber = x509Cert.SerialNumber; } X509Name issuerDN = x509Cert.IssuerDN; Asn1Encodable asn1Encodable2 = this.form; if (asn1Encodable2 == 0 || asn1Encodable2 != 0) { goto IL_53; } } X509Name issuerDN2 = x509Cert.IssuerDN; bool flag; return flag; IL_53: throw new NullReferenceException(); } // Token: 0x06007A9C RID: 31388 RVA: 0x00197CF4 File Offset: 0x00195EF4 [Token(Token = "0x6007A9C")] [Address(RVA = "0x5289B0", Offset = "0x5273B0", VA = "0x1805289B0", Slot = "0")] public override bool Equals(object obj) { while (obj != this) { if (obj != 0 && obj != 0) { if (obj == 0) { continue; } Asn1Object asn1Object = this.form.ToAsn1Object(); } break; } return true; } // Token: 0x06007A9D RID: 31389 RVA: 0x00197D2C File Offset: 0x00195F2C [Token(Token = "0x6007A9D")] [Address(RVA = "0x528AC0", Offset = "0x5274C0", VA = "0x180528AC0", Slot = "2")] public override int GetHashCode() { Asn1Object asn1Object = this.form.ToAsn1Object(); throw new NullReferenceException(); } // Token: 0x06007A9E RID: 31390 RVA: 0x00197D4C File Offset: 0x00195F4C [Token(Token = "0x6007A9E")] [Address(RVA = "0x5291C0", Offset = "0x527BC0", VA = "0x1805291C0", Slot = "4")] public bool Match(object obj) { while (obj != 0 && obj != 0) { if (obj != 0) { bool flag; return flag; } } } // Token: 0x04005834 RID: 22580 [global::Cpp2IlInjected.FieldOffset(Offset = "0x10")] [Token(Token = "0x4005834")] internal readonly Asn1Encodable form; } }