VirtualBox

source: vbox/trunk/src/libs/openssl-1.1.1f/crypto/genasm-nasm/sha256-mb-x86_64.S@ 83531

Last change on this file since 83531 was 83531, checked in by vboxsync, 5 years ago

setting svn:sync-process=export for openssl-1.1.1f, all files except tests

File size: 60.3 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
24 mov rcx,QWORD[((OPENSSL_ia32cap_P+4))]
25 bt rcx,61
26 jc NEAR _shaext_shortcut
27 mov rax,rsp
28
29 push rbx
30
31 push rbp
32
33 lea rsp,[((-168))+rsp]
34 movaps XMMWORD[rsp],xmm6
35 movaps XMMWORD[16+rsp],xmm7
36 movaps XMMWORD[32+rsp],xmm8
37 movaps XMMWORD[48+rsp],xmm9
38 movaps XMMWORD[(-120)+rax],xmm10
39 movaps XMMWORD[(-104)+rax],xmm11
40 movaps XMMWORD[(-88)+rax],xmm12
41 movaps XMMWORD[(-72)+rax],xmm13
42 movaps XMMWORD[(-56)+rax],xmm14
43 movaps XMMWORD[(-40)+rax],xmm15
44 sub rsp,288
45 and rsp,-256
46 mov QWORD[272+rsp],rax
47
48$L$body:
49 lea rbp,[((K256+128))]
50 lea rbx,[256+rsp]
51 lea rdi,[128+rdi]
52
53$L$oop_grande:
54 mov DWORD[280+rsp],edx
55 xor edx,edx
56 mov r8,QWORD[rsi]
57 mov ecx,DWORD[8+rsi]
58 cmp ecx,edx
59 cmovg edx,ecx
60 test ecx,ecx
61 mov DWORD[rbx],ecx
62 cmovle r8,rbp
63 mov r9,QWORD[16+rsi]
64 mov ecx,DWORD[24+rsi]
65 cmp ecx,edx
66 cmovg edx,ecx
67 test ecx,ecx
68 mov DWORD[4+rbx],ecx
69 cmovle r9,rbp
70 mov r10,QWORD[32+rsi]
71 mov ecx,DWORD[40+rsi]
72 cmp ecx,edx
73 cmovg edx,ecx
74 test ecx,ecx
75 mov DWORD[8+rbx],ecx
76 cmovle r10,rbp
77 mov r11,QWORD[48+rsi]
78 mov ecx,DWORD[56+rsi]
79 cmp ecx,edx
80 cmovg edx,ecx
81 test ecx,ecx
82 mov DWORD[12+rbx],ecx
83 cmovle r11,rbp
84 test edx,edx
85 jz NEAR $L$done
86
87 movdqu xmm8,XMMWORD[((0-128))+rdi]
88 lea rax,[128+rsp]
89 movdqu xmm9,XMMWORD[((32-128))+rdi]
90 movdqu xmm10,XMMWORD[((64-128))+rdi]
91 movdqu xmm11,XMMWORD[((96-128))+rdi]
92 movdqu xmm12,XMMWORD[((128-128))+rdi]
93 movdqu xmm13,XMMWORD[((160-128))+rdi]
94 movdqu xmm14,XMMWORD[((192-128))+rdi]
95 movdqu xmm15,XMMWORD[((224-128))+rdi]
96 movdqu xmm6,XMMWORD[$L$pbswap]
97 jmp NEAR $L$oop
98
99ALIGN 32
100$L$oop:
101 movdqa xmm4,xmm10
102 pxor xmm4,xmm9
103 movd xmm5,DWORD[r8]
104 movd xmm0,DWORD[r9]
105 movd xmm1,DWORD[r10]
106 movd xmm2,DWORD[r11]
107 punpckldq xmm5,xmm1
108 punpckldq xmm0,xmm2
109 punpckldq xmm5,xmm0
110 movdqa xmm7,xmm12
111DB 102,15,56,0,238
112 movdqa xmm2,xmm12
113
114 psrld xmm7,6
115 movdqa xmm1,xmm12
116 pslld xmm2,7
117 movdqa XMMWORD[(0-128)+rax],xmm5
118 paddd xmm5,xmm15
119
120 psrld xmm1,11
121 pxor xmm7,xmm2
122 pslld xmm2,21-7
123 paddd xmm5,XMMWORD[((-128))+rbp]
124 pxor xmm7,xmm1
125
126 psrld xmm1,25-11
127 movdqa xmm0,xmm12
128
129 pxor xmm7,xmm2
130 movdqa xmm3,xmm12
131 pslld xmm2,26-21
132 pandn xmm0,xmm14
133 pand xmm3,xmm13
134 pxor xmm7,xmm1
135
136
137 movdqa xmm1,xmm8
138 pxor xmm7,xmm2
139 movdqa xmm2,xmm8
140 psrld xmm1,2
141 paddd xmm5,xmm7
142 pxor xmm0,xmm3
143 movdqa xmm3,xmm9
144 movdqa xmm7,xmm8
145 pslld xmm2,10
146 pxor xmm3,xmm8
147
148
149 psrld xmm7,13
150 pxor xmm1,xmm2
151 paddd xmm5,xmm0
152 pslld xmm2,19-10
153 pand xmm4,xmm3
154 pxor xmm1,xmm7
155
156
157 psrld xmm7,22-13
158 pxor xmm1,xmm2
159 movdqa xmm15,xmm9
160 pslld xmm2,30-19
161 pxor xmm7,xmm1
162 pxor xmm15,xmm4
163 paddd xmm11,xmm5
164 pxor xmm7,xmm2
165
166 paddd xmm15,xmm5
167 paddd xmm15,xmm7
168 movd xmm5,DWORD[4+r8]
169 movd xmm0,DWORD[4+r9]
170 movd xmm1,DWORD[4+r10]
171 movd xmm2,DWORD[4+r11]
172 punpckldq xmm5,xmm1
173 punpckldq xmm0,xmm2
174 punpckldq xmm5,xmm0
175 movdqa xmm7,xmm11
176
177 movdqa xmm2,xmm11
178DB 102,15,56,0,238
179 psrld xmm7,6
180 movdqa xmm1,xmm11
181 pslld xmm2,7
182 movdqa XMMWORD[(16-128)+rax],xmm5
183 paddd xmm5,xmm14
184
185 psrld xmm1,11
186 pxor xmm7,xmm2
187 pslld xmm2,21-7
188 paddd xmm5,XMMWORD[((-96))+rbp]
189 pxor xmm7,xmm1
190
191 psrld xmm1,25-11
192 movdqa xmm0,xmm11
193
194 pxor xmm7,xmm2
195 movdqa xmm4,xmm11
196 pslld xmm2,26-21
197 pandn xmm0,xmm13
198 pand xmm4,xmm12
199 pxor xmm7,xmm1
200
201
202 movdqa xmm1,xmm15
203 pxor xmm7,xmm2
204 movdqa xmm2,xmm15
205 psrld xmm1,2
206 paddd xmm5,xmm7
207 pxor xmm0,xmm4
208 movdqa xmm4,xmm8
209 movdqa xmm7,xmm15
210 pslld xmm2,10
211 pxor xmm4,xmm15
212
213
214 psrld xmm7,13
215 pxor xmm1,xmm2
216 paddd xmm5,xmm0
217 pslld xmm2,19-10
218 pand xmm3,xmm4
219 pxor xmm1,xmm7
220
221
222 psrld xmm7,22-13
223 pxor xmm1,xmm2
224 movdqa xmm14,xmm8
225 pslld xmm2,30-19
226 pxor xmm7,xmm1
227 pxor xmm14,xmm3
228 paddd xmm10,xmm5
229 pxor xmm7,xmm2
230
231 paddd xmm14,xmm5
232 paddd xmm14,xmm7
233 movd xmm5,DWORD[8+r8]
234 movd xmm0,DWORD[8+r9]
235 movd xmm1,DWORD[8+r10]
236 movd xmm2,DWORD[8+r11]
237 punpckldq xmm5,xmm1
238 punpckldq xmm0,xmm2
239 punpckldq xmm5,xmm0
240 movdqa xmm7,xmm10
241DB 102,15,56,0,238
242 movdqa xmm2,xmm10
243
244 psrld xmm7,6
245 movdqa xmm1,xmm10
246 pslld xmm2,7
247 movdqa XMMWORD[(32-128)+rax],xmm5
248 paddd xmm5,xmm13
249
250 psrld xmm1,11
251 pxor xmm7,xmm2
252 pslld xmm2,21-7
253 paddd xmm5,XMMWORD[((-64))+rbp]
254 pxor xmm7,xmm1
255
256 psrld xmm1,25-11
257 movdqa xmm0,xmm10
258
259 pxor xmm7,xmm2
260 movdqa xmm3,xmm10
261 pslld xmm2,26-21
262 pandn xmm0,xmm12
263 pand xmm3,xmm11
264 pxor xmm7,xmm1
265
266
267 movdqa xmm1,xmm14
268 pxor xmm7,xmm2
269 movdqa xmm2,xmm14
270 psrld xmm1,2
271 paddd xmm5,xmm7
272 pxor xmm0,xmm3
273 movdqa xmm3,xmm15
274 movdqa xmm7,xmm14
275 pslld xmm2,10
276 pxor xmm3,xmm14
277
278
279 psrld xmm7,13
280 pxor xmm1,xmm2
281 paddd xmm5,xmm0
282 pslld xmm2,19-10
283 pand xmm4,xmm3
284 pxor xmm1,xmm7
285
286
287 psrld xmm7,22-13
288 pxor xmm1,xmm2
289 movdqa xmm13,xmm15
290 pslld xmm2,30-19
291 pxor xmm7,xmm1
292 pxor xmm13,xmm4
293 paddd xmm9,xmm5
294 pxor xmm7,xmm2
295
296 paddd xmm13,xmm5
297 paddd xmm13,xmm7
298 movd xmm5,DWORD[12+r8]
299 movd xmm0,DWORD[12+r9]
300 movd xmm1,DWORD[12+r10]
301 movd xmm2,DWORD[12+r11]
302 punpckldq xmm5,xmm1
303 punpckldq xmm0,xmm2
304 punpckldq xmm5,xmm0
305 movdqa xmm7,xmm9
306
307 movdqa xmm2,xmm9
308DB 102,15,56,0,238
309 psrld xmm7,6
310 movdqa xmm1,xmm9
311 pslld xmm2,7
312 movdqa XMMWORD[(48-128)+rax],xmm5
313 paddd xmm5,xmm12
314
315 psrld xmm1,11
316 pxor xmm7,xmm2
317 pslld xmm2,21-7
318 paddd xmm5,XMMWORD[((-32))+rbp]
319 pxor xmm7,xmm1
320
321 psrld xmm1,25-11
322 movdqa xmm0,xmm9
323
324 pxor xmm7,xmm2
325 movdqa xmm4,xmm9
326 pslld xmm2,26-21
327 pandn xmm0,xmm11
328 pand xmm4,xmm10
329 pxor xmm7,xmm1
330
331
332 movdqa xmm1,xmm13
333 pxor xmm7,xmm2
334 movdqa xmm2,xmm13
335 psrld xmm1,2
336 paddd xmm5,xmm7
337 pxor xmm0,xmm4
338 movdqa xmm4,xmm14
339 movdqa xmm7,xmm13
340 pslld xmm2,10
341 pxor xmm4,xmm13
342
343
344 psrld xmm7,13
345 pxor xmm1,xmm2
346 paddd xmm5,xmm0
347 pslld xmm2,19-10
348 pand xmm3,xmm4
349 pxor xmm1,xmm7
350
351
352 psrld xmm7,22-13
353 pxor xmm1,xmm2
354 movdqa xmm12,xmm14
355 pslld xmm2,30-19
356 pxor xmm7,xmm1
357 pxor xmm12,xmm3
358 paddd xmm8,xmm5
359 pxor xmm7,xmm2
360
361 paddd xmm12,xmm5
362 paddd xmm12,xmm7
363 movd xmm5,DWORD[16+r8]
364 movd xmm0,DWORD[16+r9]
365 movd xmm1,DWORD[16+r10]
366 movd xmm2,DWORD[16+r11]
367 punpckldq xmm5,xmm1
368 punpckldq xmm0,xmm2
369 punpckldq xmm5,xmm0
370 movdqa xmm7,xmm8
371DB 102,15,56,0,238
372 movdqa xmm2,xmm8
373
374 psrld xmm7,6
375 movdqa xmm1,xmm8
376 pslld xmm2,7
377 movdqa XMMWORD[(64-128)+rax],xmm5
378 paddd xmm5,xmm11
379
380 psrld xmm1,11
381 pxor xmm7,xmm2
382 pslld xmm2,21-7
383 paddd xmm5,XMMWORD[rbp]
384 pxor xmm7,xmm1
385
386 psrld xmm1,25-11
387 movdqa xmm0,xmm8
388
389 pxor xmm7,xmm2
390 movdqa xmm3,xmm8
391 pslld xmm2,26-21
392 pandn xmm0,xmm10
393 pand xmm3,xmm9
394 pxor xmm7,xmm1
395
396
397 movdqa xmm1,xmm12
398 pxor xmm7,xmm2
399 movdqa xmm2,xmm12
400 psrld xmm1,2
401 paddd xmm5,xmm7
402 pxor xmm0,xmm3
403 movdqa xmm3,xmm13
404 movdqa xmm7,xmm12
405 pslld xmm2,10
406 pxor xmm3,xmm12
407
408
409 psrld xmm7,13
410 pxor xmm1,xmm2
411 paddd xmm5,xmm0
412 pslld xmm2,19-10
413 pand xmm4,xmm3
414 pxor xmm1,xmm7
415
416
417 psrld xmm7,22-13
418 pxor xmm1,xmm2
419 movdqa xmm11,xmm13
420 pslld xmm2,30-19
421 pxor xmm7,xmm1
422 pxor xmm11,xmm4
423 paddd xmm15,xmm5
424 pxor xmm7,xmm2
425
426 paddd xmm11,xmm5
427 paddd xmm11,xmm7
428 movd xmm5,DWORD[20+r8]
429 movd xmm0,DWORD[20+r9]
430 movd xmm1,DWORD[20+r10]
431 movd xmm2,DWORD[20+r11]
432 punpckldq xmm5,xmm1
433 punpckldq xmm0,xmm2
434 punpckldq xmm5,xmm0
435 movdqa xmm7,xmm15
436
437 movdqa xmm2,xmm15
438DB 102,15,56,0,238
439 psrld xmm7,6
440 movdqa xmm1,xmm15
441 pslld xmm2,7
442 movdqa XMMWORD[(80-128)+rax],xmm5
443 paddd xmm5,xmm10
444
445 psrld xmm1,11
446 pxor xmm7,xmm2
447 pslld xmm2,21-7
448 paddd xmm5,XMMWORD[32+rbp]
449 pxor xmm7,xmm1
450
451 psrld xmm1,25-11
452 movdqa xmm0,xmm15
453
454 pxor xmm7,xmm2
455 movdqa xmm4,xmm15
456 pslld xmm2,26-21
457 pandn xmm0,xmm9
458 pand xmm4,xmm8
459 pxor xmm7,xmm1
460
461
462 movdqa xmm1,xmm11
463 pxor xmm7,xmm2
464 movdqa xmm2,xmm11
465 psrld xmm1,2
466 paddd xmm5,xmm7
467 pxor xmm0,xmm4
468 movdqa xmm4,xmm12
469 movdqa xmm7,xmm11
470 pslld xmm2,10
471 pxor xmm4,xmm11
472
473
474 psrld xmm7,13
475 pxor xmm1,xmm2
476 paddd xmm5,xmm0
477 pslld xmm2,19-10
478 pand xmm3,xmm4
479 pxor xmm1,xmm7
480
481
482 psrld xmm7,22-13
483 pxor xmm1,xmm2
484 movdqa xmm10,xmm12
485 pslld xmm2,30-19
486 pxor xmm7,xmm1
487 pxor xmm10,xmm3
488 paddd xmm14,xmm5
489 pxor xmm7,xmm2
490
491 paddd xmm10,xmm5
492 paddd xmm10,xmm7
493 movd xmm5,DWORD[24+r8]
494 movd xmm0,DWORD[24+r9]
495 movd xmm1,DWORD[24+r10]
496 movd xmm2,DWORD[24+r11]
497 punpckldq xmm5,xmm1
498 punpckldq xmm0,xmm2
499 punpckldq xmm5,xmm0
500 movdqa xmm7,xmm14
501DB 102,15,56,0,238
502 movdqa xmm2,xmm14
503
504 psrld xmm7,6
505 movdqa xmm1,xmm14
506 pslld xmm2,7
507 movdqa XMMWORD[(96-128)+rax],xmm5
508 paddd xmm5,xmm9
509
510 psrld xmm1,11
511 pxor xmm7,xmm2
512 pslld xmm2,21-7
513 paddd xmm5,XMMWORD[64+rbp]
514 pxor xmm7,xmm1
515
516 psrld xmm1,25-11
517 movdqa xmm0,xmm14
518
519 pxor xmm7,xmm2
520 movdqa xmm3,xmm14
521 pslld xmm2,26-21
522 pandn xmm0,xmm8
523 pand xmm3,xmm15
524 pxor xmm7,xmm1
525
526
527 movdqa xmm1,xmm10
528 pxor xmm7,xmm2
529 movdqa xmm2,xmm10
530 psrld xmm1,2
531 paddd xmm5,xmm7
532 pxor xmm0,xmm3
533 movdqa xmm3,xmm11
534 movdqa xmm7,xmm10
535 pslld xmm2,10
536 pxor xmm3,xmm10
537
538
539 psrld xmm7,13
540 pxor xmm1,xmm2
541 paddd xmm5,xmm0
542 pslld xmm2,19-10
543 pand xmm4,xmm3
544 pxor xmm1,xmm7
545
546
547 psrld xmm7,22-13
548 pxor xmm1,xmm2
549 movdqa xmm9,xmm11
550 pslld xmm2,30-19
551 pxor xmm7,xmm1
552 pxor xmm9,xmm4
553 paddd xmm13,xmm5
554 pxor xmm7,xmm2
555
556 paddd xmm9,xmm5
557 paddd xmm9,xmm7
558 movd xmm5,DWORD[28+r8]
559 movd xmm0,DWORD[28+r9]
560 movd xmm1,DWORD[28+r10]
561 movd xmm2,DWORD[28+r11]
562 punpckldq xmm5,xmm1
563 punpckldq xmm0,xmm2
564 punpckldq xmm5,xmm0
565 movdqa xmm7,xmm13
566
567 movdqa xmm2,xmm13
568DB 102,15,56,0,238
569 psrld xmm7,6
570 movdqa xmm1,xmm13
571 pslld xmm2,7
572 movdqa XMMWORD[(112-128)+rax],xmm5
573 paddd xmm5,xmm8
574
575 psrld xmm1,11
576 pxor xmm7,xmm2
577 pslld xmm2,21-7
578 paddd xmm5,XMMWORD[96+rbp]
579 pxor xmm7,xmm1
580
581 psrld xmm1,25-11
582 movdqa xmm0,xmm13
583
584 pxor xmm7,xmm2
585 movdqa xmm4,xmm13
586 pslld xmm2,26-21
587 pandn xmm0,xmm15
588 pand xmm4,xmm14
589 pxor xmm7,xmm1
590
591
592 movdqa xmm1,xmm9
593 pxor xmm7,xmm2
594 movdqa xmm2,xmm9
595 psrld xmm1,2
596 paddd xmm5,xmm7
597 pxor xmm0,xmm4
598 movdqa xmm4,xmm10
599 movdqa xmm7,xmm9
600 pslld xmm2,10
601 pxor xmm4,xmm9
602
603
604 psrld xmm7,13
605 pxor xmm1,xmm2
606 paddd xmm5,xmm0
607 pslld xmm2,19-10
608 pand xmm3,xmm4
609 pxor xmm1,xmm7
610
611
612 psrld xmm7,22-13
613 pxor xmm1,xmm2
614 movdqa xmm8,xmm10
615 pslld xmm2,30-19
616 pxor xmm7,xmm1
617 pxor xmm8,xmm3
618 paddd xmm12,xmm5
619 pxor xmm7,xmm2
620
621 paddd xmm8,xmm5
622 paddd xmm8,xmm7
623 lea rbp,[256+rbp]
624 movd xmm5,DWORD[32+r8]
625 movd xmm0,DWORD[32+r9]
626 movd xmm1,DWORD[32+r10]
627 movd xmm2,DWORD[32+r11]
628 punpckldq xmm5,xmm1
629 punpckldq xmm0,xmm2
630 punpckldq xmm5,xmm0
631 movdqa xmm7,xmm12
632DB 102,15,56,0,238
633 movdqa xmm2,xmm12
634
635 psrld xmm7,6
636 movdqa xmm1,xmm12
637 pslld xmm2,7
638 movdqa XMMWORD[(128-128)+rax],xmm5
639 paddd xmm5,xmm15
640
641 psrld xmm1,11
642 pxor xmm7,xmm2
643 pslld xmm2,21-7
644 paddd xmm5,XMMWORD[((-128))+rbp]
645 pxor xmm7,xmm1
646
647 psrld xmm1,25-11
648 movdqa xmm0,xmm12
649
650 pxor xmm7,xmm2
651 movdqa xmm3,xmm12
652 pslld xmm2,26-21
653 pandn xmm0,xmm14
654 pand xmm3,xmm13
655 pxor xmm7,xmm1
656
657
658 movdqa xmm1,xmm8
659 pxor xmm7,xmm2
660 movdqa xmm2,xmm8
661 psrld xmm1,2
662 paddd xmm5,xmm7
663 pxor xmm0,xmm3
664 movdqa xmm3,xmm9
665 movdqa xmm7,xmm8
666 pslld xmm2,10
667 pxor xmm3,xmm8
668
669
670 psrld xmm7,13
671 pxor xmm1,xmm2
672 paddd xmm5,xmm0
673 pslld xmm2,19-10
674 pand xmm4,xmm3
675 pxor xmm1,xmm7
676
677
678 psrld xmm7,22-13
679 pxor xmm1,xmm2
680 movdqa xmm15,xmm9
681 pslld xmm2,30-19
682 pxor xmm7,xmm1
683 pxor xmm15,xmm4
684 paddd xmm11,xmm5
685 pxor xmm7,xmm2
686
687 paddd xmm15,xmm5
688 paddd xmm15,xmm7
689 movd xmm5,DWORD[36+r8]
690 movd xmm0,DWORD[36+r9]
691 movd xmm1,DWORD[36+r10]
692 movd xmm2,DWORD[36+r11]
693 punpckldq xmm5,xmm1
694 punpckldq xmm0,xmm2
695 punpckldq xmm5,xmm0
696 movdqa xmm7,xmm11
697
698 movdqa xmm2,xmm11
699DB 102,15,56,0,238
700 psrld xmm7,6
701 movdqa xmm1,xmm11
702 pslld xmm2,7
703 movdqa XMMWORD[(144-128)+rax],xmm5
704 paddd xmm5,xmm14
705
706 psrld xmm1,11
707 pxor xmm7,xmm2
708 pslld xmm2,21-7
709 paddd xmm5,XMMWORD[((-96))+rbp]
710 pxor xmm7,xmm1
711
712 psrld xmm1,25-11
713 movdqa xmm0,xmm11
714
715 pxor xmm7,xmm2
716 movdqa xmm4,xmm11
717 pslld xmm2,26-21
718 pandn xmm0,xmm13
719 pand xmm4,xmm12
720 pxor xmm7,xmm1
721
722
723 movdqa xmm1,xmm15
724 pxor xmm7,xmm2
725 movdqa xmm2,xmm15
726 psrld xmm1,2
727 paddd xmm5,xmm7
728 pxor xmm0,xmm4
729 movdqa xmm4,xmm8
730 movdqa xmm7,xmm15
731 pslld xmm2,10
732 pxor xmm4,xmm15
733
734
735 psrld xmm7,13
736 pxor xmm1,xmm2
737 paddd xmm5,xmm0
738 pslld xmm2,19-10
739 pand xmm3,xmm4
740 pxor xmm1,xmm7
741
742
743 psrld xmm7,22-13
744 pxor xmm1,xmm2
745 movdqa xmm14,xmm8
746 pslld xmm2,30-19
747 pxor xmm7,xmm1
748 pxor xmm14,xmm3
749 paddd xmm10,xmm5
750 pxor xmm7,xmm2
751
752 paddd xmm14,xmm5
753 paddd xmm14,xmm7
754 movd xmm5,DWORD[40+r8]
755 movd xmm0,DWORD[40+r9]
756 movd xmm1,DWORD[40+r10]
757 movd xmm2,DWORD[40+r11]
758 punpckldq xmm5,xmm1
759 punpckldq xmm0,xmm2
760 punpckldq xmm5,xmm0
761 movdqa xmm7,xmm10
762DB 102,15,56,0,238
763 movdqa xmm2,xmm10
764
765 psrld xmm7,6
766 movdqa xmm1,xmm10
767 pslld xmm2,7
768 movdqa XMMWORD[(160-128)+rax],xmm5
769 paddd xmm5,xmm13
770
771 psrld xmm1,11
772 pxor xmm7,xmm2
773 pslld xmm2,21-7
774 paddd xmm5,XMMWORD[((-64))+rbp]
775 pxor xmm7,xmm1
776
777 psrld xmm1,25-11
778 movdqa xmm0,xmm10
779
780 pxor xmm7,xmm2
781 movdqa xmm3,xmm10
782 pslld xmm2,26-21
783 pandn xmm0,xmm12
784 pand xmm3,xmm11
785 pxor xmm7,xmm1
786
787
788 movdqa xmm1,xmm14
789 pxor xmm7,xmm2
790 movdqa xmm2,xmm14
791 psrld xmm1,2
792 paddd xmm5,xmm7
793 pxor xmm0,xmm3
794 movdqa xmm3,xmm15
795 movdqa xmm7,xmm14
796 pslld xmm2,10
797 pxor xmm3,xmm14
798
799
800 psrld xmm7,13
801 pxor xmm1,xmm2
802 paddd xmm5,xmm0
803 pslld xmm2,19-10
804 pand xmm4,xmm3
805 pxor xmm1,xmm7
806
807
808 psrld xmm7,22-13
809 pxor xmm1,xmm2
810 movdqa xmm13,xmm15
811 pslld xmm2,30-19
812 pxor xmm7,xmm1
813 pxor xmm13,xmm4
814 paddd xmm9,xmm5
815 pxor xmm7,xmm2
816
817 paddd xmm13,xmm5
818 paddd xmm13,xmm7
819 movd xmm5,DWORD[44+r8]
820 movd xmm0,DWORD[44+r9]
821 movd xmm1,DWORD[44+r10]
822 movd xmm2,DWORD[44+r11]
823 punpckldq xmm5,xmm1
824 punpckldq xmm0,xmm2
825 punpckldq xmm5,xmm0
826 movdqa xmm7,xmm9
827
828 movdqa xmm2,xmm9
829DB 102,15,56,0,238
830 psrld xmm7,6
831 movdqa xmm1,xmm9
832 pslld xmm2,7
833 movdqa XMMWORD[(176-128)+rax],xmm5
834 paddd xmm5,xmm12
835
836 psrld xmm1,11
837 pxor xmm7,xmm2
838 pslld xmm2,21-7
839 paddd xmm5,XMMWORD[((-32))+rbp]
840 pxor xmm7,xmm1
841
842 psrld xmm1,25-11
843 movdqa xmm0,xmm9
844
845 pxor xmm7,xmm2
846 movdqa xmm4,xmm9
847 pslld xmm2,26-21
848 pandn xmm0,xmm11
849 pand xmm4,xmm10
850 pxor xmm7,xmm1
851
852
853 movdqa xmm1,xmm13
854 pxor xmm7,xmm2
855 movdqa xmm2,xmm13
856 psrld xmm1,2
857 paddd xmm5,xmm7
858 pxor xmm0,xmm4
859 movdqa xmm4,xmm14
860 movdqa xmm7,xmm13
861 pslld xmm2,10
862 pxor xmm4,xmm13
863
864
865 psrld xmm7,13
866 pxor xmm1,xmm2
867 paddd xmm5,xmm0
868 pslld xmm2,19-10
869 pand xmm3,xmm4
870 pxor xmm1,xmm7
871
872
873 psrld xmm7,22-13
874 pxor xmm1,xmm2
875 movdqa xmm12,xmm14
876 pslld xmm2,30-19
877 pxor xmm7,xmm1
878 pxor xmm12,xmm3
879 paddd xmm8,xmm5
880 pxor xmm7,xmm2
881
882 paddd xmm12,xmm5
883 paddd xmm12,xmm7
884 movd xmm5,DWORD[48+r8]
885 movd xmm0,DWORD[48+r9]
886 movd xmm1,DWORD[48+r10]
887 movd xmm2,DWORD[48+r11]
888 punpckldq xmm5,xmm1
889 punpckldq xmm0,xmm2
890 punpckldq xmm5,xmm0
891 movdqa xmm7,xmm8
892DB 102,15,56,0,238
893 movdqa xmm2,xmm8
894
895 psrld xmm7,6
896 movdqa xmm1,xmm8
897 pslld xmm2,7
898 movdqa XMMWORD[(192-128)+rax],xmm5
899 paddd xmm5,xmm11
900
901 psrld xmm1,11
902 pxor xmm7,xmm2
903 pslld xmm2,21-7
904 paddd xmm5,XMMWORD[rbp]
905 pxor xmm7,xmm1
906
907 psrld xmm1,25-11
908 movdqa xmm0,xmm8
909
910 pxor xmm7,xmm2
911 movdqa xmm3,xmm8
912 pslld xmm2,26-21
913 pandn xmm0,xmm10
914 pand xmm3,xmm9
915 pxor xmm7,xmm1
916
917
918 movdqa xmm1,xmm12
919 pxor xmm7,xmm2
920 movdqa xmm2,xmm12
921 psrld xmm1,2
922 paddd xmm5,xmm7
923 pxor xmm0,xmm3
924 movdqa xmm3,xmm13
925 movdqa xmm7,xmm12
926 pslld xmm2,10
927 pxor xmm3,xmm12
928
929
930 psrld xmm7,13
931 pxor xmm1,xmm2
932 paddd xmm5,xmm0
933 pslld xmm2,19-10
934 pand xmm4,xmm3
935 pxor xmm1,xmm7
936
937
938 psrld xmm7,22-13
939 pxor xmm1,xmm2
940 movdqa xmm11,xmm13
941 pslld xmm2,30-19
942 pxor xmm7,xmm1
943 pxor xmm11,xmm4
944 paddd xmm15,xmm5
945 pxor xmm7,xmm2
946
947 paddd xmm11,xmm5
948 paddd xmm11,xmm7
949 movd xmm5,DWORD[52+r8]
950 movd xmm0,DWORD[52+r9]
951 movd xmm1,DWORD[52+r10]
952 movd xmm2,DWORD[52+r11]
953 punpckldq xmm5,xmm1
954 punpckldq xmm0,xmm2
955 punpckldq xmm5,xmm0
956 movdqa xmm7,xmm15
957
958 movdqa xmm2,xmm15
959DB 102,15,56,0,238
960 psrld xmm7,6
961 movdqa xmm1,xmm15
962 pslld xmm2,7
963 movdqa XMMWORD[(208-128)+rax],xmm5
964 paddd xmm5,xmm10
965
966 psrld xmm1,11
967 pxor xmm7,xmm2
968 pslld xmm2,21-7
969 paddd xmm5,XMMWORD[32+rbp]
970 pxor xmm7,xmm1
971
972 psrld xmm1,25-11
973 movdqa xmm0,xmm15
974
975 pxor xmm7,xmm2
976 movdqa xmm4,xmm15
977 pslld xmm2,26-21
978 pandn xmm0,xmm9
979 pand xmm4,xmm8
980 pxor xmm7,xmm1
981
982
983 movdqa xmm1,xmm11
984 pxor xmm7,xmm2
985 movdqa xmm2,xmm11
986 psrld xmm1,2
987 paddd xmm5,xmm7
988 pxor xmm0,xmm4
989 movdqa xmm4,xmm12
990 movdqa xmm7,xmm11
991 pslld xmm2,10
992 pxor xmm4,xmm11
993
994
995 psrld xmm7,13
996 pxor xmm1,xmm2
997 paddd xmm5,xmm0
998 pslld xmm2,19-10
999 pand xmm3,xmm4
1000 pxor xmm1,xmm7
1001
1002
1003 psrld xmm7,22-13
1004 pxor xmm1,xmm2
1005 movdqa xmm10,xmm12
1006 pslld xmm2,30-19
1007 pxor xmm7,xmm1
1008 pxor xmm10,xmm3
1009 paddd xmm14,xmm5
1010 pxor xmm7,xmm2
1011
1012 paddd xmm10,xmm5
1013 paddd xmm10,xmm7
1014 movd xmm5,DWORD[56+r8]
1015 movd xmm0,DWORD[56+r9]
1016 movd xmm1,DWORD[56+r10]
1017 movd xmm2,DWORD[56+r11]
1018 punpckldq xmm5,xmm1
1019 punpckldq xmm0,xmm2
1020 punpckldq xmm5,xmm0
1021 movdqa xmm7,xmm14
1022DB 102,15,56,0,238
1023 movdqa xmm2,xmm14
1024
1025 psrld xmm7,6
1026 movdqa xmm1,xmm14
1027 pslld xmm2,7
1028 movdqa XMMWORD[(224-128)+rax],xmm5
1029 paddd xmm5,xmm9
1030
1031 psrld xmm1,11
1032 pxor xmm7,xmm2
1033 pslld xmm2,21-7
1034 paddd xmm5,XMMWORD[64+rbp]
1035 pxor xmm7,xmm1
1036
1037 psrld xmm1,25-11
1038 movdqa xmm0,xmm14
1039
1040 pxor xmm7,xmm2
1041 movdqa xmm3,xmm14
1042 pslld xmm2,26-21
1043 pandn xmm0,xmm8
1044 pand xmm3,xmm15
1045 pxor xmm7,xmm1
1046
1047
1048 movdqa xmm1,xmm10
1049 pxor xmm7,xmm2
1050 movdqa xmm2,xmm10
1051 psrld xmm1,2
1052 paddd xmm5,xmm7
1053 pxor xmm0,xmm3
1054 movdqa xmm3,xmm11
1055 movdqa xmm7,xmm10
1056 pslld xmm2,10
1057 pxor xmm3,xmm10
1058
1059
1060 psrld xmm7,13
1061 pxor xmm1,xmm2
1062 paddd xmm5,xmm0
1063 pslld xmm2,19-10
1064 pand xmm4,xmm3
1065 pxor xmm1,xmm7
1066
1067
1068 psrld xmm7,22-13
1069 pxor xmm1,xmm2
1070 movdqa xmm9,xmm11
1071 pslld xmm2,30-19
1072 pxor xmm7,xmm1
1073 pxor xmm9,xmm4
1074 paddd xmm13,xmm5
1075 pxor xmm7,xmm2
1076
1077 paddd xmm9,xmm5
1078 paddd xmm9,xmm7
1079 movd xmm5,DWORD[60+r8]
1080 lea r8,[64+r8]
1081 movd xmm0,DWORD[60+r9]
1082 lea r9,[64+r9]
1083 movd xmm1,DWORD[60+r10]
1084 lea r10,[64+r10]
1085 movd xmm2,DWORD[60+r11]
1086 lea r11,[64+r11]
1087 punpckldq xmm5,xmm1
1088 punpckldq xmm0,xmm2
1089 punpckldq xmm5,xmm0
1090 movdqa xmm7,xmm13
1091
1092 movdqa xmm2,xmm13
1093DB 102,15,56,0,238
1094 psrld xmm7,6
1095 movdqa xmm1,xmm13
1096 pslld xmm2,7
1097 movdqa XMMWORD[(240-128)+rax],xmm5
1098 paddd xmm5,xmm8
1099
1100 psrld xmm1,11
1101 pxor xmm7,xmm2
1102 pslld xmm2,21-7
1103 paddd xmm5,XMMWORD[96+rbp]
1104 pxor xmm7,xmm1
1105
1106 psrld xmm1,25-11
1107 movdqa xmm0,xmm13
1108 prefetcht0 [63+r8]
1109 pxor xmm7,xmm2
1110 movdqa xmm4,xmm13
1111 pslld xmm2,26-21
1112 pandn xmm0,xmm15
1113 pand xmm4,xmm14
1114 pxor xmm7,xmm1
1115
1116 prefetcht0 [63+r9]
1117 movdqa xmm1,xmm9
1118 pxor xmm7,xmm2
1119 movdqa xmm2,xmm9
1120 psrld xmm1,2
1121 paddd xmm5,xmm7
1122 pxor xmm0,xmm4
1123 movdqa xmm4,xmm10
1124 movdqa xmm7,xmm9
1125 pslld xmm2,10
1126 pxor xmm4,xmm9
1127
1128 prefetcht0 [63+r10]
1129 psrld xmm7,13
1130 pxor xmm1,xmm2
1131 paddd xmm5,xmm0
1132 pslld xmm2,19-10
1133 pand xmm3,xmm4
1134 pxor xmm1,xmm7
1135
1136 prefetcht0 [63+r11]
1137 psrld xmm7,22-13
1138 pxor xmm1,xmm2
1139 movdqa xmm8,xmm10
1140 pslld xmm2,30-19
1141 pxor xmm7,xmm1
1142 pxor xmm8,xmm3
1143 paddd xmm12,xmm5
1144 pxor xmm7,xmm2
1145
1146 paddd xmm8,xmm5
1147 paddd xmm8,xmm7
1148 lea rbp,[256+rbp]
1149 movdqu xmm5,XMMWORD[((0-128))+rax]
1150 mov ecx,3
1151 jmp NEAR $L$oop_16_xx
1152ALIGN 32
1153$L$oop_16_xx:
1154 movdqa xmm6,XMMWORD[((16-128))+rax]
1155 paddd xmm5,XMMWORD[((144-128))+rax]
1156
1157 movdqa xmm7,xmm6
1158 movdqa xmm1,xmm6
1159 psrld xmm7,3
1160 movdqa xmm2,xmm6
1161
1162 psrld xmm1,7
1163 movdqa xmm0,XMMWORD[((224-128))+rax]
1164 pslld xmm2,14
1165 pxor xmm7,xmm1
1166 psrld xmm1,18-7
1167 movdqa xmm3,xmm0
1168 pxor xmm7,xmm2
1169 pslld xmm2,25-14
1170 pxor xmm7,xmm1
1171 psrld xmm0,10
1172 movdqa xmm1,xmm3
1173
1174 psrld xmm3,17
1175 pxor xmm7,xmm2
1176 pslld xmm1,13
1177 paddd xmm5,xmm7
1178 pxor xmm0,xmm3
1179 psrld xmm3,19-17
1180 pxor xmm0,xmm1
1181 pslld xmm1,15-13
1182 pxor xmm0,xmm3
1183 pxor xmm0,xmm1
1184 paddd xmm5,xmm0
1185 movdqa xmm7,xmm12
1186
1187 movdqa xmm2,xmm12
1188
1189 psrld xmm7,6
1190 movdqa xmm1,xmm12
1191 pslld xmm2,7
1192 movdqa XMMWORD[(0-128)+rax],xmm5
1193 paddd xmm5,xmm15
1194
1195 psrld xmm1,11
1196 pxor xmm7,xmm2
1197 pslld xmm2,21-7
1198 paddd xmm5,XMMWORD[((-128))+rbp]
1199 pxor xmm7,xmm1
1200
1201 psrld xmm1,25-11
1202 movdqa xmm0,xmm12
1203
1204 pxor xmm7,xmm2
1205 movdqa xmm3,xmm12
1206 pslld xmm2,26-21
1207 pandn xmm0,xmm14
1208 pand xmm3,xmm13
1209 pxor xmm7,xmm1
1210
1211
1212 movdqa xmm1,xmm8
1213 pxor xmm7,xmm2
1214 movdqa xmm2,xmm8
1215 psrld xmm1,2
1216 paddd xmm5,xmm7
1217 pxor xmm0,xmm3
1218 movdqa xmm3,xmm9
1219 movdqa xmm7,xmm8
1220 pslld xmm2,10
1221 pxor xmm3,xmm8
1222
1223
1224 psrld xmm7,13
1225 pxor xmm1,xmm2
1226 paddd xmm5,xmm0
1227 pslld xmm2,19-10
1228 pand xmm4,xmm3
1229 pxor xmm1,xmm7
1230
1231
1232 psrld xmm7,22-13
1233 pxor xmm1,xmm2
1234 movdqa xmm15,xmm9
1235 pslld xmm2,30-19
1236 pxor xmm7,xmm1
1237 pxor xmm15,xmm4
1238 paddd xmm11,xmm5
1239 pxor xmm7,xmm2
1240
1241 paddd xmm15,xmm5
1242 paddd xmm15,xmm7
1243 movdqa xmm5,XMMWORD[((32-128))+rax]
1244 paddd xmm6,XMMWORD[((160-128))+rax]
1245
1246 movdqa xmm7,xmm5
1247 movdqa xmm1,xmm5
1248 psrld xmm7,3
1249 movdqa xmm2,xmm5
1250
1251 psrld xmm1,7
1252 movdqa xmm0,XMMWORD[((240-128))+rax]
1253 pslld xmm2,14
1254 pxor xmm7,xmm1
1255 psrld xmm1,18-7
1256 movdqa xmm4,xmm0
1257 pxor xmm7,xmm2
1258 pslld xmm2,25-14
1259 pxor xmm7,xmm1
1260 psrld xmm0,10
1261 movdqa xmm1,xmm4
1262
1263 psrld xmm4,17
1264 pxor xmm7,xmm2
1265 pslld xmm1,13
1266 paddd xmm6,xmm7
1267 pxor xmm0,xmm4
1268 psrld xmm4,19-17
1269 pxor xmm0,xmm1
1270 pslld xmm1,15-13
1271 pxor xmm0,xmm4
1272 pxor xmm0,xmm1
1273 paddd xmm6,xmm0
1274 movdqa xmm7,xmm11
1275
1276 movdqa xmm2,xmm11
1277
1278 psrld xmm7,6
1279 movdqa xmm1,xmm11
1280 pslld xmm2,7
1281 movdqa XMMWORD[(16-128)+rax],xmm6
1282 paddd xmm6,xmm14
1283
1284 psrld xmm1,11
1285 pxor xmm7,xmm2
1286 pslld xmm2,21-7
1287 paddd xmm6,XMMWORD[((-96))+rbp]
1288 pxor xmm7,xmm1
1289
1290 psrld xmm1,25-11
1291 movdqa xmm0,xmm11
1292
1293 pxor xmm7,xmm2
1294 movdqa xmm4,xmm11
1295 pslld xmm2,26-21
1296 pandn xmm0,xmm13
1297 pand xmm4,xmm12
1298 pxor xmm7,xmm1
1299
1300
1301 movdqa xmm1,xmm15
1302 pxor xmm7,xmm2
1303 movdqa xmm2,xmm15
1304 psrld xmm1,2
1305 paddd xmm6,xmm7
1306 pxor xmm0,xmm4
1307 movdqa xmm4,xmm8
1308 movdqa xmm7,xmm15
1309 pslld xmm2,10
1310 pxor xmm4,xmm15
1311
1312
1313 psrld xmm7,13
1314 pxor xmm1,xmm2
1315 paddd xmm6,xmm0
1316 pslld xmm2,19-10
1317 pand xmm3,xmm4
1318 pxor xmm1,xmm7
1319
1320
1321 psrld xmm7,22-13
1322 pxor xmm1,xmm2
1323 movdqa xmm14,xmm8
1324 pslld xmm2,30-19
1325 pxor xmm7,xmm1
1326 pxor xmm14,xmm3
1327 paddd xmm10,xmm6
1328 pxor xmm7,xmm2
1329
1330 paddd xmm14,xmm6
1331 paddd xmm14,xmm7
1332 movdqa xmm6,XMMWORD[((48-128))+rax]
1333 paddd xmm5,XMMWORD[((176-128))+rax]
1334
1335 movdqa xmm7,xmm6
1336 movdqa xmm1,xmm6
1337 psrld xmm7,3
1338 movdqa xmm2,xmm6
1339
1340 psrld xmm1,7
1341 movdqa xmm0,XMMWORD[((0-128))+rax]
1342 pslld xmm2,14
1343 pxor xmm7,xmm1
1344 psrld xmm1,18-7
1345 movdqa xmm3,xmm0
1346 pxor xmm7,xmm2
1347 pslld xmm2,25-14
1348 pxor xmm7,xmm1
1349 psrld xmm0,10
1350 movdqa xmm1,xmm3
1351
1352 psrld xmm3,17
1353 pxor xmm7,xmm2
1354 pslld xmm1,13
1355 paddd xmm5,xmm7
1356 pxor xmm0,xmm3
1357 psrld xmm3,19-17
1358 pxor xmm0,xmm1
1359 pslld xmm1,15-13
1360 pxor xmm0,xmm3
1361 pxor xmm0,xmm1
1362 paddd xmm5,xmm0
1363 movdqa xmm7,xmm10
1364
1365 movdqa xmm2,xmm10
1366
1367 psrld xmm7,6
1368 movdqa xmm1,xmm10
1369 pslld xmm2,7
1370 movdqa XMMWORD[(32-128)+rax],xmm5
1371 paddd xmm5,xmm13
1372
1373 psrld xmm1,11
1374 pxor xmm7,xmm2
1375 pslld xmm2,21-7
1376 paddd xmm5,XMMWORD[((-64))+rbp]
1377 pxor xmm7,xmm1
1378
1379 psrld xmm1,25-11
1380 movdqa xmm0,xmm10
1381
1382 pxor xmm7,xmm2
1383 movdqa xmm3,xmm10
1384 pslld xmm2,26-21
1385 pandn xmm0,xmm12
1386 pand xmm3,xmm11
1387 pxor xmm7,xmm1
1388
1389
1390 movdqa xmm1,xmm14
1391 pxor xmm7,xmm2
1392 movdqa xmm2,xmm14
1393 psrld xmm1,2
1394 paddd xmm5,xmm7
1395 pxor xmm0,xmm3
1396 movdqa xmm3,xmm15
1397 movdqa xmm7,xmm14
1398 pslld xmm2,10
1399 pxor xmm3,xmm14
1400
1401
1402 psrld xmm7,13
1403 pxor xmm1,xmm2
1404 paddd xmm5,xmm0
1405 pslld xmm2,19-10
1406 pand xmm4,xmm3
1407 pxor xmm1,xmm7
1408
1409
1410 psrld xmm7,22-13
1411 pxor xmm1,xmm2
1412 movdqa xmm13,xmm15
1413 pslld xmm2,30-19
1414 pxor xmm7,xmm1
1415 pxor xmm13,xmm4
1416 paddd xmm9,xmm5
1417 pxor xmm7,xmm2
1418
1419 paddd xmm13,xmm5
1420 paddd xmm13,xmm7
1421 movdqa xmm5,XMMWORD[((64-128))+rax]
1422 paddd xmm6,XMMWORD[((192-128))+rax]
1423
1424 movdqa xmm7,xmm5
1425 movdqa xmm1,xmm5
1426 psrld xmm7,3
1427 movdqa xmm2,xmm5
1428
1429 psrld xmm1,7
1430 movdqa xmm0,XMMWORD[((16-128))+rax]
1431 pslld xmm2,14
1432 pxor xmm7,xmm1
1433 psrld xmm1,18-7
1434 movdqa xmm4,xmm0
1435 pxor xmm7,xmm2
1436 pslld xmm2,25-14
1437 pxor xmm7,xmm1
1438 psrld xmm0,10
1439 movdqa xmm1,xmm4
1440
1441 psrld xmm4,17
1442 pxor xmm7,xmm2
1443 pslld xmm1,13
1444 paddd xmm6,xmm7
1445 pxor xmm0,xmm4
1446 psrld xmm4,19-17
1447 pxor xmm0,xmm1
1448 pslld xmm1,15-13
1449 pxor xmm0,xmm4
1450 pxor xmm0,xmm1
1451 paddd xmm6,xmm0
1452 movdqa xmm7,xmm9
1453
1454 movdqa xmm2,xmm9
1455
1456 psrld xmm7,6
1457 movdqa xmm1,xmm9
1458 pslld xmm2,7
1459 movdqa XMMWORD[(48-128)+rax],xmm6
1460 paddd xmm6,xmm12
1461
1462 psrld xmm1,11
1463 pxor xmm7,xmm2
1464 pslld xmm2,21-7
1465 paddd xmm6,XMMWORD[((-32))+rbp]
1466 pxor xmm7,xmm1
1467
1468 psrld xmm1,25-11
1469 movdqa xmm0,xmm9
1470
1471 pxor xmm7,xmm2
1472 movdqa xmm4,xmm9
1473 pslld xmm2,26-21
1474 pandn xmm0,xmm11
1475 pand xmm4,xmm10
1476 pxor xmm7,xmm1
1477
1478
1479 movdqa xmm1,xmm13
1480 pxor xmm7,xmm2
1481 movdqa xmm2,xmm13
1482 psrld xmm1,2
1483 paddd xmm6,xmm7
1484 pxor xmm0,xmm4
1485 movdqa xmm4,xmm14
1486 movdqa xmm7,xmm13
1487 pslld xmm2,10
1488 pxor xmm4,xmm13
1489
1490
1491 psrld xmm7,13
1492 pxor xmm1,xmm2
1493 paddd xmm6,xmm0
1494 pslld xmm2,19-10
1495 pand xmm3,xmm4
1496 pxor xmm1,xmm7
1497
1498
1499 psrld xmm7,22-13
1500 pxor xmm1,xmm2
1501 movdqa xmm12,xmm14
1502 pslld xmm2,30-19
1503 pxor xmm7,xmm1
1504 pxor xmm12,xmm3
1505 paddd xmm8,xmm6
1506 pxor xmm7,xmm2
1507
1508 paddd xmm12,xmm6
1509 paddd xmm12,xmm7
1510 movdqa xmm6,XMMWORD[((80-128))+rax]
1511 paddd xmm5,XMMWORD[((208-128))+rax]
1512
1513 movdqa xmm7,xmm6
1514 movdqa xmm1,xmm6
1515 psrld xmm7,3
1516 movdqa xmm2,xmm6
1517
1518 psrld xmm1,7
1519 movdqa xmm0,XMMWORD[((32-128))+rax]
1520 pslld xmm2,14
1521 pxor xmm7,xmm1
1522 psrld xmm1,18-7
1523 movdqa xmm3,xmm0
1524 pxor xmm7,xmm2
1525 pslld xmm2,25-14
1526 pxor xmm7,xmm1
1527 psrld xmm0,10
1528 movdqa xmm1,xmm3
1529
1530 psrld xmm3,17
1531 pxor xmm7,xmm2
1532 pslld xmm1,13
1533 paddd xmm5,xmm7
1534 pxor xmm0,xmm3
1535 psrld xmm3,19-17
1536 pxor xmm0,xmm1
1537 pslld xmm1,15-13
1538 pxor xmm0,xmm3
1539 pxor xmm0,xmm1
1540 paddd xmm5,xmm0
1541 movdqa xmm7,xmm8
1542
1543 movdqa xmm2,xmm8
1544
1545 psrld xmm7,6
1546 movdqa xmm1,xmm8
1547 pslld xmm2,7
1548 movdqa XMMWORD[(64-128)+rax],xmm5
1549 paddd xmm5,xmm11
1550
1551 psrld xmm1,11
1552 pxor xmm7,xmm2
1553 pslld xmm2,21-7
1554 paddd xmm5,XMMWORD[rbp]
1555 pxor xmm7,xmm1
1556
1557 psrld xmm1,25-11
1558 movdqa xmm0,xmm8
1559
1560 pxor xmm7,xmm2
1561 movdqa xmm3,xmm8
1562 pslld xmm2,26-21
1563 pandn xmm0,xmm10
1564 pand xmm3,xmm9
1565 pxor xmm7,xmm1
1566
1567
1568 movdqa xmm1,xmm12
1569 pxor xmm7,xmm2
1570 movdqa xmm2,xmm12
1571 psrld xmm1,2
1572 paddd xmm5,xmm7
1573 pxor xmm0,xmm3
1574 movdqa xmm3,xmm13
1575 movdqa xmm7,xmm12
1576 pslld xmm2,10
1577 pxor xmm3,xmm12
1578
1579
1580 psrld xmm7,13
1581 pxor xmm1,xmm2
1582 paddd xmm5,xmm0
1583 pslld xmm2,19-10
1584 pand xmm4,xmm3
1585 pxor xmm1,xmm7
1586
1587
1588 psrld xmm7,22-13
1589 pxor xmm1,xmm2
1590 movdqa xmm11,xmm13
1591 pslld xmm2,30-19
1592 pxor xmm7,xmm1
1593 pxor xmm11,xmm4
1594 paddd xmm15,xmm5
1595 pxor xmm7,xmm2
1596
1597 paddd xmm11,xmm5
1598 paddd xmm11,xmm7
1599 movdqa xmm5,XMMWORD[((96-128))+rax]
1600 paddd xmm6,XMMWORD[((224-128))+rax]
1601
1602 movdqa xmm7,xmm5
1603 movdqa xmm1,xmm5
1604 psrld xmm7,3
1605 movdqa xmm2,xmm5
1606
1607 psrld xmm1,7
1608 movdqa xmm0,XMMWORD[((48-128))+rax]
1609 pslld xmm2,14
1610 pxor xmm7,xmm1
1611 psrld xmm1,18-7
1612 movdqa xmm4,xmm0
1613 pxor xmm7,xmm2
1614 pslld xmm2,25-14
1615 pxor xmm7,xmm1
1616 psrld xmm0,10
1617 movdqa xmm1,xmm4
1618
1619 psrld xmm4,17
1620 pxor xmm7,xmm2
1621 pslld xmm1,13
1622 paddd xmm6,xmm7
1623 pxor xmm0,xmm4
1624 psrld xmm4,19-17
1625 pxor xmm0,xmm1
1626 pslld xmm1,15-13
1627 pxor xmm0,xmm4
1628 pxor xmm0,xmm1
1629 paddd xmm6,xmm0
1630 movdqa xmm7,xmm15
1631
1632 movdqa xmm2,xmm15
1633
1634 psrld xmm7,6
1635 movdqa xmm1,xmm15
1636 pslld xmm2,7
1637 movdqa XMMWORD[(80-128)+rax],xmm6
1638 paddd xmm6,xmm10
1639
1640 psrld xmm1,11
1641 pxor xmm7,xmm2
1642 pslld xmm2,21-7
1643 paddd xmm6,XMMWORD[32+rbp]
1644 pxor xmm7,xmm1
1645
1646 psrld xmm1,25-11
1647 movdqa xmm0,xmm15
1648
1649 pxor xmm7,xmm2
1650 movdqa xmm4,xmm15
1651 pslld xmm2,26-21
1652 pandn xmm0,xmm9
1653 pand xmm4,xmm8
1654 pxor xmm7,xmm1
1655
1656
1657 movdqa xmm1,xmm11
1658 pxor xmm7,xmm2
1659 movdqa xmm2,xmm11
1660 psrld xmm1,2
1661 paddd xmm6,xmm7
1662 pxor xmm0,xmm4
1663 movdqa xmm4,xmm12
1664 movdqa xmm7,xmm11
1665 pslld xmm2,10
1666 pxor xmm4,xmm11
1667
1668
1669 psrld xmm7,13
1670 pxor xmm1,xmm2
1671 paddd xmm6,xmm0
1672 pslld xmm2,19-10
1673 pand xmm3,xmm4
1674 pxor xmm1,xmm7
1675
1676
1677 psrld xmm7,22-13
1678 pxor xmm1,xmm2
1679 movdqa xmm10,xmm12
1680 pslld xmm2,30-19
1681 pxor xmm7,xmm1
1682 pxor xmm10,xmm3
1683 paddd xmm14,xmm6
1684 pxor xmm7,xmm2
1685
1686 paddd xmm10,xmm6
1687 paddd xmm10,xmm7
1688 movdqa xmm6,XMMWORD[((112-128))+rax]
1689 paddd xmm5,XMMWORD[((240-128))+rax]
1690
1691 movdqa xmm7,xmm6
1692 movdqa xmm1,xmm6
1693 psrld xmm7,3
1694 movdqa xmm2,xmm6
1695
1696 psrld xmm1,7
1697 movdqa xmm0,XMMWORD[((64-128))+rax]
1698 pslld xmm2,14
1699 pxor xmm7,xmm1
1700 psrld xmm1,18-7
1701 movdqa xmm3,xmm0
1702 pxor xmm7,xmm2
1703 pslld xmm2,25-14
1704 pxor xmm7,xmm1
1705 psrld xmm0,10
1706 movdqa xmm1,xmm3
1707
1708 psrld xmm3,17
1709 pxor xmm7,xmm2
1710 pslld xmm1,13
1711 paddd xmm5,xmm7
1712 pxor xmm0,xmm3
1713 psrld xmm3,19-17
1714 pxor xmm0,xmm1
1715 pslld xmm1,15-13
1716 pxor xmm0,xmm3
1717 pxor xmm0,xmm1
1718 paddd xmm5,xmm0
1719 movdqa xmm7,xmm14
1720
1721 movdqa xmm2,xmm14
1722
1723 psrld xmm7,6
1724 movdqa xmm1,xmm14
1725 pslld xmm2,7
1726 movdqa XMMWORD[(96-128)+rax],xmm5
1727 paddd xmm5,xmm9
1728
1729 psrld xmm1,11
1730 pxor xmm7,xmm2
1731 pslld xmm2,21-7
1732 paddd xmm5,XMMWORD[64+rbp]
1733 pxor xmm7,xmm1
1734
1735 psrld xmm1,25-11
1736 movdqa xmm0,xmm14
1737
1738 pxor xmm7,xmm2
1739 movdqa xmm3,xmm14
1740 pslld xmm2,26-21
1741 pandn xmm0,xmm8
1742 pand xmm3,xmm15
1743 pxor xmm7,xmm1
1744
1745
1746 movdqa xmm1,xmm10
1747 pxor xmm7,xmm2
1748 movdqa xmm2,xmm10
1749 psrld xmm1,2
1750 paddd xmm5,xmm7
1751 pxor xmm0,xmm3
1752 movdqa xmm3,xmm11
1753 movdqa xmm7,xmm10
1754 pslld xmm2,10
1755 pxor xmm3,xmm10
1756
1757
1758 psrld xmm7,13
1759 pxor xmm1,xmm2
1760 paddd xmm5,xmm0
1761 pslld xmm2,19-10
1762 pand xmm4,xmm3
1763 pxor xmm1,xmm7
1764
1765
1766 psrld xmm7,22-13
1767 pxor xmm1,xmm2
1768 movdqa xmm9,xmm11
1769 pslld xmm2,30-19
1770 pxor xmm7,xmm1
1771 pxor xmm9,xmm4
1772 paddd xmm13,xmm5
1773 pxor xmm7,xmm2
1774
1775 paddd xmm9,xmm5
1776 paddd xmm9,xmm7
1777 movdqa xmm5,XMMWORD[((128-128))+rax]
1778 paddd xmm6,XMMWORD[((0-128))+rax]
1779
1780 movdqa xmm7,xmm5
1781 movdqa xmm1,xmm5
1782 psrld xmm7,3
1783 movdqa xmm2,xmm5
1784
1785 psrld xmm1,7
1786 movdqa xmm0,XMMWORD[((80-128))+rax]
1787 pslld xmm2,14
1788 pxor xmm7,xmm1
1789 psrld xmm1,18-7
1790 movdqa xmm4,xmm0
1791 pxor xmm7,xmm2
1792 pslld xmm2,25-14
1793 pxor xmm7,xmm1
1794 psrld xmm0,10
1795 movdqa xmm1,xmm4
1796
1797 psrld xmm4,17
1798 pxor xmm7,xmm2
1799 pslld xmm1,13
1800 paddd xmm6,xmm7
1801 pxor xmm0,xmm4
1802 psrld xmm4,19-17
1803 pxor xmm0,xmm1
1804 pslld xmm1,15-13
1805 pxor xmm0,xmm4
1806 pxor xmm0,xmm1
1807 paddd xmm6,xmm0
1808 movdqa xmm7,xmm13
1809
1810 movdqa xmm2,xmm13
1811
1812 psrld xmm7,6
1813 movdqa xmm1,xmm13
1814 pslld xmm2,7
1815 movdqa XMMWORD[(112-128)+rax],xmm6
1816 paddd xmm6,xmm8
1817
1818 psrld xmm1,11
1819 pxor xmm7,xmm2
1820 pslld xmm2,21-7
1821 paddd xmm6,XMMWORD[96+rbp]
1822 pxor xmm7,xmm1
1823
1824 psrld xmm1,25-11
1825 movdqa xmm0,xmm13
1826
1827 pxor xmm7,xmm2
1828 movdqa xmm4,xmm13
1829 pslld xmm2,26-21
1830 pandn xmm0,xmm15
1831 pand xmm4,xmm14
1832 pxor xmm7,xmm1
1833
1834
1835 movdqa xmm1,xmm9
1836 pxor xmm7,xmm2
1837 movdqa xmm2,xmm9
1838 psrld xmm1,2
1839 paddd xmm6,xmm7
1840 pxor xmm0,xmm4
1841 movdqa xmm4,xmm10
1842 movdqa xmm7,xmm9
1843 pslld xmm2,10
1844 pxor xmm4,xmm9
1845
1846
1847 psrld xmm7,13
1848 pxor xmm1,xmm2
1849 paddd xmm6,xmm0
1850 pslld xmm2,19-10
1851 pand xmm3,xmm4
1852 pxor xmm1,xmm7
1853
1854
1855 psrld xmm7,22-13
1856 pxor xmm1,xmm2
1857 movdqa xmm8,xmm10
1858 pslld xmm2,30-19
1859 pxor xmm7,xmm1
1860 pxor xmm8,xmm3
1861 paddd xmm12,xmm6
1862 pxor xmm7,xmm2
1863
1864 paddd xmm8,xmm6
1865 paddd xmm8,xmm7
1866 lea rbp,[256+rbp]
1867 movdqa xmm6,XMMWORD[((144-128))+rax]
1868 paddd xmm5,XMMWORD[((16-128))+rax]
1869
1870 movdqa xmm7,xmm6
1871 movdqa xmm1,xmm6
1872 psrld xmm7,3
1873 movdqa xmm2,xmm6
1874
1875 psrld xmm1,7
1876 movdqa xmm0,XMMWORD[((96-128))+rax]
1877 pslld xmm2,14
1878 pxor xmm7,xmm1
1879 psrld xmm1,18-7
1880 movdqa xmm3,xmm0
1881 pxor xmm7,xmm2
1882 pslld xmm2,25-14
1883 pxor xmm7,xmm1
1884 psrld xmm0,10
1885 movdqa xmm1,xmm3
1886
1887 psrld xmm3,17
1888 pxor xmm7,xmm2
1889 pslld xmm1,13
1890 paddd xmm5,xmm7
1891 pxor xmm0,xmm3
1892 psrld xmm3,19-17
1893 pxor xmm0,xmm1
1894 pslld xmm1,15-13
1895 pxor xmm0,xmm3
1896 pxor xmm0,xmm1
1897 paddd xmm5,xmm0
1898 movdqa xmm7,xmm12
1899
1900 movdqa xmm2,xmm12
1901
1902 psrld xmm7,6
1903 movdqa xmm1,xmm12
1904 pslld xmm2,7
1905 movdqa XMMWORD[(128-128)+rax],xmm5
1906 paddd xmm5,xmm15
1907
1908 psrld xmm1,11
1909 pxor xmm7,xmm2
1910 pslld xmm2,21-7
1911 paddd xmm5,XMMWORD[((-128))+rbp]
1912 pxor xmm7,xmm1
1913
1914 psrld xmm1,25-11
1915 movdqa xmm0,xmm12
1916
1917 pxor xmm7,xmm2
1918 movdqa xmm3,xmm12
1919 pslld xmm2,26-21
1920 pandn xmm0,xmm14
1921 pand xmm3,xmm13
1922 pxor xmm7,xmm1
1923
1924
1925 movdqa xmm1,xmm8
1926 pxor xmm7,xmm2
1927 movdqa xmm2,xmm8
1928 psrld xmm1,2
1929 paddd xmm5,xmm7
1930 pxor xmm0,xmm3
1931 movdqa xmm3,xmm9
1932 movdqa xmm7,xmm8
1933 pslld xmm2,10
1934 pxor xmm3,xmm8
1935
1936
1937 psrld xmm7,13
1938 pxor xmm1,xmm2
1939 paddd xmm5,xmm0
1940 pslld xmm2,19-10
1941 pand xmm4,xmm3
1942 pxor xmm1,xmm7
1943
1944
1945 psrld xmm7,22-13
1946 pxor xmm1,xmm2
1947 movdqa xmm15,xmm9
1948 pslld xmm2,30-19
1949 pxor xmm7,xmm1
1950 pxor xmm15,xmm4
1951 paddd xmm11,xmm5
1952 pxor xmm7,xmm2
1953
1954 paddd xmm15,xmm5
1955 paddd xmm15,xmm7
1956 movdqa xmm5,XMMWORD[((160-128))+rax]
1957 paddd xmm6,XMMWORD[((32-128))+rax]
1958
1959 movdqa xmm7,xmm5
1960 movdqa xmm1,xmm5
1961 psrld xmm7,3
1962 movdqa xmm2,xmm5
1963
1964 psrld xmm1,7
1965 movdqa xmm0,XMMWORD[((112-128))+rax]
1966 pslld xmm2,14
1967 pxor xmm7,xmm1
1968 psrld xmm1,18-7
1969 movdqa xmm4,xmm0
1970 pxor xmm7,xmm2
1971 pslld xmm2,25-14
1972 pxor xmm7,xmm1
1973 psrld xmm0,10
1974 movdqa xmm1,xmm4
1975
1976 psrld xmm4,17
1977 pxor xmm7,xmm2
1978 pslld xmm1,13
1979 paddd xmm6,xmm7
1980 pxor xmm0,xmm4
1981 psrld xmm4,19-17
1982 pxor xmm0,xmm1
1983 pslld xmm1,15-13
1984 pxor xmm0,xmm4
1985 pxor xmm0,xmm1
1986 paddd xmm6,xmm0
1987 movdqa xmm7,xmm11
1988
1989 movdqa xmm2,xmm11
1990
1991 psrld xmm7,6
1992 movdqa xmm1,xmm11
1993 pslld xmm2,7
1994 movdqa XMMWORD[(144-128)+rax],xmm6
1995 paddd xmm6,xmm14
1996
1997 psrld xmm1,11
1998 pxor xmm7,xmm2
1999 pslld xmm2,21-7
2000 paddd xmm6,XMMWORD[((-96))+rbp]
2001 pxor xmm7,xmm1
2002
2003 psrld xmm1,25-11
2004 movdqa xmm0,xmm11
2005
2006 pxor xmm7,xmm2
2007 movdqa xmm4,xmm11
2008 pslld xmm2,26-21
2009 pandn xmm0,xmm13
2010 pand xmm4,xmm12
2011 pxor xmm7,xmm1
2012
2013
2014 movdqa xmm1,xmm15
2015 pxor xmm7,xmm2
2016 movdqa xmm2,xmm15
2017 psrld xmm1,2
2018 paddd xmm6,xmm7
2019 pxor xmm0,xmm4
2020 movdqa xmm4,xmm8
2021 movdqa xmm7,xmm15
2022 pslld xmm2,10
2023 pxor xmm4,xmm15
2024
2025
2026 psrld xmm7,13
2027 pxor xmm1,xmm2
2028 paddd xmm6,xmm0
2029 pslld xmm2,19-10
2030 pand xmm3,xmm4
2031 pxor xmm1,xmm7
2032
2033
2034 psrld xmm7,22-13
2035 pxor xmm1,xmm2
2036 movdqa xmm14,xmm8
2037 pslld xmm2,30-19
2038 pxor xmm7,xmm1
2039 pxor xmm14,xmm3
2040 paddd xmm10,xmm6
2041 pxor xmm7,xmm2
2042
2043 paddd xmm14,xmm6
2044 paddd xmm14,xmm7
2045 movdqa xmm6,XMMWORD[((176-128))+rax]
2046 paddd xmm5,XMMWORD[((48-128))+rax]
2047
2048 movdqa xmm7,xmm6
2049 movdqa xmm1,xmm6
2050 psrld xmm7,3
2051 movdqa xmm2,xmm6
2052
2053 psrld xmm1,7
2054 movdqa xmm0,XMMWORD[((128-128))+rax]
2055 pslld xmm2,14
2056 pxor xmm7,xmm1
2057 psrld xmm1,18-7
2058 movdqa xmm3,xmm0
2059 pxor xmm7,xmm2
2060 pslld xmm2,25-14
2061 pxor xmm7,xmm1
2062 psrld xmm0,10
2063 movdqa xmm1,xmm3
2064
2065 psrld xmm3,17
2066 pxor xmm7,xmm2
2067 pslld xmm1,13
2068 paddd xmm5,xmm7
2069 pxor xmm0,xmm3
2070 psrld xmm3,19-17
2071 pxor xmm0,xmm1
2072 pslld xmm1,15-13
2073 pxor xmm0,xmm3
2074 pxor xmm0,xmm1
2075 paddd xmm5,xmm0
2076 movdqa xmm7,xmm10
2077
2078 movdqa xmm2,xmm10
2079
2080 psrld xmm7,6
2081 movdqa xmm1,xmm10
2082 pslld xmm2,7
2083 movdqa XMMWORD[(160-128)+rax],xmm5
2084 paddd xmm5,xmm13
2085
2086 psrld xmm1,11
2087 pxor xmm7,xmm2
2088 pslld xmm2,21-7
2089 paddd xmm5,XMMWORD[((-64))+rbp]
2090 pxor xmm7,xmm1
2091
2092 psrld xmm1,25-11
2093 movdqa xmm0,xmm10
2094
2095 pxor xmm7,xmm2
2096 movdqa xmm3,xmm10
2097 pslld xmm2,26-21
2098 pandn xmm0,xmm12
2099 pand xmm3,xmm11
2100 pxor xmm7,xmm1
2101
2102
2103 movdqa xmm1,xmm14
2104 pxor xmm7,xmm2
2105 movdqa xmm2,xmm14
2106 psrld xmm1,2
2107 paddd xmm5,xmm7
2108 pxor xmm0,xmm3
2109 movdqa xmm3,xmm15
2110 movdqa xmm7,xmm14
2111 pslld xmm2,10
2112 pxor xmm3,xmm14
2113
2114
2115 psrld xmm7,13
2116 pxor xmm1,xmm2
2117 paddd xmm5,xmm0
2118 pslld xmm2,19-10
2119 pand xmm4,xmm3
2120 pxor xmm1,xmm7
2121
2122
2123 psrld xmm7,22-13
2124 pxor xmm1,xmm2
2125 movdqa xmm13,xmm15
2126 pslld xmm2,30-19
2127 pxor xmm7,xmm1
2128 pxor xmm13,xmm4
2129 paddd xmm9,xmm5
2130 pxor xmm7,xmm2
2131
2132 paddd xmm13,xmm5
2133 paddd xmm13,xmm7
2134 movdqa xmm5,XMMWORD[((192-128))+rax]
2135 paddd xmm6,XMMWORD[((64-128))+rax]
2136
2137 movdqa xmm7,xmm5
2138 movdqa xmm1,xmm5
2139 psrld xmm7,3
2140 movdqa xmm2,xmm5
2141
2142 psrld xmm1,7
2143 movdqa xmm0,XMMWORD[((144-128))+rax]
2144 pslld xmm2,14
2145 pxor xmm7,xmm1
2146 psrld xmm1,18-7
2147 movdqa xmm4,xmm0
2148 pxor xmm7,xmm2
2149 pslld xmm2,25-14
2150 pxor xmm7,xmm1
2151 psrld xmm0,10
2152 movdqa xmm1,xmm4
2153
2154 psrld xmm4,17
2155 pxor xmm7,xmm2
2156 pslld xmm1,13
2157 paddd xmm6,xmm7
2158 pxor xmm0,xmm4
2159 psrld xmm4,19-17
2160 pxor xmm0,xmm1
2161 pslld xmm1,15-13
2162 pxor xmm0,xmm4
2163 pxor xmm0,xmm1
2164 paddd xmm6,xmm0
2165 movdqa xmm7,xmm9
2166
2167 movdqa xmm2,xmm9
2168
2169 psrld xmm7,6
2170 movdqa xmm1,xmm9
2171 pslld xmm2,7
2172 movdqa XMMWORD[(176-128)+rax],xmm6
2173 paddd xmm6,xmm12
2174
2175 psrld xmm1,11
2176 pxor xmm7,xmm2
2177 pslld xmm2,21-7
2178 paddd xmm6,XMMWORD[((-32))+rbp]
2179 pxor xmm7,xmm1
2180
2181 psrld xmm1,25-11
2182 movdqa xmm0,xmm9
2183
2184 pxor xmm7,xmm2
2185 movdqa xmm4,xmm9
2186 pslld xmm2,26-21
2187 pandn xmm0,xmm11
2188 pand xmm4,xmm10
2189 pxor xmm7,xmm1
2190
2191
2192 movdqa xmm1,xmm13
2193 pxor xmm7,xmm2
2194 movdqa xmm2,xmm13
2195 psrld xmm1,2
2196 paddd xmm6,xmm7
2197 pxor xmm0,xmm4
2198 movdqa xmm4,xmm14
2199 movdqa xmm7,xmm13
2200 pslld xmm2,10
2201 pxor xmm4,xmm13
2202
2203
2204 psrld xmm7,13
2205 pxor xmm1,xmm2
2206 paddd xmm6,xmm0
2207 pslld xmm2,19-10
2208 pand xmm3,xmm4
2209 pxor xmm1,xmm7
2210
2211
2212 psrld xmm7,22-13
2213 pxor xmm1,xmm2
2214 movdqa xmm12,xmm14
2215 pslld xmm2,30-19
2216 pxor xmm7,xmm1
2217 pxor xmm12,xmm3
2218 paddd xmm8,xmm6
2219 pxor xmm7,xmm2
2220
2221 paddd xmm12,xmm6
2222 paddd xmm12,xmm7
2223 movdqa xmm6,XMMWORD[((208-128))+rax]
2224 paddd xmm5,XMMWORD[((80-128))+rax]
2225
2226 movdqa xmm7,xmm6
2227 movdqa xmm1,xmm6
2228 psrld xmm7,3
2229 movdqa xmm2,xmm6
2230
2231 psrld xmm1,7
2232 movdqa xmm0,XMMWORD[((160-128))+rax]
2233 pslld xmm2,14
2234 pxor xmm7,xmm1
2235 psrld xmm1,18-7
2236 movdqa xmm3,xmm0
2237 pxor xmm7,xmm2
2238 pslld xmm2,25-14
2239 pxor xmm7,xmm1
2240 psrld xmm0,10
2241 movdqa xmm1,xmm3
2242
2243 psrld xmm3,17
2244 pxor xmm7,xmm2
2245 pslld xmm1,13
2246 paddd xmm5,xmm7
2247 pxor xmm0,xmm3
2248 psrld xmm3,19-17
2249 pxor xmm0,xmm1
2250 pslld xmm1,15-13
2251 pxor xmm0,xmm3
2252 pxor xmm0,xmm1
2253 paddd xmm5,xmm0
2254 movdqa xmm7,xmm8
2255
2256 movdqa xmm2,xmm8
2257
2258 psrld xmm7,6
2259 movdqa xmm1,xmm8
2260 pslld xmm2,7
2261 movdqa XMMWORD[(192-128)+rax],xmm5
2262 paddd xmm5,xmm11
2263
2264 psrld xmm1,11
2265 pxor xmm7,xmm2
2266 pslld xmm2,21-7
2267 paddd xmm5,XMMWORD[rbp]
2268 pxor xmm7,xmm1
2269
2270 psrld xmm1,25-11
2271 movdqa xmm0,xmm8
2272
2273 pxor xmm7,xmm2
2274 movdqa xmm3,xmm8
2275 pslld xmm2,26-21
2276 pandn xmm0,xmm10
2277 pand xmm3,xmm9
2278 pxor xmm7,xmm1
2279
2280
2281 movdqa xmm1,xmm12
2282 pxor xmm7,xmm2
2283 movdqa xmm2,xmm12
2284 psrld xmm1,2
2285 paddd xmm5,xmm7
2286 pxor xmm0,xmm3
2287 movdqa xmm3,xmm13
2288 movdqa xmm7,xmm12
2289 pslld xmm2,10
2290 pxor xmm3,xmm12
2291
2292
2293 psrld xmm7,13
2294 pxor xmm1,xmm2
2295 paddd xmm5,xmm0
2296 pslld xmm2,19-10
2297 pand xmm4,xmm3
2298 pxor xmm1,xmm7
2299
2300
2301 psrld xmm7,22-13
2302 pxor xmm1,xmm2
2303 movdqa xmm11,xmm13
2304 pslld xmm2,30-19
2305 pxor xmm7,xmm1
2306 pxor xmm11,xmm4
2307 paddd xmm15,xmm5
2308 pxor xmm7,xmm2
2309
2310 paddd xmm11,xmm5
2311 paddd xmm11,xmm7
2312 movdqa xmm5,XMMWORD[((224-128))+rax]
2313 paddd xmm6,XMMWORD[((96-128))+rax]
2314
2315 movdqa xmm7,xmm5
2316 movdqa xmm1,xmm5
2317 psrld xmm7,3
2318 movdqa xmm2,xmm5
2319
2320 psrld xmm1,7
2321 movdqa xmm0,XMMWORD[((176-128))+rax]
2322 pslld xmm2,14
2323 pxor xmm7,xmm1
2324 psrld xmm1,18-7
2325 movdqa xmm4,xmm0
2326 pxor xmm7,xmm2
2327 pslld xmm2,25-14
2328 pxor xmm7,xmm1
2329 psrld xmm0,10
2330 movdqa xmm1,xmm4
2331
2332 psrld xmm4,17
2333 pxor xmm7,xmm2
2334 pslld xmm1,13
2335 paddd xmm6,xmm7
2336 pxor xmm0,xmm4
2337 psrld xmm4,19-17
2338 pxor xmm0,xmm1
2339 pslld xmm1,15-13
2340 pxor xmm0,xmm4
2341 pxor xmm0,xmm1
2342 paddd xmm6,xmm0
2343 movdqa xmm7,xmm15
2344
2345 movdqa xmm2,xmm15
2346
2347 psrld xmm7,6
2348 movdqa xmm1,xmm15
2349 pslld xmm2,7
2350 movdqa XMMWORD[(208-128)+rax],xmm6
2351 paddd xmm6,xmm10
2352
2353 psrld xmm1,11
2354 pxor xmm7,xmm2
2355 pslld xmm2,21-7
2356 paddd xmm6,XMMWORD[32+rbp]
2357 pxor xmm7,xmm1
2358
2359 psrld xmm1,25-11
2360 movdqa xmm0,xmm15
2361
2362 pxor xmm7,xmm2
2363 movdqa xmm4,xmm15
2364 pslld xmm2,26-21
2365 pandn xmm0,xmm9
2366 pand xmm4,xmm8
2367 pxor xmm7,xmm1
2368
2369
2370 movdqa xmm1,xmm11
2371 pxor xmm7,xmm2
2372 movdqa xmm2,xmm11
2373 psrld xmm1,2
2374 paddd xmm6,xmm7
2375 pxor xmm0,xmm4
2376 movdqa xmm4,xmm12
2377 movdqa xmm7,xmm11
2378 pslld xmm2,10
2379 pxor xmm4,xmm11
2380
2381
2382 psrld xmm7,13
2383 pxor xmm1,xmm2
2384 paddd xmm6,xmm0
2385 pslld xmm2,19-10
2386 pand xmm3,xmm4
2387 pxor xmm1,xmm7
2388
2389
2390 psrld xmm7,22-13
2391 pxor xmm1,xmm2
2392 movdqa xmm10,xmm12
2393 pslld xmm2,30-19
2394 pxor xmm7,xmm1
2395 pxor xmm10,xmm3
2396 paddd xmm14,xmm6
2397 pxor xmm7,xmm2
2398
2399 paddd xmm10,xmm6
2400 paddd xmm10,xmm7
2401 movdqa xmm6,XMMWORD[((240-128))+rax]
2402 paddd xmm5,XMMWORD[((112-128))+rax]
2403
2404 movdqa xmm7,xmm6
2405 movdqa xmm1,xmm6
2406 psrld xmm7,3
2407 movdqa xmm2,xmm6
2408
2409 psrld xmm1,7
2410 movdqa xmm0,XMMWORD[((192-128))+rax]
2411 pslld xmm2,14
2412 pxor xmm7,xmm1
2413 psrld xmm1,18-7
2414 movdqa xmm3,xmm0
2415 pxor xmm7,xmm2
2416 pslld xmm2,25-14
2417 pxor xmm7,xmm1
2418 psrld xmm0,10
2419 movdqa xmm1,xmm3
2420
2421 psrld xmm3,17
2422 pxor xmm7,xmm2
2423 pslld xmm1,13
2424 paddd xmm5,xmm7
2425 pxor xmm0,xmm3
2426 psrld xmm3,19-17
2427 pxor xmm0,xmm1
2428 pslld xmm1,15-13
2429 pxor xmm0,xmm3
2430 pxor xmm0,xmm1
2431 paddd xmm5,xmm0
2432 movdqa xmm7,xmm14
2433
2434 movdqa xmm2,xmm14
2435
2436 psrld xmm7,6
2437 movdqa xmm1,xmm14
2438 pslld xmm2,7
2439 movdqa XMMWORD[(224-128)+rax],xmm5
2440 paddd xmm5,xmm9
2441
2442 psrld xmm1,11
2443 pxor xmm7,xmm2
2444 pslld xmm2,21-7
2445 paddd xmm5,XMMWORD[64+rbp]
2446 pxor xmm7,xmm1
2447
2448 psrld xmm1,25-11
2449 movdqa xmm0,xmm14
2450
2451 pxor xmm7,xmm2
2452 movdqa xmm3,xmm14
2453 pslld xmm2,26-21
2454 pandn xmm0,xmm8
2455 pand xmm3,xmm15
2456 pxor xmm7,xmm1
2457
2458
2459 movdqa xmm1,xmm10
2460 pxor xmm7,xmm2
2461 movdqa xmm2,xmm10
2462 psrld xmm1,2
2463 paddd xmm5,xmm7
2464 pxor xmm0,xmm3
2465 movdqa xmm3,xmm11
2466 movdqa xmm7,xmm10
2467 pslld xmm2,10
2468 pxor xmm3,xmm10
2469
2470
2471 psrld xmm7,13
2472 pxor xmm1,xmm2
2473 paddd xmm5,xmm0
2474 pslld xmm2,19-10
2475 pand xmm4,xmm3
2476 pxor xmm1,xmm7
2477
2478
2479 psrld xmm7,22-13
2480 pxor xmm1,xmm2
2481 movdqa xmm9,xmm11
2482 pslld xmm2,30-19
2483 pxor xmm7,xmm1
2484 pxor xmm9,xmm4
2485 paddd xmm13,xmm5
2486 pxor xmm7,xmm2
2487
2488 paddd xmm9,xmm5
2489 paddd xmm9,xmm7
2490 movdqa xmm5,XMMWORD[((0-128))+rax]
2491 paddd xmm6,XMMWORD[((128-128))+rax]
2492
2493 movdqa xmm7,xmm5
2494 movdqa xmm1,xmm5
2495 psrld xmm7,3
2496 movdqa xmm2,xmm5
2497
2498 psrld xmm1,7
2499 movdqa xmm0,XMMWORD[((208-128))+rax]
2500 pslld xmm2,14
2501 pxor xmm7,xmm1
2502 psrld xmm1,18-7
2503 movdqa xmm4,xmm0
2504 pxor xmm7,xmm2
2505 pslld xmm2,25-14
2506 pxor xmm7,xmm1
2507 psrld xmm0,10
2508 movdqa xmm1,xmm4
2509
2510 psrld xmm4,17
2511 pxor xmm7,xmm2
2512 pslld xmm1,13
2513 paddd xmm6,xmm7
2514 pxor xmm0,xmm4
2515 psrld xmm4,19-17
2516 pxor xmm0,xmm1
2517 pslld xmm1,15-13
2518 pxor xmm0,xmm4
2519 pxor xmm0,xmm1
2520 paddd xmm6,xmm0
2521 movdqa xmm7,xmm13
2522
2523 movdqa xmm2,xmm13
2524
2525 psrld xmm7,6
2526 movdqa xmm1,xmm13
2527 pslld xmm2,7
2528 movdqa XMMWORD[(240-128)+rax],xmm6
2529 paddd xmm6,xmm8
2530
2531 psrld xmm1,11
2532 pxor xmm7,xmm2
2533 pslld xmm2,21-7
2534 paddd xmm6,XMMWORD[96+rbp]
2535 pxor xmm7,xmm1
2536
2537 psrld xmm1,25-11
2538 movdqa xmm0,xmm13
2539
2540 pxor xmm7,xmm2
2541 movdqa xmm4,xmm13
2542 pslld xmm2,26-21
2543 pandn xmm0,xmm15
2544 pand xmm4,xmm14
2545 pxor xmm7,xmm1
2546
2547
2548 movdqa xmm1,xmm9
2549 pxor xmm7,xmm2
2550 movdqa xmm2,xmm9
2551 psrld xmm1,2
2552 paddd xmm6,xmm7
2553 pxor xmm0,xmm4
2554 movdqa xmm4,xmm10
2555 movdqa xmm7,xmm9
2556 pslld xmm2,10
2557 pxor xmm4,xmm9
2558
2559
2560 psrld xmm7,13
2561 pxor xmm1,xmm2
2562 paddd xmm6,xmm0
2563 pslld xmm2,19-10
2564 pand xmm3,xmm4
2565 pxor xmm1,xmm7
2566
2567
2568 psrld xmm7,22-13
2569 pxor xmm1,xmm2
2570 movdqa xmm8,xmm10
2571 pslld xmm2,30-19
2572 pxor xmm7,xmm1
2573 pxor xmm8,xmm3
2574 paddd xmm12,xmm6
2575 pxor xmm7,xmm2
2576
2577 paddd xmm8,xmm6
2578 paddd xmm8,xmm7
2579 lea rbp,[256+rbp]
2580 dec ecx
2581 jnz NEAR $L$oop_16_xx
2582
2583 mov ecx,1
2584 lea rbp,[((K256+128))]
2585
2586 movdqa xmm7,XMMWORD[rbx]
2587 cmp ecx,DWORD[rbx]
2588 pxor xmm0,xmm0
2589 cmovge r8,rbp
2590 cmp ecx,DWORD[4+rbx]
2591 movdqa xmm6,xmm7
2592 cmovge r9,rbp
2593 cmp ecx,DWORD[8+rbx]
2594 pcmpgtd xmm6,xmm0
2595 cmovge r10,rbp
2596 cmp ecx,DWORD[12+rbx]
2597 paddd xmm7,xmm6
2598 cmovge r11,rbp
2599
2600 movdqu xmm0,XMMWORD[((0-128))+rdi]
2601 pand xmm8,xmm6
2602 movdqu xmm1,XMMWORD[((32-128))+rdi]
2603 pand xmm9,xmm6
2604 movdqu xmm2,XMMWORD[((64-128))+rdi]
2605 pand xmm10,xmm6
2606 movdqu xmm5,XMMWORD[((96-128))+rdi]
2607 pand xmm11,xmm6
2608 paddd xmm8,xmm0
2609 movdqu xmm0,XMMWORD[((128-128))+rdi]
2610 pand xmm12,xmm6
2611 paddd xmm9,xmm1
2612 movdqu xmm1,XMMWORD[((160-128))+rdi]
2613 pand xmm13,xmm6
2614 paddd xmm10,xmm2
2615 movdqu xmm2,XMMWORD[((192-128))+rdi]
2616 pand xmm14,xmm6
2617 paddd xmm11,xmm5
2618 movdqu xmm5,XMMWORD[((224-128))+rdi]
2619 pand xmm15,xmm6
2620 paddd xmm12,xmm0
2621 paddd xmm13,xmm1
2622 movdqu XMMWORD[(0-128)+rdi],xmm8
2623 paddd xmm14,xmm2
2624 movdqu XMMWORD[(32-128)+rdi],xmm9
2625 paddd xmm15,xmm5
2626 movdqu XMMWORD[(64-128)+rdi],xmm10
2627 movdqu XMMWORD[(96-128)+rdi],xmm11
2628 movdqu XMMWORD[(128-128)+rdi],xmm12
2629 movdqu XMMWORD[(160-128)+rdi],xmm13
2630 movdqu XMMWORD[(192-128)+rdi],xmm14
2631 movdqu XMMWORD[(224-128)+rdi],xmm15
2632
2633 movdqa XMMWORD[rbx],xmm7
2634 movdqa xmm6,XMMWORD[$L$pbswap]
2635 dec edx
2636 jnz NEAR $L$oop
2637
2638 mov edx,DWORD[280+rsp]
2639 lea rdi,[16+rdi]
2640 lea rsi,[64+rsi]
2641 dec edx
2642 jnz NEAR $L$oop_grande
2643
2644$L$done:
2645 mov rax,QWORD[272+rsp]
2646
2647 movaps xmm6,XMMWORD[((-184))+rax]
2648 movaps xmm7,XMMWORD[((-168))+rax]
2649 movaps xmm8,XMMWORD[((-152))+rax]
2650 movaps xmm9,XMMWORD[((-136))+rax]
2651 movaps xmm10,XMMWORD[((-120))+rax]
2652 movaps xmm11,XMMWORD[((-104))+rax]
2653 movaps xmm12,XMMWORD[((-88))+rax]
2654 movaps xmm13,XMMWORD[((-72))+rax]
2655 movaps xmm14,XMMWORD[((-56))+rax]
2656 movaps xmm15,XMMWORD[((-40))+rax]
2657 mov rbp,QWORD[((-16))+rax]
2658
2659 mov rbx,QWORD[((-8))+rax]
2660
2661 lea rsp,[rax]
2662
2663$L$epilogue:
2664 mov rdi,QWORD[8+rsp] ;WIN64 epilogue
2665 mov rsi,QWORD[16+rsp]
2666 DB 0F3h,0C3h ;repret
2667
2668$L$SEH_end_sha256_multi_block:
2669
2670ALIGN 32
2671sha256_multi_block_shaext:
2672 mov QWORD[8+rsp],rdi ;WIN64 prologue
2673 mov QWORD[16+rsp],rsi
2674 mov rax,rsp
2675$L$SEH_begin_sha256_multi_block_shaext:
2676 mov rdi,rcx
2677 mov rsi,rdx
2678 mov rdx,r8
2679
2680
2681
2682_shaext_shortcut:
2683 mov rax,rsp
2684
2685 push rbx
2686
2687 push rbp
2688
2689 lea rsp,[((-168))+rsp]
2690 movaps XMMWORD[rsp],xmm6
2691 movaps XMMWORD[16+rsp],xmm7
2692 movaps XMMWORD[32+rsp],xmm8
2693 movaps XMMWORD[48+rsp],xmm9
2694 movaps XMMWORD[(-120)+rax],xmm10
2695 movaps XMMWORD[(-104)+rax],xmm11
2696 movaps XMMWORD[(-88)+rax],xmm12
2697 movaps XMMWORD[(-72)+rax],xmm13
2698 movaps XMMWORD[(-56)+rax],xmm14
2699 movaps XMMWORD[(-40)+rax],xmm15
2700 sub rsp,288
2701 shl edx,1
2702 and rsp,-256
2703 lea rdi,[128+rdi]
2704 mov QWORD[272+rsp],rax
2705$L$body_shaext:
2706 lea rbx,[256+rsp]
2707 lea rbp,[((K256_shaext+128))]
2708
2709$L$oop_grande_shaext:
2710 mov DWORD[280+rsp],edx
2711 xor edx,edx
2712 mov r8,QWORD[rsi]
2713 mov ecx,DWORD[8+rsi]
2714 cmp ecx,edx
2715 cmovg edx,ecx
2716 test ecx,ecx
2717 mov DWORD[rbx],ecx
2718 cmovle r8,rsp
2719 mov r9,QWORD[16+rsi]
2720 mov ecx,DWORD[24+rsi]
2721 cmp ecx,edx
2722 cmovg edx,ecx
2723 test ecx,ecx
2724 mov DWORD[4+rbx],ecx
2725 cmovle r9,rsp
2726 test edx,edx
2727 jz NEAR $L$done_shaext
2728
2729 movq xmm12,QWORD[((0-128))+rdi]
2730 movq xmm4,QWORD[((32-128))+rdi]
2731 movq xmm13,QWORD[((64-128))+rdi]
2732 movq xmm5,QWORD[((96-128))+rdi]
2733 movq xmm8,QWORD[((128-128))+rdi]
2734 movq xmm9,QWORD[((160-128))+rdi]
2735 movq xmm10,QWORD[((192-128))+rdi]
2736 movq xmm11,QWORD[((224-128))+rdi]
2737
2738 punpckldq xmm12,xmm4
2739 punpckldq xmm13,xmm5
2740 punpckldq xmm8,xmm9
2741 punpckldq xmm10,xmm11
2742 movdqa xmm3,XMMWORD[((K256_shaext-16))]
2743
2744 movdqa xmm14,xmm12
2745 movdqa xmm15,xmm13
2746 punpcklqdq xmm12,xmm8
2747 punpcklqdq xmm13,xmm10
2748 punpckhqdq xmm14,xmm8
2749 punpckhqdq xmm15,xmm10
2750
2751 pshufd xmm12,xmm12,27
2752 pshufd xmm13,xmm13,27
2753 pshufd xmm14,xmm14,27
2754 pshufd xmm15,xmm15,27
2755 jmp NEAR $L$oop_shaext
2756
2757ALIGN 32
2758$L$oop_shaext:
2759 movdqu xmm4,XMMWORD[r8]
2760 movdqu xmm8,XMMWORD[r9]
2761 movdqu xmm5,XMMWORD[16+r8]
2762 movdqu xmm9,XMMWORD[16+r9]
2763 movdqu xmm6,XMMWORD[32+r8]
2764DB 102,15,56,0,227
2765 movdqu xmm10,XMMWORD[32+r9]
2766DB 102,68,15,56,0,195
2767 movdqu xmm7,XMMWORD[48+r8]
2768 lea r8,[64+r8]
2769 movdqu xmm11,XMMWORD[48+r9]
2770 lea r9,[64+r9]
2771
2772 movdqa xmm0,XMMWORD[((0-128))+rbp]
2773DB 102,15,56,0,235
2774 paddd xmm0,xmm4
2775 pxor xmm4,xmm12
2776 movdqa xmm1,xmm0
2777 movdqa xmm2,XMMWORD[((0-128))+rbp]
2778DB 102,68,15,56,0,203
2779 paddd xmm2,xmm8
2780 movdqa XMMWORD[80+rsp],xmm13
2781DB 69,15,56,203,236
2782 pxor xmm8,xmm14
2783 movdqa xmm0,xmm2
2784 movdqa XMMWORD[112+rsp],xmm15
2785DB 69,15,56,203,254
2786 pshufd xmm0,xmm1,0x0e
2787 pxor xmm4,xmm12
2788 movdqa XMMWORD[64+rsp],xmm12
2789DB 69,15,56,203,229
2790 pshufd xmm0,xmm2,0x0e
2791 pxor xmm8,xmm14
2792 movdqa XMMWORD[96+rsp],xmm14
2793 movdqa xmm1,XMMWORD[((16-128))+rbp]
2794 paddd xmm1,xmm5
2795DB 102,15,56,0,243
2796DB 69,15,56,203,247
2797
2798 movdqa xmm0,xmm1
2799 movdqa xmm2,XMMWORD[((16-128))+rbp]
2800 paddd xmm2,xmm9
2801DB 69,15,56,203,236
2802 movdqa xmm0,xmm2
2803 prefetcht0 [127+r8]
2804DB 102,15,56,0,251
2805DB 102,68,15,56,0,211
2806 prefetcht0 [127+r9]
2807DB 69,15,56,203,254
2808 pshufd xmm0,xmm1,0x0e
2809DB 102,68,15,56,0,219
2810DB 15,56,204,229
2811DB 69,15,56,203,229
2812 pshufd xmm0,xmm2,0x0e
2813 movdqa xmm1,XMMWORD[((32-128))+rbp]
2814 paddd xmm1,xmm6
2815DB 69,15,56,203,247
2816
2817 movdqa xmm0,xmm1
2818 movdqa xmm2,XMMWORD[((32-128))+rbp]
2819 paddd xmm2,xmm10
2820DB 69,15,56,203,236
2821DB 69,15,56,204,193
2822 movdqa xmm0,xmm2
2823 movdqa xmm3,xmm7
2824DB 69,15,56,203,254
2825 pshufd xmm0,xmm1,0x0e
2826DB 102,15,58,15,222,4
2827 paddd xmm4,xmm3
2828 movdqa xmm3,xmm11
2829DB 102,65,15,58,15,218,4
2830DB 15,56,204,238
2831DB 69,15,56,203,229
2832 pshufd xmm0,xmm2,0x0e
2833 movdqa xmm1,XMMWORD[((48-128))+rbp]
2834 paddd xmm1,xmm7
2835DB 69,15,56,203,247
2836DB 69,15,56,204,202
2837
2838 movdqa xmm0,xmm1
2839 movdqa xmm2,XMMWORD[((48-128))+rbp]
2840 paddd xmm8,xmm3
2841 paddd xmm2,xmm11
2842DB 15,56,205,231
2843DB 69,15,56,203,236
2844 movdqa xmm0,xmm2
2845 movdqa xmm3,xmm4
2846DB 102,15,58,15,223,4
2847DB 69,15,56,203,254
2848DB 69,15,56,205,195
2849 pshufd xmm0,xmm1,0x0e
2850 paddd xmm5,xmm3
2851 movdqa xmm3,xmm8
2852DB 102,65,15,58,15,219,4
2853DB 15,56,204,247
2854DB 69,15,56,203,229
2855 pshufd xmm0,xmm2,0x0e
2856 movdqa xmm1,XMMWORD[((64-128))+rbp]
2857 paddd xmm1,xmm4
2858DB 69,15,56,203,247
2859DB 69,15,56,204,211
2860 movdqa xmm0,xmm1
2861 movdqa xmm2,XMMWORD[((64-128))+rbp]
2862 paddd xmm9,xmm3
2863 paddd xmm2,xmm8
2864DB 15,56,205,236
2865DB 69,15,56,203,236
2866 movdqa xmm0,xmm2
2867 movdqa xmm3,xmm5
2868DB 102,15,58,15,220,4
2869DB 69,15,56,203,254
2870DB 69,15,56,205,200
2871 pshufd xmm0,xmm1,0x0e
2872 paddd xmm6,xmm3
2873 movdqa xmm3,xmm9
2874DB 102,65,15,58,15,216,4
2875DB 15,56,204,252
2876DB 69,15,56,203,229
2877 pshufd xmm0,xmm2,0x0e
2878 movdqa xmm1,XMMWORD[((80-128))+rbp]
2879 paddd xmm1,xmm5
2880DB 69,15,56,203,247
2881DB 69,15,56,204,216
2882 movdqa xmm0,xmm1
2883 movdqa xmm2,XMMWORD[((80-128))+rbp]
2884 paddd xmm10,xmm3
2885 paddd xmm2,xmm9
2886DB 15,56,205,245
2887DB 69,15,56,203,236
2888 movdqa xmm0,xmm2
2889 movdqa xmm3,xmm6
2890DB 102,15,58,15,221,4
2891DB 69,15,56,203,254
2892DB 69,15,56,205,209
2893 pshufd xmm0,xmm1,0x0e
2894 paddd xmm7,xmm3
2895 movdqa xmm3,xmm10
2896DB 102,65,15,58,15,217,4
2897DB 15,56,204,229
2898DB 69,15,56,203,229
2899 pshufd xmm0,xmm2,0x0e
2900 movdqa xmm1,XMMWORD[((96-128))+rbp]
2901 paddd xmm1,xmm6
2902DB 69,15,56,203,247
2903DB 69,15,56,204,193
2904 movdqa xmm0,xmm1
2905 movdqa xmm2,XMMWORD[((96-128))+rbp]
2906 paddd xmm11,xmm3
2907 paddd xmm2,xmm10
2908DB 15,56,205,254
2909DB 69,15,56,203,236
2910 movdqa xmm0,xmm2
2911 movdqa xmm3,xmm7
2912DB 102,15,58,15,222,4
2913DB 69,15,56,203,254
2914DB 69,15,56,205,218
2915 pshufd xmm0,xmm1,0x0e
2916 paddd xmm4,xmm3
2917 movdqa xmm3,xmm11
2918DB 102,65,15,58,15,218,4
2919DB 15,56,204,238
2920DB 69,15,56,203,229
2921 pshufd xmm0,xmm2,0x0e
2922 movdqa xmm1,XMMWORD[((112-128))+rbp]
2923 paddd xmm1,xmm7
2924DB 69,15,56,203,247
2925DB 69,15,56,204,202
2926 movdqa xmm0,xmm1
2927 movdqa xmm2,XMMWORD[((112-128))+rbp]
2928 paddd xmm8,xmm3
2929 paddd xmm2,xmm11
2930DB 15,56,205,231
2931DB 69,15,56,203,236
2932 movdqa xmm0,xmm2
2933 movdqa xmm3,xmm4
2934DB 102,15,58,15,223,4
2935DB 69,15,56,203,254
2936DB 69,15,56,205,195
2937 pshufd xmm0,xmm1,0x0e
2938 paddd xmm5,xmm3
2939 movdqa xmm3,xmm8
2940DB 102,65,15,58,15,219,4
2941DB 15,56,204,247
2942DB 69,15,56,203,229
2943 pshufd xmm0,xmm2,0x0e
2944 movdqa xmm1,XMMWORD[((128-128))+rbp]
2945 paddd xmm1,xmm4
2946DB 69,15,56,203,247
2947DB 69,15,56,204,211
2948 movdqa xmm0,xmm1
2949 movdqa xmm2,XMMWORD[((128-128))+rbp]
2950 paddd xmm9,xmm3
2951 paddd xmm2,xmm8
2952DB 15,56,205,236
2953DB 69,15,56,203,236
2954 movdqa xmm0,xmm2
2955 movdqa xmm3,xmm5
2956DB 102,15,58,15,220,4
2957DB 69,15,56,203,254
2958DB 69,15,56,205,200
2959 pshufd xmm0,xmm1,0x0e
2960 paddd xmm6,xmm3
2961 movdqa xmm3,xmm9
2962DB 102,65,15,58,15,216,4
2963DB 15,56,204,252
2964DB 69,15,56,203,229
2965 pshufd xmm0,xmm2,0x0e
2966 movdqa xmm1,XMMWORD[((144-128))+rbp]
2967 paddd xmm1,xmm5
2968DB 69,15,56,203,247
2969DB 69,15,56,204,216
2970 movdqa xmm0,xmm1
2971 movdqa xmm2,XMMWORD[((144-128))+rbp]
2972 paddd xmm10,xmm3
2973 paddd xmm2,xmm9
2974DB 15,56,205,245
2975DB 69,15,56,203,236
2976 movdqa xmm0,xmm2
2977 movdqa xmm3,xmm6
2978DB 102,15,58,15,221,4
2979DB 69,15,56,203,254
2980DB 69,15,56,205,209
2981 pshufd xmm0,xmm1,0x0e
2982 paddd xmm7,xmm3
2983 movdqa xmm3,xmm10
2984DB 102,65,15,58,15,217,4
2985DB 15,56,204,229
2986DB 69,15,56,203,229
2987 pshufd xmm0,xmm2,0x0e
2988 movdqa xmm1,XMMWORD[((160-128))+rbp]
2989 paddd xmm1,xmm6
2990DB 69,15,56,203,247
2991DB 69,15,56,204,193
2992 movdqa xmm0,xmm1
2993 movdqa xmm2,XMMWORD[((160-128))+rbp]
2994 paddd xmm11,xmm3
2995 paddd xmm2,xmm10
2996DB 15,56,205,254
2997DB 69,15,56,203,236
2998 movdqa xmm0,xmm2
2999 movdqa xmm3,xmm7
3000DB 102,15,58,15,222,4
3001DB 69,15,56,203,254
3002DB 69,15,56,205,218
3003 pshufd xmm0,xmm1,0x0e
3004 paddd xmm4,xmm3
3005 movdqa xmm3,xmm11
3006DB 102,65,15,58,15,218,4
3007DB 15,56,204,238
3008DB 69,15,56,203,229
3009 pshufd xmm0,xmm2,0x0e
3010 movdqa xmm1,XMMWORD[((176-128))+rbp]
3011 paddd xmm1,xmm7
3012DB 69,15,56,203,247
3013DB 69,15,56,204,202
3014 movdqa xmm0,xmm1
3015 movdqa xmm2,XMMWORD[((176-128))+rbp]
3016 paddd xmm8,xmm3
3017 paddd xmm2,xmm11
3018DB 15,56,205,231
3019DB 69,15,56,203,236
3020 movdqa xmm0,xmm2
3021 movdqa xmm3,xmm4
3022DB 102,15,58,15,223,4
3023DB 69,15,56,203,254
3024DB 69,15,56,205,195
3025 pshufd xmm0,xmm1,0x0e
3026 paddd xmm5,xmm3
3027 movdqa xmm3,xmm8
3028DB 102,65,15,58,15,219,4
3029DB 15,56,204,247
3030DB 69,15,56,203,229
3031 pshufd xmm0,xmm2,0x0e
3032 movdqa xmm1,XMMWORD[((192-128))+rbp]
3033 paddd xmm1,xmm4
3034DB 69,15,56,203,247
3035DB 69,15,56,204,211
3036 movdqa xmm0,xmm1
3037 movdqa xmm2,XMMWORD[((192-128))+rbp]
3038 paddd xmm9,xmm3
3039 paddd xmm2,xmm8
3040DB 15,56,205,236
3041DB 69,15,56,203,236
3042 movdqa xmm0,xmm2
3043 movdqa xmm3,xmm5
3044DB 102,15,58,15,220,4
3045DB 69,15,56,203,254
3046DB 69,15,56,205,200
3047 pshufd xmm0,xmm1,0x0e
3048 paddd xmm6,xmm3
3049 movdqa xmm3,xmm9
3050DB 102,65,15,58,15,216,4
3051DB 15,56,204,252
3052DB 69,15,56,203,229
3053 pshufd xmm0,xmm2,0x0e
3054 movdqa xmm1,XMMWORD[((208-128))+rbp]
3055 paddd xmm1,xmm5
3056DB 69,15,56,203,247
3057DB 69,15,56,204,216
3058 movdqa xmm0,xmm1
3059 movdqa xmm2,XMMWORD[((208-128))+rbp]
3060 paddd xmm10,xmm3
3061 paddd xmm2,xmm9
3062DB 15,56,205,245
3063DB 69,15,56,203,236
3064 movdqa xmm0,xmm2
3065 movdqa xmm3,xmm6
3066DB 102,15,58,15,221,4
3067DB 69,15,56,203,254
3068DB 69,15,56,205,209
3069 pshufd xmm0,xmm1,0x0e
3070 paddd xmm7,xmm3
3071 movdqa xmm3,xmm10
3072DB 102,65,15,58,15,217,4
3073 nop
3074DB 69,15,56,203,229
3075 pshufd xmm0,xmm2,0x0e
3076 movdqa xmm1,XMMWORD[((224-128))+rbp]
3077 paddd xmm1,xmm6
3078DB 69,15,56,203,247
3079
3080 movdqa xmm0,xmm1
3081 movdqa xmm2,XMMWORD[((224-128))+rbp]
3082 paddd xmm11,xmm3
3083 paddd xmm2,xmm10
3084DB 15,56,205,254
3085 nop
3086DB 69,15,56,203,236
3087 movdqa xmm0,xmm2
3088 mov ecx,1
3089 pxor xmm6,xmm6
3090DB 69,15,56,203,254
3091DB 69,15,56,205,218
3092 pshufd xmm0,xmm1,0x0e
3093 movdqa xmm1,XMMWORD[((240-128))+rbp]
3094 paddd xmm1,xmm7
3095 movq xmm7,QWORD[rbx]
3096 nop
3097DB 69,15,56,203,229
3098 pshufd xmm0,xmm2,0x0e
3099 movdqa xmm2,XMMWORD[((240-128))+rbp]
3100 paddd xmm2,xmm11
3101DB 69,15,56,203,247
3102
3103 movdqa xmm0,xmm1
3104 cmp ecx,DWORD[rbx]
3105 cmovge r8,rsp
3106 cmp ecx,DWORD[4+rbx]
3107 cmovge r9,rsp
3108 pshufd xmm9,xmm7,0x00
3109DB 69,15,56,203,236
3110 movdqa xmm0,xmm2
3111 pshufd xmm10,xmm7,0x55
3112 movdqa xmm11,xmm7
3113DB 69,15,56,203,254
3114 pshufd xmm0,xmm1,0x0e
3115 pcmpgtd xmm9,xmm6
3116 pcmpgtd xmm10,xmm6
3117DB 69,15,56,203,229
3118 pshufd xmm0,xmm2,0x0e
3119 pcmpgtd xmm11,xmm6
3120 movdqa xmm3,XMMWORD[((K256_shaext-16))]
3121DB 69,15,56,203,247
3122
3123 pand xmm13,xmm9
3124 pand xmm15,xmm10
3125 pand xmm12,xmm9
3126 pand xmm14,xmm10
3127 paddd xmm11,xmm7
3128
3129 paddd xmm13,XMMWORD[80+rsp]
3130 paddd xmm15,XMMWORD[112+rsp]
3131 paddd xmm12,XMMWORD[64+rsp]
3132 paddd xmm14,XMMWORD[96+rsp]
3133
3134 movq QWORD[rbx],xmm11
3135 dec edx
3136 jnz NEAR $L$oop_shaext
3137
3138 mov edx,DWORD[280+rsp]
3139
3140 pshufd xmm12,xmm12,27
3141 pshufd xmm13,xmm13,27
3142 pshufd xmm14,xmm14,27
3143 pshufd xmm15,xmm15,27
3144
3145 movdqa xmm5,xmm12
3146 movdqa xmm6,xmm13
3147 punpckldq xmm12,xmm14
3148 punpckhdq xmm5,xmm14
3149 punpckldq xmm13,xmm15
3150 punpckhdq xmm6,xmm15
3151
3152 movq QWORD[(0-128)+rdi],xmm12
3153 psrldq xmm12,8
3154 movq QWORD[(128-128)+rdi],xmm5
3155 psrldq xmm5,8
3156 movq QWORD[(32-128)+rdi],xmm12
3157 movq QWORD[(160-128)+rdi],xmm5
3158
3159 movq QWORD[(64-128)+rdi],xmm13
3160 psrldq xmm13,8
3161 movq QWORD[(192-128)+rdi],xmm6
3162 psrldq xmm6,8
3163 movq QWORD[(96-128)+rdi],xmm13
3164 movq QWORD[(224-128)+rdi],xmm6
3165
3166 lea rdi,[8+rdi]
3167 lea rsi,[32+rsi]
3168 dec edx
3169 jnz NEAR $L$oop_grande_shaext
3170
3171$L$done_shaext:
3172
3173 movaps xmm6,XMMWORD[((-184))+rax]
3174 movaps xmm7,XMMWORD[((-168))+rax]
3175 movaps xmm8,XMMWORD[((-152))+rax]
3176 movaps xmm9,XMMWORD[((-136))+rax]
3177 movaps xmm10,XMMWORD[((-120))+rax]
3178 movaps xmm11,XMMWORD[((-104))+rax]
3179 movaps xmm12,XMMWORD[((-88))+rax]
3180 movaps xmm13,XMMWORD[((-72))+rax]
3181 movaps xmm14,XMMWORD[((-56))+rax]
3182 movaps xmm15,XMMWORD[((-40))+rax]
3183 mov rbp,QWORD[((-16))+rax]
3184
3185 mov rbx,QWORD[((-8))+rax]
3186
3187 lea rsp,[rax]
3188
3189$L$epilogue_shaext:
3190 mov rdi,QWORD[8+rsp] ;WIN64 epilogue
3191 mov rsi,QWORD[16+rsp]
3192 DB 0F3h,0C3h ;repret
3193
3194$L$SEH_end_sha256_multi_block_shaext:
3195ALIGN 256
3196K256:
3197 DD 1116352408,1116352408,1116352408,1116352408
3198 DD 1116352408,1116352408,1116352408,1116352408
3199 DD 1899447441,1899447441,1899447441,1899447441
3200 DD 1899447441,1899447441,1899447441,1899447441
3201 DD 3049323471,3049323471,3049323471,3049323471
3202 DD 3049323471,3049323471,3049323471,3049323471
3203 DD 3921009573,3921009573,3921009573,3921009573
3204 DD 3921009573,3921009573,3921009573,3921009573
3205 DD 961987163,961987163,961987163,961987163
3206 DD 961987163,961987163,961987163,961987163
3207 DD 1508970993,1508970993,1508970993,1508970993
3208 DD 1508970993,1508970993,1508970993,1508970993
3209 DD 2453635748,2453635748,2453635748,2453635748
3210 DD 2453635748,2453635748,2453635748,2453635748
3211 DD 2870763221,2870763221,2870763221,2870763221
3212 DD 2870763221,2870763221,2870763221,2870763221
3213 DD 3624381080,3624381080,3624381080,3624381080
3214 DD 3624381080,3624381080,3624381080,3624381080
3215 DD 310598401,310598401,310598401,310598401
3216 DD 310598401,310598401,310598401,310598401
3217 DD 607225278,607225278,607225278,607225278
3218 DD 607225278,607225278,607225278,607225278
3219 DD 1426881987,1426881987,1426881987,1426881987
3220 DD 1426881987,1426881987,1426881987,1426881987
3221 DD 1925078388,1925078388,1925078388,1925078388
3222 DD 1925078388,1925078388,1925078388,1925078388
3223 DD 2162078206,2162078206,2162078206,2162078206
3224 DD 2162078206,2162078206,2162078206,2162078206
3225 DD 2614888103,2614888103,2614888103,2614888103
3226 DD 2614888103,2614888103,2614888103,2614888103
3227 DD 3248222580,3248222580,3248222580,3248222580
3228 DD 3248222580,3248222580,3248222580,3248222580
3229 DD 3835390401,3835390401,3835390401,3835390401
3230 DD 3835390401,3835390401,3835390401,3835390401
3231 DD 4022224774,4022224774,4022224774,4022224774
3232 DD 4022224774,4022224774,4022224774,4022224774
3233 DD 264347078,264347078,264347078,264347078
3234 DD 264347078,264347078,264347078,264347078
3235 DD 604807628,604807628,604807628,604807628
3236 DD 604807628,604807628,604807628,604807628
3237 DD 770255983,770255983,770255983,770255983
3238 DD 770255983,770255983,770255983,770255983
3239 DD 1249150122,1249150122,1249150122,1249150122
3240 DD 1249150122,1249150122,1249150122,1249150122
3241 DD 1555081692,1555081692,1555081692,1555081692
3242 DD 1555081692,1555081692,1555081692,1555081692
3243 DD 1996064986,1996064986,1996064986,1996064986
3244 DD 1996064986,1996064986,1996064986,1996064986
3245 DD 2554220882,2554220882,2554220882,2554220882
3246 DD 2554220882,2554220882,2554220882,2554220882
3247 DD 2821834349,2821834349,2821834349,2821834349
3248 DD 2821834349,2821834349,2821834349,2821834349
3249 DD 2952996808,2952996808,2952996808,2952996808
3250 DD 2952996808,2952996808,2952996808,2952996808
3251 DD 3210313671,3210313671,3210313671,3210313671
3252 DD 3210313671,3210313671,3210313671,3210313671
3253 DD 3336571891,3336571891,3336571891,3336571891
3254 DD 3336571891,3336571891,3336571891,3336571891
3255 DD 3584528711,3584528711,3584528711,3584528711
3256 DD 3584528711,3584528711,3584528711,3584528711
3257 DD 113926993,113926993,113926993,113926993
3258 DD 113926993,113926993,113926993,113926993
3259 DD 338241895,338241895,338241895,338241895
3260 DD 338241895,338241895,338241895,338241895
3261 DD 666307205,666307205,666307205,666307205
3262 DD 666307205,666307205,666307205,666307205
3263 DD 773529912,773529912,773529912,773529912
3264 DD 773529912,773529912,773529912,773529912
3265 DD 1294757372,1294757372,1294757372,1294757372
3266 DD 1294757372,1294757372,1294757372,1294757372
3267 DD 1396182291,1396182291,1396182291,1396182291
3268 DD 1396182291,1396182291,1396182291,1396182291
3269 DD 1695183700,1695183700,1695183700,1695183700
3270 DD 1695183700,1695183700,1695183700,1695183700
3271 DD 1986661051,1986661051,1986661051,1986661051
3272 DD 1986661051,1986661051,1986661051,1986661051
3273 DD 2177026350,2177026350,2177026350,2177026350
3274 DD 2177026350,2177026350,2177026350,2177026350
3275 DD 2456956037,2456956037,2456956037,2456956037
3276 DD 2456956037,2456956037,2456956037,2456956037
3277 DD 2730485921,2730485921,2730485921,2730485921
3278 DD 2730485921,2730485921,2730485921,2730485921
3279 DD 2820302411,2820302411,2820302411,2820302411
3280 DD 2820302411,2820302411,2820302411,2820302411
3281 DD 3259730800,3259730800,3259730800,3259730800
3282 DD 3259730800,3259730800,3259730800,3259730800
3283 DD 3345764771,3345764771,3345764771,3345764771
3284 DD 3345764771,3345764771,3345764771,3345764771
3285 DD 3516065817,3516065817,3516065817,3516065817
3286 DD 3516065817,3516065817,3516065817,3516065817
3287 DD 3600352804,3600352804,3600352804,3600352804
3288 DD 3600352804,3600352804,3600352804,3600352804
3289 DD 4094571909,4094571909,4094571909,4094571909
3290 DD 4094571909,4094571909,4094571909,4094571909
3291 DD 275423344,275423344,275423344,275423344
3292 DD 275423344,275423344,275423344,275423344
3293 DD 430227734,430227734,430227734,430227734
3294 DD 430227734,430227734,430227734,430227734
3295 DD 506948616,506948616,506948616,506948616
3296 DD 506948616,506948616,506948616,506948616
3297 DD 659060556,659060556,659060556,659060556
3298 DD 659060556,659060556,659060556,659060556
3299 DD 883997877,883997877,883997877,883997877
3300 DD 883997877,883997877,883997877,883997877
3301 DD 958139571,958139571,958139571,958139571
3302 DD 958139571,958139571,958139571,958139571
3303 DD 1322822218,1322822218,1322822218,1322822218
3304 DD 1322822218,1322822218,1322822218,1322822218
3305 DD 1537002063,1537002063,1537002063,1537002063
3306 DD 1537002063,1537002063,1537002063,1537002063
3307 DD 1747873779,1747873779,1747873779,1747873779
3308 DD 1747873779,1747873779,1747873779,1747873779
3309 DD 1955562222,1955562222,1955562222,1955562222
3310 DD 1955562222,1955562222,1955562222,1955562222
3311 DD 2024104815,2024104815,2024104815,2024104815
3312 DD 2024104815,2024104815,2024104815,2024104815
3313 DD 2227730452,2227730452,2227730452,2227730452
3314 DD 2227730452,2227730452,2227730452,2227730452
3315 DD 2361852424,2361852424,2361852424,2361852424
3316 DD 2361852424,2361852424,2361852424,2361852424
3317 DD 2428436474,2428436474,2428436474,2428436474
3318 DD 2428436474,2428436474,2428436474,2428436474
3319 DD 2756734187,2756734187,2756734187,2756734187
3320 DD 2756734187,2756734187,2756734187,2756734187
3321 DD 3204031479,3204031479,3204031479,3204031479
3322 DD 3204031479,3204031479,3204031479,3204031479
3323 DD 3329325298,3329325298,3329325298,3329325298
3324 DD 3329325298,3329325298,3329325298,3329325298
3325$L$pbswap:
3326 DD 0x00010203,0x04050607,0x08090a0b,0x0c0d0e0f
3327 DD 0x00010203,0x04050607,0x08090a0b,0x0c0d0e0f
3328K256_shaext:
3329 DD 0x428a2f98,0x71374491,0xb5c0fbcf,0xe9b5dba5
3330 DD 0x3956c25b,0x59f111f1,0x923f82a4,0xab1c5ed5
3331 DD 0xd807aa98,0x12835b01,0x243185be,0x550c7dc3
3332 DD 0x72be5d74,0x80deb1fe,0x9bdc06a7,0xc19bf174
3333 DD 0xe49b69c1,0xefbe4786,0x0fc19dc6,0x240ca1cc
3334 DD 0x2de92c6f,0x4a7484aa,0x5cb0a9dc,0x76f988da
3335 DD 0x983e5152,0xa831c66d,0xb00327c8,0xbf597fc7
3336 DD 0xc6e00bf3,0xd5a79147,0x06ca6351,0x14292967
3337 DD 0x27b70a85,0x2e1b2138,0x4d2c6dfc,0x53380d13
3338 DD 0x650a7354,0x766a0abb,0x81c2c92e,0x92722c85
3339 DD 0xa2bfe8a1,0xa81a664b,0xc24b8b70,0xc76c51a3
3340 DD 0xd192e819,0xd6990624,0xf40e3585,0x106aa070
3341 DD 0x19a4c116,0x1e376c08,0x2748774c,0x34b0bcb5
3342 DD 0x391c0cb3,0x4ed8aa4a,0x5b9cca4f,0x682e6ff3
3343 DD 0x748f82ee,0x78a5636f,0x84c87814,0x8cc70208
3344 DD 0x90befffa,0xa4506ceb,0xbef9a3f7,0xc67178f2
3345DB 83,72,65,50,53,54,32,109,117,108,116,105,45,98,108,111
3346DB 99,107,32,116,114,97,110,115,102,111,114,109,32,102,111,114
3347DB 32,120,56,54,95,54,52,44,32,67,82,89,80,84,79,71
3348DB 65,77,83,32,98,121,32,60,97,112,112,114,111,64,111,112
3349DB 101,110,115,115,108,46,111,114,103,62,0
3350EXTERN __imp_RtlVirtualUnwind
3351
3352ALIGN 16
3353se_handler:
3354 push rsi
3355 push rdi
3356 push rbx
3357 push rbp
3358 push r12
3359 push r13
3360 push r14
3361 push r15
3362 pushfq
3363 sub rsp,64
3364
3365 mov rax,QWORD[120+r8]
3366 mov rbx,QWORD[248+r8]
3367
3368 mov rsi,QWORD[8+r9]
3369 mov r11,QWORD[56+r9]
3370
3371 mov r10d,DWORD[r11]
3372 lea r10,[r10*1+rsi]
3373 cmp rbx,r10
3374 jb NEAR $L$in_prologue
3375
3376 mov rax,QWORD[152+r8]
3377
3378 mov r10d,DWORD[4+r11]
3379 lea r10,[r10*1+rsi]
3380 cmp rbx,r10
3381 jae NEAR $L$in_prologue
3382
3383 mov rax,QWORD[272+rax]
3384
3385 mov rbx,QWORD[((-8))+rax]
3386 mov rbp,QWORD[((-16))+rax]
3387 mov QWORD[144+r8],rbx
3388 mov QWORD[160+r8],rbp
3389
3390 lea rsi,[((-24-160))+rax]
3391 lea rdi,[512+r8]
3392 mov ecx,20
3393 DD 0xa548f3fc
3394
3395$L$in_prologue:
3396 mov rdi,QWORD[8+rax]
3397 mov rsi,QWORD[16+rax]
3398 mov QWORD[152+r8],rax
3399 mov QWORD[168+r8],rsi
3400 mov QWORD[176+r8],rdi
3401
3402 mov rdi,QWORD[40+r9]
3403 mov rsi,r8
3404 mov ecx,154
3405 DD 0xa548f3fc
3406
3407 mov rsi,r9
3408 xor rcx,rcx
3409 mov rdx,QWORD[8+rsi]
3410 mov r8,QWORD[rsi]
3411 mov r9,QWORD[16+rsi]
3412 mov r10,QWORD[40+rsi]
3413 lea r11,[56+rsi]
3414 lea r12,[24+rsi]
3415 mov QWORD[32+rsp],r10
3416 mov QWORD[40+rsp],r11
3417 mov QWORD[48+rsp],r12
3418 mov QWORD[56+rsp],rcx
3419 call QWORD[__imp_RtlVirtualUnwind]
3420
3421 mov eax,1
3422 add rsp,64
3423 popfq
3424 pop r15
3425 pop r14
3426 pop r13
3427 pop r12
3428 pop rbp
3429 pop rbx
3430 pop rdi
3431 pop rsi
3432 DB 0F3h,0C3h ;repret
3433
3434section .pdata rdata align=4
3435ALIGN 4
3436 DD $L$SEH_begin_sha256_multi_block wrt ..imagebase
3437 DD $L$SEH_end_sha256_multi_block wrt ..imagebase
3438 DD $L$SEH_info_sha256_multi_block wrt ..imagebase
3439 DD $L$SEH_begin_sha256_multi_block_shaext wrt ..imagebase
3440 DD $L$SEH_end_sha256_multi_block_shaext wrt ..imagebase
3441 DD $L$SEH_info_sha256_multi_block_shaext wrt ..imagebase
3442section .xdata rdata align=8
3443ALIGN 8
3444$L$SEH_info_sha256_multi_block:
3445DB 9,0,0,0
3446 DD se_handler wrt ..imagebase
3447 DD $L$body wrt ..imagebase,$L$epilogue wrt ..imagebase
3448$L$SEH_info_sha256_multi_block_shaext:
3449DB 9,0,0,0
3450 DD se_handler wrt ..imagebase
3451 DD $L$body_shaext wrt ..imagebase,$L$epilogue_shaext wrt ..imagebase
Note: See TracBrowser for help on using the repository browser.

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