Register for your free account! | Forgot your password?

Go Back   elitepvpers > MMORPGs > Conquer Online 2 > CO2 Programming
You last visited: Today at 15:39

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



[Source]ConquerLoader v1

Discussion on [Source]ConquerLoader v1 within the CO2 Programming forum part of the Conquer Online 2 category.

Reply
 
Old   #1
 
Nullable's Avatar
 
elite*gold: 0
Join Date: Nov 2009
Posts: 390
Received Thanks: 321
[Source]ConquerLoader v1

Assembled using MASM32 assembler, not much fancy high-level alike stuff in there.
Code:
; ---------------ConquerLoader v1---------------
;|                                              |
;|Author: Nullable                              |
;|                                              |
; ----------------------------------------------

.486
.model flat, stdcall
option casemap: none
include \masm32\include\windows.inc
; ллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллл

include \masm32\include\kernel32.inc
include \masm32\include\user32.inc
include \masm32\include\ws2_32.inc
; ллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллл

includelib \masm32\lib\kernel32.lib
includelib \masm32\lib\user32.lib
includelib \masm32\lib\ws2_32.lib
; ллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллл

.data
szBufferRead db 30 DUP(00)
ipaddr db ?
servdat db "ConquerS.dat", 0
inet db "inet_addr", 0
bn1 db " blacknull", 0
conqname db "Conquer.exe", 0
wsaname db "WS2_32.dll", 0
wsacode db 0B8h, 00h, 00h, 00h, 00h, 0C2h, 04h, 00h, 90h, 90h

;MOV EAX, 00000000h
;RETN 4 // __stdcall convention, clear the stack. 4 because inet_addr takes 1 argument (4 bytes)

txtfail db "Error occured", 0
txtfailconq db "Failed to load Conquer", 0
txtfailinj db "Failed to inject code", 0
txtfailopn db "Failed to open ConquerS.dat", 0
; ллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллл

hInstance dd ?
starti STARTUPINFO <?>
pi PROCESS_INFORMATION <?>
ws WSADATA <?>
serverdat HANDLE ?
procaddr dd ?
rlprocaddr dd ?
ip dd ?
Bytes dd 0
; ллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллл


.code
start:
    invoke GetModuleHandle, 0
    mov hInstance, eax
    
    invoke WSAStartup, 0101h, addr ws 
    invoke CreateProcess, addr conqname, addr bn1, 0, 0, 0, CREATE_DEFAULT_ERROR_MODE, 0, 0, addr starti, addr pi
    cmp eax, 0
    je @_1
    
    invoke GetModuleHandle, addr wsaname
    mov procaddr, eax

    invoke CreateFile, addr servdat, GENERIC_READ, FILE_SHARE_READ, 0, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, 0
    mov serverdat, eax
    
    cmp serverdat, INVALID_HANDLE_VALUE
    je @_3

    invoke ReadFile, serverdat, addr szBufferRead, 25, addr Bytes, 0
    
    cmp eax, 0
    je @_3

    invoke inet_addr, addr szBufferRead
    mov ip, eax

    mov eax, OFFSET wsacode

    mov edi, ip
    mov DWORD PTR [eax+1], edi
    
    invoke GetProcAddress, procaddr, addr inet
    mov rlprocaddr, eax
    
    invoke WaitForInputIdle, pi.hProcess, INFINITE
    invoke WriteProcessMemory, pi.hProcess, rlprocaddr, addr wsacode, sizeof wsacode, 0

    cmp eax, 0
    je @_2
    
@e:
    invoke WSACleanup
    invoke CloseHandle, serverdat
    invoke ExitProcess, 0
    
@_1:
    invoke MessageBox, 0, addr txtfailconq, addr txtfail, MB_OK
    jmp @e
    
@_2:
    invoke MessageBox, 0, addr txtfailinj, addr txtfail, MB_OK
    jmp @e
@_3:
    invoke MessageBox, 0, addr txtfailopn, addr txtfail, MB_OK
    jmp @e
    
end start
Nullable is offline  
Thanks
9 Users
Old 07/23/2010, 05:28   #2
 
elite*gold: 0
Join Date: Mar 2009
Posts: 518
Received Thanks: 238
Quote:
Originally Posted by Nullable View Post
Assembled using MASM32 assembler, not much fancy high-level alike stuff in there.
Code:
; ---------------ConquerLoader v1---------------
;|                                              |
;|Author: Nullable                              |
;|                                              |
; ----------------------------------------------

.486
.model flat, stdcall
option casemap: none
include \masm32\include\windows.inc
; ллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллл

include \masm32\include\kernel32.inc
include \masm32\include\user32.inc
include \masm32\include\ws2_32.inc
; ллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллл

includelib \masm32\lib\kernel32.lib
includelib \masm32\lib\user32.lib
includelib \masm32\lib\ws2_32.lib
; ллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллл

.data
szBufferRead db 30 DUP(00)
ipaddr db ?
servdat db "ConquerS.dat", 0
inet db "inet_addr", 0
bn1 db " blacknull", 0
conqname db "Conquer.exe", 0
wsaname db "WS2_32.dll", 0
wsacode db 0B8h, 00h, 00h, 00h, 00h, 0C2h, 04h, 00h, 90h, 90h

;MOV EAX, 00000000h
;RETN 4 // __stdcall convention, clear the stack. 4 because inet_addr takes 1 argument (4 bytes)

txtfail db "Error occured", 0
txtfailconq db "Failed to load Conquer", 0
txtfailinj db "Failed to inject code", 0
txtfailopn db "Failed to open ConquerS.dat", 0
; ллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллл

