herm1t LIVE!ng room - May 12th, 2008 [entries|archive|friends|userinfo]
herm1t

[ website | twilight corner in the herm1t's cave ]
[ userinfo | ljr userinfo ]
[ archive | journal archive ]

May 12th, 2008

LMAO [May. 12th, 2008|04:29 pm]
Диассемблирование раздела .text:
00000000 <_start>:
   0:   f2 0f e7 00             repnz (bad) %xmm0,(%eax)
   4:   b8 01 00 00 00          mov    $0x1,%eax
   9:   cd 80                   int    $0x80
А теперь HDE:
        hde32s hs;
        extern void cc;
        unsigned char *code = (char*)&cc;
        int len;
        len = hde32_disasm(code,&hs);

        int i;
        for (i = 0; i < 4; i++)
                printf("%02x ", code[i]);
        puts("");
        printf( "  length of command:  0x%02x\n"
                "  immediate32:        0x%08lx\n"
                "  displacement8:      0x%02x\n",
                len,hs.imm32,hs.disp8);
        asm ("cc: .byte 0xf2, 0x0f, 0xe7, 0x00");

(gdb) run
Starting program: ...a.out...
f2 0f e7 00 
  length of command:  0x04
  immediate32:        0x00000000
  displacement8:      0x00

Program received signal SIGILL, Illegal instruction.
0x08048434 in cc ()
(gdb) 
Вот это, видимо, и называется "FPU, MMX, SSE, SSE2, SSE3, 3DNow" support ™ как я понимаю движки (в отличии от того же binutils), кроме основной таблицы и обработки f6/f7,fe/ff делать что-либо еще отказываются в принципе.
Link6 comments|Leave a comment

navigation
[ viewing | May 12th, 2008 ]
[ go | Previous Day|Next Day ]