Sherman, что ты с переменной Size не сделаешь она никак на Packet.Size в пакетхаке не повлияет ибо это отдельная переменная создающаяся при вызове CurrentCoddingClass.EncryptGP(Packet.data, Packet.Size - 2);
но ты прав в одном, если очень хочется, то:
delphi Код:
procedure TXorCodingOut.EncryptGP(var Data; const Size: Word);
var
i:integer;
pck:array[0..$FFFF] of Byte absolute Data;
NewSize: PWord;
rSize: Word;
begin
rSize:=Size;
case pck[0] of
$C0:
begin
if rSize = 28 then
begin
rSize:=39;
NewSize:=PWord(@pck);
Dec(NewSize);
NewSize^:=rSize;
end;
end;
end;
....
и погнали ксорить, тока учитывая что размер не в Size а в rSize
Добавлено через 2 минуты
кстати что такое "Sign(@pck);"