using System; using System.Collections; using System.Runtime.InteropServices; using Cpp2IlInjected; namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.X509 { // Token: 0x02001830 RID: 6192 [Token(Token = "0x2001830")] [StructLayout(3)] public class NameConstraints : Asn1Encodable { // Token: 0x0600A6E8 RID: 42728 RVA: 0x0026D5F8 File Offset: 0x0026B7F8 [Token(Token = "0x600A6E8")] [Address(RVA = "0x2B0BA30", Offset = "0x2B0A430", VA = "0x182B0BA30")] public static NameConstraints GetInstance(object obj) { /* An exception occurred when decompiling this method (0600A6E8) 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: 0x0600A6E9 RID: 42729 RVA: 0x0026D64C File Offset: 0x0026B84C [Token(Token = "0x600A6E9")] [Address(RVA = "0x2B0BE40", Offset = "0x2B0A840", VA = "0x182B0BE40")] 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_6E; } 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) { } if (num != -1) { } } while (num != 0); return; IL_6E: throw new NullReferenceException(); } // Token: 0x0600A6EA RID: 42730 RVA: 0x0026D6D4 File Offset: 0x0026B8D4 [Token(Token = "0x600A6EA")] [Address(RVA = "0x2B0C080", Offset = "0x2B0AA80", VA = "0x182B0C080")] 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: 0x0600A6EB RID: 42731 RVA: 0x0026D710 File Offset: 0x0026B910 [Token(Token = "0x600A6EB")] [Address(RVA = "0x2B0C080", Offset = "0x2B0AA80", VA = "0x182B0C080")] 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: 0x0600A6EC RID: 42732 RVA: 0x0026D74C File Offset: 0x0026B94C [Token(Token = "0x600A6EC")] [Address(RVA = "0x2B0B7A0", Offset = "0x2B0A1A0", VA = "0x182B0B7A0")] 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: 0x17001A1D RID: 6685 // (get) Token: 0x0600A6ED RID: 42733 RVA: 0x0026D7B0 File Offset: 0x0026B9B0 [Token(Token = "0x17001A1D")] public Asn1Sequence PermittedSubtrees { [Token(Token = "0x600A6ED")] [Address(RVA = "0x3C39A0", Offset = "0x3C23A0", VA = "0x1803C39A0")] get { return this.permitted; } } // Token: 0x17001A1E RID: 6686 // (get) Token: 0x0600A6EE RID: 42734 RVA: 0x0026D7C4 File Offset: 0x0026B9C4 [Token(Token = "0x17001A1E")] public Asn1Sequence ExcludedSubtrees { [Token(Token = "0x600A6EE")] [Address(RVA = "0x3C1240", Offset = "0x3BFC40", VA = "0x1803C1240")] get { return this.excluded; } } // Token: 0x0600A6EF RID: 42735 RVA: 0x0026D7D8 File Offset: 0x0026B9D8 [Token(Token = "0x600A6EF")] [Address(RVA = "0x2B0BC30", Offset = "0x2B0A630", VA = "0x182B0BC30", 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: 0x04006C8D RID: 27789 [global::Cpp2IlInjected.FieldOffset(Offset = "0x10")] [Token(Token = "0x4006C8D")] private Asn1Sequence permitted; // Token: 0x04006C8E RID: 27790 [global::Cpp2IlInjected.FieldOffset(Offset = "0x18")] [Token(Token = "0x4006C8E")] private Asn1Sequence excluded; } }