This is the SNAC sent to the auth server to request a new ICQ number. It should be the very first thing sent, after the initial "New Connection."
Length
Description
2 bytes
Family (0x0017)
2 bytes
Subtype (0x0004)
2 bytes
Flags
4 bytes
Snac Request ID
2 bytes
0x0001
2 bytes
Length L of the following
L bytes
DATA
DATA
The ICQ registration info. All chunks are in, uh, network byte order, I guess (the number "5" is sent as "x05 00").
Length
Description
2 bytes
0x0000
2 bytes
0x0000
2 bytes
0x2800
2 bytes
0x0300
4 bytes
0x0000 0000
4 bytes
0x0000 0000
2 bytes
0xec38 0000 - Some type of random cookie?
2 bytes
0xec38 0000 - Same number as above
4 bytes
0x0000 0000
4 bytes
0x0000 0000
4 bytes
0x0000 0000
4 bytes
0x0000 0000
2 bytes
Length L of the following
L bytes
The password you wish to use for the new ICQ account. In plain text and null terminated.
2 bytes
0xec38 0000 - Same number as above
2 bytes
0x0000
2 bytes
0x0602. 0x1502 has also been seen
From Aleksandr Shutko: SNAC(17,04) registration request SNAC(17,04) BUCP__REGISTER_REQUEST
Use this snac when you need new ICQ account (uin/password).
Server should reply with SNAC(17,05) containing
new uin. This snac mean that registration finished succesfully.
Server also can reply with SNAC(17,01) if it can't
create new user account.