Free60-Wiki

The Account file is a HMAC-RC4 encrypted file stored in profiles to hold things such as the profiles gamertag, PUID (Passport User ID), online key and more.

Encryption

The file is encrypted with a custom form of HMAC-RC4, which is handled by the XeKeysUnobfuscate function. The key differs between retail and development consoles and is stored in key index 0x19.

0xE1 0xBC 0x15 0x9C 0x73 0xB1 0xEA 0xE9 0xAB 0x31 0x70 0xF3 0xAD 0x47 0xEB 0xF3
0xDA 0xB6 0x9A 0xD9 0x8E 0x28 0x76 0x4F 0x97 0x7E 0xE2 0x48 0x7E 0x4F 0x3F 0x68

To decrypt the file:

To encrypt the file:

Decrypted File

Offset

Length

Type

Information

0

4

UInt32

Reserved(Flags)

4

4

UInt32

LiveFlags

8

16 chars/32 bytes

Unicode

Gamertag

40

8

ulong

XUID

48

4

UInt32

Cached User Flags

52

4

ASCII string

Xbox Live Service Provider

56

4

PasscodeKeys[4]

Passcode

60

20

ASCII string

Online Domain

80

24

ASCII string

Online Kerberos Realm

104

16

Bytes

Online Key

120

114

ASCII string

User Passport Membername

234

32

ASCII string

User Passport Password

266

114

ASCII string

Owner Passport Membername

Reserved(flags)

Name Value
Passcode Enabled 0x10000000
LIVE Enabled 0x20000000
Recovering 0x40000000

The flag at bit0 seems to be always set, not sure what it means though.

Cached User Flags

Bits Used Indices Field Name
0 Payment Instrument Credit Card
8-15 Country
16-19 Subscription Teir
24 Parental Controls Enabled
25-29 Language
   

The other bits are used, I’m just not sure what they all represent.

Passcode

The passcode is made up of these bytes:

Byte Button
0 Null
1 DPad Up
2 DPad Down
3 DPad Left
4 DPad Right
5 X
6 Y
7 A
8 B
9 Left Trigger
10 Right Trigger
11 Left Bumper
12 Right Bumper

XUID

   public class XUID    {        public System.UInt64 Value;        public XUID(System.UInt64 _Value)        {            Value = _Value;        }        public System.Boolean IsOfflineXuid        {            get            {                return (Value & 17293822569102704640L) == 16140901064495857664L;            }        }        public System.Boolean IsOnline        {            get            {                return (Value & 18446462598732840960L) == 2533274790395904L;            }        }        public System.Boolean IsTeam//Guess this is todo with devs        {            get            {                return (Value & 18374686479671624000L) == 18302628885633696000L;            }        }        public System.Boolean IsValidXuid        {            get            {                return IsOfflineXuid != IsOnlineXuid;            }        }    }

Country

     public enum XboxLiveCountry        {            Albania = 2,            Algeria = 0x1b,            Argentina = 4,            Armenia = 3,            Australia = 6,            Austria = 5,            Azerbaijan = 7,            Bahrain = 10,            Belarus = 14,            Belgium = 8,            Belize = 15,            Bolivia = 12,            Brazil = 13,            BruneiDarussalam = 11,            Bulgaria = 9,            Canada = 0x10,            Chile = 0x13,            China = 20,            Colombia = 0x15,            CostaRica = 0x16,            Croatia = 0x29,            CzechRepublic = 0x17,            Denmark = 0x19,            DominicanRepublic = 0x1a,            Ecuador = 0x1c,            Egypt = 30,            ElSalvador = 0x5f,            Estonia = 0x1d,            FaroeIslands = 0x21,            Finland = 0x20,            France = 0x22,            Georgia = 0x24,            Germany = 0x18,            Greece = 0x25,            Guatemala = 0x26,            Honduras = 40,            HongKong = 0x27,            Hungary = 0x2a,            Iceland = 0x31,            India = 0x2e,            Indonesia = 0x2b,            Iran = 0x30,            Iraq = 0x2f,            Ireland = 0x2c,            Israel = 0x2d,            Italy = 50,            Jamaica = 0x33,            Japan = 0x35,            Jordan = 0x34,            Kazakhstan = 0x3a,            Kenya = 0x36,            Korea = 0x38,            Kuwait = 0x39,            Kyrgyzstan = 0x37,            Latvia = 0x3f,            Lebanon = 0x3b,            LibyanArabJamahiriya = 0x40,            Liechtenstein = 60,            Lithuania = 0x3d,            Luxembourg = 0x3e,            Macao = 0x45,            Macedonia = 0x43,            Malaysia = 0x48,            Maldives = 70,            Mexico = 0x47,            Monaco = 0x42,            Mongolia = 0x44,            Morocco = 0x41,            Netherlands = 0x4a,            NewZealand = 0x4c,            Nicaragua = 0x49,            Norway = 0x4b,            Oman = 0x4d,            Pakistan = 0x51,            Panama = 0x4e,            Paraguay = 0x55,            Peru = 0x4f,            Philippines = 80,            Poland = 0x52,            Portugal = 0x54,            PuertoRico = 0x53,            Qatar = 0x56,            Romania = 0x57,            RussianFederation = 0x58,            SaudiArabia = 0x59,            Singapore = 0x5b,            Slovakia = 0x5d,            Slovenia = 0x5c,            SouthAfrica = 0x6d,            Spain = 0x1f,            Sweden = 90,            Switzerland = 0x12,            SyrianArabRepublic = 0x60,            Taiwan = 0x65,            Thailand = 0x61,            TrinidadAndTobago = 100,            Tunisia = 0x62,            Turkey = 0x63,            Ukraine = 0x66,            UnitedArabEmirates = 1,            UnitedKingdom = 0x23,            UnitedStates = 0x67,            Unknown = 0,            Uruguay = 0x68,            Uzbekistan = 0x69,            Venezuela = 0x6a,            Vietnam = 0x6b,            Yemen = 0x6c,            Zimbabwe = 110        }

SubscriptionTeir

       enum SubscriptionTeir        {        NoSubcription,        Silver = 3,        Gold = 6,        FamilyGold = 9        };

Language

       enum ConsoleLanguage        {            None,            English,            Japanese,            German,            French,            Spanish,            Italian,            Korean,            TChinese,            Portuguese,            SChinese,            Polish,            Russian        };

Category:Xbox360 System Software