hInstance dd ?
starti STARTUPINFO <?>
pi PROCESS_INFORMATION <?>
ws WSADATA <?>
serverdat HANDLE ?
procaddr dd ?
rlprocaddr dd ?
ip dd ?
Bytes dd 0
; ллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллл


.code
start:
    invoke GetModuleHandle, 0
    mov hInstance, eax
    
    invoke WSAStartup, 0101h, addr ws 
    invoke CreateProcess, addr conqname, addr bn1, 0, 0, 0, CREATE_DEFAULT_ERROR_MODE, 0, 0, addr starti, addr pi
    cmp eax, 0
    je @_1
    
    invoke GetModuleHandle, addr wsaname
    mov procaddr, eax

    invoke CreateFile, addr servdat, GENERIC_READ, FILE_SHARE_READ, 0, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, 0
    mov serverdat, eax
    
    cmp serverdat, INVALID_HANDLE_VALUE
    je @_3

    invoke ReadFile, serverdat, addr szBufferRead, 25, addr Bytes, 0
    
    cmp eax, 0
    je @_3

    invoke inet_addr, addr szBufferRead
    mov ip, eax

    mov eax, OFFSET wsacode

    mov edi, ip
    mov DWORD PTR [eax+1], edi
    
    invoke GetProcAddress, procaddr, addr inet
    mov rlprocaddr, eax
    
    invoke WaitForInputIdle, pi.hProcess, INFINITE
    invoke WriteProcessMemory, pi.hProcess, rlprocaddr, addr wsacode, sizeof wsacode, 0

    cmp eax, 0
    je @_2
    
@e:
    invoke WSACleanup
    invoke CloseHandle, serverdat
    invoke ExitProcess, 0
    
@_1:
    invoke MessageBox, 0, addr txtfailconq, addr txtfail, MB_OK
    jmp @e
    
@_2:
    invoke MessageBox, 0, addr txtfailinj, addr txtfail, MB_OK
    jmp @e
@_3:
    invoke MessageBox, 0, addr txtfailopn, addr txtfail, MB_OK
    jmp @e
    
end start
wut?
I do not get it.
DeathByMoogles is offline  
Old 07/23/2010, 08:51   #3
 
Ian*'s Avatar
 
elite*gold: 0
Join Date: Nov 2006
Posts: 805
Received Thanks: 464
Quote:
Originally Posted by DeathByMoogles View Post
wut?
I do not get it.
It's asm.

Check out masm, just google it
Ian* is offline  
Old 07/26/2010, 01:03   #4
 
_DreadNought_'s Avatar
 
elite*gold: 28
Join Date: Jun 2010
Posts: 2,225
Received Thanks: 868
When I run I get an error
Quote:
C:\user\documents\blablabla\Test.exe
The NTVDM CPU has encountered an illegal instruction.
CS:0faf IP:0115 OP:64 63 61 6c 6c Choose 'Close' to terminate the application.
Close | Ignore
if I click Ingnore I get
[quote]
When I run I get an error
Quote:
C:\user\documents\blablabla\Test.exe
The NTVDM CPU has encountered an illegal instruction.
CS:0faf IP:0116 OP:64 63 61 6c 6c Choose 'Close' to terminate the application.
Close | Ignore
and the errors keep going.
the title of the errors are: 16 bit MS-DOS subsystem.

I am using your code just compiled in a masm 32
_DreadNought_ is offline  
Reply


Similar Threads Similar Threads
[Release]ConquerLoader v2
11/24/2020 - CO2 Programming - 187 Replies
All the versions released are available at Conquer Loader, all future releases will be there. Here it is, for whoever can't change the server.dat to work with proxies/servers. It's patch independent just as v1, except this version uses another technique (you'll notice the size difference). Extract in CO folder, LoaderSet.ini format: IPAddress=127.0.0.1 ;The ip address to connect to.
[RELEASE]ConquerLoader (Works all patches)
07/17/2010 - CO2 PServer Guides & Releases - 10 Replies
This isn't really a good or advanced loader. Is just a basic one :) But I Thought I would share it anyway. Download Screenshot: http://i883.photobucket.com/albums/ac33/holyshotz /launcher.png Features:
[Biete]COD6 Modern Warfare 2 Steam Accounts + CS:Source + DoD:Source
04/17/2010 - Steam Trading - 9 Replies
Hallo, ich biete hier einen Call of Duty 6 - Modern Warfare (UNCUT + RETAIL) Steam Account an. 1. STEAM-Account Call Of Duty 6 - Modern Warfare 2 + Cunter-Strike: Source + Day Of Defeat: Source SOLD! http://img199.imageshack.us/img199/7035/steamaccou nt1.png Des weiteren biete ich hier noch einen orignalen Uncut Modern Warfare 2 Steam Account mit VAC Bann an, welcher jedoch im Single Player problemlos zu spielen ist.
[Release]How To Make Tq Source Work + Working Source + Server ByBass + Commands
12/08/2008 - CO2 PServer Guides & Releases - 15 Replies
1: How To Make The Server Work In fact, before other people did not just let ACC now with hi EACC Columbia landing on the settlement of the issue, and the rest is our own how to improve the content of those interested can improve the next. MY MY set and the same. INI MAP INI files and MAP with the client-to-date coverage of the account. server.dat ! And then as long as the client will be able to modify server.dat! 127.0.0.1 192.168.0.1 192.168.1.1 IP。 Please do generally use...



All times are GMT +1. The time now is 15:39.


Powered by vBulletin®
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2025 elitepvpers All Rights Reserved.