Data hosted with ♥ by Pastebin.com - Download Raw - See Original
  1. ///////////////////////////////////////////////////Stat Index + Addr/////////////////////////////////////////////////////
  2. enum Addresses {
  3.     //Stats
  4.     SV_SendServerCommand_a = 0x22D2E4,
  5.     SV_GetClientPersistentDataBuffer_a = 0x2246A0,
  6.     MSG_Init_a = 0x1FBC78,
  7.     MSG_WriteByte_a = 0x1FC0F0,
  8.     MSG_WriteLong_a = 0x1FC198,
  9.     MSG_WriteData_a = 0x1FC128,
  10.     MSG_WriteBits_a = 0x1FBEEC,
  11. };
  12.  
  13. enum statIndex {
  14.     Prestige = 3240,
  15.     Experience = 0xA98,
  16.     Score = 0xCB0,
  17.     Wins = 0xd0c,
  18.     Losses = 0xd10,
  19.     Ties = 0xd14,
  20.     Win_Streak = 0xD18,
  21.     Kills = 0xcd8,
  22.     Deaths = 0xCE0,
  23.     Ratio = 0xD08,
  24.     Headshots = 0xCEC,
  25.     Accuracy = 0xd30,
  26.     Assists = 0xce8,
  27.     Kill_Streak = 0xcdc,
  28.     Time_Played1 = 0xCF8,
  29.     Time_Played2 = 0xCFC,
  30.     Add_Classes = 0x2B0F,
  31.     Tokens = 0x2B07,
  32.     DoubleXP = 0x2B5D,
  33.     DoubleWeaponXP = 0x2B65,
  34.     ClassName1 = 0x1058,
  35.     ClassName2 = 0x10BA,
  36.     ClassName3 = 0x111C,
  37.     ClassName4 = 0x117E,
  38.     ClassName5 = 0x11E0,
  39.     ClassName6 = 0x1242,
  40.     ClassName7 = 0x12A4,
  41.     ClassName8 = 0x1306,
  42.     ClassName9 = 0x1368,
  43.     ClassName10 = 0x13CA,
  44.     ClassName11 = 0x142C,
  45.     ClassName12 = 0x148E,
  46.     ClassName13 = 0x14F0,
  47.     ClassName14 = 0x1552,
  48.     ClassName15 = 0x15B4,
  49.     PMClassName1 = 0x1616,
  50.     PMClassName2 = 0x1678,
  51.     PMClassName3 = 0x16DA,
  52.     PMClassName4 = 0x173C,
  53.     PMClassName5 = 0x179E,
  54.  
  55.     GodmodeClass1 = 4235,
  56.     GodmodeClass2 = 4333,
  57.     GodmodeClass3 = 4431,
  58.     GodmodeClass4 = 4529,
  59.     GodmodeClass5 = 4627,
  60.     GodmodeClass6 = 4725,
  61.     GodmodeClass7 = 4823,
  62.     GodmodeClass8 = 4921,
  63.     GodmodeClass9 = 5019,
  64.     GodmodeClass10 = 5117,
  65.     GodmodeClass11 = 5215,
  66.     GodmodeClass12 = 5313,
  67.     GodmodeClass13 = 5411,
  68.     GodmodeClass14 = 5509,
  69.     GodmodeClass15 = 5607,
  70.     PMGodmodeClass1 = 5705,
  71.     PMGodmodeClass2 = 5803,
  72.     PMGodmodeClass3 = 5901,
  73.     PMGodmodeClass4 = 5999,
  74.     PMGodmodeClass5 = 6097,
  75.  
  76.     UnlockAll0 = 0x17DB,
  77.     UnlockAll1 = 0x8E0,
  78.     UnlockAll2 = 0x28CC,
  79.     UnlockAll3 = 0x181E,
  80. };
  81.  
  82. enum PublicClass1 { // Add 0x62 for next Class (max. 20)
  83.     PubPrimary_Weapon = 4144, //7 = ACR
  84.     PubPrimWeap_Attach1 = 4146,
  85.     PubPrimWeap_Attach2 = 4148,
  86.     PubPrimWeap_Attach3 = 4152, //76 = Radar 75 = Störer
  87.     PubPrimWeap_Visier = 4154, // maxValue = 6 // 4 = Best
  88.     PubPrimWeap_Camo = 4150, // 13 = Gold
  89.  
  90.     PubSecondary_Weapon = 4156,
  91.     PubSecWeap_Attach1 = 4158,
  92.     PubSecWeap_Attach2 = 4160,
  93.     PubSecWeap_Attach3 = 4164, //76 = Radar 75 = Störer
  94.     PubSecWeap_Visier = 4166, // maxValue = 6 // 4 = Best
  95.     PubSecWeap_Camo = 4162, // 13 = Gold
  96.  
  97.     PubPrimaryGrenade = 4168,
  98.     PubSecondaryGrenade = 4180,
  99.  
  100.     PubPerk1 = 4170,
  101.     PubPerk2 = 4172,
  102.     PubPerk3 = 4174,
  103.  
  104.     PubDeathstreak = 4204,
  105.  
  106.     PubToggleKillStreak = 4178, // Storm = 94 // Support = 95 // Specialist = 61
  107. };
  108.  
  109. /////////////////////////////////////////////////////All Client Stats/////////////////////////////////////////////////////
  110.  
  111. opd_s SV_SendServerCommandMsg_t = {SV_SendServerCommand_a, TOC};
  112. opd_s SV_GetClientPersistentDataBuffer_t = {SV_GetClientPersistentDataBuffer_a, TOC};
  113. opd_s MSG_Init_t = {MSG_Init_a, TOC};
  114. opd_s MSG_WriteByte_t = {MSG_WriteByte_a, TOC};
  115. opd_s MSG_WriteLong_t = {MSG_WriteLong_a, TOC};
  116. opd_s MSG_WriteData_t = {MSG_WriteData_a, TOC};
  117. opd_s MSG_WriteBits_t = {MSG_WriteBits_a, TOC};
  118.  
  119. int (*SV_GetClientPersistentDataBuffer)(int clientNum) = (int(*)(int))&SV_GetClientPersistentDataBuffer_t;
  120. void (*SV_SendServerCommandMsg)(int clientNum, int type, msg_t* msg) = (void(*)(int, int, msg_t*))&SV_SendServerCommandMsg_t;
  121. void (*MSG_Init)(msg_t* buf, char* data, int length) = (void(*)(msg_t* buf, char* data, int length))&MSG_Init_t;
  122. void (*MSG_WriteByte)(msg_t* msg, int value) = (void(*)(msg_t* msg, int value))&MSG_WriteByte_t;
  123. void (*MSG_WriteLong)(msg_t* msg, int c) = (void(*)(msg_t* msg, int c))&MSG_WriteLong_t;
  124. void (*MSG_WriteData)(msg_t* buf, char* data, int length) = (void(*)(msg_t* buf, char* data, int length))&MSG_WriteData_t;
  125. void (*MSG_WriteBits)(msg_t* msg, int value, int bits) = (void(*)(msg_t* msg, int value, int bits))&MSG_WriteBits_t;
  126.  
  127. void unlockAll_callBack(uint64_t arg);
  128. void derank_callBack(uint64_t arg);
  129. void removeGMC_callBack(uint64_t arg);
  130.  
  131. void SetStatsInt(int clientNum, int statIndex, int value) {
  132.     char* msgBuffer = (char*)malloc(0x400);
  133.     msg_t msg;
  134.  
  135.     MSG_Init(&msg, msgBuffer, 0x400);
  136.     MSG_WriteByte(&msg, 0x47);
  137.     MSG_WriteLong(&msg, statIndex);
  138.     MSG_WriteByte(&msg, sizeof(value));
  139.     MSG_WriteBits(&msg, value, 32);
  140.     SV_SendServerCommandMsg(getClient_t(clientNum), 1, &msg);
  141.     free(msgBuffer);
  142. }
  143.  
  144. void SetStatsBytes(int clientNum, int statIndex, char* value, int size) {
  145.     char* msgBuffer = (char*)malloc(0x400);
  146.     msg_t msg;
  147.  
  148.     MSG_Init(&msg, msgBuffer, 0x400);
  149.     MSG_WriteByte(&msg, 0x47);
  150.     MSG_WriteLong(&msg, statIndex);
  151.     MSG_WriteByte(&msg, size);
  152.     MSG_WriteData(&msg, value, size);
  153.     SV_SendServerCommandMsg(getClient_t(clientNum), 1, &msg);
  154.     free(msgBuffer);
  155. }
  156.  
  157. ///////////////////////////////////////////////Unlock All incl Class1 Mod///////////////////////////////////////////////
  158. void GiveUnlockAll(int arg) {
  159.     char bytes[2] = {0x13, 0x02};
  160.     char bytes2[64] = {0x1E, 0x38, 0x1E, 0x38, 0x1E, 0x38, 0x1E, 0x38, 0x1E, 0x38, 0x1E, 0x38, 0x1E, 0x38, 0x1E, 0x38, 0x1E, 0x38, 0x1E, 0x38, 0x1E, 0x38, 0x1E, 0x38, 0x1E, 0x38, 0x1E, 0x38, 0x1E, 0x38, 0x1E, 0x38, 0x1E, 0x38, 0x1E, 0x38, 0x1E, 0x38, 0x1E, 0x38, 0x1E, 0x38, 0x1E, 0x38, 0x1E, 0x38, 0x1E, 0x38, 0x1E, 0x38, 0x1E, 0x38, 0x1E, 0x38, 0x1E, 0x38, 0x1E, 0x38, 0x1E, 0x38, 0x1E, 0x38, 0x1E, 0x38};
  161.     char bytes3[64] = {0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF};
  162.     char bytes4[192] = {0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A};
  163.  
  164.     SetStatsBytes(arg, UnlockAll0, bytes, 2);
  165.  
  166.     for (int i = 0; i < 0x2C4; i += 64) {
  167.         SetStatsBytes(arg, (UnlockAll1 + i), bytes2, 64);
  168.         sleep(20);
  169.         if (i < 0xCF)
  170.             SetStatsBytes(arg, (UnlockAll2 + i), bytes3, 64);
  171.         sleep(55);
  172.     }
  173.     for (int i = 0; i < 0x1064; i += 192) {
  174.         SetStatsBytes(arg, (UnlockAll3 + i), bytes4, 192);
  175.         sleep(50);
  176.     }
  177.  
  178.     SetStatsInt(arg, Prestige, 10);
  179.     SetStatsInt(arg, Experience, 1746200);
  180.     SetStatsInt(arg, Score, 1342177280);
  181.     SetStatsInt(arg, Wins, 1342177280);
  182.     SetStatsInt(arg, Losses, 0);
  183.     SetStatsInt(arg, Ties, 0);
  184.     SetStatsInt(arg, Win_Streak, 1342177280);
  185.     SetStatsInt(arg, Kills, 1342177280);
  186.     SetStatsInt(arg, Deaths, 0);
  187.     SetStatsInt(arg, Ratio, 1342177280);
  188.     SetStatsInt(arg, Headshots, 1342177280);
  189.     SetStatsInt(arg, Accuracy, 1);
  190.     SetStatsInt(arg, Assists, 1342177280);
  191.     SetStatsInt(arg, Kill_Streak, 1342177280);
  192.     SetStatsInt(arg, Time_Played1, 1342177280);
  193.     SetStatsInt(arg, Time_Played2, 1342177280);
  194.     SetStatsInt(arg, Add_Classes, 15);
  195.     SetStatsInt(arg, Tokens, 1342177280);
  196.     SetStatsInt(arg, DoubleXP, 1342177280);
  197.     SetStatsInt(arg, DoubleWeaponXP, 1342177280);
  198.     SetStatsBytes(arg, ClassName1, "Vortex^2IW5 ^7By", 20);
  199.     SetStatsBytes(arg, ClassName2, "^201cedricv2^7", 20);
  200.     SetStatsBytes(arg, ClassName3, "Vortex^2IW5 ^7By", 20);
  201.     SetStatsBytes(arg, ClassName4, "^201cedricv2^7", 20);
  202.     SetStatsBytes(arg, ClassName5, "Vortex^2IW5 ^7By", 20);
  203.     SetStatsBytes(arg, ClassName6, "^201cedricv2^7", 20);
  204.     SetStatsBytes(arg, ClassName7, "Vortex^2IW5 ^7By", 20);
  205.     SetStatsBytes(arg, ClassName8, "^201cedricv2^7", 20);
  206.     SetStatsBytes(arg, ClassName9, "Vortex^2IW5 ^7By", 20);
  207.     SetStatsBytes(arg, ClassName10, "^201cedricv2^7", 20);
  208.     SetStatsBytes(arg, ClassName11, "Vortex^2IW5 ^7By", 20);
  209.     SetStatsBytes(arg, ClassName12, "^201cedricv2^7", 20);
  210.     SetStatsBytes(arg, ClassName13, "Vortex^2IW5 ^7By", 20);
  211.     SetStatsBytes(arg, ClassName14, "^201cedricv2^7", 20);
  212.     SetStatsBytes(arg, ClassName15, "Vortex^2IW5 ^7By", 20);
  213.     SetStatsBytes(arg, PMClassName1, "Vortex^2IW5 ^7By", 20);
  214.     SetStatsBytes(arg, PMClassName2, "^201cedricv2^7", 20);
  215.     SetStatsBytes(arg, PMClassName3, "Vortex^2IW5 ^7By", 20);
  216.     SetStatsBytes(arg, PMClassName4, "^201cedricv2^7", 20);
  217.     SetStatsBytes(arg, PMClassName5, "Vortex^2IW5 ^7By", 20);
  218.  
  219.     //Class 0
  220.     SetStatsInt(arg, PubPrimary_Weapon + (0 * 0x62), 7);
  221.     SetStatsInt(arg, PubPrimWeap_Attach1 + (0 * 0x62), 7);
  222.     SetStatsInt(arg, PubPrimWeap_Attach2 + (0 * 0x62), 76);
  223.     SetStatsInt(arg, PubPrimWeap_Attach3 + (0 * 0x62), 75);
  224.     SetStatsInt(arg, PubPrimWeap_Visier + (0 * 0x62), 4);
  225.     SetStatsInt(arg, PubPrimWeap_Camo + (0 * 0x62), 13);
  226.     SetStatsInt(arg, PubSecondary_Weapon + (0 * 0x62), 7);
  227.     SetStatsInt(arg, PubSecWeap_Attach1 + (0 * 0x62), 7);
  228.     SetStatsInt(arg, PubSecWeap_Attach2 + (0 * 0x62), 7);
  229.     SetStatsInt(arg, PubSecWeap_Attach3 + (0 * 0x62), 76);
  230.     SetStatsInt(arg, PubSecWeap_Visier + (0 * 0x62), 4);
  231.     SetStatsInt(arg, PubSecWeap_Camo + (0 * 0x62), 13);
  232.     SetStatsInt(arg, PubPrimaryGrenade + (0 * 0x62), 7);
  233.     SetStatsInt(arg, PubSecondaryGrenade + (0 * 0x62), 7);
  234.     SetStatsInt(arg, PubPerk1 + (0 * 0x62), 15);
  235.     SetStatsInt(arg, PubPerk2 + (0 * 0x62), 38);
  236.     SetStatsInt(arg, PubPerk3 + (0 * 0x62), 148);
  237.     SetStatsInt(arg, PubDeathstreak + (0 * 0x62), 94);
  238.     SetStatsInt(arg, PubToggleKillStreak + (0 * 0x62), 94);
  239.  
  240. /////////////////////////////////////////////////////Remove Godmodes/////////////////////////////////////////////////////
  241. void RemoveGodmodeClasses(int clientIndex) {
  242.     char nullByte = 0x00;
  243.     for (int i = 0; i < 15; i++) {
  244.         SetStatsBytes(clientIndex, 0x108B + (0x62 * i), &nullByte, 20); //Online Classes
  245.         if (i < 5)
  246.             SetStatsBytes(clientIndex, 0x1649 + (0x62 * i), &nullByte, 20); //Private Match Classes
  247.     }