terraria-cpp2il-methodrecon v1.4.4.9
Terraria mobile dump, with reconstructed method body. Dump with CallAnalysis: https://infinitynichto.github.io/terraria-cpp2il
Loading...
Searching...
No Matches
PrivateKey.cs
Go to the documentation of this file.
1using System;
3
5{
6 // Token: 0x02000061 RID: 97
7 public class PrivateKey
8 {
9 // Token: 0x060002A8 RID: 680 RVA: 0x0000B004 File Offset: 0x00009204
10 public PrivateKey(byte[] data, string password)
11 {
12 /*
13An exception occurred when decompiling this method (060002A8)
14
15ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void Mono.Security.Authenticode.PrivateKey::.ctor(System.Byte[],System.String)
16
17 ---> System.Exception: Basic block has to end with unconditional control flow.
18{
19 IL_0013:
20 stloc:string(var_1_1D, call:string(Locale::GetText, ldstr:string("Invalid data and/or password")))
21}
22
23 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
24 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
25 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
26 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
27 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
28 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
29 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
30 --- End of inner exception stack trace ---
31 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
32 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 1683
33*/;
34 }
35
36 // Token: 0x170000BF RID: 191
37 // (get) Token: 0x060002A9 RID: 681 RVA: 0x0000B030 File Offset: 0x00009230
38 public RSA RSA
39 {
40 get
41 {
42 return this.rsa;
43 }
44 }
45
46 // Token: 0x060002AA RID: 682 RVA: 0x0000B044 File Offset: 0x00009244
47 private byte[] DeriveKey(byte[] salt, string password)
48 {
49 /*
50An exception occurred when decompiling this method (060002AA)
51
52ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Byte[] Mono.Security.Authenticode.PrivateKey::DeriveKey(System.Byte[],System.String)
53
54 ---> System.Exception: Basic block has to end with unconditional control flow.
55{
56 Block_0:
57 stloc:Encoding(var_1_07, callgetter:Encoding(Encoding::get_ASCII))
58 stloc:SHA1(var_3_0F, call:SHA1(SHA1::Create))
59 stloc:CodePageDataItem(var_5_16, ldfld:CodePageDataItem(Encoding::dataItem, ldloc:Encoding(var_1_07)))
60 call:void(HashAlgorithm::Clear, ldloc:SHA1[exp:HashAlgorithm](var_3_0F))
61 stloc:CodePageDataItem(var_7_24, ldfld:CodePageDataItem(Encoding::dataItem, ldloc:Encoding(var_1_07)))
62}
63
64 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
65 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
66 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
67 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
68 --- End of inner exception stack trace ---
69 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
70 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 1683
71*/;
72 }
73
74 // Token: 0x060002AB RID: 683 RVA: 0x0000B078 File Offset: 0x00009278
75 private bool Decode(byte[] pvk, string password)
76 {
77 /*
78An exception occurred when decompiling this method (060002AB)
79
80ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Boolean Mono.Security.Authenticode.PrivateKey::Decode(System.Byte[],System.String)
81
82 ---> System.Exception: Basic block has to end with unconditional control flow.
83{
84 IL_00B8:
85 stloc:RC4(var_25_C0, call:RC4(RC4::Create))
86 stloc:RSA(var_26_C9, call:RSA(CryptoConvert::FromCapiPrivateKeyBlob, ldloc:uint8[](var_13)))
87 stfld:RSA(PrivateKey::rsa, ldloc:PrivateKey(this), ldloc:RSA(var_26_C9))
88}
89
90 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
91 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
92 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
93 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
94 --- End of inner exception stack trace ---
95 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
96 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 1683
97*/;
98 }
99
100 // Token: 0x060002AC RID: 684 RVA: 0x0000B158 File Offset: 0x00009358
101 public static PrivateKey CreateFromFile(string filename)
102 {
104 return privateKey;
105 }
106
107 // Token: 0x060002AD RID: 685 RVA: 0x0000B168 File Offset: 0x00009368
108 public static PrivateKey CreateFromFile(string filename, string password)
109 {
110 long num = 0L;
111 int num2 = 7;
112 if (num != 0L || num2 == 0)
113 {
114 }
115 throw new OutOfMemoryException();
116 }
117
118 // Token: 0x04000290 RID: 656
119 private bool encrypted;
120
121 // Token: 0x04000291 RID: 657
122 private RSA rsa;
123
124 // Token: 0x04000292 RID: 658
125 private bool weak;
126
127 // Token: 0x04000293 RID: 659
128 private int keyType;
129 }
130}
class f__AnonymousType0<< Count > j__TPar
byte[] DeriveKey(byte[] salt, string password)
Definition PrivateKey.cs:47
bool Decode(byte[] pvk, string password)
Definition PrivateKey.cs:75
PrivateKey(byte[] data, string password)
Definition PrivateKey.cs:10
static PrivateKey CreateFromFile(string filename)
static PrivateKey CreateFromFile(string filename, string password)