Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Imports System.IO
- 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)
- Dim DLLFileName As String
- 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
- Dim TargetProcess As Process() = Process.GetProcessesByName("csgo")
- TargetProcessHandle = OpenProcess(PROCESS_CREATE_THREAD Or PROCESS_VM_OPERATION Or PROCESS_VM_WRITE, False, TargetProcess(0).Id)
- pszLibFileRemote = Directory.GetCurrentDirectory() + "\" + ComboBox1.SelectedItem.ToString + ".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.Show()
- End Sub
- Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
- ezinjector.Name = "ezinjector"
- ezinjector.Text = "ezinjector"
- Dim tempthing As String = ""
- Dim tempthing2 As String = ""
- Dim files() As String = IO.Directory.GetFiles(Directory.GetCurrentDirectory())
- For Each file As String In files
- tempthing2 = Path.GetExtension(file)
- tempthing = file.Replace(Directory.GetCurrentDirectory() + "\", "")
- tempthing = tempthing.Replace(tempthing2, "")
- If tempthing2 = ".dll" Then
- If tempthing.EndsWith(".x32") Then
- Else
- ComboBox1.Items.Add(tempthing)
- End If
- End If
- Next
- End Sub
- Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
- End Sub
- Private Sub Label1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Label1.Click
- End Sub
- Private Sub ezinjector_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
- End Sub
- Private Sub Button1_Click_1(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
- Dim TargetProcess As Process() = Process.GetProcessesByName("csgo")
- If TargetProcess.Length = 0 Then
- Me.Label1.Text = ("Status: Waiting")
- Else
- Me.Label1.Text = "Status: Injected"
- Call Inject()
- End If
- End Sub
- End Class
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement