OLD | NEW |
1 %ifidn __OUTPUT_FORMAT__,obj | 1 %ifidn __OUTPUT_FORMAT__,obj |
2 section code use32 class=code align=64 | 2 section code use32 class=code align=64 |
3 %elifidn __OUTPUT_FORMAT__,win32 | 3 %elifidn __OUTPUT_FORMAT__,win32 |
4 %ifdef __YASM_VERSION_ID__ | 4 %ifdef __YASM_VERSION_ID__ |
5 %if __YASM_VERSION_ID__ < 01010000h | 5 %if __YASM_VERSION_ID__ < 01010000h |
6 %error yasm version 1.1.0 or later needed. | 6 %error yasm version 1.1.0 or later needed. |
7 %endif | 7 %endif |
8 ; Yasm automatically includes .00 and complains about redefining it. | 8 ; Yasm automatically includes .00 and complains about redefining it. |
9 ; https://www.tortall.net/projects/yasm/manual/html/objfmt-win32-safeseh.html | 9 ; https://www.tortall.net/projects/yasm/manual/html/objfmt-win32-safeseh.html |
10 %else | 10 %else |
(...skipping 254 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
265 add edx,DWORD [112+esp] | 265 add edx,DWORD [112+esp] |
266 add edi,DWORD [120+esp] | 266 add edi,DWORD [120+esp] |
267 xor eax,DWORD [ebx] | 267 xor eax,DWORD [ebx] |
268 xor ebp,DWORD [16+ebx] | 268 xor ebp,DWORD [16+ebx] |
269 mov DWORD [esp],eax | 269 mov DWORD [esp],eax |
270 mov eax,DWORD [152+esp] | 270 mov eax,DWORD [152+esp] |
271 xor ecx,DWORD [32+ebx] | 271 xor ecx,DWORD [32+ebx] |
272 xor esi,DWORD [36+ebx] | 272 xor esi,DWORD [36+ebx] |
273 xor edx,DWORD [48+ebx] | 273 xor edx,DWORD [48+ebx] |
274 xor edi,DWORD [56+ebx] | 274 xor edi,DWORD [56+ebx] |
275 » mov» DWORD [16+esp],ebp | 275 » mov» DWORD [16+eax],ebp |
276 » mov» ebp,DWORD [esp] | 276 » mov» DWORD [32+eax],ecx |
277 » mov» DWORD [32+esp],ecx | 277 » mov» DWORD [36+eax],esi |
278 » mov» DWORD [36+esp],esi | 278 » mov» DWORD [48+eax],edx |
279 » mov» DWORD [48+esp],edx | 279 » mov» DWORD [56+eax],edi |
280 » mov» DWORD [56+esp],edi | |
281 » mov» DWORD [eax],ebp | |
282 mov ebp,DWORD [4+esp] | 280 mov ebp,DWORD [4+esp] |
283 mov ecx,DWORD [8+esp] | 281 mov ecx,DWORD [8+esp] |
284 mov esi,DWORD [12+esp] | 282 mov esi,DWORD [12+esp] |
285 mov edx,DWORD [20+esp] | 283 mov edx,DWORD [20+esp] |
286 mov edi,DWORD [24+esp] | 284 mov edi,DWORD [24+esp] |
287 add ebp,857760878 | 285 add ebp,857760878 |
288 add ecx,2036477234 | 286 add ecx,2036477234 |
289 add esi,1797285236 | 287 add esi,1797285236 |
290 add edx,DWORD [84+esp] | 288 add edx,DWORD [84+esp] |
291 add edi,DWORD [88+esp] | 289 add edi,DWORD [88+esp] |
292 xor ebp,DWORD [4+ebx] | 290 xor ebp,DWORD [4+ebx] |
293 xor ecx,DWORD [8+ebx] | 291 xor ecx,DWORD [8+ebx] |
294 xor esi,DWORD [12+ebx] | 292 xor esi,DWORD [12+ebx] |
295 xor edx,DWORD [20+ebx] | 293 xor edx,DWORD [20+ebx] |
296 xor edi,DWORD [24+ebx] | 294 xor edi,DWORD [24+ebx] |
297 mov DWORD [4+eax],ebp | 295 mov DWORD [4+eax],ebp |
298 mov ebp,DWORD [16+esp] | |
299 mov DWORD [8+eax],ecx | 296 mov DWORD [8+eax],ecx |
300 mov DWORD [12+eax],esi | 297 mov DWORD [12+eax],esi |
301 mov DWORD [16+eax],ebp | |
302 mov DWORD [20+eax],edx | 298 mov DWORD [20+eax],edx |
303 mov DWORD [24+eax],edi | 299 mov DWORD [24+eax],edi |
304 » mov» ecx,DWORD [28+esp] | 300 » mov» ebp,DWORD [28+esp] |
305 » mov» edx,DWORD [32+esp] | 301 » mov» ecx,DWORD [40+esp] |
306 » mov» edi,DWORD [36+esp] | |
307 » add» ecx,DWORD [92+esp] | |
308 » mov» ebp,DWORD [40+esp] | |
309 » xor» ecx,DWORD [28+ebx] | |
310 mov esi,DWORD [44+esp] | 302 mov esi,DWORD [44+esp] |
311 mov DWORD [28+eax],ecx | |
312 mov DWORD [32+eax],edx | |
313 mov DWORD [36+eax],edi | |
314 add ebp,DWORD [104+esp] | |
315 add esi,DWORD [108+esp] | |
316 xor ebp,DWORD [40+ebx] | |
317 xor esi,DWORD [44+ebx] | |
318 mov DWORD [40+eax],ebp | |
319 mov DWORD [44+eax],esi | |
320 mov ecx,DWORD [48+esp] | |
321 mov esi,DWORD [56+esp] | |
322 mov edx,DWORD [52+esp] | 303 mov edx,DWORD [52+esp] |
323 mov edi,DWORD [60+esp] | 304 mov edi,DWORD [60+esp] |
| 305 add ebp,DWORD [92+esp] |
| 306 add ecx,DWORD [104+esp] |
| 307 add esi,DWORD [108+esp] |
324 add edx,DWORD [116+esp] | 308 add edx,DWORD [116+esp] |
325 add edi,DWORD [124+esp] | 309 add edi,DWORD [124+esp] |
| 310 xor ebp,DWORD [28+ebx] |
| 311 xor ecx,DWORD [40+ebx] |
| 312 xor esi,DWORD [44+ebx] |
326 xor edx,DWORD [52+ebx] | 313 xor edx,DWORD [52+ebx] |
327 xor edi,DWORD [60+ebx] | 314 xor edi,DWORD [60+ebx] |
328 lea ebx,[64+ebx] | 315 lea ebx,[64+ebx] |
329 » mov» DWORD [48+eax],ecx | 316 » mov» DWORD [28+eax],ebp |
| 317 » mov» ebp,DWORD [esp] |
| 318 » mov» DWORD [40+eax],ecx |
330 mov ecx,DWORD [160+esp] | 319 mov ecx,DWORD [160+esp] |
| 320 mov DWORD [44+eax],esi |
331 mov DWORD [52+eax],edx | 321 mov DWORD [52+eax],edx |
332 mov DWORD [56+eax],esi | |
333 mov DWORD [60+eax],edi | 322 mov DWORD [60+eax],edi |
| 323 mov DWORD [eax],ebp |
334 lea eax,[64+eax] | 324 lea eax,[64+eax] |
335 sub ecx,64 | 325 sub ecx,64 |
336 jnz NEAR L$003outer_loop | 326 jnz NEAR L$003outer_loop |
337 jmp NEAR L$006done | 327 jmp NEAR L$006done |
338 L$005tail: | 328 L$005tail: |
339 add edx,DWORD [112+esp] | 329 add edx,DWORD [112+esp] |
340 add edi,DWORD [120+esp] | 330 add edi,DWORD [120+esp] |
341 mov DWORD [esp],eax | 331 mov DWORD [esp],eax |
342 mov DWORD [16+esp],ebp | 332 mov DWORD [16+esp],ebp |
343 mov DWORD [32+esp],ecx | 333 mov DWORD [32+esp],ecx |
(...skipping 372 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
716 movdqa xmm7,xmm2 | 706 movdqa xmm7,xmm2 |
717 punpckldq xmm2,xmm3 | 707 punpckldq xmm2,xmm3 |
718 punpckhdq xmm6,xmm1 | 708 punpckhdq xmm6,xmm1 |
719 punpckhdq xmm7,xmm3 | 709 punpckhdq xmm7,xmm3 |
720 movdqa xmm1,xmm0 | 710 movdqa xmm1,xmm0 |
721 punpcklqdq xmm0,xmm2 | 711 punpcklqdq xmm0,xmm2 |
722 movdqa xmm3,xmm6 | 712 movdqa xmm3,xmm6 |
723 punpcklqdq xmm6,xmm7 | 713 punpcklqdq xmm6,xmm7 |
724 punpckhqdq xmm1,xmm2 | 714 punpckhqdq xmm1,xmm2 |
725 punpckhqdq xmm3,xmm7 | 715 punpckhqdq xmm3,xmm7 |
726 » movdqa» [ebx-128],xmm0 | 716 » movdqu» xmm4,[esi-128] |
| 717 » movdqu» xmm5,[esi-64] |
| 718 » movdqu» xmm2,[esi] |
| 719 » movdqu» xmm7,[64+esi] |
| 720 » lea» esi,[16+esi] |
| 721 » pxor» xmm4,xmm0 |
727 movdqa xmm0,[ebx-64] | 722 movdqa xmm0,[ebx-64] |
728 » movdqa» [ebx-112],xmm1 | 723 » pxor» xmm5,xmm1 |
729 » movdqa» [ebx-96],xmm6 | |
730 » movdqa» [ebx-80],xmm3 | |
731 movdqa xmm1,[ebx-48] | 724 movdqa xmm1,[ebx-48] |
| 725 pxor xmm6,xmm2 |
732 movdqa xmm2,[ebx-32] | 726 movdqa xmm2,[ebx-32] |
| 727 pxor xmm7,xmm3 |
733 movdqa xmm3,[ebx-16] | 728 movdqa xmm3,[ebx-16] |
| 729 movdqu [edi-128],xmm4 |
| 730 movdqu [edi-64],xmm5 |
| 731 movdqu [edi],xmm6 |
| 732 movdqu [64+edi],xmm7 |
| 733 lea edi,[16+edi] |
734 paddd xmm0,[ebp-64] | 734 paddd xmm0,[ebp-64] |
735 paddd xmm1,[ebp-48] | 735 paddd xmm1,[ebp-48] |
736 paddd xmm2,[ebp-32] | 736 paddd xmm2,[ebp-32] |
737 paddd xmm3,[ebp-16] | 737 paddd xmm3,[ebp-16] |
738 movdqa xmm6,xmm0 | 738 movdqa xmm6,xmm0 |
739 punpckldq xmm0,xmm1 | 739 punpckldq xmm0,xmm1 |
740 movdqa xmm7,xmm2 | 740 movdqa xmm7,xmm2 |
741 punpckldq xmm2,xmm3 | 741 punpckldq xmm2,xmm3 |
742 punpckhdq xmm6,xmm1 | 742 punpckhdq xmm6,xmm1 |
743 punpckhdq xmm7,xmm3 | 743 punpckhdq xmm7,xmm3 |
744 movdqa xmm1,xmm0 | 744 movdqa xmm1,xmm0 |
745 punpcklqdq xmm0,xmm2 | 745 punpcklqdq xmm0,xmm2 |
746 movdqa xmm3,xmm6 | 746 movdqa xmm3,xmm6 |
747 punpcklqdq xmm6,xmm7 | 747 punpcklqdq xmm6,xmm7 |
748 punpckhqdq xmm1,xmm2 | 748 punpckhqdq xmm1,xmm2 |
749 punpckhqdq xmm3,xmm7 | 749 punpckhqdq xmm3,xmm7 |
750 » movdqa» [ebx-64],xmm0 | 750 » movdqu» xmm4,[esi-128] |
| 751 » movdqu» xmm5,[esi-64] |
| 752 » movdqu» xmm2,[esi] |
| 753 » movdqu» xmm7,[64+esi] |
| 754 » lea» esi,[16+esi] |
| 755 » pxor» xmm4,xmm0 |
751 movdqa xmm0,[ebx] | 756 movdqa xmm0,[ebx] |
752 » movdqa» [ebx-48],xmm1 | 757 » pxor» xmm5,xmm1 |
753 » movdqa» [ebx-32],xmm6 | |
754 » movdqa» [ebx-16],xmm3 | |
755 movdqa xmm1,[16+ebx] | 758 movdqa xmm1,[16+ebx] |
| 759 pxor xmm6,xmm2 |
756 movdqa xmm2,[32+ebx] | 760 movdqa xmm2,[32+ebx] |
| 761 pxor xmm7,xmm3 |
757 movdqa xmm3,[48+ebx] | 762 movdqa xmm3,[48+ebx] |
| 763 movdqu [edi-128],xmm4 |
| 764 movdqu [edi-64],xmm5 |
| 765 movdqu [edi],xmm6 |
| 766 movdqu [64+edi],xmm7 |
| 767 lea edi,[16+edi] |
758 paddd xmm0,[ebp] | 768 paddd xmm0,[ebp] |
759 paddd xmm1,[16+ebp] | 769 paddd xmm1,[16+ebp] |
760 paddd xmm2,[32+ebp] | 770 paddd xmm2,[32+ebp] |
761 paddd xmm3,[48+ebp] | 771 paddd xmm3,[48+ebp] |
762 movdqa xmm6,xmm0 | 772 movdqa xmm6,xmm0 |
763 punpckldq xmm0,xmm1 | 773 punpckldq xmm0,xmm1 |
764 movdqa xmm7,xmm2 | 774 movdqa xmm7,xmm2 |
765 punpckldq xmm2,xmm3 | 775 punpckldq xmm2,xmm3 |
766 punpckhdq xmm6,xmm1 | 776 punpckhdq xmm6,xmm1 |
767 punpckhdq xmm7,xmm3 | 777 punpckhdq xmm7,xmm3 |
768 movdqa xmm1,xmm0 | 778 movdqa xmm1,xmm0 |
769 punpcklqdq xmm0,xmm2 | 779 punpcklqdq xmm0,xmm2 |
770 movdqa xmm3,xmm6 | 780 movdqa xmm3,xmm6 |
771 punpcklqdq xmm6,xmm7 | 781 punpcklqdq xmm6,xmm7 |
772 punpckhqdq xmm1,xmm2 | 782 punpckhqdq xmm1,xmm2 |
773 punpckhqdq xmm3,xmm7 | 783 punpckhqdq xmm3,xmm7 |
774 » movdqa» [ebx],xmm0 | 784 » movdqu» xmm4,[esi-128] |
| 785 » movdqu» xmm5,[esi-64] |
| 786 » movdqu» xmm2,[esi] |
| 787 » movdqu» xmm7,[64+esi] |
| 788 » lea» esi,[16+esi] |
| 789 » pxor» xmm4,xmm0 |
775 movdqa xmm0,[64+ebx] | 790 movdqa xmm0,[64+ebx] |
776 » movdqa» [16+ebx],xmm1 | 791 » pxor» xmm5,xmm1 |
777 » movdqa» [32+ebx],xmm6 | |
778 » movdqa» [48+ebx],xmm3 | |
779 movdqa xmm1,[80+ebx] | 792 movdqa xmm1,[80+ebx] |
| 793 pxor xmm6,xmm2 |
780 movdqa xmm2,[96+ebx] | 794 movdqa xmm2,[96+ebx] |
| 795 pxor xmm7,xmm3 |
781 movdqa xmm3,[112+ebx] | 796 movdqa xmm3,[112+ebx] |
| 797 movdqu [edi-128],xmm4 |
| 798 movdqu [edi-64],xmm5 |
| 799 movdqu [edi],xmm6 |
| 800 movdqu [64+edi],xmm7 |
| 801 lea edi,[16+edi] |
782 paddd xmm0,[64+ebp] | 802 paddd xmm0,[64+ebp] |
783 paddd xmm1,[80+ebp] | 803 paddd xmm1,[80+ebp] |
784 paddd xmm2,[96+ebp] | 804 paddd xmm2,[96+ebp] |
785 paddd xmm3,[112+ebp] | 805 paddd xmm3,[112+ebp] |
786 movdqa xmm6,xmm0 | 806 movdqa xmm6,xmm0 |
787 punpckldq xmm0,xmm1 | 807 punpckldq xmm0,xmm1 |
788 movdqa xmm7,xmm2 | 808 movdqa xmm7,xmm2 |
789 punpckldq xmm2,xmm3 | 809 punpckldq xmm2,xmm3 |
790 punpckhdq xmm6,xmm1 | 810 punpckhdq xmm6,xmm1 |
791 punpckhdq xmm7,xmm3 | 811 punpckhdq xmm7,xmm3 |
792 movdqa xmm1,xmm0 | 812 movdqa xmm1,xmm0 |
793 punpcklqdq xmm0,xmm2 | 813 punpcklqdq xmm0,xmm2 |
794 movdqa xmm3,xmm6 | 814 movdqa xmm3,xmm6 |
795 punpcklqdq xmm6,xmm7 | 815 punpcklqdq xmm6,xmm7 |
796 punpckhqdq xmm1,xmm2 | 816 punpckhqdq xmm1,xmm2 |
797 punpckhqdq xmm3,xmm7 | 817 punpckhqdq xmm3,xmm7 |
798 » movdqa» [64+ebx],xmm0 | 818 » movdqu» xmm4,[esi-128] |
799 » movdqa» [80+ebx],xmm1 | 819 » movdqu» xmm5,[esi-64] |
800 » movdqa» [96+ebx],xmm6 | 820 » movdqu» xmm2,[esi] |
801 » movdqa» [112+ebx],xmm3 | 821 » movdqu» xmm7,[64+esi] |
802 » movdqu» xmm0,[esi-128] | 822 » lea» esi,[208+esi] |
803 » movdqu» xmm1,[esi-112] | 823 » pxor» xmm4,xmm0 |
804 » movdqu» xmm2,[esi-96] | 824 » pxor» xmm5,xmm1 |
805 » movdqu» xmm3,[esi-80] | 825 » pxor» xmm6,xmm2 |
806 » pxor» xmm0,[ebx-128] | 826 » pxor» xmm7,xmm3 |
807 » pxor» xmm1,[ebx-64] | 827 » movdqu» [edi-128],xmm4 |
808 » pxor» xmm2,[ebx] | 828 » movdqu» [edi-64],xmm5 |
809 » pxor» xmm3,[64+ebx] | 829 » movdqu» [edi],xmm6 |
810 » movdqu» [edi-128],xmm0 | 830 » movdqu» [64+edi],xmm7 |
811 » movdqu» [edi-112],xmm1 | 831 » lea» edi,[208+edi] |
812 » movdqu» [edi-96],xmm2 | |
813 » movdqu» [edi-80],xmm3 | |
814 » movdqu» xmm0,[esi-64] | |
815 » movdqu» xmm1,[esi-48] | |
816 » movdqu» xmm2,[esi-32] | |
817 » movdqu» xmm3,[esi-16] | |
818 » pxor» xmm0,[ebx-112] | |
819 » pxor» xmm1,[ebx-48] | |
820 » pxor» xmm2,[16+ebx] | |
821 » pxor» xmm3,[80+ebx] | |
822 » movdqu» [edi-64],xmm0 | |
823 » movdqu» [edi-48],xmm1 | |
824 » movdqu» [edi-32],xmm2 | |
825 » movdqu» [edi-16],xmm3 | |
826 » movdqu» xmm0,[esi] | |
827 » movdqu» xmm1,[16+esi] | |
828 » movdqu» xmm2,[32+esi] | |
829 » movdqu» xmm3,[48+esi] | |
830 » pxor» xmm0,[ebx-96] | |
831 » pxor» xmm1,[ebx-32] | |
832 » pxor» xmm2,[32+ebx] | |
833 » pxor» xmm3,[96+ebx] | |
834 » movdqu» [edi],xmm0 | |
835 » movdqu» [16+edi],xmm1 | |
836 » movdqu» [32+edi],xmm2 | |
837 » movdqu» [48+edi],xmm3 | |
838 » movdqu» xmm0,[64+esi] | |
839 » movdqu» xmm1,[80+esi] | |
840 » movdqu» xmm2,[96+esi] | |
841 » movdqu» xmm3,[112+esi] | |
842 » pxor» xmm0,[ebx-80] | |
843 » pxor» xmm1,[ebx-16] | |
844 » pxor» xmm2,[48+ebx] | |
845 » pxor» xmm3,[112+ebx] | |
846 » movdqu» [64+edi],xmm0 | |
847 » movdqu» [80+edi],xmm1 | |
848 » movdqu» [96+edi],xmm2 | |
849 » movdqu» [112+edi],xmm3 | |
850 » lea» esi,[256+esi] | |
851 » lea» edi,[256+edi] | |
852 sub ecx,256 | 832 sub ecx,256 |
853 jnc NEAR L$009outer_loop | 833 jnc NEAR L$009outer_loop |
854 add ecx,256 | 834 add ecx,256 |
855 jz NEAR L$011done | 835 jz NEAR L$011done |
856 mov ebx,DWORD [520+esp] | 836 mov ebx,DWORD [520+esp] |
857 lea esi,[esi-128] | 837 lea esi,[esi-128] |
858 mov edx,DWORD [516+esp] | 838 mov edx,DWORD [516+esp] |
859 lea edi,[edi-128] | 839 lea edi,[edi-128] |
860 movd xmm2,DWORD [64+ebp] | 840 movd xmm2,DWORD [64+ebp] |
861 movdqu xmm3,[ebx] | 841 movdqu xmm3,[ebx] |
(...skipping 126 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
988 dd 1,0,0,0 | 968 dd 1,0,0,0 |
989 dd 4,0,0,0 | 969 dd 4,0,0,0 |
990 dd 0,-1,-1,-1 | 970 dd 0,-1,-1,-1 |
991 align 64 | 971 align 64 |
992 db 67,104,97,67,104,97,50,48,32,102,111,114,32,120,56,54 | 972 db 67,104,97,67,104,97,50,48,32,102,111,114,32,120,56,54 |
993 db 44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32 | 973 db 44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32 |
994 db 60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111 | 974 db 60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111 |
995 db 114,103,62,0 | 975 db 114,103,62,0 |
996 segment .bss | 976 segment .bss |
997 common _OPENSSL_ia32cap_P 16 | 977 common _OPENSSL_ia32cap_P 16 |
OLD | NEW |