13 Years of Service
78%
[HIDE-THANKS]
[/HIDE-THANKS]
Code:
>Imports Mono.Cecil
Imports Mono.Cecil.Cil
Imports System.IO
Imports System.Runtime.CompilerServices
Public Class SwedHack
Public Function RandArray(ByVal a As Array) As Array
Dim list2 As New List(Of Object)
list2.AddRange(DirectCast(a, IEnumerable(Of Object)))
Dim list As New List(Of Object)
Do While (list2.Count <> 0)
Dim index As Integer = rnd(0, (list2.Count - 1))
list.Add(RuntimeHelpers.GetObjectValue(RuntimeHelpers.GetObjectValue(RuntimeHelpers.GetObjectValue(list2.Item(index)))))
list2.RemoveAt(index)
Loop
Return list.ToArray
End Function
Public Function randz(ByVal f As String) As String
Dim str2 As String
f = f.Replace("""", "")
If File.Exists((f & ".il")) Then
File.Delete((f & ".il"))
End If
File.Move(f, (f & ".il"))
Dim definition As AssemblyDefinition = AssemblyDefinition.ReadAssembly((f & ".il"))
Dim definition2 As ModuleDefinition
For Each definition2 In definition.Modules
wrt(("Module: " & definition2.Name))
Dim definition3 As TypeDefinition
For Each definition3 In definition2.Types
Dim str3 As String = RN()
wrt(("CLASS: " & definition3.Name & " > " & str3))
definition3.Name = str3
Dim definition4 As PropertyDefinition
For Each definition4 In definition3.Properties
str3 = RN()
wrt(("Properties: " & definition4.Name & " > " & str3))
definition4.Name = str3
str3 = RN()
definition4.PropertyType = definition2.Import(GetType(Object))
wrt(("*Type " & definition4.PropertyType.Name & " > " & str3))
definition4.PropertyType.Name = str3
Next
If (definition3.Properties.Count > 0) Then
Dim enumerator As IEnumerator = Nothing
Dim array As Array = RandArray(definition3.Properties.ToArray)
definition3.Properties.Clear()
Try
enumerator = array.GetEnumerator
Do While enumerator.MoveNext
Dim objectValue As Object = RuntimeHelpers.GetObjectValue(RuntimeHelpers.GetObjectValue(RuntimeHelpers.GetObjectValue(enumerator.Current)))
definition3.Properties.Add(DirectCast(objectValue, PropertyDefinition))
Loop
Finally
If TypeOf enumerator Is IDisposable Then
TryCast(enumerator, IDisposable).Dispose()
End If
End Try
End If
Dim definition5 As EventDefinition
For Each definition5 In definition3.Events
str3 = RN()
wrt(("Event " & definition5.Name & " > " & str3))
definition5.Name = str3
definition5.EventType = definition2.Import(GetType(Object))
str3 = RN()
wrt(("*Type " & definition5.EventType.Name & " > " & str3))
definition5.EventType.Name = str3
Next
If (definition3.Events.Count > 0) Then
Dim enumerator2 As IEnumerator = Nothing
Dim array2 As Array = RandArray(definition3.Events.ToArray)
definition3.Events.Clear()
Try
enumerator2 = array2.GetEnumerator
Do While enumerator2.MoveNext
Dim obj3 As Object = Runtime.CompilerServices.RuntimeHelpers.GetObjectValue(RuntimeHelpers.GetObjectValue(RuntimeHelpers.GetObjectValue(enumerator2.Current)))
definition3.Events.Add(DirectCast(obj3, EventDefinition))
Loop
Finally
If TypeOf enumerator2 Is IDisposable Then
TryCast(enumerator2, IDisposable).Dispose()
End If
End Try
End If
Dim definition6 As FieldDefinition
For Each definition6 In definition3.Fields
str3 = RN()
wrt(("Field " & definition6.Name & " > " & str3))
str3 = RN()
wrt(("*Type " & definition6.FieldType.Name & " > " & str3))
definition6.FieldType = definition2.Import(GetType(Object))
definition6.FieldType.Name = str3
definition6.Name = str3
Next
If (definition3.Fields.Count > 0) Then
Dim enumerator3 As IEnumerator = Nothing
Dim array3 As Array = RandArray(definition3.Fields.ToArray)
definition3.Fields.Clear()
Try
enumerator3 = array3.GetEnumerator
Do While enumerator3.MoveNext
Dim obj4 As Object = RuntimeHelpers.GetObjectValue(RuntimeHelpers.GetObjectValue(RuntimeHelpers.GetObjectValue(enumerator3.Current)))
definition3.Fields.Add(DirectCast(obj4, FieldDefinition))
Loop
Finally
If TypeOf enumerator3 Is IDisposable Then
TryCast(enumerator3, IDisposable).Dispose()
End If
End Try
End If
Dim definition7 As MethodDefinition
For Each definition7 In definition3.Methods
If Not definition7.ToString.Contains(".") Then
str3 = RN()
wrt(("Method " & definition7.Name & " > " & str3))
definition7.Name = str3
If definition7.HasBody Then
Dim instruction As Instruction
For Each instruction In definition7.Body.Instructions
Dim instruction2 As Instruction = instruction
instruction2.Offset = (instruction2.Offset + -1)
Next
End If
Dim definition8 As ParameterDefinition
For Each definition8 In definition7.Parameters
str3 = RN()
wrt(("*Param " & definition8.Name & " > " & str3))
definition8.Name = str3
Next
End If
Next
If (definition3.Methods.Count > 0) Then
Dim enumerator4 As IEnumerator = Nothing
Dim array4 As Array = RandArray(definition3.Methods.ToArray)
definition3.Methods.Clear()
Try
enumerator4 = array4.GetEnumerator
Do While enumerator4.MoveNext
Dim obj5 As Object = RuntimeHelpers.GetObjectValue(RuntimeHelpers.GetObjectValue(RuntimeHelpers.GetObjectValue(enumerator4.Current)))
definition3.Methods.Add(DirectCast(obj5, MethodDefinition))
Loop
Finally
If TypeOf enumerator4 Is IDisposable Then
TryCast(enumerator4, IDisposable).Dispose()
End If
End Try
End If
Next
Next
definition.Write(f)
File.Delete((f & ".il"))
Return str2
End Function
Public Function RN() As String
Dim str2 As String
Do
Dim random As New Random
str2 = ""
Dim str3 As String = "☺☻♥♦♣♠•◘○◙♀♪♫☼►◄↕‼¶§▬↨↑↓→←∟↔▲▼ ABCDEFGHIJKLMNOPQRSTUVXWYZ0123456789abcdefghijklmnopqrst記住我记住我ёд私を覚えてますか"
Dim num2 As Integer = random.Next(1, 3)
Dim i As Integer = 1
Do While (i <= num2)
str2 = (str2 & Convert.ToString(str3.Chars(random.Next(0, str3.Length))))
i += 1
Loop
Loop While orn.Contains(str2)
orn.Add(str2)
Return str2
End Function
Public Function rnd(ByVal min As Integer, ByVal max As Integer) As Integer
Dim random As New Random
Return random.Next(min, (max + 1))
End Function
Public Sub wrt(ByVal t As String)
T1.AppendText((t & ChrW(13) & ChrW(10)))
T1.ScrollToCaret()
Application.DoEvents()
End Sub
Public orn As List(Of String) = New List(Of String)
Public T1 As TextBox
End Class