Moglby mi ktos pomoc przelozyc to na delphi, bo nie znam sie na Javie ;-P
36 public void decrypt(ByteBuffer buf)
37 {
38 if (!_isEnabled)
39 return;
40
41 final int sz = buf.remaining();
42 int temp = 0;
43 for (int i = 0; i < sz; i++)
44 {
45 int temp2 = buf.get(i);
46 buf.put(i, (byte)(temp2 ^ _key[i&15] ^ temp));
47 temp = temp2;
48 }
49
50 int old = _key[8] &0xff;
51 old |= _key[9] << 8 &0xff00;
52 old |= _key[10] << 0x10 &0xff0000;
53 old |= _key[11] << 0x18 &0xff000000;
54
55 old += sz;
56
57 _key[8] = (byte)(old &0xff);
58 _key[9] = (byte)(old >> 0x08 &0xff);
59 _key[10] = (byte)(old >> 0x10 &0xff);
60 _key[11] = (byte)(old >> 0x18 &0xff);
61 }
62
63 public void encrypt(ByteBuffer buf)
64 {
65 if (!_isEnabled)
66 return;
67
68 int temp = 0;
69 final int sz = buf.remaining();
70 for (int i = 0; i < sz; i++)
71 {
72 int temp2 = buf.get(i);
73 temp = temp2 ^ _key[i&15] ^ temp;
74 buf.put(i, (byte) temp);
75 }
76
77 int old = _key[8] &0xff;
78 old |= _key[9] << 8 &0xff00;
79 old |= _key[10] << 0x10 &0xff0000;
80 old |= _key[11] << 0x18 &0xff000000;
81
82 old += sz;
83
84 _key[8] = (byte)(old &0xff);
85 _key[9] = (byte)(old >> 0x08 &0xff);
86 _key[10] = (byte)(old >> 0x10 &0xff);
87 _key[11] = (byte)(old >> 0x18 &0xff);
88 }