Files
2026-04-08 23:40:05 +02:00

373 lines
16 KiB
C#

using System;
using System.IO;
using System.Runtime.InteropServices;
using Cpp2IlInjected;
namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1
{
// Token: 0x020017BB RID: 6075
[Token(Token = "0x20017BB")]
[StructLayout(3)]
public class DerExternal : Asn1Object
{
// Token: 0x0600A3D2 RID: 41938 RVA: 0x00261FC4 File Offset: 0x002601C4
[Token(Token = "0x600A3D2")]
[Address(RVA = "0x1ED2070", Offset = "0x1ED0A70", VA = "0x181ED2070")]
public DerExternal(Asn1EncodableVector vector)
{
for (;;)
{
base..ctor();
int num = 0;
int num2 = 0;
Asn1Object objFromVector = DerExternal.GetObjFromVector(vector, num2);
if (objFromVector == 0)
{
goto IL_66;
}
Asn1Object objFromVector2;
if (objFromVector != 0)
{
if (objFromVector == 0)
{
continue;
}
this.directReference = objFromVector;
objFromVector2 = DerExternal.GetObjFromVector(vector, 1);
}
if (objFromVector2 == 0)
{
goto IL_66;
}
Asn1Object objFromVector3;
if (objFromVector2 != 0)
{
if (objFromVector2 == 0)
{
continue;
}
this.indirectReference = objFromVector2;
objFromVector3 = DerExternal.GetObjFromVector(vector, 1);
}
if (objFromVector3 == 0 || objFromVector3 == 0)
{
goto IL_66;
}
IL_7A:
Asn1Object objFromVector4;
if (vector.Count == 1 && objFromVector4 != 0 && objFromVector4 != 0 && objFromVector4 != 0 && this.encoding <= 2)
{
break;
}
continue;
IL_66:
num++;
this.dataValueDescriptor = objFromVector;
objFromVector4 = DerExternal.GetObjFromVector(vector, num);
goto IL_7A;
}
Asn1Object asn1Object;
this.externalContent = asn1Object;
}
// Token: 0x0600A3D3 RID: 41939 RVA: 0x00262090 File Offset: 0x00260290
[Token(Token = "0x600A3D3")]
[Address(RVA = "0x1ED2400", Offset = "0x1ED0E00", VA = "0x181ED2400")]
public DerExternal(DerObjectIdentifier directReference, DerInteger indirectReference, Asn1Object dataValueDescriptor, DerTaggedObject externalData)
{
int num = 0;
base..ctor();
this.directReference = directReference;
this.indirectReference = indirectReference;
this.dataValueDescriptor = dataValueDescriptor;
this.Encoding = num;
}
// Token: 0x0600A3D4 RID: 41940 RVA: 0x002620CC File Offset: 0x002602CC
[Token(Token = "0x600A3D4")]
[Address(RVA = "0x1ED1FF0", Offset = "0x1ED09F0", VA = "0x181ED1FF0")]
public DerExternal(DerObjectIdentifier directReference, DerInteger indirectReference, Asn1Object dataValueDescriptor, int encoding, Asn1Object externalData)
{
this.directReference = directReference;
this.indirectReference = indirectReference;
this.dataValueDescriptor = dataValueDescriptor;
}
// Token: 0x0600A3D5 RID: 41941 RVA: 0x002620FC File Offset: 0x002602FC
[Token(Token = "0x600A3D5")]
[Address(RVA = "0x1ED1CA0", Offset = "0x1ED06A0", VA = "0x181ED1CA0", Slot = "6")]
internal override void Encode(DerOutputStream derOut)
{
MemoryStream memoryStream = new MemoryStream();
DerObjectIdentifier derObjectIdentifier = this.directReference;
if (derObjectIdentifier != 0)
{
byte[] derEncoded = derObjectIdentifier.GetDerEncoded();
int num = memoryStream.ReadByte();
}
DerInteger derInteger = this.indirectReference;
if (derInteger != 0)
{
byte[] derEncoded2 = derInteger.GetDerEncoded();
int num2 = memoryStream.ReadByte();
}
Asn1Object asn1Object = this.dataValueDescriptor;
if (asn1Object != 0)
{
byte[] derEncoded3 = asn1Object.GetDerEncoded();
int num3 = memoryStream.ReadByte();
}
Asn1Object asn1Object2 = this.externalContent;
DerTaggedObject derTaggedObject = new DerTaggedObject(8, asn1Object2);
if (derTaggedObject != 0)
{
byte[] derEncoded4 = derTaggedObject.GetDerEncoded();
int num4 = memoryStream.ReadByte();
}
derOut.WriteLength(40);
int num5 = derOut.ReadByte();
}
// Token: 0x0600A3D6 RID: 41942 RVA: 0x002621A4 File Offset: 0x002603A4
[Token(Token = "0x600A3D6")]
[Address(RVA = "0x1ED1C10", Offset = "0x1ED0610", VA = "0x181ED1C10", Slot = "8")]
protected override int Asn1GetHashCode()
{
this.externalContent.Finalize();
DerObjectIdentifier derObjectIdentifier = this.directReference;
if (derObjectIdentifier != 0)
{
derObjectIdentifier.Finalize();
}
DerInteger derInteger = this.indirectReference;
if (derInteger != 0)
{
derInteger.Finalize();
}
Asn1Object asn1Object = this.dataValueDescriptor;
if (asn1Object != 0)
{
asn1Object.Finalize();
}
throw new NullReferenceException();
}
// Token: 0x0600A3D7 RID: 41943 RVA: 0x002621F4 File Offset: 0x002603F4
[Token(Token = "0x600A3D7")]
[Address(RVA = "0x1ED1B00", Offset = "0x1ED0500", VA = "0x181ED1B00", Slot = "7")]
protected override bool Asn1Equals(Asn1Object asn1Object)
{
if (this != asn1Object)
{
if (asn1Object != 0 && asn1Object != 0)
{
DerObjectIdentifier derObjectIdentifier = this.directReference;
bool flag;
if (flag)
{
DerInteger derInteger = this.indirectReference;
bool flag2;
if (flag2)
{
Asn1Object asn1Object2 = this.dataValueDescriptor;
bool flag3;
if (flag3)
{
int num = this.externalContent.Asn1GetHashCode();
}
}
}
}
}
return true;
}
// Token: 0x170019A4 RID: 6564
// (get) Token: 0x0600A3D8 RID: 41944 RVA: 0x0026224C File Offset: 0x0026044C
// (set) Token: 0x0600A3D9 RID: 41945 RVA: 0x00262260 File Offset: 0x00260460
[Token(Token = "0x170019A4")]
public Asn1Object DataValueDescriptor
{
[Token(Token = "0x600A3D8")]
[Address(RVA = "0x3C1220", Offset = "0x3BFC20", VA = "0x1803C1220")]
get
{
return this.dataValueDescriptor;
}
[Token(Token = "0x600A3D9")]
[Address(RVA = "0x3C1260", Offset = "0x3BFC60", VA = "0x1803C1260")]
set
{
this.dataValueDescriptor = value;
}
}
// Token: 0x170019A5 RID: 6565
// (get) Token: 0x0600A3DA RID: 41946 RVA: 0x00262274 File Offset: 0x00260474
// (set) Token: 0x0600A3DB RID: 41947 RVA: 0x00262288 File Offset: 0x00260488
[Token(Token = "0x170019A5")]
public DerObjectIdentifier DirectReference
{
[Token(Token = "0x600A3DA")]
[Address(RVA = "0x3C39A0", Offset = "0x3C23A0", VA = "0x1803C39A0")]
get
{
return this.directReference;
}
[Token(Token = "0x600A3DB")]
[Address(RVA = "0x3C39B0", Offset = "0x3C23B0", VA = "0x1803C39B0")]
set
{
this.directReference = value;
}
}
// Token: 0x170019A6 RID: 6566
// (get) Token: 0x0600A3DC RID: 41948 RVA: 0x0026229C File Offset: 0x0026049C
// (set) Token: 0x0600A3DD RID: 41949 RVA: 0x002622B0 File Offset: 0x002604B0
[Token(Token = "0x170019A6")]
public int Encoding
{
[Token(Token = "0x600A3DC")]
[Address(RVA = "0x4D24F0", Offset = "0x4D0EF0", VA = "0x1804D24F0")]
get
{
return this.encoding;
}
[Token(Token = "0x600A3DD")]
[Address(RVA = "0x1ED24B0", Offset = "0x1ED0EB0", VA = "0x181ED24B0")]
set
{
/*
An exception occurred when decompiling this method (0600A3DD)
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.DerExternal::set_Encoding(System.Int32)
---> System.Exception: Basic block has to end with unconditional control flow.
{
IL_11:
stloc:InvalidOperationException(var_1_17, newobj:InvalidOperationException(InvalidOperationException::.ctor, ldloc:string(var_0)))
}
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.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1846
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: 0x170019A7 RID: 6567
// (get) Token: 0x0600A3DE RID: 41950 RVA: 0x002622D4 File Offset: 0x002604D4
// (set) Token: 0x0600A3DF RID: 41951 RVA: 0x002622E8 File Offset: 0x002604E8
[Token(Token = "0x170019A7")]
public Asn1Object ExternalContent
{
[Token(Token = "0x600A3DE")]
[Address(RVA = "0x3C1250", Offset = "0x3BFC50", VA = "0x1803C1250")]
get
{
return this.externalContent;
}
[Token(Token = "0x600A3DF")]
[Address(RVA = "0x3C1290", Offset = "0x3BFC90", VA = "0x1803C1290")]
set
{
this.externalContent = value;
}
}
// Token: 0x170019A8 RID: 6568
// (get) Token: 0x0600A3E0 RID: 41952 RVA: 0x002622FC File Offset: 0x002604FC
// (set) Token: 0x0600A3E1 RID: 41953 RVA: 0x00262310 File Offset: 0x00260510
[Token(Token = "0x170019A8")]
public DerInteger IndirectReference
{
[Token(Token = "0x600A3E0")]
[Address(RVA = "0x3C1240", Offset = "0x3BFC40", VA = "0x1803C1240")]
get
{
return this.indirectReference;
}
[Token(Token = "0x600A3E1")]
[Address(RVA = "0x3C1280", Offset = "0x3BFC80", VA = "0x1803C1280")]
set
{
this.indirectReference = value;
}
}
// Token: 0x0600A3E2 RID: 41954 RVA: 0x00262324 File Offset: 0x00260524
[Token(Token = "0x600A3E2")]
[Address(RVA = "0x1ED1EE0", Offset = "0x1ED08E0", VA = "0x181ED1EE0")]
private static Asn1Object GetObjFromVector(Asn1EncodableVector v, int index)
{
/*
An exception occurred when decompiling this method (0600A3E2)
ICSharpCode.Decompiler.DecompilerException: Error decompiling BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.Asn1Object BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.DerExternal::GetObjFromVector(BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.Asn1EncodableVector,System.Int32)
---> System.Exception: Basic block has to end with unconditional control flow.
{
IL_1C:
stloc:ArgumentException(var_0_2B, newobj:ArgumentException(ArgumentException::.ctor, ldstr:string("too few objects in input vector"), ldstr:string("v")))
}
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.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1846
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: 0x0600A3E3 RID: 41955 RVA: 0x0026235C File Offset: 0x0026055C
[Token(Token = "0x600A3E3")]
[Address(RVA = "0x1ED1F90", Offset = "0x1ED0990", VA = "0x181ED1F90")]
private static void WriteEncodable(MemoryStream ms, Asn1Encodable e)
{
if (e != 0)
{
byte[] derEncoded = e.GetDerEncoded();
int num = ms.ReadByte();
}
}
// Token: 0x04006B58 RID: 27480
[global::Cpp2IlInjected.FieldOffset(Offset = "0x10")]
[Token(Token = "0x4006B58")]
private DerObjectIdentifier directReference;
// Token: 0x04006B59 RID: 27481
[global::Cpp2IlInjected.FieldOffset(Offset = "0x18")]
[Token(Token = "0x4006B59")]
private DerInteger indirectReference;
// Token: 0x04006B5A RID: 27482
[global::Cpp2IlInjected.FieldOffset(Offset = "0x20")]
[Token(Token = "0x4006B5A")]
private Asn1Object dataValueDescriptor;
// Token: 0x04006B5B RID: 27483
[global::Cpp2IlInjected.FieldOffset(Offset = "0x28")]
[Token(Token = "0x4006B5B")]
private int encoding;
// Token: 0x04006B5C RID: 27484
[global::Cpp2IlInjected.FieldOffset(Offset = "0x30")]
[Token(Token = "0x4006B5C")]
private Asn1Object externalContent;
}
}