pub const DISASMX86_OP_MAP: [&'static str; 1296] =
["", "aaa", "aad", "aam", "aas", "fabs", "adc", "adcx", "add", "addpd",
"addps", "addsd", "addss", "addsubpd", "addsubps", "fadd", "fiadd", "faddp",
"adox", "aesdeclast", "aesdec", "aesenclast", "aesenc", "aesimc",
"aeskeygenassist", "and", "andn", "andnpd", "andnps", "andpd", "andps",
"arpl", "bextr", "blcfill", "blci", "blcic", "blcmsk", "blcs", "blendpd",
"blendps", "blendvpd", "blendvps", "blsfill", "blsi", "blsic", "blsmsk",
"blsr", "bound", "bsf", "bsr", "bswap", "bt", "btc", "btr", "bts", "bzhi",
"call", "cbw", "cdq", "cdqe", "fchs", "clac", "clc", "cld", "clflush",
"clgi", "cli", "clts", "cmc", "cmova", "cmovae", "cmovb", "cmovbe",
"fcmovbe", "fcmovb", "cmove", "fcmove", "cmovg", "cmovge", "cmovl", "cmovle",
"fcmovnbe", "fcmovnb", "cmovne", "fcmovne", "cmovno", "cmovnp", "fcmovnu",
"cmovns", "cmovo", "cmovp", "fcmovu", "cmovs", "cmp", "cmppd", "cmpps",
"cmpsb", "cmpsd", "cmpsq", "cmpss", "cmpsw", "cmpxchg16b", "cmpxchg",
"cmpxchg8b", "comisd", "comiss", "fcomp", "fcompi", "fcomi", "fcom", "fcos",
"cpuid", "cqo", "crc32", "cvtdq2pd", "cvtdq2ps", "cvtpd2dq", "cvtpd2ps",
"cvtps2dq", "cvtps2pd", "cvtsd2si", "cvtsd2ss", "cvtsi2sd", "cvtsi2ss",
"cvtss2sd", "cvtss2si", "cvttpd2dq", "cvttps2dq", "cvttsd2si", "cvttss2si",
"cwd", "cwde", "daa", "das", "data16", "dec", "div", "divpd", "divps",
"fdivr", "fidivr", "fdivrp", "divsd", "divss", "fdiv", "fidiv", "fdivp",
"dppd", "dpps", "ret", "encls", "enclu", "enter", "extractps", "extrq",
"f2xm1", "lcall", "ljmp", "fbld", "fbstp", "fcompp", "fdecstp", "femms",
"ffree", "ficom", "ficomp", "fincstp", "fldcw", "fldenv", "fldl2e", "fldl2t",
"fldlg2", "fldln2", "fldpi", "fnclex", "fninit", "fnop", "fnstcw", "fnstsw",
"fpatan", "fprem", "fprem1", "fptan", "frndint", "frstor", "fnsave",
"fscale", "fsetpm", "fsincos", "fnstenv", "fxam", "fxrstor", "fxrstor64",
"fxsave", "fxsave64", "fxtract", "fyl2x", "fyl2xp1", "movapd", "movaps",
"orpd", "orps", "vmovapd", "vmovaps", "xorpd", "xorps", "getsec", "haddpd",
"haddps", "hlt", "hsubpd", "hsubps", "idiv", "fild", "imul", "in", "inc",
"insb", "insertps", "insertq", "insd", "insw", "int", "int1", "int3", "into",
"invd", "invept", "invlpg", "invlpga", "invpcid", "invvpid", "iret", "iretd",
"iretq", "fisttp", "fist", "fistp", "ucomisd", "ucomiss", "vcmp", "vcomisd",
"vcomiss", "vcvtsd2ss", "vcvtsi2sd", "vcvtsi2ss", "vcvtss2sd", "vcvttsd2si",
"vcvttsd2usi", "vcvttss2si", "vcvttss2usi", "vcvtusi2sd", "vcvtusi2ss",
"vucomisd", "vucomiss", "jae", "ja", "jbe", "jb", "jcxz", "jecxz", "je",
"jge", "jg", "jle", "jl", "jmp", "jne", "jno", "jnp", "jns", "jo", "jp",
"jrcxz", "js", "kandb", "kandd", "kandnb", "kandnd", "kandnq", "kandnw",
"kandq", "kandw", "kmovb", "kmovd", "kmovq", "kmovw", "knotb", "knotd",
"knotq", "knotw", "korb", "kord", "korq", "kortestw", "korw", "kshiftlw",
"kshiftrw", "kunpckbw", "kxnorb", "kxnord", "kxnorq", "kxnorw", "kxorb",
"kxord", "kxorq", "kxorw", "lahf", "lar", "lddqu", "ldmxcsr", "lds", "fldz",
"fld1", "fld", "lea", "leave", "les", "lfence", "lfs", "lgdt", "lgs", "lidt",
"lldt", "lmsw", "or", "sub", "xor", "lodsb", "lodsd", "lodsq", "lodsw",
"loop", "loope", "loopne", "retf", "retfq", "lsl", "lss", "ltr", "xadd",
"lzcnt", "maskmovdqu", "maxpd", "maxps", "maxsd", "maxss", "mfence", "minpd",
"minps", "minsd", "minss", "cvtpd2pi", "cvtpi2pd", "cvtpi2ps", "cvtps2pi",
"cvttpd2pi", "cvttps2pi", "emms", "maskmovq", "movd", "movdq2q", "movntq",
"movq2dq", "movq", "pabsb", "pabsd", "pabsw", "packssdw", "packsswb",
"packuswb", "paddb", "paddd", "paddq", "paddsb", "paddsw", "paddusb",
"paddusw", "paddw", "palignr", "pandn", "pand", "pavgb", "pavgw", "pcmpeqb",
"pcmpeqd", "pcmpeqw", "pcmpgtb", "pcmpgtd", "pcmpgtw", "pextrw", "phaddsw",
"phaddw", "phaddd", "phsubd", "phsubsw", "phsubw", "pinsrw", "pmaddubsw",
"pmaddwd", "pmaxsw", "pmaxub", "pminsw", "pminub", "pmovmskb", "pmulhrsw",
"pmulhuw", "pmulhw", "pmullw", "pmuludq", "por", "psadbw", "pshufb",
"pshufw", "psignb", "psignd", "psignw", "pslld", "psllq", "psllw", "psrad",
"psraw", "psrld", "psrlq", "psrlw", "psubb", "psubd", "psubq", "psubsb",
"psubsw", "psubusb", "psubusw", "psubw", "punpckhbw", "punpckhdq",
"punpckhwd", "punpcklbw", "punpckldq", "punpcklwd", "pxor", "monitor",
"montmul", "mov", "movabs", "movbe", "movddup", "movdqa", "movdqu",
"movhlps", "movhpd", "movhps", "movlhps", "movlpd", "movlps", "movmskpd",
"movmskps", "movntdqa", "movntdq", "movnti", "movntpd", "movntps", "movntsd",
"movntss", "movsb", "movsd", "movshdup", "movsldup", "movsq", "movss",
"movsw", "movsx", "movsxd", "movupd", "movups", "movzx", "mpsadbw", "mul",
"mulpd", "mulps", "mulsd", "mulss", "mulx", "fmul", "fimul", "fmulp",
"mwait", "neg", "nop", "not", "out", "outsb", "outsd", "outsw", "packusdw",
"pause", "pavgusb", "pblendvb", "pblendw", "pclmulqdq", "pcmpeqq",
"pcmpestri", "pcmpestrm", "pcmpgtq", "pcmpistri", "pcmpistrm", "pdep",
"pext", "pextrb", "pextrd", "pextrq", "pf2id", "pf2iw", "pfacc", "pfadd",
"pfcmpeq", "pfcmpge", "pfcmpgt", "pfmax", "pfmin", "pfmul", "pfnacc",
"pfpnacc", "pfrcpit1", "pfrcpit2", "pfrcp", "pfrsqit1", "pfrsqrt", "pfsubr",
"pfsub", "phminposuw", "pi2fd", "pi2fw", "pinsrb", "pinsrd", "pinsrq",
"pmaxsb", "pmaxsd", "pmaxud", "pmaxuw", "pminsb", "pminsd", "pminud",
"pminuw", "pmovsxbd", "pmovsxbq", "pmovsxbw", "pmovsxdq", "pmovsxwd",
"pmovsxwq", "pmovzxbd", "pmovzxbq", "pmovzxbw", "pmovzxdq", "pmovzxwd",
"pmovzxwq", "pmuldq", "pmulhrw", "pmulld", "pop", "popaw", "popal", "popcnt",
"popf", "popfd", "popfq", "prefetch", "prefetchnta", "prefetcht0",
"prefetcht1", "prefetcht2", "prefetchw", "pshufd", "pshufhw", "pshuflw",
"pslldq", "psrldq", "pswapd", "ptest", "punpckhqdq", "punpcklqdq", "push",
"pushaw", "pushal", "pushf", "pushfd", "pushfq", "rcl", "rcpps", "rcpss",
"rcr", "rdfsbase", "rdgsbase", "rdmsr", "rdpmc", "rdrand", "rdseed", "rdtsc",
"rdtscp", "rol", "ror", "rorx", "roundpd", "roundps", "roundsd", "roundss",
"rsm", "rsqrtps", "rsqrtss", "sahf", "sal", "salc", "sar", "sarx", "sbb",
"scasb", "scasd", "scasq", "scasw", "setae", "seta", "setbe", "setc", "setb",
"sete", "setge", "setg", "setle", "setl", "setne", "setno", "setnp", "setns",
"seto", "setp", "sets", "sfence", "sgdt", "sha1msg1", "sha1msg2",
"sha1nexte", "sha1rnds4", "sha256msg1", "sha256msg2", "sha256rnds2", "shl",
"shld", "shlx", "shr", "shrd", "shrx", "shufpd", "shufps", "sidt", "fsin",
"skinit", "sldt", "smsw", "sqrtpd", "sqrtps", "sqrtsd", "sqrtss", "fsqrt",
"stac", "stc", "std", "stgi", "sti", "stmxcsr", "stosb", "stosd", "stosq",
"stosw", "str", "fst", "fstp", "fstpnce", "subpd", "subps", "fsubr",
"fisubr", "fsubrp", "subsd", "subss", "fsub", "fisub", "fsubp", "swapgs",
"syscall", "sysenter", "sysexit", "sysret", "t1mskc", "test", "ud2", "ftst",
"tzcnt", "tzmsk", "fucompi", "fucomi", "fucompp", "fucomp", "fucom", "ud2b",
"unpckhpd", "unpckhps", "unpcklpd", "unpcklps", "vaddpd", "vaddps", "vaddsd",
"vaddss", "vaddsubpd", "vaddsubps", "vaesdeclast", "vaesdec", "vaesenclast",
"vaesenc", "vaesimc", "vaeskeygenassist", "valignd", "valignq", "vandnpd",
"vandnps", "vandpd", "vandps", "vblendmpd", "vblendmps", "vblendpd",
"vblendps", "vblendvpd", "vblendvps", "vbroadcastf128", "vbroadcasti128",
"vbroadcasti32x4", "vbroadcasti64x4", "vbroadcastsd", "vbroadcastss",
"vcmppd", "vcmpps", "vcmpsd", "vcmpss", "vcvtdq2pd", "vcvtdq2ps",
"vcvtpd2dqx", "vcvtpd2dq", "vcvtpd2psx", "vcvtpd2ps", "vcvtpd2udq",
"vcvtph2ps", "vcvtps2dq", "vcvtps2pd", "vcvtps2ph", "vcvtps2udq",
"vcvtsd2si", "vcvtsd2usi", "vcvtss2si", "vcvtss2usi", "vcvttpd2dqx",
"vcvttpd2dq", "vcvttpd2udq", "vcvttps2dq", "vcvttps2udq", "vcvtudq2pd",
"vcvtudq2ps", "vdivpd", "vdivps", "vdivsd", "vdivss", "vdppd", "vdpps",
"verr", "verw", "vextractf128", "vextractf32x4", "vextractf64x4",
"vextracti128", "vextracti32x4", "vextracti64x4", "vextractps",
"vfmadd132pd", "vfmadd132ps", "vfmadd213pd", "vfmadd213ps", "vfmaddpd",
"vfmadd231pd", "vfmaddps", "vfmadd231ps", "vfmaddsd", "vfmadd213sd",
"vfmadd132sd", "vfmadd231sd", "vfmaddss", "vfmadd213ss", "vfmadd132ss",
"vfmadd231ss", "vfmaddsub132pd", "vfmaddsub132ps", "vfmaddsub213pd",
"vfmaddsub213ps", "vfmaddsubpd", "vfmaddsub231pd", "vfmaddsubps",
"vfmaddsub231ps", "vfmsub132pd", "vfmsub132ps", "vfmsub213pd", "vfmsub213ps",
"vfmsubadd132pd", "vfmsubadd132ps", "vfmsubadd213pd", "vfmsubadd213ps",
"vfmsubaddpd", "vfmsubadd231pd", "vfmsubaddps", "vfmsubadd231ps", "vfmsubpd",
"vfmsub231pd", "vfmsubps", "vfmsub231ps", "vfmsubsd", "vfmsub213sd",
"vfmsub132sd", "vfmsub231sd", "vfmsubss", "vfmsub213ss", "vfmsub132ss",
"vfmsub231ss", "vfnmadd132pd", "vfnmadd132ps", "vfnmadd213pd",
"vfnmadd213ps", "vfnmaddpd", "vfnmadd231pd", "vfnmaddps", "vfnmadd231ps",
"vfnmaddsd", "vfnmadd213sd", "vfnmadd132sd", "vfnmadd231sd", "vfnmaddss",
"vfnmadd213ss", "vfnmadd132ss", "vfnmadd231ss", "vfnmsub132pd",
"vfnmsub132ps", "vfnmsub213pd", "vfnmsub213ps", "vfnmsubpd", "vfnmsub231pd",
"vfnmsubps", "vfnmsub231ps", "vfnmsubsd", "vfnmsub213sd", "vfnmsub132sd",
"vfnmsub231sd", "vfnmsubss", "vfnmsub213ss", "vfnmsub132ss", "vfnmsub231ss",
"vfrczpd", "vfrczps", "vfrczsd", "vfrczss", "vorpd", "vorps", "vxorpd",
"vxorps", "vgatherdpd", "vgatherdps", "vgatherpf0dpd", "vgatherpf0dps",
"vgatherpf0qpd", "vgatherpf0qps", "vgatherpf1dpd", "vgatherpf1dps",
"vgatherpf1qpd", "vgatherpf1qps", "vgatherqpd", "vgatherqps", "vhaddpd",
"vhaddps", "vhsubpd", "vhsubps", "vinsertf128", "vinsertf32x4",
"vinsertf64x4", "vinserti128", "vinserti32x4", "vinserti64x4", "vinsertps",
"vlddqu", "vldmxcsr", "vmaskmovdqu", "vmaskmovpd", "vmaskmovps", "vmaxpd",
"vmaxps", "vmaxsd", "vmaxss", "vmcall", "vmclear", "vmfunc", "vminpd",
"vminps", "vminsd", "vminss", "vmlaunch", "vmload", "vmmcall", "vmovq",
"vmovddup", "vmovd", "vmovdqa32", "vmovdqa64", "vmovdqa", "vmovdqu16",
"vmovdqu32", "vmovdqu64", "vmovdqu8", "vmovdqu", "vmovhlps", "vmovhpd",
"vmovhps", "vmovlhps", "vmovlpd", "vmovlps", "vmovmskpd", "vmovmskps",
"vmovntdqa", "vmovntdq", "vmovntpd", "vmovntps", "vmovsd", "vmovshdup",
"vmovsldup", "vmovss", "vmovupd", "vmovups", "vmpsadbw", "vmptrld",
"vmptrst", "vmread", "vmresume", "vmrun", "vmsave", "vmulpd", "vmulps",
"vmulsd", "vmulss", "vmwrite", "vmxoff", "vmxon", "vpabsb", "vpabsd",
"vpabsq", "vpabsw", "vpackssdw", "vpacksswb", "vpackusdw", "vpackuswb",
"vpaddb", "vpaddd", "vpaddq", "vpaddsb", "vpaddsw", "vpaddusb", "vpaddusw",
"vpaddw", "vpalignr", "vpandd", "vpandnd", "vpandnq", "vpandn", "vpandq",
"vpand", "vpavgb", "vpavgw", "vpblendd", "vpblendmd", "vpblendmq",
"vpblendvb", "vpblendw", "vpbroadcastb", "vpbroadcastd", "vpbroadcastmb2q",
"vpbroadcastmw2d", "vpbroadcastq", "vpbroadcastw", "vpclmulqdq", "vpcmov",
"vpcmp", "vpcmpd", "vpcmpeqb", "vpcmpeqd", "vpcmpeqq", "vpcmpeqw",
"vpcmpestri", "vpcmpestrm", "vpcmpgtb", "vpcmpgtd", "vpcmpgtq", "vpcmpgtw",
"vpcmpistri", "vpcmpistrm", "vpcmpq", "vpcmpud", "vpcmpuq", "vpcomb",
"vpcomd", "vpcomq", "vpcomub", "vpcomud", "vpcomuq", "vpcomuw", "vpcomw",
"vpconflictd", "vpconflictq", "vperm2f128", "vperm2i128", "vpermd",
"vpermi2d", "vpermi2pd", "vpermi2ps", "vpermi2q", "vpermil2pd", "vpermil2ps",
"vpermilpd", "vpermilps", "vpermpd", "vpermps", "vpermq", "vpermt2d",
"vpermt2pd", "vpermt2ps", "vpermt2q", "vpextrb", "vpextrd", "vpextrq",
"vpextrw", "vpgatherdd", "vpgatherdq", "vpgatherqd", "vpgatherqq",
"vphaddbd", "vphaddbq", "vphaddbw", "vphadddq", "vphaddd", "vphaddsw",
"vphaddubd", "vphaddubq", "vphaddubw", "vphaddudq", "vphadduwd", "vphadduwq",
"vphaddwd", "vphaddwq", "vphaddw", "vphminposuw", "vphsubbw", "vphsubdq",
"vphsubd", "vphsubsw", "vphsubwd", "vphsubw", "vpinsrb", "vpinsrd",
"vpinsrq", "vpinsrw", "vplzcntd", "vplzcntq", "vpmacsdd", "vpmacsdqh",
"vpmacsdql", "vpmacssdd", "vpmacssdqh", "vpmacssdql", "vpmacsswd",
"vpmacssww", "vpmacswd", "vpmacsww", "vpmadcsswd", "vpmadcswd", "vpmaddubsw",
"vpmaddwd", "vpmaskmovd", "vpmaskmovq", "vpmaxsb", "vpmaxsd", "vpmaxsq",
"vpmaxsw", "vpmaxub", "vpmaxud", "vpmaxuq", "vpmaxuw", "vpminsb", "vpminsd",
"vpminsq", "vpminsw", "vpminub", "vpminud", "vpminuq", "vpminuw", "vpmovdb",
"vpmovdw", "vpmovmskb", "vpmovqb", "vpmovqd", "vpmovqw", "vpmovsdb",
"vpmovsdw", "vpmovsqb", "vpmovsqd", "vpmovsqw", "vpmovsxbd", "vpmovsxbq",
"vpmovsxbw", "vpmovsxdq", "vpmovsxwd", "vpmovsxwq", "vpmovusdb", "vpmovusdw",
"vpmovusqb", "vpmovusqd", "vpmovusqw", "vpmovzxbd", "vpmovzxbq", "vpmovzxbw",
"vpmovzxdq", "vpmovzxwd", "vpmovzxwq", "vpmuldq", "vpmulhrsw", "vpmulhuw",
"vpmulhw", "vpmulld", "vpmullw", "vpmuludq", "vpord", "vporq", "vpor",
"vpperm", "vprotb", "vprotd", "vprotq", "vprotw", "vpsadbw", "vpscatterdd",
"vpscatterdq", "vpscatterqd", "vpscatterqq", "vpshab", "vpshad", "vpshaq",
"vpshaw", "vpshlb", "vpshld", "vpshlq", "vpshlw", "vpshufb", "vpshufd",
"vpshufhw", "vpshuflw", "vpsignb", "vpsignd", "vpsignw", "vpslldq", "vpslld",
"vpsllq", "vpsllvd", "vpsllvq", "vpsllw", "vpsrad", "vpsraq", "vpsravd",
"vpsravq", "vpsraw", "vpsrldq", "vpsrld", "vpsrlq", "vpsrlvd", "vpsrlvq",
"vpsrlw", "vpsubb", "vpsubd", "vpsubq", "vpsubsb", "vpsubsw", "vpsubusb",
"vpsubusw", "vpsubw", "vptestmd", "vptestmq", "vptestnmd", "vptestnmq",
"vptest", "vpunpckhbw", "vpunpckhdq", "vpunpckhqdq", "vpunpckhwd",
"vpunpcklbw", "vpunpckldq", "vpunpcklqdq", "vpunpcklwd", "vpxord", "vpxorq",
"vpxor", "vrcp14pd", "vrcp14ps", "vrcp14sd", "vrcp14ss", "vrcp28pd",
"vrcp28ps", "vrcp28sd", "vrcp28ss", "vrcpps", "vrcpss", "vrndscalepd",
"vrndscaleps", "vrndscalesd", "vrndscaless", "vroundpd", "vroundps",
"vroundsd", "vroundss", "vrsqrt14pd", "vrsqrt14ps", "vrsqrt14sd",
"vrsqrt14ss", "vrsqrt28pd", "vrsqrt28ps", "vrsqrt28sd", "vrsqrt28ss",
"vrsqrtps", "vrsqrtss", "vscatterdpd", "vscatterdps", "vscatterpf0dpd",
"vscatterpf0dps", "vscatterpf0qpd", "vscatterpf0qps", "vscatterpf1dpd",
"vscatterpf1dps", "vscatterpf1qpd", "vscatterpf1qps", "vscatterqpd",
"vscatterqps", "vshufpd", "vshufps", "vsqrtpd", "vsqrtps", "vsqrtsd",
"vsqrtss", "vstmxcsr", "vsubpd", "vsubps", "vsubsd", "vsubss", "vtestpd",
"vtestps", "vunpckhpd", "vunpckhps", "vunpcklpd", "vunpcklps", "vzeroall",
"vzeroupper", "wait", "wbinvd", "wrfsbase", "wrgsbase", "wrmsr", "xabort",
"xacquire", "xbegin", "xchg", "fxch", "xcryptcbc", "xcryptcfb", "xcryptctr",
"xcryptecb", "xcryptofb", "xend", "xgetbv", "xlatb", "xrelease", "xrstor",
"xrstor64", "xsave", "xsave64", "xsaveopt", "xsaveopt64", "xsetbv", "xsha1",
"xsha256", "xstore", "xtest"]