リフレクターを使用して vb.net アプリケーションを逆コンパイルしました
すべての文字列は次の方法で暗号化されます。
Public Shared Function smethod_0(ByVal string_0 As String) As String
Dim length As Integer = string_0.Length
Dim chArray As Char() = New Char(length - 1) {}
Dim i As Integer
For i = 0 To chArray.Length - 1
Dim ch As Char = string_0.Chars(i)
Dim num3 As Byte = CByte((ch Xor (length - i)))
Dim num4 As Byte = CByte(((ch >> 8) Xor i))
chArray(i) = DirectCast(((num4 << 8) Or num3), Char)
Next i
Return String.Intern(New String(chArray))
End Function
このメソッドは、次のような入力文字列を受け取ります。
"j" & ChrW(354) & ChrW(623) & ChrW(868)
読み取り可能な文字列を返します。
このコードを vb.net または c# で変換するにはどうすればよいですか?
Vb.net コンパイラは、xor が char/int の組み合わせに対して定義されていないため、このコードが正しくないことを訴えます。