Register for your free account! | Forgot your password?

Go Back   elitepvpers > MMORPGs > Conquer Online 2 > CO2 Private Server
You last visited: Today at 17:27

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

Advertisement



account authorization packet (1086)

Discussion on account authorization packet (1086) within the CO2 Private Server forum part of the Conquer Online 2 category.

Reply
 
Old   #1
 
elite*gold: 0
Join Date: Apr 2016
Posts: 16
Received Thanks: 4
account authorization packet (1086)

is ther any easy way to force the client to send another packet id isntead? im tring to get some short of protection, i know it can be done with dll injection but that is a bit far of my league xD so if it can be done with another easyer way please let me know
coolco is offline  
Old 09/22/2019, 23:29   #2
 
elite*gold: 0
Join Date: Sep 2014
Posts: 194
Received Thanks: 52
I guess the only was is to hook over SendMsg/ReceiveMsg or hook over the send and try to decrypt the packet, change ids and re-encrypt it but that'd be a stupid thing to do if you do the steps above would be much better. Rather than that I guess no.
iBotx is offline  
Old 09/23/2019, 00:38   #3
 
JaniQ's Avatar
 
elite*gold: 0
Join Date: Apr 2014
Posts: 117
Received Thanks: 91
You can hook the function that creates the packet and create your own instead.
JaniQ is offline  
Old 09/23/2019, 12:47   #4
 
elite*gold: 0
Join Date: Feb 2009
Posts: 262
Received Thanks: 161
you can check Angelius bot project. he hook the CNetwork class.



this for last version:

Code:
BYTE pattern[] = { 0x51,0x50,0xB9,0x00,0x00,0x00,0x00,0xE8,0x00,0x00,0x00,0x00,0x5E,0xC3,0x6A,0x04 };
bool wildcards[] = { 0,0,0,1,1,1,1,0,1,1,1,1,0,0,0,0 };
PBYTE  match = (PBYTE)Scan::FindMemoryPattern(pattern, wildcards, sizeof(wildcards));
match += 2;

   // PrintDebugHex("CNetworkmatch: ", (DWORD)match);

DWORD callDstInter;
ReadProcessMemory(GetCurrentProcess(), (LPVOID)(match +1), &callDstInter, sizeof(callDstInter), NULL);//match + 1 for call
NetwordAddress = callDstInter;
Code:
BYTE pattern[] = { 0x6A,0x0C,0xB8,0x00,0x00,0x00,0x00,0xE8,0x00,0x00,0x00,0x00,0x8B,0xF1,0x89,0x75,0xE8,0x33,0xDB,0x39,0x5E,0x18 };
bool wildcards[] = { 0,0,0,1,1,1,1,0,1,1,1,1,0,0,0,0,0,0,0,0,0,0 };
PBYTE  match = (PBYTE)Scan::FindMemoryPattern(pattern, wildcards, sizeof(wildcards));
//PrintDebugHex("CNetworkSend: ", (DWORD)match);
SendPacketAddress = (DWORD)match;
Code:
static void SendToServer(const char* msg, int len)
{
	__asm
	{
	    push len
            PUSH DWORD PTR DS:[msg]
            MOV ECX, NetwordAddress
            CALL SendPacketAddress
	}
}
Special Thanks to Angelius .
teroareboss1 is offline  
Reply


Similar Threads Similar Threads
Подбор пасов от персов
04/01/2010 - General Gaming Discussion - 13 Replies
хай народ забыл пасы от перса а инфа на аке не настоящ& #1103;я... через заяку вернуть пароли не удастьс& #1103; моно ли какнить самому подобра& #1090;ь=) заранее спс



All times are GMT +1. The time now is 17:32.


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.