537 lines
29 KiB
C#
537 lines
29 KiB
C#
using System;
|
|
using System.Collections;
|
|
using BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1;
|
|
using BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto;
|
|
using Cpp2IlInjected;
|
|
|
|
namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Security
|
|
{
|
|
// Token: 0x020019A1 RID: 6561
|
|
[Token(Token = "0x20019A1")]
|
|
public sealed class CipherUtilities
|
|
{
|
|
// Token: 0x06009CA9 RID: 40105 RVA: 0x0020AD64 File Offset: 0x00208F64
|
|
[Token(Token = "0x6009CA9")]
|
|
[Address(RVA = "0x19A80B0", Offset = "0x19A6EB0", VA = "0x1819A80B0")]
|
|
static CipherUtilities()
|
|
{
|
|
/*
|
|
An exception occurred when decompiling this method (06009CA9)
|
|
|
|
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.SecureProtocol.Org.BouncyCastle.Security.CipherUtilities::.cctor()
|
|
|
|
---> System.Exception: Basic block has to end with unconditional control flow.
|
|
{
|
|
Block_0:
|
|
stloc:IDictionary(var_2_09, call:IDictionary(Platform::CreateHashtable))
|
|
stsfld:IDictionary(CipherUtilities::algorithms, ldloc:IDictionary(var_2_09))
|
|
stsfld:IDictionary(CipherUtilities::oids, call:IDictionary(Platform::CreateHashtable))
|
|
stloc:Enum(var_4_2B, call:Enum(Enums::GetArbitraryValue, call:Type(Type::GetTypeFromHandle, ldtoken:RuntimeTypeHandle(BestHTTP.SecureProtocol.Org.BouncyCastle.Security.CipherUtilities/CipherAlgorithm))))
|
|
stloc:Enum(var_8_48, call:Enum(Enums::GetArbitraryValue, call:Type(Type::GetTypeFromHandle, ldtoken:RuntimeTypeHandle(BestHTTP.SecureProtocol.Org.BouncyCastle.Security.CipherUtilities/CipherMode))))
|
|
stloc:Enum(var_12_65, call:Enum(Enums::GetArbitraryValue, call:Type(Type::GetTypeFromHandle, ldtoken:RuntimeTypeHandle(BestHTTP.SecureProtocol.Org.BouncyCastle.Security.CipherUtilities/CipherPadding))))
|
|
stloc:IDictionary(var_16_78, ldsfld:IDictionary(CipherUtilities::algorithms))
|
|
stloc:DerObjectIdentifier(var_17_7F, ldsfld:DerObjectIdentifier(NistObjectIdentifiers::IdAes128Ecb))
|
|
stloc:IDictionary(var_19_86, ldsfld:IDictionary(CipherUtilities::algorithms))
|
|
stloc:DerObjectIdentifier(var_20_8D, ldsfld:DerObjectIdentifier(NistObjectIdentifiers::IdAes192Ecb))
|
|
stloc:IDictionary(var_22_94, ldsfld:IDictionary(CipherUtilities::algorithms))
|
|
stloc:DerObjectIdentifier(var_23_9B, ldsfld:DerObjectIdentifier(NistObjectIdentifiers::IdAes256Ecb))
|
|
stloc:IDictionary(var_25_A2, ldsfld:IDictionary(CipherUtilities::algorithms))
|
|
stloc:IDictionary(var_27_A9, ldsfld:IDictionary(CipherUtilities::algorithms))
|
|
stloc:IDictionary(var_29_B0, ldsfld:IDictionary(CipherUtilities::algorithms))
|
|
stloc:IDictionary(var_31_B7, ldsfld:IDictionary(CipherUtilities::algorithms))
|
|
stloc:IDictionary(var_33_BE, ldsfld:IDictionary(CipherUtilities::algorithms))
|
|
stloc:DerObjectIdentifier(var_34_C5, ldsfld:DerObjectIdentifier(NistObjectIdentifiers::IdAes128Cbc))
|
|
stloc:IDictionary(var_36_CC, ldsfld:IDictionary(CipherUtilities::algorithms))
|
|
stloc:DerObjectIdentifier(var_37_D3, ldsfld:DerObjectIdentifier(NistObjectIdentifiers::IdAes192Cbc))
|
|
stloc:IDictionary(var_39_DA, ldsfld:IDictionary(CipherUtilities::algorithms))
|
|
stloc:DerObjectIdentifier(var_40_E1, ldsfld:DerObjectIdentifier(NistObjectIdentifiers::IdAes256Cbc))
|
|
stloc:IDictionary(var_42_E8, ldsfld:IDictionary(CipherUtilities::algorithms))
|
|
stloc:DerObjectIdentifier(var_43_EF, ldsfld:DerObjectIdentifier(NistObjectIdentifiers::IdAes128Ofb))
|
|
stloc:IDictionary(var_45_F6, ldsfld:IDictionary(CipherUtilities::algorithms))
|
|
stloc:DerObjectIdentifier(var_46_FD, ldsfld:DerObjectIdentifier(NistObjectIdentifiers::IdAes192Ofb))
|
|
stloc:IDictionary(var_48_104, ldsfld:IDictionary(CipherUtilities::algorithms))
|
|
stloc:DerObjectIdentifier(var_49_10B, ldsfld:DerObjectIdentifier(NistObjectIdentifiers::IdAes256Ofb))
|
|
stloc:IDictionary(var_51_112, ldsfld:IDictionary(CipherUtilities::algorithms))
|
|
stloc:DerObjectIdentifier(var_52_119, ldsfld:DerObjectIdentifier(NistObjectIdentifiers::IdAes128Cfb))
|
|
stloc:IDictionary(var_54_120, ldsfld:IDictionary(CipherUtilities::algorithms))
|
|
stloc:DerObjectIdentifier(var_55_127, ldsfld:DerObjectIdentifier(NistObjectIdentifiers::IdAes192Cfb))
|
|
stloc:IDictionary(var_57_12E, ldsfld:IDictionary(CipherUtilities::algorithms))
|
|
stloc:DerObjectIdentifier(var_58_135, ldsfld:DerObjectIdentifier(NistObjectIdentifiers::IdAes256Cfb))
|
|
stloc:IDictionary(var_60_13C, ldsfld:IDictionary(CipherUtilities::algorithms))
|
|
stloc:IDictionary(var_62_143, ldsfld:IDictionary(CipherUtilities::algorithms))
|
|
stloc:IDictionary(var_64_14A, ldsfld:IDictionary(CipherUtilities::algorithms))
|
|
stloc:DerObjectIdentifier(var_65_151, ldsfld:DerObjectIdentifier(PkcsObjectIdentifiers::RsaEncryption))
|
|
stloc:IDictionary(var_67_158, ldsfld:IDictionary(CipherUtilities::algorithms))
|
|
stloc:DerObjectIdentifier(var_68_15F, ldsfld:DerObjectIdentifier(PkcsObjectIdentifiers::IdRsaesOaep))
|
|
stloc:IDictionary(var_70_166, ldsfld:IDictionary(CipherUtilities::algorithms))
|
|
stloc:DerObjectIdentifier(var_71_16D, ldsfld:DerObjectIdentifier(OiwObjectIdentifiers::DesCbc))
|
|
stloc:IDictionary(var_73_174, ldsfld:IDictionary(CipherUtilities::algorithms))
|
|
stloc:DerObjectIdentifier(var_74_17B, ldsfld:DerObjectIdentifier(OiwObjectIdentifiers::DesCfb))
|
|
stloc:IDictionary(var_76_182, ldsfld:IDictionary(CipherUtilities::algorithms))
|
|
stloc:DerObjectIdentifier(var_77_189, ldsfld:DerObjectIdentifier(OiwObjectIdentifiers::DesEcb))
|
|
stloc:IDictionary(var_79_190, ldsfld:IDictionary(CipherUtilities::algorithms))
|
|
stloc:DerObjectIdentifier(var_80_197, ldsfld:DerObjectIdentifier(OiwObjectIdentifiers::DesOfb))
|
|
stloc:IDictionary(var_82_19E, ldsfld:IDictionary(CipherUtilities::algorithms))
|
|
stloc:DerObjectIdentifier(var_83_1A5, ldsfld:DerObjectIdentifier(OiwObjectIdentifiers::DesEde))
|
|
stloc:IDictionary(var_85_1AC, ldsfld:IDictionary(CipherUtilities::algorithms))
|
|
stloc:IDictionary(var_87_1B3, ldsfld:IDictionary(CipherUtilities::algorithms))
|
|
stloc:DerObjectIdentifier(var_88_1BA, ldsfld:DerObjectIdentifier(PkcsObjectIdentifiers::DesEde3Cbc))
|
|
stloc:IDictionary(var_90_1C1, ldsfld:IDictionary(CipherUtilities::algorithms))
|
|
stloc:DerObjectIdentifier(var_91_1C8, ldsfld:DerObjectIdentifier(PkcsObjectIdentifiers::RC2Cbc))
|
|
stloc:IDictionary(var_93_1CF, ldsfld:IDictionary(CipherUtilities::algorithms))
|
|
stloc:IDictionary(var_95_1D6, ldsfld:IDictionary(CipherUtilities::algorithms))
|
|
stloc:IDictionary(var_97_1DD, ldsfld:IDictionary(CipherUtilities::algorithms))
|
|
stloc:IDictionary(var_99_1E4, ldsfld:IDictionary(CipherUtilities::algorithms))
|
|
stloc:IDictionary(var_101_1EB, ldsfld:IDictionary(CipherUtilities::algorithms))
|
|
stloc:IDictionary(var_103_1F2, ldsfld:IDictionary(CipherUtilities::algorithms))
|
|
stloc:IDictionary(var_105_1F9, ldsfld:IDictionary(CipherUtilities::algorithms))
|
|
stloc:DerObjectIdentifier(var_106_200, ldsfld:DerObjectIdentifier(PkcsObjectIdentifiers::PbeWithShaAnd128BitRC4))
|
|
stloc:IDictionary(var_108_207, ldsfld:IDictionary(CipherUtilities::algorithms))
|
|
stloc:IDictionary(var_110_20E, ldsfld:IDictionary(CipherUtilities::algorithms))
|
|
stloc:DerObjectIdentifier(var_111_215, ldsfld:DerObjectIdentifier(PkcsObjectIdentifiers::PbeWithShaAnd40BitRC4))
|
|
stloc:IDictionary(var_113_21C, ldsfld:IDictionary(CipherUtilities::algorithms))
|
|
stloc:IDictionary(var_115_223, ldsfld:IDictionary(CipherUtilities::algorithms))
|
|
stloc:DerObjectIdentifier(var_116_22A, ldsfld:DerObjectIdentifier(PkcsObjectIdentifiers::PbeWithSha1AndDesCbc))
|
|
stloc:IDictionary(var_118_231, ldsfld:IDictionary(CipherUtilities::algorithms))
|
|
stloc:IDictionary(var_120_238, ldsfld:IDictionary(CipherUtilities::algorithms))
|
|
stloc:DerObjectIdentifier(var_121_23F, ldsfld:DerObjectIdentifier(PkcsObjectIdentifiers::PbeWithSha1AndRC2Cbc))
|
|
stloc:IDictionary(var_123_246, ldsfld:IDictionary(CipherUtilities::algorithms))
|
|
stloc:IDictionary(var_125_24D, ldsfld:IDictionary(CipherUtilities::algorithms))
|
|
stloc:IDictionary(var_127_254, ldsfld:IDictionary(CipherUtilities::algorithms))
|
|
stloc:DerObjectIdentifier(var_128_25B, ldsfld:DerObjectIdentifier(PkcsObjectIdentifiers::PbeWithShaAnd3KeyTripleDesCbc))
|
|
stloc:IDictionary(var_130_262, ldsfld:IDictionary(CipherUtilities::algorithms))
|
|
stloc:IDictionary(var_132_269, ldsfld:IDictionary(CipherUtilities::algorithms))
|
|
stloc:IDictionary(var_134_270, ldsfld:IDictionary(CipherUtilities::algorithms))
|
|
stloc:DerObjectIdentifier(var_135_277, ldsfld:DerObjectIdentifier(PkcsObjectIdentifiers::PbeWithShaAnd2KeyTripleDesCbc))
|
|
stloc:IDictionary(var_137_27E, ldsfld:IDictionary(CipherUtilities::algorithms))
|
|
stloc:IDictionary(var_139_285, ldsfld:IDictionary(CipherUtilities::algorithms))
|
|
stloc:DerObjectIdentifier(var_140_28C, ldsfld:DerObjectIdentifier(PkcsObjectIdentifiers::PbeWithShaAnd128BitRC2Cbc))
|
|
stloc:IDictionary(var_142_293, ldsfld:IDictionary(CipherUtilities::algorithms))
|
|
stloc:IDictionary(var_144_29A, ldsfld:IDictionary(CipherUtilities::algorithms))
|
|
stloc:DerObjectIdentifier(var_145_2A1, ldsfld:DerObjectIdentifier(PkcsObjectIdentifiers::PbewithShaAnd40BitRC2Cbc))
|
|
stloc:IDictionary(var_147_2A8, ldsfld:IDictionary(CipherUtilities::algorithms))
|
|
stloc:IDictionary(var_149_2AF, ldsfld:IDictionary(CipherUtilities::algorithms))
|
|
stloc:IDictionary(var_151_2B6, ldsfld:IDictionary(CipherUtilities::algorithms))
|
|
stloc:IDictionary(var_153_2BD, ldsfld:IDictionary(CipherUtilities::algorithms))
|
|
stloc:IDictionary(var_155_2C4, ldsfld:IDictionary(CipherUtilities::algorithms))
|
|
stloc:IDictionary(var_157_2CB, ldsfld:IDictionary(CipherUtilities::algorithms))
|
|
stloc:IDictionary(var_159_2D2, ldsfld:IDictionary(CipherUtilities::algorithms))
|
|
}
|
|
|
|
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: 0x06009CAA RID: 40106 RVA: 0x0020B044 File Offset: 0x00209244
|
|
[Token(Token = "0x6009CAA")]
|
|
[Address(RVA = "0x3F5100", Offset = "0x3F3F00", VA = "0x1803F5100")]
|
|
private CipherUtilities()
|
|
{
|
|
}
|
|
|
|
// Token: 0x06009CAB RID: 40107 RVA: 0x0020B058 File Offset: 0x00209258
|
|
[Token(Token = "0x6009CAB")]
|
|
[Address(RVA = "0x19A7F00", Offset = "0x19A6D00", VA = "0x1819A7F00")]
|
|
public static DerObjectIdentifier GetObjectIdentifier(string mechanism)
|
|
{
|
|
/*
|
|
An exception occurred when decompiling this method (06009CAB)
|
|
|
|
ICSharpCode.Decompiler.DecompilerException: Error decompiling BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.DerObjectIdentifier BestHTTP.SecureProtocol.Org.BouncyCastle.Security.CipherUtilities::GetObjectIdentifier(System.String)
|
|
|
|
---> System.Exception: Basic block has to end with unconditional control flow.
|
|
{
|
|
IL_2E:
|
|
stloc:ArgumentNullException(var_7_38, newobj:ArgumentNullException(ArgumentNullException::.ctor, ldstr:string("mechanism")))
|
|
}
|
|
|
|
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: 0x17001904 RID: 6404
|
|
// (get) Token: 0x06009CAC RID: 40108 RVA: 0x0020B0A0 File Offset: 0x002092A0
|
|
[Token(Token = "0x17001904")]
|
|
public static ICollection Algorithms
|
|
{
|
|
[Token(Token = "0x6009CAC")]
|
|
[Address(RVA = "0x19A9800", Offset = "0x19A8600", VA = "0x1819A9800")]
|
|
get
|
|
{
|
|
IDictionary dictionary = CipherUtilities.oids;
|
|
throw new NullReferenceException();
|
|
}
|
|
}
|
|
|
|
// Token: 0x06009CAD RID: 40109 RVA: 0x0020B0B8 File Offset: 0x002092B8
|
|
[Token(Token = "0x6009CAD")]
|
|
[Address(RVA = "0x19A6400", Offset = "0x19A5200", VA = "0x1819A6400")]
|
|
public static IBufferedCipher GetCipher(DerObjectIdentifier oid)
|
|
{
|
|
return CipherUtilities.GetCipher(oid.identifier);
|
|
}
|
|
|
|
// Token: 0x06009CAE RID: 40110 RVA: 0x0020B0D8 File Offset: 0x002092D8
|
|
[Token(Token = "0x6009CAE")]
|
|
[Address(RVA = "0x19A6460", Offset = "0x19A5260", VA = "0x1819A6460")]
|
|
public static IBufferedCipher GetCipher(string algorithm)
|
|
{
|
|
/*
|
|
An exception occurred when decompiling this method (06009CAE)
|
|
|
|
ICSharpCode.Decompiler.DecompilerException: Error decompiling BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.IBufferedCipher BestHTTP.SecureProtocol.Org.BouncyCastle.Security.CipherUtilities::GetCipher(System.String)
|
|
|
|
---> System.Exception: Basic block has to end with unconditional control flow.
|
|
{
|
|
IL_535:
|
|
stloc:Kdf2BytesGenerator(var_102_53F, newobj:Kdf2BytesGenerator(Kdf2BytesGenerator::.ctor, newobj:Sha1Digest[exp:IDigest](Sha1Digest::.ctor)))
|
|
}
|
|
|
|
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: 0x06009CAF RID: 40111 RVA: 0x0020B628 File Offset: 0x00209828
|
|
[Token(Token = "0x6009CAF")]
|
|
[Address(RVA = "0x19A6350", Offset = "0x19A5150", VA = "0x1819A6350")]
|
|
public static string GetAlgorithmName(DerObjectIdentifier oid)
|
|
{
|
|
IDictionary dictionary = CipherUtilities.algorithms;
|
|
throw new NullReferenceException();
|
|
}
|
|
|
|
// Token: 0x06009CB0 RID: 40112 RVA: 0x0020B640 File Offset: 0x00209840
|
|
[Token(Token = "0x6009CB0")]
|
|
[Address(RVA = "0x19A7E50", Offset = "0x19A6C50", VA = "0x1819A7E50")]
|
|
private static int GetDigitIndex(string s)
|
|
{
|
|
int num = 0;
|
|
if (num < s.m_stringLength)
|
|
{
|
|
if (!char.IsDigit(s[num]))
|
|
{
|
|
num++;
|
|
}
|
|
return num;
|
|
}
|
|
return -1;
|
|
}
|
|
|
|
// Token: 0x06009CB1 RID: 40113 RVA: 0x0020B674 File Offset: 0x00209874
|
|
[Token(Token = "0x6009CB1")]
|
|
[Address(RVA = "0x19A5E90", Offset = "0x19A4C90", VA = "0x1819A5E90")]
|
|
private static IBlockCipher CreateBlockCipher(CipherUtilities.CipherAlgorithm cipherAlgorithm)
|
|
{
|
|
/*
|
|
An exception occurred when decompiling this method (06009CB1)
|
|
|
|
ICSharpCode.Decompiler.DecompilerException: Error decompiling BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.IBlockCipher BestHTTP.SecureProtocol.Org.BouncyCastle.Security.CipherUtilities::CreateBlockCipher(BestHTTP.SecureProtocol.Org.BouncyCastle.Security.CipherUtilities/CipherAlgorithm)
|
|
|
|
---> System.Exception: Basic block has to end with unconditional control flow.
|
|
{
|
|
IL_C3:
|
|
stloc:SecurityUtilityException(var_30_D8, newobj:SecurityUtilityException(SecurityUtilityException::.ctor, call:string(string::Concat, ldstr:string[exp:object]("Cipher "), ldloc:CipherAlgorithm[exp:object](cipherAlgorithm), ldstr:string[exp:object](" not recognised or not a block cipher"))))
|
|
}
|
|
|
|
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: 0x04006958 RID: 26968
|
|
[Token(Token = "0x4006958")]
|
|
private static readonly IDictionary algorithms;
|
|
|
|
// Token: 0x04006959 RID: 26969
|
|
[Token(Token = "0x4006959")]
|
|
private static readonly IDictionary oids;
|
|
|
|
// Token: 0x020019A2 RID: 6562
|
|
[Token(Token = "0x20019A2")]
|
|
private enum CipherAlgorithm
|
|
{
|
|
// Token: 0x0400695B RID: 26971
|
|
[Token(Token = "0x400695B")]
|
|
AES,
|
|
// Token: 0x0400695C RID: 26972
|
|
[Token(Token = "0x400695C")]
|
|
ARC4,
|
|
// Token: 0x0400695D RID: 26973
|
|
[Token(Token = "0x400695D")]
|
|
BLOWFISH,
|
|
// Token: 0x0400695E RID: 26974
|
|
[Token(Token = "0x400695E")]
|
|
CAMELLIA,
|
|
// Token: 0x0400695F RID: 26975
|
|
[Token(Token = "0x400695F")]
|
|
CAST5,
|
|
// Token: 0x04006960 RID: 26976
|
|
[Token(Token = "0x4006960")]
|
|
CAST6,
|
|
// Token: 0x04006961 RID: 26977
|
|
[Token(Token = "0x4006961")]
|
|
DES,
|
|
// Token: 0x04006962 RID: 26978
|
|
[Token(Token = "0x4006962")]
|
|
DESEDE,
|
|
// Token: 0x04006963 RID: 26979
|
|
[Token(Token = "0x4006963")]
|
|
ELGAMAL,
|
|
// Token: 0x04006964 RID: 26980
|
|
[Token(Token = "0x4006964")]
|
|
GOST28147,
|
|
// Token: 0x04006965 RID: 26981
|
|
[Token(Token = "0x4006965")]
|
|
HC128,
|
|
// Token: 0x04006966 RID: 26982
|
|
[Token(Token = "0x4006966")]
|
|
HC256,
|
|
// Token: 0x04006967 RID: 26983
|
|
[Token(Token = "0x4006967")]
|
|
IDEA,
|
|
// Token: 0x04006968 RID: 26984
|
|
[Token(Token = "0x4006968")]
|
|
NOEKEON,
|
|
// Token: 0x04006969 RID: 26985
|
|
[Token(Token = "0x4006969")]
|
|
PBEWITHSHAAND128BITRC4,
|
|
// Token: 0x0400696A RID: 26986
|
|
[Token(Token = "0x400696A")]
|
|
PBEWITHSHAAND40BITRC4,
|
|
// Token: 0x0400696B RID: 26987
|
|
[Token(Token = "0x400696B")]
|
|
RC2,
|
|
// Token: 0x0400696C RID: 26988
|
|
[Token(Token = "0x400696C")]
|
|
RC5,
|
|
// Token: 0x0400696D RID: 26989
|
|
[Token(Token = "0x400696D")]
|
|
RC5_64,
|
|
// Token: 0x0400696E RID: 26990
|
|
[Token(Token = "0x400696E")]
|
|
RC6,
|
|
// Token: 0x0400696F RID: 26991
|
|
[Token(Token = "0x400696F")]
|
|
RIJNDAEL,
|
|
// Token: 0x04006970 RID: 26992
|
|
[Token(Token = "0x4006970")]
|
|
RSA,
|
|
// Token: 0x04006971 RID: 26993
|
|
[Token(Token = "0x4006971")]
|
|
SALSA20,
|
|
// Token: 0x04006972 RID: 26994
|
|
[Token(Token = "0x4006972")]
|
|
SEED,
|
|
// Token: 0x04006973 RID: 26995
|
|
[Token(Token = "0x4006973")]
|
|
SERPENT,
|
|
// Token: 0x04006974 RID: 26996
|
|
[Token(Token = "0x4006974")]
|
|
SKIPJACK,
|
|
// Token: 0x04006975 RID: 26997
|
|
[Token(Token = "0x4006975")]
|
|
SM4,
|
|
// Token: 0x04006976 RID: 26998
|
|
[Token(Token = "0x4006976")]
|
|
TEA,
|
|
// Token: 0x04006977 RID: 26999
|
|
[Token(Token = "0x4006977")]
|
|
THREEFISH_256,
|
|
// Token: 0x04006978 RID: 27000
|
|
[Token(Token = "0x4006978")]
|
|
THREEFISH_512,
|
|
// Token: 0x04006979 RID: 27001
|
|
[Token(Token = "0x4006979")]
|
|
THREEFISH_1024,
|
|
// Token: 0x0400697A RID: 27002
|
|
[Token(Token = "0x400697A")]
|
|
TNEPRES,
|
|
// Token: 0x0400697B RID: 27003
|
|
[Token(Token = "0x400697B")]
|
|
TWOFISH,
|
|
// Token: 0x0400697C RID: 27004
|
|
[Token(Token = "0x400697C")]
|
|
VMPC,
|
|
// Token: 0x0400697D RID: 27005
|
|
[Token(Token = "0x400697D")]
|
|
VMPC_KSA3,
|
|
// Token: 0x0400697E RID: 27006
|
|
[Token(Token = "0x400697E")]
|
|
XTEA
|
|
}
|
|
|
|
// Token: 0x020019A3 RID: 6563
|
|
[Token(Token = "0x20019A3")]
|
|
private enum CipherMode
|
|
{
|
|
// Token: 0x04006980 RID: 27008
|
|
[Token(Token = "0x4006980")]
|
|
ECB,
|
|
// Token: 0x04006981 RID: 27009
|
|
[Token(Token = "0x4006981")]
|
|
NONE,
|
|
// Token: 0x04006982 RID: 27010
|
|
[Token(Token = "0x4006982")]
|
|
CBC,
|
|
// Token: 0x04006983 RID: 27011
|
|
[Token(Token = "0x4006983")]
|
|
CCM,
|
|
// Token: 0x04006984 RID: 27012
|
|
[Token(Token = "0x4006984")]
|
|
CFB,
|
|
// Token: 0x04006985 RID: 27013
|
|
[Token(Token = "0x4006985")]
|
|
CTR,
|
|
// Token: 0x04006986 RID: 27014
|
|
[Token(Token = "0x4006986")]
|
|
CTS,
|
|
// Token: 0x04006987 RID: 27015
|
|
[Token(Token = "0x4006987")]
|
|
EAX,
|
|
// Token: 0x04006988 RID: 27016
|
|
[Token(Token = "0x4006988")]
|
|
GCM,
|
|
// Token: 0x04006989 RID: 27017
|
|
[Token(Token = "0x4006989")]
|
|
GOFB,
|
|
// Token: 0x0400698A RID: 27018
|
|
[Token(Token = "0x400698A")]
|
|
OCB,
|
|
// Token: 0x0400698B RID: 27019
|
|
[Token(Token = "0x400698B")]
|
|
OFB,
|
|
// Token: 0x0400698C RID: 27020
|
|
[Token(Token = "0x400698C")]
|
|
OPENPGPCFB,
|
|
// Token: 0x0400698D RID: 27021
|
|
[Token(Token = "0x400698D")]
|
|
SIC
|
|
}
|
|
|
|
// Token: 0x020019A4 RID: 6564
|
|
[Token(Token = "0x20019A4")]
|
|
private enum CipherPadding
|
|
{
|
|
// Token: 0x0400698F RID: 27023
|
|
[Token(Token = "0x400698F")]
|
|
NOPADDING,
|
|
// Token: 0x04006990 RID: 27024
|
|
[Token(Token = "0x4006990")]
|
|
RAW,
|
|
// Token: 0x04006991 RID: 27025
|
|
[Token(Token = "0x4006991")]
|
|
ISO10126PADDING,
|
|
// Token: 0x04006992 RID: 27026
|
|
[Token(Token = "0x4006992")]
|
|
ISO10126D2PADDING,
|
|
// Token: 0x04006993 RID: 27027
|
|
[Token(Token = "0x4006993")]
|
|
ISO10126_2PADDING,
|
|
// Token: 0x04006994 RID: 27028
|
|
[Token(Token = "0x4006994")]
|
|
ISO7816_4PADDING,
|
|
// Token: 0x04006995 RID: 27029
|
|
[Token(Token = "0x4006995")]
|
|
ISO9797_1PADDING,
|
|
// Token: 0x04006996 RID: 27030
|
|
[Token(Token = "0x4006996")]
|
|
ISO9796_1,
|
|
// Token: 0x04006997 RID: 27031
|
|
[Token(Token = "0x4006997")]
|
|
ISO9796_1PADDING,
|
|
// Token: 0x04006998 RID: 27032
|
|
[Token(Token = "0x4006998")]
|
|
OAEP,
|
|
// Token: 0x04006999 RID: 27033
|
|
[Token(Token = "0x4006999")]
|
|
OAEPPADDING,
|
|
// Token: 0x0400699A RID: 27034
|
|
[Token(Token = "0x400699A")]
|
|
OAEPWITHMD5ANDMGF1PADDING,
|
|
// Token: 0x0400699B RID: 27035
|
|
[Token(Token = "0x400699B")]
|
|
OAEPWITHSHA1ANDMGF1PADDING,
|
|
// Token: 0x0400699C RID: 27036
|
|
[Token(Token = "0x400699C")]
|
|
OAEPWITHSHA_1ANDMGF1PADDING,
|
|
// Token: 0x0400699D RID: 27037
|
|
[Token(Token = "0x400699D")]
|
|
OAEPWITHSHA224ANDMGF1PADDING,
|
|
// Token: 0x0400699E RID: 27038
|
|
[Token(Token = "0x400699E")]
|
|
OAEPWITHSHA_224ANDMGF1PADDING,
|
|
// Token: 0x0400699F RID: 27039
|
|
[Token(Token = "0x400699F")]
|
|
OAEPWITHSHA256ANDMGF1PADDING,
|
|
// Token: 0x040069A0 RID: 27040
|
|
[Token(Token = "0x40069A0")]
|
|
OAEPWITHSHA_256ANDMGF1PADDING,
|
|
// Token: 0x040069A1 RID: 27041
|
|
[Token(Token = "0x40069A1")]
|
|
OAEPWITHSHA384ANDMGF1PADDING,
|
|
// Token: 0x040069A2 RID: 27042
|
|
[Token(Token = "0x40069A2")]
|
|
OAEPWITHSHA_384ANDMGF1PADDING,
|
|
// Token: 0x040069A3 RID: 27043
|
|
[Token(Token = "0x40069A3")]
|
|
OAEPWITHSHA512ANDMGF1PADDING,
|
|
// Token: 0x040069A4 RID: 27044
|
|
[Token(Token = "0x40069A4")]
|
|
OAEPWITHSHA_512ANDMGF1PADDING,
|
|
// Token: 0x040069A5 RID: 27045
|
|
[Token(Token = "0x40069A5")]
|
|
PKCS1,
|
|
// Token: 0x040069A6 RID: 27046
|
|
[Token(Token = "0x40069A6")]
|
|
PKCS1PADDING,
|
|
// Token: 0x040069A7 RID: 27047
|
|
[Token(Token = "0x40069A7")]
|
|
PKCS5,
|
|
// Token: 0x040069A8 RID: 27048
|
|
[Token(Token = "0x40069A8")]
|
|
PKCS5PADDING,
|
|
// Token: 0x040069A9 RID: 27049
|
|
[Token(Token = "0x40069A9")]
|
|
PKCS7,
|
|
// Token: 0x040069AA RID: 27050
|
|
[Token(Token = "0x40069AA")]
|
|
PKCS7PADDING,
|
|
// Token: 0x040069AB RID: 27051
|
|
[Token(Token = "0x40069AB")]
|
|
TBCPADDING,
|
|
// Token: 0x040069AC RID: 27052
|
|
[Token(Token = "0x40069AC")]
|
|
WITHCTS,
|
|
// Token: 0x040069AD RID: 27053
|
|
[Token(Token = "0x40069AD")]
|
|
X923PADDING,
|
|
// Token: 0x040069AE RID: 27054
|
|
[Token(Token = "0x40069AE")]
|
|
ZEROBYTEPADDING
|
|
}
|
|
}
|
|
}
|