; ; GRDP ; ; Copyright(c) LADsoft ; ; David Lindauer, gclind01@starbase.spd.louisville.edu ; ; ; opcom.asm ; ; text for assembly/disassembly ; ;MASM MODE .model small .386p .data ; This is a table of mnemonics for the dissassembler ; public opn_add public opn_push public opn_pop public opn_or public opn_adc public opn_sbb public opn_and public opn_daa public opn_sub public opn_das public opn_xor public opn_aaa public opn_cmp public opn_aas public opn_inc public opn_dec public opn_pusha public opn_popa public opn_bound public opn_arpl public opn_imul public opn_insb public opn_ins public opn_outsb public opn_outs public opn_jo public opn_jno public opn_jb public opn_jnb public opn_jz public opn_jnz public opn_jbe public opn_ja public opn_js public opn_jns public opn_jp public opn_jnp public opn_jl public opn_jge public opn_jle public opn_jg public opn_test public opn_xchg public opn_mov public opn_lea public opn_nop public opn_cbw public opn_cwd public opn_call public opn_wait public opn_pushf public opn_popf public opn_sahf public opn_lahf public opn_movs public opn_cmps public opn_stos public opn_lods public opn_scas public opn_movsb public opn_cmpsb public opn_stosb public opn_lodsb public opn_scasb public opn_rol public opn_ror public opn_rcl public opn_rcr public opn_shl public opn_shr public opn_sar public opn_ret public opn_les public opn_lds public opn_enter public opn_retf public opn_int public opn_into public opn_iret public opn_leave public opn_aam public opn_aad public opn_xlat public opn_loopnz public opn_loopz public opn_loop public opn_jcxz public opn_in public opn_out public opn_jmp public opn_lock public opn_repnz public opn_repz public opn_hlt public opn_cmc public opn_not public opn_neg public opn_mul public opn_div public opn_idiv public opn_clc public opn_stc public opn_cli public opn_sti public opn_cld public opn_std public opn_movsx public opn_movzx public opn_lfs public opn_lgs public opn_lss public opn_clts public opn_shld public opn_shrd public opn_bsf public opn_bsr public opn_bt public opn_bts public opn_btr public opn_btc public opn_ibts public opn_xbts public opn_seto public opn_setno public opn_setb public opn_setnb public opn_setz public opn_setnz public opn_setbe public opn_seta public opn_sets public opn_setns public opn_setp public opn_setnp public opn_setl public opn_setge public opn_setle public opn_setg public opn_lar public opn_lsl public opn_lgdt public opn_lidt public opn_lldt public opn_lmsw public opn_ltr public opn_sgdt public opn_sidt public opn_sldt public opn_smsw public opn_str public opn_verr public opn_verw public opn_fnop public opn_fchs public opn_fabs public opn_ftst public opn_fxam public opn_fld1 public opn_fldl2t public opn_fldl2e public opn_fldpi public opn_fldlg2 public opn_fldln2 public opn_fldz public opn_f2xm1 public opn_fyl2x public opn_fptan public opn_fpatan public opn_fprem1 public opn_fxtract public opn_fdecstp public opn_fincstp public opn_fprem public opn_fyl2xp1 public opn_fsqrt public opn_fsincos public opn_frndint public opn_fscale public opn_fsin public opn_fcos public opn_fucompp public opn_feni public opn_fdisi public opn_fclex public opn_finit public opn_fsetpm public opn_fcompp public opn_fld public opn_fxch public opn_fstp public opn_esc public opn_fldenv public opn_fldcw public opn_fnstenv public opn_fnstcw public opn_ffree public opn_fst public opn_fucom public opn_fucomp public opn_frstor public opn_fnsave public opn_fnstsw public opn_fbld public opn_fild public opn_fbstp public opn_fistp public opn_fmul public opn_fcom public opn_fsub public opn_fdiv public opn_fadd public opn_fcomp public opn_fiadd public opn_fimul public opn_ficom public opn_ficomp public opn_fisub public opn_fidiv public opn_fist public opn_wbinvd public opn_invd public opn_bswap public regs public psegs public crreg public drreg public trreg public sudreg public scales public stalone public st_repz public st_repnz public base0 public base1 public base2 public base3 public base4 public base5 public base6 public base7 public st0 public st1 public st2 public st3 public st4 public st5 public byptr public dwptr public woptr public theptr public stsreg public based public sts public opn_cmovo public opn_cmovno public opn_cmovb public opn_cmovnb public opn_cmovz public opn_cmovnz public opn_cmovbe public opn_cmova public opn_cmovs public opn_cmovns public opn_cmovp public opn_cmovnp public opn_cmovl public opn_cmovge public opn_cmovle public opn_cmovg PUBLIC opn_cmpxchg PUBLIC opn_cmpxchg8b PUBLIC opn_cpuid PUBLIC opn_rdmsr PUBLIC opn_rdtsc PUBLIC opn_rdpmc PUBLIC opn_rsm PUBLIC opn_ud2 PUBLIC opn_wrmsr PUBLIC opn_xadd opn_add db "add",0 opn_push db "push",0 opn_pop db "pop",0 opn_or db "or",0 opn_adc db "adc",0 opn_sbb db "sbb",0 opn_and db "and",0 opn_daa db "daa",0 opn_sub db "sub",0 opn_das db "das",0 opn_xor db "xor",0 opn_aaa db "aaa",0 opn_cmp db "cmp",0 opn_aas db "aas",0 opn_inc db "inc",0 opn_dec db "dec",0 opn_pusha db "pusha",0 opn_popa db "popa",0 opn_bound db "bound",0 opn_arpl db "arpl",0 opn_imul db "imul",0 opn_insb db "insb",0 opn_ins db "ins",0 opn_outsb db "outsb",0 opn_outs db "outs",0 opn_jo db "jo",0 opn_jno db "jno",0 opn_jb db "jb",0 opn_jnb db "jnb",0 opn_jz db "jz",0 opn_jnz db "jnz",0 opn_jbe db "jbe",0 opn_ja db "ja",0 opn_js db "js",0 opn_jns db "jns",0 opn_jp db "jp",0 opn_jnp db "jnp",0 opn_jl db "jl",0 opn_jge db "jge",0 opn_jle db "jle",0 opn_jg db "jg",0 opn_test db "test",0 opn_xchg db "xchg",0 opn_mov db "mov",0 opn_lea db "lea",0 opn_nop db "nop",0 opn_cbw db "cbw",0 opn_cwd db "cwd",0 opn_call db "call",0 opn_wait db "wait",0 opn_pushf db "pushf",0 opn_popf db "popf",0 opn_sahf db "sahf",0 opn_lahf db "lahf",0 opn_movs db "movs",0 opn_cmps db "cmps",0 opn_stos db "stos",0 opn_lods db "lods",0 opn_scas db "scas",0 opn_movsb db "movsb",0 opn_cmpsb db "cmpsb",0 opn_stosb db "stosb",0 opn_lodsb db "lodsb",0 opn_scasb db "scasb",0 opn_rol db "rol",0 opn_ror db "ror",0 opn_rcl db "rcl",0 opn_rcr db "rcr",0 opn_shl db "shl",0 opn_shr db "shr",0 opn_sar db "sar",0 opn_ret db "ret",0 opn_les db "les",0 opn_lds db "lds",0 opn_enter db "enter",0 opn_retf db "retf",0 opn_int db "int",0 opn_into db "into",0 opn_iret db "iret",0 opn_leave db "leave",0 opn_aam db "aam",0 opn_aad db "aad",0 opn_xlat db "xlat",0 opn_loopnz db "loopnz",0 opn_loopz db "loopz",0 opn_loop db "loop",0 opn_jcxz db "jcxz",0 opn_in db "in",0 opn_out db "out",0 opn_jmp db "jmp",0 opn_lock db "lock",0 opn_repnz db "repnz",0 opn_repz db "repz",0 opn_hlt db "hlt",0 opn_cmc db "cmc",0 opn_not db "not",0 opn_neg db "neg",0 opn_mul db "mul",0 opn_div db "div",0 opn_idiv db "idiv",0 opn_clc db "clc",0 opn_stc db "stc",0 opn_cli db "cli",0 opn_sti db "sti",0 opn_cld db "cld",0 opn_std db "std",0 opn_movsx db "movsx",0 opn_movzx db "movzx",0 opn_lfs db "lfs",0 opn_lgs db "lgs",0 opn_lss db "lss",0 opn_clts db "clts",0 opn_shld db "shld",0 opn_shrd db "shrd",0 opn_bsf db "bsf",0 opn_bsr db "bsr",0 opn_bt db "bt",0 opn_bts db "bts",0 opn_btr db "btr",0 opn_btc db "btc",0 opn_ibts db "ibts",0 opn_xbts db "xbts",0 opn_seto db "seto",0 opn_setno db "setno",0 opn_setb db "setb",0 opn_setnb db "setnb",0 opn_setz db "setz",0 opn_setnz db "setnz",0 opn_setbe db "setbe",0 opn_seta db "seta",0 opn_sets db "sets",0 opn_setns db "setns",0 opn_setp db "setp",0 opn_setnp db "setnp",0 opn_setl db "setl",0 opn_setge db "setge",0 opn_setle db "setle",0 opn_setg db "setg",0 opn_lar db "lar",0 opn_lsl db "lsl",0 opn_lgdt db "lgdt",0 opn_lidt db "lidt",0 opn_lldt db "lldt",0 opn_lmsw db "lmsw",0 opn_ltr db "ltr",0 opn_sgdt db "sgdt",0 opn_sidt db "sidt",0 opn_sldt db "sldt",0 opn_smsw db "smsw",0 opn_str db "str",0 opn_verr db "verr",0 opn_verw db "verw",0 opn_fnop db "fnop",0 opn_fchs db "fchs",0 opn_fabs db "fabs",0 opn_ftst db "ftst",0 opn_fxam db "fxam",0 opn_fld1 db "fld1",0 opn_fldl2t db "fldl2t",0 opn_fldl2e db "fldl2e",0 opn_fldpi db "fldpi",0 opn_fldlg2 db "fldlg2",0 opn_fldln2 db "fldln2",0 opn_fldz db "fldz",0 opn_f2xm1 db "f2xm1",0 opn_fyl2x db "fyl2x",0 opn_fptan db "fptan",0 opn_fpatan db "fpatan",0 opn_fprem1 db "fprem1",0 opn_fxtract db "fxtract",0 opn_fdecstp db "fdecstp",0 opn_fincstp db "fincstp",0 opn_fprem db "fprem",0 opn_fyl2xp1 db "fyl2xp1",0 opn_fsqrt db "fsqrt",0 opn_fsincos db "fsincos",0 opn_frndint db "frndint",0 opn_fscale db "fscale",0 opn_fsin db "fsin",0 opn_fcos db "fcos",0 opn_fucompp db "fucompp",0 opn_feni db "feni",0 opn_fdisi db "fdisi",0 opn_fclex db "fclex",0 opn_finit db "finit",0 opn_fsetpm db "fsetpm",0 opn_fcompp db "fcompp",0 opn_fld db "fld",0 opn_fxch db "fxch",0 opn_fstp db "fstp",0 opn_esc db "esc",0 opn_fldenv db "fldenv",0 opn_fldcw db "fldcw",0 opn_fnstenv db "fnstenv",0 opn_fnstcw db "fnstcw",0 opn_ffree db "ffree",0 opn_fst db "fst",0 opn_fucom db "fucom",0 opn_fucomp db "fucomp",0 opn_frstor db "frstor",0 opn_fnsave db "fnsave",0 opn_fnstsw db "fnstsw",0 opn_fbld db "fbld",0 opn_fild db "fild",0 opn_fbstp db "fbstp",0 opn_fistp db "fistp",0 opn_fmul db "fmul",0 opn_fcom db "fcom",0 opn_fsub db "fsub",0 opn_fdiv db "fdiv",0 opn_fadd db "fadd",0 opn_fcomp db "fcomp",0 opn_fiadd db "fiadd",0 opn_fimul db "fimul",0 opn_ficom db "ficom",0 opn_ficomp db "ficomp",0 opn_fisub db "fisub",0 opn_fidiv db "fidiv",0 opn_fist db "fist",0 opn_wbinvd db "wb" opn_invd db "invd",0 opn_bswap db "bswap",0 opn_cmovo db "cmovo",0 opn_cmovno db "cmovno",0 opn_cmovb db "cmovb",0 opn_cmovnb db "cmovnb",0 opn_cmovz db "cmovz",0 opn_cmovnz db "cmovnz",0 opn_cmovbe db "cmovbe",0 opn_cmova db "cmova",0 opn_cmovs db "cmovs",0 opn_cmovns db "cmovns",0 opn_cmovp db "cmovp",0 opn_cmovnp db "cmovnp",0 opn_cmovl db "cmovl",0 opn_cmovge db "cmovge",0 opn_cmovle db "cmovle",0 opn_cmovg db "cmovg",0 opn_cmpxchg db "cmpxchg",0 opn_cmpxchg8b db "cmpxchg8b",0 opn_cpuid db "cpuid",0 opn_rdmsr db "rdmsr",0 opn_rdpmc db "rdpmc",0 opn_rdtsc db "rdtsc",0 opn_rsm db "rsm",0 opn_ud2 db "ud2",0 opn_wrmsr db "wrmsr",0 opn_xadd db "xadd",0 regs db "alcldlblahchdhbhaxcxdxbxspbpsidi" psegs db "escsssdsfsgs" crreg db "CR01234???" drreg db "DR0123??67" trreg db "TR??????67" sudreg db "?R????????" scales db " + *2+*4+*8+" stalone db "st",0 st_repz db "repz ",0 st_repnz db "repnz ",0 base0 db "bx+si",0 base1 db "bx+di",0 base2 db "bp+si",0 base3 db "bp+di",0 base4 db "si",0 base5 db "di",0 base6 db "bp",0 base7 db "bx",0 st0 db "fword",0 ; Should be DWORD for MATH, FWORD for jmp/call st1 db "dword",0 st2 db "qword",0 st3 db "word",0 st4 db "tbyte" st5 db 0 byptr db "byte ptr ",0 dwptr db "d" woptr db "word" theptr db " ptr ",0 stsreg db "st(",0 based dw base0,base1,base2,base3,base4,base5,base6,base7 sts dw st0,st1,st2,st3,st4,st5,st5,st5 ; mov eax,"wde" END