/*===- TableGen'erated file -------------------------------------*- C++ -*-===*\ |* *| |*Assembly Writer Source Fragment *| |* *| |* Automatically generated file, do not edit! *| |* *| \*===----------------------------------------------------------------------===*/ /* Capstone Disassembly Engine, http://www.capstone-engine.org */ /* By Nguyen Anh Quynh , 2013> */ /// printInstruction - This method is automatically generated by tablegen /// from the instruction set description. static void printInstruction(MCInst *MI, SStream *O, MCRegisterInfo *MRI) { static const uint32_t OpInfo[] = { 0U, // PHI 0U, // INLINEASM 0U, // PROLOG_LABEL 0U, // EH_LABEL 0U, // GC_LABEL 0U, // KILL 0U, // EXTRACT_SUBREG 0U, // INSERT_SUBREG 0U, // IMPLICIT_DEF 0U, // SUBREG_TO_REG 0U, // COPY_TO_REGCLASS 4794U, // DBG_VALUE 0U, // REG_SEQUENCE 0U, // COPY 4787U, // BUNDLE 4850U, // LIFETIME_START 4774U, // LIFETIME_END 0U, // STACKMAP 0U, // PATCHPOINT 4865U, // AAA 8453U, // AAD8i8 9369U, // AAM8i8 5348U, // AAS 4478U, // ACQUIRE_MOV16rm 4478U, // ACQUIRE_MOV32rm 4478U, // ACQUIRE_MOV64rm 4478U, // ACQUIRE_MOV8rm 534582U, // ADC16i16 1067062U, // ADC16mi 1067062U, // ADC16mi8 1067062U, // ADC16mr 1599542U, // ADC16ri 1599542U, // ADC16ri8 1607734U, // ADC16rm 1599542U, // ADC16rr 2123830U, // ADC16rr_REV 2630095U, // ADC32i32 3162575U, // ADC32mi 3162575U, // ADC32mi8 3162575U, // ADC32mr 1597903U, // ADC32ri 1597903U, // ADC32ri8 1614287U, // ADC32rm 1597903U, // ADC32rr 2122191U, // ADC32rr_REV 3679511U, // ADC64i32 4211991U, // ADC64mi32 4211991U, // ADC64mi8 4211991U, // ADC64mr 1598743U, // ADC64ri32 1598743U, // ADC64ri8 1623319U, // ADC64rm 1598743U, // ADC64rr 2123031U, // ADC64rr_REV 4726830U, // ADC8i8 5259310U, // ADC8mi 5259310U, // ADC8mr 1597486U, // ADC8ri 57390U, // ADC8rm 1597486U, // ADC8rr 2121774U, // ADC8rr_REV 66664U, // ADCX32rm 2172008U, // ADCX32rr 83852U, // ADCX64rm 2172812U, // ADCX64rr 534607U, // ADD16i16 1067087U, // ADD16mi 1067087U, // ADD16mi8 1067087U, // ADD16mr 1599567U, // ADD16ri 1599567U, // ADD16ri8 0U, // ADD16ri8_DB 0U, // ADD16ri_DB 1607759U, // ADD16rm 1599567U, // ADD16rr 0U, // ADD16rr_DB 2123855U, // ADD16rr_REV 2630120U, // ADD32i32 3162600U, // ADD32mi 3162600U, // ADD32mi8 3162600U, // ADD32mr 1597928U, // ADD32ri 1597928U, // ADD32ri8 0U, // ADD32ri8_DB 0U, // ADD32ri_DB 1614312U, // ADD32rm 1597928U, // ADD32rr 0U, // ADD32rr_DB 2122216U, // ADD32rr_REV 3679536U, // ADD64i32 4212016U, // ADD64mi32 4212016U, // ADD64mi8 4212016U, // ADD64mr 1598768U, // ADD64ri32 0U, // ADD64ri32_DB 1598768U, // ADD64ri8 0U, // ADD64ri8_DB 1623344U, // ADD64rm 1598768U, // ADD64rr 0U, // ADD64rr_DB 2123056U, // ADD64rr_REV 4726849U, // ADD8i8 5259329U, // ADD8mi 5259329U, // ADD8mr 1597505U, // ADD8ri 57409U, // ADD8rm 1597505U, // ADD8rr 2121793U, // ADD8rr_REV 4804U, // ADJCALLSTACKDOWN32 4804U, // ADJCALLSTACKDOWN64 4822U, // ADJCALLSTACKUP32 4822U, // ADJCALLSTACKUP64 66685U, // ADOX32rm 2172029U, // ADOX32rr 83873U, // ADOX64rm 2172833U, // ADOX64rr 534632U, // AND16i16 1067112U, // AND16mi 1067112U, // AND16mi8 1067112U, // AND16mr 1599592U, // AND16ri 1599592U, // AND16ri8 1607784U, // AND16rm 1599592U, // AND16rr 2123880U, // AND16rr_REV 2630145U, // AND32i32 3162625U, // AND32mi 3162625U, // AND32mi8 3162625U, // AND32mr 1597953U, // AND32ri 1597953U, // AND32ri8 1614337U, // AND32rm 1597953U, // AND32rr 2122241U, // AND32rr_REV 3679561U, // AND64i32 4212041U, // AND64mi32 4212041U, // AND64mi8 4212041U, // AND64mr 1598793U, // AND64ri32 1598793U, // AND64ri8 1623369U, // AND64rm 1598793U, // AND64rr 2123081U, // AND64rr_REV 4726855U, // AND8i8 5259335U, // AND8mi 5259335U, // AND8mr 1597511U, // AND8ri 57415U, // AND8rm 1597511U, // AND8rr 2121799U, // AND8rr_REV 18391792U, // ANDN32rm 18375408U, // ANDN32rr 18400817U, // ANDN64rm 18376241U, // ANDN64rr 1065790U, // ARPL16mr 2171710U, // ARPL16rr 3380U, // ATOMADD6432 4160U, // ATOMAND16 3593U, // ATOMAND32 3847U, // ATOMAND64 3401U, // ATOMAND6432 4314U, // ATOMAND8 4275U, // ATOMMAX16 3808U, // ATOMMAX32 4121U, // ATOMMAX64 3550U, // ATOMMAX6432 4441U, // ATOMMAX8 4199U, // ATOMMIN16 3693U, // ATOMMIN32 4006U, // ATOMMIN64 3444U, // ATOMMIN6432 4351U, // ATOMMIN8 4179U, // ATOMNAND16 3612U, // ATOMNAND32 3866U, // ATOMNAND64 3422U, // ATOMNAND6432 4332U, // ATOMNAND8 4238U, // ATOMOR16 3771U, // ATOMOR32 4084U, // ATOMOR64 3509U, // ATOMOR6432 4406U, // ATOMOR8 3359U, // ATOMSUB6432 3487U, // ATOMSWAP6432 4294U, // ATOMUMAX16 3827U, // ATOMUMAX32 4140U, // ATOMUMAX64 3571U, // ATOMUMAX6432 4459U, // ATOMUMAX8 4218U, // ATOMUMIN16 3712U, // ATOMUMIN32 4025U, // ATOMUMIN64 3465U, // ATOMUMIN6432 4369U, // ATOMUMIN8 4256U, // ATOMXOR16 3789U, // ATOMXOR32 4102U, // ATOMXOR64 3529U, // ATOMXOR6432 4423U, // ATOMXOR8 5858185U, // BEXTR32rm 18375561U, // BEXTR32rr 6383291U, // BEXTR64rm 18376379U, // BEXTR64rr 5859282U, // BEXTRI32mi 18376658U, // BEXTRI32ri 6383570U, // BEXTRI64mi 18376658U, // BEXTRI64ri 66235U, // BLCFILL32rm 2171579U, // BLCFILL32rr 82619U, // BLCFILL64rm 2171579U, // BLCFILL64rr 65928U, // BLCI32rm 2171272U, // BLCI32rr 82312U, // BLCI64rm 2171272U, // BLCI64rr 65775U, // BLCIC32rm 2171119U, // BLCIC32rr 82159U, // BLCIC64rm 2171119U, // BLCIC64rr 65934U, // BLCMSK32rm 2171278U, // BLCMSK32rr 82318U, // BLCMSK64rm 2171278U, // BLCMSK64rr 67545U, // BLCS32rm 2172889U, // BLCS32rr 83929U, // BLCS64rm 2172889U, // BLCS64rr 66244U, // BLSFILL32rm 2171588U, // BLSFILL32rr 82628U, // BLSFILL64rm 2171588U, // BLSFILL64rr 66203U, // BLSI32rm 2171547U, // BLSI32rr 83435U, // BLSI64rm 2172395U, // BLSI64rr 65782U, // BLSIC32rm 2171126U, // BLSIC32rr 82166U, // BLSIC64rm 2171126U, // BLSIC64rr 66214U, // BLSMSK32rm 2171558U, // BLSMSK32rr 83442U, // BLSMSK64rm 2172402U, // BLSMSK64rr 66422U, // BLSR32rm 2171766U, // BLSR32rr 83624U, // BLSR64rm 2172584U, // BLSR64rr 98579U, // BOUNDS16rm 65811U, // BOUNDS32rm 100522U, // BSF16rm 2173098U, // BSF16rr 66159U, // BSF32rm 2171503U, // BSF32rr 83391U, // BSF64rm 2172351U, // BSF64rr 100712U, // BSR16rm 2173288U, // BSR16rr 66416U, // BSR32rm 2171760U, // BSR32rr 83618U, // BSR64rm 2172578U, // BSR64rr 8973U, // BSWAP32r 9801U, // BSWAP64r 1067482U, // BT16mi8 1067482U, // BT16mr 2173402U, // BT16ri8 2173402U, // BT16rr 3163115U, // BT32mi8 3163115U, // BT32mr 2171883U, // BT32ri8 2171883U, // BT32rr 4212490U, // BT64mi8 4212490U, // BT64mr 2172682U, // BT64ri8 2172682U, // BT64rr 1067080U, // BTC16mi8 1067080U, // BTC16mr 2173000U, // BTC16ri8 2173000U, // BTC16rr 3162593U, // BTC32mi8 3162593U, // BTC32mr 2171361U, // BTC32ri8 2171361U, // BTC32rr 4212009U, // BTC64mi8 4212009U, // BTC64mr 2172201U, // BTC64ri8 2172201U, // BTC64rr 1067374U, // BTR16mi8 1067374U, // BTR16mr 2173294U, // BTR16ri8 2173294U, // BTR16rr 3163005U, // BTR32mi8 3163005U, // BTR32mr 2171773U, // BTR32ri8 2171773U, // BTR32rr 4212399U, // BTR64mi8 4212399U, // BTR64mr 2172591U, // BTR64ri8 2172591U, // BTR64rr 1067461U, // BTS16mi8 1067461U, // BTS16mr 2173381U, // BTS16ri8 2173381U, // BTS16rr 3163094U, // BTS32mi8 3163094U, // BTS32mr 2171862U, // BTS32ri8 2171862U, // BTS32rr 4212476U, // BTS64mi8 4212476U, // BTS64mr 2172668U, // BTS64ri8 2172668U, // BTS64rr 5857940U, // BZHI32rm 18375316U, // BZHI32rr 6383076U, // BZHI64rm 18376164U, // BZHI64rr 111051U, // CALL16m 12747U, // CALL16r 119209U, // CALL32m 12713U, // CALL32r 127418U, // CALL64m 132615U, // CALL64pcrel32 12730U, // CALL64r 133340U, // CALLpcrel16 131790U, // CALLpcrel32 5725U, // CBW 5000U, // CDQ 5312U, // CDQE 4934U, // CLAC 4966U, // CLC 4996U, // CLD 5050U, // CLI 5656U, // CLTS 4970U, // CMC 2131978U, // CMOVA16rm 2123786U, // CMOVA16rr 2138531U, // CMOVA32rm 2122147U, // CMOVA32rr 2147563U, // CMOVA64rm 2122987U, // CMOVA64rr 2132085U, // CMOVAE16rm 2123893U, // CMOVAE16rr 2138638U, // CMOVAE32rm 2122254U, // CMOVAE32rr 2147670U, // CMOVAE64rm 2123094U, // CMOVAE64rr 2132006U, // CMOVB16rm 2123814U, // CMOVB16rr 2138559U, // CMOVB32rm 2122175U, // CMOVB32rr 2147591U, // CMOVB64rm 2123015U, // CMOVB64rr 2132094U, // CMOVBE16rm 2123902U, // CMOVBE16rr 2138647U, // CMOVBE32rm 2122263U, // CMOVBE32rr 2147679U, // CMOVBE64rm 2123103U, // CMOVBE64rr 2132130U, // CMOVE16rm 2123938U, // CMOVE16rr 2138727U, // CMOVE32rm 2122343U, // CMOVE32rr 2147767U, // CMOVE64rm 2123191U, // CMOVE64rr 2132160U, // CMOVG16rm 2123968U, // CMOVG16rr 2138757U, // CMOVG32rm 2122373U, // CMOVG32rr 2147797U, // CMOVG64rm 2123221U, // CMOVG64rr 2132103U, // CMOVGE16rm 2123911U, // CMOVGE16rr 2138656U, // CMOVGE32rm 2122272U, // CMOVGE32rr 2147688U, // CMOVGE64rm 2123112U, // CMOVGE64rr 2132214U, // CMOVL16rm 2124022U, // CMOVL16rr 2138856U, // CMOVL32rm 2122472U, // CMOVL32rr 2147881U, // CMOVL64rm 2123305U, // CMOVL64rr 2132112U, // CMOVLE16rm 2123920U, // CMOVLE16rr 2138665U, // CMOVLE32rm 2122281U, // CMOVLE32rr 2147697U, // CMOVLE64rm 2123121U, // CMOVLE64rr 2132121U, // CMOVNE16rm 2123929U, // CMOVNE16rr 2138674U, // CMOVNE32rm 2122290U, // CMOVNE32rr 2147706U, // CMOVNE64rm 2123130U, // CMOVNE64rr 2132227U, // CMOVNO16rm 2124035U, // CMOVNO16rr 2138876U, // CMOVNO32rm 2122492U, // CMOVNO32rr 2147896U, // CMOVNO64rm 2123320U, // CMOVNO64rr 2132257U, // CMOVNP16rm 2124065U, // CMOVNP16rr 2138921U, // CMOVNP32rm 2122537U, // CMOVNP32rr 2147934U, // CMOVNP64rm 2123358U, // CMOVNP64rr 2132399U, // CMOVNS16rm 2124207U, // CMOVNS16rr 2139072U, // CMOVNS32rm 2122688U, // CMOVNS32rr 2148070U, // CMOVNS64rm 2123494U, // CMOVNS64rr 2132236U, // CMOVO16rm 2124044U, // CMOVO16rr 2138885U, // CMOVO32rm 2122501U, // CMOVO32rr 2147905U, // CMOVO64rm 2123329U, // CMOVO64rr 2132278U, // CMOVP16rm 2124086U, // CMOVP16rr 2138948U, // CMOVP32rm 2122564U, // CMOVP32rr 2147949U, // CMOVP64rm 2123373U, // CMOVP64rr 2132434U, // CMOVS16rm 2124242U, // CMOVS16rr 2139107U, // CMOVS32rm 2122723U, // CMOVS32rr 2148098U, // CMOVS64rm 2123522U, // CMOVS64rr 3752U, // CMOV_FR32 4065U, // CMOV_FR64 3319U, // CMOV_GR16 3299U, // CMOV_GR32 4388U, // CMOV_GR8 3732U, // CMOV_RFP32 4045U, // CMOV_RFP64 3339U, // CMOV_RFP80 3652U, // CMOV_V16F32 3886U, // CMOV_V2F64 3946U, // CMOV_V2I64 3632U, // CMOV_V4F32 3906U, // CMOV_V4F64 3966U, // CMOV_V4I64 3673U, // CMOV_V8F32 3926U, // CMOV_V8F64 3986U, // CMOV_V8I64 534804U, // CMP16i16 1067284U, // CMP16mi 1067284U, // CMP16mi8 1067284U, // CMP16mr 2173204U, // CMP16ri 2173204U, // CMP16ri8 100628U, // CMP16rm 2173204U, // CMP16rr 2173204U, // CMP16rr_REV 2630428U, // CMP32i32 3162908U, // CMP32mi 3162908U, // CMP32mi8 3162908U, // CMP32mr 2171676U, // CMP32ri 2171676U, // CMP32ri8 66332U, // CMP32rm 2171676U, // CMP32rr 2171676U, // CMP32rr_REV 3679832U, // CMP64i32 4212312U, // CMP64mi32 4212312U, // CMP64mi8 4212312U, // CMP64mr 2172504U, // CMP64ri32 2172504U, // CMP64ri8 83544U, // CMP64rm 2172504U, // CMP64rr 2172504U, // CMP64rr_REV 4726911U, // CMP8i8 5259391U, // CMP8mi 5259391U, // CMP8mr 2171007U, // CMP8ri 139391U, // CMP8rm 2171007U, // CMP8rr 2171007U, // CMP8rr_REV 40520120U, // CMPS16 57304009U, // CMPS32 74090223U, // CMPS64 90874042U, // CMPS8 180235U, // CMPXCHG16B 1067190U, // CMPXCHG16rm 2173110U, // CMPXCHG16rr 3162747U, // CMPXCHG32rm 2171515U, // CMPXCHG32rr 4212171U, // CMPXCHG64rm 2172363U, // CMPXCHG64rr 122903U, // CMPXCHG8B 5259347U, // CMPXCHG8rm 2170963U, // CMPXCHG8rr 4990U, // CPUID32 4990U, // CPUID64 5230U, // CQO 5363U, // CS_PREFIX 5009U, // CWD 5174U, // CWDE 4869U, // DAA 5352U, // DAS 4759U, // DATA16_PREFIX 108604U, // DEC16m 10300U, // DEC16r 10300U, // DEC32_16r 8661U, // DEC32_32r 115157U, // DEC32m 8661U, // DEC32r 108604U, // DEC64_16m 10300U, // DEC64_16r 115157U, // DEC64_32m 8661U, // DEC64_32r 124189U, // DEC64m 9501U, // DEC64r 188468U, // DEC8m 8244U, // DEC8r 109102U, // DIV16m 10798U, // DIV16r 115781U, // DIV32m 9285U, // DIV32r 124777U, // DIV64m 10089U, // DIV64r 188643U, // DIV8m 8419U, // DIV8r 5383U, // DS_PREFIX 11444U, // EH_RETURN 11444U, // EH_RETURN64 4582U, // EH_SjLj_LongJmp32 4672U, // EH_SjLj_LongJmp64 4601U, // EH_SjLj_SetJmp32 4691U, // EH_SjLj_SetJmp64 132309U, // EH_SjLj_Setup 107489213U, // ENTER 5421U, // ES_PREFIX 2173147U, // FARCALL16i 201162U, // FARCALL16m 2171597U, // FARCALL32i 201128U, // FARCALL32m 201145U, // FARCALL64 2173210U, // FARJMP16i 201171U, // FARJMP16m 2171682U, // FARJMP32i 201137U, // FARJMP32m 201154U, // FARJMP64 5187U, // FSETPM 5459U, // FS_PREFIX 4954U, // GETSEC 5516U, // GS_PREFIX 5661U, // HLT 109101U, // IDIV16m 10797U, // IDIV16r 115780U, // IDIV32m 9284U, // IDIV32r 124776U, // IDIV64m 10088U, // IDIV64r 188642U, // IDIV8m 8418U, // IDIV8r 108783U, // IMUL16m 10479U, // IMUL16r 2132207U, // IMUL16rm 7432431U, // IMUL16rmi 7432431U, // IMUL16rmi8 2124015U, // IMUL16rr 18376943U, // IMUL16rri 18376943U, // IMUL16rri8 115425U, // IMUL32m 8929U, // IMUL32r 2138849U, // IMUL32rm 5858017U, // IMUL32rmi 5858017U, // IMUL32rmi8 2122465U, // IMUL32rr 18375393U, // IMUL32rri 18375393U, // IMUL32rri8 124450U, // IMUL64m 9762U, // IMUL64r 2147874U, // IMUL64rm 6383138U, // IMUL64rmi32 6383138U, // IMUL64rmi8 2123298U, // IMUL64rr 18376226U, // IMUL64rri32 18376226U, // IMUL64rri8 188531U, // IMUL8m 8307U, // IMUL8r 150686U, // IN16 534782U, // IN16ri 5742U, // IN16rr 158867U, // IN32 2630391U, // IN32ri 5755U, // IN32rr 175240U, // IN8 4726906U, // IN8ri 5078U, // IN8rr 108610U, // INC16m 10306U, // INC16r 10306U, // INC32_16r 8667U, // INC32_32r 115163U, // INC32m 8667U, // INC32r 108610U, // INC64_16m 10306U, // INC64_16r 115163U, // INC64_32m 8667U, // INC64_32r 124195U, // INC64m 9507U, // INC64r 188474U, // INC8m 8250U, // INC8r 10229U, // INT 4577U, // INT1 4667U, // INT3 5225U, // INTO 5016U, // INVD 188794U, // INVLPG 205066U, // INVPCID32 205066U, // INVPCID64 5730U, // IRET16 5145U, // IRET32 5283U, // IRET64 4838U, // Int_MemBarrier 131354U, // JAE_1 131354U, // JAE_2 131354U, // JAE_4 131073U, // JA_1 131073U, // JA_2 131073U, // JA_4 131366U, // JBE_1 131366U, // JBE_2 131366U, // JBE_4 131165U, // JB_1 131165U, // JB_2 131165U, // JB_4 133711U, // JCXZ 133704U, // JECXZ_32 133704U, // JECXZ_64 131390U, // JE_1 131390U, // JE_2 131390U, // JE_4 131378U, // JGE_1 131378U, // JGE_2 131378U, // JGE_4 131446U, // JG_1 131446U, // JG_2 131446U, // JG_4 131394U, // JLE_1 131394U, // JLE_2 131394U, // JLE_4 131746U, // JL_1 131746U, // JL_2 131746U, // JL_4 111060U, // JMP16m 12756U, // JMP16r 119218U, // JMP32m 12722U, // JMP32r 127427U, // JMP64m 12739U, // JMP64r 132280U, // JMP_1 132280U, // JMP_2 132280U, // JMP_4 131406U, // JNE_1 131406U, // JNE_2 131406U, // JNE_4 132258U, // JNO_1 132258U, // JNO_2 132258U, // JNO_4 132285U, // JNP_1 132285U, // JNP_2 132285U, // JNP_4 133091U, // JNS_1 133091U, // JNS_2 133091U, // JNS_4 132254U, // JO_1 132254U, // JO_2 132254U, // JO_4 132276U, // JP_1 132276U, // JP_2 132276U, // JP_4 133717U, // JRCXZ 133087U, // JS_1 133087U, // JS_2 133087U, // JS_4 5040U, // LAHF 100670U, // LAR16rm 2173246U, // LAR16rr 99148U, // LAR32rm 2171724U, // LAR32rr 99957U, // LAR64rm 2172533U, // LAR64rr 1067190U, // LCMPXCHG16 180235U, // LCMPXCHG16B 3162747U, // LCMPXCHG32 4212171U, // LCMPXCHG64 5259347U, // LCMPXCHG8 122903U, // LCMPXCHG8B 215440U, // LDS16rm 213921U, // LDS32rm 67588U, // LEA16r 65949U, // LEA32r 65949U, // LEA64_32r 83173U, // LEA64r 5034U, // LEAVE 5034U, // LEAVE64 215453U, // LES16rm 213934U, // LES32rm 215459U, // LFS16rm 213940U, // LFS32rm 214746U, // LFS64rm 199135U, // LGDT16m 197616U, // LGDT32m 198415U, // LGDT64m 215465U, // LGS16rm 213946U, // LGS32rm 214752U, // LGS64rm 199149U, // LIDT16m 197630U, // LIDT32m 198429U, // LIDT64m 109051U, // LLDT16m 10747U, // LLDT16r 109114U, // LMSW16m 10810U, // LMSW16r 1067087U, // LOCK_ADD16mi 1067087U, // LOCK_ADD16mi8 1067087U, // LOCK_ADD16mr 3162600U, // LOCK_ADD32mi 3162600U, // LOCK_ADD32mi8 3162600U, // LOCK_ADD32mr 4212016U, // LOCK_ADD64mi32 4212016U, // LOCK_ADD64mi8 4212016U, // LOCK_ADD64mr 5259329U, // LOCK_ADD8mi 5259329U, // LOCK_ADD8mr 1067112U, // LOCK_AND16mi 1067112U, // LOCK_AND16mi8 1067112U, // LOCK_AND16mr 3162625U, // LOCK_AND32mi 3162625U, // LOCK_AND32mi8 3162625U, // LOCK_AND32mr 4212041U, // LOCK_AND64mi32 4212041U, // LOCK_AND64mi8 4212041U, // LOCK_AND64mr 5259335U, // LOCK_AND8mi 5259335U, // LOCK_AND8mr 108604U, // LOCK_DEC16m 115157U, // LOCK_DEC32m 124189U, // LOCK_DEC64m 188468U, // LOCK_DEC8m 108610U, // LOCK_INC16m 115163U, // LOCK_INC32m 124195U, // LOCK_INC64m 188474U, // LOCK_INC8m 1067357U, // LOCK_OR16mi 1067357U, // LOCK_OR16mi8 1067357U, // LOCK_OR16mr 3162981U, // LOCK_OR32mi 3162981U, // LOCK_OR32mi8 3162981U, // LOCK_OR32mr 4212366U, // LOCK_OR64mi32 4212366U, // LOCK_OR64mi8 4212366U, // LOCK_OR64mr 5259416U, // LOCK_OR8mi 5259416U, // LOCK_OR8mr 5073U, // LOCK_PREFIX 1067040U, // LOCK_SUB16mi 1067040U, // LOCK_SUB16mi8 1067040U, // LOCK_SUB16mr 3162553U, // LOCK_SUB32mi 3162553U, // LOCK_SUB32mi8 3162553U, // LOCK_SUB32mr 4211969U, // LOCK_SUB64mi32 4211969U, // LOCK_SUB64mi8 4211969U, // LOCK_SUB64mr 5259304U, // LOCK_SUB8mi 5259304U, // LOCK_SUB8mr 1067362U, // LOCK_XOR16mi 1067362U, // LOCK_XOR16mi8 1067362U, // LOCK_XOR16mr 3162986U, // LOCK_XOR32mi 3162986U, // LOCK_XOR32mi8 3162986U, // LOCK_XOR32mr 4212380U, // LOCK_XOR64mi32 4212380U, // LOCK_XOR64mi8 4212380U, // LOCK_XOR64mr 5259421U, // LOCK_XOR8mi 5259421U, // LOCK_XOR8mr 4939955U, // LODSB 2851751U, // LODSL 239315U, // LODSQ 772502U, // LODSW 132297U, // LOOP 131426U, // LOOPE 131411U, // LOOPNE 9235U, // LRETIL 10034U, // LRETIQ 10761U, // LRETIW 5151U, // LRETL 5289U, // LRETQ 5736U, // LRETW 100585U, // LSL16rm 2173161U, // LSL16rr 66267U, // LSL32rm 2171611U, // LSL32rr 83476U, // LSL64rm 2172436U, // LSL64rr 215487U, // LSS16rm 213968U, // LSS32rm 214774U, // LSS64rm 108916U, // LTRm 10612U, // LTRr 7940174U, // LXADD16 8462823U, // LXADD32 8987951U, // LXADD64 9510976U, // LXADD8 100880U, // LZCNT16rm 2173456U, // LZCNT16rr 66592U, // LZCNT32rm 2171936U, // LZCNT32rr 83769U, // LZCNT64rm 2172729U, // LZCNT64rr 5179U, // MONTMUL 0U, // MORESTACK_RET 0U, // MORESTACK_RET_RESTORE_R10 257069U, // MOV16ao16 257069U, // MOV16ao16_16 1067572U, // MOV16mi 1067572U, // MOV16mr 1067572U, // MOV16ms 780852U, // MOV16o16a 780852U, // MOV16o16a_16 2173492U, // MOV16ri 2173492U, // MOV16ri_alt 100916U, // MOV16rm 2173492U, // MOV16rr 2173492U, // MOV16rr_REV 2173492U, // MOV16rs 100916U, // MOV16sm 2173492U, // MOV16sr 265312U, // MOV32ao32 265312U, // MOV32ao32_16 2171979U, // MOV32cr 2171979U, // MOV32dr 3163211U, // MOV32mi 3163211U, // MOV32mr 3163211U, // MOV32ms 2884683U, // MOV32o32a 2884683U, // MOV32o32a_16 0U, // MOV32r0 2171979U, // MOV32rc 2171979U, // MOV32rd 2171979U, // MOV32ri 0U, // MOV32ri64 2171979U, // MOV32ri_alt 66635U, // MOV32rm 2171979U, // MOV32rr 2171979U, // MOV32rr_REV 2171979U, // MOV32rs 66635U, // MOV32sm 2171979U, // MOV32sr 257032U, // MOV64ao16 265272U, // MOV64ao32 273516U, // MOV64ao64 281180U, // MOV64ao8 2172783U, // MOV64cr 2172783U, // MOV64dr 4212591U, // MOV64mi32 4212591U, // MOV64mr 4212591U, // MOV64ms 780679U, // MOV64o16a 2884504U, // MOV64o32a 3942090U, // MOV64o64a 4997290U, // MOV64o8a 2172783U, // MOV64rc 2172783U, // MOV64rd 2172618U, // MOV64ri 2172783U, // MOV64ri32 83823U, // MOV64rm 2172783U, // MOV64rr 2172783U, // MOV64rr_REV 2172783U, // MOV64rs 83823U, // MOV64sm 2172783U, // MOV64sr 281217U, // MOV8ao8 281217U, // MOV8ao8_16 5259497U, // MOV8mi 5259497U, // MOV8mr 122700009U, // MOV8mr_NOREX 4997353U, // MOV8o8a 4997353U, // MOV8o8a_16 2171113U, // MOV8ri 2171113U, // MOV8ri_alt 139497U, // MOV8rm 10100969U, // MOV8rm_NOREX 2171113U, // MOV8rr 119611625U, // MOV8rr_NOREX 2171113U, // MOV8rr_REV 1067135U, // MOVBE16mr 100479U, // MOVBE16rm 3162648U, // MOVBE32mr 66072U, // MOVBE32rm 4212064U, // MOVBE64mr 83296U, // MOVBE64rm 0U, // MOVPC32r 286920U, // MOVSB 295908U, // MOVSL 304899U, // MOVSQ 313811U, // MOVSW 141336U, // MOVSX16rm8 2172952U, // MOVSX16rr8 99416U, // MOVSX32rm16 139697U, // MOVSX32rm8 2171992U, // MOVSX32rr16 2171313U, // MOVSX32rr8 100220U, // MOVSX64rm16 67098U, // MOVSX64rm32 140537U, // MOVSX64rm8 2172796U, // MOVSX64rr16 2172442U, // MOVSX64rr32 2172153U, // MOVSX64rr8 141358U, // MOVZX16rm8 2172974U, // MOVZX16rr8 139719U, // MOVZX32_NOREXrm8 2171335U, // MOVZX32_NOREXrr8 99424U, // MOVZX32rm16 139719U, // MOVZX32rm8 2172000U, // MOVZX32rr16 2171335U, // MOVZX32rr8 100228U, // MOVZX64rm16_Q 140559U, // MOVZX64rm8_Q 2172804U, // MOVZX64rr16_Q 2172175U, // MOVZX64rr8_Q 108784U, // MUL16m 10480U, // MUL16r 115426U, // MUL32m 8930U, // MUL32r 124451U, // MUL64m 9763U, // MUL64r 188532U, // MUL8m 8308U, // MUL8r 18392182U, // MULX32rm 18375798U, // MULX32rr 18401178U, // MULX64rm 18376602U, // MULX64rr 108720U, // NEG16m 10416U, // NEG16r 115317U, // NEG32m 8821U, // NEG32r 124357U, // NEG64m 9669U, // NEG64r 188493U, // NEG8m 8269U, // NEG8r 5246U, // NOOP 115506U, // NOOPL 108842U, // NOOPW 109088U, // NOT16m 10784U, // NOT16r 115760U, // NOT32m 9264U, // NOT32r 124745U, // NOT64m 10057U, // NOT64r 188629U, // NOT8m 8405U, // NOT8r 534877U, // OR16i16 1067357U, // OR16mi 1067357U, // OR16mi8 1067357U, // OR16mr 1599837U, // OR16ri 1599837U, // OR16ri8 1608029U, // OR16rm 1599837U, // OR16rr 2124125U, // OR16rr_REV 2630501U, // OR32i32 3162981U, // OR32mi 3162981U, // OR32mi8 3162981U, // OR32mr 3162981U, // OR32mrLocked 1598309U, // OR32ri 1598309U, // OR32ri8 1614693U, // OR32rm 1598309U, // OR32rr 2122597U, // OR32rr_REV 3679886U, // OR64i32 4212366U, // OR64mi32 4212366U, // OR64mi8 4212366U, // OR64mr 1599118U, // OR64ri32 1599118U, // OR64ri8 1623694U, // OR64rm 1599118U, // OR64rr 2123406U, // OR64rr_REV 4726936U, // OR8i8 5259416U, // OR8mi 5259416U, // OR8mr 1597592U, // OR8ri 57496U, // OR8rm 1597592U, // OR8rr 2121880U, // OR8rr_REV 11298U, // OUT16ir 5783U, // OUT16rr 11348U, // OUT32ir 5797U, // OUT32rr 10870U, // OUT8ir 5769U, // OUT8rr 10707137U, // OUTSB 10716124U, // OUTSL 10734027U, // OUTSW 18391829U, // PDEP32rm 18375445U, // PDEP32rr 18400849U, // PDEP64rm 18376273U, // PDEP64rr 18392125U, // PEXT32rm 18375741U, // PEXT32rr 18401121U, // PEXT64rm 18376545U, // PEXT64rr 10544U, // POP16r 108848U, // POP16rmm 10544U, // POP16rmr 9016U, // POP32r 115512U, // POP32rmm 9016U, // POP32rmr 9831U, // POP64r 124519U, // POP64rmm 9831U, // POP64rmr 5686U, // POPA16 5098U, // POPA32 5405U, // POPDS16 5386U, // POPDS32 5443U, // POPES16 5424U, // POPES32 5699U, // POPF16 5111U, // POPF32 5257U, // POPF64 5500U, // POPFS16 5462U, // POPFS32 5481U, // POPFS64 5557U, // POPGS16 5519U, // POPGS32 5538U, // POPGS64 5647U, // POPSS16 5628U, // POPSS32 10440U, // PUSH16i8 10440U, // PUSH16r 108744U, // PUSH16rmm 10440U, // PUSH16rmr 8845U, // PUSH32i8 8845U, // PUSH32r 115341U, // PUSH32rmm 8845U, // PUSH32rmr 10440U, // PUSH64i16 9693U, // PUSH64i32 9693U, // PUSH64i8 9693U, // PUSH64r 124381U, // PUSH64rmm 9693U, // PUSH64rmr 5679U, // PUSHA16 5091U, // PUSHA32 5366U, // PUSHCS16 5356U, // PUSHCS32 5395U, // PUSHDS16 5376U, // PUSHDS32 5433U, // PUSHES16 5414U, // PUSHES32 5692U, // PUSHF16 5104U, // PUSHF32 5250U, // PUSHF64 5490U, // PUSHFS16 5452U, // PUSHFS32 5471U, // PUSHFS64 5547U, // PUSHGS16 5509U, // PUSHGS32 5528U, // PUSHGS64 5637U, // PUSHSS16 5618U, // PUSHSS32 10440U, // PUSHi16 8845U, // PUSHi32 108751U, // RCL16m1 109499U, // RCL16mCL 1067215U, // RCL16mi 10447U, // RCL16r1 11195U, // RCL16rCL 2123983U, // RCL16ri 115375U, // RCL32m1 117489U, // RCL32mCL 3162799U, // RCL32mi 8879U, // RCL32r1 10993U, // RCL32rCL 2122415U, // RCL32ri 124411U, // RCL64m1 125782U, // RCL64mCL 4212219U, // RCL64mi 9723U, // RCL64r1 11094U, // RCL64rCL 2123259U, // RCL64ri 188513U, // RCL8m1 191116U, // RCL8mCL 5259361U, // RCL8mi 8289U, // RCL8r1 10892U, // RCL8rCL 2121825U, // RCL8ri 108874U, // RCR16m1 109543U, // RCR16mCL 1067338U, // RCR16mi 10570U, // RCR16r1 11239U, // RCR16rCL 2124106U, // RCR16ri 115544U, // RCR32m1 117533U, // RCR32mCL 3162968U, // RCR32mi 9048U, // RCR32r1 11037U, // RCR32rCL 2122584U, // RCR32ri 124545U, // RCR64m1 125826U, // RCR64mCL 4212353U, // RCR64mi 9857U, // RCR64r1 11138U, // RCR64rCL 2123393U, // RCR64ri 188555U, // RCR8m1 191160U, // RCR8mCL 5259403U, // RCR8mi 8331U, // RCR8r1 10936U, // RCR8rCL 2121867U, // RCR8ri 8763U, // RDFSBASE 9603U, // RDFSBASE64 8785U, // RDGSBASE 9625U, // RDGSBASE64 5326U, // RDMSR 4974U, // RDPMC 10341U, // RDRAND16r 8702U, // RDRAND32r 9542U, // RDRAND64r 10325U, // RDSEED16r 8686U, // RDSEED32r 9526U, // RDSEED64r 4980U, // RDTSC 5235U, // RDTSCP 4499U, // RELEASE_MOV16mr 4499U, // RELEASE_MOV32mr 4499U, // RELEASE_MOV64mr 4499U, // RELEASE_MOV8mr 5021U, // REPNE_PREFIX 4918U, // REP_MOVSB_32 4918U, // REP_MOVSB_64 5135U, // REP_MOVSD_32 5135U, // REP_MOVSD_64 5273U, // REP_MOVSQ_64 5715U, // REP_MOVSW_32 5715U, // REP_MOVSW_64 5242U, // REP_PREFIX 4908U, // REP_STOSB_32 4908U, // REP_STOSB_64 5125U, // REP_STOSD_32 5125U, // REP_STOSD_64 5263U, // REP_STOSQ_64 5705U, // REP_STOSW_32 5705U, // REP_STOSW_64 9236U, // RETIL 10035U, // RETIQ 10762U, // RETIW 5146U, // RETL 5284U, // RETQ 5731U, // RETW 4753U, // REX64_PREFIX 108771U, // ROL16m1 109521U, // ROL16mCL 1067235U, // ROL16mi 10467U, // ROL16r1 11217U, // ROL16rCL 2124003U, // ROL16ri 115413U, // ROL32m1 117511U, // ROL32mCL 3162837U, // ROL32mi 8917U, // ROL32r1 11015U, // ROL32rCL 2122453U, // ROL32ri 124430U, // ROL64m1 125804U, // ROL64mCL 4212238U, // ROL64mi 9742U, // ROL64r1 11116U, // ROL64rCL 2123278U, // ROL64ri 188525U, // ROL8m1 191138U, // ROL8mCL 5259373U, // ROL8mi 8301U, // ROL8r1 10914U, // ROL8rCL 2121837U, // ROL8ri 108892U, // ROR16m1 109565U, // ROR16mCL 1067356U, // ROR16mi 10588U, // ROR16r1 11261U, // ROR16rCL 2124124U, // ROR16ri 115556U, // ROR32m1 117555U, // ROR32mCL 3162980U, // ROR32mi 9060U, // ROR32r1 11059U, // ROR32rCL 2122596U, // ROR32ri 124557U, // ROR64m1 125848U, // ROR64mCL 4212365U, // ROR64mi 9869U, // ROR64r1 11160U, // ROR64rCL 2123405U, // ROR64ri 188567U, // ROR8m1 191182U, // ROR8mCL 5259415U, // ROR8mi 8343U, // ROR8r1 10958U, // ROR8rCL 2121879U, // ROR8ri 5858450U, // RORX32mi 18375826U, // RORX32ri 6383542U, // RORX64mi 18376630U, // RORX64ri 5194U, // RSM 5045U, // SAHF 4961U, // SALC 108868U, // SAR16m1 109532U, // SAR16mCL 1067332U, // SAR16mi 10564U, // SAR16r1 11228U, // SAR16rCL 2124100U, // SAR16ri 115538U, // SAR32m1 117522U, // SAR32mCL 3162962U, // SAR32mi 9042U, // SAR32r1 11026U, // SAR32rCL 2122578U, // SAR32ri 124539U, // SAR64m1 125815U, // SAR64mCL 4212347U, // SAR64mi 9851U, // SAR64r1 11127U, // SAR64rCL 2123387U, // SAR64ri 188549U, // SAR8m1 191149U, // SAR8mCL 5259397U, // SAR8mi 8325U, // SAR8r1 10925U, // SAR8rCL 2121861U, // SAR8ri 5858436U, // SARX32rm 18375812U, // SARX32rr 6383528U, // SARX64rm 18376616U, // SARX64rr 534546U, // SBB16i16 1067026U, // SBB16mi 1067026U, // SBB16mi8 1067026U, // SBB16mr 1599506U, // SBB16ri 1599506U, // SBB16ri8 1607698U, // SBB16rm 1599506U, // SBB16rr 2123794U, // SBB16rr_REV 2630059U, // SBB32i32 3162539U, // SBB32mi 3162539U, // SBB32mi8 3162539U, // SBB32mr 1597867U, // SBB32ri 1597867U, // SBB32ri8 1614251U, // SBB32rm 1597867U, // SBB32rr 2122155U, // SBB32rr_REV 3679475U, // SBB64i32 4211955U, // SBB64mi32 4211955U, // SBB64mi8 4211955U, // SBB64mr 1598707U, // SBB64ri32 1598707U, // SBB64ri8 1623283U, // SBB64rm 1598707U, // SBB64rr 2122995U, // SBB64rr_REV 4726818U, // SBB8i8 5259298U, // SBB8mi 5259298U, // SBB8mr 1597474U, // SBB8ri 57378U, // SBB8rm 1597474U, // SBB8rr 2121762U, // SBB8rr_REV 674176U, // SCAS16 2778001U, // SCAS32 3835587U, // SCAS64 4890787U, // SCAS8 5573U, // SEG_ALLOCA_32 5573U, // SEG_ALLOCA_64 188703U, // SETAEm 8479U, // SETAEr 188421U, // SETAm 8197U, // SETAr 188715U, // SETBEm 8491U, // SETBEr 0U, // SETB_C16r 0U, // SETB_C32r 0U, // SETB_C64r 0U, // SETB_C8r 188623U, // SETBm 8399U, // SETBr 188777U, // SETEm 8553U, // SETEr 188727U, // SETGEm 8503U, // SETGEr 188802U, // SETGm 8578U, // SETGr 188743U, // SETLEm 8519U, // SETLEr 189466U, // SETLm 9242U, // SETLr 188763U, // SETNEm 8539U, // SETNEr 189607U, // SETNOm 9383U, // SETNOr 189634U, // SETNPm 9410U, // SETNPr 190440U, // SETNSm 10216U, // SETNSr 189614U, // SETOm 9390U, // SETOr 189647U, // SETPm 9423U, // SETPr 190447U, // SETSm 10223U, // SETSr 199142U, // SGDT16m 197623U, // SGDT32m 198422U, // SGDT64m 108757U, // SHL16m1 109510U, // SHL16mCL 1067221U, // SHL16mi 10453U, // SHL16r1 11206U, // SHL16rCL 2123989U, // SHL16ri 115381U, // SHL32m1 117500U, // SHL32mCL 3162805U, // SHL32mi 8885U, // SHL32r1 11004U, // SHL32rCL 2122421U, // SHL32ri 124417U, // SHL64m1 125793U, // SHL64mCL 4212225U, // SHL64mi 9729U, // SHL64r1 11105U, // SHL64rCL 2123265U, // SHL64ri 188519U, // SHL8m1 191127U, // SHL8mCL 5259367U, // SHL8mi 8295U, // SHL8r1 10903U, // SHL8rCL 2121831U, // SHL8ri 1067939U, // SHLD16mrCL 145320030U, // SHLD16mri8 2124707U, // SHLD16rrCL 321630U, // SHLD16rri8 3164889U, // SHLD32mrCL 162095607U, // SHLD32mri8 2124505U, // SHLD32rrCL 319991U, // SHLD32rri8 4213566U, // SHLD64mrCL 178873663U, // SHLD64mri8 2124606U, // SHLD64rrCL 320831U, // SHLD64rri8 5858415U, // SHLX32rm 18375791U, // SHLX32rr 6383507U, // SHLX64rm 18376595U, // SHLX64rr 108886U, // SHR16m1 109554U, // SHR16mCL 1067350U, // SHR16mi 10582U, // SHR16r1 11250U, // SHR16rCL 2124118U, // SHR16ri 115550U, // SHR32m1 117544U, // SHR32mCL 3162974U, // SHR32mi 9054U, // SHR32r1 11048U, // SHR32rCL 2122590U, // SHR32ri 124551U, // SHR64m1 125837U, // SHR64mCL 4212359U, // SHR64mi 9863U, // SHR64r1 11149U, // SHR64rCL 2123399U, // SHR64ri 188561U, // SHR8m1 191171U, // SHR8mCL 5259409U, // SHR8mi 8337U, // SHR8r1 10947U, // SHR8rCL 2121873U, // SHR8ri 1067951U, // SHRD16mrCL 145320046U, // SHRD16mri8 2124719U, // SHRD16rrCL 321646U, // SHRD16rri8 3164901U, // SHRD32mrCL 162095623U, // SHRD32mri8 2124517U, // SHRD32rrCL 320007U, // SHRD32rri8 4213578U, // SHRD64mrCL 178873679U, // SHRD64mri8 2124618U, // SHRD64rrCL 320847U, // SHRD64rri8 5858443U, // SHRX32rm 18375819U, // SHRX32rr 6383535U, // SHRX64rm 18376623U, // SHRX64rr 199156U, // SIDT16m 197637U, // SIDT32m 198436U, // SIDT64m 109058U, // SLDT16m 10754U, // SLDT16r 9228U, // SLDT32r 108331U, // SLDT64m 10027U, // SLDT64r 109121U, // SMSW16m 10817U, // SMSW16r 9297U, // SMSW32r 10101U, // SMSW64r 5625U, // SS_PREFIX 4939U, // STAC 4986U, // STC 5005U, // STD 5054U, // STI 174698U, // STOSB 158791U, // STOSL 167035U, // STOSQ 150550U, // STOSW 10618U, // STR16r 9091U, // STR32r 9909U, // STR64r 108922U, // STRm 534560U, // SUB16i16 1067040U, // SUB16mi 1067040U, // SUB16mi8 1067040U, // SUB16mr 1599520U, // SUB16ri 1599520U, // SUB16ri8 1607712U, // SUB16rm 1599520U, // SUB16rr 2123808U, // SUB16rr_REV 2630073U, // SUB32i32 3162553U, // SUB32mi 3162553U, // SUB32mi8 3162553U, // SUB32mr 1597881U, // SUB32ri 1597881U, // SUB32ri8 1614265U, // SUB32rm 1597881U, // SUB32rr 2122169U, // SUB32rr_REV 3679489U, // SUB64i32 4211969U, // SUB64mi32 4211969U, // SUB64mi8 4211969U, // SUB64mr 1598721U, // SUB64ri32 1598721U, // SUB64ri8 1623297U, // SUB64rm 1598721U, // SUB64rr 2123009U, // SUB64rr_REV 4726824U, // SUB8i8 5259304U, // SUB8mi 5259304U, // SUB8mr 1597480U, // SUB8ri 57384U, // SUB8rm 1597480U, // SUB8rr 2121768U, // SUB8rr_REV 5566U, // SWAPGS 5117U, // SYSCALL 5317U, // SYSENTER 5165U, // SYSEXIT 5303U, // SYSEXIT64 5157U, // SYSRET 5295U, // SYSRET64 65789U, // T1MSKC32rm 2171133U, // T1MSKC32rr 82173U, // T1MSKC64rm 2171133U, // T1MSKC64rr 11666616U, // TAILJMPd 11666616U, // TAILJMPd64 11653554U, // TAILJMPm 11661763U, // TAILJMPm64 0U, // TAILJMPr 11547075U, // TAILJMPr64 0U, // TCRETURNdi 0U, // TCRETURNdi64 0U, // TCRETURNmi 0U, // TCRETURNmi64 0U, // TCRETURNri 0U, // TCRETURNri64 535078U, // TEST16i16 1067558U, // TEST16mi 2173478U, // TEST16ri 100902U, // TEST16rm 2173478U, // TEST16rr 2630710U, // TEST32i32 3163190U, // TEST32mi 2171958U, // TEST32ri 66614U, // TEST32rm 2171958U, // TEST32rr 3680090U, // TEST64i32 4212570U, // TEST64mi32 2172762U, // TEST64ri32 83802U, // TEST64rm 2172762U, // TEST64rr 4727003U, // TEST8i8 5259483U, // TEST8mi 2171099U, // TEST8ri 0U, // TEST8ri_NOREX 139483U, // TEST8rm 2171099U, // TEST8rr 4619U, // TLSCall_32 4709U, // TLSCall_64 4632U, // TLS_addr32 4722U, // TLS_addr64 4645U, // TLS_base_addr32 4735U, // TLS_base_addr64 4663U, // TRAP 100888U, // TZCNT16rm 2173464U, // TZCNT16rr 66600U, // TZCNT32rm 2171944U, // TZCNT32rr 83777U, // TZCNT64rm 2172737U, // TZCNT64rr 65942U, // TZMSK32rm 2171286U, // TZMSK32rr 82326U, // TZMSK64rm 2171286U, // TZMSK64rr 4873U, // UD2B 191376553U, // VAARG_64 375925963U, // VASTART_SAVE_XMM_REGS 108492U, // VERRm 10188U, // VERRr 108880U, // VERWm 10576U, // VERWr 132615U, // W64ALLOCA 5014U, // WBINVD 5198U, // WIN_ALLOCA 5058U, // WIN_FTOL_32 5058U, // WIN_FTOL_64 8774U, // WRFSBASE 9614U, // WRFSBASE64 8796U, // WRGSBASE 9636U, // WRGSBASE64 5332U, // WRMSR 1067086U, // XADD16rm 2173006U, // XADD16rr 3162599U, // XADD32rm 2171367U, // XADD32rr 4212015U, // XADD64rm 2172207U, // XADD64rr 5259328U, // XADD8rm 2170944U, // XADD8rr 534713U, // XCHG16ar 7940281U, // XCHG16rm 12134585U, // XCHG16rr 2630270U, // XCHG32ar 2630270U, // XCHG32ar64 8462974U, // XCHG32rm 12132990U, // XCHG32rr 3679694U, // XCHG64ar 8988110U, // XCHG64rm 12133838U, // XCHG64rr 9510998U, // XCHG8rm 12132438U, // XCHG8rr 4944U, // XCRYPTCBC 4888U, // XCRYPTCFB 5338U, // XCRYPTCTR 4878U, // XCRYPTECB 4898U, // XCRYPTOFB 5665U, // XGETBV 4928U, // XLAT 534882U, // XOR16i16 1067362U, // XOR16mi 1067362U, // XOR16mi8 1067362U, // XOR16mr 1599842U, // XOR16ri 1599842U, // XOR16ri8 1608034U, // XOR16rm 1599842U, // XOR16rr 2124130U, // XOR16rr_REV 2630506U, // XOR32i32 3162986U, // XOR32mi 3162986U, // XOR32mi8 3162986U, // XOR32mr 1598314U, // XOR32ri 1598314U, // XOR32ri8 1614698U, // XOR32rm 1598314U, // XOR32rr 2122602U, // XOR32rr_REV 3679900U, // XOR64i32 4212380U, // XOR64mi32 4212380U, // XOR64mi8 4212380U, // XOR64mr 1599132U, // XOR64ri32 1599132U, // XOR64ri8 1623708U, // XOR64rm 1599132U, // XOR64rr 2123420U, // XOR64rr_REV 4726941U, // XOR8i8 5259421U, // XOR8mi 5259421U, // XOR8mr 1597597U, // XOR8ri 57501U, // XOR8rm 1597597U, // XOR8rr 2121885U, // XOR8rr_REV 198596U, // XRSTOR 198291U, // XRSTOR64 196975U, // XSAVE 198063U, // XSAVE64 198650U, // XSAVEOPT 198479U, // XSAVEOPT64 5672U, // XSETBV 4571U, // XSHA1 4766U, // XSHA256 5027U, // XSTORE 0U }; #ifndef CAPSTONE_DIET static char AsmStrs[] = { /* 0 */ 'j', 'a', 9, 0, /* 4 */ 's', 'e', 't', 'a', 9, 0, /* 10 */ 'c', 'm', 'p', 'x', 'c', 'h', 'g', '1', '6', 'b', 9, 0, /* 22 */ 'c', 'm', 'p', 'x', 'c', 'h', 'g', '8', 'b', 9, 0, /* 33 */ 's', 'b', 'b', 'b', 9, 0, /* 39 */ 's', 'u', 'b', 'b', 9, 0, /* 45 */ 'a', 'd', 'c', 'b', 9, 0, /* 51 */ 'd', 'e', 'c', 'b', 9, 0, /* 57 */ 'i', 'n', 'c', 'b', 9, 0, /* 63 */ 'x', 'a', 'd', 'd', 'b', 9, 0, /* 70 */ 'a', 'n', 'd', 'b', 9, 0, /* 76 */ 'n', 'e', 'g', 'b', 9, 0, /* 82 */ 'c', 'm', 'p', 'x', 'c', 'h', 'g', 'b', 9, 0, /* 92 */ 'j', 'b', 9, 0, /* 96 */ 'r', 'c', 'l', 'b', 9, 0, /* 102 */ 's', 'h', 'l', 'b', 9, 0, /* 108 */ 'r', 'o', 'l', 'b', 9, 0, /* 114 */ 'i', 'm', 'u', 'l', 'b', 9, 0, /* 121 */ 'i', 'n', 'b', 9, 0, /* 126 */ 'c', 'm', 'p', 'b', 9, 0, /* 132 */ 's', 'a', 'r', 'b', 9, 0, /* 138 */ 'r', 'c', 'r', 'b', 9, 0, /* 144 */ 's', 'h', 'r', 'b', 9, 0, /* 150 */ 'r', 'o', 'r', 'b', 9, 0, /* 156 */ 'x', 'o', 'r', 'b', 9, 0, /* 162 */ 's', 'c', 'a', 's', 'b', 9, 0, /* 169 */ 'm', 'o', 'v', 'a', 'b', 's', 'b', 9, 0, /* 178 */ 'l', 'o', 'd', 's', 'b', 9, 0, /* 185 */ 'c', 'm', 'p', 's', 'b', 9, 0, /* 192 */ 'o', 'u', 't', 's', 'b', 9, 0, /* 199 */ 'm', 'o', 'v', 's', 'b', 9, 0, /* 206 */ 's', 'e', 't', 'b', 9, 0, /* 212 */ 'n', 'o', 't', 'b', 9, 0, /* 218 */ 't', 'e', 's', 't', 'b', 9, 0, /* 225 */ 'i', 'd', 'i', 'v', 'b', 9, 0, /* 232 */ 'm', 'o', 'v', 'b', 9, 0, /* 238 */ 'b', 'l', 'c', 'i', 'c', 9, 0, /* 245 */ 'b', 'l', 's', 'i', 'c', 9, 0, /* 252 */ 't', '1', 'm', 's', 'k', 'c', 9, 0, /* 260 */ 'a', 'a', 'd', 9, 0, /* 265 */ 'i', 'n', 'v', 'p', 'c', 'i', 'd', 9, 0, /* 274 */ 'b', 'o', 'u', 'n', 'd', 9, 0, /* 281 */ 'j', 'a', 'e', 9, 0, /* 286 */ 's', 'e', 't', 'a', 'e', 9, 0, /* 293 */ 'j', 'b', 'e', 9, 0, /* 298 */ 's', 'e', 't', 'b', 'e', 9, 0, /* 305 */ 'j', 'g', 'e', 9, 0, /* 310 */ 's', 'e', 't', 'g', 'e', 9, 0, /* 317 */ 'j', 'e', 9, 0, /* 321 */ 'j', 'l', 'e', 9, 0, /* 326 */ 's', 'e', 't', 'l', 'e', 9, 0, /* 333 */ 'j', 'n', 'e', 9, 0, /* 338 */ 'l', 'o', 'o', 'p', 'n', 'e', 9, 0, /* 346 */ 's', 'e', 't', 'n', 'e', 9, 0, /* 353 */ 'l', 'o', 'o', 'p', 'e', 9, 0, /* 360 */ 's', 'e', 't', 'e', 9, 0, /* 366 */ 'x', 's', 'a', 'v', 'e', 9, 0, /* 373 */ 'j', 'g', 9, 0, /* 377 */ 'i', 'n', 'v', 'l', 'p', 'g', 9, 0, /* 385 */ 's', 'e', 't', 'g', 9, 0, /* 391 */ 'b', 'l', 'c', 'i', 9, 0, /* 397 */ 'b', 'l', 'c', 'm', 's', 'k', 9, 0, /* 405 */ 't', 'z', 'm', 's', 'k', 9, 0, /* 412 */ 'l', 'e', 'a', 'l', 9, 0, /* 418 */ 'c', 'm', 'o', 'v', 'a', 'l', 9, 0, /* 426 */ 's', 'b', 'b', 'l', 9, 0, /* 432 */ 'm', 'o', 'v', 's', 'b', 'l', 9, 0, /* 440 */ 's', 'u', 'b', 'l', 9, 0, /* 446 */ 'c', 'm', 'o', 'v', 'b', 'l', 9, 0, /* 454 */ 'm', 'o', 'v', 'z', 'b', 'l', 9, 0, /* 462 */ 'a', 'd', 'c', 'l', 9, 0, /* 468 */ 'd', 'e', 'c', 'l', 9, 0, /* 474 */ 'i', 'n', 'c', 'l', 9, 0, /* 480 */ 'b', 't', 'c', 'l', 9, 0, /* 486 */ 'x', 'a', 'd', 'd', 'l', 9, 0, /* 493 */ 'r', 'd', 's', 'e', 'e', 'd', 'l', 9, 0, /* 502 */ 's', 'h', 'l', 'd', 'l', 9, 0, /* 509 */ 'r', 'd', 'r', 'a', 'n', 'd', 'l', 9, 0, /* 518 */ 's', 'h', 'r', 'd', 'l', 9, 0, /* 525 */ 'c', 'm', 'o', 'v', 'a', 'e', 'l', 9, 0, /* 534 */ 'c', 'm', 'o', 'v', 'b', 'e', 'l', 9, 0, /* 543 */ 'c', 'm', 'o', 'v', 'g', 'e', 'l', 9, 0, /* 552 */ 'c', 'm', 'o', 'v', 'l', 'e', 'l', 9, 0, /* 561 */ 'c', 'm', 'o', 'v', 'n', 'e', 'l', 9, 0, /* 570 */ 'r', 'd', 'f', 's', 'b', 'a', 's', 'e', 'l', 9, 0, /* 581 */ 'w', 'r', 'f', 's', 'b', 'a', 's', 'e', 'l', 9, 0, /* 592 */ 'r', 'd', 'g', 's', 'b', 'a', 's', 'e', 'l', 9, 0, /* 603 */ 'w', 'r', 'g', 's', 'b', 'a', 's', 'e', 'l', 9, 0, /* 614 */ 'c', 'm', 'o', 'v', 'e', 'l', 9, 0, /* 622 */ 'b', 's', 'f', 'l', 9, 0, /* 628 */ 'n', 'e', 'g', 'l', 9, 0, /* 634 */ 'c', 'm', 'p', 'x', 'c', 'h', 'g', 'l', 9, 0, /* 644 */ 'c', 'm', 'o', 'v', 'g', 'l', 9, 0, /* 652 */ 'p', 'u', 's', 'h', 'l', 9, 0, /* 659 */ 'b', 'z', 'h', 'i', 'l', 9, 0, /* 666 */ 'b', 'l', 's', 'i', 'l', 9, 0, /* 673 */ 'j', 'l', 9, 0, /* 677 */ 'b', 'l', 's', 'm', 's', 'k', 'l', 9, 0, /* 686 */ 'r', 'c', 'l', 'l', 9, 0, /* 692 */ 's', 'h', 'l', 'l', 9, 0, /* 698 */ 'b', 'l', 'c', 'f', 'i', 'l', 'l', 9, 0, /* 707 */ 'b', 'l', 's', 'f', 'i', 'l', 'l', 9, 0, /* 716 */ 'l', 'c', 'a', 'l', 'l', 'l', 9, 0, /* 724 */ 'r', 'o', 'l', 'l', 9, 0, /* 730 */ 'l', 's', 'l', 'l', 9, 0, /* 736 */ 'i', 'm', 'u', 'l', 'l', 9, 0, /* 743 */ 'c', 'm', 'o', 'v', 'l', 'l', 9, 0, /* 751 */ 'a', 'n', 'd', 'n', 'l', 9, 0, /* 758 */ 'i', 'n', 'l', 9, 0, /* 763 */ 'c', 'm', 'o', 'v', 'n', 'o', 'l', 9, 0, /* 772 */ 'c', 'm', 'o', 'v', 'o', 'l', 9, 0, /* 780 */ 'b', 's', 'w', 'a', 'p', 'l', 9, 0, /* 788 */ 'p', 'd', 'e', 'p', 'l', 9, 0, /* 795 */ 'c', 'm', 'p', 'l', 9, 0, /* 801 */ 'l', 'j', 'm', 'p', 'l', 9, 0, /* 808 */ 'c', 'm', 'o', 'v', 'n', 'p', 'l', 9, 0, /* 817 */ 'n', 'o', 'p', 'l', 9, 0, /* 823 */ 'p', 'o', 'p', 'l', 9, 0, /* 829 */ 'a', 'r', 'p', 'l', 9, 0, /* 835 */ 'c', 'm', 'o', 'v', 'p', 'l', 9, 0, /* 843 */ 'l', 'a', 'r', 'l', 9, 0, /* 849 */ 's', 'a', 'r', 'l', 9, 0, /* 855 */ 'r', 'c', 'r', 'l', 9, 0, /* 861 */ 's', 'h', 'r', 'l', 9, 0, /* 867 */ 'r', 'o', 'r', 'l', 9, 0, /* 873 */ 'x', 'o', 'r', 'l', 9, 0, /* 879 */ 'b', 's', 'r', 'l', 9, 0, /* 885 */ 'b', 'l', 's', 'r', 'l', 9, 0, /* 892 */ 'b', 't', 'r', 'l', 9, 0, /* 898 */ 's', 't', 'r', 'l', 9, 0, /* 904 */ 'b', 'e', 'x', 't', 'r', 'l', 9, 0, /* 912 */ 's', 'c', 'a', 's', 'l', 9, 0, /* 919 */ 'm', 'o', 'v', 'a', 'b', 's', 'l', 9, 0, /* 928 */ 'l', 'd', 's', 'l', 9, 0, /* 934 */ 'l', 'o', 'd', 's', 'l', 9, 0, /* 941 */ 'l', 'e', 's', 'l', 9, 0, /* 947 */ 'l', 'f', 's', 'l', 9, 0, /* 953 */ 'l', 'g', 's', 'l', 9, 0, /* 959 */ 'c', 'm', 'o', 'v', 'n', 's', 'l', 9, 0, /* 968 */ 'c', 'm', 'p', 's', 'l', 9, 0, /* 975 */ 'l', 's', 's', 'l', 9, 0, /* 981 */ 'b', 't', 's', 'l', 9, 0, /* 987 */ 'o', 'u', 't', 's', 'l', 9, 0, /* 994 */ 'c', 'm', 'o', 'v', 's', 'l', 9, 0, /* 1002 */ 'b', 't', 'l', 9, 0, /* 1007 */ 'l', 'g', 'd', 't', 'l', 9, 0, /* 1014 */ 's', 'g', 'd', 't', 'l', 9, 0, /* 1021 */ 'l', 'i', 'd', 't', 'l', 9, 0, /* 1028 */ 's', 'i', 'd', 't', 'l', 9, 0, /* 1035 */ 's', 'l', 'd', 't', 'l', 9, 0, /* 1042 */ 'l', 'r', 'e', 't', 'l', 9, 0, /* 1049 */ 's', 'e', 't', 'l', 9, 0, /* 1055 */ 'l', 'z', 'c', 'n', 't', 'l', 9, 0, /* 1063 */ 't', 'z', 'c', 'n', 't', 'l', 9, 0, /* 1071 */ 'n', 'o', 't', 'l', 9, 0, /* 1077 */ 't', 'e', 's', 't', 'l', 9, 0, /* 1084 */ 'p', 'e', 'x', 't', 'l', 9, 0, /* 1091 */ 'i', 'd', 'i', 'v', 'l', 9, 0, /* 1098 */ 'm', 'o', 'v', 'l', 9, 0, /* 1104 */ 's', 'm', 's', 'w', 'l', 9, 0, /* 1111 */ 'm', 'o', 'v', 's', 'w', 'l', 9, 0, /* 1119 */ 'm', 'o', 'v', 'z', 'w', 'l', 9, 0, /* 1127 */ 'a', 'd', 'c', 'x', 'l', 9, 0, /* 1134 */ 's', 'h', 'l', 'x', 'l', 9, 0, /* 1141 */ 'm', 'u', 'l', 'x', 'l', 9, 0, /* 1148 */ 'a', 'd', 'o', 'x', 'l', 9, 0, /* 1155 */ 's', 'a', 'r', 'x', 'l', 9, 0, /* 1162 */ 's', 'h', 'r', 'x', 'l', 9, 0, /* 1169 */ 'r', 'o', 'r', 'x', 'l', 9, 0, /* 1176 */ 'a', 'a', 'm', 9, 0, /* 1181 */ 'j', 'o', 9, 0, /* 1185 */ 'j', 'n', 'o', 9, 0, /* 1190 */ 's', 'e', 't', 'n', 'o', 9, 0, /* 1197 */ 's', 'e', 't', 'o', 9, 0, /* 1203 */ 'j', 'p', 9, 0, /* 1207 */ 'j', 'm', 'p', 9, 0, /* 1212 */ 'j', 'n', 'p', 9, 0, /* 1217 */ 's', 'e', 't', 'n', 'p', 9, 0, /* 1224 */ 'l', 'o', 'o', 'p', 9, 0, /* 1230 */ 's', 'e', 't', 'p', 9, 0, /* 1236 */ '#', 'E', 'H', '_', 'S', 'j', 'L', 'j', '_', 'S', 'e', 't', 'u', 'p', 9, 0, /* 1252 */ 'l', 'e', 'a', 'q', 9, 0, /* 1258 */ 'c', 'm', 'o', 'v', 'a', 'q', 9, 0, /* 1266 */ 's', 'b', 'b', 'q', 9, 0, /* 1272 */ 'm', 'o', 'v', 's', 'b', 'q', 9, 0, /* 1280 */ 's', 'u', 'b', 'q', 9, 0, /* 1286 */ 'c', 'm', 'o', 'v', 'b', 'q', 9, 0, /* 1294 */ 'm', 'o', 'v', 'z', 'b', 'q', 9, 0, /* 1302 */ 'a', 'd', 'c', 'q', 9, 0, /* 1308 */ 'd', 'e', 'c', 'q', 9, 0, /* 1314 */ 'i', 'n', 'c', 'q', 9, 0, /* 1320 */ 'b', 't', 'c', 'q', 9, 0, /* 1326 */ 'x', 'a', 'd', 'd', 'q', 9, 0, /* 1333 */ 'r', 'd', 's', 'e', 'e', 'd', 'q', 9, 0, /* 1342 */ 's', 'h', 'l', 'd', 'q', 9, 0, /* 1349 */ 'r', 'd', 'r', 'a', 'n', 'd', 'q', 9, 0, /* 1358 */ 's', 'h', 'r', 'd', 'q', 9, 0, /* 1365 */ 'c', 'm', 'o', 'v', 'a', 'e', 'q', 9, 0, /* 1374 */ 'c', 'm', 'o', 'v', 'b', 'e', 'q', 9, 0, /* 1383 */ 'c', 'm', 'o', 'v', 'g', 'e', 'q', 9, 0, /* 1392 */ 'c', 'm', 'o', 'v', 'l', 'e', 'q', 9, 0, /* 1401 */ 'c', 'm', 'o', 'v', 'n', 'e', 'q', 9, 0, /* 1410 */ 'r', 'd', 'f', 's', 'b', 'a', 's', 'e', 'q', 9, 0, /* 1421 */ 'w', 'r', 'f', 's', 'b', 'a', 's', 'e', 'q', 9, 0, /* 1432 */ 'r', 'd', 'g', 's', 'b', 'a', 's', 'e', 'q', 9, 0, /* 1443 */ 'w', 'r', 'g', 's', 'b', 'a', 's', 'e', 'q', 9, 0, /* 1454 */ 'x', 's', 'a', 'v', 'e', 'q', 9, 0, /* 1462 */ 'c', 'm', 'o', 'v', 'e', 'q', 9, 0, /* 1470 */ 'b', 's', 'f', 'q', 9, 0, /* 1476 */ 'n', 'e', 'g', 'q', 9, 0, /* 1482 */ 'c', 'm', 'p', 'x', 'c', 'h', 'g', 'q', 9, 0, /* 1492 */ 'c', 'm', 'o', 'v', 'g', 'q', 9, 0, /* 1500 */ 'p', 'u', 's', 'h', 'q', 9, 0, /* 1507 */ 'b', 'z', 'h', 'i', 'q', 9, 0, /* 1514 */ 'b', 'l', 's', 'i', 'q', 9, 0, /* 1521 */ 'b', 'l', 's', 'm', 's', 'k', 'q', 9, 0, /* 1530 */ 'r', 'c', 'l', 'q', 9, 0, /* 1536 */ 's', 'h', 'l', 'q', 9, 0, /* 1542 */ 'c', 'a', 'l', 'l', 'q', 9, 0, /* 1549 */ 'r', 'o', 'l', 'q', 9, 0, /* 1555 */ 'l', 's', 'l', 'q', 9, 0, /* 1561 */ 'm', 'o', 'v', 's', 'l', 'q', 9, 0, /* 1569 */ 'i', 'm', 'u', 'l', 'q', 9, 0, /* 1576 */ 'c', 'm', 'o', 'v', 'l', 'q', 9, 0, /* 1584 */ 'a', 'n', 'd', 'n', 'q', 9, 0, /* 1591 */ 'c', 'm', 'o', 'v', 'n', 'o', 'q', 9, 0, /* 1600 */ 'c', 'm', 'o', 'v', 'o', 'q', 9, 0, /* 1608 */ 'b', 's', 'w', 'a', 'p', 'q', 9, 0, /* 1616 */ 'p', 'd', 'e', 'p', 'q', 9, 0, /* 1623 */ 'c', 'm', 'p', 'q', 9, 0, /* 1629 */ 'c', 'm', 'o', 'v', 'n', 'p', 'q', 9, 0, /* 1638 */ 'p', 'o', 'p', 'q', 9, 0, /* 1644 */ 'c', 'm', 'o', 'v', 'p', 'q', 9, 0, /* 1652 */ 'l', 'a', 'r', 'q', 9, 0, /* 1658 */ 's', 'a', 'r', 'q', 9, 0, /* 1664 */ 'r', 'c', 'r', 'q', 9, 0, /* 1670 */ 's', 'h', 'r', 'q', 9, 0, /* 1676 */ 'r', 'o', 'r', 'q', 9, 0, /* 1682 */ 'x', 'r', 's', 't', 'o', 'r', 'q', 9, 0, /* 1691 */ 'x', 'o', 'r', 'q', 9, 0, /* 1697 */ 'b', 's', 'r', 'q', 9, 0, /* 1703 */ 'b', 'l', 's', 'r', 'q', 9, 0, /* 1710 */ 'b', 't', 'r', 'q', 9, 0, /* 1716 */ 's', 't', 'r', 'q', 9, 0, /* 1722 */ 'b', 'e', 'x', 't', 'r', 'q', 9, 0, /* 1730 */ 's', 'c', 'a', 's', 'q', 9, 0, /* 1737 */ 'm', 'o', 'v', 'a', 'b', 's', 'q', 9, 0, /* 1746 */ 'l', 'o', 'd', 's', 'q', 9, 0, /* 1753 */ 'l', 'f', 's', 'q', 9, 0, /* 1759 */ 'l', 'g', 's', 'q', 9, 0, /* 1765 */ 'c', 'm', 'o', 'v', 'n', 's', 'q', 9, 0, /* 1774 */ 'c', 'm', 'p', 's', 'q', 9, 0, /* 1781 */ 'l', 's', 's', 'q', 9, 0, /* 1787 */ 'b', 't', 's', 'q', 9, 0, /* 1793 */ 'c', 'm', 'o', 'v', 's', 'q', 9, 0, /* 1801 */ 'b', 't', 'q', 9, 0, /* 1806 */ 'l', 'g', 'd', 't', 'q', 9, 0, /* 1813 */ 's', 'g', 'd', 't', 'q', 9, 0, /* 1820 */ 'l', 'i', 'd', 't', 'q', 9, 0, /* 1827 */ 's', 'i', 'd', 't', 'q', 9, 0, /* 1834 */ 's', 'l', 'd', 't', 'q', 9, 0, /* 1841 */ 'l', 'r', 'e', 't', 'q', 9, 0, /* 1848 */ 'l', 'z', 'c', 'n', 't', 'q', 9, 0, /* 1856 */ 't', 'z', 'c', 'n', 't', 'q', 9, 0, /* 1864 */ 'n', 'o', 't', 'q', 9, 0, /* 1870 */ 'x', 's', 'a', 'v', 'e', 'o', 'p', 't', 'q', 9, 0, /* 1881 */ 't', 'e', 's', 't', 'q', 9, 0, /* 1888 */ 'p', 'e', 'x', 't', 'q', 9, 0, /* 1895 */ 'i', 'd', 'i', 'v', 'q', 9, 0, /* 1902 */ 'm', 'o', 'v', 'q', 9, 0, /* 1908 */ 's', 'm', 's', 'w', 'q', 9, 0, /* 1915 */ 'm', 'o', 'v', 's', 'w', 'q', 9, 0, /* 1923 */ 'm', 'o', 'v', 'z', 'w', 'q', 9, 0, /* 1931 */ 'a', 'd', 'c', 'x', 'q', 9, 0, /* 1938 */ 's', 'h', 'l', 'x', 'q', 9, 0, /* 1945 */ 'm', 'u', 'l', 'x', 'q', 9, 0, /* 1952 */ 'a', 'd', 'o', 'x', 'q', 9, 0, /* 1959 */ 's', 'a', 'r', 'x', 'q', 9, 0, /* 1966 */ 's', 'h', 'r', 'x', 'q', 9, 0, /* 1973 */ 'r', 'o', 'r', 'x', 'q', 9, 0, /* 1980 */ 'e', 'n', 't', 'e', 'r', 9, 0, /* 1987 */ 'x', 'r', 's', 't', 'o', 'r', 9, 0, /* 1995 */ 'v', 'e', 'r', 'r', 9, 0, /* 2001 */ 'b', 'e', 'x', 't', 'r', 9, 0, /* 2008 */ 'b', 'l', 'c', 's', 9, 0, /* 2014 */ 'j', 's', 9, 0, /* 2018 */ 'j', 'n', 's', 9, 0, /* 2023 */ 's', 'e', 't', 'n', 's', 9, 0, /* 2030 */ 's', 'e', 't', 's', 9, 0, /* 2036 */ 'i', 'n', 't', 9, 0, /* 2041 */ 'x', 's', 'a', 'v', 'e', 'o', 'p', 't', 9, 0, /* 2051 */ 'l', 'e', 'a', 'w', 9, 0, /* 2057 */ 'c', 'm', 'o', 'v', 'a', 'w', 9, 0, /* 2065 */ 's', 'b', 'b', 'w', 9, 0, /* 2071 */ 'm', 'o', 'v', 's', 'b', 'w', 9, 0, /* 2079 */ 's', 'u', 'b', 'w', 9, 0, /* 2085 */ 'c', 'm', 'o', 'v', 'b', 'w', 9, 0, /* 2093 */ 'm', 'o', 'v', 'z', 'b', 'w', 9, 0, /* 2101 */ 'a', 'd', 'c', 'w', 9, 0, /* 2107 */ 'd', 'e', 'c', 'w', 9, 0, /* 2113 */ 'i', 'n', 'c', 'w', 9, 0, /* 2119 */ 'b', 't', 'c', 'w', 9, 0, /* 2125 */ 'x', 'a', 'd', 'd', 'w', 9, 0, /* 2132 */ 'r', 'd', 's', 'e', 'e', 'd', 'w', 9, 0, /* 2141 */ 's', 'h', 'l', 'd', 'w', 9, 0, /* 2148 */ 'r', 'd', 'r', 'a', 'n', 'd', 'w', 9, 0, /* 2157 */ 's', 'h', 'r', 'd', 'w', 9, 0, /* 2164 */ 'c', 'm', 'o', 'v', 'a', 'e', 'w', 9, 0, /* 2173 */ 'c', 'm', 'o', 'v', 'b', 'e', 'w', 9, 0, /* 2182 */ 'c', 'm', 'o', 'v', 'g', 'e', 'w', 9, 0, /* 2191 */ 'c', 'm', 'o', 'v', 'l', 'e', 'w', 9, 0, /* 2200 */ 'c', 'm', 'o', 'v', 'n', 'e', 'w', 9, 0, /* 2209 */ 'c', 'm', 'o', 'v', 'e', 'w', 9, 0, /* 2217 */ 'b', 's', 'f', 'w', 9, 0, /* 2223 */ 'n', 'e', 'g', 'w', 9, 0, /* 2229 */ 'c', 'm', 'p', 'x', 'c', 'h', 'g', 'w', 9, 0, /* 2239 */ 'c', 'm', 'o', 'v', 'g', 'w', 9, 0, /* 2247 */ 'p', 'u', 's', 'h', 'w', 9, 0, /* 2254 */ 'r', 'c', 'l', 'w', 9, 0, /* 2260 */ 's', 'h', 'l', 'w', 9, 0, /* 2266 */ 'l', 'c', 'a', 'l', 'l', 'w', 9, 0, /* 2274 */ 'r', 'o', 'l', 'w', 9, 0, /* 2280 */ 'l', 's', 'l', 'w', 9, 0, /* 2286 */ 'i', 'm', 'u', 'l', 'w', 9, 0, /* 2293 */ 'c', 'm', 'o', 'v', 'l', 'w', 9, 0, /* 2301 */ 'i', 'n', 'w', 9, 0, /* 2306 */ 'c', 'm', 'o', 'v', 'n', 'o', 'w', 9, 0, /* 2315 */ 'c', 'm', 'o', 'v', 'o', 'w', 9, 0, /* 2323 */ 'c', 'm', 'p', 'w', 9, 0, /* 2329 */ 'l', 'j', 'm', 'p', 'w', 9, 0, /* 2336 */ 'c', 'm', 'o', 'v', 'n', 'p', 'w', 9, 0, /* 2345 */ 'n', 'o', 'p', 'w', 9, 0, /* 2351 */ 'p', 'o', 'p', 'w', 9, 0, /* 2357 */ 'c', 'm', 'o', 'v', 'p', 'w', 9, 0, /* 2365 */ 'l', 'a', 'r', 'w', 9, 0, /* 2371 */ 's', 'a', 'r', 'w', 9, 0, /* 2377 */ 'r', 'c', 'r', 'w', 9, 0, /* 2383 */ 'v', 'e', 'r', 'w', 9, 0, /* 2389 */ 's', 'h', 'r', 'w', 9, 0, /* 2395 */ 'r', 'o', 'r', 'w', 9, 0, /* 2401 */ 'x', 'o', 'r', 'w', 9, 0, /* 2407 */ 'b', 's', 'r', 'w', 9, 0, /* 2413 */ 'b', 't', 'r', 'w', 9, 0, /* 2419 */ 'l', 't', 'r', 'w', 9, 0, /* 2425 */ 's', 't', 'r', 'w', 9, 0, /* 2431 */ 's', 'c', 'a', 's', 'w', 9, 0, /* 2438 */ 'm', 'o', 'v', 'a', 'b', 's', 'w', 9, 0, /* 2447 */ 'l', 'd', 's', 'w', 9, 0, /* 2453 */ 'l', 'o', 'd', 's', 'w', 9, 0, /* 2460 */ 'l', 'e', 's', 'w', 9, 0, /* 2466 */ 'l', 'f', 's', 'w', 9, 0, /* 2472 */ 'l', 'g', 's', 'w', 9, 0, /* 2478 */ 'c', 'm', 'o', 'v', 'n', 's', 'w', 9, 0, /* 2487 */ 'c', 'm', 'p', 's', 'w', 9, 0, /* 2494 */ 'l', 's', 's', 'w', 9, 0, /* 2500 */ 'b', 't', 's', 'w', 9, 0, /* 2506 */ 'o', 'u', 't', 's', 'w', 9, 0, /* 2513 */ 'c', 'm', 'o', 'v', 's', 'w', 9, 0, /* 2521 */ 'b', 't', 'w', 9, 0, /* 2526 */ 'l', 'g', 'd', 't', 'w', 9, 0, /* 2533 */ 's', 'g', 'd', 't', 'w', 9, 0, /* 2540 */ 'l', 'i', 'd', 't', 'w', 9, 0, /* 2547 */ 's', 'i', 'd', 't', 'w', 9, 0, /* 2554 */ 'l', 'l', 'd', 't', 'w', 9, 0, /* 2561 */ 's', 'l', 'd', 't', 'w', 9, 0, /* 2568 */ 'l', 'r', 'e', 't', 'w', 9, 0, /* 2575 */ 'l', 'z', 'c', 'n', 't', 'w', 9, 0, /* 2583 */ 't', 'z', 'c', 'n', 't', 'w', 9, 0, /* 2591 */ 'n', 'o', 't', 'w', 9, 0, /* 2597 */ 't', 'e', 's', 't', 'w', 9, 0, /* 2604 */ 'i', 'd', 'i', 'v', 'w', 9, 0, /* 2611 */ 'm', 'o', 'v', 'w', 9, 0, /* 2617 */ 'l', 'm', 's', 'w', 'w', 9, 0, /* 2624 */ 's', 'm', 's', 'w', 'w', 9, 0, /* 2631 */ 'j', 'e', 'c', 'x', 'z', 9, 0, /* 2638 */ 'j', 'c', 'x', 'z', 9, 0, /* 2644 */ 'j', 'r', 'c', 'x', 'z', 9, 0, /* 2651 */ 'm', 'o', 'v', 'a', 'b', 's', 'b', 9, '%', 'a', 'l', ',', 32, 0, /* 2665 */ 's', 't', 'o', 's', 'b', 9, '%', 'a', 'l', ',', 32, 0, /* 2677 */ 'o', 'u', 't', 'b', 9, '%', 'a', 'l', ',', 32, 0, /* 2688 */ 'm', 'o', 'v', 'b', 9, '%', 'a', 'l', ',', 32, 0, /* 2699 */ 'r', 'c', 'l', 'b', 9, '%', 'c', 'l', ',', 32, 0, /* 2710 */ 's', 'h', 'l', 'b', 9, '%', 'c', 'l', ',', 32, 0, /* 2721 */ 'r', 'o', 'l', 'b', 9, '%', 'c', 'l', ',', 32, 0, /* 2732 */ 's', 'a', 'r', 'b', 9, '%', 'c', 'l', ',', 32, 0, /* 2743 */ 'r', 'c', 'r', 'b', 9, '%', 'c', 'l', ',', 32, 0, /* 2754 */ 's', 'h', 'r', 'b', 9, '%', 'c', 'l', ',', 32, 0, /* 2765 */ 'r', 'o', 'r', 'b', 9, '%', 'c', 'l', ',', 32, 0, /* 2776 */ 's', 'h', 'l', 'd', 'l', 9, '%', 'c', 'l', ',', 32, 0, /* 2788 */ 's', 'h', 'r', 'd', 'l', 9, '%', 'c', 'l', ',', 32, 0, /* 2800 */ 'r', 'c', 'l', 'l', 9, '%', 'c', 'l', ',', 32, 0, /* 2811 */ 's', 'h', 'l', 'l', 9, '%', 'c', 'l', ',', 32, 0, /* 2822 */ 'r', 'o', 'l', 'l', 9, '%', 'c', 'l', ',', 32, 0, /* 2833 */ 's', 'a', 'r', 'l', 9, '%', 'c', 'l', ',', 32, 0, /* 2844 */ 'r', 'c', 'r', 'l', 9, '%', 'c', 'l', ',', 32, 0, /* 2855 */ 's', 'h', 'r', 'l', 9, '%', 'c', 'l', ',', 32, 0, /* 2866 */ 'r', 'o', 'r', 'l', 9, '%', 'c', 'l', ',', 32, 0, /* 2877 */ 's', 'h', 'l', 'd', 'q', 9, '%', 'c', 'l', ',', 32, 0, /* 2889 */ 's', 'h', 'r', 'd', 'q', 9, '%', 'c', 'l', ',', 32, 0, /* 2901 */ 'r', 'c', 'l', 'q', 9, '%', 'c', 'l', ',', 32, 0, /* 2912 */ 's', 'h', 'l', 'q', 9, '%', 'c', 'l', ',', 32, 0, /* 2923 */ 'r', 'o', 'l', 'q', 9, '%', 'c', 'l', ',', 32, 0, /* 2934 */ 's', 'a', 'r', 'q', 9, '%', 'c', 'l', ',', 32, 0, /* 2945 */ 'r', 'c', 'r', 'q', 9, '%', 'c', 'l', ',', 32, 0, /* 2956 */ 's', 'h', 'r', 'q', 9, '%', 'c', 'l', ',', 32, 0, /* 2967 */ 'r', 'o', 'r', 'q', 9, '%', 'c', 'l', ',', 32, 0, /* 2978 */ 's', 'h', 'l', 'd', 'w', 9, '%', 'c', 'l', ',', 32, 0, /* 2990 */ 's', 'h', 'r', 'd', 'w', 9, '%', 'c', 'l', ',', 32, 0, /* 3002 */ 'r', 'c', 'l', 'w', 9, '%', 'c', 'l', ',', 32, 0, /* 3013 */ 's', 'h', 'l', 'w', 9, '%', 'c', 'l', ',', 32, 0, /* 3024 */ 'r', 'o', 'l', 'w', 9, '%', 'c', 'l', ',', 32, 0, /* 3035 */ 's', 'a', 'r', 'w', 9, '%', 'c', 'l', ',', 32, 0, /* 3046 */ 'r', 'c', 'r', 'w', 9, '%', 'c', 'l', ',', 32, 0, /* 3057 */ 's', 'h', 'r', 'w', 9, '%', 'c', 'l', ',', 32, 0, /* 3068 */ 'r', 'o', 'r', 'w', 9, '%', 'c', 'l', ',', 32, 0, /* 3079 */ 'm', 'o', 'v', 'a', 'b', 's', 'w', 9, '%', 'a', 'x', ',', 32, 0, /* 3093 */ 's', 't', 'o', 's', 'w', 9, '%', 'a', 'x', ',', 32, 0, /* 3105 */ 'o', 'u', 't', 'w', 9, '%', 'a', 'x', ',', 32, 0, /* 3116 */ 'm', 'o', 'v', 'w', 9, '%', 'a', 'x', ',', 32, 0, /* 3127 */ 'm', 'o', 'v', 'a', 'b', 's', 'l', 9, '%', 'e', 'a', 'x', ',', 32, 0, /* 3142 */ 's', 't', 'o', 's', 'l', 9, '%', 'e', 'a', 'x', ',', 32, 0, /* 3155 */ 'o', 'u', 't', 'l', 9, '%', 'e', 'a', 'x', ',', 32, 0, /* 3167 */ 'm', 'o', 'v', 'l', 9, '%', 'e', 'a', 'x', ',', 32, 0, /* 3179 */ 'm', 'o', 'v', 'a', 'b', 's', 'q', 9, '%', 'r', 'a', 'x', ',', 32, 0, /* 3194 */ 's', 't', 'o', 's', 'q', 9, '%', 'r', 'a', 'x', ',', 32, 0, /* 3207 */ 'i', 'n', 's', 'b', 9, '%', 'd', 'x', ',', 32, 0, /* 3218 */ 'i', 'n', 's', 'l', 9, '%', 'd', 'x', ',', 32, 0, /* 3229 */ 'i', 'n', 's', 'w', 9, '%', 'd', 'x', ',', 32, 0, /* 3240 */ '#', 'V', 'A', 'A', 'R', 'G', '_', '6', '4', 32, 0, /* 3251 */ 'r', 'e', 't', 9, '#', 'e', 'h', '_', 'r', 'e', 't', 'u', 'r', 'n', ',', 32, 'a', 'd', 'd', 'r', ':', 32, 0, /* 3274 */ '#', 'V', 'A', 'S', 'T', 'A', 'R', 'T', '_', 'S', 'A', 'V', 'E', '_', 'X', 'M', 'M', '_', 'R', 'E', 'G', 'S', 32, 0, /* 3298 */ '#', 'C', 'M', 'O', 'V', '_', 'G', 'R', '3', '2', '*', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0, /* 3318 */ '#', 'C', 'M', 'O', 'V', '_', 'G', 'R', '1', '6', '*', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0, /* 3338 */ '#', 'C', 'M', 'O', 'V', '_', 'R', 'F', 'P', '8', '0', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0, /* 3358 */ '#', 'A', 'T', 'O', 'M', 'S', 'U', 'B', '6', '4', '3', '2', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0, /* 3379 */ '#', 'A', 'T', 'O', 'M', 'A', 'D', 'D', '6', '4', '3', '2', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0, /* 3400 */ '#', 'A', 'T', 'O', 'M', 'A', 'N', 'D', '6', '4', '3', '2', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0, /* 3421 */ '#', 'A', 'T', 'O', 'M', 'N', 'A', 'N', 'D', '6', '4', '3', '2', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0, /* 3443 */ '#', 'A', 'T', 'O', 'M', 'M', 'I', 'N', '6', '4', '3', '2', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0, /* 3464 */ '#', 'A', 'T', 'O', 'M', 'U', 'M', 'I', 'N', '6', '4', '3', '2', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0, /* 3486 */ '#', 'A', 'T', 'O', 'M', 'S', 'W', 'A', 'P', '6', '4', '3', '2', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0, /* 3508 */ '#', 'A', 'T', 'O', 'M', 'O', 'R', '6', '4', '3', '2', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0, /* 3528 */ '#', 'A', 'T', 'O', 'M', 'X', 'O', 'R', '6', '4', '3', '2', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0, /* 3549 */ '#', 'A', 'T', 'O', 'M', 'M', 'A', 'X', '6', '4', '3', '2', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0, /* 3570 */ '#', 'A', 'T', 'O', 'M', 'U', 'M', 'A', 'X', '6', '4', '3', '2', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0, /* 3592 */ '#', 'A', 'T', 'O', 'M', 'A', 'N', 'D', '3', '2', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0, /* 3611 */ '#', 'A', 'T', 'O', 'M', 'N', 'A', 'N', 'D', '3', '2', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0, /* 3631 */ '#', 'C', 'M', 'O', 'V', '_', 'V', '4', 'F', '3', '2', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0, /* 3651 */ '#', 'C', 'M', 'O', 'V', '_', 'V', '1', '6', 'F', '3', '2', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0, /* 3672 */ '#', 'C', 'M', 'O', 'V', '_', 'V', '8', 'F', '3', '2', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0, /* 3692 */ '#', 'A', 'T', 'O', 'M', 'M', 'I', 'N', '3', '2', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0, /* 3711 */ '#', 'A', 'T', 'O', 'M', 'U', 'M', 'I', 'N', '3', '2', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0, /* 3731 */ '#', 'C', 'M', 'O', 'V', '_', 'R', 'F', 'P', '3', '2', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0, /* 3751 */ '#', 'C', 'M', 'O', 'V', '_', 'F', 'R', '3', '2', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0, /* 3770 */ '#', 'A', 'T', 'O', 'M', 'O', 'R', '3', '2', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0, /* 3788 */ '#', 'A', 'T', 'O', 'M', 'X', 'O', 'R', '3', '2', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0, /* 3807 */ '#', 'A', 'T', 'O', 'M', 'M', 'A', 'X', '3', '2', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0, /* 3826 */ '#', 'A', 'T', 'O', 'M', 'U', 'M', 'A', 'X', '3', '2', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0, /* 3846 */ '#', 'A', 'T', 'O', 'M', 'A', 'N', 'D', '6', '4', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0, /* 3865 */ '#', 'A', 'T', 'O', 'M', 'N', 'A', 'N', 'D', '6', '4', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0, /* 3885 */ '#', 'C', 'M', 'O', 'V', '_', 'V', '2', 'F', '6', '4', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0, /* 3905 */ '#', 'C', 'M', 'O', 'V', '_', 'V', '4', 'F', '6', '4', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0, /* 3925 */ '#', 'C', 'M', 'O', 'V', '_', 'V', '8', 'F', '6', '4', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0, /* 3945 */ '#', 'C', 'M', 'O', 'V', '_', 'V', '2', 'I', '6', '4', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0, /* 3965 */ '#', 'C', 'M', 'O', 'V', '_', 'V', '4', 'I', '6', '4', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0, /* 3985 */ '#', 'C', 'M', 'O', 'V', '_', 'V', '8', 'I', '6', '4', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0, /* 4005 */ '#', 'A', 'T', 'O', 'M', 'M', 'I', 'N', '6', '4', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0, /* 4024 */ '#', 'A', 'T', 'O', 'M', 'U', 'M', 'I', 'N', '6', '4', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0, /* 4044 */ '#', 'C', 'M', 'O', 'V', '_', 'R', 'F', 'P', '6', '4', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0, /* 4064 */ '#', 'C', 'M', 'O', 'V', '_', 'F', 'R', '6', '4', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0, /* 4083 */ '#', 'A', 'T', 'O', 'M', 'O', 'R', '6', '4', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0, /* 4101 */ '#', 'A', 'T', 'O', 'M', 'X', 'O', 'R', '6', '4', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0, /* 4120 */ '#', 'A', 'T', 'O', 'M', 'M', 'A', 'X', '6', '4', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0, /* 4139 */ '#', 'A', 'T', 'O', 'M', 'U', 'M', 'A', 'X', '6', '4', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0, /* 4159 */ '#', 'A', 'T', 'O', 'M', 'A', 'N', 'D', '1', '6', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0, /* 4178 */ '#', 'A', 'T', 'O', 'M', 'N', 'A', 'N', 'D', '1', '6', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0, /* 4198 */ '#', 'A', 'T', 'O', 'M', 'M', 'I', 'N', '1', '6', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0, /* 4217 */ '#', 'A', 'T', 'O', 'M', 'U', 'M', 'I', 'N', '1', '6', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0, /* 4237 */ '#', 'A', 'T', 'O', 'M', 'O', 'R', '1', '6', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0, /* 4255 */ '#', 'A', 'T', 'O', 'M', 'X', 'O', 'R', '1', '6', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0, /* 4274 */ '#', 'A', 'T', 'O', 'M', 'M', 'A', 'X', '1', '6', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0, /* 4293 */ '#', 'A', 'T', 'O', 'M', 'U', 'M', 'A', 'X', '1', '6', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0, /* 4313 */ '#', 'A', 'T', 'O', 'M', 'A', 'N', 'D', '8', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0, /* 4331 */ '#', 'A', 'T', 'O', 'M', 'N', 'A', 'N', 'D', '8', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0, /* 4350 */ '#', 'A', 'T', 'O', 'M', 'M', 'I', 'N', '8', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0, /* 4368 */ '#', 'A', 'T', 'O', 'M', 'U', 'M', 'I', 'N', '8', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0, /* 4387 */ '#', 'C', 'M', 'O', 'V', '_', 'G', 'R', '8', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0, /* 4405 */ '#', 'A', 'T', 'O', 'M', 'O', 'R', '8', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0, /* 4422 */ '#', 'A', 'T', 'O', 'M', 'X', 'O', 'R', '8', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0, /* 4440 */ '#', 'A', 'T', 'O', 'M', 'M', 'A', 'X', '8', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0, /* 4458 */ '#', 'A', 'T', 'O', 'M', 'U', 'M', 'A', 'X', '8', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0, /* 4477 */ '#', 'A', 'C', 'Q', 'U', 'I', 'R', 'E', '_', 'M', 'O', 'V', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0, /* 4498 */ '#', 'R', 'E', 'L', 'E', 'A', 'S', 'E', '_', 'M', 'O', 'V', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0, /* 4519 */ 'l', 'c', 'a', 'l', 'l', 'l', 9, '*', 0, /* 4528 */ 'l', 'j', 'm', 'p', 'l', 9, '*', 0, /* 4536 */ 'l', 'c', 'a', 'l', 'l', 'q', 9, '*', 0, /* 4545 */ 'l', 'j', 'm', 'p', 'q', 9, '*', 0, /* 4553 */ 'l', 'c', 'a', 'l', 'l', 'w', 9, '*', 0, /* 4562 */ 'l', 'j', 'm', 'p', 'w', 9, '*', 0, /* 4570 */ 'x', 's', 'h', 'a', '1', 0, /* 4576 */ 'i', 'n', 't', '1', 0, /* 4581 */ '#', 'E', 'H', '_', 'S', 'J', 'L', 'J', '_', 'L', 'O', 'N', 'G', 'J', 'M', 'P', '3', '2', 0, /* 4600 */ '#', 'E', 'H', '_', 'S', 'J', 'L', 'J', '_', 'S', 'E', 'T', 'J', 'M', 'P', '3', '2', 0, /* 4618 */ '#', 32, 'T', 'L', 'S', 'C', 'a', 'l', 'l', '_', '3', '2', 0, /* 4631 */ '#', 32, 'T', 'L', 'S', '_', 'a', 'd', 'd', 'r', '3', '2', 0, /* 4644 */ '#', 32, 'T', 'L', 'S', '_', 'b', 'a', 's', 'e', '_', 'a', 'd', 'd', 'r', '3', '2', 0, /* 4662 */ 'u', 'd', '2', 0, /* 4666 */ 'i', 'n', 't', '3', 0, /* 4671 */ '#', 'E', 'H', '_', 'S', 'J', 'L', 'J', '_', 'L', 'O', 'N', 'G', 'J', 'M', 'P', '6', '4', 0, /* 4690 */ '#', 'E', 'H', '_', 'S', 'J', 'L', 'J', '_', 'S', 'E', 'T', 'J', 'M', 'P', '6', '4', 0, /* 4708 */ '#', 32, 'T', 'L', 'S', 'C', 'a', 'l', 'l', '_', '6', '4', 0, /* 4721 */ '#', 32, 'T', 'L', 'S', '_', 'a', 'd', 'd', 'r', '6', '4', 0, /* 4734 */ '#', 32, 'T', 'L', 'S', '_', 'b', 'a', 's', 'e', '_', 'a', 'd', 'd', 'r', '6', '4', 0, /* 4752 */ 'r', 'e', 'x', '6', '4', 0, /* 4758 */ 'd', 'a', 't', 'a', '1', '6', 0, /* 4765 */ 'x', 's', 'h', 'a', '2', '5', '6', 0, /* 4773 */ 'L', 'I', 'F', 'E', 'T', 'I', 'M', 'E', '_', 'E', 'N', 'D', 0, /* 4786 */ 'B', 'U', 'N', 'D', 'L', 'E', 0, /* 4793 */ 'D', 'B', 'G', '_', 'V', 'A', 'L', 'U', 'E', 0, /* 4803 */ '#', 'A', 'D', 'J', 'C', 'A', 'L', 'L', 'S', 'T', 'A', 'C', 'K', 'D', 'O', 'W', 'N', 0, /* 4821 */ '#', 'A', 'D', 'J', 'C', 'A', 'L', 'L', 'S', 'T', 'A', 'C', 'K', 'U', 'P', 0, /* 4837 */ '#', 'M', 'E', 'M', 'B', 'A', 'R', 'R', 'I', 'E', 'R', 0, /* 4849 */ 'L', 'I', 'F', 'E', 'T', 'I', 'M', 'E', '_', 'S', 'T', 'A', 'R', 'T', 0, /* 4864 */ 'a', 'a', 'a', 0, /* 4868 */ 'd', 'a', 'a', 0, /* 4872 */ 'u', 'd', '2', 'b', 0, /* 4877 */ 'x', 'c', 'r', 'y', 'p', 't', 'e', 'c', 'b', 0, /* 4887 */ 'x', 'c', 'r', 'y', 'p', 't', 'c', 'f', 'b', 0, /* 4897 */ 'x', 'c', 'r', 'y', 'p', 't', 'o', 'f', 'b', 0, /* 4907 */ 'r', 'e', 'p', ';', 's', 't', 'o', 's', 'b', 0, /* 4917 */ 'r', 'e', 'p', ';', 'm', 'o', 'v', 's', 'b', 0, /* 4927 */ 'x', 'l', 'a', 't', 'b', 0, /* 4933 */ 'c', 'l', 'a', 'c', 0, /* 4938 */ 's', 't', 'a', 'c', 0, /* 4943 */ 'x', 'c', 'r', 'y', 'p', 't', 'c', 'b', 'c', 0, /* 4953 */ 'g', 'e', 't', 's', 'e', 'c', 0, /* 4960 */ 's', 'a', 'l', 'c', 0, /* 4965 */ 'c', 'l', 'c', 0, /* 4969 */ 'c', 'm', 'c', 0, /* 4973 */ 'r', 'd', 'p', 'm', 'c', 0, /* 4979 */ 'r', 'd', 't', 's', 'c', 0, /* 4985 */ 's', 't', 'c', 0, /* 4989 */ 'c', 'p', 'u', 'i', 'd', 0, /* 4995 */ 'c', 'l', 'd', 0, /* 4999 */ 'c', 'l', 't', 'd', 0, /* 5004 */ 's', 't', 'd', 0, /* 5008 */ 'c', 'w', 't', 'd', 0, /* 5013 */ 'w', 'b', 'i', 'n', 'v', 'd', 0, /* 5020 */ 'r', 'e', 'p', 'n', 'e', 0, /* 5026 */ 'x', 's', 't', 'o', 'r', 'e', 0, /* 5033 */ 'l', 'e', 'a', 'v', 'e', 0, /* 5039 */ 'l', 'a', 'h', 'f', 0, /* 5044 */ 's', 'a', 'h', 'f', 0, /* 5049 */ 'c', 'l', 'i', 0, /* 5053 */ 's', 't', 'i', 0, /* 5057 */ '#', 32, 'w', 'i', 'n', '3', '2', 32, 'f', 'p', 't', 'o', 'u', 'i', 0, /* 5072 */ 'l', 'o', 'c', 'k', 0, /* 5077 */ 'i', 'n', 'b', 9, '%', 'd', 'x', ',', 32, '%', 'a', 'l', 0, /* 5090 */ 'p', 'u', 's', 'h', 'a', 'l', 0, /* 5097 */ 'p', 'o', 'p', 'a', 'l', 0, /* 5103 */ 'p', 'u', 's', 'h', 'f', 'l', 0, /* 5110 */ 'p', 'o', 'p', 'f', 'l', 0, /* 5116 */ 's', 'y', 's', 'c', 'a', 'l', 'l', 0, /* 5124 */ 'r', 'e', 'p', ';', 's', 't', 'o', 's', 'l', 0, /* 5134 */ 'r', 'e', 'p', ';', 'm', 'o', 'v', 's', 'l', 0, /* 5144 */ 'i', 'r', 'e', 't', 'l', 0, /* 5150 */ 'l', 'r', 'e', 't', 'l', 0, /* 5156 */ 's', 'y', 's', 'r', 'e', 't', 'l', 0, /* 5164 */ 's', 'y', 's', 'e', 'x', 'i', 't', 'l', 0, /* 5173 */ 'c', 'w', 't', 'l', 0, /* 5178 */ 'm', 'o', 'n', 't', 'm', 'u', 'l', 0, /* 5186 */ 'f', 's', 'e', 't', 'p', 'm', 0, /* 5193 */ 'r', 's', 'm', 0, /* 5197 */ '#', 32, 'd', 'y', 'n', 'a', 'm', 'i', 'c', 32, 's', 't', 'a', 'c', 'k', 32, 'a', 'l', 'l', 'o', 'c', 'a', 't', 'i', 'o', 'n', 0, /* 5224 */ 'i', 'n', 't', 'o', 0, /* 5229 */ 'c', 'q', 't', 'o', 0, /* 5234 */ 'r', 'd', 't', 's', 'c', 'p', 0, /* 5241 */ 'r', 'e', 'p', 0, /* 5245 */ 'n', 'o', 'p', 0, /* 5249 */ 'p', 'u', 's', 'h', 'f', 'q', 0, /* 5256 */ 'p', 'o', 'p', 'f', 'q', 0, /* 5262 */ 'r', 'e', 'p', ';', 's', 't', 'o', 's', 'q', 0, /* 5272 */ 'r', 'e', 'p', ';', 'm', 'o', 'v', 's', 'q', 0, /* 5282 */ 'i', 'r', 'e', 't', 'q', 0, /* 5288 */ 'l', 'r', 'e', 't', 'q', 0, /* 5294 */ 's', 'y', 's', 'r', 'e', 't', 'q', 0, /* 5302 */ 's', 'y', 's', 'e', 'x', 'i', 't', 'q', 0, /* 5311 */ 'c', 'l', 't', 'q', 0, /* 5316 */ 's', 'y', 's', 'e', 'n', 't', 'e', 'r', 0, /* 5325 */ 'r', 'd', 'm', 's', 'r', 0, /* 5331 */ 'w', 'r', 'm', 's', 'r', 0, /* 5337 */ 'x', 'c', 'r', 'y', 'p', 't', 'c', 't', 'r', 0, /* 5347 */ 'a', 'a', 's', 0, /* 5351 */ 'd', 'a', 's', 0, /* 5355 */ 'p', 'u', 's', 'h', 'l', 9, '%', 'c', 's', 0, /* 5365 */ 'p', 'u', 's', 'h', 'w', 9, '%', 'c', 's', 0, /* 5375 */ 'p', 'u', 's', 'h', 'l', 9, '%', 'd', 's', 0, /* 5385 */ 'p', 'o', 'p', 'l', 9, '%', 'd', 's', 0, /* 5394 */ 'p', 'u', 's', 'h', 'w', 9, '%', 'd', 's', 0, /* 5404 */ 'p', 'o', 'p', 'w', 9, '%', 'd', 's', 0, /* 5413 */ 'p', 'u', 's', 'h', 'l', 9, '%', 'e', 's', 0, /* 5423 */ 'p', 'o', 'p', 'l', 9, '%', 'e', 's', 0, /* 5432 */ 'p', 'u', 's', 'h', 'w', 9, '%', 'e', 's', 0, /* 5442 */ 'p', 'o', 'p', 'w', 9, '%', 'e', 's', 0, /* 5451 */ 'p', 'u', 's', 'h', 'l', 9, '%', 'f', 's', 0, /* 5461 */ 'p', 'o', 'p', 'l', 9, '%', 'f', 's', 0, /* 5470 */ 'p', 'u', 's', 'h', 'q', 9, '%', 'f', 's', 0, /* 5480 */ 'p', 'o', 'p', 'q', 9, '%', 'f', 's', 0, /* 5489 */ 'p', 'u', 's', 'h', 'w', 9, '%', 'f', 's', 0, /* 5499 */ 'p', 'o', 'p', 'w', 9, '%', 'f', 's', 0, /* 5508 */ 'p', 'u', 's', 'h', 'l', 9, '%', 'g', 's', 0, /* 5518 */ 'p', 'o', 'p', 'l', 9, '%', 'g', 's', 0, /* 5527 */ 'p', 'u', 's', 'h', 'q', 9, '%', 'g', 's', 0, /* 5537 */ 'p', 'o', 'p', 'q', 9, '%', 'g', 's', 0, /* 5546 */ 'p', 'u', 's', 'h', 'w', 9, '%', 'g', 's', 0, /* 5556 */ 'p', 'o', 'p', 'w', 9, '%', 'g', 's', 0, /* 5565 */ 's', 'w', 'a', 'p', 'g', 's', 0, /* 5572 */ '#', 32, 'v', 'a', 'r', 'i', 'a', 'b', 'l', 'e', 32, 's', 'i', 'z', 'e', 'd', 32, 'a', 'l', 'l', 'o', 'c', 'a', 32, 'f', 'o', 'r', 32, 's', 'e', 'g', 'm', 'e', 'n', 't', 'e', 'd', 32, 's', 't', 'a', 'c', 'k', 's', 0, /* 5617 */ 'p', 'u', 's', 'h', 'l', 9, '%', 's', 's', 0, /* 5627 */ 'p', 'o', 'p', 'l', 9, '%', 's', 's', 0, /* 5636 */ 'p', 'u', 's', 'h', 'w', 9, '%', 's', 's', 0, /* 5646 */ 'p', 'o', 'p', 'w', 9, '%', 's', 's', 0, /* 5655 */ 'c', 'l', 't', 's', 0, /* 5660 */ 'h', 'l', 't', 0, /* 5664 */ 'x', 'g', 'e', 't', 'b', 'v', 0, /* 5671 */ 'x', 's', 'e', 't', 'b', 'v', 0, /* 5678 */ 'p', 'u', 's', 'h', 'a', 'w', 0, /* 5685 */ 'p', 'o', 'p', 'a', 'w', 0, /* 5691 */ 'p', 'u', 's', 'h', 'f', 'w', 0, /* 5698 */ 'p', 'o', 'p', 'f', 'w', 0, /* 5704 */ 'r', 'e', 'p', ';', 's', 't', 'o', 's', 'w', 0, /* 5714 */ 'r', 'e', 'p', ';', 'm', 'o', 'v', 's', 'w', 0, /* 5724 */ 'c', 'b', 't', 'w', 0, /* 5729 */ 'i', 'r', 'e', 't', 'w', 0, /* 5735 */ 'l', 'r', 'e', 't', 'w', 0, /* 5741 */ 'i', 'n', 'w', 9, '%', 'd', 'x', ',', 32, '%', 'a', 'x', 0, /* 5754 */ 'i', 'n', 'l', 9, '%', 'd', 'x', ',', 32, '%', 'e', 'a', 'x', 0, /* 5768 */ 'o', 'u', 't', 'b', 9, '%', 'a', 'l', ',', 32, '%', 'd', 'x', 0, /* 5782 */ 'o', 'u', 't', 'w', 9, '%', 'a', 'x', ',', 32, '%', 'd', 'x', 0, /* 5796 */ 'o', 'u', 't', 'l', 9, '%', 'e', 'a', 'x', ',', 32, '%', 'd', 'x', 0, }; #endif // Emit the opcode for the instruction. uint32_t Bits = OpInfo[MCInst_getOpcode(MI)]; // assert(Bits != 0 && "Cannot print this instruction."); #ifndef CAPSTONE_DIET SStream_concat(O, "%s", AsmStrs+(Bits & 8191)-1); #endif // Fragment 0 encoded into 6 bits for 40 unique commands. //printf("Frag-0: %"PRIu64"\n", (Bits >> 13) & 63); switch ((Bits >> 13) & 63) { default: // unreachable. case 0: // DBG_VALUE, BUNDLE, LIFETIME_START, LIFETIME_END, AAA, AAS, ACQUIRE_MOV... return; break; case 1: // AAD8i8, AAM8i8, ADC16i16, ADC32i32, ADC64i32, ADC8i8, ADD16i16, ADD32i... printOperand(MI, 0, O); break; case 2: // ADC16mi, ADC16mi8, ADC16mr, ADC32mi, ADC32mi8, ADC32mr, ADC64mi32, ADC... printOperand(MI, 5, O); SStream_concat(O, "%s", ", "); break; case 3: // ADC16ri, ADC16ri8, ADC16rr, ADC16rr_REV, ADC32ri, ADC32ri8, ADC32rr, A... printOperand(MI, 2, O); SStream_concat(O, "%s", ", "); break; case 4: // ADC16rm, ADD16rm, AND16rm, CMOVA16rm, CMOVAE16rm, CMOVB16rm, CMOVBE16r... printi16mem(MI, 2, O); SStream_concat(O, "%s", ", "); break; case 5: // ADC32rm, ADD32rm, AND32rm, ANDN32rm, CMOVA32rm, CMOVAE32rm, CMOVB32rm,... printi32mem(MI, 2, O); SStream_concat(O, "%s", ", "); break; case 6: // ADC64rm, ADD64rm, AND64rm, ANDN64rm, CMOVA64rm, CMOVAE64rm, CMOVB64rm,... printi64mem(MI, 2, O); SStream_concat(O, "%s", ", "); break; case 7: // ADC8rm, ADD8rm, AND8rm, OR8rm, SBB8rm, SUB8rm, XOR8rm printi8mem(MI, 2, O); SStream_concat(O, "%s", ", "); printOperand(MI, 1, O); return; break; case 8: // ADCX32rm, ADOX32rm, BLCFILL32rm, BLCI32rm, BLCIC32rm, BLCMSK32rm, BLCS... printi32mem(MI, 1, O); SStream_concat(O, "%s", ", "); printOperand(MI, 0, O); return; break; case 9: // ADCX32rr, ADCX64rr, ADOX32rr, ADOX64rr, ARPL16rr, BLCFILL32rr, BLCFILL... printOperand(MI, 1, O); SStream_concat(O, "%s", ", "); break; case 10: // ADCX64rm, ADOX64rm, BLCFILL64rm, BLCI64rm, BLCIC64rm, BLCMSK64rm, BLCS... printi64mem(MI, 1, O); SStream_concat(O, "%s", ", "); printOperand(MI, 0, O); return; break; case 11: // BEXTR32rm, BEXTR64rm, BEXTRI32mi, BEXTRI64mi, BZHI32rm, BZHI64rm, IMUL... printOperand(MI, 6, O); SStream_concat(O, "%s", ", "); break; case 12: // BOUNDS16rm, BSF16rm, BSR16rm, CMP16rm, LAR16rm, LAR32rm, LAR64rm, LSL1... printi16mem(MI, 1, O); SStream_concat(O, "%s", ", "); printOperand(MI, 0, O); return; break; case 13: // CALL16m, DEC16m, DEC64_16m, DIV16m, IDIV16m, IMUL16m, INC16m, INC64_16... printi16mem(MI, 0, O); return; break; case 14: // CALL32m, DEC32m, DEC64_32m, DIV32m, IDIV32m, IMUL32m, INC32m, INC64_32... printi32mem(MI, 0, O); break; case 15: // CALL64m, CMPXCHG8B, DEC64m, DIV64m, IDIV64m, IMUL64m, INC64m, JMP64m, ... printi64mem(MI, 0, O); break; case 16: // CALL64pcrel32, CALLpcrel16, CALLpcrel32, EH_SjLj_Setup, JAE_1, JAE_2, ... printPCRelImm(MI, 0, O); break; case 17: // CMP8rm, MOV8rm, MOV8rm_NOREX, MOVSX16rm8, MOVSX32rm8, MOVSX64rm8, MOVZ... printi8mem(MI, 1, O); SStream_concat(O, "%s", ", "); printOperand(MI, 0, O); break; case 18: // CMPS16, IN16, SCAS16, STOSW printDstIdx16(MI, 0, O); break; case 19: // CMPS32, IN32, SCAS32, STOSL printDstIdx32(MI, 0, O); break; case 20: // CMPS64, SCAS64, STOSQ printDstIdx64(MI, 0, O); break; case 21: // CMPS8, IN8, SCAS8, STOSB printDstIdx8(MI, 0, O); break; case 22: // CMPXCHG16B, LCMPXCHG16B printi128mem(MI, 0, O); return; break; case 23: // DEC8m, DIV8m, IDIV8m, IMUL8m, INC8m, INVLPG, LOCK_DEC8m, LOCK_INC8m, M... printi8mem(MI, 0, O); return; break; case 24: // FARCALL16m, FARCALL32m, FARCALL64, FARJMP16m, FARJMP32m, FARJMP64, LGD... printopaquemem(MI, 0, O); return; break; case 25: // INVPCID32, INVPCID64 printi128mem(MI, 1, O); SStream_concat(O, "%s", ", "); printOperand(MI, 0, O); return; break; case 26: // LDS16rm, LDS32rm, LES16rm, LES32rm, LFS16rm, LFS32rm, LFS64rm, LGS16rm... printopaquemem(MI, 1, O); SStream_concat(O, "%s", ", "); printOperand(MI, 0, O); return; break; case 27: // LODSB, OUTSB printSrcIdx8(MI, 0, O); break; case 28: // LODSL, OUTSL printSrcIdx32(MI, 0, O); break; case 29: // LODSQ printSrcIdx64(MI, 0, O); SStream_concat(O, "%s", ", %rax"); return; break; case 30: // LODSW, OUTSW printSrcIdx16(MI, 0, O); break; case 31: // MOV16ao16, MOV16ao16_16, MOV16o16a, MOV16o16a_16, MOV64ao16, MOV64o16a printMemOffs16(MI, 0, O); break; case 32: // MOV32ao32, MOV32ao32_16, MOV32o32a, MOV32o32a_16, MOV64ao32, MOV64o32a printMemOffs32(MI, 0, O); break; case 33: // MOV64ao64, MOV64o64a printMemOffs64(MI, 0, O); break; case 34: // MOV64ao8, MOV64o8a, MOV8ao8, MOV8ao8_16, MOV8o8a, MOV8o8a_16 printMemOffs8(MI, 0, O); break; case 35: // MOVSB printSrcIdx8(MI, 1, O); SStream_concat(O, "%s", ", "); printDstIdx8(MI, 0, O); return; break; case 36: // MOVSL printSrcIdx32(MI, 1, O); SStream_concat(O, "%s", ", "); printDstIdx32(MI, 0, O); return; break; case 37: // MOVSQ printSrcIdx64(MI, 1, O); SStream_concat(O, "%s", ", "); printDstIdx64(MI, 0, O); return; break; case 38: // MOVSW printSrcIdx16(MI, 1, O); SStream_concat(O, "%s", ", "); printDstIdx16(MI, 0, O); return; break; case 39: // SHLD16rri8, SHLD32rri8, SHLD64rri8, SHRD16rri8, SHRD32rri8, SHRD64rri8 printOperand(MI, 3, O); SStream_concat(O, "%s", ", "); printOperand(MI, 2, O); SStream_concat(O, "%s", ", "); printOperand(MI, 0, O); return; break; } // Fragment 1 encoded into 5 bits for 24 unique commands. //printf("Frag-1: %"PRIu64"\n", (Bits >> 19) & 31); switch ((Bits >> 19) & 31) { default: // unreachable. case 0: // AAD8i8, AAM8i8, BSWAP32r, BSWAP64r, CALL16r, CALL32m, CALL32r, CALL64m... return; break; case 1: // ADC16i16, ADD16i16, AND16i16, CMP16i16, IN16ri, LODSW, MOV16o16a, MOV1... SStream_concat(O, "%s", ", %ax"); return; break; case 2: // ADC16mi, ADC16mi8, ADC16mr, ADD16mi, ADD16mi8, ADD16mr, AND16mi, AND16... printi16mem(MI, 0, O); return; break; case 3: // ADC16ri, ADC16ri8, ADC16rm, ADC16rr, ADC32ri, ADC32ri8, ADC32rm, ADC32... printOperand(MI, 1, O); break; case 4: // ADC16rr_REV, ADC32rr_REV, ADC64rr_REV, ADC8rr_REV, ADCX32rr, ADCX64rr,... printOperand(MI, 0, O); break; case 5: // ADC32i32, ADD32i32, AND32i32, CMP32i32, IN32ri, LODSL, MOV32o32a, MOV3... SStream_concat(O, "%s", ", %eax"); return; break; case 6: // ADC32mi, ADC32mi8, ADC32mr, ADD32mi, ADD32mi8, ADD32mr, AND32mi, AND32... printi32mem(MI, 0, O); return; break; case 7: // ADC64i32, ADD64i32, AND64i32, CMP64i32, MOV64o64a, OR64i32, SBB64i32, ... SStream_concat(O, "%s", ", %rax"); return; break; case 8: // ADC64mi32, ADC64mi8, ADC64mr, ADD64mi32, ADD64mi8, ADD64mr, AND64mi32,... printi64mem(MI, 0, O); return; break; case 9: // ADC8i8, ADD8i8, AND8i8, CMP8i8, IN8ri, LODSB, MOV64o8a, MOV8o8a, MOV8o... SStream_concat(O, "%s", ", %al"); return; break; case 10: // ADC8mi, ADC8mr, ADD8mi, ADD8mr, AND8mi, AND8mr, CMP8mi, CMP8mr, CMPXCH... printi8mem(MI, 0, O); break; case 11: // BEXTR32rm, BEXTRI32mi, BZHI32rm, IMUL32rmi, IMUL32rmi8, RORX32mi, SARX... printi32mem(MI, 1, O); SStream_concat(O, "%s", ", "); printOperand(MI, 0, O); return; break; case 12: // BEXTR64rm, BEXTRI64mi, BZHI64rm, IMUL64rmi32, IMUL64rmi8, RORX64mi, SA... printi64mem(MI, 1, O); SStream_concat(O, "%s", ", "); printOperand(MI, 0, O); return; break; case 13: // CMPS16, CMPS32, CMPS64, CMPS8, ENTER, VAARG_64, VASTART_SAVE_XMM_REGS SStream_concat(O, "%s", ", "); break; case 14: // IMUL16rmi, IMUL16rmi8 printi16mem(MI, 1, O); SStream_concat(O, "%s", ", "); printOperand(MI, 0, O); return; break; case 15: // LXADD16, XCHG16rm printi16mem(MI, 2, O); return; break; case 16: // LXADD32, XCHG32rm printi32mem(MI, 2, O); return; break; case 17: // LXADD64, XCHG64rm printi64mem(MI, 2, O); return; break; case 18: // LXADD8, XCHG8rm printi8mem(MI, 2, O); return; break; case 19: // MOV8rm_NOREX SStream_concat(O, "%s", " # NOREX"); return; break; case 20: // OUTSB, OUTSL, OUTSW SStream_concat(O, "%s", ", %dx"); return; break; case 21: // SHLD16mri8, SHLD32mri8, SHLD64mri8, SHRD16mri8, SHRD32mri8, SHRD64mri8 printOperand(MI, 5, O); SStream_concat(O, "%s", ", "); break; case 22: // TAILJMPd, TAILJMPd64, TAILJMPm, TAILJMPm64, TAILJMPr64 SStream_concat(O, "%s", " # TAILCALL"); return; break; case 23: // XCHG16rr, XCHG32rr, XCHG64rr, XCHG8rr printOperand(MI, 2, O); return; break; } // Fragment 2 encoded into 4 bits for 12 unique commands. //printf("Frag-2: %"PRIu64"\n", (Bits >> 24) & 15); switch ((Bits >> 24) & 15) { default: // unreachable. case 0: // ADC16ri, ADC16ri8, ADC16rm, ADC16rr, ADC16rr_REV, ADC32ri, ADC32ri8, A... return; break; case 1: // ANDN32rm, ANDN32rr, ANDN64rm, ANDN64rr, BEXTR32rr, BEXTR64rr, BEXTRI32... SStream_concat(O, "%s", ", "); printOperand(MI, 0, O); return; break; case 2: // CMPS16 printSrcIdx16(MI, 1, O); return; break; case 3: // CMPS32 printSrcIdx32(MI, 1, O); return; break; case 4: // CMPS64 printSrcIdx64(MI, 1, O); return; break; case 5: // CMPS8 printSrcIdx8(MI, 1, O); return; break; case 6: // ENTER, VASTART_SAVE_XMM_REGS printOperand(MI, 1, O); break; case 7: // MOV8mr_NOREX, MOV8rr_NOREX SStream_concat(O, "%s", " # NOREX"); return; break; case 8: // SHLD16mri8, SHRD16mri8 printi16mem(MI, 0, O); return; break; case 9: // SHLD32mri8, SHRD32mri8 printi32mem(MI, 0, O); return; break; case 10: // SHLD64mri8, SHRD64mri8 printi64mem(MI, 0, O); return; break; case 11: // VAARG_64 printi8mem(MI, 1, O); SStream_concat(O, "%s", ", "); printOperand(MI, 6, O); SStream_concat(O, "%s", ", "); printOperand(MI, 7, O); SStream_concat(O, "%s", ", "); printOperand(MI, 8, O); return; break; } // Fragment 3 encoded into 1 bits for 2 unique commands. //printf("Frag-3: %"PRIu64"\n", (Bits >> 28) & 1); if ((Bits >> 28) & 1) { // VASTART_SAVE_XMM_REGS SStream_concat(O, "%s", ", "); printOperand(MI, 2, O); return; } else { // ENTER return; } } /// getRegisterName - This method is automatically generated by tblgen /// from the register set description. This returns the assembler name /// for the specified register. static char *getRegisterName(unsigned RegNo) { // assert(RegNo && RegNo < 233 && "Invalid register number!"); #ifndef CAPSTONE_DIET static char AsmStrs[] = { /* 0 */ 's', 't', '(', '0', ')', 0, /* 6 */ 's', 't', '(', '1', ')', 0, /* 12 */ 's', 't', '(', '2', ')', 0, /* 18 */ 's', 't', '(', '3', ')', 0, /* 24 */ 's', 't', '(', '4', ')', 0, /* 30 */ 's', 't', '(', '5', ')', 0, /* 36 */ 's', 't', '(', '6', ')', 0, /* 42 */ 's', 't', '(', '7', ')', 0, /* 48 */ 'x', 'm', 'm', '1', '0', 0, /* 54 */ 'y', 'm', 'm', '1', '0', 0, /* 60 */ 'z', 'm', 'm', '1', '0', 0, /* 66 */ 'c', 'r', '1', '0', 0, /* 71 */ 'x', 'm', 'm', '2', '0', 0, /* 77 */ 'y', 'm', 'm', '2', '0', 0, /* 83 */ 'z', 'm', 'm', '2', '0', 0, /* 89 */ 'x', 'm', 'm', '3', '0', 0, /* 95 */ 'y', 'm', 'm', '3', '0', 0, /* 101 */ 'z', 'm', 'm', '3', '0', 0, /* 107 */ 'k', '0', 0, /* 110 */ 'x', 'm', 'm', '0', 0, /* 115 */ 'y', 'm', 'm', '0', 0, /* 120 */ 'z', 'm', 'm', '0', 0, /* 125 */ 'f', 'p', '0', 0, /* 129 */ 'c', 'r', '0', 0, /* 133 */ 'd', 'r', '0', 0, /* 137 */ 'x', 'm', 'm', '1', '1', 0, /* 143 */ 'y', 'm', 'm', '1', '1', 0, /* 149 */ 'z', 'm', 'm', '1', '1', 0, /* 155 */ 'c', 'r', '1', '1', 0, /* 160 */ 'x', 'm', 'm', '2', '1', 0, /* 166 */ 'y', 'm', 'm', '2', '1', 0, /* 172 */ 'z', 'm', 'm', '2', '1', 0, /* 178 */ 'x', 'm', 'm', '3', '1', 0, /* 184 */ 'y', 'm', 'm', '3', '1', 0, /* 190 */ 'z', 'm', 'm', '3', '1', 0, /* 196 */ 'k', '1', 0, /* 199 */ 'x', 'm', 'm', '1', 0, /* 204 */ 'y', 'm', 'm', '1', 0, /* 209 */ 'z', 'm', 'm', '1', 0, /* 214 */ 'f', 'p', '1', 0, /* 218 */ 'c', 'r', '1', 0, /* 222 */ 'd', 'r', '1', 0, /* 226 */ 'x', 'm', 'm', '1', '2', 0, /* 232 */ 'y', 'm', 'm', '1', '2', 0, /* 238 */ 'z', 'm', 'm', '1', '2', 0, /* 244 */ 'c', 'r', '1', '2', 0, /* 249 */ 'x', 'm', 'm', '2', '2', 0, /* 255 */ 'y', 'm', 'm', '2', '2', 0, /* 261 */ 'z', 'm', 'm', '2', '2', 0, /* 267 */ 'k', '2', 0, /* 270 */ 'x', 'm', 'm', '2', 0, /* 275 */ 'y', 'm', 'm', '2', 0, /* 280 */ 'z', 'm', 'm', '2', 0, /* 285 */ 'f', 'p', '2', 0, /* 289 */ 'c', 'r', '2', 0, /* 293 */ 'd', 'r', '2', 0, /* 297 */ 'x', 'm', 'm', '1', '3', 0, /* 303 */ 'y', 'm', 'm', '1', '3', 0, /* 309 */ 'z', 'm', 'm', '1', '3', 0, /* 315 */ 'c', 'r', '1', '3', 0, /* 320 */ 'x', 'm', 'm', '2', '3', 0, /* 326 */ 'y', 'm', 'm', '2', '3', 0, /* 332 */ 'z', 'm', 'm', '2', '3', 0, /* 338 */ 'k', '3', 0, /* 341 */ 'x', 'm', 'm', '3', 0, /* 346 */ 'y', 'm', 'm', '3', 0, /* 351 */ 'z', 'm', 'm', '3', 0, /* 356 */ 'f', 'p', '3', 0, /* 360 */ 'c', 'r', '3', 0, /* 364 */ 'd', 'r', '3', 0, /* 368 */ 'x', 'm', 'm', '1', '4', 0, /* 374 */ 'y', 'm', 'm', '1', '4', 0, /* 380 */ 'z', 'm', 'm', '1', '4', 0, /* 386 */ 'c', 'r', '1', '4', 0, /* 391 */ 'x', 'm', 'm', '2', '4', 0, /* 397 */ 'y', 'm', 'm', '2', '4', 0, /* 403 */ 'z', 'm', 'm', '2', '4', 0, /* 409 */ 'k', '4', 0, /* 412 */ 'x', 'm', 'm', '4', 0, /* 417 */ 'y', 'm', 'm', '4', 0, /* 422 */ 'z', 'm', 'm', '4', 0, /* 427 */ 'f', 'p', '4', 0, /* 431 */ 'c', 'r', '4', 0, /* 435 */ 'd', 'r', '4', 0, /* 439 */ 'x', 'm', 'm', '1', '5', 0, /* 445 */ 'y', 'm', 'm', '1', '5', 0, /* 451 */ 'z', 'm', 'm', '1', '5', 0, /* 457 */ 'c', 'r', '1', '5', 0, /* 462 */ 'x', 'm', 'm', '2', '5', 0, /* 468 */ 'y', 'm', 'm', '2', '5', 0, /* 474 */ 'z', 'm', 'm', '2', '5', 0, /* 480 */ 'k', '5', 0, /* 483 */ 'x', 'm', 'm', '5', 0, /* 488 */ 'y', 'm', 'm', '5', 0, /* 493 */ 'z', 'm', 'm', '5', 0, /* 498 */ 'f', 'p', '5', 0, /* 502 */ 'c', 'r', '5', 0, /* 506 */ 'd', 'r', '5', 0, /* 510 */ 'x', 'm', 'm', '1', '6', 0, /* 516 */ 'y', 'm', 'm', '1', '6', 0, /* 522 */ 'z', 'm', 'm', '1', '6', 0, /* 528 */ 'x', 'm', 'm', '2', '6', 0, /* 534 */ 'y', 'm', 'm', '2', '6', 0, /* 540 */ 'z', 'm', 'm', '2', '6', 0, /* 546 */ 'k', '6', 0, /* 549 */ 'x', 'm', 'm', '6', 0, /* 554 */ 'y', 'm', 'm', '6', 0, /* 559 */ 'z', 'm', 'm', '6', 0, /* 564 */ 'f', 'p', '6', 0, /* 568 */ 'c', 'r', '6', 0, /* 572 */ 'd', 'r', '6', 0, /* 576 */ 'x', 'm', 'm', '1', '7', 0, /* 582 */ 'y', 'm', 'm', '1', '7', 0, /* 588 */ 'z', 'm', 'm', '1', '7', 0, /* 594 */ 'x', 'm', 'm', '2', '7', 0, /* 600 */ 'y', 'm', 'm', '2', '7', 0, /* 606 */ 'z', 'm', 'm', '2', '7', 0, /* 612 */ 'k', '7', 0, /* 615 */ 'x', 'm', 'm', '7', 0, /* 620 */ 'y', 'm', 'm', '7', 0, /* 625 */ 'z', 'm', 'm', '7', 0, /* 630 */ 'c', 'r', '7', 0, /* 634 */ 'd', 'r', '7', 0, /* 638 */ 'x', 'm', 'm', '1', '8', 0, /* 644 */ 'y', 'm', 'm', '1', '8', 0, /* 650 */ 'z', 'm', 'm', '1', '8', 0, /* 656 */ 'x', 'm', 'm', '2', '8', 0, /* 662 */ 'y', 'm', 'm', '2', '8', 0, /* 668 */ 'z', 'm', 'm', '2', '8', 0, /* 674 */ 'x', 'm', 'm', '8', 0, /* 679 */ 'y', 'm', 'm', '8', 0, /* 684 */ 'z', 'm', 'm', '8', 0, /* 689 */ 'c', 'r', '8', 0, /* 693 */ 'x', 'm', 'm', '1', '9', 0, /* 699 */ 'y', 'm', 'm', '1', '9', 0, /* 705 */ 'z', 'm', 'm', '1', '9', 0, /* 711 */ 'x', 'm', 'm', '2', '9', 0, /* 717 */ 'y', 'm', 'm', '2', '9', 0, /* 723 */ 'z', 'm', 'm', '2', '9', 0, /* 729 */ 'x', 'm', 'm', '9', 0, /* 734 */ 'y', 'm', 'm', '9', 0, /* 739 */ 'z', 'm', 'm', '9', 0, /* 744 */ 'c', 'r', '9', 0, /* 748 */ 'r', '1', '0', 'b', 0, /* 753 */ 'r', '1', '1', 'b', 0, /* 758 */ 'r', '1', '2', 'b', 0, /* 763 */ 'r', '1', '3', 'b', 0, /* 768 */ 'r', '1', '4', 'b', 0, /* 773 */ 'r', '1', '5', 'b', 0, /* 778 */ 'r', '8', 'b', 0, /* 782 */ 'r', '9', 'b', 0, /* 786 */ 'r', '1', '0', 'd', 0, /* 791 */ 'r', '1', '1', 'd', 0, /* 796 */ 'r', '1', '2', 'd', 0, /* 801 */ 'r', '1', '3', 'd', 0, /* 806 */ 'r', '1', '4', 'd', 0, /* 811 */ 'r', '1', '5', 'd', 0, /* 816 */ 'r', '8', 'd', 0, /* 820 */ 'r', '9', 'd', 0, /* 824 */ 'a', 'h', 0, /* 827 */ 'b', 'h', 0, /* 830 */ 'c', 'h', 0, /* 833 */ 'd', 'h', 0, /* 836 */ 'e', 'd', 'i', 0, /* 840 */ 'r', 'd', 'i', 0, /* 844 */ 'e', 's', 'i', 0, /* 848 */ 'r', 's', 'i', 0, /* 852 */ 'a', 'l', 0, /* 855 */ 'b', 'l', 0, /* 858 */ 'c', 'l', 0, /* 861 */ 'd', 'l', 0, /* 864 */ 'd', 'i', 'l', 0, /* 868 */ 's', 'i', 'l', 0, /* 872 */ 'b', 'p', 'l', 0, /* 876 */ 's', 'p', 'l', 0, /* 880 */ 'e', 'b', 'p', 0, /* 884 */ 'r', 'b', 'p', 0, /* 888 */ 'e', 'i', 'p', 0, /* 892 */ 'r', 'i', 'p', 0, /* 896 */ 'e', 's', 'p', 0, /* 900 */ 'r', 's', 'p', 0, /* 904 */ 'c', 's', 0, /* 907 */ 'd', 's', 0, /* 910 */ 'e', 's', 0, /* 913 */ 'f', 's', 0, /* 916 */ 'f', 'l', 'a', 'g', 's', 0, /* 922 */ 's', 's', 0, /* 925 */ 'r', '1', '0', 'w', 0, /* 930 */ 'r', '1', '1', 'w', 0, /* 935 */ 'r', '1', '2', 'w', 0, /* 940 */ 'r', '1', '3', 'w', 0, /* 945 */ 'r', '1', '4', 'w', 0, /* 950 */ 'r', '1', '5', 'w', 0, /* 955 */ 'r', '8', 'w', 0, /* 959 */ 'r', '9', 'w', 0, /* 963 */ 'f', 'p', 's', 'w', 0, /* 968 */ 'e', 'a', 'x', 0, /* 972 */ 'r', 'a', 'x', 0, /* 976 */ 'e', 'b', 'x', 0, /* 980 */ 'r', 'b', 'x', 0, /* 984 */ 'e', 'c', 'x', 0, /* 988 */ 'r', 'c', 'x', 0, /* 992 */ 'e', 'd', 'x', 0, /* 996 */ 'r', 'd', 'x', 0, /* 1000 */ 'e', 'i', 'z', 0, /* 1004 */ 'r', 'i', 'z', 0, }; static const uint32_t RegAsmOffset[] = { 824, 852, 969, 827, 855, 881, 872, 977, 830, 858, 904, 985, 833, 837, 864, 861, 907, 993, 968, 880, 976, 984, 836, 992, 916, 888, 1000, 910, 844, 896, 963, 913, 919, 889, 972, 884, 980, 988, 840, 996, 892, 1004, 848, 900, 845, 868, 897, 876, 922, 129, 218, 289, 360, 431, 502, 568, 630, 689, 744, 66, 155, 244, 315, 386, 457, 133, 222, 293, 364, 435, 506, 572, 634, 125, 214, 285, 356, 427, 498, 564, 107, 196, 267, 338, 409, 480, 546, 612, 111, 200, 271, 342, 413, 484, 550, 616, 690, 745, 67, 156, 245, 316, 387, 458, 0, 6, 12, 18, 24, 30, 36, 42, 110, 199, 270, 341, 412, 483, 549, 615, 674, 729, 48, 137, 226, 297, 368, 439, 510, 576, 638, 693, 71, 160, 249, 320, 391, 462, 528, 594, 656, 711, 89, 178, 115, 204, 275, 346, 417, 488, 554, 620, 679, 734, 54, 143, 232, 303, 374, 445, 516, 582, 644, 699, 77, 166, 255, 326, 397, 468, 534, 600, 662, 717, 95, 184, 120, 209, 280, 351, 422, 493, 559, 625, 684, 739, 60, 149, 238, 309, 380, 451, 522, 588, 650, 705, 83, 172, 261, 332, 403, 474, 540, 606, 668, 723, 101, 190, 778, 782, 748, 753, 758, 763, 768, 773, 816, 820, 786, 791, 796, 801, 806, 811, 955, 959, 925, 930, 935, 940, 945, 950, }; //int i; //for (i = 0; i < sizeof(RegAsmOffset)/4; i++) // printf("%s = %u\n", AsmStrs+RegAsmOffset[i], i + 1); //printf("*************************\n"); return AsmStrs+RegAsmOffset[RegNo-1]; #else return NULL; #endif } #ifdef PRINT_ALIAS_INSTR #undef PRINT_ALIAS_INSTR static char *printAliasInstr(MCInst *MI, SStream *OS, void *info) { #define GETREGCLASS_CONTAIN(_class, _reg) MCRegisterClass_contains(MCRegisterInfo_getRegClass(MRI, _class), MCOperand_getReg(MCInst_getOperand(MI, _reg))) const char *AsmString; // MCRegisterInfo *MRI = (MCRegisterInfo *)info; switch (MCInst_getOpcode(MI)) { default: return 0; case X86_AAD8i8: if (MCInst_getNumOperands(MI) == 1 && MCOperand_isImm(MCInst_getOperand(MI, 0)) && MCOperand_getImm(MCInst_getOperand(MI, 0)) == 10) { // (AAD8i8 10) AsmString = "aad"; break; } return 0; case X86_AAM8i8: if (MCInst_getNumOperands(MI) == 1 && MCOperand_isImm(MCInst_getOperand(MI, 0)) && MCOperand_getImm(MCInst_getOperand(MI, 0)) == 10) { // (AAM8i8 10) AsmString = "aam"; break; } return 0; case X86_XSTORE: if (MCInst_getNumOperands(MI) == 0) { // (XSTORE) AsmString = "xstorerng"; break; } return 0; } char *tmp = cs_strdup(AsmString), *AsmMnem, *AsmOps; AsmMnem = tmp; AsmOps = strchr(tmp, ' '); if (AsmOps) { *AsmOps = '\0'; AsmOps += 1; } SStream_concat(OS, "%s", AsmMnem); if (AsmOps) { SStream_concat(OS, "\t"); char *c; for (c = AsmOps; *c; c++) { if (*c == '$') { c += 1; printOperand(MI, *c - 1, OS); } else { SStream_concat(OS, "%c", *c); } } } return tmp; } #endif // PRINT_ALIAS_INSTR