432 lines
22 KiB
C#
432 lines
22 KiB
C#
using System;
|
|
using System.IO;
|
|
using System.Text;
|
|
using System.Threading;
|
|
using BestHTTP.SecureProtocol.Org.BouncyCastle.Math;
|
|
using BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities;
|
|
using Cpp2IlInjected;
|
|
|
|
namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1
|
|
{
|
|
// Token: 0x02001DAD RID: 7597
|
|
[Token(Token = "0x2001DAD")]
|
|
public class DerObjectIdentifier : Asn1Object
|
|
{
|
|
// Token: 0x0600C066 RID: 49254 RVA: 0x002BCB7C File Offset: 0x002BAD7C
|
|
[Token(Token = "0x600C066")]
|
|
[Address(RVA = "0x187F8F0", Offset = "0x187E6F0", VA = "0x18187F8F0")]
|
|
public static DerObjectIdentifier GetInstance(object obj)
|
|
{
|
|
/*
|
|
An exception occurred when decompiling this method (0600C066)
|
|
|
|
ICSharpCode.Decompiler.DecompilerException: Error decompiling BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.DerObjectIdentifier BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.DerObjectIdentifier::GetInstance(System.Object)
|
|
|
|
---> System.Exception: Basic block has to end with unconditional control flow.
|
|
{
|
|
IL_20:
|
|
stloc:string(var_4_26, call:string(Platform::GetTypeName, ldloc:object(obj)))
|
|
stloc:ArgumentException(var_5_3E, newobj:ArgumentException(ArgumentException::.ctor, call:string(string::Concat, ldstr:string("illegal object in GetInstance: "), ldloc:string(var_4_26)), 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: 0x0600C067 RID: 49255 RVA: 0x002BCBC8 File Offset: 0x002BADC8
|
|
[Token(Token = "0x600C067")]
|
|
[Address(RVA = "0x187F7D0", Offset = "0x187E5D0", VA = "0x18187F7D0")]
|
|
public static DerObjectIdentifier GetInstance(Asn1TaggedObject obj, bool explicitly)
|
|
{
|
|
Asn1Object @object = obj.GetObject();
|
|
if (!explicitly && (@object == 0 || @object == 0))
|
|
{
|
|
Stream octetStream = Asn1OctetString.GetInstance(@object).GetOctetStream();
|
|
DerObjectIdentifier derObjectIdentifier;
|
|
return derObjectIdentifier;
|
|
}
|
|
return DerObjectIdentifier.GetInstance(@object);
|
|
}
|
|
|
|
// Token: 0x0600C068 RID: 49256 RVA: 0x002BCC04 File Offset: 0x002BAE04
|
|
[Token(Token = "0x600C068")]
|
|
[Address(RVA = "0x18801F0", Offset = "0x187EFF0", VA = "0x1818801F0")]
|
|
public DerObjectIdentifier(string identifier)
|
|
{
|
|
/*
|
|
An exception occurred when decompiling this method (0600C068)
|
|
|
|
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.DerObjectIdentifier::.ctor(System.String)
|
|
|
|
---> System.Exception: Basic block has to end with unconditional control flow.
|
|
{
|
|
IL_39:
|
|
stloc:FormatException(var_5_40, newobj:FormatException(FormatException::.ctor, ldloc:string(var_4)))
|
|
}
|
|
|
|
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: 0x0600C069 RID: 49257 RVA: 0x002BCC54 File Offset: 0x002BAE54
|
|
[Token(Token = "0x600C069")]
|
|
[Address(RVA = "0x1880360", Offset = "0x187F160", VA = "0x181880360")]
|
|
internal DerObjectIdentifier(DerObjectIdentifier oid, string branchID)
|
|
{
|
|
/*
|
|
An exception occurred when decompiling this method (0600C069)
|
|
|
|
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.DerObjectIdentifier::.ctor(BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.DerObjectIdentifier,System.String)
|
|
|
|
---> System.Exception: Basic block has to end with unconditional control flow.
|
|
{
|
|
IL_2C:
|
|
stloc:ArgumentException(var_2_46, newobj:ArgumentException(ArgumentException::.ctor, call:string(string::Concat, ldstr:string("string "), ldloc:string(branchID), ldstr:string(" not a valid OID branch")), ldstr:string("branchID")))
|
|
}
|
|
|
|
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: 0x17001DB4 RID: 7604
|
|
// (get) Token: 0x0600C06A RID: 49258 RVA: 0x002BCCA8 File Offset: 0x002BAEA8
|
|
[Token(Token = "0x17001DB4")]
|
|
public string Id
|
|
{
|
|
[Token(Token = "0x600C06A")]
|
|
[Address(RVA = "0x3F6E20", Offset = "0x3F5C20", VA = "0x1803F6E20")]
|
|
get
|
|
{
|
|
return this.identifier;
|
|
}
|
|
}
|
|
|
|
// Token: 0x0600C06B RID: 49259 RVA: 0x002BCCBC File Offset: 0x002BAEBC
|
|
[Token(Token = "0x600C06B")]
|
|
[Address(RVA = "0x187F0A0", Offset = "0x187DEA0", VA = "0x18187F0A0", Slot = "9")]
|
|
public virtual DerObjectIdentifier Branch(string branchID)
|
|
{
|
|
/*
|
|
An exception occurred when decompiling this method (0600C06B)
|
|
|
|
ICSharpCode.Decompiler.DecompilerException: Error decompiling BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.DerObjectIdentifier BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.DerObjectIdentifier::Branch(System.String)
|
|
|
|
---> System.Exception: Basic block has to end with unconditional control flow.
|
|
{
|
|
IL_27:
|
|
stloc:ArgumentException(var_3_41, newobj:ArgumentException(ArgumentException::.ctor, call:string(string::Concat, ldstr:string("string "), ldloc:string(branchID), ldstr:string(" not a valid OID branch")), ldstr:string("branchID")))
|
|
}
|
|
|
|
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: 0x0600C06C RID: 49260 RVA: 0x002BCD0C File Offset: 0x002BAF0C
|
|
[Token(Token = "0x600C06C")]
|
|
[Address(RVA = "0x187FE90", Offset = "0x187EC90", VA = "0x18187FE90", Slot = "10")]
|
|
public virtual bool On(DerObjectIdentifier stem)
|
|
{
|
|
string text = this.identifier;
|
|
string text2 = stem.identifier;
|
|
int stringLength = text2.m_stringLength;
|
|
if (text.m_stringLength > stringLength)
|
|
{
|
|
char c = text[stringLength];
|
|
return Platform.StartsWith(text, text2);
|
|
}
|
|
throw new NullReferenceException();
|
|
}
|
|
|
|
// Token: 0x0600C06D RID: 49261 RVA: 0x002BCD50 File Offset: 0x002BAF50
|
|
[Token(Token = "0x600C06D")]
|
|
[Address(RVA = "0x1880460", Offset = "0x187F260", VA = "0x181880460")]
|
|
internal DerObjectIdentifier(byte[] bytes)
|
|
{
|
|
string text = DerObjectIdentifier.MakeOidStringFromBytes(bytes);
|
|
this.identifier = text;
|
|
byte[] array = Arrays.Clone(bytes);
|
|
this.body = array;
|
|
}
|
|
|
|
// Token: 0x0600C06E RID: 49262 RVA: 0x002BCD80 File Offset: 0x002BAF80
|
|
[Token(Token = "0x600C06E")]
|
|
[Address(RVA = "0x18800B0", Offset = "0x187EEB0", VA = "0x1818800B0")]
|
|
private void WriteField(Stream outputStream, long fieldValue)
|
|
{
|
|
byte[] array = new byte[9];
|
|
uint num2;
|
|
uint num = num2 - 1U;
|
|
array[1] = (byte)fieldValue;
|
|
num -= 1U;
|
|
num2 -= num;
|
|
int num3 = outputStream.ReadByte();
|
|
}
|
|
|
|
// Token: 0x0600C06F RID: 49263 RVA: 0x002BCDB8 File Offset: 0x002BAFB8
|
|
[Token(Token = "0x600C06F")]
|
|
[Address(RVA = "0x187FF40", Offset = "0x187ED40", VA = "0x18187FF40")]
|
|
private void WriteField(Stream outputStream, BigInteger fieldValue)
|
|
{
|
|
int bitLength = fieldValue.BitLength;
|
|
if (fieldValue != 0)
|
|
{
|
|
byte[] array = new byte[0];
|
|
int intValue = fieldValue.IntValue;
|
|
BigInteger bigInteger = fieldValue.ShiftRight(7);
|
|
int num = outputStream.ReadByte();
|
|
return;
|
|
}
|
|
throw new NullReferenceException();
|
|
}
|
|
|
|
// Token: 0x0600C070 RID: 49264 RVA: 0x002BCDF8 File Offset: 0x002BAFF8
|
|
[Token(Token = "0x600C070")]
|
|
[Address(RVA = "0x187F1C0", Offset = "0x187DFC0", VA = "0x18187F1C0")]
|
|
private void DoOutput(MemoryStream bOut)
|
|
{
|
|
OidTokenizer oidTokenizer = new OidTokenizer(this.identifier);
|
|
int num = 0;
|
|
int num2 = int.Parse(oidTokenizer.NextToken());
|
|
string text = oidTokenizer.NextToken();
|
|
if (text.m_stringLength > 18)
|
|
{
|
|
BigInteger bigInteger2;
|
|
BigInteger bigInteger = new BigInteger(text).Add(bigInteger2);
|
|
this.WriteField(bOut, bigInteger);
|
|
}
|
|
long num3 = long.Parse(text);
|
|
num = (int)((long)num + num3);
|
|
this.WriteField(bOut, (long)num);
|
|
if (oidTokenizer.HasMoreTokens)
|
|
{
|
|
string text2 = oidTokenizer.NextToken();
|
|
if (text2.m_stringLength > 18)
|
|
{
|
|
BigInteger bigInteger3 = new BigInteger(text2);
|
|
this.WriteField(bOut, bigInteger3);
|
|
}
|
|
long num4 = long.Parse(text2);
|
|
}
|
|
}
|
|
|
|
// Token: 0x0600C071 RID: 49265 RVA: 0x002BCE9C File Offset: 0x002BB09C
|
|
[Token(Token = "0x600C071")]
|
|
[Address(RVA = "0x187F6E0", Offset = "0x187E4E0", VA = "0x18187F6E0")]
|
|
internal byte[] GetBody()
|
|
{
|
|
int num = 0;
|
|
if (this.body == num)
|
|
{
|
|
MemoryStream memoryStream = new MemoryStream();
|
|
this.DoOutput(memoryStream);
|
|
}
|
|
Monitor.Exit(this);
|
|
if (num == 0)
|
|
{
|
|
return this.body;
|
|
}
|
|
throw new NullReferenceException();
|
|
}
|
|
|
|
// Token: 0x0600C072 RID: 49266 RVA: 0x002BCED8 File Offset: 0x002BB0D8
|
|
[Token(Token = "0x600C072")]
|
|
[Address(RVA = "0x187F380", Offset = "0x187E180", VA = "0x18187F380", Slot = "6")]
|
|
internal override void Encode(DerOutputStream derOut)
|
|
{
|
|
int length = this.GetBody().Length;
|
|
derOut.WriteLength(length);
|
|
int num = derOut.ReadByte();
|
|
}
|
|
|
|
// Token: 0x0600C073 RID: 49267 RVA: 0x002BCF08 File Offset: 0x002BB108
|
|
[Token(Token = "0x600C073")]
|
|
[Address(RVA = "0x4DA700", Offset = "0x4D9500", VA = "0x1804DA700", Slot = "8")]
|
|
protected override int Asn1GetHashCode()
|
|
{
|
|
object obj = ((ICloneable)this.identifier).Clone();
|
|
throw new NullReferenceException();
|
|
}
|
|
|
|
// Token: 0x0600C074 RID: 49268 RVA: 0x002BCF28 File Offset: 0x002BB128
|
|
[Token(Token = "0x600C074")]
|
|
[Address(RVA = "0x187F000", Offset = "0x187DE00", VA = "0x18187F000", Slot = "7")]
|
|
protected override bool Asn1Equals(Asn1Object asn1Object)
|
|
{
|
|
if (asn1Object != 0 && asn1Object != 0)
|
|
{
|
|
string text = this.identifier;
|
|
bool flag;
|
|
return flag;
|
|
}
|
|
throw new NullReferenceException();
|
|
}
|
|
|
|
// Token: 0x0600C075 RID: 49269 RVA: 0x002BCF50 File Offset: 0x002BB150
|
|
[Token(Token = "0x600C075")]
|
|
[Address(RVA = "0x3F6E20", Offset = "0x3F5C20", VA = "0x1803F6E20", Slot = "3")]
|
|
public override string ToString()
|
|
{
|
|
return this.identifier;
|
|
}
|
|
|
|
// Token: 0x0600C076 RID: 49270 RVA: 0x002BCF64 File Offset: 0x002BB164
|
|
[Token(Token = "0x600C076")]
|
|
[Address(RVA = "0x187FAA0", Offset = "0x187E8A0", VA = "0x18187FAA0")]
|
|
private static bool IsValidBranchID(string branchID, int start)
|
|
{
|
|
int num = 0;
|
|
int i = branchID.m_stringLength;
|
|
char c = branchID[start];
|
|
if (num != 0)
|
|
{
|
|
while (i >= start)
|
|
{
|
|
}
|
|
return true;
|
|
}
|
|
throw new NullReferenceException();
|
|
}
|
|
|
|
// Token: 0x0600C077 RID: 49271 RVA: 0x002BCF94 File Offset: 0x002BB194
|
|
[Token(Token = "0x600C077")]
|
|
[Address(RVA = "0x187FB30", Offset = "0x187E930", VA = "0x18187FB30")]
|
|
private static bool IsValidIdentifier(string identifier)
|
|
{
|
|
char c = identifier[1];
|
|
int num = 0;
|
|
char c2 = identifier[num];
|
|
return DerObjectIdentifier.IsValidBranchID(identifier, 2);
|
|
}
|
|
|
|
// Token: 0x0600C078 RID: 49272 RVA: 0x002BCFC4 File Offset: 0x002BB1C4
|
|
[Token(Token = "0x600C078")]
|
|
[Address(RVA = "0x187FBD0", Offset = "0x187E9D0", VA = "0x18187FBD0")]
|
|
private static string MakeOidStringFromBytes(byte[] bytes)
|
|
{
|
|
StringBuilder stringBuilder = new StringBuilder();
|
|
int num = 0;
|
|
int num2 = 0;
|
|
int num3 = 0;
|
|
int num4 = 0;
|
|
int length = bytes.Length;
|
|
if (num != length)
|
|
{
|
|
ulong num5;
|
|
byte b;
|
|
ulong num6;
|
|
if ((ulong)num2 > num5)
|
|
{
|
|
if (num3 == 0)
|
|
{
|
|
BigInteger bigInteger = BigInteger.ValueOf((long)num2);
|
|
}
|
|
BigInteger bigInteger2 = BigInteger.ValueOf((long)b);
|
|
BigInteger bigInteger4;
|
|
BigInteger bigInteger3 = bigInteger4.ShiftLeft(7);
|
|
BigInteger bigInteger5;
|
|
if (num6 != (ulong)0L)
|
|
{
|
|
BigInteger bigInteger6;
|
|
bigInteger5 = bigInteger3.Subtract(bigInteger6);
|
|
}
|
|
uint num7;
|
|
StringBuilder stringBuilder2 = stringBuilder.Append((char)num7);
|
|
StringBuilder stringBuilder3 = stringBuilder.Append(bigInteger5);
|
|
}
|
|
num2 += (int)b;
|
|
num4++;
|
|
if (num6 != (ulong)0L)
|
|
{
|
|
}
|
|
uint num8;
|
|
StringBuilder stringBuilder4 = stringBuilder.Append((char)num8);
|
|
StringBuilder stringBuilder5 = stringBuilder.Append((long)num2);
|
|
num4++;
|
|
}
|
|
throw new NullReferenceException();
|
|
}
|
|
|
|
// Token: 0x0600C079 RID: 49273 RVA: 0x002BD06C File Offset: 0x002BB26C
|
|
[Token(Token = "0x600C079")]
|
|
[Address(RVA = "0x187F400", Offset = "0x187E200", VA = "0x18187F400")]
|
|
internal static DerObjectIdentifier FromOctetString(byte[] enc)
|
|
{
|
|
int num;
|
|
DerObjectIdentifier derObjectIdentifier2;
|
|
do
|
|
{
|
|
num = 0;
|
|
int num2 = 0;
|
|
int hashCode = Arrays.GetHashCode(enc);
|
|
DerObjectIdentifier[] array = DerObjectIdentifier.cache;
|
|
Monitor.Enter(array, num2);
|
|
DerObjectIdentifier derObjectIdentifier = DerObjectIdentifier.cache[hashCode];
|
|
if (derObjectIdentifier != 0)
|
|
{
|
|
byte[] array2 = derObjectIdentifier.GetBody();
|
|
if (Arrays.AreEqual(enc, array2))
|
|
{
|
|
}
|
|
}
|
|
DerObjectIdentifier[] array3 = DerObjectIdentifier.cache;
|
|
string text = DerObjectIdentifier.MakeOidStringFromBytes(enc);
|
|
derObjectIdentifier2.identifier = text;
|
|
byte[] array4 = Arrays.Clone(enc);
|
|
derObjectIdentifier2.body = array4;
|
|
array3[0] = derObjectIdentifier2;
|
|
Monitor.Exit(array);
|
|
}
|
|
while (num != 0);
|
|
return derObjectIdentifier2;
|
|
}
|
|
|
|
// Token: 0x040079C1 RID: 31169
|
|
[FieldOffset(Offset = "0x10")]
|
|
[Token(Token = "0x40079C1")]
|
|
private readonly string identifier;
|
|
|
|
// Token: 0x040079C2 RID: 31170
|
|
[FieldOffset(Offset = "0x18")]
|
|
[Token(Token = "0x40079C2")]
|
|
private byte[] body;
|
|
|
|
// Token: 0x040079C3 RID: 31171
|
|
[Token(Token = "0x40079C3")]
|
|
private const long LONG_LIMIT = 72057594037927808L;
|
|
|
|
// Token: 0x040079C4 RID: 31172
|
|
[Token(Token = "0x40079C4")]
|
|
private static readonly DerObjectIdentifier[] cache = new DerObjectIdentifier[1024];
|
|
}
|
|
}
|