a
This commit is contained in:
@@ -0,0 +1,168 @@
|
||||
using System;
|
||||
using System.Collections;
|
||||
using BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Tls
|
||||
{
|
||||
// Token: 0x02001B59 RID: 7001
|
||||
[Token(Token = "0x2001B59")]
|
||||
public class SrpTlsClient : AbstractTlsClient
|
||||
{
|
||||
// Token: 0x0600ADF4 RID: 44532 RVA: 0x0025D910 File Offset: 0x0025BB10
|
||||
[Token(Token = "0x600ADF4")]
|
||||
[Address(RVA = "0x197B5A0", Offset = "0x197A3A0", VA = "0x18197B5A0")]
|
||||
public SrpTlsClient(byte[] identity, byte[] password)
|
||||
{
|
||||
DefaultTlsCipherFactory defaultTlsCipherFactory = new DefaultTlsCipherFactory();
|
||||
DefaultTlsSrpGroupVerifier defaultTlsSrpGroupVerifier = new DefaultTlsSrpGroupVerifier();
|
||||
}
|
||||
|
||||
// Token: 0x0600ADF5 RID: 44533 RVA: 0x0025D92C File Offset: 0x0025BB2C
|
||||
[Token(Token = "0x600ADF5")]
|
||||
[Address(RVA = "0x197B650", Offset = "0x197A450", VA = "0x18197B650")]
|
||||
public SrpTlsClient(TlsCipherFactory cipherFactory, byte[] identity, byte[] password)
|
||||
{
|
||||
DefaultTlsSrpGroupVerifier defaultTlsSrpGroupVerifier = new DefaultTlsSrpGroupVerifier();
|
||||
}
|
||||
|
||||
// Token: 0x0600ADF6 RID: 44534 RVA: 0x0025D940 File Offset: 0x0025BB40
|
||||
[Token(Token = "0x600ADF6")]
|
||||
[Address(RVA = "0x197B500", Offset = "0x197A300", VA = "0x18197B500")]
|
||||
public SrpTlsClient(TlsCipherFactory cipherFactory, TlsSrpGroupVerifier groupVerifier, byte[] identity, byte[] password)
|
||||
: base(cipherFactory)
|
||||
{
|
||||
this.mGroupVerifier = groupVerifier;
|
||||
byte[] array = Arrays.Clone(identity);
|
||||
this.mIdentity = array;
|
||||
byte[] array2;
|
||||
this.mPassword = array2;
|
||||
}
|
||||
|
||||
// Token: 0x17001B98 RID: 7064
|
||||
// (get) Token: 0x0600ADF7 RID: 44535 RVA: 0x0025D970 File Offset: 0x0025BB70
|
||||
[Token(Token = "0x17001B98")]
|
||||
protected virtual bool RequireSrpServerExtension
|
||||
{
|
||||
[Token(Token = "0x600ADF7")]
|
||||
[Address(RVA = "0x403930", Offset = "0x402730", VA = "0x180403930", Slot = "61")]
|
||||
get
|
||||
{
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x0600ADF8 RID: 44536 RVA: 0x0025D980 File Offset: 0x0025BB80
|
||||
[Token(Token = "0x600ADF8")]
|
||||
[Address(RVA = "0x197B2B0", Offset = "0x197A0B0", VA = "0x18197B2B0", Slot = "50")]
|
||||
public override int[] GetCipherSuites()
|
||||
{
|
||||
return new int[] { (int)((ulong)49182L) };
|
||||
}
|
||||
|
||||
// Token: 0x0600ADF9 RID: 44537 RVA: 0x0025D9AC File Offset: 0x0025BBAC
|
||||
[Token(Token = "0x600ADF9")]
|
||||
[Address(RVA = "0x197B310", Offset = "0x197A110", VA = "0x18197B310", Slot = "47")]
|
||||
public override IDictionary GetClientExtensions()
|
||||
{
|
||||
IDictionary clientExtensions = base.GetClientExtensions();
|
||||
if (clientExtensions == 0)
|
||||
{
|
||||
IDictionary dictionary = Platform.CreateHashtable();
|
||||
}
|
||||
byte[] array = this.mIdentity;
|
||||
TlsSrpUtilities.AddSrpExtension(clientExtensions, array);
|
||||
return clientExtensions;
|
||||
}
|
||||
|
||||
// Token: 0x0600ADFA RID: 44538 RVA: 0x0025D9DC File Offset: 0x0025BBDC
|
||||
[Token(Token = "0x600ADFA")]
|
||||
[Address(RVA = "0x197B440", Offset = "0x197A240", VA = "0x18197B440", Slot = "55")]
|
||||
public override void ProcessServerExtensions(IDictionary serverExtensions)
|
||||
{
|
||||
bool flag;
|
||||
if (!flag)
|
||||
{
|
||||
}
|
||||
base.ProcessServerExtensions(serverExtensions);
|
||||
}
|
||||
|
||||
// Token: 0x0600ADFB RID: 44539 RVA: 0x0025D9F4 File Offset: 0x0025BBF4
|
||||
[Token(Token = "0x600ADFB")]
|
||||
[Address(RVA = "0x197B390", Offset = "0x197A190", VA = "0x18197B390", Slot = "57")]
|
||||
public override TlsKeyExchange GetKeyExchange()
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600ADFB)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Tls.TlsKeyExchange BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Tls.SrpTlsClient::GetKeyExchange()
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
Block_0:
|
||||
stloc:int32[](var_2_18, call:int32[](AbstractTlsClient::GetCipherSuites, ldloc:SrpTlsClient[exp:AbstractTlsClient](this)))
|
||||
}
|
||||
|
||||
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: 0x0600ADFC RID: 44540 RVA: 0x0000220F File Offset: 0x0000040F
|
||||
[Token(Token = "0x600ADFC")]
|
||||
[Address(RVA = "0x197B260", Offset = "0x197A060", VA = "0x18197B260", Slot = "58")]
|
||||
public override TlsAuthentication GetAuthentication()
|
||||
{
|
||||
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
||||
}
|
||||
|
||||
// Token: 0x0600ADFD RID: 44541 RVA: 0x0025DA1C File Offset: 0x0025BC1C
|
||||
[Token(Token = "0x600ADFD")]
|
||||
[Address(RVA = "0x197B1C0", Offset = "0x1979FC0", VA = "0x18197B1C0", Slot = "62")]
|
||||
protected virtual TlsKeyExchange CreateSrpKeyExchange(int keyExchange)
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600ADFD)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Tls.TlsKeyExchange BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Tls.SrpTlsClient::CreateSrpKeyExchange(System.Int32)
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
Block_0:
|
||||
stloc:IList(var_0_06, ldfld:IList(AbstractTlsClient::mSupportedSignatureAlgorithms, ldloc:SrpTlsClient[exp:AbstractTlsClient](this)))
|
||||
stloc:TlsSrpGroupVerifier(var_1_0D, ldfld:TlsSrpGroupVerifier(SrpTlsClient::mGroupVerifier, ldloc:SrpTlsClient(this)))
|
||||
stloc:uint8[](var_2_14, ldfld:uint8[](SrpTlsClient::mIdentity, ldloc:SrpTlsClient(this)))
|
||||
stloc:uint8[](var_3_1B, ldfld:uint8[](SrpTlsClient::mPassword, ldloc:SrpTlsClient(this)))
|
||||
stloc:TlsSrpKeyExchange(var_4_26, newobj:TlsSrpKeyExchange(TlsSrpKeyExchange::.ctor, ldloc:int32(keyExchange), ldloc:IList(var_0_06), ldloc:TlsSrpGroupVerifier(var_1_0D), ldloc:uint8[](var_2_14), ldloc:uint8[](var_3_1B)))
|
||||
}
|
||||
|
||||
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: 0x04006FC8 RID: 28616
|
||||
[FieldOffset(Offset = "0x50")]
|
||||
[Token(Token = "0x4006FC8")]
|
||||
protected TlsSrpGroupVerifier mGroupVerifier;
|
||||
|
||||
// Token: 0x04006FC9 RID: 28617
|
||||
[FieldOffset(Offset = "0x58")]
|
||||
[Token(Token = "0x4006FC9")]
|
||||
protected byte[] mIdentity;
|
||||
|
||||
// Token: 0x04006FCA RID: 28618
|
||||
[FieldOffset(Offset = "0x60")]
|
||||
[Token(Token = "0x4006FCA")]
|
||||
protected byte[] mPassword;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user