Well, u posted SRC from Proxy so i give ppl a send + recv method. hehe.
SendFunction
PHP Code:
DWORD PBACK = 0x000000;// <- U need to get the Back Adress with IDA etc. Or do it with SearchPattern. #define SendASM __asm{ push ebp };__asm{ mov ebp, esp };__asm{ sub esp, 18h};__asm{ JMP PBACK}; __declspec(naked) int __cdecl SendPacket (BYTE Header , LPCSTR Format , ... ){SendASM;}
RecvFunction
PHP Code:
int DetouredRecv(SOCKET Socket, char *Buffer, int Length, int Flags); int (__stdcall *PacketRecv)(SOCKET Socket, char *Buffer, int Length, int Flags);
Well, u posted SRC from Proxy so i give ppl a send + recv method. hehe.
SendFunction
PHP Code:
DWORD PBACK = 0x000000;// <- U need to get the Back Adress with IDA etc. Or do it with SearchPattern.
#define SendASM __asm{ push ebp };__asm{ mov ebp, esp };__asm{ sub esp, 18h};__asm{ JMP PBACK};
__declspec(naked) int __cdecl SendPacket (BYTE Header , LPCSTR Format , ... ){SendASM;}
RecvFunction
PHP Code:
int DetouredRecv(SOCKET Socket, char *Buffer, int Length, int Flags);
int (__stdcall *PacketRecv)(SOCKET Socket, char *Buffer, int Length, int Flags);
int ASyncPos=0;
int FinalSize=0;
int WINAPI __stdcall MyMagicRecv(SOCKET s, const unsigned char* buf, int len, int flags)
{
if (ASyncPos==FinalSize && FinalSize>0)
{
HandlePacket(buf, ASyncPos);
ASyncPos = 0;
}
int ret = OrigRecv(s,buf,len,flags);
if (ret<0)
{
return ret;
}
if (ASyncPos==0)
FinalSize = *((short int*) buf);
ASyncPos+=ret;
return ret;
}
MyMagicRecv... lol
m0hamed just gives every person a thanks who posts some source snippet...
thanks for release, although i have got that
never made much with pointers... maybe i should take a look at that too xD
Well, it is a workaround for filtering out 'double' recv packets by the public available sources. It is not the best method, but if you do some analysing yourself, you should be able to find out how it really works. This should at least give you a clue and if not, you can use it still to filter out double packets
[Guide] Creating a Simple Loader with Injected DLL for Silkroad 02/02/2016 - SRO Coding Corner - 37 Replies This next article in my series is a very important one for anyone wanting to get started with client modifications or understanding the client itself. This is the base article that will be used for all my future articles that explain various Silkroad development concepts.
Like my previous article, there is nothing terribly exciting with this one as we have to get through the necessary boring stuff first before we can have any real fun. Unfortunately, this article is very heavy text wise and...
1 Hit Hack Cheat Engine Tutorial Request 05/27/2010 - Metin2 - 1 Replies Hi there,
I know how to change Atk Speed, Mov Speed, Range & Type Weapon with CE
But i have never find the way to get the 1hit hack like Multihacks.
Someone can teach me how to get it with Cheat Engine ???
Thanks
[Intermediate] Creating a strong but simple cipher 08/31/2008 - CO2 Programming - 9 Replies Basically, here's the idea, we have a 'key' that contains every value a byte supports (0 to 255). When you encrypt a byte for instance 171 (0xAB) it creates an "x" using the first 4 bits of the byte, and "y" using the last for bits of the byte
Value = 171 (0xAB)
X = 10 (0xA)
Y = 11 (0xB)
Then in the output of the encrypt routine, it it'll fill that index as Key
Here's an illustration to make it simpler;
http://img120.imageshack.us/img120/3282/cipheran4 .gif