1272 lines
56 KiB
C#
1272 lines
56 KiB
C#
using System;
|
|
using System.Collections;
|
|
using System.IO;
|
|
using System.Runtime.InteropServices;
|
|
using BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1;
|
|
using BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.Pkcs;
|
|
using BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.X509;
|
|
using BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto;
|
|
using BestHTTP.SecureProtocol.Org.BouncyCastle.Security;
|
|
using BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities;
|
|
using BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities.Collections;
|
|
using BestHTTP.SecureProtocol.Org.BouncyCastle.X509;
|
|
using Cpp2IlInjected;
|
|
|
|
namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Pkcs
|
|
{
|
|
// Token: 0x020013B2 RID: 5042
|
|
[Token(Token = "0x20013B2")]
|
|
[StructLayout(3)]
|
|
public class Pkcs12Store
|
|
{
|
|
// Token: 0x06008068 RID: 32872 RVA: 0x001B1250 File Offset: 0x001AF450
|
|
[Token(Token = "0x6008068")]
|
|
[Address(RVA = "0x4E1F30", Offset = "0x4E0930", VA = "0x1804E1F30")]
|
|
private static SubjectKeyIdentifier CreateSubjectKeyID(AsymmetricKeyParameter pubKey)
|
|
{
|
|
return new SubjectKeyIdentifier(SubjectPublicKeyInfoFactory.CreateSubjectPublicKeyInfo(pubKey));
|
|
}
|
|
|
|
// Token: 0x06008069 RID: 32873 RVA: 0x001B1268 File Offset: 0x001AF468
|
|
[Token(Token = "0x6008069")]
|
|
[Address(RVA = "0x4E86E0", Offset = "0x4E70E0", VA = "0x1804E86E0")]
|
|
internal Pkcs12Store(DerObjectIdentifier keyAlgorithm, DerObjectIdentifier certAlgorithm, bool useDerEncoding)
|
|
{
|
|
IDictionary dictionary = Platform.CreateHashtable();
|
|
Pkcs12Store.IgnoresCaseHashtable ignoresCaseHashtable;
|
|
ignoresCaseHashtable.orig = dictionary;
|
|
IDictionary dictionary2 = Platform.CreateHashtable();
|
|
ignoresCaseHashtable.keys = dictionary2;
|
|
this.keys = ignoresCaseHashtable;
|
|
IDictionary dictionary3 = Platform.CreateHashtable();
|
|
this.localIds = dictionary3;
|
|
IDictionary dictionary4 = Platform.CreateHashtable();
|
|
Pkcs12Store.IgnoresCaseHashtable ignoresCaseHashtable2;
|
|
ignoresCaseHashtable2.orig = dictionary4;
|
|
IDictionary dictionary5 = Platform.CreateHashtable();
|
|
ignoresCaseHashtable2.keys = dictionary5;
|
|
this.certs = ignoresCaseHashtable2;
|
|
IDictionary dictionary6 = Platform.CreateHashtable();
|
|
this.chainCerts = dictionary6;
|
|
IDictionary dictionary7 = Platform.CreateHashtable();
|
|
this.keyCerts = dictionary7;
|
|
base..ctor();
|
|
this.certAlgorithm = certAlgorithm;
|
|
this.useDerEncoding = useDerEncoding;
|
|
this.keyAlgorithm = keyAlgorithm;
|
|
}
|
|
|
|
// Token: 0x0600806A RID: 32874 RVA: 0x001B131C File Offset: 0x001AF51C
|
|
[Token(Token = "0x600806A")]
|
|
[Address(RVA = "0x4E85B0", Offset = "0x4E6FB0", VA = "0x1804E85B0")]
|
|
public Pkcs12Store()
|
|
{
|
|
DerObjectIdentifier pbewithShaAnd40BitRC2Cbc = PkcsObjectIdentifiers.PbewithShaAnd40BitRC2Cbc;
|
|
DerObjectIdentifier pbeWithShaAnd3KeyTripleDesCbc = PkcsObjectIdentifiers.PbeWithShaAnd3KeyTripleDesCbc;
|
|
}
|
|
|
|
// Token: 0x0600806B RID: 32875 RVA: 0x001B1338 File Offset: 0x001AF538
|
|
[Token(Token = "0x600806B")]
|
|
[Address(RVA = "0x4E8630", Offset = "0x4E7030", VA = "0x1804E8630")]
|
|
public Pkcs12Store(Stream input, char[] password)
|
|
{
|
|
DerObjectIdentifier pbewithShaAnd40BitRC2Cbc = PkcsObjectIdentifiers.PbewithShaAnd40BitRC2Cbc;
|
|
DerObjectIdentifier pbeWithShaAnd3KeyTripleDesCbc = PkcsObjectIdentifiers.PbeWithShaAnd3KeyTripleDesCbc;
|
|
this.Load(input, password);
|
|
}
|
|
|
|
// Token: 0x0600806C RID: 32876 RVA: 0x001B135C File Offset: 0x001AF55C
|
|
[Token(Token = "0x600806C")]
|
|
[Address(RVA = "0x4E3C10", Offset = "0x4E2610", VA = "0x1804E3C10", Slot = "4")]
|
|
protected virtual void LoadKeyBag(PrivateKeyInfo privKeyInfo, Asn1Set bagAttributes)
|
|
{
|
|
AsymmetricKeyEntry asymmetricKeyEntry;
|
|
DerObjectIdentifier pkcs1Oid;
|
|
do
|
|
{
|
|
AsymmetricKeyParameter asymmetricKeyParameter = PrivateKeyFactory.CreateKey(privKeyInfo);
|
|
asymmetricKeyEntry = new AsymmetricKeyEntry(Platform.CreateHashtable());
|
|
asymmetricKeyEntry.key = asymmetricKeyParameter;
|
|
if (bagAttributes == 0)
|
|
{
|
|
goto IL_7F;
|
|
}
|
|
IEnumerator enumerator = bagAttributes.GetEnumerator();
|
|
if (enumerator != 0)
|
|
{
|
|
if (enumerator == 0)
|
|
{
|
|
goto IL_B7;
|
|
}
|
|
Asn1Encodable asn1Encodable;
|
|
while (asn1Encodable <= 0)
|
|
{
|
|
}
|
|
Asn1Set asn1Set;
|
|
if (asn1Set.GetEnumerator() == 0)
|
|
{
|
|
}
|
|
pkcs1Oid = PkcsObjectIdentifiers.Pkcs1Oid;
|
|
Pkcs12Store.IgnoresCaseHashtable ignoresCaseHashtable = this.keys;
|
|
}
|
|
if (pkcs1Oid != 0)
|
|
{
|
|
}
|
|
if ((ulong)((uint)0) != (ulong)(-1L))
|
|
{
|
|
}
|
|
}
|
|
while ((uint)0 != 0U);
|
|
DerObjectIdentifier pkcs1Oid2 = PkcsObjectIdentifiers.Pkcs1Oid;
|
|
if (pkcs1Oid != 0)
|
|
{
|
|
IDictionary dictionary = this.localIds;
|
|
}
|
|
Pkcs12Store.IgnoresCaseHashtable ignoresCaseHashtable2 = this.keys;
|
|
IL_7F:
|
|
this.unmarkedKeyEntry = asymmetricKeyEntry;
|
|
return;
|
|
IL_B7:
|
|
throw new NullReferenceException();
|
|
}
|
|
|
|
// Token: 0x0600806D RID: 32877 RVA: 0x001B142C File Offset: 0x001AF62C
|
|
[Token(Token = "0x600806D")]
|
|
[Address(RVA = "0x4E41A0", Offset = "0x4E2BA0", VA = "0x1804E41A0", Slot = "5")]
|
|
protected virtual void LoadPkcs8ShroudedKeyBag(EncryptedPrivateKeyInfo encPrivKeyInfo, Asn1Set bagAttributes, char[] password, bool wrongPkcs12Zero)
|
|
{
|
|
if (password != 0)
|
|
{
|
|
string text = this.ToString();
|
|
}
|
|
}
|
|
|
|
// Token: 0x0600806E RID: 32878 RVA: 0x0000220F File Offset: 0x0000040F
|
|
[Token(Token = "0x600806E")]
|
|
[Address(RVA = "0x4E41F0", Offset = "0x4E2BF0", VA = "0x1804E41F0")]
|
|
public void Load(Stream input, char[] password)
|
|
{
|
|
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
|
}
|
|
|
|
// Token: 0x0600806F RID: 32879 RVA: 0x001B1444 File Offset: 0x001AF644
|
|
[Token(Token = "0x600806F")]
|
|
[Address(RVA = "0x4E3860", Offset = "0x4E2260", VA = "0x1804E3860")]
|
|
public AsymmetricKeyEntry GetKey(string alias)
|
|
{
|
|
/*
|
|
An exception occurred when decompiling this method (0600806F)
|
|
|
|
ICSharpCode.Decompiler.DecompilerException: Error decompiling BestHTTP.SecureProtocol.Org.BouncyCastle.Pkcs.AsymmetricKeyEntry BestHTTP.SecureProtocol.Org.BouncyCastle.Pkcs.Pkcs12Store::GetKey(System.String)
|
|
|
|
---> System.Exception: Basic block has to end with unconditional control flow.
|
|
{
|
|
IL_1B:
|
|
stloc:ArgumentNullException(var_2_25, newobj:ArgumentNullException(ArgumentNullException::.ctor, ldstr:string("alias")))
|
|
}
|
|
|
|
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: 0x06008070 RID: 32880 RVA: 0x001B1478 File Offset: 0x001AF678
|
|
[Token(Token = "0x6008070")]
|
|
[Address(RVA = "0x4E3940", Offset = "0x4E2340", VA = "0x1804E3940")]
|
|
public bool IsCertificateEntry(string alias)
|
|
{
|
|
/*
|
|
An exception occurred when decompiling this method (06008070)
|
|
|
|
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Boolean BestHTTP.SecureProtocol.Org.BouncyCastle.Pkcs.Pkcs12Store::IsCertificateEntry(System.String)
|
|
|
|
---> System.Exception: Basic block has to end with unconditional control flow.
|
|
{
|
|
IL_23:
|
|
stloc:ArgumentNullException(var_0_2D, newobj:ArgumentNullException(ArgumentNullException::.ctor, ldstr:string("alias")))
|
|
}
|
|
|
|
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: 0x06008071 RID: 32881 RVA: 0x001B14B4 File Offset: 0x001AF6B4
|
|
[Token(Token = "0x6008071")]
|
|
[Address(RVA = "0x4E3B80", Offset = "0x4E2580", VA = "0x1804E3B80")]
|
|
public bool IsKeyEntry(string alias)
|
|
{
|
|
/*
|
|
An exception occurred when decompiling this method (06008071)
|
|
|
|
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Boolean BestHTTP.SecureProtocol.Org.BouncyCastle.Pkcs.Pkcs12Store::IsKeyEntry(System.String)
|
|
|
|
---> System.Exception: Basic block has to end with unconditional control flow.
|
|
{
|
|
IL_17:
|
|
stloc:ArgumentNullException(var_0_21, newobj:ArgumentNullException(ArgumentNullException::.ctor, ldstr:string("alias")))
|
|
}
|
|
|
|
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: 0x06008072 RID: 32882 RVA: 0x001B14E4 File Offset: 0x001AF6E4
|
|
[Token(Token = "0x6008072")]
|
|
[Address(RVA = "0x4E24F0", Offset = "0x4E0EF0", VA = "0x1804E24F0")]
|
|
private IDictionary GetAliasesTable()
|
|
{
|
|
IDictionary dictionary;
|
|
for (;;)
|
|
{
|
|
int num = 0;
|
|
dictionary = Platform.CreateHashtable();
|
|
IDictionary orig = this.certs.orig;
|
|
if (dictionary != 0)
|
|
{
|
|
if (num < dictionary)
|
|
{
|
|
num += num;
|
|
num++;
|
|
}
|
|
if (dictionary != 0 && dictionary == 0)
|
|
{
|
|
goto IL_E5;
|
|
}
|
|
uint num2;
|
|
if (num < (int)num2)
|
|
{
|
|
num += num;
|
|
num++;
|
|
}
|
|
dictionary += dictionary;
|
|
num++;
|
|
num += 19;
|
|
dictionary += dictionary;
|
|
num++;
|
|
num += 19;
|
|
}
|
|
int num3 = 0;
|
|
if (num != 0)
|
|
{
|
|
}
|
|
if (num == -1)
|
|
{
|
|
goto IL_BE;
|
|
}
|
|
IDictionary orig2 = this.keys.orig;
|
|
if (num3 < num)
|
|
{
|
|
num3 += num3;
|
|
num3++;
|
|
}
|
|
int num4 = 0;
|
|
if (num != 0)
|
|
{
|
|
if (num3 < num4)
|
|
{
|
|
num3 += num3;
|
|
num3++;
|
|
}
|
|
if (num3 == 0 || num3 != 0)
|
|
{
|
|
uint num5;
|
|
if (num3 < (int)num5)
|
|
{
|
|
num3 += num3;
|
|
num3++;
|
|
}
|
|
while (num3 != 0)
|
|
{
|
|
}
|
|
goto IL_BE;
|
|
}
|
|
goto IL_F1;
|
|
}
|
|
IL_C3:
|
|
num++;
|
|
if (num != 0)
|
|
{
|
|
}
|
|
if (num != -1)
|
|
{
|
|
}
|
|
if (num3 == 0)
|
|
{
|
|
break;
|
|
}
|
|
continue;
|
|
IL_BE:
|
|
if (num3 == 0)
|
|
{
|
|
goto IL_C3;
|
|
}
|
|
goto IL_EB;
|
|
}
|
|
return dictionary;
|
|
IL_E5:
|
|
throw new NullReferenceException();
|
|
IL_EB:
|
|
throw new NullReferenceException();
|
|
IL_F1:
|
|
throw new NullReferenceException();
|
|
}
|
|
|
|
// Token: 0x170014F9 RID: 5369
|
|
// (get) Token: 0x06008073 RID: 32883 RVA: 0x001B15E8 File Offset: 0x001AF7E8
|
|
[Token(Token = "0x170014F9")]
|
|
public IEnumerable Aliases
|
|
{
|
|
[Token(Token = "0x6008073")]
|
|
[Address(RVA = "0x4E8870", Offset = "0x4E7270", VA = "0x1804E8870")]
|
|
get
|
|
{
|
|
EnumerableProxy enumerableProxy = new EnumerableProxy(this.GetAliasesTable());
|
|
throw new NullReferenceException();
|
|
}
|
|
}
|
|
|
|
// Token: 0x06008074 RID: 32884 RVA: 0x001B1608 File Offset: 0x001AF808
|
|
[Token(Token = "0x6008074")]
|
|
[Address(RVA = "0x4E1ED0", Offset = "0x4E08D0", VA = "0x1804E1ED0")]
|
|
public bool ContainsAlias(string alias)
|
|
{
|
|
return this.certs[alias] != 0 || this.keys[alias] != 0;
|
|
}
|
|
|
|
// Token: 0x06008075 RID: 32885 RVA: 0x001B1640 File Offset: 0x001AF840
|
|
[Token(Token = "0x6008075")]
|
|
[Address(RVA = "0x4E36F0", Offset = "0x4E20F0", VA = "0x1804E36F0")]
|
|
public X509CertificateEntry GetCertificate(string alias)
|
|
{
|
|
/*
|
|
An exception occurred when decompiling this method (06008075)
|
|
|
|
ICSharpCode.Decompiler.DecompilerException: Error decompiling BestHTTP.SecureProtocol.Org.BouncyCastle.Pkcs.X509CertificateEntry BestHTTP.SecureProtocol.Org.BouncyCastle.Pkcs.Pkcs12Store::GetCertificate(System.String)
|
|
|
|
---> System.Exception: Basic block has to end with unconditional control flow.
|
|
{
|
|
IL_39:
|
|
stloc:ArgumentNullException(var_5_43, newobj:ArgumentNullException(ArgumentNullException::.ctor, ldstr:string("alias")))
|
|
}
|
|
|
|
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: 0x06008076 RID: 32886 RVA: 0x001B1694 File Offset: 0x001AF894
|
|
[Token(Token = "0x6008076")]
|
|
[Address(RVA = "0x4E2AE0", Offset = "0x4E14E0", VA = "0x1804E2AE0")]
|
|
public string GetCertificateAlias(X509Certificate cert)
|
|
{
|
|
for (;;)
|
|
{
|
|
int num = 0;
|
|
if (cert == 0)
|
|
{
|
|
break;
|
|
}
|
|
IDictionary orig = this.certs.orig;
|
|
if (typeof(DictionaryEntry).TypeHandle == 0)
|
|
{
|
|
goto IL_AF;
|
|
}
|
|
int num2 = 0;
|
|
if (typeof(DictionaryEntry).TypeHandle == 0)
|
|
{
|
|
goto IL_AF;
|
|
}
|
|
if (num2 == 0)
|
|
{
|
|
}
|
|
if (num2 == 0)
|
|
{
|
|
goto IL_A9;
|
|
}
|
|
int num3;
|
|
if (num2 != 0)
|
|
{
|
|
num3 = 0;
|
|
}
|
|
if (num == -1)
|
|
{
|
|
goto IL_71;
|
|
}
|
|
if (num3 == 207)
|
|
{
|
|
goto IL_8D;
|
|
}
|
|
if (num3 != 107)
|
|
{
|
|
goto IL_71;
|
|
}
|
|
IDictionary dictionary = this.keyCerts;
|
|
if (num == 0)
|
|
{
|
|
goto IL_75;
|
|
}
|
|
int num4 = num;
|
|
if (num4 == 0 || num4 != 0)
|
|
{
|
|
num++;
|
|
goto IL_71;
|
|
}
|
|
goto IL_C1;
|
|
IL_96:
|
|
if (num == 0)
|
|
{
|
|
break;
|
|
}
|
|
continue;
|
|
IL_75:
|
|
num++;
|
|
int num5;
|
|
if (num != 0)
|
|
{
|
|
num5 = 0;
|
|
}
|
|
if (num == -1)
|
|
{
|
|
goto IL_96;
|
|
}
|
|
if (num5 == 207)
|
|
{
|
|
}
|
|
IL_8D:
|
|
if (num5 != 205)
|
|
{
|
|
goto IL_96;
|
|
}
|
|
break;
|
|
IL_71:
|
|
if (num == 0)
|
|
{
|
|
goto IL_75;
|
|
}
|
|
goto IL_C1;
|
|
}
|
|
ArgumentNullException ex = new ArgumentNullException("cert");
|
|
IL_A9:
|
|
throw new NullReferenceException();
|
|
IL_AF:
|
|
throw new NullReferenceException();
|
|
IL_C1:
|
|
throw new NullReferenceException();
|
|
}
|
|
|
|
// Token: 0x06008077 RID: 32887 RVA: 0x001B177C File Offset: 0x001AF97C
|
|
[Token(Token = "0x6008077")]
|
|
[Address(RVA = "0x4E3010", Offset = "0x4E1A10", VA = "0x1804E3010")]
|
|
public X509CertificateEntry[] GetCertificateChain(string alias)
|
|
{
|
|
/*
|
|
An exception occurred when decompiling this method (06008077)
|
|
|
|
ICSharpCode.Decompiler.DecompilerException: Error decompiling BestHTTP.SecureProtocol.Org.BouncyCastle.Pkcs.X509CertificateEntry[] BestHTTP.SecureProtocol.Org.BouncyCastle.Pkcs.Pkcs12Store::GetCertificateChain(System.String)
|
|
|
|
---> System.Exception: Basic block has to end with unconditional control flow.
|
|
{
|
|
IL_108:
|
|
stloc:ArgumentNullException(var_23_112, newobj:ArgumentNullException(ArgumentNullException::.ctor, ldstr:string("alias")))
|
|
}
|
|
|
|
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: 0x06008078 RID: 32888 RVA: 0x001B189C File Offset: 0x001AFA9C
|
|
[Token(Token = "0x6008078")]
|
|
[Address(RVA = "0x4E8060", Offset = "0x4E6A60", VA = "0x1804E8060")]
|
|
public void SetCertificateEntry(string alias, X509CertificateEntry certEntry)
|
|
{
|
|
/*
|
|
An exception occurred when decompiling this method (06008078)
|
|
|
|
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.SecureProtocol.Org.BouncyCastle.Pkcs.Pkcs12Store::SetCertificateEntry(System.String,BestHTTP.SecureProtocol.Org.BouncyCastle.Pkcs.X509CertificateEntry)
|
|
|
|
---> System.Exception: Basic block has to end with unconditional control flow.
|
|
{
|
|
IL_3F:
|
|
stloc:ArgumentException(var_5_54, newobj:ArgumentException(ArgumentException::.ctor, call:string(string::Concat, ldstr:string("There is a key entry with the name "), ldloc:string(alias), ldstr:string("."))))
|
|
}
|
|
|
|
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.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.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: 0x06008079 RID: 32889 RVA: 0x001B1900 File Offset: 0x001AFB00
|
|
[Token(Token = "0x6008079")]
|
|
[Address(RVA = "0x4E8220", Offset = "0x4E6C20", VA = "0x1804E8220")]
|
|
public void SetKeyEntry(string alias, AsymmetricKeyEntry keyEntry, X509CertificateEntry[] chain)
|
|
{
|
|
/*
|
|
An exception occurred when decompiling this method (06008079)
|
|
|
|
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.SecureProtocol.Org.BouncyCastle.Pkcs.Pkcs12Store::SetKeyEntry(System.String,BestHTTP.SecureProtocol.Org.BouncyCastle.Pkcs.AsymmetricKeyEntry,BestHTTP.SecureProtocol.Org.BouncyCastle.Pkcs.X509CertificateEntry[])
|
|
|
|
---> System.Exception: Basic block has to end with unconditional control flow.
|
|
{
|
|
IL_CB:
|
|
stloc:ArgumentException(var_14_D5, newobj:ArgumentException(ArgumentException::.ctor, ldstr:string("No certificate chain for private key")))
|
|
}
|
|
|
|
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: 0x0600807A RID: 32890 RVA: 0x001B19E4 File Offset: 0x001AFBE4
|
|
[Token(Token = "0x600807A")]
|
|
[Address(RVA = "0x4E2150", Offset = "0x4E0B50", VA = "0x1804E2150")]
|
|
public void DeleteEntry(string alias)
|
|
{
|
|
/*
|
|
An exception occurred when decompiling this method (0600807A)
|
|
|
|
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.SecureProtocol.Org.BouncyCastle.Pkcs.Pkcs12Store::DeleteEntry(System.String)
|
|
|
|
---> System.Exception: Basic block has to end with unconditional control flow.
|
|
{
|
|
IL_B3:
|
|
stloc:ArgumentNullException(var_15_BD, newobj:ArgumentNullException(ArgumentNullException::.ctor, ldstr:string("alias")))
|
|
}
|
|
|
|
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: 0x0600807B RID: 32891 RVA: 0x001B1AB0 File Offset: 0x001AFCB0
|
|
[Token(Token = "0x600807B")]
|
|
[Address(RVA = "0x4E39F0", Offset = "0x4E23F0", VA = "0x1804E39F0")]
|
|
public bool IsEntryOfType(string alias, Type entryType)
|
|
{
|
|
/*
|
|
An exception occurred when decompiling this method (0600807B)
|
|
|
|
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Boolean BestHTTP.SecureProtocol.Org.BouncyCastle.Pkcs.Pkcs12Store::IsEntryOfType(System.String,System.Type)
|
|
|
|
---> System.Exception: Basic block has to end with unconditional control flow.
|
|
{
|
|
IL_57:
|
|
stloc:ArgumentNullException(var_5_61, newobj:ArgumentNullException(ArgumentNullException::.ctor, ldstr:string("alias")))
|
|
}
|
|
|
|
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: 0x0600807C RID: 32892 RVA: 0x001B1B20 File Offset: 0x001AFD20
|
|
[Token(Token = "0x600807C")]
|
|
[Address(RVA = "0x4E8550", Offset = "0x4E6F50", VA = "0x1804E8550")]
|
|
[Obsolete]
|
|
public int Size()
|
|
{
|
|
IDictionary aliasesTable = this.GetAliasesTable();
|
|
throw new NullReferenceException();
|
|
}
|
|
|
|
// Token: 0x170014FA RID: 5370
|
|
// (get) Token: 0x0600807D RID: 32893 RVA: 0x001B1B3C File Offset: 0x001AFD3C
|
|
[Token(Token = "0x170014FA")]
|
|
public int Count
|
|
{
|
|
[Token(Token = "0x600807D")]
|
|
[Address(RVA = "0x4E8550", Offset = "0x4E6F50", VA = "0x1804E8550")]
|
|
get
|
|
{
|
|
IDictionary aliasesTable = this.GetAliasesTable();
|
|
throw new NullReferenceException();
|
|
}
|
|
}
|
|
|
|
// Token: 0x0600807E RID: 32894 RVA: 0x001B1B58 File Offset: 0x001AFD58
|
|
[Token(Token = "0x600807E")]
|
|
[Address(RVA = "0x4E54B0", Offset = "0x4E3EB0", VA = "0x1804E54B0")]
|
|
public void Save(Stream stream, char[] password, SecureRandom random)
|
|
{
|
|
int num2;
|
|
Asn1Encodable[] array2;
|
|
X509CertificateEntry x509CertificateEntry;
|
|
DerObjectIdentifier certBag3;
|
|
Asn1Encodable[] array3;
|
|
SafeBag safeBag;
|
|
Asn1EncodableVector asn1EncodableVector2;
|
|
DerSet derSet2;
|
|
Asn1Encodable[] array4;
|
|
int num3;
|
|
Asn1Encodable[] array5;
|
|
for (;;)
|
|
{
|
|
if (random != 0)
|
|
{
|
|
IDictionary orig = this.keys.orig;
|
|
Asn1EncodableVector asn1EncodableVector;
|
|
if (asn1EncodableVector != 0)
|
|
{
|
|
if (asn1EncodableVector == 0)
|
|
{
|
|
}
|
|
if (asn1EncodableVector != 0)
|
|
{
|
|
byte[] array = new byte[20];
|
|
double num = random.NextDouble();
|
|
Pkcs12Store.IgnoresCaseHashtable ignoresCaseHashtable = this.keys;
|
|
DerObjectIdentifier derObjectIdentifier = this.keyAlgorithm;
|
|
IEnumerable enumerable;
|
|
if (enumerable != 0)
|
|
{
|
|
num2 = 0;
|
|
if (enumerable == 0 || enumerable != 0)
|
|
{
|
|
break;
|
|
}
|
|
}
|
|
else
|
|
{
|
|
DerSequence derSequence;
|
|
if (derSequence != 0)
|
|
{
|
|
}
|
|
if (derSequence != (ulong)(-1L) && "{il2cpp array field local37->}" == (ulong)325L)
|
|
{
|
|
goto Block_7;
|
|
}
|
|
if (array2 == 0)
|
|
{
|
|
goto Block_8;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
else
|
|
{
|
|
IEnumerable enumerable;
|
|
if (enumerable != 0)
|
|
{
|
|
}
|
|
DerObjectIdentifier x509Certificate;
|
|
IEnumerable bagAttributeKeys;
|
|
DerSequence derSequence3;
|
|
if (enumerable != (ulong)(-1L))
|
|
{
|
|
DerSequence derSequence2;
|
|
byte[] derEncoded = derSequence2.GetDerEncoded();
|
|
DerObjectIdentifier data = PkcsObjectIdentifiers.Data;
|
|
BerOctetString berOctetString = new BerOctetString(derEncoded);
|
|
ContentInfo contentInfo = new ContentInfo(data, berOctetString);
|
|
Asn1Object asn1Object = new Pkcs12PbeParams(new byte[20], 1024).ToAsn1Object();
|
|
HashSet hashSet = new HashSet();
|
|
ICollection collection;
|
|
if (collection != 0)
|
|
{
|
|
if (collection != 0 && collection == 0)
|
|
{
|
|
continue;
|
|
}
|
|
x509Certificate = PkcsObjectIdentifiers.X509Certificate;
|
|
AsymmetricKeyParameter publicKey = x509CertificateEntry.cert.GetPublicKey();
|
|
DerOctetString derOctetString;
|
|
CertBag certBag = new CertBag(x509Certificate, derOctetString);
|
|
bagAttributeKeys = x509CertificateEntry.BagAttributeKeys;
|
|
}
|
|
else
|
|
{
|
|
if (derSequence3 != 0)
|
|
{
|
|
}
|
|
ICollection collection2;
|
|
DerSequence derSequence4;
|
|
if (derSequence3 != (ulong)(-1L))
|
|
{
|
|
if (collection2 != 0)
|
|
{
|
|
if (collection2 != 0)
|
|
{
|
|
goto IL_409;
|
|
}
|
|
}
|
|
else
|
|
{
|
|
if (derSequence4 != 0)
|
|
{
|
|
}
|
|
if (derSequence4 != (ulong)(-1L))
|
|
{
|
|
}
|
|
DerSet derSet;
|
|
if (derSet != 0)
|
|
{
|
|
continue;
|
|
}
|
|
if (derSequence4 != 0)
|
|
{
|
|
while (derSequence4 != 0)
|
|
{
|
|
}
|
|
DerOctetString derOctetString2;
|
|
CertBag certBag2 = new CertBag(PkcsObjectIdentifiers.X509Certificate, derOctetString2);
|
|
IEnumerable enumerable2;
|
|
if (enumerable2 != 0)
|
|
{
|
|
if (enumerable2 == 0 || enumerable2 != 0)
|
|
{
|
|
goto IL_5AE;
|
|
}
|
|
continue;
|
|
}
|
|
else
|
|
{
|
|
DerSequence derSequence5;
|
|
if (derSequence5 != 0)
|
|
{
|
|
}
|
|
if (derSequence5 != (ulong)(-1L))
|
|
{
|
|
goto Block_35;
|
|
}
|
|
if (certBag3 != 0)
|
|
{
|
|
continue;
|
|
}
|
|
array3[0] = safeBag;
|
|
}
|
|
}
|
|
if (asn1EncodableVector2 != 0)
|
|
{
|
|
}
|
|
if (asn1EncodableVector2 != (ulong)(-1L))
|
|
{
|
|
}
|
|
if (derSet2 == 0)
|
|
{
|
|
goto Block_37;
|
|
}
|
|
continue;
|
|
}
|
|
}
|
|
DerSet derSet3;
|
|
if (derSet3 != 0)
|
|
{
|
|
continue;
|
|
}
|
|
IL_409:
|
|
if (collection2 == 0)
|
|
{
|
|
continue;
|
|
}
|
|
IList set = derSet3._set;
|
|
object obj;
|
|
while (obj != 0)
|
|
{
|
|
}
|
|
DerOctetString derOctetString3;
|
|
CertBag certBag4 = new CertBag(PkcsObjectIdentifiers.X509Certificate, derOctetString3);
|
|
IEnumerable enumerable3;
|
|
if (enumerable3 != 0)
|
|
{
|
|
if (enumerable3 == 0 || enumerable3 != 0)
|
|
{
|
|
goto IL_442;
|
|
}
|
|
continue;
|
|
}
|
|
else
|
|
{
|
|
if (derSequence4 != 0)
|
|
{
|
|
}
|
|
if (enumerable3 != (ulong)(-1L) && "{il2cpp array field local225->}" == (ulong)1344L)
|
|
{
|
|
goto Block_28;
|
|
}
|
|
if (array4 == 0)
|
|
{
|
|
goto Block_29;
|
|
}
|
|
continue;
|
|
}
|
|
}
|
|
}
|
|
if (x509Certificate == 0)
|
|
{
|
|
if (bagAttributeKeys != 0)
|
|
{
|
|
num3 = 0;
|
|
if (bagAttributeKeys == 0 || bagAttributeKeys != 0)
|
|
{
|
|
goto IL_276;
|
|
}
|
|
}
|
|
else
|
|
{
|
|
if (derSequence3 != 0)
|
|
{
|
|
}
|
|
if (bagAttributeKeys != (ulong)(-1L) && "{il2cpp array field local139->}" == (ulong)853L)
|
|
{
|
|
goto Block_17;
|
|
}
|
|
if (array5 == 0)
|
|
{
|
|
goto Block_18;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
string identifier = PkcsObjectIdentifiers.Pkcs9AtFriendlyName.identifier;
|
|
bool flag;
|
|
while (flag)
|
|
{
|
|
}
|
|
Asn1Encodable[] array6 = new Asn1Encodable[1];
|
|
Asn1Encodable[] array7 = new Asn1Encodable[2];
|
|
DerObjectIdentifier derObjectIdentifier2 = new DerObjectIdentifier(num2);
|
|
throw new ArrayTypeMismatchException();
|
|
Block_7:
|
|
array2 = new Asn1Encodable[1];
|
|
Asn1Encodable[] array8 = new Asn1Encodable[2];
|
|
DerObjectIdentifier pkcs9AtFriendlyName = PkcsObjectIdentifiers.Pkcs9AtFriendlyName;
|
|
throw new ArrayTypeMismatchException();
|
|
Block_8:
|
|
array8[0] = pkcs9AtFriendlyName;
|
|
DerBmpString derBmpString;
|
|
DerSet derSet4 = new DerSet(derBmpString);
|
|
throw new ArrayTypeMismatchException();
|
|
IL_276:
|
|
Asn1Encodable asn1Encodable = x509CertificateEntry[num3];
|
|
string identifier2 = PkcsObjectIdentifiers.Pkcs9AtFriendlyName.identifier;
|
|
bool flag2;
|
|
while (flag2)
|
|
{
|
|
}
|
|
Asn1Encodable[] array9 = new Asn1Encodable[1];
|
|
Asn1Encodable[] array10 = new Asn1Encodable[2];
|
|
DerObjectIdentifier derObjectIdentifier3 = new DerObjectIdentifier(num3);
|
|
throw new ArrayTypeMismatchException();
|
|
Block_17:
|
|
array5 = new Asn1Encodable[1];
|
|
Asn1Encodable[] array11 = new Asn1Encodable[2];
|
|
DerObjectIdentifier pkcs9AtFriendlyName2 = PkcsObjectIdentifiers.Pkcs9AtFriendlyName;
|
|
throw new ArrayTypeMismatchException();
|
|
Block_18:
|
|
array11[0] = pkcs9AtFriendlyName2;
|
|
DerBmpString derBmpString2;
|
|
DerSet derSet5 = new DerSet(derBmpString2);
|
|
throw new ArrayTypeMismatchException();
|
|
IL_442:
|
|
string identifier3 = PkcsObjectIdentifiers.Pkcs9AtLocalKeyID.identifier;
|
|
bool flag3;
|
|
while (flag3)
|
|
{
|
|
}
|
|
string identifier4 = PkcsObjectIdentifiers.Pkcs9AtFriendlyName.identifier;
|
|
bool flag4;
|
|
while (flag4)
|
|
{
|
|
}
|
|
Asn1Encodable[] array12 = new Asn1Encodable[1];
|
|
Asn1Encodable[] array13 = new Asn1Encodable[2];
|
|
throw new ArrayTypeMismatchException();
|
|
Block_28:
|
|
array4 = new Asn1Encodable[1];
|
|
Asn1Encodable[] array14 = new Asn1Encodable[2];
|
|
DerObjectIdentifier pkcs9AtFriendlyName3 = PkcsObjectIdentifiers.Pkcs9AtFriendlyName;
|
|
throw new ArrayTypeMismatchException();
|
|
Block_29:
|
|
array14[0] = pkcs9AtFriendlyName3;
|
|
DerBmpString derBmpString3;
|
|
DerSet derSet6 = new DerSet(derBmpString3);
|
|
throw new ArrayTypeMismatchException();
|
|
IL_5AE:
|
|
string identifier5 = PkcsObjectIdentifiers.Pkcs9AtLocalKeyID.identifier;
|
|
bool flag5;
|
|
while (flag5)
|
|
{
|
|
}
|
|
Asn1Encodable[] array15 = new Asn1Encodable[1];
|
|
Asn1Encodable[] array16 = new Asn1Encodable[2];
|
|
throw new ArrayTypeMismatchException();
|
|
Block_35:
|
|
array3 = new Asn1Encodable[1];
|
|
certBag3 = PkcsObjectIdentifiers.CertBag;
|
|
Asn1Encodable asn1Encodable2;
|
|
Asn1Object asn1Object2 = asn1Encodable2.ToAsn1Object();
|
|
derSet2 = new DerSet(asn1EncodableVector2);
|
|
safeBag = new SafeBag(certBag3, asn1Object2, derSet2);
|
|
throw new ArrayTypeMismatchException();
|
|
Block_37:
|
|
int num4 = 0;
|
|
DerSequence derSequence6;
|
|
byte[] derEncoded2 = derSequence6.GetDerEncoded();
|
|
if (num4 != 0)
|
|
{
|
|
DerObjectIdentifier data2 = PkcsObjectIdentifiers.Data;
|
|
byte[] array17;
|
|
BerOctetString berOctetString2 = new BerOctetString(array17);
|
|
int num5 = 0;
|
|
Asn1Object asn1Object3 = new EncryptedData(data2, num5, berOctetString2).ToAsn1Object();
|
|
}
|
|
BerOctetString berOctetString3;
|
|
ContentInfo contentInfo2 = new ContentInfo(PkcsObjectIdentifiers.Data, berOctetString3);
|
|
ContentInfo[] array18 = new ContentInfo[2];
|
|
throw new ArrayTypeMismatchException();
|
|
}
|
|
|
|
// Token: 0x0600807F RID: 32895 RVA: 0x001B22F4 File Offset: 0x001B04F4
|
|
[Token(Token = "0x600807F")]
|
|
[Address(RVA = "0x4E1DB0", Offset = "0x4E07B0", VA = "0x1804E1DB0")]
|
|
internal static byte[] CalculatePbeMac(DerObjectIdentifier oid, byte[] salt, int itCount, char[] password, bool wrongPkcs12Zero, byte[] data)
|
|
{
|
|
do
|
|
{
|
|
Asn1Encodable asn1Encodable = PbeUtilities.GenerateAlgorithmParameters(oid, salt, itCount);
|
|
}
|
|
while (PbeUtilities.CreateEngine(oid) == 0);
|
|
byte[] array;
|
|
return array;
|
|
}
|
|
|
|
// Token: 0x06008080 RID: 32896 RVA: 0x001B231C File Offset: 0x001B051C
|
|
[Token(Token = "0x6008080")]
|
|
[Address(RVA = "0x4E1F90", Offset = "0x4E0990", VA = "0x1804E1F90")]
|
|
private static byte[] CryptPbeData(bool forEncryption, AlgorithmIdentifier algId, char[] password, bool wrongPkcs12Zero, byte[] data)
|
|
{
|
|
Asn1Object asn1Object = algId.ToAsn1Object();
|
|
Pkcs12PbeParams instance = Pkcs12PbeParams.GetInstance(algId.ObjectID);
|
|
Asn1Object asn1Object2 = algId.ToAsn1Object();
|
|
throw new NullReferenceException();
|
|
}
|
|
|
|
// Token: 0x04005AE5 RID: 23269
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x10")]
|
|
[Token(Token = "0x4005AE5")]
|
|
private readonly Pkcs12Store.IgnoresCaseHashtable keys;
|
|
|
|
// Token: 0x04005AE6 RID: 23270
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x18")]
|
|
[Token(Token = "0x4005AE6")]
|
|
private readonly IDictionary localIds;
|
|
|
|
// Token: 0x04005AE7 RID: 23271
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x20")]
|
|
[Token(Token = "0x4005AE7")]
|
|
private readonly Pkcs12Store.IgnoresCaseHashtable certs;
|
|
|
|
// Token: 0x04005AE8 RID: 23272
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x28")]
|
|
[Token(Token = "0x4005AE8")]
|
|
private readonly IDictionary chainCerts;
|
|
|
|
// Token: 0x04005AE9 RID: 23273
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x30")]
|
|
[Token(Token = "0x4005AE9")]
|
|
private readonly IDictionary keyCerts;
|
|
|
|
// Token: 0x04005AEA RID: 23274
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x38")]
|
|
[Token(Token = "0x4005AEA")]
|
|
private readonly DerObjectIdentifier keyAlgorithm;
|
|
|
|
// Token: 0x04005AEB RID: 23275
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x40")]
|
|
[Token(Token = "0x4005AEB")]
|
|
private readonly DerObjectIdentifier certAlgorithm;
|
|
|
|
// Token: 0x04005AEC RID: 23276
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x48")]
|
|
[Token(Token = "0x4005AEC")]
|
|
private readonly bool useDerEncoding;
|
|
|
|
// Token: 0x04005AED RID: 23277
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x50")]
|
|
[Token(Token = "0x4005AED")]
|
|
private AsymmetricKeyEntry unmarkedKeyEntry;
|
|
|
|
// Token: 0x04005AEE RID: 23278
|
|
[Token(Token = "0x4005AEE")]
|
|
private const int MinIterations = 1024;
|
|
|
|
// Token: 0x04005AEF RID: 23279
|
|
[Token(Token = "0x4005AEF")]
|
|
private const int SaltSize = 20;
|
|
|
|
// Token: 0x020013B3 RID: 5043
|
|
[Token(Token = "0x20013B3")]
|
|
internal class CertId
|
|
{
|
|
// Token: 0x06008081 RID: 32897 RVA: 0x001B2348 File Offset: 0x001B0548
|
|
[Token(Token = "0x6008081")]
|
|
[Address(RVA = "0x4DA240", Offset = "0x4D8C40", VA = "0x1804DA240")]
|
|
internal CertId(AsymmetricKeyParameter pubKey)
|
|
{
|
|
byte[] keyIdentifier = new SubjectKeyIdentifier(SubjectPublicKeyInfoFactory.CreateSubjectPublicKeyInfo(pubKey)).keyIdentifier;
|
|
this.id = keyIdentifier;
|
|
}
|
|
|
|
// Token: 0x06008082 RID: 32898 RVA: 0x001B237C File Offset: 0x001B057C
|
|
[Token(Token = "0x6008082")]
|
|
[Address(RVA = "0x3C3A30", Offset = "0x3C2430", VA = "0x1803C3A30")]
|
|
internal CertId(byte[] id)
|
|
{
|
|
this.id = id;
|
|
}
|
|
|
|
// Token: 0x170014FB RID: 5371
|
|
// (get) Token: 0x06008083 RID: 32899 RVA: 0x001B2398 File Offset: 0x001B0598
|
|
[Token(Token = "0x170014FB")]
|
|
internal byte[] Id
|
|
{
|
|
[Token(Token = "0x6008083")]
|
|
[Address(RVA = "0x3C39A0", Offset = "0x3C23A0", VA = "0x1803C39A0")]
|
|
get
|
|
{
|
|
return this.id;
|
|
}
|
|
}
|
|
|
|
// Token: 0x06008084 RID: 32900 RVA: 0x001B23AC File Offset: 0x001B05AC
|
|
[Token(Token = "0x6008084")]
|
|
[Address(RVA = "0x4DA1E0", Offset = "0x4D8BE0", VA = "0x1804DA1E0", Slot = "2")]
|
|
public override int GetHashCode()
|
|
{
|
|
return Arrays.GetHashCode(this.id);
|
|
}
|
|
|
|
// Token: 0x06008085 RID: 32901 RVA: 0x001B23C4 File Offset: 0x001B05C4
|
|
[Token(Token = "0x6008085")]
|
|
[Address(RVA = "0x4DA110", Offset = "0x4D8B10", VA = "0x1804DA110", Slot = "0")]
|
|
public override bool Equals(object obj)
|
|
{
|
|
if (obj != this)
|
|
{
|
|
if (obj != 0 && obj != 0)
|
|
{
|
|
byte[] array = this.id;
|
|
bool flag;
|
|
return flag;
|
|
}
|
|
}
|
|
return true;
|
|
}
|
|
|
|
// Token: 0x04005AF0 RID: 23280
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x10")]
|
|
[Token(Token = "0x4005AF0")]
|
|
private readonly byte[] id;
|
|
}
|
|
|
|
// Token: 0x020013B4 RID: 5044
|
|
[Token(Token = "0x20013B4")]
|
|
private class IgnoresCaseHashtable : IEnumerable
|
|
{
|
|
// Token: 0x06008086 RID: 32902 RVA: 0x001B23EC File Offset: 0x001B05EC
|
|
[Token(Token = "0x6008086")]
|
|
[Address(RVA = "0x4DA5A0", Offset = "0x4D8FA0", VA = "0x1804DA5A0")]
|
|
public void Clear()
|
|
{
|
|
IDictionary dictionary = this.orig;
|
|
IDictionary dictionary2 = this.keys;
|
|
throw new NullReferenceException();
|
|
}
|
|
|
|
// Token: 0x06008087 RID: 32903 RVA: 0x001B240C File Offset: 0x001B060C
|
|
[Token(Token = "0x6008087")]
|
|
[Address(RVA = "0x4DA610", Offset = "0x4D9010", VA = "0x1804DA610", Slot = "4")]
|
|
public IEnumerator GetEnumerator()
|
|
{
|
|
IDictionary dictionary = this.orig;
|
|
throw new NullReferenceException();
|
|
}
|
|
|
|
// Token: 0x170014FC RID: 5372
|
|
// (get) Token: 0x06008088 RID: 32904 RVA: 0x001B2428 File Offset: 0x001B0628
|
|
[Token(Token = "0x170014FC")]
|
|
public ICollection Keys
|
|
{
|
|
[Token(Token = "0x6008088")]
|
|
[Address(RVA = "0x4DA8C0", Offset = "0x4D92C0", VA = "0x1804DA8C0")]
|
|
get
|
|
{
|
|
IDictionary dictionary = this.orig;
|
|
throw new NullReferenceException();
|
|
}
|
|
}
|
|
|
|
// Token: 0x06008089 RID: 32905 RVA: 0x001B2444 File Offset: 0x001B0644
|
|
[Token(Token = "0x6008089")]
|
|
[Address(RVA = "0x4DA660", Offset = "0x4D9060", VA = "0x1804DA660")]
|
|
public object Remove(string alias)
|
|
{
|
|
string text;
|
|
do
|
|
{
|
|
text = Platform.ToUpperInvariant(alias);
|
|
IDictionary dictionary = this.keys;
|
|
if (text == 0)
|
|
{
|
|
goto IL_2C;
|
|
}
|
|
}
|
|
while (text == 0);
|
|
IDictionary dictionary2 = this.keys;
|
|
IDictionary dictionary3 = this.orig;
|
|
IDictionary dictionary4 = this.orig;
|
|
IL_2C:
|
|
throw new NullReferenceException();
|
|
}
|
|
|
|
// Token: 0x170014FD RID: 5373
|
|
[Token(Token = "0x170014FD")]
|
|
public object this[string alias]
|
|
{
|
|
[Token(Token = "0x600808A")]
|
|
[Address(RVA = "0x4DA7F0", Offset = "0x4D91F0", VA = "0x1804DA7F0")]
|
|
get
|
|
{
|
|
string text;
|
|
do
|
|
{
|
|
text = Platform.ToUpperInvariant(alias);
|
|
IDictionary dictionary = this.keys;
|
|
if (text == 0)
|
|
{
|
|
goto IL_1D;
|
|
}
|
|
}
|
|
while (text == 0);
|
|
IDictionary dictionary2 = this.orig;
|
|
IL_1D:
|
|
throw new NullReferenceException();
|
|
}
|
|
[Token(Token = "0x600808B")]
|
|
[Address(RVA = "0x4DA960", Offset = "0x4D9360", VA = "0x1804DA960")]
|
|
set
|
|
{
|
|
string text;
|
|
do
|
|
{
|
|
text = Platform.ToUpperInvariant(alias);
|
|
IDictionary dictionary = this.keys;
|
|
if (text == 0)
|
|
{
|
|
goto IL_1D;
|
|
}
|
|
}
|
|
while (text == 0);
|
|
IDictionary dictionary2 = this.orig;
|
|
IL_1D:
|
|
IDictionary dictionary3 = this.keys;
|
|
IDictionary dictionary4 = this.orig;
|
|
}
|
|
}
|
|
|
|
// Token: 0x170014FE RID: 5374
|
|
// (get) Token: 0x0600808C RID: 32908 RVA: 0x001B24F4 File Offset: 0x001B06F4
|
|
[Token(Token = "0x170014FE")]
|
|
public ICollection Values
|
|
{
|
|
[Token(Token = "0x600808C")]
|
|
[Address(RVA = "0x4DA910", Offset = "0x4D9310", VA = "0x1804DA910")]
|
|
get
|
|
{
|
|
IDictionary dictionary = this.orig;
|
|
throw new NullReferenceException();
|
|
}
|
|
}
|
|
|
|
// Token: 0x0600808D RID: 32909 RVA: 0x001B2510 File Offset: 0x001B0710
|
|
[Token(Token = "0x600808D")]
|
|
[Address(RVA = "0x4DA780", Offset = "0x4D9180", VA = "0x1804DA780")]
|
|
public IgnoresCaseHashtable()
|
|
{
|
|
IDictionary dictionary = Platform.CreateHashtable();
|
|
this.orig = dictionary;
|
|
IDictionary dictionary2 = Platform.CreateHashtable();
|
|
this.keys = dictionary2;
|
|
base..ctor();
|
|
}
|
|
|
|
// Token: 0x04005AF1 RID: 23281
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x10")]
|
|
[Token(Token = "0x4005AF1")]
|
|
private readonly IDictionary orig;
|
|
|
|
// Token: 0x04005AF2 RID: 23282
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x18")]
|
|
[Token(Token = "0x4005AF2")]
|
|
private readonly IDictionary keys;
|
|
}
|
|
}
|
|
}
|