github.com/apache/arrow/go/v14@v14.0.1/parquet/internal/utils/bit_packing_avx2_amd64.s (about) 1 //+build !noasm !appengine 2 // AUTO-GENERATED BY C2GOASM -- DO NOT EDIT 3 4 DATA LCDATA1<>+0x000(SB)/8, $0x7fffffff7fffffff 5 DATA LCDATA1<>+0x008(SB)/8, $0x3fffffff3fffffff 6 DATA LCDATA1<>+0x010(SB)/8, $0x1fffffff1fffffff 7 DATA LCDATA1<>+0x018(SB)/8, $0x0fffffff0fffffff 8 DATA LCDATA1<>+0x020(SB)/8, $0x07ffffff07ffffff 9 DATA LCDATA1<>+0x028(SB)/8, $0x03ffffff03ffffff 10 DATA LCDATA1<>+0x030(SB)/8, $0x0000000a00000010 11 DATA LCDATA1<>+0x038(SB)/8, $0x0000001600000010 12 DATA LCDATA1<>+0x040(SB)/8, $0x01ffffff01ffffff 13 DATA LCDATA1<>+0x048(SB)/8, $0x007fffff007fffff 14 DATA LCDATA1<>+0x050(SB)/8, $0x003fffff003fffff 15 DATA LCDATA1<>+0x058(SB)/8, $0x001fffff001fffff 16 DATA LCDATA1<>+0x060(SB)/8, $0x000fffff000fffff 17 DATA LCDATA1<>+0x068(SB)/8, $0x0007ffff0007ffff 18 DATA LCDATA1<>+0x070(SB)/8, $0x0003ffff0003ffff 19 DATA LCDATA1<>+0x078(SB)/8, $0x0001ffff0001ffff 20 DATA LCDATA1<>+0x080(SB)/8, $0x0000001000000000 21 DATA LCDATA1<>+0x088(SB)/8, $0x00007fff00007fff 22 DATA LCDATA1<>+0x090(SB)/8, $0x00003fff00003fff 23 DATA LCDATA1<>+0x098(SB)/8, $0x00001fff00001fff 24 DATA LCDATA1<>+0x0a0(SB)/8, $0x00000fff00000fff 25 DATA LCDATA1<>+0x0a8(SB)/8, $0x000007ff000007ff 26 DATA LCDATA1<>+0x0b0(SB)/8, $0x000003ff000003ff 27 DATA LCDATA1<>+0x0b8(SB)/8, $0x000001ff000001ff 28 DATA LCDATA1<>+0x0c0(SB)/8, $0x0000007f0000007f 29 DATA LCDATA1<>+0x0c8(SB)/8, $0x0000003f0000003f 30 DATA LCDATA1<>+0x0d0(SB)/8, $0x0000001f0000001f 31 DATA LCDATA1<>+0x0d8(SB)/8, $0x0000000f0000000f 32 DATA LCDATA1<>+0x0e0(SB)/8, $0x0000000700000007 33 DATA LCDATA1<>+0x0e8(SB)/8, $0x0000000300000003 34 DATA LCDATA1<>+0x0f0(SB)/8, $0x0000000100000001 35 DATA LCDATA1<>+0x0f8(SB)/8, $0x0000000000000000 36 DATA LCDATA1<>+0x100(SB)/8, $0x0000001700000018 37 DATA LCDATA1<>+0x108(SB)/8, $0x0000001500000016 38 DATA LCDATA1<>+0x110(SB)/8, $0x0000001300000014 39 DATA LCDATA1<>+0x118(SB)/8, $0x0000001100000012 40 DATA LCDATA1<>+0x120(SB)/8, $0x0000000900000008 41 DATA LCDATA1<>+0x128(SB)/8, $0x0000000b0000000a 42 DATA LCDATA1<>+0x130(SB)/8, $0x0000000d0000000c 43 DATA LCDATA1<>+0x138(SB)/8, $0x0000000f0000000e 44 DATA LCDATA1<>+0x140(SB)/8, $0x0000000f00000010 45 DATA LCDATA1<>+0x148(SB)/8, $0x0000000d0000000e 46 DATA LCDATA1<>+0x150(SB)/8, $0x0000000b0000000c 47 DATA LCDATA1<>+0x158(SB)/8, $0x000000090000000a 48 DATA LCDATA1<>+0x160(SB)/8, $0x0000001100000010 49 DATA LCDATA1<>+0x168(SB)/8, $0x0000001300000012 50 DATA LCDATA1<>+0x170(SB)/8, $0x0000001500000014 51 DATA LCDATA1<>+0x178(SB)/8, $0x0000001700000016 52 DATA LCDATA1<>+0x180(SB)/8, $0x0000000000000000 53 DATA LCDATA1<>+0x188(SB)/8, $0x0000000000000000 54 DATA LCDATA1<>+0x190(SB)/8, $0x0000000000000000 55 DATA LCDATA1<>+0x198(SB)/8, $0x0000000100000000 56 DATA LCDATA1<>+0x1a0(SB)/8, $0x0000000000000000 57 DATA LCDATA1<>+0x1a8(SB)/8, $0x0000000000000000 58 DATA LCDATA1<>+0x1b0(SB)/8, $0x0000000000000000 59 DATA LCDATA1<>+0x1b8(SB)/8, $0x0000000200000000 60 DATA LCDATA1<>+0x1c0(SB)/8, $0x0000000000000000 61 DATA LCDATA1<>+0x1c8(SB)/8, $0x0000000000000002 62 DATA LCDATA1<>+0x1d0(SB)/8, $0x0000000000000000 63 DATA LCDATA1<>+0x1d8(SB)/8, $0x0000000000000000 64 DATA LCDATA1<>+0x1e0(SB)/8, $0x0000000000000000 65 DATA LCDATA1<>+0x1e8(SB)/8, $0x0000000000000000 66 DATA LCDATA1<>+0x1f0(SB)/8, $0x0000000100000000 67 DATA LCDATA1<>+0x1f8(SB)/8, $0x0000000000000000 68 DATA LCDATA1<>+0x200(SB)/8, $0x0000000000000000 69 DATA LCDATA1<>+0x208(SB)/8, $0x0000000000000000 70 DATA LCDATA1<>+0x210(SB)/8, $0x0000000000000000 71 DATA LCDATA1<>+0x218(SB)/8, $0x0000000300000000 72 DATA LCDATA1<>+0x220(SB)/8, $0x0000000000000000 73 DATA LCDATA1<>+0x228(SB)/8, $0x0000000000000000 74 DATA LCDATA1<>+0x230(SB)/8, $0x0000000000000000 75 DATA LCDATA1<>+0x238(SB)/8, $0x0000000400000000 76 DATA LCDATA1<>+0x240(SB)/8, $0x0000000000000000 77 DATA LCDATA1<>+0x248(SB)/8, $0x0000000000000000 78 DATA LCDATA1<>+0x250(SB)/8, $0x0000000000000000 79 DATA LCDATA1<>+0x258(SB)/8, $0x0000000000000002 80 DATA LCDATA1<>+0x260(SB)/8, $0x0000000000000000 81 DATA LCDATA1<>+0x268(SB)/8, $0x0000000000000000 82 DATA LCDATA1<>+0x270(SB)/8, $0x0000000000000004 83 DATA LCDATA1<>+0x278(SB)/8, $0x0000000000000000 84 DATA LCDATA1<>+0x280(SB)/8, $0x0000000000000000 85 DATA LCDATA1<>+0x288(SB)/8, $0x0000000100000000 86 DATA LCDATA1<>+0x290(SB)/8, $0x0000000000000000 87 DATA LCDATA1<>+0x298(SB)/8, $0x0000000000000000 88 DATA LCDATA1<>+0x2a0(SB)/8, $0x0000000300000000 89 DATA LCDATA1<>+0x2a8(SB)/8, $0x0000000000000000 90 DATA LCDATA1<>+0x2b0(SB)/8, $0x0000000000000000 91 DATA LCDATA1<>+0x2b8(SB)/8, $0x0000000500000000 92 DATA LCDATA1<>+0x2c0(SB)/8, $0x0000000000000000 93 DATA LCDATA1<>+0x2c8(SB)/8, $0x0000000000000000 94 DATA LCDATA1<>+0x2d0(SB)/8, $0x0000000200000000 95 DATA LCDATA1<>+0x2d8(SB)/8, $0x0000000000000000 96 DATA LCDATA1<>+0x2e0(SB)/8, $0x0000000000000000 97 DATA LCDATA1<>+0x2e8(SB)/8, $0x0000000000000004 98 DATA LCDATA1<>+0x2f0(SB)/8, $0x0000000000000000 99 DATA LCDATA1<>+0x2f8(SB)/8, $0x0000000600000000 100 DATA LCDATA1<>+0x300(SB)/8, $0x0000000100000000 101 DATA LCDATA1<>+0x308(SB)/8, $0x0000000000000000 102 DATA LCDATA1<>+0x310(SB)/8, $0x0000000500000000 103 DATA LCDATA1<>+0x318(SB)/8, $0x0000000000000000 104 DATA LCDATA1<>+0x320(SB)/8, $0x0000000000000000 105 DATA LCDATA1<>+0x328(SB)/8, $0x0000000000000002 106 DATA LCDATA1<>+0x330(SB)/8, $0x0000000000000000 107 DATA LCDATA1<>+0x338(SB)/8, $0x0000000000000006 108 DATA LCDATA1<>+0x340(SB)/8, $0x0000000000000000 109 DATA LCDATA1<>+0x348(SB)/8, $0x0000000300000000 110 DATA LCDATA1<>+0x350(SB)/8, $0x0000000000000000 111 DATA LCDATA1<>+0x358(SB)/8, $0x0000000700000000 112 DATA LCDATA1<>+0x360(SB)/8, $0x0000000000000000 113 DATA LCDATA1<>+0x368(SB)/8, $0x0000000500000000 114 DATA LCDATA1<>+0x370(SB)/8, $0x0000000000000000 115 DATA LCDATA1<>+0x378(SB)/8, $0x0000000100000000 116 DATA LCDATA1<>+0x380(SB)/8, $0x0000000000000000 117 DATA LCDATA1<>+0x388(SB)/8, $0x0000000000000006 118 DATA LCDATA1<>+0x390(SB)/8, $0x0000000000000000 119 DATA LCDATA1<>+0x398(SB)/8, $0x0000000000000002 120 DATA LCDATA1<>+0x3a0(SB)/8, $0x0000000700000000 121 DATA LCDATA1<>+0x3a8(SB)/8, $0x0000000000000000 122 DATA LCDATA1<>+0x3b0(SB)/8, $0x0000000300000000 123 DATA LCDATA1<>+0x3b8(SB)/8, $0x0000000000000000 124 DATA LCDATA1<>+0x3c0(SB)/8, $0x0000000000000008 125 DATA LCDATA1<>+0x3c8(SB)/8, $0x0000000000000000 126 DATA LCDATA1<>+0x3d0(SB)/8, $0x0000000000000004 127 DATA LCDATA1<>+0x3d8(SB)/8, $0x0000000900000000 128 DATA LCDATA1<>+0x3e0(SB)/8, $0x0000000000000000 129 DATA LCDATA1<>+0x3e8(SB)/8, $0x0000000200000000 130 DATA LCDATA1<>+0x3f0(SB)/8, $0x0000000000000000 131 DATA LCDATA1<>+0x3f8(SB)/8, $0x0000000000000004 132 DATA LCDATA1<>+0x400(SB)/8, $0x0000000600000000 133 DATA LCDATA1<>+0x408(SB)/8, $0x0000000000000000 134 DATA LCDATA1<>+0x410(SB)/8, $0x0000000000000008 135 DATA LCDATA1<>+0x418(SB)/8, $0x0000000a00000000 136 DATA LCDATA1<>+0x420(SB)/8, $0x0000000000000000 137 DATA LCDATA1<>+0x428(SB)/8, $0x000000000000000a 138 DATA LCDATA1<>+0x430(SB)/8, $0x0000000900000000 139 DATA LCDATA1<>+0x438(SB)/8, $0x0000000000000000 140 DATA LCDATA1<>+0x440(SB)/8, $0x0000000000000008 141 DATA LCDATA1<>+0x448(SB)/8, $0x0000000700000000 142 DATA LCDATA1<>+0x450(SB)/8, $0x0000000000000000 143 DATA LCDATA1<>+0x458(SB)/8, $0x0000000000000006 144 DATA LCDATA1<>+0x460(SB)/8, $0x0000000500000000 145 DATA LCDATA1<>+0x468(SB)/8, $0x0000000000000000 146 DATA LCDATA1<>+0x470(SB)/8, $0x0000000000000004 147 DATA LCDATA1<>+0x478(SB)/8, $0x0000000300000000 148 DATA LCDATA1<>+0x480(SB)/8, $0x0000000000000000 149 DATA LCDATA1<>+0x488(SB)/8, $0x0000000000000002 150 DATA LCDATA1<>+0x490(SB)/8, $0x0000000100000000 151 DATA LCDATA1<>+0x498(SB)/8, $0x0000000b00000000 152 DATA LCDATA1<>+0x4a0(SB)/8, $0x0000000000000000 153 DATA LCDATA1<>+0x4a8(SB)/8, $0x0000000000000008 154 DATA LCDATA1<>+0x4b0(SB)/8, $0x0000000400000000 155 DATA LCDATA1<>+0x4b8(SB)/8, $0x0000000c00000000 156 DATA LCDATA1<>+0x4c0(SB)/8, $0x0000000000000000 157 DATA LCDATA1<>+0x4c8(SB)/8, $0x0000000000000006 158 DATA LCDATA1<>+0x4d0(SB)/8, $0x000000000000000c 159 DATA LCDATA1<>+0x4d8(SB)/8, $0x0000000500000000 160 DATA LCDATA1<>+0x4e0(SB)/8, $0x0000000b00000000 161 DATA LCDATA1<>+0x4e8(SB)/8, $0x0000000000000000 162 DATA LCDATA1<>+0x4f0(SB)/8, $0x0000000000000004 163 DATA LCDATA1<>+0x4f8(SB)/8, $0x000000000000000a 164 DATA LCDATA1<>+0x500(SB)/8, $0x0000000300000000 165 DATA LCDATA1<>+0x508(SB)/8, $0x0000000900000000 166 DATA LCDATA1<>+0x510(SB)/8, $0x0000000000000000 167 DATA LCDATA1<>+0x518(SB)/8, $0x0000000000000002 168 DATA LCDATA1<>+0x520(SB)/8, $0x0000000000000008 169 DATA LCDATA1<>+0x528(SB)/8, $0x0000000100000000 170 DATA LCDATA1<>+0x530(SB)/8, $0x0000000700000000 171 DATA LCDATA1<>+0x538(SB)/8, $0x0000000d00000000 172 DATA LCDATA1<>+0x540(SB)/8, $0x0000000000000000 173 DATA LCDATA1<>+0x548(SB)/8, $0x0000000000000004 174 DATA LCDATA1<>+0x550(SB)/8, $0x0000000000000008 175 DATA LCDATA1<>+0x558(SB)/8, $0x000000000000000c 176 DATA LCDATA1<>+0x560(SB)/8, $0x0000000200000000 177 DATA LCDATA1<>+0x568(SB)/8, $0x0000000600000000 178 DATA LCDATA1<>+0x570(SB)/8, $0x0000000a00000000 179 DATA LCDATA1<>+0x578(SB)/8, $0x0000000e00000000 180 DATA LCDATA1<>+0x580(SB)/8, $0x0000000000000000 181 DATA LCDATA1<>+0x588(SB)/8, $0x0000000000000002 182 DATA LCDATA1<>+0x590(SB)/8, $0x0000000000000004 183 DATA LCDATA1<>+0x598(SB)/8, $0x0000000000000006 184 DATA LCDATA1<>+0x5a0(SB)/8, $0x0000000000000008 185 DATA LCDATA1<>+0x5a8(SB)/8, $0x000000000000000a 186 DATA LCDATA1<>+0x5b0(SB)/8, $0x000000000000000c 187 DATA LCDATA1<>+0x5b8(SB)/8, $0x000000000000000e 188 DATA LCDATA1<>+0x5c0(SB)/8, $0x0000000100000000 189 DATA LCDATA1<>+0x5c8(SB)/8, $0x0000000300000000 190 DATA LCDATA1<>+0x5d0(SB)/8, $0x0000000500000000 191 DATA LCDATA1<>+0x5d8(SB)/8, $0x0000000700000000 192 DATA LCDATA1<>+0x5e0(SB)/8, $0x0000000900000000 193 DATA LCDATA1<>+0x5e8(SB)/8, $0x0000000b00000000 194 DATA LCDATA1<>+0x5f0(SB)/8, $0x0000000d00000000 195 DATA LCDATA1<>+0x5f8(SB)/8, $0x0000000f00000000 196 DATA LCDATA1<>+0x600(SB)/8, $0x0000000f00000000 197 DATA LCDATA1<>+0x608(SB)/8, $0x0000000d00000000 198 DATA LCDATA1<>+0x610(SB)/8, $0x0000000b00000000 199 DATA LCDATA1<>+0x618(SB)/8, $0x0000000900000000 200 DATA LCDATA1<>+0x620(SB)/8, $0x0000000700000000 201 DATA LCDATA1<>+0x628(SB)/8, $0x0000000500000000 202 DATA LCDATA1<>+0x630(SB)/8, $0x0000000300000000 203 DATA LCDATA1<>+0x638(SB)/8, $0x0000000100000000 204 DATA LCDATA1<>+0x640(SB)/8, $0x0000000000000010 205 DATA LCDATA1<>+0x648(SB)/8, $0x000000000000000e 206 DATA LCDATA1<>+0x650(SB)/8, $0x000000000000000c 207 DATA LCDATA1<>+0x658(SB)/8, $0x000000000000000a 208 DATA LCDATA1<>+0x660(SB)/8, $0x0000000000000008 209 DATA LCDATA1<>+0x668(SB)/8, $0x0000000000000006 210 DATA LCDATA1<>+0x670(SB)/8, $0x0000000000000004 211 DATA LCDATA1<>+0x678(SB)/8, $0x0000001100000002 212 DATA LCDATA1<>+0x680(SB)/8, $0x0000000e00000000 213 DATA LCDATA1<>+0x688(SB)/8, $0x0000000a00000000 214 DATA LCDATA1<>+0x690(SB)/8, $0x0000000600000000 215 DATA LCDATA1<>+0x698(SB)/8, $0x0000000200000000 216 DATA LCDATA1<>+0x6a0(SB)/8, $0x0000000000000010 217 DATA LCDATA1<>+0x6a8(SB)/8, $0x000000000000000c 218 DATA LCDATA1<>+0x6b0(SB)/8, $0x0000000000000008 219 DATA LCDATA1<>+0x6b8(SB)/8, $0x0000001200000004 220 DATA LCDATA1<>+0x6c0(SB)/8, $0x0000000d00000000 221 DATA LCDATA1<>+0x6c8(SB)/8, $0x0000000700000000 222 DATA LCDATA1<>+0x6d0(SB)/8, $0x0000000100000000 223 DATA LCDATA1<>+0x6d8(SB)/8, $0x000000000000000e 224 DATA LCDATA1<>+0x6e0(SB)/8, $0x0000000000000008 225 DATA LCDATA1<>+0x6e8(SB)/8, $0x0000000f00000002 226 DATA LCDATA1<>+0x6f0(SB)/8, $0x0000000900000000 227 DATA LCDATA1<>+0x6f8(SB)/8, $0x0000000300000000 228 DATA LCDATA1<>+0x700(SB)/8, $0x0000000000000010 229 DATA LCDATA1<>+0x708(SB)/8, $0x000000000000000a 230 DATA LCDATA1<>+0x710(SB)/8, $0x0000001100000004 231 DATA LCDATA1<>+0x718(SB)/8, $0x0000000b00000000 232 DATA LCDATA1<>+0x720(SB)/8, $0x0000000500000000 233 DATA LCDATA1<>+0x728(SB)/8, $0x0000000000000012 234 DATA LCDATA1<>+0x730(SB)/8, $0x000000000000000c 235 DATA LCDATA1<>+0x738(SB)/8, $0x0000001300000006 236 DATA LCDATA1<>+0x740(SB)/8, $0x0000000c00000000 237 DATA LCDATA1<>+0x748(SB)/8, $0x0000000400000000 238 DATA LCDATA1<>+0x750(SB)/8, $0x0000000000000010 239 DATA LCDATA1<>+0x758(SB)/8, $0x0000001400000008 240 DATA LCDATA1<>+0x760(SB)/8, $0x0000000b00000000 241 DATA LCDATA1<>+0x768(SB)/8, $0x0000000100000000 242 DATA LCDATA1<>+0x770(SB)/8, $0x000000000000000c 243 DATA LCDATA1<>+0x778(SB)/8, $0x0000000d00000002 244 DATA LCDATA1<>+0x780(SB)/8, $0x0000000300000000 245 DATA LCDATA1<>+0x788(SB)/8, $0x000000000000000e 246 DATA LCDATA1<>+0x790(SB)/8, $0x0000000f00000004 247 DATA LCDATA1<>+0x798(SB)/8, $0x0000000500000000 248 DATA LCDATA1<>+0x7a0(SB)/8, $0x0000000000000010 249 DATA LCDATA1<>+0x7a8(SB)/8, $0x0000001100000006 250 DATA LCDATA1<>+0x7b0(SB)/8, $0x0000000700000000 251 DATA LCDATA1<>+0x7b8(SB)/8, $0x0000000000000012 252 DATA LCDATA1<>+0x7c0(SB)/8, $0x0000001300000008 253 DATA LCDATA1<>+0x7c8(SB)/8, $0x0000000900000000 254 DATA LCDATA1<>+0x7d0(SB)/8, $0x0000000000000014 255 DATA LCDATA1<>+0x7d8(SB)/8, $0x000000150000000a 256 DATA LCDATA1<>+0x7e0(SB)/8, $0x0000000a00000000 257 DATA LCDATA1<>+0x7e8(SB)/8, $0x0000000000000014 258 DATA LCDATA1<>+0x7f0(SB)/8, $0x0000001200000008 259 DATA LCDATA1<>+0x7f8(SB)/8, $0x0000000600000000 260 DATA LCDATA1<>+0x800(SB)/8, $0x0000000000000010 261 DATA LCDATA1<>+0x808(SB)/8, $0x0000000e00000004 262 DATA LCDATA1<>+0x810(SB)/8, $0x0000000200000000 263 DATA LCDATA1<>+0x818(SB)/8, $0x000000160000000c 264 DATA LCDATA1<>+0x820(SB)/8, $0x0000000900000000 265 DATA LCDATA1<>+0x828(SB)/8, $0x0000000000000012 266 DATA LCDATA1<>+0x830(SB)/8, $0x0000000d00000004 267 DATA LCDATA1<>+0x838(SB)/8, $0x0000000000000016 268 DATA LCDATA1<>+0x840(SB)/8, $0x0000001100000008 269 DATA LCDATA1<>+0x848(SB)/8, $0x0000000300000000 270 DATA LCDATA1<>+0x850(SB)/8, $0x000000150000000c 271 DATA LCDATA1<>+0x858(SB)/8, $0x0000000700000000 272 DATA LCDATA1<>+0x860(SB)/8, $0x0000000000000010 273 DATA LCDATA1<>+0x868(SB)/8, $0x0000000b00000002 274 DATA LCDATA1<>+0x870(SB)/8, $0x0000000000000014 275 DATA LCDATA1<>+0x878(SB)/8, $0x0000000f00000006 276 DATA LCDATA1<>+0x880(SB)/8, $0x0000000100000000 277 DATA LCDATA1<>+0x888(SB)/8, $0x000000130000000a 278 DATA LCDATA1<>+0x890(SB)/8, $0x0000000500000000 279 DATA LCDATA1<>+0x898(SB)/8, $0x000000170000000e 280 DATA LCDATA1<>+0x8a0(SB)/8, $0x0000000700000000 281 DATA LCDATA1<>+0x8a8(SB)/8, $0x000000150000000e 282 DATA LCDATA1<>+0x8b0(SB)/8, $0x0000000300000000 283 DATA LCDATA1<>+0x8b8(SB)/8, $0x000000110000000a 284 DATA LCDATA1<>+0x8c0(SB)/8, $0x0000000000000018 285 DATA LCDATA1<>+0x8c8(SB)/8, $0x0000000d00000006 286 DATA LCDATA1<>+0x8d0(SB)/8, $0x0000000000000014 287 DATA LCDATA1<>+0x8d8(SB)/8, $0x0000000900000002 288 DATA LCDATA1<>+0x8e0(SB)/8, $0x0000001700000010 289 DATA LCDATA1<>+0x8e8(SB)/8, $0x0000000500000000 290 DATA LCDATA1<>+0x8f0(SB)/8, $0x000000130000000c 291 DATA LCDATA1<>+0x8f8(SB)/8, $0x0000000100000000 292 DATA LCDATA1<>+0x900(SB)/8, $0x0000000f00000008 293 DATA LCDATA1<>+0x908(SB)/8, $0x0000000000000016 294 DATA LCDATA1<>+0x910(SB)/8, $0x0000000b00000004 295 DATA LCDATA1<>+0x918(SB)/8, $0x0000001900000012 296 DATA LCDATA1<>+0x920(SB)/8, $0x0000000600000000 297 DATA LCDATA1<>+0x928(SB)/8, $0x000000120000000c 298 DATA LCDATA1<>+0x930(SB)/8, $0x0000000000000018 299 DATA LCDATA1<>+0x938(SB)/8, $0x0000000a00000004 300 DATA LCDATA1<>+0x940(SB)/8, $0x0000001600000010 301 DATA LCDATA1<>+0x948(SB)/8, $0x0000000200000000 302 DATA LCDATA1<>+0x950(SB)/8, $0x0000000e00000008 303 DATA LCDATA1<>+0x958(SB)/8, $0x0000001a00000014 304 DATA LCDATA1<>+0x960(SB)/8, $0x0000000500000000 305 DATA LCDATA1<>+0x968(SB)/8, $0x0000000f0000000a 306 DATA LCDATA1<>+0x970(SB)/8, $0x0000001900000014 307 DATA LCDATA1<>+0x978(SB)/8, $0x0000000300000000 308 DATA LCDATA1<>+0x980(SB)/8, $0x0000000d00000008 309 DATA LCDATA1<>+0x988(SB)/8, $0x0000001700000012 310 DATA LCDATA1<>+0x990(SB)/8, $0x0000000100000000 311 DATA LCDATA1<>+0x998(SB)/8, $0x0000000b00000006 312 DATA LCDATA1<>+0x9a0(SB)/8, $0x0000001500000010 313 DATA LCDATA1<>+0x9a8(SB)/8, $0x000000000000001a 314 DATA LCDATA1<>+0x9b0(SB)/8, $0x0000000900000004 315 DATA LCDATA1<>+0x9b8(SB)/8, $0x000000130000000e 316 DATA LCDATA1<>+0x9c0(SB)/8, $0x0000000000000018 317 DATA LCDATA1<>+0x9c8(SB)/8, $0x0000000700000002 318 DATA LCDATA1<>+0x9d0(SB)/8, $0x000000110000000c 319 DATA LCDATA1<>+0x9d8(SB)/8, $0x0000001b00000016 320 DATA LCDATA1<>+0x9e0(SB)/8, $0x0000000400000000 321 DATA LCDATA1<>+0x9e8(SB)/8, $0x0000000c00000008 322 DATA LCDATA1<>+0x9f0(SB)/8, $0x0000001400000010 323 DATA LCDATA1<>+0x9f8(SB)/8, $0x0000001c00000018 324 DATA LCDATA1<>+0xa00(SB)/8, $0x0000000300000000 325 DATA LCDATA1<>+0xa08(SB)/8, $0x0000000900000006 326 DATA LCDATA1<>+0xa10(SB)/8, $0x0000000f0000000c 327 DATA LCDATA1<>+0xa18(SB)/8, $0x0000001500000012 328 DATA LCDATA1<>+0xa20(SB)/8, $0x0000001b00000018 329 DATA LCDATA1<>+0xa28(SB)/8, $0x0000000100000000 330 DATA LCDATA1<>+0xa30(SB)/8, $0x0000000700000004 331 DATA LCDATA1<>+0xa38(SB)/8, $0x0000000d0000000a 332 DATA LCDATA1<>+0xa40(SB)/8, $0x0000001300000010 333 DATA LCDATA1<>+0xa48(SB)/8, $0x0000001900000016 334 DATA LCDATA1<>+0xa50(SB)/8, $0x000000000000001c 335 DATA LCDATA1<>+0xa58(SB)/8, $0x0000000500000002 336 DATA LCDATA1<>+0xa60(SB)/8, $0x0000000b00000008 337 DATA LCDATA1<>+0xa68(SB)/8, $0x000000110000000e 338 DATA LCDATA1<>+0xa70(SB)/8, $0x0000001700000014 339 DATA LCDATA1<>+0xa78(SB)/8, $0x0000001d0000001a 340 DATA LCDATA1<>+0xa80(SB)/8, $0x0000000200000000 341 DATA LCDATA1<>+0xa88(SB)/8, $0x0000000600000004 342 DATA LCDATA1<>+0xa90(SB)/8, $0x0000000a00000008 343 DATA LCDATA1<>+0xa98(SB)/8, $0x0000000e0000000c 344 DATA LCDATA1<>+0xaa0(SB)/8, $0x0000001200000010 345 DATA LCDATA1<>+0xaa8(SB)/8, $0x0000001600000014 346 DATA LCDATA1<>+0xab0(SB)/8, $0x0000001a00000018 347 DATA LCDATA1<>+0xab8(SB)/8, $0x0000001e0000001c 348 DATA LCDATA1<>+0xac0(SB)/8, $0x0000000100000000 349 DATA LCDATA1<>+0xac8(SB)/8, $0x0000000300000002 350 DATA LCDATA1<>+0xad0(SB)/8, $0x0000000500000004 351 DATA LCDATA1<>+0xad8(SB)/8, $0x0000000700000006 352 DATA LCDATA1<>+0xae0(SB)/8, $0x0000001900000018 353 DATA LCDATA1<>+0xae8(SB)/8, $0x0000001b0000001a 354 DATA LCDATA1<>+0xaf0(SB)/8, $0x0000001d0000001c 355 DATA LCDATA1<>+0xaf8(SB)/8, $0x0000001f0000001e 356 DATA LCDATA1<>+0xb00(SB)/8, $0x0000000700000008 357 DATA LCDATA1<>+0xb08(SB)/8, $0x0000000500000006 358 DATA LCDATA1<>+0xb10(SB)/8, $0x0000001900000018 359 DATA LCDATA1<>+0xb18(SB)/8, $0x0000001b0000001a 360 DATA LCDATA1<>+0xb20(SB)/8, $0x0000000e00000010 361 DATA LCDATA1<>+0xb28(SB)/8, $0x0000000a0000000c 362 DATA LCDATA1<>+0xb30(SB)/8, $0x0000001200000010 363 DATA LCDATA1<>+0xb38(SB)/8, $0x0000001600000014 364 DATA LCDATA1<>+0xb40(SB)/8, $0x0000000500000008 365 DATA LCDATA1<>+0xb48(SB)/8, $0x0000000000000000 366 DATA LCDATA1<>+0xb50(SB)/8, $0x0000001b00000018 367 DATA LCDATA1<>+0xb58(SB)/8, $0x0000000000000000 368 DATA LCDATA1<>+0xb60(SB)/8, $0x0000000d00000010 369 DATA LCDATA1<>+0xb68(SB)/8, $0x000000070000000a 370 DATA LCDATA1<>+0xb70(SB)/8, $0x0000001300000010 371 DATA LCDATA1<>+0xb78(SB)/8, $0x0000001900000016 372 DATA LCDATA1<>+0xb80(SB)/8, $0x0000001500000018 373 DATA LCDATA1<>+0xb88(SB)/8, $0x0000000f00000012 374 DATA LCDATA1<>+0xb90(SB)/8, $0x0000000b00000008 375 DATA LCDATA1<>+0xb98(SB)/8, $0x000000110000000e 376 DATA LCDATA1<>+0xba0(SB)/8, $0x0000001300000018 377 DATA LCDATA1<>+0xba8(SB)/8, $0x000000090000000e 378 DATA LCDATA1<>+0xbb0(SB)/8, $0x0000000d00000008 379 DATA LCDATA1<>+0xbb8(SB)/8, $0x0000001700000012 380 DATA LCDATA1<>+0xbc0(SB)/8, $0x0000000b00000010 381 DATA LCDATA1<>+0xbc8(SB)/8, $0x0000000000000000 382 DATA LCDATA1<>+0xbd0(SB)/8, $0x0000001500000010 383 DATA LCDATA1<>+0xbd8(SB)/8, $0x0000000000000000 384 DATA LCDATA1<>+0xbe0(SB)/8, $0x0000000900000010 385 DATA LCDATA1<>+0xbe8(SB)/8, $0x0000000000000000 386 DATA LCDATA1<>+0xbf0(SB)/8, $0x0000001700000010 387 DATA LCDATA1<>+0xbf8(SB)/8, $0x0000000000000000 388 DATA LCDATA1<>+0xc00(SB)/8, $0x0000001100000018 389 DATA LCDATA1<>+0xc08(SB)/8, $0x0000000000000000 390 DATA LCDATA1<>+0xc10(SB)/8, $0x0000000f00000008 391 DATA LCDATA1<>+0xc18(SB)/8, $0x0000000000000000 392 DATA LCDATA1<>+0xc20(SB)/8, $0x0000000000000000 393 DATA LCDATA1<>+0xc28(SB)/8, $0x0000000800000000 394 DATA LCDATA1<>+0xc30(SB)/8, $0x0000000f00000018 395 DATA LCDATA1<>+0xc38(SB)/8, $0x0000000000000000 396 DATA LCDATA1<>+0xc40(SB)/8, $0x0000001100000008 397 DATA LCDATA1<>+0xc48(SB)/8, $0x0000000000000000 398 DATA LCDATA1<>+0xc50(SB)/8, $0x0000000d00000018 399 DATA LCDATA1<>+0xc58(SB)/8, $0x0000000000000000 400 DATA LCDATA1<>+0xc60(SB)/8, $0x0000001300000008 401 DATA LCDATA1<>+0xc68(SB)/8, $0x0000000000000000 402 DATA LCDATA1<>+0xc70(SB)/8, $0x0000000800000000 403 DATA LCDATA1<>+0xc78(SB)/8, $0x0000001800000010 404 DATA LCDATA1<>+0xc80(SB)/8, $0x000000ff00ffffff 405 GLOBL LCDATA1<>(SB), 8, $3208 406 407 TEXT ·_unpack32_avx2(SB), $24-40 408 409 MOVQ in+0(FP), DI 410 MOVQ out+8(FP), SI 411 MOVQ batchSize+16(FP), DX 412 MOVQ nbits+24(FP), CX 413 MOVQ SP, BP 414 ADDQ $16, SP 415 ANDQ $-16, SP 416 MOVQ BP, 0(SP) 417 LEAQ LCDATA1<>(SB), BP 418 419 WORD $0x8949; BYTE $0xf7 // mov r15, rsi 420 WORD $0x8948; BYTE $0xfb // mov rbx, rdi 421 LONG $0x1f728d44 // lea r14d, [rdx + 31] 422 WORD $0xd285 // test edx, edx 423 LONG $0xf2490f44 // cmovns r14d, edx 424 LONG $0x05fec141 // sar r14d, 5 425 WORD $0xf983; BYTE $0x0f // cmp ecx, 15 426 JLE LBB0_1 427 WORD $0xf983; BYTE $0x17 // cmp ecx, 23 428 JLE LBB0_49 429 WORD $0xf983; BYTE $0x1b // cmp ecx, 27 430 JLE LBB0_73 431 WORD $0xf983; BYTE $0x1d // cmp ecx, 29 432 JLE LBB0_85 433 WORD $0xf983; BYTE $0x1e // cmp ecx, 30 434 JE LBB0_99 435 WORD $0xf983; BYTE $0x1f // cmp ecx, 31 436 JE LBB0_96 437 WORD $0xf983; BYTE $0x20 // cmp ecx, 32 438 JNE LBB0_147 439 WORD $0xfa83; BYTE $0x20 // cmp edx, 32 440 JL LBB0_147 441 WORD $0x8945; BYTE $0xf4 // mov r12d, r14d 442 443 LBB0_95: 444 LONG $0x000080ba; BYTE $0x00 // mov edx, 128 445 WORD $0x894c; BYTE $0xff // mov rdi, r15 446 WORD $0x8948; BYTE $0xde // mov rsi, rbx 447 CALL clib·_memcpy(SB) 448 LONG $0x80eb8348 // sub rbx, -128 449 LONG $0x80ef8349 // sub r15, -128 450 LONG $0xffc48349 // add r12, -1 451 JNE LBB0_95 452 JMP LBB0_147 453 454 LBB0_1: 455 WORD $0xf983; BYTE $0x07 // cmp ecx, 7 456 JG LBB0_25 457 WORD $0xf983; BYTE $0x03 // cmp ecx, 3 458 JG LBB0_14 459 WORD $0xf983; BYTE $0x01 // cmp ecx, 1 460 JG LBB0_9 461 WORD $0xc985 // test ecx, ecx 462 JE LBB0_144 463 WORD $0xf983; BYTE $0x01 // cmp ecx, 1 464 JNE LBB0_147 465 WORD $0xfa83; BYTE $0x20 // cmp edx, 32 466 JL LBB0_147 467 WORD $0x8944; BYTE $0xf0 // mov eax, r14d 468 LONG $0x60c78349 // add r15, 96 469 WORD $0xc931 // xor ecx, ecx 470 QUAD $0x0000f085597de2c4; BYTE $0x00 // vpbroadcastq ymm0, qword 240[rbp] /* [rip + .LCPI0_135] */ 471 QUAD $0x00000ac08d6ffdc5 // vmovdqa ymm1, yword 2752[rbp] /* [rip + .LCPI0_134] */ 472 QUAD $0x00000120956ffdc5 // vmovdqa ymm2, yword 288[rbp] /* [rip + .LCPI0_2] */ 473 QUAD $0x000001609d6ffdc5 // vmovdqa ymm3, yword 352[rbp] /* [rip + .LCPI0_4] */ 474 QUAD $0x00000ae0a56ffdc5 // vmovdqa ymm4, yword 2784[rbp] /* [rip + .LCPI0_136] */ 475 476 LBB0_8: 477 LONG $0x587de2c4; WORD $0x8b2c // vpbroadcastd ymm5, dword [rbx + 4*rcx] 478 LONG $0x4555e2c4; BYTE $0xe9 // vpsrlvd ymm5, ymm5, ymm1 479 LONG $0xe8dbd5c5 // vpand ymm5, ymm5, ymm0 480 LONG $0x7f7ec1c4; WORD $0xa06f // vmovdqu yword [r15 - 96], ymm5 481 LONG $0x587de2c4; WORD $0x8b2c // vpbroadcastd ymm5, dword [rbx + 4*rcx] 482 LONG $0x4555e2c4; BYTE $0xea // vpsrlvd ymm5, ymm5, ymm2 483 LONG $0xe8dbd5c5 // vpand ymm5, ymm5, ymm0 484 LONG $0x7f7ec1c4; WORD $0xc06f // vmovdqu yword [r15 - 64], ymm5 485 LONG $0x587de2c4; WORD $0x8b2c // vpbroadcastd ymm5, dword [rbx + 4*rcx] 486 LONG $0x4555e2c4; BYTE $0xeb // vpsrlvd ymm5, ymm5, ymm3 487 LONG $0xe8dbd5c5 // vpand ymm5, ymm5, ymm0 488 LONG $0x7f7ec1c4; WORD $0xe06f // vmovdqu yword [r15 - 32], ymm5 489 LONG $0x587de2c4; WORD $0x8b2c // vpbroadcastd ymm5, dword [rbx + 4*rcx] 490 LONG $0x4555e2c4; BYTE $0xec // vpsrlvd ymm5, ymm5, ymm4 491 LONG $0xe8dbd5c5 // vpand ymm5, ymm5, ymm0 492 LONG $0x7f7ec1c4; BYTE $0x2f // vmovdqu yword [r15], ymm5 493 LONG $0x01c18348 // add rcx, 1 494 LONG $0x80ef8349 // sub r15, -128 495 WORD $0x3948; BYTE $0xc8 // cmp rax, rcx 496 JNE LBB0_8 497 JMP LBB0_147 498 499 LBB0_49: 500 WORD $0xf983; BYTE $0x13 // cmp ecx, 19 501 JG LBB0_61 502 WORD $0xf983; BYTE $0x11 // cmp ecx, 17 503 JG LBB0_56 504 WORD $0xf983; BYTE $0x10 // cmp ecx, 16 505 JE LBB0_120 506 WORD $0xf983; BYTE $0x11 // cmp ecx, 17 507 JNE LBB0_147 508 WORD $0xfa83; BYTE $0x20 // cmp edx, 32 509 JL LBB0_147 510 WORD $0x8945; BYTE $0xf0 // mov r8d, r14d 511 LONG $0x60c78349 // add r15, 96 512 LONG $0x40c38348 // add rbx, 64 513 LONG $0x597de2c4; WORD $0x7845 // vpbroadcastq ymm0, qword 120[rbp] /* [rip + .LCPI0_76] */ 514 QUAD $0x000005808d6ffdc5 // vmovdqa ymm1, yword 1408[rbp] /* [rip + .LCPI0_75] */ 515 QUAD $0x000005a0956ffdc5 // vmovdqa ymm2, yword 1440[rbp] /* [rip + .LCPI0_77] */ 516 QUAD $0x000005c09d6ffdc5 // vmovdqa ymm3, yword 1472[rbp] /* [rip + .LCPI0_78] */ 517 QUAD $0x000005e0a56ffdc5 // vmovdqa ymm4, yword 1504[rbp] /* [rip + .LCPI0_79] */ 518 519 LBB0_55: 520 WORD $0x4b8b; BYTE $0xcc // mov ecx, dword [rbx - 52] 521 LONG $0xd0538b44 // mov r10d, dword [rbx - 48] 522 LONG $0xcaa40f41; BYTE $0x09 // shld r10d, ecx, 9 523 WORD $0x738b; BYTE $0xc8 // mov esi, dword [rbx - 56] 524 WORD $0xcf89 // mov edi, ecx 525 LONG $0x0bf7a40f // shld edi, esi, 11 526 LONG $0xc04b8b44 // mov r9d, dword [rbx - 64] 527 WORD $0x538b; BYTE $0xc4 // mov edx, dword [rbx - 60] 528 WORD $0xd089 // mov eax, edx 529 LONG $0xc8a40f44; BYTE $0x0f // shld eax, r9d, 15 530 LONG $0xee6ef9c5 // vmovd xmm5, esi 531 LONG $0x0dd6a40f // shld esi, edx, 13 532 LONG $0x2251e3c4; WORD $0x01ef // vpinsrd xmm5, xmm5, edi, 1 533 LONG $0x2251e3c4; WORD $0x02e9 // vpinsrd xmm5, xmm5, ecx, 2 534 LONG $0x2251c3c4; WORD $0x03ea // vpinsrd xmm5, xmm5, r10d, 3 535 LONG $0x6e79c1c4; BYTE $0xf1 // vmovd xmm6, r9d 536 LONG $0x2249e3c4; WORD $0x01f0 // vpinsrd xmm6, xmm6, eax, 1 537 LONG $0x2249e3c4; WORD $0x02f2 // vpinsrd xmm6, xmm6, edx, 2 538 LONG $0x2249e3c4; WORD $0x03f6 // vpinsrd xmm6, xmm6, esi, 3 539 LONG $0x384de3c4; WORD $0x01ed // vinserti128 ymm5, ymm6, xmm5, 1 540 LONG $0x4555e2c4; BYTE $0xe9 // vpsrlvd ymm5, ymm5, ymm1 541 LONG $0xe8dbd5c5 // vpand ymm5, ymm5, ymm0 542 LONG $0x7f7ec1c4; WORD $0xa06f // vmovdqu yword [r15 - 96], ymm5 543 WORD $0x438b; BYTE $0xdc // mov eax, dword [rbx - 36] 544 LONG $0xe0538b44 // mov r10d, dword [rbx - 32] 545 LONG $0xc2a40f41; BYTE $0x01 // shld r10d, eax, 1 546 WORD $0x538b; BYTE $0xd8 // mov edx, dword [rbx - 40] 547 WORD $0xc689 // mov esi, eax 548 LONG $0x03d6a40f // shld esi, edx, 3 549 LONG $0xd04b8b44 // mov r9d, dword [rbx - 48] 550 WORD $0x4b8b; BYTE $0xd4 // mov ecx, dword [rbx - 44] 551 WORD $0xcf89 // mov edi, ecx 552 LONG $0xcfa40f44; BYTE $0x07 // shld edi, r9d, 7 553 LONG $0xea6ef9c5 // vmovd xmm5, edx 554 LONG $0x05caa40f // shld edx, ecx, 5 555 LONG $0x2251e3c4; WORD $0x01ee // vpinsrd xmm5, xmm5, esi, 1 556 LONG $0x2251e3c4; WORD $0x02e8 // vpinsrd xmm5, xmm5, eax, 2 557 LONG $0x2251c3c4; WORD $0x03ea // vpinsrd xmm5, xmm5, r10d, 3 558 LONG $0x6e79c1c4; BYTE $0xf1 // vmovd xmm6, r9d 559 LONG $0x2249e3c4; WORD $0x01f7 // vpinsrd xmm6, xmm6, edi, 1 560 LONG $0x2249e3c4; WORD $0x02f1 // vpinsrd xmm6, xmm6, ecx, 2 561 LONG $0x2249e3c4; WORD $0x03f2 // vpinsrd xmm6, xmm6, edx, 3 562 LONG $0x384de3c4; WORD $0x01ed // vinserti128 ymm5, ymm6, xmm5, 1 563 LONG $0x4555e2c4; BYTE $0xea // vpsrlvd ymm5, ymm5, ymm2 564 LONG $0xe8dbd5c5 // vpand ymm5, ymm5, ymm0 565 LONG $0x7f7ec1c4; WORD $0xc06f // vmovdqu yword [r15 - 64], ymm5 566 LONG $0xf04b8b44 // mov r9d, dword [rbx - 16] 567 LONG $0xec5b8b44 // mov r11d, dword [rbx - 20] 568 WORD $0x8944; BYTE $0xca // mov edx, r9d 569 LONG $0xdaa40f44; BYTE $0x0a // shld edx, r11d, 10 570 LONG $0xe8538b44 // mov r10d, dword [rbx - 24] 571 WORD $0x8944; BYTE $0xdf // mov edi, r11d 572 LONG $0xd7a40f44; BYTE $0x0c // shld edi, r10d, 12 573 WORD $0x438b; BYTE $0xe4 // mov eax, dword [rbx - 28] 574 WORD $0x8944; BYTE $0xd6 // mov esi, r10d 575 LONG $0x0ec6a40f // shld esi, eax, 14 576 WORD $0x4b8b; BYTE $0xe0 // mov ecx, dword [rbx - 32] 577 LONG $0x10c1ac0f // shrd ecx, eax, 16 578 LONG $0xef6ef9c5 // vmovd xmm5, edi 579 LONG $0x2251c3c4; WORD $0x01eb // vpinsrd xmm5, xmm5, r11d, 1 580 LONG $0x2251e3c4; WORD $0x02ea // vpinsrd xmm5, xmm5, edx, 2 581 LONG $0x2251c3c4; WORD $0x03e9 // vpinsrd xmm5, xmm5, r9d, 3 582 LONG $0xf16ef9c5 // vmovd xmm6, ecx 583 LONG $0x2249e3c4; WORD $0x01f0 // vpinsrd xmm6, xmm6, eax, 1 584 LONG $0x2249e3c4; WORD $0x02f6 // vpinsrd xmm6, xmm6, esi, 2 585 LONG $0x2249c3c4; WORD $0x03f2 // vpinsrd xmm6, xmm6, r10d, 3 586 LONG $0x384de3c4; WORD $0x01ed // vinserti128 ymm5, ymm6, xmm5, 1 587 LONG $0x4555e2c4; BYTE $0xeb // vpsrlvd ymm5, ymm5, ymm3 588 LONG $0xe8dbd5c5 // vpand ymm5, ymm5, ymm0 589 LONG $0x7f7ec1c4; WORD $0xe06f // vmovdqu yword [r15 - 32], ymm5 590 WORD $0x8b44; BYTE $0x0b // mov r9d, dword [rbx] 591 LONG $0xfc5b8b44 // mov r11d, dword [rbx - 4] 592 WORD $0x8944; BYTE $0xca // mov edx, r9d 593 LONG $0xdaa40f44; BYTE $0x02 // shld edx, r11d, 2 594 LONG $0xf8538b44 // mov r10d, dword [rbx - 8] 595 WORD $0x8944; BYTE $0xdf // mov edi, r11d 596 LONG $0xd7a40f44; BYTE $0x04 // shld edi, r10d, 4 597 WORD $0x438b; BYTE $0xf0 // mov eax, dword [rbx - 16] 598 WORD $0x738b; BYTE $0xf4 // mov esi, dword [rbx - 12] 599 WORD $0x8944; BYTE $0xd1 // mov ecx, r10d 600 LONG $0x06f1a40f // shld ecx, esi, 6 601 LONG $0x18f0ac0f // shrd eax, esi, 24 602 LONG $0xef6ef9c5 // vmovd xmm5, edi 603 LONG $0x2251c3c4; WORD $0x01eb // vpinsrd xmm5, xmm5, r11d, 1 604 LONG $0x2251e3c4; WORD $0x02ea // vpinsrd xmm5, xmm5, edx, 2 605 LONG $0x2251c3c4; WORD $0x03e9 // vpinsrd xmm5, xmm5, r9d, 3 606 LONG $0xf06ef9c5 // vmovd xmm6, eax 607 LONG $0x2249e3c4; WORD $0x01f6 // vpinsrd xmm6, xmm6, esi, 1 608 LONG $0x2249e3c4; WORD $0x02f1 // vpinsrd xmm6, xmm6, ecx, 2 609 LONG $0x2249c3c4; WORD $0x03f2 // vpinsrd xmm6, xmm6, r10d, 3 610 LONG $0x384de3c4; WORD $0x01ed // vinserti128 ymm5, ymm6, xmm5, 1 611 LONG $0x4555e2c4; BYTE $0xec // vpsrlvd ymm5, ymm5, ymm4 612 LONG $0xe8dbd5c5 // vpand ymm5, ymm5, ymm0 613 LONG $0x7f7ec1c4; BYTE $0x2f // vmovdqu yword [r15], ymm5 614 LONG $0x80ef8349 // sub r15, -128 615 LONG $0x44c38348 // add rbx, 68 616 LONG $0xffc08349 // add r8, -1 617 JNE LBB0_55 618 JMP LBB0_147 619 620 LBB0_25: 621 WORD $0xf983; BYTE $0x0b // cmp ecx, 11 622 JG LBB0_37 623 WORD $0xf983; BYTE $0x09 // cmp ecx, 9 624 JG LBB0_32 625 WORD $0xf983; BYTE $0x08 // cmp ecx, 8 626 JE LBB0_132 627 WORD $0xf983; BYTE $0x09 // cmp ecx, 9 628 JNE LBB0_147 629 WORD $0xfa83; BYTE $0x20 // cmp edx, 32 630 JL LBB0_147 631 WORD $0x8945; BYTE $0xf0 // mov r8d, r14d 632 LONG $0x60c78349 // add r15, 96 633 LONG $0x20c38348 // add rbx, 32 634 QUAD $0x0000b885597de2c4; BYTE $0x00 // vpbroadcastq ymm0, qword 184[rbp] /* [rip + .LCPI0_105] */ 635 QUAD $0x000008208d6ffdc5 // vmovdqa ymm1, yword 2080[rbp] /* [rip + .LCPI0_104] */ 636 QUAD $0x00000840956ffdc5 // vmovdqa ymm2, yword 2112[rbp] /* [rip + .LCPI0_106] */ 637 QUAD $0x000008609d6ffdc5 // vmovdqa ymm3, yword 2144[rbp] /* [rip + .LCPI0_107] */ 638 QUAD $0x00000880a56ffdc5 // vmovdqa ymm4, yword 2176[rbp] /* [rip + .LCPI0_108] */ 639 640 LBB0_31: 641 WORD $0x4b8b; BYTE $0xe0 // mov ecx, dword [rbx - 32] 642 WORD $0x538b; BYTE $0xe4 // mov edx, dword [rbx - 28] 643 WORD $0x738b; BYTE $0xe8 // mov esi, dword [rbx - 24] 644 LONG $0x01d6a40f // shld esi, edx, 1 645 LONG $0xea6ef9c5 // vmovd xmm5, edx 646 LONG $0x2251e3c4; WORD $0x01ea // vpinsrd xmm5, xmm5, edx, 1 647 LONG $0x2251e3c4; WORD $0x02ea // vpinsrd xmm5, xmm5, edx, 2 648 LONG $0x05caa40f // shld edx, ecx, 5 649 LONG $0x2251e3c4; WORD $0x03ee // vpinsrd xmm5, xmm5, esi, 3 650 LONG $0xf16ef9c5 // vmovd xmm6, ecx 651 LONG $0x2249e3c4; WORD $0x01f1 // vpinsrd xmm6, xmm6, ecx, 1 652 LONG $0x2249e3c4; WORD $0x02f1 // vpinsrd xmm6, xmm6, ecx, 2 653 LONG $0x2249e3c4; WORD $0x03f2 // vpinsrd xmm6, xmm6, edx, 3 654 LONG $0x384de3c4; WORD $0x01ed // vinserti128 ymm5, ymm6, xmm5, 1 655 LONG $0x4555e2c4; BYTE $0xe9 // vpsrlvd ymm5, ymm5, ymm1 656 LONG $0xe8dbd5c5 // vpand ymm5, ymm5, ymm0 657 LONG $0x7f7ec1c4; WORD $0xa06f // vmovdqu yword [r15 - 96], ymm5 658 WORD $0x4b8b; BYTE $0xf0 // mov ecx, dword [rbx - 16] 659 WORD $0x538b; BYTE $0xe8 // mov edx, dword [rbx - 24] 660 WORD $0x738b; BYTE $0xec // mov esi, dword [rbx - 20] 661 WORD $0xcf89 // mov edi, ecx 662 LONG $0x02f7a40f // shld edi, esi, 2 663 WORD $0xf089 // mov eax, esi 664 LONG $0x06d0a40f // shld eax, edx, 6 665 LONG $0xee6ef9c5 // vmovd xmm5, esi 666 LONG $0x2251e3c4; WORD $0x01ee // vpinsrd xmm5, xmm5, esi, 1 667 LONG $0x2251e3c4; WORD $0x02ef // vpinsrd xmm5, xmm5, edi, 2 668 LONG $0x2251e3c4; WORD $0x03e9 // vpinsrd xmm5, xmm5, ecx, 3 669 LONG $0xf26ef9c5 // vmovd xmm6, edx 670 LONG $0x2249e3c4; WORD $0x01f2 // vpinsrd xmm6, xmm6, edx, 1 671 LONG $0x2249e3c4; WORD $0x02f0 // vpinsrd xmm6, xmm6, eax, 2 672 LONG $0x2249e3c4; WORD $0x03f6 // vpinsrd xmm6, xmm6, esi, 3 673 LONG $0x384de3c4; WORD $0x01ed // vinserti128 ymm5, ymm6, xmm5, 1 674 LONG $0x4555e2c4; BYTE $0xea // vpsrlvd ymm5, ymm5, ymm2 675 LONG $0xe8dbd5c5 // vpand ymm5, ymm5, ymm0 676 LONG $0x7f7ec1c4; WORD $0xc06f // vmovdqu yword [r15 - 64], ymm5 677 WORD $0x438b; BYTE $0xf8 // mov eax, dword [rbx - 8] 678 WORD $0x4b8b; BYTE $0xf0 // mov ecx, dword [rbx - 16] 679 WORD $0x538b; BYTE $0xf4 // mov edx, dword [rbx - 12] 680 WORD $0xc689 // mov esi, eax 681 LONG $0x03d6a40f // shld esi, edx, 3 682 WORD $0xd789 // mov edi, edx 683 LONG $0x07cfa40f // shld edi, ecx, 7 684 LONG $0xea6ef9c5 // vmovd xmm5, edx 685 LONG $0x2251e3c4; WORD $0x01ee // vpinsrd xmm5, xmm5, esi, 1 686 LONG $0x2251e3c4; WORD $0x02e8 // vpinsrd xmm5, xmm5, eax, 2 687 LONG $0x2251e3c4; WORD $0x03e8 // vpinsrd xmm5, xmm5, eax, 3 688 LONG $0xf16ef9c5 // vmovd xmm6, ecx 689 LONG $0x2249e3c4; WORD $0x01f7 // vpinsrd xmm6, xmm6, edi, 1 690 LONG $0x2249e3c4; WORD $0x02f2 // vpinsrd xmm6, xmm6, edx, 2 691 LONG $0x2249e3c4; WORD $0x03f2 // vpinsrd xmm6, xmm6, edx, 3 692 LONG $0x384de3c4; WORD $0x01ed // vinserti128 ymm5, ymm6, xmm5, 1 693 LONG $0x4555e2c4; BYTE $0xeb // vpsrlvd ymm5, ymm5, ymm3 694 LONG $0xe8dbd5c5 // vpand ymm5, ymm5, ymm0 695 LONG $0x7f7ec1c4; WORD $0xe06f // vmovdqu yword [r15 - 32], ymm5 696 WORD $0x038b // mov eax, dword [rbx] 697 WORD $0x4b8b; BYTE $0xf8 // mov ecx, dword [rbx - 8] 698 WORD $0x538b; BYTE $0xfc // mov edx, dword [rbx - 4] 699 WORD $0xc689 // mov esi, eax 700 LONG $0x04d6a40f // shld esi, edx, 4 701 LONG $0x18d1ac0f // shrd ecx, edx, 24 702 LONG $0xee6ef9c5 // vmovd xmm5, esi 703 LONG $0x2251e3c4; WORD $0x01e8 // vpinsrd xmm5, xmm5, eax, 1 704 LONG $0x2251e3c4; WORD $0x02e8 // vpinsrd xmm5, xmm5, eax, 2 705 LONG $0x2251e3c4; WORD $0x03e8 // vpinsrd xmm5, xmm5, eax, 3 706 LONG $0xf16ef9c5 // vmovd xmm6, ecx 707 LONG $0x2249e3c4; WORD $0x01f2 // vpinsrd xmm6, xmm6, edx, 1 708 LONG $0x2249e3c4; WORD $0x02f2 // vpinsrd xmm6, xmm6, edx, 2 709 LONG $0x2249e3c4; WORD $0x03f2 // vpinsrd xmm6, xmm6, edx, 3 710 LONG $0x384de3c4; WORD $0x01ed // vinserti128 ymm5, ymm6, xmm5, 1 711 LONG $0x4555e2c4; BYTE $0xec // vpsrlvd ymm5, ymm5, ymm4 712 LONG $0xe8dbd5c5 // vpand ymm5, ymm5, ymm0 713 LONG $0x7f7ec1c4; BYTE $0x2f // vmovdqu yword [r15], ymm5 714 LONG $0x80ef8349 // sub r15, -128 715 LONG $0x24c38348 // add rbx, 36 716 LONG $0xffc08349 // add r8, -1 717 JNE LBB0_31 718 JMP LBB0_147 719 720 LBB0_73: 721 WORD $0xf983; BYTE $0x19 // cmp ecx, 25 722 JG LBB0_79 723 WORD $0xf983; BYTE $0x18 // cmp ecx, 24 724 JE LBB0_108 725 WORD $0xf983; BYTE $0x19 // cmp ecx, 25 726 JNE LBB0_147 727 WORD $0xfa83; BYTE $0x20 // cmp edx, 32 728 JL LBB0_147 729 WORD $0x8945; BYTE $0xf0 // mov r8d, r14d 730 LONG $0x60c78349 // add r15, 96 731 LONG $0x60c38348 // add rbx, 96 732 LONG $0x597de2c4; WORD $0x4045 // vpbroadcastq ymm0, qword 64[rbp] /* [rip + .LCPI0_38] */ 733 QUAD $0x000002608d6f7dc5 // vmovdqa ymm9, yword 608[rbp] /* [rip + .LCPI0_28] */ 734 QUAD $0x00000300956f7dc5 // vmovdqa ymm10, yword 768[rbp] /* [rip + .LCPI0_39] */ 735 QUAD $0x00000be09d6f79c5 // vmovdqa xmm11, oword 3040[rbp] /* [rip + .LCPI0_40] */ 736 QUAD $0x00000bf0a56ff9c5 // vmovdqa xmm4, oword 3056[rbp] /* [rip + .LCPI0_41] */ 737 QUAD $0x00000320ad6ffdc5 // vmovdqa ymm5, yword 800[rbp] /* [rip + .LCPI0_42] */ 738 QUAD $0x00000c00b56ff9c5 // vmovdqa xmm6, oword 3072[rbp] /* [rip + .LCPI0_43] */ 739 QUAD $0x00000c10bd6ff9c5 // vmovdqa xmm7, oword 3088[rbp] /* [rip + .LCPI0_44] */ 740 QUAD $0x00000340856f7dc5 // vmovdqa ymm8, yword 832[rbp] /* [rip + .LCPI0_45] */ 741 742 LBB0_78: 743 WORD $0x4b8b; BYTE $0xb4 // mov ecx, dword [rbx - 76] 744 LONG $0xb84b8b44 // mov r9d, dword [rbx - 72] 745 LONG $0xc9a40f41; BYTE $0x11 // shld r9d, ecx, 17 746 WORD $0x738b; BYTE $0xb0 // mov esi, dword [rbx - 80] 747 LONG $0x0af1a40f // shld ecx, esi, 10 748 WORD $0x7b8b; BYTE $0xac // mov edi, dword [rbx - 84] 749 LONG $0x03fea40f // shld esi, edi, 3 750 WORD $0x438b; BYTE $0xa8 // mov eax, dword [rbx - 88] 751 LONG $0xcf6ef9c5 // vmovd xmm1, edi 752 LONG $0x15c7a40f // shld edi, eax, 21 753 LONG $0xa0538b44 // mov r10d, dword [rbx - 96] 754 WORD $0x538b; BYTE $0xa4 // mov edx, dword [rbx - 92] 755 LONG $0x0ed0a40f // shld eax, edx, 14 756 LONG $0xd2a40f44; BYTE $0x07 // shld edx, r10d, 7 757 LONG $0x2271e3c4; WORD $0x01ce // vpinsrd xmm1, xmm1, esi, 1 758 LONG $0x6e79c1c4; BYTE $0xd2 // vmovd xmm2, r10d 759 LONG $0x2271e3c4; WORD $0x02c9 // vpinsrd xmm1, xmm1, ecx, 2 760 LONG $0x2269e3c4; WORD $0x01d2 // vpinsrd xmm2, xmm2, edx, 1 761 LONG $0x2271c3c4; WORD $0x03c9 // vpinsrd xmm1, xmm1, r9d, 3 762 LONG $0x2269e3c4; WORD $0x02d0 // vpinsrd xmm2, xmm2, eax, 2 763 LONG $0x2269e3c4; WORD $0x03d7 // vpinsrd xmm2, xmm2, edi, 3 764 LONG $0x386de3c4; WORD $0x01c9 // vinserti128 ymm1, ymm2, xmm1, 1 765 LONG $0x4575c2c4; BYTE $0xc9 // vpsrlvd ymm1, ymm1, ymm9 766 LONG $0xc8dbf5c5 // vpand ymm1, ymm1, ymm0 767 LONG $0x7f7ec1c4; WORD $0xa04f // vmovdqu yword [r15 - 96], ymm1 768 LONG $0xcc5b8b44 // mov r11d, dword [rbx - 52] 769 LONG $0xd04b8b44 // mov r9d, dword [rbx - 48] 770 LONG $0xd9a40f45; BYTE $0x09 // shld r9d, r11d, 9 771 LONG $0xc8538b44 // mov r10d, dword [rbx - 56] 772 LONG $0xd3a40f45; BYTE $0x02 // shld r11d, r10d, 2 773 WORD $0x738b; BYTE $0xc4 // mov esi, dword [rbx - 60] 774 WORD $0x8944; BYTE $0xd7 // mov edi, r10d 775 WORD $0x4b8b; BYTE $0xc0 // mov ecx, dword [rbx - 64] 776 LONG $0x14f7a40f // shld edi, esi, 20 777 WORD $0x538b; BYTE $0xb8 // mov edx, dword [rbx - 72] 778 WORD $0x438b; BYTE $0xbc // mov eax, dword [rbx - 68] 779 LONG $0x0dcea40f // shld esi, ecx, 13 780 LONG $0x08c2ac0f // shrd edx, eax, 8 781 LONG $0x06c1a40f // shld ecx, eax, 6 782 LONG $0xcf6ef9c5 // vmovd xmm1, edi 783 LONG $0x2271c3c4; WORD $0x01ca // vpinsrd xmm1, xmm1, r10d, 1 784 LONG $0xd26ef9c5 // vmovd xmm2, edx 785 LONG $0x2271c3c4; WORD $0x02cb // vpinsrd xmm1, xmm1, r11d, 2 786 LONG $0x2269e3c4; WORD $0x01d0 // vpinsrd xmm2, xmm2, eax, 1 787 LONG $0x2271c3c4; WORD $0x03c9 // vpinsrd xmm1, xmm1, r9d, 3 788 LONG $0x2269e3c4; WORD $0x02d1 // vpinsrd xmm2, xmm2, ecx, 2 789 LONG $0x2269e3c4; WORD $0x03d6 // vpinsrd xmm2, xmm2, esi, 3 790 LONG $0x386de3c4; WORD $0x01c9 // vinserti128 ymm1, ymm2, xmm1, 1 791 LONG $0x4575c2c4; BYTE $0xca // vpsrlvd ymm1, ymm1, ymm10 792 LONG $0xc8dbf5c5 // vpand ymm1, ymm1, ymm0 793 LONG $0x7f7ec1c4; WORD $0xc04f // vmovdqu yword [r15 - 64], ymm1 794 WORD $0x438b; BYTE $0xe4 // mov eax, dword [rbx - 28] 795 LONG $0xe84b8b44 // mov r9d, dword [rbx - 24] 796 LONG $0xc1a40f41; BYTE $0x01 // shld r9d, eax, 1 797 WORD $0x538b; BYTE $0xe0 // mov edx, dword [rbx - 32] 798 WORD $0xc689 // mov esi, eax 799 LONG $0x13d6a40f // shld esi, edx, 19 800 WORD $0x7b8b; BYTE $0xd8 // mov edi, dword [rbx - 40] 801 WORD $0x4b8b; BYTE $0xdc // mov ecx, dword [rbx - 36] 802 LONG $0x0ccaa40f // shld edx, ecx, 12 803 LONG $0x05f9a40f // shld ecx, edi, 5 804 LONG $0x4b7efac5; BYTE $0xd0 // vmovq xmm1, qword [rbx - 48] 805 LONG $0x4571c2c4; BYTE $0xd3 // vpsrlvd xmm2, xmm1, xmm11 806 LONG $0xc970f9c5; BYTE $0xe5 // vpshufd xmm1, xmm1, 229 807 LONG $0x2271e3c4; WORD $0x01cf // vpinsrd xmm1, xmm1, edi, 1 808 LONG $0x4771e2c4; BYTE $0xcc // vpsllvd xmm1, xmm1, xmm4 809 LONG $0xc9ebe9c5 // vpor xmm1, xmm2, xmm1 810 LONG $0xd26ef9c5 // vmovd xmm2, edx 811 LONG $0x2269e3c4; WORD $0x01d6 // vpinsrd xmm2, xmm2, esi, 1 812 LONG $0x2269e3c4; WORD $0x02d0 // vpinsrd xmm2, xmm2, eax, 2 813 LONG $0x2269c3c4; WORD $0x03d1 // vpinsrd xmm2, xmm2, r9d, 3 814 LONG $0x2271e3c4; WORD $0x02cf // vpinsrd xmm1, xmm1, edi, 2 815 LONG $0x2271e3c4; WORD $0x03c9 // vpinsrd xmm1, xmm1, ecx, 3 816 LONG $0x3875e3c4; WORD $0x01ca // vinserti128 ymm1, ymm1, xmm2, 1 817 LONG $0x4575e2c4; BYTE $0xcd // vpsrlvd ymm1, ymm1, ymm5 818 LONG $0xc8dbf5c5 // vpand ymm1, ymm1, ymm0 819 LONG $0x7f7ec1c4; WORD $0xe04f // vmovdqu yword [r15 - 32], ymm1 820 WORD $0x8b44; BYTE $0x0b // mov r9d, dword [rbx] 821 WORD $0x4b8b; BYTE $0xfc // mov ecx, dword [rbx - 4] 822 WORD $0x8944; BYTE $0xca // mov edx, r9d 823 LONG $0x12caa40f // shld edx, ecx, 18 824 WORD $0x738b; BYTE $0xf8 // mov esi, dword [rbx - 8] 825 LONG $0x0bf1a40f // shld ecx, esi, 11 826 LONG $0xf0538b44 // mov r10d, dword [rbx - 16] 827 WORD $0x7b8b; BYTE $0xf4 // mov edi, dword [rbx - 12] 828 LONG $0x04fea40f // shld esi, edi, 4 829 WORD $0xf889 // mov eax, edi 830 LONG $0xd0a40f44; BYTE $0x16 // shld eax, r10d, 22 831 LONG $0x4b7efac5; BYTE $0xe8 // vmovq xmm1, qword [rbx - 24] 832 LONG $0x4571e2c4; BYTE $0xd6 // vpsrlvd xmm2, xmm1, xmm6 833 LONG $0xc970f9c5; BYTE $0xe5 // vpshufd xmm1, xmm1, 229 834 LONG $0x2271c3c4; WORD $0x01ca // vpinsrd xmm1, xmm1, r10d, 1 835 LONG $0x4771e2c4; BYTE $0xcf // vpsllvd xmm1, xmm1, xmm7 836 LONG $0xde6ef9c5 // vmovd xmm3, esi 837 LONG $0x2261e3c4; WORD $0x01d9 // vpinsrd xmm3, xmm3, ecx, 1 838 LONG $0xc9ebe9c5 // vpor xmm1, xmm2, xmm1 839 LONG $0x2261e3c4; WORD $0x02d2 // vpinsrd xmm2, xmm3, edx, 2 840 LONG $0x2269c3c4; WORD $0x03d1 // vpinsrd xmm2, xmm2, r9d, 3 841 LONG $0x2271e3c4; WORD $0x02c8 // vpinsrd xmm1, xmm1, eax, 2 842 LONG $0x2271e3c4; WORD $0x03cf // vpinsrd xmm1, xmm1, edi, 3 843 LONG $0x3875e3c4; WORD $0x01ca // vinserti128 ymm1, ymm1, xmm2, 1 844 LONG $0x4575c2c4; BYTE $0xc8 // vpsrlvd ymm1, ymm1, ymm8 845 LONG $0xc8dbf5c5 // vpand ymm1, ymm1, ymm0 846 LONG $0x7f7ec1c4; BYTE $0x0f // vmovdqu yword [r15], ymm1 847 LONG $0x80ef8349 // sub r15, -128 848 LONG $0x64c38348 // add rbx, 100 849 LONG $0xffc08349 // add r8, -1 850 JNE LBB0_78 851 JMP LBB0_147 852 853 LBB0_14: 854 WORD $0xf983; BYTE $0x05 // cmp ecx, 5 855 JG LBB0_20 856 WORD $0xf983; BYTE $0x04 // cmp ecx, 4 857 JE LBB0_138 858 WORD $0xf983; BYTE $0x05 // cmp ecx, 5 859 JNE LBB0_147 860 WORD $0xfa83; BYTE $0x20 // cmp edx, 32 861 JL LBB0_147 862 WORD $0x8944; BYTE $0xf0 // mov eax, r14d 863 LONG $0x60c78349 // add r15, 96 864 LONG $0x10c38348 // add rbx, 16 865 QUAD $0x0000d085597de2c4; BYTE $0x00 // vpbroadcastq ymm0, qword 208[rbp] /* [rip + .LCPI0_120] */ 866 QUAD $0x000009608d6ffdc5 // vmovdqa ymm1, yword 2400[rbp] /* [rip + .LCPI0_119] */ 867 QUAD $0x00000980956ffdc5 // vmovdqa ymm2, yword 2432[rbp] /* [rip + .LCPI0_121] */ 868 QUAD $0x000009a09d6ffdc5 // vmovdqa ymm3, yword 2464[rbp] /* [rip + .LCPI0_122] */ 869 QUAD $0x000009c0a56ffdc5 // vmovdqa ymm4, yword 2496[rbp] /* [rip + .LCPI0_123] */ 870 871 LBB0_19: 872 WORD $0x4b8b; BYTE $0xf0 // mov ecx, dword [rbx - 16] 873 WORD $0x538b; BYTE $0xf4 // mov edx, dword [rbx - 12] 874 WORD $0xd689 // mov esi, edx 875 LONG $0x02cea40f // shld esi, ecx, 2 876 LONG $0xe96ef9c5 // vmovd xmm5, ecx 877 LONG $0x5879e2c4; BYTE $0xf5 // vpbroadcastd xmm6, xmm5 878 LONG $0x2251e3c4; WORD $0x01e9 // vpinsrd xmm5, xmm5, ecx, 1 879 LONG $0x2251e3c4; WORD $0x02ee // vpinsrd xmm5, xmm5, esi, 2 880 LONG $0x2251e3c4; WORD $0x03ea // vpinsrd xmm5, xmm5, edx, 3 881 LONG $0x384de3c4; WORD $0x01ed // vinserti128 ymm5, ymm6, xmm5, 1 882 LONG $0x4555e2c4; BYTE $0xe9 // vpsrlvd ymm5, ymm5, ymm1 883 LONG $0xe8dbd5c5 // vpand ymm5, ymm5, ymm0 884 LONG $0x7f7ec1c4; WORD $0xa06f // vmovdqu yword [r15 - 96], ymm5 885 WORD $0x4b8b; BYTE $0xf4 // mov ecx, dword [rbx - 12] 886 WORD $0x538b; BYTE $0xf8 // mov edx, dword [rbx - 8] 887 WORD $0xd689 // mov esi, edx 888 LONG $0x04cea40f // shld esi, ecx, 4 889 LONG $0xe96ef9c5 // vmovd xmm5, ecx 890 LONG $0x5879e2c4; BYTE $0xed // vpbroadcastd xmm5, xmm5 891 LONG $0xf66ef9c5 // vmovd xmm6, esi 892 LONG $0x2249e3c4; WORD $0x01f2 // vpinsrd xmm6, xmm6, edx, 1 893 LONG $0x2249e3c4; WORD $0x02f2 // vpinsrd xmm6, xmm6, edx, 2 894 LONG $0x2249e3c4; WORD $0x03f2 // vpinsrd xmm6, xmm6, edx, 3 895 LONG $0x3855e3c4; WORD $0x01ee // vinserti128 ymm5, ymm5, xmm6, 1 896 LONG $0x4555e2c4; BYTE $0xea // vpsrlvd ymm5, ymm5, ymm2 897 LONG $0xe8dbd5c5 // vpand ymm5, ymm5, ymm0 898 LONG $0x7f7ec1c4; WORD $0xc06f // vmovdqu yword [r15 - 64], ymm5 899 WORD $0x4b8b; BYTE $0xf8 // mov ecx, dword [rbx - 8] 900 WORD $0x538b; BYTE $0xfc // mov edx, dword [rbx - 4] 901 LONG $0xea6ef9c5 // vmovd xmm5, edx 902 LONG $0x01caa40f // shld edx, ecx, 1 903 LONG $0xf16ef9c5 // vmovd xmm6, ecx 904 LONG $0x2249e3c4; WORD $0x01f1 // vpinsrd xmm6, xmm6, ecx, 1 905 LONG $0x2249e3c4; WORD $0x02f1 // vpinsrd xmm6, xmm6, ecx, 2 906 LONG $0x2249e3c4; WORD $0x03f2 // vpinsrd xmm6, xmm6, edx, 3 907 LONG $0x5879e2c4; BYTE $0xed // vpbroadcastd xmm5, xmm5 908 LONG $0x384de3c4; WORD $0x01ed // vinserti128 ymm5, ymm6, xmm5, 1 909 LONG $0x4555e2c4; BYTE $0xeb // vpsrlvd ymm5, ymm5, ymm3 910 LONG $0xe8dbd5c5 // vpand ymm5, ymm5, ymm0 911 LONG $0x7f7ec1c4; WORD $0xe06f // vmovdqu yword [r15 - 32], ymm5 912 WORD $0x4b8b; BYTE $0xfc // mov ecx, dword [rbx - 4] 913 WORD $0x138b // mov edx, dword [rbx] 914 WORD $0xd689 // mov esi, edx 915 LONG $0x03cea40f // shld esi, ecx, 3 916 LONG $0xe96ef9c5 // vmovd xmm5, ecx 917 LONG $0x2251e3c4; WORD $0x01ee // vpinsrd xmm5, xmm5, esi, 1 918 LONG $0x2251e3c4; WORD $0x02ea // vpinsrd xmm5, xmm5, edx, 2 919 LONG $0x2251e3c4; WORD $0x03ea // vpinsrd xmm5, xmm5, edx, 3 920 LONG $0xf26ef9c5 // vmovd xmm6, edx 921 LONG $0x5879e2c4; BYTE $0xf6 // vpbroadcastd xmm6, xmm6 922 LONG $0x3855e3c4; WORD $0x01ee // vinserti128 ymm5, ymm5, xmm6, 1 923 LONG $0x4555e2c4; BYTE $0xec // vpsrlvd ymm5, ymm5, ymm4 924 LONG $0xe8dbd5c5 // vpand ymm5, ymm5, ymm0 925 LONG $0x7f7ec1c4; BYTE $0x2f // vmovdqu yword [r15], ymm5 926 LONG $0x80ef8349 // sub r15, -128 927 LONG $0x14c38348 // add rbx, 20 928 LONG $0xffc08348 // add rax, -1 929 JNE LBB0_19 930 JMP LBB0_147 931 932 LBB0_61: 933 WORD $0xf983; BYTE $0x15 // cmp ecx, 21 934 JG LBB0_67 935 WORD $0xf983; BYTE $0x14 // cmp ecx, 20 936 JE LBB0_114 937 WORD $0xf983; BYTE $0x15 // cmp ecx, 21 938 JNE LBB0_147 939 WORD $0xfa83; BYTE $0x20 // cmp edx, 32 940 JL LBB0_147 941 WORD $0x8945; BYTE $0xf0 // mov r8d, r14d 942 LONG $0x60c78349 // add r15, 96 943 LONG $0x50c38348 // add rbx, 80 944 QUAD $0x00000420856f7dc5 // vmovdqa ymm8, yword 1056[rbp] /* [rip + .LCPI0_58] */ 945 LONG $0x597de2c4; WORD $0x584d // vpbroadcastq ymm1, qword 88[rbp] /* [rip + .LCPI0_59] */ 946 QUAD $0x00000440956ffdc5 // vmovdqa ymm2, yword 1088[rbp] /* [rip + .LCPI0_60] */ 947 QUAD $0x000004609d6ffdc5 // vmovdqa ymm3, yword 1120[rbp] /* [rip + .LCPI0_61] */ 948 QUAD $0x00000c50a56ff9c5 // vmovdqa xmm4, oword 3152[rbp] /* [rip + .LCPI0_62] */ 949 QUAD $0x00000c60ad6ff9c5 // vmovdqa xmm5, oword 3168[rbp] /* [rip + .LCPI0_63] */ 950 QUAD $0x00000480b56ffdc5 // vmovdqa ymm6, yword 1152[rbp] /* [rip + .LCPI0_64] */ 951 952 LBB0_66: 953 WORD $0x4b8b; BYTE $0xc0 // mov ecx, dword [rbx - 64] 954 LONG $0xc44b8b44 // mov r9d, dword [rbx - 60] 955 LONG $0xc9a40f41; BYTE $0x0d // shld r9d, ecx, 13 956 LONG $0xbc5b8b44 // mov r11d, dword [rbx - 68] 957 LONG $0xd9a40f44; BYTE $0x02 // shld ecx, r11d, 2 958 WORD $0x7b8b; BYTE $0xb8 // mov edi, dword [rbx - 72] 959 WORD $0x8944; BYTE $0xde // mov esi, r11d 960 LONG $0x0cfea40f // shld esi, edi, 12 961 LONG $0xb0538b44 // mov r10d, dword [rbx - 80] 962 WORD $0x438b; BYTE $0xb4 // mov eax, dword [rbx - 76] 963 LONG $0x01c7a40f // shld edi, eax, 1 964 WORD $0xc289 // mov edx, eax 965 LONG $0xd2a40f44; BYTE $0x0b // shld edx, r10d, 11 966 LONG $0x6e79c1c4; BYTE $0xfa // vmovd xmm7, r10d 967 LONG $0xc66ef9c5 // vmovd xmm0, esi 968 LONG $0x2241e3c4; WORD $0x01fa // vpinsrd xmm7, xmm7, edx, 1 969 LONG $0x2279c3c4; WORD $0x01c3 // vpinsrd xmm0, xmm0, r11d, 1 970 LONG $0x2241e3c4; WORD $0x02f8 // vpinsrd xmm7, xmm7, eax, 2 971 LONG $0x2279e3c4; WORD $0x02c1 // vpinsrd xmm0, xmm0, ecx, 2 972 LONG $0x2241e3c4; WORD $0x03ff // vpinsrd xmm7, xmm7, edi, 3 973 LONG $0x2279c3c4; WORD $0x03c1 // vpinsrd xmm0, xmm0, r9d, 3 974 LONG $0x3845e3c4; WORD $0x01c0 // vinserti128 ymm0, ymm7, xmm0, 1 975 LONG $0x457dc2c4; BYTE $0xc0 // vpsrlvd ymm0, ymm0, ymm8 976 LONG $0xc1dbfdc5 // vpand ymm0, ymm0, ymm1 977 LONG $0x7f7ec1c4; WORD $0xa047 // vmovdqu yword [r15 - 96], ymm0 978 LONG $0xd4538b44 // mov r10d, dword [rbx - 44] 979 LONG $0xd84b8b44 // mov r9d, dword [rbx - 40] 980 LONG $0xd1a40f45; BYTE $0x05 // shld r9d, r10d, 5 981 WORD $0x538b; BYTE $0xd0 // mov edx, dword [rbx - 48] 982 WORD $0x8944; BYTE $0xd6 // mov esi, r10d 983 LONG $0x0fd6a40f // shld esi, edx, 15 984 WORD $0x4b8b; BYTE $0xcc // mov ecx, dword [rbx - 52] 985 LONG $0x04caa40f // shld edx, ecx, 4 986 LONG $0xc45b8b44 // mov r11d, dword [rbx - 60] 987 WORD $0x438b; BYTE $0xc8 // mov eax, dword [rbx - 56] 988 WORD $0xcf89 // mov edi, ecx 989 LONG $0x0ec7a40f // shld edi, eax, 14 990 LONG $0xd8a40f44; BYTE $0x03 // shld eax, r11d, 3 991 LONG $0x6e79c1c4; BYTE $0xc3 // vmovd xmm0, r11d 992 LONG $0xfa6ef9c5 // vmovd xmm7, edx 993 LONG $0x2279e3c4; WORD $0x01c0 // vpinsrd xmm0, xmm0, eax, 1 994 LONG $0x2241e3c4; WORD $0x01fe // vpinsrd xmm7, xmm7, esi, 1 995 LONG $0x2279e3c4; WORD $0x02c7 // vpinsrd xmm0, xmm0, edi, 2 996 LONG $0x2241c3c4; WORD $0x02fa // vpinsrd xmm7, xmm7, r10d, 2 997 LONG $0x2279e3c4; WORD $0x03c1 // vpinsrd xmm0, xmm0, ecx, 3 998 LONG $0x2241c3c4; WORD $0x03f9 // vpinsrd xmm7, xmm7, r9d, 3 999 LONG $0x387de3c4; WORD $0x01c7 // vinserti128 ymm0, ymm0, xmm7, 1 1000 LONG $0x457de2c4; BYTE $0xc2 // vpsrlvd ymm0, ymm0, ymm2 1001 LONG $0xc1dbfdc5 // vpand ymm0, ymm0, ymm1 1002 LONG $0x7f7ec1c4; WORD $0xc047 // vmovdqu yword [r15 - 64], ymm0 1003 LONG $0xec4b8b44 // mov r9d, dword [rbx - 20] 1004 WORD $0x4b8b; BYTE $0xe8 // mov ecx, dword [rbx - 24] 1005 WORD $0x8945; BYTE $0xca // mov r10d, r9d 1006 LONG $0xcaa40f41; BYTE $0x12 // shld r10d, ecx, 18 1007 WORD $0x738b; BYTE $0xe4 // mov esi, dword [rbx - 28] 1008 LONG $0x07f1a40f // shld ecx, esi, 7 1009 WORD $0x7b8b; BYTE $0xe0 // mov edi, dword [rbx - 32] 1010 LONG $0xc66ef9c5 // vmovd xmm0, esi 1011 LONG $0x11fea40f // shld esi, edi, 17 1012 WORD $0x438b; BYTE $0xd8 // mov eax, dword [rbx - 40] 1013 WORD $0x538b; BYTE $0xdc // mov edx, dword [rbx - 36] 1014 LONG $0x06d7a40f // shld edi, edx, 6 1015 LONG $0x10d0ac0f // shrd eax, edx, 16 1016 LONG $0x2279e3c4; WORD $0x01c1 // vpinsrd xmm0, xmm0, ecx, 1 1017 LONG $0xf86ef9c5 // vmovd xmm7, eax 1018 LONG $0x2279c3c4; WORD $0x02c2 // vpinsrd xmm0, xmm0, r10d, 2 1019 LONG $0x2241e3c4; WORD $0x01fa // vpinsrd xmm7, xmm7, edx, 1 1020 LONG $0x2279c3c4; WORD $0x03c1 // vpinsrd xmm0, xmm0, r9d, 3 1021 LONG $0x2241e3c4; WORD $0x02ff // vpinsrd xmm7, xmm7, edi, 2 1022 LONG $0x2241e3c4; WORD $0x03fe // vpinsrd xmm7, xmm7, esi, 3 1023 LONG $0x3845e3c4; WORD $0x01c0 // vinserti128 ymm0, ymm7, xmm0, 1 1024 LONG $0x457de2c4; BYTE $0xc3 // vpsrlvd ymm0, ymm0, ymm3 1025 LONG $0xc1dbfdc5 // vpand ymm0, ymm0, ymm1 1026 LONG $0x7f7ec1c4; WORD $0xe047 // vmovdqu yword [r15 - 32], ymm0 1027 WORD $0x8b44; BYTE $0x0b // mov r9d, dword [rbx] 1028 WORD $0x438b; BYTE $0xfc // mov eax, dword [rbx - 4] 1029 WORD $0x8944; BYTE $0xca // mov edx, r9d 1030 LONG $0x0ac2a40f // shld edx, eax, 10 1031 WORD $0x738b; BYTE $0xf4 // mov esi, dword [rbx - 12] 1032 WORD $0x7b8b; BYTE $0xf8 // mov edi, dword [rbx - 8] 1033 WORD $0xc189 // mov ecx, eax 1034 LONG $0x14f9a40f // shld ecx, edi, 20 1035 LONG $0x09f7a40f // shld edi, esi, 9 1036 LONG $0x437efac5; BYTE $0xec // vmovq xmm0, qword [rbx - 20] 1037 LONG $0x4579e2c4; BYTE $0xfc // vpsrlvd xmm7, xmm0, xmm4 1038 LONG $0xc070f9c5; BYTE $0xe5 // vpshufd xmm0, xmm0, 229 1039 LONG $0x2279e3c4; WORD $0x01c6 // vpinsrd xmm0, xmm0, esi, 1 1040 LONG $0x4779e2c4; BYTE $0xc5 // vpsllvd xmm0, xmm0, xmm5 1041 LONG $0xc0ebc1c5 // vpor xmm0, xmm7, xmm0 1042 LONG $0xf96ef9c5 // vmovd xmm7, ecx 1043 LONG $0x2241e3c4; WORD $0x01f8 // vpinsrd xmm7, xmm7, eax, 1 1044 LONG $0x2241e3c4; WORD $0x02fa // vpinsrd xmm7, xmm7, edx, 2 1045 LONG $0x2241c3c4; WORD $0x03f9 // vpinsrd xmm7, xmm7, r9d, 3 1046 LONG $0x2279e3c4; WORD $0x02c6 // vpinsrd xmm0, xmm0, esi, 2 1047 LONG $0x2279e3c4; WORD $0x03c7 // vpinsrd xmm0, xmm0, edi, 3 1048 LONG $0x387de3c4; WORD $0x01c7 // vinserti128 ymm0, ymm0, xmm7, 1 1049 LONG $0x457de2c4; BYTE $0xc6 // vpsrlvd ymm0, ymm0, ymm6 1050 LONG $0xc1dbfdc5 // vpand ymm0, ymm0, ymm1 1051 LONG $0x7f7ec1c4; BYTE $0x07 // vmovdqu yword [r15], ymm0 1052 LONG $0x80ef8349 // sub r15, -128 1053 LONG $0x54c38348 // add rbx, 84 1054 LONG $0xffc08349 // add r8, -1 1055 JNE LBB0_66 1056 JMP LBB0_147 1057 1058 LBB0_37: 1059 WORD $0xf983; BYTE $0x0d // cmp ecx, 13 1060 JG LBB0_43 1061 WORD $0xf983; BYTE $0x0c // cmp ecx, 12 1062 JE LBB0_126 1063 WORD $0xf983; BYTE $0x0d // cmp ecx, 13 1064 JNE LBB0_147 1065 WORD $0xfa83; BYTE $0x20 // cmp edx, 32 1066 JL LBB0_147 1067 WORD $0x8945; BYTE $0xf0 // mov r8d, r14d 1068 LONG $0x60c78349 // add r15, 96 1069 LONG $0x30c38348 // add rbx, 48 1070 QUAD $0x00009885597de2c4; BYTE $0x00 // vpbroadcastq ymm0, qword 152[rbp] /* [rip + .LCPI0_90] */ 1071 QUAD $0x000006c08d6ffdc5 // vmovdqa ymm1, yword 1728[rbp] /* [rip + .LCPI0_89] */ 1072 QUAD $0x000006e0956ffdc5 // vmovdqa ymm2, yword 1760[rbp] /* [rip + .LCPI0_91] */ 1073 QUAD $0x000007009d6ffdc5 // vmovdqa ymm3, yword 1792[rbp] /* [rip + .LCPI0_92] */ 1074 QUAD $0x00000720a56ffdc5 // vmovdqa ymm4, yword 1824[rbp] /* [rip + .LCPI0_93] */ 1075 1076 LBB0_42: 1077 WORD $0x438b; BYTE $0xd8 // mov eax, dword [rbx - 40] 1078 LONG $0xdc4b8b44 // mov r9d, dword [rbx - 36] 1079 LONG $0xc1a40f41; BYTE $0x05 // shld r9d, eax, 5 1080 WORD $0x738b; BYTE $0xd0 // mov esi, dword [rbx - 48] 1081 WORD $0x538b; BYTE $0xd4 // mov edx, dword [rbx - 44] 1082 WORD $0xc189 // mov ecx, eax 1083 LONG $0x0cd1a40f // shld ecx, edx, 12 1084 WORD $0xd789 // mov edi, edx 1085 LONG $0x06f7a40f // shld edi, esi, 6 1086 LONG $0xe96ef9c5 // vmovd xmm5, ecx 1087 LONG $0x2251e3c4; WORD $0x01e8 // vpinsrd xmm5, xmm5, eax, 1 1088 LONG $0x2251e3c4; WORD $0x02e8 // vpinsrd xmm5, xmm5, eax, 2 1089 LONG $0x2251c3c4; WORD $0x03e9 // vpinsrd xmm5, xmm5, r9d, 3 1090 LONG $0xf66ef9c5 // vmovd xmm6, esi 1091 LONG $0x2249e3c4; WORD $0x01f6 // vpinsrd xmm6, xmm6, esi, 1 1092 LONG $0x2249e3c4; WORD $0x02f7 // vpinsrd xmm6, xmm6, edi, 2 1093 LONG $0x2249e3c4; WORD $0x03f2 // vpinsrd xmm6, xmm6, edx, 3 1094 LONG $0x384de3c4; WORD $0x01ed // vinserti128 ymm5, ymm6, xmm5, 1 1095 LONG $0x4555e2c4; BYTE $0xe9 // vpsrlvd ymm5, ymm5, ymm1 1096 LONG $0xe8dbd5c5 // vpand ymm5, ymm5, ymm0 1097 LONG $0x7f7ec1c4; WORD $0xa06f // vmovdqu yword [r15 - 96], ymm5 1098 LONG $0xe84b8b44 // mov r9d, dword [rbx - 24] 1099 WORD $0x4b8b; BYTE $0xe4 // mov ecx, dword [rbx - 28] 1100 WORD $0x8944; BYTE $0xca // mov edx, r9d 1101 LONG $0x0acaa40f // shld edx, ecx, 10 1102 WORD $0x738b; BYTE $0xe0 // mov esi, dword [rbx - 32] 1103 WORD $0xcf89 // mov edi, ecx 1104 LONG $0x04f7a40f // shld edi, esi, 4 1105 LONG $0xdc538b44 // mov r10d, dword [rbx - 36] 1106 WORD $0xf089 // mov eax, esi 1107 LONG $0xd0a40f44; BYTE $0x0b // shld eax, r10d, 11 1108 LONG $0xef6ef9c5 // vmovd xmm5, edi 1109 LONG $0x2251e3c4; WORD $0x01e9 // vpinsrd xmm5, xmm5, ecx, 1 1110 LONG $0x2251e3c4; WORD $0x02ea // vpinsrd xmm5, xmm5, edx, 2 1111 LONG $0x2251c3c4; WORD $0x03e9 // vpinsrd xmm5, xmm5, r9d, 3 1112 LONG $0x6e79c1c4; BYTE $0xf2 // vmovd xmm6, r10d 1113 LONG $0x2249e3c4; WORD $0x01f0 // vpinsrd xmm6, xmm6, eax, 1 1114 LONG $0x2249e3c4; WORD $0x02f6 // vpinsrd xmm6, xmm6, esi, 2 1115 LONG $0x2249e3c4; WORD $0x03f6 // vpinsrd xmm6, xmm6, esi, 3 1116 LONG $0x384de3c4; WORD $0x01ed // vinserti128 ymm5, ymm6, xmm5, 1 1117 LONG $0x4555e2c4; BYTE $0xea // vpsrlvd ymm5, ymm5, ymm2 1118 LONG $0xe8dbd5c5 // vpand ymm5, ymm5, ymm0 1119 LONG $0x7f7ec1c4; WORD $0xc06f // vmovdqu yword [r15 - 64], ymm5 1120 LONG $0xf44b8b44 // mov r9d, dword [rbx - 12] 1121 WORD $0x4b8b; BYTE $0xf0 // mov ecx, dword [rbx - 16] 1122 WORD $0x8944; BYTE $0xca // mov edx, r9d 1123 LONG $0x02caa40f // shld edx, ecx, 2 1124 WORD $0x738b; BYTE $0xe8 // mov esi, dword [rbx - 24] 1125 WORD $0x438b; BYTE $0xec // mov eax, dword [rbx - 20] 1126 LONG $0xe96ef9c5 // vmovd xmm5, ecx 1127 LONG $0x2251e3c4; WORD $0x01e9 // vpinsrd xmm5, xmm5, ecx, 1 1128 LONG $0x09c1a40f // shld ecx, eax, 9 1129 WORD $0xc789 // mov edi, eax 1130 LONG $0x03f7a40f // shld edi, esi, 3 1131 LONG $0x2251e3c4; WORD $0x02ea // vpinsrd xmm5, xmm5, edx, 2 1132 LONG $0x2251c3c4; WORD $0x03e9 // vpinsrd xmm5, xmm5, r9d, 3 1133 LONG $0xf66ef9c5 // vmovd xmm6, esi 1134 LONG $0x2249e3c4; WORD $0x01f7 // vpinsrd xmm6, xmm6, edi, 1 1135 LONG $0x2249e3c4; WORD $0x02f0 // vpinsrd xmm6, xmm6, eax, 2 1136 LONG $0x2249e3c4; WORD $0x03f1 // vpinsrd xmm6, xmm6, ecx, 3 1137 LONG $0x384de3c4; WORD $0x01ed // vinserti128 ymm5, ymm6, xmm5, 1 1138 LONG $0x4555e2c4; BYTE $0xeb // vpsrlvd ymm5, ymm5, ymm3 1139 LONG $0xe8dbd5c5 // vpand ymm5, ymm5, ymm0 1140 LONG $0x7f7ec1c4; WORD $0xe06f // vmovdqu yword [r15 - 32], ymm5 1141 WORD $0x038b // mov eax, dword [rbx] 1142 WORD $0x4b8b; BYTE $0xfc // mov ecx, dword [rbx - 4] 1143 WORD $0xc289 // mov edx, eax 1144 LONG $0x07caa40f // shld edx, ecx, 7 1145 WORD $0x738b; BYTE $0xf8 // mov esi, dword [rbx - 8] 1146 LONG $0xe96ef9c5 // vmovd xmm5, ecx 1147 LONG $0x01f1a40f // shld ecx, esi, 1 1148 WORD $0x7b8b; BYTE $0xf4 // mov edi, dword [rbx - 12] 1149 LONG $0x18f7ac0f // shrd edi, esi, 24 1150 LONG $0xf76ef9c5 // vmovd xmm6, edi 1151 LONG $0x2249e3c4; WORD $0x01f6 // vpinsrd xmm6, xmm6, esi, 1 1152 LONG $0x2249e3c4; WORD $0x02f6 // vpinsrd xmm6, xmm6, esi, 2 1153 LONG $0x2249e3c4; WORD $0x03f1 // vpinsrd xmm6, xmm6, ecx, 3 1154 LONG $0x2251e3c4; WORD $0x01ea // vpinsrd xmm5, xmm5, edx, 1 1155 LONG $0x2251e3c4; WORD $0x02e8 // vpinsrd xmm5, xmm5, eax, 2 1156 LONG $0x2251e3c4; WORD $0x03e8 // vpinsrd xmm5, xmm5, eax, 3 1157 LONG $0x384de3c4; WORD $0x01ed // vinserti128 ymm5, ymm6, xmm5, 1 1158 LONG $0x4555e2c4; BYTE $0xec // vpsrlvd ymm5, ymm5, ymm4 1159 LONG $0xe8dbd5c5 // vpand ymm5, ymm5, ymm0 1160 LONG $0x7f7ec1c4; BYTE $0x2f // vmovdqu yword [r15], ymm5 1161 LONG $0x80ef8349 // sub r15, -128 1162 LONG $0x34c38348 // add rbx, 52 1163 LONG $0xffc08349 // add r8, -1 1164 JNE LBB0_42 1165 JMP LBB0_147 1166 1167 LBB0_85: 1168 WORD $0xf983; BYTE $0x1c // cmp ecx, 28 1169 JE LBB0_102 1170 WORD $0xf983; BYTE $0x1d // cmp ecx, 29 1171 JNE LBB0_147 1172 WORD $0xfa83; BYTE $0x20 // cmp edx, 32 1173 JL LBB0_147 1174 WORD $0x8945; BYTE $0xf0 // mov r8d, r14d 1175 LONG $0x60c78349 // add r15, 96 1176 LONG $0x597de2c4; WORD $0x1045 // vpbroadcastq ymm0, qword 16[rbp] /* [rip + .LCPI0_12] */ 1177 QUAD $0x00000b40856f79c5 // vmovdqa xmm8, oword 2880[rbp] /* [rip + .LCPI0_13] */ 1178 QUAD $0x00000b50956f79c5 // vmovdqa xmm10, oword 2896[rbp] /* [rip + .LCPI0_14] */ 1179 QUAD $0x000001c09d6f7dc5 // vmovdqa ymm11, yword 448[rbp] /* [rip + .LCPI0_15] */ 1180 QUAD $0x00000b60a56f79c5 // vmovdqa xmm12, oword 2912[rbp] /* [rip + .LCPI0_16] */ 1181 QUAD $0x00000b70ad6ff9c5 // vmovdqa xmm5, oword 2928[rbp] /* [rip + .LCPI0_17] */ 1182 QUAD $0x000001e0b56ffdc5 // vmovdqa ymm6, yword 480[rbp] /* [rip + .LCPI0_18] */ 1183 QUAD $0x00000b80bd6ff9c5 // vmovdqa xmm7, oword 2944[rbp] /* [rip + .LCPI0_19] */ 1184 QUAD $0x00000b908d6ff9c5 // vmovdqa xmm1, oword 2960[rbp] /* [rip + .LCPI0_20] */ 1185 QUAD $0x000002008d6f7dc5 // vmovdqa ymm9, yword 512[rbp] /* [rip + .LCPI0_21] */ 1186 1187 LBB0_89: 1188 LONG $0x185b8b44 // mov r11d, dword [rbx + 24] 1189 LONG $0x1c4b8b44 // mov r9d, dword [rbx + 28] 1190 LONG $0xd9a40f45; BYTE $0x15 // shld r9d, r11d, 21 1191 WORD $0x738b; BYTE $0x14 // mov esi, dword [rbx + 20] 1192 LONG $0xf3a40f41; BYTE $0x12 // shld r11d, esi, 18 1193 WORD $0x7b8b; BYTE $0x10 // mov edi, dword [rbx + 16] 1194 LONG $0x0ffea40f // shld esi, edi, 15 1195 WORD $0x438b; BYTE $0x0c // mov eax, dword [rbx + 12] 1196 LONG $0x0cc7a40f // shld edi, eax, 12 1197 WORD $0x538b; BYTE $0x08 // mov edx, dword [rbx + 8] 1198 LONG $0x09d0a40f // shld eax, edx, 9 1199 WORD $0x8b44; BYTE $0x13 // mov r10d, dword [rbx] 1200 WORD $0x4b8b; BYTE $0x04 // mov ecx, dword [rbx + 4] 1201 LONG $0x06caa40f // shld edx, ecx, 6 1202 LONG $0xd1a40f44; BYTE $0x03 // shld ecx, r10d, 3 1203 LONG $0x6e79c1c4; BYTE $0xd2 // vmovd xmm2, r10d 1204 LONG $0xdf6ef9c5 // vmovd xmm3, edi 1205 LONG $0x2269e3c4; WORD $0x01d1 // vpinsrd xmm2, xmm2, ecx, 1 1206 LONG $0x2261e3c4; WORD $0x01de // vpinsrd xmm3, xmm3, esi, 1 1207 LONG $0x2269e3c4; WORD $0x02d2 // vpinsrd xmm2, xmm2, edx, 2 1208 LONG $0x2261c3c4; WORD $0x02db // vpinsrd xmm3, xmm3, r11d, 2 1209 LONG $0x2269e3c4; WORD $0x03d0 // vpinsrd xmm2, xmm2, eax, 3 1210 LONG $0x2261c3c4; WORD $0x03d9 // vpinsrd xmm3, xmm3, r9d, 3 1211 LONG $0x386de3c4; WORD $0x01d3 // vinserti128 ymm2, ymm2, xmm3, 1 1212 LONG $0xd0dbedc5 // vpand ymm2, ymm2, ymm0 1213 LONG $0x7f7ec1c4; WORD $0xa057 // vmovdqu yword [r15 - 96], ymm2 1214 WORD $0x438b; BYTE $0x34 // mov eax, dword [rbx + 52] 1215 LONG $0x384b8b44 // mov r9d, dword [rbx + 56] 1216 LONG $0xc1a40f41; BYTE $0x0d // shld r9d, eax, 13 1217 WORD $0x538b; BYTE $0x30 // mov edx, dword [rbx + 48] 1218 LONG $0x0ad0a40f // shld eax, edx, 10 1219 WORD $0x738b; BYTE $0x2c // mov esi, dword [rbx + 44] 1220 LONG $0x07f2a40f // shld edx, esi, 7 1221 WORD $0x7b8b; BYTE $0x24 // mov edi, dword [rbx + 36] 1222 WORD $0x4b8b; BYTE $0x28 // mov ecx, dword [rbx + 40] 1223 LONG $0x04cea40f // shld esi, ecx, 4 1224 LONG $0x01f9a40f // shld ecx, edi, 1 1225 LONG $0x537efac5; BYTE $0x1c // vmovq xmm2, qword [rbx + 28] 1226 LONG $0x4569c2c4; BYTE $0xd8 // vpsrlvd xmm3, xmm2, xmm8 1227 LONG $0xd270f9c5; BYTE $0xe5 // vpshufd xmm2, xmm2, 229 1228 LONG $0x2269e3c4; WORD $0x01d7 // vpinsrd xmm2, xmm2, edi, 1 1229 LONG $0x4769c2c4; BYTE $0xd2 // vpsllvd xmm2, xmm2, xmm10 1230 LONG $0xd2ebe1c5 // vpor xmm2, xmm3, xmm2 1231 LONG $0xde6ef9c5 // vmovd xmm3, esi 1232 LONG $0x2261e3c4; WORD $0x01da // vpinsrd xmm3, xmm3, edx, 1 1233 LONG $0x2261e3c4; WORD $0x02d8 // vpinsrd xmm3, xmm3, eax, 2 1234 LONG $0x2261c3c4; WORD $0x03d9 // vpinsrd xmm3, xmm3, r9d, 3 1235 LONG $0x2269e3c4; WORD $0x02d7 // vpinsrd xmm2, xmm2, edi, 2 1236 LONG $0x2269e3c4; WORD $0x03d1 // vpinsrd xmm2, xmm2, ecx, 3 1237 LONG $0x386de3c4; WORD $0x01d3 // vinserti128 ymm2, ymm2, xmm3, 1 1238 LONG $0x456dc2c4; BYTE $0xd3 // vpsrlvd ymm2, ymm2, ymm11 1239 LONG $0xd0dbedc5 // vpand ymm2, ymm2, ymm0 1240 LONG $0x7f7ec1c4; WORD $0xc057 // vmovdqu yword [r15 - 64], ymm2 1241 WORD $0x438b; BYTE $0x50 // mov eax, dword [rbx + 80] 1242 WORD $0x4b8b; BYTE $0x54 // mov ecx, dword [rbx + 84] 1243 LONG $0x05c1a40f // shld ecx, eax, 5 1244 WORD $0x538b; BYTE $0x4c // mov edx, dword [rbx + 76] 1245 WORD $0x738b; BYTE $0x48 // mov esi, dword [rbx + 72] 1246 LONG $0x02d0a40f // shld eax, edx, 2 1247 WORD $0xd789 // mov edi, edx 1248 LONG $0x1cf7a40f // shld edi, esi, 28 1249 LONG $0x536ffac5; BYTE $0x38 // vmovdqu xmm2, oword [rbx + 56] 1250 LONG $0x4569c2c4; BYTE $0xdc // vpsrlvd xmm3, xmm2, xmm12 1251 LONG $0xd270f9c5; BYTE $0xf9 // vpshufd xmm2, xmm2, 249 1252 LONG $0x2269e3c4; WORD $0x03d6 // vpinsrd xmm2, xmm2, esi, 3 1253 LONG $0xe76ef9c5 // vmovd xmm4, edi 1254 LONG $0x2259e3c4; WORD $0x01e2 // vpinsrd xmm4, xmm4, edx, 1 1255 LONG $0x2259e3c4; WORD $0x02e0 // vpinsrd xmm4, xmm4, eax, 2 1256 LONG $0x4769e2c4; BYTE $0xd5 // vpsllvd xmm2, xmm2, xmm5 1257 LONG $0x2259e3c4; WORD $0x03e1 // vpinsrd xmm4, xmm4, ecx, 3 1258 LONG $0xd2ebe1c5 // vpor xmm2, xmm3, xmm2 1259 LONG $0x386de3c4; WORD $0x01d4 // vinserti128 ymm2, ymm2, xmm4, 1 1260 LONG $0x456de2c4; BYTE $0xd6 // vpsrlvd ymm2, ymm2, ymm6 1261 LONG $0xd0dbedc5 // vpand ymm2, ymm2, ymm0 1262 LONG $0x7f7ec1c4; WORD $0xe057 // vmovdqu yword [r15 - 32], ymm2 1263 WORD $0x438b; BYTE $0x70 // mov eax, dword [rbx + 112] 1264 WORD $0x4b8b; BYTE $0x6c // mov ecx, dword [rbx + 108] 1265 WORD $0xc289 // mov edx, eax 1266 LONG $0x1acaa40f // shld edx, ecx, 26 1267 WORD $0x738b; BYTE $0x68 // mov esi, dword [rbx + 104] 1268 LONG $0x17f1a40f // shld ecx, esi, 23 1269 WORD $0x7b8b; BYTE $0x64 // mov edi, dword [rbx + 100] 1270 LONG $0x536ffac5; BYTE $0x54 // vmovdqu xmm2, oword [rbx + 84] 1271 LONG $0x14fea40f // shld esi, edi, 20 1272 LONG $0x4569e2c4; BYTE $0xdf // vpsrlvd xmm3, xmm2, xmm7 1273 LONG $0xd270f9c5; BYTE $0xf9 // vpshufd xmm2, xmm2, 249 1274 LONG $0x2269e3c4; WORD $0x03d7 // vpinsrd xmm2, xmm2, edi, 3 1275 LONG $0xe66ef9c5 // vmovd xmm4, esi 1276 LONG $0x2259e3c4; WORD $0x01e1 // vpinsrd xmm4, xmm4, ecx, 1 1277 LONG $0x4769e2c4; BYTE $0xd1 // vpsllvd xmm2, xmm2, xmm1 1278 LONG $0x2259e3c4; WORD $0x02e2 // vpinsrd xmm4, xmm4, edx, 2 1279 LONG $0x2259e3c4; WORD $0x03e0 // vpinsrd xmm4, xmm4, eax, 3 1280 LONG $0xd2ebe1c5 // vpor xmm2, xmm3, xmm2 1281 LONG $0x386de3c4; WORD $0x01d4 // vinserti128 ymm2, ymm2, xmm4, 1 1282 LONG $0x456dc2c4; BYTE $0xd1 // vpsrlvd ymm2, ymm2, ymm9 1283 LONG $0xd0dbedc5 // vpand ymm2, ymm2, ymm0 1284 LONG $0x7f7ec1c4; BYTE $0x17 // vmovdqu yword [r15], ymm2 1285 LONG $0x74c38348 // add rbx, 116 1286 LONG $0x80ef8349 // sub r15, -128 1287 LONG $0xffc08349 // add r8, -1 1288 JNE LBB0_89 1289 JMP LBB0_147 1290 1291 LBB0_9: 1292 WORD $0xf983; BYTE $0x02 // cmp ecx, 2 1293 JE LBB0_141 1294 WORD $0xf983; BYTE $0x03 // cmp ecx, 3 1295 JNE LBB0_147 1296 WORD $0xfa83; BYTE $0x20 // cmp edx, 32 1297 JL LBB0_147 1298 WORD $0x8944; BYTE $0xf0 // mov eax, r14d 1299 LONG $0x60c78349 // add r15, 96 1300 QUAD $0x0000e085597de2c4; BYTE $0x00 // vpbroadcastq ymm0, qword 224[rbp] /* [rip + .LCPI0_127] */ 1301 QUAD $0x00000a008d6ffdc5 // vmovdqa ymm1, yword 2560[rbp] /* [rip + .LCPI0_126] */ 1302 QUAD $0x00000a20956ffdc5 // vmovdqa ymm2, yword 2592[rbp] /* [rip + .LCPI0_128] */ 1303 QUAD $0x00000a409d6ffdc5 // vmovdqa ymm3, yword 2624[rbp] /* [rip + .LCPI0_129] */ 1304 QUAD $0x00000a60a56ffdc5 // vmovdqa ymm4, yword 2656[rbp] /* [rip + .LCPI0_130] */ 1305 1306 LBB0_13: 1307 LONG $0x587de2c4; BYTE $0x2b // vpbroadcastd ymm5, dword [rbx] 1308 LONG $0x4555e2c4; BYTE $0xe9 // vpsrlvd ymm5, ymm5, ymm1 1309 LONG $0xe8dbd5c5 // vpand ymm5, ymm5, ymm0 1310 LONG $0x7f7ec1c4; WORD $0xa06f // vmovdqu yword [r15 - 96], ymm5 1311 WORD $0x0b8b // mov ecx, dword [rbx] 1312 WORD $0x538b; BYTE $0x04 // mov edx, dword [rbx + 4] 1313 WORD $0xd689 // mov esi, edx 1314 LONG $0x02cea40f // shld esi, ecx, 2 1315 LONG $0xe96ef9c5 // vmovd xmm5, ecx 1316 LONG $0x2251e3c4; WORD $0x01e9 // vpinsrd xmm5, xmm5, ecx, 1 1317 LONG $0x2251e3c4; WORD $0x02ee // vpinsrd xmm5, xmm5, esi, 2 1318 LONG $0x2251e3c4; WORD $0x03ea // vpinsrd xmm5, xmm5, edx, 3 1319 LONG $0xf26ef9c5 // vmovd xmm6, edx 1320 LONG $0x5879e2c4; BYTE $0xf6 // vpbroadcastd xmm6, xmm6 1321 LONG $0x3855e3c4; WORD $0x01ee // vinserti128 ymm5, ymm5, xmm6, 1 1322 LONG $0x4555e2c4; BYTE $0xea // vpsrlvd ymm5, ymm5, ymm2 1323 LONG $0xe8dbd5c5 // vpand ymm5, ymm5, ymm0 1324 LONG $0x7f7ec1c4; WORD $0xc06f // vmovdqu yword [r15 - 64], ymm5 1325 WORD $0x4b8b; BYTE $0x04 // mov ecx, dword [rbx + 4] 1326 WORD $0x538b; BYTE $0x08 // mov edx, dword [rbx + 8] 1327 WORD $0xd689 // mov esi, edx 1328 LONG $0x01cea40f // shld esi, ecx, 1 1329 LONG $0xe96ef9c5 // vmovd xmm5, ecx 1330 LONG $0x5879e2c4; BYTE $0xf5 // vpbroadcastd xmm6, xmm5 1331 LONG $0x2251e3c4; WORD $0x01ee // vpinsrd xmm5, xmm5, esi, 1 1332 LONG $0x2251e3c4; WORD $0x02ea // vpinsrd xmm5, xmm5, edx, 2 1333 LONG $0x2251e3c4; WORD $0x03ea // vpinsrd xmm5, xmm5, edx, 3 1334 LONG $0x384de3c4; WORD $0x01ed // vinserti128 ymm5, ymm6, xmm5, 1 1335 LONG $0x4555e2c4; BYTE $0xeb // vpsrlvd ymm5, ymm5, ymm3 1336 LONG $0xe8dbd5c5 // vpand ymm5, ymm5, ymm0 1337 LONG $0x7f7ec1c4; WORD $0xe06f // vmovdqu yword [r15 - 32], ymm5 1338 LONG $0x587de2c4; WORD $0x086b // vpbroadcastd ymm5, dword [rbx + 8] 1339 LONG $0x4555e2c4; BYTE $0xec // vpsrlvd ymm5, ymm5, ymm4 1340 LONG $0xe8dbd5c5 // vpand ymm5, ymm5, ymm0 1341 LONG $0x7f7ec1c4; BYTE $0x2f // vmovdqu yword [r15], ymm5 1342 LONG $0x80ef8349 // sub r15, -128 1343 LONG $0x0cc38348 // add rbx, 12 1344 LONG $0xffc08348 // add rax, -1 1345 JNE LBB0_13 1346 JMP LBB0_147 1347 1348 LBB0_56: 1349 WORD $0xf983; BYTE $0x12 // cmp ecx, 18 1350 JE LBB0_117 1351 WORD $0xf983; BYTE $0x13 // cmp ecx, 19 1352 JNE LBB0_147 1353 WORD $0xfa83; BYTE $0x20 // cmp edx, 32 1354 JL LBB0_147 1355 WORD $0x8945; BYTE $0xf0 // mov r8d, r14d 1356 LONG $0x60c78349 // add r15, 96 1357 LONG $0x48c38348 // add rbx, 72 1358 LONG $0x597de2c4; WORD $0x6845 // vpbroadcastq ymm0, qword 104[rbp] /* [rip + .LCPI0_68] */ 1359 QUAD $0x000004c08d6ffdc5 // vmovdqa ymm1, yword 1216[rbp] /* [rip + .LCPI0_67] */ 1360 QUAD $0x000004e0956ffdc5 // vmovdqa ymm2, yword 1248[rbp] /* [rip + .LCPI0_69] */ 1361 QUAD $0x000005009d6ffdc5 // vmovdqa ymm3, yword 1280[rbp] /* [rip + .LCPI0_70] */ 1362 QUAD $0x00000520a56ffdc5 // vmovdqa ymm4, yword 1312[rbp] /* [rip + .LCPI0_71] */ 1363 1364 LBB0_60: 1365 LONG $0xc84b8b44 // mov r9d, dword [rbx - 56] 1366 WORD $0x538b; BYTE $0xc4 // mov edx, dword [rbx - 60] 1367 WORD $0x8944; BYTE $0xce // mov esi, r9d 1368 LONG $0x0ed6a40f // shld esi, edx, 14 1369 WORD $0x7b8b; BYTE $0xc0 // mov edi, dword [rbx - 64] 1370 LONG $0xb8538b44 // mov r10d, dword [rbx - 72] 1371 LONG $0x01faa40f // shld edx, edi, 1 1372 WORD $0x438b; BYTE $0xbc // mov eax, dword [rbx - 68] 1373 WORD $0xc189 // mov ecx, eax 1374 LONG $0xd1a40f44; BYTE $0x0d // shld ecx, r10d, 13 1375 LONG $0xef6ef9c5 // vmovd xmm5, edi 1376 LONG $0x07c7a40f // shld edi, eax, 7 1377 LONG $0x2251e3c4; WORD $0x01ea // vpinsrd xmm5, xmm5, edx, 1 1378 LONG $0x6e79c1c4; BYTE $0xf2 // vmovd xmm6, r10d 1379 LONG $0x2251e3c4; WORD $0x02ee // vpinsrd xmm5, xmm5, esi, 2 1380 LONG $0x2249e3c4; WORD $0x01f1 // vpinsrd xmm6, xmm6, ecx, 1 1381 LONG $0x2251c3c4; WORD $0x03e9 // vpinsrd xmm5, xmm5, r9d, 3 1382 LONG $0x2249e3c4; WORD $0x02f0 // vpinsrd xmm6, xmm6, eax, 2 1383 LONG $0x2249e3c4; WORD $0x03f7 // vpinsrd xmm6, xmm6, edi, 3 1384 LONG $0x384de3c4; WORD $0x01ed // vinserti128 ymm5, ymm6, xmm5, 1 1385 LONG $0x4555e2c4; BYTE $0xe9 // vpsrlvd ymm5, ymm5, ymm1 1386 LONG $0xe8dbd5c5 // vpand ymm5, ymm5, ymm0 1387 LONG $0x7f7ec1c4; WORD $0xa06f // vmovdqu yword [r15 - 96], ymm5 1388 LONG $0xd8538b44 // mov r10d, dword [rbx - 40] 1389 LONG $0xdc4b8b44 // mov r9d, dword [rbx - 36] 1390 LONG $0xd1a40f45; BYTE $0x03 // shld r9d, r10d, 3 1391 WORD $0x538b; BYTE $0xd4 // mov edx, dword [rbx - 44] 1392 WORD $0x8944; BYTE $0xd6 // mov esi, r10d 1393 LONG $0x09d6a40f // shld esi, edx, 9 1394 WORD $0x7b8b; BYTE $0xd0 // mov edi, dword [rbx - 48] 1395 LONG $0xea6ef9c5 // vmovd xmm5, edx 1396 LONG $0x0ffaa40f // shld edx, edi, 15 1397 WORD $0x4b8b; BYTE $0xc8 // mov ecx, dword [rbx - 56] 1398 WORD $0x438b; BYTE $0xcc // mov eax, dword [rbx - 52] 1399 LONG $0x02c7a40f // shld edi, eax, 2 1400 LONG $0x18c1ac0f // shrd ecx, eax, 24 1401 LONG $0x2251e3c4; WORD $0x01ee // vpinsrd xmm5, xmm5, esi, 1 1402 LONG $0xf16ef9c5 // vmovd xmm6, ecx 1403 LONG $0x2251c3c4; WORD $0x02ea // vpinsrd xmm5, xmm5, r10d, 2 1404 LONG $0x2249e3c4; WORD $0x01f0 // vpinsrd xmm6, xmm6, eax, 1 1405 LONG $0x2251c3c4; WORD $0x03e9 // vpinsrd xmm5, xmm5, r9d, 3 1406 LONG $0x2249e3c4; WORD $0x02f7 // vpinsrd xmm6, xmm6, edi, 2 1407 LONG $0x2249e3c4; WORD $0x03f2 // vpinsrd xmm6, xmm6, edx, 3 1408 LONG $0x384de3c4; WORD $0x01ed // vinserti128 ymm5, ymm6, xmm5, 1 1409 LONG $0x4555e2c4; BYTE $0xea // vpsrlvd ymm5, ymm5, ymm2 1410 LONG $0xe8dbd5c5 // vpand ymm5, ymm5, ymm0 1411 LONG $0x7f7ec1c4; WORD $0xc06f // vmovdqu yword [r15 - 64], ymm5 1412 LONG $0xec538b44 // mov r10d, dword [rbx - 20] 1413 LONG $0xf04b8b44 // mov r9d, dword [rbx - 16] 1414 LONG $0xd1a40f45; BYTE $0x0b // shld r9d, r10d, 11 1415 WORD $0x538b; BYTE $0xe8 // mov edx, dword [rbx - 24] 1416 WORD $0x8944; BYTE $0xd6 // mov esi, r10d 1417 LONG $0xe45b8b44 // mov r11d, dword [rbx - 28] 1418 LONG $0x11d6a40f // shld esi, edx, 17 1419 WORD $0x4b8b; BYTE $0xdc // mov ecx, dword [rbx - 36] 1420 WORD $0x438b; BYTE $0xe0 // mov eax, dword [rbx - 32] 1421 LONG $0xdaa40f44; BYTE $0x04 // shld edx, r11d, 4 1422 WORD $0x8944; BYTE $0xdf // mov edi, r11d 1423 LONG $0x0ac7a40f // shld edi, eax, 10 1424 LONG $0x10c1ac0f // shrd ecx, eax, 16 1425 LONG $0xea6ef9c5 // vmovd xmm5, edx 1426 LONG $0x2251e3c4; WORD $0x01ee // vpinsrd xmm5, xmm5, esi, 1 1427 LONG $0xf16ef9c5 // vmovd xmm6, ecx 1428 LONG $0x2251c3c4; WORD $0x02ea // vpinsrd xmm5, xmm5, r10d, 2 1429 LONG $0x2249e3c4; WORD $0x01f0 // vpinsrd xmm6, xmm6, eax, 1 1430 LONG $0x2251c3c4; WORD $0x03e9 // vpinsrd xmm5, xmm5, r9d, 3 1431 LONG $0x2249e3c4; WORD $0x02f7 // vpinsrd xmm6, xmm6, edi, 2 1432 LONG $0x2249c3c4; WORD $0x03f3 // vpinsrd xmm6, xmm6, r11d, 3 1433 LONG $0x384de3c4; WORD $0x01ed // vinserti128 ymm5, ymm6, xmm5, 1 1434 LONG $0x4555e2c4; BYTE $0xeb // vpsrlvd ymm5, ymm5, ymm3 1435 LONG $0xe8dbd5c5 // vpand ymm5, ymm5, ymm0 1436 LONG $0x7f7ec1c4; WORD $0xe06f // vmovdqu yword [r15 - 32], ymm5 1437 WORD $0x8b44; BYTE $0x0b // mov r9d, dword [rbx] 1438 LONG $0xfc5b8b44 // mov r11d, dword [rbx - 4] 1439 WORD $0x8944; BYTE $0xca // mov edx, r9d 1440 LONG $0xdaa40f44; BYTE $0x06 // shld edx, r11d, 6 1441 WORD $0x4b8b; BYTE $0xf8 // mov ecx, dword [rbx - 8] 1442 WORD $0x8944; BYTE $0xdf // mov edi, r11d 1443 LONG $0x0ccfa40f // shld edi, ecx, 12 1444 LONG $0xf0538b44 // mov r10d, dword [rbx - 16] 1445 WORD $0x438b; BYTE $0xf4 // mov eax, dword [rbx - 12] 1446 WORD $0xce89 // mov esi, ecx 1447 LONG $0x12c6a40f // shld esi, eax, 18 1448 LONG $0xd0a40f44; BYTE $0x05 // shld eax, r10d, 5 1449 LONG $0x6e79c1c4; BYTE $0xea // vmovd xmm5, r10d 1450 LONG $0xf76ef9c5 // vmovd xmm6, edi 1451 LONG $0x2251e3c4; WORD $0x01e8 // vpinsrd xmm5, xmm5, eax, 1 1452 LONG $0x2249c3c4; WORD $0x01f3 // vpinsrd xmm6, xmm6, r11d, 1 1453 LONG $0x2251e3c4; WORD $0x02ee // vpinsrd xmm5, xmm5, esi, 2 1454 LONG $0x2249e3c4; WORD $0x02f2 // vpinsrd xmm6, xmm6, edx, 2 1455 LONG $0x2251e3c4; WORD $0x03e9 // vpinsrd xmm5, xmm5, ecx, 3 1456 LONG $0x2249c3c4; WORD $0x03f1 // vpinsrd xmm6, xmm6, r9d, 3 1457 LONG $0x3855e3c4; WORD $0x01ee // vinserti128 ymm5, ymm5, xmm6, 1 1458 LONG $0x4555e2c4; BYTE $0xec // vpsrlvd ymm5, ymm5, ymm4 1459 LONG $0xe8dbd5c5 // vpand ymm5, ymm5, ymm0 1460 LONG $0x7f7ec1c4; BYTE $0x2f // vmovdqu yword [r15], ymm5 1461 LONG $0x80ef8349 // sub r15, -128 1462 LONG $0x4cc38348 // add rbx, 76 1463 LONG $0xffc08349 // add r8, -1 1464 JNE LBB0_60 1465 JMP LBB0_147 1466 1467 LBB0_32: 1468 WORD $0xf983; BYTE $0x0a // cmp ecx, 10 1469 JE LBB0_129 1470 WORD $0xf983; BYTE $0x0b // cmp ecx, 11 1471 JNE LBB0_147 1472 WORD $0xfa83; BYTE $0x20 // cmp edx, 32 1473 JL LBB0_147 1474 WORD $0x8945; BYTE $0xf0 // mov r8d, r14d 1475 LONG $0x60c78349 // add r15, 96 1476 LONG $0x28c38348 // add rbx, 40 1477 QUAD $0x0000a885597de2c4; BYTE $0x00 // vpbroadcastq ymm0, qword 168[rbp] /* [rip + .LCPI0_97] */ 1478 QUAD $0x000007608d6ffdc5 // vmovdqa ymm1, yword 1888[rbp] /* [rip + .LCPI0_96] */ 1479 QUAD $0x00000780956ffdc5 // vmovdqa ymm2, yword 1920[rbp] /* [rip + .LCPI0_98] */ 1480 QUAD $0x000007a09d6ffdc5 // vmovdqa ymm3, yword 1952[rbp] /* [rip + .LCPI0_99] */ 1481 QUAD $0x000007c0a56ffdc5 // vmovdqa ymm4, yword 1984[rbp] /* [rip + .LCPI0_100] */ 1482 1483 LBB0_36: 1484 WORD $0x4b8b; BYTE $0xe0 // mov ecx, dword [rbx - 32] 1485 WORD $0x538b; BYTE $0xd8 // mov edx, dword [rbx - 40] 1486 WORD $0x738b; BYTE $0xdc // mov esi, dword [rbx - 36] 1487 WORD $0xcf89 // mov edi, ecx 1488 LONG $0x09f7a40f // shld edi, esi, 9 1489 WORD $0xf089 // mov eax, esi 1490 LONG $0x0ad0a40f // shld eax, edx, 10 1491 LONG $0xee6ef9c5 // vmovd xmm5, esi 1492 LONG $0x2251e3c4; WORD $0x01ef // vpinsrd xmm5, xmm5, edi, 1 1493 LONG $0x2251e3c4; WORD $0x02e9 // vpinsrd xmm5, xmm5, ecx, 2 1494 LONG $0x2251e3c4; WORD $0x03e9 // vpinsrd xmm5, xmm5, ecx, 3 1495 LONG $0xf26ef9c5 // vmovd xmm6, edx 1496 LONG $0x2249e3c4; WORD $0x01f2 // vpinsrd xmm6, xmm6, edx, 1 1497 LONG $0x2249e3c4; WORD $0x02f0 // vpinsrd xmm6, xmm6, eax, 2 1498 LONG $0x2249e3c4; WORD $0x03f6 // vpinsrd xmm6, xmm6, esi, 3 1499 LONG $0x384de3c4; WORD $0x01ed // vinserti128 ymm5, ymm6, xmm5, 1 1500 LONG $0x4555e2c4; BYTE $0xe9 // vpsrlvd ymm5, ymm5, ymm1 1501 LONG $0xe8dbd5c5 // vpand ymm5, ymm5, ymm0 1502 LONG $0x7f7ec1c4; WORD $0xa06f // vmovdqu yword [r15 - 96], ymm5 1503 WORD $0x438b; BYTE $0xec // mov eax, dword [rbx - 20] 1504 WORD $0x4b8b; BYTE $0xe8 // mov ecx, dword [rbx - 24] 1505 WORD $0xc289 // mov edx, eax 1506 LONG $0x06caa40f // shld edx, ecx, 6 1507 WORD $0x738b; BYTE $0xe0 // mov esi, dword [rbx - 32] 1508 WORD $0x7b8b; BYTE $0xe4 // mov edi, dword [rbx - 28] 1509 LONG $0xe96ef9c5 // vmovd xmm5, ecx 1510 LONG $0x2251e3c4; WORD $0x01e9 // vpinsrd xmm5, xmm5, ecx, 1 1511 LONG $0x07f9a40f // shld ecx, edi, 7 1512 LONG $0x18feac0f // shrd esi, edi, 24 1513 LONG $0x2251e3c4; WORD $0x02ea // vpinsrd xmm5, xmm5, edx, 2 1514 LONG $0x2251e3c4; WORD $0x03e8 // vpinsrd xmm5, xmm5, eax, 3 1515 LONG $0xf66ef9c5 // vmovd xmm6, esi 1516 LONG $0x2249e3c4; WORD $0x01f7 // vpinsrd xmm6, xmm6, edi, 1 1517 LONG $0x2249e3c4; WORD $0x02f7 // vpinsrd xmm6, xmm6, edi, 2 1518 LONG $0x2249e3c4; WORD $0x03f1 // vpinsrd xmm6, xmm6, ecx, 3 1519 LONG $0x384de3c4; WORD $0x01ed // vinserti128 ymm5, ymm6, xmm5, 1 1520 LONG $0x4555e2c4; BYTE $0xea // vpsrlvd ymm5, ymm5, ymm2 1521 LONG $0xe8dbd5c5 // vpand ymm5, ymm5, ymm0 1522 LONG $0x7f7ec1c4; WORD $0xc06f // vmovdqu yword [r15 - 64], ymm5 1523 WORD $0x438b; BYTE $0xf4 // mov eax, dword [rbx - 12] 1524 WORD $0x4b8b; BYTE $0xf8 // mov ecx, dword [rbx - 8] 1525 LONG $0x03c1a40f // shld ecx, eax, 3 1526 LONG $0xec4b8b44 // mov r9d, dword [rbx - 20] 1527 WORD $0x738b; BYTE $0xf0 // mov esi, dword [rbx - 16] 1528 WORD $0xc789 // mov edi, eax 1529 LONG $0x04f7a40f // shld edi, esi, 4 1530 WORD $0xf289 // mov edx, esi 1531 LONG $0xcaa40f44; BYTE $0x05 // shld edx, r9d, 5 1532 LONG $0xef6ef9c5 // vmovd xmm5, edi 1533 LONG $0x2251e3c4; WORD $0x01e8 // vpinsrd xmm5, xmm5, eax, 1 1534 LONG $0x2251e3c4; WORD $0x02e8 // vpinsrd xmm5, xmm5, eax, 2 1535 LONG $0x2251e3c4; WORD $0x03e9 // vpinsrd xmm5, xmm5, ecx, 3 1536 LONG $0x6e79c1c4; BYTE $0xf1 // vmovd xmm6, r9d 1537 LONG $0x2249e3c4; WORD $0x01f2 // vpinsrd xmm6, xmm6, edx, 1 1538 LONG $0x2249e3c4; WORD $0x02f6 // vpinsrd xmm6, xmm6, esi, 2 1539 LONG $0x2249e3c4; WORD $0x03f6 // vpinsrd xmm6, xmm6, esi, 3 1540 LONG $0x384de3c4; WORD $0x01ed // vinserti128 ymm5, ymm6, xmm5, 1 1541 LONG $0x4555e2c4; BYTE $0xeb // vpsrlvd ymm5, ymm5, ymm3 1542 LONG $0xe8dbd5c5 // vpand ymm5, ymm5, ymm0 1543 LONG $0x7f7ec1c4; WORD $0xe06f // vmovdqu yword [r15 - 32], ymm5 1544 WORD $0x038b // mov eax, dword [rbx] 1545 WORD $0x4b8b; BYTE $0xf8 // mov ecx, dword [rbx - 8] 1546 WORD $0x538b; BYTE $0xfc // mov edx, dword [rbx - 4] 1547 WORD $0xc689 // mov esi, eax 1548 LONG $0x01d6a40f // shld esi, edx, 1 1549 WORD $0xd789 // mov edi, edx 1550 LONG $0x02cfa40f // shld edi, ecx, 2 1551 LONG $0xea6ef9c5 // vmovd xmm5, edx 1552 LONG $0x2251e3c4; WORD $0x01ee // vpinsrd xmm5, xmm5, esi, 1 1553 LONG $0x2251e3c4; WORD $0x02e8 // vpinsrd xmm5, xmm5, eax, 2 1554 LONG $0x2251e3c4; WORD $0x03e8 // vpinsrd xmm5, xmm5, eax, 3 1555 LONG $0xf16ef9c5 // vmovd xmm6, ecx 1556 LONG $0x2249e3c4; WORD $0x01f1 // vpinsrd xmm6, xmm6, ecx, 1 1557 LONG $0x2249e3c4; WORD $0x02f7 // vpinsrd xmm6, xmm6, edi, 2 1558 LONG $0x2249e3c4; WORD $0x03f2 // vpinsrd xmm6, xmm6, edx, 3 1559 LONG $0x384de3c4; WORD $0x01ed // vinserti128 ymm5, ymm6, xmm5, 1 1560 LONG $0x4555e2c4; BYTE $0xec // vpsrlvd ymm5, ymm5, ymm4 1561 LONG $0xe8dbd5c5 // vpand ymm5, ymm5, ymm0 1562 LONG $0x7f7ec1c4; BYTE $0x2f // vmovdqu yword [r15], ymm5 1563 LONG $0x80ef8349 // sub r15, -128 1564 LONG $0x2cc38348 // add rbx, 44 1565 LONG $0xffc08349 // add r8, -1 1566 JNE LBB0_36 1567 JMP LBB0_147 1568 1569 LBB0_79: 1570 WORD $0xf983; BYTE $0x1a // cmp ecx, 26 1571 JE LBB0_105 1572 WORD $0xf983; BYTE $0x1b // cmp ecx, 27 1573 JNE LBB0_147 1574 WORD $0xfa83; BYTE $0x20 // cmp edx, 32 1575 JL LBB0_147 1576 WORD $0x8945; BYTE $0xf0 // mov r8d, r14d 1577 LONG $0x60c78349 // add r15, 96 1578 LONG $0x68c38348 // add rbx, 104 1579 LONG $0x597de2c4; WORD $0x2045 // vpbroadcastq ymm0, qword 32[rbp] /* [rip + .LCPI0_25] */ 1580 QUAD $0x000002408d6f7dc5 // vmovdqa ymm9, yword 576[rbp] /* [rip + .LCPI0_24] */ 1581 QUAD $0x00000ba0956f79c5 // vmovdqa xmm10, oword 2976[rbp] /* [rip + .LCPI0_26] */ 1582 QUAD $0x00000bb09d6f79c5 // vmovdqa xmm11, oword 2992[rbp] /* [rip + .LCPI0_27] */ 1583 QUAD $0x00000260a56ffdc5 // vmovdqa ymm4, yword 608[rbp] /* [rip + .LCPI0_28] */ 1584 QUAD $0x00000bc0ad6ff9c5 // vmovdqa xmm5, oword 3008[rbp] /* [rip + .LCPI0_29] */ 1585 QUAD $0x00000bd0b56ff9c5 // vmovdqa xmm6, oword 3024[rbp] /* [rip + .LCPI0_30] */ 1586 QUAD $0x00000280bd6ffdc5 // vmovdqa ymm7, yword 640[rbp] /* [rip + .LCPI0_31] */ 1587 QUAD $0x000002a0856f7dc5 // vmovdqa ymm8, yword 672[rbp] /* [rip + .LCPI0_32] */ 1588 1589 LBB0_83: 1590 LONG $0xac538b44 // mov r10d, dword [rbx - 84] 1591 LONG $0xb04b8b44 // mov r9d, dword [rbx - 80] 1592 LONG $0xd1a40f45; BYTE $0x03 // shld r9d, r10d, 3 1593 WORD $0x738b; BYTE $0xa8 // mov esi, dword [rbx - 88] 1594 WORD $0x8944; BYTE $0xd7 // mov edi, r10d 1595 LONG $0x19f7a40f // shld edi, esi, 25 1596 WORD $0x438b; BYTE $0xa4 // mov eax, dword [rbx - 92] 1597 LONG $0x14c6a40f // shld esi, eax, 20 1598 WORD $0x538b; BYTE $0xa0 // mov edx, dword [rbx - 96] 1599 LONG $0x0fd0a40f // shld eax, edx, 15 1600 LONG $0x985b8b44 // mov r11d, dword [rbx - 104] 1601 WORD $0x4b8b; BYTE $0x9c // mov ecx, dword [rbx - 100] 1602 LONG $0x0acaa40f // shld edx, ecx, 10 1603 LONG $0xd9a40f44; BYTE $0x05 // shld ecx, r11d, 5 1604 LONG $0x6e79c1c4; BYTE $0xcb // vmovd xmm1, r11d 1605 LONG $0xd66ef9c5 // vmovd xmm2, esi 1606 LONG $0x2271e3c4; WORD $0x01c9 // vpinsrd xmm1, xmm1, ecx, 1 1607 LONG $0x2269e3c4; WORD $0x01d7 // vpinsrd xmm2, xmm2, edi, 1 1608 LONG $0x2271e3c4; WORD $0x02ca // vpinsrd xmm1, xmm1, edx, 2 1609 LONG $0x2269c3c4; WORD $0x02d2 // vpinsrd xmm2, xmm2, r10d, 2 1610 LONG $0x2271e3c4; WORD $0x03c8 // vpinsrd xmm1, xmm1, eax, 3 1611 LONG $0x2269c3c4; WORD $0x03d1 // vpinsrd xmm2, xmm2, r9d, 3 1612 LONG $0x3875e3c4; WORD $0x01ca // vinserti128 ymm1, ymm1, xmm2, 1 1613 LONG $0x4575c2c4; BYTE $0xc9 // vpsrlvd ymm1, ymm1, ymm9 1614 LONG $0xc8dbf5c5 // vpand ymm1, ymm1, ymm0 1615 LONG $0x7f7ec1c4; WORD $0xa04f // vmovdqu yword [r15 - 96], ymm1 1616 WORD $0x438b; BYTE $0xc8 // mov eax, dword [rbx - 56] 1617 WORD $0x4b8b; BYTE $0xcc // mov ecx, dword [rbx - 52] 1618 LONG $0x0bc1a40f // shld ecx, eax, 11 1619 WORD $0x538b; BYTE $0xc4 // mov edx, dword [rbx - 60] 1620 WORD $0x738b; BYTE $0xc0 // mov esi, dword [rbx - 64] 1621 LONG $0x06d0a40f // shld eax, edx, 6 1622 LONG $0x01f2a40f // shld edx, esi, 1 1623 LONG $0x4b6ffac5; BYTE $0xb0 // vmovdqu xmm1, oword [rbx - 80] 1624 LONG $0x4571c2c4; BYTE $0xd2 // vpsrlvd xmm2, xmm1, xmm10 1625 LONG $0xc970f9c5; BYTE $0xf9 // vpshufd xmm1, xmm1, 249 1626 LONG $0xde6ef9c5 // vmovd xmm3, esi 1627 LONG $0x2271e3c4; WORD $0x03ce // vpinsrd xmm1, xmm1, esi, 3 1628 LONG $0x2261e3c4; WORD $0x01da // vpinsrd xmm3, xmm3, edx, 1 1629 LONG $0x2261e3c4; WORD $0x02d8 // vpinsrd xmm3, xmm3, eax, 2 1630 LONG $0x4771c2c4; BYTE $0xcb // vpsllvd xmm1, xmm1, xmm11 1631 LONG $0x2261e3c4; WORD $0x03d9 // vpinsrd xmm3, xmm3, ecx, 3 1632 LONG $0xc9ebe9c5 // vpor xmm1, xmm2, xmm1 1633 LONG $0x3875e3c4; WORD $0x01cb // vinserti128 ymm1, ymm1, xmm3, 1 1634 LONG $0x4575e2c4; BYTE $0xcc // vpsrlvd ymm1, ymm1, ymm4 1635 LONG $0xc8dbf5c5 // vpand ymm1, ymm1, ymm0 1636 LONG $0x7f7ec1c4; WORD $0xc04f // vmovdqu yword [r15 - 64], ymm1 1637 WORD $0x438b; BYTE $0xe4 // mov eax, dword [rbx - 28] 1638 LONG $0xe84b8b44 // mov r9d, dword [rbx - 24] 1639 LONG $0xc1a40f41; BYTE $0x13 // shld r9d, eax, 19 1640 WORD $0x538b; BYTE $0xe0 // mov edx, dword [rbx - 32] 1641 LONG $0x0ed0a40f // shld eax, edx, 14 1642 WORD $0x738b; BYTE $0xdc // mov esi, dword [rbx - 36] 1643 LONG $0x09f2a40f // shld edx, esi, 9 1644 LONG $0xd4538b44 // mov r10d, dword [rbx - 44] 1645 WORD $0x7b8b; BYTE $0xd8 // mov edi, dword [rbx - 40] 1646 LONG $0x04fea40f // shld esi, edi, 4 1647 WORD $0xf989 // mov ecx, edi 1648 LONG $0xd1a40f44; BYTE $0x1a // shld ecx, r10d, 26 1649 LONG $0x4b7efac5; BYTE $0xcc // vmovq xmm1, qword [rbx - 52] 1650 LONG $0x4571e2c4; BYTE $0xd5 // vpsrlvd xmm2, xmm1, xmm5 1651 LONG $0xc970f9c5; BYTE $0xe5 // vpshufd xmm1, xmm1, 229 1652 LONG $0x2271c3c4; WORD $0x01ca // vpinsrd xmm1, xmm1, r10d, 1 1653 LONG $0x4771e2c4; BYTE $0xce // vpsllvd xmm1, xmm1, xmm6 1654 LONG $0xde6ef9c5 // vmovd xmm3, esi 1655 LONG $0x2261e3c4; WORD $0x01da // vpinsrd xmm3, xmm3, edx, 1 1656 LONG $0xc9ebe9c5 // vpor xmm1, xmm2, xmm1 1657 LONG $0x2261e3c4; WORD $0x02d0 // vpinsrd xmm2, xmm3, eax, 2 1658 LONG $0x2269c3c4; WORD $0x03d1 // vpinsrd xmm2, xmm2, r9d, 3 1659 LONG $0x2271e3c4; WORD $0x02c9 // vpinsrd xmm1, xmm1, ecx, 2 1660 LONG $0x2271e3c4; WORD $0x03cf // vpinsrd xmm1, xmm1, edi, 3 1661 LONG $0x3875e3c4; WORD $0x01ca // vinserti128 ymm1, ymm1, xmm2, 1 1662 LONG $0x4575e2c4; BYTE $0xcf // vpsrlvd ymm1, ymm1, ymm7 1663 LONG $0xc8dbf5c5 // vpand ymm1, ymm1, ymm0 1664 LONG $0x7f7ec1c4; WORD $0xe04f // vmovdqu yword [r15 - 32], ymm1 1665 WORD $0x8b44; BYTE $0x0b // mov r9d, dword [rbx] 1666 LONG $0xfc5b8b44 // mov r11d, dword [rbx - 4] 1667 WORD $0x8945; BYTE $0xca // mov r10d, r9d 1668 LONG $0xdaa40f45; BYTE $0x16 // shld r10d, r11d, 22 1669 WORD $0x738b; BYTE $0xf8 // mov esi, dword [rbx - 8] 1670 LONG $0xf3a40f41; BYTE $0x11 // shld r11d, esi, 17 1671 WORD $0x7b8b; BYTE $0xf4 // mov edi, dword [rbx - 12] 1672 WORD $0x438b; BYTE $0xf0 // mov eax, dword [rbx - 16] 1673 LONG $0x0cfea40f // shld esi, edi, 12 1674 WORD $0x538b; BYTE $0xe8 // mov edx, dword [rbx - 24] 1675 WORD $0x4b8b; BYTE $0xec // mov ecx, dword [rbx - 20] 1676 LONG $0x07c7a40f // shld edi, eax, 7 1677 LONG $0x08caac0f // shrd edx, ecx, 8 1678 LONG $0x02c8a40f // shld eax, ecx, 2 1679 LONG $0xce6ef9c5 // vmovd xmm1, esi 1680 LONG $0x2271c3c4; WORD $0x01cb // vpinsrd xmm1, xmm1, r11d, 1 1681 LONG $0xd26ef9c5 // vmovd xmm2, edx 1682 LONG $0x2271c3c4; WORD $0x02ca // vpinsrd xmm1, xmm1, r10d, 2 1683 LONG $0x2269e3c4; WORD $0x01d1 // vpinsrd xmm2, xmm2, ecx, 1 1684 LONG $0x2271c3c4; WORD $0x03c9 // vpinsrd xmm1, xmm1, r9d, 3 1685 LONG $0x2269e3c4; WORD $0x02d0 // vpinsrd xmm2, xmm2, eax, 2 1686 LONG $0x2269e3c4; WORD $0x03d7 // vpinsrd xmm2, xmm2, edi, 3 1687 LONG $0x386de3c4; WORD $0x01c9 // vinserti128 ymm1, ymm2, xmm1, 1 1688 LONG $0x4575c2c4; BYTE $0xc8 // vpsrlvd ymm1, ymm1, ymm8 1689 LONG $0xc8dbf5c5 // vpand ymm1, ymm1, ymm0 1690 LONG $0x7f7ec1c4; BYTE $0x0f // vmovdqu yword [r15], ymm1 1691 LONG $0x80ef8349 // sub r15, -128 1692 LONG $0x6cc38348 // add rbx, 108 1693 LONG $0xffc08349 // add r8, -1 1694 JNE LBB0_83 1695 JMP LBB0_147 1696 1697 LBB0_20: 1698 WORD $0xf983; BYTE $0x06 // cmp ecx, 6 1699 JE LBB0_135 1700 WORD $0xf983; BYTE $0x07 // cmp ecx, 7 1701 JNE LBB0_147 1702 WORD $0xfa83; BYTE $0x20 // cmp edx, 32 1703 JL LBB0_147 1704 WORD $0x8945; BYTE $0xf0 // mov r8d, r14d 1705 LONG $0x60c78349 // add r15, 96 1706 LONG $0x18c38348 // add rbx, 24 1707 QUAD $0x0000c085597de2c4; BYTE $0x00 // vpbroadcastq ymm0, qword 192[rbp] /* [rip + .LCPI0_112] */ 1708 QUAD $0x000008a08d6ffdc5 // vmovdqa ymm1, yword 2208[rbp] /* [rip + .LCPI0_111] */ 1709 QUAD $0x000008c0956ffdc5 // vmovdqa ymm2, yword 2240[rbp] /* [rip + .LCPI0_113] */ 1710 QUAD $0x000008e09d6ffdc5 // vmovdqa ymm3, yword 2272[rbp] /* [rip + .LCPI0_114] */ 1711 QUAD $0x00000900a56ffdc5 // vmovdqa ymm4, yword 2304[rbp] /* [rip + .LCPI0_115] */ 1712 1713 LBB0_24: 1714 WORD $0x4b8b; BYTE $0xe8 // mov ecx, dword [rbx - 24] 1715 WORD $0x538b; BYTE $0xec // mov edx, dword [rbx - 20] 1716 WORD $0xd689 // mov esi, edx 1717 LONG $0x04cea40f // shld esi, ecx, 4 1718 LONG $0xe96ef9c5 // vmovd xmm5, ecx 1719 LONG $0xf66ef9c5 // vmovd xmm6, esi 1720 LONG $0x2249e3c4; WORD $0x01f2 // vpinsrd xmm6, xmm6, edx, 1 1721 LONG $0x2249e3c4; WORD $0x02f2 // vpinsrd xmm6, xmm6, edx, 2 1722 LONG $0x2249e3c4; WORD $0x03f2 // vpinsrd xmm6, xmm6, edx, 3 1723 LONG $0x5879e2c4; BYTE $0xed // vpbroadcastd xmm5, xmm5 1724 LONG $0x3855e3c4; WORD $0x01ee // vinserti128 ymm5, ymm5, xmm6, 1 1725 LONG $0x4555e2c4; BYTE $0xe9 // vpsrlvd ymm5, ymm5, ymm1 1726 LONG $0xe8dbd5c5 // vpand ymm5, ymm5, ymm0 1727 LONG $0x7f7ec1c4; WORD $0xa06f // vmovdqu yword [r15 - 96], ymm5 1728 WORD $0x4b8b; BYTE $0xf4 // mov ecx, dword [rbx - 12] 1729 WORD $0x538b; BYTE $0xec // mov edx, dword [rbx - 20] 1730 WORD $0x738b; BYTE $0xf0 // mov esi, dword [rbx - 16] 1731 WORD $0xcf89 // mov edi, ecx 1732 LONG $0x05f7a40f // shld edi, esi, 5 1733 WORD $0xf089 // mov eax, esi 1734 LONG $0x01d0a40f // shld eax, edx, 1 1735 LONG $0xee6ef9c5 // vmovd xmm5, esi 1736 LONG $0x2251e3c4; WORD $0x01ef // vpinsrd xmm5, xmm5, edi, 1 1737 LONG $0x2251e3c4; WORD $0x02e9 // vpinsrd xmm5, xmm5, ecx, 2 1738 LONG $0x2251e3c4; WORD $0x03e9 // vpinsrd xmm5, xmm5, ecx, 3 1739 LONG $0xf26ef9c5 // vmovd xmm6, edx 1740 LONG $0x2249e3c4; WORD $0x01f0 // vpinsrd xmm6, xmm6, eax, 1 1741 LONG $0x2249e3c4; WORD $0x02f6 // vpinsrd xmm6, xmm6, esi, 2 1742 LONG $0x2249e3c4; WORD $0x03f6 // vpinsrd xmm6, xmm6, esi, 3 1743 LONG $0x384de3c4; WORD $0x01ed // vinserti128 ymm5, ymm6, xmm5, 1 1744 LONG $0x4555e2c4; BYTE $0xea // vpsrlvd ymm5, ymm5, ymm2 1745 LONG $0xe8dbd5c5 // vpand ymm5, ymm5, ymm0 1746 LONG $0x7f7ec1c4; WORD $0xc06f // vmovdqu yword [r15 - 64], ymm5 1747 WORD $0x438b; BYTE $0xfc // mov eax, dword [rbx - 4] 1748 WORD $0x4b8b; BYTE $0xf4 // mov ecx, dword [rbx - 12] 1749 WORD $0x538b; BYTE $0xf8 // mov edx, dword [rbx - 8] 1750 WORD $0xc689 // mov esi, eax 1751 LONG $0x06d6a40f // shld esi, edx, 6 1752 WORD $0xd789 // mov edi, edx 1753 LONG $0x02cfa40f // shld edi, ecx, 2 1754 LONG $0xea6ef9c5 // vmovd xmm5, edx 1755 LONG $0x2251e3c4; WORD $0x01ea // vpinsrd xmm5, xmm5, edx, 1 1756 LONG $0x2251e3c4; WORD $0x02ee // vpinsrd xmm5, xmm5, esi, 2 1757 LONG $0x2251e3c4; WORD $0x03e8 // vpinsrd xmm5, xmm5, eax, 3 1758 LONG $0xf16ef9c5 // vmovd xmm6, ecx 1759 LONG $0x2249e3c4; WORD $0x01f1 // vpinsrd xmm6, xmm6, ecx, 1 1760 LONG $0x2249e3c4; WORD $0x02f7 // vpinsrd xmm6, xmm6, edi, 2 1761 LONG $0x2249e3c4; WORD $0x03f2 // vpinsrd xmm6, xmm6, edx, 3 1762 LONG $0x384de3c4; WORD $0x01ed // vinserti128 ymm5, ymm6, xmm5, 1 1763 LONG $0x4555e2c4; BYTE $0xeb // vpsrlvd ymm5, ymm5, ymm3 1764 LONG $0xe8dbd5c5 // vpand ymm5, ymm5, ymm0 1765 LONG $0x7f7ec1c4; WORD $0xe06f // vmovdqu yword [r15 - 32], ymm5 1766 WORD $0x438b; BYTE $0xfc // mov eax, dword [rbx - 4] 1767 WORD $0x0b8b // mov ecx, dword [rbx] 1768 WORD $0xca89 // mov edx, ecx 1769 LONG $0x03c2a40f // shld edx, eax, 3 1770 LONG $0xe96ef9c5 // vmovd xmm5, ecx 1771 LONG $0xf06ef9c5 // vmovd xmm6, eax 1772 LONG $0x2249e3c4; WORD $0x01f0 // vpinsrd xmm6, xmm6, eax, 1 1773 LONG $0x2249e3c4; WORD $0x02f0 // vpinsrd xmm6, xmm6, eax, 2 1774 LONG $0x2249e3c4; WORD $0x03f2 // vpinsrd xmm6, xmm6, edx, 3 1775 LONG $0x5879e2c4; BYTE $0xed // vpbroadcastd xmm5, xmm5 1776 LONG $0x384de3c4; WORD $0x01ed // vinserti128 ymm5, ymm6, xmm5, 1 1777 LONG $0x4555e2c4; BYTE $0xec // vpsrlvd ymm5, ymm5, ymm4 1778 LONG $0xe8dbd5c5 // vpand ymm5, ymm5, ymm0 1779 LONG $0x7f7ec1c4; BYTE $0x2f // vmovdqu yword [r15], ymm5 1780 LONG $0x80ef8349 // sub r15, -128 1781 LONG $0x1cc38348 // add rbx, 28 1782 LONG $0xffc08349 // add r8, -1 1783 JNE LBB0_24 1784 JMP LBB0_147 1785 1786 LBB0_67: 1787 WORD $0xf983; BYTE $0x16 // cmp ecx, 22 1788 JE LBB0_111 1789 WORD $0xf983; BYTE $0x17 // cmp ecx, 23 1790 JNE LBB0_147 1791 WORD $0xfa83; BYTE $0x20 // cmp edx, 32 1792 JL LBB0_147 1793 WORD $0x8945; BYTE $0xf0 // mov r8d, r14d 1794 LONG $0x60c78349 // add r15, 96 1795 LONG $0x58c38348 // add rbx, 88 1796 QUAD $0x00000360856f7dc5 // vmovdqa ymm8, yword 864[rbp] /* [rip + .LCPI0_48] */ 1797 LONG $0x597de2c4; WORD $0x484d // vpbroadcastq ymm1, qword 72[rbp] /* [rip + .LCPI0_49] */ 1798 QUAD $0x00000c30956ff9c5 // vmovdqa xmm2, oword 3120[rbp] /* [rip + .LCPI0_50] */ 1799 QUAD $0x00000c409d6ff9c5 // vmovdqa xmm3, oword 3136[rbp] /* [rip + .LCPI0_51] */ 1800 QUAD $0x00000380a56ffdc5 // vmovdqa ymm4, yword 896[rbp] /* [rip + .LCPI0_52] */ 1801 QUAD $0x000003a0ad6ffdc5 // vmovdqa ymm5, yword 928[rbp] /* [rip + .LCPI0_53] */ 1802 QUAD $0x000003c0b56ffdc5 // vmovdqa ymm6, yword 960[rbp] /* [rip + .LCPI0_54] */ 1803 1804 LBB0_71: 1805 LONG $0xbc4b8b44 // mov r9d, dword [rbx - 68] 1806 WORD $0x538b; BYTE $0xb8 // mov edx, dword [rbx - 72] 1807 WORD $0x8945; BYTE $0xcb // mov r11d, r9d 1808 LONG $0xd3a40f41; BYTE $0x16 // shld r11d, edx, 22 1809 WORD $0x7b8b; BYTE $0xb4 // mov edi, dword [rbx - 76] 1810 LONG $0x0dfaa40f // shld edx, edi, 13 1811 WORD $0x738b; BYTE $0xb0 // mov esi, dword [rbx - 80] 1812 LONG $0x04f7a40f // shld edi, esi, 4 1813 LONG $0xa8538b44 // mov r10d, dword [rbx - 88] 1814 WORD $0x4b8b; BYTE $0xac // mov ecx, dword [rbx - 84] 1815 WORD $0xf089 // mov eax, esi 1816 LONG $0x12c8a40f // shld eax, ecx, 18 1817 LONG $0xd1a40f44; BYTE $0x09 // shld ecx, r10d, 9 1818 LONG $0x6e79c1c4; BYTE $0xfa // vmovd xmm7, r10d 1819 LONG $0xc76ef9c5 // vmovd xmm0, edi 1820 LONG $0x2241e3c4; WORD $0x01f9 // vpinsrd xmm7, xmm7, ecx, 1 1821 LONG $0x2279e3c4; WORD $0x01c2 // vpinsrd xmm0, xmm0, edx, 1 1822 LONG $0x2241e3c4; WORD $0x02f8 // vpinsrd xmm7, xmm7, eax, 2 1823 LONG $0x2279c3c4; WORD $0x02c3 // vpinsrd xmm0, xmm0, r11d, 2 1824 LONG $0x2241e3c4; WORD $0x03fe // vpinsrd xmm7, xmm7, esi, 3 1825 LONG $0x2279c3c4; WORD $0x03c1 // vpinsrd xmm0, xmm0, r9d, 3 1826 LONG $0x3845e3c4; WORD $0x01c0 // vinserti128 ymm0, ymm7, xmm0, 1 1827 LONG $0x457dc2c4; BYTE $0xc0 // vpsrlvd ymm0, ymm0, ymm8 1828 LONG $0xc1dbfdc5 // vpand ymm0, ymm0, ymm1 1829 LONG $0x7f7ec1c4; WORD $0xa047 // vmovdqu yword [r15 - 96], ymm0 1830 WORD $0x438b; BYTE $0xd0 // mov eax, dword [rbx - 48] 1831 LONG $0xd44b8b44 // mov r9d, dword [rbx - 44] 1832 LONG $0xc1a40f41; BYTE $0x07 // shld r9d, eax, 7 1833 WORD $0x538b; BYTE $0xcc // mov edx, dword [rbx - 52] 1834 WORD $0xc689 // mov esi, eax 1835 LONG $0x15d6a40f // shld esi, edx, 21 1836 WORD $0x7b8b; BYTE $0xc4 // mov edi, dword [rbx - 60] 1837 WORD $0x4b8b; BYTE $0xc8 // mov ecx, dword [rbx - 56] 1838 LONG $0x0ccaa40f // shld edx, ecx, 12 1839 LONG $0x03f9a40f // shld ecx, edi, 3 1840 LONG $0x437efac5; BYTE $0xbc // vmovq xmm0, qword [rbx - 68] 1841 LONG $0x4579e2c4; BYTE $0xfa // vpsrlvd xmm7, xmm0, xmm2 1842 LONG $0xc070f9c5; BYTE $0xe5 // vpshufd xmm0, xmm0, 229 1843 LONG $0x2279e3c4; WORD $0x01c7 // vpinsrd xmm0, xmm0, edi, 1 1844 LONG $0x4779e2c4; BYTE $0xc3 // vpsllvd xmm0, xmm0, xmm3 1845 LONG $0xc0ebc1c5 // vpor xmm0, xmm7, xmm0 1846 LONG $0xfa6ef9c5 // vmovd xmm7, edx 1847 LONG $0x2241e3c4; WORD $0x01fe // vpinsrd xmm7, xmm7, esi, 1 1848 LONG $0x2241e3c4; WORD $0x02f8 // vpinsrd xmm7, xmm7, eax, 2 1849 LONG $0x2241c3c4; WORD $0x03f9 // vpinsrd xmm7, xmm7, r9d, 3 1850 LONG $0x2279e3c4; WORD $0x02c7 // vpinsrd xmm0, xmm0, edi, 2 1851 LONG $0x2279e3c4; WORD $0x03c1 // vpinsrd xmm0, xmm0, ecx, 3 1852 LONG $0x387de3c4; WORD $0x01c7 // vinserti128 ymm0, ymm0, xmm7, 1 1853 LONG $0x457de2c4; BYTE $0xc4 // vpsrlvd ymm0, ymm0, ymm4 1854 LONG $0xc1dbfdc5 // vpand ymm0, ymm0, ymm1 1855 LONG $0x7f7ec1c4; WORD $0xc047 // vmovdqu yword [r15 - 64], ymm0 1856 LONG $0xe85b8b44 // mov r11d, dword [rbx - 24] 1857 LONG $0xec4b8b44 // mov r9d, dword [rbx - 20] 1858 LONG $0xd9a40f45; BYTE $0x0f // shld r9d, r11d, 15 1859 LONG $0xe4538b44 // mov r10d, dword [rbx - 28] 1860 LONG $0xd3a40f45; BYTE $0x06 // shld r11d, r10d, 6 1861 WORD $0x738b; BYTE $0xe0 // mov esi, dword [rbx - 32] 1862 WORD $0x8944; BYTE $0xd7 // mov edi, r10d 1863 WORD $0x4b8b; BYTE $0xdc // mov ecx, dword [rbx - 36] 1864 LONG $0x14f7a40f // shld edi, esi, 20 1865 WORD $0x538b; BYTE $0xd4 // mov edx, dword [rbx - 44] 1866 WORD $0x438b; BYTE $0xd8 // mov eax, dword [rbx - 40] 1867 LONG $0x0bcea40f // shld esi, ecx, 11 1868 LONG $0x10c2ac0f // shrd edx, eax, 16 1869 LONG $0x02c1a40f // shld ecx, eax, 2 1870 LONG $0xc76ef9c5 // vmovd xmm0, edi 1871 LONG $0x2279c3c4; WORD $0x01c2 // vpinsrd xmm0, xmm0, r10d, 1 1872 LONG $0xfa6ef9c5 // vmovd xmm7, edx 1873 LONG $0x2279c3c4; WORD $0x02c3 // vpinsrd xmm0, xmm0, r11d, 2 1874 LONG $0x2241e3c4; WORD $0x01f8 // vpinsrd xmm7, xmm7, eax, 1 1875 LONG $0x2279c3c4; WORD $0x03c1 // vpinsrd xmm0, xmm0, r9d, 3 1876 LONG $0x2241e3c4; WORD $0x02f9 // vpinsrd xmm7, xmm7, ecx, 2 1877 LONG $0x2241e3c4; WORD $0x03fe // vpinsrd xmm7, xmm7, esi, 3 1878 LONG $0x3845e3c4; WORD $0x01c0 // vinserti128 ymm0, ymm7, xmm0, 1 1879 LONG $0x457de2c4; BYTE $0xc5 // vpsrlvd ymm0, ymm0, ymm5 1880 LONG $0xc1dbfdc5 // vpand ymm0, ymm0, ymm1 1881 LONG $0x7f7ec1c4; WORD $0xe047 // vmovdqu yword [r15 - 32], ymm0 1882 WORD $0x8b44; BYTE $0x0b // mov r9d, dword [rbx] 1883 WORD $0x4b8b; BYTE $0xfc // mov ecx, dword [rbx - 4] 1884 WORD $0x8944; BYTE $0xca // mov edx, r9d 1885 LONG $0x0ecaa40f // shld edx, ecx, 14 1886 WORD $0x738b; BYTE $0xf8 // mov esi, dword [rbx - 8] 1887 LONG $0x05f1a40f // shld ecx, esi, 5 1888 WORD $0x7b8b; BYTE $0xf4 // mov edi, dword [rbx - 12] 1889 LONG $0xc66ef9c5 // vmovd xmm0, esi 1890 LONG $0x13fea40f // shld esi, edi, 19 1891 LONG $0xec538b44 // mov r10d, dword [rbx - 20] 1892 WORD $0x438b; BYTE $0xf0 // mov eax, dword [rbx - 16] 1893 LONG $0x0ac7a40f // shld edi, eax, 10 1894 LONG $0xd0a40f44; BYTE $0x01 // shld eax, r10d, 1 1895 LONG $0x2279e3c4; WORD $0x01c1 // vpinsrd xmm0, xmm0, ecx, 1 1896 LONG $0x6e79c1c4; BYTE $0xfa // vmovd xmm7, r10d 1897 LONG $0x2279e3c4; WORD $0x02c2 // vpinsrd xmm0, xmm0, edx, 2 1898 LONG $0x2241e3c4; WORD $0x01f8 // vpinsrd xmm7, xmm7, eax, 1 1899 LONG $0x2279c3c4; WORD $0x03c1 // vpinsrd xmm0, xmm0, r9d, 3 1900 LONG $0x2241e3c4; WORD $0x02ff // vpinsrd xmm7, xmm7, edi, 2 1901 LONG $0x2241e3c4; WORD $0x03fe // vpinsrd xmm7, xmm7, esi, 3 1902 LONG $0x3845e3c4; WORD $0x01c0 // vinserti128 ymm0, ymm7, xmm0, 1 1903 LONG $0x457de2c4; BYTE $0xc6 // vpsrlvd ymm0, ymm0, ymm6 1904 LONG $0xc1dbfdc5 // vpand ymm0, ymm0, ymm1 1905 LONG $0x7f7ec1c4; BYTE $0x07 // vmovdqu yword [r15], ymm0 1906 LONG $0x80ef8349 // sub r15, -128 1907 LONG $0x5cc38348 // add rbx, 92 1908 LONG $0xffc08349 // add r8, -1 1909 JNE LBB0_71 1910 JMP LBB0_147 1911 1912 LBB0_43: 1913 WORD $0xf983; BYTE $0x0e // cmp ecx, 14 1914 JE LBB0_123 1915 WORD $0xf983; BYTE $0x0f // cmp ecx, 15 1916 JNE LBB0_147 1917 WORD $0xfa83; BYTE $0x20 // cmp edx, 32 1918 JL LBB0_147 1919 WORD $0x8945; BYTE $0xf0 // mov r8d, r14d 1920 LONG $0x60c78349 // add r15, 96 1921 LONG $0x38c38348 // add rbx, 56 1922 QUAD $0x00008885597de2c4; BYTE $0x00 // vpbroadcastq ymm0, qword 136[rbp] /* [rip + .LCPI0_82] */ 1923 QUAD $0x000006008d6ffdc5 // vmovdqa ymm1, yword 1536[rbp] /* [rip + .LCPI0_81] */ 1924 QUAD $0x00000620956ffdc5 // vmovdqa ymm2, yword 1568[rbp] /* [rip + .LCPI0_83] */ 1925 QUAD $0x000006409d6ffdc5 // vmovdqa ymm3, yword 1600[rbp] /* [rip + .LCPI0_84] */ 1926 QUAD $0x00000660a56ffdc5 // vmovdqa ymm4, yword 1632[rbp] /* [rip + .LCPI0_85] */ 1927 1928 LBB0_47: 1929 LONG $0xd44b8b44 // mov r9d, dword [rbx - 44] 1930 WORD $0x438b; BYTE $0xd0 // mov eax, dword [rbx - 48] 1931 WORD $0x8944; BYTE $0xce // mov esi, r9d 1932 LONG $0x06c6a40f // shld esi, eax, 6 1933 LONG $0xcc538b44 // mov r10d, dword [rbx - 52] 1934 WORD $0xc289 // mov edx, eax 1935 LONG $0xd2a40f44; BYTE $0x04 // shld edx, r10d, 4 1936 WORD $0x4b8b; BYTE $0xc8 // mov ecx, dword [rbx - 56] 1937 WORD $0x8944; BYTE $0xd7 // mov edi, r10d 1938 LONG $0x02cfa40f // shld edi, ecx, 2 1939 LONG $0xea6ef9c5 // vmovd xmm5, edx 1940 LONG $0x2251e3c4; WORD $0x01e8 // vpinsrd xmm5, xmm5, eax, 1 1941 LONG $0x2251e3c4; WORD $0x02ee // vpinsrd xmm5, xmm5, esi, 2 1942 LONG $0x2251c3c4; WORD $0x03e9 // vpinsrd xmm5, xmm5, r9d, 3 1943 LONG $0xf16ef9c5 // vmovd xmm6, ecx 1944 LONG $0x2249e3c4; WORD $0x01f1 // vpinsrd xmm6, xmm6, ecx, 1 1945 LONG $0x2249e3c4; WORD $0x02f7 // vpinsrd xmm6, xmm6, edi, 2 1946 LONG $0x2249c3c4; WORD $0x03f2 // vpinsrd xmm6, xmm6, r10d, 3 1947 LONG $0x384de3c4; WORD $0x01ed // vinserti128 ymm5, ymm6, xmm5, 1 1948 LONG $0x4555e2c4; BYTE $0xe9 // vpsrlvd ymm5, ymm5, ymm1 1949 LONG $0xe8dbd5c5 // vpand ymm5, ymm5, ymm0 1950 LONG $0x7f7ec1c4; WORD $0xa06f // vmovdqu yword [r15 - 96], ymm5 1951 LONG $0xe44b8b44 // mov r9d, dword [rbx - 28] 1952 LONG $0xe05b8b44 // mov r11d, dword [rbx - 32] 1953 WORD $0x8944; BYTE $0xca // mov edx, r9d 1954 LONG $0xdaa40f44; BYTE $0x0e // shld edx, r11d, 14 1955 LONG $0xdc538b44 // mov r10d, dword [rbx - 36] 1956 WORD $0x8944; BYTE $0xdf // mov edi, r11d 1957 LONG $0xd7a40f44; BYTE $0x0c // shld edi, r10d, 12 1958 WORD $0x438b; BYTE $0xd4 // mov eax, dword [rbx - 44] 1959 WORD $0x738b; BYTE $0xd8 // mov esi, dword [rbx - 40] 1960 WORD $0x8944; BYTE $0xd1 // mov ecx, r10d 1961 LONG $0x0af1a40f // shld ecx, esi, 10 1962 LONG $0x18f0ac0f // shrd eax, esi, 24 1963 LONG $0xef6ef9c5 // vmovd xmm5, edi 1964 LONG $0x2251c3c4; WORD $0x01eb // vpinsrd xmm5, xmm5, r11d, 1 1965 LONG $0x2251e3c4; WORD $0x02ea // vpinsrd xmm5, xmm5, edx, 2 1966 LONG $0x2251c3c4; WORD $0x03e9 // vpinsrd xmm5, xmm5, r9d, 3 1967 LONG $0xf06ef9c5 // vmovd xmm6, eax 1968 LONG $0x2249e3c4; WORD $0x01f6 // vpinsrd xmm6, xmm6, esi, 1 1969 LONG $0x2249e3c4; WORD $0x02f1 // vpinsrd xmm6, xmm6, ecx, 2 1970 LONG $0x2249c3c4; WORD $0x03f2 // vpinsrd xmm6, xmm6, r10d, 3 1971 LONG $0x384de3c4; WORD $0x01ed // vinserti128 ymm5, ymm6, xmm5, 1 1972 LONG $0x4555e2c4; BYTE $0xea // vpsrlvd ymm5, ymm5, ymm2 1973 LONG $0xe8dbd5c5 // vpand ymm5, ymm5, ymm0 1974 LONG $0x7f7ec1c4; WORD $0xc06f // vmovdqu yword [r15 - 64], ymm5 1975 WORD $0x438b; BYTE $0xf0 // mov eax, dword [rbx - 16] 1976 LONG $0xf4538b44 // mov r10d, dword [rbx - 12] 1977 LONG $0xc2a40f41; BYTE $0x07 // shld r10d, eax, 7 1978 WORD $0x538b; BYTE $0xec // mov edx, dword [rbx - 20] 1979 WORD $0xc689 // mov esi, eax 1980 LONG $0x05d6a40f // shld esi, edx, 5 1981 LONG $0xe44b8b44 // mov r9d, dword [rbx - 28] 1982 WORD $0x4b8b; BYTE $0xe8 // mov ecx, dword [rbx - 24] 1983 WORD $0xcf89 // mov edi, ecx 1984 LONG $0xcfa40f44; BYTE $0x01 // shld edi, r9d, 1 1985 LONG $0xea6ef9c5 // vmovd xmm5, edx 1986 LONG $0x03caa40f // shld edx, ecx, 3 1987 LONG $0x2251e3c4; WORD $0x01ee // vpinsrd xmm5, xmm5, esi, 1 1988 LONG $0x2251e3c4; WORD $0x02e8 // vpinsrd xmm5, xmm5, eax, 2 1989 LONG $0x2251c3c4; WORD $0x03ea // vpinsrd xmm5, xmm5, r10d, 3 1990 LONG $0x6e79c1c4; BYTE $0xf1 // vmovd xmm6, r9d 1991 LONG $0x2249e3c4; WORD $0x01f7 // vpinsrd xmm6, xmm6, edi, 1 1992 LONG $0x2249e3c4; WORD $0x02f1 // vpinsrd xmm6, xmm6, ecx, 2 1993 LONG $0x2249e3c4; WORD $0x03f2 // vpinsrd xmm6, xmm6, edx, 3 1994 LONG $0x384de3c4; WORD $0x01ed // vinserti128 ymm5, ymm6, xmm5, 1 1995 LONG $0x4555e2c4; BYTE $0xeb // vpsrlvd ymm5, ymm5, ymm3 1996 LONG $0xe8dbd5c5 // vpand ymm5, ymm5, ymm0 1997 LONG $0x7f7ec1c4; WORD $0xe06f // vmovdqu yword [r15 - 32], ymm5 1998 WORD $0x8b44; BYTE $0x0b // mov r9d, dword [rbx] 1999 WORD $0x4b8b; BYTE $0xfc // mov ecx, dword [rbx - 4] 2000 WORD $0x8944; BYTE $0xca // mov edx, r9d 2001 LONG $0x0dcaa40f // shld edx, ecx, 13 2002 WORD $0x438b; BYTE $0xf8 // mov eax, dword [rbx - 8] 2003 LONG $0xe96ef9c5 // vmovd xmm5, ecx 2004 LONG $0x0bc1a40f // shld ecx, eax, 11 2005 WORD $0x7b8b; BYTE $0xf4 // mov edi, dword [rbx - 12] 2006 WORD $0xc689 // mov esi, eax 2007 LONG $0x09fea40f // shld esi, edi, 9 2008 LONG $0xf76ef9c5 // vmovd xmm6, edi 2009 LONG $0x2249e3c4; WORD $0x01f6 // vpinsrd xmm6, xmm6, esi, 1 2010 LONG $0x2249e3c4; WORD $0x02f0 // vpinsrd xmm6, xmm6, eax, 2 2011 LONG $0x2249e3c4; WORD $0x03f1 // vpinsrd xmm6, xmm6, ecx, 3 2012 LONG $0x2251e3c4; WORD $0x01ea // vpinsrd xmm5, xmm5, edx, 1 2013 LONG $0x2251c3c4; WORD $0x02e9 // vpinsrd xmm5, xmm5, r9d, 2 2014 LONG $0x2251c3c4; WORD $0x03e9 // vpinsrd xmm5, xmm5, r9d, 3 2015 LONG $0x384de3c4; WORD $0x01ed // vinserti128 ymm5, ymm6, xmm5, 1 2016 LONG $0x4555e2c4; BYTE $0xec // vpsrlvd ymm5, ymm5, ymm4 2017 LONG $0xe8dbd5c5 // vpand ymm5, ymm5, ymm0 2018 LONG $0x7f7ec1c4; BYTE $0x2f // vmovdqu yword [r15], ymm5 2019 LONG $0x80ef8349 // sub r15, -128 2020 LONG $0x3cc38348 // add rbx, 60 2021 LONG $0xffc08349 // add r8, -1 2022 JNE LBB0_47 2023 JMP LBB0_147 2024 2025 LBB0_96: 2026 WORD $0xfa83; BYTE $0x20 // cmp edx, 32 2027 JL LBB0_147 2028 WORD $0x8945; BYTE $0xf0 // mov r8d, r14d 2029 LONG $0x597de2c4; WORD $0x0045 // vpbroadcastq ymm0, qword 0[rbp] /* [rip + .LCPI0_0] */ 2030 LONG $0x60c78349 // add r15, 96 2031 QUAD $0x00000100856f7dc5 // vmovdqa ymm8, yword 256[rbp] /* [rip + .LCPI0_1] */ 2032 QUAD $0x000001208d6f7dc5 // vmovdqa ymm9, yword 288[rbp] /* [rip + .LCPI0_2] */ 2033 QUAD $0x00000140956f7dc5 // vmovdqa ymm10, yword 320[rbp] /* [rip + .LCPI0_3] */ 2034 QUAD $0x00000160a56ffdc5 // vmovdqa ymm4, yword 352[rbp] /* [rip + .LCPI0_4] */ 2035 QUAD $0x00000b00ad6ff9c5 // vmovdqa xmm5, oword 2816[rbp] /* [rip + .LCPI0_5] */ 2036 QUAD $0x00000b10b56ff9c5 // vmovdqa xmm6, oword 2832[rbp] /* [rip + .LCPI0_6] */ 2037 QUAD $0x00000180bd6ffdc5 // vmovdqa ymm7, yword 384[rbp] /* [rip + .LCPI0_7] */ 2038 2039 LBB0_98: 2040 LONG $0x18538b44 // mov r10d, dword [rbx + 24] 2041 LONG $0x1c4b8b44 // mov r9d, dword [rbx + 28] 2042 LONG $0xd1a40f45; BYTE $0x07 // shld r9d, r10d, 7 2043 WORD $0x738b; BYTE $0x14 // mov esi, dword [rbx + 20] 2044 LONG $0xf2a40f41; BYTE $0x06 // shld r10d, esi, 6 2045 WORD $0x7b8b; BYTE $0x10 // mov edi, dword [rbx + 16] 2046 LONG $0x05fea40f // shld esi, edi, 5 2047 WORD $0x438b; BYTE $0x0c // mov eax, dword [rbx + 12] 2048 LONG $0x04c7a40f // shld edi, eax, 4 2049 WORD $0x538b; BYTE $0x08 // mov edx, dword [rbx + 8] 2050 LONG $0x03d0a40f // shld eax, edx, 3 2051 WORD $0x4b8b; BYTE $0x04 // mov ecx, dword [rbx + 4] 2052 LONG $0x02caa40f // shld edx, ecx, 2 2053 WORD $0x8b44; BYTE $0x1b // mov r11d, dword [rbx] 2054 LONG $0xd9a40f44; BYTE $0x01 // shld ecx, r11d, 1 2055 LONG $0xcf6ef9c5 // vmovd xmm1, edi 2056 LONG $0x2271e3c4; WORD $0x01ce // vpinsrd xmm1, xmm1, esi, 1 2057 LONG $0x2271c3c4; WORD $0x02ca // vpinsrd xmm1, xmm1, r10d, 2 2058 LONG $0x2271c3c4; WORD $0x03c9 // vpinsrd xmm1, xmm1, r9d, 3 2059 LONG $0x6e79c1c4; BYTE $0xd3 // vmovd xmm2, r11d 2060 LONG $0x2269e3c4; WORD $0x01d1 // vpinsrd xmm2, xmm2, ecx, 1 2061 LONG $0x2269e3c4; WORD $0x02d2 // vpinsrd xmm2, xmm2, edx, 2 2062 LONG $0x2269e3c4; WORD $0x03d0 // vpinsrd xmm2, xmm2, eax, 3 2063 LONG $0x386de3c4; WORD $0x01c9 // vinserti128 ymm1, ymm2, xmm1, 1 2064 LONG $0xc8dbf5c5 // vpand ymm1, ymm1, ymm0 2065 LONG $0x7f7ec1c4; WORD $0xa04f // vmovdqu yword [r15 - 96], ymm1 2066 LONG $0x4b6ffec5; BYTE $0x1c // vmovdqu ymm1, yword [rbx + 28] 2067 LONG $0x4575c2c4; BYTE $0xc8 // vpsrlvd ymm1, ymm1, ymm8 2068 LONG $0x536ffac5; BYTE $0x2c // vmovdqu xmm2, oword [rbx + 44] 2069 LONG $0xda70f9c5; BYTE $0xf9 // vpshufd xmm3, xmm2, 249 2070 LONG $0x2261e3c4; WORD $0x3c5b; BYTE $0x03 // vpinsrd xmm3, xmm3, dword [rbx + 60], 3 2071 LONG $0x0f69e3c4; WORD $0x1c53; BYTE $0x04 // vpalignr xmm2, xmm2, oword [rbx + 28], 4 2072 LONG $0x386de3c4; WORD $0x01d3 // vinserti128 ymm2, ymm2, xmm3, 1 2073 LONG $0x476dc2c4; BYTE $0xd1 // vpsllvd ymm2, ymm2, ymm9 2074 LONG $0xcaebf5c5 // vpor ymm1, ymm1, ymm2 2075 LONG $0xc8dbf5c5 // vpand ymm1, ymm1, ymm0 2076 LONG $0x7f7ec1c4; WORD $0xc04f // vmovdqu yword [r15 - 64], ymm1 2077 LONG $0x4b6ffec5; BYTE $0x3c // vmovdqu ymm1, yword [rbx + 60] 2078 LONG $0x536ffac5; BYTE $0x4c // vmovdqu xmm2, oword [rbx + 76] 2079 LONG $0xda70f9c5; BYTE $0xf9 // vpshufd xmm3, xmm2, 249 2080 LONG $0x2261e3c4; WORD $0x5c5b; BYTE $0x03 // vpinsrd xmm3, xmm3, dword [rbx + 92], 3 2081 LONG $0x4575c2c4; BYTE $0xca // vpsrlvd ymm1, ymm1, ymm10 2082 LONG $0x0f69e3c4; WORD $0x3c53; BYTE $0x04 // vpalignr xmm2, xmm2, oword [rbx + 60], 4 2083 LONG $0x386de3c4; WORD $0x01d3 // vinserti128 ymm2, ymm2, xmm3, 1 2084 LONG $0x476de2c4; BYTE $0xd4 // vpsllvd ymm2, ymm2, ymm4 2085 LONG $0xcaebf5c5 // vpor ymm1, ymm1, ymm2 2086 LONG $0xc8dbf5c5 // vpand ymm1, ymm1, ymm0 2087 LONG $0x7f7ec1c4; WORD $0xe04f // vmovdqu yword [r15 - 32], ymm1 2088 WORD $0x438b; BYTE $0x78 // mov eax, dword [rbx + 120] 2089 WORD $0x4b8b; BYTE $0x74 // mov ecx, dword [rbx + 116] 2090 WORD $0xc289 // mov edx, eax 2091 LONG $0x1ecaa40f // shld edx, ecx, 30 2092 WORD $0x738b; BYTE $0x70 // mov esi, dword [rbx + 112] 2093 LONG $0x1df1a40f // shld ecx, esi, 29 2094 WORD $0x7b8b; BYTE $0x6c // mov edi, dword [rbx + 108] 2095 LONG $0x1cfea40f // shld esi, edi, 28 2096 LONG $0x4b6ffac5; BYTE $0x5c // vmovdqu xmm1, oword [rbx + 92] 2097 LONG $0x4571e2c4; BYTE $0xd5 // vpsrlvd xmm2, xmm1, xmm5 2098 LONG $0xc970f9c5; BYTE $0xf9 // vpshufd xmm1, xmm1, 249 2099 LONG $0x2271e3c4; WORD $0x03cf // vpinsrd xmm1, xmm1, edi, 3 2100 LONG $0x4771e2c4; BYTE $0xce // vpsllvd xmm1, xmm1, xmm6 2101 LONG $0xde6ef9c5 // vmovd xmm3, esi 2102 LONG $0x2261e3c4; WORD $0x01d9 // vpinsrd xmm3, xmm3, ecx, 1 2103 LONG $0x2261e3c4; WORD $0x02da // vpinsrd xmm3, xmm3, edx, 2 2104 LONG $0x2261e3c4; WORD $0x03d8 // vpinsrd xmm3, xmm3, eax, 3 2105 LONG $0xc9ebe9c5 // vpor xmm1, xmm2, xmm1 2106 LONG $0x3875e3c4; WORD $0x01cb // vinserti128 ymm1, ymm1, xmm3, 1 2107 LONG $0x4575e2c4; BYTE $0xcf // vpsrlvd ymm1, ymm1, ymm7 2108 LONG $0xc8dbf5c5 // vpand ymm1, ymm1, ymm0 2109 LONG $0x7f7ec1c4; BYTE $0x0f // vmovdqu yword [r15], ymm1 2110 LONG $0x7cc38348 // add rbx, 124 2111 LONG $0x80ef8349 // sub r15, -128 2112 LONG $0xffc08349 // add r8, -1 2113 JNE LBB0_98 2114 JMP LBB0_147 2115 2116 LBB0_144: 2117 WORD $0xfa83; BYTE $0x20 // cmp edx, 32 2118 JL LBB0_147 2119 WORD $0x8944; BYTE $0xf3 // mov ebx, r14d 2120 2121 LBB0_146: 2122 LONG $0x000080ba; BYTE $0x00 // mov edx, 128 2123 WORD $0x894c; BYTE $0xff // mov rdi, r15 2124 WORD $0xf631 // xor esi, esi 2125 CALL clib·_memset(SB) 2126 LONG $0x80ef8349 // sub r15, -128 2127 LONG $0xffc38348 // add rbx, -1 2128 JNE LBB0_146 2129 JMP LBB0_147 2130 2131 LBB0_120: 2132 WORD $0xfa83; BYTE $0x20 // cmp edx, 32 2133 JL LBB0_147 2134 WORD $0x8944; BYTE $0xf0 // mov eax, r14d 2135 WORD $0xc931 // xor ecx, ecx 2136 QUAD $0x00008085597de2c4; BYTE $0x00 // vpbroadcastq ymm0, qword 128[rbp] /* [rip + .LCPI0_80] */ 2137 LONG $0xc9eff1c5 // vpxor xmm1, xmm1, xmm1 2138 2139 LBB0_122: 2140 LONG $0x146ffac5; BYTE $0x0b // vmovdqu xmm2, oword [rbx + rcx] 2141 LONG $0x00fde3c4; WORD $0xd8d2 // vpermq ymm2, ymm2, 216 2142 LONG $0xd270fdc5; BYTE $0x50 // vpshufd ymm2, ymm2, 80 2143 LONG $0x456de2c4; BYTE $0xd0 // vpsrlvd ymm2, ymm2, ymm0 2144 LONG $0x0e6de3c4; WORD $0xaad1 // vpblendw ymm2, ymm2, ymm1, 170 2145 LONG $0x7f7ec1c4; WORD $0x4f14 // vmovdqu yword [r15 + 2*rcx], ymm2 2146 LONG $0x546ffac5; WORD $0x100b // vmovdqu xmm2, oword [rbx + rcx + 16] 2147 LONG $0x00fde3c4; WORD $0xd8d2 // vpermq ymm2, ymm2, 216 2148 LONG $0xd270fdc5; BYTE $0x50 // vpshufd ymm2, ymm2, 80 2149 LONG $0x456de2c4; BYTE $0xd0 // vpsrlvd ymm2, ymm2, ymm0 2150 LONG $0x0e6de3c4; WORD $0xaad1 // vpblendw ymm2, ymm2, ymm1, 170 2151 LONG $0x7f7ec1c4; WORD $0x4f54; BYTE $0x20 // vmovdqu yword [r15 + 2*rcx + 32], ymm2 2152 LONG $0x546ffac5; WORD $0x200b // vmovdqu xmm2, oword [rbx + rcx + 32] 2153 LONG $0x00fde3c4; WORD $0xd8d2 // vpermq ymm2, ymm2, 216 2154 LONG $0xd270fdc5; BYTE $0x50 // vpshufd ymm2, ymm2, 80 2155 LONG $0x456de2c4; BYTE $0xd0 // vpsrlvd ymm2, ymm2, ymm0 2156 LONG $0x0e6de3c4; WORD $0xaad1 // vpblendw ymm2, ymm2, ymm1, 170 2157 LONG $0x7f7ec1c4; WORD $0x4f54; BYTE $0x40 // vmovdqu yword [r15 + 2*rcx + 64], ymm2 2158 LONG $0x546ffac5; WORD $0x300b // vmovdqu xmm2, oword [rbx + rcx + 48] 2159 LONG $0x00fde3c4; WORD $0xd8d2 // vpermq ymm2, ymm2, 216 2160 LONG $0xd270fdc5; BYTE $0x50 // vpshufd ymm2, ymm2, 80 2161 LONG $0x456de2c4; BYTE $0xd0 // vpsrlvd ymm2, ymm2, ymm0 2162 LONG $0x0e6de3c4; WORD $0xaad1 // vpblendw ymm2, ymm2, ymm1, 170 2163 LONG $0x7f7ec1c4; WORD $0x4f54; BYTE $0x60 // vmovdqu yword [r15 + 2*rcx + 96], ymm2 2164 LONG $0x40c18348 // add rcx, 64 2165 LONG $0xffc08348 // add rax, -1 2166 JNE LBB0_122 2167 JMP LBB0_147 2168 2169 LBB0_132: 2170 WORD $0xfa83; BYTE $0x20 // cmp edx, 32 2171 JL LBB0_147 2172 WORD $0x8944; BYTE $0xf0 // mov eax, r14d 2173 WORD $0xc931 // xor ecx, ecx 2174 QUAD $0x000c70855a7de2c4; BYTE $0x00 // vbroadcasti128 ymm0, oword 3184[rbp] /* [rip + .LCPI0_109] */ 2175 QUAD $0x000c848d587de2c4; BYTE $0x00 // vpbroadcastd ymm1, dword 3204[rbp] /* [rip + .LCPI0_110] */ 2176 2177 LBB0_134: 2178 LONG $0x147efac5; BYTE $0x0b // vmovq xmm2, qword [rbx + rcx] 2179 LONG $0xd270f9c5; BYTE $0x50 // vpshufd xmm2, xmm2, 80 2180 LONG $0x00fde3c4; WORD $0x50d2 // vpermq ymm2, ymm2, 80 2181 LONG $0x456de2c4; BYTE $0xd0 // vpsrlvd ymm2, ymm2, ymm0 2182 LONG $0xd1dbedc5 // vpand ymm2, ymm2, ymm1 2183 LONG $0x7f7ec1c4; WORD $0x8f14 // vmovdqu yword [r15 + 4*rcx], ymm2 2184 LONG $0x547efac5; WORD $0x080b // vmovq xmm2, qword [rbx + rcx + 8] 2185 LONG $0xd270f9c5; BYTE $0x50 // vpshufd xmm2, xmm2, 80 2186 LONG $0x00fde3c4; WORD $0x50d2 // vpermq ymm2, ymm2, 80 2187 LONG $0x456de2c4; BYTE $0xd0 // vpsrlvd ymm2, ymm2, ymm0 2188 LONG $0xd1dbedc5 // vpand ymm2, ymm2, ymm1 2189 LONG $0x7f7ec1c4; WORD $0x8f54; BYTE $0x20 // vmovdqu yword [r15 + 4*rcx + 32], ymm2 2190 LONG $0x547efac5; WORD $0x100b // vmovq xmm2, qword [rbx + rcx + 16] 2191 LONG $0xd270f9c5; BYTE $0x50 // vpshufd xmm2, xmm2, 80 2192 LONG $0x00fde3c4; WORD $0x50d2 // vpermq ymm2, ymm2, 80 2193 LONG $0x456de2c4; BYTE $0xd0 // vpsrlvd ymm2, ymm2, ymm0 2194 LONG $0xd1dbedc5 // vpand ymm2, ymm2, ymm1 2195 LONG $0x7f7ec1c4; WORD $0x8f54; BYTE $0x40 // vmovdqu yword [r15 + 4*rcx + 64], ymm2 2196 LONG $0x547efac5; WORD $0x180b // vmovq xmm2, qword [rbx + rcx + 24] 2197 LONG $0xd270f9c5; BYTE $0x50 // vpshufd xmm2, xmm2, 80 2198 LONG $0x00fde3c4; WORD $0x50d2 // vpermq ymm2, ymm2, 80 2199 LONG $0x456de2c4; BYTE $0xd0 // vpsrlvd ymm2, ymm2, ymm0 2200 LONG $0xd1dbedc5 // vpand ymm2, ymm2, ymm1 2201 LONG $0x7f7ec1c4; WORD $0x8f54; BYTE $0x60 // vmovdqu yword [r15 + 4*rcx + 96], ymm2 2202 LONG $0x20c18348 // add rcx, 32 2203 LONG $0xffc08348 // add rax, -1 2204 JNE LBB0_134 2205 JMP LBB0_147 2206 2207 LBB0_108: 2208 WORD $0xfa83; BYTE $0x20 // cmp edx, 32 2209 JL LBB0_147 2210 WORD $0x8945; BYTE $0xf0 // mov r8d, r14d 2211 LONG $0x60c78349 // add r15, 96 2212 LONG $0x5cc38348 // add rbx, 92 2213 QUAD $0x000c20855a7de2c4; BYTE $0x00 // vbroadcasti128 ymm0, oword 3104[rbp] /* [rip + .LCPI0_46] */ 2214 QUAD $0x000c808d587de2c4; BYTE $0x00 // vpbroadcastd ymm1, dword 3200[rbp] /* [rip + .LCPI0_47] */ 2215 2216 LBB0_110: 2217 LONG $0xb84b8b44 // mov r9d, dword [rbx - 72] 2218 WORD $0x538b; BYTE $0xb4 // mov edx, dword [rbx - 76] 2219 WORD $0x8944; BYTE $0xce // mov esi, r9d 2220 WORD $0x7b8b; BYTE $0xb0 // mov edi, dword [rbx - 80] 2221 LONG $0xac538b44 // mov r10d, dword [rbx - 84] 2222 LONG $0x10d6a40f // shld esi, edx, 16 2223 LONG $0xa45b8b44 // mov r11d, dword [rbx - 92] 2224 WORD $0x438b; BYTE $0xa8 // mov eax, dword [rbx - 88] 2225 LONG $0x08faa40f // shld edx, edi, 8 2226 WORD $0x8944; BYTE $0xd1 // mov ecx, r10d 2227 LONG $0x10c1a40f // shld ecx, eax, 16 2228 LONG $0xd8a40f44; BYTE $0x08 // shld eax, r11d, 8 2229 LONG $0xd76ef9c5 // vmovd xmm2, edi 2230 LONG $0x6e79c1c4; BYTE $0xdb // vmovd xmm3, r11d 2231 LONG $0x2269e3c4; WORD $0x01d2 // vpinsrd xmm2, xmm2, edx, 1 2232 LONG $0x2261e3c4; WORD $0x01d8 // vpinsrd xmm3, xmm3, eax, 1 2233 LONG $0x2269e3c4; WORD $0x02d6 // vpinsrd xmm2, xmm2, esi, 2 2234 LONG $0x2261e3c4; WORD $0x02d9 // vpinsrd xmm3, xmm3, ecx, 2 2235 LONG $0x2269c3c4; WORD $0x03d1 // vpinsrd xmm2, xmm2, r9d, 3 2236 LONG $0x2261c3c4; WORD $0x03da // vpinsrd xmm3, xmm3, r10d, 3 2237 LONG $0x3865e3c4; WORD $0x01d2 // vinserti128 ymm2, ymm3, xmm2, 1 2238 LONG $0x456de2c4; BYTE $0xd0 // vpsrlvd ymm2, ymm2, ymm0 2239 LONG $0xd1dbedc5 // vpand ymm2, ymm2, ymm1 2240 LONG $0x7f7ec1c4; WORD $0xa057 // vmovdqu yword [r15 - 96], ymm2 2241 LONG $0xd04b8b44 // mov r9d, dword [rbx - 48] 2242 WORD $0x4b8b; BYTE $0xcc // mov ecx, dword [rbx - 52] 2243 WORD $0x8944; BYTE $0xca // mov edx, r9d 2244 WORD $0x738b; BYTE $0xc8 // mov esi, dword [rbx - 56] 2245 LONG $0xc4538b44 // mov r10d, dword [rbx - 60] 2246 LONG $0x10caa40f // shld edx, ecx, 16 2247 LONG $0xbc5b8b44 // mov r11d, dword [rbx - 68] 2248 WORD $0x7b8b; BYTE $0xc0 // mov edi, dword [rbx - 64] 2249 LONG $0x08f1a40f // shld ecx, esi, 8 2250 WORD $0x8944; BYTE $0xd0 // mov eax, r10d 2251 LONG $0x10f8a40f // shld eax, edi, 16 2252 LONG $0xdfa40f44; BYTE $0x08 // shld edi, r11d, 8 2253 LONG $0xd66ef9c5 // vmovd xmm2, esi 2254 LONG $0x6e79c1c4; BYTE $0xdb // vmovd xmm3, r11d 2255 LONG $0x2269e3c4; WORD $0x01d1 // vpinsrd xmm2, xmm2, ecx, 1 2256 LONG $0x2261e3c4; WORD $0x01df // vpinsrd xmm3, xmm3, edi, 1 2257 LONG $0x2269e3c4; WORD $0x02d2 // vpinsrd xmm2, xmm2, edx, 2 2258 LONG $0x2261e3c4; WORD $0x02d8 // vpinsrd xmm3, xmm3, eax, 2 2259 LONG $0x2269c3c4; WORD $0x03d1 // vpinsrd xmm2, xmm2, r9d, 3 2260 LONG $0x2261c3c4; WORD $0x03da // vpinsrd xmm3, xmm3, r10d, 3 2261 LONG $0x3865e3c4; WORD $0x01d2 // vinserti128 ymm2, ymm3, xmm2, 1 2262 LONG $0x456de2c4; BYTE $0xd0 // vpsrlvd ymm2, ymm2, ymm0 2263 LONG $0xd1dbedc5 // vpand ymm2, ymm2, ymm1 2264 LONG $0x7f7ec1c4; WORD $0xc057 // vmovdqu yword [r15 - 64], ymm2 2265 LONG $0xe84b8b44 // mov r9d, dword [rbx - 24] 2266 WORD $0x4b8b; BYTE $0xe4 // mov ecx, dword [rbx - 28] 2267 WORD $0x8944; BYTE $0xca // mov edx, r9d 2268 WORD $0x738b; BYTE $0xe0 // mov esi, dword [rbx - 32] 2269 LONG $0xdc538b44 // mov r10d, dword [rbx - 36] 2270 LONG $0x10caa40f // shld edx, ecx, 16 2271 LONG $0xd45b8b44 // mov r11d, dword [rbx - 44] 2272 WORD $0x7b8b; BYTE $0xd8 // mov edi, dword [rbx - 40] 2273 LONG $0x08f1a40f // shld ecx, esi, 8 2274 WORD $0x8944; BYTE $0xd0 // mov eax, r10d 2275 LONG $0x10f8a40f // shld eax, edi, 16 2276 LONG $0xdfa40f44; BYTE $0x08 // shld edi, r11d, 8 2277 LONG $0xd66ef9c5 // vmovd xmm2, esi 2278 LONG $0x6e79c1c4; BYTE $0xdb // vmovd xmm3, r11d 2279 LONG $0x2269e3c4; WORD $0x01d1 // vpinsrd xmm2, xmm2, ecx, 1 2280 LONG $0x2261e3c4; WORD $0x01df // vpinsrd xmm3, xmm3, edi, 1 2281 LONG $0x2269e3c4; WORD $0x02d2 // vpinsrd xmm2, xmm2, edx, 2 2282 LONG $0x2261e3c4; WORD $0x02d8 // vpinsrd xmm3, xmm3, eax, 2 2283 LONG $0x2269c3c4; WORD $0x03d1 // vpinsrd xmm2, xmm2, r9d, 3 2284 LONG $0x2261c3c4; WORD $0x03da // vpinsrd xmm3, xmm3, r10d, 3 2285 LONG $0x3865e3c4; WORD $0x01d2 // vinserti128 ymm2, ymm3, xmm2, 1 2286 LONG $0x456de2c4; BYTE $0xd0 // vpsrlvd ymm2, ymm2, ymm0 2287 LONG $0xd1dbedc5 // vpand ymm2, ymm2, ymm1 2288 LONG $0x7f7ec1c4; WORD $0xe057 // vmovdqu yword [r15 - 32], ymm2 2289 WORD $0x8b44; BYTE $0x0b // mov r9d, dword [rbx] 2290 WORD $0x4b8b; BYTE $0xfc // mov ecx, dword [rbx - 4] 2291 WORD $0x8944; BYTE $0xca // mov edx, r9d 2292 WORD $0x738b; BYTE $0xf8 // mov esi, dword [rbx - 8] 2293 LONG $0xf4538b44 // mov r10d, dword [rbx - 12] 2294 LONG $0x10caa40f // shld edx, ecx, 16 2295 LONG $0xec5b8b44 // mov r11d, dword [rbx - 20] 2296 WORD $0x7b8b; BYTE $0xf0 // mov edi, dword [rbx - 16] 2297 LONG $0x08f1a40f // shld ecx, esi, 8 2298 WORD $0x8944; BYTE $0xd0 // mov eax, r10d 2299 LONG $0x10f8a40f // shld eax, edi, 16 2300 LONG $0xdfa40f44; BYTE $0x08 // shld edi, r11d, 8 2301 LONG $0xd66ef9c5 // vmovd xmm2, esi 2302 LONG $0x2269e3c4; WORD $0x01d1 // vpinsrd xmm2, xmm2, ecx, 1 2303 LONG $0x6e79c1c4; BYTE $0xdb // vmovd xmm3, r11d 2304 LONG $0x2269e3c4; WORD $0x02d2 // vpinsrd xmm2, xmm2, edx, 2 2305 LONG $0x2261e3c4; WORD $0x01df // vpinsrd xmm3, xmm3, edi, 1 2306 LONG $0x2269c3c4; WORD $0x03d1 // vpinsrd xmm2, xmm2, r9d, 3 2307 LONG $0x2261e3c4; WORD $0x02d8 // vpinsrd xmm3, xmm3, eax, 2 2308 LONG $0x2261c3c4; WORD $0x03da // vpinsrd xmm3, xmm3, r10d, 3 2309 LONG $0x3865e3c4; WORD $0x01d2 // vinserti128 ymm2, ymm3, xmm2, 1 2310 LONG $0x456de2c4; BYTE $0xd0 // vpsrlvd ymm2, ymm2, ymm0 2311 LONG $0xd1dbedc5 // vpand ymm2, ymm2, ymm1 2312 LONG $0x7f7ec1c4; BYTE $0x17 // vmovdqu yword [r15], ymm2 2313 LONG $0x80ef8349 // sub r15, -128 2314 LONG $0x60c38348 // add rbx, 96 2315 LONG $0xffc08349 // add r8, -1 2316 JNE LBB0_110 2317 JMP LBB0_147 2318 2319 LBB0_138: 2320 WORD $0xfa83; BYTE $0x20 // cmp edx, 32 2321 JL LBB0_147 2322 WORD $0x8944; BYTE $0xf0 // mov eax, r14d 2323 WORD $0xc931 // xor ecx, ecx 2324 QUAD $0x000009e0856ffdc5 // vmovdqa ymm0, yword 2528[rbp] /* [rip + .LCPI0_124] */ 2325 QUAD $0x0000d88d597de2c4; BYTE $0x00 // vpbroadcastq ymm1, qword 216[rbp] /* [rip + .LCPI0_125] */ 2326 2327 LBB0_140: 2328 LONG $0x587de2c4; WORD $0x0b14 // vpbroadcastd ymm2, dword [rbx + rcx] 2329 LONG $0x456de2c4; BYTE $0xd0 // vpsrlvd ymm2, ymm2, ymm0 2330 LONG $0xd1dbedc5 // vpand ymm2, ymm2, ymm1 2331 LONG $0x7f7ec1c4; WORD $0xcf14 // vmovdqu yword [r15 + 8*rcx], ymm2 2332 LONG $0x587de2c4; WORD $0x0b54; BYTE $0x04 // vpbroadcastd ymm2, dword [rbx + rcx + 4] 2333 LONG $0x456de2c4; BYTE $0xd0 // vpsrlvd ymm2, ymm2, ymm0 2334 LONG $0xd1dbedc5 // vpand ymm2, ymm2, ymm1 2335 LONG $0x7f7ec1c4; WORD $0xcf54; BYTE $0x20 // vmovdqu yword [r15 + 8*rcx + 32], ymm2 2336 LONG $0x587de2c4; WORD $0x0b54; BYTE $0x08 // vpbroadcastd ymm2, dword [rbx + rcx + 8] 2337 LONG $0x456de2c4; BYTE $0xd0 // vpsrlvd ymm2, ymm2, ymm0 2338 LONG $0xd1dbedc5 // vpand ymm2, ymm2, ymm1 2339 LONG $0x7f7ec1c4; WORD $0xcf54; BYTE $0x40 // vmovdqu yword [r15 + 8*rcx + 64], ymm2 2340 LONG $0x587de2c4; WORD $0x0b54; BYTE $0x0c // vpbroadcastd ymm2, dword [rbx + rcx + 12] 2341 LONG $0x456de2c4; BYTE $0xd0 // vpsrlvd ymm2, ymm2, ymm0 2342 LONG $0xd1dbedc5 // vpand ymm2, ymm2, ymm1 2343 LONG $0x7f7ec1c4; WORD $0xcf54; BYTE $0x60 // vmovdqu yword [r15 + 8*rcx + 96], ymm2 2344 LONG $0x10c18348 // add rcx, 16 2345 LONG $0xffc08348 // add rax, -1 2346 JNE LBB0_140 2347 JMP LBB0_147 2348 2349 LBB0_114: 2350 WORD $0xfa83; BYTE $0x20 // cmp edx, 32 2351 JL LBB0_147 2352 WORD $0x8945; BYTE $0xf0 // mov r8d, r14d 2353 LONG $0x60c78349 // add r15, 96 2354 LONG $0x4cc38348 // add rbx, 76 2355 QUAD $0x000004a0856ffdc5 // vmovdqa ymm0, yword 1184[rbp] /* [rip + .LCPI0_65] */ 2356 LONG $0x597de2c4; WORD $0x604d // vpbroadcastq ymm1, qword 96[rbp] /* [rip + .LCPI0_66] */ 2357 2358 LBB0_116: 2359 LONG $0xc44b8b44 // mov r9d, dword [rbx - 60] 2360 LONG $0xc05b8b44 // mov r11d, dword [rbx - 64] 2361 WORD $0x8944; BYTE $0xce // mov esi, r9d 2362 LONG $0xdea40f44; BYTE $0x08 // shld esi, r11d, 8 2363 WORD $0x7b8b; BYTE $0xbc // mov edi, dword [rbx - 68] 2364 WORD $0x8944; BYTE $0xda // mov edx, r11d 2365 LONG $0x10faa40f // shld edx, edi, 16 2366 WORD $0x438b; BYTE $0xb8 // mov eax, dword [rbx - 72] 2367 LONG $0x04c7a40f // shld edi, eax, 4 2368 LONG $0xb4538b44 // mov r10d, dword [rbx - 76] 2369 WORD $0xc189 // mov ecx, eax 2370 LONG $0xd1a40f44; BYTE $0x0c // shld ecx, r10d, 12 2371 LONG $0xd26ef9c5 // vmovd xmm2, edx 2372 LONG $0x2269c3c4; WORD $0x01d3 // vpinsrd xmm2, xmm2, r11d, 1 2373 LONG $0x2269e3c4; WORD $0x02d6 // vpinsrd xmm2, xmm2, esi, 2 2374 LONG $0x2269c3c4; WORD $0x03d1 // vpinsrd xmm2, xmm2, r9d, 3 2375 LONG $0x6e79c1c4; BYTE $0xda // vmovd xmm3, r10d 2376 LONG $0x2261e3c4; WORD $0x01d9 // vpinsrd xmm3, xmm3, ecx, 1 2377 LONG $0x2261e3c4; WORD $0x02d8 // vpinsrd xmm3, xmm3, eax, 2 2378 LONG $0x2261e3c4; WORD $0x03df // vpinsrd xmm3, xmm3, edi, 3 2379 LONG $0x3865e3c4; WORD $0x01d2 // vinserti128 ymm2, ymm3, xmm2, 1 2380 LONG $0x456de2c4; BYTE $0xd0 // vpsrlvd ymm2, ymm2, ymm0 2381 LONG $0xd1dbedc5 // vpand ymm2, ymm2, ymm1 2382 LONG $0x7f7ec1c4; WORD $0xa057 // vmovdqu yword [r15 - 96], ymm2 2383 LONG $0xd84b8b44 // mov r9d, dword [rbx - 40] 2384 LONG $0xd45b8b44 // mov r11d, dword [rbx - 44] 2385 WORD $0x8944; BYTE $0xca // mov edx, r9d 2386 LONG $0xdaa40f44; BYTE $0x08 // shld edx, r11d, 8 2387 WORD $0x738b; BYTE $0xd0 // mov esi, dword [rbx - 48] 2388 WORD $0x8944; BYTE $0xdf // mov edi, r11d 2389 LONG $0x10f7a40f // shld edi, esi, 16 2390 LONG $0xc8538b44 // mov r10d, dword [rbx - 56] 2391 WORD $0x4b8b; BYTE $0xcc // mov ecx, dword [rbx - 52] 2392 LONG $0x04cea40f // shld esi, ecx, 4 2393 WORD $0xc889 // mov eax, ecx 2394 LONG $0xd0a40f44; BYTE $0x0c // shld eax, r10d, 12 2395 LONG $0xd76ef9c5 // vmovd xmm2, edi 2396 LONG $0x2269c3c4; WORD $0x01d3 // vpinsrd xmm2, xmm2, r11d, 1 2397 LONG $0x2269e3c4; WORD $0x02d2 // vpinsrd xmm2, xmm2, edx, 2 2398 LONG $0x2269c3c4; WORD $0x03d1 // vpinsrd xmm2, xmm2, r9d, 3 2399 LONG $0x6e79c1c4; BYTE $0xda // vmovd xmm3, r10d 2400 LONG $0x2261e3c4; WORD $0x01d8 // vpinsrd xmm3, xmm3, eax, 1 2401 LONG $0x2261e3c4; WORD $0x02d9 // vpinsrd xmm3, xmm3, ecx, 2 2402 LONG $0x2261e3c4; WORD $0x03de // vpinsrd xmm3, xmm3, esi, 3 2403 LONG $0x3865e3c4; WORD $0x01d2 // vinserti128 ymm2, ymm3, xmm2, 1 2404 LONG $0x456de2c4; BYTE $0xd0 // vpsrlvd ymm2, ymm2, ymm0 2405 LONG $0xd1dbedc5 // vpand ymm2, ymm2, ymm1 2406 LONG $0x7f7ec1c4; WORD $0xc057 // vmovdqu yword [r15 - 64], ymm2 2407 LONG $0xec4b8b44 // mov r9d, dword [rbx - 20] 2408 LONG $0xe85b8b44 // mov r11d, dword [rbx - 24] 2409 WORD $0x8944; BYTE $0xca // mov edx, r9d 2410 LONG $0xdaa40f44; BYTE $0x08 // shld edx, r11d, 8 2411 WORD $0x738b; BYTE $0xe4 // mov esi, dword [rbx - 28] 2412 WORD $0x8944; BYTE $0xdf // mov edi, r11d 2413 LONG $0x10f7a40f // shld edi, esi, 16 2414 WORD $0x4b8b; BYTE $0xe0 // mov ecx, dword [rbx - 32] 2415 LONG $0x04cea40f // shld esi, ecx, 4 2416 LONG $0xdc538b44 // mov r10d, dword [rbx - 36] 2417 WORD $0xc889 // mov eax, ecx 2418 LONG $0xd0a40f44; BYTE $0x0c // shld eax, r10d, 12 2419 LONG $0xd76ef9c5 // vmovd xmm2, edi 2420 LONG $0x2269c3c4; WORD $0x01d3 // vpinsrd xmm2, xmm2, r11d, 1 2421 LONG $0x2269e3c4; WORD $0x02d2 // vpinsrd xmm2, xmm2, edx, 2 2422 LONG $0x2269c3c4; WORD $0x03d1 // vpinsrd xmm2, xmm2, r9d, 3 2423 LONG $0x6e79c1c4; BYTE $0xda // vmovd xmm3, r10d 2424 LONG $0x2261e3c4; WORD $0x01d8 // vpinsrd xmm3, xmm3, eax, 1 2425 LONG $0x2261e3c4; WORD $0x02d9 // vpinsrd xmm3, xmm3, ecx, 2 2426 LONG $0x2261e3c4; WORD $0x03de // vpinsrd xmm3, xmm3, esi, 3 2427 LONG $0x3865e3c4; WORD $0x01d2 // vinserti128 ymm2, ymm3, xmm2, 1 2428 LONG $0x456de2c4; BYTE $0xd0 // vpsrlvd ymm2, ymm2, ymm0 2429 LONG $0xd1dbedc5 // vpand ymm2, ymm2, ymm1 2430 LONG $0x7f7ec1c4; WORD $0xe057 // vmovdqu yword [r15 - 32], ymm2 2431 WORD $0x8b44; BYTE $0x0b // mov r9d, dword [rbx] 2432 LONG $0xfc5b8b44 // mov r11d, dword [rbx - 4] 2433 WORD $0x8944; BYTE $0xca // mov edx, r9d 2434 LONG $0xdaa40f44; BYTE $0x08 // shld edx, r11d, 8 2435 WORD $0x738b; BYTE $0xf8 // mov esi, dword [rbx - 8] 2436 WORD $0x8944; BYTE $0xdf // mov edi, r11d 2437 LONG $0x10f7a40f // shld edi, esi, 16 2438 LONG $0xf0538b44 // mov r10d, dword [rbx - 16] 2439 WORD $0x4b8b; BYTE $0xf4 // mov ecx, dword [rbx - 12] 2440 LONG $0x04cea40f // shld esi, ecx, 4 2441 WORD $0xc889 // mov eax, ecx 2442 LONG $0xd0a40f44; BYTE $0x0c // shld eax, r10d, 12 2443 LONG $0xd76ef9c5 // vmovd xmm2, edi 2444 LONG $0x2269c3c4; WORD $0x01d3 // vpinsrd xmm2, xmm2, r11d, 1 2445 LONG $0x2269e3c4; WORD $0x02d2 // vpinsrd xmm2, xmm2, edx, 2 2446 LONG $0x2269c3c4; WORD $0x03d1 // vpinsrd xmm2, xmm2, r9d, 3 2447 LONG $0x6e79c1c4; BYTE $0xda // vmovd xmm3, r10d 2448 LONG $0x2261e3c4; WORD $0x01d8 // vpinsrd xmm3, xmm3, eax, 1 2449 LONG $0x2261e3c4; WORD $0x02d9 // vpinsrd xmm3, xmm3, ecx, 2 2450 LONG $0x2261e3c4; WORD $0x03de // vpinsrd xmm3, xmm3, esi, 3 2451 LONG $0x3865e3c4; WORD $0x01d2 // vinserti128 ymm2, ymm3, xmm2, 1 2452 LONG $0x456de2c4; BYTE $0xd0 // vpsrlvd ymm2, ymm2, ymm0 2453 LONG $0xd1dbedc5 // vpand ymm2, ymm2, ymm1 2454 LONG $0x7f7ec1c4; BYTE $0x17 // vmovdqu yword [r15], ymm2 2455 LONG $0x80ef8349 // sub r15, -128 2456 LONG $0x50c38348 // add rbx, 80 2457 LONG $0xffc08349 // add r8, -1 2458 JNE LBB0_116 2459 JMP LBB0_147 2460 2461 LBB0_126: 2462 WORD $0xfa83; BYTE $0x20 // cmp edx, 32 2463 JL LBB0_147 2464 WORD $0x8945; BYTE $0xf0 // mov r8d, r14d 2465 LONG $0x60c78349 // add r15, 96 2466 LONG $0x2cc38348 // add rbx, 44 2467 QUAD $0x00000740856ffdc5 // vmovdqa ymm0, yword 1856[rbp] /* [rip + .LCPI0_94] */ 2468 QUAD $0x0000a08d597de2c4; BYTE $0x00 // vpbroadcastq ymm1, qword 160[rbp] /* [rip + .LCPI0_95] */ 2469 2470 LBB0_128: 2471 WORD $0x4b8b; BYTE $0xdc // mov ecx, dword [rbx - 36] 2472 WORD $0x538b; BYTE $0xd4 // mov edx, dword [rbx - 44] 2473 WORD $0x738b; BYTE $0xd8 // mov esi, dword [rbx - 40] 2474 WORD $0xcf89 // mov edi, ecx 2475 LONG $0x04f7a40f // shld edi, esi, 4 2476 WORD $0xf089 // mov eax, esi 2477 LONG $0x08d0a40f // shld eax, edx, 8 2478 LONG $0xd66ef9c5 // vmovd xmm2, esi 2479 LONG $0x2269e3c4; WORD $0x01d7 // vpinsrd xmm2, xmm2, edi, 1 2480 LONG $0x2269e3c4; WORD $0x02d1 // vpinsrd xmm2, xmm2, ecx, 2 2481 LONG $0x2269e3c4; WORD $0x03d1 // vpinsrd xmm2, xmm2, ecx, 3 2482 LONG $0xda6ef9c5 // vmovd xmm3, edx 2483 LONG $0x2261e3c4; WORD $0x01da // vpinsrd xmm3, xmm3, edx, 1 2484 LONG $0x2261e3c4; WORD $0x02d8 // vpinsrd xmm3, xmm3, eax, 2 2485 LONG $0x2261e3c4; WORD $0x03de // vpinsrd xmm3, xmm3, esi, 3 2486 LONG $0x3865e3c4; WORD $0x01d2 // vinserti128 ymm2, ymm3, xmm2, 1 2487 LONG $0x456de2c4; BYTE $0xd0 // vpsrlvd ymm2, ymm2, ymm0 2488 LONG $0xd1dbedc5 // vpand ymm2, ymm2, ymm1 2489 LONG $0x7f7ec1c4; WORD $0xa057 // vmovdqu yword [r15 - 96], ymm2 2490 WORD $0x438b; BYTE $0xe8 // mov eax, dword [rbx - 24] 2491 WORD $0x4b8b; BYTE $0xe0 // mov ecx, dword [rbx - 32] 2492 WORD $0x538b; BYTE $0xe4 // mov edx, dword [rbx - 28] 2493 WORD $0xc689 // mov esi, eax 2494 LONG $0x04d6a40f // shld esi, edx, 4 2495 WORD $0xd789 // mov edi, edx 2496 LONG $0x08cfa40f // shld edi, ecx, 8 2497 LONG $0xd26ef9c5 // vmovd xmm2, edx 2498 LONG $0x2269e3c4; WORD $0x01d6 // vpinsrd xmm2, xmm2, esi, 1 2499 LONG $0x2269e3c4; WORD $0x02d0 // vpinsrd xmm2, xmm2, eax, 2 2500 LONG $0x2269e3c4; WORD $0x03d0 // vpinsrd xmm2, xmm2, eax, 3 2501 LONG $0xd96ef9c5 // vmovd xmm3, ecx 2502 LONG $0x2261e3c4; WORD $0x01d9 // vpinsrd xmm3, xmm3, ecx, 1 2503 LONG $0x2261e3c4; WORD $0x02df // vpinsrd xmm3, xmm3, edi, 2 2504 LONG $0x2261e3c4; WORD $0x03da // vpinsrd xmm3, xmm3, edx, 3 2505 LONG $0x3865e3c4; WORD $0x01d2 // vinserti128 ymm2, ymm3, xmm2, 1 2506 LONG $0x456de2c4; BYTE $0xd0 // vpsrlvd ymm2, ymm2, ymm0 2507 LONG $0xd1dbedc5 // vpand ymm2, ymm2, ymm1 2508 LONG $0x7f7ec1c4; WORD $0xc057 // vmovdqu yword [r15 - 64], ymm2 2509 WORD $0x438b; BYTE $0xf4 // mov eax, dword [rbx - 12] 2510 WORD $0x4b8b; BYTE $0xec // mov ecx, dword [rbx - 20] 2511 WORD $0x538b; BYTE $0xf0 // mov edx, dword [rbx - 16] 2512 WORD $0xc689 // mov esi, eax 2513 LONG $0x04d6a40f // shld esi, edx, 4 2514 WORD $0xd789 // mov edi, edx 2515 LONG $0x08cfa40f // shld edi, ecx, 8 2516 LONG $0xd26ef9c5 // vmovd xmm2, edx 2517 LONG $0x2269e3c4; WORD $0x01d6 // vpinsrd xmm2, xmm2, esi, 1 2518 LONG $0x2269e3c4; WORD $0x02d0 // vpinsrd xmm2, xmm2, eax, 2 2519 LONG $0x2269e3c4; WORD $0x03d0 // vpinsrd xmm2, xmm2, eax, 3 2520 LONG $0xd96ef9c5 // vmovd xmm3, ecx 2521 LONG $0x2261e3c4; WORD $0x01d9 // vpinsrd xmm3, xmm3, ecx, 1 2522 LONG $0x2261e3c4; WORD $0x02df // vpinsrd xmm3, xmm3, edi, 2 2523 LONG $0x2261e3c4; WORD $0x03da // vpinsrd xmm3, xmm3, edx, 3 2524 LONG $0x3865e3c4; WORD $0x01d2 // vinserti128 ymm2, ymm3, xmm2, 1 2525 LONG $0x456de2c4; BYTE $0xd0 // vpsrlvd ymm2, ymm2, ymm0 2526 LONG $0xd1dbedc5 // vpand ymm2, ymm2, ymm1 2527 LONG $0x7f7ec1c4; WORD $0xe057 // vmovdqu yword [r15 - 32], ymm2 2528 WORD $0x038b // mov eax, dword [rbx] 2529 WORD $0x4b8b; BYTE $0xf8 // mov ecx, dword [rbx - 8] 2530 WORD $0x538b; BYTE $0xfc // mov edx, dword [rbx - 4] 2531 WORD $0xc689 // mov esi, eax 2532 LONG $0x04d6a40f // shld esi, edx, 4 2533 WORD $0xd789 // mov edi, edx 2534 LONG $0x08cfa40f // shld edi, ecx, 8 2535 LONG $0xd26ef9c5 // vmovd xmm2, edx 2536 LONG $0x2269e3c4; WORD $0x01d6 // vpinsrd xmm2, xmm2, esi, 1 2537 LONG $0x2269e3c4; WORD $0x02d0 // vpinsrd xmm2, xmm2, eax, 2 2538 LONG $0x2269e3c4; WORD $0x03d0 // vpinsrd xmm2, xmm2, eax, 3 2539 LONG $0xd96ef9c5 // vmovd xmm3, ecx 2540 LONG $0x2261e3c4; WORD $0x01d9 // vpinsrd xmm3, xmm3, ecx, 1 2541 LONG $0x2261e3c4; WORD $0x02df // vpinsrd xmm3, xmm3, edi, 2 2542 LONG $0x2261e3c4; WORD $0x03da // vpinsrd xmm3, xmm3, edx, 3 2543 LONG $0x3865e3c4; WORD $0x01d2 // vinserti128 ymm2, ymm3, xmm2, 1 2544 LONG $0x456de2c4; BYTE $0xd0 // vpsrlvd ymm2, ymm2, ymm0 2545 LONG $0xd1dbedc5 // vpand ymm2, ymm2, ymm1 2546 LONG $0x7f7ec1c4; BYTE $0x17 // vmovdqu yword [r15], ymm2 2547 LONG $0x80ef8349 // sub r15, -128 2548 LONG $0x30c38348 // add rbx, 48 2549 LONG $0xffc08349 // add r8, -1 2550 JNE LBB0_128 2551 JMP LBB0_147 2552 2553 LBB0_102: 2554 WORD $0xfa83; BYTE $0x20 // cmp edx, 32 2555 JL LBB0_147 2556 WORD $0x8945; BYTE $0xf0 // mov r8d, r14d 2557 LONG $0x60c78349 // add r15, 96 2558 LONG $0x6cc38348 // add rbx, 108 2559 QUAD $0x00000220856ffdc5 // vmovdqa ymm0, yword 544[rbp] /* [rip + .LCPI0_22] */ 2560 LONG $0x597de2c4; WORD $0x184d // vpbroadcastq ymm1, qword 24[rbp] /* [rip + .LCPI0_23] */ 2561 2562 LBB0_104: 2563 LONG $0xac4b8b44 // mov r9d, dword [rbx - 84] 2564 WORD $0x538b; BYTE $0xa8 // mov edx, dword [rbx - 88] 2565 WORD $0x8945; BYTE $0xca // mov r10d, r9d 2566 LONG $0xd2a40f41; BYTE $0x18 // shld r10d, edx, 24 2567 WORD $0x7b8b; BYTE $0xa4 // mov edi, dword [rbx - 92] 2568 LONG $0x14faa40f // shld edx, edi, 20 2569 WORD $0x438b; BYTE $0xa0 // mov eax, dword [rbx - 96] 2570 LONG $0x10c7a40f // shld edi, eax, 16 2571 WORD $0x4b8b; BYTE $0x9c // mov ecx, dword [rbx - 100] 2572 LONG $0x0cc8a40f // shld eax, ecx, 12 2573 LONG $0x945b8b44 // mov r11d, dword [rbx - 108] 2574 WORD $0x738b; BYTE $0x98 // mov esi, dword [rbx - 104] 2575 LONG $0x08f1a40f // shld ecx, esi, 8 2576 LONG $0xdea40f44; BYTE $0x04 // shld esi, r11d, 4 2577 LONG $0x6e79c1c4; BYTE $0xd3 // vmovd xmm2, r11d 2578 LONG $0xdf6ef9c5 // vmovd xmm3, edi 2579 LONG $0x2269e3c4; WORD $0x01d6 // vpinsrd xmm2, xmm2, esi, 1 2580 LONG $0x2261e3c4; WORD $0x01da // vpinsrd xmm3, xmm3, edx, 1 2581 LONG $0x2269e3c4; WORD $0x02d1 // vpinsrd xmm2, xmm2, ecx, 2 2582 LONG $0x2261c3c4; WORD $0x02da // vpinsrd xmm3, xmm3, r10d, 2 2583 LONG $0x2269e3c4; WORD $0x03d0 // vpinsrd xmm2, xmm2, eax, 3 2584 LONG $0x2261c3c4; WORD $0x03d9 // vpinsrd xmm3, xmm3, r9d, 3 2585 LONG $0x386de3c4; WORD $0x01d3 // vinserti128 ymm2, ymm2, xmm3, 1 2586 LONG $0x456de2c4; BYTE $0xd0 // vpsrlvd ymm2, ymm2, ymm0 2587 LONG $0xd1dbedc5 // vpand ymm2, ymm2, ymm1 2588 LONG $0x7f7ec1c4; WORD $0xa057 // vmovdqu yword [r15 - 96], ymm2 2589 LONG $0xc84b8b44 // mov r9d, dword [rbx - 56] 2590 WORD $0x4b8b; BYTE $0xc4 // mov ecx, dword [rbx - 60] 2591 WORD $0x8945; BYTE $0xca // mov r10d, r9d 2592 LONG $0xcaa40f41; BYTE $0x18 // shld r10d, ecx, 24 2593 WORD $0x738b; BYTE $0xc0 // mov esi, dword [rbx - 64] 2594 LONG $0x14f1a40f // shld ecx, esi, 20 2595 WORD $0x7b8b; BYTE $0xbc // mov edi, dword [rbx - 68] 2596 LONG $0x10fea40f // shld esi, edi, 16 2597 WORD $0x438b; BYTE $0xb8 // mov eax, dword [rbx - 72] 2598 LONG $0x0cc7a40f // shld edi, eax, 12 2599 LONG $0xb05b8b44 // mov r11d, dword [rbx - 80] 2600 WORD $0x538b; BYTE $0xb4 // mov edx, dword [rbx - 76] 2601 LONG $0x08d0a40f // shld eax, edx, 8 2602 LONG $0xdaa40f44; BYTE $0x04 // shld edx, r11d, 4 2603 LONG $0x6e79c1c4; BYTE $0xd3 // vmovd xmm2, r11d 2604 LONG $0xde6ef9c5 // vmovd xmm3, esi 2605 LONG $0x2269e3c4; WORD $0x01d2 // vpinsrd xmm2, xmm2, edx, 1 2606 LONG $0x2261e3c4; WORD $0x01d9 // vpinsrd xmm3, xmm3, ecx, 1 2607 LONG $0x2269e3c4; WORD $0x02d0 // vpinsrd xmm2, xmm2, eax, 2 2608 LONG $0x2261c3c4; WORD $0x02da // vpinsrd xmm3, xmm3, r10d, 2 2609 LONG $0x2269e3c4; WORD $0x03d7 // vpinsrd xmm2, xmm2, edi, 3 2610 LONG $0x2261c3c4; WORD $0x03d9 // vpinsrd xmm3, xmm3, r9d, 3 2611 LONG $0x386de3c4; WORD $0x01d3 // vinserti128 ymm2, ymm2, xmm3, 1 2612 LONG $0x456de2c4; BYTE $0xd0 // vpsrlvd ymm2, ymm2, ymm0 2613 LONG $0xd1dbedc5 // vpand ymm2, ymm2, ymm1 2614 LONG $0x7f7ec1c4; WORD $0xc057 // vmovdqu yword [r15 - 64], ymm2 2615 LONG $0xe44b8b44 // mov r9d, dword [rbx - 28] 2616 WORD $0x4b8b; BYTE $0xe0 // mov ecx, dword [rbx - 32] 2617 WORD $0x8945; BYTE $0xca // mov r10d, r9d 2618 LONG $0xcaa40f41; BYTE $0x18 // shld r10d, ecx, 24 2619 WORD $0x738b; BYTE $0xdc // mov esi, dword [rbx - 36] 2620 LONG $0x14f1a40f // shld ecx, esi, 20 2621 WORD $0x7b8b; BYTE $0xd8 // mov edi, dword [rbx - 40] 2622 LONG $0x10fea40f // shld esi, edi, 16 2623 WORD $0x438b; BYTE $0xd4 // mov eax, dword [rbx - 44] 2624 LONG $0x0cc7a40f // shld edi, eax, 12 2625 LONG $0xcc5b8b44 // mov r11d, dword [rbx - 52] 2626 WORD $0x538b; BYTE $0xd0 // mov edx, dword [rbx - 48] 2627 LONG $0x08d0a40f // shld eax, edx, 8 2628 LONG $0xdaa40f44; BYTE $0x04 // shld edx, r11d, 4 2629 LONG $0x6e79c1c4; BYTE $0xd3 // vmovd xmm2, r11d 2630 LONG $0xde6ef9c5 // vmovd xmm3, esi 2631 LONG $0x2269e3c4; WORD $0x01d2 // vpinsrd xmm2, xmm2, edx, 1 2632 LONG $0x2261e3c4; WORD $0x01d9 // vpinsrd xmm3, xmm3, ecx, 1 2633 LONG $0x2269e3c4; WORD $0x02d0 // vpinsrd xmm2, xmm2, eax, 2 2634 LONG $0x2261c3c4; WORD $0x02da // vpinsrd xmm3, xmm3, r10d, 2 2635 LONG $0x2269e3c4; WORD $0x03d7 // vpinsrd xmm2, xmm2, edi, 3 2636 LONG $0x2261c3c4; WORD $0x03d9 // vpinsrd xmm3, xmm3, r9d, 3 2637 LONG $0x386de3c4; WORD $0x01d3 // vinserti128 ymm2, ymm2, xmm3, 1 2638 LONG $0x456de2c4; BYTE $0xd0 // vpsrlvd ymm2, ymm2, ymm0 2639 LONG $0xd1dbedc5 // vpand ymm2, ymm2, ymm1 2640 LONG $0x7f7ec1c4; WORD $0xe057 // vmovdqu yword [r15 - 32], ymm2 2641 WORD $0x8b44; BYTE $0x0b // mov r9d, dword [rbx] 2642 WORD $0x4b8b; BYTE $0xfc // mov ecx, dword [rbx - 4] 2643 WORD $0x8945; BYTE $0xca // mov r10d, r9d 2644 LONG $0xcaa40f41; BYTE $0x18 // shld r10d, ecx, 24 2645 WORD $0x738b; BYTE $0xf8 // mov esi, dword [rbx - 8] 2646 LONG $0x14f1a40f // shld ecx, esi, 20 2647 WORD $0x7b8b; BYTE $0xf4 // mov edi, dword [rbx - 12] 2648 LONG $0x10fea40f // shld esi, edi, 16 2649 WORD $0x438b; BYTE $0xf0 // mov eax, dword [rbx - 16] 2650 LONG $0x0cc7a40f // shld edi, eax, 12 2651 LONG $0xe85b8b44 // mov r11d, dword [rbx - 24] 2652 WORD $0x538b; BYTE $0xec // mov edx, dword [rbx - 20] 2653 LONG $0x08d0a40f // shld eax, edx, 8 2654 LONG $0xdaa40f44; BYTE $0x04 // shld edx, r11d, 4 2655 LONG $0x6e79c1c4; BYTE $0xd3 // vmovd xmm2, r11d 2656 LONG $0xde6ef9c5 // vmovd xmm3, esi 2657 LONG $0x2269e3c4; WORD $0x01d2 // vpinsrd xmm2, xmm2, edx, 1 2658 LONG $0x2261e3c4; WORD $0x01d9 // vpinsrd xmm3, xmm3, ecx, 1 2659 LONG $0x2269e3c4; WORD $0x02d0 // vpinsrd xmm2, xmm2, eax, 2 2660 LONG $0x2261c3c4; WORD $0x02da // vpinsrd xmm3, xmm3, r10d, 2 2661 LONG $0x2269e3c4; WORD $0x03d7 // vpinsrd xmm2, xmm2, edi, 3 2662 LONG $0x2261c3c4; WORD $0x03d9 // vpinsrd xmm3, xmm3, r9d, 3 2663 LONG $0x386de3c4; WORD $0x01d3 // vinserti128 ymm2, ymm2, xmm3, 1 2664 LONG $0x456de2c4; BYTE $0xd0 // vpsrlvd ymm2, ymm2, ymm0 2665 LONG $0xd1dbedc5 // vpand ymm2, ymm2, ymm1 2666 LONG $0x7f7ec1c4; BYTE $0x17 // vmovdqu yword [r15], ymm2 2667 LONG $0x80ef8349 // sub r15, -128 2668 LONG $0x70c38348 // add rbx, 112 2669 LONG $0xffc08349 // add r8, -1 2670 JNE LBB0_104 2671 JMP LBB0_147 2672 2673 LBB0_141: 2674 WORD $0xfa83; BYTE $0x20 // cmp edx, 32 2675 JL LBB0_147 2676 WORD $0x8944; BYTE $0xf0 // mov eax, r14d 2677 LONG $0x60c78349 // add r15, 96 2678 WORD $0xc931 // xor ecx, ecx 2679 QUAD $0x00000a80856ffdc5 // vmovdqa ymm0, yword 2688[rbp] /* [rip + .LCPI0_131] */ 2680 QUAD $0x0000e88d597de2c4; BYTE $0x00 // vpbroadcastq ymm1, qword 232[rbp] /* [rip + .LCPI0_132] */ 2681 QUAD $0x00000aa0956ffdc5 // vmovdqa ymm2, yword 2720[rbp] /* [rip + .LCPI0_133] */ 2682 2683 LBB0_143: 2684 LONG $0x587de2c4; WORD $0xcb1c // vpbroadcastd ymm3, dword [rbx + 8*rcx] 2685 LONG $0x4565e2c4; BYTE $0xd8 // vpsrlvd ymm3, ymm3, ymm0 2686 LONG $0xd9dbe5c5 // vpand ymm3, ymm3, ymm1 2687 LONG $0x7f7ec1c4; WORD $0xa05f // vmovdqu yword [r15 - 96], ymm3 2688 LONG $0x587de2c4; WORD $0xcb1c // vpbroadcastd ymm3, dword [rbx + 8*rcx] 2689 LONG $0x4565e2c4; BYTE $0xda // vpsrlvd ymm3, ymm3, ymm2 2690 LONG $0xd9dbe5c5 // vpand ymm3, ymm3, ymm1 2691 LONG $0x7f7ec1c4; WORD $0xc05f // vmovdqu yword [r15 - 64], ymm3 2692 LONG $0x587de2c4; WORD $0xcb5c; BYTE $0x04 // vpbroadcastd ymm3, dword [rbx + 8*rcx + 4] 2693 LONG $0x4565e2c4; BYTE $0xd8 // vpsrlvd ymm3, ymm3, ymm0 2694 LONG $0xd9dbe5c5 // vpand ymm3, ymm3, ymm1 2695 LONG $0x7f7ec1c4; WORD $0xe05f // vmovdqu yword [r15 - 32], ymm3 2696 LONG $0x587de2c4; WORD $0xcb5c; BYTE $0x04 // vpbroadcastd ymm3, dword [rbx + 8*rcx + 4] 2697 LONG $0x4565e2c4; BYTE $0xda // vpsrlvd ymm3, ymm3, ymm2 2698 LONG $0xd9dbe5c5 // vpand ymm3, ymm3, ymm1 2699 LONG $0x7f7ec1c4; BYTE $0x1f // vmovdqu yword [r15], ymm3 2700 LONG $0x01c18348 // add rcx, 1 2701 LONG $0x80ef8349 // sub r15, -128 2702 WORD $0x3948; BYTE $0xc8 // cmp rax, rcx 2703 JNE LBB0_143 2704 JMP LBB0_147 2705 2706 LBB0_117: 2707 WORD $0xfa83; BYTE $0x20 // cmp edx, 32 2708 JL LBB0_147 2709 WORD $0x8945; BYTE $0xf0 // mov r8d, r14d 2710 LONG $0x60c78349 // add r15, 96 2711 LONG $0x44c38348 // add rbx, 68 2712 QUAD $0x00000540856ffdc5 // vmovdqa ymm0, yword 1344[rbp] /* [rip + .LCPI0_72] */ 2713 LONG $0x597de2c4; WORD $0x704d // vpbroadcastq ymm1, qword 112[rbp] /* [rip + .LCPI0_73] */ 2714 QUAD $0x00000560956ffdc5 // vmovdqa ymm2, yword 1376[rbp] /* [rip + .LCPI0_74] */ 2715 2716 LBB0_119: 2717 WORD $0x4b8b; BYTE $0xc8 // mov ecx, dword [rbx - 56] 2718 LONG $0xcc538b44 // mov r10d, dword [rbx - 52] 2719 LONG $0xcaa40f41; BYTE $0x02 // shld r10d, ecx, 2 2720 WORD $0x738b; BYTE $0xc4 // mov esi, dword [rbx - 60] 2721 WORD $0xcf89 // mov edi, ecx 2722 LONG $0x06f7a40f // shld edi, esi, 6 2723 LONG $0xbc4b8b44 // mov r9d, dword [rbx - 68] 2724 WORD $0x538b; BYTE $0xc0 // mov edx, dword [rbx - 64] 2725 WORD $0xd089 // mov eax, edx 2726 LONG $0xc8a40f44; BYTE $0x0e // shld eax, r9d, 14 2727 LONG $0xde6ef9c5 // vmovd xmm3, esi 2728 LONG $0x0ad6a40f // shld esi, edx, 10 2729 LONG $0x2261e3c4; WORD $0x01df // vpinsrd xmm3, xmm3, edi, 1 2730 LONG $0x2261e3c4; WORD $0x02d9 // vpinsrd xmm3, xmm3, ecx, 2 2731 LONG $0x2261c3c4; WORD $0x03da // vpinsrd xmm3, xmm3, r10d, 3 2732 LONG $0x6e79c1c4; BYTE $0xe1 // vmovd xmm4, r9d 2733 LONG $0x2259e3c4; WORD $0x01e0 // vpinsrd xmm4, xmm4, eax, 1 2734 LONG $0x2259e3c4; WORD $0x02e2 // vpinsrd xmm4, xmm4, edx, 2 2735 LONG $0x2259e3c4; WORD $0x03e6 // vpinsrd xmm4, xmm4, esi, 3 2736 LONG $0x385de3c4; WORD $0x01db // vinserti128 ymm3, ymm4, xmm3, 1 2737 LONG $0x4565e2c4; BYTE $0xd8 // vpsrlvd ymm3, ymm3, ymm0 2738 LONG $0xd9dbe5c5 // vpand ymm3, ymm3, ymm1 2739 LONG $0x7f7ec1c4; WORD $0xa05f // vmovdqu yword [r15 - 96], ymm3 2740 LONG $0xdc4b8b44 // mov r9d, dword [rbx - 36] 2741 LONG $0xd85b8b44 // mov r11d, dword [rbx - 40] 2742 WORD $0x8944; BYTE $0xca // mov edx, r9d 2743 LONG $0xdaa40f44; BYTE $0x04 // shld edx, r11d, 4 2744 LONG $0xd4538b44 // mov r10d, dword [rbx - 44] 2745 WORD $0x8944; BYTE $0xdf // mov edi, r11d 2746 LONG $0xd7a40f44; BYTE $0x08 // shld edi, r10d, 8 2747 WORD $0x438b; BYTE $0xcc // mov eax, dword [rbx - 52] 2748 WORD $0x738b; BYTE $0xd0 // mov esi, dword [rbx - 48] 2749 WORD $0x8944; BYTE $0xd1 // mov ecx, r10d 2750 LONG $0x0cf1a40f // shld ecx, esi, 12 2751 LONG $0x10f0ac0f // shrd eax, esi, 16 2752 LONG $0xdf6ef9c5 // vmovd xmm3, edi 2753 LONG $0x2261c3c4; WORD $0x01db // vpinsrd xmm3, xmm3, r11d, 1 2754 LONG $0x2261e3c4; WORD $0x02da // vpinsrd xmm3, xmm3, edx, 2 2755 LONG $0x2261c3c4; WORD $0x03d9 // vpinsrd xmm3, xmm3, r9d, 3 2756 LONG $0xe06ef9c5 // vmovd xmm4, eax 2757 LONG $0x2259e3c4; WORD $0x01e6 // vpinsrd xmm4, xmm4, esi, 1 2758 LONG $0x2259e3c4; WORD $0x02e1 // vpinsrd xmm4, xmm4, ecx, 2 2759 LONG $0x2259c3c4; WORD $0x03e2 // vpinsrd xmm4, xmm4, r10d, 3 2760 LONG $0x385de3c4; WORD $0x01db // vinserti128 ymm3, ymm4, xmm3, 1 2761 LONG $0x4565e2c4; BYTE $0xda // vpsrlvd ymm3, ymm3, ymm2 2762 LONG $0xd9dbe5c5 // vpand ymm3, ymm3, ymm1 2763 LONG $0x7f7ec1c4; WORD $0xc05f // vmovdqu yword [r15 - 64], ymm3 2764 WORD $0x438b; BYTE $0xec // mov eax, dword [rbx - 20] 2765 LONG $0xf0538b44 // mov r10d, dword [rbx - 16] 2766 LONG $0xc2a40f41; BYTE $0x02 // shld r10d, eax, 2 2767 WORD $0x538b; BYTE $0xe8 // mov edx, dword [rbx - 24] 2768 WORD $0xc689 // mov esi, eax 2769 LONG $0x06d6a40f // shld esi, edx, 6 2770 LONG $0xe04b8b44 // mov r9d, dword [rbx - 32] 2771 WORD $0x4b8b; BYTE $0xe4 // mov ecx, dword [rbx - 28] 2772 WORD $0xcf89 // mov edi, ecx 2773 LONG $0xcfa40f44; BYTE $0x0e // shld edi, r9d, 14 2774 LONG $0xda6ef9c5 // vmovd xmm3, edx 2775 LONG $0x0acaa40f // shld edx, ecx, 10 2776 LONG $0x2261e3c4; WORD $0x01de // vpinsrd xmm3, xmm3, esi, 1 2777 LONG $0x2261e3c4; WORD $0x02d8 // vpinsrd xmm3, xmm3, eax, 2 2778 LONG $0x2261c3c4; WORD $0x03da // vpinsrd xmm3, xmm3, r10d, 3 2779 LONG $0x6e79c1c4; BYTE $0xe1 // vmovd xmm4, r9d 2780 LONG $0x2259e3c4; WORD $0x01e7 // vpinsrd xmm4, xmm4, edi, 1 2781 LONG $0x2259e3c4; WORD $0x02e1 // vpinsrd xmm4, xmm4, ecx, 2 2782 LONG $0x2259e3c4; WORD $0x03e2 // vpinsrd xmm4, xmm4, edx, 3 2783 LONG $0x385de3c4; WORD $0x01db // vinserti128 ymm3, ymm4, xmm3, 1 2784 LONG $0x4565e2c4; BYTE $0xd8 // vpsrlvd ymm3, ymm3, ymm0 2785 LONG $0xd9dbe5c5 // vpand ymm3, ymm3, ymm1 2786 LONG $0x7f7ec1c4; WORD $0xe05f // vmovdqu yword [r15 - 32], ymm3 2787 WORD $0x8b44; BYTE $0x0b // mov r9d, dword [rbx] 2788 LONG $0xfc5b8b44 // mov r11d, dword [rbx - 4] 2789 WORD $0x8944; BYTE $0xca // mov edx, r9d 2790 LONG $0xdaa40f44; BYTE $0x04 // shld edx, r11d, 4 2791 LONG $0xf8538b44 // mov r10d, dword [rbx - 8] 2792 WORD $0x8944; BYTE $0xdf // mov edi, r11d 2793 LONG $0xd7a40f44; BYTE $0x08 // shld edi, r10d, 8 2794 WORD $0x438b; BYTE $0xf0 // mov eax, dword [rbx - 16] 2795 WORD $0x738b; BYTE $0xf4 // mov esi, dword [rbx - 12] 2796 WORD $0x8944; BYTE $0xd1 // mov ecx, r10d 2797 LONG $0x0cf1a40f // shld ecx, esi, 12 2798 LONG $0x10f0ac0f // shrd eax, esi, 16 2799 LONG $0xdf6ef9c5 // vmovd xmm3, edi 2800 LONG $0x2261c3c4; WORD $0x01db // vpinsrd xmm3, xmm3, r11d, 1 2801 LONG $0x2261e3c4; WORD $0x02da // vpinsrd xmm3, xmm3, edx, 2 2802 LONG $0x2261c3c4; WORD $0x03d9 // vpinsrd xmm3, xmm3, r9d, 3 2803 LONG $0xe06ef9c5 // vmovd xmm4, eax 2804 LONG $0x2259e3c4; WORD $0x01e6 // vpinsrd xmm4, xmm4, esi, 1 2805 LONG $0x2259e3c4; WORD $0x02e1 // vpinsrd xmm4, xmm4, ecx, 2 2806 LONG $0x2259c3c4; WORD $0x03e2 // vpinsrd xmm4, xmm4, r10d, 3 2807 LONG $0x385de3c4; WORD $0x01db // vinserti128 ymm3, ymm4, xmm3, 1 2808 LONG $0x4565e2c4; BYTE $0xda // vpsrlvd ymm3, ymm3, ymm2 2809 LONG $0xd9dbe5c5 // vpand ymm3, ymm3, ymm1 2810 LONG $0x7f7ec1c4; BYTE $0x1f // vmovdqu yword [r15], ymm3 2811 LONG $0x80ef8349 // sub r15, -128 2812 LONG $0x48c38348 // add rbx, 72 2813 LONG $0xffc08349 // add r8, -1 2814 JNE LBB0_119 2815 JMP LBB0_147 2816 2817 LBB0_129: 2818 WORD $0xfa83; BYTE $0x20 // cmp edx, 32 2819 JL LBB0_147 2820 WORD $0x8945; BYTE $0xf0 // mov r8d, r14d 2821 LONG $0x60c78349 // add r15, 96 2822 LONG $0x24c38348 // add rbx, 36 2823 QUAD $0x000007e0856ffdc5 // vmovdqa ymm0, yword 2016[rbp] /* [rip + .LCPI0_101] */ 2824 QUAD $0x0000b08d597de2c4; BYTE $0x00 // vpbroadcastq ymm1, qword 176[rbp] /* [rip + .LCPI0_102] */ 2825 QUAD $0x00000800956ffdc5 // vmovdqa ymm2, yword 2048[rbp] /* [rip + .LCPI0_103] */ 2826 2827 LBB0_131: 2828 WORD $0x4b8b; BYTE $0xe4 // mov ecx, dword [rbx - 28] 2829 WORD $0x538b; BYTE $0xdc // mov edx, dword [rbx - 36] 2830 WORD $0x738b; BYTE $0xe0 // mov esi, dword [rbx - 32] 2831 WORD $0xcf89 // mov edi, ecx 2832 LONG $0x04f7a40f // shld edi, esi, 4 2833 LONG $0xde6ef9c5 // vmovd xmm3, esi 2834 LONG $0x2261e3c4; WORD $0x01de // vpinsrd xmm3, xmm3, esi, 1 2835 LONG $0x02d6a40f // shld esi, edx, 2 2836 LONG $0x2261e3c4; WORD $0x02df // vpinsrd xmm3, xmm3, edi, 2 2837 LONG $0x2261e3c4; WORD $0x03d9 // vpinsrd xmm3, xmm3, ecx, 3 2838 LONG $0xe26ef9c5 // vmovd xmm4, edx 2839 LONG $0x2259e3c4; WORD $0x01e2 // vpinsrd xmm4, xmm4, edx, 1 2840 LONG $0x2259e3c4; WORD $0x02e2 // vpinsrd xmm4, xmm4, edx, 2 2841 LONG $0x2259e3c4; WORD $0x03e6 // vpinsrd xmm4, xmm4, esi, 3 2842 LONG $0x385de3c4; WORD $0x01db // vinserti128 ymm3, ymm4, xmm3, 1 2843 LONG $0x4565e2c4; BYTE $0xd8 // vpsrlvd ymm3, ymm3, ymm0 2844 LONG $0xd9dbe5c5 // vpand ymm3, ymm3, ymm1 2845 LONG $0x7f7ec1c4; WORD $0xa05f // vmovdqu yword [r15 - 96], ymm3 2846 WORD $0x4b8b; BYTE $0xec // mov ecx, dword [rbx - 20] 2847 WORD $0x538b; BYTE $0xe8 // mov edx, dword [rbx - 24] 2848 WORD $0xce89 // mov esi, ecx 2849 LONG $0x08d6a40f // shld esi, edx, 8 2850 WORD $0x7b8b; BYTE $0xe4 // mov edi, dword [rbx - 28] 2851 WORD $0xd089 // mov eax, edx 2852 LONG $0x06f8a40f // shld eax, edi, 6 2853 LONG $0xde6ef9c5 // vmovd xmm3, esi 2854 LONG $0x2261e3c4; WORD $0x01d9 // vpinsrd xmm3, xmm3, ecx, 1 2855 LONG $0x2261e3c4; WORD $0x02d9 // vpinsrd xmm3, xmm3, ecx, 2 2856 LONG $0x2261e3c4; WORD $0x03d9 // vpinsrd xmm3, xmm3, ecx, 3 2857 LONG $0xe76ef9c5 // vmovd xmm4, edi 2858 LONG $0x2259e3c4; WORD $0x01e0 // vpinsrd xmm4, xmm4, eax, 1 2859 LONG $0x2259e3c4; WORD $0x02e2 // vpinsrd xmm4, xmm4, edx, 2 2860 LONG $0x2259e3c4; WORD $0x03e2 // vpinsrd xmm4, xmm4, edx, 3 2861 LONG $0x385de3c4; WORD $0x01db // vinserti128 ymm3, ymm4, xmm3, 1 2862 LONG $0x4565e2c4; BYTE $0xda // vpsrlvd ymm3, ymm3, ymm2 2863 LONG $0xd9dbe5c5 // vpand ymm3, ymm3, ymm1 2864 LONG $0x7f7ec1c4; WORD $0xc05f // vmovdqu yword [r15 - 64], ymm3 2865 WORD $0x438b; BYTE $0xf8 // mov eax, dword [rbx - 8] 2866 WORD $0x4b8b; BYTE $0xf0 // mov ecx, dword [rbx - 16] 2867 WORD $0x538b; BYTE $0xf4 // mov edx, dword [rbx - 12] 2868 WORD $0xc689 // mov esi, eax 2869 LONG $0x04d6a40f // shld esi, edx, 4 2870 LONG $0xda6ef9c5 // vmovd xmm3, edx 2871 LONG $0x2261e3c4; WORD $0x01da // vpinsrd xmm3, xmm3, edx, 1 2872 LONG $0x02caa40f // shld edx, ecx, 2 2873 LONG $0x2261e3c4; WORD $0x02de // vpinsrd xmm3, xmm3, esi, 2 2874 LONG $0x2261e3c4; WORD $0x03d8 // vpinsrd xmm3, xmm3, eax, 3 2875 LONG $0xe16ef9c5 // vmovd xmm4, ecx 2876 LONG $0x2259e3c4; WORD $0x01e1 // vpinsrd xmm4, xmm4, ecx, 1 2877 LONG $0x2259e3c4; WORD $0x02e1 // vpinsrd xmm4, xmm4, ecx, 2 2878 LONG $0x2259e3c4; WORD $0x03e2 // vpinsrd xmm4, xmm4, edx, 3 2879 LONG $0x385de3c4; WORD $0x01db // vinserti128 ymm3, ymm4, xmm3, 1 2880 LONG $0x4565e2c4; BYTE $0xd8 // vpsrlvd ymm3, ymm3, ymm0 2881 LONG $0xd9dbe5c5 // vpand ymm3, ymm3, ymm1 2882 LONG $0x7f7ec1c4; WORD $0xe05f // vmovdqu yword [r15 - 32], ymm3 2883 WORD $0x038b // mov eax, dword [rbx] 2884 WORD $0x4b8b; BYTE $0xf8 // mov ecx, dword [rbx - 8] 2885 WORD $0x538b; BYTE $0xfc // mov edx, dword [rbx - 4] 2886 WORD $0xc689 // mov esi, eax 2887 LONG $0x08d6a40f // shld esi, edx, 8 2888 WORD $0xd789 // mov edi, edx 2889 LONG $0x06cfa40f // shld edi, ecx, 6 2890 LONG $0xde6ef9c5 // vmovd xmm3, esi 2891 LONG $0x2261e3c4; WORD $0x01d8 // vpinsrd xmm3, xmm3, eax, 1 2892 LONG $0x2261e3c4; WORD $0x02d8 // vpinsrd xmm3, xmm3, eax, 2 2893 LONG $0x2261e3c4; WORD $0x03d8 // vpinsrd xmm3, xmm3, eax, 3 2894 LONG $0xe16ef9c5 // vmovd xmm4, ecx 2895 LONG $0x2259e3c4; WORD $0x01e7 // vpinsrd xmm4, xmm4, edi, 1 2896 LONG $0x2259e3c4; WORD $0x02e2 // vpinsrd xmm4, xmm4, edx, 2 2897 LONG $0x2259e3c4; WORD $0x03e2 // vpinsrd xmm4, xmm4, edx, 3 2898 LONG $0x385de3c4; WORD $0x01db // vinserti128 ymm3, ymm4, xmm3, 1 2899 LONG $0x4565e2c4; BYTE $0xda // vpsrlvd ymm3, ymm3, ymm2 2900 LONG $0xd9dbe5c5 // vpand ymm3, ymm3, ymm1 2901 LONG $0x7f7ec1c4; BYTE $0x1f // vmovdqu yword [r15], ymm3 2902 LONG $0x80ef8349 // sub r15, -128 2903 LONG $0x28c38348 // add rbx, 40 2904 LONG $0xffc08349 // add r8, -1 2905 JNE LBB0_131 2906 JMP LBB0_147 2907 2908 LBB0_105: 2909 WORD $0xfa83; BYTE $0x20 // cmp edx, 32 2910 JL LBB0_147 2911 WORD $0x8945; BYTE $0xf0 // mov r8d, r14d 2912 LONG $0x60c78349 // add r15, 96 2913 LONG $0x64c38348 // add rbx, 100 2914 LONG $0x597de2c4; WORD $0x2845 // vpbroadcastq ymm0, qword 40[rbp] /* [rip + .LCPI0_34] */ 2915 LONG $0x5979e2c4; WORD $0x304d // vpbroadcastq xmm1, qword 48[rbp] /* [rip + .LCPI0_35] */ 2916 QUAD $0x000002c0956ffdc5 // vmovdqa ymm2, yword 704[rbp] /* [rip + .LCPI0_33] */ 2917 LONG $0x5979e2c4; WORD $0x385d // vpbroadcastq xmm3, qword 56[rbp] /* [rip + .LCPI0_36] */ 2918 QUAD $0x000002e0a56ffdc5 // vmovdqa ymm4, yword 736[rbp] /* [rip + .LCPI0_37] */ 2919 2920 LBB0_107: 2921 WORD $0x4b8b; BYTE $0xb0 // mov ecx, dword [rbx - 80] 2922 LONG $0xb44b8b44 // mov r9d, dword [rbx - 76] 2923 LONG $0xc9a40f41; BYTE $0x0a // shld r9d, ecx, 10 2924 LONG $0xac5b8b44 // mov r11d, dword [rbx - 84] 2925 LONG $0xd9a40f44; BYTE $0x04 // shld ecx, r11d, 4 2926 WORD $0x7b8b; BYTE $0xa8 // mov edi, dword [rbx - 88] 2927 WORD $0x8944; BYTE $0xde // mov esi, r11d 2928 LONG $0x18fea40f // shld esi, edi, 24 2929 WORD $0x538b; BYTE $0xa4 // mov edx, dword [rbx - 92] 2930 LONG $0x12d7a40f // shld edi, edx, 18 2931 LONG $0x9c538b44 // mov r10d, dword [rbx - 100] 2932 WORD $0x438b; BYTE $0xa0 // mov eax, dword [rbx - 96] 2933 LONG $0x0cc2a40f // shld edx, eax, 12 2934 LONG $0xd0a40f44; BYTE $0x06 // shld eax, r10d, 6 2935 LONG $0x6e79c1c4; BYTE $0xea // vmovd xmm5, r10d 2936 LONG $0xf66ef9c5 // vmovd xmm6, esi 2937 LONG $0x2251e3c4; WORD $0x01e8 // vpinsrd xmm5, xmm5, eax, 1 2938 LONG $0x2249c3c4; WORD $0x01f3 // vpinsrd xmm6, xmm6, r11d, 1 2939 LONG $0x2251e3c4; WORD $0x02ea // vpinsrd xmm5, xmm5, edx, 2 2940 LONG $0x2249e3c4; WORD $0x02f1 // vpinsrd xmm6, xmm6, ecx, 2 2941 LONG $0x2251e3c4; WORD $0x03ef // vpinsrd xmm5, xmm5, edi, 3 2942 LONG $0x2249c3c4; WORD $0x03f1 // vpinsrd xmm6, xmm6, r9d, 3 2943 LONG $0x3855e3c4; WORD $0x01ee // vinserti128 ymm5, ymm5, xmm6, 1 2944 LONG $0x4555e2c4; BYTE $0xea // vpsrlvd ymm5, ymm5, ymm2 2945 LONG $0xe8dbd5c5 // vpand ymm5, ymm5, ymm0 2946 LONG $0x7f7ec1c4; WORD $0xa06f // vmovdqu yword [r15 - 96], ymm5 2947 LONG $0xcc4b8b44 // mov r9d, dword [rbx - 52] 2948 WORD $0x4b8b; BYTE $0xc8 // mov ecx, dword [rbx - 56] 2949 WORD $0x8944; BYTE $0xca // mov edx, r9d 2950 LONG $0x14caa40f // shld edx, ecx, 20 2951 WORD $0x738b; BYTE $0xc4 // mov esi, dword [rbx - 60] 2952 LONG $0x0ef1a40f // shld ecx, esi, 14 2953 WORD $0x7b8b; BYTE $0xbc // mov edi, dword [rbx - 68] 2954 WORD $0x438b; BYTE $0xc0 // mov eax, dword [rbx - 64] 2955 LONG $0x08c6a40f // shld esi, eax, 8 2956 LONG $0x02f8a40f // shld eax, edi, 2 2957 LONG $0x6b7efac5; BYTE $0xb4 // vmovq xmm5, qword [rbx - 76] 2958 LONG $0x4551e2c4; BYTE $0xf1 // vpsrlvd xmm6, xmm5, xmm1 2959 LONG $0xed70f9c5; BYTE $0xe5 // vpshufd xmm5, xmm5, 229 2960 LONG $0x2251e3c4; WORD $0x01ef // vpinsrd xmm5, xmm5, edi, 1 2961 LONG $0x4751e2c4; BYTE $0xeb // vpsllvd xmm5, xmm5, xmm3 2962 LONG $0xedebc9c5 // vpor xmm5, xmm6, xmm5 2963 LONG $0xf66ef9c5 // vmovd xmm6, esi 2964 LONG $0x2249e3c4; WORD $0x01f1 // vpinsrd xmm6, xmm6, ecx, 1 2965 LONG $0x2249e3c4; WORD $0x02f2 // vpinsrd xmm6, xmm6, edx, 2 2966 LONG $0x2249c3c4; WORD $0x03f1 // vpinsrd xmm6, xmm6, r9d, 3 2967 LONG $0x2251e3c4; WORD $0x02ef // vpinsrd xmm5, xmm5, edi, 2 2968 LONG $0x2251e3c4; WORD $0x03e8 // vpinsrd xmm5, xmm5, eax, 3 2969 LONG $0x3855e3c4; WORD $0x01ee // vinserti128 ymm5, ymm5, xmm6, 1 2970 LONG $0x4555e2c4; BYTE $0xec // vpsrlvd ymm5, ymm5, ymm4 2971 LONG $0xe8dbd5c5 // vpand ymm5, ymm5, ymm0 2972 LONG $0x7f7ec1c4; WORD $0xc06f // vmovdqu yword [r15 - 64], ymm5 2973 WORD $0x438b; BYTE $0xe4 // mov eax, dword [rbx - 28] 2974 LONG $0xe84b8b44 // mov r9d, dword [rbx - 24] 2975 LONG $0xc1a40f41; BYTE $0x0a // shld r9d, eax, 10 2976 LONG $0xe05b8b44 // mov r11d, dword [rbx - 32] 2977 LONG $0xd8a40f44; BYTE $0x04 // shld eax, r11d, 4 2978 WORD $0x738b; BYTE $0xdc // mov esi, dword [rbx - 36] 2979 WORD $0x8944; BYTE $0xdf // mov edi, r11d 2980 LONG $0x18f7a40f // shld edi, esi, 24 2981 WORD $0x4b8b; BYTE $0xd8 // mov ecx, dword [rbx - 40] 2982 LONG $0x12cea40f // shld esi, ecx, 18 2983 LONG $0xd0538b44 // mov r10d, dword [rbx - 48] 2984 WORD $0x538b; BYTE $0xd4 // mov edx, dword [rbx - 44] 2985 LONG $0x0cd1a40f // shld ecx, edx, 12 2986 LONG $0xd2a40f44; BYTE $0x06 // shld edx, r10d, 6 2987 LONG $0x6e79c1c4; BYTE $0xea // vmovd xmm5, r10d 2988 LONG $0xf76ef9c5 // vmovd xmm6, edi 2989 LONG $0x2251e3c4; WORD $0x01ea // vpinsrd xmm5, xmm5, edx, 1 2990 LONG $0x2249c3c4; WORD $0x01f3 // vpinsrd xmm6, xmm6, r11d, 1 2991 LONG $0x2251e3c4; WORD $0x02e9 // vpinsrd xmm5, xmm5, ecx, 2 2992 LONG $0x2249e3c4; WORD $0x02f0 // vpinsrd xmm6, xmm6, eax, 2 2993 LONG $0x2251e3c4; WORD $0x03ee // vpinsrd xmm5, xmm5, esi, 3 2994 LONG $0x2249c3c4; WORD $0x03f1 // vpinsrd xmm6, xmm6, r9d, 3 2995 LONG $0x3855e3c4; WORD $0x01ee // vinserti128 ymm5, ymm5, xmm6, 1 2996 LONG $0x4555e2c4; BYTE $0xea // vpsrlvd ymm5, ymm5, ymm2 2997 LONG $0xe8dbd5c5 // vpand ymm5, ymm5, ymm0 2998 LONG $0x7f7ec1c4; WORD $0xe06f // vmovdqu yword [r15 - 32], ymm5 2999 WORD $0x8b44; BYTE $0x0b // mov r9d, dword [rbx] 3000 WORD $0x4b8b; BYTE $0xfc // mov ecx, dword [rbx - 4] 3001 WORD $0x8944; BYTE $0xca // mov edx, r9d 3002 LONG $0x14caa40f // shld edx, ecx, 20 3003 WORD $0x738b; BYTE $0xf8 // mov esi, dword [rbx - 8] 3004 LONG $0x0ef1a40f // shld ecx, esi, 14 3005 WORD $0x7b8b; BYTE $0xf0 // mov edi, dword [rbx - 16] 3006 WORD $0x438b; BYTE $0xf4 // mov eax, dword [rbx - 12] 3007 LONG $0x08c6a40f // shld esi, eax, 8 3008 LONG $0x02f8a40f // shld eax, edi, 2 3009 LONG $0x6b7efac5; BYTE $0xe8 // vmovq xmm5, qword [rbx - 24] 3010 LONG $0x4551e2c4; BYTE $0xf1 // vpsrlvd xmm6, xmm5, xmm1 3011 LONG $0xed70f9c5; BYTE $0xe5 // vpshufd xmm5, xmm5, 229 3012 LONG $0x2251e3c4; WORD $0x01ef // vpinsrd xmm5, xmm5, edi, 1 3013 LONG $0x4751e2c4; BYTE $0xeb // vpsllvd xmm5, xmm5, xmm3 3014 LONG $0xedebc9c5 // vpor xmm5, xmm6, xmm5 3015 LONG $0xf66ef9c5 // vmovd xmm6, esi 3016 LONG $0x2249e3c4; WORD $0x01f1 // vpinsrd xmm6, xmm6, ecx, 1 3017 LONG $0x2249e3c4; WORD $0x02f2 // vpinsrd xmm6, xmm6, edx, 2 3018 LONG $0x2249c3c4; WORD $0x03f1 // vpinsrd xmm6, xmm6, r9d, 3 3019 LONG $0x2251e3c4; WORD $0x02ef // vpinsrd xmm5, xmm5, edi, 2 3020 LONG $0x2251e3c4; WORD $0x03e8 // vpinsrd xmm5, xmm5, eax, 3 3021 LONG $0x3855e3c4; WORD $0x01ee // vinserti128 ymm5, ymm5, xmm6, 1 3022 LONG $0x4555e2c4; BYTE $0xec // vpsrlvd ymm5, ymm5, ymm4 3023 LONG $0xe8dbd5c5 // vpand ymm5, ymm5, ymm0 3024 LONG $0x7f7ec1c4; BYTE $0x2f // vmovdqu yword [r15], ymm5 3025 LONG $0x80ef8349 // sub r15, -128 3026 LONG $0x68c38348 // add rbx, 104 3027 LONG $0xffc08349 // add r8, -1 3028 JNE LBB0_107 3029 JMP LBB0_147 3030 3031 LBB0_135: 3032 WORD $0xfa83; BYTE $0x20 // cmp edx, 32 3033 JL LBB0_147 3034 WORD $0x8944; BYTE $0xf0 // mov eax, r14d 3035 LONG $0x60c78349 // add r15, 96 3036 LONG $0x14c38348 // add rbx, 20 3037 QUAD $0x00000920856ffdc5 // vmovdqa ymm0, yword 2336[rbp] /* [rip + .LCPI0_116] */ 3038 QUAD $0x0000c88d597de2c4; BYTE $0x00 // vpbroadcastq ymm1, qword 200[rbp] /* [rip + .LCPI0_117] */ 3039 QUAD $0x00000940956ffdc5 // vmovdqa ymm2, yword 2368[rbp] /* [rip + .LCPI0_118] */ 3040 3041 LBB0_137: 3042 WORD $0x4b8b; BYTE $0xec // mov ecx, dword [rbx - 20] 3043 WORD $0x538b; BYTE $0xf0 // mov edx, dword [rbx - 16] 3044 WORD $0xd689 // mov esi, edx 3045 LONG $0x02cea40f // shld esi, ecx, 2 3046 LONG $0xd96ef9c5 // vmovd xmm3, ecx 3047 LONG $0x5879e2c4; BYTE $0xe3 // vpbroadcastd xmm4, xmm3 3048 LONG $0x2261e3c4; WORD $0x01de // vpinsrd xmm3, xmm3, esi, 1 3049 LONG $0x2261e3c4; WORD $0x02da // vpinsrd xmm3, xmm3, edx, 2 3050 LONG $0x2261e3c4; WORD $0x03da // vpinsrd xmm3, xmm3, edx, 3 3051 LONG $0x385de3c4; WORD $0x01db // vinserti128 ymm3, ymm4, xmm3, 1 3052 LONG $0x4565e2c4; BYTE $0xd8 // vpsrlvd ymm3, ymm3, ymm0 3053 LONG $0xd9dbe5c5 // vpand ymm3, ymm3, ymm1 3054 LONG $0x7f7ec1c4; WORD $0xa05f // vmovdqu yword [r15 - 96], ymm3 3055 WORD $0x4b8b; BYTE $0xf0 // mov ecx, dword [rbx - 16] 3056 WORD $0x538b; BYTE $0xf4 // mov edx, dword [rbx - 12] 3057 WORD $0xd689 // mov esi, edx 3058 LONG $0x04cea40f // shld esi, ecx, 4 3059 LONG $0xd96ef9c5 // vmovd xmm3, ecx 3060 LONG $0x2261e3c4; WORD $0x01d9 // vpinsrd xmm3, xmm3, ecx, 1 3061 LONG $0x2261e3c4; WORD $0x02de // vpinsrd xmm3, xmm3, esi, 2 3062 LONG $0x2261e3c4; WORD $0x03da // vpinsrd xmm3, xmm3, edx, 3 3063 LONG $0xe26ef9c5 // vmovd xmm4, edx 3064 LONG $0x5879e2c4; BYTE $0xe4 // vpbroadcastd xmm4, xmm4 3065 LONG $0x3865e3c4; WORD $0x01dc // vinserti128 ymm3, ymm3, xmm4, 1 3066 LONG $0x4565e2c4; BYTE $0xda // vpsrlvd ymm3, ymm3, ymm2 3067 LONG $0xd9dbe5c5 // vpand ymm3, ymm3, ymm1 3068 LONG $0x7f7ec1c4; WORD $0xc05f // vmovdqu yword [r15 - 64], ymm3 3069 WORD $0x4b8b; BYTE $0xf8 // mov ecx, dword [rbx - 8] 3070 WORD $0x538b; BYTE $0xfc // mov edx, dword [rbx - 4] 3071 WORD $0xd689 // mov esi, edx 3072 LONG $0x02cea40f // shld esi, ecx, 2 3073 LONG $0xd96ef9c5 // vmovd xmm3, ecx 3074 LONG $0x2261e3c4; WORD $0x01e6 // vpinsrd xmm4, xmm3, esi, 1 3075 LONG $0x2259e3c4; WORD $0x02e2 // vpinsrd xmm4, xmm4, edx, 2 3076 LONG $0x5879e2c4; BYTE $0xdb // vpbroadcastd xmm3, xmm3 3077 LONG $0x2259e3c4; WORD $0x03e2 // vpinsrd xmm4, xmm4, edx, 3 3078 LONG $0x3865e3c4; WORD $0x01dc // vinserti128 ymm3, ymm3, xmm4, 1 3079 LONG $0x4565e2c4; BYTE $0xd8 // vpsrlvd ymm3, ymm3, ymm0 3080 LONG $0xd9dbe5c5 // vpand ymm3, ymm3, ymm1 3081 LONG $0x7f7ec1c4; WORD $0xe05f // vmovdqu yword [r15 - 32], ymm3 3082 WORD $0x4b8b; BYTE $0xfc // mov ecx, dword [rbx - 4] 3083 WORD $0x138b // mov edx, dword [rbx] 3084 WORD $0xd689 // mov esi, edx 3085 LONG $0x04cea40f // shld esi, ecx, 4 3086 LONG $0xd96ef9c5 // vmovd xmm3, ecx 3087 LONG $0x2261e3c4; WORD $0x01d9 // vpinsrd xmm3, xmm3, ecx, 1 3088 LONG $0x2261e3c4; WORD $0x02de // vpinsrd xmm3, xmm3, esi, 2 3089 LONG $0x2261e3c4; WORD $0x03da // vpinsrd xmm3, xmm3, edx, 3 3090 LONG $0xe26ef9c5 // vmovd xmm4, edx 3091 LONG $0x5879e2c4; BYTE $0xe4 // vpbroadcastd xmm4, xmm4 3092 LONG $0x3865e3c4; WORD $0x01dc // vinserti128 ymm3, ymm3, xmm4, 1 3093 LONG $0x4565e2c4; BYTE $0xda // vpsrlvd ymm3, ymm3, ymm2 3094 LONG $0xd9dbe5c5 // vpand ymm3, ymm3, ymm1 3095 LONG $0x7f7ec1c4; BYTE $0x1f // vmovdqu yword [r15], ymm3 3096 LONG $0x80ef8349 // sub r15, -128 3097 LONG $0x18c38348 // add rbx, 24 3098 LONG $0xffc08348 // add rax, -1 3099 JNE LBB0_137 3100 JMP LBB0_147 3101 3102 LBB0_111: 3103 WORD $0xfa83; BYTE $0x20 // cmp edx, 32 3104 JL LBB0_147 3105 WORD $0x8945; BYTE $0xf0 // mov r8d, r14d 3106 LONG $0x60c78349 // add r15, 96 3107 LONG $0x54c38348 // add rbx, 84 3108 QUAD $0x000003e0856ffdc5 // vmovdqa ymm0, yword 992[rbp] /* [rip + .LCPI0_55] */ 3109 LONG $0x597de2c4; WORD $0x504d // vpbroadcastq ymm1, qword 80[rbp] /* [rip + .LCPI0_56] */ 3110 QUAD $0x00000400956ffdc5 // vmovdqa ymm2, yword 1024[rbp] /* [rip + .LCPI0_57] */ 3111 3112 LBB0_113: 3113 LONG $0xbc538b44 // mov r10d, dword [rbx - 68] 3114 LONG $0xc04b8b44 // mov r9d, dword [rbx - 64] 3115 LONG $0xd1a40f45; BYTE $0x06 // shld r9d, r10d, 6 3116 WORD $0x738b; BYTE $0xb8 // mov esi, dword [rbx - 72] 3117 WORD $0x8944; BYTE $0xd7 // mov edi, r10d 3118 LONG $0x12f7a40f // shld edi, esi, 18 3119 WORD $0x538b; BYTE $0xb4 // mov edx, dword [rbx - 76] 3120 LONG $0x08d6a40f // shld esi, edx, 8 3121 LONG $0xac5b8b44 // mov r11d, dword [rbx - 84] 3122 WORD $0x4b8b; BYTE $0xb0 // mov ecx, dword [rbx - 80] 3123 WORD $0xd089 // mov eax, edx 3124 LONG $0x14c8a40f // shld eax, ecx, 20 3125 LONG $0xd9a40f44; BYTE $0x0a // shld ecx, r11d, 10 3126 LONG $0x6e79c1c4; BYTE $0xdb // vmovd xmm3, r11d 3127 LONG $0xe66ef9c5 // vmovd xmm4, esi 3128 LONG $0x2261e3c4; WORD $0x01d9 // vpinsrd xmm3, xmm3, ecx, 1 3129 LONG $0x2259e3c4; WORD $0x01e7 // vpinsrd xmm4, xmm4, edi, 1 3130 LONG $0x2261e3c4; WORD $0x02d8 // vpinsrd xmm3, xmm3, eax, 2 3131 LONG $0x2259c3c4; WORD $0x02e2 // vpinsrd xmm4, xmm4, r10d, 2 3132 LONG $0x2261e3c4; WORD $0x03da // vpinsrd xmm3, xmm3, edx, 3 3133 LONG $0x2259c3c4; WORD $0x03e1 // vpinsrd xmm4, xmm4, r9d, 3 3134 LONG $0x3865e3c4; WORD $0x01dc // vinserti128 ymm3, ymm3, xmm4, 1 3135 LONG $0x4565e2c4; BYTE $0xd8 // vpsrlvd ymm3, ymm3, ymm0 3136 LONG $0xd9dbe5c5 // vpand ymm3, ymm3, ymm1 3137 LONG $0x7f7ec1c4; WORD $0xa05f // vmovdqu yword [r15 - 96], ymm3 3138 LONG $0xd44b8b44 // mov r9d, dword [rbx - 44] 3139 WORD $0x4b8b; BYTE $0xd0 // mov ecx, dword [rbx - 48] 3140 WORD $0x8945; BYTE $0xca // mov r10d, r9d 3141 LONG $0xcaa40f41; BYTE $0x0c // shld r10d, ecx, 12 3142 WORD $0x738b; BYTE $0xcc // mov esi, dword [rbx - 52] 3143 LONG $0x02f1a40f // shld ecx, esi, 2 3144 WORD $0x7b8b; BYTE $0xc8 // mov edi, dword [rbx - 56] 3145 LONG $0xde6ef9c5 // vmovd xmm3, esi 3146 LONG $0x0efea40f // shld esi, edi, 14 3147 WORD $0x438b; BYTE $0xc0 // mov eax, dword [rbx - 64] 3148 WORD $0x538b; BYTE $0xc4 // mov edx, dword [rbx - 60] 3149 LONG $0x04d7a40f // shld edi, edx, 4 3150 LONG $0x10d0ac0f // shrd eax, edx, 16 3151 LONG $0x2261e3c4; WORD $0x01d9 // vpinsrd xmm3, xmm3, ecx, 1 3152 LONG $0xe06ef9c5 // vmovd xmm4, eax 3153 LONG $0x2261c3c4; WORD $0x02da // vpinsrd xmm3, xmm3, r10d, 2 3154 LONG $0x2259e3c4; WORD $0x01e2 // vpinsrd xmm4, xmm4, edx, 1 3155 LONG $0x2261c3c4; WORD $0x03d9 // vpinsrd xmm3, xmm3, r9d, 3 3156 LONG $0x2259e3c4; WORD $0x02e7 // vpinsrd xmm4, xmm4, edi, 2 3157 LONG $0x2259e3c4; WORD $0x03e6 // vpinsrd xmm4, xmm4, esi, 3 3158 LONG $0x385de3c4; WORD $0x01db // vinserti128 ymm3, ymm4, xmm3, 1 3159 LONG $0x4565e2c4; BYTE $0xda // vpsrlvd ymm3, ymm3, ymm2 3160 LONG $0xd9dbe5c5 // vpand ymm3, ymm3, ymm1 3161 LONG $0x7f7ec1c4; WORD $0xc05f // vmovdqu yword [r15 - 64], ymm3 3162 LONG $0xe8538b44 // mov r10d, dword [rbx - 24] 3163 LONG $0xec4b8b44 // mov r9d, dword [rbx - 20] 3164 LONG $0xd1a40f45; BYTE $0x06 // shld r9d, r10d, 6 3165 WORD $0x538b; BYTE $0xe4 // mov edx, dword [rbx - 28] 3166 WORD $0x8944; BYTE $0xd6 // mov esi, r10d 3167 LONG $0x12d6a40f // shld esi, edx, 18 3168 WORD $0x4b8b; BYTE $0xe0 // mov ecx, dword [rbx - 32] 3169 LONG $0x08caa40f // shld edx, ecx, 8 3170 LONG $0xd85b8b44 // mov r11d, dword [rbx - 40] 3171 WORD $0x438b; BYTE $0xdc // mov eax, dword [rbx - 36] 3172 WORD $0xcf89 // mov edi, ecx 3173 LONG $0x14c7a40f // shld edi, eax, 20 3174 LONG $0xd8a40f44; BYTE $0x0a // shld eax, r11d, 10 3175 LONG $0x6e79c1c4; BYTE $0xdb // vmovd xmm3, r11d 3176 LONG $0xe26ef9c5 // vmovd xmm4, edx 3177 LONG $0x2261e3c4; WORD $0x01d8 // vpinsrd xmm3, xmm3, eax, 1 3178 LONG $0x2259e3c4; WORD $0x01e6 // vpinsrd xmm4, xmm4, esi, 1 3179 LONG $0x2261e3c4; WORD $0x02df // vpinsrd xmm3, xmm3, edi, 2 3180 LONG $0x2259c3c4; WORD $0x02e2 // vpinsrd xmm4, xmm4, r10d, 2 3181 LONG $0x2261e3c4; WORD $0x03d9 // vpinsrd xmm3, xmm3, ecx, 3 3182 LONG $0x2259c3c4; WORD $0x03e1 // vpinsrd xmm4, xmm4, r9d, 3 3183 LONG $0x3865e3c4; WORD $0x01dc // vinserti128 ymm3, ymm3, xmm4, 1 3184 LONG $0x4565e2c4; BYTE $0xd8 // vpsrlvd ymm3, ymm3, ymm0 3185 LONG $0xd9dbe5c5 // vpand ymm3, ymm3, ymm1 3186 LONG $0x7f7ec1c4; WORD $0xe05f // vmovdqu yword [r15 - 32], ymm3 3187 WORD $0x8b44; BYTE $0x0b // mov r9d, dword [rbx] 3188 WORD $0x4b8b; BYTE $0xfc // mov ecx, dword [rbx - 4] 3189 WORD $0x8945; BYTE $0xca // mov r10d, r9d 3190 LONG $0xcaa40f41; BYTE $0x0c // shld r10d, ecx, 12 3191 WORD $0x738b; BYTE $0xf8 // mov esi, dword [rbx - 8] 3192 LONG $0x02f1a40f // shld ecx, esi, 2 3193 WORD $0x7b8b; BYTE $0xf4 // mov edi, dword [rbx - 12] 3194 LONG $0xde6ef9c5 // vmovd xmm3, esi 3195 LONG $0x0efea40f // shld esi, edi, 14 3196 WORD $0x438b; BYTE $0xec // mov eax, dword [rbx - 20] 3197 WORD $0x538b; BYTE $0xf0 // mov edx, dword [rbx - 16] 3198 LONG $0x04d7a40f // shld edi, edx, 4 3199 LONG $0x10d0ac0f // shrd eax, edx, 16 3200 LONG $0x2261e3c4; WORD $0x01d9 // vpinsrd xmm3, xmm3, ecx, 1 3201 LONG $0xe06ef9c5 // vmovd xmm4, eax 3202 LONG $0x2261c3c4; WORD $0x02da // vpinsrd xmm3, xmm3, r10d, 2 3203 LONG $0x2259e3c4; WORD $0x01e2 // vpinsrd xmm4, xmm4, edx, 1 3204 LONG $0x2261c3c4; WORD $0x03d9 // vpinsrd xmm3, xmm3, r9d, 3 3205 LONG $0x2259e3c4; WORD $0x02e7 // vpinsrd xmm4, xmm4, edi, 2 3206 LONG $0x2259e3c4; WORD $0x03e6 // vpinsrd xmm4, xmm4, esi, 3 3207 LONG $0x385de3c4; WORD $0x01db // vinserti128 ymm3, ymm4, xmm3, 1 3208 LONG $0x4565e2c4; BYTE $0xda // vpsrlvd ymm3, ymm3, ymm2 3209 LONG $0xd9dbe5c5 // vpand ymm3, ymm3, ymm1 3210 LONG $0x7f7ec1c4; BYTE $0x1f // vmovdqu yword [r15], ymm3 3211 LONG $0x80ef8349 // sub r15, -128 3212 LONG $0x58c38348 // add rbx, 88 3213 LONG $0xffc08349 // add r8, -1 3214 JNE LBB0_113 3215 JMP LBB0_147 3216 3217 LBB0_123: 3218 WORD $0xfa83; BYTE $0x20 // cmp edx, 32 3219 JL LBB0_147 3220 WORD $0x8945; BYTE $0xf0 // mov r8d, r14d 3221 LONG $0x60c78349 // add r15, 96 3222 LONG $0x34c38348 // add rbx, 52 3223 QUAD $0x00000680856ffdc5 // vmovdqa ymm0, yword 1664[rbp] /* [rip + .LCPI0_86] */ 3224 QUAD $0x0000908d597de2c4; BYTE $0x00 // vpbroadcastq ymm1, qword 144[rbp] /* [rip + .LCPI0_87] */ 3225 QUAD $0x000006a0956ffdc5 // vmovdqa ymm2, yword 1696[rbp] /* [rip + .LCPI0_88] */ 3226 3227 LBB0_125: 3228 LONG $0xd84b8b44 // mov r9d, dword [rbx - 40] 3229 WORD $0x4b8b; BYTE $0xd4 // mov ecx, dword [rbx - 44] 3230 WORD $0x8944; BYTE $0xce // mov esi, r9d 3231 LONG $0x0ccea40f // shld esi, ecx, 12 3232 WORD $0x7b8b; BYTE $0xcc // mov edi, dword [rbx - 52] 3233 LONG $0xd0538b44 // mov r10d, dword [rbx - 48] 3234 WORD $0xca89 // mov edx, ecx 3235 LONG $0xd2a40f44; BYTE $0x08 // shld edx, r10d, 8 3236 WORD $0x8944; BYTE $0xd0 // mov eax, r10d 3237 LONG $0x04f8a40f // shld eax, edi, 4 3238 LONG $0xda6ef9c5 // vmovd xmm3, edx 3239 LONG $0x2261e3c4; WORD $0x01d9 // vpinsrd xmm3, xmm3, ecx, 1 3240 LONG $0x2261e3c4; WORD $0x02de // vpinsrd xmm3, xmm3, esi, 2 3241 LONG $0x2261c3c4; WORD $0x03d9 // vpinsrd xmm3, xmm3, r9d, 3 3242 LONG $0xe76ef9c5 // vmovd xmm4, edi 3243 LONG $0x2259e3c4; WORD $0x01e7 // vpinsrd xmm4, xmm4, edi, 1 3244 LONG $0x2259e3c4; WORD $0x02e0 // vpinsrd xmm4, xmm4, eax, 2 3245 LONG $0x2259c3c4; WORD $0x03e2 // vpinsrd xmm4, xmm4, r10d, 3 3246 LONG $0x385de3c4; WORD $0x01db // vinserti128 ymm3, ymm4, xmm3, 1 3247 LONG $0x4565e2c4; BYTE $0xd8 // vpsrlvd ymm3, ymm3, ymm0 3248 LONG $0xd9dbe5c5 // vpand ymm3, ymm3, ymm1 3249 LONG $0x7f7ec1c4; WORD $0xa05f // vmovdqu yword [r15 - 96], ymm3 3250 WORD $0x438b; BYTE $0xe4 // mov eax, dword [rbx - 28] 3251 WORD $0x4b8b; BYTE $0xe0 // mov ecx, dword [rbx - 32] 3252 WORD $0xc289 // mov edx, eax 3253 LONG $0x0acaa40f // shld edx, ecx, 10 3254 LONG $0xd84b8b44 // mov r9d, dword [rbx - 40] 3255 WORD $0x738b; BYTE $0xdc // mov esi, dword [rbx - 36] 3256 LONG $0xd96ef9c5 // vmovd xmm3, ecx 3257 LONG $0x06f1a40f // shld ecx, esi, 6 3258 WORD $0xf789 // mov edi, esi 3259 LONG $0xcfa40f44; BYTE $0x02 // shld edi, r9d, 2 3260 LONG $0x6e79c1c4; BYTE $0xe1 // vmovd xmm4, r9d 3261 LONG $0x2259e3c4; WORD $0x01e7 // vpinsrd xmm4, xmm4, edi, 1 3262 LONG $0x2259e3c4; WORD $0x02e6 // vpinsrd xmm4, xmm4, esi, 2 3263 LONG $0x2259e3c4; WORD $0x03e1 // vpinsrd xmm4, xmm4, ecx, 3 3264 LONG $0x2261e3c4; WORD $0x01da // vpinsrd xmm3, xmm3, edx, 1 3265 LONG $0x2261e3c4; WORD $0x02d8 // vpinsrd xmm3, xmm3, eax, 2 3266 LONG $0x2261e3c4; WORD $0x03d8 // vpinsrd xmm3, xmm3, eax, 3 3267 LONG $0x385de3c4; WORD $0x01db // vinserti128 ymm3, ymm4, xmm3, 1 3268 LONG $0x4565e2c4; BYTE $0xda // vpsrlvd ymm3, ymm3, ymm2 3269 LONG $0xd9dbe5c5 // vpand ymm3, ymm3, ymm1 3270 LONG $0x7f7ec1c4; WORD $0xc05f // vmovdqu yword [r15 - 64], ymm3 3271 LONG $0xf44b8b44 // mov r9d, dword [rbx - 12] 3272 WORD $0x438b; BYTE $0xf0 // mov eax, dword [rbx - 16] 3273 WORD $0x8944; BYTE $0xca // mov edx, r9d 3274 LONG $0x0cc2a40f // shld edx, eax, 12 3275 WORD $0x738b; BYTE $0xe8 // mov esi, dword [rbx - 24] 3276 LONG $0xec538b44 // mov r10d, dword [rbx - 20] 3277 WORD $0xc189 // mov ecx, eax 3278 LONG $0xd1a40f44; BYTE $0x08 // shld ecx, r10d, 8 3279 WORD $0x8944; BYTE $0xd7 // mov edi, r10d 3280 LONG $0x04f7a40f // shld edi, esi, 4 3281 LONG $0xd96ef9c5 // vmovd xmm3, ecx 3282 LONG $0x2261e3c4; WORD $0x01d8 // vpinsrd xmm3, xmm3, eax, 1 3283 LONG $0x2261e3c4; WORD $0x02da // vpinsrd xmm3, xmm3, edx, 2 3284 LONG $0x2261c3c4; WORD $0x03d9 // vpinsrd xmm3, xmm3, r9d, 3 3285 LONG $0xe66ef9c5 // vmovd xmm4, esi 3286 LONG $0x2259e3c4; WORD $0x01e6 // vpinsrd xmm4, xmm4, esi, 1 3287 LONG $0x2259e3c4; WORD $0x02e7 // vpinsrd xmm4, xmm4, edi, 2 3288 LONG $0x2259c3c4; WORD $0x03e2 // vpinsrd xmm4, xmm4, r10d, 3 3289 LONG $0x385de3c4; WORD $0x01db // vinserti128 ymm3, ymm4, xmm3, 1 3290 LONG $0x4565e2c4; BYTE $0xd8 // vpsrlvd ymm3, ymm3, ymm0 3291 LONG $0xd9dbe5c5 // vpand ymm3, ymm3, ymm1 3292 LONG $0x7f7ec1c4; WORD $0xe05f // vmovdqu yword [r15 - 32], ymm3 3293 WORD $0x8b44; BYTE $0x0b // mov r9d, dword [rbx] 3294 WORD $0x4b8b; BYTE $0xfc // mov ecx, dword [rbx - 4] 3295 WORD $0x8944; BYTE $0xca // mov edx, r9d 3296 LONG $0x0acaa40f // shld edx, ecx, 10 3297 WORD $0x438b; BYTE $0xf8 // mov eax, dword [rbx - 8] 3298 LONG $0xd96ef9c5 // vmovd xmm3, ecx 3299 LONG $0x06c1a40f // shld ecx, eax, 6 3300 WORD $0x7b8b; BYTE $0xf4 // mov edi, dword [rbx - 12] 3301 WORD $0xc689 // mov esi, eax 3302 LONG $0x02fea40f // shld esi, edi, 2 3303 LONG $0xe76ef9c5 // vmovd xmm4, edi 3304 LONG $0x2259e3c4; WORD $0x01e6 // vpinsrd xmm4, xmm4, esi, 1 3305 LONG $0x2259e3c4; WORD $0x02e0 // vpinsrd xmm4, xmm4, eax, 2 3306 LONG $0x2259e3c4; WORD $0x03e1 // vpinsrd xmm4, xmm4, ecx, 3 3307 LONG $0x2261e3c4; WORD $0x01da // vpinsrd xmm3, xmm3, edx, 1 3308 LONG $0x2261c3c4; WORD $0x02d9 // vpinsrd xmm3, xmm3, r9d, 2 3309 LONG $0x2261c3c4; WORD $0x03d9 // vpinsrd xmm3, xmm3, r9d, 3 3310 LONG $0x385de3c4; WORD $0x01db // vinserti128 ymm3, ymm4, xmm3, 1 3311 LONG $0x4565e2c4; BYTE $0xda // vpsrlvd ymm3, ymm3, ymm2 3312 LONG $0xd9dbe5c5 // vpand ymm3, ymm3, ymm1 3313 LONG $0x7f7ec1c4; BYTE $0x1f // vmovdqu yword [r15], ymm3 3314 LONG $0x80ef8349 // sub r15, -128 3315 LONG $0x38c38348 // add rbx, 56 3316 LONG $0xffc08349 // add r8, -1 3317 JNE LBB0_125 3318 JMP LBB0_147 3319 3320 LBB0_99: 3321 WORD $0xfa83; BYTE $0x20 // cmp edx, 32 3322 JL LBB0_147 3323 WORD $0x8945; BYTE $0xf0 // mov r8d, r14d 3324 LONG $0x60c78349 // add r15, 96 3325 LONG $0x597de2c4; WORD $0x0845 // vpbroadcastq ymm0, qword 8[rbp] /* [rip + .LCPI0_8] */ 3326 LONG $0x74c38348 // add rbx, 116 3327 QUAD $0x00000b208d6ff9c5 // vmovdqa xmm1, oword 2848[rbp] /* [rip + .LCPI0_9] */ 3328 QUAD $0x00000b30956ff9c5 // vmovdqa xmm2, oword 2864[rbp] /* [rip + .LCPI0_10] */ 3329 QUAD $0x000001a09d6ffdc5 // vmovdqa ymm3, yword 416[rbp] /* [rip + .LCPI0_11] */ 3330 3331 LBB0_101: 3332 LONG $0xa45b8b44 // mov r11d, dword [rbx - 92] 3333 LONG $0xa84b8b44 // mov r9d, dword [rbx - 88] 3334 LONG $0xd9a40f45; BYTE $0x0e // shld r9d, r11d, 14 3335 WORD $0x738b; BYTE $0xa0 // mov esi, dword [rbx - 96] 3336 LONG $0xf3a40f41; BYTE $0x0c // shld r11d, esi, 12 3337 WORD $0x7b8b; BYTE $0x9c // mov edi, dword [rbx - 100] 3338 LONG $0x0afea40f // shld esi, edi, 10 3339 WORD $0x438b; BYTE $0x98 // mov eax, dword [rbx - 104] 3340 LONG $0x08c7a40f // shld edi, eax, 8 3341 WORD $0x538b; BYTE $0x94 // mov edx, dword [rbx - 108] 3342 LONG $0x06d0a40f // shld eax, edx, 6 3343 LONG $0x8c538b44 // mov r10d, dword [rbx - 116] 3344 WORD $0x4b8b; BYTE $0x90 // mov ecx, dword [rbx - 112] 3345 LONG $0x04caa40f // shld edx, ecx, 4 3346 LONG $0xd1a40f44; BYTE $0x02 // shld ecx, r10d, 2 3347 LONG $0x6e79c1c4; BYTE $0xe2 // vmovd xmm4, r10d 3348 LONG $0xef6ef9c5 // vmovd xmm5, edi 3349 LONG $0x2259e3c4; WORD $0x01e1 // vpinsrd xmm4, xmm4, ecx, 1 3350 LONG $0x2251e3c4; WORD $0x01ee // vpinsrd xmm5, xmm5, esi, 1 3351 LONG $0x2259e3c4; WORD $0x02e2 // vpinsrd xmm4, xmm4, edx, 2 3352 LONG $0x2251c3c4; WORD $0x02eb // vpinsrd xmm5, xmm5, r11d, 2 3353 LONG $0x2259e3c4; WORD $0x03e0 // vpinsrd xmm4, xmm4, eax, 3 3354 LONG $0x2251c3c4; WORD $0x03e9 // vpinsrd xmm5, xmm5, r9d, 3 3355 LONG $0x385de3c4; WORD $0x01e5 // vinserti128 ymm4, ymm4, xmm5, 1 3356 LONG $0xe0dbddc5 // vpand ymm4, ymm4, ymm0 3357 LONG $0x7f7ec1c4; WORD $0xa067 // vmovdqu yword [r15 - 96], ymm4 3358 WORD $0x438b; BYTE $0xc4 // mov eax, dword [rbx - 60] 3359 WORD $0x4b8b; BYTE $0xc0 // mov ecx, dword [rbx - 64] 3360 WORD $0xc289 // mov edx, eax 3361 LONG $0x1ccaa40f // shld edx, ecx, 28 3362 WORD $0x738b; BYTE $0xbc // mov esi, dword [rbx - 68] 3363 WORD $0x7b8b; BYTE $0xb8 // mov edi, dword [rbx - 72] 3364 LONG $0x1af1a40f // shld ecx, esi, 26 3365 LONG $0x18fea40f // shld esi, edi, 24 3366 LONG $0x636ffac5; BYTE $0xa8 // vmovdqu xmm4, oword [rbx - 88] 3367 LONG $0x4559e2c4; BYTE $0xe9 // vpsrlvd xmm5, xmm4, xmm1 3368 LONG $0xe470f9c5; BYTE $0xf9 // vpshufd xmm4, xmm4, 249 3369 LONG $0x2259e3c4; WORD $0x03e7 // vpinsrd xmm4, xmm4, edi, 3 3370 LONG $0xf66ef9c5 // vmovd xmm6, esi 3371 LONG $0x2249e3c4; WORD $0x01f1 // vpinsrd xmm6, xmm6, ecx, 1 3372 LONG $0x2249e3c4; WORD $0x02f2 // vpinsrd xmm6, xmm6, edx, 2 3373 LONG $0x4759e2c4; BYTE $0xe2 // vpsllvd xmm4, xmm4, xmm2 3374 LONG $0x2249e3c4; WORD $0x03f0 // vpinsrd xmm6, xmm6, eax, 3 3375 LONG $0xe4ebd1c5 // vpor xmm4, xmm5, xmm4 3376 LONG $0x385de3c4; WORD $0x01e6 // vinserti128 ymm4, ymm4, xmm6, 1 3377 LONG $0x455de2c4; BYTE $0xe3 // vpsrlvd ymm4, ymm4, ymm3 3378 LONG $0xe0dbddc5 // vpand ymm4, ymm4, ymm0 3379 LONG $0x7f7ec1c4; WORD $0xc067 // vmovdqu yword [r15 - 64], ymm4 3380 LONG $0xe05b8b44 // mov r11d, dword [rbx - 32] 3381 LONG $0xe44b8b44 // mov r9d, dword [rbx - 28] 3382 LONG $0xd9a40f45; BYTE $0x0e // shld r9d, r11d, 14 3383 WORD $0x538b; BYTE $0xdc // mov edx, dword [rbx - 36] 3384 LONG $0xd3a40f41; BYTE $0x0c // shld r11d, edx, 12 3385 WORD $0x738b; BYTE $0xd8 // mov esi, dword [rbx - 40] 3386 LONG $0x0af2a40f // shld edx, esi, 10 3387 WORD $0x7b8b; BYTE $0xd4 // mov edi, dword [rbx - 44] 3388 LONG $0x08fea40f // shld esi, edi, 8 3389 WORD $0x4b8b; BYTE $0xd0 // mov ecx, dword [rbx - 48] 3390 LONG $0x06cfa40f // shld edi, ecx, 6 3391 LONG $0xc8538b44 // mov r10d, dword [rbx - 56] 3392 WORD $0x438b; BYTE $0xcc // mov eax, dword [rbx - 52] 3393 LONG $0x04c1a40f // shld ecx, eax, 4 3394 LONG $0xd0a40f44; BYTE $0x02 // shld eax, r10d, 2 3395 LONG $0x6e79c1c4; BYTE $0xe2 // vmovd xmm4, r10d 3396 LONG $0xee6ef9c5 // vmovd xmm5, esi 3397 LONG $0x2259e3c4; WORD $0x01e0 // vpinsrd xmm4, xmm4, eax, 1 3398 LONG $0x2251e3c4; WORD $0x01ea // vpinsrd xmm5, xmm5, edx, 1 3399 LONG $0x2259e3c4; WORD $0x02e1 // vpinsrd xmm4, xmm4, ecx, 2 3400 LONG $0x2251c3c4; WORD $0x02eb // vpinsrd xmm5, xmm5, r11d, 2 3401 LONG $0x2259e3c4; WORD $0x03e7 // vpinsrd xmm4, xmm4, edi, 3 3402 LONG $0x2251c3c4; WORD $0x03e9 // vpinsrd xmm5, xmm5, r9d, 3 3403 LONG $0x385de3c4; WORD $0x01e5 // vinserti128 ymm4, ymm4, xmm5, 1 3404 LONG $0xe0dbddc5 // vpand ymm4, ymm4, ymm0 3405 LONG $0x7f7ec1c4; WORD $0xe067 // vmovdqu yword [r15 - 32], ymm4 3406 WORD $0x038b // mov eax, dword [rbx] 3407 WORD $0x4b8b; BYTE $0xfc // mov ecx, dword [rbx - 4] 3408 WORD $0xc289 // mov edx, eax 3409 LONG $0x1ccaa40f // shld edx, ecx, 28 3410 WORD $0x738b; BYTE $0xf8 // mov esi, dword [rbx - 8] 3411 LONG $0x1af1a40f // shld ecx, esi, 26 3412 WORD $0x7b8b; BYTE $0xf4 // mov edi, dword [rbx - 12] 3413 LONG $0x636ffac5; BYTE $0xe4 // vmovdqu xmm4, oword [rbx - 28] 3414 LONG $0x18fea40f // shld esi, edi, 24 3415 LONG $0x4559e2c4; BYTE $0xe9 // vpsrlvd xmm5, xmm4, xmm1 3416 LONG $0xe470f9c5; BYTE $0xf9 // vpshufd xmm4, xmm4, 249 3417 LONG $0x2259e3c4; WORD $0x03e7 // vpinsrd xmm4, xmm4, edi, 3 3418 LONG $0xf66ef9c5 // vmovd xmm6, esi 3419 LONG $0x2249e3c4; WORD $0x01f1 // vpinsrd xmm6, xmm6, ecx, 1 3420 LONG $0x4759e2c4; BYTE $0xe2 // vpsllvd xmm4, xmm4, xmm2 3421 LONG $0x2249e3c4; WORD $0x02f2 // vpinsrd xmm6, xmm6, edx, 2 3422 LONG $0x2249e3c4; WORD $0x03f0 // vpinsrd xmm6, xmm6, eax, 3 3423 LONG $0xe4ebd1c5 // vpor xmm4, xmm5, xmm4 3424 LONG $0x385de3c4; WORD $0x01e6 // vinserti128 ymm4, ymm4, xmm6, 1 3425 LONG $0x455de2c4; BYTE $0xe3 // vpsrlvd ymm4, ymm4, ymm3 3426 LONG $0xe0dbddc5 // vpand ymm4, ymm4, ymm0 3427 LONG $0x7f7ec1c4; BYTE $0x27 // vmovdqu yword [r15], ymm4 3428 LONG $0x80ef8349 // sub r15, -128 3429 LONG $0x78c38348 // add rbx, 120 3430 LONG $0xffc08349 // add r8, -1 3431 JNE LBB0_101 3432 3433 LBB0_147: 3434 LONG $0x05e6c141 // shl r14d, 5 3435 WORD $0x8944; BYTE $0xf0 // mov eax, r14d 3436 MOVQ 0(SP), SP 3437 VZEROUPPER 3438 MOVQ AX, num+32(FP) 3439 RET