x86 アセンブリ命令ランキング ベスト 1000
x86 のよく使われる命令を調べてみました。調査対象は Windows の SysWOW64 ディレクトリに入っている 32bit モジュールです。(x86 版ではなく x64 版の一覧はこちらです。)
動作確認環境
- Windows 11 Home 24H2
- Visual Studio Community 2022 (Visual C++)
x86 のよく使われる命令
では早速ランキングです。ベスト 1000 と書きましたが、実際は 1041 個です(最下位タイのため順位としては 865 位まで)。長いです。
| 順位 | 命令 | 個数 | 割合 | 累積割合 |
| 1 | mov | 63183290 | 20.0169% | 20.0169% |
| 2 | push | 38414209 | 12.1699% | 32.1867% |
| 3 | int | 37519703 | 11.8865% | 44.0732% |
| 4 | add | 34346643 | 10.8812% | 54.9544% |
| 5 | call | 19004925 | 6.0209% | 60.9753% |
| 6 | pop | 11085274 | 3.5119% | 64.4872% |
| 7 | lea | 10277527 | 3.256% | 67.7432% |
| 8 | je | 8811379 | 2.7915% | 70.5347% |
| 9 | cmp | 8002698 | 2.5353% | 73.07% |
| 10 | test | 7982909 | 2.529% | 75.599% |
| 11 | jmp | 6124149 | 1.9402% | 77.5392% |
| 12 | xor | 5938822 | 1.8815% | 79.4206% |
| 13 | inc | 5263013 | 1.6674% | 81.088% |
| 14 | and | 4565178 | 1.4463% | 82.5343% |
| 15 | jne | 4539990 | 1.4383% | 83.9726% |
| 16 | ret | 3746701 | 1.187% | 85.1595% |
| 17 | adc | 3720442 | 1.1787% | 86.3382% |
| 18 | sub | 3625338 | 1.1485% | 87.4867% |
| 19 | or | 3050511 | 0.9664% | 88.4531% |
| 20 | dec | 2685350 | 0.8507% | 89.3039% |
| 21 | outs | 2348901 | 0.7441% | 90.048% |
| 22 | jb | 2093180 | 0.6631% | 90.7112% |
| 23 | imul | 1740925 | 0.5515% | 91.2627% |
| 24 | ins | 1297192 | 0.411% | 91.6737% |
| 25 | jae | 1265140 | 0.4008% | 92.0745% |
| 26 | js | 1240176 | 0.3929% | 92.4674% |
| 27 | popad | 1188571 | 0.3765% | 92.8439% |
| 28 | sbb | 1088001 | 0.3447% | 93.1886% |
| 29 | movs | 991359 | 0.3141% | 93.5027% |
| 30 | leave | 978213 | 0.3099% | 93.8126% |
| 31 | movzx | 964160 | 0.3055% | 94.118% |
| 32 | arpl | 915104 | 0.2899% | 94.4079% |
| 33 | jns | 875256 | 0.2773% | 94.6852% |
| 34 | nop | 820865 | 0.2601% | 94.9453% |
| 35 | jo | 774027 | 0.2452% | 95.1905% |
| 36 | jbe | 724469 | 0.2295% | 95.42% |
| 37 | xchg | 616651 | 0.1954% | 95.6154% |
| 38 | ja | 480590 | 0.1523% | 95.7676% |
| 39 | shr | 475208 | 0.1505% | 95.9182% |
| 40 | stos | 456743 | 0.1447% | 96.0629% |
| 41 | lock | 431411 | 0.1367% | 96.1995% |
| 42 | movss | 418091 | 0.1325% | 96.332% |
| 43 | shl | 406879 | 0.1289% | 96.4609% |
| 44 | jl | 339968 | 0.1077% | 96.5686% |
| 45 | jle | 334214 | 0.1059% | 96.6745% |
| 46 | sar | 321874 | 0.102% | 96.7764% |
| 47 | bound | 275532 | 0.0873% | 96.8637% |
| 48 | in | 272752 | 0.0864% | 96.9501% |
| 49 | pushad | 231578 | 0.0734% | 97.0235% |
| 50 | movaps | 218293 | 0.0692% | 97.0927% |
| 51 | neg | 217343 | 0.0689% | 97.1615% |
| 52 | jg | 212147 | 0.0672% | 97.2287% |
| 53 | out | 207157 | 0.0656% | 97.2944% |
| 54 | loopne | 205650 | 0.0652% | 97.3595% |
| 55 | movsd | 200832 | 0.0636% | 97.4231% |
| 56 | jge | 200825 | 0.0636% | 97.4868% |
| 57 | aas | 199052 | 0.0631% | 97.5498% |
| 58 | fld | 184481 | 0.0584% | 97.6083% |
| 59 | cdq | 183867 | 0.0583% | 97.6665% |
| 60 | movups | 169819 | 0.0538% | 97.7203% |
| 61 | rep | 169090 | 0.0536% | 97.7739% |
| 62 | ror | 167776 | 0.0532% | 97.827% |
| 63 | rol | 166740 | 0.0528% | 97.8799% |
| 64 | cmove | 157977 | 0.05% | 97.9299% |
| 65 | das | 156506 | 0.0496% | 97.9795% |
| 66 | cmovne | 156239 | 0.0495% | 98.029% |
| 67 | fstp | 145059 | 0.046% | 98.0749% |
| 68 | xorps | 143228 | 0.0454% | 98.1203% |
| 69 | jp | 134414 | 0.0426% | 98.1629% |
| 70 | jnp | 122896 | 0.0389% | 98.2018% |
| 71 | daa | 120383 | 0.0381% | 98.24% |
| 72 | lods | 120095 | 0.038% | 98.278% |
| 73 | cmps | 119823 | 0.038% | 98.316% |
| 74 | mulss | 115910 | 0.0367% | 98.3527% |
| 75 | scas | 108190 | 0.0343% | 98.387% |
| 76 | retf | 104811 | 0.0332% | 98.4202% |
| 77 | lahf | 96326 | 0.0305% | 98.4507% |
| 78 | aaa | 95282 | 0.0302% | 98.4809% |
| 79 | addss | 92604 | 0.0293% | 98.5102% |
| 80 | jno | 91281 | 0.0289% | 98.5391% |
| 81 | xadd | 90241 | 0.0286% | 98.5677% |
| 82 | movsx | 88984 | 0.0282% | 98.5959% |
| 83 | movq | 88645 | 0.0281% | 98.624% |
| 84 | cwde | 86787 | 0.0275% | 98.6515% |
| 85 | movd | 83175 | 0.0264% | 98.6779% |
| 86 | movlpd | 82533 | 0.0261% | 98.704% |
| 87 | iretd | 82135 | 0.026% | 98.73% |
| 88 | rcl | 80505 | 0.0255% | 98.7555% |
| 89 | setne | 80439 | 0.0255% | 98.781% |
| 90 | clc | 79200 | 0.0251% | 98.8061% |
| 91 | enter | 76700 | 0.0243% | 98.8304% |
| 92 | cld | 74016 | 0.0234% | 98.8538% |
| 93 | sete | 72325 | 0.0229% | 98.8768% |
| 94 | pushfd | 71813 | 0.0228% | 98.8995% |
| 95 | rcr | 71467 | 0.0226% | 98.9221% |
| 96 | aamb | 70952 | 0.0225% | 98.9446% |
| 97 | mul | 69948 | 0.0222% | 98.9668% |
| 98 | hlt | 67016 | 0.0212% | 98.988% |
| 99 | cmc | 66498 | 0.0211% | 99.0091% |
| 100 | subss | 65083 | 0.0206% | 99.0297% |
| 101 | popfd | 61295 | 0.0194% | 99.0491% |
| 102 | sal | 59239 | 0.0188% | 99.0679% |
| 103 | std | 58195 | 0.0184% | 99.0863% |
| 104 | sahf | 57548 | 0.0182% | 99.1046% |
| 105 | aadb | 57523 | 0.0182% | 99.1228% |
| 106 | loop | 57389 | 0.0182% | 99.141% |
| 107 | into | 57229 | 0.0181% | 99.1591% |
| 108 | idiv | 57192 | 0.0181% | 99.1772% |
| 109 | wait | 57014 | 0.0181% | 99.1953% |
| 110 | les | 56778 | 0.018% | 99.2133% |
| 111 | xlat | 55801 | 0.0177% | 99.2309% |
| 112 | jecxz | 55304 | 0.0175% | 99.2485% |
| 113 | fadd | 55130 | 0.0175% | 99.2659% |
| 114 | loope | 54683 | 0.0173% | 99.2833% |
| 115 | cli | 54530 | 0.0173% | 99.3005% |
| 116 | not | 54387 | 0.0172% | 99.3178% |
| 117 | sti | 53288 | 0.0169% | 99.3346% |
| 118 | stc | 50603 | 0.016% | 99.3507% |
| 119 | cmpxchg | 50037 | 0.0159% | 99.3665% |
| 120 | fmul | 48011 | 0.0152% | 99.3817% |
| 121 | div | 47535 | 0.0151% | 99.3968% |
| 122 | lds | 43609 | 0.0138% | 99.4106% |
| 123 | fild | 41273 | 0.0131% | 99.4237% |
| 124 | addsd | 41073 | 0.013% | 99.4367% |
| 125 | mulsd | 38517 | 0.0122% | 99.4489% |
| 126 | cmovle | 37917 | 0.012% | 99.4609% |
| 127 | xacquire | 34324 | 0.0109% | 99.4718% |
| 128 | addps | 31033 | 0.0098% | 99.4816% |
| 129 | mulps | 29923 | 0.0095% | 99.4911% |
| 130 | hnt | 28730 | 0.0091% | 99.5002% |
| 131 | sldt | 28081 | 0.0089% | 99.5091% |
| 132 | comiss | 27000 | 0.0086% | 99.5176% |
| 133 | fnstsw | 26338 | 0.0083% | 99.526% |
| 134 | movdqa | 26213 | 0.0083% | 99.5343% |
| 135 | fcomp | 26175 | 0.0083% | 99.5426% |
| 136 | fiadd | 25966 | 0.0082% | 99.5508% |
| 137 | comisd | 25606 | 0.0081% | 99.5589% |
| 138 | cmovae | 25294 | 0.008% | 99.5669% |
| 139 | subps | 24825 | 0.0079% | 99.5748% |
| 140 | cvtdq2ps | 24761 | 0.0078% | 99.5826% |
| 141 | repne | 24719 | 0.0078% | 99.5905% |
| 142 | cmova | 24329 | 0.0077% | 99.5982% |
| 143 | popa | 24294 | 0.0077% | 99.6059% |
| 144 | fsub | 23704 | 0.0075% | 99.6134% |
| 145 | paddw | 22763 | 0.0072% | 99.6206% |
| 146 | cmovb | 22496 | 0.0071% | 99.6277% |
| 147 | cvtdq2pd | 22211 | 0.007% | 99.6348% |
| 148 | fxch | 22158 | 0.007% | 99.6418% |
| 149 | fst | 21322 | 0.0068% | 99.6485% |
| 150 | seto | 20884 | 0.0066% | 99.6552% |
| 151 | fistp | 20662 | 0.0065% | 99.6617% |
| 152 | fcom | 20331 | 0.0064% | 99.6681% |
| 153 | cmovs | 20285 | 0.0064% | 99.6746% |
| 154 | subsd | 20186 | 0.0064% | 99.681% |
| 155 | cvtps2pd | 19199 | 0.0061% | 99.687% |
| 156 | cmovns | 19057 | 0.006% | 99.6931% |
| 157 | fisttp | 18518 | 0.0059% | 99.699% |
| 158 | shrd | 18145 | 0.0057% | 99.7047% |
| 159 | divss | 17835 | 0.0057% | 99.7104% |
| 160 | fdiv | 17806 | 0.0056% | 99.716% |
| 161 | cvtpd2ps | 17468 | 0.0055% | 99.7215% |
| 162 | fdivr | 16965 | 0.0054% | 99.7269% |
| 163 | cvttss2si | 16178 | 0.0051% | 99.732% |
| 164 | cmovg | 15771 | 0.005% | 99.737% |
| 165 | fsubr | 15587 | 0.0049% | 99.742% |
| 166 | shufps | 13762 | 0.0044% | 99.7463% |
| 166 | cmovl | 13762 | 0.0044% | 99.7507% |
| 168 | punpcklbw | 13180 | 0.0042% | 99.7549% |
| 169 | fimul | 12418 | 0.0039% | 99.7588% |
| 170 | fidivr | 11966 | 0.0038% | 99.7626% |
| 171 | divsd | 11836 | 0.0037% | 99.7663% |
| 172 | faddp | 11665 | 0.0037% | 99.77% |
| 173 | fisub | 11409 | 0.0036% | 99.7736% |
| 174 | paddd | 10838 | 0.0034% | 99.7771% |
| 175 | ucomiss | 10486 | 0.0033% | 99.7804% |
| 176 | setg | 10383 | 0.0033% | 99.7837% |
| 177 | psrldq | 10036 | 0.0032% | 99.7869% |
| 178 | fldz | 9546 | 0.003% | 99.7899% |
| 179 | bts | 9512 | 0.003% | 99.7929% |
| 180 | psubw | 9511 | 0.003% | 99.7959% |
| 181 | ficomp | 9467 | 0.003% | 99.7989% |
| 182 | shld | 9462 | 0.003% | 99.8019% |
| 183 | ficom | 9428 | 0.003% | 99.8049% |
| 184 | cvttsd2si | 9212 | 0.0029% | 99.8078% |
| 185 | punpcklwd | 9169 | 0.0029% | 99.8107% |
| 186 | andps | 9064 | 0.0029% | 99.8136% |
| 187 | fist | 9063 | 0.0029% | 99.8165% |
| 188 | lfence | 8883 | 0.0028% | 99.8193% |
| 189 | fnstcw | 8854 | 0.0028% | 99.8221% |
| 190 | movapd | 8680 | 0.0027% | 99.8248% |
| 191 | paddsw | 8625 | 0.0027% | 99.8276% |
| 192 | cmovge | 8607 | 0.0027% | 99.8303% |
| 193 | fldenv | 8451 | 0.0027% | 99.833% |
| 194 | pxor | 8404 | 0.0027% | 99.8356% |
| 195 | psraw | 8377 | 0.0027% | 99.8383% |
| 196 | fldcw | 8283 | 0.0026% | 99.8409% |
| 197 | movhps | 8216 | 0.0026% | 99.8435% |
| 198 | cmovbe | 7790 | 0.0025% | 99.846% |
| 199 | bswap | 7599 | 0.0024% | 99.8484% |
| 200 | movdqu | 7494 | 0.0024% | 99.8508% |
| 201 | fmulp | 7443 | 0.0024% | 99.8531% |
| 202 | movlps | 7045 | 0.0022% | 99.8554% |
| 203 | pand | 6953 | 0.0022% | 99.8576% |
| 204 | fld1 | 6915 | 0.0022% | 99.8597% |
| 205 | ht | 6710 | 0.0021% | 99.8619% |
| 206 | ucomisd | 6404 | 0.002% | 99.8639% |
| 207 | pshufd | 6199 | 0.002% | 99.8659% |
| 208 | packuswb | 5985 | 0.0019% | 99.8678% |
| 209 | fisubr | 5968 | 0.0019% | 99.8697% |
| 210 | psrlq | 5733 | 0.0018% | 99.8715% |
| 211 | cvtsd2ss | 5713 | 0.0018% | 99.8733% |
| 212 | setb | 5663 | 0.0018% | 99.8751% |
| 213 | pmaddwd | 5610 | 0.0018% | 99.8769% |
| 214 | fidiv | 5575 | 0.0018% | 99.8786% |
| 215 | fsubp | 5541 | 0.0018% | 99.8804% |
| 216 | pmullw | 5532 | 0.0018% | 99.8821% |
| 217 | psrlw | 5204 | 0.0016% | 99.8838% |
| 218 | pmulhw | 4965 | 0.0016% | 99.8853% |
| 219 | punpckhwd | 4935 | 0.0016% | 99.8869% |
| 220 | xbegin | 4829 | 0.0015% | 99.8884% |
| 221 | unpcklps | 4814 | 0.0015% | 99.89% |
| 222 | por | 4709 | 0.0015% | 99.8915% |
| 223 | psllw | 4674 | 0.0015% | 99.8929% |
| 224 | psrad | 4544 | 0.0014% | 99.8944% |
| 225 | xabort | 4401 | 0.0014% | 99.8958% |
| 226 | seta | 4268 | 0.0014% | 99.8971% |
| 227 | fchs | 4232 | 0.0013% | 99.8985% |
| 228 | frstor | 4228 | 0.0013% | 99.8998% |
| 229 | fbld | 4107 | 0.0013% | 99.9011% |
| 230 | orps | 4074 | 0.0013% | 99.9024% |
| 231 | fsubrp | 4001 | 0.0013% | 99.9037% |
| 232 | maxss | 3963 | 0.0013% | 99.9049% |
| 233 | cvtsi2sd | 3961 | 0.0013% | 99.9062% |
| 234 | mulpd | 3921 | 0.0012% | 99.9074% |
| 235 | punpckldq | 3917 | 0.0012% | 99.9087% |
| 236 | bt | 3869 | 0.0012% | 99.9099% |
| 237 | cpuid | 3866 | 0.0012% | 99.9111% |
| 238 | btr | 3802 | 0.0012% | 99.9123% |
| 239 | psllq | 3759 | 0.0012% | 99.9135% |
| 240 | bsr | 3666 | 0.0012% | 99.9147% |
| 241 | fnclex | 3648 | 0.0012% | 99.9158% |
| 242 | psubsw | 3570 | 0.0011% | 99.917% |
| 243 | bnd | 3468 | 0.0011% | 99.918% |
| 244 | packssdw | 3424 | 0.0011% | 99.9191% |
| 245 | fdivp | 3330 | 0.0011% | 99.9202% |
| 246 | punpcklqdq | 3304 | 0.001% | 99.9212% |
| 247 | vmovd | 3240 | 0.001% | 99.9223% |
| 248 | cvtsi2ss | 3177 | 0.001% | 99.9233% |
| 249 | minss | 3068 | 0.001% | 99.9242% |
| 250 | paddusw | 3003 | 0.001% | 99.9252% |
| 251 | cvtss2sd | 2878 | 0.0009% | 99.9261% |
| 252 | fnstenv | 2859 | 0.0009% | 99.927% |
| 253 | pslld | 2807 | 0.0009% | 99.9279% |
| 254 | punpckhbw | 2805 | 0.0009% | 99.9288% |
| 255 | punpckhqdq | 2637 | 0.0008% | 99.9296% |
| 256 | pcmpgtw | 2623 | 0.0008% | 99.9305% |
| 257 | vmovdqu | 2622 | 0.0008% | 99.9313% |
| 258 | pextrw | 2564 | 0.0008% | 99.9321% |
| 258 | fdivrp | 2564 | 0.0008% | 99.9329% |
| 260 | setge | 2550 | 0.0008% | 99.9337% |
| 261 | fbstp | 2394 | 0.0008% | 99.9345% |
| 262 | stmxcsr | 2377 | 0.0008% | 99.9352% |
| 263 | bsf | 2370 | 0.0008% | 99.936% |
| 264 | psrld | 2354 | 0.0007% | 99.9367% |
| 265 | fnsave | 2331 | 0.0007% | 99.9375% |
| 266 | psubd | 2326 | 0.0007% | 99.9382% |
| 267 | cmpxchg8b | 2253 | 0.0007% | 99.9389% |
| 268 | fcomp3 | 2225 | 0.0007% | 99.9396% |
| 269 | addpd | 2195 | 0.0007% | 99.9403% |
| 270 | str | 2190 | 0.0007% | 99.941% |
| 271 | movlhps | 2181 | 0.0007% | 99.9417% |
| 272 | fabs | 2171 | 0.0007% | 99.9424% |
| 273 | setl | 2102 | 0.0007% | 99.9431% |
| 274 | punpckhdq | 2056 | 0.0007% | 99.9437% |
| 275 | palignr | 2027 | 0.0006% | 99.9443% |
| 276 | pcmpgtb | 2022 | 0.0006% | 99.945% |
| 277 | psadbw | 2012 | 0.0006% | 99.9456% |
| 278 | pinsrw | 2008 | 0.0006% | 99.9463% |
| 279 | fucompp | 1993 | 0.0006% | 99.9469% |
| 280 | pmovmskb | 1964 | 0.0006% | 99.9475% |
| 281 | andpd | 1963 | 0.0006% | 99.9481% |
| 282 | lldt | 1930 | 0.0006% | 99.9487% |
| 283 | pavgb | 1929 | 0.0006% | 99.9494% |
| 284 | fucom | 1902 | 0.0006% | 99.95% |
| 285 | emms | 1824 | 0.0006% | 99.9505% |
| 286 | fcomip | 1822 | 0.0006% | 99.9511% |
| 287 | setns | 1814 | 0.0006% | 99.9517% |
| 288 | lsl | 1798 | 0.0006% | 99.9523% |
| 289 | movupd | 1781 | 0.0006% | 99.9528% |
| 290 | ldmxcsr | 1780 | 0.0006% | 99.9534% |
| 291 | setle | 1716 | 0.0005% | 99.9539% |
| 292 | pcmpeqb | 1656 | 0.0005% | 99.9545% |
| 293 | unpckhps | 1638 | 0.0005% | 99.955% |
| 294 | fucomp | 1626 | 0.0005% | 99.9555% |
| 295 | pandn | 1611 | 0.0005% | 99.956% |
| 296 | clts | 1572 | 0.0005% | 99.9565% |
| 297 | fstp8 | 1539 | 0.0005% | 99.957% |
| 298 | paddb | 1533 | 0.0005% | 99.9575% |
| 299 | vmovdqa | 1504 | 0.0005% | 99.9579% |
| 300 | fcomi | 1490 | 0.0005% | 99.9584% |
| 301 | movhlps | 1482 | 0.0005% | 99.9589% |
| 302 | fcompp | 1479 | 0.0005% | 99.9594% |
| 303 | sets | 1477 | 0.0005% | 99.9598% |
| 304 | vpextrd | 1466 | 0.0005% | 99.9603% |
| 305 | fcmovu | 1457 | 0.0005% | 99.9608% |
| 306 | repe | 1447 | 0.0005% | 99.9612% |
| 307 | vpinsrd | 1431 | 0.0005% | 99.9617% |
| 308 | lar | 1414 | 0.0004% | 99.9621% |
| 309 | xorpd | 1398 | 0.0004% | 99.9626% |
| 309 | invd | 1398 | 0.0004% | 99.963% |
| 311 | pshuflw | 1389 | 0.0004% | 99.9634% |
| 312 | fucomip | 1387 | 0.0004% | 99.9639% |
| 313 | pcmpeqw | 1380 | 0.0004% | 99.9643% |
| 314 | fstp1 | 1371 | 0.0004% | 99.9647% |
| 315 | psubb | 1350 | 0.0004% | 99.9652% |
| 316 | rdtsc | 1329 | 0.0004% | 99.9656% |
| 317 | fcmovnu | 1322 | 0.0004% | 99.966% |
| 318 | jmpe | 1288 | 0.0004% | 99.9664% |
| 319 | fstp9 | 1287 | 0.0004% | 99.9668% |
| 320 | sgdt | 1280 | 0.0004% | 99.9672% |
| 320 | psubusb | 1280 | 0.0004% | 99.9676% |
| 322 | pcmpeqd | 1256 | 0.0004% | 99.968% |
| 323 | verr | 1243 | 0.0004% | 99.9684% |
| 324 | unpcklpd | 1191 | 0.0004% | 99.9688% |
| 325 | maxsd | 1188 | 0.0004% | 99.9692% |
| 326 | pshufhw | 1182 | 0.0004% | 99.9696% |
| 327 | paddq | 1140 | 0.0004% | 99.9699% |
| 328 | andnps | 1115 | 0.0004% | 99.9703% |
| 329 | sysret | 1094 | 0.0003% | 99.9706% |
| 330 | frndint | 1084 | 0.0003% | 99.971% |
| 331 | vpaddw | 1055 | 0.0003% | 99.9713% |
| 332 | syscall | 1048 | 0.0003% | 99.9716% |
| 333 | fcomp5 | 1040 | 0.0003% | 99.972% |
| 334 | pshufb | 1038 | 0.0003% | 99.9723% |
| 335 | minsd | 1029 | 0.0003% | 99.9726% |
| 336 | ffreep | 1027 | 0.0003% | 99.9729% |
| 337 | fcom2 | 1026 | 0.0003% | 99.9733% |
| 338 | fcmovne | 1024 | 0.0003% | 99.9736% |
| 339 | fcmovnbe | 1021 | 0.0003% | 99.9739% |
| 340 | setae | 1016 | 0.0003% | 99.9742% |
| 341 | fcmove | 1012 | 0.0003% | 99.9746% |
| 342 | lddqu | 1004 | 0.0003% | 99.9749% |
| 343 | ltr | 1000 | 0.0003% | 99.9752% |
| 344 | xgetbv | 955 | 0.0003% | 99.9755% |
| 345 | packsswb | 944 | 0.0003% | 99.9758% |
| 346 | femms | 942 | 0.0003% | 99.9761% |
| 347 | orpd | 934 | 0.0003% | 99.9764% |
| 348 | fcmovbe | 925 | 0.0003% | 99.9767% |
| 349 | pause | 908 | 0.0003% | 99.977% |
| 350 | vpaddd | 903 | 0.0003% | 99.9773% |
| 351 | lgdt | 893 | 0.0003% | 99.9775% |
| 352 | pmaxub | 877 | 0.0003% | 99.9778% |
| 353 | pminub | 868 | 0.0003% | 99.9781% |
| 354 | verw | 861 | 0.0003% | 99.9784% |
| 355 | pmaddubsw | 853 | 0.0003% | 99.9786% |
| 356 | vzeroupper | 843 | 0.0003% | 99.9789% |
| 357 | pshufw | 842 | 0.0003% | 99.9792% |
| 358 | prefetchnta | 839 | 0.0003% | 99.9794% |
| 359 | unpckhpd | 834 | 0.0003% | 99.9797% |
| 360 | vmovq | 831 | 0.0003% | 99.98% |
| 361 | aam | 823 | 0.0003% | 99.9802% |
| 362 | fucomi | 793 | 0.0003% | 99.9805% |
| 363 | sysexit | 780 | 0.0002% | 99.9807% |
| 364 | pslldq | 776 | 0.0002% | 99.981% |
| 365 | vbroadcastss | 772 | 0.0002% | 99.9812% |
| 366 | vpxor | 745 | 0.0002% | 99.9814% |
| 367 | fcmovb | 739 | 0.0002% | 99.9817% |
| 368 | fxch7 | 709 | 0.0002% | 99.9819% |
| 369 | ffree | 707 | 0.0002% | 99.9821% |
| 370 | rcpps | 706 | 0.0002% | 99.9824% |
| 370 | fcmovnb | 706 | 0.0002% | 99.9826% |
| 372 | movntq | 704 | 0.0002% | 99.9828% |
| 373 | wbinvd | 700 | 0.0002% | 99.983% |
| 374 | pmaxsw | 695 | 0.0002% | 99.9832% |
| 375 | vpcmpeqb | 671 | 0.0002% | 99.9835% |
| 376 | fxch4 | 665 | 0.0002% | 99.9837% |
| 377 | subpd | 653 | 0.0002% | 99.9839% |
| 378 | pcmpgtd | 644 | 0.0002% | 99.9841% |
| 379 | maxps | 604 | 0.0002% | 99.9843% |
| 379 | aad | 604 | 0.0002% | 99.9845% |
| 381 | fcos | 600 | 0.0002% | 99.9847% |
| 382 | paddusb | 577 | 0.0002% | 99.9848% |
| 383 | pminsw | 555 | 0.0002% | 99.985% |
| 384 | wrmsr | 544 | 0.0002% | 99.9852% |
| 385 | ud2 | 532 | 0.0002% | 99.9854% |
| 386 | minps | 528 | 0.0002% | 99.9855% |
| 387 | vpmaddwd | 522 | 0.0002% | 99.9857% |
| 388 | psubusw | 520 | 0.0002% | 99.9858% |
| 389 | vpshufd | 508 | 0.0002% | 99.986% |
| 390 | pclmulqdq | 502 | 0.0002% | 99.9862% |
| 391 | vpunpcklwd | 483 | 0.0002% | 99.9863% |
| 392 | vpor | 465 | 0.0001% | 99.9865% |
| 392 | setbe | 465 | 0.0001% | 99.9866% |
| 394 | sqrtsd | 462 | 0.0001% | 99.9868% |
| 395 | cbw | 455 | 0.0001% | 99.9869% |
| 396 | xrelease | 452 | 0.0001% | 99.987% |
| 397 | rsqrtps | 449 | 0.0001% | 99.9872% |
| 397 | pmovzxbw | 449 | 0.0001% | 99.9873% |
| 399 | vpsrld | 439 | 0.0001% | 99.9875% |
| 400 | cvtss2si | 436 | 0.0001% | 99.9876% |
| 401 | rorx | 432 | 0.0001% | 99.9877% |
| 402 | movntdq | 427 | 0.0001% | 99.9879% |
| 403 | pmuludq | 426 | 0.0001% | 99.988% |
| 404 | divps | 425 | 0.0001% | 99.9882% |
| 405 | vpmovmskb | 423 | 0.0001% | 99.9883% |
| 406 | vperm2i128 | 420 | 0.0001% | 99.9884% |
| 406 | cvtps2pi | 420 | 0.0001% | 99.9886% |
| 408 | cvtpi2ps | 418 | 0.0001% | 99.9887% |
| 409 | sqrtps | 416 | 0.0001% | 99.9888% |
| 410 | vpunpckhwd | 405 | 0.0001% | 99.9889% |
| 411 | vpunpcklbw | 396 | 0.0001% | 99.9891% |
| 412 | sqrtss | 379 | 0.0001% | 99.9892% |
| 413 | aesenc | 364 | 0.0001% | 99.9893% |
| 414 | prefetcht1 | 360 | 0.0001% | 99.9894% |
| 414 | ftst | 360 | 0.0001% | 99.9895% |
| 416 | vcvtqq2pd | 358 | 0.0001% | 99.9896% |
| 417 | vcvtuqq2pd | 357 | 0.0001% | 99.9898% |
| 417 | vcvttpd2qq | 357 | 0.0001% | 99.9899% |
| 419 | vcvttps2qq | 355 | 0.0001% | 99.99% |
| 420 | vcvttss2usi | 354 | 0.0001% | 99.9901% |
| 420 | vcvttsd2usi | 354 | 0.0001% | 99.9902% |
| 422 | vcvttps2uqq | 353 | 0.0001% | 99.9903% |
| 422 | vcvttpd2uqq | 353 | 0.0001% | 99.9904% |
| 424 | vcvtuqq2ps | 352 | 0.0001% | 99.9905% |
| 424 | vcvtqq2ps | 352 | 0.0001% | 99.9907% |
| 426 | movq2dq | 345 | 0.0001% | 99.9908% |
| 427 | fscale | 343 | 0.0001% | 99.9909% |
| 428 | psubq | 339 | 0.0001% | 99.991% |
| 429 | pmulhuw | 334 | 0.0001% | 99.9911% |
| 430 | bndldx | 330 | 0.0001% | 99.9912% |
| 431 | setp | 319 | 0.0001% | 99.9913% |
| 432 | lss | 318 | 0.0001% | 99.9914% |
| 433 | vpunpckhbw | 317 | 0.0001% | 99.9915% |
| 434 | vpclmulqdq | 312 | 0.0001% | 99.9916% |
| 435 | vpcmpeqw | 310 | 0.0001% | 99.9917% |
| 436 | vpsrlw | 308 | 0.0001% | 99.9918% |
| 437 | cvtps2dq | 307 | 0.0001% | 99.9919% |
| 438 | fyl2x | 301 | 0.0001% | 99.992% |
| 439 | cmovnp | 291 | 0.0001% | 99.9921% |
| 440 | getsec | 289 | 0.0001% | 99.9922% |
| 441 | cmovp | 284 | 0.0001% | 99.9923% |
| 442 | movnti | 275 | 0.0001% | 99.9923% |
| 443 | pavgw | 270 | 0.0001% | 99.9924% |
| 443 | fdecstp | 270 | 0.0001% | 99.9925% |
| 445 | vmovups | 267 | 0.0001% | 99.9926% |
| 446 | prefetcht0 | 266 | 0.0001% | 99.9927% |
| 447 | vinsertf128 | 264 | 0.0001% | 99.9928% |
| 447 | cmovo | 264 | 0.0001% | 99.9929% |
| 449 | vpmullw | 260 | 0.0001% | 99.9929% |
| 450 | fsqrt | 257 | 0.0001% | 99.993% |
| 451 | fninit | 256 | 0.0001% | 99.9931% |
| 452 | pcmpistri | 253 | 0.0001% | 99.9932% |
| 452 | bndstx | 253 | 0.0001% | 99.9933% |
| 454 | vpcmpeqd | 251 | 0.0001% | 99.9933% |
| 455 | cmovno | 249 | 0.0001% | 99.9934% |
| 456 | setnp | 248 | 0.0001% | 99.9935% |
| 456 | cvttps2dq | 248 | 0.0001% | 99.9936% |
| 458 | cwd | 239 | 0.0001% | 99.9936% |
| 459 | btc | 238 | 0.0001% | 99.9937% |
| 460 | pabsw | 235 | 0.0001% | 99.9938% |
| 461 | movntps | 233 | 0.0001% | 99.9939% |
| 462 | vpsrldq | 229 | 0.0001% | 99.9939% |
| 463 | tzcnt | 228 | 0.0001% | 99.994% |
| 464 | fsin | 225 | 0.0001% | 99.9941% |
| 465 | paddsb | 223 | 0.0001% | 99.9942% |
| 466 | fldlg2 | 221 | 0.0001% | 99.9942% |
| 467 | pusha | 218 | 0.0001% | 99.9943% |
| 467 | cvttps2pi | 218 | 0.0001% | 99.9944% |
| 469 | fxam | 217 | 0.0001% | 99.9944% |
| 470 | xbts | 212 | 0.0001% | 99.9945% |
| 471 | rsm | 210 | 0.0001% | 99.9946% |
| 472 | movdq2q | 206 | 0.0001% | 99.9946% |
| 472 | fldln2 | 206 | 0.0001% | 99.9947% |
| 474 | vpxord | 204 | 0.0001% | 99.9948% |
| 474 | vpand | 204 | 0.0001% | 99.9948% |
| 476 | cmpeqsd | 203 | 0.0001% | 99.9949% |
| 477 | vpackssdw | 202 | 0.0001% | 99.995% |
| 478 | rdpmc | 200 | 0.0001% | 99.995% |
| 479 | sysenter | 196 | 0.0001% | 99.9951% |
| 480 | vpackuswb | 195 | 0.0001% | 99.9951% |
| 480 | fprem | 195 | 0.0001% | 99.9952% |
| 482 | sfence | 192 | 0.0001% | 99.9953% |
| 483 | vmwrite | 188 | 0.0001% | 99.9953% |
| 484 | fldpi | 187 | 0.0001% | 99.9954% |
| 485 | rdmsr | 186 | 0.0001% | 99.9954% |
| 486 | vpsrad | 184 | 0.0001% | 99.9955% |
| 486 | vpermq | 184 | 0.0001% | 99.9956% |
| 486 | movhpd | 184 | 0.0001% | 99.9956% |
| 489 | vxorps | 178 | 0.0001% | 99.9957% |
| 489 | cmpltps | 178 | 0.0001% | 99.9957% |
| 491 | pblendvb | 176 | 0.0001% | 99.9958% |
| 491 | mpsadbw | 176 | 0.0001% | 99.9958% |
| 493 | feni | 174 | 0.0001% | 99.9959% |
| 494 | f2xm1 | 173 | 0.0001% | 99.996% |
| 495 | fpatan | 169 | 0.0001% | 99.996% |
| 496 | vpslldq | 167 | 0.0001% | 99.9961% |
| 497 | cvtsd2si | 166 | 0.0001% | 99.9961% |
| 498 | aesdec | 163 | 0.0001% | 99.9962% |
| 499 | prefetch | 157 | 0% | 99.9962% |
| 500 | aesenclast | 156 | 0% | 99.9963% |
| 501 | vmovaps | 155 | 0% | 99.9963% |
| 501 | pfadd | 155 | 0% | 99.9964% |
| 503 | vpsllw | 153 | 0% | 99.9964% |
| 503 | cmpps | 153 | 0% | 99.9965% |
| 505 | fprem1 | 152 | 0% | 99.9965% |
| 506 | psubsb | 150 | 0% | 99.9966% |
| 507 | sidt | 148 | 0% | 99.9966% |
| 508 | vpaddq | 146 | 0% | 99.9966% |
| 509 | vmread | 144 | 0% | 99.9967% |
| 510 | vmulps | 143 | 0% | 99.9967% |
| 510 | ibts | 143 | 0% | 99.9968% |
| 512 | iret | 127 | 0% | 99.9968% |
| 513 | setno | 126 | 0% | 99.9969% |
| 514 | vaddps | 124 | 0% | 99.9969% |
| 514 | fldl2e | 124 | 0% | 99.9969% |
| 516 | fxtract | 123 | 0% | 99.997% |
| 517 | fptan | 119 | 0% | 99.997% |
| 518 | vpsraw | 118 | 0% | 99.9971% |
| 518 | vpmulhw | 118 | 0% | 99.9971% |
| 520 | movmskps | 115 | 0% | 99.9971% |
| 520 | fnop | 115 | 0% | 99.9972% |
| 522 | lgs | 114 | 0% | 99.9972% |
| 523 | vpunpckldq | 113 | 0% | 99.9972% |
| 524 | pushf | 112 | 0% | 99.9973% |
| 525 | prefetchw | 111 | 0% | 99.9973% |
| 526 | vpsrlq | 110 | 0% | 99.9973% |
| 527 | shufpd | 109 | 0% | 99.9974% |
| 528 | pfsub | 108 | 0% | 99.9974% |
| 529 | prefetchwt1 | 107 | 0% | 99.9974% |
| 529 | fldl2t | 107 | 0% | 99.9975% |
| 531 | vmovntdq | 103 | 0% | 99.9975% |
| 531 | jcxz | 103 | 0% | 99.9975% |
| 533 | lidt | 101 | 0% | 99.9976% |
| 534 | cmpnlepd | 99 | 0% | 99.9976% |
| 535 | vmovdqu32 | 95 | 0% | 99.9976% |
| 535 | fdisi | 95 | 0% | 99.9977% |
| 537 | vpunpcklqdq | 93 | 0% | 99.9977% |
| 538 | popf | 92 | 0% | 99.9977% |
| 539 | vpunpckhdq | 90 | 0% | 99.9978% |
| 539 | vpcmpeqq | 90 | 0% | 99.9978% |
| 539 | fsincos | 90 | 0% | 99.9978% |
| 542 | lfs | 89 | 0% | 99.9978% |
| 543 | vpshufb | 88 | 0% | 99.9979% |
| 543 | cldemote | 88 | 0% | 99.9979% |
| 545 | vpsubw | 87 | 0% | 99.9979% |
| 546 | popcnt | 86 | 0% | 99.998% |
| 547 | vpmuludq | 85 | 0% | 99.998% |
| 548 | vinserti128 | 83 | 0% | 99.998% |
| 549 | vmovss | 81 | 0% | 99.998% |
| 549 | fincstp | 81 | 0% | 99.9981% |
| 551 | aesdeclast | 80 | 0% | 99.9981% |
| 552 | vpslld | 79 | 0% | 99.9981% |
| 552 | cmpltsd | 79 | 0% | 99.9981% |
| 554 | andnpd | 77 | 0% | 99.9982% |
| 555 | pfmul | 75 | 0% | 99.9982% |
| 556 | pmulld | 74 | 0% | 99.9982% |
| 557 | vpmaskmovd | 70 | 0% | 99.9982% |
| 557 | vpbroadcastw | 70 | 0% | 99.9982% |
| 557 | fsetpm | 70 | 0% | 99.9983% |
| 560 | vmovsd | 68 | 0% | 99.9983% |
| 560 | mfence | 68 | 0% | 99.9983% |
| 560 | cmpltpd | 68 | 0% | 99.9983% |
| 563 | cmpnlesd | 67 | 0% | 99.9984% |
| 563 | addsubps | 67 | 0% | 99.9984% |
| 565 | sha256rnds2 | 66 | 0% | 99.9984% |
| 566 | cmpleps | 65 | 0% | 99.9984% |
| 567 | vminps | 64 | 0% | 99.9984% |
| 567 | lmsw | 64 | 0% | 99.9985% |
| 569 | movshdup | 63 | 0% | 99.9985% |
| 570 | movsldup | 62 | 0% | 99.9985% |
| 571 | vpshuflw | 61 | 0% | 99.9985% |
| 571 | vpminub | 61 | 0% | 99.9985% |
| 573 | pextrd | 60 | 0% | 99.9986% |
| 573 | fyl2xp1 | 60 | 0% | 99.9986% |
| 573 | fxsave | 60 | 0% | 99.9986% |
| 576 | cmpeqps | 58 | 0% | 99.9986% |
| 577 | vxorpd | 57 | 0% | 99.9986% |
| 577 | vpinsrw | 57 | 0% | 99.9986% |
| 579 | vpermd | 56 | 0% | 99.9987% |
| 580 | vextracti128 | 55 | 0% | 99.9987% |
| 580 | vandpd | 55 | 0% | 99.9987% |
| 580 | pi2fd | 55 | 0% | 99.9987% |
| 583 | vpalignr | 53 | 0% | 99.9987% |
| 584 | vpaddb | 51 | 0% | 99.9988% |
| 584 | pminsd | 51 | 0% | 99.9988% |
| 584 | crc32 | 51 | 0% | 99.9988% |
| 587 | vpunpckhqdq | 49 | 0% | 99.9988% |
| 587 | pminud | 49 | 0% | 99.9988% |
| 589 | vpshufhw | 48 | 0% | 99.9988% |
| 590 | vpsllq | 47 | 0% | 99.9988% |
| 591 | vpmovzxbw | 46 | 0% | 99.9989% |
| 591 | pi2fw | 46 | 0% | 99.9989% |
| 593 | pmaxud | 45 | 0% | 99.9989% |
| 593 | fxrstor | 45 | 0% | 99.9989% |
| 593 | divpd | 45 | 0% | 99.9989% |
| 596 | vphaddw | 44 | 0% | 99.9989% |
| 597 | vmovupd | 43 | 0% | 99.9989% |
| 597 | pmaxsd | 43 | 0% | 99.999% |
| 599 | vmovmskps | 42 | 0% | 99.999% |
| 599 | phaddd | 42 | 0% | 99.999% |
| 601 | prefetcht2 | 41 | 0% | 99.999% |
| 601 | cmpltss | 41 | 0% | 99.999% |
| 603 | vprotd | 40 | 0% | 99.999% |
| 603 | psignw | 40 | 0% | 99.999% |
| 605 | vandps | 39 | 0% | 99.999% |
| 605 | phaddw | 39 | 0% | 99.9991% |
| 605 | aeskeygenassist | 39 | 0% | 99.9991% |
| 608 | vpaddusb | 38 | 0% | 99.9991% |
| 608 | smsw | 38 | 0% | 99.9991% |
| 608 | pmaxsb | 38 | 0% | 99.9991% |
| 611 | andn | 37 | 0% | 99.9991% |
| 612 | vpsubsb | 36 | 0% | 99.9991% |
| 612 | vextracti32x4 | 36 | 0% | 99.9991% |
| 614 | vpsubd | 35 | 0% | 99.9992% |
| 614 | vmaxps | 35 | 0% | 99.9992% |
| 614 | roundsd | 35 | 0% | 99.9992% |
| 614 | pmovsxwd | 35 | 0% | 99.9992% |
| 618 | vpacksswb | 34 | 0% | 99.9992% |
| 618 | maskmovdqu | 34 | 0% | 99.9992% |
| 620 | pminuw | 33 | 0% | 99.9992% |
| 621 | vminss | 32 | 0% | 99.9992% |
| 621 | tpause | 32 | 0% | 99.9992% |
| 623 | vlddqu | 31 | 0% | 99.9992% |
| 623 | vextractf128 | 31 | 0% | 99.9993% |
| 623 | vcvtps2dq | 31 | 0% | 99.9993% |
| 623 | vcvtph2ps | 31 | 0% | 99.9993% |
| 623 | pminsb | 31 | 0% | 99.9993% |
| 623 | pcmpeqq | 31 | 0% | 99.9993% |
| 629 | vperm2f128 | 29 | 0% | 99.9993% |
| 629 | pinsrd | 29 | 0% | 99.9993% |
| 631 | vshufpd | 28 | 0% | 99.9993% |
| 631 | vmulss | 28 | 0% | 99.9993% |
| 631 | cmpneqps | 28 | 0% | 99.9993% |
| 634 | vpackusdw | 27 | 0% | 99.9994% |
| 635 | vshufps | 26 | 0% | 99.9994% |
| 635 | vpandn | 26 | 0% | 99.9994% |
| 635 | sha256msg1 | 26 | 0% | 99.9994% |
| 638 | sha256msg2 | 25 | 0% | 99.9994% |
| 638 | sha1rnds4 | 25 | 0% | 99.9994% |
| 638 | pinsrb | 25 | 0% | 99.9994% |
| 641 | vmovdqa32 | 24 | 0% | 99.9994% |
| 641 | pmaxuw | 24 | 0% | 99.9994% |
| 641 | cvttpd2dq | 24 | 0% | 99.9994% |
| 644 | maxpd | 23 | 0% | 99.9994% |
| 645 | sha1nexte | 22 | 0% | 99.9994% |
| 645 | pcmpgtq | 22 | 0% | 99.9994% |
| 645 | pabsd | 22 | 0% | 99.9995% |
| 648 | xrstor | 21 | 0% | 99.9995% |
| 648 | vsubps | 21 | 0% | 99.9995% |
| 648 | vpmulhuw | 21 | 0% | 99.9995% |
| 648 | minpd | 21 | 0% | 99.9995% |
| 648 | maskmovq | 21 | 0% | 99.9995% |
| 648 | invlpg | 21 | 0% | 99.9995% |
| 654 | vpbroadcastq | 20 | 0% | 99.9995% |
| 654 | movntdqa | 20 | 0% | 99.9995% |
| 656 | vmovlpd | 19 | 0% | 99.9995% |
| 657 | vminsd | 18 | 0% | 99.9995% |
| 657 | vmaxss | 18 | 0% | 99.9995% |
| 657 | vaddss | 18 | 0% | 99.9995% |
| 660 | xsaves | 17 | 0% | 99.9995% |
| 660 | vsqrtsd | 17 | 0% | 99.9995% |
| 660 | vcvtdq2ps | 17 | 0% | 99.9995% |
| 660 | sha1msg2 | 17 | 0% | 99.9995% |
| 660 | sha1msg1 | 17 | 0% | 99.9996% |
| 665 | vpsignw | 16 | 0% | 99.9996% |
| 665 | vpsadbw | 16 | 0% | 99.9996% |
| 665 | haddps | 16 | 0% | 99.9996% |
| 668 | vsqrtps | 15 | 0% | 99.9996% |
| 668 | vpextrw | 15 | 0% | 99.9996% |
| 668 | vpaddusw | 15 | 0% | 99.9996% |
| 668 | vfmadd213ps | 15 | 0% | 99.9996% |
| 668 | pcmpestri | 15 | 0% | 99.9996% |
| 673 | xsave | 14 | 0% | 99.9996% |
| 674 | xsavec | 13 | 0% | 99.9996% |
| 674 | vmovapd | 13 | 0% | 99.9996% |
| 674 | vminpd | 13 | 0% | 99.9996% |
| 674 | vdivps | 13 | 0% | 99.9996% |
| 674 | vcvttps2dq | 13 | 0% | 99.9996% |
| 674 | vaddsd | 13 | 0% | 99.9996% |
| 674 | roundss | 13 | 0% | 99.9996% |
| 674 | pmovzxwd | 13 | 0% | 99.9996% |
| 674 | pblendw | 13 | 0% | 99.9996% |
| 674 | cmpneqpd | 13 | 0% | 99.9996% |
| 684 | vphaddd | 12 | 0% | 99.9996% |
| 684 | vpblendw | 12 | 0% | 99.9996% |
| 684 | vdivss | 12 | 0% | 99.9997% |
| 684 | vcvtss2si | 12 | 0% | 99.9997% |
| 684 | psignd | 12 | 0% | 99.9997% |
| 689 | vpermps | 11 | 0% | 99.9997% |
| 689 | vhsubpd | 11 | 0% | 99.9997% |
| 689 | vcvttss2si | 11 | 0% | 99.9997% |
| 689 | sqrtpd | 11 | 0% | 99.9997% |
| 689 | rcpss | 11 | 0% | 99.9997% |
| 689 | prefetchit0 | 11 | 0% | 99.9997% |
| 689 | phminposuw | 11 | 0% | 99.9997% |
| 689 | cmpeqpd | 11 | 0% | 99.9997% |
| 697 | roundps | 10 | 0% | 99.9997% |
| 697 | roundpd | 10 | 0% | 99.9997% |
| 697 | ptest | 10 | 0% | 99.9997% |
| 697 | pmulhrsw | 10 | 0% | 99.9997% |
| 697 | phaddsw | 10 | 0% | 99.9997% |
| 697 | cmplesd | 10 | 0% | 99.9997% |
| 703 | vzeroall | 9 | 0% | 99.9997% |
| 703 | vpcmpgtw | 9 | 0% | 99.9997% |
| 703 | vpaddsw | 9 | 0% | 99.9997% |
| 703 | vmptrst | 9 | 0% | 99.9997% |
| 703 | vmptrld | 9 | 0% | 99.9997% |
| 703 | vmovntps | 9 | 0% | 99.9997% |
| 703 | vcvtsi2ss | 9 | 0% | 99.9997% |
| 703 | vcmppd | 9 | 0% | 99.9997% |
| 703 | vaddsubps | 9 | 0% | 99.9997% |
| 703 | lzcnt | 9 | 0% | 99.9997% |
| 703 | clflush | 9 | 0% | 99.9997% |
| 714 | xsaveopt | 8 | 0% | 99.9997% |
| 714 | vunpcklps | 8 | 0% | 99.9997% |
| 714 | vpmovzxwd | 8 | 0% | 99.9997% |
| 714 | vpmovzxbd | 8 | 0% | 99.9997% |
| 714 | vpblendvb | 8 | 0% | 99.9997% |
| 714 | vpabsw | 8 | 0% | 99.9998% |
| 714 | vcvttsd2si | 8 | 0% | 99.9998% |
| 714 | vcvtpd2dq | 8 | 0% | 99.9998% |
| 714 | vcmpps | 8 | 0% | 99.9998% |
| 714 | tlbsync | 8 | 0% | 99.9998% |
| 714 | movmskpd | 8 | 0% | 99.9998% |
| 714 | cvtpd2dq | 8 | 0% | 99.9998% |
| 714 | cmpnless | 8 | 0% | 99.9998% |
| 727 | vunpckhps | 7 | 0% | 99.9998% |
| 727 | vpsrlvd | 7 | 0% | 99.9998% |
| 727 | vpminsd | 7 | 0% | 99.9998% |
| 727 | vpmaxsd | 7 | 0% | 99.9998% |
| 727 | vpcmpgtb | 7 | 0% | 99.9998% |
| 727 | vmovddup | 7 | 0% | 99.9998% |
| 727 | vhaddps | 7 | 0% | 99.9998% |
| 727 | vdivsd | 7 | 0% | 99.9998% |
| 727 | pmuldq | 7 | 0% | 99.9998% |
| 727 | packusdw | 7 | 0% | 99.9998% |
| 727 | kmovw | 7 | 0% | 99.9998% |
| 727 | aesimc | 7 | 0% | 99.9998% |
| 739 | vsqrtss | 6 | 0% | 99.9998% |
| 739 | vpsubb | 6 | 0% | 99.9998% |
| 739 | vpminsw | 6 | 0% | 99.9998% |
| 739 | vpmaxub | 6 | 0% | 99.9998% |
| 739 | vpmaxsw | 6 | 0% | 99.9998% |
| 739 | vpermw | 6 | 0% | 99.9998% |
| 739 | vpcmpgtd | 6 | 0% | 99.9998% |
| 739 | vpbroadcastd | 6 | 0% | 99.9998% |
| 739 | vmovsldup | 6 | 0% | 99.9998% |
| 739 | vmovdqu16 | 6 | 0% | 99.9998% |
| 739 | vmaskmovps | 6 | 0% | 99.9998% |
| 739 | vcvtpd2ps | 6 | 0% | 99.9998% |
| 739 | vandnps | 6 | 0% | 99.9998% |
| 739 | rdtscp | 6 | 0% | 99.9998% |
| 739 | prefetchit1 | 6 | 0% | 99.9998% |
| 739 | pfpnacc | 6 | 0% | 99.9998% |
| 739 | mwaitx | 6 | 0% | 99.9998% |
| 739 | monitorx | 6 | 0% | 99.9998% |
| 757 | xrstors | 5 | 0% | 99.9998% |
| 757 | vpsubusw | 5 | 0% | 99.9998% |
| 757 | vpsubusb | 5 | 0% | 99.9998% |
| 757 | vpavgb | 5 | 0% | 99.9998% |
| 757 | vpandd | 5 | 0% | 99.9998% |
| 757 | vmovshdup | 5 | 0% | 99.9998% |
| 757 | vmovdqu8 | 5 | 0% | 99.9998% |
| 757 | vcvtsd2ss | 5 | 0% | 99.9998% |
| 757 | vcvtps2ph | 5 | 0% | 99.9998% |
| 757 | vaddsubpd | 5 | 0% | 99.9998% |
| 757 | rdseed | 5 | 0% | 99.9998% |
| 757 | psignb | 5 | 0% | 99.9998% |
| 757 | pmovzxbd | 5 | 0% | 99.9999% |
| 757 | pfcmpgt | 5 | 0% | 99.9999% |
| 757 | pfcmpge | 5 | 0% | 99.9999% |
| 757 | pabsb | 5 | 0% | 99.9999% |
| 773 | vunpcklpd | 4 | 0% | 99.9999% |
| 773 | vsubss | 4 | 0% | 99.9999% |
| 773 | vsubpd | 4 | 0% | 99.9999% |
| 773 | vrsqrtss | 4 | 0% | 99.9999% |
| 773 | vrsqrtps | 4 | 0% | 99.9999% |
| 773 | vpmulld | 4 | 0% | 99.9999% |
| 773 | vpmaxuw | 4 | 0% | 99.9999% |
| 773 | vpgatherdd | 4 | 0% | 99.9999% |
| 773 | vpermb | 4 | 0% | 99.9999% |
| 773 | vorps | 4 | 0% | 99.9999% |
| 773 | vmovlps | 4 | 0% | 99.9999% |
| 773 | vhaddpd | 4 | 0% | 99.9999% |
| 773 | vfmadd213sd | 4 | 0% | 99.9999% |
| 773 | vfmadd132sd | 4 | 0% | 99.9999% |
| 773 | vcvttpd2dq | 4 | 0% | 99.9999% |
| 773 | vcvtss2sd | 4 | 0% | 99.9999% |
| 773 | vcvtsd2si | 4 | 0% | 99.9999% |
| 773 | vcvtps2pd | 4 | 0% | 99.9999% |
| 773 | vcmpss | 4 | 0% | 99.9999% |
| 773 | vcmpsd | 4 | 0% | 99.9999% |
| 773 | stac | 4 | 0% | 99.9999% |
| 773 | pfsubr | 4 | 0% | 99.9999% |
| 773 | pfcmpeq | 4 | 0% | 99.9999% |
| 773 | pf2iw | 4 | 0% | 99.9999% |
| 773 | kunpckdq | 4 | 0% | 99.9999% |
| 773 | kmovb | 4 | 0% | 99.9999% |
| 773 | cmpnltps | 4 | 0% | 99.9999% |
| 773 | cmpnleps | 4 | 0% | 99.9999% |
| 773 | cmplepd | 4 | 0% | 99.9999% |
| 773 | bextr | 4 | 0% | 99.9999% |
| 803 | vunpckhpd | 3 | 0% | 99.9999% |
| 803 | vrcpps | 3 | 0% | 99.9999% |
| 803 | vpsubsw | 3 | 0% | 99.9999% |
| 803 | vpsubq | 3 | 0% | 99.9999% |
| 803 | vpmaskmovq | 3 | 0% | 99.9999% |
| 803 | vphminposuw | 3 | 0% | 99.9999% |
| 803 | vpaddsb | 3 | 0% | 99.9999% |
| 803 | vorpd | 3 | 0% | 99.9999% |
| 803 | vmulpd | 3 | 0% | 99.9999% |
| 803 | vmovntpd | 3 | 0% | 99.9999% |
| 803 | vmovhps | 3 | 0% | 99.9999% |
| 803 | vmaxsd | 3 | 0% | 99.9999% |
| 803 | vmaxpd | 3 | 0% | 99.9999% |
| 803 | vfmsub213ps | 3 | 0% | 99.9999% |
| 803 | vfmadd213ss | 3 | 0% | 99.9999% |
| 803 | vcvtsi2sd | 3 | 0% | 99.9999% |
| 803 | vcvtneeph2ps | 3 | 0% | 99.9999% |
| 803 | vcvtdq2pd | 3 | 0% | 99.9999% |
| 803 | vcomisd | 3 | 0% | 99.9999% |
| 803 | vandnpd | 3 | 0% | 99.9999% |
| 803 | vaddpd | 3 | 0% | 99.9999% |
| 803 | umwait | 3 | 0% | 99.9999% |
| 803 | umonitor | 3 | 0% | 99.9999% |
| 803 | stgi | 3 | 0% | 99.9999% |
| 803 | rsqrtss | 3 | 0% | 99.9999% |
| 803 | rdrand | 3 | 0% | 99.9999% |
| 803 | pswapd | 3 | 0% | 99.9999% |
| 803 | pmulhrw | 3 | 0% | 99.9999% |
| 803 | pmovsxdq | 3 | 0% | 99.9999% |
| 803 | kxnorb | 3 | 0% | 99.9999% |
| 803 | kmovd | 3 | 0% | 99.9999% |
| 803 | kandw | 3 | 0% | 99.9999% |
| 803 | invlpgb | 3 | 0% | 99.9999% |
| 803 | enclu | 3 | 0% | 99.9999% |
| 803 | blendvps | 3 | 0% | 99.9999% |
| 838 | wbnoinvd | 2 | 0% | 99.9999% |
| 838 | vucomiss | 2 | 0% | 99.9999% |
| 838 | vsubsd | 2 | 0% | 99.9999% |
| 838 | vrcpss | 2 | 0% | 99.9999% |
| 838 | vrangeps | 2 | 0% | 99.9999% |
| 838 | vpsllvd | 2 | 0% | 99.9999% |
| 838 | vpord | 2 | 0% | 99.9999% |
| 838 | vpmuldq | 2 | 0% | 99.9999% |
| 838 | vpcomq | 2 | 0% | 99.9999% |
| 838 | vpbroadcastb | 2 | 0% | 99.9999% |
| 838 | vmulsh | 2 | 0% | 99.9999% |
| 838 | vmulsd | 2 | 0% | 99.9999% |
| 838 | vhsubps | 2 | 0% | 99.9999% |
| 838 | vdivpd | 2 | 0% | 99.9999% |
| 838 | vcomiss | 2 | 0% | 99.9999% |
| 838 | vcmpeqps | 2 | 0% | 99.9999% |
| 838 | vblendps | 2 | 0% | 99.9999% |
| 838 | phsubw | 2 | 0% | 99.9999% |
| 838 | phsubsw | 2 | 0% | 99.9999% |
| 838 | phsubd | 2 | 0% | 99.9999% |
| 838 | pf2id | 2 | 0% | 99.9999% |
| 838 | hsubpd | 2 | 0% | 99.9999% |
| 838 | cmpunordps | 2 | 0% | 99.9999% |
| 838 | cmpnltss | 2 | 0% | 99.9999% |
| 838 | cmpnltsd | 2 | 0% | 99.9999% |
| 838 | cmpnltpd | 2 | 0% | 99.9999% |
| 838 | cmpless | 2 | 0% | 99.9999% |
| 865 | wrssd | 1 | 0% | 99.9999% |
| 865 | wrpkru | 1 | 0% | 99.9999% |
| 865 | vucomisd | 1 | 0% | 99.9999% |
| 865 | vpsrlvq | 1 | 0% | 99.9999% |
| 865 | vpsravd | 1 | 0% | 99.9999% |
| 865 | vpsllvq | 1 | 0% | 99.9999% |
| 865 | vpshrdd | 1 | 0% | 99.9999% |
| 865 | vprotb | 1 | 0% | 99.9999% |
| 865 | vpexpandq | 1 | 0% | 99.9999% |
| 865 | vpermilps | 1 | 0% | 99.9999% |
| 865 | vpermilpd | 1 | 0% | 99.9999% |
| 865 | vpermi2ps | 1 | 0% | 99.9999% |
| 865 | vpdpwssd | 1 | 0% | 99.9999% |
| 865 | vpcmpd | 1 | 0% | 99.9999% |
| 865 | vpavgw | 1 | 0% | 99.9999% |
| 865 | vpabsb | 1 | 0% | 99.9999% |
| 865 | vmxoff | 1 | 0% | 99.9999% |
| 865 | vmovntdqa | 1 | 0% | 99.9999% |
| 865 | vmovhpd | 1 | 0% | 99.9999% |
| 865 | vmcpuid | 1 | 0% | 100% |
| 865 | vmcall | 1 | 0% | 100% |
| 865 | vfnmsub213ss | 1 | 0% | 100% |
| 865 | vfnmsub213sd | 1 | 0% | 100% |
| 865 | vfnmsub213ps | 1 | 0% | 100% |
| 865 | vfnmsub213pd | 1 | 0% | 100% |
| 865 | vfnmaddpd | 1 | 0% | 100% |
| 865 | vfnmadd213ss | 1 | 0% | 100% |
| 865 | vfnmadd213sd | 1 | 0% | 100% |
| 865 | vfnmadd213ps | 1 | 0% | 100% |
| 865 | vfnmadd213pd | 1 | 0% | 100% |
| 865 | vfnmadd132ps | 1 | 0% | 100% |
| 865 | vfmsubadd231ps | 1 | 0% | 100% |
| 865 | vfmsubadd231ph | 1 | 0% | 100% |
| 865 | vfmsubadd213ps | 1 | 0% | 100% |
| 865 | vfmsubadd213pd | 1 | 0% | 100% |
| 865 | vfmsub231ps | 1 | 0% | 100% |
| 865 | vfmsub213ss | 1 | 0% | 100% |
| 865 | vfmsub213sh | 1 | 0% | 100% |
| 865 | vfmsub213sd | 1 | 0% | 100% |
| 865 | vfmsub213pd | 1 | 0% | 100% |
| 865 | vfmsub132ps | 1 | 0% | 100% |
| 865 | vfmsub132pd | 1 | 0% | 100% |
| 865 | vfmaddsubpd | 1 | 0% | 100% |
| 865 | vfmaddsub213ps | 1 | 0% | 100% |
| 865 | vfmaddsub213pd | 1 | 0% | 100% |
| 865 | vfmaddsd | 1 | 0% | 100% |
| 865 | vfmadd231sd | 1 | 0% | 100% |
| 865 | vfmadd213pd | 1 | 0% | 100% |
| 865 | vfmadd132ss | 1 | 0% | 100% |
| 865 | vex | 1 | 0% | 100% |
| 865 | vcvttph2dq | 1 | 0% | 100% |
| 865 | vcvtss2sh | 1 | 0% | 100% |
| 865 | vcvtph2uw | 1 | 0% | 100% |
| 865 | vcmpunord_sss | 1 | 0% | 100% |
| 865 | vcmpunord_ssd | 1 | 0% | 100% |
| 865 | vcmpunord_sps | 1 | 0% | 100% |
| 865 | vcmpunord_spd | 1 | 0% | 100% |
| 865 | vcmptruess | 1 | 0% | 100% |
| 865 | vcmptruesd | 1 | 0% | 100% |
| 865 | vcmptrueps | 1 | 0% | 100% |
| 865 | vcmptruepd | 1 | 0% | 100% |
| 865 | vcmptrue_usss | 1 | 0% | 100% |
| 865 | vcmptrue_ussd | 1 | 0% | 100% |
| 865 | vcmptrue_usps | 1 | 0% | 100% |
| 865 | vcmptrue_uspd | 1 | 0% | 100% |
| 865 | vcmpord_sss | 1 | 0% | 100% |
| 865 | vcmpord_ssd | 1 | 0% | 100% |
| 865 | vcmpord_sps | 1 | 0% | 100% |
| 865 | vcmpord_spd | 1 | 0% | 100% |
| 865 | vcmpnlt_uqss | 1 | 0% | 100% |
| 865 | vcmpnlt_uqsd | 1 | 0% | 100% |
| 865 | vcmpnlt_uqps | 1 | 0% | 100% |
| 865 | vcmpnlt_uqpd | 1 | 0% | 100% |
| 865 | vcmpnle_uqss | 1 | 0% | 100% |
| 865 | vcmpnle_uqsd | 1 | 0% | 100% |
| 865 | vcmpnle_uqps | 1 | 0% | 100% |
| 865 | vcmpnle_uqpd | 1 | 0% | 100% |
| 865 | vcmpngt_uqss | 1 | 0% | 100% |
| 865 | vcmpngt_uqsd | 1 | 0% | 100% |
| 865 | vcmpngt_uqps | 1 | 0% | 100% |
| 865 | vcmpngt_uqpd | 1 | 0% | 100% |
| 865 | vcmpnge_uqss | 1 | 0% | 100% |
| 865 | vcmpnge_uqsd | 1 | 0% | 100% |
| 865 | vcmpnge_uqps | 1 | 0% | 100% |
| 865 | vcmpnge_uqpd | 1 | 0% | 100% |
| 865 | vcmpneq_usss | 1 | 0% | 100% |
| 865 | vcmpneq_ussd | 1 | 0% | 100% |
| 865 | vcmpneq_usps | 1 | 0% | 100% |
| 865 | vcmpneq_uspd | 1 | 0% | 100% |
| 865 | vcmpneq_osss | 1 | 0% | 100% |
| 865 | vcmpneq_ossd | 1 | 0% | 100% |
| 865 | vcmpneq_osps | 1 | 0% | 100% |
| 865 | vcmpneq_ospd | 1 | 0% | 100% |
| 865 | vcmpneq_oqss | 1 | 0% | 100% |
| 865 | vcmpneq_oqsd | 1 | 0% | 100% |
| 865 | vcmpneq_oqps | 1 | 0% | 100% |
| 865 | vcmpneq_oqpd | 1 | 0% | 100% |
| 865 | vcmplt_oqss | 1 | 0% | 100% |
| 865 | vcmplt_oqsd | 1 | 0% | 100% |
| 865 | vcmplt_oqps | 1 | 0% | 100% |
| 865 | vcmplt_oqpd | 1 | 0% | 100% |
| 865 | vcmple_oqss | 1 | 0% | 100% |
| 865 | vcmple_oqsd | 1 | 0% | 100% |
| 865 | vcmple_oqps | 1 | 0% | 100% |
| 865 | vcmple_oqpd | 1 | 0% | 100% |
| 865 | vcmpgt_oqss | 1 | 0% | 100% |
| 865 | vcmpgt_oqsd | 1 | 0% | 100% |
| 865 | vcmpgt_oqps | 1 | 0% | 100% |
| 865 | vcmpgt_oqpd | 1 | 0% | 100% |
| 865 | vcmpge_oqss | 1 | 0% | 100% |
| 865 | vcmpge_oqsd | 1 | 0% | 100% |
| 865 | vcmpge_oqps | 1 | 0% | 100% |
| 865 | vcmpge_oqpd | 1 | 0% | 100% |
| 865 | vcmpfalsess | 1 | 0% | 100% |
| 865 | vcmpfalsesd | 1 | 0% | 100% |
| 865 | vcmpfalseps | 1 | 0% | 100% |
| 865 | vcmpfalsepd | 1 | 0% | 100% |
| 865 | vcmpfalse_osss | 1 | 0% | 100% |
| 865 | vcmpfalse_ossd | 1 | 0% | 100% |
| 865 | vcmpfalse_osps | 1 | 0% | 100% |
| 865 | vcmpfalse_ospd | 1 | 0% | 100% |
| 865 | vcmpeq_usss | 1 | 0% | 100% |
| 865 | vcmpeq_ussd | 1 | 0% | 100% |
| 865 | vcmpeq_usps | 1 | 0% | 100% |
| 865 | vcmpeq_uspd | 1 | 0% | 100% |
| 865 | vcmpeq_uqss | 1 | 0% | 100% |
| 865 | vcmpeq_uqsd | 1 | 0% | 100% |
| 865 | vcmpeq_uqps | 1 | 0% | 100% |
| 865 | vcmpeq_uqpd | 1 | 0% | 100% |
| 865 | vcmpeq_osss | 1 | 0% | 100% |
| 865 | vcmpeq_ossd | 1 | 0% | 100% |
| 865 | vcmpeq_osps | 1 | 0% | 100% |
| 865 | vcmpeq_ospd | 1 | 0% | 100% |
| 865 | pmovzxwq | 1 | 0% | 100% |
| 865 | pmovzxdq | 1 | 0% | 100% |
| 865 | pmovzxbq | 1 | 0% | 100% |
| 865 | pmovsxwq | 1 | 0% | 100% |
| 865 | pmovsxbw | 1 | 0% | 100% |
| 865 | pmovsxbq | 1 | 0% | 100% |
| 865 | pmovsxbd | 1 | 0% | 100% |
| 865 | pfrsqrt | 1 | 0% | 100% |
| 865 | pfrcpit1 | 1 | 0% | 100% |
| 865 | pfmin | 1 | 0% | 100% |
| 865 | pext | 1 | 0% | 100% |
| 865 | pdep | 1 | 0% | 100% |
| 865 | movntpd | 1 | 0% | 100% |
| 865 | movddup | 1 | 0% | 100% |
| 865 | kxorw | 1 | 0% | 100% |
| 865 | kunpckwd | 1 | 0% | 100% |
| 865 | kunpckbw | 1 | 0% | 100% |
| 865 | ktestw | 1 | 0% | 100% |
| 865 | knotw | 1 | 0% | 100% |
| 865 | kandnb | 1 | 0% | 100% |
| 865 | kaddw | 1 | 0% | 100% |
| 865 | hsubps | 1 | 0% | 100% |
| 865 | haddpd | 1 | 0% | 100% |
| 865 | enclv | 1 | 0% | 100% |
| 865 | cvttpd2pi | 1 | 0% | 100% |
| 865 | cvtpi2pd | 1 | 0% | 100% |
| 865 | cmpzxadd | 1 | 0% | 100% |
| 865 | cmpunordss | 1 | 0% | 100% |
| 865 | cmpunordsd | 1 | 0% | 100% |
| 865 | cmpunordpd | 1 | 0% | 100% |
| 865 | cmpordss | 1 | 0% | 100% |
| 865 | cmpordsd | 1 | 0% | 100% |
| 865 | cmpordps | 1 | 0% | 100% |
| 865 | cmpordpd | 1 | 0% | 100% |
| 865 | cmpneqss | 1 | 0% | 100% |
| 865 | cmpneqsd | 1 | 0% | 100% |
| 865 | cmpeqss | 1 | 0% | 100% |
| 865 | clgi | 1 | 0% | 100% |
| 865 | bzhi | 1 | 0% | 100% |
| 865 | blsr | 1 | 0% | 100% |
| 865 | blsmsk | 1 | 0% | 100% |
| 865 | blsi | 1 | 0% | 100% |
| 865 | blendvpd | 1 | 0% | 100% |
| 865 | addsubpd | 1 | 0% | 100% |
ランキングについてのコメント
1 位はさすがの mov 命令です。これだけで約 2 割を占めています。
x86 の mov 命令は複雑なアドレッシングモードを備えており、利便性が高いのも、数が多い理由でしょう。たとえば次の命令は、esp レジスタの値に ecx レジスタの値を 4 倍した値を足してさらに 430h を足した値をアドレスとして、メモリ上のそのアドレスから 4 バイト分を引っ張ってきて esi レジスタに格納します。
mov esi,dword ptr [esp+ecx*4+430h]2 位は push 命令です。関数の入り口でレジスタを退避したり、関数の呼び出し時に引数を積んだりと多用される命令なので、これも納得です。以下、push の使用例です。
6B810490: 8B FF mov edi,edi
6B810492: 55 push ebp
6B810493: 8B EC mov ebp,esp
6B810495: 6A 00 push 0
6B810497: FF 75 18 push dword ptr [ebp+18h]
6B81049A: FF 75 14 push dword ptr [ebp+14h]
6B81049D: FF 75 10 push dword ptr [ebp+10h]
6B8104A0: FF 75 0C push dword ptr [ebp+0Ch]
6B8104A3: FF 75 08 push dword ptr [ebp+8]
6B8104A6: E8 15 0F 00 00 call 6B8113C0
6B8104AB: 5D pop ebp
6B8104AC: C2 14 00 ret 14h3 位の int については注意が必要です。実際に使われている箇所を見るとほとんどが「int 3」(CCh, DebugBreak) で、関数と関数の間の埋め草に使われているだけです。例を挙げます。
72F34B32: 83 C4 0C add esp,0Ch
72F34B35: 5D pop ebp
72F34B36: C3 ret
72F34B37: CC int 3
72F34B38: CC int 3
72F34B39: CC int 3
72F34B3A: CC int 3
72F34B3B: CC int 3
72F34B3C: CC int 3
72F34B3D: CC int 3
72F34B3E: CC int 3
72F34B3F: CC int 3
72F34B40: 8B FF mov edi,edi
72F34B42: 55 push ebp
72F34B43: 8B EC mov ebp,esp
72F34B45: 6A 20 push 20h
72F34B47: FF 75 10 push dword ptr [ebp+10h]
72F34B4A: FF 75 0C push dword ptr [ebp+0Ch]
72F34B4D: E8 1B A9 F7 FF call 72EAF46D
72F34B52: 83 C4 0C add esp,0Ch
72F34B55: 5D pop ebp
72F34B56: C3 ret
72F34B57: CC int 3
72F34B58: CC int 3
72F34B59: CC int 3
72F34B5A: CC int 3
72F34B5B: CC int 3
72F34B5C: CC int 3
72F34B5D: 8B FF mov edi,edi
72F34B5F: 55 push ebp
72F34B60: 8B EC mov ebp,espret から次の関数の先頭までが int 3 で埋められています。この部分は基本的に実行されないので、特別扱いしても、というか除外してもよかったかもしれません。
4 位以降は add, call, pop, lea, je, cmp, test, jmp, …… という馴染みのある命令が続き、21 位までで 90%、35 位までで 95%、99 位までで 99% を占めています。
後ろのほうに行くと、fyl2xp1 だとか phminposuw だとか何をするのか見当も付かない命令があります。とにかく命令が多すぎます。
ちなみに集計した中で一番長いオペコードは以下でした。
aeskeygenassist集計方法について
集計方法について書き留めておきます。
Windows の SysWOW64 ディレクトリには 64bit のモジュールが紛れ込んでいるので、まず、それらを除外した 32bit モジュールのリストを作りました。
C:\Windows\SysWOW64> for %a in (*.dll *.exe) do ((dumpbin /headers %a | find "machine (x86)" > nul) & if NOT ERRORLEVEL 1 echo %a) >> c:\tmp\list32bit.txt対象のモジュールは 2622 個でした。
C:\Windows\SysWOW64> type c:\tmp\list32bit.txt
......
advapi32.dll
advapi32res.dll
advpack.dll
aeevts.dll
aepic.dll
agentactivationruntime.dll
agentactivationruntimewindows.dll
ahadmin.dll
amsi.dll
amstream.dll
......リスト内の全モジュールを、ひとつのファイルに逆アセンブルします。
C:\Windows\SysWOW64> for /F %a in (c:\tmp\list32bit.txt) do dumpbin /nologo /disasm %a >> c:\tmp\disasm32bit.txt約 17GB、約 3.2 億行の巨大なファイルが生成されました。
C:\Windows\SysWOW64> type c:\tmp\disasm32bit.txt
......
6B818950: 8B FF mov edi,edi
6B818952: 55 push ebp
6B818953: 8B EC mov ebp,esp
6B818955: 83 EC 14 sub esp,14h
6B818958: A1 40 01 8B 6B mov eax,dword ptr ds:[6B8B0140h]
6B81895D: 33 C5 xor eax,ebp
6B81895F: 89 45 FC mov dword ptr [ebp-4],eax
6B818962: 56 push esi
......ただし、時折、本来コードではない場所が逆アセンブルされることがあるようでした。例を示します。
10002013: 00 38 add byte ptr [eax],bh
10002015: 10 07 adc byte ptr [edi],al
10002017: 00 09 add byte ptr [ecx],cl
10002019: 00 00 add byte ptr [eax],al
1000201B: 00 00 add byte ptr [eax],al
1000201D: 00 00 add byte ptr [eax],alとはいえすべてを目視でチェックするわけにもいかず、そのまま受け入れた点、ご了承ください。
さて、ここからアセンブリ言語のオペコードの部分のみを抜き出すのですが、「repe stos」のようなプレフィックスの付いた命令や、「repe lock push」のようなプレフィックスが 2 個付いた命令もあり、スクリプトでの処理は難しそうでした。
1000F1F5: F3 AA rep stos byte ptr es:[edi]
10010A65: F0 F3 0E repe lock push csそこで、各行について、プレフィックス(lock, rep, repe, repne, repz, repnz, xacquire, xrelease, vex, evex, bnd, ht, hnt)以外に達するまで単語を抜き出す C 言語のプログラム filter32bit.exe を作りました。
これを実行します。
C:\tmp> filter32bit.exe disasm32bit.txt > opcode32bit.txt5 分ほどでオペコード(プレフィックスを含む)が抜き出されました。
C:\tmp> type opcode32bit.txt
......
mov
push
mov
lea
cmp
jb
mov
cmp
mov
sbb
......最後に、オペコード(プレフィックスを含む)ごとの使用回数を集計します。WSL (Windows Subsystem for Linux) に入って sort と uniq コマンドを利用しました。
C:\tmp> wsl.exe
***:/mnt/c/tmp$ sort opcode32bit.txt | uniq -c | sort -nr > opcode32bit_rank.txt集計結果です。
C:\tmp> type opcode32bit_rank.txt
63183290 mov
38414209 push
37519703 int
34346643 add
19004925 call
11085274 pop
10277527 lea
8811379 je
8002698 cmp
7982909 test
......この集計結果を元に、Excel で順位 (RANK.EQ)、割合、累積割合を計算しました。
参考文献
[1] Intel「Intel(R) 64 and IA-32 Architectures Software Developer’s Manual」, 2024