1040 lines
50 KiB
C#
1040 lines
50 KiB
C#
using System;
|
|
using System.Collections;
|
|
using System.IO;
|
|
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: 0x0200198F RID: 6543
|
|
[Token(Token = "0x200198F")]
|
|
public class Pkcs12Store
|
|
{
|
|
// Token: 0x06009C42 RID: 40002 RVA: 0x002088AC File Offset: 0x00206AAC
|
|
[Token(Token = "0x6009C42")]
|
|
[Address(RVA = "0x1CC14F0", Offset = "0x1CC02F0", VA = "0x181CC14F0")]
|
|
private static SubjectKeyIdentifier CreateSubjectKeyID(AsymmetricKeyParameter pubKey)
|
|
{
|
|
return new SubjectKeyIdentifier(SubjectPublicKeyInfoFactory.CreateSubjectPublicKeyInfo(pubKey));
|
|
}
|
|
|
|
// Token: 0x06009C43 RID: 40003 RVA: 0x002088C4 File Offset: 0x00206AC4
|
|
[Token(Token = "0x6009C43")]
|
|
[Address(RVA = "0x1CC7B00", Offset = "0x1CC6900", VA = "0x181CC7B00")]
|
|
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: 0x06009C44 RID: 40004 RVA: 0x00208978 File Offset: 0x00206B78
|
|
[Token(Token = "0x6009C44")]
|
|
[Address(RVA = "0x1CC79D0", Offset = "0x1CC67D0", VA = "0x181CC79D0")]
|
|
public Pkcs12Store()
|
|
{
|
|
DerObjectIdentifier pbewithShaAnd40BitRC2Cbc = PkcsObjectIdentifiers.PbewithShaAnd40BitRC2Cbc;
|
|
DerObjectIdentifier pbeWithShaAnd3KeyTripleDesCbc = PkcsObjectIdentifiers.PbeWithShaAnd3KeyTripleDesCbc;
|
|
}
|
|
|
|
// Token: 0x06009C45 RID: 40005 RVA: 0x00208994 File Offset: 0x00206B94
|
|
[Token(Token = "0x6009C45")]
|
|
[Address(RVA = "0x1CC7A50", Offset = "0x1CC6850", VA = "0x181CC7A50")]
|
|
public Pkcs12Store(Stream input, char[] password)
|
|
{
|
|
DerObjectIdentifier pbewithShaAnd40BitRC2Cbc = PkcsObjectIdentifiers.PbewithShaAnd40BitRC2Cbc;
|
|
DerObjectIdentifier pbeWithShaAnd3KeyTripleDesCbc = PkcsObjectIdentifiers.PbeWithShaAnd3KeyTripleDesCbc;
|
|
this.Load(input, password);
|
|
}
|
|
|
|
// Token: 0x06009C46 RID: 40006 RVA: 0x002089B8 File Offset: 0x00206BB8
|
|
[Token(Token = "0x6009C46")]
|
|
[Address(RVA = "0x1CC3190", Offset = "0x1CC1F90", VA = "0x181CC3190", Slot = "4")]
|
|
protected virtual void LoadKeyBag(PrivateKeyInfo privKeyInfo, Asn1Set bagAttributes)
|
|
{
|
|
AsymmetricKeyParameter asymmetricKeyParameter;
|
|
DerObjectIdentifier pkcs1Oid;
|
|
int num;
|
|
do
|
|
{
|
|
asymmetricKeyParameter = PrivateKeyFactory.CreateKey(privKeyInfo);
|
|
new AsymmetricKeyEntry(Platform.CreateHashtable()).key = asymmetricKeyParameter;
|
|
if (bagAttributes == 0)
|
|
{
|
|
goto IL_82;
|
|
}
|
|
IEnumerator enumerator = bagAttributes.GetEnumerator();
|
|
if (enumerator != 0)
|
|
{
|
|
if (enumerator == 0)
|
|
{
|
|
goto IL_BA;
|
|
}
|
|
Asn1Encodable asn1Encodable;
|
|
while (asn1Encodable <= 0)
|
|
{
|
|
}
|
|
Asn1Set asn1Set;
|
|
if (asn1Set.GetEnumerator() == 0)
|
|
{
|
|
}
|
|
pkcs1Oid = PkcsObjectIdentifiers.Pkcs1Oid;
|
|
Pkcs12Store.IgnoresCaseHashtable ignoresCaseHashtable = this.keys;
|
|
}
|
|
num = 0;
|
|
if (pkcs1Oid != 0)
|
|
{
|
|
}
|
|
}
|
|
while (num != 0);
|
|
DerObjectIdentifier pkcs1Oid2 = PkcsObjectIdentifiers.Pkcs1Oid;
|
|
if (pkcs1Oid != 0)
|
|
{
|
|
IDictionary dictionary = this.localIds;
|
|
}
|
|
string text;
|
|
DerObjectIdentifier derObjectIdentifier;
|
|
this.keys[text] = derObjectIdentifier;
|
|
IL_82:
|
|
this.unmarkedKeyEntry = asymmetricKeyParameter;
|
|
return;
|
|
IL_BA:
|
|
throw new NullReferenceException();
|
|
}
|
|
|
|
// Token: 0x06009C47 RID: 40007 RVA: 0x00208A8C File Offset: 0x00206C8C
|
|
[Token(Token = "0x6009C47")]
|
|
[Address(RVA = "0x1CC36D0", Offset = "0x1CC24D0", VA = "0x181CC36D0", Slot = "5")]
|
|
protected virtual void LoadPkcs8ShroudedKeyBag(EncryptedPrivateKeyInfo encPrivKeyInfo, Asn1Set bagAttributes, char[] password, bool wrongPkcs12Zero)
|
|
{
|
|
if (password != 0)
|
|
{
|
|
string text = this.ToString();
|
|
}
|
|
}
|
|
|
|
// Token: 0x06009C48 RID: 40008 RVA: 0x0000220F File Offset: 0x0000040F
|
|
[Token(Token = "0x6009C48")]
|
|
[Address(RVA = "0x1CC3720", Offset = "0x1CC2520", VA = "0x181CC3720")]
|
|
public void Load(Stream input, char[] password)
|
|
{
|
|
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
|
}
|
|
|
|
// Token: 0x06009C49 RID: 40009 RVA: 0x00208AA4 File Offset: 0x00206CA4
|
|
[Token(Token = "0x6009C49")]
|
|
[Address(RVA = "0x1CC2DE0", Offset = "0x1CC1BE0", VA = "0x181CC2DE0")]
|
|
public AsymmetricKeyEntry GetKey(string alias)
|
|
{
|
|
/*
|
|
An exception occurred when decompiling this method (06009C49)
|
|
|
|
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 1660
|
|
*/;
|
|
}
|
|
|
|
// Token: 0x06009C4A RID: 40010 RVA: 0x00208AD8 File Offset: 0x00206CD8
|
|
[Token(Token = "0x6009C4A")]
|
|
[Address(RVA = "0x1CC2EC0", Offset = "0x1CC1CC0", VA = "0x181CC2EC0")]
|
|
public bool IsCertificateEntry(string alias)
|
|
{
|
|
/*
|
|
An exception occurred when decompiling this method (06009C4A)
|
|
|
|
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 1660
|
|
*/;
|
|
}
|
|
|
|
// Token: 0x06009C4B RID: 40011 RVA: 0x00208B14 File Offset: 0x00206D14
|
|
[Token(Token = "0x6009C4B")]
|
|
[Address(RVA = "0x1CC3100", Offset = "0x1CC1F00", VA = "0x181CC3100")]
|
|
public bool IsKeyEntry(string alias)
|
|
{
|
|
/*
|
|
An exception occurred when decompiling this method (06009C4B)
|
|
|
|
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 1660
|
|
*/;
|
|
}
|
|
|
|
// Token: 0x06009C4C RID: 40012 RVA: 0x00208B44 File Offset: 0x00206D44
|
|
[Token(Token = "0x6009C4C")]
|
|
[Address(RVA = "0x1CC1AB0", Offset = "0x1CC08B0", VA = "0x181CC1AB0")]
|
|
private IDictionary GetAliasesTable()
|
|
{
|
|
int num;
|
|
IDictionary dictionary;
|
|
do
|
|
{
|
|
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_DE;
|
|
}
|
|
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 != 0)
|
|
{
|
|
goto IL_E4;
|
|
}
|
|
if (num != -1)
|
|
{
|
|
}
|
|
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)
|
|
{
|
|
goto IL_EA;
|
|
}
|
|
uint num5;
|
|
if (num3 < (int)num5)
|
|
{
|
|
num3 += num3;
|
|
num3++;
|
|
}
|
|
while (num3 != 0)
|
|
{
|
|
}
|
|
}
|
|
if (num != 0)
|
|
{
|
|
}
|
|
}
|
|
while (num != 0);
|
|
return dictionary;
|
|
IL_DE:
|
|
throw new NullReferenceException();
|
|
IL_E4:
|
|
throw new NullReferenceException();
|
|
IL_EA:
|
|
throw new NullReferenceException();
|
|
}
|
|
|
|
// Token: 0x170018FA RID: 6394
|
|
// (get) Token: 0x06009C4D RID: 40013 RVA: 0x00208C40 File Offset: 0x00206E40
|
|
[Token(Token = "0x170018FA")]
|
|
public IEnumerable Aliases
|
|
{
|
|
[Token(Token = "0x6009C4D")]
|
|
[Address(RVA = "0x1CC7C90", Offset = "0x1CC6A90", VA = "0x181CC7C90")]
|
|
get
|
|
{
|
|
EnumerableProxy enumerableProxy = new EnumerableProxy(this.GetAliasesTable());
|
|
throw new NullReferenceException();
|
|
}
|
|
}
|
|
|
|
// Token: 0x06009C4E RID: 40014 RVA: 0x00208C60 File Offset: 0x00206E60
|
|
[Token(Token = "0x6009C4E")]
|
|
[Address(RVA = "0x1CC1490", Offset = "0x1CC0290", VA = "0x181CC1490")]
|
|
public bool ContainsAlias(string alias)
|
|
{
|
|
return this.certs[alias] != 0 || this.keys[alias] != 0;
|
|
}
|
|
|
|
// Token: 0x06009C4F RID: 40015 RVA: 0x00208C98 File Offset: 0x00206E98
|
|
[Token(Token = "0x6009C4F")]
|
|
[Address(RVA = "0x1CC2C70", Offset = "0x1CC1A70", VA = "0x181CC2C70")]
|
|
public X509CertificateEntry GetCertificate(string alias)
|
|
{
|
|
/*
|
|
An exception occurred when decompiling this method (06009C4F)
|
|
|
|
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 1660
|
|
*/;
|
|
}
|
|
|
|
// Token: 0x06009C50 RID: 40016 RVA: 0x00208CEC File Offset: 0x00206EEC
|
|
[Token(Token = "0x6009C50")]
|
|
[Address(RVA = "0x1CC2070", Offset = "0x1CC0E70", VA = "0x181CC2070")]
|
|
public string GetCertificateAlias(X509Certificate cert)
|
|
{
|
|
int num;
|
|
do
|
|
{
|
|
num = 0;
|
|
if (cert == 0)
|
|
{
|
|
goto IL_85;
|
|
}
|
|
IDictionary orig = this.certs.orig;
|
|
if (typeof(DictionaryEntry).TypeHandle == 0)
|
|
{
|
|
goto IL_97;
|
|
}
|
|
int num2 = 0;
|
|
if (typeof(DictionaryEntry).TypeHandle == 0)
|
|
{
|
|
goto IL_97;
|
|
}
|
|
if (num2 == 0)
|
|
{
|
|
}
|
|
if (num2 == 0)
|
|
{
|
|
goto IL_91;
|
|
}
|
|
int num3;
|
|
if (num2 != 0)
|
|
{
|
|
num3 = 0;
|
|
}
|
|
if (num != 0)
|
|
{
|
|
goto IL_A9;
|
|
}
|
|
if (num != -1)
|
|
{
|
|
if (num3 == 207)
|
|
{
|
|
goto IL_85;
|
|
}
|
|
if (num3 == 107)
|
|
{
|
|
}
|
|
}
|
|
IDictionary dictionary = this.keyCerts;
|
|
if (num != 0)
|
|
{
|
|
int num4 = num;
|
|
if (num4 != 0 && num4 == 0)
|
|
{
|
|
goto IL_A9;
|
|
}
|
|
num++;
|
|
}
|
|
num++;
|
|
if (num != 0)
|
|
{
|
|
}
|
|
}
|
|
while (num != 0);
|
|
if (num != -1)
|
|
{
|
|
}
|
|
IL_85:
|
|
ArgumentNullException ex = new ArgumentNullException("cert");
|
|
IL_91:
|
|
throw new NullReferenceException();
|
|
IL_97:
|
|
throw new NullReferenceException();
|
|
IL_A9:
|
|
throw new NullReferenceException();
|
|
}
|
|
|
|
// Token: 0x06009C51 RID: 40017 RVA: 0x00208DBC File Offset: 0x00206FBC
|
|
[Token(Token = "0x6009C51")]
|
|
[Address(RVA = "0x1CC2590", Offset = "0x1CC1390", VA = "0x181CC2590")]
|
|
public X509CertificateEntry[] GetCertificateChain(string alias)
|
|
{
|
|
/*
|
|
An exception occurred when decompiling this method (06009C51)
|
|
|
|
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_107:
|
|
stloc:ArgumentNullException(var_22_111, 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 1660
|
|
*/;
|
|
}
|
|
|
|
// Token: 0x06009C52 RID: 40018 RVA: 0x00208EDC File Offset: 0x002070DC
|
|
[Token(Token = "0x6009C52")]
|
|
[Address(RVA = "0x1CC7480", Offset = "0x1CC6280", VA = "0x181CC7480")]
|
|
public void SetCertificateEntry(string alias, X509CertificateEntry certEntry)
|
|
{
|
|
/*
|
|
An exception occurred when decompiling this method (06009C52)
|
|
|
|
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 1660
|
|
*/;
|
|
}
|
|
|
|
// Token: 0x06009C53 RID: 40019 RVA: 0x00208F40 File Offset: 0x00207140
|
|
[Token(Token = "0x6009C53")]
|
|
[Address(RVA = "0x1CC7640", Offset = "0x1CC6440", VA = "0x181CC7640")]
|
|
public void SetKeyEntry(string alias, AsymmetricKeyEntry keyEntry, X509CertificateEntry[] chain)
|
|
{
|
|
/*
|
|
An exception occurred when decompiling this method (06009C53)
|
|
|
|
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 1660
|
|
*/;
|
|
}
|
|
|
|
// Token: 0x06009C54 RID: 40020 RVA: 0x00209024 File Offset: 0x00207224
|
|
[Token(Token = "0x6009C54")]
|
|
[Address(RVA = "0x1CC1710", Offset = "0x1CC0510", VA = "0x181CC1710")]
|
|
public void DeleteEntry(string alias)
|
|
{
|
|
/*
|
|
An exception occurred when decompiling this method (06009C54)
|
|
|
|
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 1660
|
|
*/;
|
|
}
|
|
|
|
// Token: 0x06009C55 RID: 40021 RVA: 0x002090F0 File Offset: 0x002072F0
|
|
[Token(Token = "0x6009C55")]
|
|
[Address(RVA = "0x1CC2F70", Offset = "0x1CC1D70", VA = "0x181CC2F70")]
|
|
public bool IsEntryOfType(string alias, Type entryType)
|
|
{
|
|
/*
|
|
An exception occurred when decompiling this method (06009C55)
|
|
|
|
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 1660
|
|
*/;
|
|
}
|
|
|
|
// Token: 0x06009C56 RID: 40022 RVA: 0x00209160 File Offset: 0x00207360
|
|
[Token(Token = "0x6009C56")]
|
|
[Address(RVA = "0x1CC7970", Offset = "0x1CC6770", VA = "0x181CC7970")]
|
|
[Obsolete]
|
|
public int Size()
|
|
{
|
|
IDictionary aliasesTable = this.GetAliasesTable();
|
|
throw new NullReferenceException();
|
|
}
|
|
|
|
// Token: 0x170018FB RID: 6395
|
|
// (get) Token: 0x06009C57 RID: 40023 RVA: 0x0020917C File Offset: 0x0020737C
|
|
[Token(Token = "0x170018FB")]
|
|
public int Count
|
|
{
|
|
[Token(Token = "0x6009C57")]
|
|
[Address(RVA = "0x1CC7970", Offset = "0x1CC6770", VA = "0x181CC7970")]
|
|
get
|
|
{
|
|
IDictionary aliasesTable = this.GetAliasesTable();
|
|
throw new NullReferenceException();
|
|
}
|
|
}
|
|
|
|
// Token: 0x06009C58 RID: 40024 RVA: 0x00209198 File Offset: 0x00207398
|
|
[Token(Token = "0x6009C58")]
|
|
[Address(RVA = "0x1CC49A0", Offset = "0x1CC37A0", VA = "0x181CC49A0")]
|
|
public void Save(Stream stream, char[] password, SecureRandom random)
|
|
{
|
|
int num2;
|
|
DerSequence derSequence;
|
|
Asn1Encodable[] array2;
|
|
X509CertificateEntry x509CertificateEntry;
|
|
IEnumerable bagAttributeKeys;
|
|
int num3;
|
|
Asn1Encodable[] array3;
|
|
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
|
|
{
|
|
if (derSequence != 0)
|
|
{
|
|
}
|
|
if (array2 == 0)
|
|
{
|
|
goto Block_6;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
else
|
|
{
|
|
IEnumerable enumerable;
|
|
if (enumerable != 0)
|
|
{
|
|
}
|
|
DerSet derSet;
|
|
if (derSet == 0)
|
|
{
|
|
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 && (collection == 0 || collection != 0))
|
|
{
|
|
DerObjectIdentifier x509Certificate = PkcsObjectIdentifiers.X509Certificate;
|
|
AsymmetricKeyParameter publicKey = x509CertificateEntry.cert.GetPublicKey();
|
|
DerOctetString derOctetString;
|
|
CertBag certBag = new CertBag(x509Certificate, derOctetString);
|
|
bagAttributeKeys = x509CertificateEntry.BagAttributeKeys;
|
|
if (bagAttributeKeys != 0)
|
|
{
|
|
num3 = 0;
|
|
if (bagAttributeKeys == 0 || bagAttributeKeys != 0)
|
|
{
|
|
goto IL_268;
|
|
}
|
|
}
|
|
else
|
|
{
|
|
DerSequence derSequence3;
|
|
if (derSequence3 != 0)
|
|
{
|
|
}
|
|
if (array3 == 0)
|
|
{
|
|
goto Block_13;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
string identifier = PkcsObjectIdentifiers.Pkcs9AtFriendlyName.identifier;
|
|
bool flag;
|
|
while (flag)
|
|
{
|
|
}
|
|
Asn1Encodable[] array4 = new Asn1Encodable[1];
|
|
array2 = new Asn1Encodable[2];
|
|
DerObjectIdentifier derObjectIdentifier2 = new DerObjectIdentifier(num2);
|
|
throw new ArrayTypeMismatchException();
|
|
Block_6:
|
|
if (derSequence != (ulong)(-1L))
|
|
{
|
|
}
|
|
Asn1Encodable[] array5 = new Asn1Encodable[1];
|
|
Asn1Encodable[] array6 = new Asn1Encodable[2];
|
|
DerObjectIdentifier pkcs9AtFriendlyName = PkcsObjectIdentifiers.Pkcs9AtFriendlyName;
|
|
throw new ArrayTypeMismatchException();
|
|
IL_268:
|
|
Asn1Encodable asn1Encodable = x509CertificateEntry[num3];
|
|
string identifier2 = PkcsObjectIdentifiers.Pkcs9AtFriendlyName.identifier;
|
|
bool flag2;
|
|
while (flag2)
|
|
{
|
|
}
|
|
Asn1Encodable[] array7 = new Asn1Encodable[1];
|
|
array3 = new Asn1Encodable[2];
|
|
DerObjectIdentifier derObjectIdentifier3 = new DerObjectIdentifier(num3);
|
|
throw new ArrayTypeMismatchException();
|
|
Block_13:
|
|
if (bagAttributeKeys != (ulong)(-1L))
|
|
{
|
|
}
|
|
Asn1Encodable[] array8 = new Asn1Encodable[1];
|
|
Asn1Encodable[] array9 = new Asn1Encodable[2];
|
|
DerObjectIdentifier pkcs9AtFriendlyName2 = PkcsObjectIdentifiers.Pkcs9AtFriendlyName;
|
|
throw new ArrayTypeMismatchException();
|
|
}
|
|
|
|
// Token: 0x06009C59 RID: 40025 RVA: 0x00209574 File Offset: 0x00207774
|
|
[Token(Token = "0x6009C59")]
|
|
[Address(RVA = "0x1CC1370", Offset = "0x1CC0170", VA = "0x181CC1370")]
|
|
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: 0x06009C5A RID: 40026 RVA: 0x0020959C File Offset: 0x0020779C
|
|
[Token(Token = "0x6009C5A")]
|
|
[Address(RVA = "0x1CC1550", Offset = "0x1CC0350", VA = "0x181CC1550")]
|
|
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: 0x04006928 RID: 26920
|
|
[FieldOffset(Offset = "0x10")]
|
|
[Token(Token = "0x4006928")]
|
|
private readonly Pkcs12Store.IgnoresCaseHashtable keys;
|
|
|
|
// Token: 0x04006929 RID: 26921
|
|
[FieldOffset(Offset = "0x18")]
|
|
[Token(Token = "0x4006929")]
|
|
private readonly IDictionary localIds;
|
|
|
|
// Token: 0x0400692A RID: 26922
|
|
[FieldOffset(Offset = "0x20")]
|
|
[Token(Token = "0x400692A")]
|
|
private readonly Pkcs12Store.IgnoresCaseHashtable certs;
|
|
|
|
// Token: 0x0400692B RID: 26923
|
|
[FieldOffset(Offset = "0x28")]
|
|
[Token(Token = "0x400692B")]
|
|
private readonly IDictionary chainCerts;
|
|
|
|
// Token: 0x0400692C RID: 26924
|
|
[FieldOffset(Offset = "0x30")]
|
|
[Token(Token = "0x400692C")]
|
|
private readonly IDictionary keyCerts;
|
|
|
|
// Token: 0x0400692D RID: 26925
|
|
[FieldOffset(Offset = "0x38")]
|
|
[Token(Token = "0x400692D")]
|
|
private readonly DerObjectIdentifier keyAlgorithm;
|
|
|
|
// Token: 0x0400692E RID: 26926
|
|
[FieldOffset(Offset = "0x40")]
|
|
[Token(Token = "0x400692E")]
|
|
private readonly DerObjectIdentifier certAlgorithm;
|
|
|
|
// Token: 0x0400692F RID: 26927
|
|
[FieldOffset(Offset = "0x48")]
|
|
[Token(Token = "0x400692F")]
|
|
private readonly bool useDerEncoding;
|
|
|
|
// Token: 0x04006930 RID: 26928
|
|
[FieldOffset(Offset = "0x50")]
|
|
[Token(Token = "0x4006930")]
|
|
private AsymmetricKeyEntry unmarkedKeyEntry;
|
|
|
|
// Token: 0x04006931 RID: 26929
|
|
[Token(Token = "0x4006931")]
|
|
private const int MinIterations = 1024;
|
|
|
|
// Token: 0x04006932 RID: 26930
|
|
[Token(Token = "0x4006932")]
|
|
private const int SaltSize = 20;
|
|
|
|
// Token: 0x02001990 RID: 6544
|
|
[Token(Token = "0x2001990")]
|
|
internal class CertId
|
|
{
|
|
// Token: 0x06009C5B RID: 40027 RVA: 0x002095C8 File Offset: 0x002077C8
|
|
[Token(Token = "0x6009C5B")]
|
|
[Address(RVA = "0x1CBC100", Offset = "0x1CBAF00", VA = "0x181CBC100")]
|
|
internal CertId(AsymmetricKeyParameter pubKey)
|
|
{
|
|
byte[] keyIdentifier = new SubjectKeyIdentifier(SubjectPublicKeyInfoFactory.CreateSubjectPublicKeyInfo(pubKey)).keyIdentifier;
|
|
this.id = keyIdentifier;
|
|
}
|
|
|
|
// Token: 0x06009C5C RID: 40028 RVA: 0x002095FC File Offset: 0x002077FC
|
|
[Token(Token = "0x6009C5C")]
|
|
[Address(RVA = "0x3FFB80", Offset = "0x3FE980", VA = "0x1803FFB80")]
|
|
internal CertId(byte[] id)
|
|
{
|
|
this.id = id;
|
|
}
|
|
|
|
// Token: 0x170018FC RID: 6396
|
|
// (get) Token: 0x06009C5D RID: 40029 RVA: 0x00209618 File Offset: 0x00207818
|
|
[Token(Token = "0x170018FC")]
|
|
internal byte[] Id
|
|
{
|
|
[Token(Token = "0x6009C5D")]
|
|
[Address(RVA = "0x3F6E20", Offset = "0x3F5C20", VA = "0x1803F6E20")]
|
|
get
|
|
{
|
|
return this.id;
|
|
}
|
|
}
|
|
|
|
// Token: 0x06009C5E RID: 40030 RVA: 0x0020962C File Offset: 0x0020782C
|
|
[Token(Token = "0x6009C5E")]
|
|
[Address(RVA = "0x1CBC0A0", Offset = "0x1CBAEA0", VA = "0x181CBC0A0", Slot = "2")]
|
|
public override int GetHashCode()
|
|
{
|
|
return Arrays.GetHashCode(this.id);
|
|
}
|
|
|
|
// Token: 0x06009C5F RID: 40031 RVA: 0x00209644 File Offset: 0x00207844
|
|
[Token(Token = "0x6009C5F")]
|
|
[Address(RVA = "0x1CBBFD0", Offset = "0x1CBADD0", VA = "0x181CBBFD0", 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: 0x04006933 RID: 26931
|
|
[FieldOffset(Offset = "0x10")]
|
|
[Token(Token = "0x4006933")]
|
|
private readonly byte[] id;
|
|
}
|
|
|
|
// Token: 0x02001991 RID: 6545
|
|
[Token(Token = "0x2001991")]
|
|
private class IgnoresCaseHashtable : IEnumerable
|
|
{
|
|
// Token: 0x06009C60 RID: 40032 RVA: 0x0020966C File Offset: 0x0020786C
|
|
[Token(Token = "0x6009C60")]
|
|
[Address(RVA = "0x1CBC450", Offset = "0x1CBB250", VA = "0x181CBC450")]
|
|
public void Clear()
|
|
{
|
|
IDictionary dictionary = this.orig;
|
|
IDictionary dictionary2 = this.keys;
|
|
throw new NullReferenceException();
|
|
}
|
|
|
|
// Token: 0x06009C61 RID: 40033 RVA: 0x0020968C File Offset: 0x0020788C
|
|
[Token(Token = "0x6009C61")]
|
|
[Address(RVA = "0x1CBC4C0", Offset = "0x1CBB2C0", VA = "0x181CBC4C0", Slot = "4")]
|
|
public IEnumerator GetEnumerator()
|
|
{
|
|
IDictionary dictionary = this.orig;
|
|
throw new NullReferenceException();
|
|
}
|
|
|
|
// Token: 0x170018FD RID: 6397
|
|
// (get) Token: 0x06009C62 RID: 40034 RVA: 0x002096A8 File Offset: 0x002078A8
|
|
[Token(Token = "0x170018FD")]
|
|
public ICollection Keys
|
|
{
|
|
[Token(Token = "0x6009C62")]
|
|
[Address(RVA = "0x1CBC770", Offset = "0x1CBB570", VA = "0x181CBC770")]
|
|
get
|
|
{
|
|
IDictionary dictionary = this.orig;
|
|
throw new NullReferenceException();
|
|
}
|
|
}
|
|
|
|
// Token: 0x06009C63 RID: 40035 RVA: 0x002096C4 File Offset: 0x002078C4
|
|
[Token(Token = "0x6009C63")]
|
|
[Address(RVA = "0x1CBC510", Offset = "0x1CBB310", VA = "0x181CBC510")]
|
|
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: 0x170018FE RID: 6398
|
|
[Token(Token = "0x170018FE")]
|
|
public object this[string alias]
|
|
{
|
|
[Token(Token = "0x6009C64")]
|
|
[Address(RVA = "0x1CBC6A0", Offset = "0x1CBB4A0", VA = "0x181CBC6A0")]
|
|
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 = "0x6009C65")]
|
|
[Address(RVA = "0x1CBC810", Offset = "0x1CBB610", VA = "0x181CBC810")]
|
|
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: 0x170018FF RID: 6399
|
|
// (get) Token: 0x06009C66 RID: 40038 RVA: 0x00209774 File Offset: 0x00207974
|
|
[Token(Token = "0x170018FF")]
|
|
public ICollection Values
|
|
{
|
|
[Token(Token = "0x6009C66")]
|
|
[Address(RVA = "0x1CBC7C0", Offset = "0x1CBB5C0", VA = "0x181CBC7C0")]
|
|
get
|
|
{
|
|
IDictionary dictionary = this.orig;
|
|
throw new NullReferenceException();
|
|
}
|
|
}
|
|
|
|
// Token: 0x06009C67 RID: 40039 RVA: 0x00209790 File Offset: 0x00207990
|
|
[Token(Token = "0x6009C67")]
|
|
[Address(RVA = "0x1CBC630", Offset = "0x1CBB430", VA = "0x181CBC630")]
|
|
public IgnoresCaseHashtable()
|
|
{
|
|
IDictionary dictionary = Platform.CreateHashtable();
|
|
this.orig = dictionary;
|
|
IDictionary dictionary2 = Platform.CreateHashtable();
|
|
this.keys = dictionary2;
|
|
base..ctor();
|
|
}
|
|
|
|
// Token: 0x04006934 RID: 26932
|
|
[FieldOffset(Offset = "0x10")]
|
|
[Token(Token = "0x4006934")]
|
|
private readonly IDictionary orig;
|
|
|
|
// Token: 0x04006935 RID: 26933
|
|
[FieldOffset(Offset = "0x18")]
|
|
[Token(Token = "0x4006935")]
|
|
private readonly IDictionary keys;
|
|
}
|
|
}
|
|
}
|