yeah jajaja I'm just to lazy to do it in C xd
But the whole bot is written in C++.
The important part is the dll, which was originally written in c++, so, there's no problem. Autoit makes it easier to make a GUI, so that's what I chose it.
; --- Control Functions ---
GUICtrlSetOnEvent($start, 'Start')
Global $sro_path, $ret
; --- Check for DLL ---
Local $dll = _PathFull("pBot.dll")
if Not FileExists($dll) Then
MsgBox(0, "Error", "pBot.dll Not Found." & @CR & "Loader will exit now")
Exit
EndIf
; --- Check for INI ---
Local $ini_path = "config\config1.ini"
If Not FileExists($ini_path) Then
$f = _WinAPI_CreateFile($ini_path, 0)
_WinAPI_CloseHandle($f)
EndIf
$ini_path = _PathFull("config\config1.ini")
; --- Run Sro ---
$pid = Run($sro_path & " 0 /4 " & $division & " 0")
; FIRE = 0
; WATER = 1
; --- Inject pBot ---
_InjectDll($pid, $dll, 1)
Exit
EndFunc
Func CloseLoader()
Exit
EndFunc
Func _InjectDll($a, $dllpath, $hWnd_or_pid=0)
;make sure the user passed valid parameters
If $a <= 0 Then
SetError(-1)
Return False
ElseIf StringLen($dllpath) <= 4 Or StringRight($dllpath, 4) <> ".dll" Then
SetError(-2)
Return False
EndIf
Local $pid, $pHandle, $pLibRemote, $modHandle, $LoadLibraryA, $hThread
;open dll that we'll be using
Local $kernel32 = DllOpen("kernel32.dll")
Local $ret
If $hWnd_or_pid = 0 Then
;get the pid from the window provided
$pid = DllCall("user32.dll", "int", "GetWindowThreadProcessId", "hwnd", $a, "int_ptr", 0)
If IsArray($pid) Then
$pid = $pid[2]
Else
SetError(-3)
Return False
EndIf
Else
$pid = $a
EndIf
;open the process for writing
Local $pHandle = DllCall($kernel32, "int", "OpenProcess", "int", BitOr(0x10, 0x20, 0x02, 0x08), "int", 0, "int", $pid)
If IsArray($pHandle) And $pHandle[0] > 0 Then
$pHandle = $pHandle[0]
Else
SetError(-4)
Return False
EndIf
Local $pLibRemote = DllCall($kernel32, "int", "VirtualAllocEx", "int", $pHandle, "short", 0, "int", StringLen($dllpath)+1, "int", 0x1000, "int", 0x40)
If IsArray($pLibRemote) Then
If $pLibRemote[0] > 0 Then
$pLibRemote = $pLibRemote[0]
Else
SetError(-5)
Return False
EndIf
Else
SetError(-6)
Return False
EndIf
Local $struct = DllStructCreate('char['&StringLen($dllpath)+1&']')
For $i = 1 To StringLen($dllpath)
DllStructSetData($struct, 1, StringMid($dllpath, $i, 1), $i)
Next
$ret = DllCall($kernel32, "int", "WriteProcessMemory", "int", $pHandle, "int", $pLibRemote, "int", DllStructGetPtr($struct), "int", DllStructGetSize($struct), "int", 0)
If IsArray($ret) Then
If $ret[0] = 0 Then
SetError(-7)
Return False
EndIf
Else
SetError(-8)
Return False
EndIf
Local $modHandle = DllCall($kernel32, "long", "GetModuleHandle", "str", "kernel32.dll")
If IsArray($modHandle) Then
If $modHandle[0] > 0 Then
$modHandle = $modHandle[0]
Else
SetError(-9)
Return False
EndIf
Else
SetError(-10)
Return False
EndIf
Local $LoadLibraryA = DllCall($kernel32, "long", "GetProcAddress", "long", $modHandle, "str", "LoadLibraryA")
If IsArray($LoadLibraryA) Then
If $LoadLibraryA[0] > 0 Then
$LoadLibraryA = $LoadLibraryA[0]
Else
SetError(-11)
Return False
EndIf
Else
SetError (-12)
Return False
EndIf
Local $hThread = DllCall($kernel32, "int", "CreateRemoteThread", "int", $pHandle, "int", 0, "int", 0, "long", $LoadLibraryA, "long", $pLibRemote, "int", 0, "int", 0)
If IsArray($hThread) Then
If $hThread[0] > 0 Then
$hThread = $hThread[0]
Else
SetError(-13)
Return False
EndIf
Else
SetError(-14)
Return False
EndIf
THANKS WORKING REALLY NICE IM TRYING IT NOW ON WATER WITH MY +9 SS <3
) why you need to say with my +9 SS ? that he hackz0rs you if its with keylogger?OMFG or you are friends and you made this that other people trust him :| noobz!
Really.... this is so sad.
The only thing I did was to release a bot, a WIP which might become a real bot, and all I'm hearing is that it is a virus, it is a keylogger, it stores info...
I doubt I'll make any more releases, so, enjoy this one while it lasts.
) why you need to say with my +9 SS ? that he hackz0rs you if its with keylogger?OMFG or you are friends and you made this that other people trust him :| noobz!
What? I just said it. I'm also doing it so what's the problem ?
Very good proyect buddy, I am so proud of you. You have made it hooking on directx instead an external program right? It is using game interface to show up the menu?
Right.
Bot is using multiple Hooks: Direct3D9, WSA (Sockets) and DispatchMessage API (to handle user input). So it won't use more memory than the necesary nor will make the game slower, since when it is not shown there's nothing runing on the game thread.
The GUI controls, such as the dropbox and listbox and textbox have been designed and coded by myself also, from 0.
PS: Atm I'm manually encrypting (not with a Packer) all the strings, and will also manually add a debugger present code. Right now I'm not going to pack it, since I don't think it is necessary at all, but I want to avoid problems like the ones we had before.
[Service] iSro 24/7 Botting Service (Info inside). 03/06/2011 - Silkroad Online Trading - 64 Replies Hello e*pvp community ,
Dear members, I came here to offer you an awesome service of botting(iSro)
Description :
I simply 24/7 bot your characters with the best experience of botting for level up, farming or a mix of both, with insurance that you character will keep drops(any kind of it), and I'll only seek for the best of your character (your instructions maybe needed in this case in order to have your goal from botting) Accepting characters from all servers of iSro (Euro or...
[Service] 24/7 Botting Service ISRO (International Silkroad Online) 02/01/2011 - Silkroad Online Trading - 1 Replies Hi Everyone,
Description:
Easy 24 / 7 (day and night) botting undertake, for those who can not. Of course, not free. Either Chinese or European character. You'll have to do the setting. Read more on MSN receive.
Payment methods:
-Paypal (Gift)
Currency: $ / € ($ depend on the exchange rate!)
5 € / 2 weeks / characters