1/*===- TableGen'erated file -------------------------------------*- C++ -*-===*\ 2|* *| 3|*Assembly Writer Source Fragment *| 4|* *| 5|* Automatically generated file, do not edit! *| 6|* *| 7\*===----------------------------------------------------------------------===*/ 8 9/* Capstone Disassembly Engine, http://www.capstone-engine.org */ 10/* By Nguyen Anh Quynh <aquynh@gmail.com>, 2013-2015 */ 11 12/// printInstruction - This method is automatically generated by tablegen 13/// from the instruction set description. 14static void printInstruction(MCInst *MI, SStream *O, MCRegisterInfo *MRI) 15{ 16 static const uint32_t OpInfo[] = { 17 0U, // PHI 18 0U, // INLINEASM 19 0U, // CFI_INSTRUCTION 20 0U, // EH_LABEL 21 0U, // GC_LABEL 22 0U, // KILL 23 0U, // EXTRACT_SUBREG 24 0U, // INSERT_SUBREG 25 0U, // IMPLICIT_DEF 26 0U, // SUBREG_TO_REG 27 0U, // COPY_TO_REGCLASS 28 4714U, // DBG_VALUE 29 0U, // REG_SEQUENCE 30 0U, // COPY 31 4707U, // BUNDLE 32 4770U, // LIFETIME_START 33 4694U, // LIFETIME_END 34 0U, // STACKMAP 35 0U, // PATCHPOINT 36 0U, // LOAD_STACK_GUARD 37 0U, // STATEPOINT 38 0U, // FRAME_ALLOC 39 4785U, // AAA 40 8535U, // AAD8i8 41 9494U, // AAM8i8 42 5356U, // AAS 43 4385U, // ACQUIRE_MOV16rm 44 4385U, // ACQUIRE_MOV32rm 45 4385U, // ACQUIRE_MOV64rm 46 4385U, // ACQUIRE_MOV8rm 47 534777U, // ADC16i16 48 1067257U, // ADC16mi 49 1067257U, // ADC16mi8 50 1067257U, // ADC16mr 51 1599737U, // ADC16ri 52 1599737U, // ADC16ri8 53 1607929U, // ADC16rm 54 1599737U, // ADC16rr 55 2124025U, // ADC16rr_REV 56 2630195U, // ADC32i32 57 3162675U, // ADC32mi 58 3162675U, // ADC32mi8 59 3162675U, // ADC32mr 60 1598003U, // ADC32ri 61 1598003U, // ADC32ri8 62 1614387U, // ADC32rm 63 1598003U, // ADC32rr 64 2122291U, // ADC32rr_REV 65 3679654U, // ADC64i32 66 4212134U, // ADC64mi32 67 4212134U, // ADC64mi8 68 4212134U, // ADC64mr 69 1598886U, // ADC64ri32 70 1598886U, // ADC64ri8 71 1623462U, // ADC64rm 72 1598886U, // ADC64rr 73 2123174U, // ADC64rr_REV 74 4726892U, // ADC8i8 75 5259372U, // ADC8mi 76 5259372U, // ADC8mi8 77 5259372U, // ADC8mr 78 1597548U, // ADC8ri 79 1597548U, // ADC8ri8 80 57452U, // ADC8rm 81 1597548U, // ADC8rr 82 2121836U, // ADC8rr_REV 83 2139365U, // ADCX32rm 84 2122981U, // ADCX32rr 85 2148376U, // ADCX64rm 86 2123800U, // ADCX64rr 87 534802U, // ADD16i16 88 1067282U, // ADD16mi 89 1067282U, // ADD16mi8 90 1067282U, // ADD16mr 91 1599762U, // ADD16ri 92 1599762U, // ADD16ri8 93 0U, // ADD16ri8_DB 94 0U, // ADD16ri_DB 95 1607954U, // ADD16rm 96 1599762U, // ADD16rr 97 0U, // ADD16rr_DB 98 2124050U, // ADD16rr_REV 99 2630229U, // ADD32i32 100 3162709U, // ADD32mi 101 3162709U, // ADD32mi8 102 3162709U, // ADD32mr 103 1598037U, // ADD32ri 104 1598037U, // ADD32ri8 105 0U, // ADD32ri8_DB 106 0U, // ADD32ri_DB 107 1614421U, // ADD32rm 108 1598037U, // ADD32rr 109 0U, // ADD32rr_DB 110 2122325U, // ADD32rr_REV 111 3679688U, // ADD64i32 112 4212168U, // ADD64mi32 113 4212168U, // ADD64mi8 114 4212168U, // ADD64mr 115 1598920U, // ADD64ri32 116 0U, // ADD64ri32_DB 117 1598920U, // ADD64ri8 118 0U, // ADD64ri8_DB 119 1623496U, // ADD64rm 120 1598920U, // ADD64rr 121 0U, // ADD64rr_DB 122 2123208U, // ADD64rr_REV 123 4726911U, // ADD8i8 124 5259391U, // ADD8mi 125 5259391U, // ADD8mi8 126 5259391U, // ADD8mr 127 1597567U, // ADD8ri 128 1597567U, // ADD8ri8 129 57471U, // ADD8rm 130 1597567U, // ADD8rr 131 2121855U, // ADD8rr_REV 132 4724U, // ADJCALLSTACKDOWN32 133 4724U, // ADJCALLSTACKDOWN64 134 4742U, // ADJCALLSTACKUP32 135 4742U, // ADJCALLSTACKUP64 136 66810U, // ADOX32rm 137 22619386U, // ADOX32rr 138 84013U, // ADOX64rm 139 22620205U, // ADOX64rr 140 534827U, // AND16i16 141 1067307U, // AND16mi 142 1067307U, // AND16mi8 143 1067307U, // AND16mr 144 1599787U, // AND16ri 145 1599787U, // AND16ri8 146 1607979U, // AND16rm 147 1599787U, // AND16rr 148 2124075U, // AND16rr_REV 149 2630254U, // AND32i32 150 3162734U, // AND32mi 151 3162734U, // AND32mi8 152 3162734U, // AND32mr 153 1598062U, // AND32ri 154 1598062U, // AND32ri8 155 1614446U, // AND32rm 156 1598062U, // AND32rr 157 2122350U, // AND32rr_REV 158 3679713U, // AND64i32 159 4212193U, // AND64mi32 160 4212193U, // AND64mi8 161 4212193U, // AND64mr 162 1598945U, // AND64ri32 163 1598945U, // AND64ri8 164 1623521U, // AND64rm 165 1598945U, // AND64rr 166 2123233U, // AND64rr_REV 167 4726917U, // AND8i8 168 5259397U, // AND8mi 169 5259397U, // AND8mi8 170 5259397U, // AND8mr 171 1597573U, // AND8ri 172 1597573U, // AND8ri8 173 57477U, // AND8rm 174 1597573U, // AND8rr 175 2121861U, // AND8rr_REV 176 35169133U, // ANDN32rm 177 35152749U, // ANDN32rr 178 35178193U, // ANDN64rm 179 35153617U, // ANDN64rr 180 1065915U, // ARPL16mr 181 22619067U, // ARPL16rr 182 6382598U, // BEXTR32rm 183 35152902U, // BEXTR32rr 184 6907730U, // BEXTR64rm 185 35153746U, // BEXTR64rr 186 6383719U, // BEXTRI32mi 187 35154023U, // BEXTRI32ri 188 6908007U, // BEXTRI64mi 189 35154023U, // BEXTRI64ri 190 66360U, // BLCFILL32rm 191 22618936U, // BLCFILL32rr 192 82744U, // BLCFILL64rm 193 22618936U, // BLCFILL64rr 194 66028U, // BLCI32rm 195 22618604U, // BLCI32rr 196 82412U, // BLCI64rm 197 22618604U, // BLCI64rr 198 65857U, // BLCIC32rm 199 22618433U, // BLCIC32rr 200 82241U, // BLCIC64rm 201 22618433U, // BLCIC64rr 202 66034U, // BLCMSK32rm 203 22618610U, // BLCMSK32rr 204 82418U, // BLCMSK64rm 205 22618610U, // BLCMSK64rr 206 67694U, // BLCS32rm 207 22620270U, // BLCS32rr 208 84078U, // BLCS64rm 209 22620270U, // BLCS64rr 210 66369U, // BLSFILL32rm 211 22618945U, // BLSFILL32rr 212 82753U, // BLSFILL64rm 213 22618945U, // BLSFILL64rr 214 66322U, // BLSI32rm 215 22618898U, // BLSI32rr 216 83589U, // BLSI64rm 217 22619781U, // BLSI64rr 218 65864U, // BLSIC32rm 219 22618440U, // BLSIC32rr 220 82248U, // BLSIC64rm 221 22618440U, // BLSIC64rr 222 66333U, // BLSMSK32rm 223 22618909U, // BLSMSK32rr 224 83596U, // BLSMSK64rm 225 22619788U, // BLSMSK64rr 226 66547U, // BLSR32rm 227 22619123U, // BLSR32rr 228 83775U, // BLSR64rm 229 22619967U, // BLSR64rr 230 65911U, // BOUNDS16rm 231 82295U, // BOUNDS32rm 232 100717U, // BSF16rm 233 22620525U, // BSF16rr 234 66278U, // BSF32rm 235 22618854U, // BSF32rr 236 83545U, // BSF64rm 237 22619737U, // BSF64rr 238 100913U, // BSR16rm 239 22620721U, // BSR16rr 240 66541U, // BSR32rm 241 22619117U, // BSR32rr 242 83769U, // BSR64rm 243 22619961U, // BSR64rr 244 9098U, // BSWAP32r 245 9961U, // BSWAP64r 246 1067683U, // BT16mi8 247 1067683U, // BT16mr 248 22620835U, // BT16ri8 249 22620835U, // BT16rr 250 3163240U, // BT32mi8 251 3163240U, // BT32mr 252 22619240U, // BT32ri8 253 22619240U, // BT32rr 254 4212641U, // BT64mi8 255 4212641U, // BT64mr 256 22620065U, // BT64ri8 257 22620065U, // BT64rr 258 1067275U, // BTC16mi8 259 1067275U, // BTC16mr 260 22620427U, // BTC16ri8 261 22620427U, // BTC16rr 262 3162693U, // BTC32mi8 263 3162693U, // BTC32mr 264 22618693U, // BTC32ri8 265 22618693U, // BTC32rr 266 4212152U, // BTC64mi8 267 4212152U, // BTC64mr 268 22619576U, // BTC64ri8 269 22619576U, // BTC64rr 270 1067575U, // BTR16mi8 271 1067575U, // BTR16mr 272 22620727U, // BTR16ri8 273 22620727U, // BTR16rr 274 3163130U, // BTR32mi8 275 3163130U, // BTR32mr 276 22619130U, // BTR32ri8 277 22619130U, // BTR32rr 278 4212550U, // BTR64mi8 279 4212550U, // BTR64mr 280 22619974U, // BTR64ri8 281 22619974U, // BTR64rr 282 1067662U, // BTS16mi8 283 1067662U, // BTS16mr 284 22620814U, // BTS16ri8 285 22620814U, // BTS16rr 286 3163219U, // BTS32mi8 287 3163219U, // BTS32mr 288 22619219U, // BTS32ri8 289 22619219U, // BTS32rr 290 4212627U, // BTS64mi8 291 4212627U, // BTS64mr 292 22620051U, // BTS64ri8 293 22620051U, // BTS64rr 294 6382347U, // BZHI32rm 295 35152651U, // BZHI32rr 296 6907518U, // BZHI64rm 297 35153534U, // BZHI64rr 298 110971U, // CALL16m 299 12667U, // CALL16r 300 119116U, // CALL32m 301 12620U, // CALL32r 302 127325U, // CALL64m 303 132775U, // CALL64pcrel32 304 12637U, // CALL64r 305 133541U, // CALLpcrel16 306 131915U, // CALLpcrel32 307 5741U, // CBW 308 4927U, // CDQ 309 5320U, // CDQE 310 4854U, // CLAC 311 4886U, // CLC 312 4923U, // CLD 313 141490U, // CLFLUSHOPT 314 5033U, // CLGI 315 5043U, // CLI 316 5664U, // CLTS 317 139571U, // CLWB 318 4890U, // CMC 319 2132173U, // CMOVA16rm 320 2123981U, // CMOVA16rr 321 2138631U, // CMOVA32rm 322 2122247U, // CMOVA32rr 323 2147706U, // CMOVA64rm 324 2123130U, // CMOVA64rr 325 2132280U, // CMOVAE16rm 326 2124088U, // CMOVAE16rr 327 2138747U, // CMOVAE32rm 328 2122363U, // CMOVAE32rr 329 2147822U, // CMOVAE64rm 330 2123246U, // CMOVAE64rr 331 2132201U, // CMOVB16rm 332 2124009U, // CMOVB16rr 333 2138659U, // CMOVB32rm 334 2122275U, // CMOVB32rr 335 2147734U, // CMOVB64rm 336 2123158U, // CMOVB64rr 337 2132289U, // CMOVBE16rm 338 2124097U, // CMOVBE16rr 339 2138756U, // CMOVBE32rm 340 2122372U, // CMOVBE32rr 341 2147831U, // CMOVBE64rm 342 2123255U, // CMOVBE64rr 343 2132325U, // CMOVE16rm 344 2124133U, // CMOVE16rr 345 2138846U, // CMOVE32rm 346 2122462U, // CMOVE32rr 347 2147921U, // CMOVE64rm 348 2123345U, // CMOVE64rr 349 2132355U, // CMOVG16rm 350 2124163U, // CMOVG16rr 351 2138876U, // CMOVG32rm 352 2122492U, // CMOVG32rr 353 2147951U, // CMOVG64rm 354 2123375U, // CMOVG64rr 355 2132298U, // CMOVGE16rm 356 2124106U, // CMOVGE16rr 357 2138765U, // CMOVGE32rm 358 2122381U, // CMOVGE32rr 359 2147840U, // CMOVGE64rm 360 2123264U, // CMOVGE64rr 361 2132415U, // CMOVL16rm 362 2124223U, // CMOVL16rr 363 2138981U, // CMOVL32rm 364 2122597U, // CMOVL32rr 365 2148041U, // CMOVL64rm 366 2123465U, // CMOVL64rr 367 2132307U, // CMOVLE16rm 368 2124115U, // CMOVLE16rr 369 2138774U, // CMOVLE32rm 370 2122390U, // CMOVLE32rr 371 2147849U, // CMOVLE64rm 372 2123273U, // CMOVLE64rr 373 2132316U, // CMOVNE16rm 374 2124124U, // CMOVNE16rr 375 2138783U, // CMOVNE32rm 376 2122399U, // CMOVNE32rr 377 2147858U, // CMOVNE64rm 378 2123282U, // CMOVNE64rr 379 2132428U, // CMOVNO16rm 380 2124236U, // CMOVNO16rr 381 2139001U, // CMOVNO32rm 382 2122617U, // CMOVNO32rr 383 2148056U, // CMOVNO64rm 384 2123480U, // CMOVNO64rr 385 2132458U, // CMOVNP16rm 386 2124266U, // CMOVNP16rr 387 2139046U, // CMOVNP32rm 388 2122662U, // CMOVNP32rr 389 2148094U, // CMOVNP64rm 390 2123518U, // CMOVNP64rr 391 2132600U, // CMOVNS16rm 392 2124408U, // CMOVNS16rr 393 2139197U, // CMOVNS32rm 394 2122813U, // CMOVNS32rr 395 2148221U, // CMOVNS64rm 396 2123645U, // CMOVNS64rr 397 2132437U, // CMOVO16rm 398 2124245U, // CMOVO16rr 399 2139010U, // CMOVO32rm 400 2122626U, // CMOVO32rr 401 2148065U, // CMOVO64rm 402 2123489U, // CMOVO64rr 403 2132479U, // CMOVP16rm 404 2124287U, // CMOVP16rr 405 2139073U, // CMOVP32rm 406 2122689U, // CMOVP32rr 407 2148109U, // CMOVP64rm 408 2123533U, // CMOVP64rr 409 2132635U, // CMOVS16rm 410 2124443U, // CMOVS16rr 411 2139232U, // CMOVS32rm 412 2122848U, // CMOVS32rr 413 2148249U, // CMOVS64rm 414 2123673U, // CMOVS64rr 415 4094U, // CMOV_FR32 416 4281U, // CMOV_FR64 417 4301U, // CMOV_GR16 418 4114U, // CMOV_GR32 419 4321U, // CMOV_GR8 420 4073U, // CMOV_RFP32 421 4260U, // CMOV_RFP64 422 3988U, // CMOV_RFP80 423 4030U, // CMOV_V16F32 424 4134U, // CMOV_V2F64 425 4197U, // CMOV_V2I64 426 4009U, // CMOV_V4F32 427 4155U, // CMOV_V4F64 428 4218U, // CMOV_V4I64 429 4052U, // CMOV_V8F32 430 4176U, // CMOV_V8F64 431 4239U, // CMOV_V8I64 432 535005U, // CMP16i16 433 1067485U, // CMP16mi 434 1067485U, // CMP16mi8 435 1067485U, // CMP16mr 436 22620637U, // CMP16ri 437 22620637U, // CMP16ri8 438 100829U, // CMP16rm 439 22620637U, // CMP16rr 440 22620637U, // CMP16rr_REV 441 2630553U, // CMP32i32 442 3163033U, // CMP32mi 443 3163033U, // CMP32mi8 444 3163033U, // CMP32mr 445 22619033U, // CMP32ri 446 22619033U, // CMP32ri8 447 66457U, // CMP32rm 448 22619033U, // CMP32rr 449 22619033U, // CMP32rr_REV 450 3679992U, // CMP64i32 451 4212472U, // CMP64mi32 452 4212472U, // CMP64mi8 453 4212472U, // CMP64mr 454 22619896U, // CMP64ri32 455 22619896U, // CMP64ri8 456 83704U, // CMP64rm 457 22619896U, // CMP64rr 458 22619896U, // CMP64rr_REV 459 4726979U, // CMP8i8 460 5259459U, // CMP8mi 461 5259459U, // CMP8mi8 462 5259459U, // CMP8mr 463 22618307U, // CMP8ri 464 22618307U, // CMP8ri8 465 147651U, // CMP8rm 466 22618307U, // CMP8rr 467 22618307U, // CMP8rr_REV 468 56254718U, // CMPSB 469 73040966U, // CMPSL 470 89827206U, // CMPSQ 471 106613377U, // CMPSW 472 188489U, // CMPXCHG16B 473 1067385U, // CMPXCHG16rm 474 22620537U, // CMPXCHG16rr 475 3162866U, // CMPXCHG32rm 476 22618866U, // CMPXCHG32rr 477 4212325U, // CMPXCHG64rm 478 22619749U, // CMPXCHG64rr 479 122965U, // CMPXCHG8B 480 5259409U, // CMPXCHG8rm 481 22618257U, // CMPXCHG8rr 482 4917U, // CPUID 483 5238U, // CQO 484 4936U, // CWD 485 5182U, // CWDE 486 4789U, // DAA 487 5360U, // DAS 488 4679U, // DATA16_PREFIX 489 108799U, // DEC16m 490 10495U, // DEC16r 491 10495U, // DEC16r_alt 492 115257U, // DEC32m 493 8761U, // DEC32r 494 8761U, // DEC32r_alt 495 124332U, // DEC64m 496 9644U, // DEC64r 497 139378U, // DEC8m 498 8306U, // DEC8r 499 109303U, // DIV16m 500 10999U, // DIV16r 501 115906U, // DIV32m 502 9410U, // DIV32r 503 124917U, // DIV64m 504 10229U, // DIV64r 505 139559U, // DIV8m 506 8487U, // DIV8r 507 12021U, // EH_RETURN 508 12021U, // EH_RETURN64 509 4502U, // EH_SjLj_LongJmp32 510 4592U, // EH_SjLj_LongJmp64 511 4521U, // EH_SjLj_SetJmp32 512 4611U, // EH_SjLj_SetJmp64 513 132452U, // EH_SjLj_Setup 514 123218002U, // ENTER 515 7416228U, // FARCALL16i 516 201082U, // FARCALL16m 517 7414602U, // FARCALL32i 518 201035U, // FARCALL32m 519 201052U, // FARCALL64 520 7416291U, // FARJMP16i 521 201091U, // FARJMP16m 522 7414687U, // FARJMP32i 523 201044U, // FARJMP32m 524 201074U, // FARJMP64 525 5195U, // FSETPM 526 4874U, // GETSEC 527 5677U, // HLT 528 109302U, // IDIV16m 529 10998U, // IDIV16r 530 115905U, // IDIV32m 531 9409U, // IDIV32r 532 124916U, // IDIV64m 533 10228U, // IDIV64r 534 139558U, // IDIV8m 535 8486U, // IDIV8r 536 108984U, // IMUL16m 537 10680U, // IMUL16r 538 2132408U, // IMUL16rm 539 7956920U, // IMUL16rmi 540 7956920U, // IMUL16rmi8 541 2124216U, // IMUL16rr 542 35154360U, // IMUL16rri 543 35154360U, // IMUL16rri8 544 115550U, // IMUL32m 545 9054U, // IMUL32r 546 2138974U, // IMUL32rm 547 6382430U, // IMUL32rmi 548 6382430U, // IMUL32rmi8 549 2122590U, // IMUL32rr 550 35152734U, // IMUL32rri 551 35152734U, // IMUL32rri8 552 124610U, // IMUL64m 553 9922U, // IMUL64r 554 2148034U, // IMUL64rm 555 6907586U, // IMUL64rmi32 556 6907586U, // IMUL64rmi8 557 2123458U, // IMUL64rr 558 35153602U, // IMUL64rri32 559 35153602U, // IMUL64rri8 560 139447U, // IMUL8m 561 8375U, // IMUL8r 562 534983U, // IN16ri 563 5758U, // IN16rr 564 2630516U, // IN32ri 565 5837U, // IN32rr 566 4726974U, // IN8ri 567 5071U, // IN8rr 568 108805U, // INC16m 569 10501U, // INC16r 570 10501U, // INC16r_alt 571 115263U, // INC32m 572 8767U, // INC32r 573 8767U, // INC32r_alt 574 124338U, // INC64m 575 9650U, // INC64r 576 139384U, // INC8m 577 8312U, // INC8r 578 159433U, // INSB 579 167636U, // INSL 580 184031U, // INSW 581 10395U, // INT 582 4497U, // INT1 583 4587U, // INT3 584 5233U, // INTO 585 4943U, // INVD 586 207008U, // INVEPT32 587 207008U, // INVEPT64 588 139742U, // INVLPG 589 5818U, // INVLPGA32 590 5886U, // INVLPGA64 591 205148U, // INVPCID32 592 205148U, // INVPCID64 593 205157U, // INVVPID32 594 205157U, // INVVPID64 595 5746U, // IRET16 596 5153U, // IRET32 597 5291U, // IRET64 598 4758U, // Int_MemBarrier 599 131454U, // JAE_1 600 131454U, // JAE_2 601 131454U, // JAE_4 602 131135U, // JA_1 603 131135U, // JA_2 604 131135U, // JA_4 605 131466U, // JBE_1 606 131466U, // JBE_2 607 131466U, // JBE_4 608 131227U, // JB_1 609 131227U, // JB_2 610 131227U, // JB_4 611 133912U, // JCXZ 612 133905U, // JECXZ 613 131490U, // JE_1 614 131490U, // JE_2 615 131490U, // JE_4 616 131478U, // JGE_1 617 131478U, // JGE_2 618 131478U, // JGE_4 619 131546U, // JG_1 620 131546U, // JG_2 621 131546U, // JG_4 622 131494U, // JLE_1 623 131494U, // JLE_2 624 131494U, // JLE_4 625 131865U, // JL_1 626 131865U, // JL_2 627 131865U, // JL_4 628 110980U, // JMP16m 629 12676U, // JMP16r 630 119125U, // JMP32m 631 12629U, // JMP32r 632 127339U, // JMP64m 633 12651U, // JMP64r 634 132418U, // JMP_1 635 132418U, // JMP_2 636 132418U, // JMP_4 637 131506U, // JNE_1 638 131506U, // JNE_2 639 131506U, // JNE_4 640 132390U, // JNO_1 641 132390U, // JNO_2 642 132390U, // JNO_4 643 132423U, // JNP_1 644 132423U, // JNP_2 645 132423U, // JNP_4 646 133248U, // JNS_1 647 133248U, // JNS_2 648 133248U, // JNS_4 649 132386U, // JO_1 650 132386U, // JO_2 651 132386U, // JO_4 652 132408U, // JP_1 653 132408U, // JP_2 654 132408U, // JP_4 655 133918U, // JRCXZ 656 133244U, // JS_1 657 133244U, // JS_2 658 133244U, // JS_4 659 5014U, // LAHF 660 100871U, // LAR16rm 661 22620679U, // LAR16rr 662 99273U, // LAR32rm 663 22619081U, // LAR32rr 664 100117U, // LAR64rm 665 22619925U, // LAR64rr 666 1067385U, // LCMPXCHG16 667 188489U, // LCMPXCHG16B 668 3162866U, // LCMPXCHG32 669 4212325U, // LCMPXCHG64 670 5259409U, // LCMPXCHG8 671 122965U, // LCMPXCHG8B 672 215641U, // LDS16rm 673 214046U, // LDS32rm 674 223431U, // LEA16r 675 221697U, // LEA32r 676 221697U, // LEA64_32r 677 222580U, // LEA64r 678 5001U, // LEAVE 679 5001U, // LEAVE64 680 215654U, // LES16rm 681 214059U, // LES32rm 682 215660U, // LFS16rm 683 214065U, // LFS32rm 684 214897U, // LFS64rm 685 199336U, // LGDT16m 686 197741U, // LGDT32m 687 198566U, // LGDT64m 688 215666U, // LGS16rm 689 214071U, // LGS32rm 690 214903U, // LGS64rm 691 199350U, // LIDT16m 692 197755U, // LIDT32m 693 198580U, // LIDT64m 694 109252U, // LLDT16m 695 10948U, // LLDT16r 696 109315U, // LMSW16m 697 11011U, // LMSW16r 698 1067282U, // LOCK_ADD16mi 699 1067282U, // LOCK_ADD16mi8 700 1067282U, // LOCK_ADD16mr 701 3162709U, // LOCK_ADD32mi 702 3162709U, // LOCK_ADD32mi8 703 3162709U, // LOCK_ADD32mr 704 4212168U, // LOCK_ADD64mi32 705 4212168U, // LOCK_ADD64mi8 706 4212168U, // LOCK_ADD64mr 707 5259391U, // LOCK_ADD8mi 708 5259391U, // LOCK_ADD8mr 709 1067307U, // LOCK_AND16mi 710 1067307U, // LOCK_AND16mi8 711 1067307U, // LOCK_AND16mr 712 3162734U, // LOCK_AND32mi 713 3162734U, // LOCK_AND32mi8 714 3162734U, // LOCK_AND32mr 715 4212193U, // LOCK_AND64mi32 716 4212193U, // LOCK_AND64mi8 717 4212193U, // LOCK_AND64mr 718 5259397U, // LOCK_AND8mi 719 5259397U, // LOCK_AND8mr 720 108799U, // LOCK_DEC16m 721 115257U, // LOCK_DEC32m 722 124332U, // LOCK_DEC64m 723 139378U, // LOCK_DEC8m 724 108805U, // LOCK_INC16m 725 115263U, // LOCK_INC32m 726 124338U, // LOCK_INC64m 727 139384U, // LOCK_INC8m 728 1067558U, // LOCK_OR16mi 729 1067558U, // LOCK_OR16mi8 730 1067558U, // LOCK_OR16mr 731 3163106U, // LOCK_OR32mi 732 3163106U, // LOCK_OR32mi8 733 3163106U, // LOCK_OR32mr 734 4212526U, // LOCK_OR64mi32 735 4212526U, // LOCK_OR64mi8 736 4212526U, // LOCK_OR64mr 737 5259484U, // LOCK_OR8mi 738 5259484U, // LOCK_OR8mr 739 5066U, // LOCK_PREFIX 740 1067235U, // LOCK_SUB16mi 741 1067235U, // LOCK_SUB16mi8 742 1067235U, // LOCK_SUB16mr 743 3162653U, // LOCK_SUB32mi 744 3162653U, // LOCK_SUB32mi8 745 3162653U, // LOCK_SUB32mr 746 4212112U, // LOCK_SUB64mi32 747 4212112U, // LOCK_SUB64mi8 748 4212112U, // LOCK_SUB64mr 749 5259366U, // LOCK_SUB8mi 750 5259366U, // LOCK_SUB8mr 751 1067563U, // LOCK_XOR16mi 752 1067563U, // LOCK_XOR16mi8 753 1067563U, // LOCK_XOR16mr 754 3163111U, // LOCK_XOR32mi 755 3163111U, // LOCK_XOR32mi8 756 3163111U, // LOCK_XOR32mr 757 4212531U, // LOCK_XOR64mi32 758 4212531U, // LOCK_XOR64mi8 759 4212531U, // LOCK_XOR64mr 760 5259489U, // LOCK_XOR8mi 761 5259489U, // LOCK_XOR8mr 762 4948215U, // LODSB 763 2860068U, // LODSL 764 247658U, // LODSQ 765 780895U, // LODSW 766 132440U, // LOOP 767 131526U, // LOOPE 768 131511U, // LOOPNE 769 9360U, // LRETIL 770 10185U, // LRETIQ 771 10962U, // LRETIW 772 5159U, // LRETL 773 5297U, // LRETQ 774 5752U, // LRETW 775 100786U, // LSL16rm 776 22620594U, // LSL16rr 777 66392U, // LSL32rm 778 22618968U, // LSL32rr 779 83636U, // LSL64rm 780 22619828U, // LSL64rr 781 215688U, // LSS16rm 782 214093U, // LSS32rm 783 214925U, // LSS64rm 784 109117U, // LTRm 785 10813U, // LTRr 786 140060945U, // LXADD16 787 156836436U, // LXADD32 788 173614535U, // LXADD64 789 190390398U, // LXADD8 790 101081U, // LZCNT16rm 791 22620889U, // LZCNT16rr 792 66717U, // LZCNT32rm 793 22619293U, // LZCNT32rr 794 83920U, // LZCNT64rm 795 22620112U, // LZCNT64rr 796 5187U, // MONTMUL 797 0U, // MORESTACK_RET 798 0U, // MORESTACK_RET_RESTORE_R10 799 789245U, // MOV16ao16 800 789245U, // MOV16ao32 801 789072U, // MOV16ao64 802 1067773U, // MOV16mi 803 1067773U, // MOV16mr 804 1067773U, // MOV16ms 805 265826U, // MOV16o16a 806 265826U, // MOV16o32a 807 265789U, // MOV16o64a 808 22620925U, // MOV16ri 809 22620925U, // MOV16ri_alt 810 101117U, // MOV16rm 811 22620925U, // MOV16rr 812 22620925U, // MOV16rr_REV 813 22620925U, // MOV16rs 814 101117U, // MOV16sm 815 22620925U, // MOV16sr 816 2893000U, // MOV32ao16 817 2893000U, // MOV32ao32 818 2892821U, // MOV32ao64 819 22619336U, // MOV32cr 820 22619336U, // MOV32dr 821 3163336U, // MOV32mi 822 3163336U, // MOV32mr 823 1066184U, // MOV32ms 824 274069U, // MOV32o16a 825 274069U, // MOV32o32a 826 274029U, // MOV32o64a 827 0U, // MOV32r0 828 22619336U, // MOV32rc 829 22619336U, // MOV32rd 830 22619336U, // MOV32ri 831 0U, // MOV32ri64 832 22619336U, // MOV32ri_alt 833 66760U, // MOV32rm 834 22619336U, // MOV32rr 835 22619336U, // MOV32rr_REV 836 22619336U, // MOV32rs 837 99528U, // MOV32sm 838 22619336U, // MOV32sr 839 3950587U, // MOV64ao32 840 3950433U, // MOV64ao64 841 22620155U, // MOV64cr 842 22620155U, // MOV64dr 843 4212731U, // MOV64mi32 844 4212731U, // MOV64mr 845 1067003U, // MOV64ms 846 282301U, // MOV64o32a 847 282273U, // MOV64o64a 848 22620155U, // MOV64rc 849 22620155U, // MOV64rd 850 22620001U, // MOV64ri 851 22620155U, // MOV64ri32 852 83963U, // MOV64rm 853 22620155U, // MOV64rr 854 22620155U, // MOV64rr_REV 855 22620155U, // MOV64rs 856 100347U, // MOV64sm 857 22620155U, // MOV64sr 858 5005613U, // MOV8ao16 859 5005613U, // MOV8ao32 860 5005550U, // MOV8ao64 861 5259565U, // MOV8mi 862 5259565U, // MOV8mr 863 5259565U, // MOV8mr_NOREX 864 289930U, // MOV8o16a 865 289930U, // MOV8o32a 866 289893U, // MOV8o64a 867 22618413U, // MOV8ri 868 22618413U, // MOV8ri_alt 869 147757U, // MOV8rm 870 147757U, // MOV8rm_NOREX 871 22618413U, // MOV8rr 872 22618413U, // MOV8rr_NOREX 873 22618413U, // MOV8rr_REV 874 1067330U, // MOVBE16mr 875 100674U, // MOVBE16rm 876 3162757U, // MOVBE32mr 877 66181U, // MOVBE32rm 878 4212216U, // MOVBE64mr 879 83448U, // MOVBE64rm 880 0U, // MOVPC32r 881 295180U, // MOVSB 882 304225U, // MOVSL 883 313242U, // MOVSQ 884 322204U, // MOVSW 885 149723U, // MOVSX16rm8 886 22620379U, // MOVSX16rr8 887 147989U, // MOVSX32_NOREXrm8 888 22618645U, // MOVSX32_NOREXrr8 889 99541U, // MOVSX32rm16 890 147989U, // MOVSX32rm8 891 22619349U, // MOVSX32rr16 892 22618645U, // MOVSX32rr8 893 22619834U, // MOVSX64_NOREXrr32 894 100360U, // MOVSX64rm16 895 67258U, // MOVSX64rm32 896 67258U, // MOVSX64rm32_alt 897 148872U, // MOVSX64rm8 898 22620168U, // MOVSX64rr16 899 22619834U, // MOVSX64rr32 900 22619528U, // MOVSX64rr8 901 149745U, // MOVZX16rm8 902 22620401U, // MOVZX16rr8 903 148011U, // MOVZX32_NOREXrm8 904 22618667U, // MOVZX32_NOREXrr8 905 99549U, // MOVZX32rm16 906 148011U, // MOVZX32rm8 907 22619357U, // MOVZX32rr16 908 22618667U, // MOVZX32rr8 909 100368U, // MOVZX64rm16_Q 910 148894U, // MOVZX64rm8_Q 911 22620176U, // MOVZX64rr16_Q 912 22619550U, // MOVZX64rr8_Q 913 108985U, // MUL16m 914 10681U, // MUL16r 915 115551U, // MUL32m 916 9055U, // MUL32r 917 124611U, // MUL64m 918 9923U, // MUL64r 919 139448U, // MUL8m 920 8376U, // MUL8r 921 35169523U, // MULX32rm 922 35153139U, // MULX32rr 923 35178534U, // MULX64rm 924 35153958U, // MULX64rr 925 108915U, // NEG16m 926 10611U, // NEG16r 927 115436U, // NEG32m 928 8940U, // NEG32r 929 124511U, // NEG64m 930 9823U, // NEG64r 931 139403U, // NEG8m 932 8331U, // NEG8r 933 5254U, // NOOP 934 109043U, // NOOP18_16m4 935 109043U, // NOOP18_16m5 936 109043U, // NOOP18_16m6 937 109043U, // NOOP18_16m7 938 10739U, // NOOP18_16r4 939 10739U, // NOOP18_16r5 940 10739U, // NOOP18_16r6 941 10739U, // NOOP18_16r7 942 115631U, // NOOP18_m4 943 115631U, // NOOP18_m5 944 115631U, // NOOP18_m6 945 115631U, // NOOP18_m7 946 9135U, // NOOP18_r4 947 9135U, // NOOP18_r5 948 9135U, // NOOP18_r6 949 9135U, // NOOP18_r7 950 123217235U, // NOOP19rr 951 115631U, // NOOPL 952 115631U, // NOOPL_19 953 115631U, // NOOPL_1a 954 115631U, // NOOPL_1b 955 115631U, // NOOPL_1c 956 115631U, // NOOPL_1d 957 115631U, // NOOPL_1e 958 109043U, // NOOPW 959 109043U, // NOOPW_19 960 109043U, // NOOPW_1a 961 109043U, // NOOPW_1b 962 109043U, // NOOPW_1c 963 109043U, // NOOPW_1d 964 109043U, // NOOPW_1e 965 109289U, // NOT16m 966 10985U, // NOT16r 967 115885U, // NOT32m 968 9389U, // NOT32r 969 124896U, // NOT64m 970 10208U, // NOT64r 971 139545U, // NOT8m 972 8473U, // NOT8r 973 535078U, // OR16i16 974 1067558U, // OR16mi 975 1067558U, // OR16mi8 976 1067558U, // OR16mr 977 1600038U, // OR16ri 978 1600038U, // OR16ri8 979 1608230U, // OR16rm 980 1600038U, // OR16rr 981 2124326U, // OR16rr_REV 982 2630626U, // OR32i32 983 3163106U, // OR32mi 984 3163106U, // OR32mi8 985 3163106U, // OR32mr 986 3163106U, // OR32mrLocked 987 1598434U, // OR32ri 988 1598434U, // OR32ri8 989 1614818U, // OR32rm 990 1598434U, // OR32rr 991 2122722U, // OR32rr_REV 992 3680046U, // OR64i32 993 4212526U, // OR64mi32 994 4212526U, // OR64mi8 995 4212526U, // OR64mr 996 1599278U, // OR64ri32 997 1599278U, // OR64ri8 998 1623854U, // OR64rm 999 1599278U, // OR64rr 1000 2123566U, // OR64rr_REV 1001 4727004U, // OR8i8 1002 5259484U, // OR8mi 1003 5259484U, // OR8mi8 1004 5259484U, // OR8mr 1005 1597660U, // OR8ri 1006 1597660U, // OR8ri8 1007 57564U, // OR8rm 1008 1597660U, // OR8rr 1009 2121948U, // OR8rr_REV 1010 11863U, // OUT16ir 1011 5919U, // OUT16rr 1012 11913U, // OUT32ir 1013 5933U, // OUT32rr 1014 11391U, // OUT8ir 1015 5905U, // OUT8rr 1016 8618245U, // OUTSB 1017 8627289U, // OUTSL 1018 8645268U, // OUTSW 1019 5669U, // PCOMMIT 1020 35169170U, // PDEP32rm 1021 35152786U, // PDEP32rr 1022 35178225U, // PDEP64rm 1023 35153649U, // PDEP64rr 1024 35169466U, // PEXT32rm 1025 35153082U, // PEXT32rr 1026 35178477U, // PEXT64rm 1027 35153901U, // PEXT64rr 1028 10745U, // POP16r 1029 109049U, // POP16rmm 1030 10745U, // POP16rmr 1031 9141U, // POP32r 1032 115637U, // POP32rmm 1033 9141U, // POP32rmr 1034 9991U, // POP64r 1035 124679U, // POP64rmm 1036 9991U, // POP64rmr 1037 5702U, // POPA16 1038 5091U, // POPA32 1039 5413U, // POPDS16 1040 5394U, // POPDS32 1041 5451U, // POPES16 1042 5432U, // POPES32 1043 5715U, // POPF16 1044 5104U, // POPF32 1045 5265U, // POPF64 1046 5508U, // POPFS16 1047 5470U, // POPFS32 1048 5489U, // POPFS64 1049 5565U, // POPGS16 1050 5527U, // POPGS32 1051 5546U, // POPGS64 1052 5655U, // POPSS16 1053 5636U, // POPSS32 1054 10635U, // PUSH16i8 1055 10635U, // PUSH16r 1056 108939U, // PUSH16rmm 1057 10635U, // PUSH16rmr 1058 8964U, // PUSH32i8 1059 8964U, // PUSH32r 1060 115460U, // PUSH32rmm 1061 8964U, // PUSH32rmr 1062 10635U, // PUSH64i16 1063 9847U, // PUSH64i32 1064 9847U, // PUSH64i8 1065 9847U, // PUSH64r 1066 124535U, // PUSH64rmm 1067 9847U, // PUSH64rmr 1068 5695U, // PUSHA16 1069 5084U, // PUSHA32 1070 5374U, // PUSHCS16 1071 5364U, // PUSHCS32 1072 5403U, // PUSHDS16 1073 5384U, // PUSHDS32 1074 5441U, // PUSHES16 1075 5422U, // PUSHES32 1076 5708U, // PUSHF16 1077 5097U, // PUSHF32 1078 5258U, // PUSHF64 1079 5498U, // PUSHFS16 1080 5460U, // PUSHFS32 1081 5479U, // PUSHFS64 1082 5555U, // PUSHGS16 1083 5517U, // PUSHGS32 1084 5536U, // PUSHGS64 1085 5645U, // PUSHSS16 1086 5626U, // PUSHSS32 1087 10635U, // PUSHi16 1088 8964U, // PUSHi32 1089 109599U, // RCL16m1 1090 110064U, // RCL16mCL 1091 1067416U, // RCL16mi 1092 11295U, // RCL16r1 1093 11760U, // RCL16rCL 1094 2124184U, // RCL16ri 1095 117631U, // RCL32m1 1096 118032U, // RCL32mCL 1097 3162924U, // RCL32mi 1098 11135U, // RCL32r1 1099 11536U, // RCL32rCL 1100 2122540U, // RCL32ri 1101 125903U, // RCL64m1 1102 126336U, // RCL64mCL 1103 4212379U, // RCL64mi 1104 11215U, // RCL64r1 1105 11648U, // RCL64rCL 1106 2123419U, // RCL64ri 1107 142127U, // RCL8m1 1108 142496U, // RCL8mCL 1109 5259429U, // RCL8mi 1110 11055U, // RCL8r1 1111 11424U, // RCL8rCL 1112 2121893U, // RCL8ri 1113 109639U, // RCR16m1 1114 110108U, // RCR16mCL 1115 1067539U, // RCR16mi 1116 11335U, // RCR16r1 1117 11804U, // RCR16rCL 1118 2124307U, // RCR16ri 1119 117671U, // RCR32m1 1120 118076U, // RCR32mCL 1121 3163093U, // RCR32mi 1122 11175U, // RCR32r1 1123 11580U, // RCR32rCL 1124 2122709U, // RCR32ri 1125 125943U, // RCR64m1 1126 126380U, // RCR64mCL 1127 4212513U, // RCR64mi 1128 11255U, // RCR64r1 1129 11692U, // RCR64rCL 1130 2123553U, // RCR64ri 1131 142167U, // RCR8m1 1132 142540U, // RCR8mCL 1133 5259471U, // RCR8mi 1134 11095U, // RCR8r1 1135 11468U, // RCR8rCL 1136 2121935U, // RCR8ri 1137 8872U, // RDFSBASE 1138 9755U, // RDFSBASE64 1139 8894U, // RDGSBASE 1140 9777U, // RDGSBASE64 1141 5334U, // RDMSR 1142 4894U, // RDPMC 1143 10536U, // RDRAND16r 1144 8811U, // RDRAND32r 1145 9694U, // RDRAND64r 1146 10520U, // RDSEED16r 1147 8795U, // RDSEED32r 1148 9678U, // RDSEED64r 1149 4907U, // RDTSC 1150 5243U, // RDTSCP 1151 4340U, // RELEASE_ADD32mi 1152 4340U, // RELEASE_ADD64mi32 1153 4340U, // RELEASE_ADD8mi 1154 4340U, // RELEASE_AND32mi 1155 4340U, // RELEASE_AND64mi32 1156 4340U, // RELEASE_AND8mi 1157 4363U, // RELEASE_DEC16m 1158 4363U, // RELEASE_DEC32m 1159 4363U, // RELEASE_DEC64m 1160 4363U, // RELEASE_DEC8m 1161 4363U, // RELEASE_INC16m 1162 4363U, // RELEASE_INC32m 1163 4363U, // RELEASE_INC64m 1164 4363U, // RELEASE_INC8m 1165 3966U, // RELEASE_MOV16mi 1166 4406U, // RELEASE_MOV16mr 1167 3966U, // RELEASE_MOV32mi 1168 4406U, // RELEASE_MOV32mr 1169 3966U, // RELEASE_MOV64mi32 1170 4406U, // RELEASE_MOV64mr 1171 3966U, // RELEASE_MOV8mi 1172 4406U, // RELEASE_MOV8mr 1173 4340U, // RELEASE_OR32mi 1174 4340U, // RELEASE_OR64mi32 1175 4340U, // RELEASE_OR8mi 1176 4340U, // RELEASE_XOR32mi 1177 4340U, // RELEASE_XOR64mi32 1178 4340U, // RELEASE_XOR8mi 1179 4957U, // REPNE_PREFIX 1180 4838U, // REP_MOVSB_32 1181 4838U, // REP_MOVSB_64 1182 5143U, // REP_MOVSD_32 1183 5143U, // REP_MOVSD_64 1184 5281U, // REP_MOVSQ_64 1185 5731U, // REP_MOVSW_32 1186 5731U, // REP_MOVSW_64 1187 5250U, // REP_PREFIX 1188 4828U, // REP_STOSB_32 1189 4828U, // REP_STOSB_64 1190 5133U, // REP_STOSD_32 1191 5133U, // REP_STOSD_64 1192 5271U, // REP_STOSQ_64 1193 5721U, // REP_STOSW_32 1194 5721U, // REP_STOSW_64 1195 9361U, // RETIL 1196 10186U, // RETIQ 1197 10963U, // RETIW 1198 5154U, // RETL 1199 5292U, // RETQ 1200 5747U, // RETW 1201 4673U, // REX64_PREFIX 1202 109619U, // ROL16m1 1203 110086U, // ROL16mCL 1204 1067436U, // ROL16mi 1205 11315U, // ROL16r1 1206 11782U, // ROL16rCL 1207 2124204U, // ROL16ri 1208 117651U, // ROL32m1 1209 118054U, // ROL32mCL 1210 3162962U, // ROL32mi 1211 11155U, // ROL32r1 1212 11558U, // ROL32rCL 1213 2122578U, // ROL32ri 1214 125923U, // ROL64m1 1215 126358U, // ROL64mCL 1216 4212398U, // ROL64mi 1217 11235U, // ROL64r1 1218 11670U, // ROL64rCL 1219 2123438U, // ROL64ri 1220 142147U, // ROL8m1 1221 142518U, // ROL8mCL 1222 5259441U, // ROL8mi 1223 11075U, // ROL8r1 1224 11446U, // ROL8rCL 1225 2121905U, // ROL8ri 1226 109659U, // ROR16m1 1227 110130U, // ROR16mCL 1228 1067557U, // ROR16mi 1229 11355U, // ROR16r1 1230 11826U, // ROR16rCL 1231 2124325U, // ROR16ri 1232 117691U, // ROR32m1 1233 118098U, // ROR32mCL 1234 3163105U, // ROR32mi 1235 11195U, // ROR32r1 1236 11602U, // ROR32rCL 1237 2122721U, // ROR32ri 1238 125963U, // ROR64m1 1239 126402U, // ROR64mCL 1240 4212525U, // ROR64mi 1241 11275U, // ROR64r1 1242 11714U, // ROR64rCL 1243 2123565U, // ROR64ri 1244 142187U, // ROR8m1 1245 142562U, // ROR8mCL 1246 5259483U, // ROR8mi 1247 11115U, // ROR8r1 1248 11490U, // ROR8rCL 1249 2121947U, // ROR8ri 1250 6382863U, // RORX32mi 1251 35153167U, // RORX32ri 1252 6907970U, // RORX64mi 1253 35153986U, // RORX64ri 1254 5202U, // RSM 1255 5019U, // SAHF 1256 109589U, // SAL16m1 1257 110053U, // SAL16mCL 1258 1067410U, // SAL16mi 1259 11285U, // SAL16r1 1260 11749U, // SAL16rCL 1261 2124178U, // SAL16ri 1262 117621U, // SAL32m1 1263 118021U, // SAL32mCL 1264 3162918U, // SAL32mi 1265 11125U, // SAL32r1 1266 11525U, // SAL32rCL 1267 2122534U, // SAL32ri 1268 125893U, // SAL64m1 1269 126325U, // SAL64mCL 1270 4212373U, // SAL64mi 1271 11205U, // SAL64r1 1272 11637U, // SAL64rCL 1273 2123413U, // SAL64ri 1274 142117U, // SAL8m1 1275 142485U, // SAL8mCL 1276 5259423U, // SAL8mi 1277 11045U, // SAL8r1 1278 11413U, // SAL8rCL 1279 2121887U, // SAL8ri 1280 4881U, // SALC 1281 109629U, // SAR16m1 1282 110097U, // SAR16mCL 1283 1067533U, // SAR16mi 1284 11325U, // SAR16r1 1285 11793U, // SAR16rCL 1286 2124301U, // SAR16ri 1287 117661U, // SAR32m1 1288 118065U, // SAR32mCL 1289 3163087U, // SAR32mi 1290 11165U, // SAR32r1 1291 11569U, // SAR32rCL 1292 2122703U, // SAR32ri 1293 125933U, // SAR64m1 1294 126369U, // SAR64mCL 1295 4212507U, // SAR64mi 1296 11245U, // SAR64r1 1297 11681U, // SAR64rCL 1298 2123547U, // SAR64ri 1299 142157U, // SAR8m1 1300 142529U, // SAR8mCL 1301 5259465U, // SAR8mi 1302 11085U, // SAR8r1 1303 11457U, // SAR8rCL 1304 2121929U, // SAR8ri 1305 6382849U, // SARX32rm 1306 35153153U, // SARX32rr 1307 6907956U, // SARX64rm 1308 35153972U, // SARX64rr 1309 534741U, // SBB16i16 1310 1067221U, // SBB16mi 1311 1067221U, // SBB16mi8 1312 1067221U, // SBB16mr 1313 1599701U, // SBB16ri 1314 1599701U, // SBB16ri8 1315 1607893U, // SBB16rm 1316 1599701U, // SBB16rr 1317 2123989U, // SBB16rr_REV 1318 2630159U, // SBB32i32 1319 3162639U, // SBB32mi 1320 3162639U, // SBB32mi8 1321 3162639U, // SBB32mr 1322 1597967U, // SBB32ri 1323 1597967U, // SBB32ri8 1324 1614351U, // SBB32rm 1325 1597967U, // SBB32rr 1326 2122255U, // SBB32rr_REV 1327 3679618U, // SBB64i32 1328 4212098U, // SBB64mi32 1329 4212098U, // SBB64mi8 1330 4212098U, // SBB64mr 1331 1598850U, // SBB64ri32 1332 1598850U, // SBB64ri8 1333 1623426U, // SBB64rm 1334 1598850U, // SBB64rr 1335 2123138U, // SBB64rr_REV 1336 4726880U, // SBB8i8 1337 5259360U, // SBB8mi 1338 5259360U, // SBB8mi8 1339 5259360U, // SBB8mr 1340 1597536U, // SBB8ri 1341 1597536U, // SBB8ri8 1342 57440U, // SBB8rm 1343 1597536U, // SBB8rr 1344 2121824U, // SBB8rr_REV 1345 4874471U, // SCASB 1346 2786318U, // SCASL 1347 3843930U, // SCASQ 1348 707145U, // SCASW 1349 5581U, // SEG_ALLOCA_32 1350 5581U, // SEG_ALLOCA_64 1351 4984U, // SEH_EndPrologue 1352 4970U, // SEH_Epilogue 1353 12099U, // SEH_PushFrame 1354 12144U, // SEH_PushReg 1355 123219810U, // SEH_SaveReg 1356 123219724U, // SEH_SaveXMM 1357 123219795U, // SEH_SetFrame 1358 12082U, // SEH_StackAlloc 1359 139651U, // SETAEm 1360 8579U, // SETAEr 1361 139331U, // SETAm 1362 8259U, // SETAr 1363 139663U, // SETBEm 1364 8591U, // SETBEr 1365 0U, // SETB_C16r 1366 0U, // SETB_C32r 1367 0U, // SETB_C64r 1368 0U, // SETB_C8r 1369 139539U, // SETBm 1370 8467U, // SETBr 1371 139725U, // SETEm 1372 8653U, // SETEr 1373 139675U, // SETGEm 1374 8603U, // SETGEr 1375 139750U, // SETGm 1376 8678U, // SETGr 1377 139691U, // SETLEm 1378 8619U, // SETLEr 1379 140439U, // SETLm 1380 9367U, // SETLr 1381 139711U, // SETNEm 1382 8639U, // SETNEr 1383 140587U, // SETNOm 1384 9515U, // SETNOr 1385 140620U, // SETNPm 1386 9548U, // SETNPr 1387 141445U, // SETNSm 1388 10373U, // SETNSr 1389 140594U, // SETOm 1390 9522U, // SETOr 1391 140638U, // SETPm 1392 9566U, // SETPr 1393 141461U, // SETSm 1394 10389U, // SETSr 1395 199343U, // SGDT16m 1396 197748U, // SGDT32m 1397 198573U, // SGDT64m 1398 109609U, // SHL16m1 1399 110075U, // SHL16mCL 1400 1067422U, // SHL16mi 1401 11305U, // SHL16r1 1402 11771U, // SHL16rCL 1403 2124190U, // SHL16ri 1404 117641U, // SHL32m1 1405 118043U, // SHL32mCL 1406 3162930U, // SHL32mi 1407 11145U, // SHL32r1 1408 11547U, // SHL32rCL 1409 2122546U, // SHL32ri 1410 125913U, // SHL64m1 1411 126347U, // SHL64mCL 1412 4212385U, // SHL64mi 1413 11225U, // SHL64r1 1414 11659U, // SHL64rCL 1415 2123425U, // SHL64ri 1416 142137U, // SHL8m1 1417 142507U, // SHL8mCL 1418 5259435U, // SHL8mi 1419 11065U, // SHL8r1 1420 11435U, // SHL8rCL 1421 2121899U, // SHL8ri 1422 1068493U, // SHLD16mrCL 1423 210331937U, // SHLD16mri8 1424 2125261U, // SHLD16rrCL 1425 330017U, // SHLD16rri8 1426 3165421U, // SHLD32mrCL 1427 227107428U, // SHLD32mri8 1428 2125037U, // SHLD32rrCL 1429 328292U, // SHLD32rri8 1430 4214109U, // SHLD64mrCL 1431 243885527U, // SHLD64mri8 1432 2125149U, // SHLD64rrCL 1433 329175U, // SHLD64rri8 1434 6382828U, // SHLX32rm 1435 35153132U, // SHLX32rr 1436 6907935U, // SHLX64rm 1437 35153951U, // SHLX64rr 1438 109649U, // SHR16m1 1439 110119U, // SHR16mCL 1440 1067551U, // SHR16mi 1441 11345U, // SHR16r1 1442 11815U, // SHR16rCL 1443 2124319U, // SHR16ri 1444 117681U, // SHR32m1 1445 118087U, // SHR32mCL 1446 3163099U, // SHR32mi 1447 11185U, // SHR32r1 1448 11591U, // SHR32rCL 1449 2122715U, // SHR32ri 1450 125953U, // SHR64m1 1451 126391U, // SHR64mCL 1452 4212519U, // SHR64mi 1453 11265U, // SHR64r1 1454 11703U, // SHR64rCL 1455 2123559U, // SHR64ri 1456 142177U, // SHR8m1 1457 142551U, // SHR8mCL 1458 5259477U, // SHR8mi 1459 11105U, // SHR8r1 1460 11479U, // SHR8rCL 1461 2121941U, // SHR8ri 1462 1068505U, // SHRD16mrCL 1463 210331953U, // SHRD16mri8 1464 2125273U, // SHRD16rrCL 1465 330033U, // SHRD16rri8 1466 3165433U, // SHRD32mrCL 1467 227107444U, // SHRD32mri8 1468 2125049U, // SHRD32rrCL 1469 328308U, // SHRD32rri8 1470 4214121U, // SHRD64mrCL 1471 243885543U, // SHRD64mri8 1472 2125161U, // SHRD64rrCL 1473 329191U, // SHRD64rri8 1474 6382856U, // SHRX32rm 1475 35153160U, // SHRX32rr 1476 6907963U, // SHRX64rm 1477 35153979U, // SHRX64rr 1478 199357U, // SIDT16m 1479 197762U, // SIDT32m 1480 198587U, // SIDT64m 1481 5806U, // SKINIT 1482 109259U, // SLDT16m 1483 10955U, // SLDT16r 1484 9353U, // SLDT32r 1485 108482U, // SLDT64m 1486 10178U, // SLDT64r 1487 109322U, // SMSW16m 1488 11018U, // SMSW16r 1489 9422U, // SMSW32r 1490 10241U, // SMSW64r 1491 4859U, // STAC 1492 4913U, // STC 1493 4932U, // STD 1494 5038U, // STGI 1495 5047U, // STI 1496 158835U, // STOSB 1497 167548U, // STOSL 1498 175792U, // STOSQ 1499 183883U, // STOSW 1500 10819U, // STR16r 1501 9216U, // STR32r 1502 10060U, // STR64r 1503 109123U, // STRm 1504 534755U, // SUB16i16 1505 1067235U, // SUB16mi 1506 1067235U, // SUB16mi8 1507 1067235U, // SUB16mr 1508 1599715U, // SUB16ri 1509 1599715U, // SUB16ri8 1510 1607907U, // SUB16rm 1511 1599715U, // SUB16rr 1512 2124003U, // SUB16rr_REV 1513 2630173U, // SUB32i32 1514 3162653U, // SUB32mi 1515 3162653U, // SUB32mi8 1516 3162653U, // SUB32mr 1517 1597981U, // SUB32ri 1518 1597981U, // SUB32ri8 1519 1614365U, // SUB32rm 1520 1597981U, // SUB32rr 1521 2122269U, // SUB32rr_REV 1522 3679632U, // SUB64i32 1523 4212112U, // SUB64mi32 1524 4212112U, // SUB64mi8 1525 4212112U, // SUB64mr 1526 1598864U, // SUB64ri32 1527 1598864U, // SUB64ri8 1528 1623440U, // SUB64rm 1529 1598864U, // SUB64rr 1530 2123152U, // SUB64rr_REV 1531 4726886U, // SUB8i8 1532 5259366U, // SUB8mi 1533 5259366U, // SUB8mi8 1534 5259366U, // SUB8mr 1535 1597542U, // SUB8ri 1536 1597542U, // SUB8ri8 1537 57446U, // SUB8rm 1538 1597542U, // SUB8rr 1539 2121830U, // SUB8rr_REV 1540 5574U, // SWAPGS 1541 5125U, // SYSCALL 1542 5325U, // SYSENTER 1543 5173U, // SYSEXIT 1544 5311U, // SYSEXIT64 1545 5165U, // SYSRET 1546 5303U, // SYSRET64 1547 65871U, // T1MSKC32rm 1548 22618447U, // T1MSKC32rr 1549 82255U, // T1MSKC64rm 1550 22618447U, // T1MSKC64rr 1551 132418U, // TAILJMPd 1552 132418U, // TAILJMPd64 1553 132412U, // TAILJMPd64_REX 1554 119125U, // TAILJMPm 1555 127339U, // TAILJMPm64 1556 127333U, // TAILJMPm64_REX 1557 0U, // TAILJMPr 1558 12651U, // TAILJMPr64 1559 12645U, // TAILJMPr64_REX 1560 0U, // TCRETURNdi 1561 0U, // TCRETURNdi64 1562 0U, // TCRETURNmi 1563 0U, // TCRETURNmi64 1564 0U, // TCRETURNri 1565 0U, // TCRETURNri64 1566 535279U, // TEST16i16 1567 1067759U, // TEST16mi 1568 1067759U, // TEST16mi_alt 1569 22620911U, // TEST16ri 1570 22620911U, // TEST16ri_alt 1571 257436399U, // TEST16rm 1572 22620911U, // TEST16rr 1573 2630835U, // TEST32i32 1574 3163315U, // TEST32mi 1575 3163315U, // TEST32mi_alt 1576 22619315U, // TEST32ri 1577 22619315U, // TEST32ri_alt 1578 274212019U, // TEST32rm 1579 22619315U, // TEST32rr 1580 3680230U, // TEST64i32 1581 4212710U, // TEST64mi32 1582 4212710U, // TEST64mi32_alt 1583 22620134U, // TEST64ri32 1584 22620134U, // TEST64ri32_alt 1585 290990054U, // TEST64rm 1586 22620134U, // TEST64rr 1587 4727071U, // TEST8i8 1588 5259551U, // TEST8mi 1589 5259551U, // TEST8mi_alt 1590 22618399U, // TEST8ri 1591 0U, // TEST8ri_NOREX 1592 22618399U, // TEST8ri_alt 1593 307765535U, // TEST8rm 1594 22618399U, // TEST8rr 1595 4539U, // TLSCall_32 1596 4629U, // TLSCall_64 1597 4552U, // TLS_addr32 1598 4642U, // TLS_addr64 1599 4565U, // TLS_base_addr32 1600 4655U, // TLS_base_addr64 1601 4583U, // TRAP 1602 101089U, // TZCNT16rm 1603 22620897U, // TZCNT16rr 1604 66725U, // TZCNT32rm 1605 22619301U, // TZCNT32rr 1606 83928U, // TZCNT64rm 1607 22620120U, // TZCNT64rr 1608 66042U, // TZMSK32rm 1609 22618618U, // TZMSK32rr 1610 82426U, // TZMSK64rm 1611 22618618U, // TZMSK64rr 1612 4793U, // UD2B 1613 844639978U, // VAARG_64 1614 1733832474U, // VASTART_SAVE_XMM_REGS 1615 108641U, // VERRm 1616 10337U, // VERRr 1617 109081U, // VERWm 1618 10777U, // VERWr 1619 5118U, // VMCALL 1620 125001U, // VMCLEARm 1621 4900U, // VMFUNC 1622 5024U, // VMLAUNCH 1623 5771U, // VMLOAD32 1624 5851U, // VMLOAD64 1625 5110U, // VMMCALL 1626 123246U, // VMPTRLDm 1627 125118U, // VMPTRSTm 1628 3162699U, // VMREAD32rm 1629 22618699U, // VMREAD32rr 1630 4212158U, // VMREAD64rm 1631 22619582U, // VMREAD64rr 1632 4948U, // VMRESUME 1633 5795U, // VMRUN32 1634 5875U, // VMRUN64 1635 5783U, // VMSAVE32 1636 5863U, // VMSAVE64 1637 66260U, // VMWRITE32rm 1638 22618836U, // VMWRITE32rr 1639 83527U, // VMWRITE64rm 1640 22619719U, // VMWRITE64rr 1641 5007U, // VMXOFF 1642 124187U, // VMXON 1643 4941U, // WBINVD 1644 5206U, // WIN_ALLOCA 1645 5051U, // WIN_FTOL_32 1646 5051U, // WIN_FTOL_64 1647 8883U, // WRFSBASE 1648 9766U, // WRFSBASE64 1649 8905U, // WRGSBASE 1650 9788U, // WRGSBASE64 1651 5340U, // WRMSR 1652 1067281U, // XADD16rm 1653 22620433U, // XADD16rr 1654 3162708U, // XADD32rm 1655 22618708U, // XADD32rr 1656 4212167U, // XADD64rm 1657 22619591U, // XADD64rr 1658 5259390U, // XADD8rm 1659 22618238U, // XADD8rr 1660 534908U, // XCHG16ar 1661 140061052U, // XCHG16rm 1662 324610428U, // XCHG16rr 1663 2630389U, // XCHG32ar 1664 2630389U, // XCHG32ar64 1665 156836597U, // XCHG32rm 1666 324608757U, // XCHG32rr 1667 3679848U, // XCHG64ar 1668 173614696U, // XCHG64rm 1669 324609640U, // XCHG64rr 1670 190390420U, // XCHG8rm 1671 324608148U, // XCHG8rr 1672 4864U, // XCRYPTCBC 1673 4808U, // XCRYPTCFB 1674 5346U, // XCRYPTCTR 1675 4798U, // XCRYPTECB 1676 4818U, // XCRYPTOFB 1677 5681U, // XGETBV 1678 4848U, // XLAT 1679 535083U, // XOR16i16 1680 1067563U, // XOR16mi 1681 1067563U, // XOR16mi8 1682 1067563U, // XOR16mr 1683 1600043U, // XOR16ri 1684 1600043U, // XOR16ri8 1685 1608235U, // XOR16rm 1686 1600043U, // XOR16rr 1687 2124331U, // XOR16rr_REV 1688 2630631U, // XOR32i32 1689 3163111U, // XOR32mi 1690 3163111U, // XOR32mi8 1691 3163111U, // XOR32mr 1692 1598439U, // XOR32ri 1693 1598439U, // XOR32ri8 1694 1614823U, // XOR32rm 1695 1598439U, // XOR32rr 1696 2122727U, // XOR32rr_REV 1697 3680051U, // XOR64i32 1698 4212531U, // XOR64mi32 1699 4212531U, // XOR64mi8 1700 4212531U, // XOR64mr 1701 1599283U, // XOR64ri32 1702 1599283U, // XOR64ri8 1703 1623859U, // XOR64rm 1704 1599283U, // XOR64rr 1705 2123571U, // XOR64rr_REV 1706 4727009U, // XOR8i8 1707 5259489U, // XOR8mi 1708 5259489U, // XOR8mi8 1709 5259489U, // XOR8mr 1710 1597665U, // XOR8ri 1711 1597665U, // XOR8ri8 1712 57569U, // XOR8rm 1713 1597665U, // XOR8rr 1714 2121953U, // XOR8rr_REV 1715 198745U, // XRSTOR 1716 196628U, // XRSTOR64 1717 198796U, // XRSTORS 1718 196648U, // XRSTORS64 1719 197075U, // XSAVE 1720 196619U, // XSAVE64 1721 196921U, // XSAVEC 1722 196609U, // XSAVEC64 1723 198824U, // XSAVEOPT 1724 196659U, // XSAVEOPT64 1725 198772U, // XSAVES 1726 196638U, // XSAVES64 1727 5688U, // XSETBV 1728 4491U, // XSHA1 1729 4686U, // XSHA256 1730 4963U, // XSTORE 1731 0U 1732 }; 1733 1734#ifndef CAPSTONE_DIET 1735 static char AsmStrs[] = { 1736 /* 0 */ 'x', 's', 'a', 'v', 'e', 'c', '6', '4', 9, 0, 1737 /* 10 */ 'x', 's', 'a', 'v', 'e', '6', '4', 9, 0, 1738 /* 19 */ 'x', 'r', 's', 't', 'o', 'r', '6', '4', 9, 0, 1739 /* 29 */ 'x', 's', 'a', 'v', 'e', 's', '6', '4', 9, 0, 1740 /* 39 */ 'x', 'r', 's', 't', 'o', 'r', 's', '6', '4', 9, 0, 1741 /* 50 */ 'x', 's', 'a', 'v', 'e', 'o', 'p', 't', '6', '4', 9, 0, 1742 /* 62 */ 'j', 'a', 9, 0, 1743 /* 66 */ 's', 'e', 't', 'a', 9, 0, 1744 /* 72 */ 'c', 'm', 'p', 'x', 'c', 'h', 'g', '1', '6', 'b', 9, 0, 1745 /* 84 */ 'c', 'm', 'p', 'x', 'c', 'h', 'g', '8', 'b', 9, 0, 1746 /* 95 */ 's', 'b', 'b', 'b', 9, 0, 1747 /* 101 */ 's', 'u', 'b', 'b', 9, 0, 1748 /* 107 */ 'a', 'd', 'c', 'b', 9, 0, 1749 /* 113 */ 'd', 'e', 'c', 'b', 9, 0, 1750 /* 119 */ 'i', 'n', 'c', 'b', 9, 0, 1751 /* 125 */ 'x', 'a', 'd', 'd', 'b', 9, 0, 1752 /* 132 */ 'a', 'n', 'd', 'b', 9, 0, 1753 /* 138 */ 'n', 'e', 'g', 'b', 9, 0, 1754 /* 144 */ 'c', 'm', 'p', 'x', 'c', 'h', 'g', 'b', 9, 0, 1755 /* 154 */ 'j', 'b', 9, 0, 1756 /* 158 */ 's', 'a', 'l', 'b', 9, 0, 1757 /* 164 */ 'r', 'c', 'l', 'b', 9, 0, 1758 /* 170 */ 's', 'h', 'l', 'b', 9, 0, 1759 /* 176 */ 'r', 'o', 'l', 'b', 9, 0, 1760 /* 182 */ 'i', 'm', 'u', 'l', 'b', 9, 0, 1761 /* 189 */ 'i', 'n', 'b', 9, 0, 1762 /* 194 */ 'c', 'm', 'p', 'b', 9, 0, 1763 /* 200 */ 's', 'a', 'r', 'b', 9, 0, 1764 /* 206 */ 'r', 'c', 'r', 'b', 9, 0, 1765 /* 212 */ 's', 'h', 'r', 'b', 9, 0, 1766 /* 218 */ 'r', 'o', 'r', 'b', 9, 0, 1767 /* 224 */ 'x', 'o', 'r', 'b', 9, 0, 1768 /* 230 */ 's', 'c', 'a', 's', 'b', 9, 0, 1769 /* 237 */ 'm', 'o', 'v', 'a', 'b', 's', 'b', 9, 0, 1770 /* 246 */ 'l', 'o', 'd', 's', 'b', 9, 0, 1771 /* 253 */ 'c', 'm', 'p', 's', 'b', 9, 0, 1772 /* 260 */ 'o', 'u', 't', 's', 'b', 9, 0, 1773 /* 267 */ 'm', 'o', 'v', 's', 'b', 9, 0, 1774 /* 274 */ 's', 'e', 't', 'b', 9, 0, 1775 /* 280 */ 'n', 'o', 't', 'b', 9, 0, 1776 /* 286 */ 't', 'e', 's', 't', 'b', 9, 0, 1777 /* 293 */ 'i', 'd', 'i', 'v', 'b', 9, 0, 1778 /* 300 */ 'm', 'o', 'v', 'b', 9, 0, 1779 /* 306 */ 'c', 'l', 'w', 'b', 9, 0, 1780 /* 312 */ 'x', 's', 'a', 'v', 'e', 'c', 9, 0, 1781 /* 320 */ 'b', 'l', 'c', 'i', 'c', 9, 0, 1782 /* 327 */ 'b', 'l', 's', 'i', 'c', 9, 0, 1783 /* 334 */ 't', '1', 'm', 's', 'k', 'c', 9, 0, 1784 /* 342 */ 'a', 'a', 'd', 9, 0, 1785 /* 347 */ 'i', 'n', 'v', 'p', 'c', 'i', 'd', 9, 0, 1786 /* 356 */ 'i', 'n', 'v', 'v', 'p', 'i', 'd', 9, 0, 1787 /* 365 */ 'v', 'm', 'p', 't', 'r', 'l', 'd', 9, 0, 1788 /* 374 */ 'b', 'o', 'u', 'n', 'd', 9, 0, 1789 /* 381 */ 'j', 'a', 'e', 9, 0, 1790 /* 386 */ 's', 'e', 't', 'a', 'e', 9, 0, 1791 /* 393 */ 'j', 'b', 'e', 9, 0, 1792 /* 398 */ 's', 'e', 't', 'b', 'e', 9, 0, 1793 /* 405 */ 'j', 'g', 'e', 9, 0, 1794 /* 410 */ 's', 'e', 't', 'g', 'e', 9, 0, 1795 /* 417 */ 'j', 'e', 9, 0, 1796 /* 421 */ 'j', 'l', 'e', 9, 0, 1797 /* 426 */ 's', 'e', 't', 'l', 'e', 9, 0, 1798 /* 433 */ 'j', 'n', 'e', 9, 0, 1799 /* 438 */ 'l', 'o', 'o', 'p', 'n', 'e', 9, 0, 1800 /* 446 */ 's', 'e', 't', 'n', 'e', 9, 0, 1801 /* 453 */ 'l', 'o', 'o', 'p', 'e', 9, 0, 1802 /* 460 */ 's', 'e', 't', 'e', 9, 0, 1803 /* 466 */ 'x', 's', 'a', 'v', 'e', 9, 0, 1804 /* 473 */ 'j', 'g', 9, 0, 1805 /* 477 */ 'i', 'n', 'v', 'l', 'p', 'g', 9, 0, 1806 /* 485 */ 's', 'e', 't', 'g', 9, 0, 1807 /* 491 */ 'b', 'l', 'c', 'i', 9, 0, 1808 /* 497 */ 'b', 'l', 'c', 'm', 's', 'k', 9, 0, 1809 /* 505 */ 't', 'z', 'm', 's', 'k', 9, 0, 1810 /* 512 */ 'l', 'e', 'a', 'l', 9, 0, 1811 /* 518 */ 'c', 'm', 'o', 'v', 'a', 'l', 9, 0, 1812 /* 526 */ 's', 'b', 'b', 'l', 9, 0, 1813 /* 532 */ 'm', 'o', 'v', 's', 'b', 'l', 9, 0, 1814 /* 540 */ 's', 'u', 'b', 'l', 9, 0, 1815 /* 546 */ 'c', 'm', 'o', 'v', 'b', 'l', 9, 0, 1816 /* 554 */ 'm', 'o', 'v', 'z', 'b', 'l', 9, 0, 1817 /* 562 */ 'a', 'd', 'c', 'l', 9, 0, 1818 /* 568 */ 'd', 'e', 'c', 'l', 9, 0, 1819 /* 574 */ 'i', 'n', 'c', 'l', 9, 0, 1820 /* 580 */ 'b', 't', 'c', 'l', 9, 0, 1821 /* 586 */ 'v', 'm', 'r', 'e', 'a', 'd', 'l', 9, 0, 1822 /* 595 */ 'x', 'a', 'd', 'd', 'l', 9, 0, 1823 /* 602 */ 'r', 'd', 's', 'e', 'e', 'd', 'l', 9, 0, 1824 /* 611 */ 's', 'h', 'l', 'd', 'l', 9, 0, 1825 /* 618 */ 'r', 'd', 'r', 'a', 'n', 'd', 'l', 9, 0, 1826 /* 627 */ 's', 'h', 'r', 'd', 'l', 9, 0, 1827 /* 634 */ 'c', 'm', 'o', 'v', 'a', 'e', 'l', 9, 0, 1828 /* 643 */ 'c', 'm', 'o', 'v', 'b', 'e', 'l', 9, 0, 1829 /* 652 */ 'c', 'm', 'o', 'v', 'g', 'e', 'l', 9, 0, 1830 /* 661 */ 'c', 'm', 'o', 'v', 'l', 'e', 'l', 9, 0, 1831 /* 670 */ 'c', 'm', 'o', 'v', 'n', 'e', 'l', 9, 0, 1832 /* 679 */ 'r', 'd', 'f', 's', 'b', 'a', 's', 'e', 'l', 9, 0, 1833 /* 690 */ 'w', 'r', 'f', 's', 'b', 'a', 's', 'e', 'l', 9, 0, 1834 /* 701 */ 'r', 'd', 'g', 's', 'b', 'a', 's', 'e', 'l', 9, 0, 1835 /* 712 */ 'w', 'r', 'g', 's', 'b', 'a', 's', 'e', 'l', 9, 0, 1836 /* 723 */ 'v', 'm', 'w', 'r', 'i', 't', 'e', 'l', 9, 0, 1837 /* 733 */ 'c', 'm', 'o', 'v', 'e', 'l', 9, 0, 1838 /* 741 */ 'b', 's', 'f', 'l', 9, 0, 1839 /* 747 */ 'n', 'e', 'g', 'l', 9, 0, 1840 /* 753 */ 'c', 'm', 'p', 'x', 'c', 'h', 'g', 'l', 9, 0, 1841 /* 763 */ 'c', 'm', 'o', 'v', 'g', 'l', 9, 0, 1842 /* 771 */ 'p', 'u', 's', 'h', 'l', 9, 0, 1843 /* 778 */ 'b', 'z', 'h', 'i', 'l', 9, 0, 1844 /* 785 */ 'b', 'l', 's', 'i', 'l', 9, 0, 1845 /* 792 */ 'j', 'l', 9, 0, 1846 /* 796 */ 'b', 'l', 's', 'm', 's', 'k', 'l', 9, 0, 1847 /* 805 */ 's', 'a', 'l', 'l', 9, 0, 1848 /* 811 */ 'r', 'c', 'l', 'l', 9, 0, 1849 /* 817 */ 's', 'h', 'l', 'l', 9, 0, 1850 /* 823 */ 'b', 'l', 'c', 'f', 'i', 'l', 'l', 9, 0, 1851 /* 832 */ 'b', 'l', 's', 'f', 'i', 'l', 'l', 9, 0, 1852 /* 841 */ 'l', 'c', 'a', 'l', 'l', 'l', 9, 0, 1853 /* 849 */ 'r', 'o', 'l', 'l', 9, 0, 1854 /* 855 */ 'l', 's', 'l', 'l', 9, 0, 1855 /* 861 */ 'i', 'm', 'u', 'l', 'l', 9, 0, 1856 /* 868 */ 'c', 'm', 'o', 'v', 'l', 'l', 9, 0, 1857 /* 876 */ 'a', 'n', 'd', 'n', 'l', 9, 0, 1858 /* 883 */ 'i', 'n', 'l', 9, 0, 1859 /* 888 */ 'c', 'm', 'o', 'v', 'n', 'o', 'l', 9, 0, 1860 /* 897 */ 'c', 'm', 'o', 'v', 'o', 'l', 9, 0, 1861 /* 905 */ 'b', 's', 'w', 'a', 'p', 'l', 9, 0, 1862 /* 913 */ 'p', 'd', 'e', 'p', 'l', 9, 0, 1863 /* 920 */ 'c', 'm', 'p', 'l', 9, 0, 1864 /* 926 */ 'l', 'j', 'm', 'p', 'l', 9, 0, 1865 /* 933 */ 'c', 'm', 'o', 'v', 'n', 'p', 'l', 9, 0, 1866 /* 942 */ 'n', 'o', 'p', 'l', 9, 0, 1867 /* 948 */ 'p', 'o', 'p', 'l', 9, 0, 1868 /* 954 */ 'a', 'r', 'p', 'l', 9, 0, 1869 /* 960 */ 'c', 'm', 'o', 'v', 'p', 'l', 9, 0, 1870 /* 968 */ 'l', 'a', 'r', 'l', 9, 0, 1871 /* 974 */ 's', 'a', 'r', 'l', 9, 0, 1872 /* 980 */ 'r', 'c', 'r', 'l', 9, 0, 1873 /* 986 */ 's', 'h', 'r', 'l', 9, 0, 1874 /* 992 */ 'r', 'o', 'r', 'l', 9, 0, 1875 /* 998 */ 'x', 'o', 'r', 'l', 9, 0, 1876 /* 1004 */ 'b', 's', 'r', 'l', 9, 0, 1877 /* 1010 */ 'b', 'l', 's', 'r', 'l', 9, 0, 1878 /* 1017 */ 'b', 't', 'r', 'l', 9, 0, 1879 /* 1023 */ 's', 't', 'r', 'l', 9, 0, 1880 /* 1029 */ 'b', 'e', 'x', 't', 'r', 'l', 9, 0, 1881 /* 1037 */ 's', 'c', 'a', 's', 'l', 9, 0, 1882 /* 1044 */ 'm', 'o', 'v', 'a', 'b', 's', 'l', 9, 0, 1883 /* 1053 */ 'l', 'd', 's', 'l', 9, 0, 1884 /* 1059 */ 'l', 'o', 'd', 's', 'l', 9, 0, 1885 /* 1066 */ 'l', 'e', 's', 'l', 9, 0, 1886 /* 1072 */ 'l', 'f', 's', 'l', 9, 0, 1887 /* 1078 */ 'l', 'g', 's', 'l', 9, 0, 1888 /* 1084 */ 'c', 'm', 'o', 'v', 'n', 's', 'l', 9, 0, 1889 /* 1093 */ 'c', 'm', 'p', 's', 'l', 9, 0, 1890 /* 1100 */ 'l', 's', 's', 'l', 9, 0, 1891 /* 1106 */ 'b', 't', 's', 'l', 9, 0, 1892 /* 1112 */ 'o', 'u', 't', 's', 'l', 9, 0, 1893 /* 1119 */ 'c', 'm', 'o', 'v', 's', 'l', 9, 0, 1894 /* 1127 */ 'b', 't', 'l', 9, 0, 1895 /* 1132 */ 'l', 'g', 'd', 't', 'l', 9, 0, 1896 /* 1139 */ 's', 'g', 'd', 't', 'l', 9, 0, 1897 /* 1146 */ 'l', 'i', 'd', 't', 'l', 9, 0, 1898 /* 1153 */ 's', 'i', 'd', 't', 'l', 9, 0, 1899 /* 1160 */ 's', 'l', 'd', 't', 'l', 9, 0, 1900 /* 1167 */ 'l', 'r', 'e', 't', 'l', 9, 0, 1901 /* 1174 */ 's', 'e', 't', 'l', 9, 0, 1902 /* 1180 */ 'l', 'z', 'c', 'n', 't', 'l', 9, 0, 1903 /* 1188 */ 't', 'z', 'c', 'n', 't', 'l', 9, 0, 1904 /* 1196 */ 'n', 'o', 't', 'l', 9, 0, 1905 /* 1202 */ 't', 'e', 's', 't', 'l', 9, 0, 1906 /* 1209 */ 'p', 'e', 'x', 't', 'l', 9, 0, 1907 /* 1216 */ 'i', 'd', 'i', 'v', 'l', 9, 0, 1908 /* 1223 */ 'm', 'o', 'v', 'l', 9, 0, 1909 /* 1229 */ 's', 'm', 's', 'w', 'l', 9, 0, 1910 /* 1236 */ 'm', 'o', 'v', 's', 'w', 'l', 9, 0, 1911 /* 1244 */ 'm', 'o', 'v', 'z', 'w', 'l', 9, 0, 1912 /* 1252 */ 'a', 'd', 'c', 'x', 'l', 9, 0, 1913 /* 1259 */ 's', 'h', 'l', 'x', 'l', 9, 0, 1914 /* 1266 */ 'm', 'u', 'l', 'x', 'l', 9, 0, 1915 /* 1273 */ 'a', 'd', 'o', 'x', 'l', 9, 0, 1916 /* 1280 */ 's', 'a', 'r', 'x', 'l', 9, 0, 1917 /* 1287 */ 's', 'h', 'r', 'x', 'l', 9, 0, 1918 /* 1294 */ 'r', 'o', 'r', 'x', 'l', 9, 0, 1919 /* 1301 */ 'a', 'a', 'm', 9, 0, 1920 /* 1306 */ 'v', 'm', 'x', 'o', 'n', 9, 0, 1921 /* 1313 */ 'j', 'o', 9, 0, 1922 /* 1317 */ 'j', 'n', 'o', 9, 0, 1923 /* 1322 */ 's', 'e', 't', 'n', 'o', 9, 0, 1924 /* 1329 */ 's', 'e', 't', 'o', 9, 0, 1925 /* 1335 */ 'j', 'p', 9, 0, 1926 /* 1339 */ 'r', 'e', 'x', '6', '4', 32, 'j', 'm', 'p', 9, 0, 1927 /* 1350 */ 'j', 'n', 'p', 9, 0, 1928 /* 1355 */ 's', 'e', 't', 'n', 'p', 9, 0, 1929 /* 1362 */ 'n', 'o', 'p', 9, 0, 1930 /* 1367 */ 'l', 'o', 'o', 'p', 9, 0, 1931 /* 1373 */ 's', 'e', 't', 'p', 9, 0, 1932 /* 1379 */ '#', 'E', 'H', '_', 'S', 'j', 'L', 'j', '_', 'S', 'e', 't', 'u', 'p', 9, 0, 1933 /* 1395 */ 'l', 'e', 'a', 'q', 9, 0, 1934 /* 1401 */ 'c', 'm', 'o', 'v', 'a', 'q', 9, 0, 1935 /* 1409 */ 's', 'b', 'b', 'q', 9, 0, 1936 /* 1415 */ 'm', 'o', 'v', 's', 'b', 'q', 9, 0, 1937 /* 1423 */ 's', 'u', 'b', 'q', 9, 0, 1938 /* 1429 */ 'c', 'm', 'o', 'v', 'b', 'q', 9, 0, 1939 /* 1437 */ 'm', 'o', 'v', 'z', 'b', 'q', 9, 0, 1940 /* 1445 */ 'a', 'd', 'c', 'q', 9, 0, 1941 /* 1451 */ 'd', 'e', 'c', 'q', 9, 0, 1942 /* 1457 */ 'i', 'n', 'c', 'q', 9, 0, 1943 /* 1463 */ 'b', 't', 'c', 'q', 9, 0, 1944 /* 1469 */ 'v', 'm', 'r', 'e', 'a', 'd', 'q', 9, 0, 1945 /* 1478 */ 'x', 'a', 'd', 'd', 'q', 9, 0, 1946 /* 1485 */ 'r', 'd', 's', 'e', 'e', 'd', 'q', 9, 0, 1947 /* 1494 */ 's', 'h', 'l', 'd', 'q', 9, 0, 1948 /* 1501 */ 'r', 'd', 'r', 'a', 'n', 'd', 'q', 9, 0, 1949 /* 1510 */ 's', 'h', 'r', 'd', 'q', 9, 0, 1950 /* 1517 */ 'c', 'm', 'o', 'v', 'a', 'e', 'q', 9, 0, 1951 /* 1526 */ 'c', 'm', 'o', 'v', 'b', 'e', 'q', 9, 0, 1952 /* 1535 */ 'c', 'm', 'o', 'v', 'g', 'e', 'q', 9, 0, 1953 /* 1544 */ 'c', 'm', 'o', 'v', 'l', 'e', 'q', 9, 0, 1954 /* 1553 */ 'c', 'm', 'o', 'v', 'n', 'e', 'q', 9, 0, 1955 /* 1562 */ 'r', 'd', 'f', 's', 'b', 'a', 's', 'e', 'q', 9, 0, 1956 /* 1573 */ 'w', 'r', 'f', 's', 'b', 'a', 's', 'e', 'q', 9, 0, 1957 /* 1584 */ 'r', 'd', 'g', 's', 'b', 'a', 's', 'e', 'q', 9, 0, 1958 /* 1595 */ 'w', 'r', 'g', 's', 'b', 'a', 's', 'e', 'q', 9, 0, 1959 /* 1606 */ 'v', 'm', 'w', 'r', 'i', 't', 'e', 'q', 9, 0, 1960 /* 1616 */ 'c', 'm', 'o', 'v', 'e', 'q', 9, 0, 1961 /* 1624 */ 'b', 's', 'f', 'q', 9, 0, 1962 /* 1630 */ 'n', 'e', 'g', 'q', 9, 0, 1963 /* 1636 */ 'c', 'm', 'p', 'x', 'c', 'h', 'g', 'q', 9, 0, 1964 /* 1646 */ 'c', 'm', 'o', 'v', 'g', 'q', 9, 0, 1965 /* 1654 */ 'p', 'u', 's', 'h', 'q', 9, 0, 1966 /* 1661 */ 'b', 'z', 'h', 'i', 'q', 9, 0, 1967 /* 1668 */ 'b', 'l', 's', 'i', 'q', 9, 0, 1968 /* 1675 */ 'b', 'l', 's', 'm', 's', 'k', 'q', 9, 0, 1969 /* 1684 */ 's', 'a', 'l', 'q', 9, 0, 1970 /* 1690 */ 'r', 'c', 'l', 'q', 9, 0, 1971 /* 1696 */ 's', 'h', 'l', 'q', 9, 0, 1972 /* 1702 */ 'c', 'a', 'l', 'l', 'q', 9, 0, 1973 /* 1709 */ 'r', 'o', 'l', 'q', 9, 0, 1974 /* 1715 */ 'l', 's', 'l', 'q', 9, 0, 1975 /* 1721 */ 'm', 'o', 'v', 's', 'l', 'q', 9, 0, 1976 /* 1729 */ 'i', 'm', 'u', 'l', 'q', 9, 0, 1977 /* 1736 */ 'c', 'm', 'o', 'v', 'l', 'q', 9, 0, 1978 /* 1744 */ 'a', 'n', 'd', 'n', 'q', 9, 0, 1979 /* 1751 */ 'c', 'm', 'o', 'v', 'n', 'o', 'q', 9, 0, 1980 /* 1760 */ 'c', 'm', 'o', 'v', 'o', 'q', 9, 0, 1981 /* 1768 */ 'b', 's', 'w', 'a', 'p', 'q', 9, 0, 1982 /* 1776 */ 'p', 'd', 'e', 'p', 'q', 9, 0, 1983 /* 1783 */ 'c', 'm', 'p', 'q', 9, 0, 1984 /* 1789 */ 'c', 'm', 'o', 'v', 'n', 'p', 'q', 9, 0, 1985 /* 1798 */ 'p', 'o', 'p', 'q', 9, 0, 1986 /* 1804 */ 'c', 'm', 'o', 'v', 'p', 'q', 9, 0, 1987 /* 1812 */ 'l', 'a', 'r', 'q', 9, 0, 1988 /* 1818 */ 's', 'a', 'r', 'q', 9, 0, 1989 /* 1824 */ 'r', 'c', 'r', 'q', 9, 0, 1990 /* 1830 */ 's', 'h', 'r', 'q', 9, 0, 1991 /* 1836 */ 'r', 'o', 'r', 'q', 9, 0, 1992 /* 1842 */ 'x', 'o', 'r', 'q', 9, 0, 1993 /* 1848 */ 'b', 's', 'r', 'q', 9, 0, 1994 /* 1854 */ 'b', 'l', 's', 'r', 'q', 9, 0, 1995 /* 1861 */ 'b', 't', 'r', 'q', 9, 0, 1996 /* 1867 */ 's', 't', 'r', 'q', 9, 0, 1997 /* 1873 */ 'b', 'e', 'x', 't', 'r', 'q', 9, 0, 1998 /* 1881 */ 's', 'c', 'a', 's', 'q', 9, 0, 1999 /* 1888 */ 'm', 'o', 'v', 'a', 'b', 's', 'q', 9, 0, 2000 /* 1897 */ 'l', 'o', 'd', 's', 'q', 9, 0, 2001 /* 1904 */ 'l', 'f', 's', 'q', 9, 0, 2002 /* 1910 */ 'l', 'g', 's', 'q', 9, 0, 2003 /* 1916 */ 'c', 'm', 'o', 'v', 'n', 's', 'q', 9, 0, 2004 /* 1925 */ 'c', 'm', 'p', 's', 'q', 9, 0, 2005 /* 1932 */ 'l', 's', 's', 'q', 9, 0, 2006 /* 1938 */ 'b', 't', 's', 'q', 9, 0, 2007 /* 1944 */ 'c', 'm', 'o', 'v', 's', 'q', 9, 0, 2008 /* 1952 */ 'b', 't', 'q', 9, 0, 2009 /* 1957 */ 'l', 'g', 'd', 't', 'q', 9, 0, 2010 /* 1964 */ 's', 'g', 'd', 't', 'q', 9, 0, 2011 /* 1971 */ 'l', 'i', 'd', 't', 'q', 9, 0, 2012 /* 1978 */ 's', 'i', 'd', 't', 'q', 9, 0, 2013 /* 1985 */ 's', 'l', 'd', 't', 'q', 9, 0, 2014 /* 1992 */ 'l', 'r', 'e', 't', 'q', 9, 0, 2015 /* 1999 */ 'l', 'z', 'c', 'n', 't', 'q', 9, 0, 2016 /* 2007 */ 't', 'z', 'c', 'n', 't', 'q', 9, 0, 2017 /* 2015 */ 'n', 'o', 't', 'q', 9, 0, 2018 /* 2021 */ 't', 'e', 's', 't', 'q', 9, 0, 2019 /* 2028 */ 'p', 'e', 'x', 't', 'q', 9, 0, 2020 /* 2035 */ 'i', 'd', 'i', 'v', 'q', 9, 0, 2021 /* 2042 */ 'm', 'o', 'v', 'q', 9, 0, 2022 /* 2048 */ 's', 'm', 's', 'w', 'q', 9, 0, 2023 /* 2055 */ 'm', 'o', 'v', 's', 'w', 'q', 9, 0, 2024 /* 2063 */ 'm', 'o', 'v', 'z', 'w', 'q', 9, 0, 2025 /* 2071 */ 'a', 'd', 'c', 'x', 'q', 9, 0, 2026 /* 2078 */ 's', 'h', 'l', 'x', 'q', 9, 0, 2027 /* 2085 */ 'm', 'u', 'l', 'x', 'q', 9, 0, 2028 /* 2092 */ 'a', 'd', 'o', 'x', 'q', 9, 0, 2029 /* 2099 */ 's', 'a', 'r', 'x', 'q', 9, 0, 2030 /* 2106 */ 's', 'h', 'r', 'x', 'q', 9, 0, 2031 /* 2113 */ 'r', 'o', 'r', 'x', 'q', 9, 0, 2032 /* 2120 */ 'v', 'm', 'c', 'l', 'e', 'a', 'r', 9, 0, 2033 /* 2129 */ 'e', 'n', 't', 'e', 'r', 9, 0, 2034 /* 2136 */ 'x', 'r', 's', 't', 'o', 'r', 9, 0, 2035 /* 2144 */ 'v', 'e', 'r', 'r', 9, 0, 2036 /* 2150 */ 'b', 'e', 'x', 't', 'r', 9, 0, 2037 /* 2157 */ 'b', 'l', 'c', 's', 9, 0, 2038 /* 2163 */ 'x', 's', 'a', 'v', 'e', 's', 9, 0, 2039 /* 2171 */ 'j', 's', 9, 0, 2040 /* 2175 */ 'j', 'n', 's', 9, 0, 2041 /* 2180 */ 's', 'e', 't', 'n', 's', 9, 0, 2042 /* 2187 */ 'x', 'r', 's', 't', 'o', 'r', 's', 9, 0, 2043 /* 2196 */ 's', 'e', 't', 's', 9, 0, 2044 /* 2202 */ 'i', 'n', 't', 9, 0, 2045 /* 2207 */ 'i', 'n', 'v', 'e', 'p', 't', 9, 0, 2046 /* 2215 */ 'x', 's', 'a', 'v', 'e', 'o', 'p', 't', 9, 0, 2047 /* 2225 */ 'c', 'l', 'f', 'l', 'u', 's', 'h', 'o', 'p', 't', 9, 0, 2048 /* 2237 */ 'v', 'm', 'p', 't', 'r', 's', 't', 9, 0, 2049 /* 2246 */ 'l', 'e', 'a', 'w', 9, 0, 2050 /* 2252 */ 'c', 'm', 'o', 'v', 'a', 'w', 9, 0, 2051 /* 2260 */ 's', 'b', 'b', 'w', 9, 0, 2052 /* 2266 */ 'm', 'o', 'v', 's', 'b', 'w', 9, 0, 2053 /* 2274 */ 's', 'u', 'b', 'w', 9, 0, 2054 /* 2280 */ 'c', 'm', 'o', 'v', 'b', 'w', 9, 0, 2055 /* 2288 */ 'm', 'o', 'v', 'z', 'b', 'w', 9, 0, 2056 /* 2296 */ 'a', 'd', 'c', 'w', 9, 0, 2057 /* 2302 */ 'd', 'e', 'c', 'w', 9, 0, 2058 /* 2308 */ 'i', 'n', 'c', 'w', 9, 0, 2059 /* 2314 */ 'b', 't', 'c', 'w', 9, 0, 2060 /* 2320 */ 'x', 'a', 'd', 'd', 'w', 9, 0, 2061 /* 2327 */ 'r', 'd', 's', 'e', 'e', 'd', 'w', 9, 0, 2062 /* 2336 */ 's', 'h', 'l', 'd', 'w', 9, 0, 2063 /* 2343 */ 'r', 'd', 'r', 'a', 'n', 'd', 'w', 9, 0, 2064 /* 2352 */ 's', 'h', 'r', 'd', 'w', 9, 0, 2065 /* 2359 */ 'c', 'm', 'o', 'v', 'a', 'e', 'w', 9, 0, 2066 /* 2368 */ 'c', 'm', 'o', 'v', 'b', 'e', 'w', 9, 0, 2067 /* 2377 */ 'c', 'm', 'o', 'v', 'g', 'e', 'w', 9, 0, 2068 /* 2386 */ 'c', 'm', 'o', 'v', 'l', 'e', 'w', 9, 0, 2069 /* 2395 */ 'c', 'm', 'o', 'v', 'n', 'e', 'w', 9, 0, 2070 /* 2404 */ 'c', 'm', 'o', 'v', 'e', 'w', 9, 0, 2071 /* 2412 */ 'b', 's', 'f', 'w', 9, 0, 2072 /* 2418 */ 'n', 'e', 'g', 'w', 9, 0, 2073 /* 2424 */ 'c', 'm', 'p', 'x', 'c', 'h', 'g', 'w', 9, 0, 2074 /* 2434 */ 'c', 'm', 'o', 'v', 'g', 'w', 9, 0, 2075 /* 2442 */ 'p', 'u', 's', 'h', 'w', 9, 0, 2076 /* 2449 */ 's', 'a', 'l', 'w', 9, 0, 2077 /* 2455 */ 'r', 'c', 'l', 'w', 9, 0, 2078 /* 2461 */ 's', 'h', 'l', 'w', 9, 0, 2079 /* 2467 */ 'l', 'c', 'a', 'l', 'l', 'w', 9, 0, 2080 /* 2475 */ 'r', 'o', 'l', 'w', 9, 0, 2081 /* 2481 */ 'l', 's', 'l', 'w', 9, 0, 2082 /* 2487 */ 'i', 'm', 'u', 'l', 'w', 9, 0, 2083 /* 2494 */ 'c', 'm', 'o', 'v', 'l', 'w', 9, 0, 2084 /* 2502 */ 'i', 'n', 'w', 9, 0, 2085 /* 2507 */ 'c', 'm', 'o', 'v', 'n', 'o', 'w', 9, 0, 2086 /* 2516 */ 'c', 'm', 'o', 'v', 'o', 'w', 9, 0, 2087 /* 2524 */ 'c', 'm', 'p', 'w', 9, 0, 2088 /* 2530 */ 'l', 'j', 'm', 'p', 'w', 9, 0, 2089 /* 2537 */ 'c', 'm', 'o', 'v', 'n', 'p', 'w', 9, 0, 2090 /* 2546 */ 'n', 'o', 'p', 'w', 9, 0, 2091 /* 2552 */ 'p', 'o', 'p', 'w', 9, 0, 2092 /* 2558 */ 'c', 'm', 'o', 'v', 'p', 'w', 9, 0, 2093 /* 2566 */ 'l', 'a', 'r', 'w', 9, 0, 2094 /* 2572 */ 's', 'a', 'r', 'w', 9, 0, 2095 /* 2578 */ 'r', 'c', 'r', 'w', 9, 0, 2096 /* 2584 */ 'v', 'e', 'r', 'w', 9, 0, 2097 /* 2590 */ 's', 'h', 'r', 'w', 9, 0, 2098 /* 2596 */ 'r', 'o', 'r', 'w', 9, 0, 2099 /* 2602 */ 'x', 'o', 'r', 'w', 9, 0, 2100 /* 2608 */ 'b', 's', 'r', 'w', 9, 0, 2101 /* 2614 */ 'b', 't', 'r', 'w', 9, 0, 2102 /* 2620 */ 'l', 't', 'r', 'w', 9, 0, 2103 /* 2626 */ 's', 't', 'r', 'w', 9, 0, 2104 /* 2632 */ 's', 'c', 'a', 's', 'w', 9, 0, 2105 /* 2639 */ 'm', 'o', 'v', 'a', 'b', 's', 'w', 9, 0, 2106 /* 2648 */ 'l', 'd', 's', 'w', 9, 0, 2107 /* 2654 */ 'l', 'o', 'd', 's', 'w', 9, 0, 2108 /* 2661 */ 'l', 'e', 's', 'w', 9, 0, 2109 /* 2667 */ 'l', 'f', 's', 'w', 9, 0, 2110 /* 2673 */ 'l', 'g', 's', 'w', 9, 0, 2111 /* 2679 */ 'c', 'm', 'o', 'v', 'n', 's', 'w', 9, 0, 2112 /* 2688 */ 'c', 'm', 'p', 's', 'w', 9, 0, 2113 /* 2695 */ 'l', 's', 's', 'w', 9, 0, 2114 /* 2701 */ 'b', 't', 's', 'w', 9, 0, 2115 /* 2707 */ 'o', 'u', 't', 's', 'w', 9, 0, 2116 /* 2714 */ 'c', 'm', 'o', 'v', 's', 'w', 9, 0, 2117 /* 2722 */ 'b', 't', 'w', 9, 0, 2118 /* 2727 */ 'l', 'g', 'd', 't', 'w', 9, 0, 2119 /* 2734 */ 's', 'g', 'd', 't', 'w', 9, 0, 2120 /* 2741 */ 'l', 'i', 'd', 't', 'w', 9, 0, 2121 /* 2748 */ 's', 'i', 'd', 't', 'w', 9, 0, 2122 /* 2755 */ 'l', 'l', 'd', 't', 'w', 9, 0, 2123 /* 2762 */ 's', 'l', 'd', 't', 'w', 9, 0, 2124 /* 2769 */ 'l', 'r', 'e', 't', 'w', 9, 0, 2125 /* 2776 */ 'l', 'z', 'c', 'n', 't', 'w', 9, 0, 2126 /* 2784 */ 't', 'z', 'c', 'n', 't', 'w', 9, 0, 2127 /* 2792 */ 'n', 'o', 't', 'w', 9, 0, 2128 /* 2798 */ 't', 'e', 's', 't', 'w', 9, 0, 2129 /* 2805 */ 'i', 'd', 'i', 'v', 'w', 9, 0, 2130 /* 2812 */ 'm', 'o', 'v', 'w', 9, 0, 2131 /* 2818 */ 'l', 'm', 's', 'w', 'w', 9, 0, 2132 /* 2825 */ 's', 'm', 's', 'w', 'w', 9, 0, 2133 /* 2832 */ 'j', 'e', 'c', 'x', 'z', 9, 0, 2134 /* 2839 */ 'j', 'c', 'x', 'z', 9, 0, 2135 /* 2845 */ 'j', 'r', 'c', 'x', 'z', 9, 0, 2136 /* 2852 */ 's', 'a', 'l', 'b', 9, '$', '1', ',', 32, 0, 2137 /* 2862 */ 'r', 'c', 'l', 'b', 9, '$', '1', ',', 32, 0, 2138 /* 2872 */ 's', 'h', 'l', 'b', 9, '$', '1', ',', 32, 0, 2139 /* 2882 */ 'r', 'o', 'l', 'b', 9, '$', '1', ',', 32, 0, 2140 /* 2892 */ 's', 'a', 'r', 'b', 9, '$', '1', ',', 32, 0, 2141 /* 2902 */ 'r', 'c', 'r', 'b', 9, '$', '1', ',', 32, 0, 2142 /* 2912 */ 's', 'h', 'r', 'b', 9, '$', '1', ',', 32, 0, 2143 /* 2922 */ 'r', 'o', 'r', 'b', 9, '$', '1', ',', 32, 0, 2144 /* 2932 */ 's', 'a', 'l', 'l', 9, '$', '1', ',', 32, 0, 2145 /* 2942 */ 'r', 'c', 'l', 'l', 9, '$', '1', ',', 32, 0, 2146 /* 2952 */ 's', 'h', 'l', 'l', 9, '$', '1', ',', 32, 0, 2147 /* 2962 */ 'r', 'o', 'l', 'l', 9, '$', '1', ',', 32, 0, 2148 /* 2972 */ 's', 'a', 'r', 'l', 9, '$', '1', ',', 32, 0, 2149 /* 2982 */ 'r', 'c', 'r', 'l', 9, '$', '1', ',', 32, 0, 2150 /* 2992 */ 's', 'h', 'r', 'l', 9, '$', '1', ',', 32, 0, 2151 /* 3002 */ 'r', 'o', 'r', 'l', 9, '$', '1', ',', 32, 0, 2152 /* 3012 */ 's', 'a', 'l', 'q', 9, '$', '1', ',', 32, 0, 2153 /* 3022 */ 'r', 'c', 'l', 'q', 9, '$', '1', ',', 32, 0, 2154 /* 3032 */ 's', 'h', 'l', 'q', 9, '$', '1', ',', 32, 0, 2155 /* 3042 */ 'r', 'o', 'l', 'q', 9, '$', '1', ',', 32, 0, 2156 /* 3052 */ 's', 'a', 'r', 'q', 9, '$', '1', ',', 32, 0, 2157 /* 3062 */ 'r', 'c', 'r', 'q', 9, '$', '1', ',', 32, 0, 2158 /* 3072 */ 's', 'h', 'r', 'q', 9, '$', '1', ',', 32, 0, 2159 /* 3082 */ 'r', 'o', 'r', 'q', 9, '$', '1', ',', 32, 0, 2160 /* 3092 */ 's', 'a', 'l', 'w', 9, '$', '1', ',', 32, 0, 2161 /* 3102 */ 'r', 'c', 'l', 'w', 9, '$', '1', ',', 32, 0, 2162 /* 3112 */ 's', 'h', 'l', 'w', 9, '$', '1', ',', 32, 0, 2163 /* 3122 */ 'r', 'o', 'l', 'w', 9, '$', '1', ',', 32, 0, 2164 /* 3132 */ 's', 'a', 'r', 'w', 9, '$', '1', ',', 32, 0, 2165 /* 3142 */ 'r', 'c', 'r', 'w', 9, '$', '1', ',', 32, 0, 2166 /* 3152 */ 's', 'h', 'r', 'w', 9, '$', '1', ',', 32, 0, 2167 /* 3162 */ 'r', 'o', 'r', 'w', 9, '$', '1', ',', 32, 0, 2168 /* 3172 */ 'm', 'o', 'v', 'a', 'b', 's', 'b', 9, '%', 'a', 'l', ',', 32, 0, 2169 /* 3186 */ 's', 't', 'o', 's', 'b', 9, '%', 'a', 'l', ',', 32, 0, 2170 /* 3198 */ 'o', 'u', 't', 'b', 9, '%', 'a', 'l', ',', 32, 0, 2171 /* 3209 */ 'm', 'o', 'v', 'b', 9, '%', 'a', 'l', ',', 32, 0, 2172 /* 3220 */ 's', 'a', 'l', 'b', 9, '%', 'c', 'l', ',', 32, 0, 2173 /* 3231 */ 'r', 'c', 'l', 'b', 9, '%', 'c', 'l', ',', 32, 0, 2174 /* 3242 */ 's', 'h', 'l', 'b', 9, '%', 'c', 'l', ',', 32, 0, 2175 /* 3253 */ 'r', 'o', 'l', 'b', 9, '%', 'c', 'l', ',', 32, 0, 2176 /* 3264 */ 's', 'a', 'r', 'b', 9, '%', 'c', 'l', ',', 32, 0, 2177 /* 3275 */ 'r', 'c', 'r', 'b', 9, '%', 'c', 'l', ',', 32, 0, 2178 /* 3286 */ 's', 'h', 'r', 'b', 9, '%', 'c', 'l', ',', 32, 0, 2179 /* 3297 */ 'r', 'o', 'r', 'b', 9, '%', 'c', 'l', ',', 32, 0, 2180 /* 3308 */ 's', 'h', 'l', 'd', 'l', 9, '%', 'c', 'l', ',', 32, 0, 2181 /* 3320 */ 's', 'h', 'r', 'd', 'l', 9, '%', 'c', 'l', ',', 32, 0, 2182 /* 3332 */ 's', 'a', 'l', 'l', 9, '%', 'c', 'l', ',', 32, 0, 2183 /* 3343 */ 'r', 'c', 'l', 'l', 9, '%', 'c', 'l', ',', 32, 0, 2184 /* 3354 */ 's', 'h', 'l', 'l', 9, '%', 'c', 'l', ',', 32, 0, 2185 /* 3365 */ 'r', 'o', 'l', 'l', 9, '%', 'c', 'l', ',', 32, 0, 2186 /* 3376 */ 's', 'a', 'r', 'l', 9, '%', 'c', 'l', ',', 32, 0, 2187 /* 3387 */ 'r', 'c', 'r', 'l', 9, '%', 'c', 'l', ',', 32, 0, 2188 /* 3398 */ 's', 'h', 'r', 'l', 9, '%', 'c', 'l', ',', 32, 0, 2189 /* 3409 */ 'r', 'o', 'r', 'l', 9, '%', 'c', 'l', ',', 32, 0, 2190 /* 3420 */ 's', 'h', 'l', 'd', 'q', 9, '%', 'c', 'l', ',', 32, 0, 2191 /* 3432 */ 's', 'h', 'r', 'd', 'q', 9, '%', 'c', 'l', ',', 32, 0, 2192 /* 3444 */ 's', 'a', 'l', 'q', 9, '%', 'c', 'l', ',', 32, 0, 2193 /* 3455 */ 'r', 'c', 'l', 'q', 9, '%', 'c', 'l', ',', 32, 0, 2194 /* 3466 */ 's', 'h', 'l', 'q', 9, '%', 'c', 'l', ',', 32, 0, 2195 /* 3477 */ 'r', 'o', 'l', 'q', 9, '%', 'c', 'l', ',', 32, 0, 2196 /* 3488 */ 's', 'a', 'r', 'q', 9, '%', 'c', 'l', ',', 32, 0, 2197 /* 3499 */ 'r', 'c', 'r', 'q', 9, '%', 'c', 'l', ',', 32, 0, 2198 /* 3510 */ 's', 'h', 'r', 'q', 9, '%', 'c', 'l', ',', 32, 0, 2199 /* 3521 */ 'r', 'o', 'r', 'q', 9, '%', 'c', 'l', ',', 32, 0, 2200 /* 3532 */ 's', 'h', 'l', 'd', 'w', 9, '%', 'c', 'l', ',', 32, 0, 2201 /* 3544 */ 's', 'h', 'r', 'd', 'w', 9, '%', 'c', 'l', ',', 32, 0, 2202 /* 3556 */ 's', 'a', 'l', 'w', 9, '%', 'c', 'l', ',', 32, 0, 2203 /* 3567 */ 'r', 'c', 'l', 'w', 9, '%', 'c', 'l', ',', 32, 0, 2204 /* 3578 */ 's', 'h', 'l', 'w', 9, '%', 'c', 'l', ',', 32, 0, 2205 /* 3589 */ 'r', 'o', 'l', 'w', 9, '%', 'c', 'l', ',', 32, 0, 2206 /* 3600 */ 's', 'a', 'r', 'w', 9, '%', 'c', 'l', ',', 32, 0, 2207 /* 3611 */ 'r', 'c', 'r', 'w', 9, '%', 'c', 'l', ',', 32, 0, 2208 /* 3622 */ 's', 'h', 'r', 'w', 9, '%', 'c', 'l', ',', 32, 0, 2209 /* 3633 */ 'r', 'o', 'r', 'w', 9, '%', 'c', 'l', ',', 32, 0, 2210 /* 3644 */ 'm', 'o', 'v', 'a', 'b', 's', 'w', 9, '%', 'a', 'x', ',', 32, 0, 2211 /* 3658 */ 's', 't', 'o', 's', 'w', 9, '%', 'a', 'x', ',', 32, 0, 2212 /* 3670 */ 'o', 'u', 't', 'w', 9, '%', 'a', 'x', ',', 32, 0, 2213 /* 3681 */ 'm', 'o', 'v', 'w', 9, '%', 'a', 'x', ',', 32, 0, 2214 /* 3692 */ 'm', 'o', 'v', 'a', 'b', 's', 'l', 9, '%', 'e', 'a', 'x', ',', 32, 0, 2215 /* 3707 */ 's', 't', 'o', 's', 'l', 9, '%', 'e', 'a', 'x', ',', 32, 0, 2216 /* 3720 */ 'o', 'u', 't', 'l', 9, '%', 'e', 'a', 'x', ',', 32, 0, 2217 /* 3732 */ 'm', 'o', 'v', 'l', 9, '%', 'e', 'a', 'x', ',', 32, 0, 2218 /* 3744 */ 'm', 'o', 'v', 'a', 'b', 's', 'q', 9, '%', 'r', 'a', 'x', ',', 32, 0, 2219 /* 3759 */ 's', 't', 'o', 's', 'q', 9, '%', 'r', 'a', 'x', ',', 32, 0, 2220 /* 3772 */ 'm', 'o', 'v', 'q', 9, '%', 'r', 'a', 'x', ',', 32, 0, 2221 /* 3784 */ 'i', 'n', 's', 'b', 9, '%', 'd', 'x', ',', 32, 0, 2222 /* 3795 */ 'i', 'n', 's', 'l', 9, '%', 'd', 'x', ',', 32, 0, 2223 /* 3806 */ 'i', 'n', 's', 'w', 9, '%', 'd', 'x', ',', 32, 0, 2224 /* 3817 */ '#', 'V', 'A', 'A', 'R', 'G', '_', '6', '4', 32, 0, 2225 /* 3828 */ 'r', 'e', 't', 9, '#', 'e', 'h', '_', 'r', 'e', 't', 'u', 'r', 'n', ',', 32, 'a', 'd', 'd', 'r', ':', 32, 0, 2226 /* 3851 */ '#', 'S', 'E', 'H', '_', 'S', 'a', 'v', 'e', 'X', 'M', 'M', 32, 0, 2227 /* 3865 */ '#', 'V', 'A', 'S', 'T', 'A', 'R', 'T', '_', 'S', 'A', 'V', 'E', '_', 'X', 'M', 'M', '_', 'R', 'E', 'G', 'S', 32, 0, 2228 /* 3889 */ '#', 'S', 'E', 'H', '_', 'S', 't', 'a', 'c', 'k', 'A', 'l', 'l', 'o', 'c', 32, 0, 2229 /* 3906 */ '#', 'S', 'E', 'H', '_', 'P', 'u', 's', 'h', 'F', 'r', 'a', 'm', 'e', 32, 0, 2230 /* 3922 */ '#', 'S', 'E', 'H', '_', 'S', 'e', 't', 'F', 'r', 'a', 'm', 'e', 32, 0, 2231 /* 3937 */ '#', 'S', 'E', 'H', '_', 'S', 'a', 'v', 'e', 'R', 'e', 'g', 32, 0, 2232 /* 3951 */ '#', 'S', 'E', 'H', '_', 'P', 'u', 's', 'h', 'R', 'e', 'g', 32, 0, 2233 /* 3965 */ '#', 'R', 'E', 'L', 'E', 'A', 'S', 'E', '_', 'M', 'O', 'V', 32, 'P', 'S', 'E', 'U', 'D', 'O', 32, '!', 0, 2234 /* 3987 */ '#', 'C', 'M', 'O', 'V', '_', '_', 'R', 'F', 'P', '8', '0', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0, 2235 /* 4008 */ '#', 'C', 'M', 'O', 'V', '_', '_', 'V', '4', 'F', '3', '2', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0, 2236 /* 4029 */ '#', 'C', 'M', 'O', 'V', '_', '_', 'V', '1', '6', 'F', '3', '2', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0, 2237 /* 4051 */ '#', 'C', 'M', 'O', 'V', '_', '_', 'V', '8', 'F', '3', '2', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0, 2238 /* 4072 */ '#', 'C', 'M', 'O', 'V', '_', '_', 'R', 'F', 'P', '3', '2', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0, 2239 /* 4093 */ '#', 'C', 'M', 'O', 'V', '_', '_', 'F', 'R', '3', '2', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0, 2240 /* 4113 */ '#', 'C', 'M', 'O', 'V', '_', '_', 'G', 'R', '3', '2', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0, 2241 /* 4133 */ '#', 'C', 'M', 'O', 'V', '_', '_', 'V', '2', 'F', '6', '4', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0, 2242 /* 4154 */ '#', 'C', 'M', 'O', 'V', '_', '_', 'V', '4', 'F', '6', '4', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0, 2243 /* 4175 */ '#', 'C', 'M', 'O', 'V', '_', '_', 'V', '8', 'F', '6', '4', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0, 2244 /* 4196 */ '#', 'C', 'M', 'O', 'V', '_', '_', 'V', '2', 'I', '6', '4', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0, 2245 /* 4217 */ '#', 'C', 'M', 'O', 'V', '_', '_', 'V', '4', 'I', '6', '4', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0, 2246 /* 4238 */ '#', 'C', 'M', 'O', 'V', '_', '_', 'V', '8', 'I', '6', '4', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0, 2247 /* 4259 */ '#', 'C', 'M', 'O', 'V', '_', '_', 'R', 'F', 'P', '6', '4', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0, 2248 /* 4280 */ '#', 'C', 'M', 'O', 'V', '_', '_', 'F', 'R', '6', '4', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0, 2249 /* 4300 */ '#', 'C', 'M', 'O', 'V', '_', '_', 'G', 'R', '1', '6', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0, 2250 /* 4320 */ '#', 'C', 'M', 'O', 'V', '_', '_', 'G', 'R', '8', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0, 2251 /* 4339 */ '#', 'R', 'E', 'L', 'E', 'A', 'S', 'E', '_', 'B', 'I', 'N', 'O', 'P', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0, 2252 /* 4362 */ '#', 'R', 'E', 'L', 'E', 'A', 'S', 'E', '_', 'U', 'N', 'O', 'P', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0, 2253 /* 4384 */ '#', 'A', 'C', 'Q', 'U', 'I', 'R', 'E', '_', 'M', 'O', 'V', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0, 2254 /* 4405 */ '#', 'R', 'E', 'L', 'E', 'A', 'S', 'E', '_', 'M', 'O', 'V', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0, 2255 /* 4426 */ 'l', 'c', 'a', 'l', 'l', 'l', 9, '*', 0, 2256 /* 4435 */ 'l', 'j', 'm', 'p', 'l', 9, '*', 0, 2257 /* 4443 */ 'l', 'c', 'a', 'l', 'l', 'q', 9, '*', 0, 2258 /* 4452 */ 'r', 'e', 'x', '6', '4', 32, 'j', 'm', 'p', 'q', 9, '*', 0, 2259 /* 4465 */ 'l', 'j', 'm', 'p', 'q', 9, '*', 0, 2260 /* 4473 */ 'l', 'c', 'a', 'l', 'l', 'w', 9, '*', 0, 2261 /* 4482 */ 'l', 'j', 'm', 'p', 'w', 9, '*', 0, 2262 /* 4490 */ 'x', 's', 'h', 'a', '1', 0, 2263 /* 4496 */ 'i', 'n', 't', '1', 0, 2264 /* 4501 */ '#', 'E', 'H', '_', 'S', 'J', 'L', 'J', '_', 'L', 'O', 'N', 'G', 'J', 'M', 'P', '3', '2', 0, 2265 /* 4520 */ '#', 'E', 'H', '_', 'S', 'J', 'L', 'J', '_', 'S', 'E', 'T', 'J', 'M', 'P', '3', '2', 0, 2266 /* 4538 */ '#', 32, 'T', 'L', 'S', 'C', 'a', 'l', 'l', '_', '3', '2', 0, 2267 /* 4551 */ '#', 32, 'T', 'L', 'S', '_', 'a', 'd', 'd', 'r', '3', '2', 0, 2268 /* 4564 */ '#', 32, 'T', 'L', 'S', '_', 'b', 'a', 's', 'e', '_', 'a', 'd', 'd', 'r', '3', '2', 0, 2269 /* 4582 */ 'u', 'd', '2', 0, 2270 /* 4586 */ 'i', 'n', 't', '3', 0, 2271 /* 4591 */ '#', 'E', 'H', '_', 'S', 'J', 'L', 'J', '_', 'L', 'O', 'N', 'G', 'J', 'M', 'P', '6', '4', 0, 2272 /* 4610 */ '#', 'E', 'H', '_', 'S', 'J', 'L', 'J', '_', 'S', 'E', 'T', 'J', 'M', 'P', '6', '4', 0, 2273 /* 4628 */ '#', 32, 'T', 'L', 'S', 'C', 'a', 'l', 'l', '_', '6', '4', 0, 2274 /* 4641 */ '#', 32, 'T', 'L', 'S', '_', 'a', 'd', 'd', 'r', '6', '4', 0, 2275 /* 4654 */ '#', 32, 'T', 'L', 'S', '_', 'b', 'a', 's', 'e', '_', 'a', 'd', 'd', 'r', '6', '4', 0, 2276 /* 4672 */ 'r', 'e', 'x', '6', '4', 0, 2277 /* 4678 */ 'd', 'a', 't', 'a', '1', '6', 0, 2278 /* 4685 */ 'x', 's', 'h', 'a', '2', '5', '6', 0, 2279 /* 4693 */ 'L', 'I', 'F', 'E', 'T', 'I', 'M', 'E', '_', 'E', 'N', 'D', 0, 2280 /* 4706 */ 'B', 'U', 'N', 'D', 'L', 'E', 0, 2281 /* 4713 */ 'D', 'B', 'G', '_', 'V', 'A', 'L', 'U', 'E', 0, 2282 /* 4723 */ '#', 'A', 'D', 'J', 'C', 'A', 'L', 'L', 'S', 'T', 'A', 'C', 'K', 'D', 'O', 'W', 'N', 0, 2283 /* 4741 */ '#', 'A', 'D', 'J', 'C', 'A', 'L', 'L', 'S', 'T', 'A', 'C', 'K', 'U', 'P', 0, 2284 /* 4757 */ '#', 'M', 'E', 'M', 'B', 'A', 'R', 'R', 'I', 'E', 'R', 0, 2285 /* 4769 */ 'L', 'I', 'F', 'E', 'T', 'I', 'M', 'E', '_', 'S', 'T', 'A', 'R', 'T', 0, 2286 /* 4784 */ 'a', 'a', 'a', 0, 2287 /* 4788 */ 'd', 'a', 'a', 0, 2288 /* 4792 */ 'u', 'd', '2', 'b', 0, 2289 /* 4797 */ 'x', 'c', 'r', 'y', 'p', 't', 'e', 'c', 'b', 0, 2290 /* 4807 */ 'x', 'c', 'r', 'y', 'p', 't', 'c', 'f', 'b', 0, 2291 /* 4817 */ 'x', 'c', 'r', 'y', 'p', 't', 'o', 'f', 'b', 0, 2292 /* 4827 */ 'r', 'e', 'p', ';', 's', 't', 'o', 's', 'b', 0, 2293 /* 4837 */ 'r', 'e', 'p', ';', 'm', 'o', 'v', 's', 'b', 0, 2294 /* 4847 */ 'x', 'l', 'a', 't', 'b', 0, 2295 /* 4853 */ 'c', 'l', 'a', 'c', 0, 2296 /* 4858 */ 's', 't', 'a', 'c', 0, 2297 /* 4863 */ 'x', 'c', 'r', 'y', 'p', 't', 'c', 'b', 'c', 0, 2298 /* 4873 */ 'g', 'e', 't', 's', 'e', 'c', 0, 2299 /* 4880 */ 's', 'a', 'l', 'c', 0, 2300 /* 4885 */ 'c', 'l', 'c', 0, 2301 /* 4889 */ 'c', 'm', 'c', 0, 2302 /* 4893 */ 'r', 'd', 'p', 'm', 'c', 0, 2303 /* 4899 */ 'v', 'm', 'f', 'u', 'n', 'c', 0, 2304 /* 4906 */ 'r', 'd', 't', 's', 'c', 0, 2305 /* 4912 */ 's', 't', 'c', 0, 2306 /* 4916 */ 'c', 'p', 'u', 'i', 'd', 0, 2307 /* 4922 */ 'c', 'l', 'd', 0, 2308 /* 4926 */ 'c', 'l', 't', 'd', 0, 2309 /* 4931 */ 's', 't', 'd', 0, 2310 /* 4935 */ 'c', 'w', 't', 'd', 0, 2311 /* 4940 */ 'w', 'b', 'i', 'n', 'v', 'd', 0, 2312 /* 4947 */ 'v', 'm', 'r', 'e', 's', 'u', 'm', 'e', 0, 2313 /* 4956 */ 'r', 'e', 'p', 'n', 'e', 0, 2314 /* 4962 */ 'x', 's', 't', 'o', 'r', 'e', 0, 2315 /* 4969 */ '#', 'S', 'E', 'H', '_', 'E', 'p', 'i', 'l', 'o', 'g', 'u', 'e', 0, 2316 /* 4983 */ '#', 'S', 'E', 'H', '_', 'E', 'n', 'd', 'P', 'r', 'o', 'l', 'o', 'g', 'u', 'e', 0, 2317 /* 5000 */ 'l', 'e', 'a', 'v', 'e', 0, 2318 /* 5006 */ 'v', 'm', 'x', 'o', 'f', 'f', 0, 2319 /* 5013 */ 'l', 'a', 'h', 'f', 0, 2320 /* 5018 */ 's', 'a', 'h', 'f', 0, 2321 /* 5023 */ 'v', 'm', 'l', 'a', 'u', 'n', 'c', 'h', 0, 2322 /* 5032 */ 'c', 'l', 'g', 'i', 0, 2323 /* 5037 */ 's', 't', 'g', 'i', 0, 2324 /* 5042 */ 'c', 'l', 'i', 0, 2325 /* 5046 */ 's', 't', 'i', 0, 2326 /* 5050 */ '#', 32, 'w', 'i', 'n', '3', '2', 32, 'f', 'p', 't', 'o', 'u', 'i', 0, 2327 /* 5065 */ 'l', 'o', 'c', 'k', 0, 2328 /* 5070 */ 'i', 'n', 'b', 9, '%', 'd', 'x', ',', 32, '%', 'a', 'l', 0, 2329 /* 5083 */ 'p', 'u', 's', 'h', 'a', 'l', 0, 2330 /* 5090 */ 'p', 'o', 'p', 'a', 'l', 0, 2331 /* 5096 */ 'p', 'u', 's', 'h', 'f', 'l', 0, 2332 /* 5103 */ 'p', 'o', 'p', 'f', 'l', 0, 2333 /* 5109 */ 'v', 'm', 'm', 'c', 'a', 'l', 'l', 0, 2334 /* 5117 */ 'v', 'm', 'c', 'a', 'l', 'l', 0, 2335 /* 5124 */ 's', 'y', 's', 'c', 'a', 'l', 'l', 0, 2336 /* 5132 */ 'r', 'e', 'p', ';', 's', 't', 'o', 's', 'l', 0, 2337 /* 5142 */ 'r', 'e', 'p', ';', 'm', 'o', 'v', 's', 'l', 0, 2338 /* 5152 */ 'i', 'r', 'e', 't', 'l', 0, 2339 /* 5158 */ 'l', 'r', 'e', 't', 'l', 0, 2340 /* 5164 */ 's', 'y', 's', 'r', 'e', 't', 'l', 0, 2341 /* 5172 */ 's', 'y', 's', 'e', 'x', 'i', 't', 'l', 0, 2342 /* 5181 */ 'c', 'w', 't', 'l', 0, 2343 /* 5186 */ 'm', 'o', 'n', 't', 'm', 'u', 'l', 0, 2344 /* 5194 */ 'f', 's', 'e', 't', 'p', 'm', 0, 2345 /* 5201 */ 'r', 's', 'm', 0, 2346 /* 5205 */ '#', 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, 2347 /* 5232 */ 'i', 'n', 't', 'o', 0, 2348 /* 5237 */ 'c', 'q', 't', 'o', 0, 2349 /* 5242 */ 'r', 'd', 't', 's', 'c', 'p', 0, 2350 /* 5249 */ 'r', 'e', 'p', 0, 2351 /* 5253 */ 'n', 'o', 'p', 0, 2352 /* 5257 */ 'p', 'u', 's', 'h', 'f', 'q', 0, 2353 /* 5264 */ 'p', 'o', 'p', 'f', 'q', 0, 2354 /* 5270 */ 'r', 'e', 'p', ';', 's', 't', 'o', 's', 'q', 0, 2355 /* 5280 */ 'r', 'e', 'p', ';', 'm', 'o', 'v', 's', 'q', 0, 2356 /* 5290 */ 'i', 'r', 'e', 't', 'q', 0, 2357 /* 5296 */ 'l', 'r', 'e', 't', 'q', 0, 2358 /* 5302 */ 's', 'y', 's', 'r', 'e', 't', 'q', 0, 2359 /* 5310 */ 's', 'y', 's', 'e', 'x', 'i', 't', 'q', 0, 2360 /* 5319 */ 'c', 'l', 't', 'q', 0, 2361 /* 5324 */ 's', 'y', 's', 'e', 'n', 't', 'e', 'r', 0, 2362 /* 5333 */ 'r', 'd', 'm', 's', 'r', 0, 2363 /* 5339 */ 'w', 'r', 'm', 's', 'r', 0, 2364 /* 5345 */ 'x', 'c', 'r', 'y', 'p', 't', 'c', 't', 'r', 0, 2365 /* 5355 */ 'a', 'a', 's', 0, 2366 /* 5359 */ 'd', 'a', 's', 0, 2367 /* 5363 */ 'p', 'u', 's', 'h', 'l', 9, '%', 'c', 's', 0, 2368 /* 5373 */ 'p', 'u', 's', 'h', 'w', 9, '%', 'c', 's', 0, 2369 /* 5383 */ 'p', 'u', 's', 'h', 'l', 9, '%', 'd', 's', 0, 2370 /* 5393 */ 'p', 'o', 'p', 'l', 9, '%', 'd', 's', 0, 2371 /* 5402 */ 'p', 'u', 's', 'h', 'w', 9, '%', 'd', 's', 0, 2372 /* 5412 */ 'p', 'o', 'p', 'w', 9, '%', 'd', 's', 0, 2373 /* 5421 */ 'p', 'u', 's', 'h', 'l', 9, '%', 'e', 's', 0, 2374 /* 5431 */ 'p', 'o', 'p', 'l', 9, '%', 'e', 's', 0, 2375 /* 5440 */ 'p', 'u', 's', 'h', 'w', 9, '%', 'e', 's', 0, 2376 /* 5450 */ 'p', 'o', 'p', 'w', 9, '%', 'e', 's', 0, 2377 /* 5459 */ 'p', 'u', 's', 'h', 'l', 9, '%', 'f', 's', 0, 2378 /* 5469 */ 'p', 'o', 'p', 'l', 9, '%', 'f', 's', 0, 2379 /* 5478 */ 'p', 'u', 's', 'h', 'q', 9, '%', 'f', 's', 0, 2380 /* 5488 */ 'p', 'o', 'p', 'q', 9, '%', 'f', 's', 0, 2381 /* 5497 */ 'p', 'u', 's', 'h', 'w', 9, '%', 'f', 's', 0, 2382 /* 5507 */ 'p', 'o', 'p', 'w', 9, '%', 'f', 's', 0, 2383 /* 5516 */ 'p', 'u', 's', 'h', 'l', 9, '%', 'g', 's', 0, 2384 /* 5526 */ 'p', 'o', 'p', 'l', 9, '%', 'g', 's', 0, 2385 /* 5535 */ 'p', 'u', 's', 'h', 'q', 9, '%', 'g', 's', 0, 2386 /* 5545 */ 'p', 'o', 'p', 'q', 9, '%', 'g', 's', 0, 2387 /* 5554 */ 'p', 'u', 's', 'h', 'w', 9, '%', 'g', 's', 0, 2388 /* 5564 */ 'p', 'o', 'p', 'w', 9, '%', 'g', 's', 0, 2389 /* 5573 */ 's', 'w', 'a', 'p', 'g', 's', 0, 2390 /* 5580 */ '#', 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, 2391 /* 5625 */ 'p', 'u', 's', 'h', 'l', 9, '%', 's', 's', 0, 2392 /* 5635 */ 'p', 'o', 'p', 'l', 9, '%', 's', 's', 0, 2393 /* 5644 */ 'p', 'u', 's', 'h', 'w', 9, '%', 's', 's', 0, 2394 /* 5654 */ 'p', 'o', 'p', 'w', 9, '%', 's', 's', 0, 2395 /* 5663 */ 'c', 'l', 't', 's', 0, 2396 /* 5668 */ 'p', 'c', 'o', 'm', 'm', 'i', 't', 0, 2397 /* 5676 */ 'h', 'l', 't', 0, 2398 /* 5680 */ 'x', 'g', 'e', 't', 'b', 'v', 0, 2399 /* 5687 */ 'x', 's', 'e', 't', 'b', 'v', 0, 2400 /* 5694 */ 'p', 'u', 's', 'h', 'a', 'w', 0, 2401 /* 5701 */ 'p', 'o', 'p', 'a', 'w', 0, 2402 /* 5707 */ 'p', 'u', 's', 'h', 'f', 'w', 0, 2403 /* 5714 */ 'p', 'o', 'p', 'f', 'w', 0, 2404 /* 5720 */ 'r', 'e', 'p', ';', 's', 't', 'o', 's', 'w', 0, 2405 /* 5730 */ 'r', 'e', 'p', ';', 'm', 'o', 'v', 's', 'w', 0, 2406 /* 5740 */ 'c', 'b', 't', 'w', 0, 2407 /* 5745 */ 'i', 'r', 'e', 't', 'w', 0, 2408 /* 5751 */ 'l', 'r', 'e', 't', 'w', 0, 2409 /* 5757 */ 'i', 'n', 'w', 9, '%', 'd', 'x', ',', 32, '%', 'a', 'x', 0, 2410 /* 5770 */ 'v', 'm', 'l', 'o', 'a', 'd', 9, '%', 'e', 'a', 'x', 0, 2411 /* 5782 */ 'v', 'm', 's', 'a', 'v', 'e', 9, '%', 'e', 'a', 'x', 0, 2412 /* 5794 */ 'v', 'm', 'r', 'u', 'n', 9, '%', 'e', 'a', 'x', 0, 2413 /* 5805 */ 's', 'k', 'i', 'n', 'i', 't', 9, '%', 'e', 'a', 'x', 0, 2414 /* 5817 */ 'i', 'n', 'v', 'l', 'p', 'g', 'a', 9, '%', 'e', 'c', 'x', ',', 32, '%', 'e', 'a', 'x', 0, 2415 /* 5836 */ 'i', 'n', 'l', 9, '%', 'd', 'x', ',', 32, '%', 'e', 'a', 'x', 0, 2416 /* 5850 */ 'v', 'm', 'l', 'o', 'a', 'd', 9, '%', 'r', 'a', 'x', 0, 2417 /* 5862 */ 'v', 'm', 's', 'a', 'v', 'e', 9, '%', 'r', 'a', 'x', 0, 2418 /* 5874 */ 'v', 'm', 'r', 'u', 'n', 9, '%', 'r', 'a', 'x', 0, 2419 /* 5885 */ 'i', 'n', 'v', 'l', 'p', 'g', 'a', 9, '%', 'e', 'c', 'x', ',', 32, '%', 'r', 'a', 'x', 0, 2420 /* 5904 */ 'o', 'u', 't', 'b', 9, '%', 'a', 'l', ',', 32, '%', 'd', 'x', 0, 2421 /* 5918 */ 'o', 'u', 't', 'w', 9, '%', 'a', 'x', ',', 32, '%', 'd', 'x', 0, 2422 /* 5932 */ 'o', 'u', 't', 'l', 9, '%', 'e', 'a', 'x', ',', 32, '%', 'd', 'x', 0, 2423 }; 2424#endif 2425 2426 // Emit the opcode for the instruction. 2427 uint32_t Bits = OpInfo[MCInst_getOpcode(MI)]; 2428 // assert(Bits != 0 && "Cannot print this instruction."); 2429#ifndef CAPSTONE_DIET 2430 SStream_concat0(O, AsmStrs+(Bits & 8191)-1); 2431#endif 2432 2433 2434 // Fragment 0 encoded into 6 bits for 41 unique commands. 2435 //printf("Frag-0: %"PRIu64"\n", (Bits >> 13) & 63); 2436 switch ((Bits >> 13) & 63) { 2437 default: // llvm_unreachable("Invalid command number."); 2438 case 0: 2439 // DBG_VALUE, BUNDLE, LIFETIME_START, LIFETIME_END, AAA, AAS, ACQUIRE_MOV... 2440 return; 2441 break; 2442 case 1: 2443 // AAD8i8, AAM8i8, ADC16i16, ADC32i32, ADC64i32, ADC8i8, ADD16i16, ADD32i... 2444 printOperand(MI, 0, O); 2445 break; 2446 case 2: 2447 // ADC16mi, ADC16mi8, ADC16mr, ADC32mi, ADC32mi8, ADC32mr, ADC64mi32, ADC... 2448 printOperand(MI, 5, O); 2449 SStream_concat0(O, ", "); 2450 break; 2451 case 3: 2452 // ADC16ri, ADC16ri8, ADC16rr, ADC16rr_REV, ADC32ri, ADC32ri8, ADC32rr, A... 2453 printOperand(MI, 2, O); 2454 SStream_concat0(O, ", "); 2455 break; 2456 case 4: 2457 // ADC16rm, ADD16rm, AND16rm, CMOVA16rm, CMOVAE16rm, CMOVB16rm, CMOVBE16r... 2458 printi16mem(MI, 2, O); 2459 SStream_concat0(O, ", "); 2460 break; 2461 case 5: 2462 // ADC32rm, ADCX32rm, ADD32rm, AND32rm, ANDN32rm, CMOVA32rm, CMOVAE32rm, ... 2463 printi32mem(MI, 2, O); 2464 SStream_concat0(O, ", "); 2465 break; 2466 case 6: 2467 // ADC64rm, ADCX64rm, ADD64rm, AND64rm, ANDN64rm, CMOVA64rm, CMOVAE64rm, ... 2468 printi64mem(MI, 2, O); 2469 SStream_concat0(O, ", "); 2470 break; 2471 case 7: 2472 // ADC8rm, ADD8rm, AND8rm, OR8rm, SBB8rm, SUB8rm, XOR8rm 2473 printi8mem(MI, 2, O); 2474 SStream_concat0(O, ", "); 2475 printOperand(MI, 1, O); 2476 return; 2477 break; 2478 case 8: 2479 // ADOX32rm, BLCFILL32rm, BLCI32rm, BLCIC32rm, BLCMSK32rm, BLCS32rm, BLSF... 2480 printi32mem(MI, 1, O); 2481 SStream_concat0(O, ", "); 2482 printOperand(MI, 0, O); 2483 return; 2484 break; 2485 case 9: 2486 // ADOX32rr, ADOX64rr, ARPL16rr, BLCFILL32rr, BLCFILL64rr, BLCI32rr, BLCI... 2487 printOperand(MI, 1, O); 2488 break; 2489 case 10: 2490 // ADOX64rm, BLCFILL64rm, BLCI64rm, BLCIC64rm, BLCMSK64rm, BLCS64rm, BLSF... 2491 printi64mem(MI, 1, O); 2492 SStream_concat0(O, ", "); 2493 printOperand(MI, 0, O); 2494 return; 2495 break; 2496 case 11: 2497 // BEXTR32rm, BEXTR64rm, BEXTRI32mi, BEXTRI64mi, BZHI32rm, BZHI64rm, IMUL... 2498 printOperand(MI, 6, O); 2499 SStream_concat0(O, ", "); 2500 break; 2501 case 12: 2502 // BSF16rm, BSR16rm, CMP16rm, LAR16rm, LAR32rm, LAR64rm, LSL16rm, LZCNT16... 2503 printi16mem(MI, 1, O); 2504 SStream_concat0(O, ", "); 2505 printOperand(MI, 0, O); 2506 return; 2507 break; 2508 case 13: 2509 // CALL16m, DEC16m, DIV16m, IDIV16m, IMUL16m, INC16m, JMP16m, LLDT16m, LM... 2510 printi16mem(MI, 0, O); 2511 return; 2512 break; 2513 case 14: 2514 // CALL32m, DEC32m, DIV32m, IDIV32m, IMUL32m, INC32m, JMP32m, LOCK_DEC32m... 2515 printi32mem(MI, 0, O); 2516 return; 2517 break; 2518 case 15: 2519 // CALL64m, CMPXCHG8B, DEC64m, DIV64m, IDIV64m, IMUL64m, INC64m, JMP64m, ... 2520 printi64mem(MI, 0, O); 2521 return; 2522 break; 2523 case 16: 2524 // CALL64pcrel32, CALLpcrel16, CALLpcrel32, EH_SjLj_Setup, JAE_1, JAE_2, ... 2525 printPCRelImm(MI, 0, O); 2526 return; 2527 break; 2528 case 17: 2529 // CLFLUSHOPT, CLWB, DEC8m, DIV8m, IDIV8m, IMUL8m, INC8m, INVLPG, LOCK_DE... 2530 printi8mem(MI, 0, O); 2531 return; 2532 break; 2533 case 18: 2534 // CMP8rm, MOV8rm, MOV8rm_NOREX, MOVSX16rm8, MOVSX32_NOREXrm8, MOVSX32rm8... 2535 printi8mem(MI, 1, O); 2536 SStream_concat0(O, ", "); 2537 printOperand(MI, 0, O); 2538 return; 2539 break; 2540 case 19: 2541 // CMPSB, INSB, SCASB, STOSB 2542 printDstIdx8(MI, 0, O); 2543 break; 2544 case 20: 2545 // CMPSL, INSL, SCASL, STOSL 2546 printDstIdx32(MI, 0, O); 2547 break; 2548 case 21: 2549 // CMPSQ, SCASQ, STOSQ 2550 printDstIdx64(MI, 0, O); 2551 break; 2552 case 22: 2553 // CMPSW, INSW, SCASW, STOSW 2554 printDstIdx16(MI, 0, O); 2555 break; 2556 case 23: 2557 // CMPXCHG16B, LCMPXCHG16B 2558 printi128mem(MI, 0, O); 2559 return; 2560 break; 2561 case 24: 2562 // FARCALL16m, FARCALL32m, FARCALL64, FARJMP16m, FARJMP32m, FARJMP64, LGD... 2563 printopaquemem(MI, 0, O); 2564 return; 2565 break; 2566 case 25: 2567 // INVEPT32, INVEPT64, INVPCID32, INVPCID64, INVVPID32, INVVPID64 2568 printi128mem(MI, 1, O); 2569 SStream_concat0(O, ", "); 2570 printOperand(MI, 0, O); 2571 return; 2572 break; 2573 case 26: 2574 // LDS16rm, LDS32rm, LES16rm, LES32rm, LFS16rm, LFS32rm, LFS64rm, LGS16rm... 2575 printopaquemem(MI, 1, O); 2576 SStream_concat0(O, ", "); 2577 printOperand(MI, 0, O); 2578 return; 2579 break; 2580 case 27: 2581 // LEA16r, LEA32r, LEA64_32r, LEA64r 2582 printanymem(MI, 1, O); 2583 SStream_concat0(O, ", "); 2584 printOperand(MI, 0, O); 2585 return; 2586 break; 2587 case 28: 2588 // LODSB, OUTSB 2589 printSrcIdx8(MI, 0, O); 2590 break; 2591 case 29: 2592 // LODSL, OUTSL 2593 printSrcIdx32(MI, 0, O); 2594 break; 2595 case 30: 2596 // LODSQ 2597 printSrcIdx64(MI, 0, O); 2598 SStream_concat0(O, ", %rax"); 2599 op_addReg(MI, X86_REG_RAX); 2600 return; 2601 break; 2602 case 31: 2603 // LODSW, OUTSW 2604 printSrcIdx16(MI, 0, O); 2605 break; 2606 case 32: 2607 // MOV16ao16, MOV16ao32, MOV16ao64, MOV16o16a, MOV16o32a, MOV16o64a 2608 printMemOffs16(MI, 0, O); 2609 break; 2610 case 33: 2611 // MOV32ao16, MOV32ao32, MOV32ao64, MOV32o16a, MOV32o32a, MOV32o64a 2612 printMemOffs32(MI, 0, O); 2613 break; 2614 case 34: 2615 // MOV64ao32, MOV64ao64, MOV64o32a, MOV64o64a 2616 printMemOffs64(MI, 0, O); 2617 break; 2618 case 35: 2619 // MOV8ao16, MOV8ao32, MOV8ao64, MOV8o16a, MOV8o32a, MOV8o64a 2620 printMemOffs8(MI, 0, O); 2621 break; 2622 case 36: 2623 // MOVSB 2624 printSrcIdx8(MI, 1, O); 2625 SStream_concat0(O, ", "); 2626 printDstIdx8(MI, 0, O); 2627 return; 2628 break; 2629 case 37: 2630 // MOVSL 2631 printSrcIdx32(MI, 1, O); 2632 SStream_concat0(O, ", "); 2633 printDstIdx32(MI, 0, O); 2634 return; 2635 break; 2636 case 38: 2637 // MOVSQ 2638 printSrcIdx64(MI, 1, O); 2639 SStream_concat0(O, ", "); 2640 printDstIdx64(MI, 0, O); 2641 return; 2642 break; 2643 case 39: 2644 // MOVSW 2645 printSrcIdx16(MI, 1, O); 2646 SStream_concat0(O, ", "); 2647 printDstIdx16(MI, 0, O); 2648 return; 2649 break; 2650 case 40: 2651 // SHLD16rri8, SHLD32rri8, SHLD64rri8, SHRD16rri8, SHRD32rri8, SHRD64rri8 2652 printOperand(MI, 3, O); 2653 SStream_concat0(O, ", "); 2654 printOperand(MI, 2, O); 2655 SStream_concat0(O, ", "); 2656 printOperand(MI, 0, O); 2657 return; 2658 break; 2659 } 2660 2661 2662 // Fragment 1 encoded into 5 bits for 18 unique commands. 2663 //printf("Frag-1: %"PRIu64"\n", (Bits >> 19) & 31); 2664 switch ((Bits >> 19) & 31) { 2665 default: // llvm_unreachable("Invalid command number."); 2666 case 0: 2667 // AAD8i8, AAM8i8, BSWAP32r, BSWAP64r, CALL16r, CALL32r, CALL64r, DEC16r,... 2668 return; 2669 break; 2670 case 1: 2671 // ADC16i16, ADD16i16, AND16i16, CMP16i16, IN16ri, LODSW, MOV16ao16, MOV1... 2672 SStream_concat0(O, ", %ax"); 2673 op_addReg(MI, X86_REG_AX); 2674 return; 2675 break; 2676 case 2: 2677 // ADC16mi, ADC16mi8, ADC16mr, ADD16mi, ADD16mi8, ADD16mr, AND16mi, AND16... 2678 printi16mem(MI, 0, O); 2679 return; 2680 break; 2681 case 3: 2682 // ADC16ri, ADC16ri8, ADC16rm, ADC16rr, ADC32ri, ADC32ri8, ADC32rm, ADC32... 2683 printOperand(MI, 1, O); 2684 break; 2685 case 4: 2686 // ADC16rr_REV, ADC32rr_REV, ADC64rr_REV, ADC8rr_REV, ADCX32rm, ADCX32rr,... 2687 printOperand(MI, 0, O); 2688 return; 2689 break; 2690 case 5: 2691 // ADC32i32, ADD32i32, AND32i32, CMP32i32, IN32ri, LODSL, MOV32ao16, MOV3... 2692 SStream_concat0(O, ", %eax"); 2693 op_addReg(MI, X86_REG_EAX); 2694 return; 2695 break; 2696 case 6: 2697 // ADC32mi, ADC32mi8, ADC32mr, ADD32mi, ADD32mi8, ADD32mr, AND32mi, AND32... 2698 printi32mem(MI, 0, O); 2699 return; 2700 break; 2701 case 7: 2702 // ADC64i32, ADD64i32, AND64i32, CMP64i32, MOV64ao32, MOV64ao64, OR64i32,... 2703 SStream_concat0(O, ", %rax"); 2704 op_addReg(MI, X86_REG_RAX); 2705 return; 2706 break; 2707 case 8: 2708 // ADC64mi32, ADC64mi8, ADC64mr, ADD64mi32, ADD64mi8, ADD64mr, AND64mi32,... 2709 printi64mem(MI, 0, O); 2710 return; 2711 break; 2712 case 9: 2713 // ADC8i8, ADD8i8, AND8i8, CMP8i8, IN8ri, LODSB, MOV8ao16, MOV8ao32, MOV8... 2714 SStream_concat0(O, ", %al"); 2715 op_addReg(MI, X86_REG_AL); 2716 return; 2717 break; 2718 case 10: 2719 // ADC8mi, ADC8mi8, ADC8mr, ADD8mi, ADD8mi8, ADD8mr, AND8mi, AND8mi8, AND... 2720 printi8mem(MI, 0, O); 2721 return; 2722 break; 2723 case 11: 2724 // ADOX32rr, ADOX64rr, ARPL16rr, BLCFILL32rr, BLCFILL64rr, BLCI32rr, BLCI... 2725 SStream_concat0(O, ", "); 2726 break; 2727 case 12: 2728 // BEXTR32rm, BEXTRI32mi, BZHI32rm, IMUL32rmi, IMUL32rmi8, RORX32mi, SARX... 2729 printi32mem(MI, 1, O); 2730 SStream_concat0(O, ", "); 2731 printOperand(MI, 0, O); 2732 return; 2733 break; 2734 case 13: 2735 // BEXTR64rm, BEXTRI64mi, BZHI64rm, IMUL64rmi32, IMUL64rmi8, RORX64mi, SA... 2736 printi64mem(MI, 1, O); 2737 SStream_concat0(O, ", "); 2738 printOperand(MI, 0, O); 2739 return; 2740 break; 2741 case 14: 2742 // FARCALL16i, FARCALL32i, FARJMP16i, FARJMP32i 2743 SStream_concat0(O, ":"); 2744 printOperand(MI, 0, O); 2745 return; 2746 break; 2747 case 15: 2748 // IMUL16rmi, IMUL16rmi8 2749 printi16mem(MI, 1, O); 2750 SStream_concat0(O, ", "); 2751 printOperand(MI, 0, O); 2752 return; 2753 break; 2754 case 16: 2755 // OUTSB, OUTSL, OUTSW 2756 SStream_concat0(O, ", %dx"); 2757 op_addReg(MI, X86_REG_DX); 2758 return; 2759 break; 2760 case 17: 2761 // SHLD16mri8, SHLD32mri8, SHLD64mri8, SHRD16mri8, SHRD32mri8, SHRD64mri8 2762 printOperand(MI, 5, O); 2763 SStream_concat0(O, ", "); 2764 break; 2765 } 2766 2767 2768 // Fragment 2 encoded into 5 bits for 20 unique commands. 2769 //printf("Frag-2: %"PRIu64"\n", (Bits >> 24) & 31); 2770 switch ((Bits >> 24) & 31) { 2771 default: // llvm_unreachable("Invalid command number."); 2772 case 0: 2773 // ADC16ri, ADC16ri8, ADC16rm, ADC16rr, ADC32ri, ADC32ri8, ADC32rm, ADC32... 2774 return; 2775 break; 2776 case 1: 2777 // ADOX32rr, ADOX64rr, ARPL16rr, BLCFILL32rr, BLCFILL64rr, BLCI32rr, BLCI... 2778 printOperand(MI, 0, O); 2779 return; 2780 break; 2781 case 2: 2782 // ANDN32rm, ANDN32rr, ANDN64rm, ANDN64rr, BEXTR32rr, BEXTR64rr, BEXTRI32... 2783 SStream_concat0(O, ", "); 2784 printOperand(MI, 0, O); 2785 return; 2786 break; 2787 case 3: 2788 // CMPSB 2789 printSrcIdx8(MI, 1, O); 2790 return; 2791 break; 2792 case 4: 2793 // CMPSL 2794 printSrcIdx32(MI, 1, O); 2795 return; 2796 break; 2797 case 5: 2798 // CMPSQ 2799 printSrcIdx64(MI, 1, O); 2800 return; 2801 break; 2802 case 6: 2803 // CMPSW 2804 printSrcIdx16(MI, 1, O); 2805 return; 2806 break; 2807 case 7: 2808 // ENTER, NOOP19rr, SEH_SaveReg, SEH_SaveXMM, SEH_SetFrame, VASTART_SAVE_... 2809 printOperand(MI, 1, O); 2810 break; 2811 case 8: 2812 // LXADD16, XCHG16rm 2813 printi16mem(MI, 2, O); 2814 return; 2815 break; 2816 case 9: 2817 // LXADD32, XCHG32rm 2818 printi32mem(MI, 2, O); 2819 return; 2820 break; 2821 case 10: 2822 // LXADD64, XCHG64rm 2823 printi64mem(MI, 2, O); 2824 return; 2825 break; 2826 case 11: 2827 // LXADD8, XCHG8rm 2828 printi8mem(MI, 2, O); 2829 return; 2830 break; 2831 case 12: 2832 // SHLD16mri8, SHRD16mri8 2833 printi16mem(MI, 0, O); 2834 return; 2835 break; 2836 case 13: 2837 // SHLD32mri8, SHRD32mri8 2838 printi32mem(MI, 0, O); 2839 return; 2840 break; 2841 case 14: 2842 // SHLD64mri8, SHRD64mri8 2843 printi64mem(MI, 0, O); 2844 return; 2845 break; 2846 case 15: 2847 // TEST16rm 2848 printi16mem(MI, 1, O); 2849 return; 2850 break; 2851 case 16: 2852 // TEST32rm 2853 printi32mem(MI, 1, O); 2854 return; 2855 break; 2856 case 17: 2857 // TEST64rm 2858 printi64mem(MI, 1, O); 2859 return; 2860 break; 2861 case 18: 2862 // TEST8rm, VAARG_64 2863 printi8mem(MI, 1, O); 2864 break; 2865 case 19: 2866 // XCHG16rr, XCHG32rr, XCHG64rr, XCHG8rr 2867 printOperand(MI, 2, O); 2868 return; 2869 break; 2870 } 2871 2872 2873 // Fragment 3 encoded into 1 bits for 2 unique commands. 2874 //printf("Frag-3: %"PRIu64"\n", (Bits >> 29) & 1); 2875 if ((Bits >> 29) & 1) { 2876 // VAARG_64, VASTART_SAVE_XMM_REGS 2877 SStream_concat0(O, ", "); 2878 } else { 2879 // ENTER, NOOP19rr, SEH_SaveReg, SEH_SaveXMM, SEH_SetFrame, TEST8rm 2880 return; 2881 } 2882 2883 2884 // Fragment 4 encoded into 1 bits for 2 unique commands. 2885 //printf("Frag-4: %"PRIu64"\n", (Bits >> 30) & 1); 2886 if ((Bits >> 30) & 1) { 2887 // VASTART_SAVE_XMM_REGS 2888 printOperand(MI, 2, O); 2889 return; 2890 } else { 2891 // VAARG_64 2892 printOperand(MI, 6, O); 2893 SStream_concat0(O, ", "); 2894 printOperand(MI, 7, O); 2895 SStream_concat0(O, ", "); 2896 printOperand(MI, 8, O); 2897 return; 2898 } 2899} 2900 2901 2902/// getRegisterName - This method is automatically generated by tblgen 2903/// from the register set description. This returns the assembler name 2904/// for the specified register. 2905static const char *getRegisterName(unsigned RegNo) 2906{ 2907 // assert(RegNo && RegNo < 242 && "Invalid register number!"); 2908 2909#ifndef CAPSTONE_DIET 2910 static const char AsmStrs[] = { 2911 /* 0 */ 's', 't', '(', '0', ')', 0, 2912 /* 6 */ 's', 't', '(', '1', ')', 0, 2913 /* 12 */ 's', 't', '(', '2', ')', 0, 2914 /* 18 */ 's', 't', '(', '3', ')', 0, 2915 /* 24 */ 's', 't', '(', '4', ')', 0, 2916 /* 30 */ 's', 't', '(', '5', ')', 0, 2917 /* 36 */ 's', 't', '(', '6', ')', 0, 2918 /* 42 */ 's', 't', '(', '7', ')', 0, 2919 /* 48 */ 'x', 'm', 'm', '1', '0', 0, 2920 /* 54 */ 'y', 'm', 'm', '1', '0', 0, 2921 /* 60 */ 'z', 'm', 'm', '1', '0', 0, 2922 /* 66 */ 'c', 'r', '1', '0', 0, 2923 /* 71 */ 'd', 'r', '1', '0', 0, 2924 /* 76 */ 'x', 'm', 'm', '2', '0', 0, 2925 /* 82 */ 'y', 'm', 'm', '2', '0', 0, 2926 /* 88 */ 'z', 'm', 'm', '2', '0', 0, 2927 /* 94 */ 'x', 'm', 'm', '3', '0', 0, 2928 /* 100 */ 'y', 'm', 'm', '3', '0', 0, 2929 /* 106 */ 'z', 'm', 'm', '3', '0', 0, 2930 /* 112 */ 'k', '0', 0, 2931 /* 115 */ 'x', 'm', 'm', '0', 0, 2932 /* 120 */ 'y', 'm', 'm', '0', 0, 2933 /* 125 */ 'z', 'm', 'm', '0', 0, 2934 /* 130 */ 'f', 'p', '0', 0, 2935 /* 134 */ 'c', 'r', '0', 0, 2936 /* 138 */ 'd', 'r', '0', 0, 2937 /* 142 */ 'x', 'm', 'm', '1', '1', 0, 2938 /* 148 */ 'y', 'm', 'm', '1', '1', 0, 2939 /* 154 */ 'z', 'm', 'm', '1', '1', 0, 2940 /* 160 */ 'c', 'r', '1', '1', 0, 2941 /* 165 */ 'd', 'r', '1', '1', 0, 2942 /* 170 */ 'x', 'm', 'm', '2', '1', 0, 2943 /* 176 */ 'y', 'm', 'm', '2', '1', 0, 2944 /* 182 */ 'z', 'm', 'm', '2', '1', 0, 2945 /* 188 */ 'x', 'm', 'm', '3', '1', 0, 2946 /* 194 */ 'y', 'm', 'm', '3', '1', 0, 2947 /* 200 */ 'z', 'm', 'm', '3', '1', 0, 2948 /* 206 */ 'k', '1', 0, 2949 /* 209 */ 'x', 'm', 'm', '1', 0, 2950 /* 214 */ 'y', 'm', 'm', '1', 0, 2951 /* 219 */ 'z', 'm', 'm', '1', 0, 2952 /* 224 */ 'f', 'p', '1', 0, 2953 /* 228 */ 'c', 'r', '1', 0, 2954 /* 232 */ 'd', 'r', '1', 0, 2955 /* 236 */ 'x', 'm', 'm', '1', '2', 0, 2956 /* 242 */ 'y', 'm', 'm', '1', '2', 0, 2957 /* 248 */ 'z', 'm', 'm', '1', '2', 0, 2958 /* 254 */ 'c', 'r', '1', '2', 0, 2959 /* 259 */ 'd', 'r', '1', '2', 0, 2960 /* 264 */ 'x', 'm', 'm', '2', '2', 0, 2961 /* 270 */ 'y', 'm', 'm', '2', '2', 0, 2962 /* 276 */ 'z', 'm', 'm', '2', '2', 0, 2963 /* 282 */ 'k', '2', 0, 2964 /* 285 */ 'x', 'm', 'm', '2', 0, 2965 /* 290 */ 'y', 'm', 'm', '2', 0, 2966 /* 295 */ 'z', 'm', 'm', '2', 0, 2967 /* 300 */ 'f', 'p', '2', 0, 2968 /* 304 */ 'c', 'r', '2', 0, 2969 /* 308 */ 'd', 'r', '2', 0, 2970 /* 312 */ 'x', 'm', 'm', '1', '3', 0, 2971 /* 318 */ 'y', 'm', 'm', '1', '3', 0, 2972 /* 324 */ 'z', 'm', 'm', '1', '3', 0, 2973 /* 330 */ 'c', 'r', '1', '3', 0, 2974 /* 335 */ 'd', 'r', '1', '3', 0, 2975 /* 340 */ 'x', 'm', 'm', '2', '3', 0, 2976 /* 346 */ 'y', 'm', 'm', '2', '3', 0, 2977 /* 352 */ 'z', 'm', 'm', '2', '3', 0, 2978 /* 358 */ 'k', '3', 0, 2979 /* 361 */ 'x', 'm', 'm', '3', 0, 2980 /* 366 */ 'y', 'm', 'm', '3', 0, 2981 /* 371 */ 'z', 'm', 'm', '3', 0, 2982 /* 376 */ 'f', 'p', '3', 0, 2983 /* 380 */ 'c', 'r', '3', 0, 2984 /* 384 */ 'd', 'r', '3', 0, 2985 /* 388 */ 'x', 'm', 'm', '1', '4', 0, 2986 /* 394 */ 'y', 'm', 'm', '1', '4', 0, 2987 /* 400 */ 'z', 'm', 'm', '1', '4', 0, 2988 /* 406 */ 'c', 'r', '1', '4', 0, 2989 /* 411 */ 'd', 'r', '1', '4', 0, 2990 /* 416 */ 'x', 'm', 'm', '2', '4', 0, 2991 /* 422 */ 'y', 'm', 'm', '2', '4', 0, 2992 /* 428 */ 'z', 'm', 'm', '2', '4', 0, 2993 /* 434 */ 'k', '4', 0, 2994 /* 437 */ 'x', 'm', 'm', '4', 0, 2995 /* 442 */ 'y', 'm', 'm', '4', 0, 2996 /* 447 */ 'z', 'm', 'm', '4', 0, 2997 /* 452 */ 'f', 'p', '4', 0, 2998 /* 456 */ 'c', 'r', '4', 0, 2999 /* 460 */ 'd', 'r', '4', 0, 3000 /* 464 */ 'x', 'm', 'm', '1', '5', 0, 3001 /* 470 */ 'y', 'm', 'm', '1', '5', 0, 3002 /* 476 */ 'z', 'm', 'm', '1', '5', 0, 3003 /* 482 */ 'c', 'r', '1', '5', 0, 3004 /* 487 */ 'd', 'r', '1', '5', 0, 3005 /* 492 */ 'x', 'm', 'm', '2', '5', 0, 3006 /* 498 */ 'y', 'm', 'm', '2', '5', 0, 3007 /* 504 */ 'z', 'm', 'm', '2', '5', 0, 3008 /* 510 */ 'k', '5', 0, 3009 /* 513 */ 'x', 'm', 'm', '5', 0, 3010 /* 518 */ 'y', 'm', 'm', '5', 0, 3011 /* 523 */ 'z', 'm', 'm', '5', 0, 3012 /* 528 */ 'f', 'p', '5', 0, 3013 /* 532 */ 'c', 'r', '5', 0, 3014 /* 536 */ 'd', 'r', '5', 0, 3015 /* 540 */ 'x', 'm', 'm', '1', '6', 0, 3016 /* 546 */ 'y', 'm', 'm', '1', '6', 0, 3017 /* 552 */ 'z', 'm', 'm', '1', '6', 0, 3018 /* 558 */ 'x', 'm', 'm', '2', '6', 0, 3019 /* 564 */ 'y', 'm', 'm', '2', '6', 0, 3020 /* 570 */ 'z', 'm', 'm', '2', '6', 0, 3021 /* 576 */ 'k', '6', 0, 3022 /* 579 */ 'x', 'm', 'm', '6', 0, 3023 /* 584 */ 'y', 'm', 'm', '6', 0, 3024 /* 589 */ 'z', 'm', 'm', '6', 0, 3025 /* 594 */ 'f', 'p', '6', 0, 3026 /* 598 */ 'c', 'r', '6', 0, 3027 /* 602 */ 'd', 'r', '6', 0, 3028 /* 606 */ 'x', 'm', 'm', '1', '7', 0, 3029 /* 612 */ 'y', 'm', 'm', '1', '7', 0, 3030 /* 618 */ 'z', 'm', 'm', '1', '7', 0, 3031 /* 624 */ 'x', 'm', 'm', '2', '7', 0, 3032 /* 630 */ 'y', 'm', 'm', '2', '7', 0, 3033 /* 636 */ 'z', 'm', 'm', '2', '7', 0, 3034 /* 642 */ 'k', '7', 0, 3035 /* 645 */ 'x', 'm', 'm', '7', 0, 3036 /* 650 */ 'y', 'm', 'm', '7', 0, 3037 /* 655 */ 'z', 'm', 'm', '7', 0, 3038 /* 660 */ 'f', 'p', '7', 0, 3039 /* 664 */ 'c', 'r', '7', 0, 3040 /* 668 */ 'd', 'r', '7', 0, 3041 /* 672 */ 'x', 'm', 'm', '1', '8', 0, 3042 /* 678 */ 'y', 'm', 'm', '1', '8', 0, 3043 /* 684 */ 'z', 'm', 'm', '1', '8', 0, 3044 /* 690 */ 'x', 'm', 'm', '2', '8', 0, 3045 /* 696 */ 'y', 'm', 'm', '2', '8', 0, 3046 /* 702 */ 'z', 'm', 'm', '2', '8', 0, 3047 /* 708 */ 'x', 'm', 'm', '8', 0, 3048 /* 713 */ 'y', 'm', 'm', '8', 0, 3049 /* 718 */ 'z', 'm', 'm', '8', 0, 3050 /* 723 */ 'c', 'r', '8', 0, 3051 /* 727 */ 'd', 'r', '8', 0, 3052 /* 731 */ 'x', 'm', 'm', '1', '9', 0, 3053 /* 737 */ 'y', 'm', 'm', '1', '9', 0, 3054 /* 743 */ 'z', 'm', 'm', '1', '9', 0, 3055 /* 749 */ 'x', 'm', 'm', '2', '9', 0, 3056 /* 755 */ 'y', 'm', 'm', '2', '9', 0, 3057 /* 761 */ 'z', 'm', 'm', '2', '9', 0, 3058 /* 767 */ 'x', 'm', 'm', '9', 0, 3059 /* 772 */ 'y', 'm', 'm', '9', 0, 3060 /* 777 */ 'z', 'm', 'm', '9', 0, 3061 /* 782 */ 'c', 'r', '9', 0, 3062 /* 786 */ 'd', 'r', '9', 0, 3063 /* 790 */ 'r', '1', '0', 'b', 0, 3064 /* 795 */ 'r', '1', '1', 'b', 0, 3065 /* 800 */ 'r', '1', '2', 'b', 0, 3066 /* 805 */ 'r', '1', '3', 'b', 0, 3067 /* 810 */ 'r', '1', '4', 'b', 0, 3068 /* 815 */ 'r', '1', '5', 'b', 0, 3069 /* 820 */ 'r', '8', 'b', 0, 3070 /* 824 */ 'r', '9', 'b', 0, 3071 /* 828 */ 'r', '1', '0', 'd', 0, 3072 /* 833 */ 'r', '1', '1', 'd', 0, 3073 /* 838 */ 'r', '1', '2', 'd', 0, 3074 /* 843 */ 'r', '1', '3', 'd', 0, 3075 /* 848 */ 'r', '1', '4', 'd', 0, 3076 /* 853 */ 'r', '1', '5', 'd', 0, 3077 /* 858 */ 'r', '8', 'd', 0, 3078 /* 862 */ 'r', '9', 'd', 0, 3079 /* 866 */ 'a', 'h', 0, 3080 /* 869 */ 'b', 'h', 0, 3081 /* 872 */ 'c', 'h', 0, 3082 /* 875 */ 'd', 'h', 0, 3083 /* 878 */ 'e', 'd', 'i', 0, 3084 /* 882 */ 'r', 'd', 'i', 0, 3085 /* 886 */ 'e', 's', 'i', 0, 3086 /* 890 */ 'r', 's', 'i', 0, 3087 /* 894 */ 'a', 'l', 0, 3088 /* 897 */ 'b', 'l', 0, 3089 /* 900 */ 'c', 'l', 0, 3090 /* 903 */ 'd', 'l', 0, 3091 /* 906 */ 'd', 'i', 'l', 0, 3092 /* 910 */ 's', 'i', 'l', 0, 3093 /* 914 */ 'b', 'p', 'l', 0, 3094 /* 918 */ 's', 'p', 'l', 0, 3095 /* 922 */ 'e', 'b', 'p', 0, 3096 /* 926 */ 'r', 'b', 'p', 0, 3097 /* 930 */ 'e', 'i', 'p', 0, 3098 /* 934 */ 'r', 'i', 'p', 0, 3099 /* 938 */ 'e', 's', 'p', 0, 3100 /* 942 */ 'r', 's', 'p', 0, 3101 /* 946 */ 'c', 's', 0, 3102 /* 949 */ 'd', 's', 0, 3103 /* 952 */ 'e', 's', 0, 3104 /* 955 */ 'f', 's', 0, 3105 /* 958 */ 'f', 'l', 'a', 'g', 's', 0, 3106 /* 964 */ 's', 's', 0, 3107 /* 967 */ 'r', '1', '0', 'w', 0, 3108 /* 972 */ 'r', '1', '1', 'w', 0, 3109 /* 977 */ 'r', '1', '2', 'w', 0, 3110 /* 982 */ 'r', '1', '3', 'w', 0, 3111 /* 987 */ 'r', '1', '4', 'w', 0, 3112 /* 992 */ 'r', '1', '5', 'w', 0, 3113 /* 997 */ 'r', '8', 'w', 0, 3114 /* 1001 */ 'r', '9', 'w', 0, 3115 /* 1005 */ 'f', 'p', 's', 'w', 0, 3116 /* 1010 */ 'e', 'a', 'x', 0, 3117 /* 1014 */ 'r', 'a', 'x', 0, 3118 /* 1018 */ 'e', 'b', 'x', 0, 3119 /* 1022 */ 'r', 'b', 'x', 0, 3120 /* 1026 */ 'e', 'c', 'x', 0, 3121 /* 1030 */ 'r', 'c', 'x', 0, 3122 /* 1034 */ 'e', 'd', 'x', 0, 3123 /* 1038 */ 'r', 'd', 'x', 0, 3124 /* 1042 */ 'e', 'i', 'z', 0, 3125 /* 1046 */ 'r', 'i', 'z', 0, 3126 }; 3127 3128 static const uint16_t RegAsmOffset[] = { 3129 866, 894, 1011, 869, 897, 923, 914, 1019, 872, 900, 946, 1027, 875, 879, 3130 906, 903, 949, 1035, 1010, 922, 1018, 1026, 878, 1034, 958, 930, 1042, 952, 3131 886, 938, 1005, 955, 961, 931, 1014, 926, 1022, 1030, 882, 1038, 934, 1046, 3132 890, 942, 887, 910, 939, 918, 964, 134, 228, 304, 380, 456, 532, 598, 3133 664, 723, 782, 66, 160, 254, 330, 406, 482, 138, 232, 308, 384, 460, 3134 536, 602, 668, 727, 786, 71, 165, 259, 335, 411, 487, 130, 224, 300, 3135 376, 452, 528, 594, 660, 112, 206, 282, 358, 434, 510, 576, 642, 116, 3136 210, 286, 362, 438, 514, 580, 646, 724, 783, 67, 161, 255, 331, 407, 3137 483, 0, 6, 12, 18, 24, 30, 36, 42, 115, 209, 285, 361, 437, 3138 513, 579, 645, 708, 767, 48, 142, 236, 312, 388, 464, 540, 606, 672, 3139 731, 76, 170, 264, 340, 416, 492, 558, 624, 690, 749, 94, 188, 120, 3140 214, 290, 366, 442, 518, 584, 650, 713, 772, 54, 148, 242, 318, 394, 3141 470, 546, 612, 678, 737, 82, 176, 270, 346, 422, 498, 564, 630, 696, 3142 755, 100, 194, 125, 219, 295, 371, 447, 523, 589, 655, 718, 777, 60, 3143 154, 248, 324, 400, 476, 552, 618, 684, 743, 88, 182, 276, 352, 428, 3144 504, 570, 636, 702, 761, 106, 200, 820, 824, 790, 795, 800, 805, 810, 3145 815, 858, 862, 828, 833, 838, 843, 848, 853, 997, 1001, 967, 972, 977, 3146 982, 987, 992, 3147 }; 3148 3149 //int i; 3150 //for (i = 0; i < sizeof(RegAsmOffset)/2; i++) 3151 // printf("%s = %u\n", AsmStrs+RegAsmOffset[i], i + 1); 3152 //printf("*************************\n"); 3153 return AsmStrs+RegAsmOffset[RegNo-1]; 3154#else 3155 return NULL; 3156#endif 3157} 3158 3159#ifdef PRINT_ALIAS_INSTR 3160#undef PRINT_ALIAS_INSTR 3161 3162static void printCustomAliasOperand(MCInst *MI, unsigned OpIdx, 3163 unsigned PrintMethodIdx, SStream *OS) 3164{ 3165} 3166 3167static char *printAliasInstr(MCInst *MI, SStream *OS, void *info) 3168{ 3169 #define GETREGCLASS_CONTAIN(_class, _reg) MCRegisterClass_contains(MCRegisterInfo_getRegClass(MRI, _class), MCOperand_getReg(MCInst_getOperand(MI, _reg))) 3170 const char *AsmString; 3171 char *tmp, *AsmMnem, *AsmOps, *c; 3172 int OpIdx, PrintMethodIdx; 3173 switch (MCInst_getOpcode(MI)) { 3174 default: return NULL; 3175 case X86_AAD8i8: 3176 if (MCInst_getNumOperands(MI) == 1 && 3177 MCOperand_isImm(MCInst_getOperand(MI, 0)) && 3178 MCOperand_getImm(MCInst_getOperand(MI, 0)) == 10) { 3179 // (AAD8i8 10) 3180 AsmString = "aad"; 3181 break; 3182 } 3183 return NULL; 3184 case X86_AAM8i8: 3185 if (MCInst_getNumOperands(MI) == 1 && 3186 MCOperand_isImm(MCInst_getOperand(MI, 0)) && 3187 MCOperand_getImm(MCInst_getOperand(MI, 0)) == 10) { 3188 // (AAM8i8 10) 3189 AsmString = "aam"; 3190 break; 3191 } 3192 return NULL; 3193 case X86_XSTORE: 3194 if (MCInst_getNumOperands(MI) == 0) { 3195 // (XSTORE) 3196 AsmString = "xstorerng"; 3197 break; 3198 } 3199 return NULL; 3200 } 3201 3202 tmp = cs_strdup(AsmString); 3203 AsmMnem = tmp; 3204 for(AsmOps = tmp; *AsmOps; AsmOps++) { 3205 if (*AsmOps == ' ' || *AsmOps == '\t') { 3206 *AsmOps = '\0'; 3207 AsmOps++; 3208 break; 3209 } 3210 } 3211 SStream_concat0(OS, AsmMnem); 3212 if (*AsmOps) { 3213 SStream_concat0(OS, "\t"); 3214 for (c = AsmOps; *c; c++) { 3215 if (*c == '$') { 3216 c += 1; 3217 if (*c == (char)0xff) { 3218 c += 1; 3219 OpIdx = *c - 1; 3220 c += 1; 3221 PrintMethodIdx = *c - 1; 3222 printCustomAliasOperand(MI, OpIdx, PrintMethodIdx, OS); 3223 } else 3224 printOperand(MI, *c - 1, OS); 3225 } else { 3226 SStream_concat(OS, "%c", *c); 3227 } 3228 } 3229 } 3230 return tmp; 3231} 3232 3233#endif // PRINT_ALIAS_INSTR 3234