⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 outable.c

📁 把obj文件变成汇编代码的源程序
💻 C
📖 第 1 页 / 共 3 页
字号:
    mod_reg,       11,  "",             /* Special mem/reg,kk  (byte) [C0] */
    mod_reg,       12,  "",             /* Special mem/reg,kk  (word) [C1] */
    three_byte,  NREG,  "ret",          /* RET     jjkk               [C2] */
    one_byte,    NREG,  "ret",          /* RET                        [C3] */
    mod_reg,       17,  "les",          /* LES     reg,mem            [C4] */
    mod_reg,       17,  "lds",          /* LDS     reg,mem            [C5] */
    mod_reg,       18,  "",             /* MOV     mem,kk   (Special) [C6] */
    mod_reg,       19,  "",             /* MOV     mem,jjkk (Special) [C7] */
    enter,          0,  "enter",        /* ENTER   im. word,im. byte  [C8] */
    one_byte,    NREG,  "leave",        /* LEAVE                      [C9] */
    three_byte,  NREG,  "retf",         /* RETF    jjkk               [CA] */
    one_byte,    NREG,  "retf",         /* RETF                       [CB] */
    one_byte,    NREG,  "int\t3",       /* INT     3                  [CC] */
    two_byte,    NREG,  "int",          /* INT     type               [CD] */
    one_byte,    NREG,  "into",         /* INTO                       [CE] */
    one_byte,    NREG,  "iret",         /* IRET                       [CF] */
    mod_reg,       13,  "",             /* Special mem/reg,1  (byte)  [D0] */
    mod_reg,       14,  "",             /* Special mem/reg,1  (word)  [D1] */
    mod_reg,       15,  "",             /* Special mem/reg,CL (byte)  [D2] */
    mod_reg,       16,  "",             /* Special mem/reg,CL (word)  [D3] */
    two_bcd,        0,  "aam",          /* AAM                        [D4] */
    two_bcd,        0,  "aad",          /* AAD                        [D5] */
    stub,           0,  "",             /* not used                   [D6] */
    one_byte,    NREG,  "xlat",         /* XLAT                       [D7] */
    esc,            0,  "esc",          /* ESC  (Special)             [D8] */
    esc,            0,  "esc",          /* ESC  (Special)             [D9] */
    esc,            0,  "esc",          /* ESC  (Special)             [DA] */
    esc,            0,  "esc",          /* ESC  (Special)             [DB] */
    esc,            0,  "esc",          /* ESC  (Special)             [DC] */
    esc,            0,  "esc",          /* ESC  (Special)             [DD] */
    esc,            0,  "esc",          /* ESC  (Special)             [DE] */
    esc,            0,  "esc",          /* ESC  (Special)             [DF] */
    disp8,          0,  "loopnz",       /* LOOPNZ                     [E0] */
    disp8,          0,  "loopz",        /* LOOPZ                      [E1] */
    disp8,          0,  "loop",         /* LOOP                       [E2] */
    disp8,          0,  "jcxz",         /* JCXZ                       [E3] */
    two_byte,      AL,  "in",           /* IN      AL,kk              [E4] */
    two_byte,      AX,  "in",           /* IN      AX,kk              [E5] */
    two_a,          0,  "out",          /* OUT     kk,AL              [E6] */
    two_a,          0,  "out",          /* OUT     kk,AX              [E7] */
    disp16,         0,  "call",         /* CALL    <Label>            [E8] */
    disp16,         0,  "jmp",          /* JMP     <Label>            [E9] */
    five_byte,      0,  "jmp",          /* JMP     <Label>            [EA] */
    disp8,          0,  "jmp",          /* JMP     SHORT <Label>      [EB] */
    in_out,        DX,  "in",           /* IN      AL,DX              [EC] */
    in_out,        DX,  "in",           /* IN      AX,DX              [ED] */
    in_out,        DX,  "out",          /* OUT     DX,AL              [EE] */
    in_out,        DX,  "out",          /* OUT     DX,AX              [EF] */
    prefix,         0,  "lock",         /* LOCK                       [F0] */
    stub,           0,  "",             /* not used                   [F1] */
    prefix,         0,  "repnz",        /* REPNZ                      [F2] */
    prefix,         0,  "repz",         /* REPZ                       [F3] */
    one_byte,       0,  "hlt",          /* HLT                        [F4] */
    one_byte,       0,  "cmc",          /* CMC                        [F5] */
    mod_reg,       20,  "",             /* Special (byte) (Group 3)   [F6] */
    mod_reg,       21,  "",             /* Special (word) (Group 3)   [F7] */
    one_byte,       0,  "clc",          /* CLC                        [F8] */
    one_byte,       0,  "stc",          /* STC                        [F9] */
    one_byte,       0,  "cli",          /* CLI                        [FA] */
    one_byte,       0,  "sti",          /* STI                        [FB] */
    one_byte,       0,  "cld",          /* CLD                        [FC] */
    one_byte,       0,  "std",          /* STD                        [FD] */
    mod_reg,       22,  "",             /* Special (Group 4)          [FE] */
    mod_reg,       23,  ""         };   /* Special (Group 4)          [FF] */

char *esc_inst[] = {
    "fadd",         /* FADD (DWord Ptr)   [00] */
    "fmul",         /* FMUL (DWord Ptr)   [01] */
    "fcom",         /* FCOM (DWord Ptr)   [02] */
    "fcomp",        /* FCOMP (DWord Ptr)  [03] */
    "fsub",         /* FSUB (DWord Ptr)   [04] */
    "fsubr",        /* FSUBR (DWord Ptr)  [05] */
    "fdiv",         /* FDIV (DWord Ptr)   [06] */
    "fdivr",        /* FDIVR (DWord Ptr)  [07] */
    "fld",          /* FLD (DWord Ptr)    [08] */
    "",             /* ESC 09h            [09] */
    "fst",          /* FST (DWord Ptr)    [0A] */
    "fstp",         /* FSTP (DWord Ptr)   [0B] */
    "fldenv",       /* FLDENV             [0C] */
    "fldcw",        /* FLDCW              [0D] */
    "fnstenv",      /* FSTENV             [0E] */
    "fnstcw",       /* FSTCW              [0F] */
    "fiadd",        /* FIADD (DWord Ptr)  [10] */
    "fimul",        /* FIMUL (DWord Ptr)  [11] */
    "ficom",        /* FICOM (DWord Ptr)  [12] */
    "ficomp",       /* FICOMP (DWord Ptr) [13] */
    "fisub",        /* FISUB (DWord Ptr)  [14] */
    "fisubr",       /* FISUBR (DWord Ptr) [15] */
    "fidiv",        /* FIDIV (DWord Ptr)  [16] */
    "fidivr",       /* FIDIVR (DWord Ptr) [17] */
    "fild",         /* FILD (DWord Ptr)   [18] */
    "",             /* ESC 19h            [19] */
    "fist",         /* FIST (DWord Ptr)   [1A] */
    "fistp",        /* FISTP (DWord Ptr)  [1B] */
    "",             /* ESC 1Ch            [1C] */
    "fld",          /* FLD (TByte Ptr)    [1D] */
    "",             /* ESC 1Eh            [1E] */
    "fstp",         /* FSTP (TByte Ptr)   [1F] */
    "fadd",         /* FADD (QWord Ptr)   [20] */
    "fmul",         /* FMUL (QWord Ptr)   [21] */
    "fcom",         /* FCOM (QWord Ptr)   [22] */
    "fcomp",        /* FCOMP (QWord Ptr)  [23] */
    "fsub",         /* FSUB (QWord Ptr)   [24] */
    "fsubr",        /* FSUBR (QWord Ptr)  [25] */
    "fdiv",         /* FDIV (QWord Ptr)   [26] */
    "fdivr",        /* FDIVR (QWord Ptr)  [27] */
    "fld",          /* FLD (QWord Ptr)    [28] */
    "",             /* ESC 29h            [29] */
    "fst",          /* FST (QWord Ptr)    [2A] */
    "fstp",         /* FSTP (QWord Ptr)   [2B] */
    "frstor",       /* FRSTOR             [2C] */
    "",             /* ESC 2Dh            [2D] */
    "fnsave",       /* FSAVE              [2E] */
    "fnstsw",       /* FSTSW              [2F] */
    "fiadd",        /* FIADD (Word Ptr)   [30] */
    "fimul",        /* FIMUL (Word Ptr)   [31] */
    "ficom",        /* FICOM (Word Ptr)   [32] */
    "ficomp",       /* FICOMP (Word Ptr)  [33] */
    "fisub",        /* FISUB (Word Ptr)   [34] */
    "fisubr",       /* FISUBR (Word Ptr)  [35] */
    "fidiv",        /* FIDIV (Word Ptr)   [36] */
    "fidivr",       /* FIDIVR (Word Ptr)  [37] */
    "fild",         /* FILD (Word Ptr)    [38] */
    "",             /* ESC 39h            [39] */
    "fist",         /* FIST (Word Ptr)    [3A] */
    "fistp",        /* FISTP (Word Ptr)   [3B] */
    "fbld",         /* FBLD (TByte Ptr)   [3C] */
    "fild",         /* FILD (QWord Ptr)   [3D] */
    "fbstp",        /* FBSTP (QWord Ptr)  [3E] */
    "fistp",   };   /* FISTP (QWord Ptr)  [3F] */

INST_T  ex_instr[] = {
    mod_reg,       26,  "",             /* Spec. (word) (grp 6)   [0F] [00] */
    mod_reg,       27,  "",             /* Spec. (dword) (grp 7)  [0F] [01] */
    mod_reg,       28,  "lar",          /* LAR                    [0F] [02] */
    mod_reg,       28,  "lsl",          /* LSL                    [0F] [03] */
    stub,           0,  "",             /* not used               [0F] [04] */
    stub,           0,  "",             /* not used               [0F] [05] */
    one_byte,    NREG,  "clts",         /* not used               [0F] [06] */
    stub,           0,  "",             /* not used               [0F] [07] */
    one_byte,    NREG,  "",             /* INVD (486 only)        [0F] [08] */
    one_byte,    NREG,  "",             /* WBINVD (486 only)      [0F] [09] */
    stub,           0,  "",             /* not used               [0F] [0A] */
    stub,           0,  "",             /* not used               [0F] [0B] */
    stub,           0,  "",             /* not used               [0F] [0C] */
    stub,           0,  "",             /* not used               [0F] [0D] */
    stub,           0,  "",             /* not used               [0F] [0E] */
    stub,           0,  "",             /* not used               [0F] [0F] */
    stub,           0,  "",             /* not used               [0F] [10] */
    stub,           0,  "",             /* not used               [0F] [11] */
    stub,           0,  "",             /* not used               [0F] [12] */
    stub,           0,  "",             /* not used               [0F] [13] */
    stub,           0,  "",             /* not used               [0F] [14] */
    stub,           0,  "",             /* not used               [0F] [15] */
    stub,           0,  "",             /* not used               [0F] [16] */
    stub,           0,  "",             /* not used               [0F] [17] */
    stub,           0,  "",             /* not used               [0F] [18] */
    stub,           0,  "",             /* not used               [0F] [19] */
    stub,           0,  "",             /* not used               [0F] [1A] */
    stub,           0,  "",             /* not used               [0F] [1B] */
    stub,           0,  "",             /* not used               [0F] [1C] */
    stub,           0,  "",             /* not used               [0F] [1D] */
    stub,           0,  "",             /* not used               [0F] [1E] */
    stub,           0,  "",             /* not used               [0F] [1F] */
    mod_reg,       31,  "mov",          /* MOV      r32,CRx       [0F] [20] */
    mod_reg,       32,  "mov",          /* MOV      CRx,r32       [0F] [21] */
    mod_reg,       33,  "mov",          /* MOV      r32,DRx       [0F] [22] */
    mod_reg,       34,  "mov",          /* MOV      DRx,r32       [0F] [23] */
    mod_reg,       35,  "mov",          /* MOV      r32,TRx       [0F] [24] */
    stub,           0,  "",             /* not used               [0F] [25] */
    mod_reg,       36,  "mov",          /* MOV      TRx,r32       [0F] [26] */
    stub,           0,  "",             /* not used               [0F] [27] */
    stub,           0,  "",             /* not used               [0F] [28] */
    stub,           0,  "",             /* not used               [0F] [29] */
    stub,           0,  "",             /* not used               [0F] [2A] */
    stub,           0,  "",             /* not used               [0F] [2B] */
    stub,           0,  "",             /* not used               [0F] [2C] */
    stub,           0,  "",             /* not used               [0F] [2D] */
    stub,           0,  "",             /* not used               [0F] [2E] */
    stub,           0,  "",             /* not used               [0F] [2F] */
    stub,           0,  "",             /* not used               [0F] [30] */
    stub,           0,  "",             /* not used               [0F] [31] */
    stub,           0,  "",             /* not used               [0F] [32] */
    stub,           0,  "",             /* not used               [0F] [33] */
    stub,           0,  "",             /* not used               [0F] [34] */
    stub,           0,  "",             /* not used               [0F] [05] */
    stub,           0,  "",             /* not used               [0F] [36] */
    stub,           0,  "",             /* not used               [0F] [37] */
    stub,           0,  "",             /* not used               [0F] [38] */
    stub,           0,  "",             /* not used               [0F] [39] */
    stub,           0,  "",             /* not used               [0F] [3A] */
    stub,           0,  "",             /* not used               [0F] [3B] */
    stub,           0,  "",             /* not used               [0F] [3C] */
    stub,           0,  "",             /* not used               [0F] [3D] */
    stub,           0,  "",             /* not used               [0F] [3E] */
    stub,           0,  "",             /* not used               [0F] [3F] */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -