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