Advertisement
BINO2002

Untitled

Nov 13th, 2016
534
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 36.25 KB | None | 0 0
  1. #define _CRT_SECURE_NO_WARNINGS
  2.  
  3. #include "stdafx.h"
  4. #include <Windows.h>
  5. #include <iostream>
  6. #include <string>
  7. #include <fstream>
  8. #include <iterator>
  9. #include <vector>
  10. #include <sstream>
  11. #include <string.h>
  12.  
  13. using namespace std;
  14.  
  15. std::vector<std::string> split(std::string s) {
  16. std::vector<std::string> elems;
  17. std::stringstream ss(s);
  18. std::istream_iterator<std::string> begin(ss);
  19. std::istream_iterator<std::string> end;
  20. std::vector<std::string> vstrings(begin, end);
  21. return vstrings;
  22. }
  23.  
  24. std::string Input() {
  25. std::string ass;
  26. getline(std::cin, ass);
  27. return ass;
  28. }
  29.  
  30. DWORD base = (DWORD)GetModuleHandle("RobloxPlayerBeta.exe");
  31. DWORD getaddy2(int address) {
  32. return (address - 0x400000 + base);
  33. }
  34.  
  35. void ConsoleHacks()
  36. {
  37. DWORD nothing;
  38. VirtualProtect((PVOID)&FreeConsole, 1, PAGE_EXECUTE_READWRITE, &nothing);
  39. *(BYTE*)(&FreeConsole) = 0xC3;
  40. }
  41.  
  42. namespace Memory {
  43. bool Compare(const BYTE *pData, const BYTE *bMask, const char *szMask)
  44. {
  45. for (; *szMask; ++szMask, ++pData, ++bMask)
  46. if (*szMask == 'x' && *pData != *bMask) return 0;
  47. return (*szMask) == NULL;
  48. }
  49.  
  50. DWORD FindPattern(DWORD dwAddress, DWORD dwLen, BYTE *bMask, char *szMask)
  51. {
  52. for (int i = 0; i<(int)dwLen; i++)
  53. if (Compare((BYTE*)(dwAddress + (int)i), bMask, szMask)) return (int)(dwAddress + i);
  54. return 0;
  55. }
  56.  
  57. int Scan(DWORD mode, char* content, char* mask)
  58. {
  59.  
  60. DWORD PageSize;
  61. SYSTEM_INFO si;
  62. GetSystemInfo(&si);
  63. PageSize = si.dwPageSize;
  64. MEMORY_BASIC_INFORMATION mi;
  65. for (DWORD lpAddr = 0; lpAddr<0x7FFFFFFF; lpAddr += PageSize)
  66. {
  67. DWORD vq = VirtualQuery((void*)lpAddr, &mi, PageSize);
  68. if (vq == ERROR_INVALID_PARAMETER || vq == 0) break;
  69. if (mi.Type == MEM_MAPPED) continue;
  70. if (mi.Protect == mode)
  71. {
  72. int addr = FindPattern(lpAddr, PageSize, (PBYTE)content, mask);
  73. if (addr != 0)
  74. {
  75. return addr;
  76. }
  77. }
  78. }
  79.  
  80. }
  81.  
  82.  
  83. }
  84.  
  85. int DataModel;
  86. int Workspace;
  87. int Lighting;
  88. int Players;
  89. int lua_State;
  90.  
  91. int GetParent(int Instance) {
  92. return *(int*)(Instance + 0x34);
  93. }
  94. std::string* GetName(int Instance) {
  95. return (std::string*)(*(int*)(Instance + 0x28) - 0x4);
  96. }
  97.  
  98. const char* GetClass(int self)
  99. {
  100.  
  101. return (const char*)(*(int(**)(void))(*(int*)self + 16))() + 4;
  102. }
  103.  
  104. int FindFirstChild_PartOf(int Instance, std::string Name) {
  105. DWORD StartOfChildren = *(DWORD*)(Instance + 0x2C);
  106. DWORD EndOfChildren = *(DWORD*)(StartOfChildren + 4);
  107. for (int i = *(int*)StartOfChildren; i != EndOfChildren; i += 8)
  108. {
  109. if (strstr(GetName(*(int*)i)->c_str(), Name.c_str()))
  110. {
  111. if (*(int*)i == 0)
  112. {
  113.  
  114. }
  115. else {
  116. return *(int*)i;
  117. }
  118. }
  119.  
  120. }
  121.  
  122. }
  123.  
  124.  
  125. std::vector<int> GetChildren(int Instance) {
  126. DWORD StartOfChildren = *(DWORD*)(Instance + 0x2C);
  127. DWORD EndOfChildren = *(DWORD*)(StartOfChildren + 4);
  128. std::vector<int> Children;
  129. for (int i = *(int*)StartOfChildren; i < EndOfChildren; i += 8)
  130. {
  131. Children.push_back(*(int*)i);
  132. }
  133. return Children;
  134. }
  135.  
  136. int GetCharFromPlayer(int Instance) {
  137. return *(int*)(Instance + 0x48);
  138. }
  139.  
  140. std::vector<int> GetAllPlayerCharacters(int ParentOfChars, std::string omitted = "none") {
  141. std::vector<int> PlayersVector = GetChildren(Players);
  142. std::vector<int> CharList;
  143. for (int i = 0; i < PlayersVector.size(); i++) {
  144. if (*GetName(PlayersVector[i]) != omitted) {
  145. int Character = FindFirstChild_PartOf(ParentOfChars, *GetName(PlayersVector[i]));
  146. if (Character > 150) {
  147. CharList.push_back(Character);
  148. }
  149. }
  150. }
  151. return CharList;
  152. }
  153.  
  154. int GetLocalPlayer(int Plr) {
  155. return *(int*)(Plr + 340);
  156. }
  157.  
  158. int FindFirstClass(int Instance, const char* Name)
  159. {
  160. DWORD CHILD_START = *(DWORD*)(Instance + 0x2C);
  161. DWORD CHILD_END = *(DWORD*)(CHILD_START + 4);
  162.  
  163. for (int i = *(int*)CHILD_START; i != CHILD_END; i += 8)
  164. {
  165. if (memcmp(GetClass(*(int*)i), Name, strlen(Name)) == 0)
  166. {
  167. return *(int*)i;
  168. }
  169. }
  170. }
  171.  
  172. bool humanoidstatehax = false;
  173. int humanoidstatetype;
  174.  
  175.  
  176. void Console(char* title) {
  177. AllocConsole();
  178. SetConsoleTitleA(title);
  179. freopen("CONOUT$", "w", stdout);
  180. freopen("CONIN$", "r", stdin);
  181. HWND ConsoleHandle = GetConsoleWindow();
  182. ::SetWindowPos(ConsoleHandle, HWND_TOPMOST, 0, 0, 0, 0, SWP_DRAWFRAME | SWP_NOMOVE | SWP_NOSIZE | SWP_SHOWWINDOW);
  183. ::ShowWindow(ConsoleHandle, SW_NORMAL);
  184. }
  185.  
  186.  
  187. void Scan()
  188. {
  189.  
  190. DWORD DataModelA = getaddy2(0x1185ADC);
  191. DataModel = Memory::Scan(PAGE_READWRITE, (char*)&DataModelA, "xxxx");
  192. }
  193.  
  194. void Scan1()
  195. {
  196. Workspace = FindFirstClass(DataModel, "Workspace");
  197. Players = FindFirstClass(DataModel, "Players");
  198. Lighting = FindFirstClass(DataModel, "Lighting");
  199. }
  200.  
  201. void setJb(DWORD addr) {
  202. DWORD oldProtection;
  203. VirtualProtect((LPVOID)addr, 0x05, PAGE_EXECUTE_READWRITE, &oldProtection);
  204. *(char*)addr = 0xEB;
  205. VirtualProtect((LPVOID)addr, 0x05, oldProtection, &oldProtection);
  206. }
  207.  
  208. void restoreJb(DWORD addr) {
  209. DWORD oldProtection;
  210. VirtualProtect((void*)addr, 5, PAGE_EXECUTE_READWRITE, &oldProtection);
  211. *(char*)addr = 0x72;
  212. VirtualProtect((void*)addr, 5, oldProtection, &oldProtection);
  213. }
  214.  
  215. typedef int(__cdecl *Lua_gettop)(int lua_State);
  216. Lua_gettop lua_gettop = (Lua_gettop)getaddy2(0x54BE50);
  217.  
  218. typedef void(__cdecl *Lua_getfield)(int lua_State, int index, const char *k);
  219. Lua_getfield lua_getfield = (Lua_getfield)getaddy2(0x54B9C0);
  220.  
  221. typedef void(__cdecl *Lua_settop)(int lua_State, int index);
  222. Lua_settop lua_settop = (Lua_settop)getaddy2(0x54D8A0);
  223.  
  224. typedef void(__cdecl *Lua_pushstring)(int lua_State, const char *s);
  225. Lua_pushstring lua_pushstring = (Lua_pushstring)getaddy2(0x54CC00);
  226.  
  227. typedef void(__cdecl *Lua_pushvalue)(int lua_State, int index);
  228. Lua_pushvalue lua_pushvalue = (Lua_pushvalue)getaddy2(0x54CCC0);
  229.  
  230. typedef int(__cdecl *Lua_pcall)(int lua_State, int nargs, int nresults, int errfunc);
  231. Lua_pcall lua_pcall = (Lua_pcall)getaddy2(0x54C6A0);
  232.  
  233. typedef void(__cdecl *Lua_setfield)(int lua_State, int index, const char *k);
  234. Lua_setfield lua_setfield = (Lua_setfield)getaddy2(0x54D510);
  235.  
  236. typedef void(__cdecl *Lua_pushnumber)(int lua_State, double n);
  237. Lua_pushnumber lua_pushnumber = (Lua_pushnumber)getaddy2(0x54CB80);
  238.  
  239. typedef char*(__thiscall *ns)(char *idk, int a2);
  240. ns idk = (ns)getaddy2(0x052D7F0);
  241.  
  242. void getfield(int state, int index, const char *k) {
  243. setJb(getaddy2(0x54BA22));
  244. lua_getfield(state, index, k);
  245. restoreJb(getaddy2(0x54BA22));
  246. }
  247.  
  248.  
  249. void settop(int state, int index) {
  250. setJb(getaddy2(0x54D8FB));
  251. lua_settop(state, index);
  252. restoreJb(getaddy2(0x54D8FB));
  253. }
  254.  
  255. void pushstring(int state, const char *s) {
  256. setJb(getaddy2(0x54CC67));
  257. lua_pushstring(state, s);
  258. restoreJb(getaddy2(0x54CC67));
  259. }
  260.  
  261. void pushvalue(int state, int index) {
  262. setJb(getaddy2(0x54CCFA));
  263. lua_pushvalue(state, index);
  264. restoreJb(getaddy2(0x54CCFA));
  265. }
  266.  
  267. void pcall(int state, int nargs, int nresults, int errfunc) {
  268. setJb(getaddy2(0x54C717));
  269. lua_pcall(state, nargs, nresults, errfunc);
  270. restoreJb(getaddy2(0x54C717));
  271. }
  272.  
  273. void setfield(int state, int index, const char *k) {
  274. setJb(getaddy2(0x54D576));
  275. lua_setfield(state, index, k);
  276. restoreJb(getaddy2(0x54D576));
  277. }
  278.  
  279. void pushnumber(int state, double number) {
  280. setJb(getaddy2(0x54CBB9));
  281. lua_pushnumber(state, number);
  282. restoreJb(getaddy2(0x54CBB9));
  283. }
  284. void getglobal(int lua_State, const char *k) {
  285. return getfield(lua_State, -10002, k);
  286. }
  287.  
  288. int GetCharacter(std::string noobchar) {
  289. if (noobchar == "me") {
  290. int LocalNoob = GetLocalPlayer(Players);
  291. std::string* asdnoob = GetName(LocalNoob);
  292. int Character = FindFirstChild_PartOf(Workspace, *asdnoob);
  293. if (Character > 0) {
  294. return Character;
  295. }
  296. if (Character == 0) {
  297. return{};
  298. }
  299. }
  300. else if (noobchar != "me" && noobchar != "all" && noobchar != "others") {
  301. int Character = FindFirstChild_PartOf(Workspace, noobchar);
  302. if (Character > 0) {
  303. return Character;
  304. }
  305. if (Character == 0) {
  306. return{};
  307. }
  308. }
  309. }
  310.  
  311.  
  312. int GetPlayer(std::string noobchar) {
  313. if (noobchar == "me") {
  314. int Player = GetLocalPlayer(Players);
  315. return Player;
  316. }
  317. else if (noobchar != "me" && noobchar != "all" && noobchar != "others") {
  318. int Player = FindFirstChild_PartOf(Players, noobchar);
  319. if (Player != 0) {
  320. return Player;
  321. }
  322. if (Player == 0) {
  323. return{};
  324. }
  325. }
  326. }
  327.  
  328. int FE(int Workspace) {
  329. return *(BYTE*)(Workspace + 595);
  330. }
  331.  
  332.  
  333. int main() {
  334. ConsoleHacks();
  335. Console("noobxploit v0.2.1 by supersupersnivy97 @V3rmillion");
  336. HANDLE hConsole = GetStdHandle(STD_OUTPUT_HANDLE);
  337. cout << "u noob\n";
  338. cout << "scanning plz wait noob\n";
  339. Scan();
  340. Scan1();
  341. int fuck = GetLocalPlayer(Players);
  342. string hahanoob = *GetName(fuck);
  343. vector<string> above = { "BINO2002", "VisualRape", "CaptainPremiumDoge", "DarkFrozure", "1234rr3", "0199284", "MrSubmot", "lemon4488", "stalkingmark", "dogtraining", "Synxcious", "choco123", "HttpPotatos", "noobxlpoit", "Hairy_Nippless", "iiMG", "DENIZR2D", "igotballsofsteel123", "GodOfBerserk", "monkeyoyo6", "razer225", "razersharp225", "GODman5432", "NarrowRebecca", "1hotshot1", "RatteKoppie", "ZackaryH02", "JustCallMeMerc", "CocaColaHax", "Nessifa", "Scorp1x", "Sukez", "HisHighness", "red_abysm", "invisibletjm" };
  344. bool ok = false;
  345. printf("authorizing...\n");
  346. for (int i = 0; i < above.size(); i++) {
  347. if (hahanoob == above[i]) {
  348. ok = true;
  349. }
  350. }
  351. if (ok) {
  352. printf("authorized.\n");
  353. int ScriptContext = FindFirstClass(DataModel, "ScriptContext");
  354. bool FilteringEnabled = FE(Workspace);
  355. SetConsoleTextAttribute(hConsole, 10);
  356. printf("done u noob\n");
  357. Sleep(4000);
  358. lua_State = *(DWORD*)(ScriptContext + 0x70);
  359. system("cls");
  360. SetConsoleTextAttribute(hConsole, 14);
  361. if (DataModel > 0) {
  362. printf("datamodel is ok\n");
  363. }
  364. if (Workspace > 0) {
  365. printf("workspace is ok\n");
  366. }
  367. if (Lighting > 0) {
  368. printf("lighting is ok\n");
  369. }
  370. if (Players > 0) {
  371. printf("players is ok\n");
  372. }
  373. if (lua_State > 0) {
  374. printf("lua_state is ok\n");
  375. }
  376. if (FilteringEnabled) {
  377. printf("Filtering is enabled\n");
  378. }
  379. else {
  380. printf("Filtering is disabled\n");
  381. }
  382. SetConsoleTextAttribute(hConsole, 15);
  383. SetConsoleTextAttribute(hConsole, 9);
  384. getglobal(lua_State, "printidentity");
  385. pcall(lua_State, 0, 0, 0);
  386. settop(lua_State, 0);
  387. getglobal(lua_State, "warn");
  388. string welcome = "Hello, " + *GetName(GetLocalPlayer(Players)) + "!\nWelcome to noobxploit 0.2.1 made by supersupersnivy97\nCredits to Quad Core, Variaxt, HexaDecimal, Variable, Louka\nSay cmds for a list of commands";
  389. pushstring(lua_State, welcome.c_str());
  390. pcall(lua_State, 1, 0, 0);
  391. settop(lua_State, 0);
  392. SetConsoleTextAttribute(hConsole, 0xA);
  393. cout << "Say cmds for a list of commands.\n";
  394. cout << "(no support for 'others' and 'all' but for 'me' and short names)\n";
  395. cout << "(if a name starts with a cap letter, make sure you cap it)\n";
  396. do {
  397. std::cout << ">";
  398. std::vector<std::string> In = split(Input());
  399. if (In.at(0) == "cmds") {
  400. if (In.size() == 1) {
  401. cout << "ff [p] - Gives [p] a ForceField\n";
  402. cout << "unff [p] - Removes [p]'s ForceField\n";
  403. cout << "fire [p] - Gives [p] Fire\n";
  404. cout << "unfire [p] - Removes [p]'s Fire\n";
  405. cout << "sparkles [p] - Gives [p] Sparkles\n";
  406. cout << "unsparkles [p] - Removes [p]'s Sparkles\n";
  407. cout << "smoke [p] - Gives [p] Smoke\n";
  408. cout << "unsmoke [p] - Removes [p]'s Smoke\n";
  409. cout << "particles [p] [id] - Gives [p] particles with the id [id]\n";
  410. cout << "unparticles [p] - Removes [p]'s particles\n";
  411. cout << "ws [p] [n] - Sets [p]'s WalkSpeed to [n]\n";
  412. cout << "god [p] - Sets [p]'s MaxHealth to HUGE_VAL\n";
  413. cout << "ungod [p] - Sets [p]'s MaxHealth to 100\n";
  414. cout << "jp [p] [n] - Sets [p]'s JumpPower to [n]\n";
  415. cout << "time [n] - Sets the time to [n]\n";
  416. cout << "btools [p] - Gives [p] building tools\n";
  417. cout << "makepart - Makes a Part in the Workspace\n";
  418. cout << "fogend [n] - Sets FogEnd to [n]\n";
  419. cout << "kill [p] - Kills [p]\n";
  420. cout << "statchange1 [p] [stat] [new int value] - Sets [p]'s [stat] to [new int value]\n";
  421. cout << "statchange2 [p] [stat] [new string value] - Sets [p]'s [stat] to [new string value]\n";
  422. cout << "charapp [p] [id] - Sets [p]'s CharacterAppearance to ..[id]\n";
  423. cout << "getglobal [name] - Use only if you know what it is\n";
  424. cout << "getfield [index] [name] - Use only if you know what it is\n";
  425. cout << "setfield [index] [name] - Use only if you know what it is\n";
  426. cout << "pushvalue [index] - Use only if you know what it is\n";
  427. cout << "pushstring [string] - Use only if you know what it is\n";
  428. cout << "pushnumber [number] - Use only if you know what it is\n";
  429. cout << "pcall [nargs] [nresults] - Use only if you know what it is\n";
  430. cout << "settop [index] - Use only if you know what it is\n";
  431. cout << "gettop - Use only if you know what it is\n";
  432. cout << "invisible [p] - Makes [p] invisible\n";
  433. cout << "visible [p] - Makes [p] visible\n";
  434. cout << "gravity [n] - Sets the gravity to [n] (default is 196.2)\n";
  435. cout << "print [string] - Prints [string] in the dev console\n";
  436. cout << "tp [p1] [p2] - Teleports [p1] to [p2]\n";
  437. cout << "music [id] - Plays the music with the id [id]\n";
  438. cout << "explode [p] - Blows up [p]\n";
  439. cout << "punish [p] - Punishes [p]\n";
  440. cout << "unpunish [p] - Unpunishes [p]\n";
  441. cout << "sky [id] - Makes a skybox with the id [id]\n";
  442. cout << "rsky - Removes noobxploit's skybox\n";
  443. }
  444. }
  445. if (In.at(0) == "rsky") {
  446. if (In.size() == 1) {
  447. getglobal(lua_State, "game");
  448. getfield(lua_State, -1, "Lighting");
  449. getfield(lua_State, -1, "noobxploit_sky");
  450. getfield(lua_State, -1, "remove");
  451. pushvalue(lua_State, -2);
  452. pcall(lua_State, 1, 0, 0);
  453. settop(lua_State, 0);
  454. }
  455. }
  456. if (In.at(0) == "sky") {
  457. if (In.size() == 2) {
  458. string skybox = "rbxassetid://" + In.at(1);
  459. getglobal(lua_State, "game");
  460. getfield(lua_State, -1, "Lighting");
  461. getglobal(lua_State, "Instance");
  462. getfield(lua_State, -1, "new");
  463. pushstring(lua_State, "Sky");
  464. pushvalue(lua_State, -4);
  465. pcall(lua_State, 2, 1, 0);
  466. pushstring(lua_State, "noobxploit_sky");
  467. setfield(lua_State, -2, "Name");
  468. pushstring(lua_State, skybox.c_str());
  469. setfield(lua_State, -2, "SkyboxBk");
  470. pushstring(lua_State, skybox.c_str());
  471. setfield(lua_State, -2, "SkyboxDn");
  472. pushstring(lua_State, skybox.c_str());
  473. setfield(lua_State, -2, "SkyboxFt");
  474. pushstring(lua_State, skybox.c_str());
  475. setfield(lua_State, -2, "SkyboxLf");
  476. pushstring(lua_State, skybox.c_str());
  477. setfield(lua_State, -2, "SkyboxRt");
  478. pushstring(lua_State, skybox.c_str());
  479. setfield(lua_State, -2, "SkyboxUp");
  480. settop(lua_State, 0);
  481. }
  482. }
  483. if (In.at(0) == "setfield") {
  484. setfield(lua_State, atoi(In.at(1).c_str()), In.at(2).c_str());
  485. }
  486. if (In.at(0) == "punish") {
  487. if (In.size() == 2) {
  488. string noob1 = *GetName(GetPlayer(In.at(1)));
  489. getglobal(lua_State, "game");
  490. getfield(lua_State, -1, "Workspace");
  491. getfield(lua_State, -1, noob1.c_str());
  492. getglobal(lua_State, "game");
  493. getfield(lua_State, -1, "Lighting");
  494. setfield(lua_State, -3, "Parent");
  495. settop(lua_State, 0);
  496. }
  497. }
  498. if (In.at(0) == "unpunish") {
  499. if (In.size() == 2) {
  500. string noob1 = *GetName(GetPlayer(In.at(1)));
  501. getglobal(lua_State, "game");
  502. getfield(lua_State, -1, "Lighting");
  503. getfield(lua_State, -1, noob1.c_str());
  504. getglobal(lua_State, "game");
  505. getfield(lua_State, -1, "Workspace");
  506. setfield(lua_State, -3, "Parent");
  507. settop(lua_State, 0);
  508. }
  509. }
  510. if (In.at(0) == "music") {
  511. if (In.size() == 2) {
  512. getglobal(lua_State, "game");
  513. getfield(lua_State, -1, "Workspace");
  514. getglobal(lua_State, "Instance");
  515. getfield(lua_State, -1, "new");
  516. pushstring(lua_State, "Sound");
  517. pushvalue(lua_State, -4);
  518. pcall(lua_State, 2, 1, 0);
  519. pushstring(lua_State, ("rbxassetid://" + In.at(1)).c_str());
  520. setfield(lua_State, -2, "SoundId");
  521. pushstring(lua_State, "noobxploit_music");
  522. setfield(lua_State, -2, "Name");
  523. pushnumber(lua_State, 1);
  524. setfield(lua_State, -2, "Volume");
  525. getfield(lua_State, -1, "Play");
  526. pushvalue(lua_State, -2);
  527. pcall(lua_State, 1, 0, 0);
  528. settop(lua_State, 0);
  529. }
  530. }
  531. if (In.at(0) == "explode") {
  532. if (In.size() == 2) {
  533. string fuckingnoob = *GetName(GetPlayer(In.at(1)));
  534. getglobal(lua_State, "game");
  535. getfield(lua_State, -1, "Workspace");
  536. getglobal(lua_State, "Instance");
  537. getfield(lua_State, -1, "new");
  538. pushstring(lua_State, "Explosion");
  539. pushvalue(lua_State, -4);
  540. pcall(lua_State, 2, 1, 0);
  541. getglobal(lua_State, "game");
  542. getfield(lua_State, -1, "Workspace");
  543. getfield(lua_State, -1, fuckingnoob.c_str());
  544. getfield(lua_State, -1, "Torso");
  545. getfield(lua_State, -1, "Position");
  546. setfield(lua_State, -6, "Position");
  547. settop(lua_State, 0);
  548. }
  549. }
  550. if (In.at(0) == "tp") {
  551. if (In.size() == 3) {
  552. string noob1 = *GetName(GetPlayer(In.at(1)));
  553. string noob2 = *GetName(GetPlayer(In.at(2)));
  554. getglobal(lua_State, "game");
  555. getfield(lua_State, -1, "Workspace");
  556. getfield(lua_State, -1, noob1.c_str());
  557. getfield(lua_State, -1, "HumanoidRootPart");
  558. getglobal(lua_State, "game");
  559. getfield(lua_State, -1, "Workspace");
  560. getfield(lua_State, -1, noob2.c_str());
  561. getfield(lua_State, -1, "Torso");
  562. getfield(lua_State, -1, "CFrame");
  563. setfield(lua_State, -6, "CFrame");
  564. settop(lua_State, 0);
  565. }
  566. }
  567. if (In.at(0) == "print") {
  568. string string;
  569. for (int i = 1; i < In.size(); i++) {
  570. if (i < (In.size() - 1)) {
  571. string.append(In.at(i) + ' ');
  572. }
  573. if (i == (In.size() - 1)) {
  574. string.append(In.at(i));
  575. }
  576. }
  577. getglobal(lua_State, "print");
  578. pushstring(lua_State, string.c_str());
  579. pcall(lua_State, 1, 0, 0);
  580. settop(lua_State, 0);
  581. }
  582. if (In.at(0) == "gravity") {
  583. if (In.size() == 2) {
  584. int newgravity = atoi(In.at(1).c_str());
  585. getglobal(lua_State, "game");
  586. getfield(lua_State, -1, "Workspace");
  587. pushnumber(lua_State, newgravity);
  588. setfield(lua_State, -2, "Gravity");
  589. settop(lua_State, 0);
  590. }
  591. }
  592. if (In.at(0) == "gettop") {
  593. if (In.size() == 1) {
  594. cout << "Elements on the stack: " << lua_gettop(lua_State) << endl;
  595. }
  596. }
  597. if (In.at(0) == "settop") {
  598. if (In.size() == 2) {
  599. settop(lua_State, atoi(In.at(1).c_str()));
  600. }
  601. }
  602. if (In.at(0) == "pcall") {
  603. if (In.size() == 3) {
  604. pcall(lua_State, atoi(In.at(1).c_str()), atoi(In.at(2).c_str()), 0);
  605. }
  606. }
  607. if (In.at(0) == "pushnumber") {
  608. if (In.size() == 2) {
  609. pushnumber(lua_State, atoi(In.at(1).c_str()));
  610. }
  611. }
  612. if (In.at(0) == "pushstring") {
  613. if (In.size() == 2) {
  614. pushstring(lua_State, In.at(1).c_str());
  615. }
  616. }
  617. if (In.at(0) == "pushvalue") {
  618. if (In.size() == 2) {
  619. pushvalue(lua_State, atoi(In.at(1).c_str()));
  620. }
  621. }
  622. if (In.at(0) == "getfield") {
  623. if (In.size() == 3) {
  624. getfield(lua_State, atoi(In.at(1).c_str()), In.at(2).c_str());
  625. }
  626. }
  627. if (In.at(0) == "getglobal") {
  628. if (In.size() == 2) {
  629. getglobal(lua_State, In.at(1).c_str());
  630. }
  631. }
  632. if (In.at(0) == "invisible") {
  633. if (In.size() == 2) {
  634. int tepig_is_a_fucking_noob = GetCharacter(In.at(1));
  635. string tepigs_name = *GetName(tepig_is_a_fucking_noob);
  636. getglobal(lua_State, "game");
  637. getfield(lua_State, -1, "Workspace");
  638. getfield(lua_State, -1, tepigs_name.c_str());
  639. getfield(lua_State, -1, "Head");
  640. pushnumber(lua_State, 1);
  641. setfield(lua_State, -2, "Transparency");
  642. settop(lua_State, 0);
  643. getglobal(lua_State, "game");
  644. getfield(lua_State, -1, "Workspace");
  645. getfield(lua_State, -1, tepigs_name.c_str());
  646. getfield(lua_State, -1, "Torso");
  647. pushnumber(lua_State, 1);
  648. setfield(lua_State, -2, "Transparency");
  649. settop(lua_State, 0);
  650. getglobal(lua_State, "game");
  651. getfield(lua_State, -1, "Workspace");
  652. getfield(lua_State, -1, tepigs_name.c_str());
  653. getfield(lua_State, -1, "Left Arm");
  654. pushnumber(lua_State, 1);
  655. setfield(lua_State, -2, "Transparency");
  656. settop(lua_State, 0);
  657. getglobal(lua_State, "game");
  658. getfield(lua_State, -1, "Workspace");
  659. getfield(lua_State, -1, tepigs_name.c_str());
  660. getfield(lua_State, -1, "Left Leg");
  661. pushnumber(lua_State, 1);
  662. setfield(lua_State, -2, "Transparency");
  663. settop(lua_State, 0);
  664. getglobal(lua_State, "game");
  665. getfield(lua_State, -1, "Workspace");
  666. getfield(lua_State, -1, tepigs_name.c_str());
  667. getfield(lua_State, -1, "Right Arm");
  668. pushnumber(lua_State, 1);
  669. setfield(lua_State, -2, "Transparency");
  670. settop(lua_State, 0);
  671. getglobal(lua_State, "game");
  672. getfield(lua_State, -1, "Workspace");
  673. getfield(lua_State, -1, tepigs_name.c_str());
  674. getfield(lua_State, -1, "Right Leg");
  675. pushnumber(lua_State, 1);
  676. setfield(lua_State, -2, "Transparency");
  677. settop(lua_State, 0);
  678. getglobal(lua_State, "game");
  679. getfield(lua_State, -1, "Workspace");
  680. getfield(lua_State, -1, tepigs_name.c_str());
  681. getfield(lua_State, -1, "Head");
  682. getfield(lua_State, -1, "face");
  683. pushnumber(lua_State, 1);
  684. setfield(lua_State, -2, "Transparency");
  685. settop(lua_State, 0);
  686. }
  687. }
  688. if (In.at(0) == "visible") {
  689. if (In.size() == 2) {
  690. int tepig_is_a_fucking_noob = GetCharacter(In.at(1));
  691. string tepigs_name = *GetName(tepig_is_a_fucking_noob);
  692. getglobal(lua_State, "game");
  693. getfield(lua_State, -1, "Workspace");
  694. getfield(lua_State, -1, tepigs_name.c_str());
  695. getfield(lua_State, -1, "Head");
  696. pushnumber(lua_State, 0);
  697. setfield(lua_State, -2, "Transparency");
  698. settop(lua_State, 0);
  699. getglobal(lua_State, "game");
  700. getfield(lua_State, -1, "Workspace");
  701. getfield(lua_State, -1, tepigs_name.c_str());
  702. getfield(lua_State, -1, "Torso");
  703. pushnumber(lua_State, 0);
  704. setfield(lua_State, -2, "Transparency");
  705. settop(lua_State, 0);
  706. getglobal(lua_State, "game");
  707. getfield(lua_State, -1, "Workspace");
  708. getfield(lua_State, -1, tepigs_name.c_str());
  709. getfield(lua_State, -1, "Left Arm");
  710. pushnumber(lua_State, 0);
  711. setfield(lua_State, -2, "Transparency");
  712. settop(lua_State, 0);
  713. getglobal(lua_State, "game");
  714. getfield(lua_State, -1, "Workspace");
  715. getfield(lua_State, -1, tepigs_name.c_str());
  716. getfield(lua_State, -1, "Left Leg");
  717. pushnumber(lua_State, 0);
  718. setfield(lua_State, -2, "Transparency");
  719. settop(lua_State, 0);
  720. getglobal(lua_State, "game");
  721. getfield(lua_State, -1, "Workspace");
  722. getfield(lua_State, -1, tepigs_name.c_str());
  723. getfield(lua_State, -1, "Right Arm");
  724. pushnumber(lua_State, 0);
  725. setfield(lua_State, -2, "Transparency");
  726. settop(lua_State, 0);
  727. getglobal(lua_State, "game");
  728. getfield(lua_State, -1, "Workspace");
  729. getfield(lua_State, -1, tepigs_name.c_str());
  730. getfield(lua_State, -1, "Right Leg");
  731. pushnumber(lua_State, 0);
  732. setfield(lua_State, -2, "Transparency");
  733. settop(lua_State, 0);
  734. getglobal(lua_State, "game");
  735. getfield(lua_State, -1, "Workspace");
  736. getfield(lua_State, -1, tepigs_name.c_str());
  737. getfield(lua_State, -1, "Head");
  738. getfield(lua_State, -1, "face");
  739. pushnumber(lua_State, 0);
  740. setfield(lua_State, -2, "Transparency");
  741. settop(lua_State, 0);
  742. }
  743. }
  744. if (In.at(0) == "charapp") {
  745. if (In.size() == 3) {
  746. int noobhere = GetPlayer(In.at(1));
  747. string noobnamehere = *GetName(noobhere);
  748. string goodurl = "http://www.roblox.com/Asset/CharacterFetch.ashx?userId=";
  749. goodurl.append(In.at(2));
  750. getglobal(lua_State, "game");
  751. getfield(lua_State, -1, "Players");
  752. getfield(lua_State, -1, noobnamehere.c_str());
  753. pushstring(lua_State, goodurl.c_str());
  754. setfield(lua_State, -2, "CharacterAppearance");
  755. settop(lua_State, 0);
  756. int Character = GetCharacter(In.at(1));
  757. string charname = *GetName(Character);
  758. getglobal(lua_State, "game");
  759. getfield(lua_State, -1, "Workspace");
  760. getfield(lua_State, -1, charname.c_str());
  761. getfield(lua_State, -1, "Humanoid");
  762. pushnumber(lua_State, 0);
  763. setfield(lua_State, -2, "Health");
  764. settop(lua_State, 0);
  765. }
  766. }
  767. if (In.at(0) == "statchange1") {
  768. if (In.size() == 4) {
  769. int Player = GetPlayer(In.at(1));
  770. string playername = *GetName(Player);
  771. int leaderstats = FindFirstChild_PartOf(Player, "leaderstats");
  772. int stat = FindFirstChild_PartOf(leaderstats, In.at(2));
  773. string statname = *GetName(stat);
  774. int newvalue = atoi(In.at(3).c_str());
  775. getglobal(lua_State, "game");
  776. getfield(lua_State, -1, "Players");
  777. getfield(lua_State, -1, playername.c_str());
  778. getfield(lua_State, -1, "leaderstats");
  779. getfield(lua_State, -1, statname.c_str());
  780. pushnumber(lua_State, newvalue);
  781. setfield(lua_State, -2, "Value");
  782. settop(lua_State, 0);
  783. }
  784. }
  785. if (In.at(0) == "statchange2") {
  786. int Player = GetPlayer(In.at(1));
  787. string playername = *GetName(Player);
  788. int leaderstats = FindFirstChild_PartOf(Player, "leaderstats");
  789. int stat = FindFirstChild_PartOf(leaderstats, In.at(2));
  790. string statname = *GetName(stat);
  791. string newvalue;
  792. for (int i = 3; i < In.size(); i++) {
  793. if (i < (In.size() - 1)) {
  794. newvalue.append(In.at(i) + ' ');
  795. }
  796. if (i == (In.size() - 1)) {
  797. newvalue.append(In.at(i));
  798. }
  799. }
  800. getglobal(lua_State, "game");
  801. getfield(lua_State, -1, "Players");
  802. getfield(lua_State, -1, playername.c_str());
  803. getfield(lua_State, -1, "leaderstats");
  804. getfield(lua_State, -1, statname.c_str());
  805. pushstring(lua_State, newvalue.c_str());
  806. setfield(lua_State, -2, "Value");
  807. pcall(lua_State, 1, 0, 0);
  808. settop(lua_State, 0);
  809. }
  810. if (In.at(0) == "ff") {
  811. if (In.size() == 2) {
  812. int Character = GetCharacter(In.at(1));
  813. string charname = *GetName(Character);
  814. getglobal(lua_State, "game");
  815. getfield(lua_State, -1, "Workspace");
  816. getfield(lua_State, -1, charname.c_str());
  817. getglobal(lua_State, "Instance");
  818. getfield(lua_State, -1, "new");
  819. pushstring(lua_State, "ForceField");
  820. pushvalue(lua_State, -4);
  821. pcall(lua_State, 2, 0, 0);
  822. settop(lua_State, 0);
  823. }
  824. }
  825. if (In.at(0) == "fogend") {
  826. if (In.size() == 2) {
  827. int Character = GetCharacter(In.at(1));
  828. float hax = atoi(In.at(1).c_str());
  829. getglobal(lua_State, "game");
  830. getfield(lua_State, -1, "Lighting");
  831. pushnumber(lua_State, hax);
  832. setfield(lua_State, -2, "FogEnd");
  833. settop(lua_State, 0);
  834. }
  835. }
  836. if (In.at(0) == "unff") {
  837. if (In.size() == 2) {
  838. int Character = GetCharacter(In.at(1));
  839. string charname = *GetName(Character);
  840. getglobal(lua_State, "game");
  841. getfield(lua_State, -1, "Workspace");
  842. getfield(lua_State, -1, charname.c_str());
  843. getfield(lua_State, -1, "ForceField");
  844. getfield(lua_State, -1, "remove");
  845. pushvalue(lua_State, -2);
  846. pcall(lua_State, 1, 0, 0);
  847. settop(lua_State, 0);
  848. }
  849. }
  850. if (In.at(0) == "fire") {
  851. if (In.size() == 2) {
  852. int Character = GetCharacter(In.at(1));
  853. string charname = *GetName(Character);
  854. getglobal(lua_State, "game");
  855. getfield(lua_State, -1, "Workspace");
  856. getfield(lua_State, -1, charname.c_str());
  857. getfield(lua_State, -1, "Torso");
  858. getglobal(lua_State, "Instance");
  859. getfield(lua_State, -1, "new");
  860. pushstring(lua_State, "Fire");
  861. pushvalue(lua_State, -4);
  862. pcall(lua_State, 2, 0, 0);
  863. settop(lua_State, 0);
  864. }
  865. }
  866. if (In.at(0) == "unfire") {
  867. if (In.size() == 2) {
  868. int Character = GetCharacter(In.at(1));
  869. string charname = *GetName(Character);
  870. getglobal(lua_State, "game");
  871. getfield(lua_State, -1, "Workspace");
  872. getfield(lua_State, -1, charname.c_str());
  873. getfield(lua_State, -1, "Torso");
  874. getfield(lua_State, -1, "Fire");
  875. getfield(lua_State, -1, "remove");
  876. pushvalue(lua_State, -2);
  877. pcall(lua_State, 1, 0, 0);
  878. settop(lua_State, 0);
  879. }
  880. }
  881. if (In.at(0) == "sparkles") {
  882. if (In.size() == 2) {
  883. int Character = GetCharacter(In.at(1));
  884. string charname = *GetName(Character);
  885. getglobal(lua_State, "game");
  886. getfield(lua_State, -1, "Workspace");
  887. getfield(lua_State, -1, charname.c_str());
  888. getfield(lua_State, -1, "Torso");
  889. getglobal(lua_State, "Instance");
  890. getfield(lua_State, -1, "new");
  891. pushstring(lua_State, "Sparkles");
  892. pushvalue(lua_State, -4);
  893. pcall(lua_State, 2, 0, 0);
  894. settop(lua_State, 0);
  895. }
  896. }
  897. if (In.at(0) == "unsparkles") {
  898. if (In.size() == 2) {
  899. int Character = GetCharacter(In.at(1));
  900. string charname = *GetName(Character);
  901. getglobal(lua_State, "game");
  902. getfield(lua_State, -1, "Workspace");
  903. getfield(lua_State, -1, charname.c_str());
  904. getfield(lua_State, -1, "Torso");
  905. getfield(lua_State, -1, "Sparkles");
  906. getfield(lua_State, -1, "remove");
  907. pushvalue(lua_State, -2);
  908. pcall(lua_State, 1, 0, 0);
  909. settop(lua_State, 0);
  910. }
  911. }
  912. if (In.at(0) == "smoke") {
  913. if (In.size() == 2) {
  914. int Character = GetCharacter(In.at(1));
  915. string charname = *GetName(Character);
  916. getglobal(lua_State, "game");
  917. getfield(lua_State, -1, "Workspace");
  918. getfield(lua_State, -1, charname.c_str());
  919. getfield(lua_State, -1, "Torso");
  920. getglobal(lua_State, "Instance");
  921. getfield(lua_State, -1, "new");
  922. pushstring(lua_State, "Smoke");
  923. pushvalue(lua_State, -4);
  924. pcall(lua_State, 2, 0, 0);
  925. settop(lua_State, 0);
  926. }
  927. }
  928. if (In.at(0) == "unsmoke") {
  929. if (In.size() == 2) {
  930. int Character = GetCharacter(In.at(1));
  931. string charname = *GetName(Character);
  932. getglobal(lua_State, "game");
  933. getfield(lua_State, -1, "Workspace");
  934. getfield(lua_State, -1, charname.c_str());
  935. getfield(lua_State, -1, "Torso");
  936. getfield(lua_State, -1, "Smoke");
  937. getfield(lua_State, -1, "remove");
  938. pushvalue(lua_State, -2);
  939. pcall(lua_State, 1, 0, 0);
  940. settop(lua_State, 0);
  941. }
  942. }
  943. if (In.at(0) == "particles") {
  944. if (In.size() == 3) {
  945. int Character = GetCharacter(In.at(1));
  946. string charname = *GetName(Character);
  947. string texture = "rbxassetid://" + In.at(2);
  948. getglobal(lua_State, "game");
  949. getfield(lua_State, -1, "Workspace");
  950. getfield(lua_State, -1, charname.c_str());
  951. getfield(lua_State, -1, "Torso");
  952. getglobal(lua_State, "Instance");
  953. getfield(lua_State, -1, "new");
  954. pushstring(lua_State, "ParticleEmitter");
  955. pushvalue(lua_State, -4);
  956. pcall(lua_State, 2, 1, 0);
  957. pushstring(lua_State, texture.c_str());
  958. setfield(lua_State, -2, "Texture");
  959. settop(lua_State, 0);
  960. }
  961. }
  962. if (In.at(0) == "unparticles") {
  963. if (In.size() == 2) {
  964. int Character = GetCharacter(In.at(1));
  965. string charname = *GetName(Character);
  966. getglobal(lua_State, "game");
  967. getfield(lua_State, -1, "Workspace");
  968. getfield(lua_State, -1, charname.c_str());
  969. getfield(lua_State, -1, "Torso");
  970. getfield(lua_State, -1, "ParticleEmitter");
  971. getfield(lua_State, -1, "remove");
  972. pushvalue(lua_State, -2);
  973. pcall(lua_State, 1, 0, 0);
  974. settop(lua_State, 0);
  975. }
  976. }
  977. if (In.at(0) == "ws") {
  978. if (In.size() == 3) {
  979. int Character = GetCharacter(In.at(1));
  980. string charname = *GetName(Character);
  981. float hax = atoi(In.at(2).c_str());
  982. getglobal(lua_State, "game");
  983. getfield(lua_State, -1, "Workspace");
  984. getfield(lua_State, -1, charname.c_str());
  985. getfield(lua_State, -1, "Humanoid");
  986. pushnumber(lua_State, hax);
  987. setfield(lua_State, -2, "WalkSpeed");
  988. settop(lua_State, 0);
  989. }
  990. }
  991. if (In.at(0) == "kill") {
  992. if (In.size() == 2) {
  993. int Character = GetCharacter(In.at(1));
  994. string charname = *GetName(Character);
  995. getglobal(lua_State, "game");
  996. getfield(lua_State, -1, "Workspace");
  997. getfield(lua_State, -1, charname.c_str());
  998. getfield(lua_State, -1, "Humanoid");
  999. pushnumber(lua_State, 0);
  1000. setfield(lua_State, -2, "Health");
  1001. settop(lua_State, 0);
  1002. }
  1003. }
  1004. if (In.at(0) == "god") {
  1005. if (In.size() == 2) {
  1006. int Character = GetCharacter(In.at(1));
  1007. string charname = *GetName(Character);
  1008. getglobal(lua_State, "game");
  1009. getfield(lua_State, -1, "Workspace");
  1010. getfield(lua_State, -1, charname.c_str());
  1011. getfield(lua_State, -1, "Humanoid");
  1012. pushnumber(lua_State, HUGE_VAL);
  1013. setfield(lua_State, -2, "MaxHealth");
  1014. settop(lua_State, 0);
  1015. }
  1016. }
  1017. if (In.at(0) == "ungod") {
  1018. if (In.size() == 2) {
  1019. int Character = GetCharacter(In.at(1));
  1020. string charname = *GetName(Character);
  1021. getglobal(lua_State, "game");
  1022. getfield(lua_State, -1, "Workspace");
  1023. getfield(lua_State, -1, charname.c_str());
  1024. getfield(lua_State, -1, "Humanoid");
  1025. pushnumber(lua_State, 100);
  1026. setfield(lua_State, -2, "MaxHealth");
  1027. settop(lua_State, 0);
  1028. }
  1029. }
  1030. if (In.at(0) == "jp") {
  1031. if (In.size() == 3) {
  1032. int Character = GetCharacter(In.at(1));
  1033. string charname = *GetName(Character);
  1034. float hax = atoi(In.at(2).c_str());
  1035. getglobal(lua_State, "game");
  1036. getfield(lua_State, -1, "Workspace");
  1037. getfield(lua_State, -1, charname.c_str());
  1038. getfield(lua_State, -1, "Humanoid");
  1039. pushnumber(lua_State, hax);
  1040. setfield(lua_State, -2, "JumpPower");
  1041. settop(lua_State, 0);
  1042. }
  1043. }
  1044. if (In.at(0) == "time") {
  1045. if (In.size() == 2) {
  1046. string newTimeOfDay = In.at(1);
  1047. getglobal(lua_State, "game");
  1048. getfield(lua_State, -1, "Lighting");
  1049. pushstring(lua_State, newTimeOfDay.c_str());
  1050. setfield(lua_State, -2, "TimeOfDay");
  1051. pcall(lua_State, 1, 0, 0);
  1052. settop(lua_State, 0);
  1053. }
  1054. }
  1055. if (In.at(0) == "btools") {
  1056. if (In.size() == 2) {
  1057. int noob = GetPlayer(In.at(1));
  1058. string noobname = *GetName(noob);
  1059. getglobal(lua_State, "game");
  1060. getfield(lua_State, -1, "Players");
  1061. getfield(lua_State, -1, noobname.c_str());
  1062. getfield(lua_State, -1, "Backpack");
  1063. getglobal(lua_State, "Instance");
  1064. getfield(lua_State, -1, "new");
  1065. pushstring(lua_State, "HopperBin");
  1066. pushvalue(lua_State, -4);
  1067. pcall(lua_State, 2, 1, 0);
  1068. pushnumber(lua_State, 2);
  1069. setfield(lua_State, -2, "BinType");
  1070. settop(lua_State, 0);
  1071. Sleep(100);
  1072. getglobal(lua_State, "game");
  1073. getfield(lua_State, -1, "Players");
  1074. getfield(lua_State, -1, noobname.c_str());
  1075. getfield(lua_State, -1, "Backpack");
  1076. getglobal(lua_State, "Instance");
  1077. getfield(lua_State, -1, "new");
  1078. pushstring(lua_State, "HopperBin");
  1079. pushvalue(lua_State, -4);
  1080. pcall(lua_State, 2, 1, 0);
  1081. pushnumber(lua_State, 3);
  1082. setfield(lua_State, -2, "BinType");
  1083. settop(lua_State, 0);
  1084. Sleep(100);
  1085. getglobal(lua_State, "game");
  1086. getfield(lua_State, -1, "Players");
  1087. getfield(lua_State, -1, noobname.c_str());
  1088. getfield(lua_State, -1, "Backpack");
  1089. getglobal(lua_State, "Instance");
  1090. getfield(lua_State, -1, "new");
  1091. pushstring(lua_State, "HopperBin");
  1092. pushvalue(lua_State, -4);
  1093. pcall(lua_State, 2, 1, 0);
  1094. pushnumber(lua_State, 4);
  1095. setfield(lua_State, -2, "BinType");
  1096. settop(lua_State, 0);
  1097. }
  1098. }
  1099. if (In.at(0) == "makepart") {
  1100. if (In.size() == 1) {
  1101. getglobal(lua_State, "game");
  1102. getfield(lua_State, -1, "Workspace");
  1103. getglobal(lua_State, "Instance");
  1104. getfield(lua_State, -1, "new");
  1105. pushstring(lua_State, "Part");
  1106. pushvalue(lua_State, -4);
  1107. pcall(lua_State, 2, 0, 0);
  1108. settop(lua_State, 0);
  1109. }
  1110. }
  1111. } while (true);
  1112. }
  1113. else {
  1114. printf("failed\n");
  1115. system("pause");
  1116. exit(0);
  1117. }
  1118. }
  1119.  
  1120. int __stdcall DllMain(HMODULE DLL, DWORD Reason, void* Useless) {
  1121. if (Reason == 1) {
  1122. CreateThread(0, 0, (LPTHREAD_START_ROUTINE)main, 0, 0, 0);
  1123. }
  1124. return TRUE;
  1125. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement