Stat Structure Part 2
//Bit Size: 0x90
struct gamemodecompletionhistory_s
{
//Bit Offset: 0x0
//Bit Size: 0x18
int started;
//Bit Offset: 0x18
//Bit Size: 0x18
int quit;
//Bit Offset: 0x30
//Bit Size: 0x18
int dashboard;
//Bit Offset: 0x48
//Bit Size: 0x18
int timeout;
//Bit Offset: 0x60
//Bit Size: 0x18
int kicked;
//Bit Offset: 0x78
//Bit Size: 0x18
int completed;
};
//Bit Size: 0x120
struct gamemodehistorystats_s
{
//Bit Offset: 0x0
//Bit Size: 0x90
gamemodecompletionhistory_s played;
//Bit Offset: 0x90
//Bit Size: 0x90
gamemodecompletionhistory_s hosted;
};
//Bit Size: 0xA6
struct matchhistorystats_s
{
//Bit Offset: 0x0
//Bit Size: 0x20
int startingtime;
//Bit Offset: 0x20
//Bit Size: 0x20
int endingtime;
//Bit Offset: 0x40
//Bit Size: 0x18
int score;
//Bit Offset: 0x58
//Bit Size: 0x5
int scoreboardposition;
//Bit Offset: 0x5D
//Bit Size: 0x10
short kills;
//Bit Offset: 0x6D
//Bit Size: 0x10
short deaths;
//Bit Offset: 0x7D
//Bit Size: 0x20
float teamscoreratio;
//Bit Offset: 0x9D
//Bit Size: 0x5
int gametype;
//Bit Offset: 0xA2
//Bit Size: 0x3
int quittype;
//Bit Offset: 0xA5
//Bit Size: 0x1
int forgiven;
};
//Bit Size: 0x15E8
struct gamehistorystats_s
{
//Bit Offset: 0x0
//Bit Size: 0x120
gamemodehistorystats_s modehistory;
//Bit Offset: 0x120
//Bit Size: 0x14C0
matchhistorystats_s matchhistory[32];
//Bit Offset: 0x15E0
//Bit Size: 0x8
byte currentmatchhistoryindex;
};
//Bit Size: 0x60
struct probation_s
{
//Bit Offset: 0x0
//Bit Size: 0x20
int version;
//Bit Offset: 0x20
//Bit Size: 0x20
int timewhenprobationisdone;
//Bit Offset: 0x40
//Bit Size: 0x20
int count;
};
//Bit Size: 0x66A
struct gametypestats_s
{
//Bit Offset: 0x0
//Bit Size: 0x30
intstat_s assists;
//Bit Offset: 0x30
//Bit Size: 0x30
intstat_s cur_win_streak;
//Bit Offset: 0x60
//Bit Size: 0x30
intstat_s crush;
//Bit Offset: 0x90
//Bit Size: 0x30
intstat_s deaths;
//Bit Offset: 0xC0
//Bit Size: 0x30
intstat_s defends;
//Bit Offset: 0xF0
//Bit Size: 0x30
intstat_s kdratio;
//Bit Offset: 0x120
//Bit Size: 0x30
intstat_s kills;
//Bit Offset: 0x150
//Bit Size: 0x30
intstat_s kill_streak;
//Bit Offset: 0x180
//Bit Size: 0x30
intstat_s losses;
//Bit Offset: 0x1B0
//Bit Size: 0x30
intstat_s offends;
//Bit Offset: 0x1E0
//Bit Size: 0x30
intstat_s score;
//Bit Offset: 0x210
//Bit Size: 0x30
intstat_s ties;
//Bit Offset: 0x240
//Bit Size: 0x30
intstat_s time_played_total;
//Bit Offset: 0x270
//Bit Size: 0x30
intstat_s top3;
//Bit Offset: 0x2A0
//Bit Size: 0x30
intstat_s top3team;
//Bit Offset: 0x2D0
//Bit Size: 0x30
intstat_s topplayer;
//Bit Offset: 0x300
//Bit Size: 0x30
intstat_s wins;
//Bit Offset: 0x330
//Bit Size: 0x30
intstat_s win_streak;
//Bit Offset: 0x360
//Bit Size: 0x30
intstat_s wlratio;
//Bit Offset: 0x390
//Bit Size: 0x30
intstat_s challenge1;
//Bit Offset: 0x3C0
//Bit Size: 0x30
intstat_s challenge2;
//Bit Offset: 0x3F0
//Bit Size: 0x30
intstat_s challenge3;
//Bit Offset: 0x420
//Bit Size: 0x30
intstat_s challenge4;
//Bit Offset: 0x450
//Bit Size: 0x30
intstat_s challenge5;
//Bit Offset: 0x480
//Bit Size: 0x30
intstat_s challenge6;
//Bit Offset: 0x4B0
//Bit Size: 0x30
intstat_s challenge7;
//Bit Offset: 0x4E0
//Bit Size: 0x30
intstat_s challenge8;
//Bit Offset: 0x510
//Bit Size: 0x30
intstat_s challenge9;
//Bit Offset: 0x540
//Bit Size: 0x30
intstat_s challenge10;
//Bit Offset: 0x570
//Bit Size: 0xFA
prevscores_s prevscores[10];
};
//Bit Size: 0x10
struct mapstats_s
{
//Bit Offset: 0x0
//Bit Size: 0x10
short vote_succeeded;
};
//Bit Size: 0x360
struct groupstats_s
{
//Bit Offset: 0x0
//Bit Size: 0x360
intstat_s stats[weaponstat_e];
};
//Bit Size: 0x39E
struct itemstat_s
{
//Bit Offset: 0x0
//Bit Size: 0x1
int purchased;
//Bit Offset: 0x1
//Bit Size: 0x1
int markedold;
//Bit Offset: 0x2
//Bit Size: 0x3
int isproversionunlocked[3];
//Bit Offset: 0x5
//Bit Size: 0x360
intstat_s stats[weaponstat_e];
//Bit Offset: 0x365
//Bit Size: 0x1D
int attachmentmarkedold[attachments_e];
//Bit Offset: 0x382
//Bit Size: 0x18
int xp;
//Bit Offset: 0x39A
//Bit Size: 0x4
int plevel;
};
//Bit Size: 0x360
struct attachmentstats_s
{
//Bit Offset: 0x0
//Bit Size: 0x360
intstat_s stats[weaponstat_e];
};
//Bit Size: 0x64
struct weaponstat_s
{
//Bit Offset: 0x0
//Bit Size: 0x64
int optionmarkedasold[100];
};
//Bit Size: 0x1A4
struct cacloadout_s
{
//Bit Offset: 0x0
//Bit Size: 0x8
byte primary;
//Bit Offset: 0x8
//Bit Size: 0x8
byte primaryattachmenttop;
//Bit Offset: 0x10
//Bit Size: 0x8
byte primaryattachmentbottom;
//Bit Offset: 0x18
//Bit Size: 0x8
byte primaryattachmenttrigger;
//Bit Offset: 0x20
//Bit Size: 0x8
byte primaryattachmentmuzzle;
//Bit Offset: 0x28
//Bit Size: 0x8
byte primaryattachmentgunperk;
//Bit Offset: 0x30
//Bit Size: 0x8
byte primarycamo;
//Bit Offset: 0x38
//Bit Size: 0x8
byte primaryreticle;
//Bit Offset: 0x40
//Bit Size: 0x8
byte primaryreticlecolor;
//Bit Offset: 0x48
//Bit Size: 0x8
byte primarylens;
//Bit Offset: 0x50
//Bit Size: 0x8
byte primarytag;
//Bit Offset: 0x58
//Bit Size: 0x8
byte primaryemblem;
//Bit Offset: 0x60
//Bit Size: 0x3
unsigned int primaryattachmentorder1;
//Bit Offset: 0x63
//Bit Size: 0x3
unsigned int primaryattachmentorder2;
//Bit Offset: 0x66
//Bit Size: 0x3
unsigned int primaryattachmentorder3;
//Bit Offset: 0x69
//Bit Size: 0x3
unsigned int primaryattachmentorder4;
//Bit Offset: 0x6C
//Bit Size: 0x3
unsigned int primaryattachmentorder5;
//Bit Offset: 0x6F
//Bit Size: 0x8
byte secondary;
//Bit Offset: 0x77
//Bit Size: 0x8
byte secondaryattachmenttop;
//Bit Offset: 0x7F
//Bit Size: 0x8
byte secondaryattachmentbottom;
//Bit Offset: 0x87
//Bit Size: 0x8
byte secondaryattachmenttrigger;
//Bit Offset: 0x8F
//Bit Size: 0x8
byte secondaryattachmentmuzzle;
//Bit Offset: 0x97
//Bit Size: 0x8
byte secondaryattachmentgunperk;
//Bit Offset: 0x9F
//Bit Size: 0x8
byte secondarycamo;
//Bit Offset: 0xA7
//Bit Size: 0x8
byte secondaryreticle;
//Bit Offset: 0xAF
//Bit Size: 0x8
byte secondaryreticlecolor;
//Bit Offset: 0xB7
//Bit Size: 0x8
byte secondarylens;
//Bit Offset: 0xBF
//Bit Size: 0x8
byte secondarytag;
//Bit Offset: 0xC7
//Bit Size: 0x8
byte secondaryemblem;
//Bit Offset: 0xCF
//Bit Size: 0x3
unsigned int secondaryattachmentorder1;
//Bit Offset: 0xD2
//Bit Size: 0x3
unsigned int secondaryattachmentorder2;
//Bit Offset: 0xD5
//Bit Size: 0x3
unsigned int secondaryattachmentorder3;
//Bit Offset: 0xD8
//Bit Size: 0x3
unsigned int secondaryattachmentorder4;
//Bit Offset: 0xDB
//Bit Size: 0x3
unsigned int secondaryattachmentorder5;
//Bit Offset: 0xDE
//Bit Size: 0x8
byte specialty1;
//Bit Offset: 0xE6
//Bit Size: 0x8
byte specialty2;
//Bit Offset: 0xEE
//Bit Size: 0x8
byte specialty3;
//Bit Offset: 0xF6
//Bit Size: 0x8
byte specialty4;
//Bit Offset: 0xFE
//Bit Size: 0x8
byte specialty5;
//Bit Offset: 0x106
//Bit Size: 0x8
byte specialty6;
//Bit Offset: 0x10E
//Bit Size: 0x8
byte primarygrenade;
//Bit Offset: 0x116
//Bit Size: 0x8
byte primarygrenadecount;
//Bit Offset: 0x11E
//Bit Size: 0x1
unsigned int primarygrenadestatus1;
//Bit Offset: 0x11F
//Bit Size: 0x1
unsigned int primarygrenadestatus2;
//Bit Offset: 0x120
//Bit Size: 0x1
unsigned int primarygrenadestatus3;
//Bit Offset: 0x121
//Bit Size: 0x8
byte specialgrenade;
//Bit Offset: 0x129
//Bit Size: 0x8
byte specialgrenadecount;
//Bit Offset: 0x131
//Bit Size: 0x1
unsigned int specialgrenadestatus1;
//Bit Offset: 0x132
//Bit Size: 0x1
unsigned int specialgrenadestatus2;
//Bit Offset: 0x133
//Bit Size: 0x1
unsigned int specialgrenadestatus3;
//Bit Offset: 0x134
//Bit Size: 0x8
byte equipment;
//Bit Offset: 0x13C
//Bit Size: 0x8
byte equipmentcount;
//Bit Offset: 0x144
//Bit Size: 0x8
byte equipment2;
//Bit Offset: 0x14C
//Bit Size: 0x8
byte equipment2count;
//Bit Offset: 0x154
//Bit Size: 0x8
byte bonuscard1;
//Bit Offset: 0x15C
//Bit Size: 0x8
byte bonuscard2;
//Bit Offset: 0x164
//Bit Size: 0x8
byte bonuscard3;
//Bit Offset: 0x16C
//Bit Size: 0x8
unsigned int primaryattachment1;
//Bit Offset: 0x174
//Bit Size: 0x8
unsigned int primaryattachment2;
//Bit Offset: 0x17C
//Bit Size: 0x8
unsigned int primaryattachment3;
//Bit Offset: 0x184
//Bit Size: 0x8
unsigned int secondaryattachment1;
//Bit Offset: 0x18C
//Bit Size: 0x8
unsigned int secondaryattachment2;
//Bit Offset: 0x194
//Bit Size: 0x8
unsigned int secondaryattachment3;
//Bit Offset: 0x19C
//Bit Size: 0x8
byte knifecamo;
};
//Bit Size: 0x15A3
struct cacstatsloadoutlist_s
{
//Bit Offset: 0x0
//Bit Size: 0x1068
cacloadout_s customclass[10];
//Bit Offset: 0x1068
//Bit Size: 0x500
char customclassname[10];
//Bit Offset: 0x1568
//Bit Size: 0x8
byte killstreak1;
//Bit Offset: 0x1570
//Bit Size: 0x8
byte killstreak2;
//Bit Offset: 0x1578
//Bit Size: 0x8
byte killstreak3;
//Bit Offset: 0x1580
//Bit Size: 0x8
byte killstreak4;
//Bit Offset: 0x1588
//Bit Size: 0x8
byte killstreak5;
//Bit Offset: 0x1590
//Bit Size: 0x8
byte killstreak6;
//Bit Offset: 0x1598
//Bit Size: 0x1
int resetwarningdisplayed;
//Bit Offset: 0x1599
//Bit Size: 0x1
int classwarningdisplayed;
//Bit Offset: 0x159A
//Bit Size: 0x1
int iamacheater;
//Bit Offset: 0x159B
//Bit Size: 0x8
byte loadoutversion;
};
//Bit Size: 0xAEC
struct cacloadoutlist_s
{
//Bit Offset: 0x0
//Bit Size: 0x834
cacloadout_s customclass[5];
//Bit Offset: 0x834
//Bit Size: 0x280
char customclassname[5];
//Bit Offset: 0xAB4
//Bit Size: 0x8
byte killstreak1;
//Bit Offset: 0xABC
//Bit Size: 0x8
byte killstreak2;
//Bit Offset: 0xAC4
//Bit Size: 0x8
byte killstreak3;
//Bit Offset: 0xACC
//Bit Size: 0x8
byte killstreak4;
//Bit Offset: 0xAD4
//Bit Size: 0x8
byte killstreak5;
//Bit Offset: 0xADC
//Bit Size: 0x8
byte killstreak6;
//Bit Offset: 0xAE4
//Bit Size: 0x8
byte loadoutversion;
};
//Bit Size: 0x68
struct activefriend_s
{
//Bit Offset: 0x0
//Bit Size: 0x40
__int64 xuid;
//Bit Offset: 0x40
//Bit Size: 0x8
byte playedcount;
//Bit Offset: 0x48
//Bit Size: 0x20
unsigned int lastplayedtime;
};
//Bit Size: 0x3
struct emblemicon_s
{
//Bit Offset: 0x0
//Bit Size: 0x1
int purchased;
//Bit Offset: 0x1
//Bit Size: 0x1
int markedold;
//Bit Offset: 0x2
//Bit Size: 0x1
int unlocked;
};
//Bit Size: 0x1
struct emblemlayer_s
{
//Bit Offset: 0x0
//Bit Size: 0x1
int markedold;
};
//Bit Size: 0x1390
struct emblemstats_s
{
//Bit Offset: 0x0
//Bit Size: 0x4
int layerspurchased;
//Bit Offset: 0x4
//Bit Size: 0xC
emblemlayer_s layers[12];
//Bit Offset: 0x10
//Bit Size: 0xC00
emblemicon_s icons[1024];
//Bit Offset: 0xC10
//Bit Size: 0x780
emblemicon_s backgrounds[640];
};
//Bit Size: 0x2
struct clantagfeatures_s
{
//Bit Offset: 0x0
//Bit Size: 0x1
int purchased;
//Bit Offset: 0x1
//Bit Size: 0x1
int markedold;
};
//Bit Size: 0x4C
struct clantagstats_s
{
//Bit Offset: 0x0
//Bit Size: 0x1C
clantagfeatures_s features[clantagfeatures_e];
//Bit Offset: 0x1C
//Bit Size: 0x8
byte selectedfeature;
//Bit Offset: 0x24
//Bit Size: 0x28
char clanname;
};
//Bit Size: 0x20
struct ipaddress_s
{
//Bit Offset: 0x0
//Bit Size: 0x8
byte a;
//Bit Offset: 0x8
//Bit Size: 0x8
byte b;
//Bit Offset: 0x10
//Bit Size: 0x8
byte c;
//Bit Offset: 0x18
//Bit Size: 0x8
byte d;
};
//Bit Size: 0x140
struct consoleinfo_s
{
//Bit Offset: 0x0
//Bit Size: 0x40
__int64 consoleidhigh;
//Bit Offset: 0x40
//Bit Size: 0x40
__int64 consoleidlow;
//Bit Offset: 0x80
//Bit Size: 0x40
__int64 macaddress;
//Bit Offset: 0xC0
//Bit Size: 0x20
int usecount;
//Bit Offset: 0xE0
//Bit Size: 0x20
int timestamp;
//Bit Offset: 0x100
//Bit Size: 0x20
ipaddress_s ipexternal;
//Bit Offset: 0x120
//Bit Size: 0x20
int nattype;
};
//Bit Size: 0xB8
struct leaguestats_s
{
//Bit Offset: 0x0
//Bit Size: 0x8
byte leagueid;
//Bit Offset: 0x8
//Bit Size: 0x8
byte divisionid;
//Bit Offset: 0x10
//Bit Size: 0x8
byte seasonid;
//Bit Offset: 0x18
//Bit Size: 0x40
__int64 teamid;
//Bit Offset: 0x58
//Bit Size: 0x40
__int64 subdivisionid;
//Bit Offset: 0x98
//Bit Size: 0x20
int rank;
};
//Bit Size: 0xD
struct prestigetokens_s
{
//Bit Offset: 0x0
//Bit Size: 0x1
int tokenspent;
//Bit Offset: 0x1
//Bit Size: 0x4
int tokentype[prestigetokentype_e];
//Bit Offset: 0x5
//Bit Size: 0x8
byte itemunlocked;
};
//Bit Size: 0x60
struct gfxdevicesupport
{
//Bit Offset: 0x0
//Bit Size: 0x8
int deviceflags;
//Bit Offset: 0x8
//Bit Size: 0x8
int devicevideostandardaspect;
//Bit Offset: 0x10
//Bit Size: 0x8
int deviceconversion;
//Bit Offset: 0x18
//Bit Size: 0x8
int device3d;
//Bit Offset: 0x20
//Bit Size: 0x10
int devicewidth;
//Bit Offset: 0x30
//Bit Size: 0x10
int deviceheight;
//Bit Offset: 0x40
//Bit Size: 0x20
float devicerefreshhz;
};
//Bit Size: 0x160
struct gfxgamutinfo
{
//Bit Offset: 0x0
//Bit Size: 0x20
float xred;
//Bit Offset: 0x20
//Bit Size: 0x20
float yred;
//Bit Offset: 0x40
//Bit Size: 0x20
float xgreen;
//Bit Offset: 0x60
//Bit Size: 0x20
float ygreen;
//Bit Offset: 0x80
//Bit Size: 0x20
float xblue;
//Bit Offset: 0xA0
//Bit Size: 0x20
float xwhite;
//Bit Offset: 0xC0
//Bit Size: 0x20
float ywhite;
//Bit Offset: 0xE0
//Bit Size: 0x20
float gammared;
//Bit Offset: 0x100
//Bit Size: 0x20
float gammagreen;
//Bit Offset: 0x120
//Bit Size: 0x20
float gammablue;
//Bit Offset: 0x140
//Bit Size: 0x20
unsigned int gammatype;
};
//Bit Size: 0x1120
struct gfxdisplayinfo
{
//Bit Offset: 0x0
//Bit Size: 0x20
unsigned int deviceformatid;
//Bit Offset: 0x20
//Bit Size: 0x20
unsigned int devicesize;
//Bit Offset: 0x40
//Bit Size: 0x8
int hasedid;
//Bit Offset: 0x48
//Bit Size: 0x8
int devicesupportcount;
//Bit Offset: 0x50
//Bit Size: 0x8
int devicecolorspace;
//Bit Offset: 0x58
//Bit Size: 0x8
int deviceconnection;
//Bit Offset: 0x60
//Bit Size: 0x8
int outputdisplayvideostandard;
//Bit Offset: 0x68
//Bit Size: 0x8
int outputdisplayflags;
//Bit Offset: 0x70
//Bit Size: 0x10
int devicelatency;
//Bit Offset: 0x80
//Bit Size: 0x10
int outputdisplaywidth;
//Bit Offset: 0x90
//Bit Size: 0x10
int outputdisplayheight;
//Bit Offset: 0xA0
//Bit Size: 0x20
float outputdisplayaspectratio;
//Bit Offset: 0xC0
//Bit Size: 0x20
float outputdisplayhz;
//Bit Offset: 0xE0
//Bit Size: 0x10
int renderdisplaywidth;
//Bit Offset: 0xF0
//Bit Size: 0x10
int renderdisplayheight;
//Bit Offset: 0x100
//Bit Size: 0xC00
gfxdevicesupport devicesupport[32];
//Bit Offset: 0xD00
//Bit Size: 0x160
gfxgamutinfo edidgamut;
//Bit Offset: 0xE60
//Bit Size: 0x160
gfxgamutinfo referencegamut;
//Bit Offset: 0xFC0
//Bit Size: 0x160
gfxgamutinfo outputgamut;
};
//Bit Size: 0x960
struct youtube_t
{
//Bit Offset: 0x0
//Bit Size: 0x800
char deviceid;
//Bit Offset: 0x800
//Bit Size: 0x140
char devicekey;
//Bit Offset: 0x940
//Bit Size: 0x20
int maxviewers;
};
//Bit Size: 0x403
struct elitestats_t
{
//Bit Offset: 0x0
//Bit Size: 0x400
int elitestats[32];
//Bit Offset: 0x400
//Bit Size: 0x1
int isfounder;
//Bit Offset: 0x401
//Bit Size: 0x1
int ismember;
//Bit Offset: 0x402
//Bit Size: 0x1
int ispayingcustomer;
};
//Bit Size: 0xA0
struct dlc_t
{
//Bit Offset: 0x0
//Bit Size: 0x20
int mappacks;
//Bit Offset: 0x20
//Bit Size: 0x80
int mtx[128];
};