Advertisement
Guest User

Untitled

a guest
Dec 28th, 2016
1,140
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 48.91 KB | None | 0 0
  1. #include "stdafx.h"
  2. #include "XBLExtinctionConfig.h"
  3. #include "Utilities.h"
  4. #include "titleHooks.h"
  5. #include "SystemHooks.h"
  6. #include "ServComm.h"
  7. #include "PatchData.h"
  8. #include <xbdm.h>
  9. #include <time.h>
  10. #include "AW.h"
  11. #include "BO2_game.h"
  12. #include "HUD.h"
  13. #include "ScnTab5.h"
  14. #include "HudHook.h"
  15. #include "CODMW2.h"
  16. #include "BO3Menu.h"
  17. #include "AW_Game.h"
  18.  
  19.  
  20. extern _SERVER_GET_CUSTOM_RESPONCE cData;
  21.  
  22. extern HANDLE hXam;
  23. extern BOOL IsDevkit;
  24. extern BOOL dashLoaded;
  25.  
  26. MESSAGEBOX_RESULT g_mb_result;
  27. XOVERLAPPED g_xol;
  28.  
  29. DWORD nop = 0x60000000;
  30. DWORD other = 0x38600001;
  31. DWORD Data = 0x38600000;
  32.  
  33. extern DWORD ApplyPatches(CHAR* FilePath, const VOID* DefaultPatches = NULL);
  34. extern void printBytes(PBYTE bytes, DWORD len);
  35.  
  36.  
  37. VOID __cdecl APCWorker(void* Arg1, void* Arg2, void* Arg3) {
  38.  
  39. // Call our completion routine if we have one
  40. if(Arg2)
  41. ((LPOVERLAPPED_COMPLETION_ROUTINE)Arg2)((DWORD)Arg3, 0, (LPOVERLAPPED)Arg1);
  42. }
  43.  
  44. DWORD XSecurityCreateProcessHook(DWORD dwHardwareThread)
  45. {
  46. return ERROR_SUCCESS;
  47. }
  48.  
  49. VOID XSecurityCloseProcessHook(){}
  50.  
  51. DWORD XSecurityVerifyHook(DWORD dwMilliseconds, LPOVERLAPPED lpOverlapped, LPOVERLAPPED_COMPLETION_ROUTINE lpCompletionRoutine) {
  52.  
  53. // Queue our completion routine
  54. if(lpCompletionRoutine)
  55. NtQueueApcThread((HANDLE)-2, (PIO_APC_ROUTINE)APCWorker, lpOverlapped, (PIO_STATUS_BLOCK)lpCompletionRoutine, 0);
  56.  
  57. // All done
  58. return ERROR_SUCCESS;
  59. }
  60.  
  61. DWORD XSecurityGetFailureInfoHook(PXSECURITY_FAILURE_INFORMATION pFailureInformation)
  62. {
  63. if (pFailureInformation->dwSize != 0x18) return ERROR_NOT_ENOUGH_MEMORY;
  64. pFailureInformation->dwBlocksChecked = 0;
  65. pFailureInformation->dwFailedReads = 0;
  66. pFailureInformation->dwFailedHashes = 0;
  67. pFailureInformation->dwTotalBlocks = 0;
  68. pFailureInformation->fComplete = TRUE;
  69. return ERROR_SUCCESS;
  70. }
  71.  
  72. DWORD XexGetProcedureAddressHook(HANDLE hand, DWORD dwOrdinal, PVOID* pvAddress)
  73. {
  74. if(hand == hXam) {
  75. switch(dwOrdinal) {
  76. case 0x9BB:
  77. *pvAddress = XSecurityCreateProcessHook;
  78. return 0;
  79. case 0x9BC:
  80. *pvAddress = XSecurityCloseProcessHook;
  81. return 0;
  82. case 0x9BD:
  83. *pvAddress = XSecurityVerifyHook;
  84. return 0;
  85. case 0x9BE:
  86. *pvAddress = XSecurityGetFailureInfoHook;
  87. return 0;
  88. }
  89. }
  90. //DbgPrint("XexGetProcedureAddressHook [pvAddress]: 0x%p", pvAddress);
  91. return XexGetProcedureAddress(hand, dwOrdinal, pvAddress);
  92. }
  93.  
  94. unsigned long XeKeysGetKeyHook(unsigned short key, unsigned char* buffer, PDWORD len)
  95. {
  96. if (key == 0x14)
  97. {
  98. srand((unsigned int)time(0));
  99. for (int i = 0x00; i < 0xC; i++) buffer[i] = rand() % 0x7F;
  100. return 0L;
  101. }
  102. return XeKeysGetKey(key, buffer, len);
  103. }
  104.  
  105. int XNetXnAddrToMachineIdHookBO2(XNCALLER_TYPE xnc, XNADDR pxnaddr, unsigned long long MachineId)
  106. {
  107. srand((unsigned int)time(0));
  108. MachineId = 0xFA00000000000000 | (0x2000000 | rand() % 0x7FFFFF);
  109. return 0;
  110. }
  111.  
  112. inline __declspec() bool Live_GetConsoleDetailsSavestubGhosts(bool alwaysTrue, unsigned char internalIP[4], unsigned char onlineIP[4], unsigned long long *machineIDH, unsigned long long *null, unsigned long long *enet)
  113. {
  114. __asm
  115. {
  116. nop
  117. nop
  118. nop
  119. nop
  120. nop
  121. nop
  122. nop
  123. blr
  124. }
  125. }
  126.  
  127. bool Live_GetConsoleDetailsHookGhosts(bool alwaysTrue, unsigned char internalIP[4], unsigned char externalIP[4], unsigned long long * machineIDH, unsigned long long * machineIDL, unsigned long long *enet)
  128. {
  129. srand(time(0));
  130. int iTargetAddress = 0;
  131. __asm mflr iTargetAddress
  132. if (iTargetAddress == 0x82627564 || iTargetAddress == 0x82628888)
  133. {
  134. for (int i = 0; i < 4; i++) { internalIP[i] = rand() % 0xFF; externalIP[i] = rand() % 0xFF; }
  135. *enet = 0x001DD8000000 | rand() % 0x7FFFFF;
  136. return true;
  137. }
  138. return Live_GetConsoleDetailsSavestubGhosts(alwaysTrue, internalIP, externalIP, machineIDH, machineIDL, enet);
  139. }
  140.  
  141. HRESULT XeKeysGetConsoleIDHook( PBYTE databuffer OPTIONAL, char* szBuffer OPTIONAL ) {
  142.  
  143. XE_CONSOLE_ID consoleID;
  144. XeKeysGetConsoleID((PBYTE)&consoleID, NULL);
  145.  
  146. XUSER_SIGNIN_INFO userInfo;
  147. XamUserGetSigninInfo(0, XUSER_GET_SIGNIN_INFO_ONLINE_XUID_ONLY, &userInfo);
  148.  
  149. BYTE gamertagSha[0x10];
  150. XeCryptSha((PBYTE)userInfo.szUserName, strlen(userInfo.szUserName), NULL, NULL, NULL, NULL, gamertagSha, 0x10);
  151. consoleID.asBits.MacIndex3=gamertagSha[0];
  152. consoleID.asBits.MacIndex4=gamertagSha[1];
  153. consoleID.asBits.MacIndex5=gamertagSha[2];
  154.  
  155. SetMemory(databuffer, &consoleID, 0x5);
  156. return ERROR_SUCCESS;
  157. }
  158.  
  159. //extern "C" VOID KeSweepIcacheRange(PVOID Address, DWORD cbBytes);
  160. //VOID ApplyPatchData(PBYTE pBuffer, DWORD dwLength) {
  161. // PDWORD pdwData = (PDWORD)pBuffer;
  162. //
  163. // // Sanity check
  164. // if (pdwData[(dwLength / 4) - 1] != -1) {
  165. // return;
  166. // }
  167. //
  168. // while (TRUE) {
  169. // DWORD dwAddress = *pdwData++;
  170. //
  171. // if (dwAddress == -1)
  172. // break;
  173. //
  174. // DWORD dwPatchCount = *pdwData++;
  175. // for (DWORD i = 0; i < dwPatchCount; i++) {
  176. // DWORD dwAddrToPatch = dwAddress + (i * 4);
  177. // *(DWORD*)(dwAddrToPatch) = *pdwData++;
  178. // }
  179. //
  180. // KeSweepIcacheRange((PVOID)dwAddress, dwPatchCount * 4);
  181. // }
  182. //}
  183.  
  184. int NetDll_XNetXnAddrToMachineIdHook( XNCALLER_TYPE xnc, XNADDR * pxnaddr, ULONGLONG * pqwMachineId){
  185.  
  186. int rett = NetDll_XNetXnAddrToMachineId( xnc, pxnaddr, pqwMachineId);
  187.  
  188. XUSER_SIGNIN_INFO userInfo;
  189. XamUserGetSigninInfo(0, XUSER_GET_SIGNIN_INFO_ONLINE_XUID_ONLY, &userInfo);
  190.  
  191. BYTE gamertagSha[0x10];
  192. XeCryptSha((PBYTE)userInfo.szUserName, strlen(userInfo.szUserName), NULL, NULL, NULL, NULL, gamertagSha, 0x10);
  193. SetMemory(pqwMachineId+5, gamertagSha, 0x3);
  194.  
  195. return rett;
  196. }
  197.  
  198. int XNetXnAddrToMachineIdHook(XNCALLER_TYPE xnc, XNADDR* pxnaddr, unsigned long long* qwMachineId)
  199. {
  200. srand((unsigned int)time(0));
  201. *qwMachineId = 0xFA00000002000000 | (0x2000000 | rand() % 0x7FFFFF);
  202. return 0;
  203. }
  204.  
  205.  
  206. inline __declspec() bool Live_GetConsoleDetailsSavestub(unsigned char internalIP[4], unsigned char onlineIP[4], unsigned long long *machineIDH, unsigned long long *null, unsigned long long *enet)
  207. {
  208. __asm
  209. {
  210. nop
  211. nop
  212. nop
  213. nop
  214. nop
  215. nop
  216. nop
  217. blr
  218. }
  219. }
  220.  
  221. bool Live_GetConsoleDetailsHookAW(unsigned char internalIP[4], unsigned char onlineIP[4], unsigned long long *machineIDH, unsigned long long *null, unsigned long long *enet)
  222. {
  223. srand(time(0));
  224. int iTargetAddress = 0;
  225. __asm mflr iTargetAddress
  226. if (iTargetAddress == 0x822C9FF8 || iTargetAddress == 0x822C9908)
  227. {
  228. for (int i = 0; i < 4; i++)
  229. {
  230. internalIP[i] = rand() % 0xFF; onlineIP[i] = rand() % 0xFF;
  231. }
  232. *enet = 0x001DD8000000 | rand() % 0x7FFFFF;
  233. return true;
  234. }
  235. return Live_GetConsoleDetailsSavestub(internalIP, onlineIP, machineIDH, null, enet);
  236. }
  237.  
  238. HRESULT XNetLogonGetMachineIDHook(QWORD* machineID){
  239.  
  240. QWORD machID=0;
  241. HRESULT rett = XNetLogonGetMachineID(&machID);
  242.  
  243. XUSER_SIGNIN_INFO userInfo;
  244. XamUserGetSigninInfo(0, XUSER_GET_SIGNIN_INFO_ONLINE_XUID_ONLY, &userInfo);
  245.  
  246. BYTE gamertagSha[0x10];
  247. XeCryptSha((PBYTE)userInfo.szUserName, strlen(userInfo.szUserName), NULL, NULL, NULL, NULL, gamertagSha, 0x10);
  248. SetMemory(machineID+5, gamertagSha, 0x3);
  249.  
  250. return rett;
  251. }
  252.  
  253. typedef HRESULT (*pXamInputGetState)(QWORD r3,QWORD r4,QWORD r5);
  254. pXamInputGetState XamInputGetState = (pXamInputGetState)ResolveFunction(NAME_XAM, 401);
  255.  
  256. static BOOL isFrozen = FALSE;
  257. HRESULT XamInputGetStateHook(QWORD r3,QWORD r4,QWORD r5){
  258. if(isFrozen){
  259. return 0;
  260. }
  261. HRESULT ret = XamInputGetState(r3, r4, r5);
  262. return ret;
  263. }
  264.  
  265. static DWORD lastTitleID=0;
  266. BYTE NOP[] = { 0x60, 0x00, 0x00, 0x00 };
  267. BYTE Branch[] = { 0x48, 0x00 };
  268. BYTE DOLONG[] = { 0x89, 0x21, 0x00, 0x50, 0x60, 0x00, 0x00, 0x00 };
  269. BYTE TEST[] = { 0x61, 0x49, 0x00, 0x00 };
  270. BYTE GHOSTS_LASER[] = { 0x38, 0x60, 0x00, 0x01 };
  271. BYTE GHOSTS_UAV[] = { 0x3B, 0x60, 0x00, 0x01 };
  272. BYTE BO2_WALL[] = { 0x34, 0xC0, 0xFF, 0xFF };
  273. BYTE AW_ENABLER[] = { 0x39, 0x60, 0x00, 0x00 };
  274. BYTE AW_ENABLER2[] = { 0x38, 0xC0, 0x00, 0x03 };
  275.  
  276. ////////////////////////////////////////////////////////////////////////////////////////////////////////////
  277.  
  278. LPCWSTR Buttons5[2] = { L"Modifications", L"Original Game"};
  279.  
  280. DWORD WINAPI MW2_Go(LPVOID lpParam)
  281. {
  282. XShowMessageBoxUI(XUSER_INDEX_ANY, L"XBLExtinction - Call Of Duty MW2", L"XBLExtinction Mods -\nPlease Select A Cheat Option\n\nModifications\n----------------\nNo Recoil= ON!\nLazer= ON!\nUAV= ON!\nRedbox= ON!", 2, Buttons5, 0, XMB_ALERTICON, &g_mb_result, &g_xol);
  283. while(!XHasOverlappedIoCompleted(&g_xol)) Sleep(500);
  284. if(g_mb_result.dwButtonPressed == 0) {
  285. *(int*)0x82104093 = other; //lazer
  286. //*(int*)0x82135BE3 = other; //No Recoil
  287. //*(int*)2182017324u = other; //UAV
  288. //*(int*)2182038068u = other; //Redbox
  289. *(byte *)0x82104093 = 1; //TU8 -> Modern Warfare 2
  290. *(byte *)0x820F4233 = 1; //TU8 -> Modern Warfare 2
  291. *(byte *)0x82135BE3 = 0; //TU8 -> Modern Warfare 2
  292. *(byte *)0x82135BFC = 0x60000000; // No Recoil
  293. * (byte *)0x820F584C = 0x60000000; //No spread 1
  294. *(byte *)0x82134E88 = 0x60000000; //No spread 2
  295. *(byte *)0x820E5B38 = 0x60000000; //Weapon Sway
  296. *(byte *)0x820E657C = 0x60000000; //Weapon Sway
  297. *(byte*)0x82104093 = 1; //TU8 -> Modern Warfare 2
  298. (0, "set g_compassshowenemies 1;set activeaction \"g_compassshowenemies 1;scr_game_forceuav 1;set activeaction \\\"g_compassshowenemies 1;scr_game_forceuav 1;set activeaction g_compassshowenemies 1\\\"\"");
  299. XNotifyQueueUI(XNOTIFYUI_TYPE_COMPLAINT, 0, 2, L"XBLExtinction - MW2 Mods Enabled!", NULL);
  300. return 0;
  301. }
  302. }
  303.  
  304. ////////////////////////////////////////////////////////////////////////////////////////////////////////////
  305.  
  306.  
  307.  
  308.  
  309. LPCWSTR Buttons10[2] = { L"Modifications", L"Off Host" };
  310. DWORD WINAPI BO3_go(LPVOID lpParam) {
  311. XNotifyUI(L"COD: BO3 - Bypass Enabled!");
  312. while (XShowMessageBoxUI(XUSER_INDEX_ANY, L"XBLSantaV2 - COD: BO3", L"Aces Fun House Mods -\nPlease Select A Cheat Option\n\nModifications\n----------------\nNoRecoil= ON!\nRedboxes= ON!\nNoSway= OFF!\nUAV= ON!\nSmallCrosshairs= OFF!\n\n\nBO3ModMenu= ON!\n", 2, Buttons10, 0, XMB_ALERTICON, &g_mb_result, &g_xol) == ERROR_ACCESS_DENIED) Sleep(500);
  313. while (!XHasOverlappedIoCompleted(&g_xol)) Sleep(500);
  314. if (g_mb_result.dwButtonPressed == 0) {
  315. *(int*)0x82665268 = 0x60000000; // nop link register TU8
  316. *(int*)0x825889DC = 0x60000000; // nop challenge TU8
  317. *(int*)0x825889E4 = 0x400; // respond to challenge TU8
  318. *(int*)0x82279CB8 = 0x38600001;//NoRecoil TU8
  319. *(int*)0x82610920 = 0x60000000;//RedBoxes TU8
  320. *(int*)0x82610948 = 0x60000000;//RedBoxes TU8
  321. *(int*)0x82201008 = 0x60000000;//NoSway TU8
  322. *(int*)0x8228BC78 = 0x60000000;//UAV TU8
  323. *(int*)0x82099FA8 = 0;//Chrosshairs TU8
  324.  
  325. //BYTE bo3[4] = { 0x7c, 0xd0, 0x33, 120 };//Black Ops 3 Bodys TU8
  326. //memcpy((void*)0x822B61BC, bo3, 4); //Black Ops 3 Bodys TU8
  327.  
  328. XNotifyUI(L"COD: BO3 - Modifications Enabled");
  329. }
  330. else if (g_mb_result.dwButtonPressed == 1) {
  331.  
  332. DoBO3Menu();
  333. }
  334. return 0;
  335. }
  336.  
  337.  
  338.  
  339. ////////////////////////////////////////////////////////////////////////////////////////////////////////////
  340.  
  341. LPCWSTR Buttons0[2] = { L"Modifications", L"Original Game"};
  342.  
  343. DWORD WINAPI BO2_go(LPVOID lpParam)
  344. {
  345.  
  346. *(int*)0x821f5b7c = 0x38600001; //Redboxes
  347. *(int*)0x82259BC8 = 0x38600001; //No Recoil
  348. *(int*)0x821B8FD0 = 0x2B110001; //UAV
  349. *(int*)0x82255E1C = 0x2B110001; //Laser
  350. *(int*)0x821FC04C = 0x38C0FFFF; //Wallhack
  351.  
  352. return 0;
  353. }
  354.  
  355. ////////////////////////////////////////////////////////////////////////////////////////////////////////////
  356.  
  357.  
  358.  
  359. LPCWSTR Buttons3[2] = { L"Modifications", L"Original Game"};
  360.  
  361. DWORD FindPattern(DWORD Address, DWORD Length, PCHAR pbMask)
  362. {
  363. DWORD szMaskl = std::strlen(pbMask);
  364. PCHAR szMask = "";
  365. for (DWORD i = 0; i < szMaskl/4;i++){
  366. szMask += 'X';
  367. }
  368. for(DWORD i = 0; i < Length; i++)
  369. {
  370. if(DataCompare((PBYTE)(Address + i), (PBYTE)pbMask, szMask) == TRUE)
  371. { return Address + i; }
  372. }
  373. return NULL;
  374. }
  375.  
  376. VOID DoText(){
  377. Sleep(500);
  378. DWORD mp = FindPattern((DWORD)0xC6A50000, (DWORD)0xB0000, "\x4D\x45\x4E\x55\x5F\x4D\x55\x4C\x54\x49\x50\x4C\x41\x59\x45\x52\x5F\x43\x41\x50\x53") - 0x0C;
  379. DWORD play = FindPattern((DWORD)0xC6A50000, (DWORD)0xB0000, "\x50\x4C\x41\x54\x46\x4F\x52\x4D\x5F\x55\x49\x5F\x48\x45\x41\x44\x45\x52\x5F\x50\x4C\x41\x59\x5F\x4D\x50\x5F\x43\x41\x50\x53") - 0x0f;
  380. DWORD find = FindPattern((DWORD)0xC6A50000, (DWORD)0xB0000, "\x50\x4C\x41\x54\x46\x4F\x52\x4D\x5F\x46\x49\x4E\x44\x5F\x47\x41\x4D\x45\x5F\x43\x41\x50\x53") - 0x0b;
  381. DWORD find1 = FindPattern((DWORD)0xC6A50000, (DWORD)0xB0000, "\x50\x4C\x41\x54\x46\x4F\x52\x4D\x5F\x46\x49\x4E\x44\x5F\x47\x41\x4D\x45\x00") - 0x0b;
  382. DWORD priv = FindPattern((DWORD)0xC6A50000, (DWORD)0xB0000, "\x4D\x50\x55\x49\x5F\x50\x52\x49\x56\x41\x54\x45\x5F\x4D\x41\x54\x43\x48\x5F\x4C\x4F\x42\x42\x59") - 0x0e;
  383. DWORD armory = FindPattern((DWORD)0xC6A50000, (DWORD)0xB0000, "\x4C\x55\x41\x5F\x4D\x45\x4E\x55\x5F\x41\x52\x4D\x4F\x52\x59") - 0x07;
  384. DWORD cc = FindPattern((DWORD)0xC6A50000, (DWORD)0xB0000, "\x4D\x50\x55\x49\x5F\x43\x52\x45\x41\x54\x45\x5F\x41\x5F\x43\x4C\x41\x53\x53") - 0x0F;
  385. DWORD op = FindPattern((DWORD)0xC6A50000, (DWORD)0xB0000, "\x4C\x55\x41\x5F\x4D\x45\x4E\x55\x5F\x43\x52\x45\x41\x54\x45\x5F\x41\x4E\x5F\x4F\x50\x45\x52\x41\x54\x4F\x52") - 0x09;
  386. DWORD pm = FindPattern((DWORD)0xC6A50000, (DWORD)0xB0000, "\x4D\x50\x55\x49\x5F\x50\x52\x49\x56\x41\x54\x45\x5F\x4D\x41\x54\x43\x48") - 0x0e;
  387. DWORD storetitle = FindPattern((DWORD)0xC6A50000, (DWORD)0xB0000, "\x4D\x45\x4E\x55\x5F\x53\x54\x4F\x52\x45\x5F\x43\x41\x50\x53") - 0x06;
  388. DWORD store = FindPattern((DWORD)0xC6A50000, (DWORD)0xB0000, "\x4C\x55\x41\x5F\x4D\x45\x4E\x55\x5F\x53\x54\x4F\x52\x45") - 0x06;
  389. BYTE EDGE[] = { 0x5E, 0x35, 0x45, 0x44, 0x47, 0x45, 0x21, 0x5e, 0x35, 0x5e, 0x35, 0x00};
  390. BYTE EDGE_BYPASS[] = {0x5E, 0x35, 0x45, 0x44, 0x47, 0x45, 0x20, 0x42, 0x59, 0x50, 0x41, 0x53, 0x53, 0x00};
  391. BYTE EDGE_FIND[] = { 0x5E, 0x35, 0x45, 0x44, 0x47, 0x45, 0x21, 0x5e, 0x35, 0x20, 0x00};
  392. BYTE EDGE_FIND1[] = {0x5E, 0x36, 0x50, 0x6C, 0x61, 0x79, 0x5E, 0x35, 0x5E, 0x35, 0x00};
  393. BYTE EDGE_PRIV[] = {0x5E, 0x35, 0x45, 0x44, 0x47, 0x45, 0x5E, 0x35, 0x5E, 0x35, 0x5E, 0x35, 0x20, 0x00};
  394. BYTE EDGE_ARMOR[] = {0x5E, 0x36, 0x4C, 0x6F, 0x6F, 0x74, 0x00};
  395. BYTE EDGE_CC[] = {0x5E, 0x36, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x20, 0x43, 0x6C, 0x61, 0x73, 0x73, 0x00};
  396. BYTE EDGE_OP[] = {0x5E, 0x36, 0x4D, 0x45, 0x20, 0x3C, 0x33, 0x20, 0x00};
  397. BYTE EDGE_PM[] = {0x5E, 0x36, 0x46, 0x75, 0x6E, 0x20, 0x5A, 0x6F, 0x6E, 0x65, 0x20, 0x20, 0x20, 0x00};
  398. BYTE EDGE_ST[] = {0x5E, 0x36, 0x44, 0x4c, 0x43, 0x00};
  399. if (mp != 0) memcpy((BYTE*)mp, EDGE, 12);
  400. if (play != 0) memcpy((BYTE*)play, EDGE_BYPASS, 14);
  401. if (find != 0) memcpy((BYTE*)find, EDGE_FIND, 11);
  402. if (find1 != 0) memcpy((BYTE*)find1, EDGE_FIND1, 11);
  403. if (priv != 0) memcpy((BYTE*)priv, EDGE_PRIV, 14);
  404. if (armory != 0) memcpy((BYTE*)armory, EDGE_ARMOR, 7);
  405. if (cc != 0) memcpy((BYTE*)cc, EDGE_CC, 15);
  406. if (op != 0) memcpy((BYTE*)op, EDGE_OP, 9);
  407. if (pm != 0) memcpy((BYTE*)pm, EDGE_PM, 14);
  408. if (storetitle != 0) memcpy((BYTE*)storetitle, EDGE_ST, 6);
  409. if (store != 0) memcpy((BYTE*)store, EDGE_ST, 6);
  410. }
  411.  
  412. DWORD WINAPI AW_go(LPVOID lpParam)
  413. {
  414. XShowMessageBoxUI(XUSER_INDEX_ANY, L"XBLExtinction - Call Of Duty AW", L"XBLExtinction Mods -\nPlease Select A Cheat Option\n\nModifications\n----------------\nRedbox= ON!\nNo Recoil= ON!\nUAV= ON!", 2, Buttons3, 0, XMB_ALERTICON, &g_mb_result, &g_xol);
  415. while(!XHasOverlappedIoCompleted(&g_xol)) Sleep(500);
  416. if(g_mb_result.dwButtonPressed == 0) {
  417. *(int*)0x82648CEC = nop; //no recoil
  418. *(int*)0x8262FB0C = nop; //Redbox
  419. //*(int*)0x823884FC = other; //FPS
  420. *(int*)0x826352A4 = other; //UAV1
  421. *(int*)0x826352A8 = other; //UAV2
  422. *(int*)0x826352AC = other; //UAV3
  423. *(int*)0x826352B0 = other; //UAV4
  424. XNotifyQueueUI(XNOTIFYUI_TYPE_COMPLAINT, 0, XNOTIFYUI_PRIORITY_HIGH, L"AW - Modifications Enabled!", NULL);
  425. }
  426. return 0;
  427. }
  428.  
  429. //////////////////////////////////////////////////////////////////////////////////////////////////////////
  430. BYTE MW3_WH[] = { 0x42, 0x20, 0x00, 0x00 };
  431. BYTE MW3_BOXES[] = { 0x41, 0x9A, 0x00, 0x12 };
  432. BYTE MW3_UAV[] = { 0x3B, 0x80, 0x00, 0x01 };
  433. BYTE MW3_RECOIL[] = { 0x60, 0x00, 0x00, 0x00 };
  434. BYTE MW3_LASER[] = { 0x2F, 0x10, 0x00, 0x01 };
  435. BYTE MW3_CH[] = { 0x3B, 0x80, 0x00, 0x01 };
  436.  
  437.  
  438. DWORD WINAPI MW3_Go(LPVOID lpParam)
  439. {
  440. *(int*)0x821154A4 = other; //Redboxes
  441. *(int*)0x8210E58C = other; //UAV A
  442. *(int*)0x8215A2C0 = other; //Lazer
  443. *(int*)0x82001B7C = other; //Walhack
  444. *(int*)0x821614D4 = other; //No Recoil
  445. *(int*)0x82001B7C = 0x42200000;
  446. *(int*)0x821154A4 = 0x60000000;
  447. *(int*)0x8210E58C = 0x3B800001;
  448. *(int*)0x821614D4 = 0x60000000;
  449. *(int*)0x8215A2C0 = 0x2F100001;
  450. XNotifyQueueUI(XNOTIFYUI_TYPE_COMPLAINT, 0, 2, L"XBLExtinction - MW3 Mods Enabled!", NULL);
  451. return 0;
  452. }
  453.  
  454.  
  455. //////////////////////////////////////////////////////////////////////////////////////////////
  456.  
  457.  
  458.  
  459. //////////////////////////////////////////////////////////////////////////////////////////////
  460.  
  461. DWORD WINAPI GTA5_go(LPVOID lpParam)
  462. {
  463. *(long long int*)0x838B60F4 = 0x00000422F6D6AA59;
  464. *(BYTE*)0x82CF782B = 1;
  465. *(int*)0x83288A30 = 0x48000104;
  466. *(char*)0x82CF782B = 1;
  467. *(int*)0x82FDB564 = 0x3FC0022C;
  468. *(int*)(0x82FDB564 + 0x4) = 0x63DEC800;
  469. *(int*)(0x82FDB564 + 0x8) = 0x93DD0018;
  470. *(int*)(0x82FDB564 + 0xC) = 0x3C60838B;
  471. *(int*)(0x82FDB564 + 0x10) = 0x606360F4;
  472. *(int*)(0x82FDB564 + 0x14) = 0xE8630000;
  473. *(int*)(0x82FDB564 + 0x18) = 0x907D001C;
  474. *(int*)(0x82FDB564 + 0x1C) = 0x3C60838B;
  475. *(int*)(0x82FDB564 + 0x20) = 0x606360F4;
  476. *(int*)(0x82FDB564 + 0x24) = 0xF8630000;
  477. *(int*)(0x82FDB564 + 0x28) = 0x3C6082FD;
  478. *(int*)(0x82FDB564 + 0x2C) = 0x6063B564;
  479. *(int*)(0x82FDB564 + 0x30) = 0xF8630000;
  480. return 0;
  481.  
  482. }
  483. ////////////////////////////////////////////////////////////////////////////////////////////////////////////
  484.  
  485.  
  486. ////////////////////////////////////////////////////////////////////////////////////////////////////////////
  487.  
  488.  
  489.  
  490. LPCWSTR Buttons6[2] = { L"Modifications", L"Original Game"};
  491.  
  492. DWORD WINAPI COD5_Go(LPVOID lpParam)
  493. {
  494. XShowMessageBoxUI(XUSER_INDEX_ANY, L"XBLExtinction - Call Of Duty WAW", L"XBLExtinction Mods -\nPlease Select A Cheat Option\n\nModifications\n----------------\nGodMode= ON!\n+ More!", 2, Buttons6, 0, XMB_ALERTICON, &g_mb_result, &g_xol);
  495. while(!XHasOverlappedIoCompleted(&g_xol)) Sleep(500);
  496. if(g_mb_result.dwButtonPressed == 0) {
  497. //*(int*)0x011c0bb7 = other; //GodMode
  498. *(int*)0x821A0BFC = 0x60000000;
  499. *(int*)0x8215C7E4 = 0x60000000;
  500. *(int*)0x821A00C0 = 0x60000000;
  501. *(int*)0x8214789C = 0x60000000;
  502. *(int*)0x8214804C = 0x60000000;
  503. *(int*)0x821548A4 = 0x3B800001;
  504. XNotifyQueueUI(XNOTIFYUI_TYPE_COMPLAINT, 0, 2, L"XBLExtinction - WAW Mods Enabled!", NULL);
  505. return 0;
  506. }
  507. }
  508.  
  509. ////////////////////////////////////////////////////////////////////////////////////////////////////////////
  510.  
  511. bool Live_GetConsoleDetailsHook(unsigned char internalIP[4], unsigned char onlineIP[4], unsigned long long *machineIDH, unsigned long long *null, unsigned long long *enet) {
  512. srand(time(0));
  513. int iTargetAddress = 0;
  514. __asm mflr iTargetAddress
  515. if(iTargetAddress == 0X822EC08C || iTargetAddress == 0X822EB7C4) {
  516. for(int i = 0; i < 4; i++) {
  517. internalIP[i] = rand() % 0xFF; onlineIP[i] = rand() % 0xFF;
  518. }
  519. *enet = 0x001DD8000000 | rand() % 0x7FFFFF;
  520. return true;
  521. }
  522. return Live_GetConsoleDetailsSavestub(internalIP,onlineIP,machineIDH,null,enet);
  523. }
  524.  
  525. ////////////////////////////////////////////////////////////////////////////////////////////////////////////
  526.  
  527.  
  528. LPCWSTR Buttons7[2] = { L"Modifications", L"Original Game"};
  529.  
  530. DWORD WINAPI COD4_Go(LPVOID lpParam)
  531. {
  532. XShowMessageBoxUI(XUSER_INDEX_ANY, L"XBLExtinction - Call Of Duty COD4", L"XBLExtinction Mods -\nPlease Select A Cheat Option\n\nModifications\n----------------\n", 2, Buttons7, 0, XMB_ALERTICON, &g_mb_result, &g_xol);
  533. while(!XHasOverlappedIoCompleted(&g_xol)) Sleep(500);
  534. if(g_mb_result.dwButtonPressed == 0) {
  535. *(int*)0x822EDAA0 = 0x60000000;
  536. *(int*)0x822ECE14 = 0x60000000;
  537. *(int*)0x82319514 = 0x60000000;
  538. *(int*)0x8233048C = 0x60000000;
  539. *(int*)0x8233169C = 0x60000000;
  540. *(int*)0x823225C8 = 0x3B400001;
  541. XNotifyQueueUI(XNOTIFYUI_TYPE_COMPLAINT, 0, 2, L"XBLExtinction - COD4 Mods Enabled!", NULL);
  542. return 0;
  543. }
  544. }
  545.  
  546. ////////////////////////////////////////////////////////////////////////////////////////////////////////////
  547.  
  548.  
  549. LPCWSTR Buttons8[2] = { L"Modifications", L"Original Game"};
  550.  
  551. DWORD WINAPI BO1_Go(LPVOID lpParam)
  552. {
  553. XShowMessageBoxUI(XUSER_INDEX_ANY, L"XBLExtinction - Call Of Duty BO1", L"XBLExtinction Mods -\nPlease Select A Cheat Option\n\nModifications\n----------------\nRedbox= ON!\nBlackbird= ON!\n+ More!", 2, Buttons8, 0, XMB_ALERTICON, &g_mb_result, &g_xol);
  554. while(!XHasOverlappedIoCompleted(&g_xol)) Sleep(500);
  555. if(g_mb_result.dwButtonPressed == 0) {
  556. *(int*)0x821A819F = 0x01419A00;//BlackBird TU11
  557. *(int*)0x821DA22B = 0x01382100;//Red Box
  558. *(int*)0x82227624 = 0x60000000;
  559. *(int*)0x8232786C = 0x60000000;
  560. *(int*)0x821B7C04 = 0x60000000;
  561. *(int*)0x82195200 = 0x60000000;
  562. *(int*)0x82195D1C = 0x60000000;
  563. *(int*)0x821A819C = 0x2B0B0001;
  564. XNotifyQueueUI(XNOTIFYUI_TYPE_COMPLAINT, 0, 2, L"XBLExtinction - Black Ops 1 Mods Enabled!", NULL);
  565. return 0;
  566. }
  567. }
  568.  
  569. ////////////////////////////////////////////////////////////////////////////////////////////////////////////
  570.  
  571.  
  572. ////////////////////////////////////////////////////////////////////////////////////////////////////////////
  573.  
  574. void Ghost(){
  575. *(PDWORD)0x8267680 = 0x4800;
  576. *(PDWORD)0x826276CC = 0x36800000;
  577. *(int*)0x826276E0 = 0x60000000;
  578. *(int*)0x826276D4 = 0x60000000;
  579. XNotifyUI(L"XBLExtinction - Ghost Bypassed [TU17] Enabled!");
  580. }
  581.  
  582. BYTE Challenge[] = { // Challenge using random data // Using Full Challenge resp clean
  583. 0x00, 0x00, 0x00, 0x00, //IPAddress
  584. 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, //Machine ID
  585. 0x00, 0x1D, 0xD8, //macCheck
  586. 0x00, 0x00, 0x00, //abEnet
  587. 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x82, //Unknown
  588. 0x12, //Retail Flag
  589. 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, //Console Serial
  590. 0x00, //Padding
  591. 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, //Console ID
  592. 0x41, 0x74, //Kernel Version
  593. 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3A //Sizeof(Challenge)
  594. };
  595.  
  596. VOID GHOSTS_RandomizeData(){
  597. srand(time(NULL));
  598. BYTE IPAddress[4], MachineID[8], abEnet[3], ConsoleSerialNumber[12], ConsoleID[12];
  599. for(int i = 0; i < 4; i++) { IPAddress[i] = rand() % 90; }
  600. for(int i = 0; i < 3; i++){ abEnet[i] = rand() % 90; }
  601. for(int i = 0; i < 8; i++) { MachineID[i] = rand() % 90; }
  602. for(int i = 0; i < 12; i++) { ConsoleSerialNumber[i] = rand() % 90; ConsoleID[i] = rand() % 90; }
  603. }
  604.  
  605. inline __declspec() INT answerChallenges(__int64 r3, __int64 r4, DWORD ChallengeResponse) {
  606. __asm {
  607. nop
  608. nop
  609. nop
  610. nop
  611. nop
  612. nop
  613. nop
  614. blr
  615. }
  616. }
  617.  
  618. void answerChallengesHook(__int64 r3, __int64 r4, DWORD ChallengeResponse){ // r3, r4, r5 --> ChallengeResponse is the third argument (r5).
  619. // Set our Random Data
  620. memcpy((PVOID)(ChallengeResponse + 0x1E), &Challenge, sizeof(Challenge));
  621. // return r3, r4 and r5
  622. answerChallenges(r3, r4, ChallengeResponse);
  623. }
  624.  
  625. inline __declspec() bool Live_GetConsoleDetailsSavestubGhost(bool alwaysTrue, unsigned char internalIP[4], unsigned char onlineIP[4], unsigned long long *machineIDH, unsigned long long *null, unsigned long long *enet)
  626. {
  627. __asm {
  628. nop
  629. nop
  630. nop
  631. nop
  632. nop
  633. nop
  634. nop
  635. blr
  636. }
  637. }
  638.  
  639. bool Live_GetConsoleDetailsHookGhost(bool alwaysTrue, unsigned char internalIP[4], unsigned char onlineIP[4], unsigned long long *machineIDH, unsigned long long *null, unsigned long long *enet) {
  640. srand(time(0));
  641. int iTargetAddress = 0;
  642. __asm mflr iTargetAddress
  643. if(iTargetAddress == 0X822EC08C || iTargetAddress == 0X822EB7C4) {
  644. for(int i = 0; i < 4; i++) {
  645. internalIP[i] = rand() % 0xFF; onlineIP[i] = rand() % 0xFF;
  646. }
  647. *enet = 0x001DD8000000 | rand() % 0x7FFFFF;
  648. return true;
  649. }
  650. return Live_GetConsoleDetailsSavestubGhost(alwaysTrue, internalIP,onlineIP,machineIDH,null,enet);
  651. }
  652.  
  653.  
  654.  
  655.  
  656.  
  657.  
  658.  
  659.  
  660.  
  661. BYTE dataghost[4] = { 0x38, 0xC0, 0x00, 0x07 };
  662. BYTE dataghost2[4] = { 0x60, 0x00, 0x00, 0x00 };
  663. BYTE dataghostno[4] = { 0x60, 0x00, 0x00, 0x00 };
  664.  
  665. LPCWSTR Buttons1[2] = { L"Aimbot", L"Original Game" };
  666.  
  667. DWORD WINAPI Ghosts_Go(LPVOID lpParam) {
  668. XNotifyUI(L"COD: Ghosts - Bypass Enabled!");
  669. XShowMessageBoxUI(XUSER_INDEX_ANY, L"XBLSantaV2 - COD: Ghosts", L"XBLSantaV2 Mods -\nPlease Select A Cheat Option\n\nModifications\n----------------\nRedbox= ON!\nNo Recoil= ON!\nLazer= ON!\nUAV= ON!", 2, Buttons1, 0, XMB_ALERTICON, &g_mb_result, &g_xol);
  670. while (!XHasOverlappedIoCompleted(&g_xol)) Sleep(500);
  671. if (g_mb_result.dwButtonPressed == 0) {
  672. *(int*)0x8226D2B4 = nop; //RedBox
  673. *(int*)0x8227F198 = other; //Lazer
  674. *(int*)0x8226539B = other; //UAV1
  675. *(int*)0x82265793 = other; //UAV2
  676. *(int*)0x822657FF = other; //UAV3
  677. ghostaimbot();
  678. memcpy((void*)0x82290494, &dataghost, 4);//CG_Player
  679. memcpy((void*)0x82673240, &dataghost2, 4);//ChromePlayers
  680. memcpy((void*)0x822C9344, &dataghostno, 4);//No Recoil
  681.  
  682. //GHOST Player Outline
  683. BYTE ghosts[4] = { 0x38, 0xc0, 0, 5 };
  684. memcpy((void*)0x82290494, ghosts, 4);
  685.  
  686. XNotifyUI(L"COD: Ghosts - Modifications Enabled");
  687. }
  688. return 0;
  689. }
  690.  
  691.  
  692.  
  693.  
  694.  
  695.  
  696.  
  697.  
  698.  
  699.  
  700. ////////////////////////////////////////////////////////////////////////////////////////////////////////////
  701.  
  702. DWORD WINAPI DestinyLaunch_Go(LPVOID lpParam){
  703. //=========================================================
  704. Sleep(50);
  705. //=========================================================
  706. XNotifyUI(L"Destiny ByPass successful");
  707. DbgPrint("Destiny Bypass successful");
  708. //=========================================================
  709. Sleep(50);
  710. //=========================================================
  711. *(DWORD*)0xD95A05AC = 0x00000001;
  712. *(DWORD*)0xD95A05AF = 0x00000001;
  713. *(DWORD*)0xD95A1488 = 0x00000001;
  714. *(DWORD*)0xD95B1988 = 0x00000001;
  715. *(DWORD*)0xD95A1487 = 0x00000001;
  716. //=========================================================
  717. Sleep(50);
  718. //=========================================================
  719. *(int*)0xD95A05AC = 1;
  720. *(int*)0xD95A05AF = 1;
  721. *(int*)0xD95A1488 = 1;
  722. *(int*)0xD95B1988 = 1;
  723. *(int*)0xD95A05AC = 1;
  724. *(int*)0xD95A1487 = 1;
  725. //=========================================================
  726. Sleep(50);
  727. //=========================================================
  728. for(;;){
  729. //=========================================================
  730. Sleep(20);
  731. //=========================================================
  732. *(DWORD*)0xD95A05AC = 0x00000001;
  733. *(DWORD*)0xD95A05AF = 0x00000001;
  734. *(DWORD*)0xD95A1488 = 0x00000001;
  735. *(DWORD*)0xD95B1988 = 0x00000001;
  736. *(DWORD*)0xD95A1487 = 0x00000001;
  737. //=========================================================
  738. Sleep(20);
  739. //=========================================================
  740. *(int*)0xD95A05AC = 1;
  741. *(int*)0xD95A05AF = 1;
  742. *(int*)0xD95A1488 = 1;
  743. *(int*)0xD95B1988 = 1;
  744. *(int*)0xD95A05AC = 1;
  745. *(int*)0xD95A1487 = 1;
  746. //=========================================================
  747. Sleep(20);
  748. //=========================================================
  749. for(DWORD i = 0xD95A0000; i < 0xD95AFFFF; i++){
  750. if(*(int*)i)
  751. if(*(int*)i == 0)
  752. *(int*)i = 1;
  753. Sleep(10);
  754. if(*(DWORD*)i)
  755. if(*(DWORD*)i == 0x00000000)
  756. *(DWORD*)i = 0x00000001;
  757. }
  758. //=========================================================
  759. Sleep(2);
  760. //=========================================================
  761. for(DWORD i = 0xD9500000; i < 0xD95FFFFF; i++){
  762. if(*(int*)i)
  763. if(*(int*)i == 0)
  764. *(int*)i = 1;
  765. Sleep(10);
  766. if(*(DWORD*)i)
  767. if(*(DWORD*)i == 0x00000000)
  768. *(DWORD*)i = 0x00000001;
  769. }
  770. //=========================================================
  771. Sleep(20);
  772. //=========================================================
  773. XNotifyUI(L"Destiny - Bypassed");
  774. }
  775. return 0;
  776. }
  777.  
  778. ////////////////////////////////////////////////////////////////////////////////////////////////////////////
  779.  
  780. ////////////////////////////////////////////////////////////////////////////////////////////////////////////
  781.  
  782. inline DWORD GoldSpoofHook(DWORD dwUserIndex, XPRIVILEGE_TYPE PrivilegeType, PBOOL pfResult) {
  783. DWORD XamUserCheckPrivilege = (DWORD)ResolveFunction("xam.xex", 0x212); // Gold Spoofing
  784. *(int*)(XamUserCheckPrivilege + 0x140) = 0x39600001; // Gold Spoofing
  785. *(int*)(XamUserCheckPrivilege + 0x1A0) = 0x39600001; // Gold Spoofing
  786. *(int*)(XamUserCheckPrivilege + 0x1AC) = 0x39600001; // Gold Spoofing
  787. *(int*)(XamUserCheckPrivilege + 0x1B4) = 0x39600001; // Gold Spoofing
  788.  
  789. DWORD XUCP = (DWORD)ResolveFunction("xam.xex", 0x212);
  790. *(int*)0x816DA804 = 0x38600006;
  791. *(int*)0x81A3B870 = 0x38600001;
  792.  
  793. if (PrivilegeType == XPRIVILEGE_TYPE::XPRIVILEGE_COMMUNICATIONS //Everybody
  794. //New
  795. || PrivilegeType == XPRIVILEGE_TYPE::XPRIVILEGE_MULTIPLAYER_SESSIONS //Everybody
  796. //New END
  797. || PrivilegeType == XPRIVILEGE_TYPE::XPRIVILEGE_COMMUNICATIONS //Everybody
  798. || PrivilegeType == XPRIVILEGE_TYPE::XPRIVILEGE_PROFILE_VIEWING //Everybody
  799. || PrivilegeType == XPRIVILEGE_TYPE::XPRIVILEGE_USER_CREATED_CONTENT //Everybody
  800. || PrivilegeType == XPRIVILEGE_TYPE::XPRIVILEGE_PRESENCE //Everybody
  801. || PrivilegeType == XPRIVILEGE_TYPE::XPRIVILEGE_VIDEO_COMMUNICATIONS) //Everybody
  802. ///////////////////////////////////////////////////////////////////////////////////
  803. /*
  804. || PrivilegeType == XPRIVILEGE_TYPE::XPRIVILEGE_COMMUNICATIONS_FRIENDS_ONLY
  805. || PrivilegeType == XPRIVILEGE_TYPE::XPRIVILEGE_PROFILE_VIEWING_FRIENDS_ONLY
  806. || PrivilegeType == XPRIVILEGE_TYPE::XPRIVILEGE_USER_CREATED_CONTENT_FRIENDS_ONLY
  807. || PrivilegeType == XPRIVILEGE_TYPE::XPRIVILEGE_PRESENCE_FRIENDS_ONLY
  808. || PrivilegeType == XPRIVILEGE_TYPE::XPRIVILEGE_VIDEO_COMMUNICATIONS_FRIENDS_ONLY)
  809. */
  810. *pfResult = FALSE;
  811. else
  812. *pfResult = TRUE;
  813.  
  814. return 0;
  815. }
  816.  
  817.  
  818. ////////////////////////////////////////////////////////////////////////////////////////////////////////////
  819.  
  820. unsigned long XeXGetModuleHandleHook(char* ModuleName)
  821. {
  822. if (strcmp(ModuleName, "xbdm.xex") == 0)
  823. return 0;
  824. }
  825.  
  826. ////////////////////////////////////////////////////////////////////////////////////////////////////////////
  827. /*
  828. void Spoofing() {
  829. srand(time(NULL));
  830. BYTE IPAddr[3], MachineId[8], macAddress[3], SerialConsole[12], SerialId[12];
  831. //for (int i = 0; i < 6; i++) {
  832. // MachineId[i + 2] = rand();
  833. // Sleep(5);
  834. //}
  835. //for (int i = 0; i < 4; i++) {
  836. // MachineId[i + 4] = rand();
  837. // Sleep(5);
  838. //}
  839. for (int i = 0; i < 3; i++) {
  840. IPAddr[i] = rand();
  841. Sleep(5);
  842. }
  843. //for (int i = 0; i < 3; i++) {
  844. // macAddress[i] = rand();
  845. // Sleep(5);
  846. //}
  847. //for (int i = 0; i < 12; i++) {
  848. // int iRand = (rand() % 9) + 1;
  849. // SerialConsole[i] = 0x30 | iRand;
  850. // Sleep(5);
  851. // int iRand2 = (rand() % 9) + 1;
  852. // SerialId[i] = 0x30 | iRand;
  853. // Sleep(5);
  854. }*/
  855.  
  856.  
  857.  
  858.  
  859. VOID InitializeTitleSpecificHooks(PLDR_DATA_TABLE_ENTRY ModuleHandle)
  860. {
  861. // Hook any calls to XexGetProcedureAddress
  862.  
  863. //#ifdef XOSC_ENABLED
  864. PatchModuleImport(ModuleHandle, NAME_KERNEL, 407, (DWORD)XexGetProcedureAddressHook);
  865. //#endif
  866.  
  867. // If this module tries to load more modules, this will let us get those as well
  868. PatchModuleImport(ModuleHandle, NAME_KERNEL, 408, (DWORD)XexLoadExecutableHook);
  869.  
  870. PatchModuleImport(ModuleHandle, NAME_KERNEL, 409, (DWORD)XexLoadImageHook);
  871.  
  872. PatchModuleImport(ModuleHandle, NAME_XAM, 401, (DWORD)XamInputGetStateHook);
  873.  
  874. XEX_EXECUTION_ID* pExecutionId = (XEX_EXECUTION_ID*)RtlImageXexHeaderField(ModuleHandle->XexHeaderBase, 0x00040006);
  875.  
  876. if (pExecutionId == 0) return;
  877.  
  878. bool test = 0;
  879.  
  880. ////////////////////////////////////////////////////////////////////////////////////////////////////////////
  881.  
  882. if (wcscmp(ModuleHandle->BaseDllName.Buffer, L"dash.xex") == 0 || wcscmp(ModuleHandle->BaseDllName.Buffer, L"xshell.xex") == 0 || pExecutionId->TitleID == FREESTYLEDASH)
  883. {
  884. dashLoaded = TRUE;
  885. lastTitleID = pExecutionId->TitleID;
  886. test = 0;
  887. //GoldSpoofHook;
  888. }
  889.  
  890. else {
  891.  
  892. ////////////////////////////////////////////////////////////////////////////////////////////////////////////
  893.  
  894. if (pExecutionId->TitleID == BO2)
  895. {
  896. // HookFunctionStart((PDWORD)LiveStats_Probation_GiveProbation, (PDWORD)LiveStats_Probation_GiveProbationSaveStub, (DWORD)LiveStats_Probation_GiveProbationHook);
  897. if (wcscmp(ModuleHandle->BaseDllName.Buffer, L"default_mp.xex") == 0)
  898. {
  899.  
  900. BYTE Data[] = { 0x60, 0x00, 0x00, 0x00 };
  901. memcpy((BYTE*)0x8259A65C, Data, 4); // Disable challenge log check
  902. memcpy((BYTE*)0x82497EB0, Data, 4); // Disable call to protections
  903. memcpy((BYTE*)0x82497F30, Data, 4); // Cheat
  904. memcpy((BYTE*)0x82497EE0, Data, 4); // Write
  905. XNotifyQueueUI(XNOTIFYUI_TYPE_COMPLAINT, 0, XNOTIFYUI_PRIORITY_HIGH, L"Black Ops 2 - Bypass Enabled!", NULL);
  906.  
  907. HANDLE hThread;
  908. DWORD threadId;
  909. ExCreateThread(&hThread, 0, &threadId, (VOID*)XapiThreadStartup, BO2_go, NULL, 0x2 | CREATE_SUSPENDED);
  910. XSetThreadProcessor(hThread, 4);
  911. SetThreadPriority(hThread, THREAD_PRIORITY_HIGHEST);
  912. ResumeThread(hThread);
  913. CloseHandle(hThread);
  914.  
  915. //XShowMessageBoxUI(XUSER_INDEX_ANY, L"XBLExtinction - Call Of Duty BO2", L"XBLExtinction Mods -\nPlease Select A Cheat Option\n\nModifications\n----------------\nRedboxes= ON!\nNo Recoil= ON!\nUAV= ON!\nLaser= OFF!\nWallhack= OFF!", 2, Buttons0, 0, XMB_ALERTICON, &g_mb_result, &g_xol);
  916. //if(g_mb_result.dwButtonPressed == 0) {
  917. // *(int*)0x821f5b7c = 0x38600001; //Redboxes
  918. // *(int*)0x82259BC8 = 0x38600001; //No Recoil
  919. // *(int*)0x821B8FD0 = 0x2b110001; //UAV
  920. // *(int*)0x82255E1C = 0x2b110001; //Laser
  921. // //*(int*)0x829052FC = other; //Wallhack
  922. // XNotifyQueueUI(XNOTIFYUI_TYPE_COMPLAINT, 0, XNOTIFYUI_PRIORITY_HIGH, L"Black Ops 2 - Modifications Enabled!", NULL);
  923. //}
  924. }
  925. else if (wcscmp(ModuleHandle->BaseDllName.Buffer, L"default.xex") == 0)
  926. {
  927. PatchInJump((PDWORD)0x82844820, (DWORD)XNetXnAddrToMachineIdHookBO2, false);//TU18 Machine ID From XeX
  928. BYTE Data[] = { 0x60, 0x00, 0x00, 0x00 };
  929. SetMemory((PVOID*)0x824A7620, Data, 4); //Bypass xD
  930. SetMemory((PVOID*)0x8248FA60, Data, 4); // Disable challenge log check
  931. SetMemory((PVOID*)0x823B9B00, Data, 4); // Disable call to protections
  932. SetMemory((PVOID*)0x823B99D4, Data, 4); // Cheat
  933. SetMemory((PVOID*)0x823B99A0, Data, 4); // Write
  934. SetMemory((PVOID*)0x823B9988, Data, 4); // Read
  935. XNotifyQueueUI(XNOTIFYUI_TYPE_COMPLAINT, 0, XNOTIFYUI_PRIORITY_HIGH, L"Black Ops 2 Zombies - Bypass Enabled!", NULL);
  936. Sleep(3000);
  937. printf("BLOPS2 - Zombies Bypassed!");
  938. }
  939. }
  940.  
  941. ////////////////////////////////////////////////////////////////////////////////////////////////////////////
  942.  
  943. #pragma region Guide Menu
  944. if (wcscmp(ModuleHandle->BaseDllName.Buffer, L"hud.xex") == 0 && !IsDevkit)
  945. {
  946. //Spoofing();
  947.  
  948. HUD_PatchLabels();
  949. InitializeHudHooks(ModuleHandle);
  950. }
  951.  
  952. #pragma endregion
  953.  
  954.  
  955. BYTE MSP1[28] = { 0x38, 0x80, 0x00, 0x05, 0x80, 0x63, 0x00, 0x1C, 0x90, 0x83, 0x00, 0x04, 0x38, 0x80, 0x05, 0x39, 0x90, 0x83, 0x00, 0x08, 0x38, 0x60, 0x00, 0x00, 0x4E, 0x80, 0x00, 0x20 };
  956. BYTE MSP2[4] = { 0x60, 0x00, 0x00, 0x00 };
  957. BYTE MSP3[4] = { 0x48, 0x00, 0x00, 0xC8 };
  958. BYTE MSP4[4] = { 0x39, 0x60, 0x00, 0x00 };
  959.  
  960. if (wcscmp(ModuleHandle->BaseDllName.Buffer, L"Guide.MP.Purchase.xex") == 0 && !IsDevkit) {
  961. SetMemory((PVOID)0x8168A7F0, MSP1, 28);// In Xam.xex
  962. SetMemory((PVOID)0x818E8CFC, MSP2, 4);// In Xam.xex
  963. SetMemory((PVOID)0x818E9034, MSP3, 4);// In Xam.xex
  964. SetMemory((PVOID)0x818ED72C, MSP4, 4);// In Gudie.MP.Purchase.xex
  965. SetMemory((PVOID)0x9015C108, MSP2, 4);// In Gudie.MP.Purchase.xex
  966. XNotifyUI(L"Aces Fun House - MSP Spoofing Enabled!\nRIP Microsoft");//dont share this is de bomb
  967. }
  968.  
  969. ////////////////////////////////////////////////////////////////////////////////////////////////////////////
  970.  
  971.  
  972. if (pExecutionId->TitleID == MW2)
  973. {
  974. HANDLE hThread;
  975. DWORD threadId;
  976. ExCreateThread(&hThread, 0, &threadId, (VOID*)XapiThreadStartup, MW2_Go, NULL, 0x2 | CREATE_SUSPENDED);
  977. XSetThreadProcessor(hThread, 4);
  978. SetThreadPriority(hThread, THREAD_PRIORITY_HIGHEST);
  979. ResumeThread(hThread);
  980. CloseHandle(hThread);
  981. /*MESSAGEBOX_RESULT g_mb_result;
  982. XOVERLAPPED g_xol;
  983. LPCWSTR Buttons5[2] = { L"Modifications", L"Original Game"};*/
  984. //XShowMessageBoxUI(XUSER_INDEX_ANY, L"XBLExtinction - Call Of Duty MW2", L"XBLExtinction Mods -\nPlease Select A Cheat Option\n\nModifications\n----------------\nNo Recoil= ON!\nLazer= ON!\nUAV= ON!\nRedbox= ON!", 2, Buttons5, 0, XMB_ALERTICON, &g_mb_result, &g_xol);
  985. //while(!XHasOverlappedIoCompleted(&g_xol)) Sleep(500);
  986. //if(g_mb_result.dwButtonPressed == 0) {
  987. // *(int*)0x8212F6A0 = other; //lazer
  988. // *(int*)0x82135BE3 = other; //No Recoil
  989. // *(int*)2182017324u = other; //UAV
  990. // *(int*)2182038068u = other; //Redbox
  991. // XNotifyQueueUI(XNOTIFYUI_TYPE_COMPLAINT, 0, 2, L"XBLExtinction - MW2 Mods Enabled!", NULL);
  992. //}
  993. }
  994.  
  995. ////////////////////////////////////////////////////////////////////////////////////////////////////////////
  996.  
  997. if (pExecutionId->TitleID == AW)
  998. {
  999. if (wcscmp(ModuleHandle->BaseDllName.Buffer, L"default_mp.xex") == 0)
  1000. {
  1001.  
  1002. Sleep(500);
  1003.  
  1004. //PatchInJump((PDWORD)(ResolveFunction("xam.xex", 0x212)), (DWORD)GoldSpoofHook, false);
  1005. PatchInJump((PDWORD)(ResolveFunction("xam.xex", 0x195)), (DWORD)XeXGetModuleHandleHook, false);
  1006. HookFunctionStart((PDWORD)0x8233B018, (PDWORD)Live_GetConsoleDetailsSavestub, (DWORD)Live_GetConsoleDetailsHook);
  1007. PatchInJump((PDWORD)0x8219EA3C, (DWORD)XNetXnAddrToMachineIdHook, false);
  1008. *(long long*)0x822CA190 = 0x8921005060000000; //This returns xbdm as non-existent;
  1009. *(int*)0x822CA18C = 0x48000010; //Patch branch to not set dev flag
  1010. *(int*)0x822CA184 = 0x38600000; //patch subfunction to check xbdm
  1011. *(int*)0x822CA0EC = 0x3920331C; //Return answer challenges correctly
  1012. *(PBYTE)(0x8233B0E4 + 0x03) = 0x00; //Prevent blacklist in console details
  1013. XNotifyQueueUI(XNOTIFYUI_TYPE_GENERIC, 0, 2, L"AW - Bypass Enabled!", 0);
  1014. //DoText();
  1015.  
  1016. HANDLE hThread;
  1017. DWORD threadId;
  1018. ExCreateThread(&hThread, 0, &threadId, (VOID*)XapiThreadStartup, AW_go, NULL, 0x2 | CREATE_SUSPENDED);
  1019. XSetThreadProcessor(hThread, 4);
  1020. SetThreadPriority(hThread, THREAD_PRIORITY_HIGHEST);
  1021. ResumeThread(hThread);
  1022. CloseHandle(hThread);
  1023.  
  1024. }
  1025. else if (wcscmp(ModuleHandle->BaseDllName.Buffer, L"default.xex") == 0)
  1026. {
  1027.  
  1028. Sleep(5000);
  1029. //Set gold privileges
  1030. //PatchInJump((PDWORD)ResolveFunction(MODULE_XAM, 530), (DWORD)GoldSpoofHook, false);
  1031.  
  1032. //Patch MachineID Hook
  1033. PatchInJump((PDWORD)ResolveFunction(MODULE_XAM, 64), (DWORD)NetDll_XNetXnAddrToMachineIdHook, false);
  1034. DbgPrint("NetDll_XNetXnAddrToMachineId hooked.\n");
  1035.  
  1036. // Hook XNetLogonGetMachineID.
  1037. //PatchInJump((PDWORD)ResolveFunction(MODULE_XAM, 309), (DWORD)XNetLogonGetMachineIDHook, false);
  1038. //DbgPrint("XNetLogonGetMachineID hooked.\n");
  1039.  
  1040. //Patch here so any calls to xbdm are return as 0;
  1041. //PatchInJump((PDWORD)(ResolveFunction(MODULE_KERNEL, 405)), (DWORD)XeXGetModuleHandleHook, false);
  1042.  
  1043. //Answer those challenges ########### NOT HOOKING CHALLENGES....THEY CHANGED!!!!!!! ############################
  1044. //HookFunctionStart((PDWORD)0x821DFC18, (PDWORD)SaveStubAW, (DWORD)bdAntiCheat_answerChallengesHook);
  1045. //DbgPrint("bdAntiCheat::answerChallenges hooked.\n");
  1046.  
  1047. //Patch these calls before answering challenges
  1048. *(long long*)0x822CA190 = 0x8921005060000000; //This returns xbdm as non-existent;
  1049. *(int*)0x822CA18C = 0x48000010; //Patch branch to not set dev flag
  1050. *(int*)0x822CA184 = 0x38600000; //patch subfunction to check xbdm
  1051. *(int*)0x822CA0EC = 0x3920331C; //Return answer challenges correctly
  1052. *(PBYTE)(0x8233B0E4 + 0x03) = 0x00; //Prevent blacklist in console details
  1053.  
  1054. //Patch challenges and continue
  1055. HookFunctionStart((PDWORD)0x8233B018, (PDWORD)Live_GetConsoleDetailsSavestub, (DWORD)Live_GetConsoleDetailsHookAW);
  1056.  
  1057. XNotifyQueueUI(XNOTIFYUI_TYPE_GENERIC, 0, 2, L"XBLExtinction - AW TU16/TU17 Challenges Spoofed!", 0);
  1058. //DoText();
  1059. }
  1060. }
  1061.  
  1062. ////////////////////////////////////////////////////////////////////////////////////////////////////////////
  1063.  
  1064.  
  1065. DWORD rflag = 0x39200003;
  1066. QWORD dnop = 0x6000000060000000;
  1067.  
  1068. if (pExecutionId->TitleID == GHOSTS)
  1069. {
  1070. LPCWSTR Buttons1[2] = { L"Modifications", L"Original Game"};
  1071. //HookFunctionStart((PDWORD)0x82591688, (PDWORD)Live_GetConsoleDetailsSavestubGhost, (DWORD)Live_GetConsoleDetailsHookGhost);//Ghost
  1072. *(int*)0x826276D4 = 0x48000010;
  1073. *(int*)0x826276CC = 0x38600000;
  1074. *(int*)0x82627670 = 0x3920331C;
  1075. //PatchInJump((PDWORD)(ResolveFunction("xam.xex", 0x212)), (DWORD)GoldSpoofHook, false);
  1076. PatchInJump((PDWORD)(ResolveFunction("xam.xex", 0x195)), (DWORD)XeXGetModuleHandleHook, false);
  1077. PatchInJump((PDWORD)0x81A717AC, (DWORD)XNetXnAddrToMachineIdHook, false);
  1078. //HookFunctionStart((PDWORD)0x827BE888, (PDWORD)answerChallenges, (DWORD)answerChallengesHook);
  1079. GHOSTS_RandomizeData();
  1080. XNotifyQueueUI(XNOTIFYUI_TYPE_GENERIC, 0, 2, L"Ghosts - Bypass Enabled!", 0);
  1081.  
  1082. HANDLE hThread;
  1083. DWORD threadId;
  1084. ExCreateThread(&hThread, 0, &threadId, (VOID*)XapiThreadStartup, Ghosts_Go, NULL, 0x2 | CREATE_SUSPENDED);
  1085. XSetThreadProcessor(hThread, 4);
  1086. SetThreadPriority(hThread, THREAD_PRIORITY_HIGHEST);
  1087. ResumeThread(hThread);
  1088. CloseHandle(hThread);
  1089.  
  1090. //XShowMessageBoxUI(XUSER_INDEX_ANY, L"XBLExtinction - Call Of Duty Ghost", L"XBLExtinction Mods -\nPlease Select A Cheat Option\n\nModifications\n----------------\nRedbox= ON!\nNo Recoil= ON!\nLazer= ON!\nUAV= ON!", 2, Buttons1, 0, XMB_ALERTICON, &g_mb_result, &g_xol);
  1091. //while(!XHasOverlappedIoCompleted(&g_xol)) Sleep(500);
  1092. //if(g_mb_result.dwButtonPressed == 0) {
  1093. // *(int*)0x8226D2B4 = nop; //RedBox
  1094. // *(int*)0x822C9344 = nop; //No Recoil
  1095. // *(int*)0x8227F198 = other; //Lazer
  1096. // *(int*)0x8226539B = other; //UAV1
  1097. // *(int*)0x82265793 = other; //UAV2
  1098. // *(int*)0x822657FF = other; //UAV3
  1099. // XNotifyQueueUI(XNOTIFYUI_TYPE_GENERIC, 0, 2, L"Ghosts - Modifications Enabled!", 0);
  1100. //}
  1101. }
  1102.  
  1103. ////////////////////////////////////////////////////////////////////////////////////////////////////////////
  1104.  
  1105.  
  1106. if (pExecutionId->TitleID == DESTINY)
  1107. {
  1108. HANDLE hThread;
  1109. DWORD threadId;
  1110. ExCreateThread(&hThread, 0, &threadId, (VOID*)XapiThreadStartup, (LPTHREAD_START_ROUTINE)DestinyLaunch_Go, NULL, 0x2 | CREATE_SUSPENDED);
  1111. XSetThreadProcessor(hThread, 4);
  1112. SetThreadPriority(hThread, THREAD_PRIORITY_HIGHEST);
  1113. ResumeThread(hThread);
  1114. }
  1115.  
  1116. ////////////////////////////////////////////////////////////////////////////////////////////////////////////
  1117.  
  1118. if (pExecutionId->TitleID == GTAV)
  1119. {
  1120. /* HANDLE hThread;
  1121. DWORD threadId;
  1122. ExCreateThread(&hThread, 0, &threadId, (VOID*)XapiThreadStartup, GTA5_go, NULL, 0x2 | CREATE_SUSPENDED);
  1123. XSetThreadProcessor(hThread, 4);
  1124. SetThreadPriority(hThread, THREAD_PRIORITY_HIGHEST);
  1125. ResumeThread(hThread);
  1126. CloseHandle(hThread); */
  1127. }
  1128.  
  1129.  
  1130.  
  1131. if (pExecutionId->TitleID == MW3)
  1132. {
  1133. /*MESSAGEBOX_RESULT g_mb_result;
  1134. XOVERLAPPED g_xol;
  1135. LPCWSTR Buttons4[2] = { L"Modifications", L"Original Game"};*/
  1136. //MW3 Public Cheater Thread
  1137. HANDLE hThread;
  1138. DWORD threadId;
  1139. ExCreateThread(&hThread, 0, &threadId, (VOID*)XapiThreadStartup, MW3_Go, NULL, 0x2 | CREATE_SUSPENDED);
  1140. XSetThreadProcessor(hThread, 4);
  1141. SetThreadPriority(hThread, THREAD_PRIORITY_HIGHEST);
  1142. ResumeThread(hThread);
  1143. CloseHandle(hThread);
  1144. //while(XShowMessageBoxUI(XUSER_INDEX_ANY, L"XBLExtinction - Call Of Duty MW3", L"XBLExtinction Mods -\nPlease Select A Cheat Option\n\nModifications\n----------------\nRedbox= ON!\nNo Recoil= ON!\nLazer= ON!\nUAV= ON!\nWalhack= ON!", 2, Buttons4, 0, XMB_ALERTICON, &g_mb_result, &g_xol) == ERROR_ACCESS_DENIED) Sleep(500);
  1145. //while(!XHasOverlappedIoCompleted(&g_xol)) Sleep(500);
  1146. //if(g_mb_result.dwButtonPressed == 0) {
  1147. //*(int*)0x821154A4 = other; //Redboxes
  1148. //*(int*)0x8210E58C = other; //UAV A
  1149. //*(int*)0x8215A2C0 = other; //Lazer
  1150. //*(int*)0x82001B7C = other; //Walhack
  1151. //*(int*)0x821614D4 = other; //No Recoil
  1152. //XNotifyQueueUI(XNOTIFYUI_TYPE_COMPLAINT, 0, 2, L"XBLExtinction - MW3 Mods Enabled!", NULL);
  1153. //}
  1154. }
  1155.  
  1156. ////////////////////////////////////////////////////////////////////////////////////////////////////////////
  1157.  
  1158.  
  1159. if (pExecutionId->TitleID == WAW)
  1160. {
  1161. /*MESSAGEBOX_RESULT g_mb_result;
  1162. XOVERLAPPED g_xol;
  1163. LPCWSTR Buttons6[2] = { L"Modifications", L"Original Game"};*/
  1164. //COD5 Public Cheater Thread
  1165. HANDLE hThread;
  1166. DWORD threadId;
  1167. ExCreateThread(&hThread, 0, &threadId, (VOID*)XapiThreadStartup, COD5_Go, NULL, 0x2 | CREATE_SUSPENDED);
  1168. XSetThreadProcessor(hThread, 4);
  1169. SetThreadPriority(hThread, THREAD_PRIORITY_HIGHEST);
  1170. ResumeThread(hThread);
  1171. CloseHandle(hThread);
  1172. //while(XShowMessageBoxUI(XUSER_INDEX_ANY, L"XBLExtinction - Call Of Duty WAW", L"XBLExtinction Mods -\nPlease Select A Cheat Option\n\nModifications\n----------------\nGodMode= ON!\n", 2, Buttons6, 0, XMB_ALERTICON, &g_mb_result, &g_xol) == ERROR_ACCESS_DENIED) Sleep(500);
  1173. //while(!XHasOverlappedIoCompleted(&g_xol)) Sleep(500);
  1174. //if(g_mb_result.dwButtonPressed == 0) {
  1175. //*(int*)0x011c0bb7 = other; //GodMode
  1176. //XNotifyQueueUI(XNOTIFYUI_TYPE_COMPLAINT, 0, 2, L"XBLExtinction - WAW Mods Enabled!", NULL);
  1177. //}
  1178. }
  1179.  
  1180. ////////////////////////////////////////////////////////////////////////////////////////////////////////////
  1181.  
  1182.  
  1183. if (pExecutionId->TitleID == MW1)
  1184. {
  1185. /*MESSAGEBOX_RESULT g_mb_result;
  1186. XOVERLAPPED g_xol;
  1187. LPCWSTR Buttons7[2] = { L"Modifications", L"Original Game"};*/
  1188. //COD4 Public Cheater Thread
  1189. HANDLE hThread;
  1190. DWORD threadId;
  1191. ExCreateThread(&hThread, 0, &threadId, (VOID*)XapiThreadStartup, COD4_Go, NULL, 0x2 | CREATE_SUSPENDED);
  1192. XSetThreadProcessor(hThread, 4);
  1193. SetThreadPriority(hThread, THREAD_PRIORITY_HIGHEST);
  1194. ResumeThread(hThread);
  1195. CloseHandle(hThread);
  1196. /*XShowMessageBoxUI(XUSER_INDEX_ANY, L"XBLExtinction - Call Of Duty COD4", L"XBLExtinction Mods -\nPlease Select A Cheat Option\n\nModifications\n----------------\n", 2, Buttons7, 0, XMB_ALERTICON, &g_mb_result, &g_xol);
  1197. while(!XHasOverlappedIoCompleted(&g_xol)) Sleep(500);
  1198. if(g_mb_result.dwButtonPressed == 0) {
  1199. XNotifyQueueUI(XNOTIFYUI_TYPE_COMPLAINT, 0, 2, L"XBLExtinction - COD4 Mods Enabled!", NULL);
  1200. }*/
  1201. }
  1202.  
  1203. ////////////////////////////////////////////////////////////////////////////////////////////////////////////
  1204.  
  1205.  
  1206. if (pExecutionId->TitleID == BO1)
  1207. {
  1208. /*MESSAGEBOX_RESULT g_mb_result;
  1209. XOVERLAPPED g_xol;
  1210. LPCWSTR Buttons8[2] = { L"Modifications", L"Original Game"};*/
  1211. //BO1 Public Cheater Thread
  1212. HANDLE hThread;
  1213. DWORD threadId;
  1214. ExCreateThread(&hThread, 0, &threadId, (VOID*)XapiThreadStartup, BO1_Go, NULL, 0x2 | CREATE_SUSPENDED);
  1215. XSetThreadProcessor(hThread, 4);
  1216. SetThreadPriority(hThread, THREAD_PRIORITY_HIGHEST);
  1217. ResumeThread(hThread);
  1218. CloseHandle(hThread);
  1219. //XShowMessageBoxUI(XUSER_INDEX_ANY, L"XBLExtinction - Call Of Duty BO1", L"XBLExtinction Mods -\nPlease Select A Cheat Option\n\nModifications\n----------------\nRedbox= ON!\nBlackbird= ON!\n", 2, Buttons8, 0, XMB_ALERTICON, &g_mb_result, &g_xol);
  1220. //while(!XHasOverlappedIoCompleted(&g_xol)) Sleep(500);
  1221. //if(g_mb_result.dwButtonPressed == 0) {
  1222. // *(int*)2182775199u = other; //Redbox
  1223. // *(int*)2182980139u = other; //Blackbird
  1224. //XNotifyQueueUI(XNOTIFYUI_TYPE_COMPLAINT, 0, 2, L"XBLExtinction - Black Ops 1 Mods Enabled!", NULL);
  1225. //}
  1226. }
  1227.  
  1228.  
  1229. ////////////////////////////////////////////////////////////////////////////////////////////////////////////
  1230.  
  1231.  
  1232. if (pExecutionId->TitleID == BO3)
  1233. {
  1234. /*MESSAGEBOX_RESULT g_mb_result;
  1235. XOVERLAPPED g_xol;
  1236. LPCWSTR Buttons8[2] = { L"Modifications", L"Original Game"};*/
  1237. //BO1 Public Cheater Thread
  1238. HANDLE hThread;
  1239. DWORD threadId;
  1240. ExCreateThread(&hThread, 0, &threadId, (VOID*)XapiThreadStartup, BO3_go, NULL, 0x2 | CREATE_SUSPENDED);
  1241. XSetThreadProcessor(hThread, 4);
  1242. SetThreadPriority(hThread, THREAD_PRIORITY_HIGHEST);
  1243. ResumeThread(hThread);
  1244. CloseHandle(hThread);
  1245. //XShowMessageBoxUI(XUSER_INDEX_ANY, L"XBLExtinction - Call Of Duty BO1", L"XBLExtinction Mods -\nPlease Select A Cheat Option\n\nModifications\n----------------\nRedbox= ON!\nBlackbird= ON!\n", 2, Buttons8, 0, XMB_ALERTICON, &g_mb_result, &g_xol);
  1246. //while(!XHasOverlappedIoCompleted(&g_xol)) Sleep(500);
  1247. //if(g_mb_result.dwButtonPressed == 0) {
  1248. // *(int*)2182775199u = other; //Redbox
  1249. // *(int*)2182980139u = other; //Blackbird
  1250. //XNotifyQueueUI(XNOTIFYUI_TYPE_COMPLAINT, 0, 2, L"XBLExtinction - Black Ops 1 Mods Enabled!", NULL);
  1251. //}
  1252. }
  1253.  
  1254. ////////////////////////////////////////////////////////////////////////////////////////////////////////////
  1255. lastTitleID = pExecutionId->TitleID;
  1256. }
  1257. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement