Advertisement
Guest User

Untitled

a guest
Dec 18th, 2014
187
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.35 KB | None | 0 0
  1. function main {
  2.     esp = (esp & 0xfffffff0) - 0x220;
  3.     while (*(arg_8 + *(esp + 0x218) * 0x4) != 0x0) {
  4.             eax = *(esp + 0x218);
  5.             eax = *(arg_8 + eax * 0x4);
  6.             eax = strlen(eax);
  7.             memset(*(arg_8 + *(esp + 0x218) * 0x4), 0x0, eax);
  8.     }
  9.     if (arg_0 <= 0x1) goto loc_8048692;
  10.     goto loc_804865b;
  11.  
  12. loc_8048692:
  13.     eax = 0x0;
  14.     return eax;
  15.  
  16. loc_804865b:
  17.     eax = *(esp + 0x21c);
  18.     eax = *(int8_t *)eax & 0xff;
  19.     if ((LOBYTE(eax) != 0x0) && (*(esp + 0x214) <= 0x1ff)) goto loc_80485d4;
  20.     goto loc_804867a;
  21.  
  22. loc_80485d4:
  23.     edx = *__ctype_b_loc();
  24.     eax = *(esp + 0x21c);
  25.     eax = *(int8_t *)eax & 0xff;
  26.     if ((LOWORD(*(int16_t *)(edx + sign_extend_32(LOBYTE(eax)) + sign_extend_32(LOBYTE(eax))) & 0xffff) & 0xffff & 0x400) != 0x0) goto loc_8048653;
  27.     goto loc_8048603;
  28.  
  29. loc_8048653:
  30.     goto loc_804865b;
  31.  
  32. loc_8048603:
  33.     edx = *__ctype_b_loc();
  34.     eax = *(esp + 0x21c);
  35.     eax = *(int8_t *)eax & 0xff;
  36.     if ((LOWORD(*(int16_t *)(edx + sign_extend_32(LOBYTE(eax)) + sign_extend_32(LOBYTE(eax))) & 0xffff) & 0xffff & 0x800) != 0x0) goto loc_8048653;
  37.     eax = *__TMC_END__;
  38.     fprintf(eax, "Non-%s chars found in string, possible shellcode!\n", "alpha");
  39.     eax = exit(0x1);
  40.  
  41. loc_804867a:
  42.     eax = *(arg_4 + 0x4);
  43.     strcpy(esp + 0x14, eax);
  44.     goto loc_8048692;
  45. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement