VirtualBox

source: vbox/trunk/src/libs/openssl-1.1.0g/crypto/genasm-nasm/sha256-mb-x86_64.S@ 69881

Last change on this file since 69881 was 69881, checked in by vboxsync, 7 years ago

Update OpenSSL to 1.1.0g.
bugref:8070: src/libs maintenance

  • Property svn:eol-style set to native
File size: 149.5 KB
Line 
1default rel
2%define XMMWORD
3%define YMMWORD
4%define ZMMWORD
5section .text code align=64
6
7
8EXTERN OPENSSL_ia32cap_P
9
10global sha256_multi_block
11
12ALIGN 32
13sha256_multi_block:
14 mov QWORD[8+rsp],rdi ;WIN64 prologue
15 mov QWORD[16+rsp],rsi
16 mov rax,rsp
17$L$SEH_begin_sha256_multi_block:
18 mov rdi,rcx
19 mov rsi,rdx
20 mov rdx,r8
21
22
23 mov rcx,QWORD[((OPENSSL_ia32cap_P+4))]
24 bt rcx,61
25 jc NEAR _shaext_shortcut
26 test ecx,268435456
27 jnz NEAR _avx_shortcut
28 mov rax,rsp
29 push rbx
30 push rbp
31 lea rsp,[((-168))+rsp]
32 movaps XMMWORD[rsp],xmm6
33 movaps XMMWORD[16+rsp],xmm7
34 movaps XMMWORD[32+rsp],xmm8
35 movaps XMMWORD[48+rsp],xmm9
36 movaps XMMWORD[(-120)+rax],xmm10
37 movaps XMMWORD[(-104)+rax],xmm11
38 movaps XMMWORD[(-88)+rax],xmm12
39 movaps XMMWORD[(-72)+rax],xmm13
40 movaps XMMWORD[(-56)+rax],xmm14
41 movaps XMMWORD[(-40)+rax],xmm15
42 sub rsp,288
43 and rsp,-256
44 mov QWORD[272+rsp],rax
45$L$body:
46 lea rbp,[((K256+128))]
47 lea rbx,[256+rsp]
48 lea rdi,[128+rdi]
49
50$L$oop_grande:
51 mov DWORD[280+rsp],edx
52 xor edx,edx
53 mov r8,QWORD[rsi]
54 mov ecx,DWORD[8+rsi]
55 cmp ecx,edx
56 cmovg edx,ecx
57 test ecx,ecx
58 mov DWORD[rbx],ecx
59 cmovle r8,rbp
60 mov r9,QWORD[16+rsi]
61 mov ecx,DWORD[24+rsi]
62 cmp ecx,edx
63 cmovg edx,ecx
64 test ecx,ecx
65 mov DWORD[4+rbx],ecx
66 cmovle r9,rbp
67 mov r10,QWORD[32+rsi]
68 mov ecx,DWORD[40+rsi]
69 cmp ecx,edx
70 cmovg edx,ecx
71 test ecx,ecx
72 mov DWORD[8+rbx],ecx
73 cmovle r10,rbp
74 mov r11,QWORD[48+rsi]
75 mov ecx,DWORD[56+rsi]
76 cmp ecx,edx
77 cmovg edx,ecx
78 test ecx,ecx
79 mov DWORD[12+rbx],ecx
80 cmovle r11,rbp
81 test edx,edx
82 jz NEAR $L$done
83
84 movdqu xmm8,XMMWORD[((0-128))+rdi]
85 lea rax,[128+rsp]
86 movdqu xmm9,XMMWORD[((32-128))+rdi]
87 movdqu xmm10,XMMWORD[((64-128))+rdi]
88 movdqu xmm11,XMMWORD[((96-128))+rdi]
89 movdqu xmm12,XMMWORD[((128-128))+rdi]
90 movdqu xmm13,XMMWORD[((160-128))+rdi]
91 movdqu xmm14,XMMWORD[((192-128))+rdi]
92 movdqu xmm15,XMMWORD[((224-128))+rdi]
93 movdqu xmm6,XMMWORD[$L$pbswap]
94 jmp NEAR $L$oop
95
96ALIGN 32
97$L$oop:
98 movdqa xmm4,xmm10
99 pxor xmm4,xmm9
100 movd xmm5,DWORD[r8]
101 movd xmm0,DWORD[r9]
102 movd xmm1,DWORD[r10]
103 movd xmm2,DWORD[r11]
104 punpckldq xmm5,xmm1
105 punpckldq xmm0,xmm2
106 punpckldq xmm5,xmm0
107 movdqa xmm7,xmm12
108DB 102,15,56,0,238
109 movdqa xmm2,xmm12
110
111 psrld xmm7,6
112 movdqa xmm1,xmm12
113 pslld xmm2,7
114 movdqa XMMWORD[(0-128)+rax],xmm5
115 paddd xmm5,xmm15
116
117 psrld xmm1,11
118 pxor xmm7,xmm2
119 pslld xmm2,21-7
120 paddd xmm5,XMMWORD[((-128))+rbp]
121 pxor xmm7,xmm1
122
123 psrld xmm1,25-11
124 movdqa xmm0,xmm12
125
126 pxor xmm7,xmm2
127 movdqa xmm3,xmm12
128 pslld xmm2,26-21
129 pandn xmm0,xmm14
130 pand xmm3,xmm13
131 pxor xmm7,xmm1
132
133
134 movdqa xmm1,xmm8
135 pxor xmm7,xmm2
136 movdqa xmm2,xmm8
137 psrld xmm1,2
138 paddd xmm5,xmm7
139 pxor xmm0,xmm3
140 movdqa xmm3,xmm9
141 movdqa xmm7,xmm8
142 pslld xmm2,10
143 pxor xmm3,xmm8
144
145
146 psrld xmm7,13
147 pxor xmm1,xmm2
148 paddd xmm5,xmm0
149 pslld xmm2,19-10
150 pand xmm4,xmm3
151 pxor xmm1,xmm7
152
153
154 psrld xmm7,22-13
155 pxor xmm1,xmm2
156 movdqa xmm15,xmm9
157 pslld xmm2,30-19
158 pxor xmm7,xmm1
159 pxor xmm15,xmm4
160 paddd xmm11,xmm5
161 pxor xmm7,xmm2
162
163 paddd xmm15,xmm5
164 paddd xmm15,xmm7
165 movd xmm5,DWORD[4+r8]
166 movd xmm0,DWORD[4+r9]
167 movd xmm1,DWORD[4+r10]
168 movd xmm2,DWORD[4+r11]
169 punpckldq xmm5,xmm1
170 punpckldq xmm0,xmm2
171 punpckldq xmm5,xmm0
172 movdqa xmm7,xmm11
173
174 movdqa xmm2,xmm11
175DB 102,15,56,0,238
176 psrld xmm7,6
177 movdqa xmm1,xmm11
178 pslld xmm2,7
179 movdqa XMMWORD[(16-128)+rax],xmm5
180 paddd xmm5,xmm14
181
182 psrld xmm1,11
183 pxor xmm7,xmm2
184 pslld xmm2,21-7
185 paddd xmm5,XMMWORD[((-96))+rbp]
186 pxor xmm7,xmm1
187
188 psrld xmm1,25-11
189 movdqa xmm0,xmm11
190
191 pxor xmm7,xmm2
192 movdqa xmm4,xmm11
193 pslld xmm2,26-21
194 pandn xmm0,xmm13
195 pand xmm4,xmm12
196 pxor xmm7,xmm1
197
198
199 movdqa xmm1,xmm15
200 pxor xmm7,xmm2
201 movdqa xmm2,xmm15
202 psrld xmm1,2
203 paddd xmm5,xmm7
204 pxor xmm0,xmm4
205 movdqa xmm4,xmm8
206 movdqa xmm7,xmm15
207 pslld xmm2,10
208 pxor xmm4,xmm15
209
210
211 psrld xmm7,13
212 pxor xmm1,xmm2
213 paddd xmm5,xmm0
214 pslld xmm2,19-10
215 pand xmm3,xmm4
216 pxor xmm1,xmm7
217
218
219 psrld xmm7,22-13
220 pxor xmm1,xmm2
221 movdqa xmm14,xmm8
222 pslld xmm2,30-19
223 pxor xmm7,xmm1
224 pxor xmm14,xmm3
225 paddd xmm10,xmm5
226 pxor xmm7,xmm2
227
228 paddd xmm14,xmm5
229 paddd xmm14,xmm7
230 movd xmm5,DWORD[8+r8]
231 movd xmm0,DWORD[8+r9]
232 movd xmm1,DWORD[8+r10]
233 movd xmm2,DWORD[8+r11]
234 punpckldq xmm5,xmm1
235 punpckldq xmm0,xmm2
236 punpckldq xmm5,xmm0
237 movdqa xmm7,xmm10
238DB 102,15,56,0,238
239 movdqa xmm2,xmm10
240
241 psrld xmm7,6
242 movdqa xmm1,xmm10
243 pslld xmm2,7
244 movdqa XMMWORD[(32-128)+rax],xmm5
245 paddd xmm5,xmm13
246
247 psrld xmm1,11
248 pxor xmm7,xmm2
249 pslld xmm2,21-7
250 paddd xmm5,XMMWORD[((-64))+rbp]
251 pxor xmm7,xmm1
252
253 psrld xmm1,25-11
254 movdqa xmm0,xmm10
255
256 pxor xmm7,xmm2
257 movdqa xmm3,xmm10
258 pslld xmm2,26-21
259 pandn xmm0,xmm12
260 pand xmm3,xmm11
261 pxor xmm7,xmm1
262
263
264 movdqa xmm1,xmm14
265 pxor xmm7,xmm2
266 movdqa xmm2,xmm14
267 psrld xmm1,2
268 paddd xmm5,xmm7
269 pxor xmm0,xmm3
270 movdqa xmm3,xmm15
271 movdqa xmm7,xmm14
272 pslld xmm2,10
273 pxor xmm3,xmm14
274
275
276 psrld xmm7,13
277 pxor xmm1,xmm2
278 paddd xmm5,xmm0
279 pslld xmm2,19-10
280 pand xmm4,xmm3
281 pxor xmm1,xmm7
282
283
284 psrld xmm7,22-13
285 pxor xmm1,xmm2
286 movdqa xmm13,xmm15
287 pslld xmm2,30-19
288 pxor xmm7,xmm1
289 pxor xmm13,xmm4
290 paddd xmm9,xmm5
291 pxor xmm7,xmm2
292
293 paddd xmm13,xmm5
294 paddd xmm13,xmm7
295 movd xmm5,DWORD[12+r8]
296 movd xmm0,DWORD[12+r9]
297 movd xmm1,DWORD[12+r10]
298 movd xmm2,DWORD[12+r11]
299 punpckldq xmm5,xmm1
300 punpckldq xmm0,xmm2
301 punpckldq xmm5,xmm0
302 movdqa xmm7,xmm9
303
304 movdqa xmm2,xmm9
305DB 102,15,56,0,238
306 psrld xmm7,6
307 movdqa xmm1,xmm9
308 pslld xmm2,7
309 movdqa XMMWORD[(48-128)+rax],xmm5
310 paddd xmm5,xmm12
311
312 psrld xmm1,11
313 pxor xmm7,xmm2
314 pslld xmm2,21-7
315 paddd xmm5,XMMWORD[((-32))+rbp]
316 pxor xmm7,xmm1
317
318 psrld xmm1,25-11
319 movdqa xmm0,xmm9
320
321 pxor xmm7,xmm2
322 movdqa xmm4,xmm9
323 pslld xmm2,26-21
324 pandn xmm0,xmm11
325 pand xmm4,xmm10
326 pxor xmm7,xmm1
327
328
329 movdqa xmm1,xmm13
330 pxor xmm7,xmm2
331 movdqa xmm2,xmm13
332 psrld xmm1,2
333 paddd xmm5,xmm7
334 pxor xmm0,xmm4
335 movdqa xmm4,xmm14
336 movdqa xmm7,xmm13
337 pslld xmm2,10
338 pxor xmm4,xmm13
339
340
341 psrld xmm7,13
342 pxor xmm1,xmm2
343 paddd xmm5,xmm0
344 pslld xmm2,19-10
345 pand xmm3,xmm4
346 pxor xmm1,xmm7
347
348
349 psrld xmm7,22-13
350 pxor xmm1,xmm2
351 movdqa xmm12,xmm14
352 pslld xmm2,30-19
353 pxor xmm7,xmm1
354 pxor xmm12,xmm3
355 paddd xmm8,xmm5
356 pxor xmm7,xmm2
357
358 paddd xmm12,xmm5
359 paddd xmm12,xmm7
360 movd xmm5,DWORD[16+r8]
361 movd xmm0,DWORD[16+r9]
362 movd xmm1,DWORD[16+r10]
363 movd xmm2,DWORD[16+r11]
364 punpckldq xmm5,xmm1
365 punpckldq xmm0,xmm2
366 punpckldq xmm5,xmm0
367 movdqa xmm7,xmm8
368DB 102,15,56,0,238
369 movdqa xmm2,xmm8
370
371 psrld xmm7,6
372 movdqa xmm1,xmm8
373 pslld xmm2,7
374 movdqa XMMWORD[(64-128)+rax],xmm5
375 paddd xmm5,xmm11
376
377 psrld xmm1,11
378 pxor xmm7,xmm2
379 pslld xmm2,21-7
380 paddd xmm5,XMMWORD[rbp]
381 pxor xmm7,xmm1
382
383 psrld xmm1,25-11
384 movdqa xmm0,xmm8
385
386 pxor xmm7,xmm2
387 movdqa xmm3,xmm8
388 pslld xmm2,26-21
389 pandn xmm0,xmm10
390 pand xmm3,xmm9
391 pxor xmm7,xmm1
392
393
394 movdqa xmm1,xmm12
395 pxor xmm7,xmm2
396 movdqa xmm2,xmm12
397 psrld xmm1,2
398 paddd xmm5,xmm7
399 pxor xmm0,xmm3
400 movdqa xmm3,xmm13
401 movdqa xmm7,xmm12
402 pslld xmm2,10
403 pxor xmm3,xmm12
404
405
406 psrld xmm7,13
407 pxor xmm1,xmm2
408 paddd xmm5,xmm0
409 pslld xmm2,19-10
410 pand xmm4,xmm3
411 pxor xmm1,xmm7
412
413
414 psrld xmm7,22-13
415 pxor xmm1,xmm2
416 movdqa xmm11,xmm13
417 pslld xmm2,30-19
418 pxor xmm7,xmm1
419 pxor xmm11,xmm4
420 paddd xmm15,xmm5
421 pxor xmm7,xmm2
422
423 paddd xmm11,xmm5
424 paddd xmm11,xmm7
425 movd xmm5,DWORD[20+r8]
426 movd xmm0,DWORD[20+r9]
427 movd xmm1,DWORD[20+r10]
428 movd xmm2,DWORD[20+r11]
429 punpckldq xmm5,xmm1
430 punpckldq xmm0,xmm2
431 punpckldq xmm5,xmm0
432 movdqa xmm7,xmm15
433
434 movdqa xmm2,xmm15
435DB 102,15,56,0,238
436 psrld xmm7,6
437 movdqa xmm1,xmm15
438 pslld xmm2,7
439 movdqa XMMWORD[(80-128)+rax],xmm5
440 paddd xmm5,xmm10
441
442 psrld xmm1,11
443 pxor xmm7,xmm2
444 pslld xmm2,21-7
445 paddd xmm5,XMMWORD[32+rbp]
446 pxor xmm7,xmm1
447
448 psrld xmm1,25-11
449 movdqa xmm0,xmm15
450
451 pxor xmm7,xmm2
452 movdqa xmm4,xmm15
453 pslld xmm2,26-21
454 pandn xmm0,xmm9
455 pand xmm4,xmm8
456 pxor xmm7,xmm1
457
458
459 movdqa xmm1,xmm11
460 pxor xmm7,xmm2
461 movdqa xmm2,xmm11
462 psrld xmm1,2
463 paddd xmm5,xmm7
464 pxor xmm0,xmm4
465 movdqa xmm4,xmm12
466 movdqa xmm7,xmm11
467 pslld xmm2,10
468 pxor xmm4,xmm11
469
470
471 psrld xmm7,13
472 pxor xmm1,xmm2
473 paddd xmm5,xmm0
474 pslld xmm2,19-10
475 pand xmm3,xmm4
476 pxor xmm1,xmm7
477
478
479 psrld xmm7,22-13
480 pxor xmm1,xmm2
481 movdqa xmm10,xmm12
482 pslld xmm2,30-19
483 pxor xmm7,xmm1
484 pxor xmm10,xmm3
485 paddd xmm14,xmm5
486 pxor xmm7,xmm2
487
488 paddd xmm10,xmm5
489 paddd xmm10,xmm7
490 movd xmm5,DWORD[24+r8]
491 movd xmm0,DWORD[24+r9]
492 movd xmm1,DWORD[24+r10]
493 movd xmm2,DWORD[24+r11]
494 punpckldq xmm5,xmm1
495 punpckldq xmm0,xmm2
496 punpckldq xmm5,xmm0
497 movdqa xmm7,xmm14
498DB 102,15,56,0,238
499 movdqa xmm2,xmm14
500
501 psrld xmm7,6
502 movdqa xmm1,xmm14
503 pslld xmm2,7
504 movdqa XMMWORD[(96-128)+rax],xmm5
505 paddd xmm5,xmm9
506
507 psrld xmm1,11
508 pxor xmm7,xmm2
509 pslld xmm2,21-7
510 paddd xmm5,XMMWORD[64+rbp]
511 pxor xmm7,xmm1
512
513 psrld xmm1,25-11
514 movdqa xmm0,xmm14
515
516 pxor xmm7,xmm2
517 movdqa xmm3,xmm14
518 pslld xmm2,26-21
519 pandn xmm0,xmm8
520 pand xmm3,xmm15
521 pxor xmm7,xmm1
522
523
524 movdqa xmm1,xmm10
525 pxor xmm7,xmm2
526 movdqa xmm2,xmm10
527 psrld xmm1,2
528 paddd xmm5,xmm7
529 pxor xmm0,xmm3
530 movdqa xmm3,xmm11
531 movdqa xmm7,xmm10
532 pslld xmm2,10
533 pxor xmm3,xmm10
534
535
536 psrld xmm7,13
537 pxor xmm1,xmm2
538 paddd xmm5,xmm0
539 pslld xmm2,19-10
540 pand xmm4,xmm3
541 pxor xmm1,xmm7
542
543
544 psrld xmm7,22-13
545 pxor xmm1,xmm2
546 movdqa xmm9,xmm11
547 pslld xmm2,30-19
548 pxor xmm7,xmm1
549 pxor xmm9,xmm4
550 paddd xmm13,xmm5
551 pxor xmm7,xmm2
552
553 paddd xmm9,xmm5
554 paddd xmm9,xmm7
555 movd xmm5,DWORD[28+r8]
556 movd xmm0,DWORD[28+r9]
557 movd xmm1,DWORD[28+r10]
558 movd xmm2,DWORD[28+r11]
559 punpckldq xmm5,xmm1
560 punpckldq xmm0,xmm2
561 punpckldq xmm5,xmm0
562 movdqa xmm7,xmm13
563
564 movdqa xmm2,xmm13
565DB 102,15,56,0,238
566 psrld xmm7,6
567 movdqa xmm1,xmm13
568 pslld xmm2,7
569 movdqa XMMWORD[(112-128)+rax],xmm5
570 paddd xmm5,xmm8
571
572 psrld xmm1,11
573 pxor xmm7,xmm2
574 pslld xmm2,21-7
575 paddd xmm5,XMMWORD[96+rbp]
576 pxor xmm7,xmm1
577
578 psrld xmm1,25-11
579 movdqa xmm0,xmm13
580
581 pxor xmm7,xmm2
582 movdqa xmm4,xmm13
583 pslld xmm2,26-21
584 pandn xmm0,xmm15
585 pand xmm4,xmm14
586 pxor xmm7,xmm1
587
588
589 movdqa xmm1,xmm9
590 pxor xmm7,xmm2
591 movdqa xmm2,xmm9
592 psrld xmm1,2
593 paddd xmm5,xmm7
594 pxor xmm0,xmm4
595 movdqa xmm4,xmm10
596 movdqa xmm7,xmm9
597 pslld xmm2,10
598 pxor xmm4,xmm9
599
600
601 psrld xmm7,13
602 pxor xmm1,xmm2
603 paddd xmm5,xmm0
604 pslld xmm2,19-10
605 pand xmm3,xmm4
606 pxor xmm1,xmm7
607
608
609 psrld xmm7,22-13
610 pxor xmm1,xmm2
611 movdqa xmm8,xmm10
612 pslld xmm2,30-19
613 pxor xmm7,xmm1
614 pxor xmm8,xmm3
615 paddd xmm12,xmm5
616 pxor xmm7,xmm2
617
618 paddd xmm8,xmm5
619 paddd xmm8,xmm7
620 lea rbp,[256+rbp]
621 movd xmm5,DWORD[32+r8]
622 movd xmm0,DWORD[32+r9]
623 movd xmm1,DWORD[32+r10]
624 movd xmm2,DWORD[32+r11]
625 punpckldq xmm5,xmm1
626 punpckldq xmm0,xmm2
627 punpckldq xmm5,xmm0
628 movdqa xmm7,xmm12
629DB 102,15,56,0,238
630 movdqa xmm2,xmm12
631
632 psrld xmm7,6
633 movdqa xmm1,xmm12
634 pslld xmm2,7
635 movdqa XMMWORD[(128-128)+rax],xmm5
636 paddd xmm5,xmm15
637
638 psrld xmm1,11
639 pxor xmm7,xmm2
640 pslld xmm2,21-7
641 paddd xmm5,XMMWORD[((-128))+rbp]
642 pxor xmm7,xmm1
643
644 psrld xmm1,25-11
645 movdqa xmm0,xmm12
646
647 pxor xmm7,xmm2
648 movdqa xmm3,xmm12
649 pslld xmm2,26-21
650 pandn xmm0,xmm14
651 pand xmm3,xmm13
652 pxor xmm7,xmm1
653
654
655 movdqa xmm1,xmm8
656 pxor xmm7,xmm2
657 movdqa xmm2,xmm8
658 psrld xmm1,2
659 paddd xmm5,xmm7
660 pxor xmm0,xmm3
661 movdqa xmm3,xmm9
662 movdqa xmm7,xmm8
663 pslld xmm2,10
664 pxor xmm3,xmm8
665
666
667 psrld xmm7,13
668 pxor xmm1,xmm2
669 paddd xmm5,xmm0
670 pslld xmm2,19-10
671 pand xmm4,xmm3
672 pxor xmm1,xmm7
673
674
675 psrld xmm7,22-13
676 pxor xmm1,xmm2
677 movdqa xmm15,xmm9
678 pslld xmm2,30-19
679 pxor xmm7,xmm1
680 pxor xmm15,xmm4
681 paddd xmm11,xmm5
682 pxor xmm7,xmm2
683
684 paddd xmm15,xmm5
685 paddd xmm15,xmm7
686 movd xmm5,DWORD[36+r8]
687 movd xmm0,DWORD[36+r9]
688 movd xmm1,DWORD[36+r10]
689 movd xmm2,DWORD[36+r11]
690 punpckldq xmm5,xmm1
691 punpckldq xmm0,xmm2
692 punpckldq xmm5,xmm0
693 movdqa xmm7,xmm11
694
695 movdqa xmm2,xmm11
696DB 102,15,56,0,238
697 psrld xmm7,6
698 movdqa xmm1,xmm11
699 pslld xmm2,7
700 movdqa XMMWORD[(144-128)+rax],xmm5
701 paddd xmm5,xmm14
702
703 psrld xmm1,11
704 pxor xmm7,xmm2
705 pslld xmm2,21-7
706 paddd xmm5,XMMWORD[((-96))+rbp]
707 pxor xmm7,xmm1
708
709 psrld xmm1,25-11
710 movdqa xmm0,xmm11
711
712 pxor xmm7,xmm2
713 movdqa xmm4,xmm11
714 pslld xmm2,26-21
715 pandn xmm0,xmm13
716 pand xmm4,xmm12
717 pxor xmm7,xmm1
718
719
720 movdqa xmm1,xmm15
721 pxor xmm7,xmm2
722 movdqa xmm2,xmm15
723 psrld xmm1,2
724 paddd xmm5,xmm7
725 pxor xmm0,xmm4
726 movdqa xmm4,xmm8
727 movdqa xmm7,xmm15
728 pslld xmm2,10
729 pxor xmm4,xmm15
730
731
732 psrld xmm7,13
733 pxor xmm1,xmm2
734 paddd xmm5,xmm0
735 pslld xmm2,19-10
736 pand xmm3,xmm4
737 pxor xmm1,xmm7
738
739
740 psrld xmm7,22-13
741 pxor xmm1,xmm2
742 movdqa xmm14,xmm8
743 pslld xmm2,30-19
744 pxor xmm7,xmm1
745 pxor xmm14,xmm3
746 paddd xmm10,xmm5
747 pxor xmm7,xmm2
748
749 paddd xmm14,xmm5
750 paddd xmm14,xmm7
751 movd xmm5,DWORD[40+r8]
752 movd xmm0,DWORD[40+r9]
753 movd xmm1,DWORD[40+r10]
754 movd xmm2,DWORD[40+r11]
755 punpckldq xmm5,xmm1
756 punpckldq xmm0,xmm2
757 punpckldq xmm5,xmm0
758 movdqa xmm7,xmm10
759DB 102,15,56,0,238
760 movdqa xmm2,xmm10
761
762 psrld xmm7,6
763 movdqa xmm1,xmm10
764 pslld xmm2,7
765 movdqa XMMWORD[(160-128)+rax],xmm5
766 paddd xmm5,xmm13
767
768 psrld xmm1,11
769 pxor xmm7,xmm2
770 pslld xmm2,21-7
771 paddd xmm5,XMMWORD[((-64))+rbp]
772 pxor xmm7,xmm1
773
774 psrld xmm1,25-11
775 movdqa xmm0,xmm10
776
777 pxor xmm7,xmm2
778 movdqa xmm3,xmm10
779 pslld xmm2,26-21
780 pandn xmm0,xmm12
781 pand xmm3,xmm11
782 pxor xmm7,xmm1
783
784
785 movdqa xmm1,xmm14
786 pxor xmm7,xmm2
787 movdqa xmm2,xmm14
788 psrld xmm1,2
789 paddd xmm5,xmm7
790 pxor xmm0,xmm3
791 movdqa xmm3,xmm15
792 movdqa xmm7,xmm14
793 pslld xmm2,10
794 pxor xmm3,xmm14
795
796
797 psrld xmm7,13
798 pxor xmm1,xmm2
799 paddd xmm5,xmm0
800 pslld xmm2,19-10
801 pand xmm4,xmm3
802 pxor xmm1,xmm7
803
804
805 psrld xmm7,22-13
806 pxor xmm1,xmm2
807 movdqa xmm13,xmm15
808 pslld xmm2,30-19
809 pxor xmm7,xmm1
810 pxor xmm13,xmm4
811 paddd xmm9,xmm5
812 pxor xmm7,xmm2
813
814 paddd xmm13,xmm5
815 paddd xmm13,xmm7
816 movd xmm5,DWORD[44+r8]
817 movd xmm0,DWORD[44+r9]
818 movd xmm1,DWORD[44+r10]
819 movd xmm2,DWORD[44+r11]
820 punpckldq xmm5,xmm1
821 punpckldq xmm0,xmm2
822 punpckldq xmm5,xmm0
823 movdqa xmm7,xmm9
824
825 movdqa xmm2,xmm9
826DB 102,15,56,0,238
827 psrld xmm7,6
828 movdqa xmm1,xmm9
829 pslld xmm2,7
830 movdqa XMMWORD[(176-128)+rax],xmm5
831 paddd xmm5,xmm12
832
833 psrld xmm1,11
834 pxor xmm7,xmm2
835 pslld xmm2,21-7
836 paddd xmm5,XMMWORD[((-32))+rbp]
837 pxor xmm7,xmm1
838
839 psrld xmm1,25-11
840 movdqa xmm0,xmm9
841
842 pxor xmm7,xmm2
843 movdqa xmm4,xmm9
844 pslld xmm2,26-21
845 pandn xmm0,xmm11
846 pand xmm4,xmm10
847 pxor xmm7,xmm1
848
849
850 movdqa xmm1,xmm13
851 pxor xmm7,xmm2
852 movdqa xmm2,xmm13
853 psrld xmm1,2
854 paddd xmm5,xmm7
855 pxor xmm0,xmm4
856 movdqa xmm4,xmm14
857 movdqa xmm7,xmm13
858 pslld xmm2,10
859 pxor xmm4,xmm13
860
861
862 psrld xmm7,13
863 pxor xmm1,xmm2
864 paddd xmm5,xmm0
865 pslld xmm2,19-10
866 pand xmm3,xmm4
867 pxor xmm1,xmm7
868
869
870 psrld xmm7,22-13
871 pxor xmm1,xmm2
872 movdqa xmm12,xmm14
873 pslld xmm2,30-19
874 pxor xmm7,xmm1
875 pxor xmm12,xmm3
876 paddd xmm8,xmm5
877 pxor xmm7,xmm2
878
879 paddd xmm12,xmm5
880 paddd xmm12,xmm7
881 movd xmm5,DWORD[48+r8]
882 movd xmm0,DWORD[48+r9]
883 movd xmm1,DWORD[48+r10]
884 movd xmm2,DWORD[48+r11]
885 punpckldq xmm5,xmm1
886 punpckldq xmm0,xmm2
887 punpckldq xmm5,xmm0
888 movdqa xmm7,xmm8
889DB 102,15,56,0,238
890 movdqa xmm2,xmm8
891
892 psrld xmm7,6
893 movdqa xmm1,xmm8
894 pslld xmm2,7
895 movdqa XMMWORD[(192-128)+rax],xmm5
896 paddd xmm5,xmm11
897
898 psrld xmm1,11
899 pxor xmm7,xmm2
900 pslld xmm2,21-7
901 paddd xmm5,XMMWORD[rbp]
902 pxor xmm7,xmm1
903
904 psrld xmm1,25-11
905 movdqa xmm0,xmm8
906
907 pxor xmm7,xmm2
908 movdqa xmm3,xmm8
909 pslld xmm2,26-21
910 pandn xmm0,xmm10
911 pand xmm3,xmm9
912 pxor xmm7,xmm1
913
914
915 movdqa xmm1,xmm12
916 pxor xmm7,xmm2
917 movdqa xmm2,xmm12
918 psrld xmm1,2
919 paddd xmm5,xmm7
920 pxor xmm0,xmm3
921 movdqa xmm3,xmm13
922 movdqa xmm7,xmm12
923 pslld xmm2,10
924 pxor xmm3,xmm12
925
926
927 psrld xmm7,13
928 pxor xmm1,xmm2
929 paddd xmm5,xmm0
930 pslld xmm2,19-10
931 pand xmm4,xmm3
932 pxor xmm1,xmm7
933
934
935 psrld xmm7,22-13
936 pxor xmm1,xmm2
937 movdqa xmm11,xmm13
938 pslld xmm2,30-19
939 pxor xmm7,xmm1
940 pxor xmm11,xmm4
941 paddd xmm15,xmm5
942 pxor xmm7,xmm2
943
944 paddd xmm11,xmm5
945 paddd xmm11,xmm7
946 movd xmm5,DWORD[52+r8]
947 movd xmm0,DWORD[52+r9]
948 movd xmm1,DWORD[52+r10]
949 movd xmm2,DWORD[52+r11]
950 punpckldq xmm5,xmm1
951 punpckldq xmm0,xmm2
952 punpckldq xmm5,xmm0
953 movdqa xmm7,xmm15
954
955 movdqa xmm2,xmm15
956DB 102,15,56,0,238
957 psrld xmm7,6
958 movdqa xmm1,xmm15
959 pslld xmm2,7
960 movdqa XMMWORD[(208-128)+rax],xmm5
961 paddd xmm5,xmm10
962
963 psrld xmm1,11
964 pxor xmm7,xmm2
965 pslld xmm2,21-7
966 paddd xmm5,XMMWORD[32+rbp]
967 pxor xmm7,xmm1
968
969 psrld xmm1,25-11
970 movdqa xmm0,xmm15
971
972 pxor xmm7,xmm2
973 movdqa xmm4,xmm15
974 pslld xmm2,26-21
975 pandn xmm0,xmm9
976 pand xmm4,xmm8
977 pxor xmm7,xmm1
978
979
980 movdqa xmm1,xmm11
981 pxor xmm7,xmm2
982 movdqa xmm2,xmm11
983 psrld xmm1,2
984 paddd xmm5,xmm7
985 pxor xmm0,xmm4
986 movdqa xmm4,xmm12
987 movdqa xmm7,xmm11
988 pslld xmm2,10
989 pxor xmm4,xmm11
990
991
992 psrld xmm7,13
993 pxor xmm1,xmm2
994 paddd xmm5,xmm0
995 pslld xmm2,19-10
996 pand xmm3,xmm4
997 pxor xmm1,xmm7
998
999
1000 psrld xmm7,22-13
1001 pxor xmm1,xmm2
1002 movdqa xmm10,xmm12
1003 pslld xmm2,30-19
1004 pxor xmm7,xmm1
1005 pxor xmm10,xmm3
1006 paddd xmm14,xmm5
1007 pxor xmm7,xmm2
1008
1009 paddd xmm10,xmm5
1010 paddd xmm10,xmm7
1011 movd xmm5,DWORD[56+r8]
1012 movd xmm0,DWORD[56+r9]
1013 movd xmm1,DWORD[56+r10]
1014 movd xmm2,DWORD[56+r11]
1015 punpckldq xmm5,xmm1
1016 punpckldq xmm0,xmm2
1017 punpckldq xmm5,xmm0
1018 movdqa xmm7,xmm14
1019DB 102,15,56,0,238
1020 movdqa xmm2,xmm14
1021
1022 psrld xmm7,6
1023 movdqa xmm1,xmm14
1024 pslld xmm2,7
1025 movdqa XMMWORD[(224-128)+rax],xmm5
1026 paddd xmm5,xmm9
1027
1028 psrld xmm1,11
1029 pxor xmm7,xmm2
1030 pslld xmm2,21-7
1031 paddd xmm5,XMMWORD[64+rbp]
1032 pxor xmm7,xmm1
1033
1034 psrld xmm1,25-11
1035 movdqa xmm0,xmm14
1036
1037 pxor xmm7,xmm2
1038 movdqa xmm3,xmm14
1039 pslld xmm2,26-21
1040 pandn xmm0,xmm8
1041 pand xmm3,xmm15
1042 pxor xmm7,xmm1
1043
1044
1045 movdqa xmm1,xmm10
1046 pxor xmm7,xmm2
1047 movdqa xmm2,xmm10
1048 psrld xmm1,2
1049 paddd xmm5,xmm7
1050 pxor xmm0,xmm3
1051 movdqa xmm3,xmm11
1052 movdqa xmm7,xmm10
1053 pslld xmm2,10
1054 pxor xmm3,xmm10
1055
1056
1057 psrld xmm7,13
1058 pxor xmm1,xmm2
1059 paddd xmm5,xmm0
1060 pslld xmm2,19-10
1061 pand xmm4,xmm3
1062 pxor xmm1,xmm7
1063
1064
1065 psrld xmm7,22-13
1066 pxor xmm1,xmm2
1067 movdqa xmm9,xmm11
1068 pslld xmm2,30-19
1069 pxor xmm7,xmm1
1070 pxor xmm9,xmm4
1071 paddd xmm13,xmm5
1072 pxor xmm7,xmm2
1073
1074 paddd xmm9,xmm5
1075 paddd xmm9,xmm7
1076 movd xmm5,DWORD[60+r8]
1077 lea r8,[64+r8]
1078 movd xmm0,DWORD[60+r9]
1079 lea r9,[64+r9]
1080 movd xmm1,DWORD[60+r10]
1081 lea r10,[64+r10]
1082 movd xmm2,DWORD[60+r11]
1083 lea r11,[64+r11]
1084 punpckldq xmm5,xmm1
1085 punpckldq xmm0,xmm2
1086 punpckldq xmm5,xmm0
1087 movdqa xmm7,xmm13
1088
1089 movdqa xmm2,xmm13
1090DB 102,15,56,0,238
1091 psrld xmm7,6
1092 movdqa xmm1,xmm13
1093 pslld xmm2,7
1094 movdqa XMMWORD[(240-128)+rax],xmm5
1095 paddd xmm5,xmm8
1096
1097 psrld xmm1,11
1098 pxor xmm7,xmm2
1099 pslld xmm2,21-7
1100 paddd xmm5,XMMWORD[96+rbp]
1101 pxor xmm7,xmm1
1102
1103 psrld xmm1,25-11
1104 movdqa xmm0,xmm13
1105 prefetcht0 [63+r8]
1106 pxor xmm7,xmm2
1107 movdqa xmm4,xmm13
1108 pslld xmm2,26-21
1109 pandn xmm0,xmm15
1110 pand xmm4,xmm14
1111 pxor xmm7,xmm1
1112
1113 prefetcht0 [63+r9]
1114 movdqa xmm1,xmm9
1115 pxor xmm7,xmm2
1116 movdqa xmm2,xmm9
1117 psrld xmm1,2
1118 paddd xmm5,xmm7
1119 pxor xmm0,xmm4
1120 movdqa xmm4,xmm10
1121 movdqa xmm7,xmm9
1122 pslld xmm2,10
1123 pxor xmm4,xmm9
1124
1125 prefetcht0 [63+r10]
1126 psrld xmm7,13
1127 pxor xmm1,xmm2
1128 paddd xmm5,xmm0
1129 pslld xmm2,19-10
1130 pand xmm3,xmm4
1131 pxor xmm1,xmm7
1132
1133 prefetcht0 [63+r11]
1134 psrld xmm7,22-13
1135 pxor xmm1,xmm2
1136 movdqa xmm8,xmm10
1137 pslld xmm2,30-19
1138 pxor xmm7,xmm1
1139 pxor xmm8,xmm3
1140 paddd xmm12,xmm5
1141 pxor xmm7,xmm2
1142
1143 paddd xmm8,xmm5
1144 paddd xmm8,xmm7
1145 lea rbp,[256+rbp]
1146 movdqu xmm5,XMMWORD[((0-128))+rax]
1147 mov ecx,3
1148 jmp NEAR $L$oop_16_xx
1149ALIGN 32
1150$L$oop_16_xx:
1151 movdqa xmm6,XMMWORD[((16-128))+rax]
1152 paddd xmm5,XMMWORD[((144-128))+rax]
1153
1154 movdqa xmm7,xmm6
1155 movdqa xmm1,xmm6
1156 psrld xmm7,3
1157 movdqa xmm2,xmm6
1158
1159 psrld xmm1,7
1160 movdqa xmm0,XMMWORD[((224-128))+rax]
1161 pslld xmm2,14
1162 pxor xmm7,xmm1
1163 psrld xmm1,18-7
1164 movdqa xmm3,xmm0
1165 pxor xmm7,xmm2
1166 pslld xmm2,25-14
1167 pxor xmm7,xmm1
1168 psrld xmm0,10
1169 movdqa xmm1,xmm3
1170
1171 psrld xmm3,17
1172 pxor xmm7,xmm2
1173 pslld xmm1,13
1174 paddd xmm5,xmm7
1175 pxor xmm0,xmm3
1176 psrld xmm3,19-17
1177 pxor xmm0,xmm1
1178 pslld xmm1,15-13
1179 pxor xmm0,xmm3
1180 pxor xmm0,xmm1
1181 paddd xmm5,xmm0
1182 movdqa xmm7,xmm12
1183
1184 movdqa xmm2,xmm12
1185
1186 psrld xmm7,6
1187 movdqa xmm1,xmm12
1188 pslld xmm2,7
1189 movdqa XMMWORD[(0-128)+rax],xmm5
1190 paddd xmm5,xmm15
1191
1192 psrld xmm1,11
1193 pxor xmm7,xmm2
1194 pslld xmm2,21-7
1195 paddd xmm5,XMMWORD[((-128))+rbp]
1196 pxor xmm7,xmm1
1197
1198 psrld xmm1,25-11
1199 movdqa xmm0,xmm12
1200
1201 pxor xmm7,xmm2
1202 movdqa xmm3,xmm12
1203 pslld xmm2,26-21
1204 pandn xmm0,xmm14
1205 pand xmm3,xmm13
1206 pxor xmm7,xmm1
1207
1208
1209 movdqa xmm1,xmm8
1210 pxor xmm7,xmm2
1211 movdqa xmm2,xmm8
1212 psrld xmm1,2
1213 paddd xmm5,xmm7
1214 pxor xmm0,xmm3
1215 movdqa xmm3,xmm9
1216 movdqa xmm7,xmm8
1217 pslld xmm2,10
1218 pxor xmm3,xmm8
1219
1220
1221 psrld xmm7,13
1222 pxor xmm1,xmm2
1223 paddd xmm5,xmm0
1224 pslld xmm2,19-10
1225 pand xmm4,xmm3
1226 pxor xmm1,xmm7
1227
1228
1229 psrld xmm7,22-13
1230 pxor xmm1,xmm2
1231 movdqa xmm15,xmm9
1232 pslld xmm2,30-19
1233 pxor xmm7,xmm1
1234 pxor xmm15,xmm4
1235 paddd xmm11,xmm5
1236 pxor xmm7,xmm2
1237
1238 paddd xmm15,xmm5
1239 paddd xmm15,xmm7
1240 movdqa xmm5,XMMWORD[((32-128))+rax]
1241 paddd xmm6,XMMWORD[((160-128))+rax]
1242
1243 movdqa xmm7,xmm5
1244 movdqa xmm1,xmm5
1245 psrld xmm7,3
1246 movdqa xmm2,xmm5
1247
1248 psrld xmm1,7
1249 movdqa xmm0,XMMWORD[((240-128))+rax]
1250 pslld xmm2,14
1251 pxor xmm7,xmm1
1252 psrld xmm1,18-7
1253 movdqa xmm4,xmm0
1254 pxor xmm7,xmm2
1255 pslld xmm2,25-14
1256 pxor xmm7,xmm1
1257 psrld xmm0,10
1258 movdqa xmm1,xmm4
1259
1260 psrld xmm4,17
1261 pxor xmm7,xmm2
1262 pslld xmm1,13
1263 paddd xmm6,xmm7
1264 pxor xmm0,xmm4
1265 psrld xmm4,19-17
1266 pxor xmm0,xmm1
1267 pslld xmm1,15-13
1268 pxor xmm0,xmm4
1269 pxor xmm0,xmm1
1270 paddd xmm6,xmm0
1271 movdqa xmm7,xmm11
1272
1273 movdqa xmm2,xmm11
1274
1275 psrld xmm7,6
1276 movdqa xmm1,xmm11
1277 pslld xmm2,7
1278 movdqa XMMWORD[(16-128)+rax],xmm6
1279 paddd xmm6,xmm14
1280
1281 psrld xmm1,11
1282 pxor xmm7,xmm2
1283 pslld xmm2,21-7
1284 paddd xmm6,XMMWORD[((-96))+rbp]
1285 pxor xmm7,xmm1
1286
1287 psrld xmm1,25-11
1288 movdqa xmm0,xmm11
1289
1290 pxor xmm7,xmm2
1291 movdqa xmm4,xmm11
1292 pslld xmm2,26-21
1293 pandn xmm0,xmm13
1294 pand xmm4,xmm12
1295 pxor xmm7,xmm1
1296
1297
1298 movdqa xmm1,xmm15
1299 pxor xmm7,xmm2
1300 movdqa xmm2,xmm15
1301 psrld xmm1,2
1302 paddd xmm6,xmm7
1303 pxor xmm0,xmm4
1304 movdqa xmm4,xmm8
1305 movdqa xmm7,xmm15
1306 pslld xmm2,10
1307 pxor xmm4,xmm15
1308
1309
1310 psrld xmm7,13
1311 pxor xmm1,xmm2
1312 paddd xmm6,xmm0
1313 pslld xmm2,19-10
1314 pand xmm3,xmm4
1315 pxor xmm1,xmm7
1316
1317
1318 psrld xmm7,22-13
1319 pxor xmm1,xmm2
1320 movdqa xmm14,xmm8
1321 pslld xmm2,30-19
1322 pxor xmm7,xmm1
1323 pxor xmm14,xmm3
1324 paddd xmm10,xmm6
1325 pxor xmm7,xmm2
1326
1327 paddd xmm14,xmm6
1328 paddd xmm14,xmm7
1329 movdqa xmm6,XMMWORD[((48-128))+rax]
1330 paddd xmm5,XMMWORD[((176-128))+rax]
1331
1332 movdqa xmm7,xmm6
1333 movdqa xmm1,xmm6
1334 psrld xmm7,3
1335 movdqa xmm2,xmm6
1336
1337 psrld xmm1,7
1338 movdqa xmm0,XMMWORD[((0-128))+rax]
1339 pslld xmm2,14
1340 pxor xmm7,xmm1
1341 psrld xmm1,18-7
1342 movdqa xmm3,xmm0
1343 pxor xmm7,xmm2
1344 pslld xmm2,25-14
1345 pxor xmm7,xmm1
1346 psrld xmm0,10
1347 movdqa xmm1,xmm3
1348
1349 psrld xmm3,17
1350 pxor xmm7,xmm2
1351 pslld xmm1,13
1352 paddd xmm5,xmm7
1353 pxor xmm0,xmm3
1354 psrld xmm3,19-17
1355 pxor xmm0,xmm1
1356 pslld xmm1,15-13
1357 pxor xmm0,xmm3
1358 pxor xmm0,xmm1
1359 paddd xmm5,xmm0
1360 movdqa xmm7,xmm10
1361
1362 movdqa xmm2,xmm10
1363
1364 psrld xmm7,6
1365 movdqa xmm1,xmm10
1366 pslld xmm2,7
1367 movdqa XMMWORD[(32-128)+rax],xmm5
1368 paddd xmm5,xmm13
1369
1370 psrld xmm1,11
1371 pxor xmm7,xmm2
1372 pslld xmm2,21-7
1373 paddd xmm5,XMMWORD[((-64))+rbp]
1374 pxor xmm7,xmm1
1375
1376 psrld xmm1,25-11
1377 movdqa xmm0,xmm10
1378
1379 pxor xmm7,xmm2
1380 movdqa xmm3,xmm10
1381 pslld xmm2,26-21
1382 pandn xmm0,xmm12
1383 pand xmm3,xmm11
1384 pxor xmm7,xmm1
1385
1386
1387 movdqa xmm1,xmm14
1388 pxor xmm7,xmm2
1389 movdqa xmm2,xmm14
1390 psrld xmm1,2
1391 paddd xmm5,xmm7
1392 pxor xmm0,xmm3
1393 movdqa xmm3,xmm15
1394 movdqa xmm7,xmm14
1395 pslld xmm2,10
1396 pxor xmm3,xmm14
1397
1398
1399 psrld xmm7,13
1400 pxor xmm1,xmm2
1401 paddd xmm5,xmm0
1402 pslld xmm2,19-10
1403 pand xmm4,xmm3
1404 pxor xmm1,xmm7
1405
1406
1407 psrld xmm7,22-13
1408 pxor xmm1,xmm2
1409 movdqa xmm13,xmm15
1410 pslld xmm2,30-19
1411 pxor xmm7,xmm1
1412 pxor xmm13,xmm4
1413 paddd xmm9,xmm5
1414 pxor xmm7,xmm2
1415
1416 paddd xmm13,xmm5
1417 paddd xmm13,xmm7
1418 movdqa xmm5,XMMWORD[((64-128))+rax]
1419 paddd xmm6,XMMWORD[((192-128))+rax]
1420
1421 movdqa xmm7,xmm5
1422 movdqa xmm1,xmm5
1423 psrld xmm7,3
1424 movdqa xmm2,xmm5
1425
1426 psrld xmm1,7
1427 movdqa xmm0,XMMWORD[((16-128))+rax]
1428 pslld xmm2,14
1429 pxor xmm7,xmm1
1430 psrld xmm1,18-7
1431 movdqa xmm4,xmm0
1432 pxor xmm7,xmm2
1433 pslld xmm2,25-14
1434 pxor xmm7,xmm1
1435 psrld xmm0,10
1436 movdqa xmm1,xmm4
1437
1438 psrld xmm4,17
1439 pxor xmm7,xmm2
1440 pslld xmm1,13
1441 paddd xmm6,xmm7
1442 pxor xmm0,xmm4
1443 psrld xmm4,19-17
1444 pxor xmm0,xmm1
1445 pslld xmm1,15-13
1446 pxor xmm0,xmm4
1447 pxor xmm0,xmm1
1448 paddd xmm6,xmm0
1449 movdqa xmm7,xmm9
1450
1451 movdqa xmm2,xmm9
1452
1453 psrld xmm7,6
1454 movdqa xmm1,xmm9
1455 pslld xmm2,7
1456 movdqa XMMWORD[(48-128)+rax],xmm6
1457 paddd xmm6,xmm12
1458
1459 psrld xmm1,11
1460 pxor xmm7,xmm2
1461 pslld xmm2,21-7
1462 paddd xmm6,XMMWORD[((-32))+rbp]
1463 pxor xmm7,xmm1
1464
1465 psrld xmm1,25-11
1466 movdqa xmm0,xmm9
1467
1468 pxor xmm7,xmm2
1469 movdqa xmm4,xmm9
1470 pslld xmm2,26-21
1471 pandn xmm0,xmm11
1472 pand xmm4,xmm10
1473 pxor xmm7,xmm1
1474
1475
1476 movdqa xmm1,xmm13
1477 pxor xmm7,xmm2
1478 movdqa xmm2,xmm13
1479 psrld xmm1,2
1480 paddd xmm6,xmm7
1481 pxor xmm0,xmm4
1482 movdqa xmm4,xmm14
1483 movdqa xmm7,xmm13
1484 pslld xmm2,10
1485 pxor xmm4,xmm13
1486
1487
1488 psrld xmm7,13
1489 pxor xmm1,xmm2
1490 paddd xmm6,xmm0
1491 pslld xmm2,19-10
1492 pand xmm3,xmm4
1493 pxor xmm1,xmm7
1494
1495
1496 psrld xmm7,22-13
1497 pxor xmm1,xmm2
1498 movdqa xmm12,xmm14
1499 pslld xmm2,30-19
1500 pxor xmm7,xmm1
1501 pxor xmm12,xmm3
1502 paddd xmm8,xmm6
1503 pxor xmm7,xmm2
1504
1505 paddd xmm12,xmm6
1506 paddd xmm12,xmm7
1507 movdqa xmm6,XMMWORD[((80-128))+rax]
1508 paddd xmm5,XMMWORD[((208-128))+rax]
1509
1510 movdqa xmm7,xmm6
1511 movdqa xmm1,xmm6
1512 psrld xmm7,3
1513 movdqa xmm2,xmm6
1514
1515 psrld xmm1,7
1516 movdqa xmm0,XMMWORD[((32-128))+rax]
1517 pslld xmm2,14
1518 pxor xmm7,xmm1
1519 psrld xmm1,18-7
1520 movdqa xmm3,xmm0
1521 pxor xmm7,xmm2
1522 pslld xmm2,25-14
1523 pxor xmm7,xmm1
1524 psrld xmm0,10
1525 movdqa xmm1,xmm3
1526
1527 psrld xmm3,17
1528 pxor xmm7,xmm2
1529 pslld xmm1,13
1530 paddd xmm5,xmm7
1531 pxor xmm0,xmm3
1532 psrld xmm3,19-17
1533 pxor xmm0,xmm1
1534 pslld xmm1,15-13
1535 pxor xmm0,xmm3
1536 pxor xmm0,xmm1
1537 paddd xmm5,xmm0
1538 movdqa xmm7,xmm8
1539
1540 movdqa xmm2,xmm8
1541
1542 psrld xmm7,6
1543 movdqa xmm1,xmm8
1544 pslld xmm2,7
1545 movdqa XMMWORD[(64-128)+rax],xmm5
1546 paddd xmm5,xmm11
1547
1548 psrld xmm1,11
1549 pxor xmm7,xmm2
1550 pslld xmm2,21-7
1551 paddd xmm5,XMMWORD[rbp]
1552 pxor xmm7,xmm1
1553
1554 psrld xmm1,25-11
1555 movdqa xmm0,xmm8
1556
1557 pxor xmm7,xmm2
1558 movdqa xmm3,xmm8
1559 pslld xmm2,26-21
1560 pandn xmm0,xmm10
1561 pand xmm3,xmm9
1562 pxor xmm7,xmm1
1563
1564
1565 movdqa xmm1,xmm12
1566 pxor xmm7,xmm2
1567 movdqa xmm2,xmm12
1568 psrld xmm1,2
1569 paddd xmm5,xmm7
1570 pxor xmm0,xmm3
1571 movdqa xmm3,xmm13
1572 movdqa xmm7,xmm12
1573 pslld xmm2,10
1574 pxor xmm3,xmm12
1575
1576
1577 psrld xmm7,13
1578 pxor xmm1,xmm2
1579 paddd xmm5,xmm0
1580 pslld xmm2,19-10
1581 pand xmm4,xmm3
1582 pxor xmm1,xmm7
1583
1584
1585 psrld xmm7,22-13
1586 pxor xmm1,xmm2
1587 movdqa xmm11,xmm13
1588 pslld xmm2,30-19
1589 pxor xmm7,xmm1
1590 pxor xmm11,xmm4
1591 paddd xmm15,xmm5
1592 pxor xmm7,xmm2
1593
1594 paddd xmm11,xmm5
1595 paddd xmm11,xmm7
1596 movdqa xmm5,XMMWORD[((96-128))+rax]
1597 paddd xmm6,XMMWORD[((224-128))+rax]
1598
1599 movdqa xmm7,xmm5
1600 movdqa xmm1,xmm5
1601 psrld xmm7,3
1602 movdqa xmm2,xmm5
1603
1604 psrld xmm1,7
1605 movdqa xmm0,XMMWORD[((48-128))+rax]
1606 pslld xmm2,14
1607 pxor xmm7,xmm1
1608 psrld xmm1,18-7
1609 movdqa xmm4,xmm0
1610 pxor xmm7,xmm2
1611 pslld xmm2,25-14
1612 pxor xmm7,xmm1
1613 psrld xmm0,10
1614 movdqa xmm1,xmm4
1615
1616 psrld xmm4,17
1617 pxor xmm7,xmm2
1618 pslld xmm1,13
1619 paddd xmm6,xmm7
1620 pxor xmm0,xmm4
1621 psrld xmm4,19-17
1622 pxor xmm0,xmm1
1623 pslld xmm1,15-13
1624 pxor xmm0,xmm4
1625 pxor xmm0,xmm1
1626 paddd xmm6,xmm0
1627 movdqa xmm7,xmm15
1628
1629 movdqa xmm2,xmm15
1630
1631 psrld xmm7,6
1632 movdqa xmm1,xmm15
1633 pslld xmm2,7
1634 movdqa XMMWORD[(80-128)+rax],xmm6
1635 paddd xmm6,xmm10
1636
1637 psrld xmm1,11
1638 pxor xmm7,xmm2
1639 pslld xmm2,21-7
1640 paddd xmm6,XMMWORD[32+rbp]
1641 pxor xmm7,xmm1
1642
1643 psrld xmm1,25-11
1644 movdqa xmm0,xmm15
1645
1646 pxor xmm7,xmm2
1647 movdqa xmm4,xmm15
1648 pslld xmm2,26-21
1649 pandn xmm0,xmm9
1650 pand xmm4,xmm8
1651 pxor xmm7,xmm1
1652
1653
1654 movdqa xmm1,xmm11
1655 pxor xmm7,xmm2
1656 movdqa xmm2,xmm11
1657 psrld xmm1,2
1658 paddd xmm6,xmm7
1659 pxor xmm0,xmm4
1660 movdqa xmm4,xmm12
1661 movdqa xmm7,xmm11
1662 pslld xmm2,10
1663 pxor xmm4,xmm11
1664
1665
1666 psrld xmm7,13
1667 pxor xmm1,xmm2
1668 paddd xmm6,xmm0
1669 pslld xmm2,19-10
1670 pand xmm3,xmm4
1671 pxor xmm1,xmm7
1672
1673
1674 psrld xmm7,22-13
1675 pxor xmm1,xmm2
1676 movdqa xmm10,xmm12
1677 pslld xmm2,30-19
1678 pxor xmm7,xmm1
1679 pxor xmm10,xmm3
1680 paddd xmm14,xmm6
1681 pxor xmm7,xmm2
1682
1683 paddd xmm10,xmm6
1684 paddd xmm10,xmm7
1685 movdqa xmm6,XMMWORD[((112-128))+rax]
1686 paddd xmm5,XMMWORD[((240-128))+rax]
1687
1688 movdqa xmm7,xmm6
1689 movdqa xmm1,xmm6
1690 psrld xmm7,3
1691 movdqa xmm2,xmm6
1692
1693 psrld xmm1,7
1694 movdqa xmm0,XMMWORD[((64-128))+rax]
1695 pslld xmm2,14
1696 pxor xmm7,xmm1
1697 psrld xmm1,18-7
1698 movdqa xmm3,xmm0
1699 pxor xmm7,xmm2
1700 pslld xmm2,25-14
1701 pxor xmm7,xmm1
1702 psrld xmm0,10
1703 movdqa xmm1,xmm3
1704
1705 psrld xmm3,17
1706 pxor xmm7,xmm2
1707 pslld xmm1,13
1708 paddd xmm5,xmm7
1709 pxor xmm0,xmm3
1710 psrld xmm3,19-17
1711 pxor xmm0,xmm1
1712 pslld xmm1,15-13
1713 pxor xmm0,xmm3
1714 pxor xmm0,xmm1
1715 paddd xmm5,xmm0
1716 movdqa xmm7,xmm14
1717
1718 movdqa xmm2,xmm14
1719
1720 psrld xmm7,6
1721 movdqa xmm1,xmm14
1722 pslld xmm2,7
1723 movdqa XMMWORD[(96-128)+rax],xmm5
1724 paddd xmm5,xmm9
1725
1726 psrld xmm1,11
1727 pxor xmm7,xmm2
1728 pslld xmm2,21-7
1729 paddd xmm5,XMMWORD[64+rbp]
1730 pxor xmm7,xmm1
1731
1732 psrld xmm1,25-11
1733 movdqa xmm0,xmm14
1734
1735 pxor xmm7,xmm2
1736 movdqa xmm3,xmm14
1737 pslld xmm2,26-21
1738 pandn xmm0,xmm8
1739 pand xmm3,xmm15
1740 pxor xmm7,xmm1
1741
1742
1743 movdqa xmm1,xmm10
1744 pxor xmm7,xmm2
1745 movdqa xmm2,xmm10
1746 psrld xmm1,2
1747 paddd xmm5,xmm7
1748 pxor xmm0,xmm3
1749 movdqa xmm3,xmm11
1750 movdqa xmm7,xmm10
1751 pslld xmm2,10
1752 pxor xmm3,xmm10
1753
1754
1755 psrld xmm7,13
1756 pxor xmm1,xmm2
1757 paddd xmm5,xmm0
1758 pslld xmm2,19-10
1759 pand xmm4,xmm3
1760 pxor xmm1,xmm7
1761
1762
1763 psrld xmm7,22-13
1764 pxor xmm1,xmm2
1765 movdqa xmm9,xmm11
1766 pslld xmm2,30-19
1767 pxor xmm7,xmm1
1768 pxor xmm9,xmm4
1769 paddd xmm13,xmm5
1770 pxor xmm7,xmm2
1771
1772 paddd xmm9,xmm5
1773 paddd xmm9,xmm7
1774 movdqa xmm5,XMMWORD[((128-128))+rax]
1775 paddd xmm6,XMMWORD[((0-128))+rax]
1776
1777 movdqa xmm7,xmm5
1778 movdqa xmm1,xmm5
1779 psrld xmm7,3
1780 movdqa xmm2,xmm5
1781
1782 psrld xmm1,7
1783 movdqa xmm0,XMMWORD[((80-128))+rax]
1784 pslld xmm2,14
1785 pxor xmm7,xmm1
1786 psrld xmm1,18-7
1787 movdqa xmm4,xmm0
1788 pxor xmm7,xmm2
1789 pslld xmm2,25-14
1790 pxor xmm7,xmm1
1791 psrld xmm0,10
1792 movdqa xmm1,xmm4
1793
1794 psrld xmm4,17
1795 pxor xmm7,xmm2
1796 pslld xmm1,13
1797 paddd xmm6,xmm7
1798 pxor xmm0,xmm4
1799 psrld xmm4,19-17
1800 pxor xmm0,xmm1
1801 pslld xmm1,15-13
1802 pxor xmm0,xmm4
1803 pxor xmm0,xmm1
1804 paddd xmm6,xmm0
1805 movdqa xmm7,xmm13
1806
1807 movdqa xmm2,xmm13
1808
1809 psrld xmm7,6
1810 movdqa xmm1,xmm13
1811 pslld xmm2,7
1812 movdqa XMMWORD[(112-128)+rax],xmm6
1813 paddd xmm6,xmm8
1814
1815 psrld xmm1,11
1816 pxor xmm7,xmm2
1817 pslld xmm2,21-7
1818 paddd xmm6,XMMWORD[96+rbp]
1819 pxor xmm7,xmm1
1820
1821 psrld xmm1,25-11
1822 movdqa xmm0,xmm13
1823
1824 pxor xmm7,xmm2
1825 movdqa xmm4,xmm13
1826 pslld xmm2,26-21
1827 pandn xmm0,xmm15
1828 pand xmm4,xmm14
1829 pxor xmm7,xmm1
1830
1831
1832 movdqa xmm1,xmm9
1833 pxor xmm7,xmm2
1834 movdqa xmm2,xmm9
1835 psrld xmm1,2
1836 paddd xmm6,xmm7
1837 pxor xmm0,xmm4
1838 movdqa xmm4,xmm10
1839 movdqa xmm7,xmm9
1840 pslld xmm2,10
1841 pxor xmm4,xmm9
1842
1843
1844 psrld xmm7,13
1845 pxor xmm1,xmm2
1846 paddd xmm6,xmm0
1847 pslld xmm2,19-10
1848 pand xmm3,xmm4
1849 pxor xmm1,xmm7
1850
1851
1852 psrld xmm7,22-13
1853 pxor xmm1,xmm2
1854 movdqa xmm8,xmm10
1855 pslld xmm2,30-19
1856 pxor xmm7,xmm1
1857 pxor xmm8,xmm3
1858 paddd xmm12,xmm6
1859 pxor xmm7,xmm2
1860
1861 paddd xmm8,xmm6
1862 paddd xmm8,xmm7
1863 lea rbp,[256+rbp]
1864 movdqa xmm6,XMMWORD[((144-128))+rax]
1865 paddd xmm5,XMMWORD[((16-128))+rax]
1866
1867 movdqa xmm7,xmm6
1868 movdqa xmm1,xmm6
1869 psrld xmm7,3
1870 movdqa xmm2,xmm6
1871
1872 psrld xmm1,7
1873 movdqa xmm0,XMMWORD[((96-128))+rax]
1874 pslld xmm2,14
1875 pxor xmm7,xmm1
1876 psrld xmm1,18-7
1877 movdqa xmm3,xmm0
1878 pxor xmm7,xmm2
1879 pslld xmm2,25-14
1880 pxor xmm7,xmm1
1881 psrld xmm0,10
1882 movdqa xmm1,xmm3
1883
1884 psrld xmm3,17
1885 pxor xmm7,xmm2
1886 pslld xmm1,13
1887 paddd xmm5,xmm7
1888 pxor xmm0,xmm3
1889 psrld xmm3,19-17
1890 pxor xmm0,xmm1
1891 pslld xmm1,15-13
1892 pxor xmm0,xmm3
1893 pxor xmm0,xmm1
1894 paddd xmm5,xmm0
1895 movdqa xmm7,xmm12
1896
1897 movdqa xmm2,xmm12
1898
1899 psrld xmm7,6
1900 movdqa xmm1,xmm12
1901 pslld xmm2,7
1902 movdqa XMMWORD[(128-128)+rax],xmm5
1903 paddd xmm5,xmm15
1904
1905 psrld xmm1,11
1906 pxor xmm7,xmm2
1907 pslld xmm2,21-7
1908 paddd xmm5,XMMWORD[((-128))+rbp]
1909 pxor xmm7,xmm1
1910
1911 psrld xmm1,25-11
1912 movdqa xmm0,xmm12
1913
1914 pxor xmm7,xmm2
1915 movdqa xmm3,xmm12
1916 pslld xmm2,26-21
1917 pandn xmm0,xmm14
1918 pand xmm3,xmm13
1919 pxor xmm7,xmm1
1920
1921
1922 movdqa xmm1,xmm8
1923 pxor xmm7,xmm2
1924 movdqa xmm2,xmm8
1925 psrld xmm1,2
1926 paddd xmm5,xmm7
1927 pxor xmm0,xmm3
1928 movdqa xmm3,xmm9
1929 movdqa xmm7,xmm8
1930 pslld xmm2,10
1931 pxor xmm3,xmm8
1932
1933
1934 psrld xmm7,13
1935 pxor xmm1,xmm2
1936 paddd xmm5,xmm0
1937 pslld xmm2,19-10
1938 pand xmm4,xmm3
1939 pxor xmm1,xmm7
1940
1941
1942 psrld xmm7,22-13
1943 pxor xmm1,xmm2
1944 movdqa xmm15,xmm9
1945 pslld xmm2,30-19
1946 pxor xmm7,xmm1
1947 pxor xmm15,xmm4
1948 paddd xmm11,xmm5
1949 pxor xmm7,xmm2
1950
1951 paddd xmm15,xmm5
1952 paddd xmm15,xmm7
1953 movdqa xmm5,XMMWORD[((160-128))+rax]
1954 paddd xmm6,XMMWORD[((32-128))+rax]
1955
1956 movdqa xmm7,xmm5
1957 movdqa xmm1,xmm5
1958 psrld xmm7,3
1959 movdqa xmm2,xmm5
1960
1961 psrld xmm1,7
1962 movdqa xmm0,XMMWORD[((112-128))+rax]
1963 pslld xmm2,14
1964 pxor xmm7,xmm1
1965 psrld xmm1,18-7
1966 movdqa xmm4,xmm0
1967 pxor xmm7,xmm2
1968 pslld xmm2,25-14
1969 pxor xmm7,xmm1
1970 psrld xmm0,10
1971 movdqa xmm1,xmm4
1972
1973 psrld xmm4,17
1974 pxor xmm7,xmm2
1975 pslld xmm1,13
1976 paddd xmm6,xmm7
1977 pxor xmm0,xmm4
1978 psrld xmm4,19-17
1979 pxor xmm0,xmm1
1980 pslld xmm1,15-13
1981 pxor xmm0,xmm4
1982 pxor xmm0,xmm1
1983 paddd xmm6,xmm0
1984 movdqa xmm7,xmm11
1985
1986 movdqa xmm2,xmm11
1987
1988 psrld xmm7,6
1989 movdqa xmm1,xmm11
1990 pslld xmm2,7
1991 movdqa XMMWORD[(144-128)+rax],xmm6
1992 paddd xmm6,xmm14
1993
1994 psrld xmm1,11
1995 pxor xmm7,xmm2
1996 pslld xmm2,21-7
1997 paddd xmm6,XMMWORD[((-96))+rbp]
1998 pxor xmm7,xmm1
1999
2000 psrld xmm1,25-11
2001 movdqa xmm0,xmm11
2002
2003 pxor xmm7,xmm2
2004 movdqa xmm4,xmm11
2005 pslld xmm2,26-21
2006 pandn xmm0,xmm13
2007 pand xmm4,xmm12
2008 pxor xmm7,xmm1
2009
2010
2011 movdqa xmm1,xmm15
2012 pxor xmm7,xmm2
2013 movdqa xmm2,xmm15
2014 psrld xmm1,2
2015 paddd xmm6,xmm7
2016 pxor xmm0,xmm4
2017 movdqa xmm4,xmm8
2018 movdqa xmm7,xmm15
2019 pslld xmm2,10
2020 pxor xmm4,xmm15
2021
2022
2023 psrld xmm7,13
2024 pxor xmm1,xmm2
2025 paddd xmm6,xmm0
2026 pslld xmm2,19-10
2027 pand xmm3,xmm4
2028 pxor xmm1,xmm7
2029
2030
2031 psrld xmm7,22-13
2032 pxor xmm1,xmm2
2033 movdqa xmm14,xmm8
2034 pslld xmm2,30-19
2035 pxor xmm7,xmm1
2036 pxor xmm14,xmm3
2037 paddd xmm10,xmm6
2038 pxor xmm7,xmm2
2039
2040 paddd xmm14,xmm6
2041 paddd xmm14,xmm7
2042 movdqa xmm6,XMMWORD[((176-128))+rax]
2043 paddd xmm5,XMMWORD[((48-128))+rax]
2044
2045 movdqa xmm7,xmm6
2046 movdqa xmm1,xmm6
2047 psrld xmm7,3
2048 movdqa xmm2,xmm6
2049
2050 psrld xmm1,7
2051 movdqa xmm0,XMMWORD[((128-128))+rax]
2052 pslld xmm2,14
2053 pxor xmm7,xmm1
2054 psrld xmm1,18-7
2055 movdqa xmm3,xmm0
2056 pxor xmm7,xmm2
2057 pslld xmm2,25-14
2058 pxor xmm7,xmm1
2059 psrld xmm0,10
2060 movdqa xmm1,xmm3
2061
2062 psrld xmm3,17
2063 pxor xmm7,xmm2
2064 pslld xmm1,13
2065 paddd xmm5,xmm7
2066 pxor xmm0,xmm3
2067 psrld xmm3,19-17
2068 pxor xmm0,xmm1
2069 pslld xmm1,15-13
2070 pxor xmm0,xmm3
2071 pxor xmm0,xmm1
2072 paddd xmm5,xmm0
2073 movdqa xmm7,xmm10
2074
2075 movdqa xmm2,xmm10
2076
2077 psrld xmm7,6
2078 movdqa xmm1,xmm10
2079 pslld xmm2,7
2080 movdqa XMMWORD[(160-128)+rax],xmm5
2081 paddd xmm5,xmm13
2082
2083 psrld xmm1,11
2084 pxor xmm7,xmm2
2085 pslld xmm2,21-7
2086 paddd xmm5,XMMWORD[((-64))+rbp]
2087 pxor xmm7,xmm1
2088
2089 psrld xmm1,25-11
2090 movdqa xmm0,xmm10
2091
2092 pxor xmm7,xmm2
2093 movdqa xmm3,xmm10
2094 pslld xmm2,26-21
2095 pandn xmm0,xmm12
2096 pand xmm3,xmm11
2097 pxor xmm7,xmm1
2098
2099
2100 movdqa xmm1,xmm14
2101 pxor xmm7,xmm2
2102 movdqa xmm2,xmm14
2103 psrld xmm1,2
2104 paddd xmm5,xmm7
2105 pxor xmm0,xmm3
2106 movdqa xmm3,xmm15
2107 movdqa xmm7,xmm14
2108 pslld xmm2,10
2109 pxor xmm3,xmm14
2110
2111
2112 psrld xmm7,13
2113 pxor xmm1,xmm2
2114 paddd xmm5,xmm0
2115 pslld xmm2,19-10
2116 pand xmm4,xmm3
2117 pxor xmm1,xmm7
2118
2119
2120 psrld xmm7,22-13
2121 pxor xmm1,xmm2
2122 movdqa xmm13,xmm15
2123 pslld xmm2,30-19
2124 pxor xmm7,xmm1
2125 pxor xmm13,xmm4
2126 paddd xmm9,xmm5
2127 pxor xmm7,xmm2
2128
2129 paddd xmm13,xmm5
2130 paddd xmm13,xmm7
2131 movdqa xmm5,XMMWORD[((192-128))+rax]
2132 paddd xmm6,XMMWORD[((64-128))+rax]
2133
2134 movdqa xmm7,xmm5
2135 movdqa xmm1,xmm5
2136 psrld xmm7,3
2137 movdqa xmm2,xmm5
2138
2139 psrld xmm1,7
2140 movdqa xmm0,XMMWORD[((144-128))+rax]
2141 pslld xmm2,14
2142 pxor xmm7,xmm1
2143 psrld xmm1,18-7
2144 movdqa xmm4,xmm0
2145 pxor xmm7,xmm2
2146 pslld xmm2,25-14
2147 pxor xmm7,xmm1
2148 psrld xmm0,10
2149 movdqa xmm1,xmm4
2150
2151 psrld xmm4,17
2152 pxor xmm7,xmm2
2153 pslld xmm1,13
2154 paddd xmm6,xmm7
2155 pxor xmm0,xmm4
2156 psrld xmm4,19-17
2157 pxor xmm0,xmm1
2158 pslld xmm1,15-13
2159 pxor xmm0,xmm4
2160 pxor xmm0,xmm1
2161 paddd xmm6,xmm0
2162 movdqa xmm7,xmm9
2163
2164 movdqa xmm2,xmm9
2165
2166 psrld xmm7,6
2167 movdqa xmm1,xmm9
2168 pslld xmm2,7
2169 movdqa XMMWORD[(176-128)+rax],xmm6
2170 paddd xmm6,xmm12
2171
2172 psrld xmm1,11
2173 pxor xmm7,xmm2
2174 pslld xmm2,21-7
2175 paddd xmm6,XMMWORD[((-32))+rbp]
2176 pxor xmm7,xmm1
2177
2178 psrld xmm1,25-11
2179 movdqa xmm0,xmm9
2180
2181 pxor xmm7,xmm2
2182 movdqa xmm4,xmm9
2183 pslld xmm2,26-21
2184 pandn xmm0,xmm11
2185 pand xmm4,xmm10
2186 pxor xmm7,xmm1
2187
2188
2189 movdqa xmm1,xmm13
2190 pxor xmm7,xmm2
2191 movdqa xmm2,xmm13
2192 psrld xmm1,2
2193 paddd xmm6,xmm7
2194 pxor xmm0,xmm4
2195 movdqa xmm4,xmm14
2196 movdqa xmm7,xmm13
2197 pslld xmm2,10
2198 pxor xmm4,xmm13
2199
2200
2201 psrld xmm7,13
2202 pxor xmm1,xmm2
2203 paddd xmm6,xmm0
2204 pslld xmm2,19-10
2205 pand xmm3,xmm4
2206 pxor xmm1,xmm7
2207
2208
2209 psrld xmm7,22-13
2210 pxor xmm1,xmm2
2211 movdqa xmm12,xmm14
2212 pslld xmm2,30-19
2213 pxor xmm7,xmm1
2214 pxor xmm12,xmm3
2215 paddd xmm8,xmm6
2216 pxor xmm7,xmm2
2217
2218 paddd xmm12,xmm6
2219 paddd xmm12,xmm7
2220 movdqa xmm6,XMMWORD[((208-128))+rax]
2221 paddd xmm5,XMMWORD[((80-128))+rax]
2222
2223 movdqa xmm7,xmm6
2224 movdqa xmm1,xmm6
2225 psrld xmm7,3
2226 movdqa xmm2,xmm6
2227
2228 psrld xmm1,7
2229 movdqa xmm0,XMMWORD[((160-128))+rax]
2230 pslld xmm2,14
2231 pxor xmm7,xmm1
2232 psrld xmm1,18-7
2233 movdqa xmm3,xmm0
2234 pxor xmm7,xmm2
2235 pslld xmm2,25-14
2236 pxor xmm7,xmm1
2237 psrld xmm0,10
2238 movdqa xmm1,xmm3
2239
2240 psrld xmm3,17
2241 pxor xmm7,xmm2
2242 pslld xmm1,13
2243 paddd xmm5,xmm7
2244 pxor xmm0,xmm3
2245 psrld xmm3,19-17
2246 pxor xmm0,xmm1
2247 pslld xmm1,15-13
2248 pxor xmm0,xmm3
2249 pxor xmm0,xmm1
2250 paddd xmm5,xmm0
2251 movdqa xmm7,xmm8
2252
2253 movdqa xmm2,xmm8
2254
2255 psrld xmm7,6
2256 movdqa xmm1,xmm8
2257 pslld xmm2,7
2258 movdqa XMMWORD[(192-128)+rax],xmm5
2259 paddd xmm5,xmm11
2260
2261 psrld xmm1,11
2262 pxor xmm7,xmm2
2263 pslld xmm2,21-7
2264 paddd xmm5,XMMWORD[rbp]
2265 pxor xmm7,xmm1
2266
2267 psrld xmm1,25-11
2268 movdqa xmm0,xmm8
2269
2270 pxor xmm7,xmm2
2271 movdqa xmm3,xmm8
2272 pslld xmm2,26-21
2273 pandn xmm0,xmm10
2274 pand xmm3,xmm9
2275 pxor xmm7,xmm1
2276
2277
2278 movdqa xmm1,xmm12
2279 pxor xmm7,xmm2
2280 movdqa xmm2,xmm12
2281 psrld xmm1,2
2282 paddd xmm5,xmm7
2283 pxor xmm0,xmm3
2284 movdqa xmm3,xmm13
2285 movdqa xmm7,xmm12
2286 pslld xmm2,10
2287 pxor xmm3,xmm12
2288
2289
2290 psrld xmm7,13
2291 pxor xmm1,xmm2
2292 paddd xmm5,xmm0
2293 pslld xmm2,19-10
2294 pand xmm4,xmm3
2295 pxor xmm1,xmm7
2296
2297
2298 psrld xmm7,22-13
2299 pxor xmm1,xmm2
2300 movdqa xmm11,xmm13
2301 pslld xmm2,30-19
2302 pxor xmm7,xmm1
2303 pxor xmm11,xmm4
2304 paddd xmm15,xmm5
2305 pxor xmm7,xmm2
2306
2307 paddd xmm11,xmm5
2308 paddd xmm11,xmm7
2309 movdqa xmm5,XMMWORD[((224-128))+rax]
2310 paddd xmm6,XMMWORD[((96-128))+rax]
2311
2312 movdqa xmm7,xmm5
2313 movdqa xmm1,xmm5
2314 psrld xmm7,3
2315 movdqa xmm2,xmm5
2316
2317 psrld xmm1,7
2318 movdqa xmm0,XMMWORD[((176-128))+rax]
2319 pslld xmm2,14
2320 pxor xmm7,xmm1
2321 psrld xmm1,18-7
2322 movdqa xmm4,xmm0
2323 pxor xmm7,xmm2
2324 pslld xmm2,25-14
2325 pxor xmm7,xmm1
2326 psrld xmm0,10
2327 movdqa xmm1,xmm4
2328
2329 psrld xmm4,17
2330 pxor xmm7,xmm2
2331 pslld xmm1,13
2332 paddd xmm6,xmm7
2333 pxor xmm0,xmm4
2334 psrld xmm4,19-17
2335 pxor xmm0,xmm1
2336 pslld xmm1,15-13
2337 pxor xmm0,xmm4
2338 pxor xmm0,xmm1
2339 paddd xmm6,xmm0
2340 movdqa xmm7,xmm15
2341
2342 movdqa xmm2,xmm15
2343
2344 psrld xmm7,6
2345 movdqa xmm1,xmm15
2346 pslld xmm2,7
2347 movdqa XMMWORD[(208-128)+rax],xmm6
2348 paddd xmm6,xmm10
2349
2350 psrld xmm1,11
2351 pxor xmm7,xmm2
2352 pslld xmm2,21-7
2353 paddd xmm6,XMMWORD[32+rbp]
2354 pxor xmm7,xmm1
2355
2356 psrld xmm1,25-11
2357 movdqa xmm0,xmm15
2358
2359 pxor xmm7,xmm2
2360 movdqa xmm4,xmm15
2361 pslld xmm2,26-21
2362 pandn xmm0,xmm9
2363 pand xmm4,xmm8
2364 pxor xmm7,xmm1
2365
2366
2367 movdqa xmm1,xmm11
2368 pxor xmm7,xmm2
2369 movdqa xmm2,xmm11
2370 psrld xmm1,2
2371 paddd xmm6,xmm7
2372 pxor xmm0,xmm4
2373 movdqa xmm4,xmm12
2374 movdqa xmm7,xmm11
2375 pslld xmm2,10
2376 pxor xmm4,xmm11
2377
2378
2379 psrld xmm7,13
2380 pxor xmm1,xmm2
2381 paddd xmm6,xmm0
2382 pslld xmm2,19-10
2383 pand xmm3,xmm4
2384 pxor xmm1,xmm7
2385
2386
2387 psrld xmm7,22-13
2388 pxor xmm1,xmm2
2389 movdqa xmm10,xmm12
2390 pslld xmm2,30-19
2391 pxor xmm7,xmm1
2392 pxor xmm10,xmm3
2393 paddd xmm14,xmm6
2394 pxor xmm7,xmm2
2395
2396 paddd xmm10,xmm6
2397 paddd xmm10,xmm7
2398 movdqa xmm6,XMMWORD[((240-128))+rax]
2399 paddd xmm5,XMMWORD[((112-128))+rax]
2400
2401 movdqa xmm7,xmm6
2402 movdqa xmm1,xmm6
2403 psrld xmm7,3
2404 movdqa xmm2,xmm6
2405
2406 psrld xmm1,7
2407 movdqa xmm0,XMMWORD[((192-128))+rax]
2408 pslld xmm2,14
2409 pxor xmm7,xmm1
2410 psrld xmm1,18-7
2411 movdqa xmm3,xmm0
2412 pxor xmm7,xmm2
2413 pslld xmm2,25-14
2414 pxor xmm7,xmm1
2415 psrld xmm0,10
2416 movdqa xmm1,xmm3
2417
2418 psrld xmm3,17
2419 pxor xmm7,xmm2
2420 pslld xmm1,13
2421 paddd xmm5,xmm7
2422 pxor xmm0,xmm3
2423 psrld xmm3,19-17
2424 pxor xmm0,xmm1
2425 pslld xmm1,15-13
2426 pxor xmm0,xmm3
2427 pxor xmm0,xmm1
2428 paddd xmm5,xmm0
2429 movdqa xmm7,xmm14
2430
2431 movdqa xmm2,xmm14
2432
2433 psrld xmm7,6
2434 movdqa xmm1,xmm14
2435 pslld xmm2,7
2436 movdqa XMMWORD[(224-128)+rax],xmm5
2437 paddd xmm5,xmm9
2438
2439 psrld xmm1,11
2440 pxor xmm7,xmm2
2441 pslld xmm2,21-7
2442 paddd xmm5,XMMWORD[64+rbp]
2443 pxor xmm7,xmm1
2444
2445 psrld xmm1,25-11
2446 movdqa xmm0,xmm14
2447
2448 pxor xmm7,xmm2
2449 movdqa xmm3,xmm14
2450 pslld xmm2,26-21
2451 pandn xmm0,xmm8
2452 pand xmm3,xmm15
2453 pxor xmm7,xmm1
2454
2455
2456 movdqa xmm1,xmm10
2457 pxor xmm7,xmm2
2458 movdqa xmm2,xmm10
2459 psrld xmm1,2
2460 paddd xmm5,xmm7
2461 pxor xmm0,xmm3
2462 movdqa xmm3,xmm11
2463 movdqa xmm7,xmm10
2464 pslld xmm2,10
2465 pxor xmm3,xmm10
2466
2467
2468 psrld xmm7,13
2469 pxor xmm1,xmm2
2470 paddd xmm5,xmm0
2471 pslld xmm2,19-10
2472 pand xmm4,xmm3
2473 pxor xmm1,xmm7
2474
2475
2476 psrld xmm7,22-13
2477 pxor xmm1,xmm2
2478 movdqa xmm9,xmm11
2479 pslld xmm2,30-19
2480 pxor xmm7,xmm1
2481 pxor xmm9,xmm4
2482 paddd xmm13,xmm5
2483 pxor xmm7,xmm2
2484
2485 paddd xmm9,xmm5
2486 paddd xmm9,xmm7
2487 movdqa xmm5,XMMWORD[((0-128))+rax]
2488 paddd xmm6,XMMWORD[((128-128))+rax]
2489
2490 movdqa xmm7,xmm5
2491 movdqa xmm1,xmm5
2492 psrld xmm7,3
2493 movdqa xmm2,xmm5
2494
2495 psrld xmm1,7
2496 movdqa xmm0,XMMWORD[((208-128))+rax]
2497 pslld xmm2,14
2498 pxor xmm7,xmm1
2499 psrld xmm1,18-7
2500 movdqa xmm4,xmm0
2501 pxor xmm7,xmm2
2502 pslld xmm2,25-14
2503 pxor xmm7,xmm1
2504 psrld xmm0,10
2505 movdqa xmm1,xmm4
2506
2507 psrld xmm4,17
2508 pxor xmm7,xmm2
2509 pslld xmm1,13
2510 paddd xmm6,xmm7
2511 pxor xmm0,xmm4
2512 psrld xmm4,19-17
2513 pxor xmm0,xmm1
2514 pslld xmm1,15-13
2515 pxor xmm0,xmm4
2516 pxor xmm0,xmm1
2517 paddd xmm6,xmm0
2518 movdqa xmm7,xmm13
2519
2520 movdqa xmm2,xmm13
2521
2522 psrld xmm7,6
2523 movdqa xmm1,xmm13
2524 pslld xmm2,7
2525 movdqa XMMWORD[(240-128)+rax],xmm6
2526 paddd xmm6,xmm8
2527
2528 psrld xmm1,11
2529 pxor xmm7,xmm2
2530 pslld xmm2,21-7
2531 paddd xmm6,XMMWORD[96+rbp]
2532 pxor xmm7,xmm1
2533
2534 psrld xmm1,25-11
2535 movdqa xmm0,xmm13
2536
2537 pxor xmm7,xmm2
2538 movdqa xmm4,xmm13
2539 pslld xmm2,26-21
2540 pandn xmm0,xmm15
2541 pand xmm4,xmm14
2542 pxor xmm7,xmm1
2543
2544
2545 movdqa xmm1,xmm9
2546 pxor xmm7,xmm2
2547 movdqa xmm2,xmm9
2548 psrld xmm1,2
2549 paddd xmm6,xmm7
2550 pxor xmm0,xmm4
2551 movdqa xmm4,xmm10
2552 movdqa xmm7,xmm9
2553 pslld xmm2,10
2554 pxor xmm4,xmm9
2555
2556
2557 psrld xmm7,13
2558 pxor xmm1,xmm2
2559 paddd xmm6,xmm0
2560 pslld xmm2,19-10
2561 pand xmm3,xmm4
2562 pxor xmm1,xmm7
2563
2564
2565 psrld xmm7,22-13
2566 pxor xmm1,xmm2
2567 movdqa xmm8,xmm10
2568 pslld xmm2,30-19
2569 pxor xmm7,xmm1
2570 pxor xmm8,xmm3
2571 paddd xmm12,xmm6
2572 pxor xmm7,xmm2
2573
2574 paddd xmm8,xmm6
2575 paddd xmm8,xmm7
2576 lea rbp,[256+rbp]
2577 dec ecx
2578 jnz NEAR $L$oop_16_xx
2579
2580 mov ecx,1
2581 lea rbp,[((K256+128))]
2582
2583 movdqa xmm7,XMMWORD[rbx]
2584 cmp ecx,DWORD[rbx]
2585 pxor xmm0,xmm0
2586 cmovge r8,rbp
2587 cmp ecx,DWORD[4+rbx]
2588 movdqa xmm6,xmm7
2589 cmovge r9,rbp
2590 cmp ecx,DWORD[8+rbx]
2591 pcmpgtd xmm6,xmm0
2592 cmovge r10,rbp
2593 cmp ecx,DWORD[12+rbx]
2594 paddd xmm7,xmm6
2595 cmovge r11,rbp
2596
2597 movdqu xmm0,XMMWORD[((0-128))+rdi]
2598 pand xmm8,xmm6
2599 movdqu xmm1,XMMWORD[((32-128))+rdi]
2600 pand xmm9,xmm6
2601 movdqu xmm2,XMMWORD[((64-128))+rdi]
2602 pand xmm10,xmm6
2603 movdqu xmm5,XMMWORD[((96-128))+rdi]
2604 pand xmm11,xmm6
2605 paddd xmm8,xmm0
2606 movdqu xmm0,XMMWORD[((128-128))+rdi]
2607 pand xmm12,xmm6
2608 paddd xmm9,xmm1
2609 movdqu xmm1,XMMWORD[((160-128))+rdi]
2610 pand xmm13,xmm6
2611 paddd xmm10,xmm2
2612 movdqu xmm2,XMMWORD[((192-128))+rdi]
2613 pand xmm14,xmm6
2614 paddd xmm11,xmm5
2615 movdqu xmm5,XMMWORD[((224-128))+rdi]
2616 pand xmm15,xmm6
2617 paddd xmm12,xmm0
2618 paddd xmm13,xmm1
2619 movdqu XMMWORD[(0-128)+rdi],xmm8
2620 paddd xmm14,xmm2
2621 movdqu XMMWORD[(32-128)+rdi],xmm9
2622 paddd xmm15,xmm5
2623 movdqu XMMWORD[(64-128)+rdi],xmm10
2624 movdqu XMMWORD[(96-128)+rdi],xmm11
2625 movdqu XMMWORD[(128-128)+rdi],xmm12
2626 movdqu XMMWORD[(160-128)+rdi],xmm13
2627 movdqu XMMWORD[(192-128)+rdi],xmm14
2628 movdqu XMMWORD[(224-128)+rdi],xmm15
2629
2630 movdqa XMMWORD[rbx],xmm7
2631 movdqa xmm6,XMMWORD[$L$pbswap]
2632 dec edx
2633 jnz NEAR $L$oop
2634
2635 mov edx,DWORD[280+rsp]
2636 lea rdi,[16+rdi]
2637 lea rsi,[64+rsi]
2638 dec edx
2639 jnz NEAR $L$oop_grande
2640
2641$L$done:
2642 mov rax,QWORD[272+rsp]
2643 movaps xmm6,XMMWORD[((-184))+rax]
2644 movaps xmm7,XMMWORD[((-168))+rax]
2645 movaps xmm8,XMMWORD[((-152))+rax]
2646 movaps xmm9,XMMWORD[((-136))+rax]
2647 movaps xmm10,XMMWORD[((-120))+rax]
2648 movaps xmm11,XMMWORD[((-104))+rax]
2649 movaps xmm12,XMMWORD[((-88))+rax]
2650 movaps xmm13,XMMWORD[((-72))+rax]
2651 movaps xmm14,XMMWORD[((-56))+rax]
2652 movaps xmm15,XMMWORD[((-40))+rax]
2653 mov rbp,QWORD[((-16))+rax]
2654 mov rbx,QWORD[((-8))+rax]
2655 lea rsp,[rax]
2656$L$epilogue:
2657 mov rdi,QWORD[8+rsp] ;WIN64 epilogue
2658 mov rsi,QWORD[16+rsp]
2659 DB 0F3h,0C3h ;repret
2660$L$SEH_end_sha256_multi_block:
2661
2662ALIGN 32
2663sha256_multi_block_shaext:
2664 mov QWORD[8+rsp],rdi ;WIN64 prologue
2665 mov QWORD[16+rsp],rsi
2666 mov rax,rsp
2667$L$SEH_begin_sha256_multi_block_shaext:
2668 mov rdi,rcx
2669 mov rsi,rdx
2670 mov rdx,r8
2671
2672
2673_shaext_shortcut:
2674 mov rax,rsp
2675 push rbx
2676 push rbp
2677 lea rsp,[((-168))+rsp]
2678 movaps XMMWORD[rsp],xmm6
2679 movaps XMMWORD[16+rsp],xmm7
2680 movaps XMMWORD[32+rsp],xmm8
2681 movaps XMMWORD[48+rsp],xmm9
2682 movaps XMMWORD[(-120)+rax],xmm10
2683 movaps XMMWORD[(-104)+rax],xmm11
2684 movaps XMMWORD[(-88)+rax],xmm12
2685 movaps XMMWORD[(-72)+rax],xmm13
2686 movaps XMMWORD[(-56)+rax],xmm14
2687 movaps XMMWORD[(-40)+rax],xmm15
2688 sub rsp,288
2689 shl edx,1
2690 and rsp,-256
2691 lea rdi,[128+rdi]
2692 mov QWORD[272+rsp],rax
2693$L$body_shaext:
2694 lea rbx,[256+rsp]
2695 lea rbp,[((K256_shaext+128))]
2696
2697$L$oop_grande_shaext:
2698 mov DWORD[280+rsp],edx
2699 xor edx,edx
2700 mov r8,QWORD[rsi]
2701 mov ecx,DWORD[8+rsi]
2702 cmp ecx,edx
2703 cmovg edx,ecx
2704 test ecx,ecx
2705 mov DWORD[rbx],ecx
2706 cmovle r8,rsp
2707 mov r9,QWORD[16+rsi]
2708 mov ecx,DWORD[24+rsi]
2709 cmp ecx,edx
2710 cmovg edx,ecx
2711 test ecx,ecx
2712 mov DWORD[4+rbx],ecx
2713 cmovle r9,rsp
2714 test edx,edx
2715 jz NEAR $L$done_shaext
2716
2717 movq xmm12,QWORD[((0-128))+rdi]
2718 movq xmm4,QWORD[((32-128))+rdi]
2719 movq xmm13,QWORD[((64-128))+rdi]
2720 movq xmm5,QWORD[((96-128))+rdi]
2721 movq xmm8,QWORD[((128-128))+rdi]
2722 movq xmm9,QWORD[((160-128))+rdi]
2723 movq xmm10,QWORD[((192-128))+rdi]
2724 movq xmm11,QWORD[((224-128))+rdi]
2725
2726 punpckldq xmm12,xmm4
2727 punpckldq xmm13,xmm5
2728 punpckldq xmm8,xmm9
2729 punpckldq xmm10,xmm11
2730 movdqa xmm3,XMMWORD[((K256_shaext-16))]
2731
2732 movdqa xmm14,xmm12
2733 movdqa xmm15,xmm13
2734 punpcklqdq xmm12,xmm8
2735 punpcklqdq xmm13,xmm10
2736 punpckhqdq xmm14,xmm8
2737 punpckhqdq xmm15,xmm10
2738
2739 pshufd xmm12,xmm12,27
2740 pshufd xmm13,xmm13,27
2741 pshufd xmm14,xmm14,27
2742 pshufd xmm15,xmm15,27
2743 jmp NEAR $L$oop_shaext
2744
2745ALIGN 32
2746$L$oop_shaext:
2747 movdqu xmm4,XMMWORD[r8]
2748 movdqu xmm8,XMMWORD[r9]
2749 movdqu xmm5,XMMWORD[16+r8]
2750 movdqu xmm9,XMMWORD[16+r9]
2751 movdqu xmm6,XMMWORD[32+r8]
2752DB 102,15,56,0,227
2753 movdqu xmm10,XMMWORD[32+r9]
2754DB 102,68,15,56,0,195
2755 movdqu xmm7,XMMWORD[48+r8]
2756 lea r8,[64+r8]
2757 movdqu xmm11,XMMWORD[48+r9]
2758 lea r9,[64+r9]
2759
2760 movdqa xmm0,XMMWORD[((0-128))+rbp]
2761DB 102,15,56,0,235
2762 paddd xmm0,xmm4
2763 pxor xmm4,xmm12
2764 movdqa xmm1,xmm0
2765 movdqa xmm2,XMMWORD[((0-128))+rbp]
2766DB 102,68,15,56,0,203
2767 paddd xmm2,xmm8
2768 movdqa XMMWORD[80+rsp],xmm13
2769DB 69,15,56,203,236
2770 pxor xmm8,xmm14
2771 movdqa xmm0,xmm2
2772 movdqa XMMWORD[112+rsp],xmm15
2773DB 69,15,56,203,254
2774 pshufd xmm0,xmm1,0x0e
2775 pxor xmm4,xmm12
2776 movdqa XMMWORD[64+rsp],xmm12
2777DB 69,15,56,203,229
2778 pshufd xmm0,xmm2,0x0e
2779 pxor xmm8,xmm14
2780 movdqa XMMWORD[96+rsp],xmm14
2781 movdqa xmm1,XMMWORD[((16-128))+rbp]
2782 paddd xmm1,xmm5
2783DB 102,15,56,0,243
2784DB 69,15,56,203,247
2785
2786 movdqa xmm0,xmm1
2787 movdqa xmm2,XMMWORD[((16-128))+rbp]
2788 paddd xmm2,xmm9
2789DB 69,15,56,203,236
2790 movdqa xmm0,xmm2
2791 prefetcht0 [127+r8]
2792DB 102,15,56,0,251
2793DB 102,68,15,56,0,211
2794 prefetcht0 [127+r9]
2795DB 69,15,56,203,254
2796 pshufd xmm0,xmm1,0x0e
2797DB 102,68,15,56,0,219
2798DB 15,56,204,229
2799DB 69,15,56,203,229
2800 pshufd xmm0,xmm2,0x0e
2801 movdqa xmm1,XMMWORD[((32-128))+rbp]
2802 paddd xmm1,xmm6
2803DB 69,15,56,203,247
2804
2805 movdqa xmm0,xmm1
2806 movdqa xmm2,XMMWORD[((32-128))+rbp]
2807 paddd xmm2,xmm10
2808DB 69,15,56,203,236
2809DB 69,15,56,204,193
2810 movdqa xmm0,xmm2
2811 movdqa xmm3,xmm7
2812DB 69,15,56,203,254
2813 pshufd xmm0,xmm1,0x0e
2814DB 102,15,58,15,222,4
2815 paddd xmm4,xmm3
2816 movdqa xmm3,xmm11
2817DB 102,65,15,58,15,218,4
2818DB 15,56,204,238
2819DB 69,15,56,203,229
2820 pshufd xmm0,xmm2,0x0e
2821 movdqa xmm1,XMMWORD[((48-128))+rbp]
2822 paddd xmm1,xmm7
2823DB 69,15,56,203,247
2824DB 69,15,56,204,202
2825
2826 movdqa xmm0,xmm1
2827 movdqa xmm2,XMMWORD[((48-128))+rbp]
2828 paddd xmm8,xmm3
2829 paddd xmm2,xmm11
2830DB 15,56,205,231
2831DB 69,15,56,203,236
2832 movdqa xmm0,xmm2
2833 movdqa xmm3,xmm4
2834DB 102,15,58,15,223,4
2835DB 69,15,56,203,254
2836DB 69,15,56,205,195
2837 pshufd xmm0,xmm1,0x0e
2838 paddd xmm5,xmm3
2839 movdqa xmm3,xmm8
2840DB 102,65,15,58,15,219,4
2841DB 15,56,204,247
2842DB 69,15,56,203,229
2843 pshufd xmm0,xmm2,0x0e
2844 movdqa xmm1,XMMWORD[((64-128))+rbp]
2845 paddd xmm1,xmm4
2846DB 69,15,56,203,247
2847DB 69,15,56,204,211
2848 movdqa xmm0,xmm1
2849 movdqa xmm2,XMMWORD[((64-128))+rbp]
2850 paddd xmm9,xmm3
2851 paddd xmm2,xmm8
2852DB 15,56,205,236
2853DB 69,15,56,203,236
2854 movdqa xmm0,xmm2
2855 movdqa xmm3,xmm5
2856DB 102,15,58,15,220,4
2857DB 69,15,56,203,254
2858DB 69,15,56,205,200
2859 pshufd xmm0,xmm1,0x0e
2860 paddd xmm6,xmm3
2861 movdqa xmm3,xmm9
2862DB 102,65,15,58,15,216,4
2863DB 15,56,204,252
2864DB 69,15,56,203,229
2865 pshufd xmm0,xmm2,0x0e
2866 movdqa xmm1,XMMWORD[((80-128))+rbp]
2867 paddd xmm1,xmm5
2868DB 69,15,56,203,247
2869DB 69,15,56,204,216
2870 movdqa xmm0,xmm1
2871 movdqa xmm2,XMMWORD[((80-128))+rbp]
2872 paddd xmm10,xmm3
2873 paddd xmm2,xmm9
2874DB 15,56,205,245
2875DB 69,15,56,203,236
2876 movdqa xmm0,xmm2
2877 movdqa xmm3,xmm6
2878DB 102,15,58,15,221,4
2879DB 69,15,56,203,254
2880DB 69,15,56,205,209
2881 pshufd xmm0,xmm1,0x0e
2882 paddd xmm7,xmm3
2883 movdqa xmm3,xmm10
2884DB 102,65,15,58,15,217,4
2885DB 15,56,204,229
2886DB 69,15,56,203,229
2887 pshufd xmm0,xmm2,0x0e
2888 movdqa xmm1,XMMWORD[((96-128))+rbp]
2889 paddd xmm1,xmm6
2890DB 69,15,56,203,247
2891DB 69,15,56,204,193
2892 movdqa xmm0,xmm1
2893 movdqa xmm2,XMMWORD[((96-128))+rbp]
2894 paddd xmm11,xmm3
2895 paddd xmm2,xmm10
2896DB 15,56,205,254
2897DB 69,15,56,203,236
2898 movdqa xmm0,xmm2
2899 movdqa xmm3,xmm7
2900DB 102,15,58,15,222,4
2901DB 69,15,56,203,254
2902DB 69,15,56,205,218
2903 pshufd xmm0,xmm1,0x0e
2904 paddd xmm4,xmm3
2905 movdqa xmm3,xmm11
2906DB 102,65,15,58,15,218,4
2907DB 15,56,204,238
2908DB 69,15,56,203,229
2909 pshufd xmm0,xmm2,0x0e
2910 movdqa xmm1,XMMWORD[((112-128))+rbp]
2911 paddd xmm1,xmm7
2912DB 69,15,56,203,247
2913DB 69,15,56,204,202
2914 movdqa xmm0,xmm1
2915 movdqa xmm2,XMMWORD[((112-128))+rbp]
2916 paddd xmm8,xmm3
2917 paddd xmm2,xmm11
2918DB 15,56,205,231
2919DB 69,15,56,203,236
2920 movdqa xmm0,xmm2
2921 movdqa xmm3,xmm4
2922DB 102,15,58,15,223,4
2923DB 69,15,56,203,254
2924DB 69,15,56,205,195
2925 pshufd xmm0,xmm1,0x0e
2926 paddd xmm5,xmm3
2927 movdqa xmm3,xmm8
2928DB 102,65,15,58,15,219,4
2929DB 15,56,204,247
2930DB 69,15,56,203,229
2931 pshufd xmm0,xmm2,0x0e
2932 movdqa xmm1,XMMWORD[((128-128))+rbp]
2933 paddd xmm1,xmm4
2934DB 69,15,56,203,247
2935DB 69,15,56,204,211
2936 movdqa xmm0,xmm1
2937 movdqa xmm2,XMMWORD[((128-128))+rbp]
2938 paddd xmm9,xmm3
2939 paddd xmm2,xmm8
2940DB 15,56,205,236
2941DB 69,15,56,203,236
2942 movdqa xmm0,xmm2
2943 movdqa xmm3,xmm5
2944DB 102,15,58,15,220,4
2945DB 69,15,56,203,254
2946DB 69,15,56,205,200
2947 pshufd xmm0,xmm1,0x0e
2948 paddd xmm6,xmm3
2949 movdqa xmm3,xmm9
2950DB 102,65,15,58,15,216,4
2951DB 15,56,204,252
2952DB 69,15,56,203,229
2953 pshufd xmm0,xmm2,0x0e
2954 movdqa xmm1,XMMWORD[((144-128))+rbp]
2955 paddd xmm1,xmm5
2956DB 69,15,56,203,247
2957DB 69,15,56,204,216
2958 movdqa xmm0,xmm1
2959 movdqa xmm2,XMMWORD[((144-128))+rbp]
2960 paddd xmm10,xmm3
2961 paddd xmm2,xmm9
2962DB 15,56,205,245
2963DB 69,15,56,203,236
2964 movdqa xmm0,xmm2
2965 movdqa xmm3,xmm6
2966DB 102,15,58,15,221,4
2967DB 69,15,56,203,254
2968DB 69,15,56,205,209
2969 pshufd xmm0,xmm1,0x0e
2970 paddd xmm7,xmm3
2971 movdqa xmm3,xmm10
2972DB 102,65,15,58,15,217,4
2973DB 15,56,204,229
2974DB 69,15,56,203,229
2975 pshufd xmm0,xmm2,0x0e
2976 movdqa xmm1,XMMWORD[((160-128))+rbp]
2977 paddd xmm1,xmm6
2978DB 69,15,56,203,247
2979DB 69,15,56,204,193
2980 movdqa xmm0,xmm1
2981 movdqa xmm2,XMMWORD[((160-128))+rbp]
2982 paddd xmm11,xmm3
2983 paddd xmm2,xmm10
2984DB 15,56,205,254
2985DB 69,15,56,203,236
2986 movdqa xmm0,xmm2
2987 movdqa xmm3,xmm7
2988DB 102,15,58,15,222,4
2989DB 69,15,56,203,254
2990DB 69,15,56,205,218
2991 pshufd xmm0,xmm1,0x0e
2992 paddd xmm4,xmm3
2993 movdqa xmm3,xmm11
2994DB 102,65,15,58,15,218,4
2995DB 15,56,204,238
2996DB 69,15,56,203,229
2997 pshufd xmm0,xmm2,0x0e
2998 movdqa xmm1,XMMWORD[((176-128))+rbp]
2999 paddd xmm1,xmm7
3000DB 69,15,56,203,247
3001DB 69,15,56,204,202
3002 movdqa xmm0,xmm1
3003 movdqa xmm2,XMMWORD[((176-128))+rbp]
3004 paddd xmm8,xmm3
3005 paddd xmm2,xmm11
3006DB 15,56,205,231
3007DB 69,15,56,203,236
3008 movdqa xmm0,xmm2
3009 movdqa xmm3,xmm4
3010DB 102,15,58,15,223,4
3011DB 69,15,56,203,254
3012DB 69,15,56,205,195
3013 pshufd xmm0,xmm1,0x0e
3014 paddd xmm5,xmm3
3015 movdqa xmm3,xmm8
3016DB 102,65,15,58,15,219,4
3017DB 15,56,204,247
3018DB 69,15,56,203,229
3019 pshufd xmm0,xmm2,0x0e
3020 movdqa xmm1,XMMWORD[((192-128))+rbp]
3021 paddd xmm1,xmm4
3022DB 69,15,56,203,247
3023DB 69,15,56,204,211
3024 movdqa xmm0,xmm1
3025 movdqa xmm2,XMMWORD[((192-128))+rbp]
3026 paddd xmm9,xmm3
3027 paddd xmm2,xmm8
3028DB 15,56,205,236
3029DB 69,15,56,203,236
3030 movdqa xmm0,xmm2
3031 movdqa xmm3,xmm5
3032DB 102,15,58,15,220,4
3033DB 69,15,56,203,254
3034DB 69,15,56,205,200
3035 pshufd xmm0,xmm1,0x0e
3036 paddd xmm6,xmm3
3037 movdqa xmm3,xmm9
3038DB 102,65,15,58,15,216,4
3039DB 15,56,204,252
3040DB 69,15,56,203,229
3041 pshufd xmm0,xmm2,0x0e
3042 movdqa xmm1,XMMWORD[((208-128))+rbp]
3043 paddd xmm1,xmm5
3044DB 69,15,56,203,247
3045DB 69,15,56,204,216
3046 movdqa xmm0,xmm1
3047 movdqa xmm2,XMMWORD[((208-128))+rbp]
3048 paddd xmm10,xmm3
3049 paddd xmm2,xmm9
3050DB 15,56,205,245
3051DB 69,15,56,203,236
3052 movdqa xmm0,xmm2
3053 movdqa xmm3,xmm6
3054DB 102,15,58,15,221,4
3055DB 69,15,56,203,254
3056DB 69,15,56,205,209
3057 pshufd xmm0,xmm1,0x0e
3058 paddd xmm7,xmm3
3059 movdqa xmm3,xmm10
3060DB 102,65,15,58,15,217,4
3061 nop
3062DB 69,15,56,203,229
3063 pshufd xmm0,xmm2,0x0e
3064 movdqa xmm1,XMMWORD[((224-128))+rbp]
3065 paddd xmm1,xmm6
3066DB 69,15,56,203,247
3067
3068 movdqa xmm0,xmm1
3069 movdqa xmm2,XMMWORD[((224-128))+rbp]
3070 paddd xmm11,xmm3
3071 paddd xmm2,xmm10
3072DB 15,56,205,254
3073 nop
3074DB 69,15,56,203,236
3075 movdqa xmm0,xmm2
3076 mov ecx,1
3077 pxor xmm6,xmm6
3078DB 69,15,56,203,254
3079DB 69,15,56,205,218
3080 pshufd xmm0,xmm1,0x0e
3081 movdqa xmm1,XMMWORD[((240-128))+rbp]
3082 paddd xmm1,xmm7
3083 movq xmm7,QWORD[rbx]
3084 nop
3085DB 69,15,56,203,229
3086 pshufd xmm0,xmm2,0x0e
3087 movdqa xmm2,XMMWORD[((240-128))+rbp]
3088 paddd xmm2,xmm11
3089DB 69,15,56,203,247
3090
3091 movdqa xmm0,xmm1
3092 cmp ecx,DWORD[rbx]
3093 cmovge r8,rsp
3094 cmp ecx,DWORD[4+rbx]
3095 cmovge r9,rsp
3096 pshufd xmm9,xmm7,0x00
3097DB 69,15,56,203,236
3098 movdqa xmm0,xmm2
3099 pshufd xmm10,xmm7,0x55
3100 movdqa xmm11,xmm7
3101DB 69,15,56,203,254
3102 pshufd xmm0,xmm1,0x0e
3103 pcmpgtd xmm9,xmm6
3104 pcmpgtd xmm10,xmm6
3105DB 69,15,56,203,229
3106 pshufd xmm0,xmm2,0x0e
3107 pcmpgtd xmm11,xmm6
3108 movdqa xmm3,XMMWORD[((K256_shaext-16))]
3109DB 69,15,56,203,247
3110
3111 pand xmm13,xmm9
3112 pand xmm15,xmm10
3113 pand xmm12,xmm9
3114 pand xmm14,xmm10
3115 paddd xmm11,xmm7
3116
3117 paddd xmm13,XMMWORD[80+rsp]
3118 paddd xmm15,XMMWORD[112+rsp]
3119 paddd xmm12,XMMWORD[64+rsp]
3120 paddd xmm14,XMMWORD[96+rsp]
3121
3122 movq QWORD[rbx],xmm11
3123 dec edx
3124 jnz NEAR $L$oop_shaext
3125
3126 mov edx,DWORD[280+rsp]
3127
3128 pshufd xmm12,xmm12,27
3129 pshufd xmm13,xmm13,27
3130 pshufd xmm14,xmm14,27
3131 pshufd xmm15,xmm15,27
3132
3133 movdqa xmm5,xmm12
3134 movdqa xmm6,xmm13
3135 punpckldq xmm12,xmm14
3136 punpckhdq xmm5,xmm14
3137 punpckldq xmm13,xmm15
3138 punpckhdq xmm6,xmm15
3139
3140 movq QWORD[(0-128)+rdi],xmm12
3141 psrldq xmm12,8
3142 movq QWORD[(128-128)+rdi],xmm5
3143 psrldq xmm5,8
3144 movq QWORD[(32-128)+rdi],xmm12
3145 movq QWORD[(160-128)+rdi],xmm5
3146
3147 movq QWORD[(64-128)+rdi],xmm13
3148 psrldq xmm13,8
3149 movq QWORD[(192-128)+rdi],xmm6
3150 psrldq xmm6,8
3151 movq QWORD[(96-128)+rdi],xmm13
3152 movq QWORD[(224-128)+rdi],xmm6
3153
3154 lea rdi,[8+rdi]
3155 lea rsi,[32+rsi]
3156 dec edx
3157 jnz NEAR $L$oop_grande_shaext
3158
3159$L$done_shaext:
3160
3161 movaps xmm6,XMMWORD[((-184))+rax]
3162 movaps xmm7,XMMWORD[((-168))+rax]
3163 movaps xmm8,XMMWORD[((-152))+rax]
3164 movaps xmm9,XMMWORD[((-136))+rax]
3165 movaps xmm10,XMMWORD[((-120))+rax]
3166 movaps xmm11,XMMWORD[((-104))+rax]
3167 movaps xmm12,XMMWORD[((-88))+rax]
3168 movaps xmm13,XMMWORD[((-72))+rax]
3169 movaps xmm14,XMMWORD[((-56))+rax]
3170 movaps xmm15,XMMWORD[((-40))+rax]
3171 mov rbp,QWORD[((-16))+rax]
3172 mov rbx,QWORD[((-8))+rax]
3173 lea rsp,[rax]
3174$L$epilogue_shaext:
3175 mov rdi,QWORD[8+rsp] ;WIN64 epilogue
3176 mov rsi,QWORD[16+rsp]
3177 DB 0F3h,0C3h ;repret
3178$L$SEH_end_sha256_multi_block_shaext:
3179
3180ALIGN 32
3181sha256_multi_block_avx:
3182 mov QWORD[8+rsp],rdi ;WIN64 prologue
3183 mov QWORD[16+rsp],rsi
3184 mov rax,rsp
3185$L$SEH_begin_sha256_multi_block_avx:
3186 mov rdi,rcx
3187 mov rsi,rdx
3188 mov rdx,r8
3189
3190
3191_avx_shortcut:
3192 shr rcx,32
3193 cmp edx,2
3194 jb NEAR $L$avx
3195 test ecx,32
3196 jnz NEAR _avx2_shortcut
3197 jmp NEAR $L$avx
3198ALIGN 32
3199$L$avx:
3200 mov rax,rsp
3201 push rbx
3202 push rbp
3203 lea rsp,[((-168))+rsp]
3204 movaps XMMWORD[rsp],xmm6
3205 movaps XMMWORD[16+rsp],xmm7
3206 movaps XMMWORD[32+rsp],xmm8
3207 movaps XMMWORD[48+rsp],xmm9
3208 movaps XMMWORD[(-120)+rax],xmm10
3209 movaps XMMWORD[(-104)+rax],xmm11
3210 movaps XMMWORD[(-88)+rax],xmm12
3211 movaps XMMWORD[(-72)+rax],xmm13
3212 movaps XMMWORD[(-56)+rax],xmm14
3213 movaps XMMWORD[(-40)+rax],xmm15
3214 sub rsp,288
3215 and rsp,-256
3216 mov QWORD[272+rsp],rax
3217$L$body_avx:
3218 lea rbp,[((K256+128))]
3219 lea rbx,[256+rsp]
3220 lea rdi,[128+rdi]
3221
3222$L$oop_grande_avx:
3223 mov DWORD[280+rsp],edx
3224 xor edx,edx
3225 mov r8,QWORD[rsi]
3226 mov ecx,DWORD[8+rsi]
3227 cmp ecx,edx
3228 cmovg edx,ecx
3229 test ecx,ecx
3230 mov DWORD[rbx],ecx
3231 cmovle r8,rbp
3232 mov r9,QWORD[16+rsi]
3233 mov ecx,DWORD[24+rsi]
3234 cmp ecx,edx
3235 cmovg edx,ecx
3236 test ecx,ecx
3237 mov DWORD[4+rbx],ecx
3238 cmovle r9,rbp
3239 mov r10,QWORD[32+rsi]
3240 mov ecx,DWORD[40+rsi]
3241 cmp ecx,edx
3242 cmovg edx,ecx
3243 test ecx,ecx
3244 mov DWORD[8+rbx],ecx
3245 cmovle r10,rbp
3246 mov r11,QWORD[48+rsi]
3247 mov ecx,DWORD[56+rsi]
3248 cmp ecx,edx
3249 cmovg edx,ecx
3250 test ecx,ecx
3251 mov DWORD[12+rbx],ecx
3252 cmovle r11,rbp
3253 test edx,edx
3254 jz NEAR $L$done_avx
3255
3256 vmovdqu xmm8,XMMWORD[((0-128))+rdi]
3257 lea rax,[128+rsp]
3258 vmovdqu xmm9,XMMWORD[((32-128))+rdi]
3259 vmovdqu xmm10,XMMWORD[((64-128))+rdi]
3260 vmovdqu xmm11,XMMWORD[((96-128))+rdi]
3261 vmovdqu xmm12,XMMWORD[((128-128))+rdi]
3262 vmovdqu xmm13,XMMWORD[((160-128))+rdi]
3263 vmovdqu xmm14,XMMWORD[((192-128))+rdi]
3264 vmovdqu xmm15,XMMWORD[((224-128))+rdi]
3265 vmovdqu xmm6,XMMWORD[$L$pbswap]
3266 jmp NEAR $L$oop_avx
3267
3268ALIGN 32
3269$L$oop_avx:
3270 vpxor xmm4,xmm10,xmm9
3271 vmovd xmm5,DWORD[r8]
3272 vmovd xmm0,DWORD[r9]
3273 vpinsrd xmm5,xmm5,DWORD[r10],1
3274 vpinsrd xmm0,xmm0,DWORD[r11],1
3275 vpunpckldq xmm5,xmm5,xmm0
3276 vpshufb xmm5,xmm5,xmm6
3277 vpsrld xmm7,xmm12,6
3278 vpslld xmm2,xmm12,26
3279 vmovdqu XMMWORD[(0-128)+rax],xmm5
3280 vpaddd xmm5,xmm5,xmm15
3281
3282 vpsrld xmm1,xmm12,11
3283 vpxor xmm7,xmm7,xmm2
3284 vpslld xmm2,xmm12,21
3285 vpaddd xmm5,xmm5,XMMWORD[((-128))+rbp]
3286 vpxor xmm7,xmm7,xmm1
3287
3288 vpsrld xmm1,xmm12,25
3289 vpxor xmm7,xmm7,xmm2
3290
3291 vpslld xmm2,xmm12,7
3292 vpandn xmm0,xmm12,xmm14
3293 vpand xmm3,xmm12,xmm13
3294
3295 vpxor xmm7,xmm7,xmm1
3296
3297 vpsrld xmm15,xmm8,2
3298 vpxor xmm7,xmm7,xmm2
3299
3300 vpslld xmm1,xmm8,30
3301 vpxor xmm0,xmm0,xmm3
3302 vpxor xmm3,xmm9,xmm8
3303
3304 vpxor xmm15,xmm15,xmm1
3305 vpaddd xmm5,xmm5,xmm7
3306
3307 vpsrld xmm1,xmm8,13
3308
3309 vpslld xmm2,xmm8,19
3310 vpaddd xmm5,xmm5,xmm0
3311 vpand xmm4,xmm4,xmm3
3312
3313 vpxor xmm7,xmm15,xmm1
3314
3315 vpsrld xmm1,xmm8,22
3316 vpxor xmm7,xmm7,xmm2
3317
3318 vpslld xmm2,xmm8,10
3319 vpxor xmm15,xmm9,xmm4
3320 vpaddd xmm11,xmm11,xmm5
3321
3322 vpxor xmm7,xmm7,xmm1
3323 vpxor xmm7,xmm7,xmm2
3324
3325 vpaddd xmm15,xmm15,xmm5
3326 vpaddd xmm15,xmm15,xmm7
3327 vmovd xmm5,DWORD[4+r8]
3328 vmovd xmm0,DWORD[4+r9]
3329 vpinsrd xmm5,xmm5,DWORD[4+r10],1
3330 vpinsrd xmm0,xmm0,DWORD[4+r11],1
3331 vpunpckldq xmm5,xmm5,xmm0
3332 vpshufb xmm5,xmm5,xmm6
3333 vpsrld xmm7,xmm11,6
3334 vpslld xmm2,xmm11,26
3335 vmovdqu XMMWORD[(16-128)+rax],xmm5
3336 vpaddd xmm5,xmm5,xmm14
3337
3338 vpsrld xmm1,xmm11,11
3339 vpxor xmm7,xmm7,xmm2
3340 vpslld xmm2,xmm11,21
3341 vpaddd xmm5,xmm5,XMMWORD[((-96))+rbp]
3342 vpxor xmm7,xmm7,xmm1
3343
3344 vpsrld xmm1,xmm11,25
3345 vpxor xmm7,xmm7,xmm2
3346
3347 vpslld xmm2,xmm11,7
3348 vpandn xmm0,xmm11,xmm13
3349 vpand xmm4,xmm11,xmm12
3350
3351 vpxor xmm7,xmm7,xmm1
3352
3353 vpsrld xmm14,xmm15,2
3354 vpxor xmm7,xmm7,xmm2
3355
3356 vpslld xmm1,xmm15,30
3357 vpxor xmm0,xmm0,xmm4
3358 vpxor xmm4,xmm8,xmm15
3359
3360 vpxor xmm14,xmm14,xmm1
3361 vpaddd xmm5,xmm5,xmm7
3362
3363 vpsrld xmm1,xmm15,13
3364
3365 vpslld xmm2,xmm15,19
3366 vpaddd xmm5,xmm5,xmm0
3367 vpand xmm3,xmm3,xmm4
3368
3369 vpxor xmm7,xmm14,xmm1
3370
3371 vpsrld xmm1,xmm15,22
3372 vpxor xmm7,xmm7,xmm2
3373
3374 vpslld xmm2,xmm15,10
3375 vpxor xmm14,xmm8,xmm3
3376 vpaddd xmm10,xmm10,xmm5
3377
3378 vpxor xmm7,xmm7,xmm1
3379 vpxor xmm7,xmm7,xmm2
3380
3381 vpaddd xmm14,xmm14,xmm5
3382 vpaddd xmm14,xmm14,xmm7
3383 vmovd xmm5,DWORD[8+r8]
3384 vmovd xmm0,DWORD[8+r9]
3385 vpinsrd xmm5,xmm5,DWORD[8+r10],1
3386 vpinsrd xmm0,xmm0,DWORD[8+r11],1
3387 vpunpckldq xmm5,xmm5,xmm0
3388 vpshufb xmm5,xmm5,xmm6
3389 vpsrld xmm7,xmm10,6
3390 vpslld xmm2,xmm10,26
3391 vmovdqu XMMWORD[(32-128)+rax],xmm5
3392 vpaddd xmm5,xmm5,xmm13
3393
3394 vpsrld xmm1,xmm10,11
3395 vpxor xmm7,xmm7,xmm2
3396 vpslld xmm2,xmm10,21
3397 vpaddd xmm5,xmm5,XMMWORD[((-64))+rbp]
3398 vpxor xmm7,xmm7,xmm1
3399
3400 vpsrld xmm1,xmm10,25
3401 vpxor xmm7,xmm7,xmm2
3402
3403 vpslld xmm2,xmm10,7
3404 vpandn xmm0,xmm10,xmm12
3405 vpand xmm3,xmm10,xmm11
3406
3407 vpxor xmm7,xmm7,xmm1
3408
3409 vpsrld xmm13,xmm14,2
3410 vpxor xmm7,xmm7,xmm2
3411
3412 vpslld xmm1,xmm14,30
3413 vpxor xmm0,xmm0,xmm3
3414 vpxor xmm3,xmm15,xmm14
3415
3416 vpxor xmm13,xmm13,xmm1
3417 vpaddd xmm5,xmm5,xmm7
3418
3419 vpsrld xmm1,xmm14,13
3420
3421 vpslld xmm2,xmm14,19
3422 vpaddd xmm5,xmm5,xmm0
3423 vpand xmm4,xmm4,xmm3
3424
3425 vpxor xmm7,xmm13,xmm1
3426
3427 vpsrld xmm1,xmm14,22
3428 vpxor xmm7,xmm7,xmm2
3429
3430 vpslld xmm2,xmm14,10
3431 vpxor xmm13,xmm15,xmm4
3432 vpaddd xmm9,xmm9,xmm5
3433
3434 vpxor xmm7,xmm7,xmm1
3435 vpxor xmm7,xmm7,xmm2
3436
3437 vpaddd xmm13,xmm13,xmm5
3438 vpaddd xmm13,xmm13,xmm7
3439 vmovd xmm5,DWORD[12+r8]
3440 vmovd xmm0,DWORD[12+r9]
3441 vpinsrd xmm5,xmm5,DWORD[12+r10],1
3442 vpinsrd xmm0,xmm0,DWORD[12+r11],1
3443 vpunpckldq xmm5,xmm5,xmm0
3444 vpshufb xmm5,xmm5,xmm6
3445 vpsrld xmm7,xmm9,6
3446 vpslld xmm2,xmm9,26
3447 vmovdqu XMMWORD[(48-128)+rax],xmm5
3448 vpaddd xmm5,xmm5,xmm12
3449
3450 vpsrld xmm1,xmm9,11
3451 vpxor xmm7,xmm7,xmm2
3452 vpslld xmm2,xmm9,21
3453 vpaddd xmm5,xmm5,XMMWORD[((-32))+rbp]
3454 vpxor xmm7,xmm7,xmm1
3455
3456 vpsrld xmm1,xmm9,25
3457 vpxor xmm7,xmm7,xmm2
3458
3459 vpslld xmm2,xmm9,7
3460 vpandn xmm0,xmm9,xmm11
3461 vpand xmm4,xmm9,xmm10
3462
3463 vpxor xmm7,xmm7,xmm1
3464
3465 vpsrld xmm12,xmm13,2
3466 vpxor xmm7,xmm7,xmm2
3467
3468 vpslld xmm1,xmm13,30
3469 vpxor xmm0,xmm0,xmm4
3470 vpxor xmm4,xmm14,xmm13
3471
3472 vpxor xmm12,xmm12,xmm1
3473 vpaddd xmm5,xmm5,xmm7
3474
3475 vpsrld xmm1,xmm13,13
3476
3477 vpslld xmm2,xmm13,19
3478 vpaddd xmm5,xmm5,xmm0
3479 vpand xmm3,xmm3,xmm4
3480
3481 vpxor xmm7,xmm12,xmm1
3482
3483 vpsrld xmm1,xmm13,22
3484 vpxor xmm7,xmm7,xmm2
3485
3486 vpslld xmm2,xmm13,10
3487 vpxor xmm12,xmm14,xmm3
3488 vpaddd xmm8,xmm8,xmm5
3489
3490 vpxor xmm7,xmm7,xmm1
3491 vpxor xmm7,xmm7,xmm2
3492
3493 vpaddd xmm12,xmm12,xmm5
3494 vpaddd xmm12,xmm12,xmm7
3495 vmovd xmm5,DWORD[16+r8]
3496 vmovd xmm0,DWORD[16+r9]
3497 vpinsrd xmm5,xmm5,DWORD[16+r10],1
3498 vpinsrd xmm0,xmm0,DWORD[16+r11],1
3499 vpunpckldq xmm5,xmm5,xmm0
3500 vpshufb xmm5,xmm5,xmm6
3501 vpsrld xmm7,xmm8,6
3502 vpslld xmm2,xmm8,26
3503 vmovdqu XMMWORD[(64-128)+rax],xmm5
3504 vpaddd xmm5,xmm5,xmm11
3505
3506 vpsrld xmm1,xmm8,11
3507 vpxor xmm7,xmm7,xmm2
3508 vpslld xmm2,xmm8,21
3509 vpaddd xmm5,xmm5,XMMWORD[rbp]
3510 vpxor xmm7,xmm7,xmm1
3511
3512 vpsrld xmm1,xmm8,25
3513 vpxor xmm7,xmm7,xmm2
3514
3515 vpslld xmm2,xmm8,7
3516 vpandn xmm0,xmm8,xmm10
3517 vpand xmm3,xmm8,xmm9
3518
3519 vpxor xmm7,xmm7,xmm1
3520
3521 vpsrld xmm11,xmm12,2
3522 vpxor xmm7,xmm7,xmm2
3523
3524 vpslld xmm1,xmm12,30
3525 vpxor xmm0,xmm0,xmm3
3526 vpxor xmm3,xmm13,xmm12
3527
3528 vpxor xmm11,xmm11,xmm1
3529 vpaddd xmm5,xmm5,xmm7
3530
3531 vpsrld xmm1,xmm12,13
3532
3533 vpslld xmm2,xmm12,19
3534 vpaddd xmm5,xmm5,xmm0
3535 vpand xmm4,xmm4,xmm3
3536
3537 vpxor xmm7,xmm11,xmm1
3538
3539 vpsrld xmm1,xmm12,22
3540 vpxor xmm7,xmm7,xmm2
3541
3542 vpslld xmm2,xmm12,10
3543 vpxor xmm11,xmm13,xmm4
3544 vpaddd xmm15,xmm15,xmm5
3545
3546 vpxor xmm7,xmm7,xmm1
3547 vpxor xmm7,xmm7,xmm2
3548
3549 vpaddd xmm11,xmm11,xmm5
3550 vpaddd xmm11,xmm11,xmm7
3551 vmovd xmm5,DWORD[20+r8]
3552 vmovd xmm0,DWORD[20+r9]
3553 vpinsrd xmm5,xmm5,DWORD[20+r10],1
3554 vpinsrd xmm0,xmm0,DWORD[20+r11],1
3555 vpunpckldq xmm5,xmm5,xmm0
3556 vpshufb xmm5,xmm5,xmm6
3557 vpsrld xmm7,xmm15,6
3558 vpslld xmm2,xmm15,26
3559 vmovdqu XMMWORD[(80-128)+rax],xmm5
3560 vpaddd xmm5,xmm5,xmm10
3561
3562 vpsrld xmm1,xmm15,11
3563 vpxor xmm7,xmm7,xmm2
3564 vpslld xmm2,xmm15,21
3565 vpaddd xmm5,xmm5,XMMWORD[32+rbp]
3566 vpxor xmm7,xmm7,xmm1
3567
3568 vpsrld xmm1,xmm15,25
3569 vpxor xmm7,xmm7,xmm2
3570
3571 vpslld xmm2,xmm15,7
3572 vpandn xmm0,xmm15,xmm9
3573 vpand xmm4,xmm15,xmm8
3574
3575 vpxor xmm7,xmm7,xmm1
3576
3577 vpsrld xmm10,xmm11,2
3578 vpxor xmm7,xmm7,xmm2
3579
3580 vpslld xmm1,xmm11,30
3581 vpxor xmm0,xmm0,xmm4
3582 vpxor xmm4,xmm12,xmm11
3583
3584 vpxor xmm10,xmm10,xmm1
3585 vpaddd xmm5,xmm5,xmm7
3586
3587 vpsrld xmm1,xmm11,13
3588
3589 vpslld xmm2,xmm11,19
3590 vpaddd xmm5,xmm5,xmm0
3591 vpand xmm3,xmm3,xmm4
3592
3593 vpxor xmm7,xmm10,xmm1
3594
3595 vpsrld xmm1,xmm11,22
3596 vpxor xmm7,xmm7,xmm2
3597
3598 vpslld xmm2,xmm11,10
3599 vpxor xmm10,xmm12,xmm3
3600 vpaddd xmm14,xmm14,xmm5
3601
3602 vpxor xmm7,xmm7,xmm1
3603 vpxor xmm7,xmm7,xmm2
3604
3605 vpaddd xmm10,xmm10,xmm5
3606 vpaddd xmm10,xmm10,xmm7
3607 vmovd xmm5,DWORD[24+r8]
3608 vmovd xmm0,DWORD[24+r9]
3609 vpinsrd xmm5,xmm5,DWORD[24+r10],1
3610 vpinsrd xmm0,xmm0,DWORD[24+r11],1
3611 vpunpckldq xmm5,xmm5,xmm0
3612 vpshufb xmm5,xmm5,xmm6
3613 vpsrld xmm7,xmm14,6
3614 vpslld xmm2,xmm14,26
3615 vmovdqu XMMWORD[(96-128)+rax],xmm5
3616 vpaddd xmm5,xmm5,xmm9
3617
3618 vpsrld xmm1,xmm14,11
3619 vpxor xmm7,xmm7,xmm2
3620 vpslld xmm2,xmm14,21
3621 vpaddd xmm5,xmm5,XMMWORD[64+rbp]
3622 vpxor xmm7,xmm7,xmm1
3623
3624 vpsrld xmm1,xmm14,25
3625 vpxor xmm7,xmm7,xmm2
3626
3627 vpslld xmm2,xmm14,7
3628 vpandn xmm0,xmm14,xmm8
3629 vpand xmm3,xmm14,xmm15
3630
3631 vpxor xmm7,xmm7,xmm1
3632
3633 vpsrld xmm9,xmm10,2
3634 vpxor xmm7,xmm7,xmm2
3635
3636 vpslld xmm1,xmm10,30
3637 vpxor xmm0,xmm0,xmm3
3638 vpxor xmm3,xmm11,xmm10
3639
3640 vpxor xmm9,xmm9,xmm1
3641 vpaddd xmm5,xmm5,xmm7
3642
3643 vpsrld xmm1,xmm10,13
3644
3645 vpslld xmm2,xmm10,19
3646 vpaddd xmm5,xmm5,xmm0
3647 vpand xmm4,xmm4,xmm3
3648
3649 vpxor xmm7,xmm9,xmm1
3650
3651 vpsrld xmm1,xmm10,22
3652 vpxor xmm7,xmm7,xmm2
3653
3654 vpslld xmm2,xmm10,10
3655 vpxor xmm9,xmm11,xmm4
3656 vpaddd xmm13,xmm13,xmm5
3657
3658 vpxor xmm7,xmm7,xmm1
3659 vpxor xmm7,xmm7,xmm2
3660
3661 vpaddd xmm9,xmm9,xmm5
3662 vpaddd xmm9,xmm9,xmm7
3663 vmovd xmm5,DWORD[28+r8]
3664 vmovd xmm0,DWORD[28+r9]
3665 vpinsrd xmm5,xmm5,DWORD[28+r10],1
3666 vpinsrd xmm0,xmm0,DWORD[28+r11],1
3667 vpunpckldq xmm5,xmm5,xmm0
3668 vpshufb xmm5,xmm5,xmm6
3669 vpsrld xmm7,xmm13,6
3670 vpslld xmm2,xmm13,26
3671 vmovdqu XMMWORD[(112-128)+rax],xmm5
3672 vpaddd xmm5,xmm5,xmm8
3673
3674 vpsrld xmm1,xmm13,11
3675 vpxor xmm7,xmm7,xmm2
3676 vpslld xmm2,xmm13,21
3677 vpaddd xmm5,xmm5,XMMWORD[96+rbp]
3678 vpxor xmm7,xmm7,xmm1
3679
3680 vpsrld xmm1,xmm13,25
3681 vpxor xmm7,xmm7,xmm2
3682
3683 vpslld xmm2,xmm13,7
3684 vpandn xmm0,xmm13,xmm15
3685 vpand xmm4,xmm13,xmm14
3686
3687 vpxor xmm7,xmm7,xmm1
3688
3689 vpsrld xmm8,xmm9,2
3690 vpxor xmm7,xmm7,xmm2
3691
3692 vpslld xmm1,xmm9,30
3693 vpxor xmm0,xmm0,xmm4
3694 vpxor xmm4,xmm10,xmm9
3695
3696 vpxor xmm8,xmm8,xmm1
3697 vpaddd xmm5,xmm5,xmm7
3698
3699 vpsrld xmm1,xmm9,13
3700
3701 vpslld xmm2,xmm9,19
3702 vpaddd xmm5,xmm5,xmm0
3703 vpand xmm3,xmm3,xmm4
3704
3705 vpxor xmm7,xmm8,xmm1
3706
3707 vpsrld xmm1,xmm9,22
3708 vpxor xmm7,xmm7,xmm2
3709
3710 vpslld xmm2,xmm9,10
3711 vpxor xmm8,xmm10,xmm3
3712 vpaddd xmm12,xmm12,xmm5
3713
3714 vpxor xmm7,xmm7,xmm1
3715 vpxor xmm7,xmm7,xmm2
3716
3717 vpaddd xmm8,xmm8,xmm5
3718 vpaddd xmm8,xmm8,xmm7
3719 add rbp,256
3720 vmovd xmm5,DWORD[32+r8]
3721 vmovd xmm0,DWORD[32+r9]
3722 vpinsrd xmm5,xmm5,DWORD[32+r10],1
3723 vpinsrd xmm0,xmm0,DWORD[32+r11],1
3724 vpunpckldq xmm5,xmm5,xmm0
3725 vpshufb xmm5,xmm5,xmm6
3726 vpsrld xmm7,xmm12,6
3727 vpslld xmm2,xmm12,26
3728 vmovdqu XMMWORD[(128-128)+rax],xmm5
3729 vpaddd xmm5,xmm5,xmm15
3730
3731 vpsrld xmm1,xmm12,11
3732 vpxor xmm7,xmm7,xmm2
3733 vpslld xmm2,xmm12,21
3734 vpaddd xmm5,xmm5,XMMWORD[((-128))+rbp]
3735 vpxor xmm7,xmm7,xmm1
3736
3737 vpsrld xmm1,xmm12,25
3738 vpxor xmm7,xmm7,xmm2
3739
3740 vpslld xmm2,xmm12,7
3741 vpandn xmm0,xmm12,xmm14
3742 vpand xmm3,xmm12,xmm13
3743
3744 vpxor xmm7,xmm7,xmm1
3745
3746 vpsrld xmm15,xmm8,2
3747 vpxor xmm7,xmm7,xmm2
3748
3749 vpslld xmm1,xmm8,30
3750 vpxor xmm0,xmm0,xmm3
3751 vpxor xmm3,xmm9,xmm8
3752
3753 vpxor xmm15,xmm15,xmm1
3754 vpaddd xmm5,xmm5,xmm7
3755
3756 vpsrld xmm1,xmm8,13
3757
3758 vpslld xmm2,xmm8,19
3759 vpaddd xmm5,xmm5,xmm0
3760 vpand xmm4,xmm4,xmm3
3761
3762 vpxor xmm7,xmm15,xmm1
3763
3764 vpsrld xmm1,xmm8,22
3765 vpxor xmm7,xmm7,xmm2
3766
3767 vpslld xmm2,xmm8,10
3768 vpxor xmm15,xmm9,xmm4
3769 vpaddd xmm11,xmm11,xmm5
3770
3771 vpxor xmm7,xmm7,xmm1
3772 vpxor xmm7,xmm7,xmm2
3773
3774 vpaddd xmm15,xmm15,xmm5
3775 vpaddd xmm15,xmm15,xmm7
3776 vmovd xmm5,DWORD[36+r8]
3777 vmovd xmm0,DWORD[36+r9]
3778 vpinsrd xmm5,xmm5,DWORD[36+r10],1
3779 vpinsrd xmm0,xmm0,DWORD[36+r11],1
3780 vpunpckldq xmm5,xmm5,xmm0
3781 vpshufb xmm5,xmm5,xmm6
3782 vpsrld xmm7,xmm11,6
3783 vpslld xmm2,xmm11,26
3784 vmovdqu XMMWORD[(144-128)+rax],xmm5
3785 vpaddd xmm5,xmm5,xmm14
3786
3787 vpsrld xmm1,xmm11,11
3788 vpxor xmm7,xmm7,xmm2
3789 vpslld xmm2,xmm11,21
3790 vpaddd xmm5,xmm5,XMMWORD[((-96))+rbp]
3791 vpxor xmm7,xmm7,xmm1
3792
3793 vpsrld xmm1,xmm11,25
3794 vpxor xmm7,xmm7,xmm2
3795
3796 vpslld xmm2,xmm11,7
3797 vpandn xmm0,xmm11,xmm13
3798 vpand xmm4,xmm11,xmm12
3799
3800 vpxor xmm7,xmm7,xmm1
3801
3802 vpsrld xmm14,xmm15,2
3803 vpxor xmm7,xmm7,xmm2
3804
3805 vpslld xmm1,xmm15,30
3806 vpxor xmm0,xmm0,xmm4
3807 vpxor xmm4,xmm8,xmm15
3808
3809 vpxor xmm14,xmm14,xmm1
3810 vpaddd xmm5,xmm5,xmm7
3811
3812 vpsrld xmm1,xmm15,13
3813
3814 vpslld xmm2,xmm15,19
3815 vpaddd xmm5,xmm5,xmm0
3816 vpand xmm3,xmm3,xmm4
3817
3818 vpxor xmm7,xmm14,xmm1
3819
3820 vpsrld xmm1,xmm15,22
3821 vpxor xmm7,xmm7,xmm2
3822
3823 vpslld xmm2,xmm15,10
3824 vpxor xmm14,xmm8,xmm3
3825 vpaddd xmm10,xmm10,xmm5
3826
3827 vpxor xmm7,xmm7,xmm1
3828 vpxor xmm7,xmm7,xmm2
3829
3830 vpaddd xmm14,xmm14,xmm5
3831 vpaddd xmm14,xmm14,xmm7
3832 vmovd xmm5,DWORD[40+r8]
3833 vmovd xmm0,DWORD[40+r9]
3834 vpinsrd xmm5,xmm5,DWORD[40+r10],1
3835 vpinsrd xmm0,xmm0,DWORD[40+r11],1
3836 vpunpckldq xmm5,xmm5,xmm0
3837 vpshufb xmm5,xmm5,xmm6
3838 vpsrld xmm7,xmm10,6
3839 vpslld xmm2,xmm10,26
3840 vmovdqu XMMWORD[(160-128)+rax],xmm5
3841 vpaddd xmm5,xmm5,xmm13
3842
3843 vpsrld xmm1,xmm10,11
3844 vpxor xmm7,xmm7,xmm2
3845 vpslld xmm2,xmm10,21
3846 vpaddd xmm5,xmm5,XMMWORD[((-64))+rbp]
3847 vpxor xmm7,xmm7,xmm1
3848
3849 vpsrld xmm1,xmm10,25
3850 vpxor xmm7,xmm7,xmm2
3851
3852 vpslld xmm2,xmm10,7
3853 vpandn xmm0,xmm10,xmm12
3854 vpand xmm3,xmm10,xmm11
3855
3856 vpxor xmm7,xmm7,xmm1
3857
3858 vpsrld xmm13,xmm14,2
3859 vpxor xmm7,xmm7,xmm2
3860
3861 vpslld xmm1,xmm14,30
3862 vpxor xmm0,xmm0,xmm3
3863 vpxor xmm3,xmm15,xmm14
3864
3865 vpxor xmm13,xmm13,xmm1
3866 vpaddd xmm5,xmm5,xmm7
3867
3868 vpsrld xmm1,xmm14,13
3869
3870 vpslld xmm2,xmm14,19
3871 vpaddd xmm5,xmm5,xmm0
3872 vpand xmm4,xmm4,xmm3
3873
3874 vpxor xmm7,xmm13,xmm1
3875
3876 vpsrld xmm1,xmm14,22
3877 vpxor xmm7,xmm7,xmm2
3878
3879 vpslld xmm2,xmm14,10
3880 vpxor xmm13,xmm15,xmm4
3881 vpaddd xmm9,xmm9,xmm5
3882
3883 vpxor xmm7,xmm7,xmm1
3884 vpxor xmm7,xmm7,xmm2
3885
3886 vpaddd xmm13,xmm13,xmm5
3887 vpaddd xmm13,xmm13,xmm7
3888 vmovd xmm5,DWORD[44+r8]
3889 vmovd xmm0,DWORD[44+r9]
3890 vpinsrd xmm5,xmm5,DWORD[44+r10],1
3891 vpinsrd xmm0,xmm0,DWORD[44+r11],1
3892 vpunpckldq xmm5,xmm5,xmm0
3893 vpshufb xmm5,xmm5,xmm6
3894 vpsrld xmm7,xmm9,6
3895 vpslld xmm2,xmm9,26
3896 vmovdqu XMMWORD[(176-128)+rax],xmm5
3897 vpaddd xmm5,xmm5,xmm12
3898
3899 vpsrld xmm1,xmm9,11
3900 vpxor xmm7,xmm7,xmm2
3901 vpslld xmm2,xmm9,21
3902 vpaddd xmm5,xmm5,XMMWORD[((-32))+rbp]
3903 vpxor xmm7,xmm7,xmm1
3904
3905 vpsrld xmm1,xmm9,25
3906 vpxor xmm7,xmm7,xmm2
3907
3908 vpslld xmm2,xmm9,7
3909 vpandn xmm0,xmm9,xmm11
3910 vpand xmm4,xmm9,xmm10
3911
3912 vpxor xmm7,xmm7,xmm1
3913
3914 vpsrld xmm12,xmm13,2
3915 vpxor xmm7,xmm7,xmm2
3916
3917 vpslld xmm1,xmm13,30
3918 vpxor xmm0,xmm0,xmm4
3919 vpxor xmm4,xmm14,xmm13
3920
3921 vpxor xmm12,xmm12,xmm1
3922 vpaddd xmm5,xmm5,xmm7
3923
3924 vpsrld xmm1,xmm13,13
3925
3926 vpslld xmm2,xmm13,19
3927 vpaddd xmm5,xmm5,xmm0
3928 vpand xmm3,xmm3,xmm4
3929
3930 vpxor xmm7,xmm12,xmm1
3931
3932 vpsrld xmm1,xmm13,22
3933 vpxor xmm7,xmm7,xmm2
3934
3935 vpslld xmm2,xmm13,10
3936 vpxor xmm12,xmm14,xmm3
3937 vpaddd xmm8,xmm8,xmm5
3938
3939 vpxor xmm7,xmm7,xmm1
3940 vpxor xmm7,xmm7,xmm2
3941
3942 vpaddd xmm12,xmm12,xmm5
3943 vpaddd xmm12,xmm12,xmm7
3944 vmovd xmm5,DWORD[48+r8]
3945 vmovd xmm0,DWORD[48+r9]
3946 vpinsrd xmm5,xmm5,DWORD[48+r10],1
3947 vpinsrd xmm0,xmm0,DWORD[48+r11],1
3948 vpunpckldq xmm5,xmm5,xmm0
3949 vpshufb xmm5,xmm5,xmm6
3950 vpsrld xmm7,xmm8,6
3951 vpslld xmm2,xmm8,26
3952 vmovdqu XMMWORD[(192-128)+rax],xmm5
3953 vpaddd xmm5,xmm5,xmm11
3954
3955 vpsrld xmm1,xmm8,11
3956 vpxor xmm7,xmm7,xmm2
3957 vpslld xmm2,xmm8,21
3958 vpaddd xmm5,xmm5,XMMWORD[rbp]
3959 vpxor xmm7,xmm7,xmm1
3960
3961 vpsrld xmm1,xmm8,25
3962 vpxor xmm7,xmm7,xmm2
3963
3964 vpslld xmm2,xmm8,7
3965 vpandn xmm0,xmm8,xmm10
3966 vpand xmm3,xmm8,xmm9
3967
3968 vpxor xmm7,xmm7,xmm1
3969
3970 vpsrld xmm11,xmm12,2
3971 vpxor xmm7,xmm7,xmm2
3972
3973 vpslld xmm1,xmm12,30
3974 vpxor xmm0,xmm0,xmm3
3975 vpxor xmm3,xmm13,xmm12
3976
3977 vpxor xmm11,xmm11,xmm1
3978 vpaddd xmm5,xmm5,xmm7
3979
3980 vpsrld xmm1,xmm12,13
3981
3982 vpslld xmm2,xmm12,19
3983 vpaddd xmm5,xmm5,xmm0
3984 vpand xmm4,xmm4,xmm3
3985
3986 vpxor xmm7,xmm11,xmm1
3987
3988 vpsrld xmm1,xmm12,22
3989 vpxor xmm7,xmm7,xmm2
3990
3991 vpslld xmm2,xmm12,10
3992 vpxor xmm11,xmm13,xmm4
3993 vpaddd xmm15,xmm15,xmm5
3994
3995 vpxor xmm7,xmm7,xmm1
3996 vpxor xmm7,xmm7,xmm2
3997
3998 vpaddd xmm11,xmm11,xmm5
3999 vpaddd xmm11,xmm11,xmm7
4000 vmovd xmm5,DWORD[52+r8]
4001 vmovd xmm0,DWORD[52+r9]
4002 vpinsrd xmm5,xmm5,DWORD[52+r10],1
4003 vpinsrd xmm0,xmm0,DWORD[52+r11],1
4004 vpunpckldq xmm5,xmm5,xmm0
4005 vpshufb xmm5,xmm5,xmm6
4006 vpsrld xmm7,xmm15,6
4007 vpslld xmm2,xmm15,26
4008 vmovdqu XMMWORD[(208-128)+rax],xmm5
4009 vpaddd xmm5,xmm5,xmm10
4010
4011 vpsrld xmm1,xmm15,11
4012 vpxor xmm7,xmm7,xmm2
4013 vpslld xmm2,xmm15,21
4014 vpaddd xmm5,xmm5,XMMWORD[32+rbp]
4015 vpxor xmm7,xmm7,xmm1
4016
4017 vpsrld xmm1,xmm15,25
4018 vpxor xmm7,xmm7,xmm2
4019
4020 vpslld xmm2,xmm15,7
4021 vpandn xmm0,xmm15,xmm9
4022 vpand xmm4,xmm15,xmm8
4023
4024 vpxor xmm7,xmm7,xmm1
4025
4026 vpsrld xmm10,xmm11,2
4027 vpxor xmm7,xmm7,xmm2
4028
4029 vpslld xmm1,xmm11,30
4030 vpxor xmm0,xmm0,xmm4
4031 vpxor xmm4,xmm12,xmm11
4032
4033 vpxor xmm10,xmm10,xmm1
4034 vpaddd xmm5,xmm5,xmm7
4035
4036 vpsrld xmm1,xmm11,13
4037
4038 vpslld xmm2,xmm11,19
4039 vpaddd xmm5,xmm5,xmm0
4040 vpand xmm3,xmm3,xmm4
4041
4042 vpxor xmm7,xmm10,xmm1
4043
4044 vpsrld xmm1,xmm11,22
4045 vpxor xmm7,xmm7,xmm2
4046
4047 vpslld xmm2,xmm11,10
4048 vpxor xmm10,xmm12,xmm3
4049 vpaddd xmm14,xmm14,xmm5
4050
4051 vpxor xmm7,xmm7,xmm1
4052 vpxor xmm7,xmm7,xmm2
4053
4054 vpaddd xmm10,xmm10,xmm5
4055 vpaddd xmm10,xmm10,xmm7
4056 vmovd xmm5,DWORD[56+r8]
4057 vmovd xmm0,DWORD[56+r9]
4058 vpinsrd xmm5,xmm5,DWORD[56+r10],1
4059 vpinsrd xmm0,xmm0,DWORD[56+r11],1
4060 vpunpckldq xmm5,xmm5,xmm0
4061 vpshufb xmm5,xmm5,xmm6
4062 vpsrld xmm7,xmm14,6
4063 vpslld xmm2,xmm14,26
4064 vmovdqu XMMWORD[(224-128)+rax],xmm5
4065 vpaddd xmm5,xmm5,xmm9
4066
4067 vpsrld xmm1,xmm14,11
4068 vpxor xmm7,xmm7,xmm2
4069 vpslld xmm2,xmm14,21
4070 vpaddd xmm5,xmm5,XMMWORD[64+rbp]
4071 vpxor xmm7,xmm7,xmm1
4072
4073 vpsrld xmm1,xmm14,25
4074 vpxor xmm7,xmm7,xmm2
4075
4076 vpslld xmm2,xmm14,7
4077 vpandn xmm0,xmm14,xmm8
4078 vpand xmm3,xmm14,xmm15
4079
4080 vpxor xmm7,xmm7,xmm1
4081
4082 vpsrld xmm9,xmm10,2
4083 vpxor xmm7,xmm7,xmm2
4084
4085 vpslld xmm1,xmm10,30
4086 vpxor xmm0,xmm0,xmm3
4087 vpxor xmm3,xmm11,xmm10
4088
4089 vpxor xmm9,xmm9,xmm1
4090 vpaddd xmm5,xmm5,xmm7
4091
4092 vpsrld xmm1,xmm10,13
4093
4094 vpslld xmm2,xmm10,19
4095 vpaddd xmm5,xmm5,xmm0
4096 vpand xmm4,xmm4,xmm3
4097
4098 vpxor xmm7,xmm9,xmm1
4099
4100 vpsrld xmm1,xmm10,22
4101 vpxor xmm7,xmm7,xmm2
4102
4103 vpslld xmm2,xmm10,10
4104 vpxor xmm9,xmm11,xmm4
4105 vpaddd xmm13,xmm13,xmm5
4106
4107 vpxor xmm7,xmm7,xmm1
4108 vpxor xmm7,xmm7,xmm2
4109
4110 vpaddd xmm9,xmm9,xmm5
4111 vpaddd xmm9,xmm9,xmm7
4112 vmovd xmm5,DWORD[60+r8]
4113 lea r8,[64+r8]
4114 vmovd xmm0,DWORD[60+r9]
4115 lea r9,[64+r9]
4116 vpinsrd xmm5,xmm5,DWORD[60+r10],1
4117 lea r10,[64+r10]
4118 vpinsrd xmm0,xmm0,DWORD[60+r11],1
4119 lea r11,[64+r11]
4120 vpunpckldq xmm5,xmm5,xmm0
4121 vpshufb xmm5,xmm5,xmm6
4122 vpsrld xmm7,xmm13,6
4123 vpslld xmm2,xmm13,26
4124 vmovdqu XMMWORD[(240-128)+rax],xmm5
4125 vpaddd xmm5,xmm5,xmm8
4126
4127 vpsrld xmm1,xmm13,11
4128 vpxor xmm7,xmm7,xmm2
4129 vpslld xmm2,xmm13,21
4130 vpaddd xmm5,xmm5,XMMWORD[96+rbp]
4131 vpxor xmm7,xmm7,xmm1
4132
4133 vpsrld xmm1,xmm13,25
4134 vpxor xmm7,xmm7,xmm2
4135 prefetcht0 [63+r8]
4136 vpslld xmm2,xmm13,7
4137 vpandn xmm0,xmm13,xmm15
4138 vpand xmm4,xmm13,xmm14
4139 prefetcht0 [63+r9]
4140 vpxor xmm7,xmm7,xmm1
4141
4142 vpsrld xmm8,xmm9,2
4143 vpxor xmm7,xmm7,xmm2
4144 prefetcht0 [63+r10]
4145 vpslld xmm1,xmm9,30
4146 vpxor xmm0,xmm0,xmm4
4147 vpxor xmm4,xmm10,xmm9
4148 prefetcht0 [63+r11]
4149 vpxor xmm8,xmm8,xmm1
4150 vpaddd xmm5,xmm5,xmm7
4151
4152 vpsrld xmm1,xmm9,13
4153
4154 vpslld xmm2,xmm9,19
4155 vpaddd xmm5,xmm5,xmm0
4156 vpand xmm3,xmm3,xmm4
4157
4158 vpxor xmm7,xmm8,xmm1
4159
4160 vpsrld xmm1,xmm9,22
4161 vpxor xmm7,xmm7,xmm2
4162
4163 vpslld xmm2,xmm9,10
4164 vpxor xmm8,xmm10,xmm3
4165 vpaddd xmm12,xmm12,xmm5
4166
4167 vpxor xmm7,xmm7,xmm1
4168 vpxor xmm7,xmm7,xmm2
4169
4170 vpaddd xmm8,xmm8,xmm5
4171 vpaddd xmm8,xmm8,xmm7
4172 add rbp,256
4173 vmovdqu xmm5,XMMWORD[((0-128))+rax]
4174 mov ecx,3
4175 jmp NEAR $L$oop_16_xx_avx
4176ALIGN 32
4177$L$oop_16_xx_avx:
4178 vmovdqu xmm6,XMMWORD[((16-128))+rax]
4179 vpaddd xmm5,xmm5,XMMWORD[((144-128))+rax]
4180
4181 vpsrld xmm7,xmm6,3
4182 vpsrld xmm1,xmm6,7
4183 vpslld xmm2,xmm6,25
4184 vpxor xmm7,xmm7,xmm1
4185 vpsrld xmm1,xmm6,18
4186 vpxor xmm7,xmm7,xmm2
4187 vpslld xmm2,xmm6,14
4188 vmovdqu xmm0,XMMWORD[((224-128))+rax]
4189 vpsrld xmm3,xmm0,10
4190
4191 vpxor xmm7,xmm7,xmm1
4192 vpsrld xmm1,xmm0,17
4193 vpxor xmm7,xmm7,xmm2
4194 vpslld xmm2,xmm0,15
4195 vpaddd xmm5,xmm5,xmm7
4196 vpxor xmm7,xmm3,xmm1
4197 vpsrld xmm1,xmm0,19
4198 vpxor xmm7,xmm7,xmm2
4199 vpslld xmm2,xmm0,13
4200 vpxor xmm7,xmm7,xmm1
4201 vpxor xmm7,xmm7,xmm2
4202 vpaddd xmm5,xmm5,xmm7
4203 vpsrld xmm7,xmm12,6
4204 vpslld xmm2,xmm12,26
4205 vmovdqu XMMWORD[(0-128)+rax],xmm5
4206 vpaddd xmm5,xmm5,xmm15
4207
4208 vpsrld xmm1,xmm12,11
4209 vpxor xmm7,xmm7,xmm2
4210 vpslld xmm2,xmm12,21
4211 vpaddd xmm5,xmm5,XMMWORD[((-128))+rbp]
4212 vpxor xmm7,xmm7,xmm1
4213
4214 vpsrld xmm1,xmm12,25
4215 vpxor xmm7,xmm7,xmm2
4216
4217 vpslld xmm2,xmm12,7
4218 vpandn xmm0,xmm12,xmm14
4219 vpand xmm3,xmm12,xmm13
4220
4221 vpxor xmm7,xmm7,xmm1
4222
4223 vpsrld xmm15,xmm8,2
4224 vpxor xmm7,xmm7,xmm2
4225
4226 vpslld xmm1,xmm8,30
4227 vpxor xmm0,xmm0,xmm3
4228 vpxor xmm3,xmm9,xmm8
4229
4230 vpxor xmm15,xmm15,xmm1
4231 vpaddd xmm5,xmm5,xmm7
4232
4233 vpsrld xmm1,xmm8,13
4234
4235 vpslld xmm2,xmm8,19
4236 vpaddd xmm5,xmm5,xmm0
4237 vpand xmm4,xmm4,xmm3
4238
4239 vpxor xmm7,xmm15,xmm1
4240
4241 vpsrld xmm1,xmm8,22
4242 vpxor xmm7,xmm7,xmm2
4243
4244 vpslld xmm2,xmm8,10
4245 vpxor xmm15,xmm9,xmm4
4246 vpaddd xmm11,xmm11,xmm5
4247
4248 vpxor xmm7,xmm7,xmm1
4249 vpxor xmm7,xmm7,xmm2
4250
4251 vpaddd xmm15,xmm15,xmm5
4252 vpaddd xmm15,xmm15,xmm7
4253 vmovdqu xmm5,XMMWORD[((32-128))+rax]
4254 vpaddd xmm6,xmm6,XMMWORD[((160-128))+rax]
4255
4256 vpsrld xmm7,xmm5,3
4257 vpsrld xmm1,xmm5,7
4258 vpslld xmm2,xmm5,25
4259 vpxor xmm7,xmm7,xmm1
4260 vpsrld xmm1,xmm5,18
4261 vpxor xmm7,xmm7,xmm2
4262 vpslld xmm2,xmm5,14
4263 vmovdqu xmm0,XMMWORD[((240-128))+rax]
4264 vpsrld xmm4,xmm0,10
4265
4266 vpxor xmm7,xmm7,xmm1
4267 vpsrld xmm1,xmm0,17
4268 vpxor xmm7,xmm7,xmm2
4269 vpslld xmm2,xmm0,15
4270 vpaddd xmm6,xmm6,xmm7
4271 vpxor xmm7,xmm4,xmm1
4272 vpsrld xmm1,xmm0,19
4273 vpxor xmm7,xmm7,xmm2
4274 vpslld xmm2,xmm0,13
4275 vpxor xmm7,xmm7,xmm1
4276 vpxor xmm7,xmm7,xmm2
4277 vpaddd xmm6,xmm6,xmm7
4278 vpsrld xmm7,xmm11,6
4279 vpslld xmm2,xmm11,26
4280 vmovdqu XMMWORD[(16-128)+rax],xmm6
4281 vpaddd xmm6,xmm6,xmm14
4282
4283 vpsrld xmm1,xmm11,11
4284 vpxor xmm7,xmm7,xmm2
4285 vpslld xmm2,xmm11,21
4286 vpaddd xmm6,xmm6,XMMWORD[((-96))+rbp]
4287 vpxor xmm7,xmm7,xmm1
4288
4289 vpsrld xmm1,xmm11,25
4290 vpxor xmm7,xmm7,xmm2
4291
4292 vpslld xmm2,xmm11,7
4293 vpandn xmm0,xmm11,xmm13
4294 vpand xmm4,xmm11,xmm12
4295
4296 vpxor xmm7,xmm7,xmm1
4297
4298 vpsrld xmm14,xmm15,2
4299 vpxor xmm7,xmm7,xmm2
4300
4301 vpslld xmm1,xmm15,30
4302 vpxor xmm0,xmm0,xmm4
4303 vpxor xmm4,xmm8,xmm15
4304
4305 vpxor xmm14,xmm14,xmm1
4306 vpaddd xmm6,xmm6,xmm7
4307
4308 vpsrld xmm1,xmm15,13
4309
4310 vpslld xmm2,xmm15,19
4311 vpaddd xmm6,xmm6,xmm0
4312 vpand xmm3,xmm3,xmm4
4313
4314 vpxor xmm7,xmm14,xmm1
4315
4316 vpsrld xmm1,xmm15,22
4317 vpxor xmm7,xmm7,xmm2
4318
4319 vpslld xmm2,xmm15,10
4320 vpxor xmm14,xmm8,xmm3
4321 vpaddd xmm10,xmm10,xmm6
4322
4323 vpxor xmm7,xmm7,xmm1
4324 vpxor xmm7,xmm7,xmm2
4325
4326 vpaddd xmm14,xmm14,xmm6
4327 vpaddd xmm14,xmm14,xmm7
4328 vmovdqu xmm6,XMMWORD[((48-128))+rax]
4329 vpaddd xmm5,xmm5,XMMWORD[((176-128))+rax]
4330
4331 vpsrld xmm7,xmm6,3
4332 vpsrld xmm1,xmm6,7
4333 vpslld xmm2,xmm6,25
4334 vpxor xmm7,xmm7,xmm1
4335 vpsrld xmm1,xmm6,18
4336 vpxor xmm7,xmm7,xmm2
4337 vpslld xmm2,xmm6,14
4338 vmovdqu xmm0,XMMWORD[((0-128))+rax]
4339 vpsrld xmm3,xmm0,10
4340
4341 vpxor xmm7,xmm7,xmm1
4342 vpsrld xmm1,xmm0,17
4343 vpxor xmm7,xmm7,xmm2
4344 vpslld xmm2,xmm0,15
4345 vpaddd xmm5,xmm5,xmm7
4346 vpxor xmm7,xmm3,xmm1
4347 vpsrld xmm1,xmm0,19
4348 vpxor xmm7,xmm7,xmm2
4349 vpslld xmm2,xmm0,13
4350 vpxor xmm7,xmm7,xmm1
4351 vpxor xmm7,xmm7,xmm2
4352 vpaddd xmm5,xmm5,xmm7
4353 vpsrld xmm7,xmm10,6
4354 vpslld xmm2,xmm10,26
4355 vmovdqu XMMWORD[(32-128)+rax],xmm5
4356 vpaddd xmm5,xmm5,xmm13
4357
4358 vpsrld xmm1,xmm10,11
4359 vpxor xmm7,xmm7,xmm2
4360 vpslld xmm2,xmm10,21
4361 vpaddd xmm5,xmm5,XMMWORD[((-64))+rbp]
4362 vpxor xmm7,xmm7,xmm1
4363
4364 vpsrld xmm1,xmm10,25
4365 vpxor xmm7,xmm7,xmm2
4366
4367 vpslld xmm2,xmm10,7
4368 vpandn xmm0,xmm10,xmm12
4369 vpand xmm3,xmm10,xmm11
4370
4371 vpxor xmm7,xmm7,xmm1
4372
4373 vpsrld xmm13,xmm14,2
4374 vpxor xmm7,xmm7,xmm2
4375
4376 vpslld xmm1,xmm14,30
4377 vpxor xmm0,xmm0,xmm3
4378 vpxor xmm3,xmm15,xmm14
4379
4380 vpxor xmm13,xmm13,xmm1
4381 vpaddd xmm5,xmm5,xmm7
4382
4383 vpsrld xmm1,xmm14,13
4384
4385 vpslld xmm2,xmm14,19
4386 vpaddd xmm5,xmm5,xmm0
4387 vpand xmm4,xmm4,xmm3
4388
4389 vpxor xmm7,xmm13,xmm1
4390
4391 vpsrld xmm1,xmm14,22
4392 vpxor xmm7,xmm7,xmm2
4393
4394 vpslld xmm2,xmm14,10
4395 vpxor xmm13,xmm15,xmm4
4396 vpaddd xmm9,xmm9,xmm5
4397
4398 vpxor xmm7,xmm7,xmm1
4399 vpxor xmm7,xmm7,xmm2
4400
4401 vpaddd xmm13,xmm13,xmm5
4402 vpaddd xmm13,xmm13,xmm7
4403 vmovdqu xmm5,XMMWORD[((64-128))+rax]
4404 vpaddd xmm6,xmm6,XMMWORD[((192-128))+rax]
4405
4406 vpsrld xmm7,xmm5,3
4407 vpsrld xmm1,xmm5,7
4408 vpslld xmm2,xmm5,25
4409 vpxor xmm7,xmm7,xmm1
4410 vpsrld xmm1,xmm5,18
4411 vpxor xmm7,xmm7,xmm2
4412 vpslld xmm2,xmm5,14
4413 vmovdqu xmm0,XMMWORD[((16-128))+rax]
4414 vpsrld xmm4,xmm0,10
4415
4416 vpxor xmm7,xmm7,xmm1
4417 vpsrld xmm1,xmm0,17
4418 vpxor xmm7,xmm7,xmm2
4419 vpslld xmm2,xmm0,15
4420 vpaddd xmm6,xmm6,xmm7
4421 vpxor xmm7,xmm4,xmm1
4422 vpsrld xmm1,xmm0,19
4423 vpxor xmm7,xmm7,xmm2
4424 vpslld xmm2,xmm0,13
4425 vpxor xmm7,xmm7,xmm1
4426 vpxor xmm7,xmm7,xmm2
4427 vpaddd xmm6,xmm6,xmm7
4428 vpsrld xmm7,xmm9,6
4429 vpslld xmm2,xmm9,26
4430 vmovdqu XMMWORD[(48-128)+rax],xmm6
4431 vpaddd xmm6,xmm6,xmm12
4432
4433 vpsrld xmm1,xmm9,11
4434 vpxor xmm7,xmm7,xmm2
4435 vpslld xmm2,xmm9,21
4436 vpaddd xmm6,xmm6,XMMWORD[((-32))+rbp]
4437 vpxor xmm7,xmm7,xmm1
4438
4439 vpsrld xmm1,xmm9,25
4440 vpxor xmm7,xmm7,xmm2
4441
4442 vpslld xmm2,xmm9,7
4443 vpandn xmm0,xmm9,xmm11
4444 vpand xmm4,xmm9,xmm10
4445
4446 vpxor xmm7,xmm7,xmm1
4447
4448 vpsrld xmm12,xmm13,2
4449 vpxor xmm7,xmm7,xmm2
4450
4451 vpslld xmm1,xmm13,30
4452 vpxor xmm0,xmm0,xmm4
4453 vpxor xmm4,xmm14,xmm13
4454
4455 vpxor xmm12,xmm12,xmm1
4456 vpaddd xmm6,xmm6,xmm7
4457
4458 vpsrld xmm1,xmm13,13
4459
4460 vpslld xmm2,xmm13,19
4461 vpaddd xmm6,xmm6,xmm0
4462 vpand xmm3,xmm3,xmm4
4463
4464 vpxor xmm7,xmm12,xmm1
4465
4466 vpsrld xmm1,xmm13,22
4467 vpxor xmm7,xmm7,xmm2
4468
4469 vpslld xmm2,xmm13,10
4470 vpxor xmm12,xmm14,xmm3
4471 vpaddd xmm8,xmm8,xmm6
4472
4473 vpxor xmm7,xmm7,xmm1
4474 vpxor xmm7,xmm7,xmm2
4475
4476 vpaddd xmm12,xmm12,xmm6
4477 vpaddd xmm12,xmm12,xmm7
4478 vmovdqu xmm6,XMMWORD[((80-128))+rax]
4479 vpaddd xmm5,xmm5,XMMWORD[((208-128))+rax]
4480
4481 vpsrld xmm7,xmm6,3
4482 vpsrld xmm1,xmm6,7
4483 vpslld xmm2,xmm6,25
4484 vpxor xmm7,xmm7,xmm1
4485 vpsrld xmm1,xmm6,18
4486 vpxor xmm7,xmm7,xmm2
4487 vpslld xmm2,xmm6,14
4488 vmovdqu xmm0,XMMWORD[((32-128))+rax]
4489 vpsrld xmm3,xmm0,10
4490
4491 vpxor xmm7,xmm7,xmm1
4492 vpsrld xmm1,xmm0,17
4493 vpxor xmm7,xmm7,xmm2
4494 vpslld xmm2,xmm0,15
4495 vpaddd xmm5,xmm5,xmm7
4496 vpxor xmm7,xmm3,xmm1
4497 vpsrld xmm1,xmm0,19
4498 vpxor xmm7,xmm7,xmm2
4499 vpslld xmm2,xmm0,13
4500 vpxor xmm7,xmm7,xmm1
4501 vpxor xmm7,xmm7,xmm2
4502 vpaddd xmm5,xmm5,xmm7
4503 vpsrld xmm7,xmm8,6
4504 vpslld xmm2,xmm8,26
4505 vmovdqu XMMWORD[(64-128)+rax],xmm5
4506 vpaddd xmm5,xmm5,xmm11
4507
4508 vpsrld xmm1,xmm8,11
4509 vpxor xmm7,xmm7,xmm2
4510 vpslld xmm2,xmm8,21
4511 vpaddd xmm5,xmm5,XMMWORD[rbp]
4512 vpxor xmm7,xmm7,xmm1
4513
4514 vpsrld xmm1,xmm8,25
4515 vpxor xmm7,xmm7,xmm2
4516
4517 vpslld xmm2,xmm8,7
4518 vpandn xmm0,xmm8,xmm10
4519 vpand xmm3,xmm8,xmm9
4520
4521 vpxor xmm7,xmm7,xmm1
4522
4523 vpsrld xmm11,xmm12,2
4524 vpxor xmm7,xmm7,xmm2
4525
4526 vpslld xmm1,xmm12,30
4527 vpxor xmm0,xmm0,xmm3
4528 vpxor xmm3,xmm13,xmm12
4529
4530 vpxor xmm11,xmm11,xmm1
4531 vpaddd xmm5,xmm5,xmm7
4532
4533 vpsrld xmm1,xmm12,13
4534
4535 vpslld xmm2,xmm12,19
4536 vpaddd xmm5,xmm5,xmm0
4537 vpand xmm4,xmm4,xmm3
4538
4539 vpxor xmm7,xmm11,xmm1
4540
4541 vpsrld xmm1,xmm12,22
4542 vpxor xmm7,xmm7,xmm2
4543
4544 vpslld xmm2,xmm12,10
4545 vpxor xmm11,xmm13,xmm4
4546 vpaddd xmm15,xmm15,xmm5
4547
4548 vpxor xmm7,xmm7,xmm1
4549 vpxor xmm7,xmm7,xmm2
4550
4551 vpaddd xmm11,xmm11,xmm5
4552 vpaddd xmm11,xmm11,xmm7
4553 vmovdqu xmm5,XMMWORD[((96-128))+rax]
4554 vpaddd xmm6,xmm6,XMMWORD[((224-128))+rax]
4555
4556 vpsrld xmm7,xmm5,3
4557 vpsrld xmm1,xmm5,7
4558 vpslld xmm2,xmm5,25
4559 vpxor xmm7,xmm7,xmm1
4560 vpsrld xmm1,xmm5,18
4561 vpxor xmm7,xmm7,xmm2
4562 vpslld xmm2,xmm5,14
4563 vmovdqu xmm0,XMMWORD[((48-128))+rax]
4564 vpsrld xmm4,xmm0,10
4565
4566 vpxor xmm7,xmm7,xmm1
4567 vpsrld xmm1,xmm0,17
4568 vpxor xmm7,xmm7,xmm2
4569 vpslld xmm2,xmm0,15
4570 vpaddd xmm6,xmm6,xmm7
4571 vpxor xmm7,xmm4,xmm1
4572 vpsrld xmm1,xmm0,19
4573 vpxor xmm7,xmm7,xmm2
4574 vpslld xmm2,xmm0,13
4575 vpxor xmm7,xmm7,xmm1
4576 vpxor xmm7,xmm7,xmm2
4577 vpaddd xmm6,xmm6,xmm7
4578 vpsrld xmm7,xmm15,6
4579 vpslld xmm2,xmm15,26
4580 vmovdqu XMMWORD[(80-128)+rax],xmm6
4581 vpaddd xmm6,xmm6,xmm10
4582
4583 vpsrld xmm1,xmm15,11
4584 vpxor xmm7,xmm7,xmm2
4585 vpslld xmm2,xmm15,21
4586 vpaddd xmm6,xmm6,XMMWORD[32+rbp]
4587 vpxor xmm7,xmm7,xmm1
4588
4589 vpsrld xmm1,xmm15,25
4590 vpxor xmm7,xmm7,xmm2
4591
4592 vpslld xmm2,xmm15,7
4593 vpandn xmm0,xmm15,xmm9
4594 vpand xmm4,xmm15,xmm8
4595
4596 vpxor xmm7,xmm7,xmm1
4597
4598 vpsrld xmm10,xmm11,2
4599 vpxor xmm7,xmm7,xmm2
4600
4601 vpslld xmm1,xmm11,30
4602 vpxor xmm0,xmm0,xmm4
4603 vpxor xmm4,xmm12,xmm11
4604
4605 vpxor xmm10,xmm10,xmm1
4606 vpaddd xmm6,xmm6,xmm7
4607
4608 vpsrld xmm1,xmm11,13
4609
4610 vpslld xmm2,xmm11,19
4611 vpaddd xmm6,xmm6,xmm0
4612 vpand xmm3,xmm3,xmm4
4613
4614 vpxor xmm7,xmm10,xmm1
4615
4616 vpsrld xmm1,xmm11,22
4617 vpxor xmm7,xmm7,xmm2
4618
4619 vpslld xmm2,xmm11,10
4620 vpxor xmm10,xmm12,xmm3
4621 vpaddd xmm14,xmm14,xmm6
4622
4623 vpxor xmm7,xmm7,xmm1
4624 vpxor xmm7,xmm7,xmm2
4625
4626 vpaddd xmm10,xmm10,xmm6
4627 vpaddd xmm10,xmm10,xmm7
4628 vmovdqu xmm6,XMMWORD[((112-128))+rax]
4629 vpaddd xmm5,xmm5,XMMWORD[((240-128))+rax]
4630
4631 vpsrld xmm7,xmm6,3
4632 vpsrld xmm1,xmm6,7
4633 vpslld xmm2,xmm6,25
4634 vpxor xmm7,xmm7,xmm1
4635 vpsrld xmm1,xmm6,18
4636 vpxor xmm7,xmm7,xmm2
4637 vpslld xmm2,xmm6,14
4638 vmovdqu xmm0,XMMWORD[((64-128))+rax]
4639 vpsrld xmm3,xmm0,10
4640
4641 vpxor xmm7,xmm7,xmm1
4642 vpsrld xmm1,xmm0,17
4643 vpxor xmm7,xmm7,xmm2
4644 vpslld xmm2,xmm0,15
4645 vpaddd xmm5,xmm5,xmm7
4646 vpxor xmm7,xmm3,xmm1
4647 vpsrld xmm1,xmm0,19
4648 vpxor xmm7,xmm7,xmm2
4649 vpslld xmm2,xmm0,13
4650 vpxor xmm7,xmm7,xmm1
4651 vpxor xmm7,xmm7,xmm2
4652 vpaddd xmm5,xmm5,xmm7
4653 vpsrld xmm7,xmm14,6
4654 vpslld xmm2,xmm14,26
4655 vmovdqu XMMWORD[(96-128)+rax],xmm5
4656 vpaddd xmm5,xmm5,xmm9
4657
4658 vpsrld xmm1,xmm14,11
4659 vpxor xmm7,xmm7,xmm2
4660 vpslld xmm2,xmm14,21
4661 vpaddd xmm5,xmm5,XMMWORD[64+rbp]
4662 vpxor xmm7,xmm7,xmm1
4663
4664 vpsrld xmm1,xmm14,25
4665 vpxor xmm7,xmm7,xmm2
4666
4667 vpslld xmm2,xmm14,7
4668 vpandn xmm0,xmm14,xmm8
4669 vpand xmm3,xmm14,xmm15
4670
4671 vpxor xmm7,xmm7,xmm1
4672
4673 vpsrld xmm9,xmm10,2
4674 vpxor xmm7,xmm7,xmm2
4675
4676 vpslld xmm1,xmm10,30
4677 vpxor xmm0,xmm0,xmm3
4678 vpxor xmm3,xmm11,xmm10
4679
4680 vpxor xmm9,xmm9,xmm1
4681 vpaddd xmm5,xmm5,xmm7
4682
4683 vpsrld xmm1,xmm10,13
4684
4685 vpslld xmm2,xmm10,19
4686 vpaddd xmm5,xmm5,xmm0
4687 vpand xmm4,xmm4,xmm3
4688
4689 vpxor xmm7,xmm9,xmm1
4690
4691 vpsrld xmm1,xmm10,22
4692 vpxor xmm7,xmm7,xmm2
4693
4694 vpslld xmm2,xmm10,10
4695 vpxor xmm9,xmm11,xmm4
4696 vpaddd xmm13,xmm13,xmm5
4697
4698 vpxor xmm7,xmm7,xmm1
4699 vpxor xmm7,xmm7,xmm2
4700
4701 vpaddd xmm9,xmm9,xmm5
4702 vpaddd xmm9,xmm9,xmm7
4703 vmovdqu xmm5,XMMWORD[((128-128))+rax]
4704 vpaddd xmm6,xmm6,XMMWORD[((0-128))+rax]
4705
4706 vpsrld xmm7,xmm5,3
4707 vpsrld xmm1,xmm5,7
4708 vpslld xmm2,xmm5,25
4709 vpxor xmm7,xmm7,xmm1
4710 vpsrld xmm1,xmm5,18
4711 vpxor xmm7,xmm7,xmm2
4712 vpslld xmm2,xmm5,14
4713 vmovdqu xmm0,XMMWORD[((80-128))+rax]
4714 vpsrld xmm4,xmm0,10
4715
4716 vpxor xmm7,xmm7,xmm1
4717 vpsrld xmm1,xmm0,17
4718 vpxor xmm7,xmm7,xmm2
4719 vpslld xmm2,xmm0,15
4720 vpaddd xmm6,xmm6,xmm7
4721 vpxor xmm7,xmm4,xmm1
4722 vpsrld xmm1,xmm0,19
4723 vpxor xmm7,xmm7,xmm2
4724 vpslld xmm2,xmm0,13
4725 vpxor xmm7,xmm7,xmm1
4726 vpxor xmm7,xmm7,xmm2
4727 vpaddd xmm6,xmm6,xmm7
4728 vpsrld xmm7,xmm13,6
4729 vpslld xmm2,xmm13,26
4730 vmovdqu XMMWORD[(112-128)+rax],xmm6
4731 vpaddd xmm6,xmm6,xmm8
4732
4733 vpsrld xmm1,xmm13,11
4734 vpxor xmm7,xmm7,xmm2
4735 vpslld xmm2,xmm13,21
4736 vpaddd xmm6,xmm6,XMMWORD[96+rbp]
4737 vpxor xmm7,xmm7,xmm1
4738
4739 vpsrld xmm1,xmm13,25
4740 vpxor xmm7,xmm7,xmm2
4741
4742 vpslld xmm2,xmm13,7
4743 vpandn xmm0,xmm13,xmm15
4744 vpand xmm4,xmm13,xmm14
4745
4746 vpxor xmm7,xmm7,xmm1
4747
4748 vpsrld xmm8,xmm9,2
4749 vpxor xmm7,xmm7,xmm2
4750
4751 vpslld xmm1,xmm9,30
4752 vpxor xmm0,xmm0,xmm4
4753 vpxor xmm4,xmm10,xmm9
4754
4755 vpxor xmm8,xmm8,xmm1
4756 vpaddd xmm6,xmm6,xmm7
4757
4758 vpsrld xmm1,xmm9,13
4759
4760 vpslld xmm2,xmm9,19
4761 vpaddd xmm6,xmm6,xmm0
4762 vpand xmm3,xmm3,xmm4
4763
4764 vpxor xmm7,xmm8,xmm1
4765
4766 vpsrld xmm1,xmm9,22
4767 vpxor xmm7,xmm7,xmm2
4768
4769 vpslld xmm2,xmm9,10
4770 vpxor xmm8,xmm10,xmm3
4771 vpaddd xmm12,xmm12,xmm6
4772
4773 vpxor xmm7,xmm7,xmm1
4774 vpxor xmm7,xmm7,xmm2
4775
4776 vpaddd xmm8,xmm8,xmm6
4777 vpaddd xmm8,xmm8,xmm7
4778 add rbp,256
4779 vmovdqu xmm6,XMMWORD[((144-128))+rax]
4780 vpaddd xmm5,xmm5,XMMWORD[((16-128))+rax]
4781
4782 vpsrld xmm7,xmm6,3
4783 vpsrld xmm1,xmm6,7
4784 vpslld xmm2,xmm6,25
4785 vpxor xmm7,xmm7,xmm1
4786 vpsrld xmm1,xmm6,18
4787 vpxor xmm7,xmm7,xmm2
4788 vpslld xmm2,xmm6,14
4789 vmovdqu xmm0,XMMWORD[((96-128))+rax]
4790 vpsrld xmm3,xmm0,10
4791
4792 vpxor xmm7,xmm7,xmm1
4793 vpsrld xmm1,xmm0,17
4794 vpxor xmm7,xmm7,xmm2
4795 vpslld xmm2,xmm0,15
4796 vpaddd xmm5,xmm5,xmm7
4797 vpxor xmm7,xmm3,xmm1
4798 vpsrld xmm1,xmm0,19
4799 vpxor xmm7,xmm7,xmm2
4800 vpslld xmm2,xmm0,13
4801 vpxor xmm7,xmm7,xmm1
4802 vpxor xmm7,xmm7,xmm2
4803 vpaddd xmm5,xmm5,xmm7
4804 vpsrld xmm7,xmm12,6
4805 vpslld xmm2,xmm12,26
4806 vmovdqu XMMWORD[(128-128)+rax],xmm5
4807 vpaddd xmm5,xmm5,xmm15
4808
4809 vpsrld xmm1,xmm12,11
4810 vpxor xmm7,xmm7,xmm2
4811 vpslld xmm2,xmm12,21
4812 vpaddd xmm5,xmm5,XMMWORD[((-128))+rbp]
4813 vpxor xmm7,xmm7,xmm1
4814
4815 vpsrld xmm1,xmm12,25
4816 vpxor xmm7,xmm7,xmm2
4817
4818 vpslld xmm2,xmm12,7
4819 vpandn xmm0,xmm12,xmm14
4820 vpand xmm3,xmm12,xmm13
4821
4822 vpxor xmm7,xmm7,xmm1
4823
4824 vpsrld xmm15,xmm8,2
4825 vpxor xmm7,xmm7,xmm2
4826
4827 vpslld xmm1,xmm8,30
4828 vpxor xmm0,xmm0,xmm3
4829 vpxor xmm3,xmm9,xmm8
4830
4831 vpxor xmm15,xmm15,xmm1
4832 vpaddd xmm5,xmm5,xmm7
4833
4834 vpsrld xmm1,xmm8,13
4835
4836 vpslld xmm2,xmm8,19
4837 vpaddd xmm5,xmm5,xmm0
4838 vpand xmm4,xmm4,xmm3
4839
4840 vpxor xmm7,xmm15,xmm1
4841
4842 vpsrld xmm1,xmm8,22
4843 vpxor xmm7,xmm7,xmm2
4844
4845 vpslld xmm2,xmm8,10
4846 vpxor xmm15,xmm9,xmm4
4847 vpaddd xmm11,xmm11,xmm5
4848
4849 vpxor xmm7,xmm7,xmm1
4850 vpxor xmm7,xmm7,xmm2
4851
4852 vpaddd xmm15,xmm15,xmm5
4853 vpaddd xmm15,xmm15,xmm7
4854 vmovdqu xmm5,XMMWORD[((160-128))+rax]
4855 vpaddd xmm6,xmm6,XMMWORD[((32-128))+rax]
4856
4857 vpsrld xmm7,xmm5,3
4858 vpsrld xmm1,xmm5,7
4859 vpslld xmm2,xmm5,25
4860 vpxor xmm7,xmm7,xmm1
4861 vpsrld xmm1,xmm5,18
4862 vpxor xmm7,xmm7,xmm2
4863 vpslld xmm2,xmm5,14
4864 vmovdqu xmm0,XMMWORD[((112-128))+rax]
4865 vpsrld xmm4,xmm0,10
4866
4867 vpxor xmm7,xmm7,xmm1
4868 vpsrld xmm1,xmm0,17
4869 vpxor xmm7,xmm7,xmm2
4870 vpslld xmm2,xmm0,15
4871 vpaddd xmm6,xmm6,xmm7
4872 vpxor xmm7,xmm4,xmm1
4873 vpsrld xmm1,xmm0,19
4874 vpxor xmm7,xmm7,xmm2
4875 vpslld xmm2,xmm0,13
4876 vpxor xmm7,xmm7,xmm1
4877 vpxor xmm7,xmm7,xmm2
4878 vpaddd xmm6,xmm6,xmm7
4879 vpsrld xmm7,xmm11,6
4880 vpslld xmm2,xmm11,26
4881 vmovdqu XMMWORD[(144-128)+rax],xmm6
4882 vpaddd xmm6,xmm6,xmm14
4883
4884 vpsrld xmm1,xmm11,11
4885 vpxor xmm7,xmm7,xmm2
4886 vpslld xmm2,xmm11,21
4887 vpaddd xmm6,xmm6,XMMWORD[((-96))+rbp]
4888 vpxor xmm7,xmm7,xmm1
4889
4890 vpsrld xmm1,xmm11,25
4891 vpxor xmm7,xmm7,xmm2
4892
4893 vpslld xmm2,xmm11,7
4894 vpandn xmm0,xmm11,xmm13
4895 vpand xmm4,xmm11,xmm12
4896
4897 vpxor xmm7,xmm7,xmm1
4898
4899 vpsrld xmm14,xmm15,2
4900 vpxor xmm7,xmm7,xmm2
4901
4902 vpslld xmm1,xmm15,30
4903 vpxor xmm0,xmm0,xmm4
4904 vpxor xmm4,xmm8,xmm15
4905
4906 vpxor xmm14,xmm14,xmm1
4907 vpaddd xmm6,xmm6,xmm7
4908
4909 vpsrld xmm1,xmm15,13
4910
4911 vpslld xmm2,xmm15,19
4912 vpaddd xmm6,xmm6,xmm0
4913 vpand xmm3,xmm3,xmm4
4914
4915 vpxor xmm7,xmm14,xmm1
4916
4917 vpsrld xmm1,xmm15,22
4918 vpxor xmm7,xmm7,xmm2
4919
4920 vpslld xmm2,xmm15,10
4921 vpxor xmm14,xmm8,xmm3
4922 vpaddd xmm10,xmm10,xmm6
4923
4924 vpxor xmm7,xmm7,xmm1
4925 vpxor xmm7,xmm7,xmm2
4926
4927 vpaddd xmm14,xmm14,xmm6
4928 vpaddd xmm14,xmm14,xmm7
4929 vmovdqu xmm6,XMMWORD[((176-128))+rax]
4930 vpaddd xmm5,xmm5,XMMWORD[((48-128))+rax]
4931
4932 vpsrld xmm7,xmm6,3
4933 vpsrld xmm1,xmm6,7
4934 vpslld xmm2,xmm6,25
4935 vpxor xmm7,xmm7,xmm1
4936 vpsrld xmm1,xmm6,18
4937 vpxor xmm7,xmm7,xmm2
4938 vpslld xmm2,xmm6,14
4939 vmovdqu xmm0,XMMWORD[((128-128))+rax]
4940 vpsrld xmm3,xmm0,10
4941
4942 vpxor xmm7,xmm7,xmm1
4943 vpsrld xmm1,xmm0,17
4944 vpxor xmm7,xmm7,xmm2
4945 vpslld xmm2,xmm0,15
4946 vpaddd xmm5,xmm5,xmm7
4947 vpxor xmm7,xmm3,xmm1
4948 vpsrld xmm1,xmm0,19
4949 vpxor xmm7,xmm7,xmm2
4950 vpslld xmm2,xmm0,13
4951 vpxor xmm7,xmm7,xmm1
4952 vpxor xmm7,xmm7,xmm2
4953 vpaddd xmm5,xmm5,xmm7
4954 vpsrld xmm7,xmm10,6
4955 vpslld xmm2,xmm10,26
4956 vmovdqu XMMWORD[(160-128)+rax],xmm5
4957 vpaddd xmm5,xmm5,xmm13
4958
4959 vpsrld xmm1,xmm10,11
4960 vpxor xmm7,xmm7,xmm2
4961 vpslld xmm2,xmm10,21
4962 vpaddd xmm5,xmm5,XMMWORD[((-64))+rbp]
4963 vpxor xmm7,xmm7,xmm1
4964
4965 vpsrld xmm1,xmm10,25
4966 vpxor xmm7,xmm7,xmm2
4967
4968 vpslld xmm2,xmm10,7
4969 vpandn xmm0,xmm10,xmm12
4970 vpand xmm3,xmm10,xmm11
4971
4972 vpxor xmm7,xmm7,xmm1
4973
4974 vpsrld xmm13,xmm14,2
4975 vpxor xmm7,xmm7,xmm2
4976
4977 vpslld xmm1,xmm14,30
4978 vpxor xmm0,xmm0,xmm3
4979 vpxor xmm3,xmm15,xmm14
4980
4981 vpxor xmm13,xmm13,xmm1
4982 vpaddd xmm5,xmm5,xmm7
4983
4984 vpsrld xmm1,xmm14,13
4985
4986 vpslld xmm2,xmm14,19
4987 vpaddd xmm5,xmm5,xmm0
4988 vpand xmm4,xmm4,xmm3
4989
4990 vpxor xmm7,xmm13,xmm1
4991
4992 vpsrld xmm1,xmm14,22
4993 vpxor xmm7,xmm7,xmm2
4994
4995 vpslld xmm2,xmm14,10
4996 vpxor xmm13,xmm15,xmm4
4997 vpaddd xmm9,xmm9,xmm5
4998
4999 vpxor xmm7,xmm7,xmm1
5000 vpxor xmm7,xmm7,xmm2
5001
5002 vpaddd xmm13,xmm13,xmm5
5003 vpaddd xmm13,xmm13,xmm7
5004 vmovdqu xmm5,XMMWORD[((192-128))+rax]
5005 vpaddd xmm6,xmm6,XMMWORD[((64-128))+rax]
5006
5007 vpsrld xmm7,xmm5,3
5008 vpsrld xmm1,xmm5,7
5009 vpslld xmm2,xmm5,25
5010 vpxor xmm7,xmm7,xmm1
5011 vpsrld xmm1,xmm5,18
5012 vpxor xmm7,xmm7,xmm2
5013 vpslld xmm2,xmm5,14
5014 vmovdqu xmm0,XMMWORD[((144-128))+rax]
5015 vpsrld xmm4,xmm0,10
5016
5017 vpxor xmm7,xmm7,xmm1
5018 vpsrld xmm1,xmm0,17
5019 vpxor xmm7,xmm7,xmm2
5020 vpslld xmm2,xmm0,15
5021 vpaddd xmm6,xmm6,xmm7
5022 vpxor xmm7,xmm4,xmm1
5023 vpsrld xmm1,xmm0,19
5024 vpxor xmm7,xmm7,xmm2
5025 vpslld xmm2,xmm0,13
5026 vpxor xmm7,xmm7,xmm1
5027 vpxor xmm7,xmm7,xmm2
5028 vpaddd xmm6,xmm6,xmm7
5029 vpsrld xmm7,xmm9,6
5030 vpslld xmm2,xmm9,26
5031 vmovdqu XMMWORD[(176-128)+rax],xmm6
5032 vpaddd xmm6,xmm6,xmm12
5033
5034 vpsrld xmm1,xmm9,11
5035 vpxor xmm7,xmm7,xmm2
5036 vpslld xmm2,xmm9,21
5037 vpaddd xmm6,xmm6,XMMWORD[((-32))+rbp]
5038 vpxor xmm7,xmm7,xmm1
5039
5040 vpsrld xmm1,xmm9,25
5041 vpxor xmm7,xmm7,xmm2
5042
5043 vpslld xmm2,xmm9,7
5044 vpandn xmm0,xmm9,xmm11
5045 vpand xmm4,xmm9,xmm10
5046
5047 vpxor xmm7,xmm7,xmm1
5048
5049 vpsrld xmm12,xmm13,2
5050 vpxor xmm7,xmm7,xmm2
5051
5052 vpslld xmm1,xmm13,30
5053 vpxor xmm0,xmm0,xmm4
5054 vpxor xmm4,xmm14,xmm13
5055
5056 vpxor xmm12,xmm12,xmm1
5057 vpaddd xmm6,xmm6,xmm7
5058
5059 vpsrld xmm1,xmm13,13
5060
5061 vpslld xmm2,xmm13,19
5062 vpaddd xmm6,xmm6,xmm0
5063 vpand xmm3,xmm3,xmm4
5064
5065 vpxor xmm7,xmm12,xmm1
5066
5067 vpsrld xmm1,xmm13,22
5068 vpxor xmm7,xmm7,xmm2
5069
5070 vpslld xmm2,xmm13,10
5071 vpxor xmm12,xmm14,xmm3
5072 vpaddd xmm8,xmm8,xmm6
5073
5074 vpxor xmm7,xmm7,xmm1
5075 vpxor xmm7,xmm7,xmm2
5076
5077 vpaddd xmm12,xmm12,xmm6
5078 vpaddd xmm12,xmm12,xmm7
5079 vmovdqu xmm6,XMMWORD[((208-128))+rax]
5080 vpaddd xmm5,xmm5,XMMWORD[((80-128))+rax]
5081
5082 vpsrld xmm7,xmm6,3
5083 vpsrld xmm1,xmm6,7
5084 vpslld xmm2,xmm6,25
5085 vpxor xmm7,xmm7,xmm1
5086 vpsrld xmm1,xmm6,18
5087 vpxor xmm7,xmm7,xmm2
5088 vpslld xmm2,xmm6,14
5089 vmovdqu xmm0,XMMWORD[((160-128))+rax]
5090 vpsrld xmm3,xmm0,10
5091
5092 vpxor xmm7,xmm7,xmm1
5093 vpsrld xmm1,xmm0,17
5094 vpxor xmm7,xmm7,xmm2
5095 vpslld xmm2,xmm0,15
5096 vpaddd xmm5,xmm5,xmm7
5097 vpxor xmm7,xmm3,xmm1
5098 vpsrld xmm1,xmm0,19
5099 vpxor xmm7,xmm7,xmm2
5100 vpslld xmm2,xmm0,13
5101 vpxor xmm7,xmm7,xmm1
5102 vpxor xmm7,xmm7,xmm2
5103 vpaddd xmm5,xmm5,xmm7
5104 vpsrld xmm7,xmm8,6
5105 vpslld xmm2,xmm8,26
5106 vmovdqu XMMWORD[(192-128)+rax],xmm5
5107 vpaddd xmm5,xmm5,xmm11
5108
5109 vpsrld xmm1,xmm8,11
5110 vpxor xmm7,xmm7,xmm2
5111 vpslld xmm2,xmm8,21
5112 vpaddd xmm5,xmm5,XMMWORD[rbp]
5113 vpxor xmm7,xmm7,xmm1
5114
5115 vpsrld xmm1,xmm8,25
5116 vpxor xmm7,xmm7,xmm2
5117
5118 vpslld xmm2,xmm8,7
5119 vpandn xmm0,xmm8,xmm10
5120 vpand xmm3,xmm8,xmm9
5121
5122 vpxor xmm7,xmm7,xmm1
5123
5124 vpsrld xmm11,xmm12,2
5125 vpxor xmm7,xmm7,xmm2
5126
5127 vpslld xmm1,xmm12,30
5128 vpxor xmm0,xmm0,xmm3
5129 vpxor xmm3,xmm13,xmm12
5130
5131 vpxor xmm11,xmm11,xmm1
5132 vpaddd xmm5,xmm5,xmm7
5133
5134 vpsrld xmm1,xmm12,13
5135
5136 vpslld xmm2,xmm12,19
5137 vpaddd xmm5,xmm5,xmm0
5138 vpand xmm4,xmm4,xmm3
5139
5140 vpxor xmm7,xmm11,xmm1
5141
5142 vpsrld xmm1,xmm12,22
5143 vpxor xmm7,xmm7,xmm2
5144
5145 vpslld xmm2,xmm12,10
5146 vpxor xmm11,xmm13,xmm4
5147 vpaddd xmm15,xmm15,xmm5
5148
5149 vpxor xmm7,xmm7,xmm1
5150 vpxor xmm7,xmm7,xmm2
5151
5152 vpaddd xmm11,xmm11,xmm5
5153 vpaddd xmm11,xmm11,xmm7
5154 vmovdqu xmm5,XMMWORD[((224-128))+rax]
5155 vpaddd xmm6,xmm6,XMMWORD[((96-128))+rax]
5156
5157 vpsrld xmm7,xmm5,3
5158 vpsrld xmm1,xmm5,7
5159 vpslld xmm2,xmm5,25
5160 vpxor xmm7,xmm7,xmm1
5161 vpsrld xmm1,xmm5,18
5162 vpxor xmm7,xmm7,xmm2
5163 vpslld xmm2,xmm5,14
5164 vmovdqu xmm0,XMMWORD[((176-128))+rax]
5165 vpsrld xmm4,xmm0,10
5166
5167 vpxor xmm7,xmm7,xmm1
5168 vpsrld xmm1,xmm0,17
5169 vpxor xmm7,xmm7,xmm2
5170 vpslld xmm2,xmm0,15
5171 vpaddd xmm6,xmm6,xmm7
5172 vpxor xmm7,xmm4,xmm1
5173 vpsrld xmm1,xmm0,19
5174 vpxor xmm7,xmm7,xmm2
5175 vpslld xmm2,xmm0,13
5176 vpxor xmm7,xmm7,xmm1
5177 vpxor xmm7,xmm7,xmm2
5178 vpaddd xmm6,xmm6,xmm7
5179 vpsrld xmm7,xmm15,6
5180 vpslld xmm2,xmm15,26
5181 vmovdqu XMMWORD[(208-128)+rax],xmm6
5182 vpaddd xmm6,xmm6,xmm10
5183
5184 vpsrld xmm1,xmm15,11
5185 vpxor xmm7,xmm7,xmm2
5186 vpslld xmm2,xmm15,21
5187 vpaddd xmm6,xmm6,XMMWORD[32+rbp]
5188 vpxor xmm7,xmm7,xmm1
5189
5190 vpsrld xmm1,xmm15,25
5191 vpxor xmm7,xmm7,xmm2
5192
5193 vpslld xmm2,xmm15,7
5194 vpandn xmm0,xmm15,xmm9
5195 vpand xmm4,xmm15,xmm8
5196
5197 vpxor xmm7,xmm7,xmm1
5198
5199 vpsrld xmm10,xmm11,2
5200 vpxor xmm7,xmm7,xmm2
5201
5202 vpslld xmm1,xmm11,30
5203 vpxor xmm0,xmm0,xmm4
5204 vpxor xmm4,xmm12,xmm11
5205
5206 vpxor xmm10,xmm10,xmm1
5207 vpaddd xmm6,xmm6,xmm7
5208
5209 vpsrld xmm1,xmm11,13
5210
5211 vpslld xmm2,xmm11,19
5212 vpaddd xmm6,xmm6,xmm0
5213 vpand xmm3,xmm3,xmm4
5214
5215 vpxor xmm7,xmm10,xmm1
5216
5217 vpsrld xmm1,xmm11,22
5218 vpxor xmm7,xmm7,xmm2
5219
5220 vpslld xmm2,xmm11,10
5221 vpxor xmm10,xmm12,xmm3
5222 vpaddd xmm14,xmm14,xmm6
5223
5224 vpxor xmm7,xmm7,xmm1
5225 vpxor xmm7,xmm7,xmm2
5226
5227 vpaddd xmm10,xmm10,xmm6
5228 vpaddd xmm10,xmm10,xmm7
5229 vmovdqu xmm6,XMMWORD[((240-128))+rax]
5230 vpaddd xmm5,xmm5,XMMWORD[((112-128))+rax]
5231
5232 vpsrld xmm7,xmm6,3
5233 vpsrld xmm1,xmm6,7
5234 vpslld xmm2,xmm6,25
5235 vpxor xmm7,xmm7,xmm1
5236 vpsrld xmm1,xmm6,18
5237 vpxor xmm7,xmm7,xmm2
5238 vpslld xmm2,xmm6,14
5239 vmovdqu xmm0,XMMWORD[((192-128))+rax]
5240 vpsrld xmm3,xmm0,10
5241
5242 vpxor xmm7,xmm7,xmm1
5243 vpsrld xmm1,xmm0,17
5244 vpxor xmm7,xmm7,xmm2
5245 vpslld xmm2,xmm0,15
5246 vpaddd xmm5,xmm5,xmm7
5247 vpxor xmm7,xmm3,xmm1
5248 vpsrld xmm1,xmm0,19
5249 vpxor xmm7,xmm7,xmm2
5250 vpslld xmm2,xmm0,13
5251 vpxor xmm7,xmm7,xmm1
5252 vpxor xmm7,xmm7,xmm2
5253 vpaddd xmm5,xmm5,xmm7
5254 vpsrld xmm7,xmm14,6
5255 vpslld xmm2,xmm14,26
5256 vmovdqu XMMWORD[(224-128)+rax],xmm5
5257 vpaddd xmm5,xmm5,xmm9
5258
5259 vpsrld xmm1,xmm14,11
5260 vpxor xmm7,xmm7,xmm2
5261 vpslld xmm2,xmm14,21
5262 vpaddd xmm5,xmm5,XMMWORD[64+rbp]
5263 vpxor xmm7,xmm7,xmm1
5264
5265 vpsrld xmm1,xmm14,25
5266 vpxor xmm7,xmm7,xmm2
5267
5268 vpslld xmm2,xmm14,7
5269 vpandn xmm0,xmm14,xmm8
5270 vpand xmm3,xmm14,xmm15
5271
5272 vpxor xmm7,xmm7,xmm1
5273
5274 vpsrld xmm9,xmm10,2
5275 vpxor xmm7,xmm7,xmm2
5276
5277 vpslld xmm1,xmm10,30
5278 vpxor xmm0,xmm0,xmm3
5279 vpxor xmm3,xmm11,xmm10
5280
5281 vpxor xmm9,xmm9,xmm1
5282 vpaddd xmm5,xmm5,xmm7
5283
5284 vpsrld xmm1,xmm10,13
5285
5286 vpslld xmm2,xmm10,19
5287 vpaddd xmm5,xmm5,xmm0
5288 vpand xmm4,xmm4,xmm3
5289
5290 vpxor xmm7,xmm9,xmm1
5291
5292 vpsrld xmm1,xmm10,22
5293 vpxor xmm7,xmm7,xmm2
5294
5295 vpslld xmm2,xmm10,10
5296 vpxor xmm9,xmm11,xmm4
5297 vpaddd xmm13,xmm13,xmm5
5298
5299 vpxor xmm7,xmm7,xmm1
5300 vpxor xmm7,xmm7,xmm2
5301
5302 vpaddd xmm9,xmm9,xmm5
5303 vpaddd xmm9,xmm9,xmm7
5304 vmovdqu xmm5,XMMWORD[((0-128))+rax]
5305 vpaddd xmm6,xmm6,XMMWORD[((128-128))+rax]
5306
5307 vpsrld xmm7,xmm5,3
5308 vpsrld xmm1,xmm5,7
5309 vpslld xmm2,xmm5,25
5310 vpxor xmm7,xmm7,xmm1
5311 vpsrld xmm1,xmm5,18
5312 vpxor xmm7,xmm7,xmm2
5313 vpslld xmm2,xmm5,14
5314 vmovdqu xmm0,XMMWORD[((208-128))+rax]
5315 vpsrld xmm4,xmm0,10
5316
5317 vpxor xmm7,xmm7,xmm1
5318 vpsrld xmm1,xmm0,17
5319 vpxor xmm7,xmm7,xmm2
5320 vpslld xmm2,xmm0,15
5321 vpaddd xmm6,xmm6,xmm7
5322 vpxor xmm7,xmm4,xmm1
5323 vpsrld xmm1,xmm0,19
5324 vpxor xmm7,xmm7,xmm2
5325 vpslld xmm2,xmm0,13
5326 vpxor xmm7,xmm7,xmm1
5327 vpxor xmm7,xmm7,xmm2
5328 vpaddd xmm6,xmm6,xmm7
5329 vpsrld xmm7,xmm13,6
5330 vpslld xmm2,xmm13,26
5331 vmovdqu XMMWORD[(240-128)+rax],xmm6
5332 vpaddd xmm6,xmm6,xmm8
5333
5334 vpsrld xmm1,xmm13,11
5335 vpxor xmm7,xmm7,xmm2
5336 vpslld xmm2,xmm13,21
5337 vpaddd xmm6,xmm6,XMMWORD[96+rbp]
5338 vpxor xmm7,xmm7,xmm1
5339
5340 vpsrld xmm1,xmm13,25
5341 vpxor xmm7,xmm7,xmm2
5342
5343 vpslld xmm2,xmm13,7
5344 vpandn xmm0,xmm13,xmm15
5345 vpand xmm4,xmm13,xmm14
5346
5347 vpxor xmm7,xmm7,xmm1
5348
5349 vpsrld xmm8,xmm9,2
5350 vpxor xmm7,xmm7,xmm2
5351
5352 vpslld xmm1,xmm9,30
5353 vpxor xmm0,xmm0,xmm4
5354 vpxor xmm4,xmm10,xmm9
5355
5356 vpxor xmm8,xmm8,xmm1
5357 vpaddd xmm6,xmm6,xmm7
5358
5359 vpsrld xmm1,xmm9,13
5360
5361 vpslld xmm2,xmm9,19
5362 vpaddd xmm6,xmm6,xmm0
5363 vpand xmm3,xmm3,xmm4
5364
5365 vpxor xmm7,xmm8,xmm1
5366
5367 vpsrld xmm1,xmm9,22
5368 vpxor xmm7,xmm7,xmm2
5369
5370 vpslld xmm2,xmm9,10
5371 vpxor xmm8,xmm10,xmm3
5372 vpaddd xmm12,xmm12,xmm6
5373
5374 vpxor xmm7,xmm7,xmm1
5375 vpxor xmm7,xmm7,xmm2
5376
5377 vpaddd xmm8,xmm8,xmm6
5378 vpaddd xmm8,xmm8,xmm7
5379 add rbp,256
5380 dec ecx
5381 jnz NEAR $L$oop_16_xx_avx
5382
5383 mov ecx,1
5384 lea rbp,[((K256+128))]
5385 cmp ecx,DWORD[rbx]
5386 cmovge r8,rbp
5387 cmp ecx,DWORD[4+rbx]
5388 cmovge r9,rbp
5389 cmp ecx,DWORD[8+rbx]
5390 cmovge r10,rbp
5391 cmp ecx,DWORD[12+rbx]
5392 cmovge r11,rbp
5393 vmovdqa xmm7,XMMWORD[rbx]
5394 vpxor xmm0,xmm0,xmm0
5395 vmovdqa xmm6,xmm7
5396 vpcmpgtd xmm6,xmm6,xmm0
5397 vpaddd xmm7,xmm7,xmm6
5398
5399 vmovdqu xmm0,XMMWORD[((0-128))+rdi]
5400 vpand xmm8,xmm8,xmm6
5401 vmovdqu xmm1,XMMWORD[((32-128))+rdi]
5402 vpand xmm9,xmm9,xmm6
5403 vmovdqu xmm2,XMMWORD[((64-128))+rdi]
5404 vpand xmm10,xmm10,xmm6
5405 vmovdqu xmm5,XMMWORD[((96-128))+rdi]
5406 vpand xmm11,xmm11,xmm6
5407 vpaddd xmm8,xmm8,xmm0
5408 vmovdqu xmm0,XMMWORD[((128-128))+rdi]
5409 vpand xmm12,xmm12,xmm6
5410 vpaddd xmm9,xmm9,xmm1
5411 vmovdqu xmm1,XMMWORD[((160-128))+rdi]
5412 vpand xmm13,xmm13,xmm6
5413 vpaddd xmm10,xmm10,xmm2
5414 vmovdqu xmm2,XMMWORD[((192-128))+rdi]
5415 vpand xmm14,xmm14,xmm6
5416 vpaddd xmm11,xmm11,xmm5
5417 vmovdqu xmm5,XMMWORD[((224-128))+rdi]
5418 vpand xmm15,xmm15,xmm6
5419 vpaddd xmm12,xmm12,xmm0
5420 vpaddd xmm13,xmm13,xmm1
5421 vmovdqu XMMWORD[(0-128)+rdi],xmm8
5422 vpaddd xmm14,xmm14,xmm2
5423 vmovdqu XMMWORD[(32-128)+rdi],xmm9
5424 vpaddd xmm15,xmm15,xmm5
5425 vmovdqu XMMWORD[(64-128)+rdi],xmm10
5426 vmovdqu XMMWORD[(96-128)+rdi],xmm11
5427 vmovdqu XMMWORD[(128-128)+rdi],xmm12
5428 vmovdqu XMMWORD[(160-128)+rdi],xmm13
5429 vmovdqu XMMWORD[(192-128)+rdi],xmm14
5430 vmovdqu XMMWORD[(224-128)+rdi],xmm15
5431
5432 vmovdqu XMMWORD[rbx],xmm7
5433 vmovdqu xmm6,XMMWORD[$L$pbswap]
5434 dec edx
5435 jnz NEAR $L$oop_avx
5436
5437 mov edx,DWORD[280+rsp]
5438 lea rdi,[16+rdi]
5439 lea rsi,[64+rsi]
5440 dec edx
5441 jnz NEAR $L$oop_grande_avx
5442
5443$L$done_avx:
5444 mov rax,QWORD[272+rsp]
5445 vzeroupper
5446 movaps xmm6,XMMWORD[((-184))+rax]
5447 movaps xmm7,XMMWORD[((-168))+rax]
5448 movaps xmm8,XMMWORD[((-152))+rax]
5449 movaps xmm9,XMMWORD[((-136))+rax]
5450 movaps xmm10,XMMWORD[((-120))+rax]
5451 movaps xmm11,XMMWORD[((-104))+rax]
5452 movaps xmm12,XMMWORD[((-88))+rax]
5453 movaps xmm13,XMMWORD[((-72))+rax]
5454 movaps xmm14,XMMWORD[((-56))+rax]
5455 movaps xmm15,XMMWORD[((-40))+rax]
5456 mov rbp,QWORD[((-16))+rax]
5457 mov rbx,QWORD[((-8))+rax]
5458 lea rsp,[rax]
5459$L$epilogue_avx:
5460 mov rdi,QWORD[8+rsp] ;WIN64 epilogue
5461 mov rsi,QWORD[16+rsp]
5462 DB 0F3h,0C3h ;repret
5463$L$SEH_end_sha256_multi_block_avx:
5464
5465ALIGN 32
5466sha256_multi_block_avx2:
5467 mov QWORD[8+rsp],rdi ;WIN64 prologue
5468 mov QWORD[16+rsp],rsi
5469 mov rax,rsp
5470$L$SEH_begin_sha256_multi_block_avx2:
5471 mov rdi,rcx
5472 mov rsi,rdx
5473 mov rdx,r8
5474
5475
5476_avx2_shortcut:
5477 mov rax,rsp
5478 push rbx
5479 push rbp
5480 push r12
5481 push r13
5482 push r14
5483 push r15
5484 lea rsp,[((-168))+rsp]
5485 movaps XMMWORD[rsp],xmm6
5486 movaps XMMWORD[16+rsp],xmm7
5487 movaps XMMWORD[32+rsp],xmm8
5488 movaps XMMWORD[48+rsp],xmm9
5489 movaps XMMWORD[64+rsp],xmm10
5490 movaps XMMWORD[80+rsp],xmm11
5491 movaps XMMWORD[(-120)+rax],xmm12
5492 movaps XMMWORD[(-104)+rax],xmm13
5493 movaps XMMWORD[(-88)+rax],xmm14
5494 movaps XMMWORD[(-72)+rax],xmm15
5495 sub rsp,576
5496 and rsp,-256
5497 mov QWORD[544+rsp],rax
5498$L$body_avx2:
5499 lea rbp,[((K256+128))]
5500 lea rdi,[128+rdi]
5501
5502$L$oop_grande_avx2:
5503 mov DWORD[552+rsp],edx
5504 xor edx,edx
5505 lea rbx,[512+rsp]
5506 mov r12,QWORD[rsi]
5507 mov ecx,DWORD[8+rsi]
5508 cmp ecx,edx
5509 cmovg edx,ecx
5510 test ecx,ecx
5511 mov DWORD[rbx],ecx
5512 cmovle r12,rbp
5513 mov r13,QWORD[16+rsi]
5514 mov ecx,DWORD[24+rsi]
5515 cmp ecx,edx
5516 cmovg edx,ecx
5517 test ecx,ecx
5518 mov DWORD[4+rbx],ecx
5519 cmovle r13,rbp
5520 mov r14,QWORD[32+rsi]
5521 mov ecx,DWORD[40+rsi]
5522 cmp ecx,edx
5523 cmovg edx,ecx
5524 test ecx,ecx
5525 mov DWORD[8+rbx],ecx
5526 cmovle r14,rbp
5527 mov r15,QWORD[48+rsi]
5528 mov ecx,DWORD[56+rsi]
5529 cmp ecx,edx
5530 cmovg edx,ecx
5531 test ecx,ecx
5532 mov DWORD[12+rbx],ecx
5533 cmovle r15,rbp
5534 mov r8,QWORD[64+rsi]
5535 mov ecx,DWORD[72+rsi]
5536 cmp ecx,edx
5537 cmovg edx,ecx
5538 test ecx,ecx
5539 mov DWORD[16+rbx],ecx
5540 cmovle r8,rbp
5541 mov r9,QWORD[80+rsi]
5542 mov ecx,DWORD[88+rsi]
5543 cmp ecx,edx
5544 cmovg edx,ecx
5545 test ecx,ecx
5546 mov DWORD[20+rbx],ecx
5547 cmovle r9,rbp
5548 mov r10,QWORD[96+rsi]
5549 mov ecx,DWORD[104+rsi]
5550 cmp ecx,edx
5551 cmovg edx,ecx
5552 test ecx,ecx
5553 mov DWORD[24+rbx],ecx
5554 cmovle r10,rbp
5555 mov r11,QWORD[112+rsi]
5556 mov ecx,DWORD[120+rsi]
5557 cmp ecx,edx
5558 cmovg edx,ecx
5559 test ecx,ecx
5560 mov DWORD[28+rbx],ecx
5561 cmovle r11,rbp
5562 vmovdqu ymm8,YMMWORD[((0-128))+rdi]
5563 lea rax,[128+rsp]
5564 vmovdqu ymm9,YMMWORD[((32-128))+rdi]
5565 lea rbx,[((256+128))+rsp]
5566 vmovdqu ymm10,YMMWORD[((64-128))+rdi]
5567 vmovdqu ymm11,YMMWORD[((96-128))+rdi]
5568 vmovdqu ymm12,YMMWORD[((128-128))+rdi]
5569 vmovdqu ymm13,YMMWORD[((160-128))+rdi]
5570 vmovdqu ymm14,YMMWORD[((192-128))+rdi]
5571 vmovdqu ymm15,YMMWORD[((224-128))+rdi]
5572 vmovdqu ymm6,YMMWORD[$L$pbswap]
5573 jmp NEAR $L$oop_avx2
5574
5575ALIGN 32
5576$L$oop_avx2:
5577 vpxor ymm4,ymm10,ymm9
5578 vmovd xmm5,DWORD[r12]
5579 vmovd xmm0,DWORD[r8]
5580 vmovd xmm1,DWORD[r13]
5581 vmovd xmm2,DWORD[r9]
5582 vpinsrd xmm5,xmm5,DWORD[r14],1
5583 vpinsrd xmm0,xmm0,DWORD[r10],1
5584 vpinsrd xmm1,xmm1,DWORD[r15],1
5585 vpunpckldq ymm5,ymm5,ymm1
5586 vpinsrd xmm2,xmm2,DWORD[r11],1
5587 vpunpckldq ymm0,ymm0,ymm2
5588 vinserti128 ymm5,ymm5,xmm0,1
5589 vpshufb ymm5,ymm5,ymm6
5590 vpsrld ymm7,ymm12,6
5591 vpslld ymm2,ymm12,26
5592 vmovdqu YMMWORD[(0-128)+rax],ymm5
5593 vpaddd ymm5,ymm5,ymm15
5594
5595 vpsrld ymm1,ymm12,11
5596 vpxor ymm7,ymm7,ymm2
5597 vpslld ymm2,ymm12,21
5598 vpaddd ymm5,ymm5,YMMWORD[((-128))+rbp]
5599 vpxor ymm7,ymm7,ymm1
5600
5601 vpsrld ymm1,ymm12,25
5602 vpxor ymm7,ymm7,ymm2
5603
5604 vpslld ymm2,ymm12,7
5605 vpandn ymm0,ymm12,ymm14
5606 vpand ymm3,ymm12,ymm13
5607
5608 vpxor ymm7,ymm7,ymm1
5609
5610 vpsrld ymm15,ymm8,2
5611 vpxor ymm7,ymm7,ymm2
5612
5613 vpslld ymm1,ymm8,30
5614 vpxor ymm0,ymm0,ymm3
5615 vpxor ymm3,ymm9,ymm8
5616
5617 vpxor ymm15,ymm15,ymm1
5618 vpaddd ymm5,ymm5,ymm7
5619
5620 vpsrld ymm1,ymm8,13
5621
5622 vpslld ymm2,ymm8,19
5623 vpaddd ymm5,ymm5,ymm0
5624 vpand ymm4,ymm4,ymm3
5625
5626 vpxor ymm7,ymm15,ymm1
5627
5628 vpsrld ymm1,ymm8,22
5629 vpxor ymm7,ymm7,ymm2
5630
5631 vpslld ymm2,ymm8,10
5632 vpxor ymm15,ymm9,ymm4
5633 vpaddd ymm11,ymm11,ymm5
5634
5635 vpxor ymm7,ymm7,ymm1
5636 vpxor ymm7,ymm7,ymm2
5637
5638 vpaddd ymm15,ymm15,ymm5
5639 vpaddd ymm15,ymm15,ymm7
5640 vmovd xmm5,DWORD[4+r12]
5641 vmovd xmm0,DWORD[4+r8]
5642 vmovd xmm1,DWORD[4+r13]
5643 vmovd xmm2,DWORD[4+r9]
5644 vpinsrd xmm5,xmm5,DWORD[4+r14],1
5645 vpinsrd xmm0,xmm0,DWORD[4+r10],1
5646 vpinsrd xmm1,xmm1,DWORD[4+r15],1
5647 vpunpckldq ymm5,ymm5,ymm1
5648 vpinsrd xmm2,xmm2,DWORD[4+r11],1
5649 vpunpckldq ymm0,ymm0,ymm2
5650 vinserti128 ymm5,ymm5,xmm0,1
5651 vpshufb ymm5,ymm5,ymm6
5652 vpsrld ymm7,ymm11,6
5653 vpslld ymm2,ymm11,26
5654 vmovdqu YMMWORD[(32-128)+rax],ymm5
5655 vpaddd ymm5,ymm5,ymm14
5656
5657 vpsrld ymm1,ymm11,11
5658 vpxor ymm7,ymm7,ymm2
5659 vpslld ymm2,ymm11,21
5660 vpaddd ymm5,ymm5,YMMWORD[((-96))+rbp]
5661 vpxor ymm7,ymm7,ymm1
5662
5663 vpsrld ymm1,ymm11,25
5664 vpxor ymm7,ymm7,ymm2
5665
5666 vpslld ymm2,ymm11,7
5667 vpandn ymm0,ymm11,ymm13
5668 vpand ymm4,ymm11,ymm12
5669
5670 vpxor ymm7,ymm7,ymm1
5671
5672 vpsrld ymm14,ymm15,2
5673 vpxor ymm7,ymm7,ymm2
5674
5675 vpslld ymm1,ymm15,30
5676 vpxor ymm0,ymm0,ymm4
5677 vpxor ymm4,ymm8,ymm15
5678
5679 vpxor ymm14,ymm14,ymm1
5680 vpaddd ymm5,ymm5,ymm7
5681
5682 vpsrld ymm1,ymm15,13
5683
5684 vpslld ymm2,ymm15,19
5685 vpaddd ymm5,ymm5,ymm0
5686 vpand ymm3,ymm3,ymm4
5687
5688 vpxor ymm7,ymm14,ymm1
5689
5690 vpsrld ymm1,ymm15,22
5691 vpxor ymm7,ymm7,ymm2
5692
5693 vpslld ymm2,ymm15,10
5694 vpxor ymm14,ymm8,ymm3
5695 vpaddd ymm10,ymm10,ymm5
5696
5697 vpxor ymm7,ymm7,ymm1
5698 vpxor ymm7,ymm7,ymm2
5699
5700 vpaddd ymm14,ymm14,ymm5
5701 vpaddd ymm14,ymm14,ymm7
5702 vmovd xmm5,DWORD[8+r12]
5703 vmovd xmm0,DWORD[8+r8]
5704 vmovd xmm1,DWORD[8+r13]
5705 vmovd xmm2,DWORD[8+r9]
5706 vpinsrd xmm5,xmm5,DWORD[8+r14],1
5707 vpinsrd xmm0,xmm0,DWORD[8+r10],1
5708 vpinsrd xmm1,xmm1,DWORD[8+r15],1
5709 vpunpckldq ymm5,ymm5,ymm1
5710 vpinsrd xmm2,xmm2,DWORD[8+r11],1
5711 vpunpckldq ymm0,ymm0,ymm2
5712 vinserti128 ymm5,ymm5,xmm0,1
5713 vpshufb ymm5,ymm5,ymm6
5714 vpsrld ymm7,ymm10,6
5715 vpslld ymm2,ymm10,26
5716 vmovdqu YMMWORD[(64-128)+rax],ymm5
5717 vpaddd ymm5,ymm5,ymm13
5718
5719 vpsrld ymm1,ymm10,11
5720 vpxor ymm7,ymm7,ymm2
5721 vpslld ymm2,ymm10,21
5722 vpaddd ymm5,ymm5,YMMWORD[((-64))+rbp]
5723 vpxor ymm7,ymm7,ymm1
5724
5725 vpsrld ymm1,ymm10,25
5726 vpxor ymm7,ymm7,ymm2
5727
5728 vpslld ymm2,ymm10,7
5729 vpandn ymm0,ymm10,ymm12
5730 vpand ymm3,ymm10,ymm11
5731
5732 vpxor ymm7,ymm7,ymm1
5733
5734 vpsrld ymm13,ymm14,2
5735 vpxor ymm7,ymm7,ymm2
5736
5737 vpslld ymm1,ymm14,30
5738 vpxor ymm0,ymm0,ymm3
5739 vpxor ymm3,ymm15,ymm14
5740
5741 vpxor ymm13,ymm13,ymm1
5742 vpaddd ymm5,ymm5,ymm7
5743
5744 vpsrld ymm1,ymm14,13
5745
5746 vpslld ymm2,ymm14,19
5747 vpaddd ymm5,ymm5,ymm0
5748 vpand ymm4,ymm4,ymm3
5749
5750 vpxor ymm7,ymm13,ymm1
5751
5752 vpsrld ymm1,ymm14,22
5753 vpxor ymm7,ymm7,ymm2
5754
5755 vpslld ymm2,ymm14,10
5756 vpxor ymm13,ymm15,ymm4
5757 vpaddd ymm9,ymm9,ymm5
5758
5759 vpxor ymm7,ymm7,ymm1
5760 vpxor ymm7,ymm7,ymm2
5761
5762 vpaddd ymm13,ymm13,ymm5
5763 vpaddd ymm13,ymm13,ymm7
5764 vmovd xmm5,DWORD[12+r12]
5765 vmovd xmm0,DWORD[12+r8]
5766 vmovd xmm1,DWORD[12+r13]
5767 vmovd xmm2,DWORD[12+r9]
5768 vpinsrd xmm5,xmm5,DWORD[12+r14],1
5769 vpinsrd xmm0,xmm0,DWORD[12+r10],1
5770 vpinsrd xmm1,xmm1,DWORD[12+r15],1
5771 vpunpckldq ymm5,ymm5,ymm1
5772 vpinsrd xmm2,xmm2,DWORD[12+r11],1
5773 vpunpckldq ymm0,ymm0,ymm2
5774 vinserti128 ymm5,ymm5,xmm0,1
5775 vpshufb ymm5,ymm5,ymm6
5776 vpsrld ymm7,ymm9,6
5777 vpslld ymm2,ymm9,26
5778 vmovdqu YMMWORD[(96-128)+rax],ymm5
5779 vpaddd ymm5,ymm5,ymm12
5780
5781 vpsrld ymm1,ymm9,11
5782 vpxor ymm7,ymm7,ymm2
5783 vpslld ymm2,ymm9,21
5784 vpaddd ymm5,ymm5,YMMWORD[((-32))+rbp]
5785 vpxor ymm7,ymm7,ymm1
5786
5787 vpsrld ymm1,ymm9,25
5788 vpxor ymm7,ymm7,ymm2
5789
5790 vpslld ymm2,ymm9,7
5791 vpandn ymm0,ymm9,ymm11
5792 vpand ymm4,ymm9,ymm10
5793
5794 vpxor ymm7,ymm7,ymm1
5795
5796 vpsrld ymm12,ymm13,2
5797 vpxor ymm7,ymm7,ymm2
5798
5799 vpslld ymm1,ymm13,30
5800 vpxor ymm0,ymm0,ymm4
5801 vpxor ymm4,ymm14,ymm13
5802
5803 vpxor ymm12,ymm12,ymm1
5804 vpaddd ymm5,ymm5,ymm7
5805
5806 vpsrld ymm1,ymm13,13
5807
5808 vpslld ymm2,ymm13,19
5809 vpaddd ymm5,ymm5,ymm0
5810 vpand ymm3,ymm3,ymm4
5811
5812 vpxor ymm7,ymm12,ymm1
5813
5814 vpsrld ymm1,ymm13,22
5815 vpxor ymm7,ymm7,ymm2
5816
5817 vpslld ymm2,ymm13,10
5818 vpxor ymm12,ymm14,ymm3
5819 vpaddd ymm8,ymm8,ymm5
5820
5821 vpxor ymm7,ymm7,ymm1
5822 vpxor ymm7,ymm7,ymm2
5823
5824 vpaddd ymm12,ymm12,ymm5
5825 vpaddd ymm12,ymm12,ymm7
5826 vmovd xmm5,DWORD[16+r12]
5827 vmovd xmm0,DWORD[16+r8]
5828 vmovd xmm1,DWORD[16+r13]
5829 vmovd xmm2,DWORD[16+r9]
5830 vpinsrd xmm5,xmm5,DWORD[16+r14],1
5831 vpinsrd xmm0,xmm0,DWORD[16+r10],1
5832 vpinsrd xmm1,xmm1,DWORD[16+r15],1
5833 vpunpckldq ymm5,ymm5,ymm1
5834 vpinsrd xmm2,xmm2,DWORD[16+r11],1
5835 vpunpckldq ymm0,ymm0,ymm2
5836 vinserti128 ymm5,ymm5,xmm0,1
5837 vpshufb ymm5,ymm5,ymm6
5838 vpsrld ymm7,ymm8,6
5839 vpslld ymm2,ymm8,26
5840 vmovdqu YMMWORD[(128-128)+rax],ymm5
5841 vpaddd ymm5,ymm5,ymm11
5842
5843 vpsrld ymm1,ymm8,11
5844 vpxor ymm7,ymm7,ymm2
5845 vpslld ymm2,ymm8,21
5846 vpaddd ymm5,ymm5,YMMWORD[rbp]
5847 vpxor ymm7,ymm7,ymm1
5848
5849 vpsrld ymm1,ymm8,25
5850 vpxor ymm7,ymm7,ymm2
5851
5852 vpslld ymm2,ymm8,7
5853 vpandn ymm0,ymm8,ymm10
5854 vpand ymm3,ymm8,ymm9
5855
5856 vpxor ymm7,ymm7,ymm1
5857
5858 vpsrld ymm11,ymm12,2
5859 vpxor ymm7,ymm7,ymm2
5860
5861 vpslld ymm1,ymm12,30
5862 vpxor ymm0,ymm0,ymm3
5863 vpxor ymm3,ymm13,ymm12
5864
5865 vpxor ymm11,ymm11,ymm1
5866 vpaddd ymm5,ymm5,ymm7
5867
5868 vpsrld ymm1,ymm12,13
5869
5870 vpslld ymm2,ymm12,19
5871 vpaddd ymm5,ymm5,ymm0
5872 vpand ymm4,ymm4,ymm3
5873
5874 vpxor ymm7,ymm11,ymm1
5875
5876 vpsrld ymm1,ymm12,22
5877 vpxor ymm7,ymm7,ymm2
5878
5879 vpslld ymm2,ymm12,10
5880 vpxor ymm11,ymm13,ymm4
5881 vpaddd ymm15,ymm15,ymm5
5882
5883 vpxor ymm7,ymm7,ymm1
5884 vpxor ymm7,ymm7,ymm2
5885
5886 vpaddd ymm11,ymm11,ymm5
5887 vpaddd ymm11,ymm11,ymm7
5888 vmovd xmm5,DWORD[20+r12]
5889 vmovd xmm0,DWORD[20+r8]
5890 vmovd xmm1,DWORD[20+r13]
5891 vmovd xmm2,DWORD[20+r9]
5892 vpinsrd xmm5,xmm5,DWORD[20+r14],1
5893 vpinsrd xmm0,xmm0,DWORD[20+r10],1
5894 vpinsrd xmm1,xmm1,DWORD[20+r15],1
5895 vpunpckldq ymm5,ymm5,ymm1
5896 vpinsrd xmm2,xmm2,DWORD[20+r11],1
5897 vpunpckldq ymm0,ymm0,ymm2
5898 vinserti128 ymm5,ymm5,xmm0,1
5899 vpshufb ymm5,ymm5,ymm6
5900 vpsrld ymm7,ymm15,6
5901 vpslld ymm2,ymm15,26
5902 vmovdqu YMMWORD[(160-128)+rax],ymm5
5903 vpaddd ymm5,ymm5,ymm10
5904
5905 vpsrld ymm1,ymm15,11
5906 vpxor ymm7,ymm7,ymm2
5907 vpslld ymm2,ymm15,21
5908 vpaddd ymm5,ymm5,YMMWORD[32+rbp]
5909 vpxor ymm7,ymm7,ymm1
5910
5911 vpsrld ymm1,ymm15,25
5912 vpxor ymm7,ymm7,ymm2
5913
5914 vpslld ymm2,ymm15,7
5915 vpandn ymm0,ymm15,ymm9
5916 vpand ymm4,ymm15,ymm8
5917
5918 vpxor ymm7,ymm7,ymm1
5919
5920 vpsrld ymm10,ymm11,2
5921 vpxor ymm7,ymm7,ymm2
5922
5923 vpslld ymm1,ymm11,30
5924 vpxor ymm0,ymm0,ymm4
5925 vpxor ymm4,ymm12,ymm11
5926
5927 vpxor ymm10,ymm10,ymm1
5928 vpaddd ymm5,ymm5,ymm7
5929
5930 vpsrld ymm1,ymm11,13
5931
5932 vpslld ymm2,ymm11,19
5933 vpaddd ymm5,ymm5,ymm0
5934 vpand ymm3,ymm3,ymm4
5935
5936 vpxor ymm7,ymm10,ymm1
5937
5938 vpsrld ymm1,ymm11,22
5939 vpxor ymm7,ymm7,ymm2
5940
5941 vpslld ymm2,ymm11,10
5942 vpxor ymm10,ymm12,ymm3
5943 vpaddd ymm14,ymm14,ymm5
5944
5945 vpxor ymm7,ymm7,ymm1
5946 vpxor ymm7,ymm7,ymm2
5947
5948 vpaddd ymm10,ymm10,ymm5
5949 vpaddd ymm10,ymm10,ymm7
5950 vmovd xmm5,DWORD[24+r12]
5951 vmovd xmm0,DWORD[24+r8]
5952 vmovd xmm1,DWORD[24+r13]
5953 vmovd xmm2,DWORD[24+r9]
5954 vpinsrd xmm5,xmm5,DWORD[24+r14],1
5955 vpinsrd xmm0,xmm0,DWORD[24+r10],1
5956 vpinsrd xmm1,xmm1,DWORD[24+r15],1
5957 vpunpckldq ymm5,ymm5,ymm1
5958 vpinsrd xmm2,xmm2,DWORD[24+r11],1
5959 vpunpckldq ymm0,ymm0,ymm2
5960 vinserti128 ymm5,ymm5,xmm0,1
5961 vpshufb ymm5,ymm5,ymm6
5962 vpsrld ymm7,ymm14,6
5963 vpslld ymm2,ymm14,26
5964 vmovdqu YMMWORD[(192-128)+rax],ymm5
5965 vpaddd ymm5,ymm5,ymm9
5966
5967 vpsrld ymm1,ymm14,11
5968 vpxor ymm7,ymm7,ymm2
5969 vpslld ymm2,ymm14,21
5970 vpaddd ymm5,ymm5,YMMWORD[64+rbp]
5971 vpxor ymm7,ymm7,ymm1
5972
5973 vpsrld ymm1,ymm14,25
5974 vpxor ymm7,ymm7,ymm2
5975
5976 vpslld ymm2,ymm14,7
5977 vpandn ymm0,ymm14,ymm8
5978 vpand ymm3,ymm14,ymm15
5979
5980 vpxor ymm7,ymm7,ymm1
5981
5982 vpsrld ymm9,ymm10,2
5983 vpxor ymm7,ymm7,ymm2
5984
5985 vpslld ymm1,ymm10,30
5986 vpxor ymm0,ymm0,ymm3
5987 vpxor ymm3,ymm11,ymm10
5988
5989 vpxor ymm9,ymm9,ymm1
5990 vpaddd ymm5,ymm5,ymm7
5991
5992 vpsrld ymm1,ymm10,13
5993
5994 vpslld ymm2,ymm10,19
5995 vpaddd ymm5,ymm5,ymm0
5996 vpand ymm4,ymm4,ymm3
5997
5998 vpxor ymm7,ymm9,ymm1
5999
6000 vpsrld ymm1,ymm10,22
6001 vpxor ymm7,ymm7,ymm2
6002
6003 vpslld ymm2,ymm10,10
6004 vpxor ymm9,ymm11,ymm4
6005 vpaddd ymm13,ymm13,ymm5
6006
6007 vpxor ymm7,ymm7,ymm1
6008 vpxor ymm7,ymm7,ymm2
6009
6010 vpaddd ymm9,ymm9,ymm5
6011 vpaddd ymm9,ymm9,ymm7
6012 vmovd xmm5,DWORD[28+r12]
6013 vmovd xmm0,DWORD[28+r8]
6014 vmovd xmm1,DWORD[28+r13]
6015 vmovd xmm2,DWORD[28+r9]
6016 vpinsrd xmm5,xmm5,DWORD[28+r14],1
6017 vpinsrd xmm0,xmm0,DWORD[28+r10],1
6018 vpinsrd xmm1,xmm1,DWORD[28+r15],1
6019 vpunpckldq ymm5,ymm5,ymm1
6020 vpinsrd xmm2,xmm2,DWORD[28+r11],1
6021 vpunpckldq ymm0,ymm0,ymm2
6022 vinserti128 ymm5,ymm5,xmm0,1
6023 vpshufb ymm5,ymm5,ymm6
6024 vpsrld ymm7,ymm13,6
6025 vpslld ymm2,ymm13,26
6026 vmovdqu YMMWORD[(224-128)+rax],ymm5
6027 vpaddd ymm5,ymm5,ymm8
6028
6029 vpsrld ymm1,ymm13,11
6030 vpxor ymm7,ymm7,ymm2
6031 vpslld ymm2,ymm13,21
6032 vpaddd ymm5,ymm5,YMMWORD[96+rbp]
6033 vpxor ymm7,ymm7,ymm1
6034
6035 vpsrld ymm1,ymm13,25
6036 vpxor ymm7,ymm7,ymm2
6037
6038 vpslld ymm2,ymm13,7
6039 vpandn ymm0,ymm13,ymm15
6040 vpand ymm4,ymm13,ymm14
6041
6042 vpxor ymm7,ymm7,ymm1
6043
6044 vpsrld ymm8,ymm9,2
6045 vpxor ymm7,ymm7,ymm2
6046
6047 vpslld ymm1,ymm9,30
6048 vpxor ymm0,ymm0,ymm4
6049 vpxor ymm4,ymm10,ymm9
6050
6051 vpxor ymm8,ymm8,ymm1
6052 vpaddd ymm5,ymm5,ymm7
6053
6054 vpsrld ymm1,ymm9,13
6055
6056 vpslld ymm2,ymm9,19
6057 vpaddd ymm5,ymm5,ymm0
6058 vpand ymm3,ymm3,ymm4
6059
6060 vpxor ymm7,ymm8,ymm1
6061
6062 vpsrld ymm1,ymm9,22
6063 vpxor ymm7,ymm7,ymm2
6064
6065 vpslld ymm2,ymm9,10
6066 vpxor ymm8,ymm10,ymm3
6067 vpaddd ymm12,ymm12,ymm5
6068
6069 vpxor ymm7,ymm7,ymm1
6070 vpxor ymm7,ymm7,ymm2
6071
6072 vpaddd ymm8,ymm8,ymm5
6073 vpaddd ymm8,ymm8,ymm7
6074 add rbp,256
6075 vmovd xmm5,DWORD[32+r12]
6076 vmovd xmm0,DWORD[32+r8]
6077 vmovd xmm1,DWORD[32+r13]
6078 vmovd xmm2,DWORD[32+r9]
6079 vpinsrd xmm5,xmm5,DWORD[32+r14],1
6080 vpinsrd xmm0,xmm0,DWORD[32+r10],1
6081 vpinsrd xmm1,xmm1,DWORD[32+r15],1
6082 vpunpckldq ymm5,ymm5,ymm1
6083 vpinsrd xmm2,xmm2,DWORD[32+r11],1
6084 vpunpckldq ymm0,ymm0,ymm2
6085 vinserti128 ymm5,ymm5,xmm0,1
6086 vpshufb ymm5,ymm5,ymm6
6087 vpsrld ymm7,ymm12,6
6088 vpslld ymm2,ymm12,26
6089 vmovdqu YMMWORD[(256-256-128)+rbx],ymm5
6090 vpaddd ymm5,ymm5,ymm15
6091
6092 vpsrld ymm1,ymm12,11
6093 vpxor ymm7,ymm7,ymm2
6094 vpslld ymm2,ymm12,21
6095 vpaddd ymm5,ymm5,YMMWORD[((-128))+rbp]
6096 vpxor ymm7,ymm7,ymm1
6097
6098 vpsrld ymm1,ymm12,25
6099 vpxor ymm7,ymm7,ymm2
6100
6101 vpslld ymm2,ymm12,7
6102 vpandn ymm0,ymm12,ymm14
6103 vpand ymm3,ymm12,ymm13
6104
6105 vpxor ymm7,ymm7,ymm1
6106
6107 vpsrld ymm15,ymm8,2
6108 vpxor ymm7,ymm7,ymm2
6109
6110 vpslld ymm1,ymm8,30
6111 vpxor ymm0,ymm0,ymm3
6112 vpxor ymm3,ymm9,ymm8
6113
6114 vpxor ymm15,ymm15,ymm1
6115 vpaddd ymm5,ymm5,ymm7
6116
6117 vpsrld ymm1,ymm8,13
6118
6119 vpslld ymm2,ymm8,19
6120 vpaddd ymm5,ymm5,ymm0
6121 vpand ymm4,ymm4,ymm3
6122
6123 vpxor ymm7,ymm15,ymm1
6124
6125 vpsrld ymm1,ymm8,22
6126 vpxor ymm7,ymm7,ymm2
6127
6128 vpslld ymm2,ymm8,10
6129 vpxor ymm15,ymm9,ymm4
6130 vpaddd ymm11,ymm11,ymm5
6131
6132 vpxor ymm7,ymm7,ymm1
6133 vpxor ymm7,ymm7,ymm2
6134
6135 vpaddd ymm15,ymm15,ymm5
6136 vpaddd ymm15,ymm15,ymm7
6137 vmovd xmm5,DWORD[36+r12]
6138 vmovd xmm0,DWORD[36+r8]
6139 vmovd xmm1,DWORD[36+r13]
6140 vmovd xmm2,DWORD[36+r9]
6141 vpinsrd xmm5,xmm5,DWORD[36+r14],1
6142 vpinsrd xmm0,xmm0,DWORD[36+r10],1
6143 vpinsrd xmm1,xmm1,DWORD[36+r15],1
6144 vpunpckldq ymm5,ymm5,ymm1
6145 vpinsrd xmm2,xmm2,DWORD[36+r11],1
6146 vpunpckldq ymm0,ymm0,ymm2
6147 vinserti128 ymm5,ymm5,xmm0,1
6148 vpshufb ymm5,ymm5,ymm6
6149 vpsrld ymm7,ymm11,6
6150 vpslld ymm2,ymm11,26
6151 vmovdqu YMMWORD[(288-256-128)+rbx],ymm5
6152 vpaddd ymm5,ymm5,ymm14
6153
6154 vpsrld ymm1,ymm11,11
6155 vpxor ymm7,ymm7,ymm2
6156 vpslld ymm2,ymm11,21
6157 vpaddd ymm5,ymm5,YMMWORD[((-96))+rbp]
6158 vpxor ymm7,ymm7,ymm1
6159
6160 vpsrld ymm1,ymm11,25
6161 vpxor ymm7,ymm7,ymm2
6162
6163 vpslld ymm2,ymm11,7
6164 vpandn ymm0,ymm11,ymm13
6165 vpand ymm4,ymm11,ymm12
6166
6167 vpxor ymm7,ymm7,ymm1
6168
6169 vpsrld ymm14,ymm15,2
6170 vpxor ymm7,ymm7,ymm2
6171
6172 vpslld ymm1,ymm15,30
6173 vpxor ymm0,ymm0,ymm4
6174 vpxor ymm4,ymm8,ymm15
6175
6176 vpxor ymm14,ymm14,ymm1
6177 vpaddd ymm5,ymm5,ymm7
6178
6179 vpsrld ymm1,ymm15,13
6180
6181 vpslld ymm2,ymm15,19
6182 vpaddd ymm5,ymm5,ymm0
6183 vpand ymm3,ymm3,ymm4
6184
6185 vpxor ymm7,ymm14,ymm1
6186
6187 vpsrld ymm1,ymm15,22
6188 vpxor ymm7,ymm7,ymm2
6189
6190 vpslld ymm2,ymm15,10
6191 vpxor ymm14,ymm8,ymm3
6192 vpaddd ymm10,ymm10,ymm5
6193
6194 vpxor ymm7,ymm7,ymm1
6195 vpxor ymm7,ymm7,ymm2
6196
6197 vpaddd ymm14,ymm14,ymm5
6198 vpaddd ymm14,ymm14,ymm7
6199 vmovd xmm5,DWORD[40+r12]
6200 vmovd xmm0,DWORD[40+r8]
6201 vmovd xmm1,DWORD[40+r13]
6202 vmovd xmm2,DWORD[40+r9]
6203 vpinsrd xmm5,xmm5,DWORD[40+r14],1
6204 vpinsrd xmm0,xmm0,DWORD[40+r10],1
6205 vpinsrd xmm1,xmm1,DWORD[40+r15],1
6206 vpunpckldq ymm5,ymm5,ymm1
6207 vpinsrd xmm2,xmm2,DWORD[40+r11],1
6208 vpunpckldq ymm0,ymm0,ymm2
6209 vinserti128 ymm5,ymm5,xmm0,1
6210 vpshufb ymm5,ymm5,ymm6
6211 vpsrld ymm7,ymm10,6
6212 vpslld ymm2,ymm10,26
6213 vmovdqu YMMWORD[(320-256-128)+rbx],ymm5
6214 vpaddd ymm5,ymm5,ymm13
6215
6216 vpsrld ymm1,ymm10,11
6217 vpxor ymm7,ymm7,ymm2
6218 vpslld ymm2,ymm10,21
6219 vpaddd ymm5,ymm5,YMMWORD[((-64))+rbp]
6220 vpxor ymm7,ymm7,ymm1
6221
6222 vpsrld ymm1,ymm10,25
6223 vpxor ymm7,ymm7,ymm2
6224
6225 vpslld ymm2,ymm10,7
6226 vpandn ymm0,ymm10,ymm12
6227 vpand ymm3,ymm10,ymm11
6228
6229 vpxor ymm7,ymm7,ymm1
6230
6231 vpsrld ymm13,ymm14,2
6232 vpxor ymm7,ymm7,ymm2
6233
6234 vpslld ymm1,ymm14,30
6235 vpxor ymm0,ymm0,ymm3
6236 vpxor ymm3,ymm15,ymm14
6237
6238 vpxor ymm13,ymm13,ymm1
6239 vpaddd ymm5,ymm5,ymm7
6240
6241 vpsrld ymm1,ymm14,13
6242
6243 vpslld ymm2,ymm14,19
6244 vpaddd ymm5,ymm5,ymm0
6245 vpand ymm4,ymm4,ymm3
6246
6247 vpxor ymm7,ymm13,ymm1
6248
6249 vpsrld ymm1,ymm14,22
6250 vpxor ymm7,ymm7,ymm2
6251
6252 vpslld ymm2,ymm14,10
6253 vpxor ymm13,ymm15,ymm4
6254 vpaddd ymm9,ymm9,ymm5
6255
6256 vpxor ymm7,ymm7,ymm1
6257 vpxor ymm7,ymm7,ymm2
6258
6259 vpaddd ymm13,ymm13,ymm5
6260 vpaddd ymm13,ymm13,ymm7
6261 vmovd xmm5,DWORD[44+r12]
6262 vmovd xmm0,DWORD[44+r8]
6263 vmovd xmm1,DWORD[44+r13]
6264 vmovd xmm2,DWORD[44+r9]
6265 vpinsrd xmm5,xmm5,DWORD[44+r14],1
6266 vpinsrd xmm0,xmm0,DWORD[44+r10],1
6267 vpinsrd xmm1,xmm1,DWORD[44+r15],1
6268 vpunpckldq ymm5,ymm5,ymm1
6269 vpinsrd xmm2,xmm2,DWORD[44+r11],1
6270 vpunpckldq ymm0,ymm0,ymm2
6271 vinserti128 ymm5,ymm5,xmm0,1
6272 vpshufb ymm5,ymm5,ymm6
6273 vpsrld ymm7,ymm9,6
6274 vpslld ymm2,ymm9,26
6275 vmovdqu YMMWORD[(352-256-128)+rbx],ymm5
6276 vpaddd ymm5,ymm5,ymm12
6277
6278 vpsrld ymm1,ymm9,11
6279 vpxor ymm7,ymm7,ymm2
6280 vpslld ymm2,ymm9,21
6281 vpaddd ymm5,ymm5,YMMWORD[((-32))+rbp]
6282 vpxor ymm7,ymm7,ymm1
6283
6284 vpsrld ymm1,ymm9,25
6285 vpxor ymm7,ymm7,ymm2
6286
6287 vpslld ymm2,ymm9,7
6288 vpandn ymm0,ymm9,ymm11
6289 vpand ymm4,ymm9,ymm10
6290
6291 vpxor ymm7,ymm7,ymm1
6292
6293 vpsrld ymm12,ymm13,2
6294 vpxor ymm7,ymm7,ymm2
6295
6296 vpslld ymm1,ymm13,30
6297 vpxor ymm0,ymm0,ymm4
6298 vpxor ymm4,ymm14,ymm13
6299
6300 vpxor ymm12,ymm12,ymm1
6301 vpaddd ymm5,ymm5,ymm7
6302
6303 vpsrld ymm1,ymm13,13
6304
6305 vpslld ymm2,ymm13,19
6306 vpaddd ymm5,ymm5,ymm0
6307 vpand ymm3,ymm3,ymm4
6308
6309 vpxor ymm7,ymm12,ymm1
6310
6311 vpsrld ymm1,ymm13,22
6312 vpxor ymm7,ymm7,ymm2
6313
6314 vpslld ymm2,ymm13,10
6315 vpxor ymm12,ymm14,ymm3
6316 vpaddd ymm8,ymm8,ymm5
6317
6318 vpxor ymm7,ymm7,ymm1
6319 vpxor ymm7,ymm7,ymm2
6320
6321 vpaddd ymm12,ymm12,ymm5
6322 vpaddd ymm12,ymm12,ymm7
6323 vmovd xmm5,DWORD[48+r12]
6324 vmovd xmm0,DWORD[48+r8]
6325 vmovd xmm1,DWORD[48+r13]
6326 vmovd xmm2,DWORD[48+r9]
6327 vpinsrd xmm5,xmm5,DWORD[48+r14],1
6328 vpinsrd xmm0,xmm0,DWORD[48+r10],1
6329 vpinsrd xmm1,xmm1,DWORD[48+r15],1
6330 vpunpckldq ymm5,ymm5,ymm1
6331 vpinsrd xmm2,xmm2,DWORD[48+r11],1
6332 vpunpckldq ymm0,ymm0,ymm2
6333 vinserti128 ymm5,ymm5,xmm0,1
6334 vpshufb ymm5,ymm5,ymm6
6335 vpsrld ymm7,ymm8,6
6336 vpslld ymm2,ymm8,26
6337 vmovdqu YMMWORD[(384-256-128)+rbx],ymm5
6338 vpaddd ymm5,ymm5,ymm11
6339
6340 vpsrld ymm1,ymm8,11
6341 vpxor ymm7,ymm7,ymm2
6342 vpslld ymm2,ymm8,21
6343 vpaddd ymm5,ymm5,YMMWORD[rbp]
6344 vpxor ymm7,ymm7,ymm1
6345
6346 vpsrld ymm1,ymm8,25
6347 vpxor ymm7,ymm7,ymm2
6348
6349 vpslld ymm2,ymm8,7
6350 vpandn ymm0,ymm8,ymm10
6351 vpand ymm3,ymm8,ymm9
6352
6353 vpxor ymm7,ymm7,ymm1
6354
6355 vpsrld ymm11,ymm12,2
6356 vpxor ymm7,ymm7,ymm2
6357
6358 vpslld ymm1,ymm12,30
6359 vpxor ymm0,ymm0,ymm3
6360 vpxor ymm3,ymm13,ymm12
6361
6362 vpxor ymm11,ymm11,ymm1
6363 vpaddd ymm5,ymm5,ymm7
6364
6365 vpsrld ymm1,ymm12,13
6366
6367 vpslld ymm2,ymm12,19
6368 vpaddd ymm5,ymm5,ymm0
6369 vpand ymm4,ymm4,ymm3
6370
6371 vpxor ymm7,ymm11,ymm1
6372
6373 vpsrld ymm1,ymm12,22
6374 vpxor ymm7,ymm7,ymm2
6375
6376 vpslld ymm2,ymm12,10
6377 vpxor ymm11,ymm13,ymm4
6378 vpaddd ymm15,ymm15,ymm5
6379
6380 vpxor ymm7,ymm7,ymm1
6381 vpxor ymm7,ymm7,ymm2
6382
6383 vpaddd ymm11,ymm11,ymm5
6384 vpaddd ymm11,ymm11,ymm7
6385 vmovd xmm5,DWORD[52+r12]
6386 vmovd xmm0,DWORD[52+r8]
6387 vmovd xmm1,DWORD[52+r13]
6388 vmovd xmm2,DWORD[52+r9]
6389 vpinsrd xmm5,xmm5,DWORD[52+r14],1
6390 vpinsrd xmm0,xmm0,DWORD[52+r10],1
6391 vpinsrd xmm1,xmm1,DWORD[52+r15],1
6392 vpunpckldq ymm5,ymm5,ymm1
6393 vpinsrd xmm2,xmm2,DWORD[52+r11],1
6394 vpunpckldq ymm0,ymm0,ymm2
6395 vinserti128 ymm5,ymm5,xmm0,1
6396 vpshufb ymm5,ymm5,ymm6
6397 vpsrld ymm7,ymm15,6
6398 vpslld ymm2,ymm15,26
6399 vmovdqu YMMWORD[(416-256-128)+rbx],ymm5
6400 vpaddd ymm5,ymm5,ymm10
6401
6402 vpsrld ymm1,ymm15,11
6403 vpxor ymm7,ymm7,ymm2
6404 vpslld ymm2,ymm15,21
6405 vpaddd ymm5,ymm5,YMMWORD[32+rbp]
6406 vpxor ymm7,ymm7,ymm1
6407
6408 vpsrld ymm1,ymm15,25
6409 vpxor ymm7,ymm7,ymm2
6410
6411 vpslld ymm2,ymm15,7
6412 vpandn ymm0,ymm15,ymm9
6413 vpand ymm4,ymm15,ymm8
6414
6415 vpxor ymm7,ymm7,ymm1
6416
6417 vpsrld ymm10,ymm11,2
6418 vpxor ymm7,ymm7,ymm2
6419
6420 vpslld ymm1,ymm11,30
6421 vpxor ymm0,ymm0,ymm4
6422 vpxor ymm4,ymm12,ymm11
6423
6424 vpxor ymm10,ymm10,ymm1
6425 vpaddd ymm5,ymm5,ymm7
6426
6427 vpsrld ymm1,ymm11,13
6428
6429 vpslld ymm2,ymm11,19
6430 vpaddd ymm5,ymm5,ymm0
6431 vpand ymm3,ymm3,ymm4
6432
6433 vpxor ymm7,ymm10,ymm1
6434
6435 vpsrld ymm1,ymm11,22
6436 vpxor ymm7,ymm7,ymm2
6437
6438 vpslld ymm2,ymm11,10
6439 vpxor ymm10,ymm12,ymm3
6440 vpaddd ymm14,ymm14,ymm5
6441
6442 vpxor ymm7,ymm7,ymm1
6443 vpxor ymm7,ymm7,ymm2
6444
6445 vpaddd ymm10,ymm10,ymm5
6446 vpaddd ymm10,ymm10,ymm7
6447 vmovd xmm5,DWORD[56+r12]
6448 vmovd xmm0,DWORD[56+r8]
6449 vmovd xmm1,DWORD[56+r13]
6450 vmovd xmm2,DWORD[56+r9]
6451 vpinsrd xmm5,xmm5,DWORD[56+r14],1
6452 vpinsrd xmm0,xmm0,DWORD[56+r10],1
6453 vpinsrd xmm1,xmm1,DWORD[56+r15],1
6454 vpunpckldq ymm5,ymm5,ymm1
6455 vpinsrd xmm2,xmm2,DWORD[56+r11],1
6456 vpunpckldq ymm0,ymm0,ymm2
6457 vinserti128 ymm5,ymm5,xmm0,1
6458 vpshufb ymm5,ymm5,ymm6
6459 vpsrld ymm7,ymm14,6
6460 vpslld ymm2,ymm14,26
6461 vmovdqu YMMWORD[(448-256-128)+rbx],ymm5
6462 vpaddd ymm5,ymm5,ymm9
6463
6464 vpsrld ymm1,ymm14,11
6465 vpxor ymm7,ymm7,ymm2
6466 vpslld ymm2,ymm14,21
6467 vpaddd ymm5,ymm5,YMMWORD[64+rbp]
6468 vpxor ymm7,ymm7,ymm1
6469
6470 vpsrld ymm1,ymm14,25
6471 vpxor ymm7,ymm7,ymm2
6472
6473 vpslld ymm2,ymm14,7
6474 vpandn ymm0,ymm14,ymm8
6475 vpand ymm3,ymm14,ymm15
6476
6477 vpxor ymm7,ymm7,ymm1
6478
6479 vpsrld ymm9,ymm10,2
6480 vpxor ymm7,ymm7,ymm2
6481
6482 vpslld ymm1,ymm10,30
6483 vpxor ymm0,ymm0,ymm3
6484 vpxor ymm3,ymm11,ymm10
6485
6486 vpxor ymm9,ymm9,ymm1
6487 vpaddd ymm5,ymm5,ymm7
6488
6489 vpsrld ymm1,ymm10,13
6490
6491 vpslld ymm2,ymm10,19
6492 vpaddd ymm5,ymm5,ymm0
6493 vpand ymm4,ymm4,ymm3
6494
6495 vpxor ymm7,ymm9,ymm1
6496
6497 vpsrld ymm1,ymm10,22
6498 vpxor ymm7,ymm7,ymm2
6499
6500 vpslld ymm2,ymm10,10
6501 vpxor ymm9,ymm11,ymm4
6502 vpaddd ymm13,ymm13,ymm5
6503
6504 vpxor ymm7,ymm7,ymm1
6505 vpxor ymm7,ymm7,ymm2
6506
6507 vpaddd ymm9,ymm9,ymm5
6508 vpaddd ymm9,ymm9,ymm7
6509 vmovd xmm5,DWORD[60+r12]
6510 lea r12,[64+r12]
6511 vmovd xmm0,DWORD[60+r8]
6512 lea r8,[64+r8]
6513 vmovd xmm1,DWORD[60+r13]
6514 lea r13,[64+r13]
6515 vmovd xmm2,DWORD[60+r9]
6516 lea r9,[64+r9]
6517 vpinsrd xmm5,xmm5,DWORD[60+r14],1
6518 lea r14,[64+r14]
6519 vpinsrd xmm0,xmm0,DWORD[60+r10],1
6520 lea r10,[64+r10]
6521 vpinsrd xmm1,xmm1,DWORD[60+r15],1
6522 lea r15,[64+r15]
6523 vpunpckldq ymm5,ymm5,ymm1
6524 vpinsrd xmm2,xmm2,DWORD[60+r11],1
6525 lea r11,[64+r11]
6526 vpunpckldq ymm0,ymm0,ymm2
6527 vinserti128 ymm5,ymm5,xmm0,1
6528 vpshufb ymm5,ymm5,ymm6
6529 vpsrld ymm7,ymm13,6
6530 vpslld ymm2,ymm13,26
6531 vmovdqu YMMWORD[(480-256-128)+rbx],ymm5
6532 vpaddd ymm5,ymm5,ymm8
6533
6534 vpsrld ymm1,ymm13,11
6535 vpxor ymm7,ymm7,ymm2
6536 vpslld ymm2,ymm13,21
6537 vpaddd ymm5,ymm5,YMMWORD[96+rbp]
6538 vpxor ymm7,ymm7,ymm1
6539
6540 vpsrld ymm1,ymm13,25
6541 vpxor ymm7,ymm7,ymm2
6542 prefetcht0 [63+r12]
6543 vpslld ymm2,ymm13,7
6544 vpandn ymm0,ymm13,ymm15
6545 vpand ymm4,ymm13,ymm14
6546 prefetcht0 [63+r13]
6547 vpxor ymm7,ymm7,ymm1
6548
6549 vpsrld ymm8,ymm9,2
6550 vpxor ymm7,ymm7,ymm2
6551 prefetcht0 [63+r14]
6552 vpslld ymm1,ymm9,30
6553 vpxor ymm0,ymm0,ymm4
6554 vpxor ymm4,ymm10,ymm9
6555 prefetcht0 [63+r15]
6556 vpxor ymm8,ymm8,ymm1
6557 vpaddd ymm5,ymm5,ymm7
6558
6559 vpsrld ymm1,ymm9,13
6560 prefetcht0 [63+r8]
6561 vpslld ymm2,ymm9,19
6562 vpaddd ymm5,ymm5,ymm0
6563 vpand ymm3,ymm3,ymm4
6564 prefetcht0 [63+r9]
6565 vpxor ymm7,ymm8,ymm1
6566
6567 vpsrld ymm1,ymm9,22
6568 vpxor ymm7,ymm7,ymm2
6569 prefetcht0 [63+r10]
6570 vpslld ymm2,ymm9,10
6571 vpxor ymm8,ymm10,ymm3
6572 vpaddd ymm12,ymm12,ymm5
6573 prefetcht0 [63+r11]
6574 vpxor ymm7,ymm7,ymm1
6575 vpxor ymm7,ymm7,ymm2
6576
6577 vpaddd ymm8,ymm8,ymm5
6578 vpaddd ymm8,ymm8,ymm7
6579 add rbp,256
6580 vmovdqu ymm5,YMMWORD[((0-128))+rax]
6581 mov ecx,3
6582 jmp NEAR $L$oop_16_xx_avx2
6583ALIGN 32
6584$L$oop_16_xx_avx2:
6585 vmovdqu ymm6,YMMWORD[((32-128))+rax]
6586 vpaddd ymm5,ymm5,YMMWORD[((288-256-128))+rbx]
6587
6588 vpsrld ymm7,ymm6,3
6589 vpsrld ymm1,ymm6,7
6590 vpslld ymm2,ymm6,25
6591 vpxor ymm7,ymm7,ymm1
6592 vpsrld ymm1,ymm6,18
6593 vpxor ymm7,ymm7,ymm2
6594 vpslld ymm2,ymm6,14
6595 vmovdqu ymm0,YMMWORD[((448-256-128))+rbx]
6596 vpsrld ymm3,ymm0,10
6597
6598 vpxor ymm7,ymm7,ymm1
6599 vpsrld ymm1,ymm0,17
6600 vpxor ymm7,ymm7,ymm2
6601 vpslld ymm2,ymm0,15
6602 vpaddd ymm5,ymm5,ymm7
6603 vpxor ymm7,ymm3,ymm1
6604 vpsrld ymm1,ymm0,19
6605 vpxor ymm7,ymm7,ymm2
6606 vpslld ymm2,ymm0,13
6607 vpxor ymm7,ymm7,ymm1
6608 vpxor ymm7,ymm7,ymm2
6609 vpaddd ymm5,ymm5,ymm7
6610 vpsrld ymm7,ymm12,6
6611 vpslld ymm2,ymm12,26
6612 vmovdqu YMMWORD[(0-128)+rax],ymm5
6613 vpaddd ymm5,ymm5,ymm15
6614
6615 vpsrld ymm1,ymm12,11
6616 vpxor ymm7,ymm7,ymm2
6617 vpslld ymm2,ymm12,21
6618 vpaddd ymm5,ymm5,YMMWORD[((-128))+rbp]
6619 vpxor ymm7,ymm7,ymm1
6620
6621 vpsrld ymm1,ymm12,25
6622 vpxor ymm7,ymm7,ymm2
6623
6624 vpslld ymm2,ymm12,7
6625 vpandn ymm0,ymm12,ymm14
6626 vpand ymm3,ymm12,ymm13
6627
6628 vpxor ymm7,ymm7,ymm1
6629
6630 vpsrld ymm15,ymm8,2
6631 vpxor ymm7,ymm7,ymm2
6632
6633 vpslld ymm1,ymm8,30
6634 vpxor ymm0,ymm0,ymm3
6635 vpxor ymm3,ymm9,ymm8
6636
6637 vpxor ymm15,ymm15,ymm1
6638 vpaddd ymm5,ymm5,ymm7
6639
6640 vpsrld ymm1,ymm8,13
6641
6642 vpslld ymm2,ymm8,19
6643 vpaddd ymm5,ymm5,ymm0
6644 vpand ymm4,ymm4,ymm3
6645
6646 vpxor ymm7,ymm15,ymm1
6647
6648 vpsrld ymm1,ymm8,22
6649 vpxor ymm7,ymm7,ymm2
6650
6651 vpslld ymm2,ymm8,10
6652 vpxor ymm15,ymm9,ymm4
6653 vpaddd ymm11,ymm11,ymm5
6654
6655 vpxor ymm7,ymm7,ymm1
6656 vpxor ymm7,ymm7,ymm2
6657
6658 vpaddd ymm15,ymm15,ymm5
6659 vpaddd ymm15,ymm15,ymm7
6660 vmovdqu ymm5,YMMWORD[((64-128))+rax]
6661 vpaddd ymm6,ymm6,YMMWORD[((320-256-128))+rbx]
6662
6663 vpsrld ymm7,ymm5,3
6664 vpsrld ymm1,ymm5,7
6665 vpslld ymm2,ymm5,25
6666 vpxor ymm7,ymm7,ymm1
6667 vpsrld ymm1,ymm5,18
6668 vpxor ymm7,ymm7,ymm2
6669 vpslld ymm2,ymm5,14
6670 vmovdqu ymm0,YMMWORD[((480-256-128))+rbx]
6671 vpsrld ymm4,ymm0,10
6672
6673 vpxor ymm7,ymm7,ymm1
6674 vpsrld ymm1,ymm0,17
6675 vpxor ymm7,ymm7,ymm2
6676 vpslld ymm2,ymm0,15
6677 vpaddd ymm6,ymm6,ymm7
6678 vpxor ymm7,ymm4,ymm1
6679 vpsrld ymm1,ymm0,19
6680 vpxor ymm7,ymm7,ymm2
6681 vpslld ymm2,ymm0,13
6682 vpxor ymm7,ymm7,ymm1
6683 vpxor ymm7,ymm7,ymm2
6684 vpaddd ymm6,ymm6,ymm7
6685 vpsrld ymm7,ymm11,6
6686 vpslld ymm2,ymm11,26
6687 vmovdqu YMMWORD[(32-128)+rax],ymm6
6688 vpaddd ymm6,ymm6,ymm14
6689
6690 vpsrld ymm1,ymm11,11
6691 vpxor ymm7,ymm7,ymm2
6692 vpslld ymm2,ymm11,21
6693 vpaddd ymm6,ymm6,YMMWORD[((-96))+rbp]
6694 vpxor ymm7,ymm7,ymm1
6695
6696 vpsrld ymm1,ymm11,25
6697 vpxor ymm7,ymm7,ymm2
6698
6699 vpslld ymm2,ymm11,7
6700 vpandn ymm0,ymm11,ymm13
6701 vpand ymm4,ymm11,ymm12
6702
6703 vpxor ymm7,ymm7,ymm1
6704
6705 vpsrld ymm14,ymm15,2
6706 vpxor ymm7,ymm7,ymm2
6707
6708 vpslld ymm1,ymm15,30
6709 vpxor ymm0,ymm0,ymm4
6710 vpxor ymm4,ymm8,ymm15
6711
6712 vpxor ymm14,ymm14,ymm1
6713 vpaddd ymm6,ymm6,ymm7
6714
6715 vpsrld ymm1,ymm15,13
6716
6717 vpslld ymm2,ymm15,19
6718 vpaddd ymm6,ymm6,ymm0
6719 vpand ymm3,ymm3,ymm4
6720
6721 vpxor ymm7,ymm14,ymm1
6722
6723 vpsrld ymm1,ymm15,22
6724 vpxor ymm7,ymm7,ymm2
6725
6726 vpslld ymm2,ymm15,10
6727 vpxor ymm14,ymm8,ymm3
6728 vpaddd ymm10,ymm10,ymm6
6729
6730 vpxor ymm7,ymm7,ymm1
6731 vpxor ymm7,ymm7,ymm2
6732
6733 vpaddd ymm14,ymm14,ymm6
6734 vpaddd ymm14,ymm14,ymm7
6735 vmovdqu ymm6,YMMWORD[((96-128))+rax]
6736 vpaddd ymm5,ymm5,YMMWORD[((352-256-128))+rbx]
6737
6738 vpsrld ymm7,ymm6,3
6739 vpsrld ymm1,ymm6,7
6740 vpslld ymm2,ymm6,25
6741 vpxor ymm7,ymm7,ymm1
6742 vpsrld ymm1,ymm6,18
6743 vpxor ymm7,ymm7,ymm2
6744 vpslld ymm2,ymm6,14
6745 vmovdqu ymm0,YMMWORD[((0-128))+rax]
6746 vpsrld ymm3,ymm0,10
6747
6748 vpxor ymm7,ymm7,ymm1
6749 vpsrld ymm1,ymm0,17
6750 vpxor ymm7,ymm7,ymm2
6751 vpslld ymm2,ymm0,15
6752 vpaddd ymm5,ymm5,ymm7
6753 vpxor ymm7,ymm3,ymm1
6754 vpsrld ymm1,ymm0,19
6755 vpxor ymm7,ymm7,ymm2
6756 vpslld ymm2,ymm0,13
6757 vpxor ymm7,ymm7,ymm1
6758 vpxor ymm7,ymm7,ymm2
6759 vpaddd ymm5,ymm5,ymm7
6760 vpsrld ymm7,ymm10,6
6761 vpslld ymm2,ymm10,26
6762 vmovdqu YMMWORD[(64-128)+rax],ymm5
6763 vpaddd ymm5,ymm5,ymm13
6764
6765 vpsrld ymm1,ymm10,11
6766 vpxor ymm7,ymm7,ymm2
6767 vpslld ymm2,ymm10,21
6768 vpaddd ymm5,ymm5,YMMWORD[((-64))+rbp]
6769 vpxor ymm7,ymm7,ymm1
6770
6771 vpsrld ymm1,ymm10,25
6772 vpxor ymm7,ymm7,ymm2
6773
6774 vpslld ymm2,ymm10,7
6775 vpandn ymm0,ymm10,ymm12
6776 vpand ymm3,ymm10,ymm11
6777
6778 vpxor ymm7,ymm7,ymm1
6779
6780 vpsrld ymm13,ymm14,2
6781 vpxor ymm7,ymm7,ymm2
6782
6783 vpslld ymm1,ymm14,30
6784 vpxor ymm0,ymm0,ymm3
6785 vpxor ymm3,ymm15,ymm14
6786
6787 vpxor ymm13,ymm13,ymm1
6788 vpaddd ymm5,ymm5,ymm7
6789
6790 vpsrld ymm1,ymm14,13
6791
6792 vpslld ymm2,ymm14,19
6793 vpaddd ymm5,ymm5,ymm0
6794 vpand ymm4,ymm4,ymm3
6795
6796 vpxor ymm7,ymm13,ymm1
6797
6798 vpsrld ymm1,ymm14,22
6799 vpxor ymm7,ymm7,ymm2
6800
6801 vpslld ymm2,ymm14,10
6802 vpxor ymm13,ymm15,ymm4
6803 vpaddd ymm9,ymm9,ymm5
6804
6805 vpxor ymm7,ymm7,ymm1
6806 vpxor ymm7,ymm7,ymm2
6807
6808 vpaddd ymm13,ymm13,ymm5
6809 vpaddd ymm13,ymm13,ymm7
6810 vmovdqu ymm5,YMMWORD[((128-128))+rax]
6811 vpaddd ymm6,ymm6,YMMWORD[((384-256-128))+rbx]
6812
6813 vpsrld ymm7,ymm5,3
6814 vpsrld ymm1,ymm5,7
6815 vpslld ymm2,ymm5,25
6816 vpxor ymm7,ymm7,ymm1
6817 vpsrld ymm1,ymm5,18
6818 vpxor ymm7,ymm7,ymm2
6819 vpslld ymm2,ymm5,14
6820 vmovdqu ymm0,YMMWORD[((32-128))+rax]
6821 vpsrld ymm4,ymm0,10
6822
6823 vpxor ymm7,ymm7,ymm1
6824 vpsrld ymm1,ymm0,17
6825 vpxor ymm7,ymm7,ymm2
6826 vpslld ymm2,ymm0,15
6827 vpaddd ymm6,ymm6,ymm7
6828 vpxor ymm7,ymm4,ymm1
6829 vpsrld ymm1,ymm0,19
6830 vpxor ymm7,ymm7,ymm2
6831 vpslld ymm2,ymm0,13
6832 vpxor ymm7,ymm7,ymm1
6833 vpxor ymm7,ymm7,ymm2
6834 vpaddd ymm6,ymm6,ymm7
6835 vpsrld ymm7,ymm9,6
6836 vpslld ymm2,ymm9,26
6837 vmovdqu YMMWORD[(96-128)+rax],ymm6
6838 vpaddd ymm6,ymm6,ymm12
6839
6840 vpsrld ymm1,ymm9,11
6841 vpxor ymm7,ymm7,ymm2
6842 vpslld ymm2,ymm9,21
6843 vpaddd ymm6,ymm6,YMMWORD[((-32))+rbp]
6844 vpxor ymm7,ymm7,ymm1
6845
6846 vpsrld ymm1,ymm9,25
6847 vpxor ymm7,ymm7,ymm2
6848
6849 vpslld ymm2,ymm9,7
6850 vpandn ymm0,ymm9,ymm11
6851 vpand ymm4,ymm9,ymm10
6852
6853 vpxor ymm7,ymm7,ymm1
6854
6855 vpsrld ymm12,ymm13,2
6856 vpxor ymm7,ymm7,ymm2
6857
6858 vpslld ymm1,ymm13,30
6859 vpxor ymm0,ymm0,ymm4
6860 vpxor ymm4,ymm14,ymm13
6861
6862 vpxor ymm12,ymm12,ymm1
6863 vpaddd ymm6,ymm6,ymm7
6864
6865 vpsrld ymm1,ymm13,13
6866
6867 vpslld ymm2,ymm13,19
6868 vpaddd ymm6,ymm6,ymm0
6869 vpand ymm3,ymm3,ymm4
6870
6871 vpxor ymm7,ymm12,ymm1
6872
6873 vpsrld ymm1,ymm13,22
6874 vpxor ymm7,ymm7,ymm2
6875
6876 vpslld ymm2,ymm13,10
6877 vpxor ymm12,ymm14,ymm3
6878 vpaddd ymm8,ymm8,ymm6
6879
6880 vpxor ymm7,ymm7,ymm1
6881 vpxor ymm7,ymm7,ymm2
6882
6883 vpaddd ymm12,ymm12,ymm6
6884 vpaddd ymm12,ymm12,ymm7
6885 vmovdqu ymm6,YMMWORD[((160-128))+rax]
6886 vpaddd ymm5,ymm5,YMMWORD[((416-256-128))+rbx]
6887
6888 vpsrld ymm7,ymm6,3
6889 vpsrld ymm1,ymm6,7
6890 vpslld ymm2,ymm6,25
6891 vpxor ymm7,ymm7,ymm1
6892 vpsrld ymm1,ymm6,18
6893 vpxor ymm7,ymm7,ymm2
6894 vpslld ymm2,ymm6,14
6895 vmovdqu ymm0,YMMWORD[((64-128))+rax]
6896 vpsrld ymm3,ymm0,10
6897
6898 vpxor ymm7,ymm7,ymm1
6899 vpsrld ymm1,ymm0,17
6900 vpxor ymm7,ymm7,ymm2
6901 vpslld ymm2,ymm0,15
6902 vpaddd ymm5,ymm5,ymm7
6903 vpxor ymm7,ymm3,ymm1
6904 vpsrld ymm1,ymm0,19
6905 vpxor ymm7,ymm7,ymm2
6906 vpslld ymm2,ymm0,13
6907 vpxor ymm7,ymm7,ymm1
6908 vpxor ymm7,ymm7,ymm2
6909 vpaddd ymm5,ymm5,ymm7
6910 vpsrld ymm7,ymm8,6
6911 vpslld ymm2,ymm8,26
6912 vmovdqu YMMWORD[(128-128)+rax],ymm5
6913 vpaddd ymm5,ymm5,ymm11
6914
6915 vpsrld ymm1,ymm8,11
6916 vpxor ymm7,ymm7,ymm2
6917 vpslld ymm2,ymm8,21
6918 vpaddd ymm5,ymm5,YMMWORD[rbp]
6919 vpxor ymm7,ymm7,ymm1
6920
6921 vpsrld ymm1,ymm8,25
6922 vpxor ymm7,ymm7,ymm2
6923
6924 vpslld ymm2,ymm8,7
6925 vpandn ymm0,ymm8,ymm10
6926 vpand ymm3,ymm8,ymm9
6927
6928 vpxor ymm7,ymm7,ymm1
6929
6930 vpsrld ymm11,ymm12,2
6931 vpxor ymm7,ymm7,ymm2
6932
6933 vpslld ymm1,ymm12,30
6934 vpxor ymm0,ymm0,ymm3
6935 vpxor ymm3,ymm13,ymm12
6936
6937 vpxor ymm11,ymm11,ymm1
6938 vpaddd ymm5,ymm5,ymm7
6939
6940 vpsrld ymm1,ymm12,13
6941
6942 vpslld ymm2,ymm12,19
6943 vpaddd ymm5,ymm5,ymm0
6944 vpand ymm4,ymm4,ymm3
6945
6946 vpxor ymm7,ymm11,ymm1
6947
6948 vpsrld ymm1,ymm12,22
6949 vpxor ymm7,ymm7,ymm2
6950
6951 vpslld ymm2,ymm12,10
6952 vpxor ymm11,ymm13,ymm4
6953 vpaddd ymm15,ymm15,ymm5
6954
6955 vpxor ymm7,ymm7,ymm1
6956 vpxor ymm7,ymm7,ymm2
6957
6958 vpaddd ymm11,ymm11,ymm5
6959 vpaddd ymm11,ymm11,ymm7
6960 vmovdqu ymm5,YMMWORD[((192-128))+rax]
6961 vpaddd ymm6,ymm6,YMMWORD[((448-256-128))+rbx]
6962
6963 vpsrld ymm7,ymm5,3
6964 vpsrld ymm1,ymm5,7
6965 vpslld ymm2,ymm5,25
6966 vpxor ymm7,ymm7,ymm1
6967 vpsrld ymm1,ymm5,18
6968 vpxor ymm7,ymm7,ymm2
6969 vpslld ymm2,ymm5,14
6970 vmovdqu ymm0,YMMWORD[((96-128))+rax]
6971 vpsrld ymm4,ymm0,10
6972
6973 vpxor ymm7,ymm7,ymm1
6974 vpsrld ymm1,ymm0,17
6975 vpxor ymm7,ymm7,ymm2
6976 vpslld ymm2,ymm0,15
6977 vpaddd ymm6,ymm6,ymm7
6978 vpxor ymm7,ymm4,ymm1
6979 vpsrld ymm1,ymm0,19
6980 vpxor ymm7,ymm7,ymm2
6981 vpslld ymm2,ymm0,13
6982 vpxor ymm7,ymm7,ymm1
6983 vpxor ymm7,ymm7,ymm2
6984 vpaddd ymm6,ymm6,ymm7
6985 vpsrld ymm7,ymm15,6
6986 vpslld ymm2,ymm15,26
6987 vmovdqu YMMWORD[(160-128)+rax],ymm6
6988 vpaddd ymm6,ymm6,ymm10
6989
6990 vpsrld ymm1,ymm15,11
6991 vpxor ymm7,ymm7,ymm2
6992 vpslld ymm2,ymm15,21
6993 vpaddd ymm6,ymm6,YMMWORD[32+rbp]
6994 vpxor ymm7,ymm7,ymm1
6995
6996 vpsrld ymm1,ymm15,25
6997 vpxor ymm7,ymm7,ymm2
6998
6999 vpslld ymm2,ymm15,7
7000 vpandn ymm0,ymm15,ymm9
7001 vpand ymm4,ymm15,ymm8
7002
7003 vpxor ymm7,ymm7,ymm1
7004
7005 vpsrld ymm10,ymm11,2
7006 vpxor ymm7,ymm7,ymm2
7007
7008 vpslld ymm1,ymm11,30
7009 vpxor ymm0,ymm0,ymm4
7010 vpxor ymm4,ymm12,ymm11
7011
7012 vpxor ymm10,ymm10,ymm1
7013 vpaddd ymm6,ymm6,ymm7
7014
7015 vpsrld ymm1,ymm11,13
7016
7017 vpslld ymm2,ymm11,19
7018 vpaddd ymm6,ymm6,ymm0
7019 vpand ymm3,ymm3,ymm4
7020
7021 vpxor ymm7,ymm10,ymm1
7022
7023 vpsrld ymm1,ymm11,22
7024 vpxor ymm7,ymm7,ymm2
7025
7026 vpslld ymm2,ymm11,10
7027 vpxor ymm10,ymm12,ymm3
7028 vpaddd ymm14,ymm14,ymm6
7029
7030 vpxor ymm7,ymm7,ymm1
7031 vpxor ymm7,ymm7,ymm2
7032
7033 vpaddd ymm10,ymm10,ymm6
7034 vpaddd ymm10,ymm10,ymm7
7035 vmovdqu ymm6,YMMWORD[((224-128))+rax]
7036 vpaddd ymm5,ymm5,YMMWORD[((480-256-128))+rbx]
7037
7038 vpsrld ymm7,ymm6,3
7039 vpsrld ymm1,ymm6,7
7040 vpslld ymm2,ymm6,25
7041 vpxor ymm7,ymm7,ymm1
7042 vpsrld ymm1,ymm6,18
7043 vpxor ymm7,ymm7,ymm2
7044 vpslld ymm2,ymm6,14
7045 vmovdqu ymm0,YMMWORD[((128-128))+rax]
7046 vpsrld ymm3,ymm0,10
7047
7048 vpxor ymm7,ymm7,ymm1
7049 vpsrld ymm1,ymm0,17
7050 vpxor ymm7,ymm7,ymm2
7051 vpslld ymm2,ymm0,15
7052 vpaddd ymm5,ymm5,ymm7
7053 vpxor ymm7,ymm3,ymm1
7054 vpsrld ymm1,ymm0,19
7055 vpxor ymm7,ymm7,ymm2
7056 vpslld ymm2,ymm0,13
7057 vpxor ymm7,ymm7,ymm1
7058 vpxor ymm7,ymm7,ymm2
7059 vpaddd ymm5,ymm5,ymm7
7060 vpsrld ymm7,ymm14,6
7061 vpslld ymm2,ymm14,26
7062 vmovdqu YMMWORD[(192-128)+rax],ymm5
7063 vpaddd ymm5,ymm5,ymm9
7064
7065 vpsrld ymm1,ymm14,11
7066 vpxor ymm7,ymm7,ymm2
7067 vpslld ymm2,ymm14,21
7068 vpaddd ymm5,ymm5,YMMWORD[64+rbp]
7069 vpxor ymm7,ymm7,ymm1
7070
7071 vpsrld ymm1,ymm14,25
7072 vpxor ymm7,ymm7,ymm2
7073
7074 vpslld ymm2,ymm14,7
7075 vpandn ymm0,ymm14,ymm8
7076 vpand ymm3,ymm14,ymm15
7077
7078 vpxor ymm7,ymm7,ymm1
7079
7080 vpsrld ymm9,ymm10,2
7081 vpxor ymm7,ymm7,ymm2
7082
7083 vpslld ymm1,ymm10,30
7084 vpxor ymm0,ymm0,ymm3
7085 vpxor ymm3,ymm11,ymm10
7086
7087 vpxor ymm9,ymm9,ymm1
7088 vpaddd ymm5,ymm5,ymm7
7089
7090 vpsrld ymm1,ymm10,13
7091
7092 vpslld ymm2,ymm10,19
7093 vpaddd ymm5,ymm5,ymm0
7094 vpand ymm4,ymm4,ymm3
7095
7096 vpxor ymm7,ymm9,ymm1
7097
7098 vpsrld ymm1,ymm10,22
7099 vpxor ymm7,ymm7,ymm2
7100
7101 vpslld ymm2,ymm10,10
7102 vpxor ymm9,ymm11,ymm4
7103 vpaddd ymm13,ymm13,ymm5
7104
7105 vpxor ymm7,ymm7,ymm1
7106 vpxor ymm7,ymm7,ymm2
7107
7108 vpaddd ymm9,ymm9,ymm5
7109 vpaddd ymm9,ymm9,ymm7
7110 vmovdqu ymm5,YMMWORD[((256-256-128))+rbx]
7111 vpaddd ymm6,ymm6,YMMWORD[((0-128))+rax]
7112
7113 vpsrld ymm7,ymm5,3
7114 vpsrld ymm1,ymm5,7
7115 vpslld ymm2,ymm5,25
7116 vpxor ymm7,ymm7,ymm1
7117 vpsrld ymm1,ymm5,18
7118 vpxor ymm7,ymm7,ymm2
7119 vpslld ymm2,ymm5,14
7120 vmovdqu ymm0,YMMWORD[((160-128))+rax]
7121 vpsrld ymm4,ymm0,10
7122
7123 vpxor ymm7,ymm7,ymm1
7124 vpsrld ymm1,ymm0,17
7125 vpxor ymm7,ymm7,ymm2
7126 vpslld ymm2,ymm0,15
7127 vpaddd ymm6,ymm6,ymm7
7128 vpxor ymm7,ymm4,ymm1
7129 vpsrld ymm1,ymm0,19
7130 vpxor ymm7,ymm7,ymm2
7131 vpslld ymm2,ymm0,13
7132 vpxor ymm7,ymm7,ymm1
7133 vpxor ymm7,ymm7,ymm2
7134 vpaddd ymm6,ymm6,ymm7
7135 vpsrld ymm7,ymm13,6
7136 vpslld ymm2,ymm13,26
7137 vmovdqu YMMWORD[(224-128)+rax],ymm6
7138 vpaddd ymm6,ymm6,ymm8
7139
7140 vpsrld ymm1,ymm13,11
7141 vpxor ymm7,ymm7,ymm2
7142 vpslld ymm2,ymm13,21
7143 vpaddd ymm6,ymm6,YMMWORD[96+rbp]
7144 vpxor ymm7,ymm7,ymm1
7145
7146 vpsrld ymm1,ymm13,25
7147 vpxor ymm7,ymm7,ymm2
7148
7149 vpslld ymm2,ymm13,7
7150 vpandn ymm0,ymm13,ymm15
7151 vpand ymm4,ymm13,ymm14
7152
7153 vpxor ymm7,ymm7,ymm1
7154
7155 vpsrld ymm8,ymm9,2
7156 vpxor ymm7,ymm7,ymm2
7157
7158 vpslld ymm1,ymm9,30
7159 vpxor ymm0,ymm0,ymm4
7160 vpxor ymm4,ymm10,ymm9
7161
7162 vpxor ymm8,ymm8,ymm1
7163 vpaddd ymm6,ymm6,ymm7
7164
7165 vpsrld ymm1,ymm9,13
7166
7167 vpslld ymm2,ymm9,19
7168 vpaddd ymm6,ymm6,ymm0
7169 vpand ymm3,ymm3,ymm4
7170
7171 vpxor ymm7,ymm8,ymm1
7172
7173 vpsrld ymm1,ymm9,22
7174 vpxor ymm7,ymm7,ymm2
7175
7176 vpslld ymm2,ymm9,10
7177 vpxor ymm8,ymm10,ymm3
7178 vpaddd ymm12,ymm12,ymm6
7179
7180 vpxor ymm7,ymm7,ymm1
7181 vpxor ymm7,ymm7,ymm2
7182
7183 vpaddd ymm8,ymm8,ymm6
7184 vpaddd ymm8,ymm8,ymm7
7185 add rbp,256
7186 vmovdqu ymm6,YMMWORD[((288-256-128))+rbx]
7187 vpaddd ymm5,ymm5,YMMWORD[((32-128))+rax]
7188
7189 vpsrld ymm7,ymm6,3
7190 vpsrld ymm1,ymm6,7
7191 vpslld ymm2,ymm6,25
7192 vpxor ymm7,ymm7,ymm1
7193 vpsrld ymm1,ymm6,18
7194 vpxor ymm7,ymm7,ymm2
7195 vpslld ymm2,ymm6,14
7196 vmovdqu ymm0,YMMWORD[((192-128))+rax]
7197 vpsrld ymm3,ymm0,10
7198
7199 vpxor ymm7,ymm7,ymm1
7200 vpsrld ymm1,ymm0,17
7201 vpxor ymm7,ymm7,ymm2
7202 vpslld ymm2,ymm0,15
7203 vpaddd ymm5,ymm5,ymm7
7204 vpxor ymm7,ymm3,ymm1
7205 vpsrld ymm1,ymm0,19
7206 vpxor ymm7,ymm7,ymm2
7207 vpslld ymm2,ymm0,13
7208 vpxor ymm7,ymm7,ymm1
7209 vpxor ymm7,ymm7,ymm2
7210 vpaddd ymm5,ymm5,ymm7
7211 vpsrld ymm7,ymm12,6
7212 vpslld ymm2,ymm12,26
7213 vmovdqu YMMWORD[(256-256-128)+rbx],ymm5
7214 vpaddd ymm5,ymm5,ymm15
7215
7216 vpsrld ymm1,ymm12,11
7217 vpxor ymm7,ymm7,ymm2
7218 vpslld ymm2,ymm12,21
7219 vpaddd ymm5,ymm5,YMMWORD[((-128))+rbp]
7220 vpxor ymm7,ymm7,ymm1
7221
7222 vpsrld ymm1,ymm12,25
7223 vpxor ymm7,ymm7,ymm2
7224
7225 vpslld ymm2,ymm12,7
7226 vpandn ymm0,ymm12,ymm14
7227 vpand ymm3,ymm12,ymm13
7228
7229 vpxor ymm7,ymm7,ymm1
7230
7231 vpsrld ymm15,ymm8,2
7232 vpxor ymm7,ymm7,ymm2
7233
7234 vpslld ymm1,ymm8,30
7235 vpxor ymm0,ymm0,ymm3
7236 vpxor ymm3,ymm9,ymm8
7237
7238 vpxor ymm15,ymm15,ymm1
7239 vpaddd ymm5,ymm5,ymm7
7240
7241 vpsrld ymm1,ymm8,13
7242
7243 vpslld ymm2,ymm8,19
7244 vpaddd ymm5,ymm5,ymm0
7245 vpand ymm4,ymm4,ymm3
7246
7247 vpxor ymm7,ymm15,ymm1
7248
7249 vpsrld ymm1,ymm8,22
7250 vpxor ymm7,ymm7,ymm2
7251
7252 vpslld ymm2,ymm8,10
7253 vpxor ymm15,ymm9,ymm4
7254 vpaddd ymm11,ymm11,ymm5
7255
7256 vpxor ymm7,ymm7,ymm1
7257 vpxor ymm7,ymm7,ymm2
7258
7259 vpaddd ymm15,ymm15,ymm5
7260 vpaddd ymm15,ymm15,ymm7
7261 vmovdqu ymm5,YMMWORD[((320-256-128))+rbx]
7262 vpaddd ymm6,ymm6,YMMWORD[((64-128))+rax]
7263
7264 vpsrld ymm7,ymm5,3
7265 vpsrld ymm1,ymm5,7
7266 vpslld ymm2,ymm5,25
7267 vpxor ymm7,ymm7,ymm1
7268 vpsrld ymm1,ymm5,18
7269 vpxor ymm7,ymm7,ymm2
7270 vpslld ymm2,ymm5,14
7271 vmovdqu ymm0,YMMWORD[((224-128))+rax]
7272 vpsrld ymm4,ymm0,10
7273
7274 vpxor ymm7,ymm7,ymm1
7275 vpsrld ymm1,ymm0,17
7276 vpxor ymm7,ymm7,ymm2
7277 vpslld ymm2,ymm0,15
7278 vpaddd ymm6,ymm6,ymm7
7279 vpxor ymm7,ymm4,ymm1
7280 vpsrld ymm1,ymm0,19
7281 vpxor ymm7,ymm7,ymm2
7282 vpslld ymm2,ymm0,13
7283 vpxor ymm7,ymm7,ymm1
7284 vpxor ymm7,ymm7,ymm2
7285 vpaddd ymm6,ymm6,ymm7
7286 vpsrld ymm7,ymm11,6
7287 vpslld ymm2,ymm11,26
7288 vmovdqu YMMWORD[(288-256-128)+rbx],ymm6
7289 vpaddd ymm6,ymm6,ymm14
7290
7291 vpsrld ymm1,ymm11,11
7292 vpxor ymm7,ymm7,ymm2
7293 vpslld ymm2,ymm11,21
7294 vpaddd ymm6,ymm6,YMMWORD[((-96))+rbp]
7295 vpxor ymm7,ymm7,ymm1
7296
7297 vpsrld ymm1,ymm11,25
7298 vpxor ymm7,ymm7,ymm2
7299
7300 vpslld ymm2,ymm11,7
7301 vpandn ymm0,ymm11,ymm13
7302 vpand ymm4,ymm11,ymm12
7303
7304 vpxor ymm7,ymm7,ymm1
7305
7306 vpsrld ymm14,ymm15,2
7307 vpxor ymm7,ymm7,ymm2
7308
7309 vpslld ymm1,ymm15,30
7310 vpxor ymm0,ymm0,ymm4
7311 vpxor ymm4,ymm8,ymm15
7312
7313 vpxor ymm14,ymm14,ymm1
7314 vpaddd ymm6,ymm6,ymm7
7315
7316 vpsrld ymm1,ymm15,13
7317
7318 vpslld ymm2,ymm15,19
7319 vpaddd ymm6,ymm6,ymm0
7320 vpand ymm3,ymm3,ymm4
7321
7322 vpxor ymm7,ymm14,ymm1
7323
7324 vpsrld ymm1,ymm15,22
7325 vpxor ymm7,ymm7,ymm2
7326
7327 vpslld ymm2,ymm15,10
7328 vpxor ymm14,ymm8,ymm3
7329 vpaddd ymm10,ymm10,ymm6
7330
7331 vpxor ymm7,ymm7,ymm1
7332 vpxor ymm7,ymm7,ymm2
7333
7334 vpaddd ymm14,ymm14,ymm6
7335 vpaddd ymm14,ymm14,ymm7
7336 vmovdqu ymm6,YMMWORD[((352-256-128))+rbx]
7337 vpaddd ymm5,ymm5,YMMWORD[((96-128))+rax]
7338
7339 vpsrld ymm7,ymm6,3
7340 vpsrld ymm1,ymm6,7
7341 vpslld ymm2,ymm6,25
7342 vpxor ymm7,ymm7,ymm1
7343 vpsrld ymm1,ymm6,18
7344 vpxor ymm7,ymm7,ymm2
7345 vpslld ymm2,ymm6,14
7346 vmovdqu ymm0,YMMWORD[((256-256-128))+rbx]
7347 vpsrld ymm3,ymm0,10
7348
7349 vpxor ymm7,ymm7,ymm1
7350 vpsrld ymm1,ymm0,17
7351 vpxor ymm7,ymm7,ymm2
7352 vpslld ymm2,ymm0,15
7353 vpaddd ymm5,ymm5,ymm7
7354 vpxor ymm7,ymm3,ymm1
7355 vpsrld ymm1,ymm0,19
7356 vpxor ymm7,ymm7,ymm2
7357 vpslld ymm2,ymm0,13
7358 vpxor ymm7,ymm7,ymm1
7359 vpxor ymm7,ymm7,ymm2
7360 vpaddd ymm5,ymm5,ymm7
7361 vpsrld ymm7,ymm10,6
7362 vpslld ymm2,ymm10,26
7363 vmovdqu YMMWORD[(320-256-128)+rbx],ymm5
7364 vpaddd ymm5,ymm5,ymm13
7365
7366 vpsrld ymm1,ymm10,11
7367 vpxor ymm7,ymm7,ymm2
7368 vpslld ymm2,ymm10,21
7369 vpaddd ymm5,ymm5,YMMWORD[((-64))+rbp]
7370 vpxor ymm7,ymm7,ymm1
7371
7372 vpsrld ymm1,ymm10,25
7373 vpxor ymm7,ymm7,ymm2
7374
7375 vpslld ymm2,ymm10,7
7376 vpandn ymm0,ymm10,ymm12
7377 vpand ymm3,ymm10,ymm11
7378
7379 vpxor ymm7,ymm7,ymm1
7380
7381 vpsrld ymm13,ymm14,2
7382 vpxor ymm7,ymm7,ymm2
7383
7384 vpslld ymm1,ymm14,30
7385 vpxor ymm0,ymm0,ymm3
7386 vpxor ymm3,ymm15,ymm14
7387
7388 vpxor ymm13,ymm13,ymm1
7389 vpaddd ymm5,ymm5,ymm7
7390
7391 vpsrld ymm1,ymm14,13
7392
7393 vpslld ymm2,ymm14,19
7394 vpaddd ymm5,ymm5,ymm0
7395 vpand ymm4,ymm4,ymm3
7396
7397 vpxor ymm7,ymm13,ymm1
7398
7399 vpsrld ymm1,ymm14,22
7400 vpxor ymm7,ymm7,ymm2
7401
7402 vpslld ymm2,ymm14,10
7403 vpxor ymm13,ymm15,ymm4
7404 vpaddd ymm9,ymm9,ymm5
7405
7406 vpxor ymm7,ymm7,ymm1
7407 vpxor ymm7,ymm7,ymm2
7408
7409 vpaddd ymm13,ymm13,ymm5
7410 vpaddd ymm13,ymm13,ymm7
7411 vmovdqu ymm5,YMMWORD[((384-256-128))+rbx]
7412 vpaddd ymm6,ymm6,YMMWORD[((128-128))+rax]
7413
7414 vpsrld ymm7,ymm5,3
7415 vpsrld ymm1,ymm5,7
7416 vpslld ymm2,ymm5,25
7417 vpxor ymm7,ymm7,ymm1
7418 vpsrld ymm1,ymm5,18
7419 vpxor ymm7,ymm7,ymm2
7420 vpslld ymm2,ymm5,14
7421 vmovdqu ymm0,YMMWORD[((288-256-128))+rbx]
7422 vpsrld ymm4,ymm0,10
7423
7424 vpxor ymm7,ymm7,ymm1
7425 vpsrld ymm1,ymm0,17
7426 vpxor ymm7,ymm7,ymm2
7427 vpslld ymm2,ymm0,15
7428 vpaddd ymm6,ymm6,ymm7
7429 vpxor ymm7,ymm4,ymm1
7430 vpsrld ymm1,ymm0,19
7431 vpxor ymm7,ymm7,ymm2
7432 vpslld ymm2,ymm0,13
7433 vpxor ymm7,ymm7,ymm1
7434 vpxor ymm7,ymm7,ymm2
7435 vpaddd ymm6,ymm6,ymm7
7436 vpsrld ymm7,ymm9,6
7437 vpslld ymm2,ymm9,26
7438 vmovdqu YMMWORD[(352-256-128)+rbx],ymm6
7439 vpaddd ymm6,ymm6,ymm12
7440
7441 vpsrld ymm1,ymm9,11
7442 vpxor ymm7,ymm7,ymm2
7443 vpslld ymm2,ymm9,21
7444 vpaddd ymm6,ymm6,YMMWORD[((-32))+rbp]
7445 vpxor ymm7,ymm7,ymm1
7446
7447 vpsrld ymm1,ymm9,25
7448 vpxor ymm7,ymm7,ymm2
7449
7450 vpslld ymm2,ymm9,7
7451 vpandn ymm0,ymm9,ymm11
7452 vpand ymm4,ymm9,ymm10
7453
7454 vpxor ymm7,ymm7,ymm1
7455
7456 vpsrld ymm12,ymm13,2
7457 vpxor ymm7,ymm7,ymm2
7458
7459 vpslld ymm1,ymm13,30
7460 vpxor ymm0,ymm0,ymm4
7461 vpxor ymm4,ymm14,ymm13
7462
7463 vpxor ymm12,ymm12,ymm1
7464 vpaddd ymm6,ymm6,ymm7
7465
7466 vpsrld ymm1,ymm13,13
7467
7468 vpslld ymm2,ymm13,19
7469 vpaddd ymm6,ymm6,ymm0
7470 vpand ymm3,ymm3,ymm4
7471
7472 vpxor ymm7,ymm12,ymm1
7473
7474 vpsrld ymm1,ymm13,22
7475 vpxor ymm7,ymm7,ymm2
7476
7477 vpslld ymm2,ymm13,10
7478 vpxor ymm12,ymm14,ymm3
7479 vpaddd ymm8,ymm8,ymm6
7480
7481 vpxor ymm7,ymm7,ymm1
7482 vpxor ymm7,ymm7,ymm2
7483
7484 vpaddd ymm12,ymm12,ymm6
7485 vpaddd ymm12,ymm12,ymm7
7486 vmovdqu ymm6,YMMWORD[((416-256-128))+rbx]
7487 vpaddd ymm5,ymm5,YMMWORD[((160-128))+rax]
7488
7489 vpsrld ymm7,ymm6,3
7490 vpsrld ymm1,ymm6,7
7491 vpslld ymm2,ymm6,25
7492 vpxor ymm7,ymm7,ymm1
7493 vpsrld ymm1,ymm6,18
7494 vpxor ymm7,ymm7,ymm2
7495 vpslld ymm2,ymm6,14
7496 vmovdqu ymm0,YMMWORD[((320-256-128))+rbx]
7497 vpsrld ymm3,ymm0,10
7498
7499 vpxor ymm7,ymm7,ymm1
7500 vpsrld ymm1,ymm0,17
7501 vpxor ymm7,ymm7,ymm2
7502 vpslld ymm2,ymm0,15
7503 vpaddd ymm5,ymm5,ymm7
7504 vpxor ymm7,ymm3,ymm1
7505 vpsrld ymm1,ymm0,19
7506 vpxor ymm7,ymm7,ymm2
7507 vpslld ymm2,ymm0,13
7508 vpxor ymm7,ymm7,ymm1
7509 vpxor ymm7,ymm7,ymm2
7510 vpaddd ymm5,ymm5,ymm7
7511 vpsrld ymm7,ymm8,6
7512 vpslld ymm2,ymm8,26
7513 vmovdqu YMMWORD[(384-256-128)+rbx],ymm5
7514 vpaddd ymm5,ymm5,ymm11
7515
7516 vpsrld ymm1,ymm8,11
7517 vpxor ymm7,ymm7,ymm2
7518 vpslld ymm2,ymm8,21
7519 vpaddd ymm5,ymm5,YMMWORD[rbp]
7520 vpxor ymm7,ymm7,ymm1
7521
7522 vpsrld ymm1,ymm8,25
7523 vpxor ymm7,ymm7,ymm2
7524
7525 vpslld ymm2,ymm8,7
7526 vpandn ymm0,ymm8,ymm10
7527 vpand ymm3,ymm8,ymm9
7528
7529 vpxor ymm7,ymm7,ymm1
7530
7531 vpsrld ymm11,ymm12,2
7532 vpxor ymm7,ymm7,ymm2
7533
7534 vpslld ymm1,ymm12,30
7535 vpxor ymm0,ymm0,ymm3
7536 vpxor ymm3,ymm13,ymm12
7537
7538 vpxor ymm11,ymm11,ymm1
7539 vpaddd ymm5,ymm5,ymm7
7540
7541 vpsrld ymm1,ymm12,13
7542
7543 vpslld ymm2,ymm12,19
7544 vpaddd ymm5,ymm5,ymm0
7545 vpand ymm4,ymm4,ymm3
7546
7547 vpxor ymm7,ymm11,ymm1
7548
7549 vpsrld ymm1,ymm12,22
7550 vpxor ymm7,ymm7,ymm2
7551
7552 vpslld ymm2,ymm12,10
7553 vpxor ymm11,ymm13,ymm4
7554 vpaddd ymm15,ymm15,ymm5
7555
7556 vpxor ymm7,ymm7,ymm1
7557 vpxor ymm7,ymm7,ymm2
7558
7559 vpaddd ymm11,ymm11,ymm5
7560 vpaddd ymm11,ymm11,ymm7
7561 vmovdqu ymm5,YMMWORD[((448-256-128))+rbx]
7562 vpaddd ymm6,ymm6,YMMWORD[((192-128))+rax]
7563
7564 vpsrld ymm7,ymm5,3
7565 vpsrld ymm1,ymm5,7
7566 vpslld ymm2,ymm5,25
7567 vpxor ymm7,ymm7,ymm1
7568 vpsrld ymm1,ymm5,18
7569 vpxor ymm7,ymm7,ymm2
7570 vpslld ymm2,ymm5,14
7571 vmovdqu ymm0,YMMWORD[((352-256-128))+rbx]
7572 vpsrld ymm4,ymm0,10
7573
7574 vpxor ymm7,ymm7,ymm1
7575 vpsrld ymm1,ymm0,17
7576 vpxor ymm7,ymm7,ymm2
7577 vpslld ymm2,ymm0,15
7578 vpaddd ymm6,ymm6,ymm7
7579 vpxor ymm7,ymm4,ymm1
7580 vpsrld ymm1,ymm0,19
7581 vpxor ymm7,ymm7,ymm2
7582 vpslld ymm2,ymm0,13
7583 vpxor ymm7,ymm7,ymm1
7584 vpxor ymm7,ymm7,ymm2
7585 vpaddd ymm6,ymm6,ymm7
7586 vpsrld ymm7,ymm15,6
7587 vpslld ymm2,ymm15,26
7588 vmovdqu YMMWORD[(416-256-128)+rbx],ymm6
7589 vpaddd ymm6,ymm6,ymm10
7590
7591 vpsrld ymm1,ymm15,11
7592 vpxor ymm7,ymm7,ymm2
7593 vpslld ymm2,ymm15,21
7594 vpaddd ymm6,ymm6,YMMWORD[32+rbp]
7595 vpxor ymm7,ymm7,ymm1
7596
7597 vpsrld ymm1,ymm15,25
7598 vpxor ymm7,ymm7,ymm2
7599
7600 vpslld ymm2,ymm15,7
7601 vpandn ymm0,ymm15,ymm9
7602 vpand ymm4,ymm15,ymm8
7603
7604 vpxor ymm7,ymm7,ymm1
7605
7606 vpsrld ymm10,ymm11,2
7607 vpxor ymm7,ymm7,ymm2
7608
7609 vpslld ymm1,ymm11,30
7610 vpxor ymm0,ymm0,ymm4
7611 vpxor ymm4,ymm12,ymm11
7612
7613 vpxor ymm10,ymm10,ymm1
7614 vpaddd ymm6,ymm6,ymm7
7615
7616 vpsrld ymm1,ymm11,13
7617
7618 vpslld ymm2,ymm11,19
7619 vpaddd ymm6,ymm6,ymm0
7620 vpand ymm3,ymm3,ymm4
7621
7622 vpxor ymm7,ymm10,ymm1
7623
7624 vpsrld ymm1,ymm11,22
7625 vpxor ymm7,ymm7,ymm2
7626
7627 vpslld ymm2,ymm11,10
7628 vpxor ymm10,ymm12,ymm3
7629 vpaddd ymm14,ymm14,ymm6
7630
7631 vpxor ymm7,ymm7,ymm1
7632 vpxor ymm7,ymm7,ymm2
7633
7634 vpaddd ymm10,ymm10,ymm6
7635 vpaddd ymm10,ymm10,ymm7
7636 vmovdqu ymm6,YMMWORD[((480-256-128))+rbx]
7637 vpaddd ymm5,ymm5,YMMWORD[((224-128))+rax]
7638
7639 vpsrld ymm7,ymm6,3
7640 vpsrld ymm1,ymm6,7
7641 vpslld ymm2,ymm6,25
7642 vpxor ymm7,ymm7,ymm1
7643 vpsrld ymm1,ymm6,18
7644 vpxor ymm7,ymm7,ymm2
7645 vpslld ymm2,ymm6,14
7646 vmovdqu ymm0,YMMWORD[((384-256-128))+rbx]
7647 vpsrld ymm3,ymm0,10
7648
7649 vpxor ymm7,ymm7,ymm1
7650 vpsrld ymm1,ymm0,17
7651 vpxor ymm7,ymm7,ymm2
7652 vpslld ymm2,ymm0,15
7653 vpaddd ymm5,ymm5,ymm7
7654 vpxor ymm7,ymm3,ymm1
7655 vpsrld ymm1,ymm0,19
7656 vpxor ymm7,ymm7,ymm2
7657 vpslld ymm2,ymm0,13
7658 vpxor ymm7,ymm7,ymm1
7659 vpxor ymm7,ymm7,ymm2
7660 vpaddd ymm5,ymm5,ymm7
7661 vpsrld ymm7,ymm14,6
7662 vpslld ymm2,ymm14,26
7663 vmovdqu YMMWORD[(448-256-128)+rbx],ymm5
7664 vpaddd ymm5,ymm5,ymm9
7665
7666 vpsrld ymm1,ymm14,11
7667 vpxor ymm7,ymm7,ymm2
7668 vpslld ymm2,ymm14,21
7669 vpaddd ymm5,ymm5,YMMWORD[64+rbp]
7670 vpxor ymm7,ymm7,ymm1
7671
7672 vpsrld ymm1,ymm14,25
7673 vpxor ymm7,ymm7,ymm2
7674
7675 vpslld ymm2,ymm14,7
7676 vpandn ymm0,ymm14,ymm8
7677 vpand ymm3,ymm14,ymm15
7678
7679 vpxor ymm7,ymm7,ymm1
7680
7681 vpsrld ymm9,ymm10,2
7682 vpxor ymm7,ymm7,ymm2
7683
7684 vpslld ymm1,ymm10,30
7685 vpxor ymm0,ymm0,ymm3
7686 vpxor ymm3,ymm11,ymm10
7687
7688 vpxor ymm9,ymm9,ymm1
7689 vpaddd ymm5,ymm5,ymm7
7690
7691 vpsrld ymm1,ymm10,13
7692
7693 vpslld ymm2,ymm10,19
7694 vpaddd ymm5,ymm5,ymm0
7695 vpand ymm4,ymm4,ymm3
7696
7697 vpxor ymm7,ymm9,ymm1
7698
7699 vpsrld ymm1,ymm10,22
7700 vpxor ymm7,ymm7,ymm2
7701
7702 vpslld ymm2,ymm10,10
7703 vpxor ymm9,ymm11,ymm4
7704 vpaddd ymm13,ymm13,ymm5
7705
7706 vpxor ymm7,ymm7,ymm1
7707 vpxor ymm7,ymm7,ymm2
7708
7709 vpaddd ymm9,ymm9,ymm5
7710 vpaddd ymm9,ymm9,ymm7
7711 vmovdqu ymm5,YMMWORD[((0-128))+rax]
7712 vpaddd ymm6,ymm6,YMMWORD[((256-256-128))+rbx]
7713
7714 vpsrld ymm7,ymm5,3
7715 vpsrld ymm1,ymm5,7
7716 vpslld ymm2,ymm5,25
7717 vpxor ymm7,ymm7,ymm1
7718 vpsrld ymm1,ymm5,18
7719 vpxor ymm7,ymm7,ymm2
7720 vpslld ymm2,ymm5,14
7721 vmovdqu ymm0,YMMWORD[((416-256-128))+rbx]
7722 vpsrld ymm4,ymm0,10
7723
7724 vpxor ymm7,ymm7,ymm1
7725 vpsrld ymm1,ymm0,17
7726 vpxor ymm7,ymm7,ymm2
7727 vpslld ymm2,ymm0,15
7728 vpaddd ymm6,ymm6,ymm7
7729 vpxor ymm7,ymm4,ymm1
7730 vpsrld ymm1,ymm0,19
7731 vpxor ymm7,ymm7,ymm2
7732 vpslld ymm2,ymm0,13
7733 vpxor ymm7,ymm7,ymm1
7734 vpxor ymm7,ymm7,ymm2
7735 vpaddd ymm6,ymm6,ymm7
7736 vpsrld ymm7,ymm13,6
7737 vpslld ymm2,ymm13,26
7738 vmovdqu YMMWORD[(480-256-128)+rbx],ymm6
7739 vpaddd ymm6,ymm6,ymm8
7740
7741 vpsrld ymm1,ymm13,11
7742 vpxor ymm7,ymm7,ymm2
7743 vpslld ymm2,ymm13,21
7744 vpaddd ymm6,ymm6,YMMWORD[96+rbp]
7745 vpxor ymm7,ymm7,ymm1
7746
7747 vpsrld ymm1,ymm13,25
7748 vpxor ymm7,ymm7,ymm2
7749
7750 vpslld ymm2,ymm13,7
7751 vpandn ymm0,ymm13,ymm15
7752 vpand ymm4,ymm13,ymm14
7753
7754 vpxor ymm7,ymm7,ymm1
7755
7756 vpsrld ymm8,ymm9,2
7757 vpxor ymm7,ymm7,ymm2
7758
7759 vpslld ymm1,ymm9,30
7760 vpxor ymm0,ymm0,ymm4
7761 vpxor ymm4,ymm10,ymm9
7762
7763 vpxor ymm8,ymm8,ymm1
7764 vpaddd ymm6,ymm6,ymm7
7765
7766 vpsrld ymm1,ymm9,13
7767
7768 vpslld ymm2,ymm9,19
7769 vpaddd ymm6,ymm6,ymm0
7770 vpand ymm3,ymm3,ymm4
7771
7772 vpxor ymm7,ymm8,ymm1
7773
7774 vpsrld ymm1,ymm9,22
7775 vpxor ymm7,ymm7,ymm2
7776
7777 vpslld ymm2,ymm9,10
7778 vpxor ymm8,ymm10,ymm3
7779 vpaddd ymm12,ymm12,ymm6
7780
7781 vpxor ymm7,ymm7,ymm1
7782 vpxor ymm7,ymm7,ymm2
7783
7784 vpaddd ymm8,ymm8,ymm6
7785 vpaddd ymm8,ymm8,ymm7
7786 add rbp,256
7787 dec ecx
7788 jnz NEAR $L$oop_16_xx_avx2
7789
7790 mov ecx,1
7791 lea rbx,[512+rsp]
7792 lea rbp,[((K256+128))]
7793 cmp ecx,DWORD[rbx]
7794 cmovge r12,rbp
7795 cmp ecx,DWORD[4+rbx]
7796 cmovge r13,rbp
7797 cmp ecx,DWORD[8+rbx]
7798 cmovge r14,rbp
7799 cmp ecx,DWORD[12+rbx]
7800 cmovge r15,rbp
7801 cmp ecx,DWORD[16+rbx]
7802 cmovge r8,rbp
7803 cmp ecx,DWORD[20+rbx]
7804 cmovge r9,rbp
7805 cmp ecx,DWORD[24+rbx]
7806 cmovge r10,rbp
7807 cmp ecx,DWORD[28+rbx]
7808 cmovge r11,rbp
7809 vmovdqa ymm7,YMMWORD[rbx]
7810 vpxor ymm0,ymm0,ymm0
7811 vmovdqa ymm6,ymm7
7812 vpcmpgtd ymm6,ymm6,ymm0
7813 vpaddd ymm7,ymm7,ymm6
7814
7815 vmovdqu ymm0,YMMWORD[((0-128))+rdi]
7816 vpand ymm8,ymm8,ymm6
7817 vmovdqu ymm1,YMMWORD[((32-128))+rdi]
7818 vpand ymm9,ymm9,ymm6
7819 vmovdqu ymm2,YMMWORD[((64-128))+rdi]
7820 vpand ymm10,ymm10,ymm6
7821 vmovdqu ymm5,YMMWORD[((96-128))+rdi]
7822 vpand ymm11,ymm11,ymm6
7823 vpaddd ymm8,ymm8,ymm0
7824 vmovdqu ymm0,YMMWORD[((128-128))+rdi]
7825 vpand ymm12,ymm12,ymm6
7826 vpaddd ymm9,ymm9,ymm1
7827 vmovdqu ymm1,YMMWORD[((160-128))+rdi]
7828 vpand ymm13,ymm13,ymm6
7829 vpaddd ymm10,ymm10,ymm2
7830 vmovdqu ymm2,YMMWORD[((192-128))+rdi]
7831 vpand ymm14,ymm14,ymm6
7832 vpaddd ymm11,ymm11,ymm5
7833 vmovdqu ymm5,YMMWORD[((224-128))+rdi]
7834 vpand ymm15,ymm15,ymm6
7835 vpaddd ymm12,ymm12,ymm0
7836 vpaddd ymm13,ymm13,ymm1
7837 vmovdqu YMMWORD[(0-128)+rdi],ymm8
7838 vpaddd ymm14,ymm14,ymm2
7839 vmovdqu YMMWORD[(32-128)+rdi],ymm9
7840 vpaddd ymm15,ymm15,ymm5
7841 vmovdqu YMMWORD[(64-128)+rdi],ymm10
7842 vmovdqu YMMWORD[(96-128)+rdi],ymm11
7843 vmovdqu YMMWORD[(128-128)+rdi],ymm12
7844 vmovdqu YMMWORD[(160-128)+rdi],ymm13
7845 vmovdqu YMMWORD[(192-128)+rdi],ymm14
7846 vmovdqu YMMWORD[(224-128)+rdi],ymm15
7847
7848 vmovdqu YMMWORD[rbx],ymm7
7849 lea rbx,[((256+128))+rsp]
7850 vmovdqu ymm6,YMMWORD[$L$pbswap]
7851 dec edx
7852 jnz NEAR $L$oop_avx2
7853
7854
7855
7856
7857
7858
7859
7860$L$done_avx2:
7861 mov rax,QWORD[544+rsp]
7862 vzeroupper
7863 movaps xmm6,XMMWORD[((-216))+rax]
7864 movaps xmm7,XMMWORD[((-200))+rax]
7865 movaps xmm8,XMMWORD[((-184))+rax]
7866 movaps xmm9,XMMWORD[((-168))+rax]
7867 movaps xmm10,XMMWORD[((-152))+rax]
7868 movaps xmm11,XMMWORD[((-136))+rax]
7869 movaps xmm12,XMMWORD[((-120))+rax]
7870 movaps xmm13,XMMWORD[((-104))+rax]
7871 movaps xmm14,XMMWORD[((-88))+rax]
7872 movaps xmm15,XMMWORD[((-72))+rax]
7873 mov r15,QWORD[((-48))+rax]
7874 mov r14,QWORD[((-40))+rax]
7875 mov r13,QWORD[((-32))+rax]
7876 mov r12,QWORD[((-24))+rax]
7877 mov rbp,QWORD[((-16))+rax]
7878 mov rbx,QWORD[((-8))+rax]
7879 lea rsp,[rax]
7880$L$epilogue_avx2:
7881 mov rdi,QWORD[8+rsp] ;WIN64 epilogue
7882 mov rsi,QWORD[16+rsp]
7883 DB 0F3h,0C3h ;repret
7884$L$SEH_end_sha256_multi_block_avx2:
7885ALIGN 256
7886K256:
7887 DD 1116352408,1116352408,1116352408,1116352408
7888 DD 1116352408,1116352408,1116352408,1116352408
7889 DD 1899447441,1899447441,1899447441,1899447441
7890 DD 1899447441,1899447441,1899447441,1899447441
7891 DD 3049323471,3049323471,3049323471,3049323471
7892 DD 3049323471,3049323471,3049323471,3049323471
7893 DD 3921009573,3921009573,3921009573,3921009573
7894 DD 3921009573,3921009573,3921009573,3921009573
7895 DD 961987163,961987163,961987163,961987163
7896 DD 961987163,961987163,961987163,961987163
7897 DD 1508970993,1508970993,1508970993,1508970993
7898 DD 1508970993,1508970993,1508970993,1508970993
7899 DD 2453635748,2453635748,2453635748,2453635748
7900 DD 2453635748,2453635748,2453635748,2453635748
7901 DD 2870763221,2870763221,2870763221,2870763221
7902 DD 2870763221,2870763221,2870763221,2870763221
7903 DD 3624381080,3624381080,3624381080,3624381080
7904 DD 3624381080,3624381080,3624381080,3624381080
7905 DD 310598401,310598401,310598401,310598401
7906 DD 310598401,310598401,310598401,310598401
7907 DD 607225278,607225278,607225278,607225278
7908 DD 607225278,607225278,607225278,607225278
7909 DD 1426881987,1426881987,1426881987,1426881987
7910 DD 1426881987,1426881987,1426881987,1426881987
7911 DD 1925078388,1925078388,1925078388,1925078388
7912 DD 1925078388,1925078388,1925078388,1925078388
7913 DD 2162078206,2162078206,2162078206,2162078206
7914 DD 2162078206,2162078206,2162078206,2162078206
7915 DD 2614888103,2614888103,2614888103,2614888103
7916 DD 2614888103,2614888103,2614888103,2614888103
7917 DD 3248222580,3248222580,3248222580,3248222580
7918 DD 3248222580,3248222580,3248222580,3248222580
7919 DD 3835390401,3835390401,3835390401,3835390401
7920 DD 3835390401,3835390401,3835390401,3835390401
7921 DD 4022224774,4022224774,4022224774,4022224774
7922 DD 4022224774,4022224774,4022224774,4022224774
7923 DD 264347078,264347078,264347078,264347078
7924 DD 264347078,264347078,264347078,264347078
7925 DD 604807628,604807628,604807628,604807628
7926 DD 604807628,604807628,604807628,604807628
7927 DD 770255983,770255983,770255983,770255983
7928 DD 770255983,770255983,770255983,770255983
7929 DD 1249150122,1249150122,1249150122,1249150122
7930 DD 1249150122,1249150122,1249150122,1249150122
7931 DD 1555081692,1555081692,1555081692,1555081692
7932 DD 1555081692,1555081692,1555081692,1555081692
7933 DD 1996064986,1996064986,1996064986,1996064986
7934 DD 1996064986,1996064986,1996064986,1996064986
7935 DD 2554220882,2554220882,2554220882,2554220882
7936 DD 2554220882,2554220882,2554220882,2554220882
7937 DD 2821834349,2821834349,2821834349,2821834349
7938 DD 2821834349,2821834349,2821834349,2821834349
7939 DD 2952996808,2952996808,2952996808,2952996808
7940 DD 2952996808,2952996808,2952996808,2952996808
7941 DD 3210313671,3210313671,3210313671,3210313671
7942 DD 3210313671,3210313671,3210313671,3210313671
7943 DD 3336571891,3336571891,3336571891,3336571891
7944 DD 3336571891,3336571891,3336571891,3336571891
7945 DD 3584528711,3584528711,3584528711,3584528711
7946 DD 3584528711,3584528711,3584528711,3584528711
7947 DD 113926993,113926993,113926993,113926993
7948 DD 113926993,113926993,113926993,113926993
7949 DD 338241895,338241895,338241895,338241895
7950 DD 338241895,338241895,338241895,338241895
7951 DD 666307205,666307205,666307205,666307205
7952 DD 666307205,666307205,666307205,666307205
7953 DD 773529912,773529912,773529912,773529912
7954 DD 773529912,773529912,773529912,773529912
7955 DD 1294757372,1294757372,1294757372,1294757372
7956 DD 1294757372,1294757372,1294757372,1294757372
7957 DD 1396182291,1396182291,1396182291,1396182291
7958 DD 1396182291,1396182291,1396182291,1396182291
7959 DD 1695183700,1695183700,1695183700,1695183700
7960 DD 1695183700,1695183700,1695183700,1695183700
7961 DD 1986661051,1986661051,1986661051,1986661051
7962 DD 1986661051,1986661051,1986661051,1986661051
7963 DD 2177026350,2177026350,2177026350,2177026350
7964 DD 2177026350,2177026350,2177026350,2177026350
7965 DD 2456956037,2456956037,2456956037,2456956037
7966 DD 2456956037,2456956037,2456956037,2456956037
7967 DD 2730485921,2730485921,2730485921,2730485921
7968 DD 2730485921,2730485921,2730485921,2730485921
7969 DD 2820302411,2820302411,2820302411,2820302411
7970 DD 2820302411,2820302411,2820302411,2820302411
7971 DD 3259730800,3259730800,3259730800,3259730800
7972 DD 3259730800,3259730800,3259730800,3259730800
7973 DD 3345764771,3345764771,3345764771,3345764771
7974 DD 3345764771,3345764771,3345764771,3345764771
7975 DD 3516065817,3516065817,3516065817,3516065817
7976 DD 3516065817,3516065817,3516065817,3516065817
7977 DD 3600352804,3600352804,3600352804,3600352804
7978 DD 3600352804,3600352804,3600352804,3600352804
7979 DD 4094571909,4094571909,4094571909,4094571909
7980 DD 4094571909,4094571909,4094571909,4094571909
7981 DD 275423344,275423344,275423344,275423344
7982 DD 275423344,275423344,275423344,275423344
7983 DD 430227734,430227734,430227734,430227734
7984 DD 430227734,430227734,430227734,430227734
7985 DD 506948616,506948616,506948616,506948616
7986 DD 506948616,506948616,506948616,506948616
7987 DD 659060556,659060556,659060556,659060556
7988 DD 659060556,659060556,659060556,659060556
7989 DD 883997877,883997877,883997877,883997877
7990 DD 883997877,883997877,883997877,883997877
7991 DD 958139571,958139571,958139571,958139571
7992 DD 958139571,958139571,958139571,958139571
7993 DD 1322822218,1322822218,1322822218,1322822218
7994 DD 1322822218,1322822218,1322822218,1322822218
7995 DD 1537002063,1537002063,1537002063,1537002063
7996 DD 1537002063,1537002063,1537002063,1537002063
7997 DD 1747873779,1747873779,1747873779,1747873779
7998 DD 1747873779,1747873779,1747873779,1747873779
7999 DD 1955562222,1955562222,1955562222,1955562222
8000 DD 1955562222,1955562222,1955562222,1955562222
8001 DD 2024104815,2024104815,2024104815,2024104815
8002 DD 2024104815,2024104815,2024104815,2024104815
8003 DD 2227730452,2227730452,2227730452,2227730452
8004 DD 2227730452,2227730452,2227730452,2227730452
8005 DD 2361852424,2361852424,2361852424,2361852424
8006 DD 2361852424,2361852424,2361852424,2361852424
8007 DD 2428436474,2428436474,2428436474,2428436474
8008 DD 2428436474,2428436474,2428436474,2428436474
8009 DD 2756734187,2756734187,2756734187,2756734187
8010 DD 2756734187,2756734187,2756734187,2756734187
8011 DD 3204031479,3204031479,3204031479,3204031479
8012 DD 3204031479,3204031479,3204031479,3204031479
8013 DD 3329325298,3329325298,3329325298,3329325298
8014 DD 3329325298,3329325298,3329325298,3329325298
8015$L$pbswap:
8016 DD 0x00010203,0x04050607,0x08090a0b,0x0c0d0e0f
8017 DD 0x00010203,0x04050607,0x08090a0b,0x0c0d0e0f
8018K256_shaext:
8019 DD 0x428a2f98,0x71374491,0xb5c0fbcf,0xe9b5dba5
8020 DD 0x3956c25b,0x59f111f1,0x923f82a4,0xab1c5ed5
8021 DD 0xd807aa98,0x12835b01,0x243185be,0x550c7dc3
8022 DD 0x72be5d74,0x80deb1fe,0x9bdc06a7,0xc19bf174
8023 DD 0xe49b69c1,0xefbe4786,0x0fc19dc6,0x240ca1cc
8024 DD 0x2de92c6f,0x4a7484aa,0x5cb0a9dc,0x76f988da
8025 DD 0x983e5152,0xa831c66d,0xb00327c8,0xbf597fc7
8026 DD 0xc6e00bf3,0xd5a79147,0x06ca6351,0x14292967
8027 DD 0x27b70a85,0x2e1b2138,0x4d2c6dfc,0x53380d13
8028 DD 0x650a7354,0x766a0abb,0x81c2c92e,0x92722c85
8029 DD 0xa2bfe8a1,0xa81a664b,0xc24b8b70,0xc76c51a3
8030 DD 0xd192e819,0xd6990624,0xf40e3585,0x106aa070
8031 DD 0x19a4c116,0x1e376c08,0x2748774c,0x34b0bcb5
8032 DD 0x391c0cb3,0x4ed8aa4a,0x5b9cca4f,0x682e6ff3
8033 DD 0x748f82ee,0x78a5636f,0x84c87814,0x8cc70208
8034 DD 0x90befffa,0xa4506ceb,0xbef9a3f7,0xc67178f2
8035DB 83,72,65,50,53,54,32,109,117,108,116,105,45,98,108,111
8036DB 99,107,32,116,114,97,110,115,102,111,114,109,32,102,111,114
8037DB 32,120,56,54,95,54,52,44,32,67,82,89,80,84,79,71
8038DB 65,77,83,32,98,121,32,60,97,112,112,114,111,64,111,112
8039DB 101,110,115,115,108,46,111,114,103,62,0
8040EXTERN __imp_RtlVirtualUnwind
8041
8042ALIGN 16
8043se_handler:
8044 push rsi
8045 push rdi
8046 push rbx
8047 push rbp
8048 push r12
8049 push r13
8050 push r14
8051 push r15
8052 pushfq
8053 sub rsp,64
8054
8055 mov rax,QWORD[120+r8]
8056 mov rbx,QWORD[248+r8]
8057
8058 mov rsi,QWORD[8+r9]
8059 mov r11,QWORD[56+r9]
8060
8061 mov r10d,DWORD[r11]
8062 lea r10,[r10*1+rsi]
8063 cmp rbx,r10
8064 jb NEAR $L$in_prologue
8065
8066 mov rax,QWORD[152+r8]
8067
8068 mov r10d,DWORD[4+r11]
8069 lea r10,[r10*1+rsi]
8070 cmp rbx,r10
8071 jae NEAR $L$in_prologue
8072
8073 mov rax,QWORD[272+rax]
8074
8075 mov rbx,QWORD[((-8))+rax]
8076 mov rbp,QWORD[((-16))+rax]
8077 mov QWORD[144+r8],rbx
8078 mov QWORD[160+r8],rbp
8079
8080 lea rsi,[((-24-160))+rax]
8081 lea rdi,[512+r8]
8082 mov ecx,20
8083 DD 0xa548f3fc
8084
8085$L$in_prologue:
8086 mov rdi,QWORD[8+rax]
8087 mov rsi,QWORD[16+rax]
8088 mov QWORD[152+r8],rax
8089 mov QWORD[168+r8],rsi
8090 mov QWORD[176+r8],rdi
8091
8092 mov rdi,QWORD[40+r9]
8093 mov rsi,r8
8094 mov ecx,154
8095 DD 0xa548f3fc
8096
8097 mov rsi,r9
8098 xor rcx,rcx
8099 mov rdx,QWORD[8+rsi]
8100 mov r8,QWORD[rsi]
8101 mov r9,QWORD[16+rsi]
8102 mov r10,QWORD[40+rsi]
8103 lea r11,[56+rsi]
8104 lea r12,[24+rsi]
8105 mov QWORD[32+rsp],r10
8106 mov QWORD[40+rsp],r11
8107 mov QWORD[48+rsp],r12
8108 mov QWORD[56+rsp],rcx
8109 call QWORD[__imp_RtlVirtualUnwind]
8110
8111 mov eax,1
8112 add rsp,64
8113 popfq
8114 pop r15
8115 pop r14
8116 pop r13
8117 pop r12
8118 pop rbp
8119 pop rbx
8120 pop rdi
8121 pop rsi
8122 DB 0F3h,0C3h ;repret
8123
8124
8125ALIGN 16
8126avx2_handler:
8127 push rsi
8128 push rdi
8129 push rbx
8130 push rbp
8131 push r12
8132 push r13
8133 push r14
8134 push r15
8135 pushfq
8136 sub rsp,64
8137
8138 mov rax,QWORD[120+r8]
8139 mov rbx,QWORD[248+r8]
8140
8141 mov rsi,QWORD[8+r9]
8142 mov r11,QWORD[56+r9]
8143
8144 mov r10d,DWORD[r11]
8145 lea r10,[r10*1+rsi]
8146 cmp rbx,r10
8147 jb NEAR $L$in_prologue
8148
8149 mov rax,QWORD[152+r8]
8150
8151 mov r10d,DWORD[4+r11]
8152 lea r10,[r10*1+rsi]
8153 cmp rbx,r10
8154 jae NEAR $L$in_prologue
8155
8156 mov rax,QWORD[544+r8]
8157
8158 mov rbx,QWORD[((-8))+rax]
8159 mov rbp,QWORD[((-16))+rax]
8160 mov r12,QWORD[((-24))+rax]
8161 mov r13,QWORD[((-32))+rax]
8162 mov r14,QWORD[((-40))+rax]
8163 mov r15,QWORD[((-48))+rax]
8164 mov QWORD[144+r8],rbx
8165 mov QWORD[160+r8],rbp
8166 mov QWORD[216+r8],r12
8167 mov QWORD[224+r8],r13
8168 mov QWORD[232+r8],r14
8169 mov QWORD[240+r8],r15
8170
8171 lea rsi,[((-56-160))+rax]
8172 lea rdi,[512+r8]
8173 mov ecx,20
8174 DD 0xa548f3fc
8175
8176 jmp NEAR $L$in_prologue
8177
8178section .pdata rdata align=4
8179ALIGN 4
8180 DD $L$SEH_begin_sha256_multi_block wrt ..imagebase
8181 DD $L$SEH_end_sha256_multi_block wrt ..imagebase
8182 DD $L$SEH_info_sha256_multi_block wrt ..imagebase
8183 DD $L$SEH_begin_sha256_multi_block_shaext wrt ..imagebase
8184 DD $L$SEH_end_sha256_multi_block_shaext wrt ..imagebase
8185 DD $L$SEH_info_sha256_multi_block_shaext wrt ..imagebase
8186 DD $L$SEH_begin_sha256_multi_block_avx wrt ..imagebase
8187 DD $L$SEH_end_sha256_multi_block_avx wrt ..imagebase
8188 DD $L$SEH_info_sha256_multi_block_avx wrt ..imagebase
8189 DD $L$SEH_begin_sha256_multi_block_avx2 wrt ..imagebase
8190 DD $L$SEH_end_sha256_multi_block_avx2 wrt ..imagebase
8191 DD $L$SEH_info_sha256_multi_block_avx2 wrt ..imagebase
8192section .xdata rdata align=8
8193ALIGN 8
8194$L$SEH_info_sha256_multi_block:
8195DB 9,0,0,0
8196 DD se_handler wrt ..imagebase
8197 DD $L$body wrt ..imagebase,$L$epilogue wrt ..imagebase
8198$L$SEH_info_sha256_multi_block_shaext:
8199DB 9,0,0,0
8200 DD se_handler wrt ..imagebase
8201 DD $L$body_shaext wrt ..imagebase,$L$epilogue_shaext wrt ..imagebase
8202$L$SEH_info_sha256_multi_block_avx:
8203DB 9,0,0,0
8204 DD se_handler wrt ..imagebase
8205 DD $L$body_avx wrt ..imagebase,$L$epilogue_avx wrt ..imagebase
8206$L$SEH_info_sha256_multi_block_avx2:
8207DB 9,0,0,0
8208 DD avx2_handler wrt ..imagebase
8209 DD $L$body_avx2 wrt ..imagebase,$L$epilogue_avx2 wrt ..imagebase
Note: See TracBrowser for help on using the repository browser.

© 2025 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette