Jump to content

Recommended Posts

Posted

XorString contains the xor values loop

'i-4' because the encryption starts at fourth byte

 

'and 7' because the loop is 8 bytes long... the effect of the 'and' here is to mask the higher bits. This will result in 0-1-2-3-4-5-6-7-0-1.....

 

'+1' because delphi indices start at 1 instead of 0

Ammm, seems easy. But i would have it done in another way. I usually put the loops outside, you put the loop inside(in the index of the string). :)

Posted

Heh, you unhide author first post ^)

 

P.S.

sltbnjr, replace CHR(ORD()) with PInt(). Working faster.

L2 tcp connections aren't time critical

or at least not that much.

Posted

yep I think dmitry is right xD dunno the difference tho but the system messages sometimes start showing only when you click on the walker to be on top :P and sometimes it has trouble logging in, but thats normal right? :P

Posted

god you just have to merge them

 

you're never gonna learn anything if you just keep asking people to do everything for you

var
XorString : string;
Message : string;
gserver : boolean;
i : integer;

Procedure OnCreate;
begin
//gSys.tLA2BFToken:= 'a%S[{&*-94}^#%xx-P]a'+#0;
XorString := HStr('00 00 00 12 18 85 a0 00');
end;

function Crypt(buffer : string): string;
begin
  for i := 4 to length(buffer) do begin
    buffer[i] := Chr(ord(buffer[i]) xor ord(XorString[((i-4) and 7)+1]));
  end;
  Result := Buffer;
end;

begin
  if(not _gfromserv) and (_gAbsNumPkt=3) then begin
     gserver := true;
  end;
  if (not _gFromServ) and (copy(_gBuff,3,1)=#$38) then begin
    ScanPck5(_gBuff,4,'s',Message,null,null,null,null);
    if Message = 'Cat'+#0 then begin
      GSys.EnSendS(crypt(HStr('0C 00 45 EF 03 00 00 00 00 00 00 00')));
      gBlockPacket;
    end;
  end;
  if gserver and (length(_gBuff)>3) then begin
     _gOutBuff:=Crypt(_gBuff);
  end;
end.

  • 2 weeks later...
Posted

sorry to post again, but its not working, maybe some change on server's security? if u can edit and put all the info together you're my hero, tnx!

 

ps: the loginserver ip now is 67.228.134.114 port 2106 and protocol version 685

 

  • 3 weeks later...
Posted

sorry to post again, but its not working, maybe some change on server's security? if u can edit and put all the info together you're my hero, tnx!

 

ps: the loginserver ip now is 67.228.134.114 port 2106 and protocol version 685

 

 

 

mmm they updated to C5 and dont work anymore

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.




×
×
  • Create New...