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
SecureStringHasher.cs
Go to the documentation of this file.
1using System;
5
6namespace System.Xml
7{
8 // Token: 0x0200002A RID: 42
9 internal class SecureStringHasher : IEqualityComparer<string>
10 {
11 // Token: 0x060000D7 RID: 215 RVA: 0x00003FB0 File Offset: 0x000021B0
17
18 // Token: 0x060000D8 RID: 216 RVA: 0x00003FD4 File Offset: 0x000021D4
19 public bool Equals(string x, string y)
20 {
21 bool flag;
22 return flag;
23 }
24
25 // Token: 0x060000D9 RID: 217 RVA: 0x00003FE4 File Offset: 0x000021E4
26 public int GetHashCode(string key)
27 {
28 /*
29An exception occurred when decompiling this method (060000D9)
30
31ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Int32 System.Xml.SecureStringHasher::GetHashCode(System.String)
32
33 ---> System.Exception: Basic block has to end with unconditional control flow.
34{
35 Block_0:
36 stloc:HashCodeOfStringDelegate(var_0_05, call:HashCodeOfStringDelegate(SecureStringHasher::GetHashCodeDelegate))
37 stloc:int32(var_1_0C, ldfld:int32(string::_stringLength, ldloc:string(key)))
38}
39
40 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
41 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
42 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
43 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
44 --- End of inner exception stack trace ---
45 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
46 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
47*/;
48 }
49
50 // Token: 0x060000DA RID: 218 RVA: 0x00003FFD File Offset: 0x000021FD
51 private static int GetHashCodeOfString(string key, int sLen, long additionalEntropy)
52 {
53 throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
54 }
55
56 // Token: 0x060000DB RID: 219 RVA: 0x0000400C File Offset: 0x0000220C
58 {
59 MethodInfo method;
60 Type type2;
61 do
62 {
63 if (!true)
64 {
65 }
66 Type type;
67 method = type.GetMethod("InternalMarvin32HashString", BindingFlags.Static | BindingFlags.NonPublic);
68 }
69 while (Delegate.CreateDelegate(type2, method) == null);
70 throw new InvalidCastException();
71 }
72
73 // Token: 0x04000073 RID: 115
75
76 // Token: 0x04000074 RID: 116
77 private int hashCodeRandomizer;
78
79 // Token: 0x0200002B RID: 43
81 {
82 // Token: 0x060000DC RID: 220 RVA: 0x0000403C File Offset: 0x0000223C
83 public HashCodeOfStringDelegate(object @object, IntPtr method)
84 {
86 this.m_target = @object;
88 this.method_code = this;
89 }
90
91 // Token: 0x060000DD RID: 221 RVA: 0x00004090 File Offset: 0x00002290
92 public int Invoke(string s, int sLen, long additionalEntropy)
93 {
94 /*
95An exception occurred when decompiling this method (060000DD)
96
97ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Int32 System.Xml.SecureStringHasher/HashCodeOfStringDelegate::Invoke(System.String,System.Int32,System.Int64)
98
99 ---> System.Exception: Basic block has to end with unconditional control flow.
100{
101 Block_0:
102 stloc:native int(var_0_06, ldfld:native int(Delegate::method_code, ldloc:HashCodeOfStringDelegate[exp:Delegate](this)))
103 stloc:native int(var_1_0D, ldfld:native int(Delegate::invoke_impl, ldloc:HashCodeOfStringDelegate[exp:Delegate](this)))
104 stloc:native int(var_2_14, ldfld:native int(Delegate::method, ldloc:HashCodeOfStringDelegate[exp:Delegate](this)))
105}
106
107 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
108 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
109 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
110 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
111 --- End of inner exception stack trace ---
112 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
113 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
114*/;
115 }
116 }
117 }
118}
class f__AnonymousType0<< Count > j__TPar
static Delegate CreateDelegate(Type type, object firstArgument, MethodInfo method, bool throwOnBindFailure, bool allowClosed)
Definition Delegate.cs:76
static int TickCount
MethodInfo GetMethod(string name)
Definition Type.cs:945
int Invoke(string s, int sLen, long additionalEntropy)
static SecureStringHasher.HashCodeOfStringDelegate hashCodeDelegate
static int GetHashCodeOfString(string key, int sLen, long additionalEntropy)
bool Equals(string x, string y)
static SecureStringHasher.HashCodeOfStringDelegate GetHashCodeDelegate()