using System; using System.Collections; using Cpp2IlInjected; namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.X509 { // Token: 0x02001EED RID: 7917 [Token(Token = "0x2001EED")] public class NameConstraints : Asn1Encodable { // Token: 0x0600C690 RID: 50832 RVA: 0x002CE454 File Offset: 0x002CC654 [Token(Token = "0x600C690")] [Address(RVA = "0x2E80800", Offset = "0x2E7F800", VA = "0x182E80800")] public static NameConstraints GetInstance(object obj) { /* An exception occurred when decompiling this method (0600C690) ICSharpCode.Decompiler.DecompilerException: Error decompiling BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.X509.NameConstraints BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.X509.NameConstraints::GetInstance(System.Object) ---> System.Exception: Basic block has to end with unconditional control flow. { IL_26: stloc:string(var_6_2C, call:string(Platform::GetTypeName, ldloc:object(obj))) stloc:ArgumentException(var_7_44, newobj:ArgumentException(ArgumentException::.ctor, call:string(string::Concat, ldstr:string("unknown object in factory: "), ldloc:string(var_6_2C)), ldstr:string("obj"))) } at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1852 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.Optimize(DecompilerContext context, ILBlock method, AutoPropertyProvider autoPropertyProvider, StateMachineKind& stateMachineKind, MethodDef& inlinedMethod, AsyncMethodDebugInfo& asyncInfo, ILAstOptimizationStep abortBeforeStep) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 355 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(IEnumerable`1 parameters, MethodDebugInfoBuilder& builder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 123 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 88 --- End of inner exception stack trace --- at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 92 at ICSharpCode.Decompiler.Ast.AstBuilder.AddMethodBody(EntityDeclaration methodNode, EntityDeclaration& updatedNode, MethodDef method, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, MethodKind methodKind) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstBuilder.cs:line 1663 */; } // Token: 0x0600C691 RID: 50833 RVA: 0x002CE4A8 File Offset: 0x002CC6A8 [Token(Token = "0x600C691")] [Address(RVA = "0x2E80C10", Offset = "0x2E7FC10", VA = "0x182E80C10")] public NameConstraints(Asn1Sequence seq) { int num; do { num = 0; base..ctor(); IEnumerator enumerator = seq.GetEnumerator(); Asn1Sequence instance2; if (enumerator != 0) { if (num < enumerator) { num += num; num++; } ulong num2; num2 += (ulong)1L; int num3 = 0; if (num == 0) { goto IL_6A; } Asn1Sequence instance; if (num3 == 0) { int num4 = 0; instance = Asn1Sequence.GetInstance(num, num4 != 0); this.permitted = instance; } while (instance != (ulong)1L) { } int num5 = 0; instance2 = Asn1Sequence.GetInstance(num, num5 != 0); this.excluded = instance2; } if (instance2 != 0) { } } while (num != 0); return; IL_6A: throw new NullReferenceException(); } // Token: 0x0600C692 RID: 50834 RVA: 0x002CE52C File Offset: 0x002CC72C [Token(Token = "0x600C692")] [Address(RVA = "0x2E80E20", Offset = "0x2E7FE20", VA = "0x182E80E20")] public NameConstraints(ArrayList permitted, ArrayList excluded) { if (permitted != 0) { DerSequence derSequence = this.CreateSequence(permitted); this.permitted = derSequence; } if (excluded != 0) { DerSequence derSequence2 = this.CreateSequence(excluded); this.excluded = derSequence2; } } // Token: 0x0600C693 RID: 50835 RVA: 0x002CE568 File Offset: 0x002CC768 [Token(Token = "0x600C693")] [Address(RVA = "0x2E80E20", Offset = "0x2E7FE20", VA = "0x182E80E20")] public NameConstraints(IList permitted, IList excluded) { if (permitted != 0) { DerSequence derSequence = this.CreateSequence(permitted); this.permitted = derSequence; } if (excluded != 0) { DerSequence derSequence2 = this.CreateSequence(excluded); this.excluded = derSequence2; } } // Token: 0x0600C694 RID: 50836 RVA: 0x002CE5A4 File Offset: 0x002CC7A4 [Token(Token = "0x600C694")] [Address(RVA = "0x2E80570", Offset = "0x2E7F570", VA = "0x182E80570")] private DerSequence CreateSequence(IList subtrees) { GeneralSubtree[] array; int num; do { array = new GeneralSubtree[0]; num = 0; if (num < subtrees) { num += num; num++; } if (num >= array) { goto IL_4B; } uint num2; if (num < (int)num2) { num += num; num++; } if (num == 0) { break; } ulong num3; num3 += num3; num3 += num3; } while (num == 0 || num == 0); num++; array[0] = num; IL_4B: return new DerSequence(array); } // Token: 0x17001EBB RID: 7867 // (get) Token: 0x0600C695 RID: 50837 RVA: 0x002CE608 File Offset: 0x002CC808 [Token(Token = "0x17001EBB")] public Asn1Sequence PermittedSubtrees { [Token(Token = "0x600C695")] [Address(RVA = "0x411530", Offset = "0x410530", VA = "0x180411530")] get { return this.permitted; } } // Token: 0x17001EBC RID: 7868 // (get) Token: 0x0600C696 RID: 50838 RVA: 0x002CE61C File Offset: 0x002CC81C [Token(Token = "0x17001EBC")] public Asn1Sequence ExcludedSubtrees { [Token(Token = "0x600C696")] [Address(RVA = "0x4157B0", Offset = "0x4147B0", VA = "0x1804157B0")] get { return this.excluded; } } // Token: 0x0600C697 RID: 50839 RVA: 0x002CE630 File Offset: 0x002CC830 [Token(Token = "0x600C697")] [Address(RVA = "0x2E80A00", Offset = "0x2E7FA00", VA = "0x182E80A00", Slot = "5")] public override Asn1Object ToAsn1Object() { Asn1EncodableVector asn1EncodableVector; if (this.permitted != (ulong)0L) { Asn1Encodable[] array = new Asn1Encodable[1]; Asn1Sequence asn1Sequence = this.permitted; int num; int num2; DerTaggedObject derTaggedObject = new DerTaggedObject(num != 0, num2, asn1Sequence); num2 = 0; num = 0; if (derTaggedObject != 0) { } array[0] = derTaggedObject; asn1EncodableVector.Add(array); } if (this.excluded != (ulong)0L) { Asn1Encodable[] array2 = new Asn1Encodable[1]; Asn1Sequence asn1Sequence2 = this.excluded; int num3; DerTaggedObject derTaggedObject2 = new DerTaggedObject(num3 != 0, 1, asn1Sequence2); num3 = 0; if (derTaggedObject2 != 0) { } array2[0] = derTaggedObject2; asn1EncodableVector.Add(array2); } DerSequence derSequence = new DerSequence(asn1EncodableVector); throw new NullReferenceException(); } // Token: 0x04007C89 RID: 31881 [FieldOffset(Offset = "0x10")] [Token(Token = "0x4007C89")] private Asn1Sequence permitted; // Token: 0x04007C8A RID: 31882 [FieldOffset(Offset = "0x18")] [Token(Token = "0x4007C8A")] private Asn1Sequence excluded; } }