Results 1 to 1 of 1
  1. #1
    [Hectic]'s Avatar
    Join Date
    Jul 2011
    Gender
    male
    Posts
    49
    Reputation
    10
    Thanks
    33
    My Mood
    Cool

    Post WarRock DLL. Injector Source code

    Here is the code for a DLL. Injector !
    Design it the way you want to =)
    Have Fun ^^
    Code:
    Public Class Form1
    
        Private TargetProcessHandle As Integer
        Private pfnStartAddr As Integer
        Private pszLibFileRemote As String
        Private TargetBufferSize As Integer
    
        Public Const PROCESS_VM_READ = &H10
        Public Const TH32CS_SNAPPROCESS = &H2
        Public Const MEM_COMMIT = 4096
        Public Const PAGE_READWRITE = 4
        Public Const PROCESS_CREATE_THREAD = (&H2)
        Public Const PROCESS_VM_OPERATION = (&H8)
        Public Const PROCESS_VM_WRITE = (&H20)
    
        Public Declare Function ReadProcessMemory Lib "kernel32" ( _
        ByVal hProcess As Integer, _
        ByVal lpBaseAddress As Integer, _
        ByVal lpBuffer As String, _
        ByVal nSize As Integer, _
        ByRef lpNumberOfBytesWritten As Integer) As Integer
    
        Public Declare Function LoadLibrary Lib "kernel32" Alias "LoadLibraryA" ( _
        ByVal lpLibFileName As String) As Integer
    
        Public Declare Function VirtualAllocEx Lib "kernel32" ( _
        ByVal hProcess As Integer, _
        ByVal lpAddress As Integer, _
        ByVal dwSize As Integer, _
        ByVal flAllocationType As Integer, _
        ByVal flProtect As Integer) As Integer
    
        Public Declare Function WriteProcessMemory Lib "kernel32" ( _
        ByVal hProcess As Integer, _
        ByVal lpBaseAddress As Integer, _
        ByVal lpBuffer As String, _
        ByVal nSize As Integer, _
        ByRef lpNumberOfBytesWritten As Integer) As Integer
    
        Public Declare Function GetProcAddress Lib "kernel32" ( _
        ByVal hModule As Integer, ByVal lpProcName As String) As Integer
    
        Private Declare Function GetModuleHandle Lib "Kernel32" Alias "GetModuleHandleA" ( _
        ByVal lpModuleName As String) As Integer
    
        Public Declare Function CreateRemoteThread Lib "kernel32" ( _
        ByVal hProcess As Integer, _
        ByVal lpThreadAttributes As Integer, _
        ByVal dwStackSize As Integer, _
        ByVal lpStartAddress As Integer, _
        ByVal lpParameter As Integer, _
        ByVal dwCreationFlags As Integer, _
        ByRef lpThreadId As Integer) As Integer
    
        Public Declare Function OpenProcess Lib "kernel32" ( _
        ByVal dwDesiredAccess As Integer, _
        ByVal bInheritHandle As Integer, _
        ByVal dwProcessId As Integer) As Integer
    
        Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" ( _
        ByVal lpClassName As String, _
        ByVal lpWindowName As String) As Integer
    
        Private Declare Function CloseHandle Lib "kernel32" Alias "CloseHandleA" ( _
        ByVal hObject As Integer) As Integer
    
    
        Dim ExeName As String = IO.Path.GetFileNameWithoutExtension(Application.ExecutablePath)
    
        Private Sub Inject()
            On Error GoTo 1 ' If error occurs, app will close without any error messages
            Timer1.Stop()
            Dim TargetProcess As Process() = Process.GetProcessesByName("WarRock")
            TargetProcessHandle = OpenProcess(PROCESS_CREATE_THREAD Or PROCESS_VM_OPERATION Or PROCESS_VM_WRITE, False, TargetProcess(0).Id)
            pszLibFileRemote = Application.StartupPath & "\" + ExeName + ".dll"
            pfnStartAddr = GetProcAddress(GetModuleHandle("Kernel32"), "LoadLibraryA")
            TargetBufferSize = 1 + Len(pszLibFileRemote)
            Dim Rtn As Integer
            Dim LoadLibParamAdr As Integer
            LoadLibParamAdr = VirtualAllocEx(TargetProcessHandle, 0, TargetBufferSize, MEM_COMMIT, PAGE_READWRITE)
            Rtn = WriteProcessMemory(TargetProcessHandle, LoadLibParamAdr, pszLibFileRemote, TargetBufferSize, 0)
            CreateRemoteThread(TargetProcessHandle, 0, 0, pfnStartAddr, LoadLibParamAdr, 0, 0)
            CloseHandle(TargetProcessHandle)
    1:      Me.Close()
        End Sub
    
        Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
            If IO.File.Exists(Application.StartupPath & "\" + ExeName + ".dll") Then
                Dim TargetProcess As Process() = Process.GetProcessesByName("HSUpdate")
                If TargetProcess.Length = 0 Then
                    Me.TextBox1.Text = ("Waiting for Warrock.exe")
                    Me.TextBox2.Text = ("Let´s Hack")
                Else
                    Timer1.Stop()
                    Me.TextBox1.Text = "Done..."
                    Call Inject()
                End If
            Else
                Me.TextBox1.Text = ("" + ExeName + ".dll not found")
                Me.TextBox2.Text = ("Rename the .dll To " + "" + ExeName)
            End If
        End Sub
    
        Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
            Timer1.Interval = 50
            Timer1.Start()
        End Sub
    
        Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
            MsgBox("Thats the Status Box!", MsgBoxStyle.Information, "Info")
        End Sub
    End Class

  2. The Following 3 Users Say Thank You to [Hectic] For This Useful Post:

    nielshetschaap (07-18-2011),rjcmax (10-27-2011),safiullah1234 (07-01-2011)