public static void HandleAuthSession(Packet packet) { var sha = new byte[20]; packet.ReadUInt32("UInt32 1"); packet.ReadUInt32("UInt32 2"); packet.ReadByte("Unk Byte"); sha[10] = packet.ReadByte(); sha[18] = packet.ReadByte(); sha[12] = packet.ReadByte(); sha[5] = packet.ReadByte(); packet.ReadInt64("Int64"); sha[15] = packet.ReadByte(); sha[9] = packet.ReadByte(); sha[19] = packet.ReadByte(); sha[4] = packet.ReadByte(); sha[7] = packet.ReadByte(); sha[16] = packet.ReadByte(); sha[3] = packet.ReadByte(); packet.ReadInt16E<ClientVersionBuild>("Client Build"); sha[8] = packet.ReadByte(); packet.ReadUInt32("UInt32 3"); packet.ReadByte("Unk Byte"); sha[17] = packet.ReadByte(); sha[6] = packet.ReadByte(); sha[0] = packet.ReadByte(); sha[1] = packet.ReadByte(); sha[11] = packet.ReadByte(); packet.ReadUInt32("Client seed"); sha[2] = packet.ReadByte(); packet.ReadUInt32("UInt32 4"); sha[14] = packet.ReadByte(); sha[13] = packet.ReadByte(); var addons = new Packet(packet.ReadBytes(packet.ReadInt32()), packet.Opcode, packet.Time, packet.Direction, packet.Number, packet.Writer, packet.FileName); CoreParsers.AddonHandler.ReadClientAddonsList(addons); addons.ClosePacket(false); packet.ReadBit("Unk bit"); var size = (int)packet.ReadBits(12); packet.ReadBytesString("Account name", size); packet.AddValue("Proof SHA-1 Hash", Utilities.ByteArrayToHexString(sha)); }