Quote:
Originally Posted by Korvacs
See if you get different results from this:
Code:
accountName = Encoding.ASCII.GetString(Data.Buffer, 4, 16).TrimEnd('\0');
password = Encoding.ASCII.GetString(Data.Buffer, 20, 16).TrimEnd('\0');
serverName = Encoding.ASCII.GetString(Data.Buffer, 36, 16).TrimEnd('\0');
Its unlikely, its just for confirmation really. Does the rest of the packet decrypt correctly (Type, Length)? Does the password decrypt correctly to plain text (This should be unlikely given the info you've given so far)?
Sounds like a crypto problem to me aswell.
|
Ok, so I'm working with packet 11147 (1051 in patch 4267).
When I use the code you provided Korvacs, it unfortunately gives me this:
Code:
Acc: ?P??|(??
'????c
Server: ??????(?U??(?8
IP: Invalid
The length and offsets are set correctly. The password (now that I compare it) is not the same as what it should be. It's all messed up using weird characters.
The problem could be with the authpacket handler:
Code:
ushort Type = *(ushort*)(Ptr + 2);
ushort Length = *(ushort*)(Ptr + 0);
I doubt that the above is right. I'm experimenting with values to see if it is or not.
EDIT: Trying to get them from different offsets:
Code:
type offset
5892 0
35607 1
11147 2
44587 3
20654 4
63568 5
41464 6
31905 7
10364 8
55080 9
58583 10
2788 11
9994 12
64295 13
33275 14
62593 15
49908 16
25538 17
7779 18
19230 19
59979 20
31978 21
53116 22
30927 23
34680 24
26503 25
43111 26
60328 27
45291 28
44208 29
26796 30
23144 31
2906 32
8715 33
45602 34
48306 35
51900 36
3786 37
16142 38
35903 39
45452 40
16305 41
3647 42
10254 43
36136 44
21901 45
43861 46
37547 47
10386 48
50472 49
14533 50
56 51
0 52
0 53